単に>>436に書かれてる方法を忠実に実装するだけじゃないでしょうか