#%%%%%%###
*********###%%%%#
####*#%%%%%#####%%%%%%%
#%%%%%%@@@@@@@%%%%%%%%%%%#
#%%%%%%%%%@@@@@@@@@%%%%%%%%%#
#%%%%%%%%%%%%%%%%%%%%@%%%%%%%%
%%%%%%%%%#########%%%%%@@%%%%%%%
%%%%%%%%#########***##%%%%%%%%%%#
%%%%%%%%%#####*********#####%%%%%%
%%%%%%%%%##*****++***###%###**#%%%%#
%%%%%%%%%##**+++***###*********%%%%
%%####*##*********#######**++*%%%#
%#*****####*******#*##*****+++#%%**
##***#*###*****************+++*###**
*#*+++******++*************++==+*****
*#*+++******+++*******+++++++===+**+
***+++++*********#******+++++==+**++
+++++++******************+++=+++++
+**++++************###**++*++++
++++++***#*==-==+*##*******+++
+++++*********************++
++++++*++****************++
+**********************++
*************######***+=
%%####***#########%%%###****++
%%%@%%%%#***###%%%%%%####******+ %%%%%%
%%@@@@%@%%#*****#########*******+#@@%%%%%%
%%@%%%@@%%%#*********************#@@%%%%%%
%%%@@@@@@@@%#****++**************#%@%%%%%%%#
%%%@@@@@@@@@%##*****************#%@@@%%@@%%%%%%
%%%@@@@@@@%%%##*************##%@@@%@@@@@%%%%%%%%
%%%%@@@@@@@@%%#*###***********#%%@@@@@@@@@@@@@@@@@%%
%%%%%%%%@@@@@@@@@@%%%%%##*******###%@@@@@@@@@@@@@@@@@@%
%%%@%%%%%%%@@@@@@@@@@@@@@@@%##****##%%%@@@@@@@@@@@@@@@@@@@%%
%%%%@@@@@%@%%%%@@@@@@@@@@@@@@@@@@%##%%%@@%%%@@@@@@@@@@@@@@@@@@@@%%%
%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%
%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
%%%%%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@