refactoring public helpers