[wip] Refactor