                                    ^   
       *        *                   !   
!########################!          !   
!                  *     !----------!  *
#############!############          !###
############!!                      !   
###########!!!---------!            !   
##########!!!!         !     *      !  *
# * * ###!!!!          !########%%##!###
########!!!!           !            !   
        !!!            !            !   
        !              !------------!   
        !        *     !            !   
!######################!    *    *  !###
!                      !  ######### !   
!                      !            !   
!                      !            !   
!            *         !            !
###############%%%%#####################
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$