new API, fix psr2 syntax