refactoring - method split