continued perl porting