split off helper methods