~ahelwer/tree-sitter-tlaplus

b2ffee62569b78719de352178f5332ecab5dac90 — Andrew Helwer 3 months ago a23bdb7
Added additional unicode corpus tests (#103)

Can also use unicode number sets on operator def LHS

Signed-off-by: Andrew Helwer <2n8rn1w1f@mozmail.com>
M grammar.js => grammar.js +27 -27
@@ 110,7 110,7 @@ module.exports = grammar({
    $.comment,
    $.block_comment,
  ],
  

  // Prefix, infix, and postfix operator precedence categories, defined
  // on p271 of Specifying Systems. Precedences defined in this way are
  // defined only in relation to each other, not to every other rule.


@@ 198,7 198,7 @@ module.exports = grammar({
      token(prec(PREC.BLOCK_COMMENT, '*)'))
    ),

    block_comment_text: $ => 
    block_comment_text: $ =>
      prec.right(repeat1(
        choice(
          token(prec(PREC.BLOCK_COMMENT, regexOr(


@@ 237,7 237,7 @@ module.exports = grammar({
    exists:             $ => choice('\\E', '\\exists', '∃'),
    temporal_forall:    $ => choice('\\AA'),
    temporal_exists:    $ => choice('\\EE'),
    all_map_to:         $ => choice('|->', '⟼', '↦'), 
    all_map_to:         $ => choice('|->', '⟼', '↦'),
    maps_to:            $ => choice('->', '⟶', '→'),
    langle_bracket:     $ => choice('<<', '〈', '⟨'),
    rangle_bracket:     $ => choice('>>', '〉', '⟩'),


@@ 276,7 276,7 @@ module.exports = grammar({
    // Can contain letters, numbers, and underscores
    // Must contain at least one alphabetic character (not number or _)
    // Cannot start with WF_ or SF_
    identifier: $ => /[0-9_]*[A-Za-z][A-Za-z0-9_]*/,
    identifier: $ => /([0-9_]*[A-Za-z][A-Za-z0-9_]*)|ℕ|ℤ|ℝ/,

    // EXTENDS Naturals, FiniteSets, Sequences
    extends: $ => seq(


@@ 296,7 296,7 @@ module.exports = grammar({
      $.module,
      $.single_line
    ),
    

    local_definition: $ => seq('LOCAL', $._definition),

    _definition: $ => choice(


@@ 716,7 716,7 @@ module.exports = grammar({

    // [f EXCEPT !.foo["bar"].baz = 4, !.bar = 3]
    except: $ => seq(
        '[', 
        '[',
        field("expr_to_update", $._expr),
        'EXCEPT',
        commaList1($.except_update),


@@ 726,7 726,7 @@ module.exports = grammar({
    // !.foo["bar"].baz = 4
    except_update: $ => seq(
        field("update_specifier", seq('!', $.except_update_specifier)),
        '=', 
        '=',
        field("new_val", $._expr)
    ),



@@ 740,7 740,7 @@ module.exports = grammar({

    // .foo
    except_update_record_field: $ => seq('.', alias($.identifier, $.identifier_ref)),
    

    // ["bar"]
    except_update_fn_appl: $ => seq('[', commaList1($._expr), ']'),



@@ 783,7 783,7 @@ module.exports = grammar({
    // This exhibits dangling else parsing ambiguity; consider
    // CASE e -> CASE f -> g [] h -> i
    // This can be parsed as:
    // (1) CASE e -> (CASE f -> g) [] h -> i 
    // (1) CASE e -> (CASE f -> g) [] h -> i
    // (2) CASE e -> (CASE f -> g [] h -> i)
    // Parse (2) is used, making this right-associative
    case: $ => prec.right(seq(


@@ 1181,7 1181,7 @@ module.exports = grammar({

    // P, MODULE Naturals, Q, MODULE Integers
    use_body_expr: $ => commaList1(choice($._expr, $.module_ref)),
    

    // DEFS >, R, MODULE Reals, =
    use_body_def: $ => seq(
      choice('DEF', 'DEFS'),


@@ 1221,7 1221,7 @@ module.exports = grammar({
    /**************************************************************************/

    pcal_algorithm: $ => choice(
      $._pcal_p_algorithm, 
      $._pcal_p_algorithm,
      $._pcal_c_algorithm
    ),



@@ 1256,7 1256,7 @@ module.exports = grammar({
      '}', $._notify_pcal_algorithm_end
    ),

    pcal_algorithm_start: $ => 
    pcal_algorithm_start: $ =>
      seq(
        choice(
          token(prec(PREC.PCAL, '--algorithm')),


@@ 1268,7 1268,7 @@ module.exports = grammar({
    fair: $ => seq(token(prec(PREC.PCAL, '--fair')), 'algorithm'),

    // Operators, which depend on PlusCal variables
    // define 
    // define
    //   zy == y*(x+y)
    // end define ;
    pcal_p_definitions: $ => seq(


@@ 1302,7 1302,7 @@ module.exports = grammar({
      'macro', field('name', $.identifier),
      '(',
      optional(seq(
        field('parameter', $.identifier), 
        field('parameter', $.identifier),
        repeat(seq(',', field('parameter', $.identifier)))
      )),
      ')'


@@ 1324,7 1324,7 @@ module.exports = grammar({
      alias($.pcal_c_algorithm_body, $.pcal_algorithm_body),
      optional(';')
    ),
    

    pcal_proc_decl: $ => seq(
      'procedure', field('name', $.identifier),
      '(',


@@ 1371,7 1371,7 @@ module.exports = grammar({
      optional(';')
    ),

    // x \in 1..10 
    // x \in 1..10
    // x = "x"
    pcal_var_decl: $ => seq(
      $.identifier,


@@ 1389,7 1389,7 @@ module.exports = grammar({
    // procedure foo(a, b=1)
    //               🠑   🠑
    // variable x=1;
    //           🠑 
    //           🠑
    pcal_proc_var_decl: $ => seq(
      $.identifier,
      optional(seq('=', $._expr))


@@ 1405,8 1405,8 @@ module.exports = grammar({
    // A:+ call my_procedure();
    // x := y || y := x
    _pcal_p_stmts: $ => seq(
      repeat(seq($._pcal_p_stmt, ';')), 
      $._pcal_p_stmt, 
      repeat(seq($._pcal_p_stmt, ';')),
      $._pcal_p_stmt,
      optional(';')
    ),



@@ 1436,7 1436,7 @@ module.exports = grammar({
    ),

    _pcal_label: $ => seq(
      field('label', seq($.identifier, ':')), 
      field('label', seq($.identifier, ':')),
      optional(choice('+', '-'))
    ),



@@ 1478,7 1478,7 @@ module.exports = grammar({

    // x[i] := x[j] || a := b
    pcal_assign: $ => seq(
      $.pcal_lhs, 
      $.pcal_lhs,
      $.assign,
      $._expr,
      repeat(seq($.vertvert, $.pcal_lhs, $.assign, $._expr))


@@ 1498,7 1498,7 @@ module.exports = grammar({
    //   clause1
    // elsif test2 then
    //   clause2
    // else 
    // else
    //   clause3
    // end if
    pcal_p_if: $ => seq(


@@ 1525,7 1525,7 @@ module.exports = grammar({
    ),

    pcal_c_while: $ => seq(
      'while', '(', $._expr, ')', 
      'while', '(', $._expr, ')',
      $._pcal_c_stmt
    ),



@@ 1546,7 1546,7 @@ module.exports = grammar({
      repeat1(seq('or', $._pcal_c_stmt))
    )),

    // with id \in S do body end with 
    // with id \in S do body end with
    pcal_p_with: $ => seq(
      'with', $._pcal_with_vars, 'do',
      $._pcal_p_stmts,


@@ 1554,7 1554,7 @@ module.exports = grammar({
    ),

    pcal_c_with: $ => seq(
      'with', '(', $._pcal_with_vars, ')', 
      'with', '(', $._pcal_with_vars, ')',
      $._pcal_c_stmt
    ),



@@ 1587,7 1587,7 @@ module.exports = grammar({
    // skip
    pcal_skip: $ => seq('skip'),

    // Used in procedures. Assigns to the parameters and local 
    // Used in procedures. Assigns to the parameters and local
    // procedure variables their previous values
    // procedure foo(a=1) begin
    // variable b=2;


@@ 1598,7 1598,7 @@ module.exports = grammar({

    // Jump to a label:
    // process foo begin
    //   A: 
    //   A:
    //     print("A");
    //   B:
    //     goto A;

M src/grammar.json => src/grammar.json +1 -1
@@ 774,7 774,7 @@
    },
    "identifier": {
      "type": "PATTERN",
      "value": "[0-9_]*[A-Za-z][A-Za-z0-9_]*"
      "value": "([0-9_]*[A-Za-z][A-Za-z0-9_]*)|ℕ|ℤ|ℝ"
    },
    "extends": {
      "type": "SEQ",

M src/parser.c => src/parser.c +3152 -3089
@@ 10631,132 10631,132 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(224)
      if (lookahead == '\r') SKIP(224)
      if (lookahead == '!') ADVANCE(312);
      if (lookahead == '"') ADVANCE(328);
      if (lookahead == '#') ADVANCE(382);
      if (lookahead == '$') ADVANCE(512);
      if (lookahead == '%') ADVANCE(476);
      if (lookahead == '&') ADVANCE(484);
      if (lookahead == '\'') ADVANCE(535);
      if (lookahead == '!') ADVANCE(313);
      if (lookahead == '"') ADVANCE(329);
      if (lookahead == '#') ADVANCE(380);
      if (lookahead == '$') ADVANCE(510);
      if (lookahead == '%') ADVANCE(474);
      if (lookahead == '&') ADVANCE(482);
      if (lookahead == '\'') ADVANCE(533);
      if (lookahead == '(') ADVANCE(242);
      if (lookahead == ')') ADVANCE(244);
      if (lookahead == '*') ADVANCE(240);
      if (lookahead == '+') ADVANCE(468);
      if (lookahead == ',') ADVANCE(304);
      if (lookahead == '-') ADVANCE(352);
      if (lookahead == '.') ADVANCE(339);
      if (lookahead == '/') ADVANCE(497);
      if (lookahead == '+') ADVANCE(466);
      if (lookahead == ',') ADVANCE(305);
      if (lookahead == '-') ADVANCE(350);
      if (lookahead == '.') ADVANCE(337);
      if (lookahead == '/') ADVANCE(495);
      if (lookahead == ':') ADVANCE(290);
      if (lookahead == ';') ADVANCE(547);
      if (lookahead == '<') ADVANCE(385);
      if (lookahead == '=') ADVANCE(341);
      if (lookahead == '>') ADVANCE(389);
      if (lookahead == ';') ADVANCE(545);
      if (lookahead == '<') ADVANCE(383);
      if (lookahead == '=') ADVANCE(339);
      if (lookahead == '>') ADVANCE(387);
      if (lookahead == '?') ADVANCE(39);
      if (lookahead == '@') ADVANCE(293);
      if (lookahead == '[') ADVANCE(309);
      if (lookahead == '\\') ADVANCE(454);
      if (lookahead == ']') ADVANCE(310);
      if (lookahead == '^') ADVANCE(529);
      if (lookahead == '[') ADVANCE(310);
      if (lookahead == '\\') ADVANCE(452);
      if (lookahead == ']') ADVANCE(311);
      if (lookahead == '^') ADVANCE(527);
      if (lookahead == '_') ADVANCE(298);
      if (lookahead == '{') ADVANCE(336);
      if (lookahead == '|') ADVANCE(478);
      if (lookahead == '}') ADVANCE(337);
      if (lookahead == '~') ADVANCE(349);
      if (lookahead == 172) ADVANCE(350);
      if (lookahead == 215) ADVANCE(524);
      if (lookahead == 247) ADVANCE(504);
      if (lookahead == 8214) ADVANCE(481);
      if (lookahead == 8229) ADVANCE(464);
      if (lookahead == 8230) ADVANCE(466);
      if (lookahead == 8252) ADVANCE(510);
      if (lookahead == 8263) ADVANCE(515);
      if (lookahead == 8314) ADVANCE(532);
      if (lookahead == 8469) ADVANCE(333);
      if (lookahead == 8477) ADVANCE(335);
      if (lookahead == 8484) ADVANCE(334);
      if (lookahead == '{') ADVANCE(334);
      if (lookahead == '|') ADVANCE(476);
      if (lookahead == '}') ADVANCE(335);
      if (lookahead == '~') ADVANCE(347);
      if (lookahead == 172) ADVANCE(348);
      if (lookahead == 215) ADVANCE(522);
      if (lookahead == 247) ADVANCE(502);
      if (lookahead == 8214) ADVANCE(479);
      if (lookahead == 8229) ADVANCE(462);
      if (lookahead == 8230) ADVANCE(464);
      if (lookahead == 8252) ADVANCE(508);
      if (lookahead == 8263) ADVANCE(513);
      if (lookahead == 8314) ADVANCE(530);
      if (lookahead == 8469 ||
          lookahead == 8477 ||
          lookahead == 8484) ADVANCE(303);
      if (lookahead == 8592) ADVANCE(260);
      if (lookahead == 8594) ADVANCE(274);
      if (lookahead == 8605) ADVANCE(374);
      if (lookahead == 8605) ADVANCE(372);
      if (lookahead == 8614) ADVANCE(271);
      if (lookahead == 8658) ADVANCE(363);
      if (lookahead == 8660) ADVANCE(371);
      if (lookahead == 8669) ADVANCE(373);
      if (lookahead == 8696) ADVANCE(365);
      if (lookahead == 8658) ADVANCE(361);
      if (lookahead == 8660) ADVANCE(369);
      if (lookahead == 8669) ADVANCE(371);
      if (lookahead == 8696) ADVANCE(363);
      if (lookahead == 8704) ADVANCE(263);
      if (lookahead == 8707) ADVANCE(266);
      if (lookahead == 8712) ADVANCE(257);
      if (lookahead == 8713) ADVANCE(420);
      if (lookahead == 8728) ADVANCE(506);
      if (lookahead == 8733) ADVANCE(430);
      if (lookahead == 8713) ADVANCE(418);
      if (lookahead == 8728) ADVANCE(504);
      if (lookahead == 8733) ADVANCE(428);
      if (lookahead == 8743) ADVANCE(300);
      if (lookahead == 8744) ADVANCE(302);
      if (lookahead == 8745) ADVANCE(459);
      if (lookahead == 8746) ADVANCE(462);
      if (lookahead == 8745) ADVANCE(457);
      if (lookahead == 8746) ADVANCE(460);
      if (lookahead == 8759) ADVANCE(296);
      if (lookahead == 8764) ADVANCE(432);
      if (lookahead == 8768) ADVANCE(526);
      if (lookahead == 8771) ADVANCE(434);
      if (lookahead == 8773) ADVANCE(412);
      if (lookahead == 8776) ADVANCE(399);
      if (lookahead == 8781) ADVANCE(410);
      if (lookahead == 8784) ADVANCE(414);
      if (lookahead == 8788) ADVANCE(378);
      if (lookahead == 8764) ADVANCE(430);
      if (lookahead == 8768) ADVANCE(524);
      if (lookahead == 8771) ADVANCE(432);
      if (lookahead == 8773) ADVANCE(410);
      if (lookahead == 8776) ADVANCE(397);
      if (lookahead == 8781) ADVANCE(408);
      if (lookahead == 8784) ADVANCE(412);
      if (lookahead == 8788) ADVANCE(376);
      if (lookahead == 8796) ADVANCE(254);
      if (lookahead == 8800) ADVANCE(383);
      if (lookahead == 8801) ADVANCE(368);
      if (lookahead == 8804) ADVANCE(394);
      if (lookahead == 8805) ADVANCE(397);
      if (lookahead == 8810) ADVANCE(418);
      if (lookahead == 8811) ADVANCE(416);
      if (lookahead == 8826) ADVANCE(422);
      if (lookahead == 8827) ADVANCE(424);
      if (lookahead == 8834) ADVANCE(444);
      if (lookahead == 8835) ADVANCE(446);
      if (lookahead == 8838) ADVANCE(448);
      if (lookahead == 8839) ADVANCE(450);
      if (lookahead == 8846) ADVANCE(521);
      if (lookahead == 8847) ADVANCE(436);
      if (lookahead == 8848) ADVANCE(438);
      if (lookahead == 8849) ADVANCE(440);
      if (lookahead == 8850) ADVANCE(442);
      if (lookahead == 8851) ADVANCE(517);
      if (lookahead == 8852) ADVANCE(519);
      if (lookahead == 8853) ADVANCE(472);
      if (lookahead == 8854) ADVANCE(475);
      if (lookahead == 8855) ADVANCE(494);
      if (lookahead == 8856) ADVANCE(491);
      if (lookahead == 8857) ADVANCE(488);
      if (lookahead == 8866) ADVANCE(402);
      if (lookahead == 8867) ADVANCE(406);
      if (lookahead == 8872) ADVANCE(404);
      if (lookahead == 8900) ADVANCE(359);
      if (lookahead == 8901) ADVANCE(528);
      if (lookahead == 8902) ADVANCE(508);
      if (lookahead == 8800) ADVANCE(381);
      if (lookahead == 8801) ADVANCE(366);
      if (lookahead == 8804) ADVANCE(392);
      if (lookahead == 8805) ADVANCE(395);
      if (lookahead == 8810) ADVANCE(416);
      if (lookahead == 8811) ADVANCE(414);
      if (lookahead == 8826) ADVANCE(420);
      if (lookahead == 8827) ADVANCE(422);
      if (lookahead == 8834) ADVANCE(442);
      if (lookahead == 8835) ADVANCE(444);
      if (lookahead == 8838) ADVANCE(446);
      if (lookahead == 8839) ADVANCE(448);
      if (lookahead == 8846) ADVANCE(519);
      if (lookahead == 8847) ADVANCE(434);
      if (lookahead == 8848) ADVANCE(436);
      if (lookahead == 8849) ADVANCE(438);
      if (lookahead == 8850) ADVANCE(440);
      if (lookahead == 8851) ADVANCE(515);
      if (lookahead == 8852) ADVANCE(517);
      if (lookahead == 8853) ADVANCE(470);
      if (lookahead == 8854) ADVANCE(473);
      if (lookahead == 8855) ADVANCE(492);
      if (lookahead == 8856) ADVANCE(489);
      if (lookahead == 8857) ADVANCE(486);
      if (lookahead == 8866) ADVANCE(400);
      if (lookahead == 8867) ADVANCE(404);
      if (lookahead == 8872) ADVANCE(402);
      if (lookahead == 8900) ADVANCE(357);
      if (lookahead == 8901) ADVANCE(526);
      if (lookahead == 8902) ADVANCE(506);
      if (lookahead == 9633) ADVANCE(288);
      if (lookahead == 9671) ADVANCE(360);
      if (lookahead == 9679) ADVANCE(502);
      if (lookahead == 9711) ADVANCE(500);
      if (lookahead == 9671) ADVANCE(358);
      if (lookahead == 9679) ADVANCE(500);
      if (lookahead == 9711) ADVANCE(498);
      if (lookahead == 10216) ADVANCE(277);
      if (lookahead == 10217) ADVANCE(283);
      if (lookahead == 10229) ADVANCE(259);
      if (lookahead == 10230) ADVANCE(273);
      if (lookahead == 10233) ADVANCE(362);
      if (lookahead == 10234) ADVANCE(370);
      if (lookahead == 10233) ADVANCE(360);
      if (lookahead == 10234) ADVANCE(368);
      if (lookahead == 10236) ADVANCE(270);
      if (lookahead == 10565) ADVANCE(366);
      if (lookahead == 10868) ADVANCE(380);
      if (lookahead == 10927) ADVANCE(426);
      if (lookahead == 10928) ADVANCE(428);
      if (lookahead == 10980) ADVANCE(408);
      if (lookahead == 10565) ADVANCE(364);
      if (lookahead == 10868) ADVANCE(378);
      if (lookahead == 10927) ADVANCE(424);
      if (lookahead == 10928) ADVANCE(426);
      if (lookahead == 10980) ADVANCE(406);
      if (lookahead == 12296) ADVANCE(276);
      if (lookahead == 12297) ADVANCE(281);
      if (lookahead == '0' ||
          lookahead == '1') ADVANCE(318);
          lookahead == '1') ADVANCE(319);
      if (lookahead == '8' ||
          lookahead == '9') ADVANCE(537);
      if (('2' <= lookahead && lookahead <= '7')) ADVANCE(322);
          lookahead == '9') ADVANCE(535);
      if (('2' <= lookahead && lookahead <= '7')) ADVANCE(323);
      if (('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(303);
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(304);
      END_STATE();
    case 1:
      if (lookahead == '\n') ADVANCE(5);


@@ 10770,16 10770,16 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
      END_STATE();
    case 3:
      if (lookahead == '\n') SKIP(219)
      if (lookahead == '\r') ADVANCE(329);
      if (lookahead == '"') ADVANCE(331);
      if (lookahead == '(') ADVANCE(329);
      if (lookahead == '\\') ADVANCE(330);
      if (lookahead == '\r') ADVANCE(330);
      if (lookahead == '"') ADVANCE(332);
      if (lookahead == '(') ADVANCE(330);
      if (lookahead == '\\') ADVANCE(331);
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') ADVANCE(329);
      if (lookahead != 0) ADVANCE(329);
          lookahead == ' ') ADVANCE(330);
      if (lookahead != 0) ADVANCE(330);
      END_STATE();
    case 4:
      if (lookahead == '!') ADVANCE(509);
      if (lookahead == '!') ADVANCE(507);
      END_STATE();
    case 5:
      if (lookahead == '(') ADVANCE(16);


@@ 10787,19 10787,19 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
          lookahead == ' ') ADVANCE(5);
      END_STATE();
    case 6:
      if (lookahead == ')') ADVANCE(471);
      if (lookahead == ')') ADVANCE(469);
      END_STATE();
    case 7:
      if (lookahead == ')') ADVANCE(474);
      if (lookahead == ')') ADVANCE(472);
      END_STATE();
    case 8:
      if (lookahead == ')') ADVANCE(487);
      if (lookahead == ')') ADVANCE(485);
      END_STATE();
    case 9:
      if (lookahead == ')') ADVANCE(490);
      if (lookahead == ')') ADVANCE(488);
      END_STATE();
    case 10:
      if (lookahead == ')') ADVANCE(493);
      if (lookahead == ')') ADVANCE(491);
      END_STATE();
    case 11:
      if (lookahead == '*') ADVANCE(234);


@@ 10834,45 10834,45 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
    case 19:
      if (lookahead == '-') ADVANCE(258);
      if (lookahead == '<') ADVANCE(275);
      if (lookahead == '>') ADVANCE(358);
      if (lookahead == '>') ADVANCE(356);
      END_STATE();
    case 20:
      if (lookahead == '-') ADVANCE(258);
      if (lookahead == '>') ADVANCE(358);
      if (lookahead == '>') ADVANCE(356);
      END_STATE();
    case 21:
      if (lookahead == '-') ADVANCE(18);
      END_STATE();
    case 22:
      if (lookahead == '-') ADVANCE(21);
      if (lookahead == '.') ADVANCE(357);
      if (lookahead == '.') ADVANCE(355);
      END_STATE();
    case 23:
      if (lookahead == '-') ADVANCE(36);
      if (lookahead == '|') ADVANCE(480);
      if (lookahead == '|') ADVANCE(478);
      END_STATE();
    case 24:
      if (lookahead == '.') ADVANCE(463);
      if (lookahead == '.') ADVANCE(461);
      END_STATE();
    case 25:
      if (lookahead == '.') ADVANCE(463);
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(315);
      if (lookahead == '.') ADVANCE(461);
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(316);
      END_STATE();
    case 26:
      if (lookahead == ':') ADVANCE(295);
      if (lookahead == '=') ADVANCE(377);
      if (lookahead == '>') ADVANCE(452);
      if (lookahead == '=') ADVANCE(375);
      if (lookahead == '>') ADVANCE(450);
      END_STATE();
    case 27:
      if (lookahead == ':') ADVANCE(294);
      END_STATE();
    case 28:
      if (lookahead == ':') ADVANCE(29);
      if (lookahead == '=') ADVANCE(377);
      if (lookahead == '>') ADVANCE(452);
      if (lookahead == '=') ADVANCE(375);
      if (lookahead == '>') ADVANCE(450);
      END_STATE();
    case 29:
      if (lookahead == '=') ADVANCE(379);
      if (lookahead == '=') ADVANCE(377);
      END_STATE();
    case 30:
      if (lookahead == '=') ADVANCE(31);


@@ 10887,25 10887,25 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
      if (lookahead == '=') ADVANCE(30);
      END_STATE();
    case 34:
      if (lookahead == '>') ADVANCE(358);
      if (lookahead == '>') ADVANCE(356);
      END_STATE();
    case 35:
      if (lookahead == '>') ADVANCE(372);
      if (lookahead == '>') ADVANCE(370);
      END_STATE();
    case 36:
      if (lookahead == '>') ADVANCE(269);
      END_STATE();
    case 37:
      if (lookahead == '>') ADVANCE(364);
      if (lookahead == '>') ADVANCE(362);
      END_STATE();
    case 38:
      if (lookahead == '>') ADVANCE(278);
      END_STATE();
    case 39:
      if (lookahead == '?') ADVANCE(514);
      if (lookahead == '?') ADVANCE(512);
      END_STATE();
    case 40:
      if (lookahead == '@') ADVANCE(451);
      if (lookahead == '@') ADVANCE(449);
      END_STATE();
    case 41:
      if (lookahead == 'X') ADVANCE(10);


@@ 10914,7 10914,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
      if (lookahead == ']') ADVANCE(287);
      END_STATE();
    case 43:
      if (lookahead == '_') ADVANCE(345);
      if (lookahead == '_') ADVANCE(343);
      END_STATE();
    case 44:
      if (lookahead == 'a') ADVANCE(128);


@@ 10926,14 10926,14 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
    case 45:
      if (lookahead == 'a') ADVANCE(110);
      if (lookahead == 'e') ADVANCE(138);
      if (lookahead == 'l') ADVANCE(417);
      if (lookahead == 'l') ADVANCE(415);
      if (lookahead == 'n') ADVANCE(123);
      if (lookahead == 'o') ADVANCE(148);
      END_STATE();
    case 46:
      if (lookahead == 'a') ADVANCE(110);
      if (lookahead == 'e') ADVANCE(138);
      if (lookahead == 'l') ADVANCE(417);
      if (lookahead == 'l') ADVANCE(415);
      if (lookahead == 'o') ADVANCE(148);
      END_STATE();
    case 47:


@@ 10970,16 10970,16 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
      if (lookahead == 's') ADVANCE(185);
      END_STATE();
    case 56:
      if (lookahead == 'c') ADVANCE(505);
      if (lookahead == 'c') ADVANCE(503);
      END_STATE();
    case 57:
      if (lookahead == 'c') ADVANCE(421);
      if (lookahead == 'c') ADVANCE(419);
      END_STATE();
    case 58:
      if (lookahead == 'c') ADVANCE(423);
      if (lookahead == 'c') ADVANCE(421);
      END_STATE();
    case 59:
      if (lookahead == 'c') ADVANCE(499);
      if (lookahead == 'c') ADVANCE(497);
      END_STATE();
    case 60:
      if (lookahead == 'c') ADVANCE(92);


@@ 10988,11 10988,11 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
      if (lookahead == 'c') ADVANCE(180);
      END_STATE();
    case 62:
      if (lookahead == 'd') ADVANCE(375);
      if (lookahead == 'd') ADVANCE(373);
      END_STATE();
    case 63:
      if (lookahead == 'e') ADVANCE(137);
      if (lookahead == 'g') ADVANCE(415);
      if (lookahead == 'g') ADVANCE(413);
      END_STATE();
    case 64:
      if (lookahead == 'e') ADVANCE(78);


@@ 11039,16 11039,16 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
      if (lookahead == 'g') ADVANCE(60);
      END_STATE();
    case 78:
      if (lookahead == 'g') ADVANCE(347);
      if (lookahead == 'g') ADVANCE(345);
      END_STATE();
    case 79:
      if (lookahead == 'g') ADVANCE(411);
      if (lookahead == 'g') ADVANCE(409);
      END_STATE();
    case 80:
      if (lookahead == 'g') ADVANCE(126);
      END_STATE();
    case 81:
      if (lookahead == 'h') ADVANCE(489);
      if (lookahead == 'h') ADVANCE(487);
      END_STATE();
    case 82:
      if (lookahead == 'h') ADVANCE(105);


@@ 11122,10 11122,10 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
      if (lookahead == 'l') ADVANCE(188);
      END_STATE();
    case 104:
      if (lookahead == 'm') ADVANCE(431);
      if (lookahead == 'm') ADVANCE(429);
      END_STATE();
    case 105:
      if (lookahead == 'm') ADVANCE(548);
      if (lookahead == 'm') ADVANCE(546);
      END_STATE();
    case 106:
      if (lookahead == 'm') ADVANCE(68);


@@ 11143,10 11143,10 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
      if (lookahead == 'n') ADVANCE(62);
      END_STATE();
    case 111:
      if (lookahead == 'n') ADVANCE(419);
      if (lookahead == 'n') ADVANCE(417);
      END_STATE();
    case 112:
      if (lookahead == 'n') ADVANCE(461);
      if (lookahead == 'n') ADVANCE(459);
      END_STATE();
    case 113:
      if (lookahead == 'n') ADVANCE(255);


@@ 11168,7 11168,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
      if (lookahead == 'o') ADVANCE(192);
      END_STATE();
    case 119:
      if (lookahead == 'o') ADVANCE(429);
      if (lookahead == 'o') ADVANCE(427);
      END_STATE();
    case 120:
      if (lookahead == 'o') ADVANCE(184);


@@ 11196,19 11196,19 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
      if (lookahead == 's') ADVANCE(193);
      END_STATE();
    case 128:
      if (lookahead == 'p') ADVANCE(457);
      if (lookahead == 'p') ADVANCE(455);
      END_STATE();
    case 129:
      if (lookahead == 'p') ADVANCE(460);
      if (lookahead == 'p') ADVANCE(458);
      END_STATE();
    case 130:
      if (lookahead == 'p') ADVANCE(409);
      if (lookahead == 'p') ADVANCE(407);
      END_STATE();
    case 131:
      if (lookahead == 'p') ADVANCE(516);
      if (lookahead == 'p') ADVANCE(514);
      END_STATE();
    case 132:
      if (lookahead == 'p') ADVANCE(518);
      if (lookahead == 'p') ADVANCE(516);
      END_STATE();
    case 133:
      if (lookahead == 'p') ADVANCE(154);


@@ 11224,46 11224,46 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
      if (lookahead == 'x') ADVANCE(86);
      END_STATE();
    case 137:
      if (lookahead == 'q') ADVANCE(396);
      if (lookahead == 'q') ADVANCE(394);
      END_STATE();
    case 138:
      if (lookahead == 'q') ADVANCE(393);
      if (lookahead == 'q') ADVANCE(391);
      END_STATE();
    case 139:
      if (lookahead == 'q') ADVANCE(413);
      if (lookahead == 'q') ADVANCE(411);
      END_STATE();
    case 140:
      if (lookahead == 'q') ADVANCE(433);
      if (lookahead == 'q') ADVANCE(431);
      END_STATE();
    case 141:
      if (lookahead == 'q') ADVANCE(425);
      if (lookahead == 'q') ADVANCE(423);
      END_STATE();
    case 142:
      if (lookahead == 'q') ADVANCE(427);
      if (lookahead == 'q') ADVANCE(425);
      END_STATE();
    case 143:
      if (lookahead == 'q') ADVANCE(447);
      if (lookahead == 'q') ADVANCE(445);
      END_STATE();
    case 144:
      if (lookahead == 'q') ADVANCE(449);
      if (lookahead == 'q') ADVANCE(447);
      END_STATE();
    case 145:
      if (lookahead == 'q') ADVANCE(439);
      if (lookahead == 'q') ADVANCE(437);
      END_STATE();
    case 146:
      if (lookahead == 'q') ADVANCE(441);
      if (lookahead == 'q') ADVANCE(439);
      END_STATE();
    case 147:
      if (lookahead == 'r') ADVANCE(525);
      if (lookahead == 'r') ADVANCE(523);
      END_STATE();
    case 148:
      if (lookahead == 'r') ADVANCE(376);
      if (lookahead == 'r') ADVANCE(374);
      END_STATE();
    case 149:
      if (lookahead == 'r') ADVANCE(507);
      if (lookahead == 'r') ADVANCE(505);
      END_STATE();
    case 150:
      if (lookahead == 'r') ADVANCE(549);
      if (lookahead == 'r') ADVANCE(547);
      END_STATE();
    case 151:
      if (lookahead == 'r') ADVANCE(67);


@@ 11287,25 11287,25 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
      if (lookahead == 'r') ADVANCE(165);
      END_STATE();
    case 158:
      if (lookahead == 's') ADVANCE(470);
      if (lookahead == 's') ADVANCE(468);
      END_STATE();
    case 159:
      if (lookahead == 's') ADVANCE(81);
      END_STATE();
    case 160:
      if (lookahead == 's') ADVANCE(523);
      if (lookahead == 's') ADVANCE(521);
      END_STATE();
    case 161:
      if (lookahead == 's') ADVANCE(520);
      if (lookahead == 's') ADVANCE(518);
      END_STATE();
    case 162:
      if (lookahead == 's') ADVANCE(265);
      END_STATE();
    case 163:
      if (lookahead == 's') ADVANCE(473);
      if (lookahead == 's') ADVANCE(471);
      END_STATE();
    case 164:
      if (lookahead == 's') ADVANCE(492);
      if (lookahead == 's') ADVANCE(490);
      END_STATE();
    case 165:
      if (lookahead == 's') ADVANCE(69);


@@ 11329,31 11329,31 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
      if (lookahead == 't') ADVANCE(66);
      END_STATE();
    case 172:
      if (lookahead == 't') ADVANCE(527);
      if (lookahead == 't') ADVANCE(525);
      END_STATE();
    case 173:
      if (lookahead == 't') ADVANCE(346);
      if (lookahead == 't') ADVANCE(344);
      END_STATE();
    case 174:
      if (lookahead == 't') ADVANCE(486);
      if (lookahead == 't') ADVANCE(484);
      END_STATE();
    case 175:
      if (lookahead == 't') ADVANCE(501);
      if (lookahead == 't') ADVANCE(499);
      END_STATE();
    case 176:
      if (lookahead == 't') ADVANCE(443);
      if (lookahead == 't') ADVANCE(441);
      END_STATE();
    case 177:
      if (lookahead == 't') ADVANCE(445);
      if (lookahead == 't') ADVANCE(443);
      END_STATE();
    case 178:
      if (lookahead == 't') ADVANCE(435);
      if (lookahead == 't') ADVANCE(433);
      END_STATE();
    case 179:
      if (lookahead == 't') ADVANCE(437);
      if (lookahead == 't') ADVANCE(435);
      END_STATE();
    case 180:
      if (lookahead == 't') ADVANCE(458);
      if (lookahead == 't') ADVANCE(456);
      END_STATE();
    case 181:
      if (lookahead == 't') ADVANCE(82);


@@ 11383,13 11383,13 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
      if (lookahead == 'u') ADVANCE(163);
      END_STATE();
    case 190:
      if (lookahead == 'v') ADVANCE(503);
      if (lookahead == 'v') ADVANCE(501);
      END_STATE();
    case 191:
      if (lookahead == 'v') ADVANCE(367);
      if (lookahead == 'v') ADVANCE(365);
      END_STATE();
    case 192:
      if (lookahead == 'x') ADVANCE(398);
      if (lookahead == 'x') ADVANCE(396);
      END_STATE();
    case 193:
      if (lookahead == 'y') ADVANCE(107);


@@ 11398,2013 11398,2043 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(194)
      if (lookahead == '\r') SKIP(194)
      if (lookahead == '!') ADVANCE(312);
      if (lookahead == '"') ADVANCE(328);
      if (lookahead == '#') ADVANCE(382);
      if (lookahead == '$') ADVANCE(512);
      if (lookahead == '%') ADVANCE(476);
      if (lookahead == '&') ADVANCE(484);
      if (lookahead == '\'') ADVANCE(535);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == ')') ADVANCE(307);
      if (lookahead == '*') ADVANCE(495);
      if (lookahead == '+') ADVANCE(468);
      if (lookahead == ',') ADVANCE(304);
      if (lookahead == '-') ADVANCE(354);
      if (lookahead == '!') ADVANCE(313);
      if (lookahead == '"') ADVANCE(329);
      if (lookahead == '#') ADVANCE(380);
      if (lookahead == '$') ADVANCE(510);
      if (lookahead == '%') ADVANCE(474);
      if (lookahead == '&') ADVANCE(482);
      if (lookahead == '\'') ADVANCE(533);
      if (lookahead == '(') ADVANCE(307);
      if (lookahead == ')') ADVANCE(308);
      if (lookahead == '*') ADVANCE(493);
      if (lookahead == '+') ADVANCE(466);
      if (lookahead == ',') ADVANCE(305);
      if (lookahead == '-') ADVANCE(352);
      if (lookahead == '.') ADVANCE(25);
      if (lookahead == '/') ADVANCE(497);
      if (lookahead == '/') ADVANCE(495);
      if (lookahead == ':') ADVANCE(28);
      if (lookahead == '<') ADVANCE(385);
      if (lookahead == '=') ADVANCE(344);
      if (lookahead == '>') ADVANCE(388);
      if (lookahead == '<') ADVANCE(383);
      if (lookahead == '=') ADVANCE(342);
      if (lookahead == '>') ADVANCE(386);
      if (lookahead == '?') ADVANCE(39);
      if (lookahead == '@') ADVANCE(293);
      if (lookahead == '[') ADVANCE(309);
      if (lookahead == '\\') ADVANCE(454);
      if (lookahead == '^') ADVANCE(529);
      if (lookahead == '[') ADVANCE(310);
      if (lookahead == '\\') ADVANCE(452);
      if (lookahead == '^') ADVANCE(527);
      if (lookahead == '_') ADVANCE(298);
      if (lookahead == '{') ADVANCE(336);
      if (lookahead == '|') ADVANCE(479);
      if (lookahead == '}') ADVANCE(337);
      if (lookahead == '~') ADVANCE(349);
      if (lookahead == 172) ADVANCE(350);
      if (lookahead == 215) ADVANCE(524);
      if (lookahead == 247) ADVANCE(504);
      if (lookahead == 8214) ADVANCE(481);
      if (lookahead == 8229) ADVANCE(464);
      if (lookahead == 8230) ADVANCE(466);
      if (lookahead == 8252) ADVANCE(510);
      if (lookahead == 8263) ADVANCE(515);
      if (lookahead == 8314) ADVANCE(532);
      if (lookahead == 8469) ADVANCE(333);
      if (lookahead == 8477) ADVANCE(335);
      if (lookahead == 8484) ADVANCE(334);
      if (lookahead == 8605) ADVANCE(374);
      if (lookahead == 8658) ADVANCE(363);
      if (lookahead == 8660) ADVANCE(371);
      if (lookahead == 8669) ADVANCE(373);
      if (lookahead == 8696) ADVANCE(365);
      if (lookahead == '{') ADVANCE(334);
      if (lookahead == '|') ADVANCE(477);
      if (lookahead == '}') ADVANCE(335);
      if (lookahead == '~') ADVANCE(347);
      if (lookahead == 172) ADVANCE(348);
      if (lookahead == 215) ADVANCE(522);
      if (lookahead == 247) ADVANCE(502);
      if (lookahead == 8214) ADVANCE(479);
      if (lookahead == 8229) ADVANCE(462);
      if (lookahead == 8230) ADVANCE(464);
      if (lookahead == 8252) ADVANCE(508);
      if (lookahead == 8263) ADVANCE(513);
      if (lookahead == 8314) ADVANCE(530);
      if (lookahead == 8469 ||
          lookahead == 8477 ||
          lookahead == 8484) ADVANCE(303);
      if (lookahead == 8605) ADVANCE(372);
      if (lookahead == 8658) ADVANCE(361);
      if (lookahead == 8660) ADVANCE(369);
      if (lookahead == 8669) ADVANCE(371);
      if (lookahead == 8696) ADVANCE(363);
      if (lookahead == 8704) ADVANCE(263);
      if (lookahead == 8707) ADVANCE(266);
      if (lookahead == 8712) ADVANCE(257);
      if (lookahead == 8713) ADVANCE(420);
      if (lookahead == 8728) ADVANCE(506);
      if (lookahead == 8733) ADVANCE(430);
      if (lookahead == 8713) ADVANCE(418);
      if (lookahead == 8728) ADVANCE(504);
      if (lookahead == 8733) ADVANCE(428);
      if (lookahead == 8743) ADVANCE(300);
      if (lookahead == 8744) ADVANCE(302);
      if (lookahead == 8745) ADVANCE(459);
      if (lookahead == 8746) ADVANCE(462);
      if (lookahead == 8764) ADVANCE(432);
      if (lookahead == 8768) ADVANCE(526);
      if (lookahead == 8771) ADVANCE(434);
      if (lookahead == 8773) ADVANCE(412);
      if (lookahead == 8776) ADVANCE(399);
      if (lookahead == 8781) ADVANCE(410);
      if (lookahead == 8784) ADVANCE(414);
      if (lookahead == 8788) ADVANCE(378);
      if (lookahead == 8800) ADVANCE(383);
      if (lookahead == 8801) ADVANCE(368);
      if (lookahead == 8804) ADVANCE(394);
      if (lookahead == 8805) ADVANCE(397);
      if (lookahead == 8810) ADVANCE(418);
      if (lookahead == 8811) ADVANCE(416);
      if (lookahead == 8826) ADVANCE(422);
      if (lookahead == 8827) ADVANCE(424);
      if (lookahead == 8834) ADVANCE(444);
      if (lookahead == 8835) ADVANCE(446);
      if (lookahead == 8838) ADVANCE(448);
      if (lookahead == 8839) ADVANCE(450);
      if (lookahead == 8846) ADVANCE(521);
      if (lookahead == 8847) ADVANCE(436);
      if (lookahead == 8848) ADVANCE(438);
      if (lookahead == 8849) ADVANCE(440);
      if (lookahead == 8850) ADVANCE(442);
      if (lookahead == 8851) ADVANCE(517);
      if (lookahead == 8852) ADVANCE(519);
      if (lookahead == 8853) ADVANCE(472);
      if (lookahead == 8854) ADVANCE(475);
      if (lookahead == 8855) ADVANCE(494);
      if (lookahead == 8856) ADVANCE(491);
      if (lookahead == 8857) ADVANCE(488);
      if (lookahead == 8866) ADVANCE(402);
      if (lookahead == 8867) ADVANCE(406);
      if (lookahead == 8872) ADVANCE(404);
      if (lookahead == 8900) ADVANCE(359);
      if (lookahead == 8901) ADVANCE(528);
      if (lookahead == 8902) ADVANCE(508);
      if (lookahead == 8745) ADVANCE(457);
      if (lookahead == 8746) ADVANCE(460);
      if (lookahead == 8764) ADVANCE(430);
      if (lookahead == 8768) ADVANCE(524);
      if (lookahead == 8771) ADVANCE(432);
      if (lookahead == 8773) ADVANCE(410);
      if (lookahead == 8776) ADVANCE(397);
      if (lookahead == 8781) ADVANCE(408);
      if (lookahead == 8784) ADVANCE(412);
      if (lookahead == 8788) ADVANCE(376);
      if (lookahead == 8800) ADVANCE(381);
      if (lookahead == 8801) ADVANCE(366);
      if (lookahead == 8804) ADVANCE(392);
      if (lookahead == 8805) ADVANCE(395);
      if (lookahead == 8810) ADVANCE(416);
      if (lookahead == 8811) ADVANCE(414);
      if (lookahead == 8826) ADVANCE(420);
      if (lookahead == 8827) ADVANCE(422);
      if (lookahead == 8834) ADVANCE(442);
      if (lookahead == 8835) ADVANCE(444);
      if (lookahead == 8838) ADVANCE(446);
      if (lookahead == 8839) ADVANCE(448);
      if (lookahead == 8846) ADVANCE(519);
      if (lookahead == 8847) ADVANCE(434);
      if (lookahead == 8848) ADVANCE(436);
      if (lookahead == 8849) ADVANCE(438);
      if (lookahead == 8850) ADVANCE(440);
      if (lookahead == 8851) ADVANCE(515);
      if (lookahead == 8852) ADVANCE(517);
      if (lookahead == 8853) ADVANCE(470);
      if (lookahead == 8854) ADVANCE(473);
      if (lookahead == 8855) ADVANCE(492);
      if (lookahead == 8856) ADVANCE(489);
      if (lookahead == 8857) ADVANCE(486);
      if (lookahead == 8866) ADVANCE(400);
      if (lookahead == 8867) ADVANCE(404);
      if (lookahead == 8872) ADVANCE(402);
      if (lookahead == 8900) ADVANCE(357);
      if (lookahead == 8901) ADVANCE(526);
      if (lookahead == 8902) ADVANCE(506);
      if (lookahead == 9633) ADVANCE(288);
      if (lookahead == 9671) ADVANCE(360);
      if (lookahead == 9679) ADVANCE(502);
      if (lookahead == 9711) ADVANCE(500);
      if (lookahead == 9671) ADVANCE(358);
      if (lookahead == 9679) ADVANCE(500);
      if (lookahead == 9711) ADVANCE(498);
      if (lookahead == 10216) ADVANCE(277);
      if (lookahead == 10233) ADVANCE(362);
      if (lookahead == 10234) ADVANCE(370);
      if (lookahead == 10565) ADVANCE(366);
      if (lookahead == 10868) ADVANCE(380);
      if (lookahead == 10927) ADVANCE(426);
      if (lookahead == 10928) ADVANCE(428);
      if (lookahead == 10980) ADVANCE(408);
      if (lookahead == 10233) ADVANCE(360);
      if (lookahead == 10234) ADVANCE(368);
      if (lookahead == 10565) ADVANCE(364);
      if (lookahead == 10868) ADVANCE(378);
      if (lookahead == 10927) ADVANCE(424);
      if (lookahead == 10928) ADVANCE(426);
      if (lookahead == 10980) ADVANCE(406);
      if (lookahead == 12296) ADVANCE(276);
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(313);
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(314);
      if (('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(303);
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(304);
      END_STATE();
    case 195:
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(195)
      if (lookahead == '\r') SKIP(195)
      if (lookahead == '!') ADVANCE(312);
      if (lookahead == '"') ADVANCE(328);
      if (lookahead == '#') ADVANCE(382);
      if (lookahead == '$') ADVANCE(512);
      if (lookahead == '%') ADVANCE(476);
      if (lookahead == '&') ADVANCE(484);
      if (lookahead == '\'') ADVANCE(535);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == '*') ADVANCE(495);
      if (lookahead == '+') ADVANCE(468);
      if (lookahead == ',') ADVANCE(304);
      if (lookahead == '-') ADVANCE(353);
      if (lookahead == '!') ADVANCE(313);
      if (lookahead == '"') ADVANCE(329);
      if (lookahead == '#') ADVANCE(380);
      if (lookahead == '$') ADVANCE(510);
      if (lookahead == '%') ADVANCE(474);
      if (lookahead == '&') ADVANCE(482);
      if (lookahead == '\'') ADVANCE(533);
      if (lookahead == '(') ADVANCE(307);
      if (lookahead == '*') ADVANCE(493);
      if (lookahead == '+') ADVANCE(466);
      if (lookahead == ',') ADVANCE(305);
      if (lookahead == '-') ADVANCE(351);
      if (lookahead == '.') ADVANCE(25);
      if (lookahead == '/') ADVANCE(497);
      if (lookahead == '/') ADVANCE(495);
      if (lookahead == ':') ADVANCE(28);
      if (lookahead == '<') ADVANCE(385);
      if (lookahead == '=') ADVANCE(343);
      if (lookahead == '>') ADVANCE(388);
      if (lookahead == '<') ADVANCE(383);
      if (lookahead == '=') ADVANCE(341);
      if (lookahead == '>') ADVANCE(386);
      if (lookahead == '?') ADVANCE(39);
      if (lookahead == '@') ADVANCE(293);
      if (lookahead == '[') ADVANCE(309);
      if (lookahead == '\\') ADVANCE(454);
      if (lookahead == '^') ADVANCE(529);
      if (lookahead == '[') ADVANCE(310);
      if (lookahead == '\\') ADVANCE(452);
      if (lookahead == '^') ADVANCE(527);
      if (lookahead == '_') ADVANCE(223);
      if (lookahead == '{') ADVANCE(336);
      if (lookahead == '|') ADVANCE(479);
      if (lookahead == '~') ADVANCE(349);
      if (lookahead == 172) ADVANCE(350);
      if (lookahead == 215) ADVANCE(524);
      if (lookahead == 247) ADVANCE(504);
      if (lookahead == 8214) ADVANCE(481);
      if (lookahead == 8229) ADVANCE(464);
      if (lookahead == 8230) ADVANCE(466);
      if (lookahead == 8252) ADVANCE(510);
      if (lookahead == 8263) ADVANCE(515);
      if (lookahead == 8314) ADVANCE(532);
      if (lookahead == 8469) ADVANCE(333);
      if (lookahead == 8477) ADVANCE(335);
      if (lookahead == 8484) ADVANCE(334);
      if (lookahead == 8605) ADVANCE(374);
      if (lookahead == 8658) ADVANCE(363);
      if (lookahead == 8660) ADVANCE(371);
      if (lookahead == 8669) ADVANCE(373);
      if (lookahead == 8696) ADVANCE(365);
      if (lookahead == '{') ADVANCE(334);
      if (lookahead == '|') ADVANCE(477);
      if (lookahead == '~') ADVANCE(347);
      if (lookahead == 172) ADVANCE(348);
      if (lookahead == 215) ADVANCE(522);
      if (lookahead == 247) ADVANCE(502);
      if (lookahead == 8214) ADVANCE(479);
      if (lookahead == 8229) ADVANCE(462);
      if (lookahead == 8230) ADVANCE(464);
      if (lookahead == 8252) ADVANCE(508);
      if (lookahead == 8263) ADVANCE(513);
      if (lookahead == 8314) ADVANCE(530);
      if (lookahead == 8469 ||
          lookahead == 8477 ||
          lookahead == 8484) ADVANCE(303);
      if (lookahead == 8605) ADVANCE(372);
      if (lookahead == 8658) ADVANCE(361);
      if (lookahead == 8660) ADVANCE(369);
      if (lookahead == 8669) ADVANCE(371);
      if (lookahead == 8696) ADVANCE(363);
      if (lookahead == 8704) ADVANCE(263);
      if (lookahead == 8707) ADVANCE(266);
      if (lookahead == 8712) ADVANCE(257);
      if (lookahead == 8713) ADVANCE(420);
      if (lookahead == 8728) ADVANCE(506);
      if (lookahead == 8733) ADVANCE(430);
      if (lookahead == 8713) ADVANCE(418);
      if (lookahead == 8728) ADVANCE(504);
      if (lookahead == 8733) ADVANCE(428);
      if (lookahead == 8743) ADVANCE(300);
      if (lookahead == 8744) ADVANCE(302);
      if (lookahead == 8745) ADVANCE(459);
      if (lookahead == 8746) ADVANCE(462);
      if (lookahead == 8764) ADVANCE(432);
      if (lookahead == 8768) ADVANCE(526);
      if (lookahead == 8771) ADVANCE(434);
      if (lookahead == 8773) ADVANCE(412);
      if (lookahead == 8776) ADVANCE(399);
      if (lookahead == 8781) ADVANCE(410);
      if (lookahead == 8784) ADVANCE(414);
      if (lookahead == 8788) ADVANCE(378);
      if (lookahead == 8800) ADVANCE(383);
      if (lookahead == 8801) ADVANCE(368);
      if (lookahead == 8804) ADVANCE(394);
      if (lookahead == 8805) ADVANCE(397);
      if (lookahead == 8810) ADVANCE(418);
      if (lookahead == 8811) ADVANCE(416);
      if (lookahead == 8826) ADVANCE(422);
      if (lookahead == 8827) ADVANCE(424);
      if (lookahead == 8834) ADVANCE(444);
      if (lookahead == 8835) ADVANCE(446);
      if (lookahead == 8838) ADVANCE(448);
      if (lookahead == 8839) ADVANCE(450);
      if (lookahead == 8846) ADVANCE(521);
      if (lookahead == 8847) ADVANCE(436);
      if (lookahead == 8848) ADVANCE(438);
      if (lookahead == 8849) ADVANCE(440);
      if (lookahead == 8850) ADVANCE(442);
      if (lookahead == 8851) ADVANCE(517);
      if (lookahead == 8852) ADVANCE(519);
      if (lookahead == 8853) ADVANCE(472);
      if (lookahead == 8854) ADVANCE(475);
      if (lookahead == 8855) ADVANCE(494);
      if (lookahead == 8856) ADVANCE(491);
      if (lookahead == 8857) ADVANCE(488);
      if (lookahead == 8866) ADVANCE(402);
      if (lookahead == 8867) ADVANCE(406);
      if (lookahead == 8872) ADVANCE(404);
      if (lookahead == 8900) ADVANCE(359);
      if (lookahead == 8901) ADVANCE(528);
      if (lookahead == 8902) ADVANCE(508);
      if (lookahead == 8745) ADVANCE(457);
      if (lookahead == 8746) ADVANCE(460);
      if (lookahead == 8764) ADVANCE(430);
      if (lookahead == 8768) ADVANCE(524);
      if (lookahead == 8771) ADVANCE(432);
      if (lookahead == 8773) ADVANCE(410);
      if (lookahead == 8776) ADVANCE(397);
      if (lookahead == 8781) ADVANCE(408);
      if (lookahead == 8784) ADVANCE(412);
      if (lookahead == 8788) ADVANCE(376);
      if (lookahead == 8800) ADVANCE(381);
      if (lookahead == 8801) ADVANCE(366);
      if (lookahead == 8804) ADVANCE(392);
      if (lookahead == 8805) ADVANCE(395);
      if (lookahead == 8810) ADVANCE(416);
      if (lookahead == 8811) ADVANCE(414);
      if (lookahead == 8826) ADVANCE(420);
      if (lookahead == 8827) ADVANCE(422);
      if (lookahead == 8834) ADVANCE(442);
      if (lookahead == 8835) ADVANCE(444);
      if (lookahead == 8838) ADVANCE(446);
      if (lookahead == 8839) ADVANCE(448);
      if (lookahead == 8846) ADVANCE(519);
      if (lookahead == 8847) ADVANCE(434);
      if (lookahead == 8848) ADVANCE(436);
      if (lookahead == 8849) ADVANCE(438);
      if (lookahead == 8850) ADVANCE(440);
      if (lookahead == 8851) ADVANCE(515);
      if (lookahead == 8852) ADVANCE(517);
      if (lookahead == 8853) ADVANCE(470);
      if (lookahead == 8854) ADVANCE(473);
      if (lookahead == 8855) ADVANCE(492);
      if (lookahead == 8856) ADVANCE(489);
      if (lookahead == 8857) ADVANCE(486);
      if (lookahead == 8866) ADVANCE(400);
      if (lookahead == 8867) ADVANCE(404);
      if (lookahead == 8872) ADVANCE(402);
      if (lookahead == 8900) ADVANCE(357);
      if (lookahead == 8901) ADVANCE(526);
      if (lookahead == 8902) ADVANCE(506);
      if (lookahead == 9633) ADVANCE(288);
      if (lookahead == 9671) ADVANCE(360);
      if (lookahead == 9679) ADVANCE(502);
      if (lookahead == 9711) ADVANCE(500);
      if (lookahead == 9671) ADVANCE(358);
      if (lookahead == 9679) ADVANCE(500);
      if (lookahead == 9711) ADVANCE(498);
      if (lookahead == 10216) ADVANCE(277);
      if (lookahead == 10233) ADVANCE(362);
      if (lookahead == 10234) ADVANCE(370);
      if (lookahead == 10565) ADVANCE(366);
      if (lookahead == 10868) ADVANCE(380);
      if (lookahead == 10927) ADVANCE(426);
      if (lookahead == 10928) ADVANCE(428);
      if (lookahead == 10980) ADVANCE(408);
      if (lookahead == 10233) ADVANCE(360);
      if (lookahead == 10234) ADVANCE(368);
      if (lookahead == 10565) ADVANCE(364);
      if (lookahead == 10868) ADVANCE(378);
      if (lookahead == 10927) ADVANCE(424);
      if (lookahead == 10928) ADVANCE(426);
      if (lookahead == 10980) ADVANCE(406);
      if (lookahead == 12296) ADVANCE(276);
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(313);
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(314);
      if (('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(303);
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(304);
      END_STATE();
    case 196:
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(196)
      if (lookahead == '\r') SKIP(196)
      if (lookahead == '!') ADVANCE(4);
      if (lookahead == '"') ADVANCE(328);
      if (lookahead == '#') ADVANCE(382);
      if (lookahead == '$') ADVANCE(512);
      if (lookahead == '%') ADVANCE(476);
      if (lookahead == '&') ADVANCE(484);
      if (lookahead == '\'') ADVANCE(535);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == '*') ADVANCE(495);
      if (lookahead == '+') ADVANCE(468);
      if (lookahead == '-') ADVANCE(354);
      if (lookahead == '"') ADVANCE(329);
      if (lookahead == '#') ADVANCE(380);
      if (lookahead == '$') ADVANCE(510);
      if (lookahead == '%') ADVANCE(474);
      if (lookahead == '&') ADVANCE(482);
      if (lookahead == '\'') ADVANCE(533);
      if (lookahead == '(') ADVANCE(307);
      if (lookahead == '*') ADVANCE(493);
      if (lookahead == '+') ADVANCE(466);
      if (lookahead == '-') ADVANCE(352);
      if (lookahead == '.') ADVANCE(25);
      if (lookahead == '/') ADVANCE(497);
      if (lookahead == '/') ADVANCE(495);
      if (lookahead == ':') ADVANCE(28);
      if (lookahead == '<') ADVANCE(385);
      if (lookahead == '=') ADVANCE(344);
      if (lookahead == '>') ADVANCE(390);
      if (lookahead == '<') ADVANCE(383);
      if (lookahead == '=') ADVANCE(342);
      if (lookahead == '>') ADVANCE(388);
      if (lookahead == '?') ADVANCE(39);
      if (lookahead == '@') ADVANCE(293);
      if (lookahead == '[') ADVANCE(309);
      if (lookahead == '\\') ADVANCE(454);
      if (lookahead == '^') ADVANCE(529);
      if (lookahead == '[') ADVANCE(310);
      if (lookahead == '\\') ADVANCE(452);
      if (lookahead == '^') ADVANCE(527);
      if (lookahead == '_') ADVANCE(223);
      if (lookahead == '{') ADVANCE(336);
      if (lookahead == '|') ADVANCE(479);
      if (lookahead == '~') ADVANCE(349);
      if (lookahead == 172) ADVANCE(350);
      if (lookahead == 215) ADVANCE(524);
      if (lookahead == 247) ADVANCE(504);
      if (lookahead == 8214) ADVANCE(481);
      if (lookahead == 8229) ADVANCE(464);
      if (lookahead == 8230) ADVANCE(466);
      if (lookahead == 8252) ADVANCE(510);
      if (lookahead == 8263) ADVANCE(515);
      if (lookahead == 8314) ADVANCE(532);
      if (lookahead == 8469) ADVANCE(333);
      if (lookahead == 8477) ADVANCE(335);
      if (lookahead == 8484) ADVANCE(334);
      if (lookahead == 8605) ADVANCE(374);
      if (lookahead == 8658) ADVANCE(363);
      if (lookahead == 8660) ADVANCE(371);
      if (lookahead == 8669) ADVANCE(373);
      if (lookahead == 8696) ADVANCE(365);
      if (lookahead == '{') ADVANCE(334);
      if (lookahead == '|') ADVANCE(477);
      if (lookahead == '~') ADVANCE(347);
      if (lookahead == 172) ADVANCE(348);
      if (lookahead == 215) ADVANCE(522);
      if (lookahead == 247) ADVANCE(502);
      if (lookahead == 8214) ADVANCE(479);
      if (lookahead == 8229) ADVANCE(462);
      if (lookahead == 8230) ADVANCE(464);
      if (lookahead == 8252) ADVANCE(508);
      if (lookahead == 8263) ADVANCE(513);
      if (lookahead == 8314) ADVANCE(530);
      if (lookahead == 8469 ||
          lookahead == 8477 ||
          lookahead == 8484) ADVANCE(303);
      if (lookahead == 8605) ADVANCE(372);
      if (lookahead == 8658) ADVANCE(361);
      if (lookahead == 8660) ADVANCE(369);
      if (lookahead == 8669) ADVANCE(371);
      if (lookahead == 8696) ADVANCE(363);
      if (lookahead == 8704) ADVANCE(263);
      if (lookahead == 8707) ADVANCE(266);
      if (lookahead == 8712) ADVANCE(257);
      if (lookahead == 8713) ADVANCE(420);
      if (lookahead == 8728) ADVANCE(506);
      if (lookahead == 8733) ADVANCE(430);
      if (lookahead == 8713) ADVANCE(418);
      if (lookahead == 8728) ADVANCE(504);
      if (lookahead == 8733) ADVANCE(428);
      if (lookahead == 8743) ADVANCE(300);
      if (lookahead == 8744) ADVANCE(302);
      if (lookahead == 8745) ADVANCE(459);
      if (lookahead == 8746) ADVANCE(462);
      if (lookahead == 8764) ADVANCE(432);
      if (lookahead == 8768) ADVANCE(526);
      if (lookahead == 8771) ADVANCE(434);
      if (lookahead == 8773) ADVANCE(412);
      if (lookahead == 8776) ADVANCE(399);
      if (lookahead == 8781) ADVANCE(410);
      if (lookahead == 8784) ADVANCE(414);
      if (lookahead == 8788) ADVANCE(378);
      if (lookahead == 8800) ADVANCE(383);
      if (lookahead == 8801) ADVANCE(368);
      if (lookahead == 8804) ADVANCE(394);
      if (lookahead == 8805) ADVANCE(397);
      if (lookahead == 8810) ADVANCE(418);
      if (lookahead == 8811) ADVANCE(416);
      if (lookahead == 8826) ADVANCE(422);
      if (lookahead == 8827) ADVANCE(424);
      if (lookahead == 8834) ADVANCE(444);
      if (lookahead == 8835) ADVANCE(446);
      if (lookahead == 8838) ADVANCE(448);
      if (lookahead == 8839) ADVANCE(450);
      if (lookahead == 8846) ADVANCE(521);
      if (lookahead == 8847) ADVANCE(436);
      if (lookahead == 8848) ADVANCE(438);
      if (lookahead == 8849) ADVANCE(440);
      if (lookahead == 8850) ADVANCE(442);
      if (lookahead == 8851) ADVANCE(517);
      if (lookahead == 8852) ADVANCE(519);
      if (lookahead == 8853) ADVANCE(472);
      if (lookahead == 8854) ADVANCE(475);
      if (lookahead == 8855) ADVANCE(494);
      if (lookahead == 8856) ADVANCE(491);
      if (lookahead == 8857) ADVANCE(488);
      if (lookahead == 8866) ADVANCE(402);
      if (lookahead == 8867) ADVANCE(406);
      if (lookahead == 8872) ADVANCE(404);
      if (lookahead == 8900) ADVANCE(359);
      if (lookahead == 8901) ADVANCE(528);
      if (lookahead == 8902) ADVANCE(508);
      if (lookahead == 8745) ADVANCE(457);
      if (lookahead == 8746) ADVANCE(460);
      if (lookahead == 8764) ADVANCE(430);
      if (lookahead == 8768) ADVANCE(524);
      if (lookahead == 8771) ADVANCE(432);
      if (lookahead == 8773) ADVANCE(410);
      if (lookahead == 8776) ADVANCE(397);
      if (lookahead == 8781) ADVANCE(408);
      if (lookahead == 8784) ADVANCE(412);
      if (lookahead == 8788) ADVANCE(376);
      if (lookahead == 8800) ADVANCE(381);
      if (lookahead == 8801) ADVANCE(366);
      if (lookahead == 8804) ADVANCE(392);
      if (lookahead == 8805) ADVANCE(395);
      if (lookahead == 8810) ADVANCE(416);
      if (lookahead == 8811) ADVANCE(414);
      if (lookahead == 8826) ADVANCE(420);
      if (lookahead == 8827) ADVANCE(422);
      if (lookahead == 8834) ADVANCE(442);
      if (lookahead == 8835) ADVANCE(444);
      if (lookahead == 8838) ADVANCE(446);
      if (lookahead == 8839) ADVANCE(448);
      if (lookahead == 8846) ADVANCE(519);
      if (lookahead == 8847) ADVANCE(434);
      if (lookahead == 8848) ADVANCE(436);
      if (lookahead == 8849) ADVANCE(438);
      if (lookahead == 8850) ADVANCE(440);
      if (lookahead == 8851) ADVANCE(515);
      if (lookahead == 8852) ADVANCE(517);
      if (lookahead == 8853) ADVANCE(470);
      if (lookahead == 8854) ADVANCE(473);
      if (lookahead == 8855) ADVANCE(492);
      if (lookahead == 8856) ADVANCE(489);
      if (lookahead == 8857) ADVANCE(486);
      if (lookahead == 8866) ADVANCE(400);
      if (lookahead == 8867) ADVANCE(404);
      if (lookahead == 8872) ADVANCE(402);
      if (lookahead == 8900) ADVANCE(357);
      if (lookahead == 8901) ADVANCE(526);
      if (lookahead == 8902) ADVANCE(506);
      if (lookahead == 9633) ADVANCE(288);
      if (lookahead == 9671) ADVANCE(360);
      if (lookahead == 9679) ADVANCE(502);
      if (lookahead == 9711) ADVANCE(500);
      if (lookahead == 9671) ADVANCE(358);
      if (lookahead == 9679) ADVANCE(500);
      if (lookahead == 9711) ADVANCE(498);
      if (lookahead == 10216) ADVANCE(277);
      if (lookahead == 10217) ADVANCE(282);
      if (lookahead == 10233) ADVANCE(362);
      if (lookahead == 10234) ADVANCE(370);
      if (lookahead == 10565) ADVANCE(366);
      if (lookahead == 10868) ADVANCE(380);
      if (lookahead == 10927) ADVANCE(426);
      if (lookahead == 10928) ADVANCE(428);
      if (lookahead == 10980) ADVANCE(408);
      if (lookahead == 10233) ADVANCE(360);
      if (lookahead == 10234) ADVANCE(368);
      if (lookahead == 10565) ADVANCE(364);
      if (lookahead == 10868) ADVANCE(378);
      if (lookahead == 10927) ADVANCE(424);
      if (lookahead == 10928) ADVANCE(426);
      if (lookahead == 10980) ADVANCE(406);
      if (lookahead == 12296) ADVANCE(276);
      if (lookahead == 12297) ADVANCE(280);
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(313);
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(314);
      if (('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(303);
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(304);
      END_STATE();
    case 197:
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(197)
      if (lookahead == '\r') SKIP(197)
      if (lookahead == '!') ADVANCE(4);
      if (lookahead == '#') ADVANCE(382);
      if (lookahead == '$') ADVANCE(512);
      if (lookahead == '%') ADVANCE(476);
      if (lookahead == '&') ADVANCE(484);
      if (lookahead == '\'') ADVANCE(535);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == '*') ADVANCE(495);
      if (lookahead == '+') ADVANCE(468);
      if (lookahead == '-') ADVANCE(354);
      if (lookahead == '#') ADVANCE(380);
      if (lookahead == '$') ADVANCE(510);
      if (lookahead == '%') ADVANCE(474);
      if (lookahead == '&') ADVANCE(482);
      if (lookahead == '\'') ADVANCE(533);
      if (lookahead == '(') ADVANCE(307);
      if (lookahead == '*') ADVANCE(493);
      if (lookahead == '+') ADVANCE(466);
      if (lookahead == '-') ADVANCE(352);
      if (lookahead == '.') ADVANCE(24);
      if (lookahead == '/') ADVANCE(497);
      if (lookahead == '/') ADVANCE(495);
      if (lookahead == ':') ADVANCE(28);
      if (lookahead == '<') ADVANCE(385);
      if (lookahead == '=') ADVANCE(344);
      if (lookahead == '>') ADVANCE(388);
      if (lookahead == '<') ADVANCE(383);
      if (lookahead == '=') ADVANCE(342);
      if (lookahead == '>') ADVANCE(386);
      if (lookahead == '?') ADVANCE(39);
      if (lookahead == '@') ADVANCE(40);
      if (lookahead == '[') ADVANCE(309);
      if (lookahead == '\\') ADVANCE(455);
      if (lookahead == '^') ADVANCE(529);
      if (lookahead == '{') ADVANCE(336);
      if (lookahead == '|') ADVANCE(479);
      if (lookahead == '~') ADVANCE(349);
      if (lookahead == 172) ADVANCE(350);
      if (lookahead == 215) ADVANCE(524);
      if (lookahead == 247) ADVANCE(504);
      if (lookahead == 8214) ADVANCE(481);
      if (lookahead == 8229) ADVANCE(464);
      if (lookahead == 8230) ADVANCE(466);
      if (lookahead == 8252) ADVANCE(510);
      if (lookahead == 8263) ADVANCE(515);
      if (lookahead == 8314) ADVANCE(532);
      if (lookahead == 8605) ADVANCE(374);
      if (lookahead == 8658) ADVANCE(363);
      if (lookahead == 8660) ADVANCE(371);
      if (lookahead == 8669) ADVANCE(373);
      if (lookahead == 8696) ADVANCE(365);
      if (lookahead == '[') ADVANCE(310);
      if (lookahead == '\\') ADVANCE(453);
      if (lookahead == '^') ADVANCE(527);
      if (lookahead == '{') ADVANCE(334);
      if (lookahead == '|') ADVANCE(477);
      if (lookahead == '~') ADVANCE(347);
      if (lookahead == 172) ADVANCE(348);
      if (lookahead == 215) ADVANCE(522);
      if (lookahead == 247) ADVANCE(502);
      if (lookahead == 8214) ADVANCE(479);
      if (lookahead == 8229) ADVANCE(462);
      if (lookahead == 8230) ADVANCE(464);
      if (lookahead == 8252) ADVANCE(508);
      if (lookahead == 8263) ADVANCE(513);
      if (lookahead == 8314) ADVANCE(530);
      if (lookahead == 8469 ||
          lookahead == 8477 ||
          lookahead == 8484) ADVANCE(303);
      if (lookahead == 8605) ADVANCE(372);
      if (lookahead == 8658) ADVANCE(361);
      if (lookahead == 8660) ADVANCE(369);
      if (lookahead == 8669) ADVANCE(371);
      if (lookahead == 8696) ADVANCE(363);
      if (lookahead == 8712) ADVANCE(257);
      if (lookahead == 8713) ADVANCE(420);
      if (lookahead == 8728) ADVANCE(506);
      if (lookahead == 8733) ADVANCE(430);
      if (lookahead == 8713) ADVANCE(418);
      if (lookahead == 8728) ADVANCE(504);
      if (lookahead == 8733) ADVANCE(428);
      if (lookahead == 8743) ADVANCE(300);
      if (lookahead == 8744) ADVANCE(302);
      if (lookahead == 8745) ADVANCE(459);
      if (lookahead == 8746) ADVANCE(462);
      if (lookahead == 8764) ADVANCE(432);
      if (lookahead == 8768) ADVANCE(526);
      if (lookahead == 8771) ADVANCE(434);
      if (lookahead == 8773) ADVANCE(412);
      if (lookahead == 8776) ADVANCE(399);
      if (lookahead == 8781) ADVANCE(410);
      if (lookahead == 8784) ADVANCE(414);
      if (lookahead == 8788) ADVANCE(378);
      if (lookahead == 8800) ADVANCE(383);
      if (lookahead == 8801) ADVANCE(368);
      if (lookahead == 8804) ADVANCE(394);
      if (lookahead == 8805) ADVANCE(397);
      if (lookahead == 8810) ADVANCE(418);
      if (lookahead == 8811) ADVANCE(416);
      if (lookahead == 8826) ADVANCE(422);
      if (lookahead == 8827) ADVANCE(424);
      if (lookahead == 8834) ADVANCE(444);
      if (lookahead == 8835) ADVANCE(446);
      if (lookahead == 8838) ADVANCE(448);
      if (lookahead == 8839) ADVANCE(450);
      if (lookahead == 8846) ADVANCE(521);
      if (lookahead == 8847) ADVANCE(436);
      if (lookahead == 8848) ADVANCE(438);
      if (lookahead == 8849) ADVANCE(440);
      if (lookahead == 8850) ADVANCE(442);
      if (lookahead == 8851) ADVANCE(517);
      if (lookahead == 8852) ADVANCE(519);
      if (lookahead == 8853) ADVANCE(472);
      if (lookahead == 8854) ADVANCE(475);
      if (lookahead == 8855) ADVANCE(494);
      if (lookahead == 8856) ADVANCE(491);
      if (lookahead == 8857) ADVANCE(488);
      if (lookahead == 8866) ADVANCE(402);
      if (lookahead == 8867) ADVANCE(406);
      if (lookahead == 8872) ADVANCE(404);
      if (lookahead == 8900) ADVANCE(359);
      if (lookahead == 8901) ADVANCE(528);
      if (lookahead == 8902) ADVANCE(508);
      if (lookahead == 8745) ADVANCE(457);
      if (lookahead == 8746) ADVANCE(460);
      if (lookahead == 8764) ADVANCE(430);
      if (lookahead == 8768) ADVANCE(524);
      if (lookahead == 8771) ADVANCE(432);
      if (lookahead == 8773) ADVANCE(410);
      if (lookahead == 8776) ADVANCE(397);
      if (lookahead == 8781) ADVANCE(408);
      if (lookahead == 8784) ADVANCE(412);
      if (lookahead == 8788) ADVANCE(376);
      if (lookahead == 8800) ADVANCE(381);
      if (lookahead == 8801) ADVANCE(366);
      if (lookahead == 8804) ADVANCE(392);
      if (lookahead == 8805) ADVANCE(395);
      if (lookahead == 8810) ADVANCE(416);
      if (lookahead == 8811) ADVANCE(414);
      if (lookahead == 8826) ADVANCE(420);
      if (lookahead == 8827) ADVANCE(422);
      if (lookahead == 8834) ADVANCE(442);
      if (lookahead == 8835) ADVANCE(444);
      if (lookahead == 8838) ADVANCE(446);
      if (lookahead == 8839) ADVANCE(448);
      if (lookahead == 8846) ADVANCE(519);
      if (lookahead == 8847) ADVANCE(434);
      if (lookahead == 8848) ADVANCE(436);
      if (lookahead == 8849) ADVANCE(438);
      if (lookahead == 8850) ADVANCE(440);
      if (lookahead == 8851) ADVANCE(515);
      if (lookahead == 8852) ADVANCE(517);
      if (lookahead == 8853) ADVANCE(470);
      if (lookahead == 8854) ADVANCE(473);
      if (lookahead == 8855) ADVANCE(492);
      if (lookahead == 8856) ADVANCE(489);
      if (lookahead == 8857) ADVANCE(486);
      if (lookahead == 8866) ADVANCE(400);
      if (lookahead == 8867) ADVANCE(404);
      if (lookahead == 8872) ADVANCE(402);
      if (lookahead == 8900) ADVANCE(357);
      if (lookahead == 8901) ADVANCE(526);
      if (lookahead == 8902) ADVANCE(506);
      if (lookahead == 9633) ADVANCE(288);
      if (lookahead == 9671) ADVANCE(360);
      if (lookahead == 9679) ADVANCE(502);
      if (lookahead == 9711) ADVANCE(500);
      if (lookahead == 9671) ADVANCE(358);
      if (lookahead == 9679) ADVANCE(500);
      if (lookahead == 9711) ADVANCE(498);
      if (lookahead == 10216) ADVANCE(277);
      if (lookahead == 10233) ADVANCE(362);
      if (lookahead == 10234) ADVANCE(370);
      if (lookahead == 10565) ADVANCE(366);
      if (lookahead == 10868) ADVANCE(380);
      if (lookahead == 10927) ADVANCE(426);
      if (lookahead == 10928) ADVANCE(428);
      if (lookahead == 10980) ADVANCE(408);
      if (lookahead == 10233) ADVANCE(360);
      if (lookahead == 10234) ADVANCE(368);
      if (lookahead == 10565) ADVANCE(364);
      if (lookahead == 10868) ADVANCE(378);
      if (lookahead == 10927) ADVANCE(424);
      if (lookahead == 10928) ADVANCE(426);
      if (lookahead == 10980) ADVANCE(406);
      if (lookahead == 12296) ADVANCE(276);
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(223);
      if (('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(303);
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(304);
      END_STATE();
    case 198:
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(198)
      if (lookahead == '\r') SKIP(198)
      if (lookahead == '!') ADVANCE(4);
      if (lookahead == '#') ADVANCE(382);
      if (lookahead == '$') ADVANCE(512);
      if (lookahead == '%') ADVANCE(476);
      if (lookahead == '&') ADVANCE(484);
      if (lookahead == '\'') ADVANCE(535);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == '*') ADVANCE(495);
      if (lookahead == '+') ADVANCE(468);
      if (lookahead == '-') ADVANCE(354);
      if (lookahead == '#') ADVANCE(380);
      if (lookahead == '$') ADVANCE(510);
      if (lookahead == '%') ADVANCE(474);
      if (lookahead == '&') ADVANCE(482);
      if (lookahead == '\'') ADVANCE(533);
      if (lookahead == '(') ADVANCE(307);
      if (lookahead == '*') ADVANCE(493);
      if (lookahead == '+') ADVANCE(466);
      if (lookahead == '-') ADVANCE(352);
      if (lookahead == '.') ADVANCE(24);
      if (lookahead == '/') ADVANCE(497);
      if (lookahead == '/') ADVANCE(495);
      if (lookahead == ':') ADVANCE(291);
      if (lookahead == '<') ADVANCE(385);
      if (lookahead == '=') ADVANCE(344);
      if (lookahead == '>') ADVANCE(390);
      if (lookahead == '<') ADVANCE(383);
      if (lookahead == '=') ADVANCE(342);
      if (lookahead == '>') ADVANCE(388);
      if (lookahead == '?') ADVANCE(39);
      if (lookahead == '@') ADVANCE(293);
      if (lookahead == '[') ADVANCE(42);
      if (lookahead == '\\') ADVANCE(455);
      if (lookahead == '^') ADVANCE(529);
      if (lookahead == '\\') ADVANCE(453);
      if (lookahead == '^') ADVANCE(527);
      if (lookahead == '_') ADVANCE(223);
      if (lookahead == '|') ADVANCE(479);
      if (lookahead == '~') ADVANCE(349);
      if (lookahead == 172) ADVANCE(350);
      if (lookahead == 215) ADVANCE(524);
      if (lookahead == 247) ADVANCE(504);
      if (lookahead == 8214) ADVANCE(481);
      if (lookahead == 8229) ADVANCE(464);
      if (lookahead == 8230) ADVANCE(466);
      if (lookahead == 8252) ADVANCE(510);
      if (lookahead == 8263) ADVANCE(515);
      if (lookahead == 8314) ADVANCE(532);
      if (lookahead == 8605) ADVANCE(374);
      if (lookahead == 8658) ADVANCE(363);
      if (lookahead == 8660) ADVANCE(371);
      if (lookahead == 8669) ADVANCE(373);
      if (lookahead == 8696) ADVANCE(365);
      if (lookahead == '|') ADVANCE(477);
      if (lookahead == '~') ADVANCE(347);
      if (lookahead == 172) ADVANCE(348);
      if (lookahead == 215) ADVANCE(522);
      if (lookahead == 247) ADVANCE(502);
      if (lookahead == 8214) ADVANCE(479);
      if (lookahead == 8229) ADVANCE(462);
      if (lookahead == 8230) ADVANCE(464);
      if (lookahead == 8252) ADVANCE(508);
      if (lookahead == 8263) ADVANCE(513);
      if (lookahead == 8314) ADVANCE(530);
      if (lookahead == 8469 ||
          lookahead == 8477 ||
          lookahead == 8484) ADVANCE(303);
      if (lookahead == 8605) ADVANCE(372);
      if (lookahead == 8658) ADVANCE(361);
      if (lookahead == 8660) ADVANCE(369);
      if (lookahead == 8669) ADVANCE(371);
      if (lookahead == 8696) ADVANCE(363);
      if (lookahead == 8712) ADVANCE(257);
      if (lookahead == 8713) ADVANCE(420);
      if (lookahead == 8728) ADVANCE(506);
      if (lookahead == 8733) ADVANCE(430);
      if (lookahead == 8713) ADVANCE(418);
      if (lookahead == 8728) ADVANCE(504);
      if (lookahead == 8733) ADVANCE(428);
      if (lookahead == 8743) ADVANCE(300);
      if (lookahead == 8744) ADVANCE(302);
      if (lookahead == 8745) ADVANCE(459);
      if (lookahead == 8746) ADVANCE(462);
      if (lookahead == 8764) ADVANCE(432);
      if (lookahead == 8768) ADVANCE(526);
      if (lookahead == 8771) ADVANCE(434);
      if (lookahead == 8773) ADVANCE(412);
      if (lookahead == 8776) ADVANCE(399);
      if (lookahead == 8781) ADVANCE(410);
      if (lookahead == 8784) ADVANCE(414);
      if (lookahead == 8788) ADVANCE(378);
      if (lookahead == 8800) ADVANCE(383);
      if (lookahead == 8801) ADVANCE(368);
      if (lookahead == 8804) ADVANCE(394);
      if (lookahead == 8805) ADVANCE(397);
      if (lookahead == 8810) ADVANCE(418);
      if (lookahead == 8811) ADVANCE(416);
      if (lookahead == 8826) ADVANCE(422);
      if (lookahead == 8827) ADVANCE(424);
      if (lookahead == 8834) ADVANCE(444);
      if (lookahead == 8835) ADVANCE(446);
      if (lookahead == 8838) ADVANCE(448);
      if (lookahead == 8839) ADVANCE(450);
      if (lookahead == 8846) ADVANCE(521);
      if (lookahead == 8847) ADVANCE(436);
      if (lookahead == 8848) ADVANCE(438);
      if (lookahead == 8849) ADVANCE(440);
      if (lookahead == 8850) ADVANCE(442);
      if (lookahead == 8851) ADVANCE(517);
      if (lookahead == 8852) ADVANCE(519);
      if (lookahead == 8853) ADVANCE(472);
      if (lookahead == 8854) ADVANCE(475);
      if (lookahead == 8855) ADVANCE(494);
      if (lookahead == 8856) ADVANCE(491);
      if (lookahead == 8857) ADVANCE(488);
      if (lookahead == 8866) ADVANCE(402);
      if (lookahead == 8867) ADVANCE(406);
      if (lookahead == 8872) ADVANCE(404);
      if (lookahead == 8900) ADVANCE(359);
      if (lookahead == 8901) ADVANCE(528);
      if (lookahead == 8902) ADVANCE(508);
      if (lookahead == 8745) ADVANCE(457);
      if (lookahead == 8746) ADVANCE(460);
      if (lookahead == 8764) ADVANCE(430);
      if (lookahead == 8768) ADVANCE(524);
      if (lookahead == 8771) ADVANCE(432);
      if (lookahead == 8773) ADVANCE(410);
      if (lookahead == 8776) ADVANCE(397);
      if (lookahead == 8781) ADVANCE(408);
      if (lookahead == 8784) ADVANCE(412);
      if (lookahead == 8788) ADVANCE(376);
      if (lookahead == 8800) ADVANCE(381);
      if (lookahead == 8801) ADVANCE(366);
      if (lookahead == 8804) ADVANCE(392);
      if (lookahead == 8805) ADVANCE(395);
      if (lookahead == 8810) ADVANCE(416);
      if (lookahead == 8811) ADVANCE(414);
      if (lookahead == 8826) ADVANCE(420);
      if (lookahead == 8827) ADVANCE(422);
      if (lookahead == 8834) ADVANCE(442);
      if (lookahead == 8835) ADVANCE(444);
      if (lookahead == 8838) ADVANCE(446);
      if (lookahead == 8839) ADVANCE(448);
      if (lookahead == 8846) ADVANCE(519);
      if (lookahead == 8847) ADVANCE(434);
      if (lookahead == 8848) ADVANCE(436);
      if (lookahead == 8849) ADVANCE(438);
      if (lookahead == 8850) ADVANCE(440);
      if (lookahead == 8851) ADVANCE(515);
      if (lookahead == 8852) ADVANCE(517);
      if (lookahead == 8853) ADVANCE(470);
      if (lookahead == 8854) ADVANCE(473);
      if (lookahead == 8855) ADVANCE(492);
      if (lookahead == 8856) ADVANCE(489);
      if (lookahead == 8857) ADVANCE(486);
      if (lookahead == 8866) ADVANCE(400);
      if (lookahead == 8867) ADVANCE(404);
      if (lookahead == 8872) ADVANCE(402);
      if (lookahead == 8900) ADVANCE(357);
      if (lookahead == 8901) ADVANCE(526);
      if (lookahead == 8902) ADVANCE(506);
      if (lookahead == 9633) ADVANCE(288);
      if (lookahead == 9671) ADVANCE(360);
      if (lookahead == 9679) ADVANCE(502);
      if (lookahead == 9711) ADVANCE(500);
      if (lookahead == 9671) ADVANCE(358);
      if (lookahead == 9679) ADVANCE(500);
      if (lookahead == 9711) ADVANCE(498);
      if (lookahead == 10216) ADVANCE(277);
      if (lookahead == 10217) ADVANCE(282);
      if (lookahead == 10233) ADVANCE(362);
      if (lookahead == 10234) ADVANCE(370);
      if (lookahead == 10565) ADVANCE(366);
      if (lookahead == 10868) ADVANCE(380);
      if (lookahead == 10927) ADVANCE(426);
      if (lookahead == 10928) ADVANCE(428);
      if (lookahead == 10980) ADVANCE(408);
      if (lookahead == 10233) ADVANCE(360);
      if (lookahead == 10234) ADVANCE(368);
      if (lookahead == 10565) ADVANCE(364);
      if (lookahead == 10868) ADVANCE(378);
      if (lookahead == 10927) ADVANCE(424);
      if (lookahead == 10928) ADVANCE(426);
      if (lookahead == 10980) ADVANCE(406);
      if (lookahead == 12296) ADVANCE(276);
      if (lookahead == 12297) ADVANCE(280);
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(314);
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(315);
      if (('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(303);
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(304);
      END_STATE();
    case 199:
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(199)
      if (lookahead == '\r') SKIP(199)
      if (lookahead == '!') ADVANCE(312);
      if (lookahead == '#') ADVANCE(382);
      if (lookahead == '$') ADVANCE(512);
      if (lookahead == '%') ADVANCE(476);
      if (lookahead == '&') ADVANCE(484);
      if (lookahead == '\'') ADVANCE(535);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == '*') ADVANCE(495);
      if (lookahead == '+') ADVANCE(468);
      if (lookahead == ',') ADVANCE(304);
      if (lookahead == '-') ADVANCE(353);
      if (lookahead == '.') ADVANCE(339);
      if (lookahead == '/') ADVANCE(497);
      if (lookahead == '!') ADVANCE(313);
      if (lookahead == '#') ADVANCE(380);
      if (lookahead == '$') ADVANCE(510);
      if (lookahead == '%') ADVANCE(474);
      if (lookahead == '&') ADVANCE(482);
      if (lookahead == '\'') ADVANCE(533);
      if (lookahead == '(') ADVANCE(307);
      if (lookahead == '*') ADVANCE(493);
      if (lookahead == '+') ADVANCE(466);
      if (lookahead == ',') ADVANCE(305);
      if (lookahead == '-') ADVANCE(351);
      if (lookahead == '.') ADVANCE(337);
      if (lookahead == '/') ADVANCE(495);
      if (lookahead == ':') ADVANCE(26);
      if (lookahead == '<') ADVANCE(387);
      if (lookahead == '=') ADVANCE(343);
      if (lookahead == '>') ADVANCE(388);
      if (lookahead == '<') ADVANCE(385);
      if (lookahead == '=') ADVANCE(341);
      if (lookahead == '>') ADVANCE(386);
      if (lookahead == '?') ADVANCE(39);
      if (lookahead == '@') ADVANCE(40);
      if (lookahead == '[') ADVANCE(309);
      if (lookahead == '\\') ADVANCE(455);
      if (lookahead == '^') ADVANCE(529);
      if (lookahead == '|') ADVANCE(479);
      if (lookahead == '~') ADVANCE(349);
      if (lookahead == 172) ADVANCE(350);
      if (lookahead == 215) ADVANCE(524);
      if (lookahead == 247) ADVANCE(504);
      if (lookahead == 8214) ADVANCE(481);
      if (lookahead == 8229) ADVANCE(464);
      if (lookahead == 8230) ADVANCE(466);
      if (lookahead == 8252) ADVANCE(510);
      if (lookahead == 8263) ADVANCE(515);
      if (lookahead == 8314) ADVANCE(532);
      if (lookahead == 8605) ADVANCE(374);
      if (lookahead == 8658) ADVANCE(363);
      if (lookahead == 8660) ADVANCE(371);
      if (lookahead == 8669) ADVANCE(373);
      if (lookahead == 8696) ADVANCE(365);
      if (lookahead == '[') ADVANCE(310);
      if (lookahead == '\\') ADVANCE(453);
      if (lookahead == '^') ADVANCE(527);
      if (lookahead == '|') ADVANCE(477);
      if (lookahead == '~') ADVANCE(347);
      if (lookahead == 172) ADVANCE(348);
      if (lookahead == 215) ADVANCE(522);
      if (lookahead == 247) ADVANCE(502);
      if (lookahead == 8214) ADVANCE(479);
      if (lookahead == 8229) ADVANCE(462);
      if (lookahead == 8230) ADVANCE(464);
      if (lookahead == 8252) ADVANCE(508);
      if (lookahead == 8263) ADVANCE(513);
      if (lookahead == 8314) ADVANCE(530);
      if (lookahead == 8469 ||
          lookahead == 8477 ||
          lookahead == 8484) ADVANCE(303);
      if (lookahead == 8605) ADVANCE(372);
      if (lookahead == 8658) ADVANCE(361);
      if (lookahead == 8660) ADVANCE(369);
      if (lookahead == 8669) ADVANCE(371);
      if (lookahead == 8696) ADVANCE(363);
      if (lookahead == 8712) ADVANCE(257);
      if (lookahead == 8713) ADVANCE(420);
      if (lookahead == 8728) ADVANCE(506);
      if (lookahead == 8733) ADVANCE(430);
      if (lookahead == 8713) ADVANCE(418);
      if (lookahead == 8728) ADVANCE(504);
      if (lookahead == 8733) ADVANCE(428);
      if (lookahead == 8743) ADVANCE(300);
      if (lookahead == 8744) ADVANCE(302);
      if (lookahead == 8745) ADVANCE(459);
      if (lookahead == 8746) ADVANCE(462);
      if (lookahead == 8745) ADVANCE(457);
      if (lookahead == 8746) ADVANCE(460);
      if (lookahead == 8759) ADVANCE(296);
      if (lookahead == 8764) ADVANCE(432);
      if (lookahead == 8768) ADVANCE(526);
      if (lookahead == 8771) ADVANCE(434);
      if (lookahead == 8773) ADVANCE(412);
      if (lookahead == 8776) ADVANCE(399);
      if (lookahead == 8781) ADVANCE(410);
      if (lookahead == 8784) ADVANCE(414);
      if (lookahead == 8788) ADVANCE(378);
      if (lookahead == 8800) ADVANCE(383);
      if (lookahead == 8801) ADVANCE(368);
      if (lookahead == 8804) ADVANCE(394);
      if (lookahead == 8805) ADVANCE(397);
      if (lookahead == 8810) ADVANCE(418);
      if (lookahead == 8811) ADVANCE(416);
      if (lookahead == 8826) ADVANCE(422);
      if (lookahead == 8827) ADVANCE(424);
      if (lookahead == 8834) ADVANCE(444);
      if (lookahead == 8835) ADVANCE(446);
      if (lookahead == 8838) ADVANCE(448);
      if (lookahead == 8839) ADVANCE(450);
      if (lookahead == 8846) ADVANCE(521);
      if (lookahead == 8847) ADVANCE(436);
      if (lookahead == 8848) ADVANCE(438);
      if (lookahead == 8849) ADVANCE(440);
      if (lookahead == 8850) ADVANCE(442);
      if (lookahead == 8851) ADVANCE(517);
      if (lookahead == 8852) ADVANCE(519);
      if (lookahead == 8853) ADVANCE(472);
      if (lookahead == 8854) ADVANCE(475);
      if (lookahead == 8855) ADVANCE(494);
      if (lookahead == 8856) ADVANCE(491);
      if (lookahead == 8857) ADVANCE(488);
      if (lookahead == 8866) ADVANCE(402);
      if (lookahead == 8867) ADVANCE(406);
      if (lookahead == 8872) ADVANCE(404);
      if (lookahead == 8900) ADVANCE(359);
      if (lookahead == 8901) ADVANCE(528);
      if (lookahead == 8902) ADVANCE(508);
      if (lookahead == 8764) ADVANCE(430);
      if (lookahead == 8768) ADVANCE(524);
      if (lookahead == 8771) ADVANCE(432);
      if (lookahead == 8773) ADVANCE(410);
      if (lookahead == 8776) ADVANCE(397);
      if (lookahead == 8781) ADVANCE(408);
      if (lookahead == 8784) ADVANCE(412);
      if (lookahead == 8788) ADVANCE(376);
      if (lookahead == 8800) ADVANCE(381);
      if (lookahead == 8801) ADVANCE(366);
      if (lookahead == 8804) ADVANCE(392);
      if (lookahead == 8805) ADVANCE(395);
      if (lookahead == 8810) ADVANCE(416);
      if (lookahead == 8811) ADVANCE(414);
      if (lookahead == 8826) ADVANCE(420);
      if (lookahead == 8827) ADVANCE(422);
      if (lookahead == 8834) ADVANCE(442);
      if (lookahead == 8835) ADVANCE(444);
      if (lookahead == 8838) ADVANCE(446);
      if (lookahead == 8839) ADVANCE(448);
      if (lookahead == 8846) ADVANCE(519);
      if (lookahead == 8847) ADVANCE(434);
      if (lookahead == 8848) ADVANCE(436);
      if (lookahead == 8849) ADVANCE(438);
      if (lookahead == 8850) ADVANCE(440);
      if (lookahead == 8851) ADVANCE(515);
      if (lookahead == 8852) ADVANCE(517);
      if (lookahead == 8853) ADVANCE(470);
      if (lookahead == 8854) ADVANCE(473);
      if (lookahead == 8855) ADVANCE(492);
      if (lookahead == 8856) ADVANCE(489);
      if (lookahead == 8857) ADVANCE(486);
      if (lookahead == 8866) ADVANCE(400);
      if (lookahead == 8867) ADVANCE(404);
      if (lookahead == 8872) ADVANCE(402);
      if (lookahead == 8900) ADVANCE(357);
      if (lookahead == 8901) ADVANCE(526);
      if (lookahead == 8902) ADVANCE(506);
      if (lookahead == 9633) ADVANCE(288);
      if (lookahead == 9671) ADVANCE(360);
      if (lookahead == 9679) ADVANCE(502);
      if (lookahead == 9711) ADVANCE(500);
      if (lookahead == 10233) ADVANCE(362);
      if (lookahead == 10234) ADVANCE(370);
      if (lookahead == 10565) ADVANCE(366);
      if (lookahead == 10868) ADVANCE(380);
      if (lookahead == 10927) ADVANCE(426);
      if (lookahead == 10928) ADVANCE(428);
      if (lookahead == 10980) ADVANCE(408);
      if (lookahead == 9671) ADVANCE(358);
      if (lookahead == 9679) ADVANCE(500);
      if (lookahead == 9711) ADVANCE(498);
      if (lookahead == 10233) ADVANCE(360);
      if (lookahead == 10234) ADVANCE(368);
      if (lookahead == 10565) ADVANCE(364);
      if (lookahead == 10868) ADVANCE(378);
      if (lookahead == 10927) ADVANCE(424);
      if (lookahead == 10928) ADVANCE(426);
      if (lookahead == 10980) ADVANCE(406);
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(223);
      if (('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(303);
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(304);
      END_STATE();
    case 200:
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(200)
      if (lookahead == '\r') SKIP(200)
      if (lookahead == '!') ADVANCE(312);
      if (lookahead == '#') ADVANCE(382);
      if (lookahead == '$') ADVANCE(512);
      if (lookahead == '%') ADVANCE(476);
      if (lookahead == '&') ADVANCE(484);
      if (lookahead == '\'') ADVANCE(535);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == '*') ADVANCE(495);
      if (lookahead == '+') ADVANCE(468);
      if (lookahead == ',') ADVANCE(304);
      if (lookahead == '-') ADVANCE(354);
      if (lookahead == '.') ADVANCE(339);
      if (lookahead == '/') ADVANCE(497);
      if (lookahead == '!') ADVANCE(313);
      if (lookahead == '#') ADVANCE(380);
      if (lookahead == '$') ADVANCE(510);
      if (lookahead == '%') ADVANCE(474);
      if (lookahead == '&') ADVANCE(482);
      if (lookahead == '\'') ADVANCE(533);
      if (lookahead == '(') ADVANCE(307);
      if (lookahead == '*') ADVANCE(493);
      if (lookahead == '+') ADVANCE(466);
      if (lookahead == ',') ADVANCE(305);
      if (lookahead == '-') ADVANCE(352);
      if (lookahead == '.') ADVANCE(337);
      if (lookahead == '/') ADVANCE(495);
      if (lookahead == ':') ADVANCE(26);
      if (lookahead == '<') ADVANCE(387);
      if (lookahead == '=') ADVANCE(344);
      if (lookahead == '>') ADVANCE(388);
      if (lookahead == '<') ADVANCE(385);
      if (lookahead == '=') ADVANCE(342);
      if (lookahead == '>') ADVANCE(386);
      if (lookahead == '?') ADVANCE(39);
      if (lookahead == '@') ADVANCE(40);
      if (lookahead == '[') ADVANCE(309);
      if (lookahead == '\\') ADVANCE(455);
      if (lookahead == '^') ADVANCE(529);
      if (lookahead == '|') ADVANCE(479);
      if (lookahead == '}') ADVANCE(337);
      if (lookahead == '~') ADVANCE(349);
      if (lookahead == 172) ADVANCE(350);
      if (lookahead == 215) ADVANCE(524);
      if (lookahead == 247) ADVANCE(504);
      if (lookahead == 8214) ADVANCE(481);
      if (lookahead == 8229) ADVANCE(464);
      if (lookahead == 8230) ADVANCE(466);
      if (lookahead == 8252) ADVANCE(510);
      if (lookahead == 8263) ADVANCE(515);
      if (lookahead == 8314) ADVANCE(532);
      if (lookahead == 8605) ADVANCE(374);
      if (lookahead == 8658) ADVANCE(363);
      if (lookahead == 8660) ADVANCE(371);
      if (lookahead == 8669) ADVANCE(373);
      if (lookahead == 8696) ADVANCE(365);
      if (lookahead == '[') ADVANCE(310);
      if (lookahead == '\\') ADVANCE(453);
      if (lookahead == '^') ADVANCE(527);
      if (lookahead == '|') ADVANCE(477);
      if (lookahead == '}') ADVANCE(335);
      if (lookahead == '~') ADVANCE(347);
      if (lookahead == 172) ADVANCE(348);
      if (lookahead == 215) ADVANCE(522);
      if (lookahead == 247) ADVANCE(502);
      if (lookahead == 8214) ADVANCE(479);
      if (lookahead == 8229) ADVANCE(462);
      if (lookahead == 8230) ADVANCE(464);
      if (lookahead == 8252) ADVANCE(508);
      if (lookahead == 8263) ADVANCE(513);
      if (lookahead == 8314) ADVANCE(530);
      if (lookahead == 8469 ||
          lookahead == 8477 ||
          lookahead == 8484) ADVANCE(303);
      if (lookahead == 8605) ADVANCE(372);
      if (lookahead == 8658) ADVANCE(361);
      if (lookahead == 8660) ADVANCE(369);
      if (lookahead == 8669) ADVANCE(371);
      if (lookahead == 8696) ADVANCE(363);
      if (lookahead == 8712) ADVANCE(257);
      if (lookahead == 8713) ADVANCE(420);
      if (lookahead == 8728) ADVANCE(506);
      if (lookahead == 8733) ADVANCE(430);
      if (lookahead == 8713) ADVANCE(418);
      if (lookahead == 8728) ADVANCE(504);
      if (lookahead == 8733) ADVANCE(428);
      if (lookahead == 8743) ADVANCE(300);
      if (lookahead == 8744) ADVANCE(302);
      if (lookahead == 8745) ADVANCE(459);
      if (lookahead == 8746) ADVANCE(462);
      if (lookahead == 8745) ADVANCE(457);
      if (lookahead == 8746) ADVANCE(460);
      if (lookahead == 8759) ADVANCE(296);
      if (lookahead == 8764) ADVANCE(432);
      if (lookahead == 8768) ADVANCE(526);
      if (lookahead == 8771) ADVANCE(434);
      if (lookahead == 8773) ADVANCE(412);
      if (lookahead == 8776) ADVANCE(399);
      if (lookahead == 8781) ADVANCE(410);
      if (lookahead == 8784) ADVANCE(414);
      if (lookahead == 8788) ADVANCE(378);
      if (lookahead == 8800) ADVANCE(383);
      if (lookahead == 8801) ADVANCE(368);
      if (lookahead == 8804) ADVANCE(394);
      if (lookahead == 8805) ADVANCE(397);
      if (lookahead == 8810) ADVANCE(418);
      if (lookahead == 8811) ADVANCE(416);
      if (lookahead == 8826) ADVANCE(422);
      if (lookahead == 8827) ADVANCE(424);
      if (lookahead == 8834) ADVANCE(444);
      if (lookahead == 8835) ADVANCE(446);
      if (lookahead == 8838) ADVANCE(448);
      if (lookahead == 8839) ADVANCE(450);
      if (lookahead == 8846) ADVANCE(521);
      if (lookahead == 8847) ADVANCE(436);
      if (lookahead == 8848) ADVANCE(438);
      if (lookahead == 8849) ADVANCE(440);
      if (lookahead == 8850) ADVANCE(442);
      if (lookahead == 8851) ADVANCE(517);
      if (lookahead == 8852) ADVANCE(519);
      if (lookahead == 8853) ADVANCE(472);
      if (lookahead == 8854) ADVANCE(475);
      if (lookahead == 8855) ADVANCE(494);
      if (lookahead == 8856) ADVANCE(491);
      if (lookahead == 8857) ADVANCE(488);
      if (lookahead == 8866) ADVANCE(402);
      if (lookahead == 8867) ADVANCE(406);
      if (lookahead == 8872) ADVANCE(404);
      if (lookahead == 8900) ADVANCE(359);
      if (lookahead == 8901) ADVANCE(528);
      if (lookahead == 8902) ADVANCE(508);
      if (lookahead == 8764) ADVANCE(430);
      if (lookahead == 8768) ADVANCE(524);
      if (lookahead == 8771) ADVANCE(432);
      if (lookahead == 8773) ADVANCE(410);
      if (lookahead == 8776) ADVANCE(397);
      if (lookahead == 8781) ADVANCE(408);
      if (lookahead == 8784) ADVANCE(412);
      if (lookahead == 8788) ADVANCE(376);
      if (lookahead == 8800) ADVANCE(381);
      if (lookahead == 8801) ADVANCE(366);
      if (lookahead == 8804) ADVANCE(392);
      if (lookahead == 8805) ADVANCE(395);
      if (lookahead == 8810) ADVANCE(416);
      if (lookahead == 8811) ADVANCE(414);
      if (lookahead == 8826) ADVANCE(420);
      if (lookahead == 8827) ADVANCE(422);
      if (lookahead == 8834) ADVANCE(442);
      if (lookahead == 8835) ADVANCE(444);
      if (lookahead == 8838) ADVANCE(446);
      if (lookahead == 8839) ADVANCE(448);
      if (lookahead == 8846) ADVANCE(519);
      if (lookahead == 8847) ADVANCE(434);
      if (lookahead == 8848) ADVANCE(436);
      if (lookahead == 8849) ADVANCE(438);
      if (lookahead == 8850) ADVANCE(440);
      if (lookahead == 8851) ADVANCE(515);
      if (lookahead == 8852) ADVANCE(517);
      if (lookahead == 8853) ADVANCE(470);
      if (lookahead == 8854) ADVANCE(473);
      if (lookahead == 8855) ADVANCE(492);
      if (lookahead == 8856) ADVANCE(489);
      if (lookahead == 8857) ADVANCE(486);
      if (lookahead == 8866) ADVANCE(400);
      if (lookahead == 8867) ADVANCE(404);
      if (lookahead == 8872) ADVANCE(402);
      if (lookahead == 8900) ADVANCE(357);
      if (lookahead == 8901) ADVANCE(526);
      if (lookahead == 8902) ADVANCE(506);
      if (lookahead == 9633) ADVANCE(288);
      if (lookahead == 9671) ADVANCE(360);
      if (lookahead == 9679) ADVANCE(502);
      if (lookahead == 9711) ADVANCE(500);
      if (lookahead == 10233) ADVANCE(362);
      if (lookahead == 10234) ADVANCE(370);
      if (lookahead == 10565) ADVANCE(366);
      if (lookahead == 10868) ADVANCE(380);
      if (lookahead == 10927) ADVANCE(426);
      if (lookahead == 10928) ADVANCE(428);
      if (lookahead == 10980) ADVANCE(408);
      if (lookahead == 9671) ADVANCE(358);
      if (lookahead == 9679) ADVANCE(500);
      if (lookahead == 9711) ADVANCE(498);
      if (lookahead == 10233) ADVANCE(360);
      if (lookahead == 10234) ADVANCE(368);
      if (lookahead == 10565) ADVANCE(364);
      if (lookahead == 10868) ADVANCE(378);
      if (lookahead == 10927) ADVANCE(424);
      if (lookahead == 10928) ADVANCE(426);
      if (lookahead == 10980) ADVANCE(406);
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(223);
      if (('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(303);
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(304);
      END_STATE();
    case 201:
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(201)
      if (lookahead == '\r') SKIP(201)
      if (lookahead == '!') ADVANCE(312);
      if (lookahead == '#') ADVANCE(382);
      if (lookahead == '$') ADVANCE(512);
      if (lookahead == '%') ADVANCE(476);
      if (lookahead == '&') ADVANCE(484);
      if (lookahead == '\'') ADVANCE(535);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == ')') ADVANCE(307);
      if (lookahead == '*') ADVANCE(495);
      if (lookahead == '+') ADVANCE(468);
      if (lookahead == ',') ADVANCE(304);
      if (lookahead == '-') ADVANCE(356);
      if (lookahead == '.') ADVANCE(339);
      if (lookahead == '/') ADVANCE(497);
      if (lookahead == '!') ADVANCE(313);
      if (lookahead == '#') ADVANCE(380);
      if (lookahead == '$') ADVANCE(510);
      if (lookahead == '%') ADVANCE(474);
      if (lookahead == '&') ADVANCE(482);
      if (lookahead == '\'') ADVANCE(533);
      if (lookahead == '(') ADVANCE(307);
      if (lookahead == ')') ADVANCE(308);
      if (lookahead == '*') ADVANCE(493);
      if (lookahead == '+') ADVANCE(466);
      if (lookahead == ',') ADVANCE(305);
      if (lookahead == '-') ADVANCE(354);
      if (lookahead == '.') ADVANCE(337);
      if (lookahead == '/') ADVANCE(495);
      if (lookahead == ':') ADVANCE(291);
      if (lookahead == ';') ADVANCE(547);
      if (lookahead == '<') ADVANCE(386);
      if (lookahead == '=') ADVANCE(344);
      if (lookahead == '>') ADVANCE(388);
      if (lookahead == ';') ADVANCE(545);
      if (lookahead == '<') ADVANCE(384);
      if (lookahead == '=') ADVANCE(342);
      if (lookahead == '>') ADVANCE(386);
      if (lookahead == '?') ADVANCE(39);
      if (lookahead == '@') ADVANCE(40);
      if (lookahead == '[') ADVANCE(309);
      if (lookahead == '\\') ADVANCE(456);
      if (lookahead == ']') ADVANCE(310);
      if (lookahead == '^') ADVANCE(529);
      if (lookahead == '{') ADVANCE(336);
      if (lookahead == '|') ADVANCE(479);
      if (lookahead == '}') ADVANCE(337);
      if (lookahead == '[') ADVANCE(310);
      if (lookahead == '\\') ADVANCE(454);
      if (lookahead == ']') ADVANCE(311);
      if (lookahead == '^') ADVANCE(527);
      if (lookahead == '{') ADVANCE(334);
      if (lookahead == '|') ADVANCE(477);
      if (lookahead == '}') ADVANCE(335);
      if (lookahead == '~') ADVANCE(35);
      if (lookahead == 215) ADVANCE(524);
      if (lookahead == 247) ADVANCE(504);
      if (lookahead == 8214) ADVANCE(481);
      if (lookahead == 8229) ADVANCE(464);
      if (lookahead == 8230) ADVANCE(466);
      if (lookahead == 8252) ADVANCE(510);
      if (lookahead == 8263) ADVANCE(515);
      if (lookahead == 8314) ADVANCE(532);
      if (lookahead == 8605) ADVANCE(374);
      if (lookahead == 8658) ADVANCE(363);
      if (lookahead == 8660) ADVANCE(371);
      if (lookahead == 8669) ADVANCE(373);
      if (lookahead == 8696) ADVANCE(365);
      if (lookahead == 215) ADVANCE(522);
      if (lookahead == 247) ADVANCE(502);
      if (lookahead == 8214) ADVANCE(479);
      if (lookahead == 8229) ADVANCE(462);
      if (lookahead == 8230) ADVANCE(464);
      if (lookahead == 8252) ADVANCE(508);
      if (lookahead == 8263) ADVANCE(513);
      if (lookahead == 8314) ADVANCE(530);
      if (lookahead == 8469 ||
          lookahead == 8477 ||
          lookahead == 8484) ADVANCE(303);
      if (lookahead == 8605) ADVANCE(372);
      if (lookahead == 8658) ADVANCE(361);
      if (lookahead == 8660) ADVANCE(369);
      if (lookahead == 8669) ADVANCE(371);
      if (lookahead == 8696) ADVANCE(363);
      if (lookahead == 8712) ADVANCE(257);
      if (lookahead == 8713) ADVANCE(420);
      if (lookahead == 8728) ADVANCE(506);
      if (lookahead == 8733) ADVANCE(430);
      if (lookahead == 8713) ADVANCE(418);
      if (lookahead == 8728) ADVANCE(504);
      if (lookahead == 8733) ADVANCE(428);
      if (lookahead == 8743) ADVANCE(300);
      if (lookahead == 8744) ADVANCE(302);
      if (lookahead == 8745) ADVANCE(459);
      if (lookahead == 8746) ADVANCE(462);
      if (lookahead == 8764) ADVANCE(432);
      if (lookahead == 8768) ADVANCE(526);
      if (lookahead == 8771) ADVANCE(434);
      if (lookahead == 8773) ADVANCE(412);
      if (lookahead == 8776) ADVANCE(399);
      if (lookahead == 8781) ADVANCE(410);
      if (lookahead == 8784) ADVANCE(414);
      if (lookahead == 8788) ADVANCE(378);
      if (lookahead == 8800) ADVANCE(383);
      if (lookahead == 8801) ADVANCE(368);
      if (lookahead == 8804) ADVANCE(394);
      if (lookahead == 8805) ADVANCE(397);
      if (lookahead == 8810) ADVANCE(418);
      if (lookahead == 8811) ADVANCE(416);
      if (lookahead == 8826) ADVANCE(422);
      if (lookahead == 8827) ADVANCE(424);
      if (lookahead == 8834) ADVANCE(444);
      if (lookahead == 8835) ADVANCE(446);
      if (lookahead == 8838) ADVANCE(448);
      if (lookahead == 8839) ADVANCE(450);
      if (lookahead == 8846) ADVANCE(521);
      if (lookahead == 8847) ADVANCE(436);
      if (lookahead == 8848) ADVANCE(438);
      if (lookahead == 8849) ADVANCE(440);
      if (lookahead == 8850) ADVANCE(442);
      if (lookahead == 8851) ADVANCE(517);
      if (lookahead == 8852) ADVANCE(519);
      if (lookahead == 8853) ADVANCE(472);
      if (lookahead == 8854) ADVANCE(475);
      if (lookahead == 8855) ADVANCE(494);
      if (lookahead == 8856) ADVANCE(491);
      if (lookahead == 8857) ADVANCE(488);
      if (lookahead == 8866) ADVANCE(402);
      if (lookahead == 8867) ADVANCE(406);
      if (lookahead == 8872) ADVANCE(404);
      if (lookahead == 8901) ADVANCE(528);
      if (lookahead == 8902) ADVANCE(508);
      if (lookahead == 8745) ADVANCE(457);
      if (lookahead == 8746) ADVANCE(460);
      if (lookahead == 8764) ADVANCE(430);
      if (lookahead == 8768) ADVANCE(524);
      if (lookahead == 8771) ADVANCE(432);
      if (lookahead == 8773) ADVANCE(410);
      if (lookahead == 8776) ADVANCE(397);
      if (lookahead == 8781) ADVANCE(408);
      if (lookahead == 8784) ADVANCE(412);
      if (lookahead == 8788) ADVANCE(376);
      if (lookahead == 8800) ADVANCE(381);
      if (lookahead == 8801) ADVANCE(366);
      if (lookahead == 8804) ADVANCE(392);
      if (lookahead == 8805) ADVANCE(395);
      if (lookahead == 8810) ADVANCE(416);
      if (lookahead == 8811) ADVANCE(414);
      if (lookahead == 8826) ADVANCE(420);
      if (lookahead == 8827) ADVANCE(422);
      if (lookahead == 8834) ADVANCE(442);
      if (lookahead == 8835) ADVANCE(444);
      if (lookahead == 8838) ADVANCE(446);
      if (lookahead == 8839) ADVANCE(448);
      if (lookahead == 8846) ADVANCE(519);
      if (lookahead == 8847) ADVANCE(434);
      if (lookahead == 8848) ADVANCE(436);
      if (lookahead == 8849) ADVANCE(438);
      if (lookahead == 8850) ADVANCE(440);
      if (lookahead == 8851) ADVANCE(515);
      if (lookahead == 8852) ADVANCE(517);
      if (lookahead == 8853) ADVANCE(470);
      if (lookahead == 8854) ADVANCE(473);
      if (lookahead == 8855) ADVANCE(492);
      if (lookahead == 8856) ADVANCE(489);
      if (lookahead == 8857) ADVANCE(486);
      if (lookahead == 8866) ADVANCE(400);
      if (lookahead == 8867) ADVANCE(404);
      if (lookahead == 8872) ADVANCE(402);
      if (lookahead == 8901) ADVANCE(526);
      if (lookahead == 8902) ADVANCE(506);
      if (lookahead == 9633) ADVANCE(288);
      if (lookahead == 9679) ADVANCE(502);
      if (lookahead == 9711) ADVANCE(500);
      if (lookahead == 10233) ADVANCE(362);
      if (lookahead == 10234) ADVANCE(370);
      if (lookahead == 10565) ADVANCE(366);
      if (lookahead == 10868) ADVANCE(380);
      if (lookahead == 10927) ADVANCE(426);
      if (lookahead == 10928) ADVANCE(428);
      if (lookahead == 10980) ADVANCE(408);
      if (lookahead == 9679) ADVANCE(500);
      if (lookahead == 9711) ADVANCE(498);
      if (lookahead == 10233) ADVANCE(360);
      if (lookahead == 10234) ADVANCE(368);
      if (lookahead == 10565) ADVANCE(364);
      if (lookahead == 10868) ADVANCE(378);
      if (lookahead == 10927) ADVANCE(424);
      if (lookahead == 10928) ADVANCE(426);
      if (lookahead == 10980) ADVANCE(406);
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(223);
      if (('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(303);
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(304);
      END_STATE();
    case 202:
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(202)
      if (lookahead == '\r') SKIP(202)
      if (lookahead == '!') ADVANCE(312);
      if (lookahead == '#') ADVANCE(382);
      if (lookahead == '$') ADVANCE(512);
      if (lookahead == '%') ADVANCE(476);
      if (lookahead == '&') ADVANCE(484);
      if (lookahead == '\'') ADVANCE(535);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == '*') ADVANCE(495);
      if (lookahead == '+') ADVANCE(468);
      if (lookahead == '-') ADVANCE(356);
      if (lookahead == '.') ADVANCE(339);
      if (lookahead == '/') ADVANCE(497);
      if (lookahead == '!') ADVANCE(313);
      if (lookahead == '#') ADVANCE(380);
      if (lookahead == '$') ADVANCE(510);
      if (lookahead == '%') ADVANCE(474);
      if (lookahead == '&') ADVANCE(482);
      if (lookahead == '\'') ADVANCE(533);
      if (lookahead == '(') ADVANCE(307);
      if (lookahead == '*') ADVANCE(493);
      if (lookahead == '+') ADVANCE(466);
      if (lookahead == '-') ADVANCE(354);
      if (lookahead == '.') ADVANCE(337);
      if (lookahead == '/') ADVANCE(495);
      if (lookahead == ':') ADVANCE(26);
      if (lookahead == '<') ADVANCE(386);
      if (lookahead == '=') ADVANCE(342);
      if (lookahead == '>') ADVANCE(388);
      if (lookahead == '<') ADVANCE(384);
      if (lookahead == '=') ADVANCE(340);
      if (lookahead == '>') ADVANCE(386);
      if (lookahead == '?') ADVANCE(39);
      if (lookahead == '@') ADVANCE(40);
      if (lookahead == '[') ADVANCE(308);
      if (lookahead == '\\') ADVANCE(456);
      if (lookahead == '^') ADVANCE(529);
      if (lookahead == '|') ADVANCE(479);
      if (lookahead == '[') ADVANCE(309);
      if (lookahead == '\\') ADVANCE(454);
      if (lookahead == '^') ADVANCE(527);
      if (lookahead == '|') ADVANCE(477);
      if (lookahead == '~') ADVANCE(35);
      if (lookahead == 215) ADVANCE(524);
      if (lookahead == 247) ADVANCE(504);
      if (lookahead == 8214) ADVANCE(481);
      if (lookahead == 8229) ADVANCE(464);
      if (lookahead == 8230) ADVANCE(466);
      if (lookahead == 8252) ADVANCE(510);
      if (lookahead == 8263) ADVANCE(515);
      if (lookahead == 8314) ADVANCE(532);
      if (lookahead == 8605) ADVANCE(374);
      if (lookahead == 8658) ADVANCE(363);
      if (lookahead == 8660) ADVANCE(371);
      if (lookahead == 8669) ADVANCE(373);
      if (lookahead == 8696) ADVANCE(365);
      if (lookahead == 215) ADVANCE(522);
      if (lookahead == 247) ADVANCE(502);
      if (lookahead == 8214) ADVANCE(479);
      if (lookahead == 8229) ADVANCE(462);
      if (lookahead == 8230) ADVANCE(464);
      if (lookahead == 8252) ADVANCE(508);
      if (lookahead == 8263) ADVANCE(513);
      if (lookahead == 8314) ADVANCE(530);
      if (lookahead == 8469 ||
          lookahead == 8477 ||
          lookahead == 8484) ADVANCE(303);
      if (lookahead == 8605) ADVANCE(372);
      if (lookahead == 8658) ADVANCE(361);
      if (lookahead == 8660) ADVANCE(369);
      if (lookahead == 8669) ADVANCE(371);
      if (lookahead == 8696) ADVANCE(363);
      if (lookahead == 8712) ADVANCE(257);
      if (lookahead == 8713) ADVANCE(420);
      if (lookahead == 8728) ADVANCE(506);
      if (lookahead == 8733) ADVANCE(430);
      if (lookahead == 8713) ADVANCE(418);
      if (lookahead == 8728) ADVANCE(504);
      if (lookahead == 8733) ADVANCE(428);
      if (lookahead == 8743) ADVANCE(300);
      if (lookahead == 8744) ADVANCE(302);
      if (lookahead == 8745) ADVANCE(459);
      if (lookahead == 8746) ADVANCE(462);
      if (lookahead == 8745) ADVANCE(457);
      if (lookahead == 8746) ADVANCE(460);
      if (lookahead == 8759) ADVANCE(296);
      if (lookahead == 8764) ADVANCE(432);
      if (lookahead == 8768) ADVANCE(526);
      if (lookahead == 8771) ADVANCE(434);
      if (lookahead == 8773) ADVANCE(412);
      if (lookahead == 8776) ADVANCE(399);
      if (lookahead == 8781) ADVANCE(410);
      if (lookahead == 8784) ADVANCE(414);
      if (lookahead == 8788) ADVANCE(378);
      if (lookahead == 8764) ADVANCE(430);
      if (lookahead == 8768) ADVANCE(524);
      if (lookahead == 8771) ADVANCE(432);
      if (lookahead == 8773) ADVANCE(410);
      if (lookahead == 8776) ADVANCE(397);
      if (lookahead == 8781) ADVANCE(408);
      if (lookahead == 8784) ADVANCE(412);
      if (lookahead == 8788) ADVANCE(376);
      if (lookahead == 8796) ADVANCE(254);
      if (lookahead == 8800) ADVANCE(383);
      if (lookahead == 8801) ADVANCE(368);
      if (lookahead == 8804) ADVANCE(394);
      if (lookahead == 8805) ADVANCE(397);
      if (lookahead == 8810) ADVANCE(418);
      if (lookahead == 8811) ADVANCE(416);
      if (lookahead == 8826) ADVANCE(422);
      if (lookahead == 8827) ADVANCE(424);
      if (lookahead == 8834) ADVANCE(444);
      if (lookahead == 8835) ADVANCE(446);
      if (lookahead == 8838) ADVANCE(448);
      if (lookahead == 8839) ADVANCE(450);
      if (lookahead == 8846) ADVANCE(521);
      if (lookahead == 8847) ADVANCE(436);
      if (lookahead == 8848) ADVANCE(438);
      if (lookahead == 8849) ADVANCE(440);
      if (lookahead == 8850) ADVANCE(442);
      if (lookahead == 8851) ADVANCE(517);
      if (lookahead == 8852) ADVANCE(519);
      if (lookahead == 8853) ADVANCE(472);
      if (lookahead == 8854) ADVANCE(475);
      if (lookahead == 8855) ADVANCE(494);
      if (lookahead == 8856) ADVANCE(491);
      if (lookahead == 8857) ADVANCE(488);
      if (lookahead == 8866) ADVANCE(402);
      if (lookahead == 8867) ADVANCE(406);
      if (lookahead == 8872) ADVANCE(404);
      if (lookahead == 8901) ADVANCE(528);
      if (lookahead == 8902) ADVANCE(508);
      if (lookahead == 9679) ADVANCE(502);
      if (lookahead == 9711) ADVANCE(500);
      if (lookahead == 10233) ADVANCE(362);
      if (lookahead == 10234) ADVANCE(370);
      if (lookahead == 10565) ADVANCE(366);
      if (lookahead == 10868) ADVANCE(380);
      if (lookahead == 10927) ADVANCE(426);
      if (lookahead == 10928) ADVANCE(428);
      if (lookahead == 10980) ADVANCE(408);
      if (lookahead == 8800) ADVANCE(381);
      if (lookahead == 8801) ADVANCE(366);
      if (lookahead == 8804) ADVANCE(392);
      if (lookahead == 8805) ADVANCE(395);
      if (lookahead == 8810) ADVANCE(416);
      if (lookahead == 8811) ADVANCE(414);
      if (lookahead == 8826) ADVANCE(420);
      if (lookahead == 8827) ADVANCE(422);
      if (lookahead == 8834) ADVANCE(442);
      if (lookahead == 8835) ADVANCE(444);
      if (lookahead == 8838) ADVANCE(446);
      if (lookahead == 8839) ADVANCE(448);
      if (lookahead == 8846) ADVANCE(519);
      if (lookahead == 8847) ADVANCE(434);
      if (lookahead == 8848) ADVANCE(436);
      if (lookahead == 8849) ADVANCE(438);
      if (lookahead == 8850) ADVANCE(440);
      if (lookahead == 8851) ADVANCE(515);
      if (lookahead == 8852) ADVANCE(517);
      if (lookahead == 8853) ADVANCE(470);
      if (lookahead == 8854) ADVANCE(473);
      if (lookahead == 8855) ADVANCE(492);
      if (lookahead == 8856) ADVANCE(489);
      if (lookahead == 8857) ADVANCE(486);
      if (lookahead == 8866) ADVANCE(400);
      if (lookahead == 8867) ADVANCE(404);
      if (lookahead == 8872) ADVANCE(402);
      if (lookahead == 8901) ADVANCE(526);
      if (lookahead == 8902) ADVANCE(506);
      if (lookahead == 9679) ADVANCE(500);
      if (lookahead == 9711) ADVANCE(498);
      if (lookahead == 10233) ADVANCE(360);
      if (lookahead == 10234) ADVANCE(368);
      if (lookahead == 10565) ADVANCE(364);
      if (lookahead == 10868) ADVANCE(378);
      if (lookahead == 10927) ADVANCE(424);
      if (lookahead == 10928) ADVANCE(426);
      if (lookahead == 10980) ADVANCE(406);
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(223);
      if (('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(303);
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(304);
      END_STATE();
    case 203:
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(203)
      if (lookahead == '\r') SKIP(203)
      if (lookahead == '!') ADVANCE(312);
      if (lookahead == '#') ADVANCE(382);
      if (lookahead == '$') ADVANCE(512);
      if (lookahead == '%') ADVANCE(476);
      if (lookahead == '&') ADVANCE(484);
      if (lookahead == '\'') ADVANCE(535);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == '*') ADVANCE(495);
      if (lookahead == '+') ADVANCE(468);
      if (lookahead == '-') ADVANCE(355);
      if (lookahead == '.') ADVANCE(339);
      if (lookahead == '/') ADVANCE(497);
      if (lookahead == '!') ADVANCE(313);
      if (lookahead == '#') ADVANCE(380);
      if (lookahead == '$') ADVANCE(510);
      if (lookahead == '%') ADVANCE(474);
      if (lookahead == '&') ADVANCE(482);
      if (lookahead == '\'') ADVANCE(533);
      if (lookahead == '(') ADVANCE(307);
      if (lookahead == '*') ADVANCE(493);
      if (lookahead == '+') ADVANCE(466);
      if (lookahead == '-') ADVANCE(353);
      if (lookahead == '.') ADVANCE(337);
      if (lookahead == '/') ADVANCE(495);
      if (lookahead == ':') ADVANCE(26);
      if (lookahead == '<') ADVANCE(386);
      if (lookahead == '=') ADVANCE(344);
      if (lookahead == '>') ADVANCE(388);
      if (lookahead == '<') ADVANCE(384);
      if (lookahead == '=') ADVANCE(342);
      if (lookahead == '>') ADVANCE(386);
      if (lookahead == '?') ADVANCE(39);
      if (lookahead == '@') ADVANCE(40);
      if (lookahead == '[') ADVANCE(309);
      if (lookahead == '\\') ADVANCE(456);
      if (lookahead == '[') ADVANCE(310);
      if (lookahead == '\\') ADVANCE(454);
      if (lookahead == ']') ADVANCE(43);
      if (lookahead == '^') ADVANCE(529);
      if (lookahead == '|') ADVANCE(479);
      if (lookahead == '^') ADVANCE(527);
      if (lookahead == '|') ADVANCE(477);
      if (lookahead == '~') ADVANCE(35);
      if (lookahead == 215) ADVANCE(524);
      if (lookahead == 247) ADVANCE(504);
      if (lookahead == 8214) ADVANCE(481);
      if (lookahead == 8229) ADVANCE(464);
      if (lookahead == 8230) ADVANCE(466);
      if (lookahead == 8252) ADVANCE(510);
      if (lookahead == 8263) ADVANCE(515);
      if (lookahead == 8314) ADVANCE(532);
      if (lookahead == 215) ADVANCE(522);
      if (lookahead == 247) ADVANCE(502);
      if (lookahead == 8214) ADVANCE(479);
      if (lookahead == 8229) ADVANCE(462);
      if (lookahead == 8230) ADVANCE(464);
      if (lookahead == 8252) ADVANCE(508);
      if (lookahead == 8263) ADVANCE(513);
      if (lookahead == 8314) ADVANCE(530);
      if (lookahead == 8469 ||
          lookahead == 8477 ||
          lookahead == 8484) ADVANCE(303);
      if (lookahead == 8594) ADVANCE(274);
      if (lookahead == 8605) ADVANCE(374);
      if (lookahead == 8658) ADVANCE(363);
      if (lookahead == 8660) ADVANCE(371);
      if (lookahead == 8669) ADVANCE(373);
      if (lookahead == 8696) ADVANCE(365);
      if (lookahead == 8605) ADVANCE(372);
      if (lookahead == 8658) ADVANCE(361);
      if (lookahead == 8660) ADVANCE(369);
      if (lookahead == 8669) ADVANCE(371);
      if (lookahead == 8696) ADVANCE(363);
      if (lookahead == 8712) ADVANCE(257);
      if (lookahead == 8713) ADVANCE(420);
      if (lookahead == 8728) ADVANCE(506);
      if (lookahead == 8733) ADVANCE(430);
      if (lookahead == 8713) ADVANCE(418);
      if (lookahead == 8728) ADVANCE(504);
      if (lookahead == 8733) ADVANCE(428);
      if (lookahead == 8743) ADVANCE(300);
      if (lookahead == 8744) ADVANCE(302);
      if (lookahead == 8745) ADVANCE(459);
      if (lookahead == 8746) ADVANCE(462);
      if (lookahead == 8745) ADVANCE(457);
      if (lookahead == 8746) ADVANCE(460);
      if (lookahead == 8759) ADVANCE(296);
      if (lookahead == 8764) ADVANCE(432);
      if (lookahead == 8768) ADVANCE(526);
      if (lookahead == 8771) ADVANCE(434);
      if (lookahead == 8773) ADVANCE(412);
      if (lookahead == 8776) ADVANCE(399);
      if (lookahead == 8781) ADVANCE(410);
      if (lookahead == 8784) ADVANCE(414);
      if (lookahead == 8788) ADVANCE(378);
      if (lookahead == 8800) ADVANCE(383);
      if (lookahead == 8801) ADVANCE(368);
      if (lookahead == 8804) ADVANCE(394);
      if (lookahead == 8805) ADVANCE(397);
      if (lookahead == 8810) ADVANCE(418);
      if (lookahead == 8811) ADVANCE(416);
      if (lookahead == 8826) ADVANCE(422);
      if (lookahead == 8827) ADVANCE(424);
      if (lookahead == 8834) ADVANCE(444);
      if (lookahead == 8835) ADVANCE(446);
      if (lookahead == 8838) ADVANCE(448);
      if (lookahead == 8839) ADVANCE(450);
      if (lookahead == 8846) ADVANCE(521);
      if (lookahead == 8847) ADVANCE(436);
      if (lookahead == 8848) ADVANCE(438);
      if (lookahead == 8849) ADVANCE(440);
      if (lookahead == 8850) ADVANCE(442);
      if (lookahead == 8851) ADVANCE(517);
      if (lookahead == 8852) ADVANCE(519);
      if (lookahead == 8853) ADVANCE(472);
      if (lookahead == 8854) ADVANCE(475);
      if (lookahead == 8855) ADVANCE(494);
      if (lookahead == 8856) ADVANCE(491);
      if (lookahead == 8857) ADVANCE(488);
      if (lookahead == 8866) ADVANCE(402);
      if (lookahead == 8867) ADVANCE(406);
      if (lookahead == 8872) ADVANCE(404);
      if (lookahead == 8901) ADVANCE(528);
      if (lookahead == 8902) ADVANCE(508);
      if (lookahead == 8764) ADVANCE(430);
      if (lookahead == 8768) ADVANCE(524);
      if (lookahead == 8771) ADVANCE(432);
      if (lookahead == 8773) ADVANCE(410);
      if (lookahead == 8776) ADVANCE(397);
      if (lookahead == 8781) ADVANCE(408);
      if (lookahead == 8784) ADVANCE(412);
      if (lookahead == 8788) ADVANCE(376);
      if (lookahead == 8800) ADVANCE(381);
      if (lookahead == 8801) ADVANCE(366);
      if (lookahead == 8804) ADVANCE(392);
      if (lookahead == 8805) ADVANCE(395);
      if (lookahead == 8810) ADVANCE(416);
      if (lookahead == 8811) ADVANCE(414);
      if (lookahead == 8826) ADVANCE(420);
      if (lookahead == 8827) ADVANCE(422);
      if (lookahead == 8834) ADVANCE(442);
      if (lookahead == 8835) ADVANCE(444);
      if (lookahead == 8838) ADVANCE(446);
      if (lookahead == 8839) ADVANCE(448);
      if (lookahead == 8846) ADVANCE(519);
      if (lookahead == 8847) ADVANCE(434);
      if (lookahead == 8848) ADVANCE(436);
      if (lookahead == 8849) ADVANCE(438);
      if (lookahead == 8850) ADVANCE(440);
      if (lookahead == 8851) ADVANCE(515);
      if (lookahead == 8852) ADVANCE(517);
      if (lookahead == 8853) ADVANCE(470);
      if (lookahead == 8854) ADVANCE(473);
      if (lookahead == 8855) ADVANCE(492);
      if (lookahead == 8856) ADVANCE(489);
      if (lookahead == 8857) ADVANCE(486);
      if (lookahead == 8866) ADVANCE(400);
      if (lookahead == 8867) ADVANCE(404);
      if (lookahead == 8872) ADVANCE(402);
      if (lookahead == 8901) ADVANCE(526);
      if (lookahead == 8902) ADVANCE(506);
      if (lookahead == 9633) ADVANCE(288);
      if (lookahead == 9679) ADVANCE(502);
      if (lookahead == 9711) ADVANCE(500);
      if (lookahead == 9679) ADVANCE(500);
      if (lookahead == 9711) ADVANCE(498);
      if (lookahead == 10230) ADVANCE(273);
      if (lookahead == 10233) ADVANCE(362);
      if (lookahead == 10234) ADVANCE(370);
      if (lookahead == 10565) ADVANCE(366);
      if (lookahead == 10868) ADVANCE(380);
      if (lookahead == 10927) ADVANCE(426);
      if (lookahead == 10928) ADVANCE(428);
      if (lookahead == 10980) ADVANCE(408);
      if (lookahead == 10233) ADVANCE(360);
      if (lookahead == 10234) ADVANCE(368);
      if (lookahead == 10565) ADVANCE(364);
      if (lookahead == 10868) ADVANCE(378);
      if (lookahead == 10927) ADVANCE(424);
      if (lookahead == 10928) ADVANCE(426);
      if (lookahead == 10980) ADVANCE(406);
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(223);
      if (('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(303);
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(304);
      END_STATE();
    case 204:
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(204)
      if (lookahead == '\r') SKIP(204)
      if (lookahead == '!') ADVANCE(312);
      if (lookahead == '#') ADVANCE(382);
      if (lookahead == '$') ADVANCE(512);
      if (lookahead == '%') ADVANCE(476);
      if (lookahead == '&') ADVANCE(484);
      if (lookahead == '\'') ADVANCE(535);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == '*') ADVANCE(495);
      if (lookahead == '+') ADVANCE(468);
      if (lookahead == ',') ADVANCE(304);
      if (lookahead == '-') ADVANCE(356);
      if (lookahead == '.') ADVANCE(339);
      if (lookahead == '/') ADVANCE(497);
      if (lookahead == '!') ADVANCE(313);
      if (lookahead == '#') ADVANCE(380);
      if (lookahead == '$') ADVANCE(510);
      if (lookahead == '%') ADVANCE(474);
      if (lookahead == '&') ADVANCE(482);
      if (lookahead == '\'') ADVANCE(533);
      if (lookahead == '(') ADVANCE(307);
      if (lookahead == '*') ADVANCE(493);
      if (lookahead == '+') ADVANCE(466);
      if (lookahead == ',') ADVANCE(305);
      if (lookahead == '-') ADVANCE(354);
      if (lookahead == '.') ADVANCE(337);
      if (lookahead == '/') ADVANCE(495);
      if (lookahead == ':') ADVANCE(26);
      if (lookahead == '<') ADVANCE(386);
      if (lookahead == '=') ADVANCE(344);
      if (lookahead == '>') ADVANCE(389);
      if (lookahead == '<') ADVANCE(384);
      if (lookahead == '=') ADVANCE(342);
      if (lookahead == '>') ADVANCE(387);
      if (lookahead == '?') ADVANCE(39);
      if (lookahead == '@') ADVANCE(40);
      if (lookahead == '[') ADVANCE(309);
      if (lookahead == '\\') ADVANCE(456);
      if (lookahead == '^') ADVANCE(529);
      if (lookahead == '[') ADVANCE(310);
      if (lookahead == '\\') ADVANCE(454);
      if (lookahead == '^') ADVANCE(527);
      if (lookahead == '_') ADVANCE(297);
      if (lookahead == '|') ADVANCE(479);
      if (lookahead == '|') ADVANCE(477);
      if (lookahead == '~') ADVANCE(35);
      if (lookahead == 215) ADVANCE(524);
      if (lookahead == 247) ADVANCE(504);
      if (lookahead == 8214) ADVANCE(481);
      if (lookahead == 8229) ADVANCE(464);
      if (lookahead == 8230) ADVANCE(466);
      if (lookahead == 8252) ADVANCE(510);
      if (lookahead == 8263) ADVANCE(515);
      if (lookahead == 8314) ADVANCE(532);
      if (lookahead == 8605) ADVANCE(374);
      if (lookahead == 8658) ADVANCE(363);
      if (lookahead == 8660) ADVANCE(371);
      if (lookahead == 8669) ADVANCE(373);
      if (lookahead == 8696) ADVANCE(365);
      if (lookahead == 215) ADVANCE(522);
      if (lookahead == 247) ADVANCE(502);
      if (lookahead == 8214) ADVANCE(479);
      if (lookahead == 8229) ADVANCE(462);
      if (lookahead == 8230) ADVANCE(464);
      if (lookahead == 8252) ADVANCE(508);
      if (lookahead == 8263) ADVANCE(513);
      if (lookahead == 8314) ADVANCE(530);
      if (lookahead == 8605) ADVANCE(372);
      if (lookahead == 8658) ADVANCE(361);
      if (lookahead == 8660) ADVANCE(369);
      if (lookahead == 8669) ADVANCE(371);
      if (lookahead == 8696) ADVANCE(363);
      if (lookahead == 8712) ADVANCE(257);
      if (lookahead == 8713) ADVANCE(420);
      if (lookahead == 8728) ADVANCE(506);
      if (lookahead == 8733) ADVANCE(430);
      if (lookahead == 8713) ADVANCE(418);
      if (lookahead == 8728) ADVANCE(504);
      if (lookahead == 8733) ADVANCE(428);
      if (lookahead == 8743) ADVANCE(300);
      if (lookahead == 8744) ADVANCE(302);
      if (lookahead == 8745) ADVANCE(459);
      if (lookahead == 8746) ADVANCE(462);
      if (lookahead == 8745) ADVANCE(457);
      if (lookahead == 8746) ADVANCE(460);
      if (lookahead == 8759) ADVANCE(296);
      if (lookahead == 8764) ADVANCE(432);
      if (lookahead == 8768) ADVANCE(526);
      if (lookahead == 8771) ADVANCE(434);
      if (lookahead == 8773) ADVANCE(412);
      if (lookahead == 8776) ADVANCE(399);
      if (lookahead == 8781) ADVANCE(410);
      if (lookahead == 8784) ADVANCE(414);
      if (lookahead == 8788) ADVANCE(378);
      if (lookahead == 8800) ADVANCE(383);
      if (lookahead == 8801) ADVANCE(368);
      if (lookahead == 8804) ADVANCE(394);
      if (lookahead == 8805) ADVANCE(397);
      if (lookahead == 8810) ADVANCE(418);
      if (lookahead == 8811) ADVANCE(416);
      if (lookahead == 8826) ADVANCE(422);
      if (lookahead == 8827) ADVANCE(424);
      if (lookahead == 8834) ADVANCE(444);
      if (lookahead == 8835) ADVANCE(446);
      if (lookahead == 8838) ADVANCE(448);
      if (lookahead == 8839) ADVANCE(450);
      if (lookahead == 8846) ADVANCE(521);
      if (lookahead == 8847) ADVANCE(436);
      if (lookahead == 8848) ADVANCE(438);
      if (lookahead == 8849) ADVANCE(440);
      if (lookahead == 8850) ADVANCE(442);
      if (lookahead == 8851) ADVANCE(517);
      if (lookahead == 8852) ADVANCE(519);
      if (lookahead == 8853) ADVANCE(472);
      if (lookahead == 8854) ADVANCE(475);
      if (lookahead == 8855) ADVANCE(494);
      if (lookahead == 8856) ADVANCE(491);
      if (lookahead == 8857) ADVANCE(488);
      if (lookahead == 8866) ADVANCE(402);
      if (lookahead == 8867) ADVANCE(406);
      if (lookahead == 8872) ADVANCE(404);
      if (lookahead == 8901) ADVANCE(528);
      if (lookahead == 8902) ADVANCE(508);
      if (lookahead == 8764) ADVANCE(430);
      if (lookahead == 8768) ADVANCE(524);
      if (lookahead == 8771) ADVANCE(432);
      if (lookahead == 8773) ADVANCE(410);
      if (lookahead == 8776) ADVANCE(397);
      if (lookahead == 8781) ADVANCE(408);
      if (lookahead == 8784) ADVANCE(412);
      if (lookahead == 8788) ADVANCE(376);
      if (lookahead == 8800) ADVANCE(381);
      if (lookahead == 8801) ADVANCE(366);
      if (lookahead == 8804) ADVANCE(392);
      if (lookahead == 8805) ADVANCE(395);
      if (lookahead == 8810) ADVANCE(416);
      if (lookahead == 8811) ADVANCE(414);
      if (lookahead == 8826) ADVANCE(420);
      if (lookahead == 8827) ADVANCE(422);
      if (lookahead == 8834) ADVANCE(442);
      if (lookahead == 8835) ADVANCE(444);
      if (lookahead == 8838) ADVANCE(446);
      if (lookahead == 8839) ADVANCE(448);
      if (lookahead == 8846) ADVANCE(519);
      if (lookahead == 8847) ADVANCE(434);
      if (lookahead == 8848) ADVANCE(436);
      if (lookahead == 8849) ADVANCE(438);
      if (lookahead == 8850) ADVANCE(440);
      if (lookahead == 8851) ADVANCE(515);
      if (lookahead == 8852) ADVANCE(517);
      if (lookahead == 8853) ADVANCE(470);
      if (lookahead == 8854) ADVANCE(473);
      if (lookahead == 8855) ADVANCE(492);
      if (lookahead == 8856) ADVANCE(489);
      if (lookahead == 8857) ADVANCE(486);
      if (lookahead == 8866) ADVANCE(400);
      if (lookahead == 8867) ADVANCE(404);
      if (lookahead == 8872) ADVANCE(402);
      if (lookahead == 8901) ADVANCE(526);
      if (lookahead == 8902) ADVANCE(506);
      if (lookahead == 9633) ADVANCE(288);
      if (lookahead == 9679) ADVANCE(502);
      if (lookahead == 9711) ADVANCE(500);
      if (lookahead == 9679) ADVANCE(500);
      if (lookahead == 9711) ADVANCE(498);
      if (lookahead == 10217) ADVANCE(283);
      if (lookahead == 10233) ADVANCE(362);
      if (lookahead == 10234) ADVANCE(370);
      if (lookahead == 10565) ADVANCE(366);
      if (lookahead == 10868) ADVANCE(380);
      if (lookahead == 10927) ADVANCE(426);
      if (lookahead == 10928) ADVANCE(428);
      if (lookahead == 10980) ADVANCE(408);
      if (lookahead == 10233) ADVANCE(360);
      if (lookahead == 10234) ADVANCE(368);
      if (lookahead == 10565) ADVANCE(364);
      if (lookahead == 10868) ADVANCE(378);
      if (lookahead == 10927) ADVANCE(424);
      if (lookahead == 10928) ADVANCE(426);
      if (lookahead == 10980) ADVANCE(406);
      if (lookahead == 12297) ADVANCE(281);
      END_STATE();
    case 205:
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(204)
      if (lookahead == '\r') SKIP(204)
      if (lookahead == '!') ADVANCE(312);
      if (lookahead == '#') ADVANCE(382);
      if (lookahead == '$') ADVANCE(512);
      if (lookahead == '%') ADVANCE(476);
      if (lookahead == '&') ADVANCE(484);
      if (lookahead == '\'') ADVANCE(535);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == '*') ADVANCE(495);
      if (lookahead == '+') ADVANCE(468);
      if (lookahead == ',') ADVANCE(304);
      if (lookahead == '-') ADVANCE(356);
      if (lookahead == '.') ADVANCE(339);
      if (lookahead == '/') ADVANCE(497);
      if (lookahead == '!') ADVANCE(313);
      if (lookahead == '#') ADVANCE(380);
      if (lookahead == '$') ADVANCE(510);
      if (lookahead == '%') ADVANCE(474);
      if (lookahead == '&') ADVANCE(482);
      if (lookahead == '\'') ADVANCE(533);
      if (lookahead == '(') ADVANCE(307);
      if (lookahead == '*') ADVANCE(493);
      if (lookahead == '+') ADVANCE(466);
      if (lookahead == ',') ADVANCE(305);
      if (lookahead == '-') ADVANCE(354);
      if (lookahead == '.') ADVANCE(337);
      if (lookahead == '/') ADVANCE(495);
      if (lookahead == ':') ADVANCE(26);
      if (lookahead == '<') ADVANCE(386);
      if (lookahead == '=') ADVANCE(344);
      if (lookahead == '>') ADVANCE(389);
      if (lookahead == '<') ADVANCE(384);
      if (lookahead == '=') ADVANCE(342);
      if (lookahead == '>') ADVANCE(387);
      if (lookahead == '?') ADVANCE(39);
      if (lookahead == '@') ADVANCE(40);
      if (lookahead == '[') ADVANCE(309);
      if (lookahead == '\\') ADVANCE(456);
      if (lookahead == '^') ADVANCE(529);
      if (lookahead == '[') ADVANCE(310);
      if (lookahead == '\\') ADVANCE(454);
      if (lookahead == '^') ADVANCE(527);
      if (lookahead == '_') ADVANCE(297);
      if (lookahead == '|') ADVANCE(479);
      if (lookahead == '|') ADVANCE(477);
      if (lookahead == '~') ADVANCE(35);
      if (lookahead == 215) ADVANCE(524);
      if (lookahead == 247) ADVANCE(504);
      if (lookahead == 8214) ADVANCE(481);
      if (lookahead == 8229) ADVANCE(464);
      if (lookahead == 8230) ADVANCE(466);
      if (lookahead == 8252) ADVANCE(510);
      if (lookahead == 8263) ADVANCE(515);
      if (lookahead == 8314) ADVANCE(532);
      if (lookahead == 8605) ADVANCE(374);
      if (lookahead == 8658) ADVANCE(363);
      if (lookahead == 8660) ADVANCE(371);
      if (lookahead == 8669) ADVANCE(373);
      if (lookahead == 8696) ADVANCE(365);
      if (lookahead == 215) ADVANCE(522);
      if (lookahead == 247) ADVANCE(502);
      if (lookahead == 8214) ADVANCE(479);
      if (lookahead == 8229) ADVANCE(462);
      if (lookahead == 8230) ADVANCE(464);
      if (lookahead == 8252) ADVANCE(508);
      if (lookahead == 8263) ADVANCE(513);
      if (lookahead == 8314) ADVANCE(530);
      if (lookahead == 8605) ADVANCE(372);
      if (lookahead == 8658) ADVANCE(361);
      if (lookahead == 8660) ADVANCE(369);
      if (lookahead == 8669) ADVANCE(371);
      if (lookahead == 8696) ADVANCE(363);
      if (lookahead == 8712) ADVANCE(257);
      if (lookahead == 8713) ADVANCE(420);
      if (lookahead == 8728) ADVANCE(506);
      if (lookahead == 8733) ADVANCE(430);
      if (lookahead == 8713) ADVANCE(418);
      if (lookahead == 8728) ADVANCE(504);
      if (lookahead == 8733) ADVANCE(428);
      if (lookahead == 8743) ADVANCE(300);
      if (lookahead == 8744) ADVANCE(302);
      if (lookahead == 8745) ADVANCE(459);
      if (lookahead == 8746) ADVANCE(462);
      if (lookahead == 8745) ADVANCE(457);
      if (lookahead == 8746) ADVANCE(460);
      if (lookahead == 8759) ADVANCE(296);
      if (lookahead == 8764) ADVANCE(432);
      if (lookahead == 8768) ADVANCE(526);
      if (lookahead == 8771) ADVANCE(434);
      if (lookahead == 8773) ADVANCE(412);
      if (lookahead == 8776) ADVANCE(399);
      if (lookahead == 8781) ADVANCE(410);
      if (lookahead == 8784) ADVANCE(414);
      if (lookahead == 8788) ADVANCE(378);
      if (lookahead == 8800) ADVANCE(383);
      if (lookahead == 8801) ADVANCE(368);
      if (lookahead == 8804) ADVANCE(394);
      if (lookahead == 8805) ADVANCE(397);
      if (lookahead == 8810) ADVANCE(418);
      if (lookahead == 8811) ADVANCE(416);
      if (lookahead == 8826) ADVANCE(422);
      if (lookahead == 8827) ADVANCE(424);
      if (lookahead == 8834) ADVANCE(444);
      if (lookahead == 8835) ADVANCE(446);
      if (lookahead == 8838) ADVANCE(448);
      if (lookahead == 8839) ADVANCE(450);
      if (lookahead == 8846) ADVANCE(521);
      if (lookahead == 8847) ADVANCE(436);
      if (lookahead == 8848) ADVANCE(438);
      if (lookahead == 8849) ADVANCE(440);
      if (lookahead == 8850) ADVANCE(442);
      if (lookahead == 8851) ADVANCE(517);
      if (lookahead == 8852) ADVANCE(519);
      if (lookahead == 8853) ADVANCE(472);
      if (lookahead == 8854) ADVANCE(475);
      if (lookahead == 8855) ADVANCE(494);
      if (lookahead == 8856) ADVANCE(491);
      if (lookahead == 8857) ADVANCE(488);
      if (lookahead == 8866) ADVANCE(402);
      if (lookahead == 8867) ADVANCE(406);
      if (lookahead == 8872) ADVANCE(404);
      if (lookahead == 8901) ADVANCE(528);
      if (lookahead == 8902) ADVANCE(508);
      if (lookahead == 8764) ADVANCE(430);
      if (lookahead == 8768) ADVANCE(524);
      if (lookahead == 8771) ADVANCE(432);
      if (lookahead == 8773) ADVANCE(410);
      if (lookahead == 8776) ADVANCE(397);
      if (lookahead == 8781) ADVANCE(408);
      if (lookahead == 8784) ADVANCE(412);
      if (lookahead == 8788) ADVANCE(376);
      if (lookahead == 8800) ADVANCE(381);
      if (lookahead == 8801) ADVANCE(366);
      if (lookahead == 8804) ADVANCE(392);
      if (lookahead == 8805) ADVANCE(395);
      if (lookahead == 8810) ADVANCE(416);
      if (lookahead == 8811) ADVANCE(414);
      if (lookahead == 8826) ADVANCE(420);
      if (lookahead == 8827) ADVANCE(422);
      if (lookahead == 8834) ADVANCE(442);
      if (lookahead == 8835) ADVANCE(444);
      if (lookahead == 8838) ADVANCE(446);
      if (lookahead == 8839) ADVANCE(448);
      if (lookahead == 8846) ADVANCE(519);
      if (lookahead == 8847) ADVANCE(434);
      if (lookahead == 8848) ADVANCE(436);
      if (lookahead == 8849) ADVANCE(438);
      if (lookahead == 8850) ADVANCE(440);
      if (lookahead == 8851) ADVANCE(515);
      if (lookahead == 8852) ADVANCE(517);
      if (lookahead == 8853) ADVANCE(470);
      if (lookahead == 8854) ADVANCE(473);
      if (lookahead == 8855) ADVANCE(492);
      if (lookahead == 8856) ADVANCE(489);
      if (lookahead == 8857) ADVANCE(486);
      if (lookahead == 8866) ADVANCE(400);
      if (lookahead == 8867) ADVANCE(404);
      if (lookahead == 8872) ADVANCE(402);
      if (lookahead == 8901) ADVANCE(526);
      if (lookahead == 8902) ADVANCE(506);
      if (lookahead == 9633) ADVANCE(288);
      if (lookahead == 9679) ADVANCE(502);
      if (lookahead == 9711) ADVANCE(500);
      if (lookahead == 9679) ADVANCE(500);
      if (lookahead == 9711) ADVANCE(498);
      if (lookahead == 10217) ADVANCE(283);
      if (lookahead == 10233) ADVANCE(362);
      if (lookahead == 10234) ADVANCE(370);
      if (lookahead == 10565) ADVANCE(366);
      if (lookahead == 10868) ADVANCE(380);
      if (lookahead == 10927) ADVANCE(426);
      if (lookahead == 10928) ADVANCE(428);
      if (lookahead == 10980) ADVANCE(408);
      if (lookahead == 10233) ADVANCE(360);
      if (lookahead == 10234) ADVANCE(368);
      if (lookahead == 10565) ADVANCE(364);
      if (lookahead == 10868) ADVANCE(378);
      if (lookahead == 10927) ADVANCE(424);
      if (lookahead == 10928) ADVANCE(426);
      if (lookahead == 10980) ADVANCE(406);
      if (lookahead == 12297) ADVANCE(281);
      if (lookahead == '0' ||
          lookahead == '1') ADVANCE(319);
          lookahead == '1') ADVANCE(320);
      END_STATE();
    case 206:
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(206)
      if (lookahead == '\r') SKIP(206)
      if (lookahead == '!') ADVANCE(312);
      if (lookahead == '#') ADVANCE(382);
      if (lookahead == '$') ADVANCE(512);
      if (lookahead == '%') ADVANCE(476);
      if (lookahead == '&') ADVANCE(484);
      if (lookahead == '\'') ADVANCE(535);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == '*') ADVANCE(495);
      if (lookahead == '+') ADVANCE(468);
      if (lookahead == ',') ADVANCE(304);
      if (lookahead == '-') ADVANCE(356);
      if (lookahead == '.') ADVANCE(339);
      if (lookahead == '/') ADVANCE(497);
      if (lookahead == '!') ADVANCE(313);
      if (lookahead == '#') ADVANCE(380);
      if (lookahead == '$') ADVANCE(510);
      if (lookahead == '%') ADVANCE(474);
      if (lookahead == '&') ADVANCE(482);
      if (lookahead == '\'') ADVANCE(533);
      if (lookahead == '(') ADVANCE(307);
      if (lookahead == '*') ADVANCE(493);
      if (lookahead == '+') ADVANCE(466);
      if (lookahead == ',') ADVANCE(305);
      if (lookahead == '-') ADVANCE(354);
      if (lookahead == '.') ADVANCE(337);
      if (lookahead == '/') ADVANCE(495);
      if (lookahead == ':') ADVANCE(26);
      if (lookahead == '<') ADVANCE(386);
      if (lookahead == '=') ADVANCE(344);
      if (lookahead == '>') ADVANCE(388);
      if (lookahead == '<') ADVANCE(384);
      if (lookahead == '=') ADVANCE(342);
      if (lookahead == '>') ADVANCE(386);
      if (lookahead == '?') ADVANCE(39);
      if (lookahead == '@') ADVANCE(40);
      if (lookahead == '[') ADVANCE(309);
      if (lookahead == '\\') ADVANCE(456);
      if (lookahead == '^') ADVANCE(529);
      if (lookahead == '|') ADVANCE(478);
      if (lookahead == '[') ADVANCE(310);
      if (lookahead == '\\') ADVANCE(454);
      if (lookahead == '^') ADVANCE(527);
      if (lookahead == '|') ADVANCE(476);
      if (lookahead == '~') ADVANCE(35);
      if (lookahead == 215) ADVANCE(524);
      if (lookahead == 247) ADVANCE(504);
      if (lookahead == 8214) ADVANCE(481);
      if (lookahead == 8229) ADVANCE(464);
      if (lookahead == 8230) ADVANCE(466);
      if (lookahead == 8252) ADVANCE(510);
      if (lookahead == 8263) ADVANCE(515);
      if (lookahead == 8314) ADVANCE(532);
      if (lookahead == 8605) ADVANCE(374);
      if (lookahead == 215) ADVANCE(522);
      if (lookahead == 247) ADVANCE(502);
      if (lookahead == 8214) ADVANCE(479);
      if (lookahead == 8229) ADVANCE(462);
      if (lookahead == 8230) ADVANCE(464);
      if (lookahead == 8252) ADVANCE(508);
      if (lookahead == 8263) ADVANCE(513);
      if (lookahead == 8314) ADVANCE(530);
      if (lookahead == 8605) ADVANCE(372);
      if (lookahead == 8614) ADVANCE(271);
      if (lookahead == 8658) ADVANCE(363);
      if (lookahead == 8660) ADVANCE(371);
      if (lookahead == 8669) ADVANCE(373);
      if (lookahead == 8696) ADVANCE(365);
      if (lookahead == 8658) ADVANCE(361);
      if (lookahead == 8660) ADVANCE(369);
      if (lookahead == 8669) ADVANCE(371);
      if (lookahead == 8696) ADVANCE(363);
      if (lookahead == 8712) ADVANCE(257);
      if (lookahead == 8713) ADVANCE(420);
      if (lookahead == 8728) ADVANCE(506);
      if (lookahead == 8733) ADVANCE(430);
      if (lookahead == 8713) ADVANCE(418);
      if (lookahead == 8728) ADVANCE(504);
      if (lookahead == 8733) ADVANCE(428);
      if (lookahead == 8743) ADVANCE(300);
      if (lookahead == 8744) ADVANCE(302);
      if (lookahead == 8745) ADVANCE(459);
      if (lookahead == 8746) ADVANCE(462);
      if (lookahead == 8745) ADVANCE(457);
      if (lookahead == 8746) ADVANCE(460);
      if (lookahead == 8759) ADVANCE(296);
      if (lookahead == 8764) ADVANCE(432);
      if (lookahead == 8768) ADVANCE(526);
      if (lookahead == 8771) ADVANCE(434);
      if (lookahead == 8773) ADVANCE(412);
      if (lookahead == 8776) ADVANCE(399);
      if (lookahead == 8781) ADVANCE(410);
      if (lookahead == 8784) ADVANCE(414);
      if (lookahead == 8788) ADVANCE(378);
      if (lookahead == 8800) ADVANCE(383);
      if (lookahead == 8801) ADVANCE(368);
      if (lookahead == 8804) ADVANCE(394);
      if (lookahead == 8805) ADVANCE(397);
      if (lookahead == 8810) ADVANCE(418);
      if (lookahead == 8811) ADVANCE(416);
      if (lookahead == 8826) ADVANCE(422);
      if (lookahead == 8827) ADVANCE(424);
      if (lookahead == 8834) ADVANCE(444);
      if (lookahead == 8835) ADVANCE(446);
      if (lookahead == 8838) ADVANCE(448);
      if (lookahead == 8839) ADVANCE(450);
      if (lookahead == 8846) ADVANCE(521);
      if (lookahead == 8847) ADVANCE(436);
      if (lookahead == 8848) ADVANCE(438);
      if (lookahead == 8849) ADVANCE(440);
      if (lookahead == 8850) ADVANCE(442);
      if (lookahead == 8851) ADVANCE(517);
      if (lookahead == 8852) ADVANCE(519);
      if (lookahead == 8853) ADVANCE(472);
      if (lookahead == 8854) ADVANCE(475);
      if (lookahead == 8855) ADVANCE(494);
      if (lookahead == 8856) ADVANCE(491);
      if (lookahead == 8857) ADVANCE(488);
      if (lookahead == 8866) ADVANCE(402);
      if (lookahead == 8867) ADVANCE(406);
      if (lookahead == 8872) ADVANCE(404);
      if (lookahead == 8901) ADVANCE(528);
      if (lookahead == 8902) ADVANCE(508);
      if (lookahead == 8764) ADVANCE(430);
      if (lookahead == 8768) ADVANCE(524);
      if (lookahead == 8771) ADVANCE(432);
      if (lookahead == 8773) ADVANCE(410);
      if (lookahead == 8776) ADVANCE(397);
      if (lookahead == 8781) ADVANCE(408);
      if (lookahead == 8784) ADVANCE(412);
      if (lookahead == 8788) ADVANCE(376);
      if (lookahead == 8800) ADVANCE(381);
      if (lookahead == 8801) ADVANCE(366);
      if (lookahead == 8804) ADVANCE(392);
      if (lookahead == 8805) ADVANCE(395);
      if (lookahead == 8810) ADVANCE(416);
      if (lookahead == 8811) ADVANCE(414);
      if (lookahead == 8826) ADVANCE(420);
      if (lookahead == 8827) ADVANCE(422);
      if (lookahead == 8834) ADVANCE(442);
      if (lookahead == 8835) ADVANCE(444);
      if (lookahead == 8838) ADVANCE(446);
      if (lookahead == 8839) ADVANCE(448);
      if (lookahead == 8846) ADVANCE(519);
      if (lookahead == 8847) ADVANCE(434);
      if (lookahead == 8848) ADVANCE(436);
      if (lookahead == 8849) ADVANCE(438);
      if (lookahead == 8850) ADVANCE(440);
      if (lookahead == 8851) ADVANCE(515);
      if (lookahead == 8852) ADVANCE(517);
      if (lookahead == 8853) ADVANCE(470);
      if (lookahead == 8854) ADVANCE(473);
      if (lookahead == 8855) ADVANCE(492);
      if (lookahead == 8856) ADVANCE(489);
      if (lookahead == 8857) ADVANCE(486);
      if (lookahead == 8866) ADVANCE(400);
      if (lookahead == 8867) ADVANCE(404);
      if (lookahead == 8872) ADVANCE(402);
      if (lookahead == 8901) ADVANCE(526);
      if (lookahead == 8902) ADVANCE(506);
      if (lookahead == 9633) ADVANCE(288);
      if (lookahead == 9679) ADVANCE(502);
      if (lookahead == 9711) ADVANCE(500);
      if (lookahead == 10233) ADVANCE(362);
      if (lookahead == 10234) ADVANCE(370);
      if (lookahead == 9679) ADVANCE(500);
      if (lookahead == 9711) ADVANCE(498);
      if (lookahead == 10233) ADVANCE(360);
      if (lookahead == 10234) ADVANCE(368);
      if (lookahead == 10236) ADVANCE(270);
      if (lookahead == 10565) ADVANCE(366);
      if (lookahead == 10868) ADVANCE(380);
      if (lookahead == 10927) ADVANCE(426);
      if (lookahead == 10928) ADVANCE(428);
      if (lookahead == 10980) ADVANCE(408);
      if (lookahead == 10565) ADVANCE(364);
      if (lookahead == 10868) ADVANCE(378);
      if (lookahead == 10927) ADVANCE(424);
      if (lookahead == 10928) ADVANCE(426);
      if (lookahead == 10980) ADVANCE(406);
      END_STATE();
    case 207:
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(206)
      if (lookahead == '\r') SKIP(206)
      if (lookahead == '!') ADVANCE(312);
      if (lookahead == '#') ADVANCE(382);
      if (lookahead == '$') ADVANCE(512);
      if (lookahead == '%') ADVANCE(476);
      if (lookahead == '&') ADVANCE(484);
      if (lookahead == '\'') ADVANCE(535);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == '*') ADVANCE(495);
      if (lookahead == '+') ADVANCE(468);
      if (lookahead == ',') ADVANCE(304);
      if (lookahead == '-') ADVANCE(356);
      if (lookahead == '.') ADVANCE(339);
      if (lookahead == '/') ADVANCE(497);
      if (lookahead == '!') ADVANCE(313);
      if (lookahead == '#') ADVANCE(380);
      if (lookahead == '$') ADVANCE(510);
      if (lookahead == '%') ADVANCE(474);
      if (lookahead == '&') ADVANCE(482);
      if (lookahead == '\'') ADVANCE(533);
      if (lookahead == '(') ADVANCE(307);
      if (lookahead == '*') ADVANCE(493);
      if (lookahead == '+') ADVANCE(466);
      if (lookahead == ',') ADVANCE(305);
      if (lookahead == '-') ADVANCE(354);
      if (lookahead == '.') ADVANCE(337);
      if (lookahead == '/') ADVANCE(495);
      if (lookahead == ':') ADVANCE(26);
      if (lookahead == '<') ADVANCE(386);
      if (lookahead == '=') ADVANCE(344);
      if (lookahead == '>') ADVANCE(388);
      if (lookahead == '<') ADVANCE(384);
      if (lookahead == '=') ADVANCE(342);
      if (lookahead == '>') ADVANCE(386);
      if (lookahead == '?') ADVANCE(39);
      if (lookahead == '@') ADVANCE(40);
      if (lookahead == '[') ADVANCE(309);
      if (lookahead == '\\') ADVANCE(456);
      if (lookahead == '^') ADVANCE(529);
      if (lookahead == '|') ADVANCE(478);
      if (lookahead == '[') ADVANCE(310);
      if (lookahead == '\\') ADVANCE(454);
      if (lookahead == '^') ADVANCE(527);
      if (lookahead == '|') ADVANCE(476);
      if (lookahead == '~') ADVANCE(35);
      if (lookahead == 215) ADVANCE(524);
      if (lookahead == 247) ADVANCE(504);
      if (lookahead == 8214) ADVANCE(481);
      if (lookahead == 8229) ADVANCE(464);
      if (lookahead == 8230) ADVANCE(466);
      if (lookahead == 8252) ADVANCE(510);
      if (lookahead == 8263) ADVANCE(515);
      if (lookahead == 8314) ADVANCE(532);
      if (lookahead == 8605) ADVANCE(374);
      if (lookahead == 215) ADVANCE(522);
      if (lookahead == 247) ADVANCE(502);
      if (lookahead == 8214) ADVANCE(479);
      if (lookahead == 8229) ADVANCE(462);
      if (lookahead == 8230) ADVANCE(464);
      if (lookahead == 8252) ADVANCE(508);
      if (lookahead == 8263) ADVANCE(513);
      if (lookahead == 8314) ADVANCE(530);
      if (lookahead == 8605) ADVANCE(372);
      if (lookahead == 8614) ADVANCE(271);
      if (lookahead == 8658) ADVANCE(363);
      if (lookahead == 8660) ADVANCE(371);
      if (lookahead == 8669) ADVANCE(373);
      if (lookahead == 8696) ADVANCE(365);
      if (lookahead == 8658) ADVANCE(361);
      if (lookahead == 8660) ADVANCE(369);
      if (lookahead == 8669) ADVANCE(371);
      if (lookahead == 8696) ADVANCE(363);
      if (lookahead == 8712) ADVANCE(257);
      if (lookahead == 8713) ADVANCE(420);
      if (lookahead == 8728) ADVANCE(506);
      if (lookahead == 8733) ADVANCE(430);
      if (lookahead == 8713) ADVANCE(418);
      if (lookahead == 8728) ADVANCE(504);
      if (lookahead == 8733) ADVANCE(428);
      if (lookahead == 8743) ADVANCE(300);
      if (lookahead == 8744) ADVANCE(302);
      if (lookahead == 8745) ADVANCE(459);
      if (lookahead == 8746) ADVANCE(462);
      if (lookahead == 8745) ADVANCE(457);
      if (lookahead == 8746) ADVANCE(460);
      if (lookahead == 8759) ADVANCE(296);
      if (lookahead == 8764) ADVANCE(432);
      if (lookahead == 8768) ADVANCE(526);
      if (lookahead == 8771) ADVANCE(434);
      if (lookahead == 8773) ADVANCE(412);
      if (lookahead == 8776) ADVANCE(399);
      if (lookahead == 8781) ADVANCE(410);
      if (lookahead == 8784) ADVANCE(414);
      if (lookahead == 8788) ADVANCE(378);
      if (lookahead == 8800) ADVANCE(383);
      if (lookahead == 8801) ADVANCE(368);
      if (lookahead == 8804) ADVANCE(394);
      if (lookahead == 8805) ADVANCE(397);
      if (lookahead == 8810) ADVANCE(418);
      if (lookahead == 8811) ADVANCE(416);
      if (lookahead == 8826) ADVANCE(422);
      if (lookahead == 8827) ADVANCE(424);
      if (lookahead == 8834) ADVANCE(444);
      if (lookahead == 8835) ADVANCE(446);
      if (lookahead == 8838) ADVANCE(448);
      if (lookahead == 8839) ADVANCE(450);
      if (lookahead == 8846) ADVANCE(521);
      if (lookahead == 8847) ADVANCE(436);
      if (lookahead == 8848) ADVANCE(438);
      if (lookahead == 8849) ADVANCE(440);
      if (lookahead == 8850) ADVANCE(442);
      if (lookahead == 8851) ADVANCE(517);
      if (lookahead == 8852) ADVANCE(519);
      if (lookahead == 8853) ADVANCE(472);
      if (lookahead == 8854) ADVANCE(475);
      if (lookahead == 8855) ADVANCE(494);
      if (lookahead == 8856) ADVANCE(491);
      if (lookahead == 8857) ADVANCE(488);
      if (lookahead == 8866) ADVANCE(402);
      if (lookahead == 8867) ADVANCE(406);
      if (lookahead == 8872) ADVANCE(404);
      if (lookahead == 8901) ADVANCE(528);
      if (lookahead == 8902) ADVANCE(508);
      if (lookahead == 8764) ADVANCE(430);
      if (lookahead == 8768) ADVANCE(524);
      if (lookahead == 8771) ADVANCE(432);
      if (lookahead == 8773) ADVANCE(410);
      if (lookahead == 8776) ADVANCE(397);
      if (lookahead == 8781) ADVANCE(408);
      if (lookahead == 8784) ADVANCE(412);
      if (lookahead == 8788) ADVANCE(376);
      if (lookahead == 8800) ADVANCE(381);
      if (lookahead == 8801) ADVANCE(366);
      if (lookahead == 8804) ADVANCE(392);
      if (lookahead == 8805) ADVANCE(395);
      if (lookahead == 8810) ADVANCE(416);
      if (lookahead == 8811) ADVANCE(414);
      if (lookahead == 8826) ADVANCE(420);
      if (lookahead == 8827) ADVANCE(422);
      if (lookahead == 8834) ADVANCE(442);
      if (lookahead == 8835) ADVANCE(444);
      if (lookahead == 8838) ADVANCE(446);
      if (lookahead == 8839) ADVANCE(448);
      if (lookahead == 8846) ADVANCE(519);
      if (lookahead == 8847) ADVANCE(434);
      if (lookahead == 8848) ADVANCE(436);
      if (lookahead == 8849) ADVANCE(438);
      if (lookahead == 8850) ADVANCE(440);
      if (lookahead == 8851) ADVANCE(515);
      if (lookahead == 8852) ADVANCE(517);
      if (lookahead == 8853) ADVANCE(470);
      if (lookahead == 8854) ADVANCE(473);
      if (lookahead == 8855) ADVANCE(492);
      if (lookahead == 8856) ADVANCE(489);
      if (lookahead == 8857) ADVANCE(486);
      if (lookahead == 8866) ADVANCE(400);
      if (lookahead == 8867) ADVANCE(404);
      if (lookahead == 8872) ADVANCE(402);
      if (lookahead == 8901) ADVANCE(526);
      if (lookahead == 8902) ADVANCE(506);
      if (lookahead == 9633) ADVANCE(288);
      if (lookahead == 9679) ADVANCE(502);
      if (lookahead == 9711) ADVANCE(500);
      if (lookahead == 10233) ADVANCE(362);
      if (lookahead == 10234) ADVANCE(370);
      if (lookahead == 9679) ADVANCE(500);
      if (lookahead == 9711) ADVANCE(498);
      if (lookahead == 10233) ADVANCE(360);
      if (lookahead == 10234) ADVANCE(368);
      if (lookahead == 10236) ADVANCE(270);
      if (lookahead == 10565) ADVANCE(366);
      if (lookahead == 10868) ADVANCE(380);
      if (lookahead == 10927) ADVANCE(426);
      if (lookahead == 10928) ADVANCE(428);
      if (lookahead == 10980) ADVANCE(408);
      if (lookahead == 10565) ADVANCE(364);
      if (lookahead == 10868) ADVANCE(378);
      if (lookahead == 10927) ADVANCE(424);
      if (lookahead == 10928) ADVANCE(426);
      if (lookahead == 10980) ADVANCE(406);
      if (('0' <= lookahead && lookahead <= '9') ||
          ('A' <= lookahead && lookahead <= 'F') ||
          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(327);
          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(328);
      END_STATE();
    case 208:
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(208)
      if (lookahead == '\r') SKIP(208)
      if (lookahead == '!') ADVANCE(312);
      if (lookahead == '#') ADVANCE(382);
      if (lookahead == '$') ADVANCE(512);
      if (lookahead == '%') ADVANCE(476);
      if (lookahead == '&') ADVANCE(484);
      if (lookahead == '\'') ADVANCE(535);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == '*') ADVANCE(495);
      if (lookahead == '+') ADVANCE(468);
      if (lookahead == ',') ADVANCE(304);
      if (lookahead == '-') ADVANCE(356);
      if (lookahead == '.') ADVANCE(339);
      if (lookahead == '/') ADVANCE(497);
      if (lookahead == '!') ADVANCE(313);
      if (lookahead == '#') ADVANCE(380);
      if (lookahead == '$') ADVANCE(510);
      if (lookahead == '%') ADVANCE(474);
      if (lookahead == '&') ADVANCE(482);
      if (lookahead == '\'') ADVANCE(533);
      if (lookahead == '(') ADVANCE(307);
      if (lookahead == '*') ADVANCE(493);
      if (lookahead == '+') ADVANCE(466);
      if (lookahead == ',') ADVANCE(305);
      if (lookahead == '-') ADVANCE(354);
      if (lookahead == '.') ADVANCE(337);
      if (lookahead == '/') ADVANCE(495);
      if (lookahead == ':') ADVANCE(26);
      if (lookahead == '<') ADVANCE(386);
      if (lookahead == '=') ADVANCE(344);
      if (lookahead == '>') ADVANCE(390);
      if (lookahead == '<') ADVANCE(384);
      if (lookahead == '=') ADVANCE(342);
      if (lookahead == '>') ADVANCE(388);
      if (lookahead == '?') ADVANCE(39);
      if (lookahead == '@') ADVANCE(40);
      if (lookahead == '[') ADVANCE(309);
      if (lookahead == '\\') ADVANCE(456);
      if (lookahead == '^') ADVANCE(529);
      if (lookahead == '|') ADVANCE(479);
      if (lookahead == '[') ADVANCE(310);
      if (lookahead == '\\') ADVANCE(454);
      if (lookahead == '^') ADVANCE(527);
      if (lookahead == '|') ADVANCE(477);
      if (lookahead == '~') ADVANCE(35);
      if (lookahead == 215) ADVANCE(524);
      if (lookahead == 247) ADVANCE(504);
      if (lookahead == 8214) ADVANCE(481);
      if (lookahead == 8229) ADVANCE(464);
      if (lookahead == 8230) ADVANCE(466);
      if (lookahead == 8252) ADVANCE(510);
      if (lookahead == 8263) ADVANCE(515);
      if (lookahead == 8314) ADVANCE(532);
      if (lookahead == 8605) ADVANCE(374);
      if (lookahead == 8658) ADVANCE(363);
      if (lookahead == 8660) ADVANCE(371);
      if (lookahead == 8669) ADVANCE(373);
      if (lookahead == 8696) ADVANCE(365);
      if (lookahead == 215) ADVANCE(522);
      if (lookahead == 247) ADVANCE(502);
      if (lookahead == 8214) ADVANCE(479);
      if (lookahead == 8229) ADVANCE(462);
      if (lookahead == 8230) ADVANCE(464);
      if (lookahead == 8252) ADVANCE(508);
      if (lookahead == 8263) ADVANCE(513);
      if (lookahead == 8314) ADVANCE(530);
      if (lookahead == 8605) ADVANCE(372);
      if (lookahead == 8658) ADVANCE(361);
      if (lookahead == 8660) ADVANCE(369);
      if (lookahead == 8669) ADVANCE(371);
      if (lookahead == 8696) ADVANCE(363);
      if (lookahead == 8712) ADVANCE(257);
      if (lookahead == 8713) ADVANCE(420);
      if (lookahead == 8728) ADVANCE(506);
      if (lookahead == 8733) ADVANCE(430);
      if (lookahead == 8713) ADVANCE(418);
      if (lookahead == 8728) ADVANCE(504);
      if (lookahead == 8733) ADVANCE(428);
      if (lookahead == 8743) ADVANCE(300);
      if (lookahead == 8744) ADVANCE(302);
      if (lookahead == 8745) ADVANCE(459);
      if (lookahead == 8746) ADVANCE(462);
      if (lookahead == 8745) ADVANCE(457);
      if (lookahead == 8746) ADVANCE(460);
      if (lookahead == 8759) ADVANCE(296);
      if (lookahead == 8764) ADVANCE(432);
      if (lookahead == 8768) ADVANCE(526);
      if (lookahead == 8771) ADVANCE(434);
      if (lookahead == 8773) ADVANCE(412);
      if (lookahead == 8776) ADVANCE(399);
      if (lookahead == 8781) ADVANCE(410);
      if (lookahead == 8784) ADVANCE(414);
      if (lookahead == 8788) ADVANCE(378);
      if (lookahead == 8800) ADVANCE(383);
      if (lookahead == 8801) ADVANCE(368);
      if (lookahead == 8804) ADVANCE(394);
      if (lookahead == 8805) ADVANCE(397);
      if (lookahead == 8810) ADVANCE(418);
      if (lookahead == 8811) ADVANCE(416);
      if (lookahead == 8826) ADVANCE(422);
      if (lookahead == 8827) ADVANCE(424);
      if (lookahead == 8834) ADVANCE(444);
      if (lookahead == 8835) ADVANCE(446);
      if (lookahead == 8838) ADVANCE(448);
      if (lookahead == 8839) ADVANCE(450);
      if (lookahead == 8846) ADVANCE(521);
      if (lookahead == 8847) ADVANCE(436);
      if (lookahead == 8848) ADVANCE(438);
      if (lookahead == 8849) ADVANCE(440);
      if (lookahead == 8850) ADVANCE(442);
      if (lookahead == 8851) ADVANCE(517);
      if (lookahead == 8852) ADVANCE(519);
      if (lookahead == 8853) ADVANCE(472);
      if (lookahead == 8854) ADVANCE(475);
      if (lookahead == 8855) ADVANCE(494);
      if (lookahead == 8856) ADVANCE(491);
      if (lookahead == 8857) ADVANCE(488);
      if (lookahead == 8866) ADVANCE(402);
      if (lookahead == 8867) ADVANCE(406);
      if (lookahead == 8872) ADVANCE(404);
      if (lookahead == 8901) ADVANCE(528);
      if (lookahead == 8902) ADVANCE(508);
      if (lookahead == 8764) ADVANCE(430);
      if (lookahead == 8768) ADVANCE(524);
      if (lookahead == 8771) ADVANCE(432);
      if (lookahead == 8773) ADVANCE(410);
      if (lookahead == 8776) ADVANCE(397);
      if (lookahead == 8781) ADVANCE(408);
      if (lookahead == 8784) ADVANCE(412);
      if (lookahead == 8788) ADVANCE(376);
      if (lookahead == 8800) ADVANCE(381);
      if (lookahead == 8801) ADVANCE(366);
      if (lookahead == 8804) ADVANCE(392);
      if (lookahead == 8805) ADVANCE(395);
      if (lookahead == 8810) ADVANCE(416);
      if (lookahead == 8811) ADVANCE(414);
      if (lookahead == 8826) ADVANCE(420);
      if (lookahead == 8827) ADVANCE(422);
      if (lookahead == 8834) ADVANCE(442);
      if (lookahead == 8835) ADVANCE(444);
      if (lookahead == 8838) ADVANCE(446);
      if (lookahead == 8839) ADVANCE(448);
      if (lookahead == 8846) ADVANCE(519);
      if (lookahead == 8847) ADVANCE(434);
      if (lookahead == 8848) ADVANCE(436);
      if (lookahead == 8849) ADVANCE(438);
      if (lookahead == 8850) ADVANCE(440);
      if (lookahead == 8851) ADVANCE(515);
      if (lookahead == 8852) ADVANCE(517);
      if (lookahead == 8853) ADVANCE(470);
      if (lookahead == 8854) ADVANCE(473);
      if (lookahead == 8855) ADVANCE(492);
      if (lookahead == 8856) ADVANCE(489);
      if (lookahead == 8857) ADVANCE(486);
      if (lookahead == 8866) ADVANCE(400);
      if (lookahead == 8867) ADVANCE(404);
      if (lookahead == 8872) ADVANCE(402);
      if (lookahead == 8901) ADVANCE(526);
      if (lookahead == 8902) ADVANCE(506);
      if (lookahead == 9633) ADVANCE(288);
      if (lookahead == 9679) ADVANCE(502);
      if (lookahead == 9711) ADVANCE(500);
      if (lookahead == 9679) ADVANCE(500);
      if (lookahead == 9711) ADVANCE(498);
      if (lookahead == 10217) ADVANCE(282);
      if (lookahead == 10233) ADVANCE(362);
      if (lookahead == 10234) ADVANCE(370);
      if (lookahead == 10565) ADVANCE(366);
      if (lookahead == 10868) ADVANCE(380);
      if (lookahead == 10927) ADVANCE(426);
      if (lookahead == 10928) ADVANCE(428);
      if (lookahead == 10980) ADVANCE(408);
      if (lookahead == 10233) ADVANCE(360);
      if (lookahead == 10234) ADVANCE(368);
      if (lookahead == 10565) ADVANCE(364);
      if (lookahead == 10868) ADVANCE(378);
      if (lookahead == 10927) ADVANCE(424);
      if (lookahead == 10928) ADVANCE(426);
      if (lookahead == 10980) ADVANCE(406);
      if (lookahead == 12297) ADVANCE(280);
      END_STATE();
    case 209:
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(208)
      if (lookahead == '\r') SKIP(208)
      if (lookahead == '!') ADVANCE(312);
      if (lookahead == '#') ADVANCE(382);
      if (lookahead == '$') ADVANCE(512);
      if (lookahead == '%') ADVANCE(476);
      if (lookahead == '&') ADVANCE(484);
      if (lookahead == '\'') ADVANCE(535);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == '*') ADVANCE(495);
      if (lookahead == '+') ADVANCE(468);
      if (lookahead == ',') ADVANCE(304);
      if (lookahead == '-') ADVANCE(356);
      if (lookahead == '.') ADVANCE(339);
      if (lookahead == '/') ADVANCE(497);
      if (lookahead == '!') ADVANCE(313);
      if (lookahead == '#') ADVANCE(380);
      if (lookahead == '$') ADVANCE(510);
      if (lookahead == '%') ADVANCE(474);
      if (lookahead == '&') ADVANCE(482);
      if (lookahead == '\'') ADVANCE(533);
      if (lookahead == '(') ADVANCE(307);
      if (lookahead == '*') ADVANCE(493);
      if (lookahead == '+') ADVANCE(466);
      if (lookahead == ',') ADVANCE(305);
      if (lookahead == '-') ADVANCE(354);
      if (lookahead == '.') ADVANCE(337);
      if (lookahead == '/') ADVANCE(495);
      if (lookahead == ':') ADVANCE(26);
      if (lookahead == '<') ADVANCE(386);
      if (lookahead == '=') ADVANCE(344);
      if (lookahead == '>') ADVANCE(390);
      if (lookahead == '<') ADVANCE(384);
      if (lookahead == '=') ADVANCE(342);
      if (lookahead == '>') ADVANCE(388);
      if (lookahead == '?') ADVANCE(39);
      if (lookahead == '@') ADVANCE(40);
      if (lookahead == '[') ADVANCE(309);
      if (lookahead == '\\') ADVANCE(456);
      if (lookahead == '^') ADVANCE(529);
      if (lookahead == '|') ADVANCE(479);
      if (lookahead == '[') ADVANCE(310);
      if (lookahead == '\\') ADVANCE(454);
      if (lookahead == '^') ADVANCE(527);
      if (lookahead == '|') ADVANCE(477);
      if (lookahead == '~') ADVANCE(35);
      if (lookahead == 215) ADVANCE(524);
      if (lookahead == 247) ADVANCE(504);
      if (lookahead == 8214) ADVANCE(481);
      if (lookahead == 8229) ADVANCE(464);
      if (lookahead == 8230) ADVANCE(466);
      if (lookahead == 8252) ADVANCE(510);
      if (lookahead == 8263) ADVANCE(515);
      if (lookahead == 8314) ADVANCE(532);
      if (lookahead == 8605) ADVANCE(374);
      if (lookahead == 8658) ADVANCE(363);
      if (lookahead == 8660) ADVANCE(371);
      if (lookahead == 8669) ADVANCE(373);
      if (lookahead == 8696) ADVANCE(365);
      if (lookahead == 215) ADVANCE(522);
      if (lookahead == 247) ADVANCE(502);
      if (lookahead == 8214) ADVANCE(479);
      if (lookahead == 8229) ADVANCE(462);
      if (lookahead == 8230) ADVANCE(464);
      if (lookahead == 8252) ADVANCE(508);
      if (lookahead == 8263) ADVANCE(513);
      if (lookahead == 8314) ADVANCE(530);
      if (lookahead == 8605) ADVANCE(372);
      if (lookahead == 8658) ADVANCE(361);
      if (lookahead == 8660) ADVANCE(369);
      if (lookahead == 8669) ADVANCE(371);
      if (lookahead == 8696) ADVANCE(363);
      if (lookahead == 8712) ADVANCE(257);
      if (lookahead == 8713) ADVANCE(420);
      if (lookahead == 8728) ADVANCE(506);
      if (lookahead == 8733) ADVANCE(430);
      if (lookahead == 8713) ADVANCE(418);
      if (lookahead == 8728) ADVANCE(504);
      if (lookahead == 8733) ADVANCE(428);
      if (lookahead == 8743) ADVANCE(300);
      if (lookahead == 8744) ADVANCE(302);
      if (lookahead == 8745) ADVANCE(459);
      if (lookahead == 8746) ADVANCE(462);
      if (lookahead == 8745) ADVANCE(457);
      if (lookahead == 8746) ADVANCE(460);
      if (lookahead == 8759) ADVANCE(296);
      if (lookahead == 8764) ADVANCE(432);
      if (lookahead == 8768) ADVANCE(526);
      if (lookahead == 8771) ADVANCE(434);
      if (lookahead == 8773) ADVANCE(412);
      if (lookahead == 8776) ADVANCE(399);
      if (lookahead == 8781) ADVANCE(410);
      if (lookahead == 8784) ADVANCE(414);
      if (lookahead == 8788) ADVANCE(378);
      if (lookahead == 8800) ADVANCE(383);
      if (lookahead == 8801) ADVANCE(368);
      if (lookahead == 8804) ADVANCE(394);
      if (lookahead == 8805) ADVANCE(397);
      if (lookahead == 8810) ADVANCE(418);
      if (lookahead == 8811) ADVANCE(416);
      if (lookahead == 8826) ADVANCE(422);
      if (lookahead == 8827) ADVANCE(424);
      if (lookahead == 8834) ADVANCE(444);
      if (lookahead == 8835) ADVANCE(446);
      if (lookahead == 8838) ADVANCE(448);
      if (lookahead == 8839) ADVANCE(450);
      if (lookahead == 8846) ADVANCE(521);
      if (lookahead == 8847) ADVANCE(436);
      if (lookahead == 8848) ADVANCE(438);
      if (lookahead == 8849) ADVANCE(440);
      if (lookahead == 8850) ADVANCE(442);
      if (lookahead == 8851) ADVANCE(517);
      if (lookahead == 8852) ADVANCE(519);
      if (lookahead == 8853) ADVANCE(472);
      if (lookahead == 8854) ADVANCE(475);
      if (lookahead == 8855) ADVANCE(494);
      if (lookahead == 8856) ADVANCE(491);
      if (lookahead == 8857) ADVANCE(488);
      if (lookahead == 8866) ADVANCE(402);
      if (lookahead == 8867) ADVANCE(406);
      if (lookahead == 8872) ADVANCE(404);
      if (lookahead == 8901) ADVANCE(528);
      if (lookahead == 8902) ADVANCE(508);
      if (lookahead == 8764) ADVANCE(430);
      if (lookahead == 8768) ADVANCE(524);
      if (lookahead == 8771) ADVANCE(432);
      if (lookahead == 8773) ADVANCE(410);
      if (lookahead == 8776) ADVANCE(397);
      if (lookahead == 8781) ADVANCE(408);
      if (lookahead == 8784) ADVANCE(412);
      if (lookahead == 8788) ADVANCE(376);
      if (lookahead == 8800) ADVANCE(381);
      if (lookahead == 8801) ADVANCE(366);
      if (lookahead == 8804) ADVANCE(392);
      if (lookahead == 8805) ADVANCE(395);
      if (lookahead == 8810) ADVANCE(416);
      if (lookahead == 8811) ADVANCE(414);
      if (lookahead == 8826) ADVANCE(420);
      if (lookahead == 8827) ADVANCE(422);
      if (lookahead == 8834) ADVANCE(442);
      if (lookahead == 8835) ADVANCE(444);
      if (lookahead == 8838) ADVANCE(446);
      if (lookahead == 8839) ADVANCE(448);
      if (lookahead == 8846) ADVANCE(519);
      if (lookahead == 8847) ADVANCE(434);
      if (lookahead == 8848) ADVANCE(436);
      if (lookahead == 8849) ADVANCE(438);
      if (lookahead == 8850) ADVANCE(440);
      if (lookahead == 8851) ADVANCE(515);
      if (lookahead == 8852) ADVANCE(517);
      if (lookahead == 8853) ADVANCE(470);
      if (lookahead == 8854) ADVANCE(473);
      if (lookahead == 8855) ADVANCE(492);
      if (lookahead == 8856) ADVANCE(489);
      if (lookahead == 8857) ADVANCE(486);
      if (lookahead == 8866) ADVANCE(400);
      if (lookahead == 8867) ADVANCE(404);
      if (lookahead == 8872) ADVANCE(402);
      if (lookahead == 8901) ADVANCE(526);
      if (lookahead == 8902) ADVANCE(506);
      if (lookahead == 9633) ADVANCE(288);
      if (lookahead == 9679) ADVANCE(502);
      if (lookahead == 9711) ADVANCE(500);
      if (lookahead == 9679) ADVANCE(500);
      if (lookahead == 9711) ADVANCE(498);
      if (lookahead == 10217) ADVANCE(282);
      if (lookahead == 10233) ADVANCE(362);
      if (lookahead == 10234) ADVANCE(370);
      if (lookahead == 10565) ADVANCE(366);
      if (lookahead == 10868) ADVANCE(380);
      if (lookahead == 10927) ADVANCE(426);
      if (lookahead == 10928) ADVANCE(428);
      if (lookahead == 10980) ADVANCE(408);
      if (lookahead == 10233) ADVANCE(360);
      if (lookahead == 10234) ADVANCE(368);
      if (lookahead == 10565) ADVANCE(364);
      if (lookahead == 10868) ADVANCE(378);
      if (lookahead == 10927) ADVANCE(424);
      if (lookahead == 10928) ADVANCE(426);
      if (lookahead == 10980) ADVANCE(406);
      if (lookahead == 12297) ADVANCE(280);
      if (('0' <= lookahead && lookahead <= '7')) ADVANCE(324);
      if (('0' <= lookahead && lookahead <= '7')) ADVANCE(325);
      END_STATE();
    case 210:
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(210)
      if (lookahead == '\r') SKIP(210)
      if (lookahead == '!') ADVANCE(312);
      if (lookahead == '#') ADVANCE(382);
      if (lookahead == '$') ADVANCE(512);
      if (lookahead == '%') ADVANCE(476);
      if (lookahead == '&') ADVANCE(484);
      if (lookahead == '\'') ADVANCE(535);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == '*') ADVANCE(495);
      if (lookahead == '+') ADVANCE(468);
      if (lookahead == '-') ADVANCE(353);
      if (lookahead == '.') ADVANCE(339);
      if (lookahead == '/') ADVANCE(497);
      if (lookahead == '!') ADVANCE(313);
      if (lookahead == '#') ADVANCE(380);
      if (lookahead == '$') ADVANCE(510);
      if (lookahead == '%') ADVANCE(474);
      if (lookahead == '&') ADVANCE(482);
      if (lookahead == '\'') ADVANCE(533);
      if (lookahead == '(') ADVANCE(307);
      if (lookahead == '*') ADVANCE(493);
      if (lookahead == '+') ADVANCE(466);
      if (lookahead == '-') ADVANCE(351);
      if (lookahead == '.') ADVANCE(337);
      if (lookahead == '/') ADVANCE(495);
      if (lookahead == ':') ADVANCE(26);
      if (lookahead == '<') ADVANCE(387);
      if (lookahead == '=') ADVANCE(341);
      if (lookahead == '>') ADVANCE(388);
      if (lookahead == '<') ADVANCE(385);
      if (lookahead == '=') ADVANCE(339);
      if (lookahead == '>') ADVANCE(386);
      if (lookahead == '?') ADVANCE(39);
      if (lookahead == '@') ADVANCE(40);
      if (lookahead == '[') ADVANCE(309);
      if (lookahead == '\\') ADVANCE(455);
      if (lookahead == '^') ADVANCE(529);
      if (lookahead == '|') ADVANCE(479);
      if (lookahead == '~') ADVANCE(349);
      if (lookahead == 172) ADVANCE(350);
      if (lookahead == 215) ADVANCE(524);
      if (lookahead == 247) ADVANCE(504);
      if (lookahead == 8214) ADVANCE(481);
      if (lookahead == 8229) ADVANCE(464);
      if (lookahead == 8230) ADVANCE(466);
      if (lookahead == 8252) ADVANCE(510);
      if (lookahead == 8263) ADVANCE(515);
      if (lookahead == 8314) ADVANCE(532);
      if (lookahead == 8605) ADVANCE(374);
      if (lookahead == 8658) ADVANCE(363);
      if (lookahead == 8660) ADVANCE(371);
      if (lookahead == 8669) ADVANCE(373);
      if (lookahead == 8696) ADVANCE(365);
      if (lookahead == '[') ADVANCE(310);
      if (lookahead == '\\') ADVANCE(453);
      if (lookahead == '^') ADVANCE(527);
      if (lookahead == '|') ADVANCE(477);
      if (lookahead == '~') ADVANCE(347);
      if (lookahead == 172) ADVANCE(348);
      if (lookahead == 215) ADVANCE(522);
      if (lookahead == 247) ADVANCE(502);
      if (lookahead == 8214) ADVANCE(479);
      if (lookahead == 8229) ADVANCE(462);
      if (lookahead == 8230) ADVANCE(464);
      if (lookahead == 8252) ADVANCE(508);
      if (lookahead == 8263) ADVANCE(513);
      if (lookahead == 8314) ADVANCE(530);
      if (lookahead == 8469 ||
          lookahead == 8477 ||
          lookahead == 8484) ADVANCE(303);
      if (lookahead == 8605) ADVANCE(372);
      if (lookahead == 8658) ADVANCE(361);
      if (lookahead == 8660) ADVANCE(369);
      if (lookahead == 8669) ADVANCE(371);
      if (lookahead == 8696) ADVANCE(363);
      if (lookahead == 8712) ADVANCE(257);
      if (lookahead == 8713) ADVANCE(420);
      if (lookahead == 8728) ADVANCE(506);
      if (lookahead == 8733) ADVANCE(430);
      if (lookahead == 8713) ADVANCE(418);
      if (lookahead == 8728) ADVANCE(504);
      if (lookahead == 8733) ADVANCE(428);
      if (lookahead == 8743) ADVANCE(300);
      if (lookahead == 8744) ADVANCE(302);
      if (lookahead == 8745) ADVANCE(459);
      if (lookahead == 8746) ADVANCE(462);
      if (lookahead == 8745) ADVANCE(457);
      if (lookahead == 8746) ADVANCE(460);
      if (lookahead == 8759) ADVANCE(296);
      if (lookahead == 8764) ADVANCE(432);
      if (lookahead == 8768) ADVANCE(526);
      if (lookahead == 8771) ADVANCE(434);
      if (lookahead == 8773) ADVANCE(412);
      if (lookahead == 8776) ADVANCE(399);
      if (lookahead == 8781) ADVANCE(410);
      if (lookahead == 8784) ADVANCE(414);
      if (lookahead == 8788) ADVANCE(378);
      if (lookahead == 8764) ADVANCE(430);
      if (lookahead == 8768) ADVANCE(524);
      if (lookahead == 8771) ADVANCE(432);
      if (lookahead == 8773) ADVANCE(410);
      if (lookahead == 8776) ADVANCE(397);
      if (lookahead == 8781) ADVANCE(408);
      if (lookahead == 8784) ADVANCE(412);
      if (lookahead == 8788) ADVANCE(376);
      if (lookahead == 8796) ADVANCE(254);
      if (lookahead == 8800) ADVANCE(383);
      if (lookahead == 8801) ADVANCE(368);
      if (lookahead == 8804) ADVANCE(394);
      if (lookahead == 8805) ADVANCE(397);
      if (lookahead == 8810) ADVANCE(418);
      if (lookahead == 8811) ADVANCE(416);
      if (lookahead == 8826) ADVANCE(422);
      if (lookahead == 8827) ADVANCE(424);
      if (lookahead == 8834) ADVANCE(444);
      if (lookahead == 8835) ADVANCE(446);
      if (lookahead == 8838) ADVANCE(448);
      if (lookahead == 8839) ADVANCE(450);
      if (lookahead == 8846) ADVANCE(521);
      if (lookahead == 8847) ADVANCE(436);
      if (lookahead == 8848) ADVANCE(438);
      if (lookahead == 8849) ADVANCE(440);
      if (lookahead == 8850) ADVANCE(442);
      if (lookahead == 8851) ADVANCE(517);
      if (lookahead == 8852) ADVANCE(519);
      if (lookahead == 8853) ADVANCE(472);
      if (lookahead == 8854) ADVANCE(475);
      if (lookahead == 8855) ADVANCE(494);
      if (lookahead == 8856) ADVANCE(491);
      if (lookahead == 8857) ADVANCE(488);
      if (lookahead == 8866) ADVANCE(402);
      if (lookahead == 8867) ADVANCE(406);
      if (lookahead == 8872) ADVANCE(404);
      if (lookahead == 8900) ADVANCE(359);
      if (lookahead == 8901) ADVANCE(528);
      if (lookahead == 8902) ADVANCE(508);
      if (lookahead == 8800) ADVANCE(381);
      if (lookahead == 8801) ADVANCE(366);
      if (lookahead == 8804) ADVANCE(392);
      if (lookahead == 8805) ADVANCE(395);
      if (lookahead == 8810) ADVANCE(416);
      if (lookahead == 8811) ADVANCE(414);
      if (lookahead == 8826) ADVANCE(420);
      if (lookahead == 8827) ADVANCE(422);
      if (lookahead == 8834) ADVANCE(442);
      if (lookahead == 8835) ADVANCE(444);
      if (lookahead == 8838) ADVANCE(446);
      if (lookahead == 8839) ADVANCE(448);
      if (lookahead == 8846) ADVANCE(519);
      if (lookahead == 8847) ADVANCE(434);
      if (lookahead == 8848) ADVANCE(436);
      if (lookahead == 8849) ADVANCE(438);
      if (lookahead == 8850) ADVANCE(440);
      if (lookahead == 8851) ADVANCE(515);
      if (lookahead == 8852) ADVANCE(517);
      if (lookahead == 8853) ADVANCE(470);
      if (lookahead == 8854) ADVANCE(473);
      if (lookahead == 8855) ADVANCE(492);
      if (lookahead == 8856) ADVANCE(489);
      if (lookahead == 8857) ADVANCE(486);
      if (lookahead == 8866) ADVANCE(400);
      if (lookahead == 8867) ADVANCE(404);
      if (lookahead == 8872) ADVANCE(402);
      if (lookahead == 8900) ADVANCE(357);
      if (lookahead == 8901) ADVANCE(526);
      if (lookahead == 8902) ADVANCE(506);
      if (lookahead == 9633) ADVANCE(288);
      if (lookahead == 9671) ADVANCE(360);
      if (lookahead == 9679) ADVANCE(502);
      if (lookahead == 9711) ADVANCE(500);
      if (lookahead == 10233) ADVANCE(362);
      if (lookahead == 10234) ADVANCE(370);
      if (lookahead == 10565) ADVANCE(366);
      if (lookahead == 10868) ADVANCE(380);
      if (lookahead == 10927) ADVANCE(426);
      if (lookahead == 10928) ADVANCE(428);
      if (lookahead == 10980) ADVANCE(408);
      if (lookahead == 9671) ADVANCE(358);
      if (lookahead == 9679) ADVANCE(500);
      if (lookahead == 9711) ADVANCE(498);
      if (lookahead == 10233) ADVANCE(360);
      if (lookahead == 10234) ADVANCE(368);
      if (lookahead == 10565) ADVANCE(364);
      if (lookahead == 10868) ADVANCE(378);
      if (lookahead == 10927) ADVANCE(424);
      if (lookahead == 10928) ADVANCE(426);
      if (lookahead == 10980) ADVANCE(406);
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(223);
      if (('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(303);
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(304);
      END_STATE();
    case 211:
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(211)
      if (lookahead == '\r') SKIP(211)
      if (lookahead == '!') ADVANCE(312);
      if (lookahead == '#') ADVANCE(382);
      if (lookahead == '$') ADVANCE(512);
      if (lookahead == '%') ADVANCE(476);
      if (lookahead == '&') ADVANCE(484);
      if (lookahead == '\'') ADVANCE(535);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == ')') ADVANCE(307);
      if (lookahead == '*') ADVANCE(495);
      if (lookahead == '+') ADVANCE(468);
      if (lookahead == ',') ADVANCE(304);
      if (lookahead == '-') ADVANCE(356);
      if (lookahead == '.') ADVANCE(339);
      if (lookahead == '/') ADVANCE(497);
      if (lookahead == '!') ADVANCE(313);
      if (lookahead == '#') ADVANCE(380);
      if (lookahead == '$') ADVANCE(510);
      if (lookahead == '%') ADVANCE(474);
      if (lookahead == '&') ADVANCE(482);
      if (lookahead == '\'') ADVANCE(533);
      if (lookahead == '(') ADVANCE(307);
      if (lookahead == ')') ADVANCE(308);
      if (lookahead == '*') ADVANCE(493);
      if (lookahead == '+') ADVANCE(466);
      if (lookahead == ',') ADVANCE(305);
      if (lookahead == '-') ADVANCE(354);
      if (lookahead == '.') ADVANCE(337);
      if (lookahead == '/') ADVANCE(495);
      if (lookahead == ':') ADVANCE(290);
      if (lookahead == ';') ADVANCE(547);
      if (lookahead == '<') ADVANCE(386);
      if (lookahead == '=') ADVANCE(344);
      if (lookahead == '>') ADVANCE(388);
      if (lookahead == ';') ADVANCE(545);
      if (lookahead == '<') ADVANCE(384);
      if (lookahead == '=') ADVANCE(342);
      if (lookahead == '>') ADVANCE(386);
      if (lookahead == '?') ADVANCE(39);
      if (lookahead == '@') ADVANCE(40);
      if (lookahead == '[') ADVANCE(309);
      if (lookahead == '\\') ADVANCE(456);
      if (lookahead == ']') ADVANCE(310);
      if (lookahead == '^') ADVANCE(529);
      if (lookahead == '{') ADVANCE(336);
      if (lookahead == '|') ADVANCE(479);
      if (lookahead == '}') ADVANCE(337);
      if (lookahead == '[') ADVANCE(310);
      if (lookahead == '\\') ADVANCE(454);
      if (lookahead == ']') ADVANCE(311);
      if (lookahead == '^') ADVANCE(527);
      if (lookahead == '{') ADVANCE(334);
      if (lookahead == '|') ADVANCE(477);
      if (lookahead == '}') ADVANCE(335);
      if (lookahead == '~') ADVANCE(35);
      if (lookahead == 215) ADVANCE(524);
      if (lookahead == 247) ADVANCE(504);
      if (lookahead == 8214) ADVANCE(481);
      if (lookahead == 8229) ADVANCE(464);
      if (lookahead == 8230) ADVANCE(466);
      if (lookahead == 8252) ADVANCE(510);
      if (lookahead == 8263) ADVANCE(515);
      if (lookahead == 8314) ADVANCE(532);
      if (lookahead == 8605) ADVANCE(374);
      if (lookahead == 8658) ADVANCE(363);
      if (lookahead == 8660) ADVANCE(371);
      if (lookahead == 8669) ADVANCE(373);
      if (lookahead == 8696) ADVANCE(365);
      if (lookahead == 215) ADVANCE(522);
      if (lookahead == 247) ADVANCE(502);
      if (lookahead == 8214) ADVANCE(479);
      if (lookahead == 8229) ADVANCE(462);
      if (lookahead == 8230) ADVANCE(464);
      if (lookahead == 8252) ADVANCE(508);
      if (lookahead == 8263) ADVANCE(513);
      if (lookahead == 8314) ADVANCE(530);
      if (lookahead == 8469 ||
          lookahead == 8477 ||
          lookahead == 8484) ADVANCE(303);
      if (lookahead == 8605) ADVANCE(372);
      if (lookahead == 8658) ADVANCE(361);
      if (lookahead == 8660) ADVANCE(369);
      if (lookahead == 8669) ADVANCE(371);
      if (lookahead == 8696) ADVANCE(363);
      if (lookahead == 8712) ADVANCE(257);
      if (lookahead == 8713) ADVANCE(420);
      if (lookahead == 8728) ADVANCE(506);
      if (lookahead == 8733) ADVANCE(430);
      if (lookahead == 8713) ADVANCE(418);
      if (lookahead == 8728) ADVANCE(504);
      if (lookahead == 8733) ADVANCE(428);
      if (lookahead == 8743) ADVANCE(300);
      if (lookahead == 8744) ADVANCE(302);
      if (lookahead == 8745) ADVANCE(459);
      if (lookahead == 8746) ADVANCE(462);
      if (lookahead == 8745) ADVANCE(457);
      if (lookahead == 8746) ADVANCE(460);
      if (lookahead == 8759) ADVANCE(296);
      if (lookahead == 8764) ADVANCE(432);
      if (lookahead == 8768) ADVANCE(526);
      if (lookahead == 8771) ADVANCE(434);
      if (lookahead == 8773) ADVANCE(412);
      if (lookahead == 8776) ADVANCE(399);
      if (lookahead == 8781) ADVANCE(410);
      if (lookahead == 8784) ADVANCE(414);
      if (lookahead == 8788) ADVANCE(378);
      if (lookahead == 8800) ADVANCE(383);
      if (lookahead == 8801) ADVANCE(368);
      if (lookahead == 8804) ADVANCE(394);
      if (lookahead == 8805) ADVANCE(397);
      if (lookahead == 8810) ADVANCE(418);
      if (lookahead == 8811) ADVANCE(416);
      if (lookahead == 8826) ADVANCE(422);
      if (lookahead == 8827) ADVANCE(424);
      if (lookahead == 8834) ADVANCE(444);
      if (lookahead == 8835) ADVANCE(446);
      if (lookahead == 8838) ADVANCE(448);
      if (lookahead == 8839) ADVANCE(450);
      if (lookahead == 8846) ADVANCE(521);
      if (lookahead == 8847) ADVANCE(436);
      if (lookahead == 8848) ADVANCE(438);
      if (lookahead == 8849) ADVANCE(440);
      if (lookahead == 8850) ADVANCE(442);
      if (lookahead == 8851) ADVANCE(517);
      if (lookahead == 8852) ADVANCE(519);
      if (lookahead == 8853) ADVANCE(472);
      if (lookahead == 8854) ADVANCE(475);
      if (lookahead == 8855) ADVANCE(494);
      if (lookahead == 8856) ADVANCE(491);
      if (lookahead == 8857) ADVANCE(488);
      if (lookahead == 8866) ADVANCE(402);
      if (lookahead == 8867) ADVANCE(406);
      if (lookahead == 8872) ADVANCE(404);
      if (lookahead == 8901) ADVANCE(528);
      if (lookahead == 8902) ADVANCE(508);
      if (lookahead == 8764) ADVANCE(430);
      if (lookahead == 8768) ADVANCE(524);
      if (lookahead == 8771) ADVANCE(432);
      if (lookahead == 8773) ADVANCE(410);
      if (lookahead == 8776) ADVANCE(397);
      if (lookahead == 8781) ADVANCE(408);
      if (lookahead == 8784) ADVANCE(412);
      if (lookahead == 8788) ADVANCE(376);
      if (lookahead == 8800) ADVANCE(381);
      if (lookahead == 8801) ADVANCE(366);
      if (lookahead == 8804) ADVANCE(392);
      if (lookahead == 8805) ADVANCE(395);
      if (lookahead == 8810) ADVANCE(416);
      if (lookahead == 8811) ADVANCE(414);
      if (lookahead == 8826) ADVANCE(420);
      if (lookahead == 8827) ADVANCE(422);
      if (lookahead == 8834) ADVANCE(442);
      if (lookahead == 8835) ADVANCE(444);
      if (lookahead == 8838) ADVANCE(446);
      if (lookahead == 8839) ADVANCE(448);
      if (lookahead == 8846) ADVANCE(519);
      if (lookahead == 8847) ADVANCE(434);
      if (lookahead == 8848) ADVANCE(436);
      if (lookahead == 8849) ADVANCE(438);
      if (lookahead == 8850) ADVANCE(440);
      if (lookahead == 8851) ADVANCE(515);
      if (lookahead == 8852) ADVANCE(517);
      if (lookahead == 8853) ADVANCE(470);
      if (lookahead == 8854) ADVANCE(473);
      if (lookahead == 8855) ADVANCE(492);
      if (lookahead == 8856) ADVANCE(489);
      if (lookahead == 8857) ADVANCE(486);
      if (lookahead == 8866) ADVANCE(400);
      if (lookahead == 8867) ADVANCE(404);
      if (lookahead == 8872) ADVANCE(402);
      if (lookahead == 8901) ADVANCE(526);
      if (lookahead == 8902) ADVANCE(506);
      if (lookahead == 9633) ADVANCE(288);
      if (lookahead == 9679) ADVANCE(502);
      if (lookahead == 9711) ADVANCE(500);
      if (lookahead == 10233) ADVANCE(362);
      if (lookahead == 10234) ADVANCE(370);
      if (lookahead == 10565) ADVANCE(366);
      if (lookahead == 10868) ADVANCE(380);
      if (lookahead == 10927) ADVANCE(426);
      if (lookahead == 10928) ADVANCE(428);
      if (lookahead == 10980) ADVANCE(408);
      if (lookahead == 9679) ADVANCE(500);
      if (lookahead == 9711) ADVANCE(498);
      if (lookahead == 10233) ADVANCE(360);
      if (lookahead == 10234) ADVANCE(368);
      if (lookahead == 10565) ADVANCE(364);
      if (lookahead == 10868) ADVANCE(378);
      if (lookahead == 10927) ADVANCE(424);
      if (lookahead == 10928) ADVANCE(426);
      if (lookahead == 10980) ADVANCE(406);
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(223);
      if (('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(303);
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(304);
      END_STATE();
    case 212:
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(212)
      if (lookahead == '\r') SKIP(212)
      if (lookahead == '!') ADVANCE(312);
      if (lookahead == '#') ADVANCE(382);
      if (lookahead == '$') ADVANCE(512);
      if (lookahead == '%') ADVANCE(476);
      if (lookahead == '&') ADVANCE(484);
      if (lookahead == '\'') ADVANCE(535);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == '*') ADVANCE(495);
      if (lookahead == '+') ADVANCE(468);
      if (lookahead == ',') ADVANCE(304);
      if (lookahead == '-') ADVANCE(355);
      if (lookahead == '.') ADVANCE(339);
      if (lookahead == '/') ADVANCE(497);
      if (lookahead == '!') ADVANCE(313);
      if (lookahead == '#') ADVANCE(380);
      if (lookahead == '$') ADVANCE(510);
      if (lookahead == '%') ADVANCE(474);
      if (lookahead == '&') ADVANCE(482);
      if (lookahead == '\'') ADVANCE(533);
      if (lookahead == '(') ADVANCE(307);
      if (lookahead == '*') ADVANCE(493);
      if (lookahead == '+') ADVANCE(466);
      if (lookahead == ',') ADVANCE(305);
      if (lookahead == '-') ADVANCE(353);
      if (lookahead == '.') ADVANCE(337);
      if (lookahead == '/') ADVANCE(495);
      if (lookahead == ':') ADVANCE(290);
      if (lookahead == '<') ADVANCE(386);
      if (lookahead == '=') ADVANCE(344);
      if (lookahead == '>') ADVANCE(388);
      if (lookahead == '<') ADVANCE(384);
      if (lookahead == '=') ADVANCE(342);
      if (lookahead == '>') ADVANCE(386);
      if (lookahead == '?') ADVANCE(39);
      if (lookahead == '@') ADVANCE(40);
      if (lookahead == '[') ADVANCE(308);
      if (lookahead == '\\') ADVANCE(456);
      if (lookahead == '[') ADVANCE(309);
      if (lookahead == '\\') ADVANCE(454);
      if (lookahead == ']') ADVANCE(43);
      if (lookahead == '^') ADVANCE(529);
      if (lookahead == '|') ADVANCE(478);
      if (lookahead == '^') ADVANCE(527);
      if (lookahead == '|') ADVANCE(476);
      if (lookahead == '~') ADVANCE(35);
      if (lookahead == 215) ADVANCE(524);
      if (lookahead == 247) ADVANCE(504);
      if (lookahead == 8214) ADVANCE(481);
      if (lookahead == 8229) ADVANCE(464);
      if (lookahead == 8230) ADVANCE(466);
      if (lookahead == 8252) ADVANCE(510);
      if (lookahead == 8263) ADVANCE(515);
      if (lookahead == 8314) ADVANCE(532);
      if (lookahead == 215) ADVANCE(522);
      if (lookahead == 247) ADVANCE(502);
      if (lookahead == 8214) ADVANCE(479);
      if (lookahead == 8229) ADVANCE(462);
      if (lookahead == 8230) ADVANCE(464);
      if (lookahead == 8252) ADVANCE(508);
      if (lookahead == 8263) ADVANCE(513);
      if (lookahead == 8314) ADVANCE(530);
      if (lookahead == 8469 ||
          lookahead == 8477 ||
          lookahead == 8484) ADVANCE(303);
      if (lookahead == 8594) ADVANCE(274);
      if (lookahead == 8605) ADVANCE(374);
      if (lookahead == 8605) ADVANCE(372);
      if (lookahead == 8614) ADVANCE(271);
      if (lookahead == 8658) ADVANCE(363);
      if (lookahead == 8660) ADVANCE(371);
      if (lookahead == 8669) ADVANCE(373);
      if (lookahead == 8696) ADVANCE(365);
      if (lookahead == 8658) ADVANCE(361);
      if (lookahead == 8660) ADVANCE(369);
      if (lookahead == 8669) ADVANCE(371);
      if (lookahead == 8696) ADVANCE(363);
      if (lookahead == 8712) ADVANCE(257);
      if (lookahead == 8713) ADVANCE(420);
      if (lookahead == 8728) ADVANCE(506);
      if (lookahead == 8733) ADVANCE(430);
      if (lookahead == 8713) ADVANCE(418);
      if (lookahead == 8728) ADVANCE(504);
      if (lookahead == 8733) ADVANCE(428);
      if (lookahead == 8743) ADVANCE(300);
      if (lookahead == 8744) ADVANCE(302);
      if (lookahead == 8745) ADVANCE(459);
      if (lookahead == 8746) ADVANCE(462);
      if (lookahead == 8745) ADVANCE(457);
      if (lookahead == 8746) ADVANCE(460);
      if (lookahead == 8759) ADVANCE(296);
      if (lookahead == 8764) ADVANCE(432);
      if (lookahead == 8768) ADVANCE(526);
      if (lookahead == 8771) ADVANCE(434);
      if (lookahead == 8773) ADVANCE(412);
      if (lookahead == 8776) ADVANCE(399);
      if (lookahead == 8781) ADVANCE(410);
      if (lookahead == 8784) ADVANCE(414);
      if (lookahead == 8788) ADVANCE(378);
      if (lookahead == 8800) ADVANCE(383);
      if (lookahead == 8801) ADVANCE(368);
      if (lookahead == 8804) ADVANCE(394);
      if (lookahead == 8805) ADVANCE(397);
      if (lookahead == 8810) ADVANCE(418);
      if (lookahead == 8811) ADVANCE(416);
      if (lookahead == 8826) ADVANCE(422);
      if (lookahead == 8827) ADVANCE(424);
      if (lookahead == 8834) ADVANCE(444);
      if (lookahead == 8835) ADVANCE(446);
      if (lookahead == 8838) ADVANCE(448);
      if (lookahead == 8839) ADVANCE(450);
      if (lookahead == 8846) ADVANCE(521);
      if (lookahead == 8847) ADVANCE(436);
      if (lookahead == 8848) ADVANCE(438);
      if (lookahead == 8849) ADVANCE(440);
      if (lookahead == 8850) ADVANCE(442);
      if (lookahead == 8851) ADVANCE(517);
      if (lookahead == 8852) ADVANCE(519);
      if (lookahead == 8853) ADVANCE(472);
      if (lookahead == 8854) ADVANCE(475);
      if (lookahead == 8855) ADVANCE(494);
      if (lookahead == 8856) ADVANCE(491);
      if (lookahead == 8857) ADVANCE(488);
      if (lookahead == 8866) ADVANCE(402);
      if (lookahead == 8867) ADVANCE(406);
      if (lookahead == 8872) ADVANCE(404);
      if (lookahead == 8901) ADVANCE(528);
      if (lookahead == 8902) ADVANCE(508);
      if (lookahead == 9679) ADVANCE(502);
      if (lookahead == 9711) ADVANCE(500);
      if (lookahead == 8764) ADVANCE(430);
      if (lookahead == 8768) ADVANCE(524);
      if (lookahead == 8771) ADVANCE(432);
      if (lookahead == 8773) ADVANCE(410);
      if (lookahead == 8776) ADVANCE(397);
      if (lookahead == 8781) ADVANCE(408);
      if (lookahead == 8784) ADVANCE(412);
      if (lookahead == 8788) ADVANCE(376);
      if (lookahead == 8800) ADVANCE(381);
      if (lookahead == 8801) ADVANCE(366);
      if (lookahead == 8804) ADVANCE(392);
      if (lookahead == 8805) ADVANCE(395);
      if (lookahead == 8810) ADVANCE(416);
      if (lookahead == 8811) ADVANCE(414);
      if (lookahead == 8826) ADVANCE(420);
      if (lookahead == 8827) ADVANCE(422);
      if (lookahead == 8834) ADVANCE(442);
      if (lookahead == 8835) ADVANCE(444);
      if (lookahead == 8838) ADVANCE(446);
      if (lookahead == 8839) ADVANCE(448);
      if (lookahead == 8846) ADVANCE(519);
      if (lookahead == 8847) ADVANCE(434);
      if (lookahead == 8848) ADVANCE(436);
      if (lookahead == 8849) ADVANCE(438);
      if (lookahead == 8850) ADVANCE(440);
      if (lookahead == 8851) ADVANCE(515);
      if (lookahead == 8852) ADVANCE(517);
      if (lookahead == 8853) ADVANCE(470);
      if (lookahead == 8854) ADVANCE(473);
      if (lookahead == 8855) ADVANCE(492);
      if (lookahead == 8856) ADVANCE(489);
      if (lookahead == 8857) ADVANCE(486);
      if (lookahead == 8866) ADVANCE(400);
      if (lookahead == 8867) ADVANCE(404);
      if (lookahead == 8872) ADVANCE(402);
      if (lookahead == 8901) ADVANCE(526);
      if (lookahead == 8902) ADVANCE(506);
      if (lookahead == 9679) ADVANCE(500);
      if (lookahead == 9711) ADVANCE(498);
      if (lookahead == 10230) ADVANCE(273);
      if (lookahead == 10233) ADVANCE(362);
      if (lookahead == 10234) ADVANCE(370);
      if (lookahead == 10233) ADVANCE(360);
      if (lookahead == 10234) ADVANCE(368);
      if (lookahead == 10236) ADVANCE(270);
      if (lookahead == 10565) ADVANCE(366);
      if (lookahead == 10868) ADVANCE(380);
      if (lookahead == 10927) ADVANCE(426);
      if (lookahead == 10928) ADVANCE(428);
      if (lookahead == 10980) ADVANCE(408);
      if (lookahead == 10565) ADVANCE(364);
      if (lookahead == 10868) ADVANCE(378);
      if (lookahead == 10927) ADVANCE(424);
      if (lookahead == 10928) ADVANCE(426);
      if (lookahead == 10980) ADVANCE(406);
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(223);
      if (('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(303);
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(304);
      END_STATE();
    case 213:
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(214)
      if (lookahead == '\r') SKIP(214)
      if (lookahead == '!') ADVANCE(311);
      if (lookahead == '(') ADVANCE(305);
      if (lookahead == '*') ADVANCE(544);
      if (lookahead == ',') ADVANCE(304);
      if (lookahead == '!') ADVANCE(312);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == '*') ADVANCE(542);
      if (lookahead == ',') ADVANCE(305);
      if (lookahead == '-') ADVANCE(22);
      if (lookahead == ':') ADVANCE(27);
      if (lookahead == '<') ADVANCE(34);


@@ 13412,61 13442,70 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
      if (lookahead == '[') ADVANCE(42);
      if (lookahead == '\\') ADVANCE(15);
      if (lookahead == '_') ADVANCE(223);
      if (lookahead == '~') ADVANCE(348);
      if (lookahead == 172) ADVANCE(350);
      if (lookahead == '~') ADVANCE(346);
      if (lookahead == 172) ADVANCE(348);
      if (lookahead == 8469 ||
          lookahead == 8477 ||
          lookahead == 8484) ADVANCE(303);
      if (lookahead == 8759) ADVANCE(296);
      if (lookahead == 8900) ADVANCE(359);
      if (lookahead == 8900) ADVANCE(357);
      if (lookahead == 9633) ADVANCE(288);
      if (lookahead == 9671) ADVANCE(360);
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(545);
      if (lookahead == 9671) ADVANCE(358);
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(543);
      if (('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(303);
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(304);
      END_STATE();
    case 214:
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(214)
      if (lookahead == '\r') SKIP(214)
      if (lookahead == '!') ADVANCE(311);
      if (lookahead == '(') ADVANCE(305);
      if (lookahead == ',') ADVANCE(304);
      if (lookahead == '!') ADVANCE(312);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == ',') ADVANCE(305);
      if (lookahead == '-') ADVANCE(22);
      if (lookahead == ':') ADVANCE(27);
      if (lookahead == '<') ADVANCE(34);
      if (lookahead == '=') ADVANCE(33);
      if (lookahead == '[') ADVANCE(42);
      if (lookahead == '\\') ADVANCE(15);
      if (lookahead == '~') ADVANCE(348);
      if (lookahead == 172) ADVANCE(350);
      if (lookahead == '~') ADVANCE(346);
      if (lookahead == 172) ADVANCE(348);
      if (lookahead == 8469 ||
          lookahead == 8477 ||
          lookahead == 8484) ADVANCE(303);
      if (lookahead == 8759) ADVANCE(296);
      if (lookahead == 8900) ADVANCE(359);
      if (lookahead == 8900) ADVANCE(357);
      if (lookahead == 9633) ADVANCE(288);
      if (lookahead == 9671) ADVANCE(360);
      if (lookahead == 9671) ADVANCE(358);
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(223);
      if (('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(303);
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(304);
      END_STATE();
    case 215:
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(215)
      if (lookahead == '\r') SKIP(215)
      if (lookahead == '(') ADVANCE(11);
      if (lookahead == ')') ADVANCE(307);
      if (lookahead == '+') ADVANCE(467);
      if (lookahead == ',') ADVANCE(304);
      if (lookahead == '-') ADVANCE(351);
      if (lookahead == '.') ADVANCE(338);
      if (lookahead == ';') ADVANCE(547);
      if (lookahead == '<') ADVANCE(384);
      if (lookahead == '=') ADVANCE(340);
      if (lookahead == '[') ADVANCE(308);
      if (lookahead == ')') ADVANCE(308);
      if (lookahead == '+') ADVANCE(465);
      if (lookahead == ',') ADVANCE(305);
      if (lookahead == '-') ADVANCE(349);
      if (lookahead == '.') ADVANCE(336);
      if (lookahead == ';') ADVANCE(545);
      if (lookahead == '<') ADVANCE(382);
      if (lookahead == '=') ADVANCE(338);
      if (lookahead == '[') ADVANCE(309);
      if (lookahead == '\\') ADVANCE(13);
      if (lookahead == '{') ADVANCE(336);
      if (lookahead == '{') ADVANCE(334);
      if (lookahead == 8469 ||
          lookahead == 8477 ||
          lookahead == 8484) ADVANCE(303);
      if (lookahead == 8712) ADVANCE(257);
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(223);
      if (('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(303);
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(304);
      END_STATE();
    case 216:
      if (('\t' <= lookahead && lookahead <= '\f') ||


@@ 13484,10 13523,10 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(217)
      if (lookahead == '\r') SKIP(217)
      if (lookahead == '!') ADVANCE(311);
      if (lookahead == '(') ADVANCE(305);
      if (lookahead == ')') ADVANCE(307);
      if (lookahead == ',') ADVANCE(304);
      if (lookahead == '!') ADVANCE(312);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == ')') ADVANCE(308);
      if (lookahead == ',') ADVANCE(305);
      if (lookahead == '\\') ADVANCE(12);
      if (lookahead == '_') ADVANCE(297);
      END_STATE();


@@ 13495,13 13534,13 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(217)
      if (lookahead == '\r') SKIP(217)
      if (lookahead == '!') ADVANCE(311);
      if (lookahead == '(') ADVANCE(305);
      if (lookahead == ')') ADVANCE(307);
      if (lookahead == ',') ADVANCE(304);
      if (lookahead == '!') ADVANCE(312);
      if (lookahead == '(') ADVANCE(306);
      if (lookahead == ')') ADVANCE(308);
      if (lookahead == ',') ADVANCE(305);
      if (lookahead == '\\') ADVANCE(12);
      if (lookahead == '_') ADVANCE(297);
      if (('0' <= lookahead && lookahead <= '7')) ADVANCE(324);
      if (('0' <= lookahead && lookahead <= '7')) ADVANCE(325);
      END_STATE();
    case 219:
      if (('\t' <= lookahead && lookahead <= '\f') ||


@@ 13520,7 13559,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
          ('A' <= lookahead && lookahead <= 'Z') ||
          lookahead == '_' ||
          ('a' <= lookahead && lookahead <= 'z') ||
          lookahead == '|') ADVANCE(546);
          lookahead == '|') ADVANCE(544);
      END_STATE();
    case 221:
      if (('\t' <= lookahead && lookahead <= '\f') ||


@@ 13528,179 13567,182 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
      if (lookahead == '\r') SKIP(219)
      if (lookahead == '(') ADVANCE(11);
      if (lookahead == '*' ||
          lookahead == '+') ADVANCE(536);
          lookahead == '+') ADVANCE(534);
      if (lookahead == '\\') ADVANCE(12);
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(538);
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(536);
      END_STATE();
    case 222:
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(315);
      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(316);
      END_STATE();
    case 223:
      if (('0' <= lookahead && lookahead <= '9') ||
          lookahead == '_') ADVANCE(223);
      if (('A' <= lookahead && lookahead <= 'Z') ||
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(303);
          ('a' <= lookahead && lookahead <= 'z')) ADVANCE(304);
      END_STATE();
    case 224:
      if (eof) ADVANCE(232);
      if (('\t' <= lookahead && lookahead <= '\f') ||
          lookahead == ' ') SKIP(224)
      if (lookahead == '\r') SKIP(224)
      if (lookahead == '!') ADVANCE(312);
      if (lookahead == '"') ADVANCE(328);
      if (lookahead == '#') ADVANCE(382);
      if (lookahead == '$') ADVANCE(512);
      if (lookahead == '%') ADVANCE(476);
      if (lookahead == '&') ADVANCE(484);
      if (lookahead == '\'') ADVANCE(535);
      if (lookahead == '!') ADVANCE(313);
      if (lookahead == '"') ADVANCE(329);
      if (lookahead == '#') ADVANCE(380);
      if (lookahead == '$') ADVANCE(510);
      if (lookahead == '%')