.,odoodxkkkxddxkO000OkkkOO00Okxkk00OOOkxdollc:,...... ..',,,''....... .... .. ..''.... .':oddl;'''..;
.,:ccodkOOOxxkOKXXXXXK000KK0OOO00OOkxxxxdooool:'..... ..',;;,'......... ....... ... .. ..''.. ...,,'.. .. ....... ..',,,;,......;
.......',;ldxxxxkk0XNNNNXK00KK00000000Okxdlcccccodoc:;,. ..,;:;,'......'''''..','.. . .... .. ':c;,.. ........ .... .. ... ... ;
..,:cc:,,,,;clodkOO0KKXXXXKK0kxddxxkkkOOkkxoc;,;;:loddo;.. ..';:::,.....,;::::;,'''............ ...''.. .... .';;,.. .,:;........... .... ......... .. ;
..,cokOOkdl:;;:clldxkxdlodk000OdlclooooodkOOOxl;,;ldkOkd:'.. ..',;::,'....,;;;;,,,,,''...'',,'..... .... ..,:cc:,.. ...... .'lk00ko;.. ........ ... ........ . ..:
.;cdO00Okxolc:::::c:;;;;,:lddolccloodddodkOOxl::ok0KOdc;''... .....',;,.....,:::;,,,,,,,'.'',;;;,'......... .;ldkko:'... ............cONWNXk:'.. .............. ..... ;
.;ok00Okxxdolcc:;;;::cc::::;;;;codxxdlcoxxoccok0K0Oxl:,'.... ... ........',,''''',::::;,'',,,,,,,,;;;,,,'........ .... .;ldddl;.... ....','.,cx0KOo;''.. ............. ...... .. ;
..:oxxdxxxxdoc:;;;;:cc;,,'''',lxOOkdl:;cc;:lxOOOOkdc;,'..... ........''''..',;;,,;:::ccc:;,''''',,,,,;;,,,,,'. ........... .',,,,,.... . .;c;,. ..''..... ........... .... .. . ... ;
.',:coxkkxxol:;;:ccc:;;,,,;lx00Oxdol:,',:oxkkxolc;,'''........'',,,,,,,,'',;::;,,,,;:cllc;'.....',,,,;;,,,,,'. ....... ......''... ... .... .'c:'. ........ ... ..... .... ;
..,;;coxxxkkxdoc:;;;::;,,;:lx000kxxxo:'';lxO00Oxl:,'.........',;,,,,;;;;;;;:::;,''',,',,,,'.... .',,,,,,,,,,,'.. ..... ............ ......... ............... .... .... ....... ....... ;
.,cllcldkkxxxxxxdc:,,,,,,,;:lkOOxooxd:'..,lkOOOOkdc'.. ......';;;,,,;;;::::;;,,'''''''......''... ..,;;,,'''',,,'... ... .......... .......... .............. .... .............. .. ....... ;
.:xkxddkO0Okxxxxdc;''',,,,;:ldxdolol;....':dxxoc;,'.. ..',,,',,;;:::;;,,,''.......'...',;,... .';::;'....',,,;,'.. ............... .................. ....... .... ............ .''..... ............. .... ...... ;
.;dxdxxO0000Okkkdc;'..'''';codddddc,.. ..;clc,...... .....'',;;;;;;,,,,,'.....'''',''''....... .';::,......'';c:;,.. ............. ...''............. ...''....... ..''.... ............. ..,,'..... ............ ....... ...... . ;
..;oxxxkO00000Okxoc,'......':odoc:,.. .';;,....... ......',;;;;;;;,,;;,'..'''''',,,'......... .';:;'.......':cc:;,... ............. ....''''........... ..'''......... ..'''......',,''''... ..,,'................... ....... ...','.......;
..,:ldxkO0KK000Okxdl:;,'......',,'.. .......... ........',;;;::;,,;;,'..'''.',,;;,,'....... .',;,'.. .':ccc:;,'. .................','........... ............................','...... ..,,'................. .... ..,:c:;.. . ;
.,coxxk0KKXK0Okkxdl:;;,,'.....','... .... ......... ..,;;,''..',;:::;;,;;;;,'.....'.',;::;,'...... ..',;,.. .;clllcc;,... .......'',;;'........''............',;cc:;'......................... ..,,'................. ..,cll;'.. :
.,ok00KKKK0Okkkxl:,,,,''......'.....................'....':odl:;,,,,;;;:;;;,,;;,'.. ......';:cc:;'..... ..',;'. .,clooolcc:;'.. ........';;'.. ...,,,'..'.......'cx0K0kl;'....................... ..,,'................. .',,'... ..:
.'lk0KK0kkkkkxol::;,'.................',,,,''''''.'''..'cdkxdol::clc:;;;;,,,;;'.. ....',;:cll:,'.... .';;,.. ..;coddoollc:;,... .................',,'...'''',,,'cONNNNkc''....................... ..,;,............... ....... .....c
..;clcldO00kddxo;'......... ......',,,,,,,,''''''',cxOOOkxdocccc::::;,,,;::'. ....,;;:cllc;'..... ..,;,... ..':ldddooolllc:;'.. ..''............''''....'',::::cONN0o,.....................'''....';;'............. . ........ ........:
..,lkOOkolc,..... ....'''',,,,,,,,;:ldOKKK0kdlc:;;;:c:;,'..... ...',;:::ccc;....... .',,... ..';ldxxxdddolllc:,.....'....'',,,,,'.....''''',:cc:;:cc;.......................''.. ..,;;'............ .......... . ........... ...''... ;
..':oooc:,..',,'... ...'''',,,;;::cccodkOKXK0kolc:;;;;;::;,'.... ...',;::ccc:,.... .','........,:dkOkkkxddoollc;'....''...'',,;,'.....'...';cllc:::,'........................... ..,;;'............................... ... .... .... ;
... .... .......',::c::;,;cllc:,'... ....',:::;,,,,;:cloddxkOOOO00kdollc:;;:cc:;'...'... ....'',;::cccc:,'.. ..,,'.......';okO00OOkkxdooll:'....''..',,,,,'....''....,cllc;;,'.......................''... ..';;'..................... ......... .... ;
''... .... ...........'',;cccccc:;,;;::cclolc;'..';;::codoc;,,,;clodddxkkxdk00Oxollc:;;codl:,'.',,......,,,,,;;;:cllc;'.. ...,;;,'.....''ck000000Okxdoool;'....'..',;;,'....';;;,...,;:;'..................................';;,............................... ... .... ;
.',,'.......'',;::;,........''..''''''',;codxoll:;,,;::::codl;,,;:cccldkkkdc,...''',,;:lollx00Oxollolc:clooc;,'',;,'....',,,,'''';::::,... ....',;;,'.....''ck0KKKK00Okxdoooc;.....'..',;,'...';loc;'.',;;,'....'.............................',;;'.................................... . ;
,lodoc,'';::::cldddoc;;:c::::;,''''...'',,:colc:;;;::::::;;,,;::clllloxOOd:'.......',;;:::cx0KOxdllodxdolll:;;,',;;,'....',;,'''',,;;;,........''''''......'':x0KKKKKKK0Oxdool:'....''...',,,,'',;;;''..''''''''''..............................';;;,,'.................................. ;
k0KK0ko:,;;;;;:codddoloolc::;,''''''...'',;:cc:;,:lddoc;,,,,,,;clolc:;;:,.. .........,;;;lk00OxdoodxOOkdc;,'',''',;,'...',,,,',,,,,,,,,'....................;x0KKKKKKKK0kdddo:,....'''....',;;,'',,,''...',;:;,''.......................... ...,:c:;,'................................... .. :
XNNNXKkl,'''',,cdxkxxkkxdol:;'.....'..',:lool:;,;lkOOko;,'''',,;clool;'.. ... ...,;;;codddolloodxkkxc'.......',,,'...'',,,,,,,,,;;;;,'...............'''lO0KKKKKKKK0Oxdooc;'............'',,,,,''''',,,:c:,............................ ...;:c::;,'.......................... ......... ..... ;
NNNNNKOl,..'''';loloxO00Okdl:,'.......,cdxkxl;,;lx00Od:;,'''',,;:lodol;... ...,:::::ccc::cllloodo:.. .....',;,'.....''',,,,;;cc:,''............'',,cxOO00KK00000Okxdoc;,.. ....''......'',,,,;cllc:,'........................'..... .,:c:::;,'......................... .................... :
XNNNX0o,'...''',,',:odxkkkxo:,,''''..';oxkxl:;,;lkOkdlc:;;,,,,,,;clool:,'.............';::::::;;;:ccllllc,.. ..............'',,,,'';;,'............'',;;lkO000000OOOOOkxdol:'.. ...''''.....',,,:dk0Oxl;'..................'''...''... ..';:cc:;'............................,,,,'.............c
KXNNKd;......'''''''''''',,;,,,,,,'''';looc:;;;;clc::clooc;;,,,,;:cloolc:ccc:;'.........',;;;'''',;:cc:;,.... ....... ...''','....................',;dOOOOOOOOOOOOkxddol;. ....'''.....',,cx0K0x:'....................'....'... ..;colc;,'........... ............':c:;,...........'l
0KK0o;....'....'''''''......'',,,,,,,',;;::;;;;;:;,,',;cc:;::;;,;:cooollloddol:;;,'....',,;,'.....',,,,'... .... ........ .................:dkkkOOOOOOOOkdollc:. ....','....',,:oddl;'..........................'... .':loolc,'..........................:do:,'...........:
okxc'....'''..'',,,cddodkOko:,',,;;;,,,,,;;;;;;::;,,''',,,;clc:;;;cloooloddxxxxdlc;;;;,,;;'................. ... ... .................:dxkOOO0000Okxollc;. ...'''''',;:lddc,...............''.............. .'cooolc;,',''..',''... ............:l:,............:
;lc,,,;:cllcccllllok0KKXWWWKd:,,,:::;,,,,;cllc:;,,'''''',,,;cc:;;:clooooddxk00K0koc:ccc:;'............ .... ..... ......................;oxkOO00000Okxxdl:' ....,;:c::cc;'....................................... .;clool:;;;,'.';c;'.................''.............:
',:ldkO000000000OOOOOxxKWWXkc,,,;:c:;,'..;oxkxo:,'''''''',,;:;;;::clodxxkkkk0KKOxollooc:;,'............... .................................':oxkO0000000Okxdl;. .....';lddo:,......'',,,,,,,'''''''.'.......'''..''''''.... .';clllc:,'....''........................ .........c
kkk0XNNNXKKKKKK0Okkxlcclddo:,,'',;:;'....,:okkdc;''....'',,,;,,;;:cldxxxxxxxkkdoccodoc:;;;,.................. .....................''..........';ldkO0KKK00Okxdoc,. ....'''',;loo:,...',;cllooooooollllllcc::;;;;;;;:;;;;;;,,'''.... ..,:ccc:,'............ ..........................''l
NNXXNNX0xddddoolc::;;::::cc:;,'''''.....';:clll:;,,''..'',,,,',;;::cloddollllc,'';cc:;;;;;,'.. ................... ....'.................'''''.''..''':odxO00K000Okxxdc,. ..'''''',,;;;;;;;:ccllloodddollooooooolllccccccccc::;;,,,,''........,:cllc,'................................,;,'''',,,o
NNNNNNX0xlc::::::;,,,;;;;::c;,'''.....'';cc:::c:;;;,,''',;;,''',;;;:cloolc:::;'...,;;::::;;,'.............'''........ .....''................'''........',ldxkO00000Okkxdoc;. ..'''''''',,,;;;:cccc:::llllc:;:cllllllllllccllooooolc;,,'''.........,:ccc;'................................';:;,'''''.c
NNWWWWWXkolccccc:,'',,,,,,;;,''......'',:cllooolc:::;'',;:;,''''',;:cloolc:;;,,'..,;:lllc;,,'........................ ....''''.... .....''''..........';oxkkO000000Oxdollc,.. ..,,,'''''''',,;::::::ccclc::::::::::ccccccccccloddddool:;,,''........,:;;;'....................,;'.........','''.''....:
NNWWWWNXKkolloolc:clooc;,,,,,,''''''''',;codxxxol:;;,'',,;,,''....';cllolc:,''','',;cllc;'........... ............... ...'',,'... .....''''........''',:oxkkO0000KK0Oxdoool;'. .',,,,,,,,',,;::::::::ccccc:;;;;;,,,,,;;;;;;;;;:cclllllc:::;;,,'''...','..,,''..................';'.....'...............c
XXNWWWXK0koloddddx0KXKOoc:;:c:;,,,,,'',;ccodxdl:,'',,,,,,;;,,'.....,::;:;;'.......'',;:;,'.. ............... ..........'''.............''.......''''',cdkkkkkOO0KKKKOxoodoc'....',,,,,,,,,;::ccc::::cccc::;;;;,,,,,''',,,,,,,;;:::cccc:::;;;;;;,,'''''..,::;;,'...','',,,,''''.........'.........';;::;o
kO0KKKOkdolllllokKXNWNXklllcccc::::;;,,:odolol;'..',;;:::c::;,''..''.................,,,'........... . ................... ...'''........'''''',okkxxxxkO0KKKK0koccl:....',,,,,,,;;;:::::::cc::::::;;;;;,,,,,'''',,,,,,;;;:::::cccc::;;;;;;;,,'''.',:c:;''',;:ccclolllooc;'...............;cloddok
lc::::cooollddolx0XNX0kollllllccloooc:;;:c:::;,'',;:;;:cccclc::;,''... .............'''............. .......................... .............'''''',,:dkxddxxkO0KK00Okd:,,'....',,,;;::::::;:::cccc:::::;;;;;,,,,,''''',,,,,,;;;::::::cccllc:;;;;;,,,,'''',,'....':clooddooodxxoc;''..........,:odddddok
ool:;,;cooooolc:clddolloolcccc::coxxdl:;;;;;,,,,;;::;,''',,;;;:::;'......................................................''....................'',,,,,,,,cdxdooodxOKKKK00ko:'.....',,;:cloollc::::::::::::::;;;;;;,,'''''''',,,,;;,;;;;;::clooddolc:;;;,,,,,,''... ...,:cloooolllodol:,'.......';loddddddok
cddl::cclcc::;;:::::clccllcccc:clodxdl::;;;;;::;;,,;,....''...',;;,,'''..'''''... .......................................'.................''',,,,,,,,,,;cdkkxdooxO0KKKK0kdoc'...';:clooodddoolllc::::::c::::;;;;;,,,'''''''',,,,,,,;;;;;:clodxxxolc:;;;,,,,,,,''... ..',:clooolllloolc;,'...';coddddddddok
;cc:::::clllcc::cclolc:,'',;:cclloooolc::;;;:cll:,,;;'..','.....',,,,'''''''.... . ......................... ...............',,,,,,,,,;;:::;;;;:::lk000Okxdddxkkxddddl,.'';:cloooodddoodoolcc:::ccllcc::;;;;,,,,'''''',,,;,,;;;;;::codddddoc:;;;;,,,,;;;,,,'.. ...,;coooolllllolc:,',:lddddddoooook
',,,,;;:;;:c:;;:ldOOOOd:,'',;coooodddol:;;,,;:llc;;cl:,',;::;;;;;;,'''''......... ....................''''''''...................;:ccccllllllllloolllllloxxxOOOko:,,,,,,,,,'.',;cclloooooooooooollc:::codoolcc:;;;,,,,,''''',,,,,;;;;;;;;:cloolc;,..'''',,,,;,,;;,,........',codooolllllooc:coxxxxddddooolx
'',,,,,,,,,,,',:x0NNNX0o,..';cloddxxxdl;,,,,,;;::;;;cc:::ccodxddll:;,'...............'',,,,,,,,,;;:;::::ccccclc:,...............':ldxxxxxxxxxxxxxxxxxxxdooddxxkxo:,. ......';:clllooooollloooolll:;;:cloooooc:;;;;,,''''''',,,,,;;;;;;,,,,;::;'.......''',,,,,,,,;,'.......',coooolllllllllodxxxxxxddddolx
',;::;,,'',,,,,:xKNNNXOl,''',;clodxkkxoc;;;;;;;;;;;,;lodoollooolloddoc;'...';ccllllllloooooloooodddxxxxxxxxxxkkdl;'...........';coxxxxxxxxxkkxkkkkkxxxddlcoxdolc;.. .',;:cclllooollcldddolc:;'.',;:ccool:;;;;;,,,,'''''',,,,,,,;;,'''.............'''''',,,,,,;;,'.....',cooooolllllccldxxxxxxxxddddox
,;:clc;,'',,,,,,;oKNWXOl:::::cllloxkkxxdolllcccccccccoxkkkdolcccokKKKOdl:;:ldxxxxxxkkkxxxxddddxxxxkkkkxxxxxxdxxkxo:,.........,:ldxxxxxxkxxxxkkkkkkxxxdddolddl;'.. ..';::::cclooollldxxdl:;,,'.....'',::,,,,,;;,,,,,''''',,,,,,,,,,'..............''''''''',;;:;;;,'.'''';loollllllllccldxxxxxxxdddddok
;:lodo:,,',,,,,''cxKX0doooooooddoloxkkxxxxdooolllllooooddkkxoodxxOKNNNKOxoddxxxxxxxxxxxxddoodddddddddddddoodddddxxdl;,.....';codxxxkkkkkkxxxxkkkkkxxddddoll:'. ..,;:c:ccllolllloxxoc;,,,''.............',,,;,,,,,''''',,,,,,,,,,'.... .....''.........',;:::;,,'''',;lolllllllllccloxxxxxxddddddox
ccloddl:,,',,,'..:kKKOdodddoddddoodxkkkkxxddoooloooooooooodxxxxO0KXNNNNKOxxxxxxxxxxxxxxddooooddddddddddoodddddddddxxoc;,,,:codxxxxxxxkkxxxxxxkkkxxxdddol:'.. ..;:ccccllooooodxxdlc::;;,,,'..............',,,;,'''''''',,,,,,,,,,'... ....',,,,''......',;::;,,''',:cllllllllllllccodxxdddddoddolx
cccccllc:;,'''...'cdxxdoddddodddoodxkkkkxxdddooooooooooooooodxkkkOKXNNX0kxxxxxxxxxxxxxxddooooddddddddddddddddddddddddolcclodxxxxxxxxxxxxxxxxxxxxxxxddolc'... .......,:ccllooooooodxxdlcclc:;,'''......''........',,,,''''''',,,,,,,,',,'... ....',oOOxolc,.....'',;;,''',;cllllllllllllccclodddoooooooolx
ccccc:::c:;,'....,:loddddddoodddoloxkkkxxxdddooooooooooooooooodxxxk0KKOkxxkkkkkxxxxxxxxddoooodddxdddddddoddddddddddddddolodxxxxxxxxxxxxxxxddxxxxxdddol:;'...........':cclloooodddddddoc:cc:;'....''''''',,'.......',,,,''''''''',,,,,''''''.......',;okkxoooc'..''''',;,'.';clllllllllllllccclooooooolllollx
:ccccc:::ccc;,'',:looddodddoooddoodxkkkxxxdddoooollooooooooooooodddxxxxxxxxkkkkxxxkxxxxddoooodddddddddddooooddddddddddollldxxxxxxxxxxxxxdddddxxxxdddoc;;''........';:cccllllooddxddolccc:;,...,lxkxxdc,';;,''......',''''''''''',,;;;;,,''''......',clccc::;,..',,''',,'..';cllllllllllllllcccloollllloooolx
::::cccc::ccc:;;cloooooooooooooooodxkkkxxxddooooooloooooooooooooolclodxxxxxxxxxxxxxxxxddoooooodddddooooooooooodddoooddolcloddddddxxxxxddddddddxxdddddolc;,.......,;::::ccccccllodoolc::;,'...,cx0KK0kl;cdc;;,,.....''''''''''''',,;;:;;;,'''......'';c:;;;,'..'''''''''...';cllllllllllllllllllllllllooooolk
::::::ccc::cc:::clooooooooooooooolodxkkxxxddoooooooooooooooooooool:coddxxxxxxxxxxxxxxdddoolooodddddoooooooooooooooooooolcloodddddddddddoooooodxxddddddool:;'..'',;::::::::::::clollcc;,,;;,..;lddddolcll:,;;;,.....'''',,,'''',,,,;;:::;;,'''......''''''''.....''''''....';cllllllllllllllllllllllllllllolx
:::::::ccc:::;;:clooooooodooooooooodxxxxxxddoooooolooolllloooooool::oddxxxxxxxxxxxxxxdddoollooooooooooooooooooooooooooolcclooooodddddddoooooodddddooodddddoc,'',;;;::::;;;;;:::ccccc:;;;;;;,'';:ccc:::,',;;;;,,'...',,,,,,,,,,,,,;;:cccc:;,'''.......''.........'''..'''''';cllllllllllllllllllllllllloooolx
:::::::::::::;,;cloooooooodooooooloddxxxdddoooooolloollllllllloool::oddddddxxxxxxxxxddddoollooooooooooooooooooooooooooolcclllooooddddddoooooodddddooooooooooc;''',;::::;;;;;::::::::;::;;,'''.'',,;:;;;;:;,,,,,'...',,,,,,,,,;;:cccloololc;,'........''.......''''...'''''',cllllllllllllllllllllllloooooook
::::::::::cc:;,;cllooooooooooooolloddddddddoooooolloolllllllllllol::odddddddxxxxddddddddoolloooodddoooooooooddddddooodolcccllllooddddddddoooddxxxxddddddoooooc;,',::::::;;;;;;;;;;,'',;;;;,'......''''',;;,,'''....',,,,,;;;;:coooodddddol:;,'.......'''..'''''''....'''''';cloooooooooooooooooooooooooooook
:::::::::::cc;,;clloooooooooooollllodddddddoooooolllllllllllllllll::ldddddddxxxxxxxdddddoollooodddddddddddddddddddddddolccclloodddddddddddddddxxxxddddddooooolc:;;cc::::;;,,;:::;,,'''',,;,,'.........'',,,,''....',,,,;::::clodddxxxxxxdoc:;;,''.....''''''''''.....',,,,,;cooooooooddddddddoooooooooodddok
:::::cc::::cc;,;clllooooooooooolllloodddoooooooollllllllllllllllll::lodxxxxxxxxxxxxxddddoolllooddddddddddddddddddddddddollloooddddddoooooooooooooooooooooooooll:;;cc:;;::;;,;:::;,''''..',,;;,''.......'',,,'''..',;;:clloooooodxxkkxxkxxdoc:::;,''....'''''''......',',;;;;coddddddddddddddddddddddddddddok
::::ccccc::c:;,;:lllloooooooooollllooooooooooollllllllllllllllllll::lddxxxxxxxxxxxddddddoolllooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooolllc;;cc:;:::::;;:::;,''''....',,;,,,'''''''',,''....,;coddxxxdolloddxxkOOkkxxdlcc:::;,''..'''''........''',;:cccodddddddddddddddddddddddddddddk
::::ccccc::cc:,;:lllloooooollloolcloooooooooooolllllllllllllllllllcclooooooooooooooooooooollloloooooollllllllllllllllllllllllllllllloooooooooooooooooooooooololl:::cc:cccc::::::;,,,,''......',,,,,,,'',,,'''..';;:codxkkxdooodddddxkO0OOkxoolllcc:;''''''''........'''',:llloooooooodddddddddddddddddddddok
::::cccc::::::;;:cllloolllllllllllcllllllllllolllllllllllllllllllcccclllllllllllllllllllllllllllloollllllllccccclllllllllllllcclllooooooooooooooooooollllllooooolc:cccccccc::cc::;,,,,,'.......',,,,,,,,,,,''.';;;;clldxkkxxxxxxxdddxkOOOOkkdolllllc;,''''''........'''',:loooooooooooodddddddddddoooooooook
:::::::::::::::::ccccccccccccccccccccc::ccccclllcccc:ccccclllllcc::ccccccccccllllllllllloooooollloolllllllllllllllllllllllooollloooooooooooooooooooollllllloooooolccccllllccclcc:;;,,,,''.........',,,;,,,,''',;;;:loloxkOOOOOOkxdoodxxkOOOkxollllllc:;,,,,''.......'...,;cooooooooooooooooooodooooooooooook
;;;;;;;;::::::;;::::::c::::::::::::::;;;;;;::::c::::::ccccllolllllllllllllllloooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooollllllooooooollloooloollolc:;;,,'''''.........'',,;;;,,,;::::coollokO0000OkkxxddxxxkOOOkkxxddolccc;,,,,'......''...',:lodoooooooooooooooooooooooooooook
,,,,,,,,;;;;;;;,,;;;;;::;;;;;;;;;;;;;;;;;;;;::::cccccllllloooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooolllooooooooooooooooolllooooooooooxxoooddddoc:;;;,'''''...........',;;;;;::::clollllok000OOOO0OkxddodxxxkkO00Okxdlllc:;,,,'.....''....,;codoooooooooooooooooooooooooooook
''''',,,,;;;;;;;;;::::::::::::ccccccccccccccccclllllllllllooooooooooooooooooooooooooooooodddoooooooooooooooooooooooooooooooooooooooolllooooooooooooooooolllooooooooodkxdodkkxdoc;;;;,''''''...........',;::::cccloooloodk00O00K0OkkkxdodxxkO000000Okxdoool:,,'''.'''....'';codoooooooooooddooooooooooooooook
;;;;;;;::::::ccccccccccccccllllllllllllllllllllllloooooooooooooooooooooooooooooooooooooodddddddooooooooooooooooooooooooooooooooooooooooooooooooooooooooolllooooooooodkxdoxOOxdl:;;,,,'''''''...........,;::;:::clooooodxkOO00K0OOOOOOkkOOO0000KK000OOOO00Oxl;,,,,,,''..'',;codoooooooooooooooooooooooooooook
:::::::::::cccccllllllllllllllllllllllllllllllloooooooooooooooooooooooooooooooooooooooooodddoooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooodxxooxOkdoc;,,,,,,'''''''.....''..';;;;;:::clodddxxxO00OOkxkO000KXXKKKKKKKKKKKKKKKKKKKK0xl;,,,,,,,',,,;codollllloollloolllllllllllllllcx
c::::::::::ccccllllllllllllllllllllllllllllllloooooooooooooooooooooooooooooooooooooooooooddddddooooooooooooooooooooooooooooooooooooooooooooooooddooooooooooooooooooodxxdoxOOdl:;,,,;,,,,''''''''''',,,;,,,;;::cloodxxkkOK0Okxdk0KXNWWWNXXXXNNNNXXKKK00OOOOOOOko;,;::::;;:;;clolc:cccccc:::cc::::::::::::::;o
::::::::cccccccclllllllllllllllllllloloooooooooooooooooooooooooooooooooooooodoooooodddddoddddddooooooooooooooooooooooooooooooooooooooooddooooddddooooollllllooooooollxkdoxOOdl:;,;;;;,,,,''''',,;;;;;;,''',;:cloodxkkO0KKOkkO0XNWMWWNNXXXXXXXXK00OOOkkkxxxxxxxdl:cllllllc:::loc;;;;::;;;;;::;,,;:::::cc::::d
cccccccccccccccclllllllllllllllllooooooooooooooooooooooooooooooooooooooooooddddoooooooooooooooooooooooooooooooooooddddoooooooooooodddddddoooooooooooooooolloooooooo::dxolx00xl:;,;;;;;;,,,,;;:cccllc:;,,,,,;cllodxOOO0XXXKOkKNWWWNXKKXXXXK0Okxxxdddddddddddddddddodddddolc:cooc::cccccccccclc:;:lllloolllllx
cccccccccclllllllllllllllllllllloooooooooooooooooooooooooooooodooooooooooooooooooooooooooooodddooooooooooooooooooooooodddooooooooodddddoooooooooooooooooooooooooool''dxook00kl:;;;:::::::cccclooodolcc::;;;:clodkkOO0XNNNX00KNNXXXXXXXXKOkdolllollollllllclloddxxxxxxxxxdlccoolllllllllooooolc:clooooooooolx
ccccccccclllllllllllllllllllllooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooodddddoooooooooooooooooooooodddooooooooooooooooooooooooooooooooooooolloxc.'oxooxO0xl:;::ccclooooddxkxxkxxddddolc:clodxxkk0KXNNNX00XKKXXXXKOOkxddooooollolllcc:::::ccloxkxxxxxxxocloolllllllooooooooc:cloooodoooook
cccccclllllllllllllllllllllllooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooodddddoooooooooooooooooooooooooooooolllllllllllllllllllccccccccc:::::;:od;.'lxxxxkOxoc::llodxxdxxkOO00OOOO000OOkdooodddxkOKXXXNNXK000KKOdoolcc::clllllllllc:;'....''',:oxxxdxxxxoloollllllloooooooool:clooooddooook
cccccclllllllllllllllllllllllloooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooollllllllllllccccccccccccc::::::::::;;;;;;;;;;;;;;;;,,,,,,,,,,,,;ol'.'cxkdodkxolcldxxkkxkkO0000OO0000K0000kkxdxxxkO0KXXNNNXK000Oo:,,,'.....',;::::::,... .....':dxxxxxxxdoolllllllloooooooool:cloooodoooook
cccccccclllllllllllllllllllolllloooooooooooooolloooooooooollloooooollllllllllllllcccccccccc:::::;;;;;,,,,,,,,,,,,,,,,,,,,''',,,,;;;;;;;;;;;;;;;;;;;;;::::::;;;:cl;..':xkdloxkdlodkkkkkkOOOOOOOOOOOOO0000OOOkxxkkkkOKXXNNNXK0kxl;'... ..',,,,'... ........':dxxxxxxxdolllllollloooooooool::looooooooook
ccccccccccccccccllllllllllllllllllllllcccccccccccccccccccc:::::::::;;;;;;;;;;;;;;;;;;;;,,,,''''',,,,,,,,,,,,,,,,,,;;;;;;;,,,;:::::::::::cccc:::::::::cccccc:::clc,..';lxdlldxdoodkkkkkOOkkOOOOOOOkkkOOOO0OkxxxkkOO00KXXXNK00Ol,'..... .....'''...........',cxOxdxxxxxxdllllloooooooooooool::cloooooooook
::::::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,,,''.',;;;;;:;:::::::::;;;;;;;;;;::;;:::::::::::::::::::;;;:ccccccccccccccccccccccccccccccclcloo;..',;odlclddoooxkkkkkkkOOOkkkOOOkkkkkOOOkkxxk0KK000KXXXX0KKxc;,'.........................;cccdkkxddxxxxxdllllloooooooooooool::cloooooooolx
,,,,,,''',,,,,,''',,,,,,,,,,,''',,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;::::;,',;:cccccccclccccccc:::::::::cc:::ccc:cccccccccccccc:::ccllcccllllllllccclllcccccccllllllool'.''',ldl:cldddodxkkkxxxkkkxkkOOOOOOOkOOOOkxk0KK00KKKXXXKOOK0dlllllc:;;;,'............';;;:ccoxkkxdodddxxolllllloooooooooolll::cloooooooook
.'''''...',,,,,''',;;::::::::;,;:::::;;;:::::::ccccccccc::::::ccccc:;,,:cllloolllllllllcccccccccccccccccccccccccccccccccc:::clllllllllllllllllloolcccccccllllllc;..''',:locclodddodxxxxkOOkxddxkOOOOOOOOOOOOOKK0OO0OOO0KKOkkO0kl:clddddolc:,'.........',,'',;cdxxxddooodxxolllllllooooooololll::cloooooooolx
,,,,;;,,,,;;;;;,,,:cccllllllc:::ccccccccccccccclllcccccccccccccccccc:,;cloooooooooooooollccccccclllllccccccccccccccclllllc::cllllllllooooolllooooollcccccccllllc,..'',,,cooccloddddxkkkOOOxxdoodxkOOOOOOOOO00KK000OxxkOOOOOkxxxdc:;;;::::;,'....''.........,codddddoooddxxollllllllooooooooollc:cloooooooolx
,;;;::;,,;:::::;,,:clllllllolc:ccllcccccllllccllllllllllllllllcccclc:;;cloooddoooooooooollcccclllllllllllcllcccllccllllllc::cllooolloooooooooddddooolllllllllol:'..',,,,;coocclodddxO0OOkOkxdollodxxkOOOO000KKK0O0OkkOO00Okxxxdol:;,'''''................';cooodddoooooddoollollllloooooooolllc::llooddooolx
;;;::::;;::ccc:;,,:lloooooooolccclcccllllllllllllllllllllllllllcclllc;;cloodddddoooooooolllcllllllllllllllllllcllllllllllc:ccllooooooooddddddxxxddooolloooooodl;..'',,,,,;cllcllodxk00Okkkkdoc:clloodxxkOOO0KK0OOkkxkkkkkxxxxxdooc:;,'''..............'',;:cllodoooolooolccllooolllooooooollllc::looddddoook
;;;::c::;::ccc:;,,:looooooooolccllllllllllllllllllllllllllllllccclllc;;cloddddddoooodddoollllllllllllllllllllllllllllllllcccclooooooooddddddxxxxdddooollooooddl,...''',,,,;:ccccldxkO0Okxkxo:,;::::ccllodxxk000Okkxkxddxxddxdddollc:,,,'''''...''''','',;;:ccloodooolllcccclllloooooooooooolllc::looddddoolk
;;::cccc:::cccc;,,:looooooooolccoollclllllllllllllllllllllllllccclllc;,:loddddddddddddddoolllllllloollllllllllllllllllllllcccloooooooddddddxxxxxxddooooooooddoc;..''''',,,;;:ccclodxxxkxddxl;;;,,',;::;:codxkOOkxkkkxdxxddxxdxxolc::;,,,,,''''',,,,,,,,,;:ccllooooddlc::cccllllloooooooooooooll::lloodddoook
;:::cccc:;;:ccc:;;:looooooooolcclllcccllooolllllllllllllcclllcccclllc;,:ldddddddddddddddoolllllllooollllllllllllllllllllllcccooodddddddddddxxkkxxddoooooooddolc:'.''''',,,,;::::ccllodxxdddo:;'...,;:;,'';loddkOOkxxddxddddddddoolc::;;,,,'',,;;;;::c::::::cclllllooc:::ccclllloooooooooooooool::cloooddoook
;::cccccc:;::cc:;;:looooooooolccclcccclloooolllllllllllccclllllcclllc;,:ldddddddddddddddoolllllllooollllllllllllllllllllllcclodddddddddddddxxkkxxddooooooddxocl:..'''''',,,,;;;::::cloodddddc;,,,;;:cc:,..,oxxxk00Okxxxddddooooolccc:;;;;;;;::::ccldxkOOkdlc:cccclolc:::cclllllooooooooooooooolc:cloooddoook
::::ccllc:;;::::;,:looodooooolccccccccllooooolllllllllcccllloollclllc:;:ldddddddddddddddoollllllooooolllllllllllllllllllllccloddddddddddddxxkkxxxdoooooddxxdlcoc..''.'''',,,;;;;;;;:clloodddl:;;clcclol:'.,kNX0OOOkkxxdddooolllcc:::;;;;::cccccclooxOKNWNXOo::::clc:c:::cccllloooooooooooooooolc:cloooddoook
:::ccclllc:;::::;,:loooddoooolcccccccllooooolllllllllllllloooollcclll:;:odddddddddddddddolllllllooooollllllllllllllllllllllccoodddddddddddxxkkkkxddooddddxxdclko'.....''',,,,;;;;;,;:cloodddoc:::lolldol;',kWMWNX0kdoolllllccc::cc::;,;:cclllloodxxkOKXNWWKl;:;;:c::c:::cccllloooooooooooooooolc:clooooooook
c:cccclllc::::::;,;loodddooooollcllcclloooooolloolllllllllooooollllll:;:lodxddddddddddddolllllllooooollllllllllllllllllllllcclodddddddddddxxkkkkkxdooddddxxoloko'......'''''',,;,,',;:cloddddoc:codlclool;:kNMMMMWXklclloollloollllc:::clooooddxxkkO0OOXWNk:,'';c:::cc:::ccllloooooooooooooooolc:clloooooolx
cccccclllcc:::::;,;coooddoooooolllllllloooooollooollllllllllooollllll:;:lodddddddddddddoolllllllooooollllllllllllllllllllolcclodddddddddddxxxxxxxdoooodddddolddl'.......'''''',,,,',,;:clddxdolclodocclol:cxXWWWMMWKxdk0000OOkkxddoolcclodddxxxxkkO000KNWW0:..':c:::cc:::ccllloooooooooooooooolc:clloooooolx
ccccccccccc::::;;,;coooddoooooolllllllloooooollooolllllllllllllllllllc;;codddddddddddddoolllllllooooollllllllllllllllllllolccloddddddddddddxxxddddooooddddooooxd'..........'''',,,,'',,;clddddollooddlcc:;;oOKXNWMMXOO0XXXXKK0OOkkxxdooodxxxkkkkkO0KKKXNWW0c..':c::cc::::ccllloooollooooooooooolcclloooooolx
ccccccccccccc::;,,,cooddooooooollllllllloodoolloooolllooooollllllllllc;;coddddddddddddddoollllllooooollllllllllllllllllloolccloddddddddddddxxxddxddooddxxxdoox0d'............'''',,'''',;clodddolllodool:;;cxOKNWMMWNKKXXXXXXKK00OOkkxxxxkkOOOOOO0KKXXXXNN0c..;ll::cc::::cccclloooooooooooooooolcclloooooolx
ccccccccc:cccc:;,,,cooooooooooollcccllllooddooooooooooooooooooollllllc;;coddddddddddddddoolllllooooooollllllllllllllllllooolcloddddddddddddxkxddxxdooodxkkxddO0l.............''''',,''.'',:lodddocclodxdlc::o0XXNWWWWNXXXNNNXXXXKKK00OOkO0000000KKXXXXXXNXx;.':olc:cc::::cccclloooooooooooooooolcclloooooolx
ccllllcc::cccc::;,,codooooooooollcccccclooodoooooooooooooooooooolllllc;,:oddddddddddddddooollloooooooollllllllllllllllllooolcloddddddddddddxkxxdxxdooddxkkxodOk:...............''''''''.'',;clodolcccoxxdoc;cOKKKXNNXXNNNNNNNNXXXXXKKK000KKKKKKKKXXXXXNNNNk;.'colcccc::::ccclllloollllloooooooolcclloooooolx
cclllllc::ccccc:;,,:ooooooooooollccccclloddddoooooooooooooooooooollllc;;:ldddxxdddddddddoolllloooooooollllllllllllllllloooolcloddddddddddddxxxxxxxdooddxxkdldOx;.. .............'''''''...';:clolc:cldxkxdllxKXKKKXNWWNNNNNNNNXXXXXXXKKKXXKKKKXXXXXXXXXNNk,.;lolccccc:::cccllloooooolllooooooolcclllooooolx
cccccccc::cccccc;,,:oooooooooooollllcclloddddooooooooooolloooooooolllc;,:ldddxxdddxxddddoolloooooooooollllllllllllllllllloolccooddddddddddxxkkxxxxddoodddxdllkd,.. ................'''''....';:clllcccdkkkxdxk0KKKNWMMWNNNNNNNXXXXXXXXXXXXXXXXXXXXKKKKKXKxccoxxdocccc::::ccllloooooolllooooooolcccloooooolx
cccccccccccccccc:,,;loooodooddooollllllloddddoooooooooollloooooooolllc;;:lddxxxdddxxdooooolllllooooooollllllllllllllllloooolcclodddddddddxxxkkxxxxdoooddddo:ckd,. ..................'''....',::cccc:coxOOkkdkKXNNNWWWWNNNNNXXXXXXXXXXXXXXXXXXXXXKXXXXKKK0OOkxolccccc:::cclllooooooollooooooolcccllooooolx
c:ccccccc:cccccc:,';cooooooodddooolllllloddddooooddoooollooooooooolllc:,:ldxxxxddddddooooollllooooooooolllllllllllllllloooolccloddddddddxxxxxxxxxxddooddddo::ol,. .................''''....';:cccc::lxkOOkkOKXNK0KXNNNNNXXXXXXXXXXXXXXXXXXXXXXXXXXXXKXXXX0xlcccccc:::ccllloooooooolloooooolcccllloooolx
c:cccccc::cccccc;,',cllooddoddddooolllllodddddooddddooooooooooooooolll:;:lddxxxddddddooooollllloooooooolllllllllllllllloooolcldkxxdddddddxxxxxxxxxddoodoodoc;lo;. ...............'''.....',:cccc::ldkOOOOkO000O0XNNNXXXKKKKXXXXXXXXXXXXXKXXXXXXXXXXXXXX0dlccccc:::ccllllooooooolllloooolcccllloooolx
cccccccc::cccccc;,',:llooddddxxddooollllodddddoodddddoooooooooooooooll:;;lddxxxxddddddddoolllloooooooooollllllllllllllloooolclxkOkxddooddddddxxxxxdoooooodo:;co,. .......................';ccllc:clxO00OkkkkkOXNWNNXXKKKKKXXXXXXXXXXXXXXXXXKXXXXXXXXXXOoccccc::::cclllloooollllloollolcccllloooolx
ccccccccc:cccccc;,',:lloodddxxxdoollllloodddddddddxdddooooooooooooooll:;;coddddddddddddddoolllloooooooooollllllllllllllloooolldxxxdolllloooodddddddoolllool:,:l;. ......................',:lolc::coxO00OkddkXNNNXXXKKKKKXXXXXXXXXXXXXKKXXKKXXNNXXXXXKxlcccc::::cccllloooollllloollllccclllloollx
ccccccccccccccc:;,'':llooddddxxdoollllloodddxddddddddddooooooooooooool:;;coddddxddddddddddoolloooooodoooolllllllllllllloooolcclddolcccccllllodddddoolllllc:;,:l:. .......................,:ooolc::cldkOOkxkXNNXXXXXXXXXXXXXXXXXXXXXXXXXXXKXXNNNXXXXXOocccc::::ccclllooollllllllllollcclllloollx
ccccccccc::cccc:;,.':llooddddxddollllllooddxxxdddddddddooolllooooooollc;;clodddxdddddddddddoooooooooddoooollllllllllllloolollcccccc::::ccccllodooooolllllc;,,:lc'. ......................,codolc:::clodxxkKXNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNNXNNXX0occcc::::ccclllooolllllllllllllccllllllllx
c:ccccc:::::ccc:;'.';lloodddddddollllclloddxxxddddddddooolllloooooooolc;,:lodddxdddddddddddoooooooooddoooolllllllllllllooooolc::::::::::ccccloddooollllllc;,,co:.. .. .................':ldolcc:;;:clodxOKNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNNNNNX0occcc::::ccclloooolllllllllllllccclllllllx
::ccc:::::::ccc:;'..;clloddoddddollllllloddxxxdooodddddoollllloooooollc;,:lddddxdddddddddooolllooooodooooollllllllllllooooollc:cc::::::::ccccloddolllllll:;,,;ll,. .................,coollc:;;::::ccd0XNXXXXXXXXXXXXXNNNXXXXXXXXXXXXXXXNNNNNXOocccc:::::cclllooolllllllllllllcccllllollx
:::ccc::;;:::c::;,..,cclooooddddolllllllloddxxdoooddddddoolllloooollllc;,:ldddxxdddddodddooollllooddddoooolllllllllllloooooolccccccccc:::ccccclodolllllllc,'.'co;. ...............';lollc:;::cc:;;ckXXXXXXXXXXXXXXNNNNNXNNXXNXXXXXXXXNNNNNXklc:cc:::::cclllllllllllllllllllccclllllllx
:::cc::::::::c::;,'.,:clloooodddoooollclloodxxdoooddddddoollllloolllllc;,;lodxxddddddodddooollllooodddoooolllllllllllloooooolc::cccccccccccccllodollllllc:,'..;l:.. .............,clollc:::clc::cd0XXXXXXXXXXXXNNNNNNNNNNNNNXXXXXXXNNNNXKxcccccc::::cclllllllllllllllllllcccllllllcx
::::c:::::::cc:;;,'.':llooooddddooooollllloddxddoooddddoolllllllllllllc:,;codddddddddooodoooollloooddddooolllllllllllooooooooc:cccccc:::cccccllooolllllc:;;'..,cl'. .............';loollcccclllc:oOXXNNXXXXXXXXXNNNNNNNNNNNNXXXXXXXXXNNX0oc:::cc::::cclllllllllllllllllllcccllllllcx
:::::::::::::::;;,'.':llooooodddooooolclllodddddooodddoooolllllllllolll:,;coddxxddddooooooollllooodddddoollllllllllllooooooooccccccccc:::ccccllollllllllc;,'...;:'. ...........',:clllcccclolllox0XNNNXXXXXXXXNNNNNNNNNNNXXXXXXXXXXXXXOoc:::c:::::cccllllllllllllllllllc:cllllllcx
:::::::::;;::::;,,'.':clooooodddooooolccllooddddoooddddoooolllllllooool:,;ldxxxxddddoooooolllllloooodddoolllllllllllooooooooolcccccccccccccccllllllcllllc:,''.'::'... . ........';cllllccccllloxxkKXNNXXXXXXXXNNNNNNNNNNNXXXXXXXXXXXXXklc::ccc:::::ccclllllllllllllllllc:clllllllx
:::::::::;;:::;,,,'.':clloooooddoooollccllodxxxddoddddooooollllllllllll:,;ldxxxxddoooooooooolllllooooddolllllllllllllollooooolccclllcccccccclllllllloollc:,''..,;'... .. .. .........';:cclllccclllodx0XXXXXXXXXXXXXXXXXXNNNNNNXXXXXXXXXXX0dlc::::::::::ccccllllllllllllllllc:ccllllllx
::::::::::;;;;;,,,'.';cllooooodddooollccllodxxxddddxxddooooolllllllllll:,,cdxxddddooooooooooollloooooodoollllllllllllooooooool::cllllllccllllllllllollllc:,'....''... ..... .........',:cccccccllooooxkkkKXXXXXXXXXXXXXXXXNNNNXXXXXXNXXXXKkolc::::::::::ccccllllllllllllccccc:cclllllcx
;:::::::::;;;;,,,,'',:clllooooodoooollccllodxxxxdddxxdoooooollllllllllc:,,coxxddddddoooooooollllloooooooollllllllllllooloooool::clolllllllllllllooooollc::;''''.'....... ....... .........'',;::ccccloooodddddk0XXXXXXXXXXXXXXNNNNXXXXXXXNNXXKOdolc:::::::::::cclllllllllllllllllc::clllllcx
;:::::::::::;;,,,''',:clllooloooooolllccllldxxxxxxxxxdooooollllllcccccc:,,:oxxxxxddddooodooolllllooooodoolllllllllllllllloolol::cooooolllllloooooooolcc:;;,,;;'.,,'...... ......... .........''',;;:::cloddodddoodxOKXXXXXXXXXXXXXXXXXXXXXXXXXXKOxdolc::::::::::ccccllllllllllllllllc::cllllllx
;:::::::::::;;,,,''',:clllollooooooolllllllodxxxxxkkxdooooollllccllllcc:;,:oxxxxxddddoooooooolllloooooooollllllllllllllllollll::coooooolllloooooooollcc:;;,,;:,.''....... .......... ........''',;;;;;:looooooooooolok0KKKXXXXXXKKKXXXXXXXXXXXKxloddolc::::::;;::ccccclllllllllllllllc::clllllcx
;::cc:::::::;;,,,,''';clllolloooodoolllclllodxxkkkkkxdoooooolllccccllllc;,:oxxxxxddddoooooolllllloooooooollllllllllllllllllllc::cloooooooooooooodxdllc::;;,,:l:..''.... ......... .........'',;:;,,,:loooooooooolcccoxO0KKKKKK000KKKKKXXKKOd:.,lddolc::::::;;;:ccccccllllccclllllllc::ccllllcx
;;:::::::::;;,,,,''.',cllllllooooooolllccclldxkkOkkkxxooooollllccccllllc;,:odxxxxdddddooooollllllloooooollllllllllllllllllllllc:clooooooodxxxxdxOkoclc:;;,,,;c:'','.... ......... ...........',;;;,,,:looooodddooll:;,;coxkkkkkkxxkOOOOkdl:'. .,lddolc::::::;;;::ccccclllcccccllllllcc:ccllllcx
;;;;;;;;;;;;,,,'''...,:llllllloooooollllcclldxkOOOkkkxdooooolllccllllllc:,;ldddxxdddddoodooolllllloooooollllllllllllllllllllllc:clooooodk00K0kkxl;:lc:::;,,,,:l:''..... .......................'',;::;;:clooooddddoollc:,'',;;;;;,,'',,,''.. .'lddolc:::::::;;::cccclllllcccllllllllc:ccllllcx
,;;;;;;;;;;;,,,''''..,:ccllllooooooolllccclloxxkkOOOkxdollollllllllllllc:,;codddddddddooooollllllloooooollllllllllllllllllllllc::lodddxOXK00kc,...;cc:;;;;;,;:c;'..'.. ......................'',;;;;::ccloooooddooolc;,''','......... ..cddolc:::::::;:::ccccccclcccclllllllcc::cllllcx
,,,,;;;;;;;,,,,''''..':ccllllooooooollccccclodxkkOOkkxdolllllllcclllllcc:,,:oddddddddoooooolllcllloooooollllllllllllllllllllll:;:lodxkKWN00Oo'.. .,::;;,;;,;:::c,..... .......................',,,,,;:clloooooolllcc;'...'........... .:odoolc::::::;;:::ccccccllccllllllllcc::cllllcx
,,,,,,,,,,,,,,,,''...':cclllllloooooolc::cclodxkkOkkkxdolllllllccccllllc:;,:ldddddddddoooollllcccllllllllllllcllllllllllllllllc::lodONWWNK0k:.....,;;;,,,,;cc;:c;'.... .......................'''''',;::ccclloollc::;'...''.......... ..,ldoolc::::::;;:::cccccclcccclllllllcc::cclllcx
,,,,,,,,,,,,,;;,''...';cccllllloloooolc::cclodxkkkkkkkxolclllllcccccllllc;;:lddddddoddooooolllcccllllllllllllccllllllllllcllllc::coxKWWNXOko'.''..';;;;;,,;:c:,;:,'... ......................'..''',;:::clodolc:;,'..',,''......... ..'cooolc::::::;;;:::ccccccccccccccccccc::cccllcx
,,,,,,,,,,,,;;;,''....;:cclllllllloddoc::cclldxkkkkkkkxolclllllcclllllllc:;:ldddddooodoooolllcccccllllloollllccllllllcccccclllc::cokXWWN0xo:'',cc;,,;:::;;:::;,,;:,... ....................'..'''',,;;;::clllc;;,''..'',''......... ...:ooolcc:::::;;;:::ccccccccccccccccccc::cccllcd
,,,,,,,,,,,,;;,'''''..,:cccllllllloodocc:cccldxkkkkkkkxdlllllllcclllllllc:;:ldddddoooooooolllcccclllllloolllllcllllllcccccccllcccco0WWWXklc::cldOkl:;;;;;;cc;;,,,;;'.... ... .................'''.','',''''',,;::::;,''....''''.......... ....:ddolcc:::::;;;;::ccccccccccccccccccc:::ccllcd
,,,,,,,,,,,,,,,'''''..':cccllllllloooolc::ccldkkkkkkkkkdollllccccccccllcc:;:lddddooooooooollcccccclllllooollllllccccccccccccllcc:lxXWWWKdccdOkk0XX0d:;;;;:c;;,,'.';,............. ..............'''...'''''''''''',,,;,,''.......''.......... ...;dxoc:::::::;;;;:::cccccccccccccccccc:;:ccclcd
,''',,,,,,,,,,,'''....':ccccllllllloolcc::ccldkOOkkkkkkxoolllccccccccclcc:,;coddoooooooooollcccccccllllooolllllcccccccccccccllccclkNWWN0o:ckXXXXXKOkdc;;;:;;;,,'...'.............. .............''',''...''''''''''',,,''.........''.......... ..'cddl:::::::;;;;:::cccccccccccccccccc:;::ccccd
,''',,,,',,,,,,'''.....;:cccllllllllllccc:ccldkOOkkkkkkxoolllccclccccclcc:;;codoooooooooolllcccccccclloooolllllccccccccccccclloood0NWWNOl:l0NNNNXKOO0kdoc::;,''................... .............'',,''.....''''...'''''''.........''.......... ...,cooc::::::;;;;;::ccccccccccccccccc::;::ccccd
'''',,'''',,,,,''......;::cclllllllllcc::::cldkOOkkkkkkdollcccccllccccccc:;;codoooollooollllccc:cccllloooollllllcccccccclloodoooox0WWNXkc:dKNNNWNNXKKKK0kdlc;'.................... ...............''''......'......'''''...........''......... ...',,,:ll::::;;;;;:::cccccccccccccccc::;:::cccd
'''''''''',,,,'''......,::cllllllllllc::;;:cldkkkkkkkkkxdlcccccclccc::::::;;coooooolloooolllccc::cclllloooollllllllllllodddooooood0NNNKd;:kXNNWNWWWNXXKKKOxl;'..................... . .............'''..............''''....................... ..,,,.:k0kl::;;,;;::::ccccccccc:::c::::;;:::c:d
''''''''''',,'''.......,:ccllloolllllc::;;:cldxkkkkkkkkxdolcccccllcccccc::;;coooooolloooollllcc::cclllllooollllllllloddooollllllodxOXKxc;l0NNNWNNWWWWNXXKKOxo:'................... .... ........''''..............'',''............''........ ..','.':x0Odc:;,;;;:::::ccccc::::::::::;;:::c:d
''''''''''''''''.......,:cclolllllcclc::;;;:coxkkkkkkkkxxollccccllccccccc:;;:looooooooooollllccccccloolooooooolllodxxdoolllllllodddx0Oo;;dKNNNNNNNNWWWWWNXK0Oko;'................. ... .........'',,'............'''''............''....... ...'''...:k0xc;,,;;;:::cccccc::::::::::;;:::::d
''','''''''',,'''......,:ccclllllccccc:;;;;:cldxkkkkkxxxxdlllccclllcccccc:;;:ldddddoooddooooolllllloodddddddddddddxdollllcccclodolloddl,,oKNNNNNNNNWNNWWWWNXK0Okdc;'.............. .... .........',,,'............''''''...........''....... .....,,'.,;ckKx:;,,;;:::cccccc::::::::::;;;::::d
''',,,,,''',,,,''......';:ccllllcccccc:;;;;:clodxxxxxxxxxdolllllllllllllllc:ldxxxxxxkkkkkOOOOOOOO0000KKKXXXXXXKkxdlccccccccclooolllodoo:'.l0NNNNNNNNNWWWNNNNNXK0Okxl:'............... ................',;,''....''''..''''''''..........'....... ..,;,,colkNKd:;;;;::::ccc::::::::::::;;;;:::d
oc:;,,,,'',',,''''......;::ccccccccc:::;;;;:clodxxxxxxkxxxxddddxxkkkkOO0000O0KXXXXXNNNNWWWWWWWWMMMMMMMMMMMMWX0kdolcccccc:clooolccclooooc,..:OXNNNNNNNNNNNWWNNWNNXK0Oxoc;'............................''',,''....'''''..'',''''.................. .;;;:oolkWWOc;;;;:::::::::::::::::::;;;;::;o
lc:;;,,,''''''''........;;::cccccccc:::::::clodxkOOOO000KKKXXXXNNNNNWWWMMMMWMMMMMMMMMMMMMMMMMMMMMMMMMMWWNXKkdooolcc:cccccloollc::clllllc:,..'oKNNNNNNNNNNWNNNNNNNNNXK0Oxoc:,'.........................''''''.....'''....'''''''............... 'cc:cdo:oKWKl,,;;:::::::::::::::::::;,,;;:;o
.......''''''''.........;:::ccclllllloodxkkO0KXXNNNNWWWWWWWMMMMMWWWWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWNNXKOxddooolcccc:::cllllc::;;:ccccc:c:'...;xKNNNNNNNNNNNNNNNNNNNNNXK0Oxdlc;,'................''....'''''.....''''...'''................... .cdddddl::xXXo;,;;;::::::::::::::::::;,,;;;;o
...'.......'''...;:cclodxkO0KKXNNWWWWWWWWWWWWWWWWWWWWWWWWWWMMWWWWMMMMMMMMMMMMWWWWWWWWWWWWWNNXK0Oxdddoollccccc:::cllcc::;;;:::::::::,'....:xXNNNNNNNNNNNNNNNNNNNNNNNXK0kxdlc:;,'...........'''......''.....'''.....'.................... .,cldddolc;lkOo;,;;;;;;;:::::::::;;;;;;,,;;;;o
.........',,'..':oxO0KXNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWMWWWWWWWWWWWMMWWNNWWWWWWWWWNNNNXK0kxdddolcclllllc::ccccc:::;;;;::::;;:;,,;;,'...:kXNNNNNNNNNNNNNNNNNNNNNNNNNXK0Okdolc:;,'.....'''.......'''.....''.......................... ..'',;cccll::loc,,,;;;;;;;;;::::;;;;;;;;,,,;;;o
.....''';;;:ld0XNNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNWWWWWWNNNNWWWWWNNXXXK00kxdoddollccllllcc:::::cc:;;,,,;;;;;,;;,,;::::;,..'cx0KNNNNNNNNNNNNNNNNNNNNNNNNNNXXK0Oxdolc::;;,''.......'''................................ ...','...',;coxo:;:c:,,,,;;;;;;;;;:;;;;;;;;;;,,,;;;o
..,''',cdOKNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNWWWWWWWNNNWNNNNWWWNNNNNNXXK00OOkxdoooollcllllllcc::;;;:::;;,,,,;,,,,,,,,;:;;;;;:,'...';oOXNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXK0Okxdolc::;,,'''.................................. ....',;;ccc,...';:okkl:,:dxo:,,,;;;;;;;;;;;;;;;;;;;,,,,;,o
.,;:lx0NWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWNNNNNWWNWWWWWNNNNNNNNNWWNNNNXXKK0Okxxxdddoolclllollll::;;,,;;:;;;,'',,,,,,''',;;;;;;;;,,,,''...'cx0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXKK0Okxdoolc::;;;,,,''''.............................',;;:::;;,'...',;:okc'':lcoOOl;,;;;;;;;;;;;;;;;;;;;,,,,;,o
..,ckKNWWWWWWWWWWWWWWWWWWWWWWWWWWWNNWNNWWWWWWWNXXXXNNNNWWWWWNNNNNNNNNNNNNXXKK00Okkxdooolllllooollllc:;;,,,,;;;,,''''''',,,,',;;,,,;;,,,,,',,''....,cxKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXKK0Okxddolllc:::;;;;,,,,,'''''........''',,,;;;;;;;;;,'..',,,,:xkl,;dxlclkkc,;;;;;;;;;;;;;;;;;;;,',,,,l
...;ok0XNNNNNNWWWWWWWWWWWWWWWWWNWWNNNNWNNNNNNWWWNNXXXXNXXNNWWNNNNNNNNNNNXXXXXK000Oxxxdddolllcclllollccc:;,,,,,,;;;,,,'...'''''''',,'',,,,'','''..........,cdOXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXKK00Okkxxddollcc::::;;,,',;::;;;;;;;;;;;;,,,,,''',,''',lkOOolxdddcdkc,,;;;;;;;;;;;;;;;;;,,'',,,l
...;oOXXXNNNNNWNNWWNNNNNNNWWNNNNNNNNNNNNNNXXXNNNNNXXXXXXXXXNNNNNNNNNNNXXXXXXXK0K00Okxddxddolccccccloollcc:;,'''''',,,,,'......'''''',''',,,''''................';lx0XXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXKK00OOOkkxxdolc:ccc:;;;;;,,,'.''''''''''''..,dkkkkOkllxxOOo:;;;;;;;;;,,;;;,,,,,,''',,l
..,lOXNXXXNNNNNNNNWNNNNNNNNNNNNNNNNXXNNXXXXXXXXNXNNXXXXXXXXXXNXXXXNXXXXXXXXKK0000OOkxddddodolc::::cclllccc:;'''''''''''''......'''''',,''',,'........................';lxOKXNNNNNNNNNNNNNNNNXXXXXXXNNNNNNNNNXXXXXXXXXXXXXXXXXXXXKK0d:;;,;cooooooc'..'''''''''''..:xkxxxOxodkOkdllc:;,,,,,,,,,,,,,,,,,'',,,l
,lkKNXK0KNNNXXNXXNNNNNNXXXXXNNXXXNXXXXNNXKKKKKKXNNNNXXXXXXXXXKKKKXXXKKKKKK00OOOOOOkdddooooddolc::ccclollllc;,'..''''''''..........'''''''''......................... ......,cdk0XXNNNNNXXXXXXNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXOl;,,,ckKKKKKOl....'''''''''...:lcclcoododdl:::cc;,,,,,,,,,,,,,,,,,'',,,l
0XNNXKO0XNNXKKXXNNXXXXK0KKXXXXXKKKKKKXXK000000KXXXXKKXXXXKKXXKKXXKKK00000Okxxkkxxxolloooollllc:::ccclolllc:,........''............'''''''''.......'............................';cokOKXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXKx:,,,:xKXXXKKOl,'....'''.''...''..coc:cllcc::::::;,,,,,,,,,,,,,,,,'''','l
NNXK00KKKK000KXXKKK00OOOKKKKKKKK00KKK00OkO00KKKKKKKKKKKKK00KKKKKK0OOOOOkxxxkkxddollllllllllllc::::cllcclc;'...........................''''.....''....................... ...........',:ldxO0KXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXKOl;,',cOXXXKKKKx;.............'.. 'cc:::c:::::::;;,,,,,,,,,,,,,'''''.'''l
XKOkO0XX0OOO000OO0OkkOOOOO000000OO0000OxkOOO0KKK00000OOOOOOOO000OkkOkkxdddxkxdoolcccccclllllcc:;::cccccl:'............................'''.....'................... .. ...................,;cldxk0KKXXXXXXXXXXXXXXXXXXXXXXXXXXXXKkc,'''cOKKK000x;................ .,::::::::::;;:;,,,,,,,,,,,''''''.'''l
Oxdxk0K0kxxkOOkkkxxdxO00OkkOOOkkxdkOOOkxkO0O0KK00000OkxkkOOOOOOOkkkkxdooooooolc:::cc:cc::llc::;::cllccc:'.............................'''.................... . ........................',;clodxkO0KKKKXXXXXKKKKKKKKXXKKd;''',d0KKK0Ox;.......... .::::::::::;:cc;,,,,,,,,'''''''...''l
oooxkkkxoddxdodxdodxxkxdddxOkxdooodxxxxkkkkkOO00OOOkkkkkkOkxxxdddddddllooollc:;;;;;;;,;:ccc:;;::cccccc:'................................................... .................................',;::cclodxxkkOO000KKKkc'''.;d0K000kc......... .ll:;;;;;;;;;;::,','',,''''''''.....c
ccodddolloolccloolllllccloxdolccodddddddodddxxkkkOOxxxxxxddddolooolc::lolc:::::::;;,,;;:::;;;;;:::;;;,................................................... ..................................'','..'',;;;;,'.'..;xO00Oko,...... 'xd:;;;:;;,;;;;;,''''',''''''''.....c
;;clllllc::::;;;:;;::;;cooolc:;:cccllddollodddddkkxxxxxdddxdoollllc::ccc::::;;::;;,,,;,,,;,,,;:::;;,'.. ................. ............................. .................................''',........ ......,;::;,..... .;;;;cc,..',;;,''''''''''''''......c
,;ccc:::;;::,,,,,,;:;;;:ccc:;;,,;;::clooccloollldddddddddddollcc::cc:::;:c:,',;;,'..',,',,,,,;::;;,.... .............. ............................. ...............................'''... .... ...... .';coo;...''''''''''''''''''......c