..............................................._,,,,-------,,,__
........................................,,;:#ggg@@g;,..........e`=-,
.................................,,;$#^`````*#@@@g;,.............f=-,
...............................,/$`................``#@@@#g,...............e\,
........................._,;f`.......................,$@@@@#g,..............g\,
....................,/*&gp..+,_..................%*#@@@@g;,............f\,
................,./_`h>f.....`#$$#x;,............,%@@@@@#g;,..........`\
..............,/ (............`\....`\h*=,``\.......*&*%@@@@@g;,..........\
...........,/...,^=*#q,_,/`\.......`~..`-.......g$@@@@@@@#g,........|
........../,;p8jq;,_..........;.........................`%@@@@@@@#g;....|
........,/.f,,,,_..`*8r-,.....;......................,&@@@@@@@@@#./
......./.,$ `\,...`.-...&..../........................`%@@@@@@@@$#/
.....,/,$--__........`\..../............................#$@@@##@@@@/
...,/\...`ft-,__,;>`..../.........................................;`=hh=.`;@#*
.,/....`h~--~`ff....-`...................................,--h,~#-,.._*h`
(..........................................................,....`hh......,;`
.`\,_.....................................................&`*-,,_-h`
.......`-,_.............................................../`.../
.............\..................................................|