flesh out helper function bodies