to the public method's caller.
lic method can wrap the lower-level exception in a higher-level exception that is doc-
umented in the public method's contract interface. The wrapped exception is known
as a cause because its existence causes the higher-level exception to be thrown. A