Code:
UUWHHHHqHqqqkHWkkQQkkkkXyZyZZZZZZyZyyyZyyyyZyyZyWXyyWyyyVyyyyyWVyyyyWyyy
?++.....,+???777TYUUWWHHHqqqqqqqqHkkkQQkkWXyyVyyZyyyyyyWyyZZXyyyyWyXyyXZ
.........^.^``??????+;+.....+???777TYUU9WHHHqkqqqqqqkWkkkkkkkWWWVyWWZZyy
WWWWWHHHHHkkmmg+J..........^.^^^``!?????+++.....;???777TYUUUWHHHHkkqqqqq
?777OVV0UXUUUWWWWWWWWWWWHHHHHHHHkmgg+J..........^.^`+.`?VOlzz&+JJJ..?+??
``````..`..```????77COOVV0UUUUUUWWWWWWWWHHbbkkHHHHHH+..?,^````````!!????
``.`````.``````. `````...`^^`?????7COwVXXXXUUUUWWWU!..dWWHHHHHHHkmQa+J.
`..``..`````.`.`````````````````.```````.```!???77CO:..wwZwZZVVVXXUUUUUU
`.``.``..`..`.``````.``.``.``````````.`.`.`.`......`!. `````````````````
.`.``````.``.`....`...``.````.``.```.```.``.```.``.+`. ......`.````.```.
`..`.....``.`.``.``..`. .....`..`.``.`.```.`.``....+`` ..````.```.``.```
.``.```.`..`..``.`.`.``.`.``.`.`.... .........```..!.`..````.``.`.`.`..`
.`.`..`.````.`..`.``.. .``.``.`.``` jgM#MHHHHNg,.`.:`.........``.`.``.`.
`.``.`..`..``.``..`..`.`...`.`......HM9UVOTUTWMHh..:``...``.`..`.`.`.```
...```.```..`.```.`..``.`..``.```..HH0v1??;+++zWHb..`.`.``.````````.```.
..`..`..```..`.....`.`..`..`..... WMSwzzz?;?++1dMHe.`.....`...`...`.`.``
`.```.`.`..``.``.``.`.`...........HHWUUUSI+V9UwtWMP!` ..................
..``.``.`````.```.`.`.`..`.`.`....WWkUrwXZwXVUOOd@$`. ...........`..`...
`.```.````.`.`.`.```.````.```....`XywvzdkzyOz11Od9c`. ..........`...``.`
``..``..`.``.``.`.``.`..``.`.``...uXXzzOO1=z=+1tVtC.` ........`....`....
.``. ``.``..`..`....`.`...`..`..`.`UuvdSz++Xv1zwvv;..`+.......`.`.``.``.
.``.``.`.`.`..`.``.`.``.`.`.`....+=zXXwZOz=1==zI:+!...:::!+.......```.``
`.```.``..```.``.``..`.`.`.`.`. +==lXWkwz++1zzOI:?!..`::^^:::^^^^....`.`
``.``.`````.```.`.`.`.`.`.``.`..==lzXZXUXXwVCz=I:+:..::^:::::^^^^^^^^^..
.`.```.`.``..````..````.. ....^?=lldNZzrO+??+;=d2z;`.:::::^::^^:^:^^^^^^
.......``.``..`..` ....^^^^:^::?zgHM#MmOv+;;+jdHNo...::^:::^`^^^:^^^^^^^
:^^^^...........^^^^^^^^```.JJdB5!:dHMMHRiugMHHH#TWm.++:::::`^^:^:^^^^::
::```^...................`?^`... ..``````1.`7YYY....`?"1+.....^^^^^^^^^^
+.....`!!``!!!``````;.^Jx```....`.......``..`.`.``...`.``` `+???+++.....
++;;;?`..`....^^.^`.;`.MHm,..........+edMNma.... ``.```.``.+N?+++?;;?;?+
..^.^^..^`......^^..+.g#H##HH#H########MNMHH####H#HNma...d###b^^^^^^^```
.....^..^.:::`^.^.`??JH########HH#####M#####H##MMMMM##H#####H#b^:^^^^^^^
^..^.^....:::^.^^^.?!JH######################H#MgmkMH######H##N^^^^^^^^^
.^..^^.^...^.^..^^^^.?.?"MM####HMMMMMMMMMMMMMHHH#HHHH######MM""^:^^^^^^^
^..^..?:::::+.^^^^^^.!```.`?+...``````````````` `??"YHM#"?` `..^^^^^^^^^
..^..;++^^.++..^^^.J.z&...`?C`^...``````````````````...`.````...^^^^^:^^
.^..+z??+:^:^::.^^.ztzOz;;1d++^...`.```..``````````...Jz+^:;++!:^^^^^:^^
..``?!!!+++1++++..+lOXI+;+zW+!```..`..``.``.``````....Jz+:::;+:::^:::::^
.`. ... `++?!++`.JllwZz;;+dNgg&gggggggg+++J.......`...JI+:::+1;^^^^^^^^^
.. `++!?:;+.+::.zttwI???zKM#######H#H#######H####HHMNMKz+::+z!:^^^^^:^^
`^+.??+:++;++?++tO1OI+;?1dSM##NN######H#####H######H###OZ+;:+z!:^^``::^^
..+?``+!+1+l`!,trZzwz;??zXw#H#####H#H##H##H#H#H###H#H#M.01+::z````` `^^
` ` `` ```.zttrOwZ?;??1dSMMMMMMMMMMHHHHH#HHH##H#H#HH#.Izz+;+, ` ` `
` ` ` ` `ztrrOXv;;;?zXI`:^^........```` `??7""""Y9!.zl?;;+; ` ` ``
` ` ` ` `` ?!Ow0z;;??z0I.`^^........`````````````.`..=??;;+| ` ` ` `
` ` ` ` ` `` OdZz;;?zdZ+..`..`... ..````````````.. ..=?;;;1: ` `
` ```` ` ```` .OXIz?+zdSde+.........`.`````.````.....!.??;;;z:` ``` ```
...............`tXIz;zwSQN#N#MNgg&g+J........ ``.`...g|JZ?;;?z`
;;;;;;;;;;++;;+twSI?1OXvd##########################H#Hr`kz??1v` ` ` `. `
;;;;;;?;?????;zrdSv?zXXvd#N#####H######H##H###########\`XO??=\! `. . `
;;;???;??;z??+OrXI?1wzkv7TMM######H##H####H##H#######Mx+Xtz?z:.. ``
?;?;;?;;;?+;+;wwXI+zrwXZ+:...?""WHMMMMMMHH##MMMMMMY"""5?wI?zw+?;;;++:::.
?????????+???+rZZz;zvwzI!`````........`.```..``.`...`.z1!```1&?;;;;?;;;;
?;???????1???zrZO+?+OwzZ1.....`.`..````` ```.`.`````.+vj.....+;;?;?;;;;;
;;;;;;;+?1??1wwZOz=?1wZzt1????1++.J.................Jx1z?;1&JI??;?;?;+;;
^.^^^^`^^^``?rwZOz+AzjywOzz1====??1OOwz?+z????+;;+;1z8z1??1wI??;????;;??
.^^..^`^^^^.JrydI?OzwzWkZlzz==????1lwkI+++?;??;???+wkzjz??zwI?;;;;;;;;;;
^.^..^..`.^^..wXwz1OzydSOll=z=????=zwX6+zz+??;+;??zdCjfI=zzw:^^^^^^`````
lllll=lzzOlltOvXkXzWwW0Oll==l=??=z==OVvzzZIzz????=jkzdbIzZOZ!^^^^^^^^^^^
llttlltzOOtttwvXtwXAXbktlll==????=?=zOtlOI1??????zZXWHDzZzOi.....^^`^.^^
ltttttttwwrrtvwVrrrvXUtttl==?????==?jwOOIz???1=???lwWSwSwUrrrrttttttzllz
lttttlttwtrtrvwrrrrvzrttl==???;???=?1ll1==????????1OUUUXrvvrvrrrrrrttttt
ttttttttwtrrrvwrrrvvzrtlll=????;+1=?zwz1zllz????;???=zuXzzvvvvrrrrrrtttt
ttrtttttwttttrvrrrrrvttll=????????=1dROzz?1==??;??;?=zuzzvvvvrrrrrrtttrt
trrrttrrwrrttrzrvzvrrOl===???++11z=lK0tzl???=????????zuzzzzzvrrrrrrrrrtr
ttttrrtrVtrrrrwrrvrrvOl?1=+;??;;??=z#XOztl=z??;?;?;?=zwuzzuzzvrrrrrrrrrr
trrttttrZrrrrvkrvvvrrtl=?=???11=zzzdHZrtzzz==??????1zOwuzzuzzzvrvvvrrrrr
trtrrrrwwrrrrwwvrvrrtOz==?????=zllwXWZwtl=ll=???;???=zuuzuzzuvvrvvvOIzrr
rrrrrrtwrrrrrwzvvvvrtll1???????1zwX0uy0ttz==z=??????=zwuuuuuuvvrvvZzwvvv
rrrrtrrwrrrrrwzvzvvOO==1??????zztwXuZykrrOl===?++???=zuuuuuuuvvvzvwrvrrv
rrrtrrrXrrrvvuvvzvvI==?=????=zztOXuZyySvOtlzz????;?==zuuuuzuuzzzzzzvvrvz
lllllttrtttttrtttrwI?==??1z===1zzwXXXyWzzwtl==??????1zuuuuuuXuzuuuuzzzww
ltlttttwtttttwtttOrI==z?=zzlzzOOwrvzwXSXwwrO======?=1OOvrrrvrrrrrrrvzzzz
ttltlttZtlttrZttrtrOzzzz====zOuyrrvzXZWAwwvOllzl11===Ozrvrrvrrrtrrrrrrrv
lltlltOOtlttrwrttrwrrdHWVWWWWyWVrvzzXZyVfWkAsy&&&gyOzuzvvrrvrrrtrrrrtrrr
ttltttOtttttwrtttrwrrXqWyWWWXWSrrrvzZZyVVWpWWyVWWmkzuuvvvrrrrrrrrrttrrrr
tlttltwtttttwrtrOtvrXHbWyWWXWH0vrzzuyXVfVWHpbWyWWHKuzuzzwzvvrrrrrvrtrrwr
ttttttwttttrzrrrrrrrXHW00uXWXHkrvvzuyXVfVWHbpVWXpWHXXXuzzzwzrrvvrvrrrrrr
rOtrrrvOttrrzrrrrrzzHH0vXXWuXHXvzzzXZXVffWHppWXUXWHXuuuuuzzzzvvvzzvvvrvv
QQQQQkkQQXkXkXkXXXWWHHXvXWkzXHkXXXXXWWWWpWWWWWVwXWHXZXuuuuuzzvvzzuvvvzzv
gHHHHHHHMHMMMMMMMMMMHWZXXpWuXHH@MMNMMNNNNHHfVWwwwWHQkkkkkkWWWXyXXXXXXkXX
^^^^``^^^?!????+7774HWUkXyXXWYYYYBWHHMMMMHWWpXXXXWHHMMMMMMMMMHHHHHMMMMMM
.^^^^^^^^^^^::^::::jqWXuXWXWS+:::;:::;;;+XHppWZuWHz::::::::::::::^:::::+
.......::.::^:::::?zqWXuZZWKI::;;:;:;;:;+dWWpWWXWK;;;;::::::::::::::^:::
......`..:;+????777TWW0wXWW97777CzOOu&&&&vWpWXXWW9wvOOzz&&&+++++++++++..
qqqqHmmHmmmggggggggH:``!`.`dkQkmmmmggQQQQ2^`77771...........``!!!???????
ppfpppppppbbbkkkkqqH+....7jqmmmmHggHHHHHH#4!....dH@g@g@g@gg@@@@@gggggHHH
pppffpppppbbkkqqkkqqr.....dqmmmmmmmmmmmmqK`^..^.WqqmqqqmqqkkkkkkWWWbWbbb
UUUUUUUUWWWWWUWHHHHH$`....WWHHHHHHHHmHmgmH.....jmmmmmmmqqqqHkkbbkkkbbkkk
yyVVVVyyVfVyyyWWpppfr...^JbbbbbbkbppWWWWWR.....wkkkkWXXfWWWWWWWWHHHHHHHb
ZZXyZyyyyyyyVyyVyVVy:...^?ppbpbpppbpbpppp$^..^JpppppppppffpffpfpfpWWfVVy
uZuZZZZZyyyyVVVyVVyk+^...,fppWpppbbpppffS!`..`jfWWfVVVfyVVyWVyVyVyyfVyyy
uuuuXZZZZZyyyVffpWWHQp.^.jWfffpppppppppfr^^.^.jfVVyVVyyyyyyWyyyyZZyyZyyZ
uuuXZuuZZZZyyyVfbHVzOAdNxMHppfppVfWpbpWpR...JNmNpfffVyyyyyZZyZZZZZZZuZZu
uzuuuuuuZZZyyyfWMNnjkQMNNMbWfWVWyyVfWppWNgNZ6+jVNWpffVyyyyZZZZZuZuuuuZZZ
zzXuuuuuZZZZyWWMNgNmdNNMMXWWyZZXZZyWyfpWMNNNmGzddNbWfVyyyyZZZZZZuZZZZZuZ
vvvzzzuuuZZyWMNNNNMNNNMHWyZZZuwuXuZZZZyWWMNNNNMNdMNbpVyyyyWZZZZuZuZZZuuu
zvvvvzzuuZyfHMMMNMNMMMHHWyZuuuXzzzuuXZyWfbMNNNNMMMNNWVyyZZZZuuuuXuuuZuuZ
zzvvvzzzXuZWUMHMMMMHWWWUZuuzuuzzzzzzuuuyyWWMMMNNNNMMHWyyXZZuuuuuuuuZuuZZ
vzvvvzzvvvXXWA&wzz+&dUXXzzzvzuzzzzwzzzuuXXWwUUVUYBWHHyZZuuuXuzuuuuuuuuZX
vwrrvvzvvrzzzzXXU0XrrrvwvvXwzwzzzwzzzzzzuuzXWA&+ggQWUXuuuuuuzzzuuuzuuuuZ
vrvvvrvrrvvvvzzzzvvvzvzvvzzzXzzzzzzuzzzuzuuvzzuUUUXuzzzuzzzzzuzzuuuuzuuZ