add error trap