Refactoring
More tests
Comments