$$$$$######CCCCCCCCCC######$#$$$$$$$
######CC##CCCCCCCCCCCCCCCCCC#######$$$$$
##CCCCC*******!!!******!!***CCCCCC########
CCCCCC***!!!!!============!!!!!****CCCCCC####
C*C***!!!!!==;;;;;;::::;;;;;;;==!!!***C*CCCCCCC
****!!!===;;;::~~~--------~~~::;;;;=!=!!****CCCC
***!!!==;;::~~~--,,`````,,,----~~:;;;==!!!****C**
!!!!==;;:::~-,,,`.. ...`,--~~::;;==!!!*****!
!!===;;::~~-,``. .`,--~::;;===!!!!**!
====;;::~--,,.. .`,,-~~:;;====!!!!!
===;;;::~~--,`. .`,--~~:;;;====!!=
;;;;;;:::~~--,,,-; -.``,--~:::;;======;
;;;;;;::::~~~~:=!*= =:,,--~~~::;;;;;===;
~:;;;;;;;;;;;;**C##$$$####C*!=;::~~::::;;;;;;;;:
~::;;;;====!!CC#$$@@@@@@$##C*!;;;;;;;;;;;;;;::
,::;;===!!**C##$$@@@@@@$$#C*!!===;;;;;;;;::~
-:;;===!**CC##$$@@@@$$##CC*!!===;;;;:::~
-:;===!**CCC########CCC**!!===;;:::~-
`~:;==!***CC##CCCC***!!==;;;:~~-`
`-~:;==!!!!!!!!!====;;:~~-`
`,-~::::::::~--,`