It is my understanding that if a function/subroutine encounters an exception then it looks for a handler in current function/subroutine if not it leaves the function and raises it in calling function...