.... ..            ....::::::::::88::8:;;::::..................................
.                 .8X%    %          S% SS   XX:... . .........................
                .8              SSX t            @. ...........................
.              :S              XX% 8S             %:...........................
.             :%              tXSS%t;8       %      :..........................
             .@       SSS    %XSX:t8;8%             S..........................
.          ::S      S8   8X% SS  S;::8%StX           %X::::::..................
.     .:@SS         XS %88@%tXt   SS%8S SX                     X:..............
.    :8S%       tSX8%@::;8 S        8t                            8............
.    :t8;X       S8 ;t:XS         S          S%SS                S:..........
.    ..8888S     %:88%:tS%%    %             %X8%%                   :.........
.    .8;8t.X     X88888XS%t   %SS  S%S%%X@888;;:@XS                  S;........
.    .@@8XXX      X8:%%:::::8 %   88:......t.......:S     t      S   %S........
.    :S8S         X:;.........S8:....................XSSSX    SS    %8t::.....:
.     ::8;SS t    SS.................................;%8S  %SSS%   %%8XX8.....:
.      8S88SSXS   8................................... S@S@t%     S8%%888.....:
.      888%888.8XS8................................... %;%S    %.88;88@.....:
.      SS8SS88888.@8t................................. tS%:;;S  %S.888888.....:
.     :8S88SX S8888X8................................:   % %%S   %%8%88%t:8...:
.    .XX8S88 SS@;XX@.................................:8SS  S%  %tS%%%.8t8X8...:
.    8SSXX;8888;8;.........................;t:.......;%%% %%S  %8S%8 t 8tS:...:
.    @S SX8888tS.88888t.............:888St%;ttt8;...;t88X;%%%  %  %%;%t8.8....:
.   .S tX:8888S8XtXXStSt88..........8SX8XX;...S8t8SX88St%@8S  %:%%%S8:88%%:...:
.   ; %8.%88888;@.....:8S8..........:::.........SSSSXS% %.8 8@88t8tt888 8SX...:
.   :XS888.S888S88%:..:8X8S8.......;t:.....tX8888X;t;%%S%@8t%%%%%%88t8%888:...:
.    8t;St8 .8888X8XX@@S8:;8t.....:;:.;8X@X88X888t%t;;;S 88.8%%tt%8888888;....:
.    XStS:8S8 8888S8888;88@.........X8X.X8S88X%88888S%.S%.;t%8@8@ X8888%8.....:
.   .:8t8t88X@;88S8S8SX:................:@88SSS8....@8 S8.%%%@S S8%88888 :....:
.   8 .@:S;8.88t.St.................................X@8888;X8%%@%8888X8.....:
.   88: X8SXX88....................................XSt.;;888;% 8.:8888888.....:
.    .:%S88  S%:..................................;X;SS%88tS   %888888t8......:
.      888%  tt8..........:......:...............;8;88888t%S%:;888:;@:......:
.      8 SXS %;tX.........88;.t8X8%:%...........t8t8888888888S8 888888%S8:....:
.       t8   %8;St.......:t8StX888XtX..........;8;888888 8tX 8% 88888888X:.....
...   ....X. 88SS8........S88@@8@St%..........:8%t88888 X.8 SS%%8t888888@......
.....  ....88888SX.......................tX...XS%t88888X X8 88;t888888.8.......
.....  .....88 S%tS......S%:;%8%:t tXS........;X8%t8888t8 St888888888@:........
... . ......X88X;;8...:@ 888X ; X:;888;8.......;@8tX888.:ttS;88888 8...........
...  ........S%8;t8...;8;88 SXSSSXXt88 8.......:%8;S8888X %88888 8.............
...   .......SS8%tS....: 88 SS@@8SX88 %.........%X;88888S;8888t8::.............
...    ......@t8X@t8....% 88 88XX 8..........;8;@88888888888%:8S.............
...    ..... .8%88Xt8....:8 .;;..8;.........:t8S;X8888888888888t;..............
....   ........t%88@%8:....................:8SttX88888 X 88888.;...............
................8;S;8;8:..................t8t%X888888@@@X8.88X8:...............
.................8  ttSX:..............X88;S@88888888@%S%S%@t8%................
..................:t:8t8SX..........:8X;X88888888888SX%%%%%S8:t;...............
... .................:888X;SXXX@8XS;tXX888888888XSXXX%%%%%%%@:;:...............
        ..............88888888888888888888888X%tXXtX.%%%%%%%%S:...............: