=============-=+++++++++++++++++***********++++++++++++++++++++++++++++=========
=============-====----:::--=++++****+=------------------------------------::::::
============:::.  . .....  .:-=+***++=------------------------------------------
===========-    ........:.  ..:-=++++++++==========+++++++++++++++++++++++++++++
=======-:::................  ..:.:=+++++++++++++++++++++++++++++++++++++++++++++
=======:. .....  .           .... .=++++++++++++++++++++++++++++++++++++++++++++
======.......                      :=+++++++++++++++++++++++++++++++++++++++++++
=====: .....       .........     ...::-=++++++++++++++++++++++++++++++++++++++++
====:  ....  ..:--========--:::.........:=+++++++++++++++++++++++++++++++++-::::
====: ......:==+++++++++++++===-::...    .=++++++++++++++++++++++++++++++++:    
====.    .-=++++++++++++++++++===-::..    .=+++++++++++++++++++++++++++++++:    
===:   ..-++++++++++++++++++++====-:.      .=++++++++++++++++++++++++++++++:    
===:   .-=++++++++++++++++++++====--:.      -++++++++++++++++++++++++++++++:    
===:. .-==+++++++++++++++++++++====-::.    .-++++++++++++++++++++++++++++++:    
====- .===+++++++++++++=============-:.... .=++++++++++++++++++++++++++++++-    
====: .==++++++++++==-:..::::..:-----::..  .=++++++++++++++++++++++++++++++-    
====- .-==------====:...::-:::.:=====-:.....=++++++++++++++++++++++++++++++-    
===+=: :........::-::--::...:-=-+=====--==-:=++++++++++++++++++++++++++++++-    
=====:...::::....:=-:-==--======++====-====-=++++++++++++++++++++++++++++++-.   
====: :-:.....-:.=++=:=++++++=-=+====--==:-==++++++++++++++++++++++++++++++-    
=====::---:--==-:++++=-=======++===----==--===+++++++++++++++++++++++++++++-.   
======:-====++=:=++++==============-----==+===+++++++++++++++++++++++++++++-.   
=======---===---=++==-======+========---=====++++++++++++++++++++++++++++++-.   
========-----==-::::.::-+++==========---:-==+++++++++++++++++++++++++++++++-.   
=========:--===-:..:-=+++============---.-+++++++++++++++++++++++++++++++++-.   
=========::--==--::-------:-=========----=+++++++++++++++++++++++++++++++++-.   
==+++====-:--=-:..:::::---==========----==+++++++++++++++++++++++++++++++++-.   
==+++=====::------::--===========---::--==+++++++++++++++++++++++++++++++++-.   
==+++=====-::--======++++++++==--::::--===+++++++++++++++++++++++++++++++++-.   
==+++======-::--==========+==--:::::=====-+++++++++++++++++++++++++++++++++-.   
==+++========:..:----------:::::::-========++++++++++++++++++++++++++++++++-.   
==+++=========-:...::......:::::--=========++++++++++++++++++++++++++++++++-.   
==+++=========--=-.......:::::--============+++++++++++++++++++++++++++++++-.   
==+++=========--=+:......:::---=======+++++++++++++++++++++++++++++++++++++-.   
==+++=========--=+:.:::::---=======++++****+++++=++++++++++++++++++++++++++-.   
==+++=========--=+: :---=========++*******++++++:.-++++++++++++++++++++++++-.   
==+++=========--=+: .-========++***********++++-.  :=++++++++++++++++++++++-.   
==+++==========-=+: :.:-=-==++**********+++**=:  .  .:=++++++++++++++++++++-.   
===++=========-.:-: =-::-==-+**************+-. ...... ..-=+++++++++++++++++-.   
===++======: ..   ..==---:  .:=*******++**+:...........  ..:=++++++++++++++-.   
===++======.      ......      .+*****+***=............. ... .:---==++++++++-.   
===++======.                   =********=........       ..... .. ...-=+++++=.   
========--:                    .=+****+-.......... ...................::-=+=.   
======-.               ..       :-=+*+:...................................::.   
===+=:             . .:--:.     -++++:......  ......  ......................... 
====.            ...:::===-:..  -+*+:........   ...  .......................    
==-.            ::.:-==+++==---:+++:.............   ................... .       
=-             .-====+*++++===++++: ............  ...................           
-.            ..:++++*****+++++++: ............  ...............  .             
              ::--+++**+**++++++: ...........    ......                         
             .-==-=+********+++: ...........   .......                          
             .+====+*********+: . .........   ......                            
.            :+++=+*****+***+-     .......  ........                            
..           :+*+++++++++***-.     ......  ...... .                             
..           .+**++*++++++*-.      ....   ....                                  
...          :-+*+++++=+++=. .  ......   ...                                    
:..          :-=++++++==+=.    .....      ..                                    
:..          :===+**+++==.       ..   ... ..                                    