def parse_header_teban
      s0 = @current_pos
      s1 = parse_turn
      if s1 != :failed
        s2 = match_str("手番")
        if s2 != :failed
          s3 = parse_nl
          if s3 != :failed
            @reported_pos = s0
            { "k" => "手番", "v" => s1 }
          else
            @current_pos = s0
            :failed
          end
        else
          @current_pos = s0
          :failed
        end
      else
        @current_pos = s0
        :failed
      end
    end
def parse_header_teban
      s0 = @current_pos
      s1 = parse_turn
      if s1 != :failed
        s2 = match_str("手番")
        if s2 != :failed
          s3 = parse_nl
          if s3 != :failed
            @reported_pos = s0
            { "k" => "手番", "v" => s1 }
          else
            @current_pos = s0
            :failed
          end
        else
          @current_pos = s0
          :failed
        end
      else
        @current_pos = s0
        :failed
      end
    end
header_teban : [先後上下] "手番" nl