.. ... ..
.ldlc;'.. .... .. .'.. .;c:coddoxOOkkO00O000OOO0OkOkkdddolc:;,'..
....'',,;;;;;;,;:x0NKkkkkkkxdlcldc:;;l;llocodxkxloxkOkOO00OOO0KKXKKK00XK00XX0OKX0OOXKkk0XOkOKOdodl',;,.
..',;::cclodxkOO00000000000K00OOOkO0KKK0kkkkxdx0k0KNWWWWWWWWWWWWWWNx'',:cllldk0X0O00kxO0klkOkldkxockdx:kdocdkddcOxxlKkxxOk:;;,.
':llloxkOOO00KXXNNWMMMMMMMMMMMMWWNXXXXXXNNNNNNNWWWWWNX00WWWNNNNXXK0Oxkkxdc:codxkO0KKK00Oxcdoo;odd;cxd;clx;;:xc;,ol;:ck:;;lcloolcxldlKxdldl'..
c0000KXNWMMMMMWWNXXKOOOkxdollc:;,'...kXNNNNNXXNNNNNNNXKOld0XKK0OO00000KKXNX0kkOOkxddddxkOO0Klckl:kx:xOk:xOOllkOocxOdcdOk:oOx;cdkl;:lxcc:ccdxodoOc:''.
xKk0Okkxolc:;,''.........',;;;:clodxkXXXWWNNXK0KKKK00OOkxxddddooodddoooxkkkO000KXXXNNXXXXKKXxk0KkOX0OONKOOXXOOXXOOXXOOKN0O0NOOOKkokOkcxkx::coo;;,l,0dl::'
lXK.............lodxkO00XNNNNNWWWNXK00XXXXXXNWKKXXXXKKKKK000X0xxkOOOkkO00KKXOKNXXKKKKKKKKKKXK0KWKOXX0ONKOOXXOONXOOXXOOXN0OKN0O0W0OOXXOO0XxkkOo,cdl;;,l:kxlc''
;XX'...........,kO00OOOkxddolllc;,'..'KNNNWWWNKK0KXXXXXXXXXKWo,kNNMMMMNXKKKKXXNXKKKKKKKKKKKXK00WX0XN00NX00NX00WXO0NKO0XX00NXOOKN0O0WKOOXXOOXXOOOKx:ldd;;:c:ox:l''
'KNx....... ...........',;:ccllodxkXXNMWNXKK0000KKKXXKXXXXOcxX0WMMMNXKKKKXXWXXXXKKKKKKKKXK00WN0XN00NX00NX0KWK00W000NK0KWKOONKO0XN0OKN0O0WKOOXN0OOXKdxxx:',;l:kcc.
.ONc .........,lodxkO0KKNNWNNNNNNX0OXNNNXKKKKK00000000XX0OXXKKK0XXNMNKXKKKKXNXXXXKKKKKKKKXX0KNN0XW00NX00NK0KWK0KW00KW00XW00KN000NK00NX0OXX0OKNKOOKXOOOXKxkxkc:cllcO:,.
dXO'...........:0KXKK00Okkxdolcc:;,'.oX0WNNKKKKXK0000KOKNO0XXOOOKKK0O0OKKKKKXNXXXXKKKKKKKKXNKKNWKXW00NX0KWX0XWK0XN00XN00NN00XN00XN00XN00KN000NK0OKN0OOXXOOOXKkxdxccool:l..
:XN:.. . ..'''..'''''',;;;::clodONKNXKKKKKOK000KXO0W00KX00OKX0OOKK0KXKKXNNXXXKKKKKKKKKNXXNWKXW00NX0KWK0XWK0XN00NX0KWX00NK00WK00NK00NX00XX000NK0OKN00OXXOOOXKxxdd::cccl;
.0N,.. .. ....':lodkk00KXXNWWNNNWNX00XNNNXKKKKO00000N00WXKKWKO0XNWXKKN0OKK0XWNXXXXKKKKKKKKXKKXWKXWK0NN0KWK0XWKKNX0KWX0KW00KWK0XN00KN00XN00KWK00NX00KNK00XX0OOXXOOOXKoodo:oOkl.
xNK,...........lOXXK00Okkxdollc:;,''.O0XKKKKKXXXOX0ONN0NX00NKOOOKXKXNNKO0XK0NNXXXXKKKKKKKKXK0XWKKWKKNN0KWK0XN0KNX0KWK0XN00NN00NX00NK0KWX00NX00XX000NK00XN000NX000NKOO0KkK0X0kkd:
lN0..............'''..''',,,,''''''''x0KXXKKKXXX0NK0XXOXN00NX0OOXKOOkX0K0KNKNWXXXXXKKKKKKKXN0KWXKWXKNN0KWK0NN0KWK0XW0KNX0KWX0KWK0KN00XN00XN00KNK00NX00KNK00XX000NK0OKXKXKKKKK0xl;.
;XX:................................'xKNWNKKKKXX0XNKKNOKWKOXNOOOXX0OkKK00XNKWWXXXXXKKKKKKKXNKKWNKWNKNN0KWK0NN0KWKKNN0KWK0XWK0NN00NX00NK0KWK00NKK0XXK0KNK00XX00KXK00XNXXKKKKKKKKx:cc'
.KNk..... ......',;;::loodxkOO0XNWWXKKK0kxkXNKKW00N0KWX0XWXOKXNWNKXXOOKNKNWNXXXXKKKKKKKKNXXWNKWNKNNKKWKKNX0XWKKNX0KW0KNN0KWK0KWKKNN00NX00XX00XNK0KWK00NXK0KNK00XXXXKKKKKKKK0xk0koc,
.ONo .........lOXNNNNNWWWNNXK00OkxddKKKKKodxNXXKW0ONX0NX0KWK00KXXKXNN0O0XXXWNXXXXKKKKKKKKXKKNWKWNKNWKKWK0NX0XWKKWXKXN0KNXKXNK0NNKKWK0KNK0KNK0KWKKKNKK0XX00KNKKKNKXXKKKKKKKK0OKKKKKo;;
.xXK;...........;odddolc:;,,,''''....'OXXXK000NXX0NK0XKOXN00NX0O0XKOOONKKKXX0WNXXXXXKKKKKKKXX0XWKNWKNWKXWKKNX0XWKKWK0NX0KWK0NX0KWK0NN0KNXKKWXKKNKK0NXK0XNK0XNKKKNKXXXKKKKKK000KKKKKK0ol.
00XN, ................',;;;:ccloddxkO0XXXXXK00KNXKXW0XXOKW00NX0O0XX0OkKKKKXN0NNXXXXXKKKKKKKKNKXWXNWKNWKKWXKWX0NNKXW0KWXKNNKKWKKNNKKWKKXNKKNXKKNXKKNNKKXNKKXNKKKNKXXKKKKKK0O0KXXXXXKKOxl
xKKNc............ck0KXXNNNNNWWNNXXKOkkkK0000lo0NNXKNO0N0KWX0XWX00XNNNKXKOOKNKNWXXXXXXXXKKK0oNKXWXXMXNWKXWKKWKKNN0NNKXWKKWXKXNKKWKKNXKXWXKXNKKXNKKXNKKXNKKXNKKXNKXXKKKKK0O000000KXX0OOdd.
lKONX;...........:xOkkxdolcc:;,''''''',00KKKOOKNNK0NO0WX0NX0KW0OkKX00KXXOO0XKXWNXXXXXKKKKKKKNXXWNXMXNWKXWKKWKKWXKWNKNNKXWKKWKKNNKKWKKNNKKWXKXNKKXNKKXNKKXNKKXNXNXXKKKK0OOOOOOOO0000xdx'
;XkNK.................''','''','''',,',k0XNXKKKXNX0NK0NK0NXOKWKOO0NX00ONKXKXXKWWXXXXXKKKKKKKXKKWWXWXXMKXWKKWKKWXKWXKWNKNNKXWKKWKKNNKXWKKNNKKNXKXWKKXNKKXNKKNNXNXKKKKK0OOOOOOOOOOOOd.
.NOXNo..........................',;;ccl00000xcoXNWKNW0XXOXW00NN0O0XN0OON000NNKWWXXXXXKKKKKKKXN0NWKWXXMXXWKXWKXWKXMKXWKKWXKNNKNNKXWKKWXKXNKKNXKXNXKXNKKXNKXNNXXXXKKKK0OOOOOOOOOOOOl
OKKNx . .....'::clodxkO0KXNNNNWWWWNXKKKKdkNNWKXWOXWKKWK0XWKKKXNNNXN000KNKNWXXXXOOOxxKKKXWKNWXWNXMXXWKXWKNWKNWKNWKXWKXWKXWXKWXKNNKKNKKNNKXWXKXWXKNNKXNXXXXKKKKK0OOOOOOOOOOOOc
oXONx ..........o0NWNNXXK0Okxdddool:::XXNXXNXXXWXKW0KWK0WX0XWK00XNKO0XK00KNXNWNXXXodkkxXKKKNXXMXWNXMXXWKXWKNWKNNKNNKNNKNNKNNKXWKXWKKNNKXNKKNXKXWXKNNKXWXXX00KKKK0OOOOOOOOOOOO;
;NONNc...........';;;;,,''''''',;:::ccoX0000kxkNNN0WX0NX0NN0KWKO0KN0Ok0XKKKNXNWNXXXOOkxxKKKKNXNMXNNXWXXWKNWKNNKWXXWXKWXKWXKWXKWXKNNKNWKXWXKNNKXWXKNNKXWXXXXOkKKKOOOOOO0kxcc;..
.X0XN,............;:clodxxkO0KXNNNNNWWWNK00K0xOWNWKKX0KX0XN00NXOOOXXOO0NK0KXXXNWXXX0OkxxOKKKNXXMNXWXWXXWKNNKWNKWXXMKXWKNWKNNKNNKNWKXWKKWXKNNKXWXKNNKNNXNNXXKKKKOOdxl::,:'c'c.
k0KNo............kKWWNNXK00Okxdolc:;;,lXXNXXXXXXWK00O0K00K00KXK0XXWWMMNXXXKKXNWXXXKkOkxkXKXXNKWNXWKWXXWKNNKWXXWKNWKNNKWXKWXXWXXWXKWXKNNKNWXXWXKNNKNWXNNNKKXKKO0O;,o:c,:',;
lKkNK..'.. .',,,,,,,,'..',;:::clokXKKK0kkONWX00OO0K00K00K0KNNWNNWXXXXKKKNWXXXNO0OOkXXXXWKNWXWXWXXWKNNKWXNWKWNKWXXWKXWKNNKNNKNNKXNKXWXXWXKNNKNNXNNNKxkKX0k;;,.::l,c;,.
;NONO.............;:cllodkkO0KXNNNWWWWWX0000xdkNWN00KKKK00K0OKKKXXK0KXKKK0KKKNWNXXN0OxkOKXXKNXNWXWXWNXWKNNXWXNNXWXXWKNNKWXXWXXWKXWKXWXXWXXWXKNNXWWXNNNX0kkKKx0d;o:c,:;;c
.KOXNx...........'kKNNXXK0OOkxddollcc:,d0KKXXKKXNN00000K00KK0KKKK00XWKXXKXKKKXWWXXXKOodk0XXKNNNWXWXWNXWKWXXWKWXXWKNNKWKNWKWNXWNXWXXWXXWXXWNXWNXWNXNNXXXXXX0kl;o;l;::;:.
xK0Nd............',,'''.'',,,,,'',,,''l0KXXK00KNWK00KKKKKKK00KK0KNMWNXK000KKKNWXXXKOxxk0XXXXXXWXWXNNXWKWXNNXWXNNKWXNNKWNXWKNWXNNXWNXWNXWNXWNXWNXNNX00KKX0xoo;;::oco;;
cN0NO....................'...........'lK0000kdKNWX0000K0O0K00KKXKKXWNXKKK0KKKNWNXXXkOkk0XXXXNKWNNXNNXWKWXNNXWXWXXWKWXNWKWNXWXNWXNNXNNXWNXNNXWNNNNXKxoOKOOOlolc:,l;l.
'N0NNl....... ......,;::clooddxkO0KXNWNKKKK0OKXWN0000KKKKK00K0KNNKXMWXKKKKKKNWNXXN0OkOOXXXXNKNNNNNNXWKWXWNNWXMXWNXWXWNXWXWNXWXNWXNWXWNXWNNWNNNNXXXKKKOx,:::o:l:l:.
00XN;............O0NNNNNNNNNXKK0OkxdocO0XXXK00KNW00K0000KKK0KKKNXKWXKXKKKKKXNWWXXX00xxOKXXXNXNWNNNWXWKWXWXNNNWXMXNNNWXWXNWXWNXWXNWXWNXWNNWXNNNKKKXXKOxkl:,':'c,c,
dK0NO,...........coddlcc:;,'''''''''..d0000OxkNNWK00K0K00KK0KK0KKNMWNKNXKXKKXWWXXXKOxkk0XXKNXNWNWNWXWKWXMXWNNNXWXMXWNNWXWXNWXWNNWXWWXWNNWNNNNXkdxXKOOc;o;l::,:c
;XON0..................';;:cllodxO0KKXNNKK00O0XNWK00KKKKKKK00KKXKKKWNXKKK0KXXNWXXXXO00OKXXXNXXWNWNWXWXWXMXWXWXNNNWXWXWXNNXWXNWXWXNWXWNNWNNNNXXK0KKOdl:.c;l::,,.
.XONK'...........'xO0KXNWNNNNXXXK0OOkxd0KXNNXXKXWX000O00O0K00KKKXXK0KKKKKXXXXNWNXXXK0O0XXXXXNXWNWXWXWXWNWXMXWXWXWXNNNWXWXWNNWXWXNWXWNNWNNNXKXXXXKk0d,c;c::c'c
O0XNO......... ..cdxxdolc;,,,''''''',;k0000OxONNN00K00K00K00KKXNNWNNMWKXXX00NMNXXXXX0OKXXXXWXNNNXWXWXWNWXWXWXWXWXWXMXWNNNXWXWNNWXWNNWNNNX0xkKKOOc.l:o;c,.c.
o00No.... .........'''''''''''''..'''dXK00OkONNN0XNOKN00NK0KX0XXKWNNXX00KNXXWWXXXN00OOXXXXWNNNNXWNWXWNNNNNNNNNNNNNNNWXWXWNWNNWXWNNNNNNXK0kkK0doo;cl;c:l':.
;XONK:.......................',;:ccodd0NXXNXXXKXWKXN0XN0KWK0XX00KXXK0kXXKKNNKWWXXXXK0KXXXXXNNNWNXWXWXNNNNXWNMNWXWNWXWXWNWNNWXWXWNNWNNNXXXXXX0OO:l;:c,:'o;
.XkNNc.. . ......ccodxkOO0KXNNNNNNXXXKK0000xoONWKKN0KW00WK0XN0O0XXOOkKX0OKWXWWXXXXXXXXXXXXNNXWNXNXWXNNXNXWNWNWNWNNNNNNNWNWNWNWNNNNNNX00KKK0Oc:c;c,c':'.
OOXNc ..........'O0XXK00Okxdollc:;;,,,OKK00kdONNX0W0OWXONX0XW0OOKN00NNN0OKNXNWNXXXXXXXXXXOxNXWNNNXNXNNXNXNNNNNWXWNWNWNWNWXWNWNNNNNNX0xd0Kkx0o::'l,l;c,
oK0NK,.............',''''.':;;loodxxxkXNNXNNNXXXN0NXONX0XWKKWK00KNWNKKNK0XNNNMNXXXXXXXXXXXXNXNNWNXNXNNXNNNNXWNNNNWNWXWNWNWNWNNNNXNNXXXKKkOl;o:l,:;,l
;NONO............'odxxxO0KXNNNWWWWNXXKKK000OxkXNN0NX0XXOXW00WX0KKNXOkONXKKNNXMWXXXXXXXXXXXXNNNNWNXNNNNXNNNNNNWNWNNNNWNWNWNWNNNNXKXXXNXXkloc':,l;:;'.
.N0NNo...........,x0K00Okxddoolc::,''.,K0000xxKNN0XNOKWO0WK0NNOOOXN0OONX0OXWXWWXXXXXXXXXXXXNNNNNNXNNNNNNWNNWNNNNNNWNNNNWNWNNNNXKo0XXK00Kc,o;lc:c,o.
x0KNk. ..........'''.',;:clloodkOO0KNNNNNNNXXNKKW00WK0NK0XW0O0XX0XNXXOOXWXWWNXXXXXXXXXXXNNXNNNNNNNNNNNNNNNXNXNWXNNNNNNNNNNXXXXXXK0Kc,d;x:::'c'
.ONk............:dxk00XXNNNNNNNNXK0OkO0000OkkXNX0WK0WKONN0XWK0KXNWKO0N0KXNXNWNXXXXXXXXXXXXWXNNNNNNNNNNNNNXNNNWNNWNWNNWNNNNXXXXXXKKOkd,c;;l,l,c.
oNNo...........:kKK0OOkxdollc:;,,'',l0000OxoKNN0NKONKOXN0KWKOO0NKOOONX00NNNMNXXXXXXXXXXXXWNNNNNNNNNNNXNNNNNNNNNNNNNNNNNNXXXXXXK0KO,l:lc,c,:,
:XW:..............'''''''''''''''''',0XXKOO0KXWKXXOXNOKW00WXOO0XXOOKNK00XNXWWXXXXXXXXXXXXNNNNNNXXNNNXNNNNNXNNNNNNNNNNNXXXXXXX0Kd:c;,:;o,c;.
.0Nk'.......................',::cclldXN0KK000KWXKW0KN0KWK0XNOOONNXNKKKO0XWXWWXXXXXXXXXXXXNNNNNNXXNNNXNNNXNNNNNNNNNNNNXXXXXXXK0O0:::':,ooxc
xNK. ........'::clodxkO0KXNNNNNNXXXKXNX0O0KNNKN0KW00WX0XWK0XXWN0OKXKKKNXWWNXXXXXXXXXXXXNXNXXXXXNXNNXNNNNNNNNNNNNNXXXXXXX0KO;;dckx0000;
lXK............o0XNNNNXK0Okxxdolc::;cKKN0kOOXKX0X00NKONX0KWKOkKNXOO0XKO0XXNWNXXXXXXXXXXXXNXXXXXXXXXNXNNNXNNNNNNNNNXXXXXXK000000000000O,
,KNx............;:::;;,,''..',;:ccloxNWXOkOKNXK00OONNOKN00NXOO0XXOKXN0O0KXNWWXXXXXXXXXXXXNXXXXXXXXXXXXXXNXNXNNNNNXXXXXXK000000000000k'
.0No............,:cclodkkOO0KXXXNXXXKXKKK00XNXKKK00KNO0WK0XN00KXNNXOXX0KXXXNWXXXXXXXXXXXXNNNXXXXXXXXXXXXXXXXXNNNXXXXXXK000000000000x.
xXK,...........o0XXXXK0Okkxddolc:;,,d00000NNKKK000KXOON00XNK00XN0OOKKKXXXXNNNXXXXXXXXXXXXXKOOkxkkkxxkkOKXXXNNNXXXXXXX000000000000k.
cXN: .. .......,;;,,'..'''''''....'c00KXNNNXKK00000OkX00KWK00KNX0OKXXXXXXNNNXXXXXXXXXXKXXo;;:cc:::::clloxkKNXXXXXXXX0kkO0000000d.
'KNc................................'0XWNNNNXKK0000000KK00NX000XXXNWXXXXXKXNXXXXXXXXKKKKX0:cxkkkkxdlc:::;ckXXXXXXXXXK0KKOkO0000l
OXX,........ ...................',;:0NNNNNXXKK00000000K00KK00KKNWWNXXKKKKXXXKKKKKOxo:,;, 'ckXWKolkkddOXXXXXXXXXK0KXXXXOxk0l
oX0...............',;::coddxkO0KXXXXXNNNX0OxooodxxkO0000KKKKKXXXXKKKKOxxO0Odl:'.. .' ';oOXXXXXXXX00KXXXXKK0ko,
,KXo;;ccloddxkO0KKXXXXXXXXXXXXXK0Okdl:,.. ..',,;::;;,'.. 'cxkkOKKKXXXXKKK0kko
oKXXXXXXXXXXXXNNXKKOkxdoc:;'.. .cxKXKKKKOl,,
.,:cccc::;;,... .;;;'.