.
..,;;;,,,;;;;'.......
.';,;::;:::lc::cc:c;;:c::::;.
.',,;:odc;,';cc;,,'c:lc;;o;;cdddl;l:'.
',:ccc::;;,,;,,;;loo;c;:ldc;;ol:ddddxlxo:;;;,.
.l::;,:lc:;:::cdxkxkxd;:o;col,:ll:dddlccc;;cclll:c,.
'clc:;,'';c;,,:'.:ldKkxoc:cl;,c;',:::c::cclccl::lllcoo,
:oloxkxd:;::,:,,.,:xKOxckc,;'':cc'.,;coxkOOkxdddkdxxo:;cc;.
.::xxOxlc,;lclccc':lxXOook:'';oc;,',clddO00OxOOKKKOoc:odoccl,.
:dokKKk:,'':l:lx0l;clcKK0Odl;,:::;;lcxOkxOckO0WWWNN0OKOkdll:c:c,.
.llcodxOOl:;cd;;dKKkdco:kK00kl;ddll:oxddkdxld0kx0WMWWXN0OK0kdxxddoo.
'ddxxkOk0KKdll;cO0KkOkc:ld000Ol:c;;:lxclxxklodl:kx0NNX0OXNKXXXKOkddo;
.OkdlxO0kXNX0kdxO0Okdddo:clxkol;;;cc:c;::;:c:::xkxdloxkkkKKKXWNNK0Okdcc,.
lxxlcO00NNXOOxdk00Odclll:;;:;,,;;;;,,,:;';;,,::cx0kdoooddk000KXK0KK0Oxdol:..
:looddkkKNXOxlcdkOxxlc:,,,,,;;lddxx:::,:''cdcookOOxcoolooodxxxO00XNNKKkddoolc.
:;cooxdkOkkKXxoocddddlc:::::coxkxddcc;:',,::xd0kO0xc;;:coddxxkxxO0KXXK0Oxxol:,.
.:cloxddkOO0Oklco:clooc:c::codxdollcccccc,.,:cckkdxdl:cldkkkkOO0KKKXXXXK0Okdo.
.;ccoxOdxxOkkxoll:clll:,;::lool:c;;c:::c:,,,,;::coodxxkOO0KK0000KKXXXKKK0kxdo:
,:cldxOxddOdollcoolcc;,,;:clc;;c;:;;ccc:cclodloodxkxxkkO00KKKK0000OOOOOOkdddo,
.::::oxkooxxxdoloolc:;,;;;:::cccclllllllllxkOOOOkxxxkkkOO00000OkkkxxkxxOOdodd:
.c;:codxdddkxdooolcc;',;:::::;;''',;cldxO0KXXXKKOOkxxxxxkkkkkkkkkxxdddddxolddc
c;;clcdxxxxxdddl:;,',,;:coolclloodxxkOOKXXNXXK00OkxddddxxxkkkkOkkkxdoooxolxl.
;:clooodddodooc;,,,;;;:oxkkOOOkkkOO0000KKK0OOOOOkxdddddxxkO00KKXXKXK0Oxdol'
.;ooodoooolollc;:lodkxKK00X0olodxxxxkkkO00KKKK0kkxddddxkkO00KXNNNXXXXXX0d:.
'ddooooolllodkO00OkxodOXX0ddddxxxxkkOOOOOOOOO0XKkdddxkO000KKKKXXKKKXKKK0d;.
.ddodxodk00Oxlc;;,;;:co0KxddxxxxkkO0000000OOOOOONXXXXNNNNXXXNXXK0OOkkkxdloxkd:,.
.ooldx0XX0o:''''',,;:coOOddxkkO0NXNN0O0000OOkkkkOMWXXXNWMMMNK00000Okkkxdl;;;ckK0k'
,'':llk00kkkdoc:;,,,,,,:lkklodxxxOKXXX0kOOOOkxdxxkOW0ddxkKWWXKNNNNX000Oxdcx;loodKNx
.cddl:;,':looccccllc:,,,,;:oOcloooodxkkkkkkkkxxxxxxOONoccloxXX0KNWWNXOkkOkok0kxdl:xk,
,oddoodoc:;:;'',,:cccc;,,,,,Ol;cllloooodddxxxddddxkkXxccccloxKOO0000Okkkxdl:x;;;;;xd.
.:oooclodooc,'''',,,;:cc:;,',cOc;:ccllllloooooooodkkKklcccclodO0kkkxxxxxxdlc;x::;;:k:
.:dol:cclxdc'''',,,,,,;::::;;;lOdcccllllooollllloxkKxllcc::clod0kkxxdddddooc;d::;;dd.
'od;cloxk;''',,,,,,,,,;;:::::ccdkxdllccccccclodO00dollcc:::clod0kxxdddddddocdollod.
;o:ldxxl';,',;;;;;;;;;;;:::cccccloooolloddxkOOkxdollcc::::clooxKkxddxxxxxdl,;cd,
'ocldxdlco:',;;;;;;;;;;;:::::::::::;:::cloddxxdollccccc:ccclodld00OOkkkxxxxddc.
.:cloddooo,,,;;;;;;;;:::::::::;;;;;::clooddxxdlcllllllllloddxdldkkkOO00Okx;
.,c'.;;:l:,,;;;;;;::::::::::;;;;::cclloddxdxdddxkOOOkxxxxxkkkkxxkkxxxxxd:.
,.':c::lc,,,;;;;::::::::;;:::::ccclloddddddxxkkkkkxxkkkkOO0K0OOkkxxdddo.
.,,:ccc::;,,;;;;::cc::::;;:ccccllllooooooooodddxdddxkkkOOOOOOkkkxxdddl;
'cc:c:;::,,;;;;::::ccc::lllccllllooooolollloooooodxkkxkkkkkxxxdddddoc.
.;:lloc;;;;;;:::cccccclllllllooooooooooooooooodxxxxxxkkkxxxdddddoc;
. ,;;;;::::cccccllllllloooooodxxdddddddddxxxxxxxkkkxxxxxddolc,
,:::::ccccccclllllllloooodxkO000OOOOkkOOkkOOOOOOOOkkkkxdocc.
,cccccllcllllllllllloooodkO0OOOOOOkkkkOOOO000000KXXK0Okxoc:
.lllllllllllllllooooooodxkkxxdddoooddddxxkkkkkOOOOOOOOkxoc;
.clooooooooloolooooooooddddddoooooooddxxkkkkkxkxxxxxkkkxlc.
.:llodddoooooooooooooodddddoooooooddxxxkkkkkkkkkkkkxxxxdc;
,cloddddddddooooooooooooooooooddddxxxxxkkkkkkkkkkkkxddoc'
':lddoxxxdddddddooooooooooooooddddddddddxxxxxxxxkkxxddc.
';llolodxxxxxxdddddoooooooooooooooooooddddxxxxxxxxxxdo.
.,clllloodxkkkxxxxddddddoooooooooooooooddxxxxxxxxxxdo:
.;.,:clllloodxxkkkkkkxxxxxddddddoodoodddddxxxkkkkkkkxdl.
'dx;.';cccllloodddxxxkkkkkkxxxxxxxdddxdxxxxxkkkkkOOOOkxc.
'xK0l..,,:cccccllooodddxxxkkkkkkkkkxxxxxxxkkkkOOOOOOOOOd'
cKX0d,..,,;:ccccclloooodddddddxxxkkkkOOkOOOOO000000OOkd'
.oXXXxd;.',,,::ccccllllooooooooooddddxxkkkOOOOOOOOOxo:,.
,x0NN0xxc''',,;:cccclllllloooooooooooodddxxxxkkkOOkxlcl.
'coKXNNNOxdo''',;;::cccllllllllllllooooddddddddxxxkkkkoccOO:'...
.,:loloooONNNWXdoox,',,,;:ccccllllllllllllloooodddxxxxxxkkkkxlclKNOccc::;;,...
.':ooodlloodKWNWXxollOl,,,;:cccccccccllllllllllooddddxxxxkkkkkkdcloNNNOodlcccc::::;'.
,doooodolllodONWNX0oodxkk;;;;:ccccccccclllllllllloooodddxxxxkkkkxollkWWNN0xolccccccccc:;,'.
'oollllollllloOXNNXKxl::lOKo:::cclllccccclllllllllllooooddddxxxxxxdoooXMWWNNKOkddollccc::::::'
.';llooooooooooodOK0XX0OlllodOXklccclllllcclcccllllllllloooodddddxxxxxdooOMMMWNNXK00xdxxdllol:::::c:.
..',coooodxxxxxdddddddxXKKXXKOlodxxkX0dllllllllcllcllllllllllllooooddddxxxxddddKWMMMNNNX0O00xxxxdokxlc::clo,.
,oooooooooddxkkxxdddxxdOWNNWNNKkkxxk0X0xlcllllllllllllllllllllllooooddddxxxxddoxKNXNMWNNNX0OKKOOOOkx0xooccoodo;
.;loooddoooodxkkkxxddxxxdKXXXXXX0kO0KXXWKklclccllllcllllllllllllllooooddddxxxxdddx0KKO0NWNNNX00XNK0000XXxxdooxodd,
...,looooooddddddxkkkxdxkkkkkxNXKKKKOxxxO0XNW0klccccccccccllllllllllllooooddddddxxxddxkO0Oddd0NNNXX00KKKKXNNWKkkxdxxlcoc.
.okdoodooooodddxxxxxxddxkOOOOO0kXNXKKkdxO00OOXWOocclccccccccllllllllllooooddddddddddxxxxxkkxllldXNNNNXK00KXXXKKXX00kxOxool'
.;oollllllooooodxxxdddoo:;:okkkkkxx0KXK0ddOKXXK0XWKo,,;,:ccccccclllllllllooooddddddddddddxxxxxl::clKNNNXXK000KXXNNXKKKX0OOkddo;
.,lddooololcoooooollloododo:::::;;:o:cdXNXXOkkk0KK0XNNNk:,,...,;clcccccclllllllooddddddddddddxdddd:;;;cOWNXXXXK0000KXNWK0KKXXK0kxdd,
.,lddddddxxxxdddodddoooooollcddl:;;;;;:codONKK0O0000OOXNNNOd;,,.....';cllcccccccllloodddoooloodddoloc;;;;coNNNXXXXX00K0K0NK0O0XKKKXK00O.
.cdoolooolllcccccccccclloddxkOOkoodxxdoooooooXXK0KXXKKKKXNNXOkc,,'..''''.,;cllcccccllloddooolllloooll:,,,,::lXXXXNXXKK00KKKKK00O0KKOOOOKXO.
,lcccccccccccccccccccllllllllodxOkxxddoddolllloKNXNX00KKXNWNK0kd,......''''''',;:ccccllooddollcclodlc,,,,,:c;o0XXNNNNXXKXXKKK00000000OOkkKKO;
.';:cccccccccccccccclllllllllllldxk0OOOkkkdollclllloOKX00000XNNKK0kdc'.......'''''''',,;:ccloodoolccll:,',,,;::;:lkXNNNXXXXXXXXKK0000K000OOOk0KXKk'
.clllccccccccccllllllclllllllldxxkOkkxkxkkO00OkdlodooodxOO0NXXXXX000Odo,..''.....',,,,,,,,,,,,,;;:::;;,',,,,;:::;:cld0NNNNNNNNNXKKKK00O0K0OOOOk0XXXKx
xooddllllllllccllllllllllloddxxkkxxdoodxddxxkOO0KOxddxxxxxOOOOXNNXOO0K0Odx;.',,,,,''..',,,,,,,,,,,,,,,,,,,,;;:::;::;:cco0NNNNNNXNNNX0KKxkkx0KOOOkkOKXXX0.
xdddxdddxdddoooollllodxxkOO0kkkxoooooodddxkO0KKKOkkkOOkkxxk000KKKKkk0K0Oxxo'..',,,,,,,,,,,,,,,,;;;;;;;;:;;;;;;;;:c:;::cdxNNNNNNNNNXKK0KOdddxX0OkkkkKKNXX.
xxkOOkdxkxxxkkkkkxdx00OOOxkOOOOkxoddoodkkkO0KKK0OOkk00OOxdk0KkxkkodkkK0Okxx,'''',,,,;;;,,,,,,,,,,,,,,,,,,,,;;;;;;:;;;;loo0NXXXXXXKKKXXXKOodd0K0OkkkKKWXX.
kOOOOkllodxkO0XK0OOkOOkkddodk00kxddxxxxkkO0KKXXK00OOKXK0kxO0K0000k0Ok0K0kdx:,,',,,,,,,,;;;;;;;,;,;;;;;;;;;;;;;;;;:;;;:cllkKKXXKK0KKKXXXXKkoox0000Ok0KWKK'
kkkxddooooxO0KK0O00Odllllodxk0OkxddxxxxO0OOKKKK00000KXKKOOK00KKK0k00kOK0Oxkc,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;:::clxkKKKKKKKXKXXXXXKkdd0000OOKKNNK:
xdoooooooodxkkO00000kdlldxxkkkkkkxdxOOOO0O0K00OkkkkOKXK0kkOOO0KKOkOKkOKK0kkl,,,,,,,,,,,,,,,;,,;,;;;;;;;;;;;;;;;;;;;;::::ldOKKKKKKXNKKXXXXKkdx00OxOOKXNX0K,
oooooloooodolloxO0KK0kddxxxxkkkkOdk00000KXXKK000kxdx0XKOxxkkkOXKkkOKkO000OOo,,,,,,,,,,,,,,,,,,,,,;;;;,,;;;;;;;;;;;;;::::cok0OK0ONXX00XXXXXKxdOK0OOO0XNNXKc
ooooooodddlclllod00KOO0Oxddxxxkkk0000000KXXKKXKK0kxx0K0OxxxkkkKK0kOKOkk00OOd;,,,,,,,,,,,,,,,,,,,,,,;;,;;;;;;;;;;;;;;:;;:coxxdk0KNXKK00XXXXX0dk0000O0XNWNK0
oooooodxxolllooxxccxkO00OxxxddxkO0K000000KXXXXKKKOkOKK0OxxxxxkKXKKK0OkkOK0Od;,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;::codddOKXXXXKK0KXXXXXK00K0O0KXNXX0K.
doddodxkxoooooxklllx0K0000kdddxkk0KKKKK00KKXXXKK0OO0KK0OxddxxxKNKXKK0OkOK0Od:,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;::::codxKXXNXXNXXXXXXXXKKXK0kO0KXXNK0K.
ddolllxkxooddxOdodxx00Okkkxlllldk0XXKKK000KXXXK00000KK0Oxddxdx0NOk0000000OOx:,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;:::coodOXXXKKXKKKKKXKKKKK0KK00XXXK0KK:
olcoollodoooxOxddddxOOddddxxolccoxKXXKK000KXXXK000KKKKK0kxxxxx0NXxddx0K0OkOx:,,,,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;:;;::clooxKXNXXXXKKKKXXXKKKOKK0KXXK0O0Kk
looxkxdxkdldOkxxxdddx0xdddxkkolllld0XKKK00KKXXK000KXXXK0OkkkxkKNN0dddkKX0kOd:,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;;;:::cllld0XNNNNNNXXXKXXXKKK0KKKXXK00K00;
kxxkkOOO0xdOkxddddddxOOdddkOOxlllcldOKKXK000KKK00KKKXXKOkkOOkOXNNN0xdxONX00d:,,,,,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;::;;:::::cccldOXNNNNNNXXXKXXXKKKKKKXXXK0000Kk.
xxxxxkkkkx0OkxddddddxkOkxxkOOOdlcccldOKXK0000KKKKKKXKK0OkxkOO0XNNNNOddxKK0Kx:,,,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;:oc:clc;;::::clokKXXXNXKXXXKKNXKKKK00XXXK0OO000x.
xxxxxxxkkkkOOkddddddxkk0xxkOOOOocccloxO0KKKKKKKKK00K0kOxxkkO0KNNXXWNkddOOkkx:,,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;okxdkd:;;:::cccox0NXNNXXXXK0KXNXKKKKK0KXX0OO00OOx
OkxdxxxxxkkkkkkxxxdxkkO0OkkkOOOxlcccldxOKXKKKKKKK00K0OkllkkOKXWNXXNWKxdOOkxd:,,,,,,,,,,,,,,,;;;;;;;;;;;;;;;;ddoxOo:;:;::::cclxO0KXXKK0000O0NXKKXXXK0KX00000OOOc
kkOkxddxxxkkkxxxkkkkOOO00kkkOOOkolcclodx0KXKKKK0KKKK0Okkkkk0KXWNXXNWWOdOOkkdc;,,,,,,,,,,,,;;;;;;;;;;;;;;;;;oxdxkx::::::;::loddOKK0O0KKKKKKKXXXXXNNNXXXKK0000OOk.
xxddkkddddxkkkkkxxkO0000KOkkO00Oxllccodxk0XXKKK0K0000OkkkOO0KNWNXKNWWNxkOOkdl;;;,,,,,,;;,;;;;;;;;;;;;;;;;;lodxO0Oc:cccoolodxxokO0olkoOKKXXKO00000KK0O0000000000x.
oddoclodlldddxxkkOOkO0KKKKkkkO0OOolccldxxOXXKK0000000OkkO00KKNWNXKNWWWxkOOkdl:;;;;;;;,;;;;;:::;;;;;;;;;;;ldooOOoocccodddlddddodk0xcllk000KXK0kkkOOOOkkkkkkkkOO0Kl
::lddllddlclloxkkO0KK000KX0kkO00OxoccloxxxOO0KK00OO00OOOO0000NNNXXNWWWkkOOkol:;;;;;,,,;;;;::::::;;;;;;;:loodkkclccloodoxool::clkO0Oxk0OOkO000OkkkO00OkOOO0000KKKx.
loodxxxxkxdoolloxO0KKKK00KXOkkO00Odlclodxxxkk0K00OOOOOOO000O0WNXXXNWWWOxkOxll:;oxkk:,;;;;:::lc:c:;:ccccclloddc;:loddoddkxdol::ckOOOOOOOOOkkOOOkkkkkO0O0KKKKKKKK0ko
xxxxxxxxxxxkxdoodxk0XXXKK000kkk00OkoccldxxOkkKK0OOOkkkkOOOOONWXXXXNWWWKdxkdlccokdO0x;;;;::;cc:;:o:ddx0dooxc::c::cllldddxooc:c:dxxkkkOOOOOOkOO0OOOkkkO00K0KKKKKKOkO;
odddddxddxxxxxxddxxk0KXXXK00OkkO00Odllloxkxdk0K0OOkkkkkkOOOKNNNXXXNWWWX0dxllccxxdk0Kl;;::cl:ol:llcoxodllkkcc:c:::c:dookxxdc:;;lccdkkkkkkkkkkO000OOOOOOO0KKKKKKOkxkx.
ooolccodooodxxkxxxxxxOKXXXKOOkkOKK0kllloxxddkk00OOkkkkOOOOkXNKNXXXWWWNXXOddddokxxk0Ko;::;;lccdddlolklclloc:::olcloolclo;;;;lllc::ldkkkkkkkkkk00000000Okk0KKKKKkxkkko.
ooolcllodoolldxkxxxkxxOXNXKOkkkk0KKOolloxxxxkk00OOkkkOOOOO0XXKXXXXWNNXXKKOx00k0kxkO0O:;:c:cocoddlolcllll:::ccdolldo;;co;;;;oxxl::clxkkkkkkkkk0K000000OOOOKKKK0OOkkkO;
ollloooollllc:cloolloolxOOOxdxoodkkxl::cllllodxxddddddddddxkkxxkkO0OOkkxxxdoxdxdlodxx;,::c::l:llc;::l::;,,;;;cl:::;,,:c,,,,:cll:;;:cooooooooodkxxxddddddddkkxdddddodl