refactoring for PSR2