...... ................................................
...... .................................................
.... ...............................................
. .................................................
..... ..................................................
. .ll:,'''......'''',;;;;,''....................................'...............
...do;'',;,,',,:cclodolllcclccc:cc:.............................................
',;ld:,,,:::::c:;,,;::clccclc:cccc::,'..........................................
O0KKKOl,';:llllllc;,,;;c:coollllccc::cc::::,....................................
K00XXX0l'';:clolloc:,,::;coooxoc:cccclllccccc;'.................................
KKKXNXK0o,,;:clcclloc;c:;;loddl::;,:llllllllllllllllllccc:::;,,'................
KK00XXO00l,,;:::::;;;:l:;,;clollc::;;odddddoolooooolooooooolc::::;,,,,,'':c:....
00OkKXOk0xc;;;;;,;,;cc:;;:cldkxolccclxOkdoloddoolldxxdooolccccccc::c:c:;;lcc:.
00OkOKkxOdc:ooc,':doc::cccodxkxxxoodxkkdooddooolldkdxddollcc:::ccccc:::;clc;,'
KOOkx0koxxlcxkl:;:oc:ooloxxxxxxxdxxxxkdooddoolllodoxxxdooc:::::::::::;;:oc:;;'
0O0kdOOooxdldkoc::l::odxkOOkxxkkxxxxkdolloooololodddxd;dKk;;;;;;;;;:;;,cl::::'.
O0Oxok0ocdxdokdlc:cc:lkOkOkxxkxxxdxxdolccccllooloddxd;.kKKl,;;;;;;;;;,';:;;:;.
OkkxddOdcldocloc::cc;okkxkxdddddooollllcllllolloxkkxc;cOKOk:',,,,;;;,'.';;;'.
kOkxdoxxccloc:clc:c::dkxdxxdooolclllllllooooolldOxc,;;;;ldoc'.':;,,;;,,'...
O0Oxdololllccc:lllc:lxxxxkddddlloddolclddddooloxx;,:ccc;.......,::o:'. .
0OOkolccclllc::loolcoxkkkxooolldxkkdooloooooodddl:',;cool:;':xoccdc. ..
0OOxlc:::cclcccc:clodxxocccllllloxxdxddddoolooxkdl:;;,,:clocoOOx;;. .
kkxdl::;;::::;,;;:::odlllllloloollloddddddoollodoolclcc:;;::c:coc::;''..
xxxxl:;;,::;;;:ccc:codooollcclllollllooooddoooollccc:cccll:,''',;;;cl:lc.
odooc;,,,;::::::::;:coolccccclcccccccccc::::::cccc::::cclc:;;,,,,,''''.....
llc:;;,,,;;:;;;,;;;;:::::;;:::;;;;;;;;;,,,,'''''',,;;:::cc:::::;;;,,,,,,'.
ccc;;;,,,;;,,'''''''''''.............. . ......'',,,,,''''..
clc:;,,'''''.............. ....
llc::;,,'...............
olc;;,'''........ ... .