, --―===--.....、
             /::::::::::::::::::::::::::::::::::::::::ヽ、
        /::::::::::::::::::::::::::::::::::::::::::::::::::::::ヽ、
.        /::::::::::::::::::::::::::::::::::::/::::::::_,,,,,,_ヽ
       /:::::::::::::::::::::::::::::::::::/:/:::::::::[| l |:::::::|::ヽ、
        /:::::::::::::::::::::::::::::::::::/:/-−=‐| l |:::::::|::::ハ
.     .'::::::::::::::::::::::::::::::::;イ/´ ̄ ̄ ̄| l |:::::::|::::::::ハ
.       ':::::::::::::::::::::/:::::::/:/:::::::::::::::::::;::| l |:::::::|`ヽ:::ハ
     .l::::::::::::::::::::イ::::::/::/::::::/::::::::::/:i:| l |:::::::|`ヽ}::::}
      .l:::::::::::::::::::i:::::::/:/::::::ノj:::::::;イ:/l:| l |:::::::|::::::.}::::}
      .l::::::::::::::::;イ::::/:/// ./:;// .l:| l ヽ;;;;|_:::::}::::l
    .,'::::::::::::::/:;i::/:/イ亦卞ミ  ´. ./.| l  |.|::|:::::i::::i
.    .'::::::::::::::/:/i:::::l ト-,シ′     | l  |.|::|:::/::/
.    .'::::::::::::::::;イ、{:::::l            | l  |.|::|//
   /::::::::::::::::/:/>l:::::l        ,    .|_.  |.ゞ:ゝ、_           ウェヒヒヒヒ
  ./::::::::::::::::/:// .l:::::ト、    _     |l l゙l | iイ゙l´l`i
 /::::::::::::::::/:/`\l:i:::l \    ̄ _ ,. |l l_l |゚, |:i_| .}::l
./::::::::::::::::/:/   ヽ::l‐-=,^ー-≦:;;//^|l l_l | .l::'| }::},,.
'::::::::::::::::/:/ー=、  ヽ  ii iiー--<_.´ | ̄´ | .,fニ{ lし/⌒Y^y-、
::::::::::::::/:シー-  `ヽ、 `  ll ll゙\  ヽ, .|  .三| {;;_;;l  V  ./ ./  /--、
:::::::::::/:/    ̄`ヽ\,  ヾヾ, \  .l..|  .三| {;;;;;{        {:::::::/i
::::::::::/-―===、  ``\      }.  .└i  ニ| .``.|       .i::::::l:::l
::::::;イi       \   .ヽ,   ,l  .゙l ),r-亠、/∧        .l::::::l:::l
/,:: l           l\   ∨,>lv.、 .´i¨   i_i i      ./;;;;;;l;/
::::::::::l.         j、 \   ∨゙iヽ, \l、     l      .i゙
::::::::::∨.        ヽ  \  .ヽ} .}   }      .f、___/
::::::::;::l∨      ヽ  .i、  .`ヽ、,}  l  .ト,    . /    . |
::::::::i:::l ヽ      \. ヽ      /l   }.    ./゙>ー―一l
::i:::::l:::l  ∨      .\ヽ    .i .l   {   ./       .l
sge