code:
''''''''''''',''''''''......'........'............''.........'...'....................................................................................
''''''''''''''''''''''..'.''''''''.'''''''''.'..''''.'''''.'.'''.'''''................................................................................
..............''...............''',,,****!!¦¦!!!!¦¦¦¦¦(¦¦(((((((((====(((((((¦¦¦¦¦¦¦¦!!!,'............................................................
.'''''',,',,,,,,,,'...'',,*!¦¦((====77777CJ33JJJJCJJJ3333$$%%$$$$%%%%%%%$$$$$33JJJJ33333JC7!'......................................''''...............
.''''',,,,,,,''',,**!¦((=====7777777CCCCCJ3333JJJCCCCJJJ33$$%$$333$$$$$$$$3333333C7=(!¦!!!¦!,,..''.........................',!((==7CCJCC7=(¦¦!*,''....
.',,,,,,''',,*¦¦(((=((((===777777CCCCCCCCCJJJJJJJC77CCCCCJ3$$$$33333$$$%%$$333J7¦,''.............''.....................'*=J3$$%%%%A5555AA%%$$33JC7=(¦
.***,,,*!!((==(((((((((((=====777777CC7CCCCJJCJJCC7777C777C3$$$$$$$$$$$%%%$37¦,,'......................................,=$%%%%%%%%%A55#55A%%%$$$3JJJJJ
.*,*¦(=====77=====((((((((=====7777C7C777CCCCC7777==777777CJ33$$%%%$$$$%%%3!,.........................................!J%AAAA%%%A5A5555#555AAA%%$33333
'(=======77777====((((((((====7777C777777777777======777CCCCJJ3$%%%%$$$$$$¦''....'.'.................................!3%AAAAA%A5A%%%AA5AA%%%%%%AA%%A55
'=((((==7CCCC7===(((((((=((==77CCCCC77777777777======77CCCCCCJJ333$$$3333=*,,'',','.'''...........''''..............,J%%%%%$%A%%%%%%AAA%%$$$%%%%%%A%AA
'=(((((=7CCC7===((((((==7=¦,*¦7CCCC7=(77777CCCC77===777CCCCCCCCCCCJ33333(!!¦¦¦¦¦¦!*,,,,'''...'''''''''''.'..........¦J3$$$33$%$$%%%%AA%%%$$$%%%%AAAAAA
'(((((((=777==((((((((=777C(,,*==(¦,'.,*(=77CCCC77==777CCC777777=77CJJJ=¦¦(CCCC77==(¦¦¦¦*,,,,,,,,*,*,,''''.........,=77CCJJJ$33$$$$%%%%%%%%%%%%AA%AA%5
'(===(((======((((((((=77777C===((¦,''',,!=7CCCCC7==777CCCC7777777CCJJC(=(C3JJJCCCC77==7(¦¦!!!!!!!¦¦
¦¦,''.........'!77==77C33J33$$$$%%%%%%%%%%AA%%%%A#
'===7====((((((((((((((===CCC(*,,!¦*,'',,,!77CCC7==(=7CJJCC777CCCJJJJJ7C773$3JJJJJCCC77C7==(((¦¦¦¦¦¦
¦¦!,''........,C3C7777C$333$$$$$$%%%%%%%AAA%%%%A##
'=7777777==((((((=((((((=$$J7CC¦¦!,,****,,,!=777==((=7CJJCCCCCJJJJ333333CJ3$3333JJJCCCCC7==(((((¦¦¦¦
¦¦!*,'.......'!$$$3JCJ$$$$$$$$$$$$%%%%%%5%$$%%A5@@
'=7777777==(((((===(((((CA7!,!77(¦*,!¦¦¦¦*,,!======(=7CCCJJCJJJJ33333$%$33$3333333JJCCCCC7==((((¦¦¦¦
¦!!!,,''......!%%$$$$$%%%%%$$$$$$$%%%$A5%$$%%%A@@@
'===77777===((((((((((7%$3=!**!!!!¦¦(((((¦*,,!77=====7CJJJJJJJJJJJ3JJAA%$%%$33333JJJCC77CC=(((¦¦¦¦!!
!!!!*,''......,$%$$%%%AAA%%%%%%%%%%%%A5%$33$$%5@@@
'77=7777777====((((((($3(!****!¦((((((((((¦*,,((¦(==77JJJJJJJJJJJJJC3#5AA5A$$3$33JJCCC7=7C7=((¦¦¦!!!
*!!!!*,'......'(J$$%%%%AAAAAA%%AA%A%55A%$333$%#@Ð@
'777777C7777777=((=((¦***,**!(((((((((((((((!**!¦¦¦!=CJJ33JJJJJJJJCC%##5#@#A%$$$$$JC777=7C77==(¦¦!!!
!!!!¦*,*¦......''*(C$3C3%AAAAA%%AAA55A%%%$$$$5@Ð#5
'7=7CJCCC7777777==(!***,*¦¦((((((((((((((((((!!!!¦(((7CJ333J33333JJCA##5@Ð5A$33%%%3J7=(((7C77=(¦¦!!*
,*!¦¦!,!(....'!*...'!!',!=3%AAAAAA55A%A%%%$$A#Ð#5A
'==7CCCC7====7==!*****!¦(((((=3@MJ((((((((((((¦!¦¦(==CJJ333JJJ333JJ35@@ÐW@5$3J777J33JC7((7777((¦!,,*
*!!¦(¦**,....'!*..*=,'*'...,¦73%55A%%%%AA%%%5@5%A3
'777CC77==7=(¦!***!!(((((((7$ÐW©®MJ(((((((=(((((¦¦(7¦J33333JJ3333335A#ЩM@5AA%$JC==CJJC77777=(¦*!!¦¦
((((((*,!'..'''...*7,!C*.'*,..,!=J$$%%%AA%%A#@A%%C
'C777==7C=¦!**!!¦((((((((CAWWÐW©®®©%((((========(¦¦7$$$$$33333$$$$%3J5W©W#A%33JJ777CCJJJC=((¦¦¦¦¦¦¦¦
(===((!¦!*'!((¦!*,,'..''.¦%J'.....'!7J$%%%%A##$%3(
'7777J7(¦!!!!¦(======(=J#WWÐM©®®®®®©A=((==========((J$$$$$3$$$$$$$AC3%MMÐ5A$3J3%(,!¦73%%J=¦¦¦!*!!**¦
¦((=(((¦!¦=CJJJJCCC7(!,'.,7!.........'*(C3$%$JJ37!
,CCC=¦!!!¦¦(=77=====7%@WÐWM®®®®®®®®®®5==(========7=(=J33333$$$333$%$33©W@5A%%%AA(!¦!(%55$(¦!*,*¦*,!¦
¦((((((¦¦7CCCJJJJ333$$3C(!'..............'*¦((CJ¦,
'=¦¦¦¦¦¦(=777777=7J5WWÐW©®®®®®®®®®®®®®@7=======77777==CJJJ3333JJ3%A%CCMWÐ#A%%A%3C7==3A5A3(!!*,,!¦¦¦(
(¦¦¦(((!!7CCJJ333$$$%%A%%%$C¦,'.............'¦(¦*'
'¦¦¦((=CCC777777$#WWÐM©®®®®®®®®®®®®®®®®ÐC===777777777773AAAAA%$%%A#57$MWÐ#5A%$$3J3$AAA5AJ=!!!!*!!!¦!
!!!¦¦((,*CCCCJJ3$%%%A%AAAA5AA$J=!'..........'*!!,.
'((=CCCC77777J%ÐWÐЩ®®®®®®®®®©®®®®®®®®®®WJ77777777777C7CЩ®©©©©©©©©#5$WÐ@###5A$$$$$$55A%3=!!!!!!!!!!
!!¦¦¦((,*J33333$%AAAAAAA55AAAAAAA$J(*'.....',*!*'.
'CCJCCCCC77J5WWÐW©®®®®®®®®®©ÐA$M®®®®®®®®®M3777777777CCCC3W®®®®®®®®®W@$Ð@#####5%%$3JJA55%37!****!!!!!
!¦¦¦¦¦(!¦#@@@@@5#####5A#@@##55555555%37¦,''!*!¦,.'
,JC7CCCCC$#MWÐM®®®®®®®®®®M@5@Ð7(Ю®®®®®®®®©A77777777CCCCJ3W®®®®®®®®M$3#@#####5A%37(35AA5J7¦¦¦¦*!!!!!
!¦¦¦¦¦¦!(©®®®®©W©MMMW#ÐM©©©MMMMMMWWWMMÐWÐ#3=¦¦*'.¦
'C7CCJJAÐWÐWM©®®®®®®®®®M##Щ®®M7¦@®®®®®®®®®©AC777777CCCCJJ$M®®®®®®®©53A@###5#5A$7(=%A33%C=¦*!!**!!!!
¦¦¦¦¦¦¦¦7©®®®®MM©MMW@ÐMMMMMMMMMMMMMMMMWMMÐAC(¦,.*7
'77C35WWÐW©®®®®®®®®®©Ð##W®®®®®®©3!#®®®®®®®®®®#C7777CCCCCCJ3$W®©©©©®©A¦=Ð#55555%J==%A%33J=(¦*,,**!¦¦¦
¦¦¦¦¦¦¦J#W©®®MWMMW@@ÐMMMMMMMMMMMMMWWÐÐMMM#$7(!''==
'7C#M©#W©®®®®®®®®®©Ð5@M®®®®®M@®®©$!A®®®®®®®®®®@C77CCCCCCJJJ3$@@###@%C7$@#5555A%C(J$3JC7=!¦(*,,,,*!¦¦
¦¦¦¦¦¦¦!J$$ЩWMMM@#WMM©©©©©©MM©©©MMMWWMMWAJ=¦,.¦7=
'7CA©®WЩ®®®®®®®®#AЩ®®®®®®©J$©®®©%!%®®®®®®®®®®ÐJCCCCCCCJJJJ3$$%5#$35@#5#5555A3(7JJ3JC7=(¦¦!!**,,,!¦
¦¦¦!!¦!*(((=%#@@#5#@@ÐÐÐÐÐÐÐÐÐÐÐÐWWWÐWWW#$7(*',7==
'7CCA©®MЩ®®®®®®®ÐAM®®®®@%#%7#WM©®©#!3©®®®®®®®®®W3CCCCCCJJJJJ3$#A%5A%@5$#555A%7(CJJCJ33%C7((((¦!*,!¦
¦¦!!!¦,',*¦¦(7%5A%%%AA5555555AAA555@Ð@@#%C(¦,'====
'CCCC%©®M@©®®®®®®®ÐAW®®®#55$7333@®®®#¦C©®®®®®®®®®W$CCCCJJJJJJ33$5A3JAW$C@#5AA$(C3(,$5#5#$%C7=(,,!!¦=
¦!****..'*!!¦¦=$%$$$%%%AAAAA%%%AA55Ð@@@A3=¦*'!7((C
'JCCCJ$W®©ÐM®®®®®®®WAW®®®®©33M©M©®®®®Ð(=M®®®®®®®®®©%CCCJJJJJJJ3$$JC$W@JCW#AA%3(3$C¦$A%JCCC7(¦!,**¦¦7
!*,'''....,!!¦¦(C333$$%%%%%%%%%%%A#@##5%7(!''7¦¦¦C
'JJCCJJ$W®©ÐW®®®®®®®MA@®®®M$@®®®®®®®©5(!Ю®®®®®®®®®©5CCJJJJJJJJ3$33@W%JCW#A%%$C%AAA%$3JC77=¦¦!*!!!!(
*,,'.......,!!!¦(C33$$$$$$3$$$$$$A##55A3(¦,.¦=!!!7
'JJCCJ3J3Ю®ÐЮ®®®®®®©5#©®®®®®®®®©Ð3(75©®®®®®®®®®®®®©%JJJJJJJJ333$$ÐA3J7@5A%%%$AAA55A$JC7==(¦((¦¦!!!
,**'........**!!¦(C$$$$$$$$$3333$5555A%=¦*',7¦*,¦(
'JJCJJJ333@®©WЩ®®®®®®©##©®®®®®©@J¦C@©®®®®®®®®®®®®©Ð%JJCCJJJJJJ333$$J3J=Ð#$%%AAA55AAA33JC7==(¦¦¦!!!!
77!'........,***!¦(CJJCJ333JJJJJ33$$$$3=¦,'((*,,¦,
'JJJJ333333#©®WЩ®®®®®®®@5©®®WA=($M®®®®®®®®®®®®®M#3CCCCCJJJJJJ33333A5$7=M@5JAAA555AA5%$JC7=¦¦¦¦¦¦!¦C
%=*.........,!!!!!¦(7(¦(=7777777CCCCJJCJJC77(¦!¦*.
'JJJ333333335©®M@©®®®®®®®@5@%(75W®®®®®®®®®®®®©WA3CCCCCJJJJJJJJJ33$5ÐAJ73M@@J7A%A5555AA$JC7(¦¦¦(¦!=3J
3$,.........'!!!!!!¦(((=CJ3333JCCC7==7CCCCC7(!,'..
'JJJ333$33333A©®M@M®®®®®®®Ð(C@®®®®®®®®®®®®®©@%JCCCCCCJJJJJJJJ33%5WM#JC=@WÐ3¦*¦3%AAA%%$3JC7((((¦(3$3$
3A*..........*!!!!!!!(=JA#@@#5%3JC=7=(===!,''.....
'CJJ3333333333%M®MÐM®®®®®®®M©®®®®®®®®®®®®M#$JCCCCCCJJJJJJJJ33%#W©©M%C7CÐÐ7!,,,,¦J$%$$3JCC===(¦CAA%37
=A!..........,!!!!!!!!((7AÐWÐA$3J3JJCC7=,.........
'=CJ33333333333$M®©ÐM®®®®®®®®®®®®®®®®®®W53CCCCCCCCCJJJJJJJ3%#W©®©©Ð3C753$**,''''CJJJCJC7==(¦7%@#%C==
7#¦'.........,!!!!!!!!¦((($W5$333%$$$JC*..........
'(=CJ33333333333$Ю©ÐW®®®®®®®®®®®®®®©ÐA3JCCCCCCCCCCJJJJJ3%#Щ®©MMM#JC7A$*!'''''¦333CCC33$33A##A37===
3#¦'.......'.'*!!!!!!!¦¦(((%$JJJ$3%A$$¦...........
'((=CJ33333333333$@®©ÐЮ®®®®®®®®®®©@%JJJCCCJJCJCCCCJJJ3%#@M©®MWWWW#37=@J**'...*JJ3JJJ$$$J%5@#%C====CA3*'.....'''.',*!!!!!¦¦¦¦¦¦=JCCCCJ%3%=............
,7=(=CCJ33333333333#©®WЩ®®®®®®©W53JJJJCJJJJJJJJCCJJ35@@@M®©WÐÐÐÐÐ#3¦,**'''..,J3C3$%$$33##@#$7((((353(,'....''''','*!!¦¦¦¦¦¦¦¦¦(===¦¦===¦.............
,$C=(=7CJ33333333333#®®W@©®®®®WA3JJJJCJJJJJJJJJCJCJ$#MÐ@M®MÐ@@ÐÐÐ5=*.....,,.'¦$$%%$33J%@#@#$7((((35A3¦,'.'''''',,,,,¦¦¦¦¦¦¦¦¦¦¦(((!,',*,'.............
*@A3=(=7CJ33333333333A©®M©®M@%JJJJJJJJJJJJJJJJJJJ3%5MÐ@©©W@##@#%=''''''',,*(3$AA$33J$@@#@53=(¦¦=A#5A
$=*,'''''''',,,,=¦¦¦¦¦¦(¦¦(¦((!...................
*ÐÐ#%7(=7CJJJ333333333A©®M#$33JJJJJJJJJJJJJJJJC73%5WW@M©W#55AJ=*,,**!¦!!*7C3AA%$3$JA@@#@53=(¦¦75#5A%
%3C7=(¦¦!*,'',,¦$(¦¦¦(((((¦¦((('..................
*ÐÐ@537==7CJJJ333333333%53333JJJ3333JJJJJJJJJ=*!$$WW@©©W#A%J=((¦((=(¦*,(CJA55A$$$C5Ð##@AJ=¦!¦3##A%$3
3JJCCCCJJJJJCC7JJ(¦¦((((((!!¦((¦'''...............
*##A%J7===7CJJ3333333333333JJJ33333J3JJJJJJ7(**¦J%WW©©W#A%C=(¦!**!!*,,=JA#WÐÐ@A37AÐ##@AJ=¦!7A#5%3C7=
=CJJJJ3$$$%%%%$J(¦¦(((((((!!¦((('''...............
,5A%$JC7===7CCJJ333333333JJ33333333333JJC77(!!(7J@©©©W@5%C7(¦!!!!*,'!7$@WMW##AÐAA@@#@AC=¦CA#5%JJJJCC
3A$=3%AA3$$$3J7((((((((((¦!!!¦((!'................
,$$CC77=7¦(((=77C==CCJCCCC77=C7J=CCCCJ(=*!¦**¦¦(7J#7A$%C(¦(!¦!!!,,,¦7%WWWW#%37@ÐA@##%J=75##%J=A%%%$%
%%%=J%%JC77C7((((((((((((¦¦!!¦(((¦*,,'............
',,'*,'','''',,'*',*',,,,,'*,,'*',,,,*',.'*..'',*'***'!''''',,,'.',,¦77C=7(¦!¦=C(=7=¦!*=7=(!*,=!=¦¦(¦¦¦¦!¦¦,*!*!************,,,,,,****,,,,............
......................................................................................................................................................
......................................................................................................................................................