Refactoring + Docs