anchor.diff:    | 10 -> TOKEN_RPAREN 
     | 11 -> TOKEN_LPAREN 
     | 12 -> TOKEN_QUESTION 
  -  | 13 -> TOKEN_PLUS 
  -  | 14 -> TOKEN_STAR 
  -  | 15 -> TOKEN_BAR 
  -  | 16 -> TOKEN_EQUAL 
  -  | 17 -> TOKEN_SEMICOLON 
  -  | 18 -> TOKEN_COLON 
  -  | 19 -> TOKEN_EOF 
  -  | 22 -> TOKEN_end_of_input
  -  | 20 -> TOKEN_error
  +  | 13 -> TOKEN_MINUS 
  +  | 14 -> TOKEN_PLUS 
  +  | 15 -> TOKEN_STAR 
  +  | 16 -> TOKEN_BAR 
  +  | 17 -> TOKEN_EQUAL 
  +  | 18 -> TOKEN_SEMICOLON 
  +  | 19 -> TOKEN_COLON 
  +  | 20 -> TOKEN_EOF 
  +  | 23 -> TOKEN_end_of_input
  +  | 21 -> TOKEN_error
     | _ -> failwith "tokenTagToTokenId: bad token"
   
   /// This function maps production indexes returned in syntax errors to strings representing the non terminal that would be produced by that production
  
positive.code:     | 22 -> NONTERM_seq_elem_list 
      | 23 -> NONTERM_seq_elem_list 
      | 24 -> NONTERM_seq_elem 
      | 25 -> NONTERM_predicate_opt 
      | 26 -> NONTERM_predicate_opt 
      | 27 -> NONTERM_bound 
      | 28 -> NONTERM_bound 
      | 29 -> NONTERM_patt 
      | 30 -> NONTERM_patt 
      | 31 -> NONTERM_prim 
      | 32 -> NONTERM_prim 
      | 33 -> NONTERM_prim 
      | 34 -> NONTERM_prim 
      | 35 -> NONTERM_prim 
      | 36 -> NONTERM_prim 
      | 37 -> NONTERM_meta_param 
      | 38 -> NONTERM_meta_param 
      | 39 -> NONTERM_meta_param 
      | 40 -> NONTERM_meta_params 
      | 41 -> NONTERM_meta_params 
      | 42 -> NONTERM_meta_param_opt 
      | 43 -> NONTERM_meta_param_opt 
      | 44 -> NONTERM_call 
      | 45 -> NONTERM_call 
      | _ -> failwith "prodIdxToNonTerminal: bad production index"
  
  let _fsyacc_endOfInputTag = 22 
  let _fsyacc_tagOfErrorTerminal = 20
  
  // This function gets the name of a token as a string
  let token_to_string (t:token) = 
  
negative.code:   | RPAREN  -> "RPAREN" 
    | LPAREN  -> "LPAREN" 
    | QUESTION  -> "QUESTION" 
    | MINUS  -> "MINUS" 
    | PLUS  -> "PLUS" 
    | STAR  -> "STAR" 
    | BAR  -> "BAR" 
  