Refactor almost there!