.........................................................................
  seeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeer
  ^""$$$"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
     $$$ eee   eeereeeeeeer     .eeeee  eeeeee... 4eeeeeer4eeeeeec eee..  eer
     $$$ $$$...$$$F$$$P***%   ze$$****  $$$***$$br4$$****%4$$P**** $$$$Ne.$$F
     $$$ $$$4$$$$$F$$$Feeee  :$$$" eeeer$$$  '$$$b4$$4eeee4$$Feeeer$$P*$$$$$F
     $$$ $$$^""$$$F$$$F""""  4$$$. "?$$F$$$4ee$$$"4$$^""""4$$F"""""$$F "*$$$F
     $$$ $$$   $$$F$$$F      '$$$e..4$$F$$$4$$$$C.4$$     4$$F     $$F  ^#$$F
     $$$ $$$   $$$F$$$beeer   ^*$$$bd$$F$$$^**$$$F4$$eeeer4$$beeee $$F    $$F
     """ """   """"""""""""     """""""""""   """"^"""""""^""""""" """    """

        4eeeeeer eer   eee4eeeeeer4ee    ee.eeeeeee.. eeeeeeer .eeeeer
        4$$P***% $$F   $$$'*$$$$*%4$$    $$F$$$***$$b.$$$*$$$L4$$$***%
        4$$Feeee $$F   $$$^`$$$$" 4$$    $$F$$$  ^3$$F$$$4eeee4$$$b..
        4$$F**** $$L   $$$  $$$$  4$$    $$F$$$eee@$P"$$$'***#^"*$$$bc
        4$$F     $$$u.u$$$  $$$R  4$$c..z$$"$$$$$$$$l.$$$.... ...J$$$P
        4$$F     #$$$$$$P"  $$$F  ^*$$$$$$# $$$""**$$F$$$$$$$r4$$$$$P"
        ^"""      ^""""""   ^"""   '""""""  """   ^"""""""""""^""""""
                                  ...
                               .ee@$beu. 4eeeeee
                              z@$$***$$c.4$$****
                             4$$$"  ^$$$F4$$4eeee
                             4$$E    $$$F4$$^""""
                             '$$$c..u$$$%4$$
                              "*$$$$$$*" 4$$
                                """"""   ^""

                zeeeeeeceeec  .eec .ueeee4eer  eeer .ueeeee.
                ***$$P**#$$$. J$$6e$$P***4$$F  $$$Fz@$$***$$e.
                  4$$F   "$$be$$P$$$P"   4$$Fee$$$F$$$"   3$$L
                  4$$F    "*$$$$"$$$k    4$$F""$$$F$$$.   4$$P
                  4$$F  ..zd$$*" "$$$c...4$$F  $$$F$$$b..zd$$%
                  4$$F  4$$**"    "**$$$$4$$F  $$$F^#*$$$$$*"
                  ^"""  ^"""       ^"""""^"""  """"  ""##"""