#66: refactoring