..............................;:c:ccoooxkkxxkkxxxxdxkOO0KXXOodddddoooodxOxlcc,'
............................';:::ccloodkkxxkkxxxddxkOO0XNX0xxkkO0KKK0OkkxOxl:,'
...........................';:::cllloxxxxxkxxxddxkO00KXNXOxk0KKKXXXXXXXKOkxo;''
..........................,;:::clocldxddxxxxddxkkO00KNN0kO00KXNNNNNNNNNXKOxo,,,
.........................,;::cclo:lddooddddoxkkkO00KNKkx0XNNNNNNNNNNNNNNXKd:,,,
........................';::c:ll:loooodoodddxxkk0KK0kxxOKNNWNNNNNNWWWWWNNXx;,',
........................;;:::cl:loolloooddxkxxkO0OddxxkOKNNWWNNNNWWWWWWWNNKc,,,
.......................,;:::cl:cllllooddddxdxkkOkoodxxO0KXNNNWWWWNNWWWWWNNXx',,
  .....................;::::c:cccllooooodddxxkkxolodk00KKXXNNNX0000KXXXXXK0d,''
   ...............   .';:::::c::llllooloodxxkxdoooxkO0000000KKKK0x:;:oO00dc;'..
.................... .,;;::::;:ccllllllooxkkxoodxkOOOO0OOOOOOOkxdlc:cd0Xl'''''.
..................  .';;;;::;:cccclllllox0kolxxO0000000Oxol::c;':oOkxOXWx;,'''.
.........   .       .';;;;;;::cccccclldOXOlcddxkOOOO00KKKK00KK0O00NX00XNNk,,,''
................    .',;;;;:::cccccllxOXKocllodxxkkkkO0KKXNNWWNNWNNNXKKXWNc'''.
...............     .',,;;;:::::cclok0KXxlllloddddddxxkOKKXNWWWWWWX00O0KNNK:'''
...............      .,,,;;;;:::codxOOKOolloddxxdoooddxkOKKXNNWWNkokKOk0XXNO'''
................     .,,,,;::::llddxkk0dcclodxxkxdddddxxkO0KXXXKOxccllllllo:'''
...........           .,,;;::clloooxxkko:ccloxkkxxxxxxxxkkOO000KKXK0OO0Ol''''''
.......               .,,;::cclloooddkddlcccldxkkkkxxxkkkOO0Odxdxxxdxdxd'''''''
                      .,;;::cclooldodxdooocccoxxkkkkkkkOO0XNNkkxXKNNWXkl,,'''''
 ...........          .,;;::cllolooodldlodolclodxxkkkOOO0KXNNNX0OkO00OOo'''''''
                      .,;;::clllloooocodooooollloddxkkO00KXXXXXX0OkkkOO:,,,''''
                     ..,;;:ccllloooollldddddoolllloodxkO00KXXXXNNXXXXXXl'''''''
                    ...';;:cclllodoooloodddddoooolllloodxkkO000KXNNNNNNO'''''''
         ...     .......;;:clllooddddooodddxxdddddoolcclxxdddddxkOO0KXKd'''''..
  .. .......      ......,;:cccloddxddodddxxxxxxddddooodkKKx0X0O0OOkkOO0kxoc;'..
.. .........     .. ...';;:cccloddkxddddxxxkkkxxxxdxxxOKX0xKK00XXXXXKXNNXXKKkc'
........    ..    ...'',;;:cccloodxkxxddxxxkkkkkkkkOO0KKKK0O0OkXNNXNNNXXXXXXXXd
....     ... ....',;::;',;:c:clooodkkxxxddxxkOOOOkkOO0KKKKOOKK0KNNXXNWNNXXNNNNX
.....   .....',;;;:::;;,:;:c:cllooodxkkkxxddkOOOOOOO00KXXX00KXX0WKXKNWNNXXXXXXK
........'',;;::ccccccoo:,;::cclllllodxxkkxxxkO000000KXNNNXOkKXNKNNNkxONNXXKKK0O
.....',;::cllooooodoodolc:::cclllcllooxxkkkkkKXXXXXKXXNNNN00K00OWNKlONXNXKK0Okk
...,;;:ccloddddooooololcccc:cllooooooddO000KKXNNNNXXKKXXNXO0KXOxXO0xKXXXXK0OOkx
.',;:ccllodddddddoooloooooooooxxxkkOkkOkKKKKXXXXNXXXXXXXXKO00XOxokKkOXXXXK0Okxx
';;:ccloooddddddddddloddodxxxkOOkkkkOxkkxO00KKKXXXXXXKKKK0O00KkolKNXXXXXX00kxxd
;;:ccllooddddddddxddldkxxkkkkkkkOOkkkxdxxdkO00KKKKKKKKKKKkO00Ko:kXXXXXXK0xOkddo
;;:ccllloooodddddxddloddxxkkkx,,lldOkkxdxxdxOOO0000KKKKK0x00OO:lKXKKKKKK0xOkdd:
;;::cccllllooooodddolxxodlcoc';''.,xOkkxdxxdxkOOO000000KOxK0xloOKKKKKKKK0dxxdo,
;;:::ccccllllooooooocl::,'';c,cc;'oxkkkxdxkxdkOOOO000000kxKOockOOkOKK0000kdxol.