# ######+############
#########++++++++++++##################
#########+++++++++++++++++++++++++++++++++++++##
######+++++++++++++++++++++++++++++++++++++++++++++#
####+++++++#++++++#++++####+++++++++#++++++++++++++++##
####+++++++++++++#####++###########++++++#+++###++++++++##
##+#####+++++++######+########+#+###++######++#########+####
+++#++++++++##########++++++#############################++++
#++++++++++#+#######+#######+#############+#########+#####++++++
+++++##############################+##################+#######++
++++++#################+##+++######++####+############++++#####++
+#+##################++##################+++++#####+++###++##++#++#
+#######################################################+++++####++
+###########+###########################+++#####+######++########++
++############################+#######+##+++###+++#+###++++#+####++
++###################+++#########+#++#+++#####+###+######++###+#++++
++#################++++#+########++++########################+++##+
+++#++#######+####+++++++######################################+##+
+++++#########+++++++++########+###########++++####+##########+++
+++########+++++++++++####+++############++#+#++#++############+
+#########+#+#####+###+##++++++++++++++++++++#++++++++########+
+######################+#++++--+---+++++++++++++++#+++#######++
++########################+++-------+++++++++++##+###+++####++
++###+--++#############+++++---------++++++++++##+++++++++++++
++++-----+++########+++##+++----------+++++++++++++++++++#++++
++--------++++#####+++++--++----------+++++++++++#+++##++##++
++---------++++++++++++---------------+++++++++++++++-+#++##++
++----------++++--++++----------------++++---++++#+++++#++##+
++-----------+++---+++++++------------++++----+++##++++++##+
++++###++--++++++---+++++++++--------+++++----++++#+++++##+
+++#####+++-++++++--+++++++-+-++-----+++++-----++++++++##+
+####+++++----++++----++++--+-------++++++-+-----+++++##+
+#####+++++++++--+-------+++++----++++++++--++++---++####+
+#######++++++++----+---+++++++++--+++++++-++++++++++##++
+#############+++++--+++++++++++++++++++++++###+++####++
++####++++++###+++++++++++++++++++++++++++-++++++##+++
########++++++++++++++++++++++++++++++++++-++++++###+
##########+++++++++++++++++++++++++++++++++----++##+
+####++++++++++##++++#+++++++++++++++++++++-----++
+#######++++++####+++++++++++++++++++++++------+++
+#######++#######################++++++--------+++
#############################++++++++---------++#
###########################+++++++++----------++##
##########################+++++++++------------++++
###+##################++++++++++---------------+---+
##+++#######+########+++++++++++---------------------+
++++#++++####+####+++++++++++++------------------------++
#+++++++++++#########+++++++++++++--------------------------+
#######+++++#++++#########++++++++++++++----------------------------++
#######+++##+##++++#########++++++++++++++------------------------------++
+#######++++++###+##+++++##########++++++++++++++--------------------------------+++
#+++++++++++++#######++++++#########+++++++++++++++-----------------------------------++
+++++++++++##++#######+++++++++++++###++++++++++++++----------------------------------------++
+++++++++++##++#####++++##+++++-------##+++++++++++++-------------------------------------------+++
#++++++++++###+#######++++++++++#+------------+++++++------------------------------------------------++
##+++++#+++###+########+###++++#####+------------++++--------++------------------------------------------++
##+++++##++###+########+###############++---------++-----++--#####+-----------------------------------------+++
+#+++#++##+################################+--------++++++#############+++----++-------------------------------+++
+#++##+##+###################################+---++########+++------++++++####+-----++----+-----------------------+
+##+##+##+#############++++-+#################+++#######++---------------------------+----+--------------------------
+###+#################+++--++##########++++++++++######++-----------------------------++--++--------------------------+
#####################+++---+++++++++---++-+-+-----+-++--------------------------------++++++-----+----------------------+
##+############+####++++-----------+----+-+-+----+---------------------------------------+++----+++-----------------------+
#++###########++++++-++----------++------++#+-------------------------------------------+++---++++-------------------------+
##+###########+-------+------------+----+++##--------------------------------------------++----++++--------------------------+
#+++#######+++----+-++----++-----++---++++##+-------------------------------------------+++----++++----+---------------------+
#++++####+++++----++++-------------+--+++-+##----+-+-------------------------------------++-----+++----+++--------------------++
#++##+###++##+---++++--+------------++++--+#++----++------------------------------------+++----+++----+++----------------------+
+++##++#####+---+++++++--+--------++-++---##+++++-++++----------------------------------+++---++++---++++-----------------------+
++####+-####++--+++++++--++--------++++---+#++++++++-+--+--------------------------------++----+++----+++------------------------+
++#####++###+--+++++++++++---+---+-+++----+#++-----++-+++--------------------------------++---+++----+#++-------------------------+
++##########+-++++++++++++--------++++----##+++++++++++++--------------------------------++---+++---+##+--------------------------+
++++#########++++++++++++++--+--+-++++----+#++++----+++++-----------------+--------------+++---++----+#++---------------------------
++++++########++#++++++++++++-++---+++-----+####+++-+++-#+------------++---++#+----+------+++--+++---+#++----------------------------+
+++++++############++++++++++++--++++++-----+##+++++######++-----------++++++++++---++----++++--+++--++#++----------------------------+
++++++###############+++++++++++++-+++++------++++----+++##++------------++-++++++------+-+++++--#++-++#++-----------------------------+
++++++###############+++++++++++++++++++------++++-----+###++------------++++-++---------++++++-+#+-+++++--++--------------------------+
++++++++##############+#+++++++++++-+++++------+++++----+###+++-----------++++-+++++-------+++++-+++-++#+++++++-------------------------++
+++++++---++#############++++++++++++++++------++++++----+###+++------------++----+++-------+++++-++++++#+++++---------------------------++
++++++#+++-++###############+++++++++++++-------+++++----+###+++------------++-----+++------+++++-+++++#++++++--+++-----------------------+
+++++++++++++#################++++++++++++------++++++----+###+++---++++++++++++-----+++-+----++++-++++#+++++++++++------------------------+
+++++++++++++#################+++++++++#++------++++++----+###+++---++++++++++++-----+++++++--++++-++++#++++++++++-------------------------+
++++++###++-++#################+++++++++#++------++++++----+###+++----++++++++++++-----++++++++++++--+++++++++++++--------------------------++
+++++++++++####################++++++++##++------++++++----+###+++-----+++++++++++--------++++++++++-++##+++++++++---------------------------+
+++++++++++++###################+++++++##++------+++++++----+###+++-----++++++++++++-------++++++++++--+#+++++++++----------------------------+
+++++++++++++##################+++++++###++------+++++++----+###++++------++++++++++--------+++++++++--+#++++++++++++-------------------------+
+++++++++++++##################+++++++###+++-----++++++++-----+###+++-------++++++++++-------++++++++++-+#++++++++++---------------------------+
+++++++++++++#################+#+++++####++------++++++++-----+###+++-------++++++++++--------++++++++++-###++++++++----------------------------+
++++++++++++####################++++####+++------++++++++-----+###+++--------++++++++++--------+++++++++-+#+++++++++----------------------------+
+++++++++++++#################+#++++####+++-------+++++++------+###++++--------+++++++++---------+++++++++##++++++++-------------------+---------+
+++++++----+###############+####++#####++++-----++++++++-------++##+++----------+++++++++---------++++++++##++++++++++++++++++-------------------+
++++++-----+##############++####+######++++-----++++++++--------+##++++---------++++++++++----------+++++####++#+++++----------------------------+
+++++++-----++############++#++++######++++------++++++++--------+##++++----------+++++++++-----------+++#####++++++++---------------------------++
++++++-------+###########+++++#+#######++++-----+++++++++--------+###+++-----------+++++++++----------++######+++++++++++-+++++++++++++----------++
+++++++-------+##########+++++#########+++++----++-+++++++--------++##+++------------++++++++++---------+########++####+++++----------------------++
++++++---------+########++++++#########++++----++--+++++++---------+++++++-------------+++++++++--------+########+++++++++------------------------++
+++++++----------+######++++++####+##++++++--+-+---+++++++---------++++++---------------+++++++++-------+########++++++++++-----------------------++
+++++++-----------+####++ +++###++#+++++++------+-++++++++----------++#+++-----------------++++++-------+#########+++++++++-----------------------+
+++++++++-----------+###++++++++++++++#++++--------+++++++-----------++++++------------------+++++++-----+#########++++++++++----------------------+
++++++++++------------+#+++++++++++++####++--+-----+++++++-----------++++++--------------------++++++----+##########++++++++++---------------------+
++++++++++-------------+#++++++++++++++##++++++-----++++++------------++++++---------------------+++++----+##########+++++++++---------------------+
++++++++++--------------+#++####+++++++++++++++-+---++++++------------++++++----------------------+++++----+##########+++++++++--------------------+
++++++++++--------------+#+########+++++++++++++++++++++++------------++++++------------------------++++----############+++++++-------------------++
+#+++++++++-------------+##########++++++++++++++++++++++------------++++++---------------------------++---+##########++++++++-------------------++
++#+#+++++++-------------+########+++++++++++++++++++++++------------+++++++---------------------------+---+#######++++++++++--------------------++
+####++++++++------------+######++++++++++++++++++++++++------------+++++++-------------------------------+###++++++----------------------------+
++####++++++++++----------+####+++++++++++++++++-+++++++------------++++++-----------------------++++++++-++++++++++---------------------------++
++####++++++++++++----+---++###++++++++++++++++++++++++------------+++++++--------------------+++++++++++++++++--++---------------------------++
+####+++++++++++++--------++#++++++++##++++++++++++++-----------++++++++-------------------------++++++++++++-------------------------------+
++######++++++++++++-++---++#+++++-------++++++++++++-----------+++++++----------------------++++++++++++---------------------------------++
++######++#++++++++++++---------------------++++++++-----------++++++-----------------++++--++++-------+---------------------------------+
+#########++++++++++-------------------------------------+++++++++++-----------+------------------------------------------------------++
+##########+++--+++------------------------------------+#######+++-------------------------------------------------------------------++
++##########++###+--------++++-------------------------+++++#++++++----------------------------------------------+++++++-----------+++
++#############+++++++++++---------------------------+++++----++++--------------------------------------++++++++++++++----------+++
+++#############++----------------------------------+++-++---+-+++-----------------------------------++++++++++++++++--------+++++
++##########++++++++-++++++++++------------------+--+++----++--+--------------------------------+++++++++++++++++++++--++++++++
++########++++++++++++++++++------------------+++++-+++--++++++-----------------------+---+++-+++++++++++++++++++++++++++++
++########+++++++++++++---------------------+#+++--+---+++++------------------++++++++++++++++++++++++++++++++++++++++
++###+###++++-------------------------------###++++----++++----------+++++++++++++++++++++++++++++++++++++++++++++
++######++---------+++++++------------------+##+++#++++++++--++++++++++++++++++++++++++++++++++++++++++++++
+########+++++++++++++++++------------------++##+########+++++++++++++++++++++++++++++++++++++++++++++++
++##########++++++++###++++------------------++###########++++++++++++++++++++++++++++++++++++######+++
++##############+++---+++++------------+++++++##############++++++++++++++++++++++++###############+++
+++############++++---++++++++----+++++++++########################################################++++
++#++###########+++++++++++++++++++++++#++--------++++++###########################################+++++
++++++#################################++++++++++++++++#########################################+++++++
++++++############################################+++++#############################+++++++++--------++
+++++######################################+++++##++-+#####################+++++++---------------------+
+++++#########################################++++++++############+++++++++-----------------------------+
+++++###########################################++++++####+++++++----------------------------------------+
++++############################################+++++++--------------------------------------------------+
++++##############################################+++-----------------------------------------------------+
++++#############################################+++++----------------------------------------------------+
++++################################################++++++-------------------------------------------------++
++++#########################################++++####+++++++++---------------------------------------------+++
++++#######################################+++++++++++++++++++++++-------------------------------------------+++
++++#####################################++++++++++++++++++++++++++------------------------------------------+++
#############
#### ##+######+################
###########+++###++++++++++########################
###########++##++++++++++++++++++#++++++++++++##+#++++++++#
##########+++++++++++++++++++++++++++++++++++++++++++++++++++++###
########++++++++++++++++++++++++++++++++++++#+++++++++++++++++++++++#
######+++++#+#++#+++++++++++#+++#####+++++++++++##+++++++++++++++++++++##
######+++++++++##++++++#####+++#########++##++++++##++#+++++##++++++++++####
#####++##++++++++++++##+######+###########++#####++++++##++++####++++#++++++##
###+#+##+#++++++#+#+#########+###++#####++#+####++##########+###+#########++####
#+++#+++#++++++++############++#+++++##+#####################################++++#
++++++++++++++++++########+#####+##++++################+###########+#####++++++++++
+++++#++##++#############+++########++##########+####################++########+##++
++++++++######################################++######+################++##++######+++
++++++++#################+####+####++++#######++++####+#+########+######+++++#######+++
+++++##+####################++++######################+++#+++####+#+++####+++++#######++
++###########################+#####################+#+####++########+#++###+++++###++###+
++###############+####################################################+####++++++######++
++##############+####################################+++########++####++##++####+######++
+##############+##############++#######+++###+########+++#####++++##++##++++++#++#####++
++###############++###########+######+#+#####+###+++#####++#+#+++++++#+###++++##++###++++
++#########################++++####+####+#####++###-+######++####++##+####++#+####++#++++
+++#######################+++++##+####+######++++#################+###############+++##++
++++#+++##########++#####++++++#+####+#######++++###################################+###+
++++++++#######++#####+++++++++++########+########++++########################+#######+++
+++++++######+####+++++++++++++############+#############++++++#####++######+######++++
++++#+#########++++++++++++++######+++#++#############+++#+##++##++################++
++########+###+++++##++++++##+####+++#++######++++++++++++++#+++++++#++############+
++##########+#####################+++++++++++-+++++++++#+++++#++++++#+++###########+
++#############################+#++++-----+----+++++++++++++#+++++##++#+#######+#++
+++############################++##+++----------++++++++++++++##++###+++#+######+++
+######+++++##################++++++++-----------++++++++++++++########+#++#+++#++
+++##+----+++###################+++++-------------+++++++++++++#+++----++#++#+++++
++++--------+++###########++++###++++--------------++++++++++++++++####+++++##++++
++++-----------+++#########+++++-+++++-------------+++++++++++++++###+####+++##+++
+++------------++++++###++++++--------------------++++++++++++++++#++--+##++++#+++
+++-------------+++++-++++++++----------------------+++++--+++++++-++++--##++###++
+++--------------+++----++++++----------------------+++++----++++##+++++-+#-+###+
+++---------------+++----++++++++------------------+++++------+++###++++-+++###++
++++++++++-------+++++-----+++++++++--------------++++++------+++-###+++++++##++
++#++######++++++++++++----+++++++--+++-+--+------++++++------++++-+#++++++###+
+++########+++---+++++++-+-+++++++++----++-------+++++++-------++++++++++####+
+++#####+++++------++++++---+++++++-------+-----++++++++--+--------+++++####+
++#####++++++++++-----+++-------+++++++-------+++++++++++-++++++--++++++####+
+########+++++++++++---+---------+--++---------+++++++++--++-------++++####+
+##########+++++++++------++-+--++++++++++++---+++-++++++-#+++++++++#+####+
++##############+#++++++++--++++++++++++++++++++++++++++-+####+++++######+
++#########+########++++++---+++++++++++++++++++++++++++-+####+++####+#++
++######+++++++++++++#+++++++++++++++++++++++++++-++++++-+++++++++####+
##########+++++++++#++++++++++++++++++++++++++++++++++++--+++++++####+
###########+#++++++++++++++++++++++++++++++++++++++++++++------++##++
++######+#####++++++###++++++++++++++++++++++++++++++++++-------++##
+########+++++++#++###+++####+++++++++++++++++++++++++++-------+++
+######+##+++++++#+#++#++#++##++++++++#++#+++++++++++++--------+++
+##########++###+#+##########################+++++++-----------+++
+#################+###############+######+++++++++------------++#
######################################+++++++++++-------------++#
++##############################++##++++++++++++-------------++##+
##+#################################+++++++++++-+-------------++++++
###++###############+##+#########+++++++++-------------------++---++
###+++######+##+#############+++++++++++++--------------------+-----++
#++++#+####+####+##########+++++++++++++++----------------------------++
++++++#++++++###########++++++++++++++++++-------------------------------++
++++++++++++++###########++++++++++++++++++---------------------------------+++
#+++++++++++++++#############+++++++++++++++++-----------------------------------+++
#########+++++##+#++++#############++++++++++++++++++-------------------------------------+++
###########++++#++##+++++#############++++++++++++++++++----------------------------------------++
#######++++++####+###++++++#############++++++++++++++++++-----------------------------------------++++
+++#######+++++++++####+####++++++##############++++++++++++++++++--------------------------------------------+++
#++++++++++++++++++#####+###++++++++############+++++++++++++++++++-----------------------------------------------++++
+#++++++++++++##+++######+##++++++++++#+##########++++++++++++++++++---------------------------------------------------+++
++++++++++++++####+#######++#+++++++++++++------####++++++++++++++++++++-------++--------------------------------------------+++
++++++++++++++####++#######+++++###+++++++----------#++++++++++++++++++-----------------------------------------------------------+++
++++++++#+++++####+#########++++#++++++++##++----+----------++++++++++----------------------------------------------------------------+++
##++++++#++++#####+##########++##++++++++#####+----------------+++++++----------+---------------------------------------------------------++
##+#++++++##++####+############++##################+--------------++++----++-----####+--------------------------------------------------------+++
##+#++##++###+#####+###########++######################------------+----------+--#########+-------------------------------------------------------++
+#+#++###+###+#####+###########++#########################------------++++++###################+----------+-----------------------------------------+++
++#++###++##++####+############+############################------++#############+++++++++++#############+-------+------++-----------------------------++
-+##+#####+##+################+++###++#########################-+++#########++--------------------------+--------++------+--------------------------------+
++###+###+###+################+++++--++######################+++###########++-------------------------------------+------+----------------------------------+
++####+##+###++###############+++----++#+################++++++#+#########+++-------------------------------------++++--++------------------------------------+
##+###+###+###+####++########+++----++++++#+++++---+++---------------+++---++--------------------------------------+++--+++------+------------------------------+
#+####+######+#####+#######++++----++++----+-+-----------++-----+--------------------------------------------------+++++++----+--+-------------------------------+
##+#######+########+++###+++++++------------+--+-----+-+-++-------+-------------------------------------------------+-++++-----+-++--------------------------------+
#++###############++++++++--+++-----+-------+--------++++#+------------+----------------------------------------------+++----++++++--------------------------------++
#+++#######+######+----++---+++----------------+--+--+++###-----------------------------------------------------------++++----++++++---------------------------------+
##+++#######+##++#+-----+---+-----------------++-----+--+##+-----------------------------------------------------------+++-----+++++------+----------------------------+
#++#++######+##++#---------+--------+++------+++--+++++-+##++-++------------------------------------------------------+++------+++++-----+++---------------------------++
#+++++######+#++#+-----+++++-----------------++--+++++--###-----++-+--------------------------------------------------+++-----+++++-----++++----------------------------+
##++##++#####+###+----++++++--++----++---------+----++--+##++-----+++-------------------------------------------------+++------++++-----++++-----------------------------+
++++###+#####+###----++++++-+-+---++----------++-+-++---###++++----++++-----------+-----------------------------------+++-----++++-----+++++-----------------------------++
++#####+-#######+----+++++++++--+++---+--+---++---++---+##++++++++-+++++--+-------------------------------------------+++----+++++-----++++-------------------------------++
++#####+-+#####++---+++++++++-+-++------------++++-----+##+++++++++--++--++----------+-------------------------------+++-----++++-----++#++--------------------------------+
+++######+-#####+---+++++++++++-++++--+-------+++++-----###++---+-+++--+-+++---------+--------------------------------+++-----+++------+#++---------------------------------++
+++#######+#####+--+++++++++++-+-+-------+--+++++------+##+++------+++--+++-------------------------------------------+++----++++-----+##++----------------------------------+
++++############+++++++++++++++++++----+-----++++++-----+##++-+++++++##+++#+----------+--------------------------------+++----++++----+##++-----------------------------------++
+++++############+++++++++++++++++++---+---+-+++++-------+##+++++--------+#++----------------------++-------------------+++----#++-----+#+++------------------------------------+
++++++###########+++#++++++++++++++++---------++++-------###+++++++--+++--#++---------------++------+##+------+--------++++---+#++----+##++-------------------------------------+
++++#+++##########+###++++++++++++++++--+-----+++++-------###+++###++++++++#++----------------++---++++##+-----++-------++++---+#++----+#++--------------------------------------+
++++++##+################++++++++++++++++++-+-++++++-------+##+++---++###++##++---------------++++-+++++++#-----+-+-----+++++---##+---+-##++-----+--------------------------------++
++++++######################+++++++++++++++++-+++++++--------+++++-----++++###++-+--------------++++-+++++++--------++-++++++---+#++--+-+#+++---------------------------------------+
++++++++####################+++++++++++++++++++++++++--------++++++-----+++####++----------------+++++---++-----------+++++++++--+#++-++-##++----++----------------------------------+
++++-++++####################+##++++++++++++++++++++++--------++++++------+####++++----------------++++++---+-----------+++++++-++++--+++#++--+++------------------------------------+
++++++++++++####################++++++++++++++++++++++--------+++++++------+###+++++--------------++-++----+++++---------+++++++-++++-+++#++++++++------------------------------------+
+++++#+++-----++#################++++++++++++++++++++++--------++++++++-----+###++++++--------++-+---+++------+++---------+++++++-++++-+++#++++++++------------------------------------+
+++++++##++----+####################+++++++++++++++++++--------++++++++-----+###+++++-------------+--++++-----++++--------+++++++-++++-++#++++++++---++++------------------------------++
++++++++++####++++##############+#######++++++++++++++++--------++++++++-----+###+++++---------++++---+++-------++++--------++++++--+++-+##+++++++++-+++--------------------------------++
++++++++++++++++################+#######++++++++++++#+++--------+++++++------+####++++---+++++++++++++++++------++++--++-----+++++--+++-+#+++++++++++++++-------------------------------++
+++++#+++++++++++########################+++++++++++##+++--------++++++++-----+####++++----++++++++++-+++++-------+++--+++++--+++++--+++-##++++++++++++++--------------------------------++
+++++++###+++--++########################+++++++++++##++---------+++++++------+####++++-----++++++++++++++++-------++++++++++++++++--++++#++#+++++++++++----------------------------------+
++++++++#######+++########################++++++++++###++--------++++++++------+####++++-----++++++++++++++++-------++--+++++++++++++--+++#+#+++++++++++-----------------------------------++
++++++++++++++++##########################+++++++++###++---------++++++++------+####++++------++++++++++++++++----------+++++++++++++--+++#++++++++++++++-----------------------------------+
+++++++++++++++++########################+#+++++++++###++---------++++++++------+####++++-------+++++++++++++++-----------++++++++++++--++##++++++++++++-------------------------------------+
+++++++++++++++++##########################++++++++####++--------+++++++++------+####++++--------+++++++++++++++----------++++++++++++---###+++++++++++++++----------------------------------+
++++++++++++++++++#########################++++++++####+++--------+++++++++++----+####+++++---------+++++++++++++----------+++++++++++++--+##+++++++++++++++----------------------------------+
+++++++++++++++++########################+++++++++####+++--------+++++++++++------+####+++----------++++++++++++++---------++++++++++++++--##++++++++++++++-----------------------------------++
++++++++++++++++########################+#+++++++####++++--------++++++++++-------+####++++----------++++++++++++++----------++++++++++++--+#+##+++++++++++------------------------------------+
+++++++++++++++++#######################+##++++++#####+++---------++++++++++-------+####++++-----------+++++++++++++-----------+++++++++++--+##+++++++++++++------------------------------------+
++++++++++++++++########################+##+++++#####++++--------+++++++++-++------+####+++++-----------++++++++++++-----------++++++++++++-+###++++++++++-------------------------------------++
++++++++++--+++########################+##+++++######+++---------++++++++++---------####+++++------------+++++++++++-------------++++++++++++##++++++++++---------------------+++++-------------+
++++++++++-----+####################+##+##++++#######++++--------++++++++++-+--------+###+++++------------+++++++++++++-----------+++++++++++###+++++++++++++++++++++++--------------------------+
++++++++-------+###################++##+###++#######+++++-------+++++++++++----------+####++++-------------+++++++++++++-----------+++++++++#####++#####++++-------------------------------------+
+++++++++-------++#################+++#+##++#########++++--------++++++++++-----------+####++++--------------+++++++++++---------------+++++######+++++++++++++-----------------------------------+
+++++++++-------++################+++#++#++#####+###+++++-------+-++++++++++-----------+###++++--------------+++++++++++++--------------+++#######+++++++++++----------------------------++++----++
+++++++----------+###############++++++##+#########++++++------++++++++++++------------+###++++---------------+++++++++++++-------------++#########+++++++++-+-----+++++++++++++++++-------------++
++++++++----------+##############+++++++############++++++----+-++-+++++++++------------++##++++----------------++++++++++++++------------###########++++########++++++++-------------------------++
++++++++-----------+############+++++++#######+####++++++----------+++++++++------------++###++++----------------+++++++++++++------------###########++++++++++++---------------------------------++
++++++++------------+###########+++++++######+#####+++++-----++++--++++++++++------------++++++++-------------------+++++++++++-----------+###########+++++++++++++-------------------------------++
++++++++++------------+#########++++++++#####+###++++++++------+----+++++++++-------------++++++++--------------------++++++++++++---------+###########+++++++++++++-------------------------------++
+++++++++---------------+######+++ +++++####++##+++++++++----++++--++++++++++-------------++++#+++-----------------------+++++++++----------+###########++++++++++++-------------------------------++
+++++++++++--------------+#####+++ +++++##++++++++++++++----+------++++++++++--------------++++++++------------------------++++++++---------+###########++++++++++++++-----------------------------++
+++++++++++-+-------------+####+++++++++++++++++++##++++-----------+++++++++--------------+++++++++-------------------------+++++++++------+#############+++++++++++++-----------------------------+
+++++++++++++---------------+##+++++++++++++++++######+++--++-----+++++++++++--------------++++++++---------------------------+++++--+-----+#############+++++++++++++++---------------------------+
+++++++++++++-----------------+##++++++++++++++++++##+#+++++++-------++++++++----------------+++#++++---------------------------++++++++-----+#############++++++++++++++--------------------------++
++#++++++++++------------------+##+++##+++++++++++++++++++++++------+++++++++-----------------+++++++-----------------------------+++++++-----+#############++++++++++++---------------------------++
++#++++++++++-------------------+#+++#########+#+++++++++++++++-----++++++++++---------------+++++++++-----------------------------+++++++-----+#############++++++++++++--------------------------++
+#++++++++++-+------------------##+###########++++++++++++++++++++-+++++++++-----------------+++++++--------------------------------+++++------###############++++++++++--------------------------++
+##++++++++++-------------------+#############+#++++++++++++++++++++-+++++++-----------------++++++++-----------------------------------++-----+###############++++++++++-------------------------++
++##+++++++++++------------------+############++++++++++++++++++++++++++++++-----------------++++++++------------------------------------+-----+############+++++++++++---------------------------++
+##++#++++++++-+-----------------+##########+++++++++++++++++++++++++++++++---------------+-++++++++------------------------------------++----+#########+++++++++---++---------------------------+
++#####++++++++++-----------------+########++++++++++++++++++++++++++++++++----------------+++++++++-------------------------------------+----+#####+++++++-------------------------------------++
++#####+++++++++++++------------+-+######++++++++++++++++++++++--+++++++++----------------+++++++++-----------------------------------++++---+#+++++++++++-------------------------------------++
++######++++++++++++++------------++#####++++++++++#+++++++++++++++++++++----------------+++++++++-----------------------------+++++++++++++++++++++++-+++------------------------------------++
++#####++++++++++++++++--+--+------+####+++++++++++++++++++++++++++++++-----------------+++++++++---------------------------+++++++++++++++++++++++----+------------------------------------++
++#####+++++++++++++++++---------++-+###+++++++++####++++++++++++++++++----------------++++++++++-----------------------+---------+++++++++++++++------------------------------------------++
+######+#+#+++++++++++++++---++----+##++++++++++++++++++++++++++++++++---------------+++++++++++----------------------------+++++++++++++++++-+------------------------------------------++
++#########++++++++++++++++++++-+---++++-----------------++++++++++++--------------++++++++++--------------------------++++++++++------++-+--------------------------------------------++
++#########++#++++++++++++++++------------------------------+++++++++--------------++++++++--+--------------+--++++++++----+++---------+----------------------------------------------++
+++###########+++++++++++++------------------------------------------------------+++++++++++-++------++---++------------------------------------------------------------------------+++
###############+++----+++------------------------------------------------+##++#########+------------------------------------------------------------------------------------------++
++##############+++++##++---------------+---------------------------------+#++++++++++++----------------------------------------------------------------------+++---------------+++
++#############+#####++---------+++++++---------------------------------+++++++#++++++#+--------------------------------------------------------+----++++++++++--------------++++
++###################++++++++++++++------------------------------------+-++#+++----+++#+----------------------------------------------------++++++++++++++++++-------------++++
++###################++++--------------------------------------------+++--++-----+++++++----------------------------------------------++++++++++++++++++++++-----------+++++
+++###############++----------------+++++--------------------------+-+++--+++--+++++++#---------------------------------------------++++++++++++++++++++++----------+++++++
+++#############++++++++++-+++++++++++++------------------------+++----+-----+++---+++-----------------------------------------+++++++-++++++++++++++++++++---++++++++++
+++###########++++++++++++++++++++++++-----------------------+++-+-+-+++++-++++++++--------------------------------+---+++-+-++++++++++++++++++++++++++++++++++++++++
+++##########+++++++++++++++++++---------------------------+##--+++--++---+++-++++-----------------------+--++--+++-++++++++++++++++++++++++++++++++++++++++++++
+++###########+++++++++++++++------------------------------+###++-+++-------++#+------------------+-+++++++++++++++++++++++++++++++++++++++++++++++++++++++
++#####+####++--------------------------------------------+####+++++-+--++++++-------------+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+#########++-------------+++++++++-----------------------++###+++++++#--+++++-----+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++##########+++++++++++++++++++++++------------------------+####+#+##########+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+############+++++++++++++++++++++--------------------------+###############++++++++++++++++++++++++++++++++++++++++++++++++++++++##++++++
++#############+++++++++++####+++++-------------------------++##############+++++++++++++++++++++++++++++++++++++++++++++++#########++++
+++####################+++----++++++-------------------+++++++#################+++++++++++++++++++++++++++++++++++##################++++
++#################++---------++-+++++--------++++++++++++##########################################################################++++
++++################+++++++++++++++-++++++-++++++++++++++--+++++++##################################################################+++++
+++#+++++#############++++++++++++++++++++++++++++###++------------++++++++#######################################################+#++++++
++##+++++###############++#+++######################+++++++++---+++++++++########################################################++++++++
++##++++###############################################+++++++++++++++++###############################################+++++++++------+++
++++++++############################################################+++++##################################+++++++++++++----------------++
+++++++###################################################+++--++#++#+++##########################+++++++++------------------------------++
+++++++######################################################+++++##+++##################++++++++++++--------------------------------------+
++++++#########################################################++-++++#########+++++++++---------------------------------------------------+
++++++#########################################################+++++++++++++++++------------------------------------------------------------+
++++++###########################################################++#++++---------------------------------------------------------------------+
+++++##############################################################++------------------------------------------------------------------------+
++++++############################################################+++++----------------------------------------------------------------------++
+++++###############################################################+++++--------------------------------------------------------------------++
++++++###############################################################+++++++++-----------------------------------------------------------------++
+++++#######################################################++++#######++++++++++--------------------------------------------------------------+++
+++++######################################################+-+++++++++###+++++++++++++-----------------------------------------------------------+++
+++++###################################################+++++++++++++++++++++++++++++++----------------------------------------------------------+++++
+++++#################################################++++++++++++-++++++++++++++++++++++++-------------------------------------------------------+++
++++++++++**
+++****+++*+++++*++***
+++++******++*+**+++++++++++++++++++
===+++*+=+=++++**********+*++++++++++++++++=
+==+++++++++**++*+**#*+***#**********++++*++++++=+++=
+==+++++++=+*+**##*+**+##*#**#*##**+*******++*+++++++++++++
+=+*#**++++++*****+***+*++#***+***%%%**###*********++=+*++++*+++
++=+#+*#***+***#*+###*#*+**+******+***+#%##+***+***+#**++*++****#**+
++++++++*****++*+*###****#+#+*****#++*****+******+###**#**+++++**#*++*
=+++++++****+*#*####***+***+*******+**#+**#####**+****#*****##+*******++
=+++**+****++*##*#*%#%#*#*#*#********+#***%%##***#*****+%*###%#*##****##*+
=+++***********%***#%*##***++***+*+*+***###%%#%**###%#####*#%*%#*%#*#######++
++++*###%%%#%##%%**+*##**+*#*+*#*+**##*#*#*%##@#%%%#%**#*+######@#***%%%##+*++
++***###%%%%%%@##*#****##*****##+#*##*#+#####%%*#%%%*#**#++#%#%###%****%##****+++
+=*#+##%%%@%%%*#%#**####%%#####%**###%%###+*#*##**%*#*###*#####%%*#*#*#*****+*+++++
++*+*#%#%%@@*@%%%%%##*###%#######%#%#+##*#*+#%*%%*%#*#****#*++#####*#*#*#*#********++
+***#*#%%#%@%%#%%@#######%#*%*%%#####++**##%%##*%#%%*#*#**##**%#@@#%#*#***#*###***+**+
***####%%%#@#*##*#%%%%%%%%%#%%#*##%#*####%%%***####%%#%#%###*##%#%*%###*##%#@*#****+*++
+***###%#%%##%###*%@%##%%%%%#@@@@%%#%%#%####**%##%%##%%%*#%**++*###**+***#%#%##**##**+**+
+##*#*%%%##%###%%####**%##%%%@@@@@%%@%#%@%%#%##%####%%#+##%#++*####***#####**##*****++**++++
+*######%*###@%%%%%##%#%%%%%#@%%%%#%%@%%%%@@#%%@%@@%@@##%%#*#*#*###%#####%*%*#*#**+*+*+*+***+
+*###%##%#%%##%%%%%%%%%%%%%%%%%#%#%%%%@@@%@%%*#%##%%@%%%%#########%%###%##%#####%##*****####*+
**%##%%%##%#%%%%%%%%%%%%@@%#%#@%@@%%@@%%**%######***#@%%@%%%%#*%%%%%%%#######%#*#%###*++++*=
+###%#%%%%%%%%%%@@%%@#%@@%%%%%@@%#%%%###%***+**##****#%##%%###*###%%#*%**##**###+#*#***++==
##%%%%%%%@%@@@@@%%%%%%%@@%#@@@#*#%%%%%%%%#*#########%#***+=+*#%###*##%#+**#**#######**++++
*##%%%@@%%@@%%@%%%%@%%%%%#%@@%%%@%%%%%%%%%#%#####**##**#****###++**#%##*##*#*#*+######*++*
*#%%%%@%%%%@@@@@%%%%%%#%%#++@%@@@%@%%%%%#***#*#**+*=#***##*****+*#####***#*#**##**###+**
*##%%%%%%%@@@@@%%%#%%##+####%@@%@@%%%%%#%##*+##%%#**###*#*###+***#%#**#*#**#+***#***++
+##%%%%%%#%%#%%%%%###%####%%%%%%%@%%%%%%%#####++*%%###*#**%#**++*###****#####**###+*++
+**%%%%%%%%#%##*#########*#*#%%%%%##%%%##%%%%%#+=+==*###%%%#%*+-=++#####***##*******+
*#*#%%%%%#####*****#*######*+%%################**++++*###%*#*%=-=+****#####*###***+=*
+#%###%%%%%#%#**********#*####%########*****###**+++*+**#*+++=+=-=++**#####******##*#+
*%%+#####%####***********#########*+*****************+=+**+++=+++=++=***+*****+**+**+=
##+*##*%######********#######%%%##******+++++====+=====+**+=+=++===--+*+*+*+***#*#*===
***####*#####********########%%%######**+++===========+**+++++**++-==-=*+++++*##***=+=
#*####%#####*+*+*+****#################***+++++======++++**+####**+*+==+*++=+##***+#*
#*###%%%####**********####%%%#%%%%%%%#######*#++++=+*+*########%##**+++***+==**#*+##+
*####%%%###*+*********##%%%@%@@@@%@%%%%%#%###*+++=++**#############*******+===+**=+*=
+*#%%###*##*+*******##%############%%@@@@%%##*+==---=####%%%@@%%%#%#**+**++=-+**+==*=
**%%##**##*+***********###********###%%%%#*#+=-----=*#%%%###%%%%##%#*#*++====**++=++
**#*+##*##++**************##########*##%+++++==------+###***++++**+=+**+==--=*++===
*#+****##+*+********+====++**+*++++==++++++===------=+***##**+++++======----*+===+
*****##%+********++===---==-==---==+*++++++==--------====+=+++==-----------++=-+
+***###*+*****+++====---------====+****+++==-----------------------------=+=-=
+***##*******++++====-=-------==+*******+==--:--------------------------+===
*###*********++========----===+*#*##*++==-::-----=----::-------------==-=
*##**********++++===========++**==***+===::---------::------------====+
#*#*#**********+++++===+=++++#*++=*++++==-::----=-=---------------====
*#####***********+++=+++++++*##**+**+====-------========---------=-=+
#####*************++++++==*#####****+=====--=-=-==++==============+
*#######***********+#=+++*####%%%%%%**++++==*==---=**+============+
*#####*#*#*#*##*##*******###%%%%%%%%%#****#*===-----++++==========
*#######**##*####*#*##%**##%%%@%%%@@%%%%%*+=+=+===+==++==+=======+
**################%#%##%##%%%%%%%%%%%%%%**+++**+=+++==+=+++===++++
**#####*#########%%%%%@@###%#%%%%%%%#***#**#******+*++=======++++
*##%###########%%%%%%%%%%@@@@##%%###########++*####++==+=++++++
+#####%##%%####%#%%%########%%%%@@@%%##%%%##*+#####*+++++++++*
+*%#%%#%%#%%%#%#%%%############*+=----:=======+*#*##+*++++++*
+****%%%#%%%%%#%%%%%###%#######***++=+++=======**+****+******
+***##%%%%%%%%%%%%%%#%%%######*%###***#+++=+==+*+##**#*****+
++*****#%%%@%%%%%@%%%%%%%%%%***%##+%+*******++**+**###**#***
+++****####%%%%%%%%@%#%*#*#%%#**####%*#*+*+*+**+***%**#*##*
+==+****+**+****###*##%%%%@%%%%%#%####%**#++******++++++**##%##***==
#==++++##+********########%#%%%%#%%#*#*#%+#****##**++**+++*#+##%#+=-
==+++++**********###########%%%%%%#%#%%######*#%##*+******#*#*#**-
*==+++++***+#*****##############%%%%%%#%#%######*#%#######+*#*%**=-
+===++++++++*****###################%%%%%##*%%%%%%#%#%###%#%##%%##+-:-
+-=++++++*+*+*+******%###############%#%%%%#%#%%%%#%%%%%%%######*##=--:::
+=+++++++++++++*********%###################%%%%%%#%%%%%%%%#####**+-----:::
-:::=+=+++++*++++++++******###################%############**#**+==----+=-::::+
*=::=::::::--+=+++++++********############################*******++==-----@+=-.:::::=
*::::-::+:::::-:--=++++*++*++*+*****#*#%###################***#****+++=------%==-:::::::.-=
+::::-:.::::+::::-::---=+++++*+++*********##################*#*******+====------%*=-:::::::::::.:+#
#=::::-:::::--:::=:::-::--:--===++*+**+*+******#*#%########**#********++++=---------%#--:::::::::.::::::.:+
+-::::-::::::::---::-:::::::::-::--++++++++*+*********%#####***********+++===---------%*----::::::.::.::::::::::-+
*-::::-:::-::::::::--::::=::::::::-----==++++*+************####**********++===----------=##--::::::::..:.::::::::::::::-=
+-::::::::::::::::::::----:::+:::::::::::::---++++++****++*++***++*******++++==------------##-::--.:::::..:..:::::::::::::::::==
%=:::::::::::::::-:--:::::----::::#:.::::::::----====++=+++++++==-:::--::=+-+===--------------+---+--::::::::.::::::.::::-----:::::::=
+:::::::::::-::::::------::::-----:::=#::.:::::::::--:----=====-=---##+*****+===---------:---:--::--:::=-::::::::.::.::::::::----:::::::::-+
*-:::::::::::::::-:-:::::---:-::::---:-:::##::::::::::::::-----=----@%@%%*#*++*++=+:::--::::::::-+-::::-::::-:::::.::::::::::::::-=--:::::::---:::=+
=:---:::::-::--:::::-:--:-:::---:::.::---::::-##-:::::::::::::::---#%###%%%%%+++**+++*=:::::::::::=-:---:::::::::::::::::::::::::::--===--::::::--:::.:+
*--+----::---:::-::::::::::---:::--=--:::::--:::::+##+=:..:.::::.:-##%#%####%#%%%%%@#**++++-:::::::-=-::-:::--:=---%%%#:::::..::.--:::::-===-:::::::--::::::+
#-+=--=-=-:::-==--:::-::-::::::-:--::=---:::::----::::*####%#**###=-:*#*=--=*****#%%%%%%%@+***+-::::=+-:--:-:-*##*:::-====-:::-+*=:::-:::::-=++-::::::--:::::::+
+*=----=---:-::---===-:::::-:::::::---:-=-::::::---::::::::::::::--=--::--:----+*****%######%%+**=::=*--:--:+####**+-:::::::--:::::::::--::::-=+--:::::-=-::--:::+
*+==-----=---::-:::::--=--::-::-::::::---:=-::::::----:::::::::::::-----:::::---::-:--:+*#*##*#%%**+=*-::---####***-::-:::::::::::::::::--::::::++=:::::---::-=-:::+
#+===---------------::::-====::=--::::::::-:=-::::::-----:::::::::::------::::----:-::::::=---=---%%%*+----++***=-:-:--::::::::::::::::::-:--::::=++-::::-=-:::==::::=
#+====--------:-----:::::::--=-:::=-:-::::::-:=-::::::----::::::::::-:::-=---:::------::::::-:::::--:*%-=:=::::::---:---:::::::::-::::::::::--:::::++=::::--::::==:::::-
+=====---------::---:::::::::--===-:=----::::-:=-:::::----:::::::::::::::--=-:::::-----::::::.--:-::-#+=::--:::::---------::::---:::::::::::-:-:::-=++=:::=--:::+-::::::-
+======-=---------------::::::::-===-::==--::::::=-:::::----:::::::::::::-----=::::::--=---:::::=:::::#+:::.-::.::::::::---::::-::-::::::::-::----:::+==::-==::::*-:::::::-
+=++=====-=--------:---=-::::::-::-==-:::+==--::.:=::::::----::::::::::-:::--==--:::::-----::::::=:::=#-::..:-:::::::::-----::::::-::::::::::::---:::-++-::==::::*-::::::::=
+=++++====---------------==-::::::::-=+=-::-*----::+-:::::::--::::::::::::::::-==--:::::::=---:-:::=--*#:::=:::::::::::::-=--::::::--:::::::::::::--:::=+=:-=-:::==::::::::::=
+++++=+===--=----:--------=+=::::::::--===:::*=--:::+::::::::---:::::::::::::::-----:::..:-----::::-:-##-::::::::-:::-:::-==--:::::---:::::::::::----::-+=::=-::-*--::::::::::
+=+++++====--==---------:::--===-:::::::-+=--:-*+--::+-:::::::--:::::::::::::::::--=--::::::-----::::--##:::::::::::::::::-==--::::::--::::::::::::----::=+-:=-:-+-:::::::::::::
++++++=+===-==---------::---:-=+=-:::-:::-++--:-*=-=-:=:::::.::-::::::::::::-::::::----::::::--=--:::-+##:::::::::::::-::::---=-:::::-::::::::-:::::---::-+=:=-:-=:-::::::::::::=
++++++++++=====--------::-----:-=++=:::::::-*+=-:+*=--:+::::::::---:::::::::::::::::------:::::----:::=+*#:::::::::::::--:::--=--::::::--:::::::::::::---:-==-=-:*--::::::::::::::
+=+++++++=====-=-=----------------+*+=:::::::*+=::*+=--:-:::-::::-:::::::::::::::::::-=----:::::--::::++*#:::-:-::::::::-::::--=--:::::::--:::::::::::----:==:-:==::::-::--:::::::=
++++++++++=====-==---------::-------+*+=:-::::*+=-:#=----::::::-:::::::::::::::::::::------::::-:---::=+##-::::::::::::::-:::---=-::::::---:::::::::::-=--:==--:+--:::::--:::::::::
=++*+*++++=+===---------=--:----:-----=*+-:-::-*+-:-*=-=-:::::::::::::::::--::::::::::------:::::-=:::-+*#-:::::::--::::---:::===-:::::::::-:::--::::::----:--:----:-:::---::::::::=
+++***++++==+=+=-::-=-------------:--:::=+=-:::-#+-:===+-:::-::--:::::::::::::::::::::::----:::.:::-::-=*#=--:::::-----::-=-::--=--:::::::::::::::::::::--::--:+=---::--:::::::::::-
++++*++++++===+++=-:---------------::::::-++=:::=#=-:*=*=-:::--::--:::::::::::::::::::::------:::::-::-=*#=----::-:---:::-=-::------:::::-:-:::::::::::----:--:=---------::::::--:::=
+++*****++++====+++=::----------:----:-::--===-::#+-:-+#--::::----:::::::::::::::::::::::-----:-::-----=**=---:-----:-----==-::--=--::::::-:::::::::::::---:-:===-------:::::-:::::::=
=++****+++++======+*+-:::---------::---::::::---::#=-:**=-::::--:--:::::::::::-::::::::::-:---:-:::-:-:-+*-:::-:-::--:::--==-:::-=--::::::----:::::::::----:-:=+-==----::-::-::-::::::
=++*****++++======-=+*+=::::--------::::---:::----=+--#*+=-::--::-----::--:::--::::::::::::-----:::::::-=*-::::::-::--:::-+=-::-----::::::--::::-=-:::-----:--===-=------:::---:::::::=
+++*****+++++++====-==**+=-::::-----:-::-:-:::::-----=#*+=-::::----------::-:::--:::::::::::-:::-::::::+=+:-:::::::-=----:*=-:::-----:::------:-*+##-:::---:--==-=------:--=::::::::::=
++++=+****+++===++====--=+*++-::::------:----:--::---:=%*==--:::-----------:::::---::::-::::::-----:::::=++:::-====:---====*+-::-----::::::----:+-*-*+:::-----==-----------::::::::::::
++++=-=**++++++========----+**+=-::::--:::::::::-::----%#===-::::---:--:---::-::--:::::::-::::--:---::::=**:--::-::::.--:::=*+-::-----::.::----::=#-*+=::::-:-+=---------:::::::::::::=
++++*=-:-+++++===========-----+**+--::::---::::::::::--*#===--::::--------:---------:::::-::-:::--::::::-++-=--::--::-:-::--*+-::::--::::::::----:++-::::-:::====------:::::::::::::::
++++**+-::-+++==+=====----------=+**+=-:::------:::::-=*#==+==-:::----------:::----:::::-::::::---::-:::-=++*+===---::-=+*--*+=-:-------:::::-----:::::::::::+=--------::::::::::::-::=
++++****=-::-=++=======-------------***+==::::-:---:::-**==+++=-:::-:-------:::-----:::::-:::-:::::--::::===--::::---::-----++=-::----::::::---::::::::---::-+=----::::::::::::::-:::::-
=+++******=-::-=========--=------------++++=-::::::::::#*===++=-::::----------------::::-:---::::::---:::-=+----:------:----++==:::-----:::::---::::::::::-:+=-----:-----::::::--::::::::
++++********=-:::-=======-===-------------=+++=--::::::-*===**+=-::::----------:-----:::::--:::-:::--:-:::-===----:::::-----=+=-::--------::::-::-:::::::--:=--------:::--:::::::::::::::=
=*+++********#*+=::::-====------=-----:---:-::-=+++=-:::::+==**+=-::::---------:--=--::::::-:-::::::::--:::--=+=--::::--::---=+=--::----------::-:::::::::-:----------:--:---::::::::::::-+
+**+++++***********+=-:::--------------------::::---====-::-+=***+=-::-----===------=---::-----::::::::-::::--=====---------==+==--::------::::::----::::---:--=---------:::::::::::::::::::=
*+**++=-:-++**********+=-::-------------------:-::::::--=--:-+**#+=-::::----------==----:::-::-:::::---::--::--===----::-::-==+++--::------:-----------:::---==-------::-:::::-::::::::::::::-
+++**+***=--:-=====++**#**+==-::::---------------:-::::::::-----*##+=-::-----=-----=----:-----:--:-::----:::::--===-----:-----===+==-:--------:-------:::::--=*=------=+++=---::-::::::::-=-:::=
+++**++***+=-:::--=----=+**#**++=--:::::------------:::::::::::--##+-::::::-------===---:-=---::-::::---::::::----=---:::-----=====-:::-----::::-----:::::::-=====+*=-------:::::::::::::::::--:
+++**+*******+--::::---------=+*++++=----::::::::-:--:::::::::::--#*=--:::--==---=-==--::-------::-----:::::::--===-=---------=====--::::----:--:------:----=++*+=----------::::::-:::::::::::.-=
+++**++*******#*+=---:::---------=========--::::::::::::::::::::::+#+=--::::------=-==----------::::::----::::----=--:--------==+==---:---------------:-====*#*+===--------::---::::::::::::::::=
+++**+*********#**+==----::::::::::---:-------::::::::::::::::::::=+=----::-----=-------------:::--:-:-::::::----------::---===+==---:-----------------=++##*+====----====--::::::::::::---::.::
+++**++*************+==--::::-:::-::::::::::::::------=====--------+=---::------=-=----====--:::----::--:::::--==----------======--:::----:---------:-+==#%*++===++---::::::::::::::::::::::-=-:
=+++++++=================---::-----:----======-::::::::::::::::::::++=---::----=-==---====---:::---:-----::::-------------=======---::--------------:++=-=#*++*=------:::::::::::::::::::::::::==
+++*+**++=------------------==+++-:--------:::::::::::-::::::::::::++=-------===------=+=-----:---------::::------------=-======---:::--------------*+++#%**+===------:::::::::::::::::::::::::=
+++++****===----=---==+*+-----:----:------:---:-:-:--:-::::::::::::+=--::===-=-=----===-------:--------::::------------=======-----:::-------------*++#%#*++===-------:::::::::::::::::::::::::+
+++++***+++===-=+*#+=-------------------::------::--::-:-:::::::::::+---:-====--=-=====---:------------::::-------------======----::::-------------==*#%*+++===--------::::::::::::::::::::::::-
++++++++++=+##*====-----------:---::-::-::::::::-----=---::::::::-===--:-=====-====+==----------------:::-------------=====--------:::----------:-==*##++++====--------::::::::::::::::::::::::=
*++++++*##*+======-==--------------======-::::::::::::::::::::::::==-:--======--==+==----------------:::::----------=======-------:::-------------+*##++++====--------::::::::::::::::::::::::-
***+*##*+++++=====------==++==--:::::::::::::::::::::::::::::::::-=--:--========+==--:--------------:::::----:------======--------::-----=------=**#**++++====---------:::::::::::::::::::::---
=**#%#**++++===---==+*+=------::::::::::::::::::::::::::::::::::::==-----======++=------------------::::-:---------======-=------:::----------:-+###**+++++====----------:::::::::::::::::::---
+##*****++====+#*+==---------:::::::::::-::::::::::::::::::::::::-==-:--==--==+==------------:-:-:::::::::::------========--------:::-------::=+*###*+++++====-----------::::::::::::::::::---=
#******+=+##*+=====---------::::::::--::::::::::::::::::::::::::-=-----==-==+==--------------:::::::::::::::------=====-----:---::::--------:=+*###*++++++=====----------:::::::::::::::::----
******###*+++=======---------::::-+-::::::::::::::::::::::::::::-=----=-=++==--------:--------:::::::::::::::----=+===-----::---::--------::=+**#%**+++++=======--------::--:::::::::::::----
=***#%#****+++=======-----------=++=-:::---:--::::::::::::::::::-=----===+==----------------:::::::::--:::::::--===+==-----:---:::----------==+**##*++++++========---------:::::::::::--::---=
**%@#*****++++=====----------+****+-----::::::-:-::::::::::::::--=--===++==-----------------::::::::::::::::---======----:------:::--------=-=**#%**+++++++========---------:::::::::::-----=
*@@@%******++++======-------+***###*==-:---::-::::::::::::::::::-----=++=--------:---------::::::::-::::::::::---====-----------::------::-=--+*###*++++++++++=====---------:::::::::-------=
*%@@@#******++++======-----=+****###*+===-------::::::::::::::::-====++==-----------------::::::::::-:::::-::----=====-----------:--------==--=*##%*+++**+++++==-------------:::::::--------=
+*%%%********+++======----=+****#####**++===------:::::::::::::--==+*+=------------------::::-:---:-:::--:----=====---------==--::-------=----+*##%*++++==---=--------------:::::::---------
+**#********+++======------=+****###%#****+===-----:::::::::::::-+++==---------------::::::::::::::::::::::--======--------=---::----::-------+***+====-------------------::::::::::-------=
************++++======-------+****####%%%#***+===-------::::::::::---------:--------:::::::::::::::::::-:---==------------=-=-------::-------=++=======------------:::--::::--:::---------=
************++++=====----------=+***####%%#***++===------::::::::::::-------------::::::::::-::-::::::----=-------------====--:------=--=======----=---------:--::::::::-::-----:--------=
+************+++=====-----------:---=**###%%%###***+===----:::::::::::::----------::::::::::::::::::::---===---==-----::-===---------======-----------------:::::::::::::::---::---------=
*************++++====---------::::::::-+*##%%%#+---:::::::::::::::::::::::------::::::--::::::::::::::--==-=---------::--===---=========--------------::-----::::::::::::::-------------=
+*************+++=====---------:::::::::-=+--:--:::::::::::::::::::::::::::----::-:::-----::::--::::::-===--:-----------=+++=====---------------:::-----::::-::::::::::-----------------=
+**************+++=====--------:::::-----::::::::::::::::::::::::::::::::::::-------:----=#*+=---:::::-====================-==-------------::----:::::::::::::::-::::::-----------------=
****************++===------------------:::::::::::-------::::::::::::::::::::-:::::::::--##########*=-----------------------------------:::::--:::::::::::::::::-:::::-----------------=
+*****************+===-----------------:::::::::--------:-:-:::::::::::::::::::::::::::-::+####%%%%%##-::::-----------------------::---:::::::::::::::::::::-::::-::------------:::----=
+********#***##***=---------------------:::::::::::----:::::::::::::::::::::::::::::::::::-#%##########+:-:::---------:-:----:::-::::::::::::::::::::::::::::-:-::-------------::::----=
+******####*+==+=------================------:::::::::::::::::::::::::::::::::::::::::::::+===*#*#*####=::::--::-:::::::::::-::::::::::::::::::::::::::::::::-----------------:-------=
+******##%#+++**+=========++++++***++===----------:--------::::::::::::::::::::::::::::::=+==+=+:-**=+-=-::::-::::::::::::::::::::::::::::::::::::::::-:------------------:----------=
*****###%*****#*+=====++=+++++++++++==--------------------------::::::::::::::::::::::::+==-::+:*#*+*%@*=:::::::::::::::::::::::::::::::::::::::::-:-------:-------------------:----=
+****###%#*#####++==+++++++++***#*++===----------------------------::::::::::::::::::::-+=--+**#%%:%@%##@#::::::::::::::::::::::::::::::::::::-:------------------------::-----:----=
+****###%#########********##**+++=====-----------------------------------------:::::::-+-=--:*@#%%##-=%%*%#:::::::::::::::::::::-:::::::-::-----------------------------------::----=
*****##%#%%##%%%%%%*+=--------=====---::::----------------:----------------------:--===+=*@%-%@%+*-##+*%**+::::::::::::::::::::-::---:---:--------------------------::::-----:-----=
+**########****+====================-------------------====------------------------=+-=*+@@%%#=#@**%%%%@#%%:-:::::::::::-:-:----------------------------------------::::------------
+***#####%%*****==+++++++++++++****++==-------------------=======-----------------+#+**##%#+=+%%**%%%+:*###:------------------------------------------------------------------------
+****####%%#***#*+*******++++**#####*++=-----------------------------------------=*##+##*@%%%%%%#%%%%%%%*%#:---------------------=----------------==-------------------------------=
****####%%######**##**********#******++==--------------=---::-------------------=*##%##*%***#@*+=#%%:***@=---------------------==---------==---========---------------------===---+
+****###%#####*##################****++====----================-------===========+*##%##**#%+=%+*%-##+=**-===-=========================================---=----=----=============+
+*****####%##***#####*++========+++++==----------===---------==================+++#######*#%###--%#+-*%+==============================================================++++++++==
=*****###%####*****==========+++++++++==--------------------=====+====++++++++***####%%####+#@%%=%@@**=++=====+=================================================+++++*********
*+**##############+++++++++++***######*+==-----------===============+++++++****###%@@@###@@%*****+***+++=+=+++===++==++++==+===================================++++****++*
+***######**#######**##*********######**+==-----======================+++****#%@@@@@@@@#%%@@@@@@@@#**++++++++++++==++=++++===============================++++++***+
***######*###########################**++==---=====================+++*%%%%%%%%@@@@@@@@@@@@@@%#************+++++++++++++++++===========+++=++++++++++++++****+
***#####**###%######%%%%%@@@@%######***+==----===================++*#%%%%%%%%%%%@@@@@@@@@%#######****************+++++++++++++++++++++++++++++++*********+
+****###*###############%#+====---=+++**++=============+++++++++*%%%%%%%%%%%%%%##%@@@@@@@@###############**************++++++++++++++++++***********++
****#################***+=========+=+*###*++==+++++********##%#######%%%%%%%###########################%##%%##%####****************************+
+****###################*+++++++++*#*+++*##*********###%%############################################################%%%%%#########*****++==
+*****####################**##****#######***#%%%%%################################################################%%%%%%%%%###########***++=+
++****###############%%%############%%%%%%%#%#############+++++*##############################################%%%%%%%%%%%%%##*****###******++
******##################%%%####%%%%%%##################*++++++*###########################################%%%%%%%%%%%%%%%%%##**************++
******###**#############%%%%#########################**************##***************************#####%%%%%%%%%%%%%%##########****++********++
*********#########################################***##****************************************###%%#######################******+++++++++++
*******#################%######%%%%#############*****************************************###%%%##########################*******+++++++++++=
*******#*###################*###%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%###%%%%#%%%%%%%%%####################*#########*******++++++*++++++++
*********##################*####%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#############################****#*******+++==--=++++++++===+:=*
*********#################**##########%%#%%%%%%%%%%%%%%%%%%%%%%%%############*#*****+++***++******##**********++++==-----::------=---:::-=::=*
*********###############*#########################%#%%%%%##############****+++++========--------------=====-==-=---------------:::::::::-::::-
+********##*######*###****########################################**++=====--------------------:::::--:::::----------------::::::::::::-::::::=
+************************##################**##*###############*========--=====------------------::::::::-----------------:-::::::::::-::::::::+
+***********************################**+=--+********#######+=============-=---===------------::::::::::::------------:::-::::::::::--:::::::=
**********************#######*#****+=--=------=*************+--======-=========-------------------::::::::::::---------------:-------:---:::::-
**********#************##******+====------------=-+**+**++==----======---==---------------------::---:::::---:--:-------------::---::::::::::::+
+******#********************++====-===-----------:::-------------=-------=----------------------------:::::::::------------::::::--::::::::::::=
+****************#*#*#****++========--==----------:::::::--------------------------------------------:::::::::::-::--------::::::::::::::::::::-
+******************##**+++=======----=-=-------::::-::------------------------=--------------------------:::::::::::-::----:::::::::::::::::::::+
*****************###*++++=+=======-=-----------:::::-----:----------------------------------------------:::::::::::::::::::::::::::::::::::::::+
+**************##****+*++==========-------------:::::-::::::----------------------------------------------:::::::::::::-----:::::::::::::::::::+
Joel Mañas del Barrio
Full-stack developer