almost complete porting updtr