dxOKX0OOO000O0000000000000000OkxdxkkO0000000000000OkxxdxxkO00KKKKKKKKKKKK0kxkkOO000kxxdddooododddddooddxxkkOOOO0KKKxxxddoollllllc:::clooolllc
00KK00000000000000OOOOOkkxkkkkOOOO000000000OOkkxxxxxkOO00000K00000000OOOkkkO0000OkxkkkOkkkkkxddddxxdddddddddddxxxxk0KKKKK0Okdocc;;ccccccclllo
OOOOO0000000000000OOkkkOOO00000000OOOkxxxdxxkkOOO0000OOO00000000kxxdxxkkkxkkO0OxkOOOkkdxOOkOddddkkkOxxkxxddxkkkkOOOOO0OO00O00d;. .,,;:llloolc
OOOO00000000000000000OOOOOOOkOOkkOOlldxkkxococ:od;o::l,,;clkkkxollldc:cclcc';:lc:,lccl:',;lc,oc:':colllllloodxdddxdodxdxxOOkko...',;;;:cc:;,;
kkkkkkkkkOOOOOOkkkkkkxxkOxkxxxxkO0dodd,;:c..'o,,l:ldxxxol;.'.'c,;olxkkOOxdddollddxxxxkkOOkkkkxxolcccoc;;;.,;:cloOklcclodc;loool;cllloo:'',clo
xddddoox;;kkkxkxxdddolcccc;oxxxddd:dkkkxxdxkkOkkkxdodkdodxxxxxkkkkOOOkdddxkkkkkdddxO0000OkkOOOOOOkdoc;'..;;;:cc.:c,',;;clxdooxxdd::llcc:,'',,
.'''',;;,,:;,'',,,,,,;:ccc;.,,,;:lokkOOOkOOOkxdddxkkkkxxdddddxkkkOkxddxxkkxdoodxO0K0OkxxkO000Okdcoxkxocoxdddolol;coo::oolclddddo;:dddoooooodc
ooodddddxxxxxkkkkkkOOOOOOO0kooooooxkOOOOOOkkkkkkOOOOOOOOOOOOkkxxxxkdddddoolodxkkkkxkxxkOkkddloxkOOOkkxddxkkd,',;;;;:;;;;;,';;,';;;ldddddodddd
OOkOOOOOOOOOOOOOOOOOOO0000000OkkkOOOOOOOOOOkOOOOOOOkkOOOOkkkkxxkOOOolllloodkOddolodxOkxocldkKXKOxdlolloddoddoclccccllclcc:;:;,.,;;:;;cooooooo
kkkkkkkkkOOOOOOOOOOOOOOOOOOOO00OkkkkOOOOOOOOOkkOOOOOOOOkkkddxkkxxxdooooddoloxkO0Oxol:cdk0KXXKOxdddddddoccxkkkddkkkkOddxxkxxxdlclllcloc;,:lllo
OOOOOOOOOOOOOOOOOOOOOOOOOOO00000OkkkkkkkkkkkOkkkkkkkkkkkkxdxkkkkkkkkkkkkxxxxxxoodocdk0KKK0Oxdddddddxddcddxxkox0NNNNNNNNNNNNNXKOdloooolcoc,',;
kkkkkkkOOOOOOOOOOOOOOOOOOOOO000000OkkkkkkkkkOOOxxkkkkkkkkkkkkkOOO0000000OOOOOOxxk0000OkodxkxddolcclldxxdxxooxkKNNNNNNNNNNWWWNXXKOdl::oolcccc;
kkkkkkkOkkOOOOOOOOOOOOOOkOOOOOkkkkkkkkkkkkkkkkkkkxxkkkkkkkkkkkkkkkkkkkkkkkkkOOOOOOOOkxxc;,';:,;:llcclllodddddld0OO0KXXNNNXXXKKOkOkkx::ooool:;
kkkkkkkkkkkkkkxxxxxxxxxxdxxxxdddddxxxxkkkxxxkkkkkkxxxxxkkkkkkkkkkkkkkkkxkkkkkkkkkkkOOOOOOkxdc;,'..':clol:;:cloollllooooodoc:clol:;:lc:,.,;;;;
xxxxxddddddddddddddxxxxxxxkkkkkkkkkkkkkkkkxxxxxxxxxxdddxxxxxxxxxxxxxxxxxxxxxxxxxkkkkkkkkOOOkxxxkxlc;,'..':loxddddddddddxxdddllooooodddxddddxx
dddxxxxxxxxxxxkxxxxxkkkkkkkkkkkkkkkkxkkkkxxxxxxxxxxxxxdodddddddddxxxxxxxxdxxdddddddddddxkxddxkO0000Okkkxxxkkkxxxxxxxxxxkxxxxxxxxxxxxxxxxxxxkk
xxxxxxkkxxxxxxxxxxkkxkxxkxkxxxxxkkkkkkkkkkkkxxxxxxxxxkxxxdxxxxxddxxxdxxxdddddxxxdddddddkxoodxxxkOkkxxxxxxdxxxxxxxxxxxxxxddddddxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxkkkkkkkkkxkkxxxxxxxkxxkxxkkkkkkkkxkkxkkxdxxxxxxxxxxkxxdxxkxoodddxkkkxxxddddddddddddddddddddxxxdddddddddddddddd
xxxxxxxxxxxxxxxxxdddxxxxxxxxxxxkxxxkxxxxxxxxxxxxxxxxxxxxxxxxxxkkkkkkxxxkxkkkkxxxxxxxxxdddddddddddddxddddddddddddddddddddddddddddddddddooooooo
xxxxxxxxdddxddddddxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxkxxxxkxxxxxxxddddddddddddddddddddddxxxxxxxxxxxxxxxxxxxdddd
xxxddxxxddddddddddddddddddddddddddxxxxxdxxxxxxxxxdddddddddxdxxxxxxxxxxxxxxdxxxxxxxxxxxxxxxxxxxxxxxkkkkkxkxxxxxddddddddddddddddddddddddddddxxx
xdxxxxddxdddddddoooddooooloodoollllloooooolodoodddoooddddddxxdxdddddxxxdddxxxxxxxxxxxdxxxxxxxxxxxxxxxxxxxxxxxxxxxkkkxxxxxxxxxddodoodddddddddx
xkkxxdxdxdxddddddxddddddddddooooooollooloolllllcllllloloololoolooooododddddxxxxxxxxxxxxxxxxxxkxxxxkxxxxxxxxkkkkkkkkkkkxkxxkkkxkkxxddddddddddd
kkxxxxxxxkxxxdxxxxxxxxxdxxdooodddodododoooodooolooooooooooollodooooooolloooddooddddddodddxddxxxxxxxxxxxxkxxkxkkkkkkxkkkkkxxkkkkkkkxxddddddxxx
,;;;:cclooododddxkkxxkkxxxddddxxxxdddddxddoddoddxdddoodddddddddxddxdddoddddddooddddddddddddoooooddodddddxddxdddddxxdxxxxxxxxxkxxxkkkkdddxdxxx
....'.'''........',,;;;::cclooooxxxxxxdxxxxkxxkxxxdxxxxkkxxkxkkxxxxxxxxxxkxxxxxxxxxxdxxxxxxddddddxdxddddddddddooddoooooooddooooooooodoooooodd
..............''''.............'',,,;;::clooddxxkkkkkkkkkkkkkkxxOkkkOkxkkkxkkxxxxxkkkkkxxxxxxxxxxxxxxdddxxxxddddddddodddooooooooooolooood
........ .............''''..''''.''.......'',,;;;::clooodxxxkOkkOOOkkkkOkOkkkkkkkkkkxxxxxxdxxkxxkkxxxxxxxddxdddxxdddoodddddoooooo
....................... ......,,,,''''''','.................',::cooxkkO0OOOkOxkkkOkOkOkkkxxxkkxkxkxkkkkxkxddxxddxxddxodddddddddd