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