,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,;;:::::::::::::::::::::::::::::;,,,,,,,,,,,,,,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,:dkkkkkkkkkkkkkkkkkkkkkkkkkkkkkc,,,,,,,,,,,,,,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,:xOOOOOOOOOOOOOOOOOOOOOOOOOOOOkc;,,,,,,,,,,,,,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,,,,,,:xOOOOOOOOOOOOOOOOOOOOOOOOOOOOkc;;;,,,,,,,,,,,,,,,,,,,,
;;;;;;;;;;;;;;,,;;,;;;;,,:xOOOOO0000000OOOOOOKKK0OOOOOOkc;;;;;,,,,,;;;;;;,,,,,,,
ooooooooooooc;;;;;;;;;;;,:xO0000K00OOkkkOOOO0KKOkO000OOkc;;;;;;;;;;;;;;;;;;;;;;;
ooooooooooooc;;;;;;;;;:ldk00OkxddoooooooooooodddoodxO00Ol;;;;;;;;;;;:cllllllllll
..:oooooooooc;;;;;:lxOKK0OkxdoooooooooooooooooooooooodxOkol:;;;;;;;;lKNXXXXXXXXX
,oooooooooc;;;;:lx0K0Okkxddooooooooooooooooooooooooooodkkkkxdl:;;;lKNNNNNNNNNN
,oooooooooc;;;;:dO0Okkkkxxdddooodoooooooooodddoooooooooooodk0Ol;;;lKNNNNNNNNNN
,oooooooooc;;;ck0OkkkkkxxkkkxxkkkxoooddxkO0OxdoooooooooooooodkOo:;lKNNNNNNNNNN
:cloooooooooc;;oO0kkkkkkkkkkkkOOOkkkkO00KXXKOkOO0000OOOdxxoooodkO0x:lKNNNNNNNNNN
ooooooooooooc:d00kkkkkkkkkOOO0KX0OkddxOOkdlccoOOdlkOol00xkOdooox0XKkdKNNNNNNNNNN
ooooooooooooccOX0kkkkkkO0ko:':oc,...''.. .;;.. .'. .::..ckkooodOOkkKXXXXXXXXXX
cclooooooooollO0kkkkkOOd:. .dOdoodO0OOOOOOOOOOOO
.loooooooodO0OkkkO0d, .cOxookKKOOOOOOOOOOO
.ldoooooodOXOkkkOO:. ...''''. .''''.. :OxdOK0OOOOOOOOOOO
.ldooooood0XOkk0k, .;codxkO0KKk' :OK00Okxdo:,. :OxkKOOOOOOOOOOOO
..'ldooooooxKXOk0O,..,::;,'......'. .'......',;:;'. .l0OK0OOOOOOOOOOO
ooooooooooodOX000c... .. .kKK0OOkkxxxxxxx
ooooooooooodOXXKd'. .':ccc;,. ..,:ccc;. .oKKOOOk:......,
ooooooooooodOXXO:. .,cx0Odolodxdc:,. .;::cdxdoloxOOo,. ;KKOOOk;......'
ooooooooooodkXXxcollclx:'''';;;;',;;:c'...,l:,,,',;;;,''''lxoll:';0KOOOk;......'
ooooooooooodOXKOdlxo..:. ...... :xl:lx; ...... .:'dd:okKKOOOkc,,,,,,:
ooooooooooodkK0l,'ol. '. .'.cc... ,o' .o' ..,l,.. '..oc .c00OOOOOkkkkkkk
ooooooooodkOOKO;''ol. .. ....... ;o' .o, ....... .. .o: ;0K000OOOOOOOOO
ooooooood0KxlxO:'.,l:'...''',;;,'...;l, ;l;....';;;,'''..'cl. :Ol:dK0OOOOOOOO
ooooooookKxlxO0o'...':ccccccccccccc:,. .,cccccccccccccc:. .o0xd;dK0OOOOOOO
ooooooodOKdldo0x,'. .kOcl;oK0OOOOOOO
ooooooookKxlxOK0c'.. .,;;,. c0Okd;dKOkkkxkkk
...,looodOOcokx0x,'. .... 'kkox:;OOdooooooo
.looooxOkcldk0l'.. .............................. .o0ol:,xOdoooooooo
.looooodOOdlcdOc'.. .okdooollllllllllllllllllllldxc. ck:,:okkdooooooooo
.loooooodxkOkk0O:'.. .;ooc,... .,cc' :0Oxxkkdooooooooooo
:::coooooooooooddxOO:'.. 'col:'. .':c;. :Okxddoooooooooooooo
oooooooooooooooooodOOl'.. .':cc:;,''',;::cc;. .cOkdooooooooooooooooo
ooooooooooooooooooodxOd:'. .';:ccccc::,. ,xOxdoooooooooooooooooo
ooooooooooooooooooooodxko;.. ..,;::;'.. 'oOxdol::;;;;:coooooooooo
oooooooooooooooooooooo,:kOo;.. .lO0kddo: .looooooooo
oooooooooooooooooddxkOkkkkOOd:'. .,oOOxdxkkkd,. .looooooooo
oooooooooooooodxkOOkxolloolccdxo:'. .,lxko;;;;;::loxxo:. .looooooooo
ooooooooooodxkOOxolc::;:::'. .'cdxxoc;,'.'',:lxkxl,. ';;;;;;;:ldxd:;oooooooooo
ooooooooodxOOxolc:;;;;:ll, ..;coddddddo:,. ;oc::;;;;;:ldOkxdooooooo
ooooooodxOOxoc:;;;:coxk00;. l0OOxdlc:;;;;cdOkdoooooo
oooooodk0koc:;;;:lxOOxdxO;. .',,,,,,,,,,,,,,'. lOddkOOkol::;;;cxOxdoooo
ooooodOOdlc:;;;lkOkdoooxO;. .,;;;;;;;;;;;;;;;;. lOdoodxO0koc:;;;:oOkdooo
oooodk0dlc;;;:o0OdoooooxO;. ................ lOdoooodx0Odl:;;;:d0xooo
oooox0koc;;;;o0OdooooooxO;. lOdoooooox00dc:;;;ckOdoo
ooodO0xl:;;;:x0xoooooooxO:. lOdoooooookKxl:;;;:d0koo
ooodO0kxddddx0KkddoooooxO:. lOdooooddxOKOxxddddkKkoo
ooxOxc,'....';:lkkdooooxO:. lOdooodkkoll;'.....;xOdo
od0k;. .l0xooooxO:. lOdooox0o,'.. 'kOd
ox0x,. ,xOxdooooxO:. lOdooodkOxc.. .x0d
odk0l. ,kOdooooooxO:. lOdooooodOk:. .cOkd
oodxOxl,..';oOkdoooooooxO:. lOdoooooodkOdc,..,cxOxdo
oooooxkkkkkkxdoooooooooxO:. lOdoooooooodxkkkkkxdoooo
cccccccccccccccccccccccoOkdddoooooooooooooooooooooooooddOklccccccccccccccccccccc
cccccccccccccccccccccccclkOoc:;;;;;;:cccccccc:cc:;;;;;lOxlcccccccccccccccccccccc
cccccccccccccccccccccccccd0o;,,,,,,,ckkxxxxOklcc,,,,,,oOoccccccccccccccccccccccc
:::::::::::::::::::::::::dOo:,,,,,,:kkc::::o0klc;,,,,,oOl:::::::::::::::::::::::
:::::::::::::::::::::::::xOoc;,,,,;d0x:::::ck0dl:,,,,,lOo:::::::::::::::::::::::
:::::::::::::::::::::::::oOdlc;,,,cdOo:::::cxOxl;;,,,;dkl:::::::::::::::::::::::
:::::::::::::::::::::::::cxOl;;,,;loko::::::dkdo;,,,,cOd::::::::::::::::::::::::
:::::::::::::::::::::::::oOd:,,,,:odkl::::::oOxd:,,,,;dkl:::::::::::::::::::::::
:::::::::::::::::::::::::xOo:,,,,;okOl::::::oOkoc;,,,,lOo:::::::::::::::::::::::
;;;;;;;;;;;;;;;;;;;;;;;cxkdc:;,,,,ldOd;;;;;:xOxoc:,,,,;okd:;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;ckOxxxxxdollodkl;;,,,;dOxdoodddddddOkl:;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;:xO0OxdddkOkxkkkOc;;;,,;oOkOOOOOkxdddk00kl;;,;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;,,;ck0d,. 'okkkO0kc;,,;:k00OOOx:. .:k0d;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;,;:xkc;''......'::::ckd;;,;lOd::::;........';oOl;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;,,;;lddddddddddddddddddl;;;;:oddddddddddddddddddc;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;,;;,,,,,,,,,,,;,,,;;;;,,;;;,,,,,,,,,,,,,;,;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;