Of these functions, which need to be public?  Seems to me that this one is more a helper?