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