was it intentional to throw the provided exception argument rather than the caught one?