haml + refactor