##############################
#############$_________$######
##########$_______________$###
#########____$##########$___##
#######$___###############$_##
######$__$####################
###$$#___##$$$$$$$$$$$$$$$####
##_______________________$####
#####$__######################
##$_$___$$$$$$$$$$$$$$_#######
##_____________________#######
######___#####################
#######___####################
########___$##############_$##
#########$____$#######$____$##
###########$_____________$####
################$$$$$$########