Don't forget to scroll down for the second section of this page
The images in this section were created using the GIMP application.
The images below are photos and can be toggled between the true photo and an ASCII generated version of it.
Visit Ascii Generator for more information.
Don't forgot to scroll up for the first section of this page/
@@@@@@@@@&&&&&&&&&&&@@@&&@&&&@&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@&@@@@@@@@@&&&&&&&@@&@@@@@&@&@@&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@&@@@@&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
&&&@&&@&@&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
&&&&&@@&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
&&&&@@@&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@,(@@@@@,@@@@@@@//@@@@@@@@(@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@. &@@@@@@@@@@@@@@@@@@@@@@@@@@@&&@@@@
@@@@&@@@@@@@@@@@@@/*@@@@@@*@@@@@@@(/@@@@@@@@,@@@@@@@@,@@@@@@@&(@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@% &@@@@@@@@@@@@@&@@@@@@@@&@&@&@@@&&&&
@&@&&&@@@@@@@@@@@#*@@@@@@@*@@@@@@@(/@@@@@@@@,@@@@@@@@*@@@@@@@@,@@@@@@@/(@@@@@@@,%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@% @@@@@@@@@@@@@@@@@&&@&@@&&&&&&&&&&&
@@@@@@@@@@@@@@@@( . ..,////**/(//@@@@@@@@,@@@@@@@@*@@@@@@@@,@@@@@@@(/@@@@@@@*%@@@@@@*@@@@@@@@@*@@@@@@@@#@@&& @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@&@&@@@@@@&&&&&&&&&&&&
@&&@@@@&&@@@@@@@.@@@@@@@@@ @@@@@@& , .,**///*/(#*&@@@@@@@*@@@@@@@((@@@@@@@*%@@@@@@*@@@@@@%.******/***,,, /. / @@@@@@/%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@( ,@@@@@@@@@@@&@@@@&&@@&&&&&&&&&&&&&&
&&@@&@@&&@@@@@@.&@@@@@@@@&.@@@@@@@//@@@@@@@@ @@@@@@@( *. ..,*////////%&@@@@@*%@@@@@@*@@@@@..@@*@@@@@@@@ @@ .*@@@@@*&@@@@@@@*%@@@@@@@@@@@@@ . .@@@@@/@@@&@&@&@&&&&&&&&&&&&&&&&&&&&
&&&&&&@&&@@@@@ &@@@@@@@@@&.@@@@@@@*#@@@@@@@@,@@@@@@@@.@@@@@@@&.@@@@@@@*.&%(,. .,,///////(, &@@/@@@@@@@@/(&@& @,%@@@@@@%(@@ @@@/%@@@@@@@/#@@@@@@@@*@@@@*# (#@@@@@#/@@@@&@&@@&&&&&&&&&&&&&&&&&&&&
@&@@@&@@@@@@@@&@@@@@@@@@@%.@@@@@@@*#@@@@@@@@,@@@@@@@&,@@@@@@@%,@@@@@@@/(@@@@@@@*#@@@@@@ @@@&%/,. .,,*/((((*/ &/&@@@@@@&/@@# %@@##@@@@@@@#(@@@@@@@@/@@@@@# /%@@@@@((@@@&@&&&&&&&&&&&&&&&&&&&&&&&&
@&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*%@@@@@@@@.@@@@@@@&,@@@@@@@#*@@@@@@@*#@@@@@@@*#@@@@@@.@@@@@@@@@ @@@@@@@& @@@& / ..**/, ,((((%&@@@@@%(@@@@@@@@/@@@@@( *#@@@@@(/@@@@@&&&&&&&&&&&&&&&&&&&&&&&&
&@&@@@@@@@&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&@@@@@@@//@@@@@@@,%@@@@@@@*%@@@@@@.@@@@@@@@&.@@@@@@@@.@@@@ .@*%@@@@@@&.@@@@@&. . */(((((#(*,. *#@@@@@(&@@@@&&&&&&&&&&&&&&&&&&&&&&&&&
&&&@&@@@@&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#&@@@@@@@,%@@@@@@.@@@@@@@@&.@@@@@@@@.@@@@ .&/#@@@@@@@,@@@@@@@@.@@@@@@@&.@@@@@#/@,&@# ...&@@@@&&&&&&&&&&&&&&&&&&&&&&&&
@&@@@@@@@@@@@&&@@&&@&&&@@@@&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,@@@@@@@@.@@@@ .&/#@@@@@@@.@@@@@@@@,@@@@@@@&,@@@@@@@@.@@@, * @/(@@@@@/(@@@@@&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&@@@&@&@@@&&&&&&&@&&@&@&&&&&&@@&@@@@@&@@@@@@@@&@@&@@@@@@&@@@@&@@@&&@&&&@@@&@@@@&&&@@@@@@@@@@@@&@@@@@@@@@@@@ .%((@@@@@@@.@@@@@@@@.@@@@@@@@,@@@@@@@@,&.#,@(@@((@@@@@*(@@@@&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&@&&&&&&&&&@&&@@@&&@@@@@@@@&&@@@@@@@@&&&&&@@&&&&&@@&&&&@&&&&&@@&&&&@&@&@&@@@&@&@@@@@@@@@ .%@@@@@@@@@@&@@@@@@&.&@@@@&&@.&@@@@@@@,@@@@@(@@/(@@@@&/(@@@&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&@&&&&&&@&&&@&&@@@&&&&@&&@@&@&&&&&&&&&&&@&&&&&&&&@&&@&&&@&@&&&&&@&&&&&&&&@@@&&@@@@@@@@ .#@@@@&@@@@@&&&&&&@&&&&&&&&&&&@&&@&@@@/@@@@@*&@*/@@@@&/,@&@&@&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@&&&&&&&&&&&&&@&&&&&&&@&&&&&&&@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@@@@@ .#@@@@@&&&&&&&&&&&&&&&&&@&&&&&&&&&&&&&&@@@@@@@@@@@@@@&/&@@&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@&&&&&@@@@@@ (@@@@&@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@&@@@@@@&*@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@&&&&&&&&&@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@&&&@@@@@@ /@@@@@&&&&&&&&&&@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@&@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@&&&&&&&&&@@@@@ *@@@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@&&@@@@@ ,@@@@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@@@@ ,@@@@@&@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@@@ .@@@@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@@ ..@@@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@@. .@@@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@. @@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@@. @@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@, @@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@* @@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@* @@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@% . @@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@, @@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@, @@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@* @@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@/ @@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@/ @&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@/ @&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@/ &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@, &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@% &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@ %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@ #&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@. (&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@. (&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& /&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&@&&&&&&&&&&&&&@@@&&&&&&&&&&&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&&&&
@@&&&&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&&&&&
@@@@@&@&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&&&&&
@@@@@@@@@&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&&&&&
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&&&&
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&///&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&&&
@@@@@@@@@@@@&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@&@@@@@@@@@@@@@@@@(/////@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&//////%@@@@@@@@@@@@@@//////%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&&&&
@@@@@@@@@@@@@@@@@@@@@@@&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#///*///&@@@@@@@@%(%@(/*////(@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&&&
@@@@@@@@@@@@@@@@@@@@@@@@@&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#///////#@@@@@@(((((#///*/*//@@@@@@@@@@@@@@&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&&&
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&@@@@@@@@@@@%////////@@@@&(/((((/////////%@@@@@@@@@@(//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&&
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&@@@@@@@@@@@@@@@@@@@@@@@@&(/((((&@@@@@&&////////#&@@#///////(///////(@@@@@@@@@///%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&&&
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#/(//(((/&@@&&&%////////%&&/////////////////@@@@@@@(//(%@@@@@@@@@@/#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&&&&
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%//(//((((#&&&&&(////////&%////////////////(@@@@@@///(&@@@@@@@@(/////&&&&&&&@@@@@@@@@@@@@@@@@@@@@@@@&&&&&
&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&((%@@@@@@@@@#///////(/(&&&&%////////%#////////////////#@@@@&///(%@@@@@&%%///////&&&&&&&&&@@@@@@@@@@@@@@@@@@@@@&&&&&%
&&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#///////(&@@@@@(////////(/&&&&(///////((////////////////&@@@((//(@@@@%////////////&&&&&&&&&&@@@@@@@@@@@@@@@@@@@@&&&&&%
&&&&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@(/////////(@@@&(////////(/&&&&//////(((////////////////@@@#///(@@@#///////////*/&&&&&&&&&&&&@@@@@@@@@@@@@@@@@@@&&&&&%
&&&&&&&&&&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%//***//**//#@&(//////////&&&(/////(((//(////////////(@@(//((@@%//////////*///&&&&&&&&&&&&&&@@@@@@@@@@@@@@@@@@&&&&&%
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@@@@@@@@@@@@//***///////%&#/////////(&&#/////(((//(////////////%&(///#@@(//////////////&@&&&&&&&&&&&&&&@@@@@@@@@@@@@@@@@&&&&%%
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@@@@@@(/////#(***////*///#%(////////(&&//////((//(////////////&(///&@&///////////////&@@&#//((((/&&&&&@@@@@@@@@@@@@@@@@&&&&%%
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@@@@#(///////////////**//(%(////////%&(/////((//(///////////%(///&&#//////////////(@@#//////////&&&&&@@@@@@@@@@@@@@@@&&&&&%%
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@@@#/((//*///////////**//(#////////&%/////(((/////(//////((//(&&(//////////////&(////////////&&&&%%%&@@@@@@@@@@@@@@&&&&&%%
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&%(/((((/((/////////////***//#(//////(&//////((/////(//////(//#&&(/////////////(///////////(/(//////****#&@@@@@@@@@@&&&&&%%%
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&//////((((/(((////////////***//(//////(#/////((/////(////////#%%////////////////////////////////***//**/%@@@@@@@@@@@&&&&&%%%
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&////////(((//((////////////***////////#//////(/////(///////%&%//////////////////////////////////*/////@@@@@@@@@@@&&&&&&&%%%
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&/**/////((((//(///////////*****////////////(/////(//////#&%//////////////////////////////////////%@@@@@@@&&&&&&&&&&&&&%%%
&&&&&%%%%%&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@%****,///((((/////////////****////////(/////(/(/////*/&(////////////////////////////////////%%%(#%&&&&&&&&&&&&&&&&&&%%%
&&&%%%%%%%%%%&&&&&&&&&&&&&&&&&&&&&&&&&&@@@&%/*//*////(((////////////*///////((((//((/((///(((//////////////////////////////////////////////(&&&&&&&&&&&&&&&&%%%
&&&%%%%%%%%%%%%&&&&&&&&&&&&&&&////********//(%&#///////////(//////////////(((#(#(#(((#(((#(/(((/////////////////////////////////////////////&&&&&&&&&&&&&&&&&&%
&&&&%%%%%%%%%%%%&&&&&&&&&&&&&%/**************////(((////////////((//(((/(/(((/(#(((((#(##(((/(#///////////////////////////////////////////((%@&&&&&&&&&&&&&&&&&
&&&&%%%%%%%%%%%%&&&&&&&&&&&&&&#////*/,,*/***********///((//////////((((/###(###(((((#(/((/##//((//(////////////////////(///////////////(//**//&@@@@&&&&&&&&&&&&
&&&&&&%%%%%%%%%&&&&&&&&&&&&&&&&&&&%((/.*******************///((////((#(#%#%#%##((%(((((((((//(#(((////**//////////((///////////////((((///#&@@&&@@@@@@@@@&&&&&&
&&&&&&&&&&%%%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&#(////************////((###%#%%#####(/(/(/(((/(/(/((#((/////////(((/////////////((/////((((((#%&@@@@@@@@@@@@@@@&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&@&&&&&&&&&&&&&&@@@@@@@@@%@@@@&%%#(//////((((((###%(((#(/(///(/((///(#%###(((//(/////////((((///////////////////%&&&&@@@@@@@@@@@@@@&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@@@@@@@@@&%#(///////////((((#%##%###(((/(((((((/((/((#((((#(((((/////////////////////////////(&&&&&&&@@@@@@@@@@@@&@@@
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@&#/***/*********////////((##(###%%##(#%(((((/////((//((####////*/**///////////////////////(%&&&&&&&&&&@@@@@@@@@@&@&&@
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&#///*************////****//((##%(%#(%%(%#%##(#/(#/((/(((#(#%((#((///(#######%%%###%%######%%%%%%%#(#%&&&&&&&&&@@@@@@@@@@@@
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&(/*****/*,**************////////(###%(#%(%%#(##%#%((/((//((#(/###(//(//**/////////////(((((((##%%%%%##%&&&&&&&&&&&&@@@@@@@@@@
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&/////**************///////***//#%##%%#(%(%%&#####(#(%%(%%########(((#(/////////////////////////////////%&&&&&&&&&&&&@@@@@@@@@@@
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&#(////*******/////////*****(&(////((######%#%##%#%%%###%##(%##%##%#(((((((/////////////////////////////////#&&&&&&&&&@@@@@@@@@@@
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&%#(((((((//////*******#(/////////(%%%####(%(%#%#%#%%#%%##%%#(%%(#((/(/////((#((/////////////////////*/*///&&&&&&&&&@@@@@@@@@@@
&&&&&&&&&&&&&&&&&&&&&&&&&&&@&&&&&&/////************((/////**////(((#####%(##%((%%###%%#%%#%(%(((#(((//((///////(((###(((//////////////////&%&&&&&&&&&@@@@@@@@@@
&&&&&&&&&&&&&&&&&&&&&&&&&@@&&&&&///////*//******#(/////**///*/(//////(((###%((%#%&#(%#(#(%((%#((((/////////////////(((((##%&&&&&&&&&&&&&%%%%%&&&&&&&&&&@@@@@@@@
&&&&&&&&&&&&&&&&&&&&&&@@@@@@@&&//////////*//##//////**///**///****////(((((#%%%(##%#%#(###(%#(#((///*******/////////////((((((#&&&&&&&&%%%%%%%&&&&&&&&&&@@@@@@@
&&&&&&&&&&&&&&&@@@@@@@@@@@@@@@&#((////((%&%/***///*///***(//******///#(////((((###########(##(//////**********////////////////((((&&&&&%%%%%%%%%&&&&&&&&&&&&@@@
&&&&&&&&&&&&&&&@@@@@@@@@@@@@@@&&&&&&&&&&%*******////**///********//(&/****///////#////(//((/(((///////************//////////////////(&&%%%%%%%%%%%&&&&&&&&&&&&&
&&&&&&&&&&&&&&&@@@@@@@@@@@@@&&&&&&&&&&&//******//***////*********(#/*********////%////////(///((////////*************//*//////////**//#&%%%%%%%%%%%%&&&&&&&&&&&
&&&&&&&&&&&&&&@@@@@@@@@@@@@&&&&&&&&&&%///***//***////**********(%#/**********/**/@//******/(//(((////////(//*************/*//////((/////%%%%%%%%%%%%&&&&&&&&&&&
&&&&&&&&&&&&&&@@@@@@@@@@@@&&&&&&&&&%%#////*****//////*****,,*/#%%/**************/@#/********(//(((////////*&(/**************//(////////(&%%%%%%%%%%%%&&&&&&&&&&
&&&&&&&&&&&&&@@@@@@@@@@@@&&&&&&&%%%%((//***//(////*,,***,**%&%#(/***************(@&**********///(((/////////*&&#/***********////(&&&&&&%%%%%%%%%%%%%%&&&&&&&&&&
&&&&&&&&&&&&&&@@@@@@@@@@@&&&&&%%(#(#((((((#(////*,******(%%%%#//****************#@@/**********#//((((///////**/&&&%(//****////////#%%%%%%%%%%%%%%%%%&&&&&&&&&&&
&&&&&&&&&&&&&&@@@@@@@@@@&&&%%%%#(((((((((((///****////%%%%%%#/*****************/&@@#*/*********((/((((////////*/(%%%%%%%(//////////#%%%%%%%%%%%%%%&&&&&&&&&&&&&
&&&&&&&&&&&&&&&@@@@@@@@&&&%%####(((((((#%(((////(/(######%&%/********/**********@@@@/*/**********(/(((((//////////(%%%%%%%%%#(////(%%%%%%%%%%%%%%%&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&%%%##((((((#######(((((((((#######%////**/*//**********/@@@@(*************(/((((((//////////%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%&&&&&&&&&&&&&
@&&&&&&&&&&&&&&&&&&&&&%%%##((////(((######################%/**///#//***********%@@@@&//************((/((((/(**///////%%%%%%%%%%%%%%%%%%%%%%%%%%%&&&&&&&&&&&&&&&
@@@@&@&&&&&&&&&&&%%%##%%#/////////(((((((#################&(((((#(//***********&@&&&&#/**/**********((//((///(///////(%%%%%%%%%%%%%%%%%%%%%%%%&&&&&&&&&&&&&&&&&
@@@@@@@@&&@&&&&&%%%((((((//////////#(((((((###(((((#(####%#(((((#(//***********#((//(#(/////*********((//(((///(//////%%%%%%%%%%%%%%%%%%%%%%%%&&&&&&&&&&&&&&&&&
@@@@@@@@@@@@@&&&%%%#((####///////////((((((((%#((((((####%#((((##(///*********/#((((((((/////*/*/*****//(//((///#%%##%%%%%%%%%%%%%%%%%%%%%%%&&&&&&&&&&&&&&&&&&&
@@@@@@@@@@@@@&&&%%%###((####(//////////(((((((##(((((##(#&((((####////********###(((((##(//////////**////(//((//(#%%%%%%%%%%%%%%%%%%%%%%%%%&&&&&&&&&&&&&&&&&&&&
@@@@@@@@@@@@@&&&////((###(####(//////////((((((##((((((((#((((####(//***//***(((((((((##%#(////////*//*///////(((###%%%%%%%%%%%%%%%%%%%%%&&&&&&&&&&&&&&@@@@@@@@
@@@@@@@@@@@@@&&/////////((######(/////////((((((#(//(((((((((((####(/(////**(((#((((((((**/(//////////////////////((###%%%%%%%%%%%%%%%&&&&&&&&&&&&@@@@@@@@@@@@@
@@@@@@@@@@@@&&&%(////////((((######(////////(((((((((((#((((((((###(###/(//(###((((((/**////////////////////*****///((##%%%&&&&&&&&&&&&&&&&&&&&@@@@@@@@@@@@@@@@
@@@@@@@@@@@@&&%%##(////((//(((((######(/////((((((##((###(((((((((##((((####((((((((((((///(((((((////*(////******///((#%%%&&&&&&&&&&&&&&@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@(////((###(/////(((((((((#####///(((####((#(#(###(((((((((###((((((((((((#(((///(((((##((/((((///*******//((##%%&&&&&&&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@%/((((((((((###(//////((((((#########(##(#(#(#(#(#(#((((#((((((((((((((((((/*///((((####(((((////*******//((##%%&&&&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@&&(////(((((((((((((((((//(((#&%##((((#(#(%(#(##(#(##((((((((((((((((((((((//////((((((((((//////////////((##%%&&&&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@&&%#((//////////////((((#####((#(#(#%###((##(%#(#((#(((((((((((/////////////////((((((((////////////////((##%%&&&&&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@//////////////////////////(#%%%##%(%###((%(%###(#(((##((////////////////////////////////////*******///((((###%%&&&&&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@(//////////////////////////((#(#####%%(#%##%##%#(#((#((((((((((((((((//((///***////////////********///((####%%%&&&&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@(//////////////////////////((#%#(%(######%(%##%#%(##(((((((##(((((((((((((////////////////******///(((##%%%%&&&&&&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@#/////**////////////////######(###%##%%#(%(%(######(######((((((###(((((((((((/////////////////((##%%&&&&&&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@%(((/////////////////((((##%%#%%%%%%(##(#%#%##&(####%%#(/((((((#(#%##############(((((((((((((((((##%%&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@#(((((((((((((((((((###((((#%%##%%%##((#%###(#(####%#((((#((((((((#(##%&&&&&&%%%%###########%%###%%%&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@%((((((((((#####((((((//(#//(((%#####%#(###%(%####((((((((##(((#((((((//////%&&&&%%%%%%%%&&&%%&&&&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@&########(((((((((#%/*/////###%%#%#%######%#%(((((/(((((/##(((##((#(//////(&&&&&&&&&&&&&&&&&&&&&&&@@@@@@@@@@@&&&&&&&&&&&&@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@#((((((((((((((#%#//////*/((//((#%%#%##(#####(#((((#(/((//////##((##(((((((%%%%%%%&&&@@@&&&&&&&&&&&&@@@@@@@@@&&&&&&&&&&&&&&&&&@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@#(((((((((#####/**//*//*/(/////(((###/(/((((((((/(((#%((((///////#############%%%%%&&@@@&&&&&&&&&&&&@@@@&&&&&&&&&&&&&&&&&&&&&&&&&@@@@@@@@@@@@@@
@@@&&&&&@@@@@@@@@&&&%%%%####(/*//**/**/(*//////(/(#((/////(((((((/(((%%%((/((//////(&&&&%#(((#%&%%%&&&&@&&&&&&&&&&&&&@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@@@@@@@
@@&&&&&&&&@@@@@@@&&&%%%%###///**//**/#///////////(((///////((((((////##%%&&#(///(///(#&%#((((#%&&&&&&&&&&%%%%%%%%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@@@@
&&&&&&&&&&&&&@@@&&&&%%%%#(//////*//#////*////////((////////(/((/%(/*/((((&&&&&&%#(///(#%#(((##&&&&&&&&%%########%%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&%%%%#///////##(///*//*//(////#(////////(/(//&%#(((((/#&&&&&&@&%(//((#(((#%&&&%#######(((((((##%%%%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&%%%#(///(###(/****//*/(/////(/////////(/(//&&%(((//((&&&&&&&%#(///(((((#%%%##(((##((//////(####%%%%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&%%########(/**///*/((/////#(/////(///(///(%%%#(/////&&&&&%%##((//(((((###(((((##(((*****///(((##%%%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&%%%###%%%///////(((/////(%//////////(((/(%%%##(////#&&%%%%###(((((((((((((#####((//******///(###%%%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&%%%%%%%(////%%((/////(%%//////(///((((((((####(((#%##(((#####((((((((((######((((//**/////((###%&&@@@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&%%%%%%%%%%%(((/////%%%////(/////(#(((///((((######((((#####(((((###(######(((((/////(////(###%&&@@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&&
@@&&&&&&&&&&&&&&&&&&&&&&&&&&%%%%%%%%%%((////(####(((/(/(//((%%##((((((((((#############((((########(((((((((((//////((#%&&@@@@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&
@@@@&&&&&&&&&&&&&&&&&&&&&&&%%%%%%%%%%#((///(######((#(((///#%%%%##(((((((((((########%##(#########(((((((((((((((((((##%&&@@@@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&
@@@@@@&&&&&&&&&&&&&&&&&&%%%%%%%#######((/(####(((##%%#((((##%%%%%%%#(///////(((#####%%%######%#####((((((((((((((/(((##%%&@@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&&&
@@@@@@@@&&&&&&&&&&&&%%%%%%%%%#################(((#####(((####%%%###((/////////((##%%%%%%%##########(((((((((((((((((((##%&&@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&&&&
@@@@@@@@@&&&&&&&&&%%%%%%######################################((((((((/////////(##%%%%#####%%%##%####(((((((((((((((((((((#%&@@@@@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&
@@@@@@@@@@@@&&&&&&%%%%#######################%%%%%%%%########(((//(((((((((((((##%%%%#######%%%%%%%###((((#####((((((((((((%&@@@@&&&&&&&&&&&&&&&&%&&&&&&&&&&&&&
@@@@@@@@@@@@@@&&&&%%%%######################%%%%%%%%%%%%######((/////((((((((((#%%%%#########%%%%%%%%##((((#############%%&&@@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
@@@@@@@@@@@@@@&&&%%##########((####((#######%%%%%%%%%%%%%%####(((//((////////(#%%%%%####################(((######(((##%%&&@@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
@@@@@@@@@@@@@@&&%%%####(#####(#(((((((((#####%%%%%%%%%%%%###((/////////////(((##%%%%%#################(((((###((((######%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
@@@@@@@@@@@@@@&&%%###((((#######(((((((((####%%%%%##########(//////////////((((((#%%%%################(((((#(((#######((#%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
@@@@@@@@@@@@@&&%%%##(((((##########((((((######%###########(((/////((((/////////((%%%%%%%#%#########(((((((((#((##%%%%%%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
@@@@@@@@@@@@@@&&%%%##################((((((#############(((((((((((((((/////////((###############((((((((((((((((##%&&&@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@@@@
@@@@@@@@@@@@@@@&&%%############%%####(((((((((########((((((((////(((((////////((((((((((((((((##(((((((((((((((((((#%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@@@@@@
@@@@@@@@@@@@@@&&%%%###########%%%%##((///////((((((((((((((/////(((((/////////(((////////((///((#((((//(((((((###(((((##&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@@@@@@@@
@@@@@@@@@@@@@@&&%%%###########%%%%##((//****///((((((((///////((((((/////////(((///////////////((((((////((((((##%##(((#%&&&&&@&&&&&&&&&&&&&&&&&&&&@@@@@@@@@@@@
@@@@@@@@@@@@@&&&&%%#################((///////////////////////((((#((///////((((/////////////////((((((/////(((((#%&&&%%%&&&@@&&&&&&&&&&&&&&&&&&&@@@@@@@@@@@@@@@
@@&&&&&&@@@@&&&&&%%%#################(((///////////////**////((###((////((((((///////////////////(((((((////(((((#%&@@@@@@@@&&&&&&&&&&&&&&&&&@@@@@@@@@@@@@@@@@@
@&&&&&&&&&&&&&&&&&&%%%%%%###############((((((/((///////////((##(((((((((((((////////////////////((((((((/////(###%&@@@@@@@@@@&&&&&&&&&&&&&&&@@@@@@@@@@@@@@@@@@
@&&&&&&&&&&&&&&@&&&&&&%%%%%######################(((((((((((##%##(((###((/(((/////(///////(///////((((###((///((%&&&@@@@@@@@@@@&&&&&&&&&&&&&@@@@@@@@@@@@@@@@@@@
@&&&&&&&&&&&&&&@@&&&&&&&%%%%%%%##%%%%%%%%%%%%%%%%%%%%######%%%%%%%%%&%#(/((((////(((//////((//////(((((#%%#((//(%&@@@@@@@@@@@@@&&&&&&&&&&&@@@@@@@@@@@@@&&&&&@@@
@@&&&&&&&&&&&@@@@&&&&&&&&&&&%%%%%%%%%%%%&&&&&&&&&&&&&&%%%%%%&&&&&&&&&&%###%#(////(##(/////(((//////((((#%@&&%###&@@@@@@@@@@@@&&&&&&&&&&&&&&@@@@@@@@@@&&&&&&&&@@
@@@@&&&&&&&&@@@&&&@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&%#///(#&&%#((///((#((///((##%&&@&&&&&&&@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&@@&&&&&&&&&&&&
@@@@@@@@@@@@@@@&&&&&&&&&&&&&&&&&@&@&&&@@&@@@@@@@@@@@@@@&&&&&&&&&&&&&&&&&@@@&%###%&@@@@&#(///(#%#(//(#%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&%%%&&&&&
@@@@@@@@@@@@@@&&&&&&&&&&&&&&@@@@@@@@@&&&@@@@@@@@@@@@@@@@@@&&&&&&&&&&&&&@@@@@@@@@@@@@@@&&#(/(#%&&%((#%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&%%%%%%%%&&
@@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&@@@&&&&&&&&@@@@@@@@@@@@@@@@@@&&&&&&@@@@@@@@@@@@@@@@@@@@&&&%%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&%%%%%%%%%%%&
@@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&%%%%%%%%%%%%
@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&%%%%%%%%%%&
@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&%%%%%%%%&&
@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&&&&@@@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&@@@@@&&@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&
@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&&&&&&&&&&&&&&&&&&&&&&&&&&
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/*,,..,,,**/#%%&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,,,,,,,,,,,,....,,,**,**,***/(&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@(,,...,,,,,***,******,,,,***////*/**,,/%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,.......,,,,****//(((((/*******,***,**,**/**/(@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&,.....,,,,****////(/////////*////*********,,,***,,*/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@(.,,,,,,*///((//(/////*****////*/*/((/***,*,**,,,*,*,,,**&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@(..,,***///(/***,,***//***,***/((((/((((//***,,,,*,/***/*/***&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,,,,,**/////*/#//****************//(##/*//**,,,,*******(((##(**/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,,,,,///****/#((((((((**/*/*,*/###((#####((/*,,,,,**/***/((#####/*/#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,,,*///*****((##(((((((//////**########(######/***/*,**,,,*(#####/***/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/,*/(/,*,/(/#####((##(((/(/(((//(##############(////((#/***,,/(###//*(/*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*(//((/,,/##(########(##((((////((########(#######(((((###//*/*,,*****/((**#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*((((/****(################((//////(###%##################%%%##///*******/*//%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/((((##/*//#################((/((#(**(#%##########(######%%####(((/(###(#(((/*/&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@(##(#(#//((#############(((///////,*//(##((((**/(#%#%###%###%####(((######(/****@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*###(#(#(((###(##########((###(#(/**//(((#(/##//(###%%#%%%########((#######((///*/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#(######(##((###############(#(##(///((#####((#(*(/######%#####/*(///#######(/,****%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*######(((####(########(((#((((#(////(#####%%#(***//(###%######,***//*/#####(/*,***/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@######(#/((/#####((#####((((((((((##%#((((#((//****//*((#######*****//(((###((/*****@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#(/(##(#(*/(((###(((((((#((//////(((##(///*/***,,,,,********,((/(/**,,,,,/(///((//*/*#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@(((#####(,(((#####(((///****//////(##((**////**,,,,,*,,**,,,*((/(//*//**,*****((/****(@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/(/#####(((#((((###(/*/*//,,*//((((#%#((((((//******,*,,,..,*****/*/(((/**/*/((/,****(@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@//#/#########((((#(#(**/****/((###((##((((#(//**,***,,*,*,,,,,,,,*/((((#/**//*/***,,*(@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@(/(###########(((/(#((((/*////(##(((#(/*//*/****,*,.,**,,.,,,,.,,.*//(((//****,*,,,,*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/###########((***/(///////*///((((((/****,*************,,**,,,,,,,,(/*,/,,,,,..,,,*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,/(##########((//*/((((((((//((///((/******///****************,,,,,********,,....,,/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,**###########(((*#(#(#((((#((////(#(((/*,***********,****,,***,,,,,,,**,,,,...,,*&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,,,/(###############(#(#(####((//*/((##//(******,,,******,,***,,,,*,,*,,,,,,,,,,,*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.,,*(###%#####%#######(//(######((*/##(/((***,********,,,***,,,*,*****,,,*,,****&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/,,,*(################((//######(/((#####*,*****,,**,,,,,*,*,,,,*,****,,,,,**,,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*,,,*/##################((#(*/#(#/(###(#(/*****,,,,*,,****,,*****,,,,,,,,,*,,(@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/,,/**/(########(/(#######(//(((((######((**,,,,,,,,,,,,,**,,,,,**,,,.,*,,*(@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@(,,(,**/##((#(((/**((###/////(/(#######(/*,,,..,,,,,,.,**,,,,,*,,,,,,,,,*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,,,,,,,***(((//**/#%##//(/#(//((##(/(*,,.....,,,,,,,,,,,*****,,,,,,,,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/,,,******/**,*(#####%##(*(((/***,*,,,.........,,,,,****,,,,,,,,,,,*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,,,*,,,,*****/(######(/*((*//*,,,,,...,,...,.,.,,,,,,,,,,,,,,,,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,,.....,,,,,/*(//((/**(((**,,,*,,,,,..,,,,....,,,,,,,,,,,,..@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,,,...,,,,.,,,,***********/*,,,,,.,,...,,,,,,,,..,,,...,&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/,,,,,,,,,,**,*//***,,,,,,*,,,,,,,....,.,,,,,,.....*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/,,,,*,,****,,,***,**,,,**,,,,,...,..........*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&*,,,,,,***/***/****,*,,,,,,,,.........(@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@(,,,,,,*,,,,***,..,,.,,,..,..(@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#/*,,......,*#&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@%((####################################%%%%%%%%%%%%&&&&&&&&&%%%%%%%%%%%%%%%%%%%%%%%&&&&%&&&&&&&&&&&&&&&&&%%%##%%&@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@%.,*,,...,,,,,,,,,,,,,,,,*********************,,,,,,,,,,,,,,,,,,,,,,**************/*************************//**/(@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@(.*#%,.,,,,,,,,,,,,,,,,,,,*#@@@@@@@@@@@@@@@@@/ .,,,,,,,,,,,,,,,,,,**/#@@@@@@@@@@@@@@@@@%.,,,****************/&&,/(@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@/ *#@/.,,,,,,,,,,,,,,,,,,,*/&@&@@@@@@@@@@@&&& ,,,,,,,,,,,,,,,,,,,,**/&@@@@@@@@@@@@@@%@,.,*****************/#@@.,(@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@/.*%@&/.,,,,,,,,,,,,,,,,,,,*(@@@@@@@&@@&@&%&, ,,,,,,,,,,,,,,,,,,,,,,**(@@@@@@@@@@@@&%&/.,*****************/(@&&.*(@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@* *%@&&,.,,,,,,,,,,,,,,,,,,,*(@@@@@@@&&&&%&* ,,,,,,,,,,,,,,,,,,,,,,,,**#@@@@@@@@@@@#&% ,******************(@@&&,*(@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@/.*%@&&#,.,,,,,,,,,,,,,,,,,,**&@@@@@@&&&%&( .,,,,,,,,,,,,,,,,,,,,,,,,**/%@@@@@@@@@%&&..,,,***************(@@&&@,//@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@* *%@&&@(.,,,,,,,,,,,,,,,,,,,*/@@@@@&@@%&% .,,,,,,,,,,,,,,,,,,,,,,,,,***/@@@@@@@@&%@,.,,**********,,,,**(&@@&&@,*(@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@/./%@&&&@*.,,,,,,,,,,,,,,,,,,**(@@@&&@&%@. ,,,,,,,,,,,,,,,,,,,,,,,,,,****(@@@@@@@%@/.,,**********,,,***/%@@&&&@,//@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@*./&@&&&&&,.,,,,,,,,,,,,,,,,,,**&@@@@&%@* ,,,,,,,,,,,,,,,,,,,,,,,,,******/%@@@@@%&%.,************,,***/%@@@&&&@**/@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@/./&@