PSR-1 compliant