more refactoring public helpers