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