finished porting this stuff