refactor for consistency