porting some more stuff to new model