modify the procedure