back to old system. previous failure of this wasnt caused by this code but by corrupted input data. this method is at it should be