solved, refactoring preferable