now the procedure runs happily