   DEBUG = false
 
   uniqueIndex = 0
+  indexCount = {}
+
   patternIntern = {
     internSuccess: 0,
     internCheck: 0,

      if nameCheck
        builder.after @pattern, builder.empty()
      else
        new NotAllowed("expecting #{@name}", @name, node, 5 + h.depth(node))

    _toString: ->
      "element #{@name} { #{@pattern} }"

      @dataType = dataType
      @type = type
      @params = []
      @except = builder.notAllowed()
      for param in paramList
        if param.local is "param"
          @params.push getPattern param
