public -> private refactor