WIP
WIP refactor
Docs
Refactor