あげとこ。

なぜか出てないけどassertは滅茶苦茶重要だと思う。
処理の前に前提条件が満たされているかどうかassert
処理の後に結果が正しいかどうかassert
ちょっと動かせばバグはすぐに見つかる。