might make sense to make this private as well