refactored and psr1/psr2 compilance