##########
#        #
# $$$    #
# ..$@   #
#  .$$$  #
#  ....  #
#        #
##########