上でも少し触れたけど、何で直接catchとthrowを使ってるんだろうか。
新しい制御構造でも作るの? かなり斜め上なことをしてる予感がするけども。