_
                ,="` `""=,       o
               /   ,=="""'=;        , __
       ~      /      ,--'/=,)  o    \`\\"._     _,
             |   .='/ <9(9.="       / _  |||;._//)
            /     (J    ^\ \     o_/@ @  ///  |=(
          .'    .' \  '='/  '-.  ( (`__,     ,`\|
         /     /    \`-;_      \  '.\_/ |\_.'   
    ~   /      |   /` _  \      )   `""```
       | ,     ;  /`\/ `\ \    /.-._///_
       |/     '   \_,\__/\ \.-'.'----'`
        \|     '.   \     \   /`-,   ~
          `\     _.-'\    (`-`  .'
            `-.-' _.-')__./,--'
         .--'`,-'`'""`    ` \
        /`"`-`               |          ~
       |                     /
    ~  |     .-'__         .'
        \   ;'"`  `""----'`
         \   \
          '.  `\
       jgs  )   `-.            ~
           /       `-._
          |     ,      `-,
       ~  \   .' `''----`
           `.(
             `

                               .-""-.
                              (___/\ \
            ,                 (|^ ^ ) )
           /(                _)_\=_/  (
     ,..__/ `\          ____(_/_ ` \   ) 
      `\    _/        _/---._/(_)_  `\ (
    jgs '--\ `-.__..-'    /.    (_), |  ) 
            `._        ___\_____.'_| |__/
               `~----"`   `-.........'



XRRRRRRBBBBBBBBBBBBBRRRXXYYIIItti++ii++=,.,,,,,,,:::;:;=;:==========;;
VRRRRRRRRRRBBBBBBBBBBBRRXVItIIttBBt::,,,,,,,,,,,,,,:,:::=+IIi++=======
XRRBRRRRRRRRBBBBBBBBBBBRRRIVRXYi:::,,,,,,::,,,:,,,,,,,iYVRBBB+++====,:
VRRRRRRRXRRRRRRRBBBBBBBXt:::,:,:::,::,:,,,::::::::::;:===tYV++;=+===;,
VRRBBRRRRRXXXRRRRBBRRI::::::::::::::::,,:,:,,,,:::::;:;,VMXI==;=;=++=:
VRRBBRRRRRXXXRRRRRRX;::::::::::,:::,:i;,:VMi:::::::;:,=iYRY+=:::::=++;
VRRBBBRRRRXXRXXRRRX:::::::::::,::::=iR;;BWMI=:::::;:,=VRXYt+;:;...,=+=
VRRBBBBBBRRRRRRXRX+:::::::::,:::,+iBWWIRWWXMI::ii===;XMMIiii;::,....;=
VRRRRRBBBBBRRRXXXX;::::::,::::::YRWXtiBWWWt,t=+++++ii++i=;:::;::,.....
VXRRRRBBBBV+::::=I:::::,,,,,,,,XWWIX+.IWWMt.=tIi++==+====;:;;::::.....
VRRRRRRBR=::::::::,,:::,:,,:,,:BWWMMYiXWWWBYViIIIti++=====;;;:::;,....
VRBBRRRRI:iXR+:,,::,::,,,,,t+;;BWWWWWWWWWRRBIRtIIIIi+======;;;:=+=....
XBBBRRRRVIRRRR;::,::,:,,,,,=VBVMWWWWWWWWWMXXMBtitIIIIi++======i=,,:,..
XRRRRRRRRRRRRV:::::,::,,,,,,,,IBWWWWWI+:=+YRXIttiititIIIIIt+==ii;,,,::
,:::::::+YXRR=:::,::,::,,,,,:,:XBMWWWWVi;,iVYVVIttii;+iiitIIi+i+=:,...
,:::::::::::=,:::::::::::,::::,tBBRXRBWWRVYYVVVYI;i:YMBMVi++++===;,,..
,::::::::::::,,,::::::::::::::::BWWWM;:;iYYttttiii+BXBMBBXtt++++==;,,,
,,::::::::::::::::::::::::::::,=BWWWB::::::::::,,:;VYtRXiiitti++===;,,
,,:::::::::::::::::,,=it+=;:,:=RMWWWI;:::::::,:,,,+YIt;;:;+++ii++++i+:
,,:::::::::::::::,,:XWWWWWWWWWWWWWWWR+:::::,,::,::,Itti:::;+++++=;;+i=
,,::::::::::::::::,YWWWWWWWWWWWWWMBBMWMI+;::::::::,+I;:::::++++++;::::
,:::::::::::::::::,BWWWWWWWWWWWWWWBVMWWWWWY=:::::::,t::::::+IIii+++:::
,::::::::::::::::,=BWWWWWWWWWWWWWWWWWWWWWWWW+::::,:;:::::::iIiii++++;:


                                                                   
                          /nnnnnnnnn,####nnnnn\
                       /nnnnnnnnnn,####nnnnnnmnnnn\
                     nnnnnnnn,######nnnnnnnnnnnn,nn\
                    nnnnnn,#####nnnnnnnnnnnnnn,nnnn|
                   nnnnnnnnnnnnnnnnnnnnnn/;;;\nnn/
                  nnnnnnnnnnnnnnnnnnnn/;;;;;;;nnnnn\
                 nnnnnnnnnnnnnnnnn/;;;;;;;;;;;nnnnnnn
                nnnnnnnnnnnnnn;(((;;;;;;;;)));nnnnnnn
              nnnnnnnnnnnn/;;;;/""\;;;;; /""\;\nnnn/
           nnnnnnnnnnn,nn/;;;;#    ;;;; #    ;;nnn/
     /nnnnnnnnnnnnnn,nnnnn;;;;#    /;;; #    /;nnn\
  /nnnnn##nnnnnnnn,nnnnn;\n;;;;;;;;;;;;; ;;;;;/nnnnnn\
 nnnnn###nnnnnnnn,nnnnnn;;;;;;;;;/\;;;;;;/\;;;nnnnnnnnnnnnn\
 nnnn###nnnnn,nnnnnnnnnnn\/\;;;/;@###@@###@;\;nnnnnnnn,nnnnnnn\
  nnn#nnn,nnnnnnnnnnnnn,nnnnn\;;;;;\@#@#@/;;/nnnnnnnnnn,nn#nnnnnnn\
  nnnnn,nnnnnnnnnnn,nnnnnnnnnn\;;;;;;;;;;;/nnnnnnnnnnnnn,nn##nnn,nnn
 nnnn,nnnnnnnnn,nnnnnnnnnnnnnn'\'''''''/nnnnnnnnnnnnnnn,nnnn##nnn,nnn
 nnnnn,nnnn,nnnn/;;;;;;;,,,/;;;;;;;;;;;|nnnnnnnnnnnnnnnnnnnnn#nnnn,nn
 \nnnnnnnn,nnn;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,\nnnnnnnnnn/ |n
  \nnnnnnnn,n;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\,,,,,,,,\nnnnnn/  n/
   nnnnnnnnnn;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;);;;;\,,,,\nnnn
    nnnnnnnnn;;;;;;;';;;;;;;;;;;;;;;;);;;;;;;;;;;;;);;;\,,,,\nnn
     nnnnnnnnn;;;;;;';;;/@@@@@@@@@@\;;);;;;/@@@@@@@@);;|,,,,,nnn
 /n\  nnnnnnnn;;;;;;;';@@@@@@@@@@@@@@\;);/@@@@@@@@@@@|;|,,,,,|nn\  /n
 nnnnnnnnn,nnn;;;;;;;'@@@@@@@@@@@@@@@@\;/@@@@@@@@@@@@|;|,,,,,|nnnunnn
 nnnnnnnnnnnnnn;;;;;;';;@@@@@@@@@@@@@/;;;\@@@@@@@@@@/ \|,,,,,|nnnnnnn
  \nnnnn,nnnnnn;;;;;;; ;;@@@@@@@@@@/;;;;;;;\@@@@@@@/    \,,,,|\nnnn/
    n,nnnnnnnnn;;;;;;;   ;;;;;;;;;;;;;;;;;;;;;;/         \,,,|
 n\ nnnnnnnnnnnn;;;;;;     \;;;;;;;;;;;;;;;;;;/           \,/
 nnnnnnnnnnnnnnn;;;;;;      *;;;;;;;;;;;;;;;;;***
 \nnnnnnnnnnnnnn;;;;;;    ***;;;;;;;;;;;;;;;;;*****
 nnnnnnn,nnnnnnn;;;;;;   ****;;;;;;;;;;;;;;;;;;*****
 nnnnnn,nnn#nnnn ;;;;;   ****;;;;;;;;;;;;;;;;;;;****
 nnnnn,nnn##nnn/ ;;;;;    ****;;;;;;;;;;;;;;;;;;****==\
 nnnn,nnn##nnn|   ;;;;     ****;;;;;;;;;;;;;;;;;***======\
 nnnn,nn#nnnn/    ;;;;       *****;;;;;;;;;.;;;**==========\
 \nn/\nnnnnn|     ;;;;       /=********;;;;;;;;*=============\
  \n| \nnnn/      ;;;;      /=====***********;*================\
   \n |nnn|      ;;;;;     |=====================================\
      |nnn\/n\ /;;;;;;\     \=========##=========---===============\
       \nnnnnn|^^^^^^^^^^    \==========###========----=============|
      ^^\nnn/^^^^^^^^^^^^^^    \==========####======-----===========/
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^    \========####====----==========/
  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^   |======###===----========/  ^^^
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /=======####====---=======/   ^^^^^^
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /=========###======-====/      ^^^^^^^^^
 ^^^^^^^^^^^^^^^^^^^^^^^^  /==========#===========/     ^^^^^^^^^^^^^
  ^^^^^^^^^^^^^^^^^^^^^ /==================/        ^^^^^^^^^^^^^^
   ^^^^^^^^^^^^^^^^^^  =============/        ^^^^^^^^^^^^^^^^^^^^^^^
 ^^^^^^^^^^^^^^^^^^^   \======/       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 ^^^^^^^^^^^^^^^^^^^^  (=====)  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 -- ^^^^^^^^^^^^^^ --  ((====))       ---- ^^^^^^^^^^^^^^^^^^^^^^^^-
   ----                 ,((==)),               ---  ^^^^^^^^^^^^^
       ---- --  --   ((,(,((.),),)    ---
                  (,((,(,(((.)),)),)      ---           ----        -
  -----        ((,((,((,((((.))),)),))
             ((,(((,((,((((.)))),))),))        ----            ----
     --    ((,(((,(((,((((.)))),))),))   --            -----        --
          ((,(((,((((,((( )))),))),))
           ((,((,((((((   ))),))),)       ------
  ----       (,((,((       ),)))                ---        ---      --
              ((((         )))
       ---      (     --    )                ---            ---
    --                              ---                -----
                       --                     --
          ---------           ------               --          ---