8/18, code refactoring