sig
  module type TABLES =
    sig
      type 'a terminal
      type 'a nonterminal
      type 'a symbol =
          T : 'a terminal -> 'a symbol
        | N : 'a nonterminal -> 'a symbol
      type xsymbol = X : 'a symbol -> xsymbol
      type 'a lr1state
      val terminal : int -> xsymbol
      val nonterminal : int -> xsymbol
      val rhs :
        CamlinternalMenhirLib.PackedIntArray.t *
        CamlinternalMenhirLib.PackedIntArray.t
      val lr0_core : CamlinternalMenhirLib.PackedIntArray.t
      val lr0_items :
        CamlinternalMenhirLib.PackedIntArray.t *
        CamlinternalMenhirLib.PackedIntArray.t
      val lr0_incoming : CamlinternalMenhirLib.PackedIntArray.t
      val nullable : string
      val first : int * string
    end
end