more splitting up old code