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