%%%&&&&&&&&&&%&&&&&%%%&&%%%%%%%%%%%=*!!%%%%%%%%================%%%%%%%%%%%%%%%%%
===%&&&&&&&&&%&&&%%%%%%%%%%%%%%=%%?+!,*%%&&&&&&&&%%%%==========%%%%%%%%%%%%%%%%%
???=%&&&&&&&&%%%%%%%%%%%%%%====%&%??-'?%%&&&&&&&%&&&&%==========%%%%%%%%%%%%%%%%
+???=%%&&&%=%?!!=%%==%=%======%$$%+;,,=%%%%%%%%%&&&&&&%=======*=%%%%%%%%%%%%%%%%
+???+?%%=*!;:--::+===?========&$&=?!~-===%%%%&&&&&&&&&&%=??===!=%%%%%%%%%%%%%%%%
???????+!;:-~~~~-;==??====%%=&$$&=?!,!&&%%%%&&&&$&&&&&$&%=?===!==%%%%%=%%%%%===%
?++???+!::--~~,~-;????=======%$$%???;%%%%&&&&%%%&&&&$$$$$&=?==;?====%%%%%=======
++?*;:-~~~~~~,,~~:**!;*=======$&%&&&&%=====%&&&&&&$$$$$$$$&=??:?=======%========
+++:-~~,,,,,,,~~~-;!;:-!??????$$$$&&&?*+??===%%&$$$$$$$$$$$&=?:+???===========??
?+*:~,,,....,,,---!+**::!*+??+&$$$#$&+;:::;*?==%%&$$$$$$$$$$$=-*+??????=====????
=+:-,,.......,,~;*?*!!:-;:!*++%$$$$&=&&%?*;::;!=%%&&$$$$$###$$=???++++++?????+++
=+;~,,.......,,~:!*!!;!!!!!*?=&&%%??%&&$$$&&+;*&&%%%&$#$$$$$$$$$%++*****+*****++
?*:~,,......,,,~-::!!!!!!*=$$###$$$$$$&&&&$$$&&$$$&%&&$#$$$$####$****!!!!!!!**++
++;~~,,...,,,,~----;:;;!!=$$###$&&&&$$$$$$$$###$$$$&&&&$########$+**!!;;;;!!!!**
+*!:~~,,,,,,...,----:;!!!%$####&%%%&$&%%&&&&$#$#$#$&%*?&$########=!!;;::::;;!!!!
++!;:~,,,~~~,...,--::;;!*?$$##&&=?=%%%%?+=%=%&&%%%&$&==&$########&!;;;;;;:::;;;;
++**;:~~~-:~,...,,,~-:;!*!+&$$&&?!+?%%==%?+++=&%%=%&$$$$$########$+;;;;;;;::::::
***!!;::;;;--~,,.'.,-;;!!!!*?&&=;;!+%=&&%?;;!*=&%%%&$$##$#########%;::;;::::::--
****!!!!*!!;!!;-,..,.,:!!!!!*??-:::;+???;~~-:;?&&&&&$$$###########&::::---------
!!!!!!***!!**:!*!;;;-,.-;;;;;-,~-~~~--~,..,-:;+%&&&&$$$###########+-~~~~~~~~~---
!!!!!!!!!!!+?*!+**!!!;~,----:;;---,,,,...,-:!*?%&&&&$$$$#########&::,,,,,,~~~~~~
;;;;;;!!!!!!+=&&%=?+*!;-,~---!?+;-,..,,~-:;**+?%%%&&&$$$#######%+:-:,,,,,,,,,,~,
:::::;;;;:;;!!*=%%&%=?+*;:!-:;;~~~..,~-;!***++==+==%&$$##$$$$%;-;~-;-....,,~-:;!
::::::;;;::!=%%%=++=%%%%?*-!**!-,,.,~:;!***!*+==++++%$$#$&&$$&+:;--;-....,*%%%&&
----:;*!:--!%%%%======+?*:+%%===!~,~-:;!!;;;!*?%*;*?&$$#$&%%&$$!!--;~...,,+%%%%%
~~~~!?===;~;%%%%===%%?;-:+=%&%??+!~~--::::::!*=&%%&$$$##$&%%%$$=!---~...,,*%%%%%
~~~-+?===*~;??===%%%?;:!?*!?=?*!!:~~~~~~~--;!?%%=&$$$###$$&%%&$$*::-:,...,*%%%%%
~~~-======:;+???===+-;+?;;!*+%%=!--~~~~~~-;!+=%??%$$$###$$$&%&$&*:;::,....*%%%%%
~~,-?=====:+++??==*-,~+*;!;;+?!-,~~~~~~-:!*?=%=++%&$&####$$&&&$%*::::,...,+%%%%%
--~-;?===?!++?=?+:,~;~,-;*;+++!--~--::;*+=%&&%?*+=&$&$$##$$$$$&+*;;::,.,-:?==%%%
-----?=====%%%=!-;:~~;:~!+!?*+=?+++?=%%&&&&&&=+*+=&&&$$$$#$$$&+;+!!;:,.,::===%%%
;;---?===%%%%=::+%==*::::*+?+!+????=?=&&&&&%=?**+?%&&&&&&&&&=*;;?*!;:,',::===%%%
==?*;?===%%%%?--*=%==?++:;??*!!!;!*+++&&&%==?+**++=&&&**?++*;;;;?+!;:,,;!;?%=%%%
====?!*=%%%%%=;-!?=++++?+*?==!!!!;!*++&&%=??+****+?=&$:,*!!;:;;;?+*;:,~!!;?%%%%%
%=%%?**?%%%%%%!~~;+!!!!**+?==**!!!!*+?&&%=?+**!***+%&$+,****;;;;?+*!:~-*!:?%%%%%
%===+++?%%%%%%!~~-;;:::;!?===***!!!*+&&%=?+**!!!+=&&&$%~*+++;!!!=+*!;--**;?%=%%%
%%======%%%%%%*-~~-----:!?%%=*!***!*?$&%=?+*!!+=&&&&&$$***!*;!!!?+*!;-:+*;?%%%%%
%%+??+++==%=%%?;-~~~~~-;*=%%%?++?+++%$$%=?+*+%&&&&&&&$$&?!!*!!*!+++!;;*?+!?%%%%%
%%??????==%%%%=*:-~---;*=$$$$$$$$&&$$$$%??=%&&&&&&&&&&$$&=++***!?++*;+?=?!?%%%%%
%%????++==%%%%=*;::;!*?%$$########$$$$&&=%&&&&&&&&&&&&&&&%=?*!**?++*!*!*?!?%&%%%
%%??????%%%%=%=!!*????%$$$$$$$$$$$$$$$$&&%%%%%&&&%&&&&&&&?+%&=+***??=+!*!*=%&%%%
%%=????+%%%%%%!;!+?+?=$$$$$$$$$$$$$$$$&&&&%%%%%&%%&&&%&&$$&&&&%?*+?=%?*+*?%%%%%%
%%=?+???%%%%%?:::;*+?&$$$$$$$$$$$$$$#$&&$$&%%%%%%&&%%%%&&$$$#$$$&%==%=???=%%&&&&
%%??????=%%%%+---;*+%$$$$$$$$$$$$&$##$&$##$%%%%%%%%%%%%%&&&&&&&$$&&%%=?===%&&&&&
%%??????%%%%%+-~-;*?&$$$$$$$$$&&&$#$&$&##$$&%%%&%%%%%%%&&%%%%%%%&$$&&%=??=%&&&&&
&%????==%%%%%!-~-;+=$$$$$$$$$&&&&$&&$&&$$&&&%&&%%%%%%%&&%%%%%%%%%%&&&&&???=%%%%%
&%=====?%%%%%;-~-;+%$$$$$$$$&&&&&&&&&&&$%%%&&&%%%==%%%&%%%%%%%%%%%&&&&$&%%+!*===
&%======%&&&=:--:!?&$$$$$&&&&&&&&&&&&&&$%%%%%%%%+-~+!%%%%%%&%%%%%&$$$$$$;::;!==?
=%=?????%%&&*:--:*?$$$$$&&&&&&&&&&&&&&$&%%%%%%%*,,,.~-,=%%&&%%%%$##&%==%+*+!:??*
======?=&&&%;:--;*=$$$$$&&&&&%&%&&&&&&$&%%%%%%=;~;-,;-.*%&&%%%%$#&===%%%&++*;==%
!:+%%%==&&&?;:-:;+%&&&&&&&%&%%%&&&&&&$$%%%%%%%?,''''~!;;&&%%%&$$%%====%%$==??==%
?*+%%%?=&&%*::::!?&$$&&&%=*%%%%&&&&&&$&%%%%%%%!,'''..,+?&%%&&$$&$$%%+?==%%%%%%?=
%%%=%%=?=&=!:::;*?$$$$&&&%=%%%&&&&&&$&%%%%%%%*,.''`.-;*$&%&$##$&&&?*++?=%&%%%=?=
%%??%%=?+%+!:::;*=$$&&&&%&%%%%&&&&&&$%%%%%%%!,,...,-!!&$%&$####%&%??+?+?%&$$$&%=
?*??=??&&=*;::;!*=$$&&&%&&%%%&&&&&&$%%%%%%%=,.,~::::!+$%&####$#%&&?=?++?=&&&&&&&
%%%%&&&&&?*;;;;!+&$$&&%%&%&&&&&&&&&&%%%%%%%=,,.~:!**!+&$####$$#$=&==?+?==&&&&&&&
$$$$$$&&&+!;;;;*=$$$&&&&&%%%%&&&&&$&%%%%%%%%!-;;:;*!*=$$###$$$##=%&????==%&&%&&&
$$$$$$&&&*!!;!!?&$$$$$$&&&$$&%%*!=$&%%%%%%%%&+:!+?=?+$$$$$$$$$##$?&%???=%%&&%&&&
&$$$&&&&%*!!!*%&$$###$$&&&$$$$$?;=$%%%%%%%%%&$?*??=%$$$$$$&$$###$%=&%====&&&%&&&
?===%$$$%***=%&&$$##$$$$$&&&&&&&&$&&%%%%%%%&%%&$$&&&&$$$$$$$####$$%=&%%&?&&&%&&&
????=$$&=+*=&&$$$$$#$$$$$$$$$&&&$$&&$&%%%%%&%%&%%%&&&$$##########$$=%&&%&&&&&&&&
=%%%%$$&%?&&&$$$$$$##$$$$$$$$$&&$$$$&$&%%%%%%&%%%&&&$$###########$$$&=&&&&&&&&&&
=%%%&$$$$$&&$$$$$$$###$$$$$$$$$$$$$$$$$$&%%&&=%&&$$$$$###########$$$$#%=&&&&&&&&
!!*?$$$$$$$$$$$$$$$#####$$$$$$$$##$$$$$$#$&&&&&$&$$$$$##########$$$$$$##$&$&&&&&
=?*=$####$$$$$$$$$$#####$$$$$$$$##$$$$$$$#$&&&&&$$$$############$$$$$$####$%&&&&
%&*%$########$$$$$$#####$$$$$$$$##$$$$$$$$##$###################$$$$$#$###$&&&&&