can't these all be private methods?