######## ### ### # #### ## ## # # # # ## # ## ## ## # # ## # ## ## ## ## ## # ## ## ## # ## ## ## ## ## # ## ## # ## ## ## # # ## ## # ## ### ## # # ## ## # ##### ## ## # # ## ## # ##### ## ## # # ## ## # ## ## ### ## # # ## ## # ## ## ##### # # ## ## # ## ## ##### ####### ## # ## ## ###### ## ## # ## ## ## ## # ## # ## ### # ## # ## ## # ## ## # ## # ## ## # ## ### # # ## ## # #### #### # # ### #### ####