refactoring #86