refactored near PSR-2