def parse_firstboard
      s0 = @current_pos
      s1 = []
      s2 = parse_comment
      while s2 != :failed
        s1 << s2
        s2 = parse_comment
      end
      parse_pointer
      @reported_pos = s0
      s0 = s1.empty? ? {} : { "comments" => s1 }
      s0
    end
def parse_firstboard
      s0 = @current_pos
      s1 = []
      s2 = parse_comment
      while s2 != :failed
        s1 << s2
        s2 = parse_comment
      end
      parse_pointer
      @reported_pos = s0
      s0 = s1.empty? ? {} : { "comments" => s1 }
      s0
    end
firstboard : comment* pointer?