キャストを使うコードに戻した。実測、こちらのほうが速い。