do not use throw
move away from continuation local storage