back to private, add getters