Refactor to private methods