フローチャートとして書いたら凄まじいことになる設計なんだろうな