.,,,::11111ttttttt1t1111t1111t;:,,.
.,..;iitLfffLCCCCCCCLLLfffttttt1G0GGGGGGGGCCCCfLfffii,...
. ,:tt1LLLCGGGCCCCLLLLLLLfi::,,,,,,,,.;0@88@888888LffLCLLCCGCLLL11t::, .
.,iitffLGGG000888GfLLLLLLLCLLt;:::::::::::,;8@88@88@@@@LffffffftG008G00GGGLffii,,.
..:;tfLGGG0888@@@@@8@8LLLCCLLLLLC1:,:,,:,::::::,,i0@@@@@@@8CfffffffffL8@@@@@@8880GGGLLft;:. .
.;1ffCCG0088@@@@@@88888@0fLLCLLLLLLf:,:,,,,::::::,,:,:1LGGGLti1ffffffffft0@88@@@@@@@@@800GGCLLt,,
ifCCCCG88@@@@888@@@@@@@@@GLLLLLLLLLLi:::::::::::,,,:,:,,,,,,,,,1LLLLffffftG@8@@@@8@@@@@@@@@88GCCCL1.
LCLLC8@@@8@@@@@@@@@@@@@@@GLLLLLLLLLLi,::::::::::,,,,,:::::::::,1LLCCffffftG@8@@@@@@@@@@@8@@@@@0LLCGi
,LLCCCG8@@@@888@@@@@@@@@@0LLLLLLLLLLt,:::,:::::::,,,::::::,,:::tLLLLLfffLt0@8@@@@@@@@@@@@@@80GCCCf:.
..:;fCCCG088@@@@@@@@@8@8@8LLLLLLLLLLf;,:,,,,,::::::::::,,,,::,iLLLLLLfffff8@8@8@@@@@@@@800GCLLLi:.,
,;1fLCCG00888@@@@@@@@CLLCLLLLLLLf;,:::,,::::::::::,,:,:,;fLLLLLLfLftC@@@@8@888000GCCLti,,.
.,:;t1LLCGG000008@8LLLLLLLLLLLfi::,::::::::::::::,,:1fLLLLLLLtffL88080GGGGLLtt1::.
..:i;1fffCCCGGCCCCLLLLLLLLti:,,,,,,,,,,,,,,;ifLLLLLLLLCLCCCGCLffff1;,,
.:,,;t1t1LCLLLLCCCCCCLffffffffffffLCCCCGCLLLLC1111:,:,
.....,;;;;;;;;;;;;;;;;;;;;;;;;,.....
.