init commit
refactoring!