[broken] Working on refactor