######## #....^.# #.<....# #...........# #......###... #.....## # #....## #..... #...... #..##...