refeactored out some stuff, pushing