Handler refactor and work