Refactoring

#32