;;,,,'''.............................. .....
;,,,''''............................. ....
,,,,''''................................... .....
,,,'''''.........................',;::::cc:'.. ....
,,,,'''''.................',:coxxkxxxkkkkxxol;. ..
;,,,,'''..............,lldxkkOOO0OOOO00OOOkkdl:'.
;,,,''''............;okkOO00000000000000000Okxocc'.
,,,''''...........;okOOO0000000000KKK0KKKK00OOxlc:,.
,,'''''.........,okO0000OOOkkkkkOOOOO0000000OOkxoc:'.
,''''..........;dO0000OkxxddddddddxxxxkkkkkkOOOkxoc;.
''''.........'lkO000Okxddoddddddoddddddddddddddxdlcc,
'''..........ckO000Okxdoooooooooooooooooooollc:;;;:;,.
'''.........,xO0000Oxddoooooooooooooooolllcc:;.....,,.
''.........'lO0000Okdddddddddooooollllllcc:,'... ';'
'.........':kO000OxxxkkOOO00OOkxddooolllc:;'.. .,'.
'........;odO000kddxxkkkkOOO00K0Okxddoolllc:'.. ..'.
'........cxdkOOxoodxkOOOOOOOOOOO00kxdooooddol:'. ...
''.......lodkOxoooddxkkO000OOOOkkxxdolccxkOOOkdo:..'.
''.......ldkkkdooooooddxxkkkkkkxxdolc,.:xkkkkkxxo:;,
''.......cdkddoollllooodddxxxxxdddolc'.lO00Okkdoc;,.
''.......:oOxoooolllooooddddddooooolc'.cxkkkdllc;.
''.......,oOxoooooooooooooooooooooolc. 'lool:'...
''........;xooooooooooooooodddddoollc' .'c:'..
'''........clooooooooooooddddddoooolc' .',..
''''.......;oooooooooodddddxxdddddool;. .''... ..
,''''....':looooooooddddddddxxkkxxxddl;;;,'... ...
;'.....,lk0Oxooooooddodddddxxxxxkxo:,,:cc;,... ....
'.'';,,:d000Odddodddddddddddxxxddd;....;:;'..... ....,;
',;:cc:lO0000kddddddddxkkOO000OOkxdl'''',,....'.''.. ....';:
lcoxl:lk00kkkddddddxxxxxkkOOOOOOOkdddc:'''... ..,;;. ...
xdkxl;cxl,';oodxxxxxxxxxxkkOOkkkkx:,:oc;''... .'.
kxxolc:::::oxddxxxxxxxxxkkOO00OOkkoccc:;'';;,.. ..
llllllc:cclxxxxxxxxxxxxxxxkkOkxxddllc::;.'coc,''...''......
llllolccccox