Initial add
Refactoring