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