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