++-++=:+**######*###########*#############*=::-=:**########*##**####################*+#####**############*+**######*#####**###########################+########################*##########################*:*###########################################
**=****###***##*******#**##*##**#####***#####**#####**##***###*#####################*+###+-=##*###########**###***##########*#**#########################*++##########################################*###**##########################################*#
#**####*#*#*#***+=:-.---:==+**=:**###########*##################################**+***####################**+*+.:*####**#*=..--+*#########################**+- -+**###############################*+*####+::+*##########################################
#**#########*#####**+++==:::-:=+**###########**#################################**##**####################*###############++**###############***#############*=*+*+***##**##############*#############*################################################*
##*###*######*###*++=*+***#*******###*:#######################################*######*###*################*###########################**++=++**#######*###################*###########################################################################*#
##*#*###########*+**=**:+#######*####**######################################+*+#####*#########################*##########**#############**++=+***####*=-+###############################################################################*##############
*#**################*######################**==***##*################################*########*##############################################################################################=################################*#########################
#*=-*######################################**==**######################*##################################################*+**#####################################################################*=.:*#########################+*#########*-##########
############################################=#####################*###############+######################################################################+#############*####################################*######################+*##########*####*###
##**#########*##############*####################################################################*+###################################################################*###############################:#####################*################**#########
##+*################*##################****##################################.*################################*####################################################+######**###########################################*####################+*#########
#*######+############################*++.-+*###########################*######################*:######*####**########################################################################################################*################################**
###################*#################******#################################################**--*:################*+*####################*=.=*###################################################++**#########*=########################################
##################################****#***+=:=+**###################################*###########****#############################################*############*:####################################################*#######*=:*########################
##*####+####+##############:#########*#*###*+-*#**####################################################*#****==*###################################*#######***###############*#*#######*+*+**#####*+:**##+######**#######################################
##########################################*#**############################################################################* *###*####+###############*+*********########*********+:-+*##*+**+*+++= .+**##*#######*==*###################################
######################################################+#######################*:*####*+:+#####################################################*+**#*****++==++****###*.*##+:--:*###*#####*****+=- .:++**###########-##*######################*=#########
#####################################################################*########################################*##################################*****+:-   .:+***###**####==*#####*########*************###**##############=####******##*#####+########
#########################*###################*::*#**###############################==*##########################***#####*#######################*****+++==:=++****####*#####*########-#########******####*###*#########*****######***##***-:*****#######
#####################################################################=+###################################################################*********************###############################*:*###########*###########*+=:+############**=-:+**#######
###############################################################################*##########################*#################+##########******+=--:-.=++**+=*****#**#############################.***#####*###*+###**#####*####**#######**+=::+**########
###############**#*#####=+####################*######***+ +#*################*#*******####################**####*++*#######*###*=+####******+=:-...-==-..:+*****###*########*#*#*###############**-****-****#######################**:####*#############
##############**#*-##################################***##=###*#################++++=**#######**##########*##**+#################*###*******+==:---:=+++****+***######**##*******#*#*#****#*####****#**+=+***######+#################*##**###*##########
#########*=##############################=#################*####*############*##*+*#######################*##**++###**#################*******+++=+++*******#######*+###*=******#*####**#*##*#**##*#****+: =+**#################################*#######
=##+###################*################################################**#########+##########=*#####.###******#########################****++:++***********#####*####*###*#**#*#****##*###*#*#*###*#*#***+****#*#############################**########
+#######################*####*+####+#############################*##########*=**####################*#####**############*####*#######*********+***********###*############**##############*###########********#################***#############*.*######
###################################*###########################+=-:+*##############****########*+######*#*+**################*=+***##**######*******#*****#***#*#**########*:=*############*######*####*##*##########*#########*########################
###########*+*##############***+=+*###*++*##****######++########***#####################*=**####*####**:=+=*********= +*#***+*####***=**##*#*******#********:*##**+:+*#*#################################*##############################################
############################**+: -+****############**#######################################**=++*********=+*********==+*****#*#*#******#**##********************+:**#*###################################*#*+****####################################*#
################:*######*##*****=+*#**###*#####**#*.*####################*#############*=-*###*+***=-:==:=-:=++=::****##*********#****************++=***************#*##*########*##*#########-#######*####*#***++***###################################
#######################*:*#################################################*=##########*#***#*****++:...     -:=++***+*******************************************#*########*######################*#*##*#*#####**==:-::=+**##########*+=**+#############
##################=#####################################*######################*#######*#######*****=:-:::.-=::.:+****************+-:*********************+**********#*#*##*#***######*##*#*-**##*####*#####*###*++==:-:=***##*#######****##############
########*###############################*##########*##########*#############+################**+=+*******+:=*****+.+:=***+************************ ******************#**##**#*#*###*#*#*#####**#*###################################+:##################
####*####*##*##########*#*#########################=*-=##################################**+**#######*****+**************+:+*********+**********+-.+**********+=:.+*********#****###**#***######################################################*+:..:+*
######################################+#**##########################################*+*#####*#**#*#*#*****+*********************+******+********++******************++******#*************########################################################**####
###########################*###*+#####*########################################**##################*####****#*##***#*#****+-=+****+*++**********************************+*********#****++**##########*##########+#########*#######=#############=*=#####
############*+###############*###################*######################*+**#+#:#***############*###**#*********#***************+:=+**+***+++++++++++****************=*+=+********#########*#################*##########################*###############
*######*###############################*##########*#################*###########*+*###########*########********#***************+**++++++++=:---:===+****************##******+:=***####*################################=+########*######################
###############################################*###############*##############################****####****+*************+*=+++++++====:===:-. .-= =+==*********#**#*****#***+*++******############*#####+.*###########################################*#
###############################################**==-.--:+**#################################*-*************************+++++==:::::::::=======- -=+**********#**##*#*+**##******-*+=.-+****##*#######################*##################################
##-#+*#########################################**********#####*##############*####*#**********=***********************+++==::-.... .-::==++++++++++********####***########**=+*#*********####*###*############################*#########################
#####*################*#########+-:*##########+.=*###**###*=####*****+++******##****+=--:=+***********++*****+***+*+++++=:---..    .-:==+++*************#***#########*###*#*+**####*######*########################################:####################
##########################=#####*##*##*#####*##*##########*+###***+=-  :+*****#*****+==:=++***************++**+**+++++=:==:::----::===++++++*******#**###############################*##############++##############################################**##
####################################*: =*#####################****+-:=+******#**********************++ =*+++++++++++++++===.=====++++++***++++*****########*###############****##########################################################*#########*=:**
#####################*###*+*###*#***#**###**##############**+=***#*+.=*****#*#**+*************************+**++*+++++*++++++++++++****************####+####################****++*****##*###############################################################
###############################**:+**++#################*###***###*:***####*****==+******************:****++*********+=+++**+***+=+********#****++*###########*#*##########**+=..=-.:**##*+############################################################*
#############################################*###**##################*##*=+*#****++*******************+:+*+*==*****+++++*****++:=+******#***********####**#########*#*=*####******+=+**###############################+-=+#############################*
:+*######################################**+=::=*=-**#####*##############*####**********+:*************+**=*++.- .:=- ...=+***==:+***#***####**+- :+****#####*##############################################*############*############*#=###############
*################################**#####*****+****.:-+*###*###################********************++=:. .:=++*+++=**+***+++*****##*#**##**+*****++*******#####:##########*##############*#############+##########*#######**######*######################
#################################+*###############**#######################*#**************************+*******:--=***#****##**####*#################**:=*###############################=*###########################*:::=:-*##########################
###**-=*###########################*#################*= =*##################****************+**************+ +*********=+*##*#######*##########################################***######*###################*########*==*=+*+=*#########################
#*###############################*+**#*###############+###########*##########**************+::=******#**-**#*=###############*****##*####+######################*#########*.+*##################+################*#######**######**#####################
#########**#####################**=-**######################################***********+-=**********###****##################*+##################*#############*########################################################################################
###############################*##***##############*#.*###*##########*####*####***##*#****#***+.:***#################################***################################################################################################################
############**+**############**#####*########################*:***#*#***#####*####*==*########***###*#####***#############*#######################################################*#####################################################################
##################**########################*################**:**#############******#*#**###########*#############################*########****#####################################################**##############################*##################
#########*=*##*-:*****#########################:##############*###############*****##################*###**#***= :***######################***###################################*+*################*+-=**###############*##-#############*#############
#####################+########################################*+#*#########################**#######**++++****##*******######+*###*##*###########################################+############################++*#########################+#############
#####################################**##########*.*#############**#############################**++*****= =*####*+::=**###*###**=:=+*######################***####*-+*########################################################*:-**+##########=##*#####
##################################*##############+##########****#**#***####*########*#############**###*##############*##############**######+ +#####***++**##*######################################################################*=#################
################################################*****+-:+*****+++***+**##########*##****#######*##*####+##****+++*######***###########################*+:=+**#################################*#########################################################
##################**:.=*#####*+*#########+*######*+=+*:******+: .=*********#######**+--:***#*###+##****#################################=+####################################################################################################*#########
####################*.*#**###**+-+##########*######**+:=*#*****=:+****##**###*#****#****##*##:###################=*########**===*#######+*#########################################################################*####################################
#################################*#######*####################****############*###**####+###############################################################################+##############################################*################################
########################*##******###################*##########*####****#################+########*#################*#############################*#####################+#########################################*###########################*########*
#########################+=-..:-+*############+#####*######*###########+***##################*.*#################################*############################################*######*#############################################+++########*#########
######+*#######################*###*+#########################****+++*****##**##########+#######+.+#########*+*####***##+##**################################################*####+..*=#######################################################*######*-:
##############################################################****+:..:=+***#############*##*####################*=....+*###*############*===**###*###########################################################################################*#########
##########+#########+###########*###################################*******##############**= =**###############*+=++=+*+:*#################*####**####+*##########################################**###########################*##############*#########
##########################*.=###*####*####*+*######################################+:-:+*#****#############**#****#***#######*#################################################################**=..=**############################***########+#########
####################**########*#**##########*##################*+############=+##*###*****########**=:=**###########*######***=####*###################################*#########################*****#####################*+*##########*=+***:+**+:*###
#*#*#####################+**##**+********###########*##############*=*#####################*+###*##**++**#+*#############*.=--+***####+=####################################################################################++###########***=   =***####
*+:=+**#######**###########***=. .:+=*#############*+::*######**++=*########################******##*################*+*#############*########*+.*#######################################################################**############*:**#**:***+.=+##
####*##########*#########+*++***=*++==*######*#################################*#######***::-=+***#############*############+##*###############################################*##################*#*#*##############:*############*##########+#########
#######*#######*#####*****######*#*######***#########################*########################*###############+##########*++*##############################*-*#############=####################*###########* *##############*########:*######+#########
#################*******+#######*###############*################################################################################+########################*+:--=+########*-*=+########*:=###############*++++*################################*#########
################*****:+***######*#######*############*#####*################*#################################*=####################*=-=*####*#################*########*=:+######################+-*#########################################*######+##
######*########**+=-  .=+**#####*#*####################################################***################*############################*#########*#*##**#######*########*##**##########*###################################################+##*#########
*####***####*#+*#***++****############******+**#***#####################################################*####*########################################**+*#####+=#####**########*+:.+**#######################################################*##*######
##############*#########*#################*= .+*###########*###########****##################################=##########*-+***#############################*+:-...=**#############***####+###################+##########################################