Analyse de données cryptées en texte
Analyse de données cryptées en texte
.#@%%#%%###%%%%%###########%##%%%%##%############%%-
.*@%%%%%#%%#%%%%%###########%###%%%#%%##############@+.
.#@%%%#%%#%%#%################%##%%%#%%###############@#:
-%@%%#%%%%%%%%%%%%#################%%%#%%###############%%-
:%@%%#%%%%%%%%%%%%################%#%%%%#%################%@=
.*@%%#%%%%%%%%%%##################%%##%%%####################@*.
=@%%#%#%%%%%%%%%##################%#%%#%%%####################%#:
:@%%###%#%%%%%%%%########################%%#####################%%-
.#@%#%#%%%%%%%%%%%########################%%%#####################%@+
=@%%%##%#%%%%%#############################%%#######################%#.
:@%%%#%%#%#%%%%#############################%%%#######################%#:
.#@%%%%%%%%%%%%%############################%#%%########################%@-
+@%#%%%%%%%%%%%%############################%#%%%########################%@+
-@%##%%%%%%%%%%%%###############################%%##########################@#.
.#@%#%%%%%%%%%%%%%################################%%##########################%#:
+@%#%#%%%%%#######################################%%%##########################%%-
:@@#%#%###########################################%#%%###########################
%@=
.#@%%#%##########################################%##%#%
%########################*#*#@*.
=@%#################################################%##%
%##########################*#%#.
:@%%###################################################%%
%###########################**%%:
.#@%#%##%################################################%%
%#*#########################**%%-
=@%#######################################################%%
%#######################*#*#*+#@=
:%%%###############################%########################%
%#*##########################*+#@*.
*@%#################################*++*####################%%
%############################*+*@#.
-@%##################################*++*###################%#%
%#############################*+*%#:
:#@###########################################################%#%
%#*###############***********#*++%%-
+@%##########################################################%##%%
%##########****************#***+*%@-
:@%#######################################################%%%%%%%#
%@########*#********#*********#**++#@=.
.#@%#######################################################%%%%%%%%%%
%####***#********************#**++#@*.
=@%########################################################%%%%%%%%#%%
%#*##**#*********************#*+++*@#.
:%%##########################################################%%%%%%%%%%
%##*#**#************************+++*@#:
.*@############################################################%%%%%%%%%%
%#*#****************************+++*%#:
=@%############################################################%%%%%%%%%
%@#**#****************************+++*%%-
:%%###############################################################%%%%%%%%%
%#*******************************+++*%@=
*@%################################################################%%%%%%%%@
%********************************++++%@+.
.... ..::::..
-@%###################################################%##%#%@%%##%###%%%%%%%%
%#*#******************************++++#@+.
.--====--:. .:=======-:
:#@%#####################################################%#%@*=*@%####%%%%%%%%%
%#********************************++++#@*.
:-==========--===========:
...::-=+*#@%#####################################################%##%@- -#%%%##%%%
%%%#%%#*********************************++++#@#.
.-========================-.
...:-=+***#%%@@%@@@@%@@%#####################################################%#%@#.
...-#%%%#%%%%%%%%%#*********************************++++*@#:
-=========================.
..:=+*##%@@%%%%####**#######%@
%######################################################%#%@=.......=%@%%%%%%%%%@
%**********************************++++*@%:
.-========================-..
....... ....::--=+*#%@@@%%##*+++======+*###%####%@@
%######################################################%#%@- ........+@%%%%%%%%%
%#**********************************++++*%%-
.-==========================-.
...:-=++**###%%@@@@%%%###%%@%%%%%%%%%##*+==========+**#%%%%#######%@
%######################################################%#%%@: ........ -#@%%%%%%%@
%***********************************++++*%@=
.:-=============================-.
..::=+**##@@@%%%####***********###%%%%%%%##*+===========++**##%%#####******#@@
%######################################################%#%%@:...........:+#@%%%%%
%@#***********************************++++*%@=
:================================-.
.
..:-=**#%@%%%##**+++========================================++**##%%####**********#
%@%######################################################%##%%@-............:-+%@%%
%%%%#***********************************+++++%@+.
.-================================-.
.*#*+-:.
.:-+*#%@%%##*+++===============================================+***##%
%###**************#@@%#########################%@%##########%%%@@@%%%%%%%%%%%%%#
%@-.............:--#@%%%%@%************************************+++++%@*.
.-=======--:::==================-.
=@%%%%%#*+-:..
.:=+*#@%%##*++===========++========================================+***#%
%##*****************#%@%###########################%@+: .............:::--=++**##%
%@#:..............---=#@%#%@#************************************+++++#@*.
.:::.. .:==============--:.
-@@%%%%%%%%%%##*+=::..
.-+*#@%%#*++==================++***********++++=======================+**##
%###**##***************#@@%#############################
%#-...........................:................:----+%@%@
%#************************************+++++#@#.
.-=========:..
:#%%%%%%%%%%%%%%%%%%%##*+=::..
.-+*%@%%**+===============+++++++++++++****#***###*#****+
+==========+*****#*############***************%@%###############################
%@#-...........................................:----=#@
%@#*************************************+++++#@#:
.-========.
.*@%%%%%%%%%%%%%%%######%%%%%#**=-:..
.:=*#@%##++=========+++
+*****################**#########*********+========*#***################***********
*#%@%#################################%%
+-:.........................................:-----+%@
%#*************************************+++++#@%:
.----. .-=====-:
=@@%%%%%%%%%%%%%%%%###*******##%%%%#**+-:..
.-+#%@%#*+=====+++
+***###############*###*####*##########*******##***#**+=====+*#*###################
#*********#@@%##################################
%@#=-::.......................................-==----*@
%**************************************+++++#@
%- .-====-. .::..
:#@%%%%%%%%%%%%%%%%%%#######***++++*###%%%#**+-:..
.-*#@%%*++==+++
+**########################################**#***#####***#*****+====+##############
#######*********#%@%####################################%
%@*---:.....................................:*@#+---
#@#**************************************+++++#@%-
-====:
.*@%%%%%%%%%%%%%%%%%%%###########***++++++**##%%%#**+-:..
.-+#@%#*++++
+**##############################################***********************+
+*###################************#@@%##################################%%#%%%%
+---::...................................-%%%%*==
%@#**************************************+++++*@@-
.:..
-#@%%%%%%%%%%%%%%%%%%%################***++++++++*##%%%#**+-:..
.:+#@%#*++
+**##############################################***##**###############***##****###
###############*************#%@%################################%%%%%@@
%#*=-:::::...................................=@##%@#*%
%#**************************************+++++*@@=
.*@%%%%%%%%%%%%%%%%%%%%%#####################**+++++++++*##%%
%#*+=-:..
.-*%%%**+**####%########################################*********##******#########%
%######*##################***************#@@%##########################%%%%%
%#*+=-:............................................ ..+@#**#%%@
%***************************************+++++*%@=
-#@%%%%%%%%%%%%%%%%%%%%%##########################**++++==++
+*##%%%%#*+=:..
.=*@%#***###%
%#############################################**##****##***************#######
%##################*****************%@@%#####################%%
%@#*+-:........................................................*@#***#%
%#***************************************+++++*%@=
.*@%%%%%%%%%%%%%%%%%%%%%%###############################**+
++++=+++**#%%%@%**=-:.
:=#@%#####
%################################################**#*******************************
*##################*****************#%@%##################%%
%#*=:..............................................................:#
%#****###***************************************+++++*%@+
....
:-*#@%%%%%%%%%%%%%%%%%%%%%%%%
%##################################***++++===+++*##%%@%#*+-:..
:+#@%%####%%##%
%#################################################*********************************
**##############******************#@@%##############%
%@#+-:...................................................................:#
%***********************************************+++++*%@+
.-====:
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%#######################################***++++==++++*##%%@%#*+=:..
:=#@@%%%%#%#%%%%###
%################################################********************************##
##############*******************%@%%##########%%
%#+-.........................................................................:%
%***********************************************+++++*%@*.
.-====:
:*@%#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%############################################***+++====+++*##%%@@##*=-:.
.-#%@%%%%#%%##%######%
%################################################****************************######
##############******************#%@%########%%
%*=:.............................................................................-
@#***********************************************+++++*%@*.
.---:.
:+#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%#################################################***++++===+++**#%%@@%**=:..
.:*@@%%%%%%%%##%%%##%
%##################################################******************************##
######%###########******************#@%######%%
%*-................................................................................
..=@#***********************************************+++++*%@*.
.:*%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%#######################################################***+++++==+++**#%%@@#*+=:..
:+#@%%%%%%%%%%%%%%####%%
%###################################################*****************************##
#####%###########******************#%######
%@*: ..............................................................................
.... .*@#***********************************************+++++*%@#.
.-#@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%###############################################################**+++++==+++**#%%@
%#*+-:.. .=#@@%%%%%%%%%%%%%%%%%#%%%%%
%##################################################******************************##
###%%##########********************########%
%#=................................................................................
... :#%*************************************************++++*%@*.
:+#@%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%####################################################################***++++++++
+*##%%@%#*+-:. .-*%@%%%%%%%%%%%%%%%%%%%%%%%%%%
%########################################################*************************#
###%%##########********************##########%%
%*:................................................................................
..-@#*************************************************++++*%@*.
.%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%##########################################################################****++++
+**#%%%@%#*+-:. :*%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%#######################%%%%%%%%%%##################%%##########***************####
%%###############################**##########%
%#+:...............................................................................
.*@***************************************************+++*%@#.
-@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%##################################################################################
###*###%%%%@#*+=:. :+%%@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#####################%%%%%
%########################********######%%%%#####**********###%######%%%%
%###################################
%@#=:............................................................................ :
%%***************************************************+++*%@#.
.*@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%##################################################################################
########%%%%%%@%%#%@@@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%###########
%#####################################**##***###*###**#####%%%%%###*******##%%###%%
%%#########################################
%@#=............................................................................=@#
****************************************************++*%@#.
:@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%##################################################################################
############%%%%@@@@@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%#######################################################*###***#######%%%%%%
%###****##%##%%%#############################################%%
%#=:........................................................................:%
%*****************************************************+++%@*.
+@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%
%##################################################################################
##############%%%%%@@@@@@%%%%%%%%%%%%%%%%%%%%%%%%%
%###############################################**####***######%%%%%%%%%%%%%%%%
%####*#%%%%%%################################################%
%@#+:......................................................................=@#*****
*************************************************++%@*.
.#@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%##################################################################################
#################%%%%%%%@@@@@@%%%%%%%%%%%%
%#################################################*###**#####%%%%%%%%%%%%%%%%%%%%%%
%%%%%####%%%%%##############***********#########%%%##############%%%
%*-.................................................................. :%
%*******************************************************++%@+
-@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%##################################################################################
##############%%%%%%%%%%%%%%%%%%%%%%%%
%#***##############################################*####%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%######****************************####%%%#############%
%@#+-...............................................................:
+@#*********************************************************%@+
+@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%##################################################################################
#########%%%%%%%%%%%%%%%%%%%%%%%%%
%################################################*###%%%%%%
%#############***#########%%%%%%%%%%%%%%%%%
%##************************************###%%%############%
%@#*-...........................................................:-%
%******************************++++************************%@=
:%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%##################################################################################
#####%%%%%%%%%%%%%%%%%%%%%%%%###################################################%%%
%%#######***##***********##########%%%%%%%%%%%%%%%%
%###***************************************##%%%###########%
%@=.........................................................:--
+@#*****************************====+**######***************#%@=
-@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%
%##################################################################################
%%%%%%%%%%%%%%%%%%%%%%%##################################################%%%
%#####**#########***#####################%%%%%%%%%%%%%%%%%
%##****************************************###%%########
%@*. ........................................................:-:=%
%*****************************+===+*#########**************#%@=
+@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%@%##################################################################%
%##########%%%%%%%%%%%%%%%%%%%%#################################################%%%
%########################**#############%%%%%%%%%%%%%%%%%%%%%%%%%%
%##************************************+++**##%%%###
%@#: .................................................:......:----
*@#********************************#############*************#%@-
.#@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%@@%%###############################################################
%#########%%%%%%%%%%%%%%%%%%################################################%%%
%######################*****########%%%%%%%###########%%%%%%%%%%%%%%%%%%
%##**************************************++++*#%%%@
%: .............................................:::---:.....:---:=@#***************
****************###############*************#%%-
:@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%@%
%#####################################################################%%%%%%%%%%%%%
%##################################################%%
%#######################****######%%%%%%####****########################%%%%%%
%##***************************************++++*
%@+:::.....................................:::::---------:...:------
#@******************************#################*************#@%:
=@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%@@%%################################################################
%%%%%%%%%%%%%%################################################%%
%#################################%%%%####*************################******####%%
%%#*****************************************++*#%%
+=----------------------------------------------------:::-------
*@#****************************####################************#@%:
.*@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%@@%%#################################%##%%######################%
%%%%%%%%%%#################################################%%
%############################*###%%%
%###*********************############***********###%%
%#******************************************++*#%
%*+-----------------------------------------------------------=@
%****************************#####################************%@@+.
:%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%@%%#################################%%######################%
%%%%%%%################################################%%
%##################################%%
%###***#*********************##############************#%
%#*******************************************++++*#%
%#*=-------------------------------------------------------
#@#**************************#######################************%@@%=.
-@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%@@@%%#######################%###########%%###############%%
%%%%%###############################################%%
%##################################%%
%#####*##*************************###*******#####***********##
%#********************************************+++++*#%@
%##*+==-----------------------------------------------
+@#*************************##########################**********#%@%@#-
+@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%@@@@%%%###**+*#@%####################%%###########%%#############%%%%
%%%##############################################%%
%###################################%
%###*##**###*************************###**********####***********###***************
******************************++++++*#%%%%%@@%##**+
+===-----------------------------------:=@
%*************************###########################**********#%@@%@*:
.#@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%@%%%%##*++++============*#%%%################%%%%%%#######%%#############%%%%
%#######*+++*#################################%%
%#####################################
%##*#######*##*************************###************####***********##************
**********************************+++++++#%%#####%%%%%%%@@%
%*---------------------------------
#@#***********************#############################**********#@@@%@@=.
.%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%@#+========================+*%@%##############%%%%%#######%%###########%%%%
%#########+====*#############################%%
%######################################
%#########**####*************************###**************###**********************
**************************************+++++++*%%#############
%@=-------------------------------:*@
%***********************###############################*********#@%##%%#:
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%@%*+==============+*####%%%%@@@%%############%%#%%#%#######%%#%##%#%%%%
%###########*+++*############################%
%######################################################*##*************************
*##***************##**************************************************************+
++++++*%%###########%@*--------------------------------
=@@#*********************#################################*********#@%+*%@@+.
=@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%@%#++==========+#%@@%#####################%%#%%##%%####%%%%#%%##%%%%
%#########################################%
%#############################################################*********************
*****#****************###**********************************************************
****++++++++*%%##########@%=--------------------------------
%@#********************###################################*********#@%++#@@#:
.*@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%@%#++=========++*#%%%%########%%####%%%%%#%####%###%%%%%###%%%%
%########################################%%
%###############################################################*******************
************************###********************************************************
*******+++++++++*%%########%@*--------------------=++=--------*@
%********************#####################################********#@%+=+%@@=
:%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%@@%#+=============+*#%%%%##%%%%###%%%%%%%#%%#%%#%%%%%%%%%%@%
%#######################################%%
%#**###############################################################****************
***************************#
%#****************************************************************++++++++++*%
%#######@%=---------------=+#%%%@#=------:
+@@#*******************######################################********%@#+==#%@*.
-@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%@@#*+=====================*#%%%%%##%#%#%%%%%%%%%%%####%#%%%@%
%#######################################%
%##***######################################################################*******
******************************#
%#*****************************************************************+++++++++++*%
%#####%@#----------=+*#%%%%###%@%=------
=@@#******************#########################################******#%@#+==+%@#:
=@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%@%#*++==========----------------=+#%@%%%%#%%##%%%%%%%%##%#%%%@%
%#####################################%%
%#*****#######################################################################*****
********************************#
%#******************************************************************++++++++++++*%
%####%@*==++*###@%%%##########%%=------#@
%******************##########################################******#%@#===+#@%-
.*@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%@%#++=====-----------------------------=+#%@%%%%%%#%%%%##%%%%%@%
%#####################################%%
%#******########################################################################***
**********************************#
%#*******************************************************************+++++++++++++*
%%###%%%%%%%%#################%@+-----+@
%#****************#############################################*****#%@*====*@@=
.#@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%@@%#+====------------------------------------==++#%@%%%%%%%#%%%%@@%
%####################################%
%##*******#########################################################################
##****************##*****************#
%#********************************************************************+++++++++++++
+#%%###########################%@#----
=@@#****************#############***#############################******%@%*====*
%@+.
:%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@
%#+==----------------------------------------=======+*%@@%%%%%%@@%
%###################################%%
%#********#########################################################################
#######*************##*****************%
%#*********************************************************************++++++++++++
+++#%%##########################%@#=--=@@
%#***************###########*********###########################****#%@%+====+%@*.
=@%%%%%%%%%%%%%%%%%%%%%%%%%%@
%#+=------------------------------------------============+#%@@@@@%%
%##################################%%
%#*********########################################################################
#########*************##****************#%
%***********************************************************************+++++++++++
++++*%%###########################%@*--
#@@#***************##########**************########################****#%
%#*====+#@#:
+@%%%%%%%%%%%%%%%%%%%%%
%@@#+=---------------------------------------------===============*@@@%
%##################################%%
%#**********#######################################################################
############************##****************#
%#************************************************************************+++++++++
+++++++*%%###########################@#=*@@
%#***************########*******************#####################****#%%#*=====#@#:
.*@%%%%%%%%%%%%%%%%%%%@
%*=----------------------------------------------================+%@%%
%#################################%%
%#***********######################################################################
################**********##****************#@#************************************
************************************++++++++++++++++++#@%##########################
%@%@@%#****************###**#**********************#####################***#%
%#*=====*@#:
.#@%%%%%%%%%%%%%%%
%@#+------------------------------------------------================*%@%
%##################################%
%#***********#####*################################################################
###################**#******##****************%
%#*************************************************************************++++++++
++++++++++*%%##########################%
%@@@#****************##****************************###################****#%
%#*=====*@%:
:%%%%%%%%%%%%%%%
%@@#*+==--------------------------------------------================*@@%
%#################################%%
%#***********#####**###############################################################
###################**##******##***************#%
%#**************************************************************************+++++++
++++++++++++#%%##########################%@@
%#***********************************************###################*++#%%#*=====*@
%:
:@%%%%%%%%%%%%%%%%%%%@@
%##*+====================------------------================#@@%#
%###############################%%
%##**********#####****#############################################################
#####################*##*******##***************#@
%***************************************************************************+++++++
+++++++++++++*%%##########################
%@@#************************************************###################*+*%
%##*=====*@%:
-@%%%%%%%%%%%%%%%%%%%%%%%
%@@@%%%##**++======---------------------===============*@%%%
%##############################%%
%####*********####******###############################
%#####################################################*******##**************#
%@#****************************************************************************++++
+++++++++++++++++#%##########################%@
%************************************************###################*++*%
%##*=====*@#.
=@%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%@%+==-----------------------===============*@%%%%%%%%%%%%%%%%%%%%%%
%##########%%%
%#####********####******###########################################################
###########################**#**+#%#*#************#%
%#*****************************************************************************++++
+++++++++++++++++*%%##########################
%#*********************#**************************###################*++*
%###*=====#@#.
+@%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%@%+=------------------------===============#@%%#%%%%%%%%%%%%%%%%%%%%%%%
%######%%
%#######******####********#########################################################
#############################*##*++###**************#@
%##****************************************************************************++++
++++++++++++++++++*%
%###########################*************************************************######
############*+++#%###*=====#@*.
.*@%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%@#=--------------------------===---=======+%@%%%%%%%%%%%%%%%%%%%%%%%%%#%%###
%%%
%#########*****####*********#######################################################
##############################*##**+*####*************%@
%##*****************************************************************************+++
++++++++++++++++++++#
%#######################**#**************************************************######
###########*+++*%%###+====+#@+
.#@%%%%%%%%%%%%%%%%%%%%%
%%%%%%@#=--------------------------------=======+%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%##%
%%%##########***####***********############################
%##########################################################**++*####*#**********#%
%###*****************************************************************************++
++++++++++++++++++++++#%
%######################****************************************************########
#########*++++#%####+====+%@=
:#@%%%%%%%%%%%%%%%%%%%%
%%%%%@#=-------------------------------========*%@%%%%%%%%##%%%%%%%%%%%%%%%%%#%#%%%
%###########***####************######################*####
%#*######################################################*##*+++*%####***********#@
%###******************************************************************************+
+++++++++++++++++++++++*%
%####################******************************************************########
########*++++*%%####+====+%@-
:%%%%%%%%%%%%%%%%%%%%%
%%%%@#=-------------------------------========*@@#%%%%%%%##%%%%%%%%%%%%%%%%%%#%%%%
%############**####*************#####################**###
%***########################################################*++++*%####**********#
%@
%###*********************************#********************************************+
+++++++++++++++**+++++++*%
%####################*****************************************************#########
#######*+++++#%#####+====*@%:
:%%%%%%%%%%%%%%%%%%%%
%%%@#=---=---------------------------========*@%#%%%%%%###%%%%%%%%%%%%%%%%%%%%%%
%###################**************###################***###
%*+*########################################################**++++*
%###***********#@@#####********************************##**************************
******************+++++++++++++++*****+++++*%
%###################******************************************************#########
######*+++++*%#####*=====#@#.
-@%%%%%%%%%%%%%%%%%%
%%@#=-------------------------------=======+#@%%%%%%%####%%%%%%%%%%%%%%%%%%%%%
%####################****************#################**+*##
%*+**#######################################################**+++++*%###*#*********
%@
%#####********************************###******************************************
*++++++++++++++++******+++++%
%##################*******************************************************#########
#####*++++++#%#####*====+%@=
-@%%%%%%%%%%%%%%%%%
%@%=-------------------------------=======+#@%%%%%%%#####%%%%%%%%%%%%%%##%%%%
%####################*****************################**+*##%*+
+*########################################################*++++++*%#####*****#**#%@
%
%####*********************************##*******************************************
++++++++++++++++*********+++%
%#################*******************************************************##########
####*++++++*%######*====+%@-
=@%%%%%%%%%%%%%%%
%@%=-------------------------------=======+%@%%%%%%######%%%%%%%%%%%%%%%%%%%
%######################*****************##############*****##
%*+*+*################################################*#####**+++++++#
%#####***#*#*##@@%
%#####*********************************##*******************************###********
*+++++++++++++++***********++%
%################********************************************************##########
###*+++++++########+====*@#.
=@%%%%%%%%%%%%%%@
%=-=-----------------------------=====+=+%@%%%@%#######%%%%%%%%%%%%%%%%%%
%########################******************##########********#%#+
+*+*#####################################################**+++++++*#%#####*#*#***#
%@%%%#####*********************************###*****************************%#++#
%#******+++++++++++++++**************
%@################*******************************************************##########
##*++++++++*%#######+====#@+
=@%%%%%%%%%%%
%@@+------------------------------========*%@%%@%#########%%%%%%%%%%%%%%%%%
%#########################********************************+**#
%#****+*####################################################**++++++++*#
%######***#**#@@%%
%######*********************************###*+*************************#%-::-=%
%*****+++++++++++++++***************
%@###############********************************************************##########
#*++++++++*########*====+%@-
=@%%%%%%%%%%
%@*=--------------------------===========*%@%@%%##########%%%%%%%%%%%%%%%%%####
%#####################*****************************+****#
%#*+*+*+*###################################################**+++++++++*
%######***##*#%@%%%%
%#####*********************************###**+***********************#%-:::-:-+
%#****++++++++++++++***************#
%@##############********************************************************###########
*+++++++++#%#######*====*@#.
+@%%%%%%%%
%@#=----------------------===============*@@%@%###########%%%%%%%%%%%%%%%%#####
%#######################********************************#%
%*+*****+*#################################################**++++++++++*
%########*#**#%@%%%%%######*********************************#%#*++
+********************#%=::-#-:::=#%***++++++++++++++****************#
%@#############********************************************************###########*
+++++++++*#########+====#@=
=@%%%%%%%@
%=------------------===================*@%@%############%%%%%%%%%%%%%%%%#####%
%########################******************************##
%********+**###############################################*++++++++++++#
%########*###%@@%%%%%%#####**#*******************************#%#*++
+*******************@+::-#%%*-::-#%**++++++++++++++*****************#
%@############*********************************************************##########*+
++++++++*##########+===+@%:
=@%%%%%
%@+-------------========================#@%@%#############%%%%%%%%%%%%%%%#####%%##%
%%#####################*****************************#
%#+********+*#############################################**+++++++++++++#
%#######*####%@@%%%%%%######*#*******************************#%#**+++
+****************%*-:-*%**%#=::=%#**+++++++++++++******************#%
%###########*********************************************************##########*+++
++++++*##########*+===#@+.
+@%%%
%@#=------==============================#@@%###############%%%%%%%%%#%%%######%%%%
%##########################**************************#
%#*************###########################################*++++++++++++++*%
%######*####%@@@@@%%%%%#####**#*******************************#%#**++++
+*************#%-::+%***#@+::=%#**+++++++++++++*******************#%
%##########**********************************************************#########*++++
++++++*%#########*===+%@-
+@%%
%@*============================+++*#+=+%@%################%%%%%%%%%%%%%#######%%%%%
%%%%%#######################***********************#%
%***************########################################**+++++++++++++++*%
%########*#%%@*=#@@%%%%%#####**#****************************#*#%%***++++++
+*********#%=::=%#***%#---*#+*#*++++++++++++********************#%
%#########******+===+***********************************************#########*+++++
+++++*###########+===*@#.
+@%%%@@%%
%####***********#####%%%%@@@@@**@@##################%%%%%%%%%%%%######%%%%%%%%%
%###########################********************##
%************+*****#####################################*+++++++++++++++++#
%########*##%@%=--+#@@%%%######*********************************#%#***++++++++
+******%+-:-%#***#%=-:+@*++***++++++++++********************#*#@
%########****#*+====*#**********************************************#######**++++++
++++*############+==+%@-
.+@%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%%%%###################%%%%%%%%%%######%%%%%%%%%%
%##############################*****************##
%#***********+*******##################################*++++++++++++++++++*#
%##########%%@+-==-=+%@%%%##%##**********************************%%#***+++++++++++
+*%*-:-*%****%+--=%#++++***+++++++++*********************#*#@%#######*****#*+=+
+*#**********************************************#######**+++++++++
+*############*===*@#.
+@%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%@@@%#####################%%%%%%%%%#######%%%%%%%%%#%
%###############################***************#%
%**********************##############################**++++++++++++++++++*##
%#########%%@#=-==-=-=*%@%%#####**###****************************#%%****++++++++++
+#%-:-+@*+++##---##+++++****++++++++***********************#
%@########**********************************************************#######*+++++++
+++++#%###########*==+%@-
+@%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%@@%%#####################%%%%%%%%%########%%%%%%%%%#####%
%#############################************##@#*********************+**#############
############***++++++++++++++++++**##%%########%%@%+-=--=-==-=*%@%#
%##**********************************#@#****+++++++++*@=::=%*+++*@=--+%*++++++*#*++
++++++************************#%
%#######***********************************************************######*+++++++++
+++*%############+==*@#.
.+@%%%
%%%%%%%%%%%%%%%%%%%%%%%%%@@########################%%%%%%%%########%%%%%%%%#######
%################################*********##%
%*********************+*******###################**++++++++++++++++++++*####%
%#######%%%@*-==------==-=#@%%###*****#***************************#%%#****++++++++%
+::-##++++%*--=%*++++++++*#*++++++************************#*#@
%######*********************************************************#*######*++++++++++
++*%%##########%*==+%@-
.+@%%
%%%%%%%%%%%%%%%%%%%%%%%%@%**#######################%%%%%%%#########%%%%%%%%######%
%##################################******###@#****************************+********
********+*#*++++++++++++++++++++*#####%########%%@#=-==-=--==-----+#@%
%###***##***************************#@#*****++++++##-:-*%++++#%=--*#++++++++++*#*++
++
+*#************************##@######***********************************************
**********#**#####*++++++++++++*%%############*==*@*.
+@%
%%%%%%%%%%%%%%%%%%%%%%@@#+*#######################%%%%%%%##########%%%%%%%#######
%#####################################****##%%*****************************+*++++++
++++++++++*#*++++++++++++++++++**#####%%#######%%@%+-=-=--=--=-------+%@
%##*###*#*#************************#%%#*****++++*%=:-=%*+++*@+--+%*++++++++++*##*++
+**#************************##%
%#####*********************************************************#**#####*+++++++++++
+*#%#############+=+%@:
=@
%%%%%%%%%%%%%%%%%%%%%@%++*########################%%%%%%############%%%%%%#######
%######################################**##%@#******#************************++++++
+++++++++*#*+++++++++++++++++**#######%%######%%%@*-==-===------:-----=#@
%##**###***************************#@%******++*@+-:=%#++++%*--=##+++++++++++
+*##*+******************************#%
%####*************************************************************####*++++++++++++
+#%#############*+=#@=
=@%%%%%%%%%%%%%%%%%%@@#++#########################%%%%%%##############%%%%%##
%###########################################*###%%#*****##************************+
++++++++++++++*#*++++++++++++++++*#########%%#####%%%@#=-=-=-=-==---:..:-----+%@
%##*#********#********************%@#*******%*---##++++*%=--*%+++++++++++++
+*#***#**#**************************#@###******************************************
################**#**###**++++++++++++#%%#############*=+@%.
..::.
=@%%%%%%%%%%%%%%%%@%*=+##########################%%%@%################%%%%#%
%##############################################
%@##****###*****************************++++++++++*#*++++++++++++++**##########
%#####%%%@%=-=-===------:.....:----=*@@######**####********************#@%#*****
%#---*%*+++*%+--+%*+++++++++++++++*#*#**#*************************#*#%
%##*********************************#********################*#*+*####*+++++++++++
+*%%##############++%@-
.-======:.
-%%%%%%%%%%%%%%%@#+=+#########################%%%%@%##################%%%%%%#%
%###########################################%
%##***####****************************++++++++++*#*++++++++++++++*###########%%####
%%%%@+=======------........:----=#@%##*####*#******************#**#%@#****#%=--+
%#**++##=-=##+++++++++++++++++*#********************************#%
%##*****##**######********##****************####*****##*##***#*++*###*+++++++**+++*
%%##############*=*@*
:==========:..:-----:.
-%@%%%%%%%%%%%@*==+#########################%%%%%%###################%%%%%%%
%###########################################
%@###**######***************************+++*+++*++*#*++++++++++++*#############%
%####%%%@#=-----------:...........:----+%@##*#**#*#*********************#%%#**#%+--
=%#*****@=--+%*++++++++++++++++
+**#*#***************************#**#@##***##***###################################
##**###***##**#*+++*###*++++++**#****#%###############++@%:
-====================-.
:#%%%%%%%%%@%*==+#######################%%%%%%%%####################%%%%%%
%############################################%
%###**######*****************************+++++++*##*+*++++++++**##############%%###
%%%@%=--===-------..............:---=#@%#*##**#****************#*#**#%@#**%*=-=#
%****#%*=-=%*++++++++++++++++++**#*#*******************************%
%#*****############################################**#***##*+++++*##*++++++**######
%%##############*+#@-
.-=====================-
.#@%%%%%%@%+==+#######################%%%%%%%%#####################%%%%%%
%############################################@
%###*########*****************************++*+++*#**++++++++**################%%%%%
%%%@+-=----------.................:---+%@%##***********##********#*#*#%%###=-=*
%#****%%=-=*#++++++++++++++++++
+*#**#****************************#*+#@##**+***####################################
#########**#**++++++*##*+++++**#######%################**@*.
..:-=====================-
+@%%%%@#+==+#####################%%%%%%%%%%#######################%%#%
%############################################%
%####*########*******************************+*+*##*+++++++**#################%%%%%
%%%@*=---=--=----...................:----*@%##########**********#*###*#%%%%+=-
+@#*#**#@+==+%*++++++++++++++++++********#************############*#***%
%##**+*****##########################################*#**++++++++*#*+++++*#########
%################*@@:
.:-========================-.
-%@%@#===+####################%%%%%%%%%%%########################%#%%
%############################################@
%##############*****************************+**+*##*+++*+**###################%%%%%
%%@%=-=-=-------......................:---+%@%##############****###***##%@*===
%#*#**#%#===##****+++++++++++++++*###*****************#############***+#@#*#**+
+******#*######################################**+++++++++*##*+++*##########
%#################%@-
:==========================-.
:%@*===+###################%%%%%%%%%%%%#######################%%%%%
%############################################
%@################****************************+****#*++++**#####################%%%
%%%@%+-=-=--=---:.........................:---*@%########***########**##*#@#===*
%#**#*#%+==*%#*#******++++++++++**###*####*****#####################**+*%%###**+++
+***********##############################**++++++++++++*#*+++*##########
%#################%@+
.-===========================-.
.*@*===+##################%%%%%%%%%%%%%%########################%#%%
%############################################%
%##################******************************##*+++*#######################%%%%
%%@*---==-----:............................:--=#@%##########****####*#**#%+==+
%####*#%*==+%#***#*********++++++******######**#######################*++*@####**++
+++++*******************################**++++++++++++++*#**+*###########
%##*##############%@#.
.-============================:
.*%+===+#################%%%%%%%%%%%%%@%########################%%%%
%############################################%@
%#####################*************#*************#*+**########################%%%%%
%@*=-=--=----:...............................:--+%@%#############*##*#*#%*==+#
%#######===*%#*#*##***************#*#################################***+*%%###*#*+
++++++++++++++++++++++*************##***+++++++++++++++++*#*+*############%####
%###########%%@:
.-===========================:
.#%+=+=+################%%%%%%%%%%%%%%%%########################%#%%
%#############################################
%@#########################*****##############****##**##########################%%%
%%@%=-=-=-----:..................................:-=#@%##############****
%#===*@######%*==+%#*##*#************#****####################################*+
+#@#*####*++++++++++++++++++++++++++++++++++**#**+++++++++++++++++
+*#***############%#####%###########%@=
..::-===========-..:------:
.#%+===+*##############%@%%%%%%%%%%%%%%%#%%#######################%%
%#############################################%@
%##############################################################################%%%
%@%+-==-=----:....................................:--+%@%##############*#%+==+%@
%####%#===#%######*#########****##*####################################*++*%
%#*####**+++++++++++++++++++++++++++++++++**#**++++++++++++++++++*#*#############
%######%##########%@*
-=========-.
.#%+===+*#############%@@%%%%%%%%%%%%%%%%%#%#####################%%%
%##############################################%@
%#############################################################################%%%%
%@+-=-=-----:.......................................:-=#@%##############%*==+#@%
%####%+==*%#*#*#*#*####################################################*++
+#@########*+++++++++++++++++++++++++++++++++*##*++++++++++++++++++*###############
%######%%#########%@%.
:========-.
.#%+====*#############%@@%%%%%%%%%%%%%%%%#%%%%####################%%
%##############################################%%@
%#############################################################################%%%
%@*=====----:..........................................:-+%%%###########%%+==*%%%%
%##%*==+%#################*############################################*++*%
%########**++++++++++++++++++++++++++++++++*#**+++++++++++++++++*################
%######%%########%%@:
:-====-:
.#%+====+############%@@@@%%%%%%%%%%%%%@%#%%%%%###################%%%
%##############################################%@@
%#############################################################################%%
%@#=-=-=----:............................................::=*@%%#########@*==+%%%%@
%##%+==*%##############################################################*++
+#@##########*+++++++++++++++++++++++++++++++**#**++++++++++++++++*################
%#######%%########%@=
....
.*%+==+=+*##########%@*#@@%%%%%%%%%%%%%%%##%#%%%##################%%
%###############################################%
%@@#############################################################################%%
%@%=-==-----:...............................................:-+%@%%######%#+=+#%%%
%@@#%*==+%###############################################################*+++*@
%##########**++++++++++++++++++++++++++++++*##*+++++++++++++++**################
%#######%%########%@+
.
*@+=====*#########%%#:=@%%%%%%%%%%%%%%%%%#%#%%%%##################%%
%###############################################%%@
%#############################################################################%%@%
+-=-=----:..................................................:-#@%%#####@+=+*%%%%%%@
%@+=+#%#*#############################################################*++++%
%############**+++++++++++++++++++++++++++++*#**+++++++++++++*##################
%########%%#######%@#.
+@*====+*#########%@= :@%%%%%%%%%%%%%%%%%#%%%%%#%#################%%
%###############################################%%%@
%#############################################################################%
%@+===-----:....................................................::+%@%###@#+=+#%%#%
%%%@#+=+%#################################################################*++
+#@##############***+++++++++++++++++++++++++++*#**+++++++++
+***############################%%######%@@:
=@*=====*%######%#@*: .#@%%%%%%%%%%%%%%@%%#%%%#%#%################%%
%###############################################%%%%@
%#############################################################################
%@*===-=--:........................................................:=#@%%%%+=+*%%##
%%%%@*=+#%#*###############################################################*+++*%
%################*******************++++++++**#*+++++++
+***###############################%%#####%%@-
-
@#+===+#%#####%%%%= =@%%%%%%%%%%%%%%%%%#%%#%%%#%###############%%
%################################################%%%%@
%############################################################################
%@#======----=++****#############********++++===--:::.................:+%%@*+++#
%###%%%%@#=*%#*################################################################*+++
+#@####################################*****+++*#**+++****########################
%#########%@%#####%@=
:%%
+===+#%####%%%%*: :%@%%%%%%%%%%%%%%@%#%%%%#%%#%##############%%
%################################################%%%%@@
%###########################################################################%@%
+=+**##%%%%#################*************************+++===--::.......-#@#++*%%####
%%%@%*#%##################################################################*+++
+#@#########################################*****#*****###########################
%##########%%%####%@*.
.#%
+===+#%####%%%@=. +@%%%%%%%%%%%%%%@%####%%%%%%%#############%%
%################################################%%%%%@%%########
%#################################################################%@
%#############**+++===------:::::................:::::----====++++++==-:::+%%*#
%#####%%%%@%%####################################################################++
++*%%###########################################**#################################
%###########%%####%@#.
+@+===*%%###%%%@#: :@@%%%%%%%%%%%%%%%%###%%%%%##%############%%
%#################################################%%%%%@%%########
%#################################################################@@####**+==------
----:::::..........................................:::--====*%@%%######%%%%@
%#*##################################################################*++++%
%##################################################################################
########%@%###%%@:
-
@*==+*%%###%%%@+. .*@%%%%%%%%%%%%%%@%#%%%%%%%%%%%%##########%%
%#################################################%%%%%%@%#########
%################################################################
%@#+==-----------:::..........................................................:-+%@
%%%%#%%%%%@@####################################################################*++
++#@###############################################################################
%###########%@%##%%@-
:%%+=+#
%%%#%%%%%- -@%%%%%%%%%%%%%%%%%#%%%%%%%%%%%%#########%%
%##################################################%%%%%%@%#########%
%##############################################################
%@*-----------::.................................................................:-
*@%%%%%%%%%@@%#*#################################################################*+
++
+*@###############################################################################
%############@%%#%%@=
.+@*=+#%
%%%%%%%#: .*@%%%%%%%%%%%%%%%%##%%%%%%%%%###########%%
%##################################################%%%%%%%@%#########%
%#############################################################
%@*---------::.....................................................................
:-=%%%%%%%%%
%@@##*#################################################################*+++*%
%##############################################################################
%############%@%#%%@+
-@#=+#%%
%%%%%@+. -@%%%%%%%%%%%%%%@%#%#%%%%%%%%###########%@
%###################################################%%%%%%@@%#########%
%#############################################################@*=-------:..........
................................................................:-#@%%%%%%%%@
%###################################################################*+++
+#@##############################################################################
%#############%@%%%@*.
.#%++%%%%
%%%%%- .*@%%%%%%%%%%%%%%%%#%%%%%%%%%%%%%%#####%%@
%###################################################%%%%%%%@@%#########%
%#########################################################*##@#=-----:.............
............................................................... .:-+%@%%%%%
%@@###################################################################*+++
+#@##############################################################################
%##############%@%%@%:
=@**%%%%%
%%@#: -@%%%%%%%%%%%%%%@%#%#%%%%%%%%%#%%####%%%@
%####################################################%%%%%%%@@%#########%
%########################################################*##@%=-
=---...............................................................................
..::=#@%%%%%%@%##################################################################*+
+++*@%#############################################################################
%##############%@@@%@-
:%#*#%%%%%
%%#. .*@%%%%%%%%%%%%%%%%##%#%%%%%%%%##%###%%%@
%####################################################%%%%%%%%@@%#########%
%##########################################################@%=-=-
=-:................................................................................
..::-*@%%%%%@%#*#################################################################*+
++*%%##############################################################################
%##############%@@%@+
+@##%%%%%
%@+ :@%%%%%%%%%%%%%%%%#%%%%%%%%%%%%%%#%%%%%@
%#####################################################%%%%%%%%@%%########%%
%######################################################*##@%=-
===-:..............................................................................
.......:-+%%%%%
%@###################################################################*+++
+#@##############################################################################
%###############%@%%@:
:%%#%%%%%
%@= =@%%%%%%%%%%%%%%%%#%%%%%%%%%%%%#%%%%%%@
%#####################################################%%%%%%%%%@%%########%%
%######################################################*#%%+--
==-:...............................................................................
........:--#@%%
%@@###################################################################+++
+#@##############################################################################
%################@@#@=
=@#%%%%%%%-
.%@%%%%%%%%%%%%%@%#%%#%%%%%%%%%%%%%%%%%
%#####################################################%%%%%%%%%%@%%#%######%
%####################################################*#*#%@+-=-
=--................................................................................
.........:--*@%%%@
%##################################################################*+++*@
%#############################################################################
%################%@##%.
.%@%%%%%%%-
-@%%%%%%%%%%%%%%%%#%%%%%%%%%%%%%%%%%@%
%######################################################%%%%%%%%%%@%%#%######%
%#####################################################*#%@+-==-
=-.................................................................................
..........:--+@@
%@@#*################################################################*+++*%
%#############################################################################
%#################%@#@-
-@#%%%%%%:
.#@%%%%%%%%%%%%%@%%%%%%%%%%%%%%%%%%%@%%
%#####################################################%%%%%%%%%%%@%%#%######%
%#####################################%##############*#%@*-=--
=-:................................................................................
............:::=%@%@
%###*##############################################################++++
%@#############################################################################%
%#################@%%#.
.*@%%%%%@-
:@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%%
%######################################################%%%%%%#%%%%@%%#%######%
%#####################################%######********#%@*-=-
==-:...............................................................................
................-:=#@@@#*##########################################################
######*++
+#@#############################################################################%
%#################%@%@-
:@%%%%%@=
+@%%%%%%%%%%%%%@%%%%%%%%%%%%%%%%%%@%%%##
%###################################################%%%%%%%#%%%%@%%#%######%
%####################################%#######********#@*==--
=-:................................................................................
.................:--#@@
%#################################################################*+++#@
%############################################################################%
%##################%@@*.
-@%%%%@+.
.%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%%%%
%######################################################%%%%###%%%%%@%%#######%@
%####################################%#######**#*#**#@#=-
===--..............................................................................
.....................:--#@
%#*#*#############################################################*+++*@
%############################################################################%
%###################%%@-
=@%%%%@:
-@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%%%%%
%#####################################################%%%%%#%#%%%%%@%%#######%@
%#################################*#%#########**#**#@#=-
==---...................................................::--===+++++++++++++
+====---::....................:-=
%@##################################################################*++*@
%############################################################################%
%###################%%@*.
.*@%%%%@=
.*@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%#
%###################################################%%%####%%%%%%%@%%#######%
%#############################*#*#*#%%########*#*#*#@%=-
=----.............................................:-==++++
+==------------------::::::::::::.................:-+@
%#################################################################*++*%@
%###########################################################################%%
%###################%%@-
.*@%%%%%%.
:@%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@%%%%%%
%#####################################################%%####%#%%%%%%%@%#######%
%############################**#####%#########****#@%=-=-
=--:.......................................:-======---------==++**############****+
+=--::......:::--==**+=-::-
#@#################################################################*++*%@
%#########################################################################%##%
%####################%@#.
.%@%%@**@+
=@%%%%%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%%%
%###################################################%%%######%%%%%%%@%#######@
%##################################%###########**#%%=-
=----:....................................:--=--::::::--=+*##%%@@%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%#*=-.......+@
%#################################################################+++#@
%#######################################################################%#%##%
%#####################%@=
:@%%%@*+#@=
.#@%%%%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%%%
%###################################################%%%#######%%%%%%%@%######%@
%###############################*#%%##########**#@%+-=-
=---.................................:----:::::::--+#%%@%%%%######################%
%%%%%%%%%%%%%%%###*+-::......:
%@#################################################################*++#@
%#######################################################################%#%##
%@#####################%@%:
:%%%%%+++#@=
:@%%%%%%%%%%%%%%%%%%%%%%%%%@@%%%%%%%%%
%####################################################%%#######%%%%%%%%@%######
%@##########################*####*#%%#############@%+-=-
===-...............................:---::::::::-+*%%%%%
%###################################%%%%%%%%%%%%#%%%#*+-:..=@
%################################################################*++*@%
%######################################################################%#%##%@
%#####################%@+
.#@%@#++++#@=
=@%%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%%%%
%####################################################%#########%%%%%%%%@%######%
%########################**##**#*#%%############%@+-=-
==--:.............................:-::::::...:+#%%%%%%%%%%%
%################################%%%%%%%%%%%@%%%%##%%##+
+@@################################################################*++*@@
%####################################################################%###%##%%
%######################%@-
.*@%%#++++
+*@*. .%@%%%%%%%%%%%%%%%%%%%%%%@@%%%%%%%%%%%%#########################%%
%########################%#########%%%%%%%%@%#####%@
%#######################***#**#*#@%##########*#%%+-=-
==--:............................--:::::....-*%%%%%%%%%%%%%##################%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%@@@%%%%%%%@%#####################
%##########################################*+*@@
%############################################################################%@
%#####################%@#.
=@%%#++++++*
%#: -@%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%%%%%%%###################%%%%##%%%
%#################################%%%%%%%%%%%#####
%@########################*#**#**#%@%####*##*#*#%@+-----
=-:...........................-=-::::....-#%%%%%%%%%%%%%######%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%@@%%%%%@@#*###############%%
%############################################*+*%@%
%###################################################################%%%%%%%%%@@
%#####################%@+
-@%%#++++++++
%@=. +@%%%%%%%%%%%%%%%%%%%%@@%%%%%%%%%%%%%#################%%%###%%%%%
%#######################%##########%%%%%%%%%%@#####%
%####################***#******#%@@########*#*%@+=-=-
==--...........................--::::....-#%#%%%%%%%%%%%%%%%%%%
%##*****************##%%%%%%%%%%%%%%%%%%@@@@@@%%%%%%%%%%@@%#############%%
%###############################################*+*%@%
%###################################################################%%%%%%%%%@@@
%#####################%@-
.#@%%*+++++++
+*%#- :%@%%%%%%%%%%%%%%%%%%%@%%%%%%%%%%%%%%%#############%%%%%%%#%%%%%%
%###################################%%%%%%%%%%%%###%@
%#################*************%@@%#**######*%@*--=-
=---:..........................::::.... .+##%%%%%%%%%%%%%%%%%%%#**********##
%######***++++++================++*##%@%%%%%@@%#########%%%
%###################################################**%@%
%#################################################################%#%%%%%###%@@@@
%#####################@#.
=@#%*+++++++
+++#@#-=@%%%%%%%%%%%%%%%%%%@@%%%%%%%%%%%%%%##########%%%%%%%%%%%%%%%%%%%
%###################################%%%%%#%%*+@%###%@############**##**************
%@%%%##*****#*%@*==-=--=-:...................................:+*#%%%%%%%%%%%@@%%%%
%#**##%%#%###**+++*****################*******+++==---+*#%%%%@@######%%@
%######################################################**%@%
%################################################################%%#%%%%####%%@@@@
%####################%@=
.#@%#+++++++
+++++#%@@%%%%%%%%%%%%%%%%%@%%%%%%%%%%%%%%%%####%####%%%%%%%%%%%%%%%%%%%
%####################################%#%%%%%*==#%###%%############*****************
%@%*#%#*#*****%@*--=-----:...................................-+*#%%%%%%%%@@@@%%%@@@
%%##**++++**############################************+==--=*%@@@%##%@@%#**#
%####################################################**#@%%
%###############################################################%%%%%%%%####%@@@%@
%####################@@:
-@%#+++++++
++++++*@@%%%%%%%%%%%%%%%@@%%%%%%%%%%%%%%%%%%#%%%%##%%%%%%%%%%%%%%%%%%%
%######################################%##%%*===*@###@
%###########*****************#@%++@
%*******#@#==------:...................................-+*#%%%%%%%@@@@@%%
%#******####%###############################*##*************+==-=*%@@@@%#**#%%%%
%###################################################**#@%%
%##############################################################%##%%%%%%%%#%%@@@@@@
%####################@#.
=@%*++++++
++++++*@%%%%%%%%%%%%%%@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%#######################################%%%+====+%%#
%@#########*******************#@%+-+@#******#@#=-=--
=---. ..................................-=*%%%%@@%%%###*####%%%%%%%
%##################%%%%%%%%%%%%%%%%######************+==-+#@%*+*#%%%%%%
%####################################################*#@%%
%#############################################################%%##%%%%%%%%%%
%@@@@#*@%###################%@=
.*@#++++++
++++++#@%%%%%%%%%%%%%@%%%%%%%%%%%%%%%%%%%%%%%#%%%%%%%%%%%%%%%%%%%%%%%
%#######################################%%#=-=====#%#%%#####**********************
%@%+-=*@#*****#@#=-=------................................. ..:+#@%%%######%%%%%%%%
%%%%%%#######%%%%#####**+++++++++++++++++++++**###%##*********+=-=*@##@%%%%%%%%
%###################################################*#@%%%
%############################################################%%%%#%%%%%%%%%%%@
%@-.#@%###################%@:
.*@#+++++
+++++*@@%%%%%%%%%%%@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%######################################%%*========*@#@%#####********************#%@
%+-==#%*****#@#=-=------:........................... ..:-=*#%%%###%%%%%%%%%%%%%%%%%
%%%%%%%%###*+++===++++++++++++++++++++=. ..-====+#%#*********=-=*@%%%%%%%%%%%
%######%%##########################################*#@%%%
%############################################################%%%%#%%%%%%%%%%%@
%@: .*@%###################@#.
=@%++++
+++++*@%%%%%%%%%%@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%######################################%@%+========-+@%@#*#**********************#
%@%=-=-=%#****#%%=---=----:..........................:=*#%%%%#%%%%%%%%%%%%%%%%%%%%%
%%%%%#**++++++++++++*++++****************=. .-****+++*###*******+=+#@%%%%%%%%%%
%###%%%############################################*#@%%%
%##############################%############################%%%%%%%%%%%%%%%%%@@#.
=@%##################%@=
-#%*++
+++++#@%%%%%%%%@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%%%%%%
%####################################%%*==========-+%%%##**********************#
%@#=-==-+@#***#%%=--=-----:................... .:-=*#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%###*+++***********************************+=--=+++*####**+*%#********=+#@%%%%%%%%%
%%%%#################################################@%%%%
%##############################%###########################%%%%%%%%%%%%%%%%%%@+
-@@%#################%@:
.+@
%*+++++@@%%%%%%@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%%%%%%%#
%##################################%@#+-
============@@##**********************#@@*=---=-*@#***%
%=--------:..................-+*#%%%%%%%%%%%%%%%%%%%%%%%%%%%##*+=-=*##
%##***********************************#**+**++++++*#####*+=%%********+*%@%%%%%%%@@
%###################################################@%%%%
%###############################%%########################%%%%%%%%%%%%####%%%@+
:%@%################%@#.
.+%
%#++*@%%%%%@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%%%%%%
%###################################%%%*=============-+@%#**********************%@%
+--=-=-:#%**#%%=--------:..............:=*#%%%%%%%%%%%%%%%%%%%%%%%%%%#*+=-------:-%
%%%%#####*******************************#####*++++++++#####*-=%%*##*****+*@@%%%@@@
%#####################################################@%%%%%
%###############################%%#######################%%%%%%%%%%######%%%@%.
.#@%################%@+
.
-*%%%@%%@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%%%%%%%%%%
%#################################%@#==========---==-+@#*********************#%@#=-
==-=-.-@#**%%+--------:......... .:=*%%%%%%%%%%%%%%%%%%%%%%%@@#*+-::::::-:::... .#@
%%%%%%%%##**++++*##*#******************######*++++++++####%-.=%%*##**#***#@%@@%
%######################################################%@%%%%%
%################################%%######################%%%%%%%%########%%%%@:
.*@%%###############%@-
:@@@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%%%%%%%%%%#%%
%##############################%@%+====+++++++=-===+#@#********************#@%+=-=-
==-..=@#*%%=--------:.........-*#%%%%%%%%%%%%%%%%%%%%%%%#*=:.......::::... .+@%
%%%%%%%*+++++++*#####*****************######*++++++++*###%- .-%%#######*#%@
%#########################################################%@%%%%%%
%###############################%%%#####################%%%%%%%#########%%%%@-
=@%%###############@#.
:*@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@%%%%%%%%%%%%%%%%%%%#################
%#############%@%*==+========-:.::::=@#*******************#%@#=-=-=-=-...+@*#%
+--------:.......=#@@%%%%%%%%%%%%%%%%%%@%#+-:.. ............ =@%%%%%%%*+++
+++++*#####*****************#######+++++++++*##%- ..=@#########
%@##########################################################%@@%%%%%
%################################%%%#####################%%%%%%%#########%%%@+
-%@%%#############%@+
:
+#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%%%%%%%%%%%%###################%
%#############%%*======+++++++===-::-#@#*****************#%@#+---==-=-...:#%#%
+--------:......=%%%%%%%%%%%%%%%%%%%%#*=:.................. . :%%%%%%%%*++
+++++++#####*****************#######+==+==+==*##%- . .+@#####%%%%@
%#########################################################%@@%%%%%%
%################################%%%####################%%%%%%%%########%%%@*.
-#@%%#########%#%#%@:
.:+#@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@%%%%%%%%%%%%%%%%%%%###################%%
%###########%@#+=+**##%%%%%%%%%%%%###@%#****************#@%+=----=-=-....-%%%
+--------:. ...-#@%%%%%%%%%%%%%%@@#+-:....................... +@%%%%%#++
++++++++*#####******#*********######*=========+##%- .. :%%%%%%%%%
%@@#########################################################%@@%%%%%%%
%################################%%%%###################%%%%%%%########%%%@%:
.#@%%%##%##%%##%%#@#.
. .-*%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@%%%%%%%%%%%%%%%%%%%%%#%%%%#############%%
%###########%@%*+##%%%%%%%%%%%%%%%%%%%%@#***************#%@*=----=---:.....-@%
+--------:.....=@%%%%%%%%%%%%%%@*=:........................... .#%%%%%#+
++++++++++*#######**++==========++**#+=========+###: . .=@%%%%%%%%%@
%########################################################%%@@%%%%%%%############%%%
%#################%%%%##################%%%%%%%%%%%#%%%%%%%@- .+@%%%#%#%
%#%%%##%@=
-++-. .-+#@%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@%%%%%%%%%%%%%%%%%%%%%%%#%###############%%%
%##########%@%**#%%%%%#############%%%%@%#*************#%@#=-=--=--=-:......=
%=--------:.... =@%%%%%%%%%%%%@%+:............................... . -%%%%
%#*=+++======+*###*+===============================##*. . . :*@%%%%%%%%
%@########################################################%%%@%%%%%%%
%#################################%%%%##################%%%%%%%%%%##%#%%%%@=
=@%%%%#%%%%#%%#%%@:
:+##*+-:.. .:=*#%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@@%%%%%%%%%%%%%%%%%%%%%%%%%##%##############%%%%
%########%@#+*%%%%%#################%%%@#************#%@#+----==-=-:.......:-
=--------:.... :#@%%%%%%%%%%@%*- ................................. . =%%
%###+===========**+====================------=====-+##=. . .. -@%%%%%%%%%@
%#######################################################%%%@@%%%%%%%
%#################################%%%%##################%%%%%%%%%%%%%%%%%@*.
-%@%%%#%%%%##%#%@#.
.=#@@%%#*+-:.. .::=+*#%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%@@@%%%%%%%%%%%%%%%%%%%%##%%%%%%##%############%%%%%
%#######%@%+=#%%%%%###################%@%#***********%%%
+===-------..........:--------:......-@%%%%%%%%%%@%
+:.................................... . .+%####*===========--
===================--------------+##- ... . .*@%%%%%%%%
%@#######################################################%%%%@%%%%%%%%
%#################################%%%%##################%%%%%%%%%%%#%%%%@@.
:#@%%#%%%%%%%##%@=
.=*%%%%%%%%%#***++=--------=++**##%@%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%@@@%%%%%%%%%%%%%%%%%%%%%%####%%%%#%%%%##########%%%%%%%######
%%%+=+%@%%%%##########%%%%%%%%%@@@#**********#
%@#=====-----:...........:-------:...... -@%%%%%%%%%@
%*:..................................... . .+#####+=========------
=============-----------------*#+. . . . -@%%%%%%%%%@
%######################################################@%%%@@%%%%%%%%
%#################################%%%%%#################%%%%%%%%%%#%%%%%@-
.*@%%#%%%%%%%%%%@:
.-+#%%%%%%%%%%%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%@@%%%%%%%%%%%%%%%%%%%%%%######%%%%%%%%%##########%%%%%%%#####%%
%+==*%@%%%%%%%##%%%%%##%@%%%###%@#*********#%@%%%
%*=----:..............:------.........:@%%%%%%%%%
%#=....................................... . . . .=#****+=======--------------
----------------------+#*: .. ......#@%%%%%%%%%
%#####################################################%@%%%%@%%%%%%%%%
%##############%##################%%%%%#################%%%%%%%%%%%%%%%@=
.+@%%%%%%%%%%%%@#.
.-+#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%@#+-.:@%%%%%%%%%%%%%%%%%%%%#########%%%%%############%%%%%%%%####%%
%#**##@@%%%%%%%%%%%#+=--+@%%%***#@%*******##%%%%%%%%
%#*=.................:-----......... :#@%%%%%%%@
%#- ....................................... . . -+*+**=-
===---:--------------:::--------:-------=**: ..........=@%%%%%%%%
%@#####################################################%@%%%%@@%%%%%%%%%
%################################%%%%%%#################%%%%%%%%%%%%%%@*.
=%%%%%%%%%%%#%@+
.:-+#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%@@@@@%%%%: :@%%%%%%%%%%%%%%%%%###########%%%%#############%%%%%%%%####%
%#####%%%%%%@%%%%@%+-----=@%@%#**#%@###***#%%@%%%%%%%%%
%##*:...............:---:............+@%%@%%%
%@#*- ........................................ . . :=+
+**=------:---------::-:::::::::-----:-----=*+: ...........:%@%%%%%%%%@
%####################################################%%%%%%%@%%%%%%%%%%%##########%
%####################%%%%%%%################%%%%%%%%%%%%%%@: -%@%
%%%%%%%%%%@-
..-=*#%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%@@@@%%%%%%%%@= :@%%%%%%%%%%%%%%#############%%%%%###########%%%%%%%%%%##
%@#+====*%%%%%@%%%@@*=-----=%@%@%%%%%@##***#%@@%%%%%@@%%%%
%#**+-..............:--:.............:%@%%%%%
%@#*=.......................................... .. . .:=++
+=-----:---::::::::::::::::::::::::----+*-........:-:....*@%%%%%%%%@
%####################################################%%%%%%%%@%%%%%%%%%%%##########
%#%%%#####%###########%%%%%%%################%%%%%%%%%%%%%@- :%@
%%%%%%%%%%@#.
.::=+**##%%@%%%%%%%%%%%%%@@
%##***+=:.=@%%%%%%%%%%%. :@%%%%%%%%%%#################%%%#%#%%######%%%%%%@%%%%%
%%%+=====+%%%%@@%%%@%+===++##%@%%%%%%%@%#*##%@@%%%%######%%@%%%
+::..............:-:...............+@%%%%%%%
%**:........................................... . .. .-=+
+-...:::::::::::::::::...........:--=+=:......:-----:...=@%%%%%%%%
%@####################################################@%%%%%%%@@%%%%%@%%%%
%##########%%%%%%################%%%%%%%%###############%%%%%%%%%%%%@+
.#%%%#%%%%%%%@+
.....::::::.......
=@%%%%%%%%#@= .@%%%%%%%###################%%%%##########%%%%%@@%%%%%%
%@*======*@%%%@%%@@@%%@%%%%%%##%%%%%%@%##%%@%%%%%%%%%%%%%#####
%@#=............................... :%@%%%%%
%@**=.............................................. ... .-
=:.....::::::::::...............:-===:........:----:....-@%%%%%%%%
%@###################################################%@%%%%%%%%@%%%%%%%%%%%
%#########%%%%%%%%###############%%%%%%%%###############%%%%%%%%%%%@%.
.#@%%#%#%#%#%@-
.*@%%%%%%%%%%: .@@%%%%#####################%%%#%#######%%%%%%@@@@%%%%%%@*===++*
%@@@@@@@%%%%%%%%%%%%%%%%%%%%%%%@@%%%%%%%%%%%%%%%%%%%%##%
%#-...............................=@%%@%%%@
%**: ......................................................... ....::::::::::......
......::---==--:.......::::.::......-@@%%%%%%%
%@###################################################%%%%%%%%%%%@%%%%%@%%%%%
%#########%%%%%%%%#%%%%##########%%%%%%%%###############%%%%%%%%%%%@-
+@%%%%%%%%%@#.
.%%%%%%%%%%@+ .@@%%%#####################%%%########%%%%%%@@@@@@@@%%%@@%#%%@@@
%%%%%%%%%%%%%%%%%%%%%%%%%%%@@@@%%%%%%%%%%%%%%%%%%%%%%%%%%
%@#- .............................*@%%%%%
%@**=..............................................................:=+=---::....:::
----=====---::...........::..........:%@%%%%%%%%@
%##################################################%%%%%%%%%%%@@%%%%%@%%%%%%
%#########%%%%%%%%%%%%##########%%%%%%%%%##############%@%%%%%%%%@+
=@%%%%%%%%%@+
-@%%%%%%%%%@: .#@%%%#####################%@%#%#%###%%%%%@@@@@@@@@@@@@@@%%%%%%%
%%%%%%%%%%%%%%%%%%%%%@%%%%###***++++====++*#%%%%%%%%%%%%%%%
%@+............................ -%@%%%%%@
%**-...............................................................:-====--
======---::::..............................:#@%%%%%%%%@
%##################################################%%%%%%%%%%%%@%%%%%%%%%%%%%
%#########%%%%%%%%%%%%%%%#######%%%%%%%%%##############%%%%%%%%%@%.
-%%%%#%%%%%@-
=@%%%%%%%%@* .*@%%%#####################%%###%##%%%%%%@@@@@@@@@@@%%%%%%%%%%%%
%%%%%%%%%%%%%%%##*+==+++*******+++++++++======+*#%@%%%%%%%%%
%@*. ...........................=@%%%%%%@
%*+:.................................................................:----::::.....
..................................:%@%%%%%%%%@
%##################################################@%%%%%%%%%%%%@%%%%%@%%%%%%%%
%#######%%%%%%%%%%%%%%%########%%%%%%%%%%##############%%%%%%%%@-
-@@%%%%%%%%%:
+@%%%%%%%%@- +@%%%####################%@%#%#%#%%%%%@@@@@@@@%%%%%%%%%%%%%%%%%
%%@@@%%%##==-:::::::-+##*####**+*************+++==+#@@%%%%%%%
%@#:............................*@%%%%%
%@#*=..............................................................................
...................................-@%%%%%%%%%@
%#################################################%%%%%%%%%%%%%%%@%%%%%@%%%%%%%%%
%#####%%%%%%%%%%%%%%%%%%%%####%%%%%%%%%%##############%%%%%%%@*
-%@%%%%%%%@+.
.
*@%%%%%%%@#. +@%%%####################%%%#%##%%%%@@@@@%%%%%%%%%%%%%%%%%@@@@%
%#**++++++--:--------=*######********************=..-#@%%%%%%%%
%#:...........................:%@%%%%%
%@**-..............................................................................
..................................-@%%%%%%%%%@
%#################################################%%%%%%%%%%%%%%%@%%%%%%@%%%%%%%%@%
%###%%%%%%%%%%%%%%%%%%%%##%###%%%%%%%%%%#############%@%%%%@%:
:%@%%#%%%%@-
.
%%%%%%%%#@- +@%%%####################@%%##%%%@@@%%%%%%%%%%%%%%%%@@@%%##*+++
++++**####+---------:-*#######*********************++*%@@%%%%%%%
%#: ............ ...:::::--::-=@%%%%%%%
%**-...............................................................................
................................+@%%%%%%%%@@
%#################################################%%%%%%%%%%%%%%%%@%%%%%%@%%%%%%%%
%@%%%%%#%%%%%%%%##%%%%%%%%%%%%#%%%%%%%%%%%#############%@%%%%@=
:%@%%#%%%@%:
:
@%%%%%%%@%: +@%%####################%@%#%%@@@%%%%%%%%%%%%%%@@%%#*+++++
+***+*#########+-----------+###########****##*************##%@@%%%%%%
%@#: .........-+*##%%%%%%%%%%%%@@%%%%%%@
%*+: ..............................................................................
...............:.....::.......:%@%%%%%%%%@@
%################################################%%%%%%%%%%%%%%%%%%@%%%%%%@%%%%%%%%
%%@@%%%%#%###%%%#%%%%%%%%%%%%##%%%%%%%%%%%%############%@%%%@%.
:#@%%#%%%@*
-
@%%%%%%%@+ +@%%####################%%%%@@%%%%%%%%%%%%@@%%#*+===++**#%%
%##**#########*-:--------:-*%#%#%%%#*+++++*#**************##%@%%%%%%%%@+......:=#%
%#****##%%%%%%%%%%%%%%%%%%@
%*+: . ............................................................................
...:.:...::::..:.:.:::.......=@%%%%%%%%@@
%#################################################%%%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%
%%%%%@@%%%%%##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%############@%%%@=
:#@%%%%%%@=
-
@%%%%%%%@: +@%%###################%@@@%%%%%%%%%%%@@%#*+===++****##*###%%
%##**########=------::.. -%%%%%%%*+++++++###**************#%@%%%%%%%%@=. .-#@@%%%
%#**#%%%%%%%%%%%%%%%%%%%%
%@#*+. ...................................................................::......:
..::::.::::::::.:.:::::..:...:#@%%%%%%%%@@
%#################################################%%%%%%%%%%%%%%%%%%%@%%%%%%@%%%%%%
%%%%%%%@@%%%%%%%%%%%%%%%%%%%%%%%%%#%%%%%%%%%%%%############%@%@%:
:#@%%%%%%%:
+@%%%%%%@#. +@%%#################%%@%%%%%%%%%%%@%#*+==++***********#####%%
%%+=+#*#####+----:.. . =@%%%%%*++++++++###*#*************%@%%%%%%%@%--#@%%%%%%%@%
%%%%%%%%%%%%%%%%%%%%%%%
%@#*=: ..................................................................::....:::.
:::::::::::::::.:.:::.......=@%%%%%%%%%@@
%#################################################%%%%%%%%%%%%%%%%%%%%@%%%%%%@%%%%%
%%%%%%%%%@@%%%###%%#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%###########%@%@*.
.#@%%%%%@*.
+@%%%%%%@= +@%%################%@@%%%%%%%%%@%*+==++**************########
%%%=-+#**#*##=::.. . .+@%%%%#+++++++++*##*##*****++==--+%%%%%%%%%@%@%%%%%%%%%%%
%%%%%@@@@@@@@@@@@%%%%%%%%@
%#+: ........................................................:::....:::.:::::.::::
::::::::.:::::::::.:..:.-%@%%%%%%%%@@%
%################################################%%%%%%%%@%%%%%%%%%%%%%%%%%%%%@%%%%
%%%%%%%%%%%@@%%##%%%###%%%%%%%%%%%%%%%%%%%%%%%%%%%%##########%%%@=
.#@%%%%%@-
.*
@%%%%%%@: *@%%###############%@%%%%%%%%@%#+==++*****************#########
%%%=-=*****#*: . .. . .+@#%##*+++++++=++*####*+==-------+@%%%%%%%@@%%%%%%%%%%@@%
%#**++=========+#%@%%%%%%@
%#+: ................................................:.......::..:.::::.:::::::::.:
::::::::::::::::.::.:.-%@%%%%%%%%%@@%
%################################################%%%%%%%%@%%%%%%%%%%%%%%%%%%%%%@%%%
%%%%%%%%%%%%%@@%%###%%##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%##########%%@=
.#@%%%%@%:
.#
@#%%%%@* .*@%###############%@%%%%%%%%@*===+
+*******************##########%%%=-=******+. . .+%####+++
+=======+*#*=--------::-#@%%%%%%@@%%%%%%@%#*+=---:----::::::::::-#@%%%%%%%
%#+:...............................................::......:::.::.:::::::::::::::::
:::::::::::::::.:::.=%@%%%%%%%%%@%%%
%################################################%%#%%%%%@%%%%%%%%%%%%%%%%%%%%%%@%%
%%%%%%%%%%%%%%%@@@%%#%%%#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#########%%@=
:%@@%%%@*.
.%
%%%%%#@- .#@%###############@%%%%%%%%%*==+
+********************############%%%=--+*****=. .. .. .
+#####+============---------::::=@%%%%%%@@%%%@@#+--:---::::...............+%%%%%%%%
%#*:. ...........................................::.......:::.:::::::::::::::::::::
::::::::::::::.:::+@%%%%%%%%%@@++%@%%##############################################
%%%%%%%%%@%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%%%%%%%%%%%%%@@%%#%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%#########%@*. -@%@%%%@=
.@
%%%%%%%: .%@%##############%@%%%%%%
%@*==+**********************#############%%%=--
=+**+*=. . .. .=*#*##+==========---------:::::-#@%%%%%%@@%@
%=---:-::.................... -%%%%%%%%%
%#-... ........................................::......::::.:::::::::::::::::::::::
:::::::::::::.-#@%%%%%%%%%@%+-=%@%%##############################################%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%%%%%%%%%%%%%%@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%#########%%= .*@%@%%%%:
:@
%%%%%@*. :@%%##############%@%%%%%%%%==+
+*********************###############%%%=---=****=: .. . . .. :
+***#*=========--:-:--::::::::+@%%%%%%@@%@+--:::........................ :#@%%%%%%%
%#=. .. .....................................::.......::.:.:.::::::::::::::::::::::
:::::::::::=#@%%%%%%%%%@@*=--=#@%%##############################################%%#
%%%%%@%%@%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%%%%%%%%%%%%%%%@@%%%%#%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%########%@*: :@%%@@%@*.
:@
%%%%%@= :@%%##############%@%%%%%%%#+
+***********************###############%%%%=----++++=:. . . . . .-
+****+--------::::-::.::....-@%%%%%%%@%@+-:..............................+@%%%%%%%%
%
+: .......................................::......:::.:.:.:::::::::::::::::::::::::
:::::-*%%%%%%%%%%%@@#=-----*@%%#############################################%@%#%%%
%%@%%@%%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%%%%%%%%%%%%%%%%@@@%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%########@@=. +@%%@%%@-
:@
%%%%%@: -@%%###############%%%%%%%%%+
+**********************#################%%%%=-----=+++-. ...... .. ..-++
+*+-------::::::........-#@%%%%%%%%@=.................................=#%%%%%%%#
%#-..... .. .............................:::......:::...::::::::::::::::::::::::::.
::-*#%@%%%%%%%%%@@#=-------*@%%#############################################%%%#%%%
%%@%%%@%%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%%%%%%%%%%%%%%%%%@@@%%%#%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%########%%#: :@%%%@%@#.
:@
%%%%%%: -@%%###############%@%%%%%
%@*+*********************###################%%@#-----::-+
+-..... .. ... .:=+-...::-:::::.......:---+@%%%%%%%
%@-..................................:*%%%%%#%##
%*: .... ...............................:.......::...::::::::::::::::::::::::::-+#%
%%%%%%%%%%%%@%+=-----::--*@%%#############################################@%#%#%%%
%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@%%%%%%%%%%%%%%%%%%%%%%%%@@@%%%%#%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%########%@*. +@%%%@%@+
:@
%%%%@*. =@%#################%%%%%%%%
%*********************##################%##%
%@#----:...:--:. ..................--:::::.....::---:.=@%%%%%%%
%@-....................................=#%%#%##%#%
%*: ...........................................:....:...:::::::::::::::::-+#%@%%%%%
%%%%%%@%%*=-------:.:--+@%%############################################%%%%%%%%%%@%
%%%@%%%%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%%%@@@@@@@@@@@@@@@@@@@%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%########@%=. :@%%%%@%@=
:@
%%%%@= =@%#################%@%%%%%%
%#*******************##################%####%%@*----..........................-
=+=----::-----::...-@%%%%%%%%@-.....................................:+#%%######%%*:
..................................................::::::::::::-=*#%%%%%%%%%%%%%%%
%#+=-------::...:--+@%%############################################%%#%#%#%%%@%%%%
%@%%%%%%%%%%%%%%%%%%%%%%%%%%@%%@@@%%%%%%%%%%%####**######%@%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%######%@#- .#@%%%%%@%:
:@
%%%%@- +@%##################%@%%%%%%
%#****************####################%#####%%@+---............................:---
===--::.......-@@%%%%%%%@-......................................:-+%%#######%
%*-..............................................::.:.:..::-=*#%%%%%%%%%%%%%%%%%
%*=--------::......:--+@%%###########################################%@%#%#%%%%%@%%
%%%@%%%%%%%%%%%%%%%%%%%%%%%%%%@@@%%%###%%%%%#####**********++#%@%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%#####%%@*: =@%%%%%%@#:
:@
%%%%@: .*@%#################%%@%%%%%%%
%#**************#####################%#####%%@
%=--:..........:--:...............:--:::..........-%@%%%%%%
%@-.....:-:................................:-+%%########
%#+:.............................................::-=*#%%%%%%%%%%%%%%%%%@
%#*=---------::.........:--=@@%###########################################%%%#%#%%%
%%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@%%%#####%%%%#####**************==++#@%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%#####%%@*: :%%%%%%%%@#.
:@
%%%@%: .%@%###############%%%%%@%%%%%%%
%#************######################%######%
%@#=--..........:=-::---:..........::..............:%@%%%%%%
%@-.....=+..................................:--+%%########%
%#+:...................................:::-+*#%%%%%###%%%%%%%%%%%%
%#+=---------:::............:--=@@%##########################################%@%#%%
%%%%%%@%%%%%%%%%%%%%%%%%%%%%%%%%%@@@%%##%%#%###%#####*****************====+#%@%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%####%%@+. .#@%%%%%%%@+
:@
%%%@#. :@%###############%%%%%%%@@%%%%%%
%#***********#####################%%#######
%@@*--:.........:::.::-:........................:..:#@%%%%%%
%@-.....:.....................................:--+#%%########%%
%*=:......................:::-=+*##%%%%%%#######%%#%%%%%%
%#*==---------:::................:--=@@%##########################################
%@%#%#%%%%%@@%%%%%%%%%%%%%%%%%%%%%%%@@@%%#########%
%####*********************======+#@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#####%@%=.
+@%%%%%%%%@=
.@
%%%@*. -@%###############%%%%%%%%@@%%%%%%%%*+
+******######################%########
%@@@+-:..................................:..::...:.:%@%%%%%%
%@-............................................::--=*%%%##########%%#*+=-----:---
=+***###%%%%%###############%%%%%%#*+=----------::::....................:--=%@
%#########################################%@%%#%#%%%%%@%%%%%%%%%%%%%%%%%%%%%%@@%%
%######%%%%#####************************=======+#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%####%@%=. =@%%%%%%%%@%:
.
%@%%@+ =@%###############%%%%%%%%%@@%%%%%%%@#+++++
+*****##################%#########%@@
%=-........................:...:::...::::...::.-%@%%%%%%@
%:..............................................::---=#%%%#############%%%%%%%%
%######################%%%%%%#*+==----------::::.........................:--=%@
%#########################################%@%%#%%%%%%%@%%%%%%%%%%%%%%%%%%%@@%%%##%
%#%##%%%#####**************************+========+*%@%%%%#%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%##%%#=. =@%%%%%%%%%@#.
.*
@%%@= *@%###############%%%%%%%%%%@@%%%%%%%@#*+*+++++++
+*****############%#########%@@@*-:.....................:::.::::::.:::::.:.:..=@%%%
%%%%@#:................................................::----=*#%%
%#################################%%%%%
%##*+=-----------::::...............................:--=%@
%################################%%######%@%%##%%%%%%%@%%%%%%%%%%%%%%%%%@@%%%##%%##
%%%%%%####*****************************+==========+#@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%@#=. =@%%%%%%%%%%@-
+@%#@= .%@################%%%%%%%%%@%%@%%%%%%%@%*+*****+++++++++
+*****#####%##########%@@@+:..............:::::::::::::::::::::.:.:::.:+@%%%%%%
%@+....................................................:------=*##%%%%
%###############%%%%%%%
%##**+==------------::::.....................................---=%@
%###############################%%%######%@%##%%#%%%%%@%%%%%%%%%%%%%%@@%%%##%%%%%%%
%%%%%####*******************************+===========+#@@%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%@#=. =@%%%%%%%%%%@#.
:----:.
=@%#@= :@%################%%%%%%%%%%%%%@@%%%%%%@%#**+****++++++++++++++
+*****##########@@@#-:........:::.::::::::::::::::::.::::::.::.-%@%%%%%%@
%=......................................................::--------==+
+*############***+
+===--------------::::...........................................:---=%@
%###############################%%######%@%%#%%%%%%%%@@%%%%%%%%%%%%@@%%%#%%%%%%%%%%
%%%%####*********************************+============+#%@%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%@%=. +@%%%%%%%%%%%@:
.-=====: -
@%%@= =@%################%%%%%%%%#%%%%%@@%%%%%%@@%*******+++++++++++++++
+**+*****#####%@@@+:......:.:::::::::::::::::::::::::::::::.:*@%%%%%%
%@*-.........................................................:::-------------------
----------------:::::..................................................:---=@@
%##############################%%%######%@%#%%%%%%%%%@%%%%%%%%%%@@@%%%##%%%%%%%%%%%
%%%%####***********************************+=============*%@%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%@%+: .%@%%%%%%%%%%%@=
.:=====: :
%@%@*. *@%#################%%%%%###%%%%%%%@%%%%%%%@%*+**+**+++++++++++++
+***+*****######@@@#-::::::::::::::::::::::::::::::::::::::::+@%%%%%%%@
%=:..............................................................:::---------------
------:::::..........................................................:---=#@@
%#############################%%%######%@@%%%%%%%%%%%@%%%%%%%@@@%%%%%%%%%%%%%%%%%%#
%%%%#####************************************+=============+%@@%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%@@*+@%%%%%%%%%%%%@#.
.--:. .
*@%%@: :%@##################%%%####%%%%%%%%%@@%%%%%%@@#*+***+++++++++++++
+**++++++*######%@@@=:::::::::::::::::::::::::::::::::::::::*@%%%%%%%@
%=-:.......................................................................:::::::.
......................................................................:-=+%%@@
%############################%%%%######%@%%%%%%%%%%%@@%%%%@@%%%###################%
%%%%%%%####*************************************+============+#@@%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%@@@%%%%%%%%%%%%@@:
+@%%@= -@%#########################%%%%%%%%%%@@%%%%%%%@%*+***++++++++++++
+**++++++*######%@%@+:::::::::::::::::::::::::::::::::.:.:-#%%%%%%%%@%
+-:................................................................................
.....................................................................:-+#%%%@@
%###################%%#######%%%%#####%@@%%%%%%%%%%%@@@@@%
%#######********##########***####%%%%%%%####*****************************##*+
+==========+#@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@%%%%%%%%%%%%%@:
:@%%%%: =@%########################%%%%%%%%%%%%%@@%%%%%%@@#*++*+++++++++++
+**+++++++*######%@%%-.:::::::::::::::::::::::::::::.::.-*@%%%%%%%%@%
+--:...............................................................................
.....................................................................:=*%%%#*%@
%##############%%%%%#%%%####%%%%######%@@%%%%%%%%%%%@@%
%#######********########****************+++*##%%%%
%###***********************###***+=========+#@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@%%%
%%%%%%%%%%%@:
.%@%#@+ .*@%########################%%%%%%%%%%%%%%@@%%%%%%%@%*++*++++++++++
+*++++++++*######%@%%+::::::::::::::::::::::::::::::::=#@%%%%%%%%
%@#=--:............................................................................
.......................................................................:=*%%%#*+*@@
%%#%########%%%%%%%%#%%%###%%%%%#####%@@@%%%%%%%%%%@@
%######******#######*************************++===+++*#%%%%
%##*****************###***#**++=======+#%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@%%%%%%%%%%%
%%%%@:
=@%##@- :%@%#######################%%%%%%%%%%%%%%%%%@@%%%%%%%@%*+++++++++++
+*++++++++**######@%##-:::::::::::::::::::::::::.::=*%%%%%%%%%%
%@#+---:...........................................................................
.......................................................................:=*#%%#*++
+*@@%#%#########%%%%%%%%#%%%##%%%%%%#####%@%@%%%%%%%%%%@%
%####*****######************************************+++++++**#%%%
%####*********###****#*##**+======+*%@%%%%%%%%%%%%%%%%%%%%%%%%%%@@%%%%%%%%%%%%%%%@:
:%@%#%#: -@%%#######################%%%%%%%%%%%%%%%%%%%@@%%%%%%%@%*+++++++++++
+++++++++******##@##+::::::::::::::::::::::::=*#@@%%%@%%@@@@@@
%###**+==-::.......................................................................
....................................................................:=*#%#*+++++
+*@@%%%#########%%%%%%%%%#%%#%%%%%%#####%@%%@%%%%#%%%%@@
%###***######*****************************************************##%%%%%
%###*####***######*####++=====*%@%%%%%%%%%%%%%%%%%%%%%%%@@%%%%%%%%%%%%%%%@%.
+@%##@*. =@%%%#####################%%%%%%%%%%%%%%%%%%%%%%@@%%%%%%%@%*++++++++++
++++++++*******#%%##=::::::::::::::::-=+**%@@@@@%%%%%%%%%%%#######%%%%%%%
%#**=-:............................................................................
......................................................:=*###*++++++++*@@%#
%#########%%%%%%%%%%##%%%%%%%####%@@%%@%%%%%%%%%@%
%##*######*************************************************************####%%%%
%####***############*+====*%@%%%%%%%%%%%%%%%%%%%%@@%%%%%%%%%%%%%%%%@*
:%@###@+ .#@%%%#####################%%%%%%%%%%%%%%%%%%%%%%%%@@%%%%%%%@%#*+++++++
++++++++********#%%##=:::::::-=+*##%%%%%%#####*****************************##%%
%#*+-..............................................................................
..............................................:=*##*+++++++++++*@@%###%%%%%%%%%%%%%
%%%%%##%%%%%%%####%@%%@@%%%%%%%%@@
%#######***********************************************************************###%
%%%%####*##*########**+==*%@%%%%%%%%%%%%%%%%%@@%%%%%%%%%%%%%%%%@@*:
=@%###@+. :@%%%#####################%%@%%%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%%%%#**++++
++++++++********#%%##+:-=*#%%%%###**********************************************#%%
%#*=:................==-----:::::..................................................
.......................................-+*##*+++++++++++++*@@%##%%%%%%%%%%%%%%%%%#%
%%%%%%%%##%#%@@#%@@%%%%%%%
%@@#####***************************************************************************
*****###%%%%%##############**+*%@%%%%%%%%%%%%%@@@%%%%%%%%%%%%%%%%@@@@%#=.
.#@####%#. =@%%%#####################%@@%%%%%%%%%%%%%%%%%%%%%%%%%%%@%%%%%%%%%%@%
%##***+++++*********##%%%@%
%###********************************************************##%%#*-............-
+-...:::-
=+*-...............................................................................
......:-+##**+++++++++++++++*@@%#%%#%%%%%%#%%%%%%%%%%#%%%%%%#%#%#%@%#%@@%%%%%%%@@
%###*******************************************************************************
*********###%%%%#############*#@@%%%%%%%%%%@@@%%%%%%%%%%%%%%%%%@@%%%%@@*:
-@%####%%=*@%%%####################%%@@%%%%%%%%%%%%%%%%%%%%%%%%%###%%@%%%%%%%%%%%%%
%@@%%%%%%%%%%%%%@@%
%##*****************************************************************##%@#+:.......:
+-.... ...........................................................................
..............:=*##*++++++++++++++++++*@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%##%#%@%%#%@@%
%%%%%%@
%#*********************************************************************************
**################%%###*#########%@@%%%%%%%@@%%%%%%%%%%%%%%%%%%@@%%%%%%%%%*-
=@######%@@%%%####################%@@%%%%%%%%%%%%%%%%%%%%%%%%%%%#####%%@@%%%%%%%%%%
%%%%%%%%%%%%%%
%##*************************************************************************#%
%#+-....-
=..................................................................................
...........:-**#*++++++++++++====+++++*@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%##%%%@%##%@%%
%%%%
%@@#****************************************************************************###
#####%%%%%%%%%%%%%%%%%%%%%%%###**#*###%@@@%@@@%%%%%%%%%%%%%%%%%%@@@%%%%%%%%%%%@#-
.*@######@%%%%###################%@@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#####%%%@@%%%%%
%%%%%%%%%%%
%##******************************************************************************##
%
%#*:...............................................................................
..............:-+*#**+++++++++++==+=========*@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#%%%@
%###%@%%%%%%%@
%#***********************************************************************######%%%%
%%%%%%%%%%%%%%%%%#**+++**%@%%##*##**###%@@@@%%%%%%%%%%%%%%%%%@@@%%%%%%%%%%%%%%@*:
.#%####%@%%%###%################@%#@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%##%%%%%%
%%@@@@
%##********************************************************************************
*****##
%@#+:..............................................................................
.........:-+*##*+++++++++++++=============*@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#%%@@%###
%@%%%%%%@@#******************************************************************######
%%%%%%%%%%%%%%%%%@@%##*=-:..........:+#@%###**##*#*##%%@@@@%%%%%%%%%%@@@%%%%%%%%%%%
%%%%%%%@=
.#@###%@%%%##%%%%#############%@==@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%@@
%##********************************************************************************
***********##
%@#=...............................................................................
...:=*###*++++++++++++++===============#@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#%@%####%@%
%%%%@@%#***************************************************************######%%%%%%
%%%%%%@@@%%##*+==---:::::::.........:=#@%###***#****####%%@@@@@%@@@%%%%%%%%%%%%%%%%
%%%%%@=
.*@##@@%%%%%%%%%%%###########@*.+@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@@
%#*********************************************************************************
****************##%
%*-...........................................................................:-
+*###*++++++++++++++++++=========+==+%@@%%#%%%%%%%%%%%%%%%%%%%%%%%%%%%#%@%#####%@%%
%%%@@#**#*********************************************************#####%%%%%%%%
%@@@@@%##*+=====++*###%%%%%%%%%##**+-.....:*@%###*#****##****###%%%%@@%%%%%%%%%%%%%
%%%%%%%%@@:
=@%@@%%%%%%%%%%%%#########%@:.%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@
%##********************************************************************************
*********************##
%@#+:. ...................................................................-=*#%#**+
+++++++++++++++===============*%@@@@%#%%%%%%%%%%%%%%%%%%%%%%%%%%%#%%@%#####%@%%%%@@
%#********************************************************######%%%%%%@@@@@@
%#*+======+++*#%@@%%%%%%%%%%%%%@@@@%%#=:.. :+%%##********#***********##%@@@%%%%%%%%
%%%%%%%%@+.
:#@%%%%%%%%%%%%%%%######%@= :@%%%%%%%%%%%%%%%%%%%%%%%%%%%%####%####%%%%@@@
%##*****************************************************************************###
#*************************#%
%@*-..............................................................:-+*#%%##*+++++++
++++++++++++===+=========*%@@%%@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%######@@%%%@@%
%#*****************************************************######%%%%%%%%@@@%#*+==-===+
+**%%@@%%%%%%%%%%%%%%%%%%%%@@@%%%#-. ..=#%###**##*#************++++*##%@@%%%%%%%%%%
%%@:
=@%%%%%%%%%%%%%%%%%%###@*. -@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#######%%@@@
%#***#*************************************************************************##%%
%%###*************************##%
%#=. ......................................................:=+#%%####*+++++++++++++
+++++++++===========*%@@%%%%@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%#%@%######%@@%%%@%
%##**************************************************#####%%%%%%%%%@@%#+==--====++*
%%@%@@@@%%%%%%%%%%%%%%%%%%%%%%%@%%%%#=.. .-#%#*#**#*********#**##**++===++*#%@@%%%%
%%%@+
+@%%%%%%%%%%%%%%%%%%%#@%: =@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%##%##%%@@@
%#****************************************************************************##%%%
%%##%%#****************************#%%
%*:. ..............................................:-+#%@%%%####*++++++++++++++++++
++============+*%@@%%%#%%@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%#######@%%%@@%
%#************************************************######%%%%%%%@@%#+==--====++*%%@%
%%%%%%%@@@@%%%%%%%%%%%%%%%%%%%%%@@%%%@#=....:*%#**********************++=====+*#%%@
%%%@%:
.#@%%%%%%%%%%%%%%%%%%%%@- +@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#%##%%@@
%#**#*************************************************************************##%%%
%%%%%%%%#******************************#%
%@*-..........................................:=*#@@@@@@%%%##*++++++++++++++++++
+==+===========*%@@%%%%%%#%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%##*##**#@%%@@%%
%#***#*****************************************#####%%%%%%%%@@%*+---=====+*#%@@%%%%
%%%%%%%%%%@@@%%%%%%%%%%%%%%%%%%%%@@%%#%%#=... :*
%#*#********####*****##***+=======+*#@%@+.
:@%%%%%%%%%%%%%%%%%%%%@+ .*@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%###%@@
%#*#**#***********************************************************************##%%%
%%%%%%%#%%#********************************#%
%@#-. .................................:-+#%@@@%%%%%%%@@%#+++++++++++++++++++
+=============+%@@%%%%%%%%%%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@%#*#*#**#%@%@@%%
%##*###*************************************######%%%%%%%%@@#+=---====+*#%@@%%%%%%%
%%%%%%%%%%%%%@@@%%%%%%%%%%%%%%%%%%%@@%%%%%@#-. ..-#%#**#*=::::--=+
+**####*****+========+*#%#+:.
:@%%%%%%%%%%%%%%%%%%%%%. .#@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@
%#*###**#**********************************************************************#%%%
%%%%%%%%%%%#***********************************#%%@#=...........................:-
=+#%@@@%%%%%%%%%%%%%%@%#+++++++++++++++++=============+#@@%%%%%%%%%%%%@%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%@#**#*##*#%@%@%%%%#**##*#**************************#******######%%
%%%%%%@%#+=---===+*#%@%%%%%%%%%%%%%%%%%%%%%%%%%%%@@@%%%%%%%%%%%%%%%%%%@@%%%%%%
%*-....=%#**#+=--:::....::--=+**#****++========+*%@#=:
=@%%%%%%%%%%%%%%%%%%%@- .%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@
%##*#**##*#********************************************************************#%%%
%%%%%%%%%%%##************************************##%%@#=. ................::-=*##
%@@%%%%%%%%%%%%%%%%%%%%%@@#*+++++++++++++=============+#@@%%%#%%%%%%%%%@@%%%%%%%%%%
%%%%%%%%%%%%%%%%%%@%#*##*##*#@@@@%%%##*###*#*****************************#######%%%
%%%%%@%#=---===+*#%@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@@%%%%%%%%%%%%%%%%%@@%%%%%%%
%#-. .:#%#######**++=-:::...::-=+**##*++========++#%#+:
+@%%%%%%%%%%%%%%%%%%@+ :@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@
%#*###*##**#********************************************************************#%%
%%%%%%%%%%%%##***************************************##%%%#-........::-=+*##%@@@%%%
%%%%%%%%%%%%%%%%%%%%%%%%@@@%*+++++++++++=============*%@%%%%#%%%%%%%%%%@@%%%%%%%%%%
%%%%%%%%%%%%%%%%%@%#*######*#@@@%%%%##*###*#**************************#######%%%%%%
%%@%*=---==++*%%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@@%%%%%%%%%%%%%%%%@@%%%%%%#
%%+:...=%######**#####**+=-::....:-=+****==========+#@#=
*@%%%%%%%%%%%%%%%%%@%: :@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@
%#*#*#########************##**###########****************************************#%
%%%%%%%%%%%%%#******************************************##%%@#==**##%@@@@@%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%@@@@%%%#*++++++++=============+%@%%%%%%%%%%%%%%%#%@@%%%%%%%%%
%%%%%%%%%%%%%%#%%%@#*########%@@%%%%%#####*##******************#***#######%%%%%%%%
%@#*=--===+*#%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@@%%%%%%%%%%%%%%%@@%%%%
%%%%%*:.. -@##################**+=-::..::-=+**+========+%@
.%@%%%%%%%%%%%%%%%%%@- :@%%%%%%%%%%%%%%%%%%%%%%%%%%%
%@@#**###*########********################################************************#
*#%%%%%%%%%%%%%%#**#*****************************************###%@@@@%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%@@%#*++*%#*++++++============+#@@%%%%%%%%%%%%%#%%%%@%%%%%%
%%%%%%%%%%%%%%%%%%%%%@%##########@@%%%%%###*##*##********#####*****#########%%%%%%%
%%#+=--==+*#%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%@@@%%%%%%%%%%%%%%@@
%%%%%%%%@#-.:+@#*#*################*##**+=-::.::-=+++======+#
:@%%%%%%%%%%%%%%%%%@*. :@%%%%%%%%%%%%%%%%%%%%%%%%%%
%@@####**#######################################################################***
**#%%%%%%%%%%%%%##**********************************************##%%@@%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%@%#+++++++*%#++++=============*%@%%%%%%%%%%%%%%%#%##%@%%%%%
%%%%%%%%%%%%%%%%%%%%%@%##########@@%%%%%%##*#####*##########*****########%%%%%%%%@
%*+---==+*%%@%%%%%%%%%%%%%%%%##############%%%%%%%%%%%%%%%%%%%%%%%%%@@%%%%%%%%%%%%%
%@@%%%%%%%%%%+=#@%###########*###############**=-:::::-=++====+
:@%%%%%%%%%%%%%%%%%@: :@%%%%%%%%%%%%%%%%%%%%%%%%%%@
%####*############################################################################*
##@%%%%%%%%%%%#**#**#*#*************************************##**###%@@@%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%@%*++++++++++#%*+=+===========+%@@%%%%%%%%%%%%%%######%@%%%%%%
%%%%%%%%%%%%%%%%%%%%@##########%@%%%%%%%#**##*#############*##########%%%%%%
%@#*=---=+*#%@%%%%%%%%%%%%%%%######*************###%%%%%%%%%%%%%%%%%%%%%%%%@@%%%%%%
%%%%%%%@@%%%%%%%%%%@@%############################*###**=-::::-=====
-@%%%%%%%%%%%%%%%%@+ :@%%%%%%%%%%%%%%%%%%%%%%%%%@
%#*################################################################################
*#%%%%%%%%%%%%#*########****************######################**##*###%@@%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%@#+++++++++++++##*============*@@%%%%%%%%%%%%%##%######%@%%%%%
%%%%%%%%%%%%%%%%%%%%@%########%%@%%%%%%%##############**##*#######%%%%%#%%%%#=-:--
=*#%@%%%%%%%%%%%%%%%####**********************####%%%%%%%%%%%%%%%%%%%%%@@@%%%%%%%%%
%%%@@%%%%%%%%%%%######################################+=-::::-=
=@%%%%%%%%%%%%#%%%%: :@%%%%%%%%%%%%%%%%%%%%%%%%@
%##################################################################################
#*#%%%%%%%%%%%###################********######################**#**####%@@@%%%%%%%
%%%%%%%%%%%%%%@%%%%%@%*++++++++++++++*##+=========+%@%%%%%%%%%%%%%%##########@@%%%%
%%%%%%%%%%%%%%%%%%%%@%########%@%%%%%%%%%#**#####################%%%%%%%%#*-:.:-=*
%@%%%%%%%%%%%%%%%####****#******************##****####%%%%%%%%%%%%%%%%%%%%@@%%%%%%%
%%%%%@%%%%%%%%%%%%########################################*+=:::
+@%%%%%%%%%%%%%#%@= :@%%%%%%%%%%%%%%%%%%%%%%%@
%##################################################################################
####@%%%%%%%%%##*###############################################***##*#####%@@%%%%%
%%%%%%%%%%%%%%%%%%%%@%*++++++++++++++++*#*========*%@%%%%%%%%%%%%%############@@%%%
%%%%%%%%%%%%%%%%%%%%@%########%@%%%%%%%%%####################%%%%%%%%%@#=:...:=#%@%
%%%%%%%%%%%%%%%######***#####************#***##**##***###%%%%%%%%%%%%%%%%%%%@@%%%%%
%%%%%%@%%%%%%%%%%%%%##########################################+=
.*@%%%%%%%%%%%%%%%%. :@%%%%%%%%%%%%%%%%%%%%%%@
%##################################################################################
#####@%%%%%%%%#####################################################*#####*####%@@%%
%%%%%%%%%%%%%%%@%%%%@%*++++++++++++++++++#*======+#@%%%%%%%%%%%%%#############%@%%%
%%%%%%%%%%%%%%%%%%%%@%%#####%%%@%%%%%%%%%%#*###############%%%%%%%%%%*=:...:+#%%%%%
%%%%%%%%%%%%%##**########*#####**********#**#********##**####%%%%%%%%%%%%%%%%%@@@%%
%%%%%%%%@%%%%%%%%%%%%%########################################*#*
.#@%%%%%%%%%%%#%#@= :@%%%%%%%%%%%%%%%%%%%%%@
%##################################################################################
#####%@%%%%%%%##################################################################%@@
%%%%%%%%%%%%%%%%%%%%@%++++++++++++++++====**=====*%@%%%%%%%%%%%################%@%%
%%%%%%%%%%%%%%%%%%%%%@%%##%#%%@@%%%%%%%%%%#############%%%%%%%%%%%%*-...:=*%%%%%%%%
%%%%%%%%%%%%##*######################****##****************#**###%%%%%%%%%%%%%%%%@@
%%%%%%%%%%@%%%%%%%%%%%%%%###############################%%##%%%%%%
.%@%%%%%%%%%%%%#@#. :@@%%%%%%%%%%%%%%%%%%
%@@################################################################################
########%@%%%%%
%#####################################################################@@@%%%%%%%%%%
%%%@%%%@#+++++++++++++=========+====#@@%%%%%%%%%%################*#%@%%%%%%%%%%%%%%
%%%%%%%%@%%%%%%%%@%%%%%%%%%%%##*#######%%%%%%%%%%%@#+:..::*#%%%%%%%%%%%%%%%%%%%%
%########*################*************###########*##***###%%%%%%%%%%%%%%@@%%%%%%%%
%%@%%%%%%%%%%%%%%########################%%%%%%%#########
:@@%%%%%%%%%%%#%@= .#@%%%%%%%%%%%%%%%%%
%@@################################################################################
#########%@%%%%%
%######################################################################%@@%%%%%%%%%
%%%%%%@#++++++++++================+%@%%%%%%%%%%##################*#@@%%%%%%%%%%%%%%
%%%%%%%@%%%%%%%@@%##%%%%%%%%%#####%%%%%%%%%%%%%%*=:..:=*%%%%%%%%%%%%%%%%%%%%%%
%#*##################################################*******####%%%%%%%%%%%%%@@%%%%
%%%%%@%%%%%%%%%%%%%%%###############%%%%%%#################
:@%%%%%%%%%%%%%@#. .*@%%%%%%%%%%%%%%%%
%@@################################################################################
##########%@%%%%%
%########################################################################@@%%%%%%%%
%%%%%@#++++++====================*@%%%%%%%%%#######################@%%%%%%%%%%%%%%%
%%%%%%@%%%%%%%@%###%%%%%%%%%%%%%%%%%%%%%%%%%%*-...-*#%%%%%%%%%%%%%%%%%%%%%%
%##*###################################################**##**########%%%%%%%%%%%%@@
%%%%%%%%%@%%%%%%%%%%%%%%%%#######%%%%%########################
-@%%%%%%%%%%%%#@= +@%%%%%%%%%%%%%%%%@@
%##################################################################################
########%@%%%%
%##########################################################################%@@%%%%%
%%%%%@#++++=====================+#@%%%%%%%%%#######################%@%%%%%%%%%%%%%%
%%%%%%@%%%%%%@%####%%%%%%%%%%%%%%%%%%%%%%%%*-..:+#@%%%%%%%%%%%%%%%%%%%%%%%
%##*#####*##################################***##***##**#***######**#**###%%%%%%%%%
%@@%%%%%%%%%@%%%%%%%%%%%%%%%%%%%%###############################
-@%%%%%%%%%%%%@%: =@%%%%%%%%%%%%%%%%@
%##################################################################################
#########%@%%%%
%###########################################################################%@@%%%%
%%%@@#+++======================+%@%%%%%%%%#########################@@%%%%%%%%%%%%%%
%%%%%%%%%%%@%%####%%%%%%%%%%%%%%%%%%%%%#+-::=*%%%%%%%%%%%%%%%%%%%%%%%%%%%
%#################%%#####################################*####***##*###**#####%%%%%
%%%%@@%%%%%%%%@%%%%%%%%%%%%%%%%%#################################
-@%%%%%%%%%%%%@+ -@%%%%%%%%%%%%%%%@
%##################################################################################
##########%@%%%
%##############################################################################%@@%
%%%@@%++=======================*@@%%%%%%%###########################@@%%%%%%%%%%%%%
%%%%%%@%%@@@%#####%%%%%%%%%%%%%%%%%@%#+=-=*#@%%%%%%%%%%%%%%%%%%%%%%%%%%%
%#############%#####################*##############%%%#####****###**##*###########%
%%%%%%%@@%%%%%%%@@%%%%%%%%%%%%%%%%%%###############################
-@%%%%%%%%%%%%@: :@%%%%%%%%%%%%%%@
%##################################################################################
###########%@%%%
%###############################################################################%@@
%%@@@*========================#@%%%%%%%############################%@%%%%%%%%%%%%%%
%%%%%@%%@@%####%%%%%%%%%%%%%%%%%@%#+==+*%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%##########
%##############################################%%%####*###*################%%%%%%
%@@%%%%%%%@@%%%%%%%%%%%%%%%%%%##############################
-@%%%%%%%%%%%@*. .%@%%%%%%%%%%%
%@@################################################################################
##############%@%%%
%#################################################################################@
@%@@%+++====================+%@%%%%%%%#############################%@%%%%%%%%%%%%%%
%%%%@@@@%###%%%%%%%%%%%%%%%%@@%*+==+#%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#######
%##################################################*####%%%########################
%%%%%@@%%%%%%%@%%%%%%%%%%%%%%%%%%%#############################
-@%%%%%%%%%%%@- *@%%%%%%%%%%%%@
%##################################################################################
############%@%%%%#################################%%%%%
%###########################################%@@@#++=====++++++=========*@@%%%%%%
%##############################@@%%%%%%%%%%%%%%%%%@@%%##%%%%%%%%%%%%%%%%@%#*===*#%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%####
%##########################################################***###%%
%######################%%%%@@%%%%%%%@%%%%%%%%%%%%%%%%%%%%#####################
%#####
=@%%%%%%%%%%@%. =@%%%%%%%%%%%@
%##################################################################################
##############@%%%%###############################%%%%%%%%%
%##########################################%@@*+==========+++++++++=#@%%%%%%%
%##############################%@%%%%%%%%%%%%%%%%%@%%%%%%%%%%%%%%%%%%%@%#+==+*%@%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%######################################################################**##%%
%###################%%%%@@%%%%%%@@%%%%%%%%%%%%%%%%%%%%#####################%####
=@%%%%%%%%%%@+ -@%%%%%%%%%
%@@################################################################################
#################@%%%%##############################%%%%%%%%%%%
%##########################################%@%*======-======++++++%@%%%%%%%%
%##############################%@%%%%%%%%%%%%%%%%@%%%%%%%%%%%%%%%%%@%#+==+*%@%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%################################################################################%
%##################%%%@@%%%%%%@%%%%%%%%%%%%%%%%%%%%%%####################%###
=@%%%%%%%%%%@- :@@%%%%%%%
%@@################################################################################
##################@%%%%%#############################%%%%%%%%%%%%
%###########################################@@*=====-===-======+%@%%%%%%%%
%###############################@@%%%%%%%%%%%%%%%@%%%%%%%%%%%%%%@%%#+==+#%@%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%
%##################################################################################
###%%%##############%%%%@@%%%%%%@%%%%%%%%%%%%%%%%%%%%%%%###################%##
=@%%%%%%%%%@%. .#@%%%%%%%%@
%##################################################################################
################%@%%%%############################%%%%%%%%%%%%%
%############################################%@*=-===-==-===-=+%@%%%%%%%%
%###############################%@@%%%%%%%%%%%%%%@%%%%%%%%%%%%%@%#+==+#%@%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%
%##################################################################################
#########%%############%%%%@@%%%%%@%%%%%%%%%%%%%%%%%%%%%%%%##################%##
=@%%%%%%%%%@+ +@%%%%%%
%@@################################################################################
###################%@%%%%###########################%%%%%%%%%%%%%%%
%############################################%@#=-=-========+@%%%%%%%%%%
%###############################%@%%%%%%%%%%%%%%@@%%%%%%%%%@@%#+==*#@@%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%
%##################################################################################
##############%%#########%%%%@@%%%%%%@%%%%%%%%%%%%%%%%%%%%%%%%%#################%#
=@%%%%%%%%%@- -@%%%%%%
%@#################################################################################
###################%@%%%%%##########################%%%%%%%%%%%%%%%%
%############################################%@%+-=-==-===*@%%%%%%%%%%
%################################@@%%%%%%%%%%%%%@@%%%%%%%@@%*+=+*%@%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%
%##################################################################################
#################%%%########%%%%@@%%%%%@%%%%%%%%%%%%%%%%%%%%%%%%%%#################
%
-@%%%%%%%%%@: .%@%%%%%@
%##################################################################################
###################@%%%%%#########################%%%%%%%%%%%%%%%%%
%#############################################%@%+-====-=*@%%%%%%%%%%
%################################%@%%%%%%%%%%%%%@%%%%%%@@%*++*#%@%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%
%##################################################################################
################%%%%%%%######%%%%%@@%%%@@%%%%%%%%%%%%%%%%%%%%%%%%%%%
%################
-@%%%%%%%%@#. +@%%%
%@@################################################################################
######################@%%%%%#########################%%%%%%%%%%%%%%%%%
%##############################################%@%+-==-=#@%%%%%%%%%%
%####################%############@@%%%%%%%%%%%%%@%%%@%#*++#%@%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%
%##################################################################################
################%%%%%%%%%%#####%%%%%@@%%@@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%##############
:@%%%%%%%#@* -@%%%%@
%##################################################################################
####################%@%%%%%#######################%%%%%%%%%%%%%%%%%
%################################################%@@*--=%@%%%%%%%%%%%
%##############%%%%%%############%@@%%%%%%%%%%%%@%%@@*+*#@@%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%@
%##################################################################################
#################%%%%%%%%%%%%####%%%%%%@@@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%############
:@%%%%%%%%@= .#@%
%@@##############################################################################%
%#######################%@%%%%%%######################%%%%%%%%%%%%%%%
%###################################################%@@*=#@%%%%%%%%%%%%%###########
%%%%%%%%#############%@%%%%%%%%%%%%@%%%@@@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%
%##################################################################################
#################%%%%%%%%%%%%%%%##%%%%%%@@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%##########
.%@%%%%%%%@- =@%%@
%##############################################################################%%%
%######################@%%%%%%#####################%@%%%%%%%%%%%%
%######################################################%@@@@%%%%%%%%%%%%%%#######%%
%%%%%%%%%##############@@%%%%%%%%%%@@%%%%@%%%%%%%%%%%%%%%%%%%%%%%###%%%%%%@%%%%%%%%
%%%%%%%
%##################################################################################
##################%%%%%%%%%%%%%%%%%##%%%%%%@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%##%%%%
.#@%%%%%%
%@: .#@@@#####################################################
#########################%%%%%######################@%%%%%%%####################%%%
%%%%%%%%%%#########################################################%%@%%%%%%%%%%%%%
%%###%%%%%%%%%%%%%##############%%@%%%%%%%%%%@@%%%%%@%%%%%%%%%%%%%%%%%%%%#####%%%%%
%%%%%%%%%%%%%%%%
%##################################################################################
####################%%%%%%%%%%%%%%%%%%%%%%%%%@@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%
.*@%%%%%%%@: -@%
%#############################################################################%%%%%
%%%####################%@%%%%%%%##################%@%%%%%%%%%
%###########################################################%%@@%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%###########%%%%@@@%%%%%%%%%@@%%%%%@%%%%%%%%%%%%%%%%%%########%%%%%%@%%%%%
%%%%%%%%
%##################################################################################
#######################%%%%%%%%%%%%%%%%%%%%%%%%@@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%
+@%%%%%%%@. :@
%##############################################################################%%%%
%%%%%###################%@%%%%%%%%#################%%%%%%%%%
%##############################################################%%@@%%%%%%%%%%%%%%%%
%%%%%%%%%%%#########%%%%@@@@@%%%%%%%%%@@%%%%%%@%%%%%%%%%%%%%%%%#########%%%%%%@%%%%
%%%%%%%%
%##################################################################################
########################################%%%%%%%%%@@@%%%%%%%%%%%%%%@%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%
-@%%%%%%%%. =@
%#############################################################################%%%%%
%%%%%%###################@%%%%%%%%%###############%@%%%%%%
%#################################################################%%@@%%%%%%%%%%%%%
%%%%%%%%%%%%######%%%%%@@@#++%@%%%%%%%%@@%%%%%%%@%%%%%%%%%%%%%############%%%%%@@%%
%%%%%%%%%
%##################################################################################
##########################################%%%%%%%%%@@%%%%%%%%%%%%%%%@%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%
-@%%%%%%%
%. .#@########################################################
######################%%%%%%%%%%%%##################%@%%%%%%%%%##############%%%%%%
%###################################################################%%%@@%%%%%%%%%%
%%%%%%%%%%%%%###%%%%%%@@%#+===*@%%%%%%%%@@%%%%%%%@%%%%%%%%%%%%#############%%%%%%@%
%%%%%%%%@
%##################################################################################
#############################################%%%%%%%%@@%%%%%%%%%%%%%%%%@@%%%@%%%%%%
%%%%%%%%%%%%%%%%%
:%@%%%%%%%. -@
%#############################################################################%%%%%
%%%%%%%%%#################%@%%%%%%%%%%############%@%%%%
%#####################################################################%%%@@%%%%%%%%
%%%%%%%%%%%%%%%%%%%%@@%#+====+#%@%%%%%%%@@%%%%%%%%@%%%%%%%%%################%%%%%@%
%%%%%%%@%
%##################################################################################
###############################################%%%%%%%%@@%%%%%%%%%%%%%%%%@@%%%%@@%%
%%%%%%%%%%%%%%%%%%
*@%%%%%@
%. .*@#########################################################
####################%%%%%%%%%%%%%%%%#################@%%%%%%%%%%%###########@%%%
%########################################################################%%%@@%%%%%
%%%%%%%%%%%%%%%%%%%@@@#+====+#@%@@%%%%%%%@@%%%%%%%%%@%%%%%%%#################%%%%%
%@%%%%%%%@
%##################################################################################
#%%%%%%%#########################################%%%%%%%%@@%%%%%%%%%%%%%%%%%@@%%%%
%@%%%%%%%%%%%%%%%%%%%
=@%%%%%%@: :@
%#############################################################################%%%%%
%%%%%%%%%%%%################%@%%%%%%%%%%%#########%@%%
%##########################################################################%%%@%%%%
%%%%%%%%%%%%%%%%%@@@@@+-==*#@@%%%@@%%%%%%@@%%%%%%%%%%@%%%%%%##################%%%%
%@%%%%%%%%
%############################################################################%%%%%%
%%%%%%%%%%%%#######################################%%%%%%%@@%%%%%%%%%%%%%%%%%%@@%%%
%%@@%%%%%%%%%%%%%%%%%
:@%%%%%%@*.
=@#############################################################################%%%%
%%%%%%%%%%%%%%%%##############%@%%%%%%%%%%%%########@%%
%###########################################################################%%%@@%%
%%%%%%%%%%%%%%%%@@@@%%@**%@@%%%%%%@%%%%%%@@%%%%%%%%%%%@%%%%###################%%%%
%@@%%%%%@
%###########################################################################%%%%%%%
%%%%%%%%%%%%##########################################%%%%%%%@@%%%%%%%%%%%%%%%%%%@@
%%%%%%@@%%%%%%%%%%%%%%%
.#@%%%%%
%@= .#@##########################################################
##################%%%%%%%%%%%%%%%%%%%%%###############@%%%%%%%%%%%%%######%@%%
%###########################################################################%%%%@@%
%%%%%%%%%%%%%@@%#*%@%%@@@%%%%%%%%@%%%%%%@@%%%%%%%%%%%@@%%%###################%%%%%
%@@%%%@@%#########################################################################%
%%%%%%%%%%%%%%%%%%#############################################%%%%%%%@@%%%%%%%%%%%
%%%%%%%%@@%%%%%%%@%%%%%%%%%%%%%%
=@%%%%%@%@- :@
%############################################################################%%%%%%
%%%%%%%%%%%%%%%%##############%@%%%%%%%%%%%%%####%@%%
%#############################################################################%%%%@
%%%%%%%%%%%%@@%*=-=%@%%@@%%%%%%%%%@%%%%%@@%%%%%%%%%%%%@%%%####################%%%%
%@@%%%@%#########################################################################%%
%%%%%%%%%%%%%%%%################################################%%%%%%%@@%%%%%%%%%%
%%%%%%%%%%@%%%%%%%%@@%%%%%%%%%@%%
:@%%%%%@%%%- =@
%###########################################################################%%%%%%%
%%%%%%%%%%%%%%%%%%############%@%%%%%%%%%%%%%%##%@%%%
%#############################################################################%%%
%@@%%%%%%%%%@@#+=-=*%@@@%@@%%%%%%%%@%%%%%@@%%%%%%%%%%%%%@%%#####################%%%
%%@@%%@%########################################################################%%%
%%%%%%%%%%%%%%###################################################%%%%%%%%@%%%%%%%%%
%%%%%%%%%%%%@%%%%%%%%@@%%%%%%@@%##
*@%%%%@%#%
%: .#@###############################################################
#############%%%%%%%%%%%%%%%%%%%%%%%%%%###########%@%%%%%%%%%%%%%%#%@%%%%
%#############################################################################%%%%
%@@%%%%%@@%#====#%@%%@@%@@%%%%%%%@%%%%%@@##%%%%%%%%%%%%@%%####################%%%%
%@@%@@%#######################################################################%%%%%
%%%%%%%%%%%%######################################################%%%%%%%@
%####################@@%%%%%%%%%@@@@%%%####
-@%%%%@@##%%- :@
%###########################################################################%%%%%%%
%%%%%%%%%%%%%%%%%%%%%##########%@@%%%%%%%%%%%%%%@@%%%%
%#############################################################################%%%%
%@@%%%@@%*===+#@%%%%%@@%%@@%%%%%%%%##%@@%##%%%%%%%%%%%%@%%####################%%%%
%@@@%#######################################################################%%%%%%%
%%%%%%%%%#########################################################%%%%%%%@@
%###################%@@%%%%%%%%%@@%#######
*@%%%%@%##%%- -@#%%%%%
%####################################################################%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%#########%%@%%%%%%%%%%%%%@@%%%%%
%############################################################################%%%%%
%@@@@@#+===*%@%%%%%%%@@%%@@%%%%%%%##%@@%###%%%%%%%%%%%%@%%###################%%%%
%@@@%######################################################################%%%%%%%%
%%%%%%%%###########################################################%%%%%%%@@
%####################%@%%%%%%%%%%@@%######
:%%%%%@%####@+. =@%%%%%%%%
%##################################################################%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%#######%%@@%%%%%%%%%%%@@%%%%%%
%############################################################################%%%%%%
%@@#+==+#@@%%%%%%%%%%@@%@@%%%##%##%@@%####%%%%%%%%%%%%@%%##################%%%%%%@@
%#####################################################################%%%%%%%%%%%%%
%%###############################################################%%%%%%%@
%#####################%@%%%%%%%%%%%@%#####
=@%#%%@#####%#: .*@%%%%%%%%%%%
%##############################################################%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%######%%%@%%%%%%%%%@@%%%%%%%%%
%##########################################################################%%%%%%%
%@#==*#@%%%%%%%%%%%%%@@%@@@%######@@%#####%%%%%%%%%%%%@%%%##############%%%%%%%%@@
%####################################################################%%%%%%%%%%%%%%
%#################################################################%%%%%%%@
%#####################%@@%%%%%%%%%%%@@%###
.*@%%%@%#####%@=. .%@%%%%%%%%%%%%%
%###########################################################%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%#####%%%%@@%%%%%%@@@%%%%%%%%%%
%#########################################################################%%%%%%%%
%@%#%@%%%%%%%%%%%%%%%@@%@@@%#####%@%######%%%%%%%%%%%%@%%%#########%%%%%%%%%%%%@@
%####################################################################%%%%%%%%%%%%
%####################################################################%%%%%%%@@
%#####################%@%%%%%%%%%%%%@@###
.%%%%@@#######%#- .@%%%%%%%%%%%%%%%%%
%#######################################################%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%###%%%%@@%%%@@@@%%%%%%%%%%%%
%#########################################################################%%%%%%%%
%@@@%%%%%%%%%%%%%%%%%@@%%@@%####%@%#######%%%%%%%%%%%%@%%%%%%%%%%%%%%%%%%%%%%%@
%####################################################################%%%%%%%%%%%%
%#######################################################################%%%%%%%@
%#####################%@@%%%%%%%%%%%%@@##
-%%%%@%#######%%#- :@%%%%%%%%%%%%%%%%%%%
%#####################################################%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%##%%%%%@@@@@%%%%%%%%%%%%%%%%
%#######################################################################%%%%%%%%%
%@@%%%%%%%%%%%%%%%%%%%@@%@@%###%@@#########%%%%%%%%%%%@%%%%%%%%%%%%%%%%%%%%%@@
%####################################################################%%%%%%%%%%
%##########################################################################%%%%%#%@
%######################@@%%%%%%%%%%%%%@@%
=@%%@@#########%%#=. :@%%%%%%%%%%%%%%%%%%%%%%
%#################################################%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%@@%%%%%%%%%%%%%%%%%%%%
%####################################################################%%%%%%%%%%%%@@
%%%%%%%%%%%%%%%%%%%@@@%@%##%@@%#########%%%%%%%%%%%@%%%%%%%%%%%%%%%%%%%%@@
%###################################################################%%%%%%%%%
%#############################################################################%%%%
%*#@%######################%@%%%%%%%%%%%%%%@@
=@%%@%##########%%@#*@@%%%%%%%%%%%%%%%%%%%%%%%%
%#############################################%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%@@%%%%%%%%%%%%%%%%%%%%%
%##################################################################%%%%%%%%%%%%%@@%
%%%%%%%%%%%%%%%%%%@@@%@@##%@%##########%%%%%%%%%%%@@%%%%%%%%%%%%%%%%%%@@
%##################################################################%%%%%%%%
%#################################################################################%
%%%**@@%#####################%@@%%%%%%%%%%%%%%@
=@%%@%############%%@@%%%%%%%%%%%%%%%%%%%%%%%%%%
%##########################################%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%@@%%%%%%%%%%%%%%%%%%%%%%
%##############################################################%%%%%%%%%%%%%%%@@%%%
%%%%%%%%%%%%%%%#%@@%@@%%@%###########%%%%%%%%%%%@@%%%%%%%%%%%%%%%%%@@
%##################################################################%%%%%%%
%##################################################################################
#%%%#+*@@%######################@@%%%%%%%%%%%%%%@
=@%%@%#############%@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%#######################################%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%@@%%%%%%%%%%%%%%%%%%%%%%%
%##########################################################%%%%%%%%%%%%%%%%%%@@%%%%
%%%%%%%%%%%%###%@@%%@@@@#############%%%%%%%%%%@@%%%%%%%%%%%%%%%
%@@##################################################################%%%%%%
%##################################################################################
####%%%#++%@%#####################%@@%%%%%%%%%%%%%%%