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