::::::::::::,,,,::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,::,::::::::::::::;;;
:::::::,::,:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::::,::::::::::;;;;;;
::::::::::,,:,:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,,,,,,,:,:::,:,:::::::::::::;;;;;
::::::,,:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::,,,::::,,:,,:::::::::::;;;;;;
::::::,,,,:,,,,,,,,,,,,,,:::,,,,,,,,,,,,,,,,,,,,:,,,,:,,:,,:,,,::,,,:,:::::;:;;;;;;:
::::,,,,,,,,,,,,::,,,,,,,,:::,:,,,:,,,,,,,,,,,,:,,,:,,::::::,,,:,:,,:::::::::;;;;;;;
:::::::::,,:::,::,:::::,:::::,,,,,:,,::,,,,,,,,:,:,:,,,:,,,,,,,,,,,,,:::::::::::::::
::::::::::::::::::::::,,::::::,:::,::,,:,,,,,,,,:,,,:,,:,,,:,,,:,,,:::,:::::::::::::
::::::::::;;;;:;::::::,::::::::::::,:,:::::,,,,:,,,,,,,,,:,:,,,,:,,,::::::::::,:::::
::::::::;;;;;;:::::::::::::::::::::::::::::,,,,,,,:,,:,,,:,,,,,,,,,,::::::::::,,::::
;;:::::;;;;;;;:::::::::::::::;;::::::::::::,,::::,:,::,,::,,,,,,,,,,:::::::::,,:,:::
:;;;;;;iii;;;:::::::::::::::::::::::::::::::,,,,,,::,:,,::,:,,,::,,,,,::::::,,,:::::
;;;;;;iiii;;;;;::::::::::::::;:::::::::::::,,,,::::,,,,,,,,,,,,,:,,,,,,:,:::,,,:::::
;ii;;iiiiii;;;;;;;;;;;;;;;;:;:::::::::::::::,,,,,::,:,,,,,,,:,,,,,,,,,,:,:,,:,,,::::
;iiiiiii*iiiiiiii;;;;;;;;;;:;::::::::::::::,,:,,,:,,,:,,:,::,,,,,,,,:,,::::,,,,:::::
ii**i****iiiiiiiii;;;;;;;;;;;:::::::::,,:::,,::::,,:,:,,,,,,,,,,:,,,:,,,,:,,,,,:::::
********iiiiiiiiii;;;;:;;;;:::::::::::::,:::::::,:::::,,,,,,,:,,,,,:,,,,,:,,,,::::::
****i*iiiii;iiiiii;;;;;;;:;::::::::::::::::::::::,::,:,:,,:,:,,,,:,:,,,,,,,,,,::::::
iiiiiiii;;iiiii;;;;;;;;;:;;;;:::::::::::::::::::::::::::::,,::,:,:,,,,,,,,,,,,::::::
iiiiiiii;;;ii;;;;;;;;;;;;;;;;;;::::::;::::::::::::::::,,::::::::,,,,,,,,,,,,,,,:::::
iiiiiiiiiiiiiiiiiiiii;;;;;;;;;;;:::::;:::::::::::::::::::::::,,::,,,,,,,,,,,::::::::
********i*iiiiiiiiiiii;;;;;;;;;;;:::;;;;;;::::::::::::::::::::::::,::,,,,,,:::::::::
*++*+**+********i*iiii;;;;;;;;;;;:;:;;;;;;::::;:::::::::::::::::::,:::,,,,,,::::::::
+++++++++++++*****iiiii;;;;;::;:;;;;;;;;;;;;;:;::;::::::::::::::::::::,,,,,:,:::::::
+++++++++++++****iiiiii;;;;:::::;;;;;;;;;;;;;;;;;;;;:::::::::::::::::::,,:,:::::::::
+++++++++++*+**iiiiii;;;;;;:::;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::;::::::::::,:::::::::;
+++++++*+*****iiiii;;;;;;;;;;:;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::;:;;
++++++****iiiiiiiii;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::;;;:::
***+****iiiii;;;;;i;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::;:;;;;;;
******ii;i;;;;;;;;;;;;;;;;;;;;;;;i;i;;i;;;;;;i;;iii;;i;;;iii;;i;;;;;;;;;;;::;;;;;;;;
**iiiiii;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iii;;;iiiiiiiiiiiiiiiiiiiiiii;;;;;;;;;;;;;;;
*iiiii;;;;;;;;;;;;;;;;;;;;;;;;;;i;;ii;iiiiiii;iiiiii;;iiiiiiiiiiiiiii;ii;;;;;;;;;;;;
*iii;ii;;;;;;;;;;;;;;;;;;;;;;;;;;;;ii;iii;ii;iiiiiiiiiiiiiiiiiiiiiiiiiiiiii;;;;;;;;;
ii;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ii;iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii;;;;ii
i;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;i;;iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii;;i;i
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ii;;;iiiiiii;i;iii;iiiiii*iiiiiiiiiii
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;i;iiiiiii;;;;;;;iiiiii*iiiiiiiiii
;;;;;;;;;;;;;;;;;;;;;;;i;;;;;;;;;;;;;;;;;;;;;;;;;;ii;iiiiii;;;ii;;iiiiiiiiii*iiiiiii
;;;;;;;;;;;;;;;i;;;;i;;ii;;;;;;;;;;;;;;;;i;;;;;;;;i;iiiiiiii;;i;;iiiiiiiiiiiiiiiiiii
;;;;;;;;;;;;;;;;;i;;;;;ii;;;;;;;;i;i;iii;;ii;;;ii;;iiiiiiiiiii;iii;iiiiiiiiiiiiiii*i
;;;;;;;;;;;;iii;ii;i;i;;;;;;;;;;;i;iiiiiiii;;iiii;iiiiiiiiiiiiiiiiiiiiiiiiiiiii*i***
;;;;;;;;;;;;;iii;ii;i;;;i;iiii;;iiiiiiiii;i;iiiiiiiiii;iiiiiiiiiiiiiiiiiiiiiiiii****
;;;;;;;;;;;;iiii;;i;i;;iiiiii;;iiiiiiiiiiiiiiiiiiiiiiiiii;iiiiiiiiiiiiiiiiiiiiii****
;;;;;;;;;;;;i;iii;;;;i;iiiiiiiiiiiiiiiiii;iiiiiiiiiiiiiiiiiiiii*iiiiiiiiiiiiiii*****
;;;;;;;;;;;;;;iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii****
;;;;;;;;;;;;;;i;ii;ii;;iiiiiiiii*iii*iiiiiiiiii***iiiiiiiiiiiiii*iiiiiiiiiiiiiii****
;;;;;;;;;;;;;i;;;;;;;;i;iiiiiii*ii*i**iiiiiiiii****iiii*iiiiiiiiii*i***iiiiiiiii****
;;;;;;;;;;;;;;;;;;;;;;iiiiiiiiiii*********ii********iii*iiiiiiiiii*****iiiiiiiii****
;;;;;;;;;;;;;;;;;;;;;iiiiiiiiiiii******************iiiiiiiiiiiiiiii****i*i***iii****
;;;;;;;;;;;;;;;;;;;;;iiiiiiiiiii*****************iiiiiiiiiiiiiiiiii******ii**iiii***
;;;;;;;;;::;;;;;;;;;;;;iiiiii**********++***********iiiii;;i;iiiiiii***ii*i***i*****
;;;::;;::::;;;;;;;;;;;;iiiii*******++++++*+*********iiii;;:;;;iiiiiiiiiii*i****ii***
;;;;::;:::;;;;;;;;;iiiiiii*****++*+++++++++++********iii;;:::;;iiiiiiiiii*i*********
;::::;:::;;;;;;;;;;iiiiii****++++*++++++++++++******iiii;;:::;;;ii;ii;iiiii*********
;;;;;;;:;;;;;;;;iiiiiiiii********++++++++++++++*****iii;;;:::;;;;;;;;;;iiiii****i***
;;;;;;;;;;;;;;;iiiiiiiiiiii*******++++++++++*****iiiii;;;;;;;:;;;;;;;;;;;iii********
;;;;;;;;;;;;;iiiiiiiiiiiiii*******+++++++*+++****iiii;;;;;;::::;;::::::;;ii*i*******
;;;;;;;;;;iiiiiiiiiiiiiiiii*********++++********iiii;;;;;;;:::::;::::::;;;ii********
;;;i;;;;iiiiiiiiiiiiiiiiiiii********++++*******iiiiii;;;;;;;;;;:;:;:::::;;ii********
;iiiiiiiiiiiiiiiiiiiiiiii*********************iiiiiii;i;;;ii;;;;;:::::::;;ii********
;iiiiiiiiiiiiiiiiiiiiiii*******++*+******i*i***iiiiiiiiiii*iiiiii;;;::::;;iii*******
;iiiiii**iiiiii;iiiiiiii****************iiii***i********i*iiii**i;;::::::;ii********
iiii****iiiiiiiiiiiiii**************iiiiiiiiii***********iiiii**ii;;:::::;iii*******
iii*****iii;i;iiiiiii*********i**iiiiiiiiiiii**********i**iiii***i;::,,::;ii********
ii*****iiiiiiiiiiiiii****iiiiiiiii*iiiiiiiiii*******ii***iiii***i;:,,,,,:;iii*******
*******iiiiiiiii**i***iiiiiiiiiii***i*iiiiiiiiiiiiiiiii**i;;;***i;:,,,,,::;i*******i
******iiiiiiiiiii**iiiiii;;iiii****iiii;;;;;;;;;;;;;;ii**i;;;i**;;:,,,,,:;ii*******i
*****iiiiiiiiiii***ii;;;;;;ii*****ii;;;::::::::;;;;;;;i**i;i;i*i;;:,,,,,,;ii*****i*i
+****iiiiiii******ii;;;;;ii*+++++i;;:::,,,,:,::::::;;;i***ii;iii;::,,,,,:;ii****iiii
+****iiiiii*****iiii;;;i**++####+*;;::,,,,,,,,::::::;;i**+**iii;;:::,,,,:;ii****iiii
+****iiii*****iiiiiiii**++#zzz###+i;::,,,.,,,,,:::::;;i*++***ii;::,,:,,,:;iii**iiiii
+************iiiiiiii**##zzzzzzz##*i;:,,,,.,,,::,::;;ii****ii;;;::::,,::;;ii***iiiii
+***********iii;iii**+##zzzzzzzzzz#+*;::,,,,,,,,,,:;;i****ii;;;::::::,::;;iii**iiiii
*+*****+++**iiiii*+++#zzzzzz##zzzzz#+i;::,,,,,,,,,:;ii****ii;;;:::::::::;;iiiiiiiiii
*+***+++++**iiii*+#zzzzzzzz####zz#zz#+i;:,,,,,,,,,:;;i***ii;;;::::::::::;iiii*iiiiii
+++*++++++*iiii*+#zznzzzzzz########zz#*;:,,.,,,,,,:;ii*iiii;;;;:::::::::;;iiiiiiiiii
+++++++++**ii**+zznnzzzzzzz#######zzzz+i;:,,....,,:;;iiiii;;;;;;::::::::;iiiiiiiiiii
+++++++++*****+#nnnnzzzzzzzzzzzz##zzzz#*;:,,,..,,:;;iiii;i;;;;;;;:::::::;iiiiiiiiiii
+++++++******+#znnnnzzzzzznnzzzz####z##+i:,,,,.,,:;;iii;;;;;;;;;;:;:::::;iiiiiiiiiii
++++++*****++#znxxnzzzzznnz++#zzzz#####+i;:,.,,,:;;;i;;;;;;;;;;;;;::::::;iiiiiiiiiii
++++++**i**+#znnxxnnzzznnni,,:#zzzz####+*;:,,,,,:;;;;;;;;;;;;;;;::;:::::;;iiiiiiiiii
++++++****+#znnxxxnzzzznxn.,.`*zzz######*;:,,,,:;;;;;;;;;;;;;;;;;:;::::::;iiiiiiiiii
+++++****+#zznnxxxnnzznnxn,```+zzz######+i:,,,::;;;;;;;;;;;;;;;;;::::::::;iiiiiiiii*
###++*+*+#zzznnxxnnnznnxxx+,.;#zzzz###z#+i::,::;;;;;;;;;;;;;;;;:::::::::;;iiiiiiiiii
##+++*++#zzzzznxnnnnnnnxxMxz#znnz##z#zz#*i::::;;;;;;;;;;;;;;;;;;:::::::,:;;iiiiiiiii
##+++++#zzz##zznnnnnnnnnxxxxxnnzz####zz#+;;::;;;;;;;;;;;;;;;;;;;:::::::::;;iii;;iiii
###+++#zzz#++#znnnnnznznnxxxxnnzz####zz#*;;;;;;;;;;;;;;i;;;;;;;;:::::::::;;ii;;;iiii
##++++#zzz+**+#nnnnnzzzznnnnnnzzzz##zzz#*i;;;;;;::;;;;;;;;;;;::;:::::::::;;ii;;;;iii
##+++#zzn#+ii*#znnnnzzzzznnnzzzzzzzzzz#+*i;;;;;;::;;;;;;;;;::::::::::::::;;;i;;;;;ii
##+++#znz#*i;i+znxxnnzzzznzzzzzzzzzzz#*iii;;;;::::;;;;;;;;::::;::::::::::;;;;;;;;;ii
#+###zznz#*i;i*#nxxnnzzzzzzzz#zzzzzzz+*i;;;;;;::;;;;;;;;;;:::::;:::::::::;;;;;;;;;ii
#####znnz+*;;;i+znxnnnnzzzzzz#zznznz#+i;;;;;;;::;;;;;;;;;;::::::::::::::;;;;;;;;;;;i
####zznnz+ii;;i*+znnnnnzzzzzzzzznnnz#+i;;;:::::;;;;;;;;;;:::::::::::::::;;;;;;;;;;ii
###zznnz#*i;;;;i*#znnxnnznnzzznnnnzz#+*i;:;::;;;;;;;;;;;;:::::::::::::::;;;;;;;;;;ii
###zznnz#*ii;;;ii*+zznnnnnnnnnnnzz##+*ii;;;::;;;;;;;;;;;;:::::::::::::::;;;;;;;;;;;i
###znnnz#*ii;iiiii*+##zzznnnnnnz##++*iii;;:;;;;;;;;;;;;;::::::::::::::::;;;;;;;;;;;i
##znnnnz#*ii;ii;iii**++#########+++*iii;;;:;;;;;;;;;;;;::::::::::::::::;;;;;;;;;;;;i
##znnnnzz+*iiiiiiiiiiii***++++++****iii;;;;;;;;;;;;;;;;:::::::::::::,::;;;;;;;;;;;;;
##znnnnnz#+*iiiiiiii;;;iiiiii*******ii;;;;;;;;;;;;;;;;;::::::::::,,,,::;;;;;;;;;;;;;
#zznxxnnz#+***iiiii;;;;;;;;ii*****iii;;;ii;;;;;;;;;;;;:::::::::,,,,,:,:;;;;;;;;;;;;;
#zznxxxnnz##**iiiii;;;;;;;iiii*i**iiiiiiii;i;;;;;;;;;;:::::::::,,,,,,::;;;;;;;;;;;;;
zznnxxnnnzz#+**ii;i;;;;;iiii***iiiiiiiiiiiiii;;;;;;;;;::::::::::,,,::::;;;;;;;;:;;;;
zznnxxnnzzzz#+**iii;;;;iii*****iiiiiiiiiiiiiiii;;;;;;:::::::::::,,:::::;;;;;;::;;;;;
zznnxxnzzzzzz#++*iiiiiiii****iiiiiiiiiiiiiiii;;i;;;;;:::::::,,::,,,:::;;;;;;::::;;;;
zznxxnnzz#zzzz#++**iii*i****iiiiiiiiiiiiiiii;i;i;;;;;::::::,:,::,,,:::;;;;;;;::::;;;
zznxxnzz#zzzzzz##+**********iiiiiiiiiiiiiiiiiii;;;;;;::::::::::::,:::::;;;;:;:::;;;;
znnxxnz####zzzz##++**********iiiiiiiiiiiiiiiii;;;;;;;::::::::::::,:::::;;;;::::;;;;;
znnxxn##########+++***iii*****ii*iiiiiiiiiiii;;;;;;;:::::::::::::::::;;;;;;::::;;;;:
nnnxxnz######+++++***************iiiiiiiiiiii;;;;;;::::::;:::::::::::;;;;;;::::;;::;
nnnxxnzz###+++++++****************iiiiiiiiiii;;;;;;:::::::;::::::::;;;;;;;;:::::::;;
nnnxxxnz###++++*+*++************i*iiiiiiiiiii;;;;;;;;;;;;;;;;:::::::;;;;;;;::::::::;
nnnxxnnz###+++++++++++++********iiiii*iiiiiii;;;;;;;;;;;;;;;:;:::::;;;;;;;;;;::;:::;
znnxxnnz#######+++++++++********ii*ii*iiiiii;;;;;;;;;;;;;;;::::::;:;;;;;;;;;;::::::;
nnnxxnnzzzz######+++++++***********iiiiii;;;;;;;;;;;;;;;;;;::::::::;;;;;;;;;;;;::::;
znnnnnnzzzzzzz#####++++++*********iiiiiii;;;ii;;;;;;;;;;;;;::;:::;:;;;i;;;;;;;;:::;;
nnnnnnzzzzzzzz######+++++**********iiiiii;;;i;;;;;;;;;;;;;;::;;;;;;;;;;;;:;;;;;:::;;
nnnnzzzzzzzzzz######++++++*********i*iiiii;;i;;;;;;;;;;;;;:;:;;:;;:;;;;;;::;;;;:;:;;
nznzzzzzz#z########+++++++**********iiii;iiii;;;;;;;;;;;;;;;::::;;::;;;;;:::;:;::;;;
nzzzzzzzz##########+++++++**********iiiiii;ii;;ii;;;;;;;;;;;::::;;:;:;;;;::::;;:#;;;
zzzzz##############+++++++********iiiiiii;i;;;;;iii;;;;;;;;;;;::;;;;:;;;;::;:;;:;:;;
zzzzz#############+++++++*********iiiiiii;i;;;;;i;;;;;;;;;;;;;::;;;::;;:;:::;;;;;;;;
zzzzz#############++++++++*******iiiiiiiiii;;;;;;;;;;;;;;;;;;;;;;;;:;:;;;;;:;;;;;;;;
zz#zzz##########+#++++++*++*****iiiiiiiiiii;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
zzzzz##########++++++++++******iiiiiiiiiiii;i;i;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
z####z##########+++++++++*******iiiiiiiiiiiiiii;;;;;;;;;;;;;;;;:::;;;;;;;;;;;;;;;;;;
################++++++++******i*iiiiiiiii;;iiii;;;;;;;;;;;;;;;;:;;;;;;;;;;;;;;;;;;;;
###############++++++++********i*iiiiiii;iiiii;;;;;;;;;;;;;:;;;;;;;;;;;;;;;;;;;;;;;;
####+###########++++++********iiiiiiiiiiiiiiiii;;;;;;;i;;;;;;;;;;;;;;;;;:;;;;;;;;;;;
z###++###########+++++*********iiiiiiiiiiiiiiii;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
#z###+++########++++**********iiiiiiiiiiiiiiiiiiii;i;;;;;;;;;;;;;;;;;;:;;;;;;;;;;;;;
#z###++++####+++++++*********iii*iiiiiiiiiiiiii;iii;;;;;;;;;;;;;;;;;;;::;;;;;:;;;;;;
#zz##+++++++++++++++*******iii*iiiiiiiiiiiiiiiiiiiiii;;;;;;;;;;;;;;;;;;:;;;;;;:;;;;;
###z#++++++++++++**+*****iiii*iiiiiiiiiiiiiiiiiiiiiii;;;;;;;;;;;;;;;;;;;:;;;:;:;;;;;
##z##++++++++++++**++****iiiiiiiiiiiiiiiiiiiiiiiiiiii;;;;;;;;;;;;;;;;;;;;;;;;;;;;:;:
###z##++++++++++*********iiiiiiiiiiiiiiiiiiiiiiii;ii;;;;;;;;;;;;;;;;;;;;;;;;;;:;::::
###z##++++++++++*********iiiiiiiiiiiiiiiiiiiiiii;;;;;;;;;;;;i;;;;;;;;;;;;;;;;:::::::
###z###+++++++++*********iiiiiiiiiiiiiiiiiiiii;;;;;;;;;;;;;;;;;;;;;;;;;;::;;;;;;::::
#######+++++*+++++*******iiiiiiiiiiiiiiiiiii;i;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::
########+++*++++*********iiiiiiiiiiiiiiiiiiiii;i;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:;::;:
########+++**++++++*******iiiiiiiiiiiiiiiiiiiiii;;ii;;;;;;;;;;;;;;;;;;;;;;;;;:;;;;;;
z#######++++*+++++++******iiiiiiiiiiiiiiiiiiiii;;;;;;;;;;;;;;;;;;;;;;;;;:;;;;;;;;;;:
########+++**++++++++******iiii*iiiiiiiiiiiii;;;;iii;i;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
#########++**++++**+*******iiii**i*iiiiiiiiiii;;iiiiii;;;;;;;;;;;;;;;;;;;;;;;;:::;;;
zzz######++++++++*+********iii*****iiiiiiiiii;;;iiiii;;;;;;;;;;;;;;;;;;;;;;;;;;:;;;;
zzz#######++++*+***********iiii****iiiiiiiii;;;;;;;i;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;
zzz#######++++++++*********iiiiiiiiiiiiiii;;;;;i;;ii;;;;;;;;;;;;;;;;;;;;;;;;;;::;;;;
zzz#######+++++++++**********iiiiii*iiiiiiiii;;ii;iii;;;;;;;;;;;;;i;;;;;;;;;;;:;:;;;
zzz#######+++++++++**********iiiiii*iiiiiiiiiiiiiiiii;;;;;;;;;;;;;;;;;;;;;;;;;;:;;;i
zzzz##z###++#++++++**********iiiiiiiiiiiiii;iiiiiiiiii;;;;;;;;;;;;;;;i;;;;;;;;;:;;;;
zzz##########++++++*********iiii*iiiiiiiii;iiiiiiiiiiii;;;;;;ii;;;;;;;;;;;;;;;;;;;;;