comply with pear coding standards for exception handling