nashorn/test/script/nosecurity/parserapi.js.EXPECTED
changeset 29407 3fd4ede1581e
child 29536 805894cd3c6b
equal deleted inserted replaced
29406:d25bb4d24a81 29407:3fd4ede1581e
       
     1 [
       
     2 {
       
     3   "endPosition": "1113",
       
     4   "kind": "COMPILATION_UNIT",
       
     5   "sourceElements": [
       
     6     {
       
     7       "endPosition": "1123",
       
     8       "kind": "VARIABLE",
       
     9       "name": "x",
       
    10       "startPosition": "1117",
       
    11       "initializer": {
       
    12         "endPosition": "1123",
       
    13         "kind": "ARRAY_LITERAL",
       
    14         "elements": [],
       
    15         "startPosition": "1121"
       
    16       }
       
    17     },
       
    18     {
       
    19       "endPosition": "1147",
       
    20       "kind": "VARIABLE",
       
    21       "name": "y",
       
    22       "startPosition": "1129",
       
    23       "initializer": {
       
    24         "endPosition": "1147",
       
    25         "kind": "ARRAY_LITERAL",
       
    26         "elements": [
       
    27           {
       
    28             "endPosition": "1135",
       
    29             "kind": "NUMBER_LITERAL",
       
    30             "value": "1",
       
    31             "startPosition": "1134"
       
    32           },
       
    33           {
       
    34             "endPosition": "1139",
       
    35             "kind": "NUMBER_LITERAL",
       
    36             "value": "43",
       
    37             "startPosition": "1137"
       
    38           },
       
    39           {
       
    40             "endPosition": "1142",
       
    41             "kind": "NUMBER_LITERAL",
       
    42             "value": "5",
       
    43             "startPosition": "1141"
       
    44           },
       
    45           {
       
    46             "endPosition": "1146",
       
    47             "kind": "NUMBER_LITERAL",
       
    48             "value": "45",
       
    49             "startPosition": "1144"
       
    50           }
       
    51         ],
       
    52         "startPosition": "1133"
       
    53       }
       
    54     },
       
    55     {
       
    56       "endPosition": "1165",
       
    57       "kind": "VARIABLE",
       
    58       "name": "z",
       
    59       "startPosition": "1153",
       
    60       "initializer": {
       
    61         "endPosition": "1165",
       
    62         "kind": "ARRAY_LITERAL",
       
    63         "elements": [
       
    64           {
       
    65             "endPosition": "1160",
       
    66             "kind": "NUMBER_LITERAL",
       
    67             "value": "34",
       
    68             "startPosition": "1158"
       
    69           },
       
    70           null,
       
    71           null,
       
    72           {
       
    73             "endPosition": "1164",
       
    74             "kind": "NUMBER_LITERAL",
       
    75             "value": "4",
       
    76             "startPosition": "1163"
       
    77           }
       
    78         ],
       
    79         "startPosition": "1157"
       
    80       }
       
    81     },
       
    82     {
       
    83       "endPosition": "1200",
       
    84       "kind": "VARIABLE",
       
    85       "name": "k",
       
    86       "startPosition": "1171",
       
    87       "initializer": {
       
    88         "endPosition": "1200",
       
    89         "kind": "ARRAY_LITERAL",
       
    90         "elements": [
       
    91           {
       
    92             "endPosition": "1179",
       
    93             "kind": "OBJECT_LITERAL",
       
    94             "startPosition": "1177",
       
    95             "properties": []
       
    96           },
       
    97           {
       
    98             "endPosition": "1189",
       
    99             "kind": "OBJECT_LITERAL",
       
   100             "startPosition": "1181",
       
   101             "properties": [
       
   102               {
       
   103                 "endPosition": "1185",
       
   104                 "kind": "PROPERTY",
       
   105                 "value": {
       
   106                   "endPosition": "1187",
       
   107                   "kind": "NUMBER_LITERAL",
       
   108                   "value": "3",
       
   109                   "startPosition": "1186"
       
   110                 },
       
   111                 "startPosition": "1183",
       
   112                 "key": {
       
   113                   "endPosition": "1184",
       
   114                   "kind": "IDENTIFIER",
       
   115                   "name": "x",
       
   116                   "startPosition": "1183"
       
   117                 }
       
   118               }
       
   119             ]
       
   120           },
       
   121           {
       
   122             "endPosition": "1197",
       
   123             "kind": "STRING_LITERAL",
       
   124             "value": "hello",
       
   125             "startPosition": "1192"
       
   126           }
       
   127         ],
       
   128         "startPosition": "1175"
       
   129       }
       
   130     }
       
   131   ],
       
   132   "sourceName": "parsertests/array_literal.js",
       
   133   "strict": "false",
       
   134   "startPosition": "1113"
       
   135 }
       
   136 ,
       
   137 {
       
   138   "endPosition": "1126",
       
   139   "kind": "COMPILATION_UNIT",
       
   140   "sourceElements": [
       
   141     {
       
   142       "expression": {
       
   143         "expression": {
       
   144           "endPosition": "1135",
       
   145           "kind": "NUMBER_LITERAL",
       
   146           "value": "314",
       
   147           "startPosition": "1132"
       
   148         },
       
   149         "endPosition": "1135",
       
   150         "kind": "ASSIGNMENT",
       
   151         "variable": {
       
   152           "endPosition": "1129",
       
   153           "kind": "IDENTIFIER",
       
   154           "name": "xyz",
       
   155           "startPosition": "1126"
       
   156         },
       
   157         "startPosition": "1126"
       
   158       },
       
   159       "endPosition": "1135",
       
   160       "kind": "EXPRESSION_STATEMENT",
       
   161       "startPosition": "1126"
       
   162     },
       
   163     {
       
   164       "expression": {
       
   165         "expression": {
       
   166           "endPosition": "1147",
       
   167           "kind": "NUMBER_LITERAL",
       
   168           "value": "314",
       
   169           "startPosition": "1144"
       
   170         },
       
   171         "endPosition": "1147",
       
   172         "kind": "PLUS_ASSIGNMENT",
       
   173         "variable": {
       
   174           "endPosition": "1140",
       
   175           "kind": "IDENTIFIER",
       
   176           "name": "xyz",
       
   177           "startPosition": "1137"
       
   178         },
       
   179         "startPosition": "1137"
       
   180       },
       
   181       "endPosition": "1147",
       
   182       "kind": "EXPRESSION_STATEMENT",
       
   183       "startPosition": "1137"
       
   184     },
       
   185     {
       
   186       "expression": {
       
   187         "expression": {
       
   188           "endPosition": "1159",
       
   189           "kind": "NUMBER_LITERAL",
       
   190           "value": "314",
       
   191           "startPosition": "1156"
       
   192         },
       
   193         "endPosition": "1159",
       
   194         "kind": "MINUS_ASSIGNMENT",
       
   195         "variable": {
       
   196           "endPosition": "1152",
       
   197           "kind": "IDENTIFIER",
       
   198           "name": "xyz",
       
   199           "startPosition": "1149"
       
   200         },
       
   201         "startPosition": "1149"
       
   202       },
       
   203       "endPosition": "1159",
       
   204       "kind": "EXPRESSION_STATEMENT",
       
   205       "startPosition": "1149"
       
   206     },
       
   207     {
       
   208       "expression": {
       
   209         "expression": {
       
   210           "endPosition": "1171",
       
   211           "kind": "NUMBER_LITERAL",
       
   212           "value": "314",
       
   213           "startPosition": "1168"
       
   214         },
       
   215         "endPosition": "1171",
       
   216         "kind": "MULTIPLY_ASSIGNMENT",
       
   217         "variable": {
       
   218           "endPosition": "1164",
       
   219           "kind": "IDENTIFIER",
       
   220           "name": "xyz",
       
   221           "startPosition": "1161"
       
   222         },
       
   223         "startPosition": "1161"
       
   224       },
       
   225       "endPosition": "1171",
       
   226       "kind": "EXPRESSION_STATEMENT",
       
   227       "startPosition": "1161"
       
   228     },
       
   229     {
       
   230       "expression": {
       
   231         "expression": {
       
   232           "endPosition": "1183",
       
   233           "kind": "NUMBER_LITERAL",
       
   234           "value": "314",
       
   235           "startPosition": "1180"
       
   236         },
       
   237         "endPosition": "1183",
       
   238         "kind": "DIVIDE_ASSIGNMENT",
       
   239         "variable": {
       
   240           "endPosition": "1176",
       
   241           "kind": "IDENTIFIER",
       
   242           "name": "xyz",
       
   243           "startPosition": "1173"
       
   244         },
       
   245         "startPosition": "1173"
       
   246       },
       
   247       "endPosition": "1183",
       
   248       "kind": "EXPRESSION_STATEMENT",
       
   249       "startPosition": "1173"
       
   250     },
       
   251     {
       
   252       "expression": {
       
   253         "expression": {
       
   254           "endPosition": "1195",
       
   255           "kind": "NUMBER_LITERAL",
       
   256           "value": "314",
       
   257           "startPosition": "1192"
       
   258         },
       
   259         "endPosition": "1195",
       
   260         "kind": "REMAINDER_ASSIGNMENT",
       
   261         "variable": {
       
   262           "endPosition": "1188",
       
   263           "kind": "IDENTIFIER",
       
   264           "name": "xyz",
       
   265           "startPosition": "1185"
       
   266         },
       
   267         "startPosition": "1185"
       
   268       },
       
   269       "endPosition": "1195",
       
   270       "kind": "EXPRESSION_STATEMENT",
       
   271       "startPosition": "1185"
       
   272     },
       
   273     {
       
   274       "expression": {
       
   275         "expression": {
       
   276           "endPosition": "1208",
       
   277           "kind": "NUMBER_LITERAL",
       
   278           "value": "314",
       
   279           "startPosition": "1205"
       
   280         },
       
   281         "endPosition": "1208",
       
   282         "kind": "LEFT_SHIFT_ASSIGNMENT",
       
   283         "variable": {
       
   284           "endPosition": "1200",
       
   285           "kind": "IDENTIFIER",
       
   286           "name": "xyz",
       
   287           "startPosition": "1197"
       
   288         },
       
   289         "startPosition": "1197"
       
   290       },
       
   291       "endPosition": "1208",
       
   292       "kind": "EXPRESSION_STATEMENT",
       
   293       "startPosition": "1197"
       
   294     },
       
   295     {
       
   296       "expression": {
       
   297         "expression": {
       
   298           "endPosition": "1221",
       
   299           "kind": "NUMBER_LITERAL",
       
   300           "value": "314",
       
   301           "startPosition": "1218"
       
   302         },
       
   303         "endPosition": "1221",
       
   304         "kind": "RIGHT_SHIFT_ASSIGNMENT",
       
   305         "variable": {
       
   306           "endPosition": "1213",
       
   307           "kind": "IDENTIFIER",
       
   308           "name": "xyz",
       
   309           "startPosition": "1210"
       
   310         },
       
   311         "startPosition": "1210"
       
   312       },
       
   313       "endPosition": "1221",
       
   314       "kind": "EXPRESSION_STATEMENT",
       
   315       "startPosition": "1210"
       
   316     },
       
   317     {
       
   318       "expression": {
       
   319         "expression": {
       
   320           "endPosition": "1235",
       
   321           "kind": "NUMBER_LITERAL",
       
   322           "value": "314",
       
   323           "startPosition": "1232"
       
   324         },
       
   325         "endPosition": "1235",
       
   326         "kind": "UNSIGNED_RIGHT_SHIFT_ASSIGNMENT",
       
   327         "variable": {
       
   328           "endPosition": "1226",
       
   329           "kind": "IDENTIFIER",
       
   330           "name": "xyz",
       
   331           "startPosition": "1223"
       
   332         },
       
   333         "startPosition": "1223"
       
   334       },
       
   335       "endPosition": "1235",
       
   336       "kind": "EXPRESSION_STATEMENT",
       
   337       "startPosition": "1223"
       
   338     },
       
   339     {
       
   340       "expression": {
       
   341         "expression": {
       
   342           "endPosition": "1247",
       
   343           "kind": "NUMBER_LITERAL",
       
   344           "value": "314",
       
   345           "startPosition": "1244"
       
   346         },
       
   347         "endPosition": "1247",
       
   348         "kind": "AND_ASSIGNMENT",
       
   349         "variable": {
       
   350           "endPosition": "1240",
       
   351           "kind": "IDENTIFIER",
       
   352           "name": "xyz",
       
   353           "startPosition": "1237"
       
   354         },
       
   355         "startPosition": "1237"
       
   356       },
       
   357       "endPosition": "1247",
       
   358       "kind": "EXPRESSION_STATEMENT",
       
   359       "startPosition": "1237"
       
   360     },
       
   361     {
       
   362       "expression": {
       
   363         "expression": {
       
   364           "endPosition": "1259",
       
   365           "kind": "NUMBER_LITERAL",
       
   366           "value": "314",
       
   367           "startPosition": "1256"
       
   368         },
       
   369         "endPosition": "1259",
       
   370         "kind": "XOR_ASSIGNMENT",
       
   371         "variable": {
       
   372           "endPosition": "1252",
       
   373           "kind": "IDENTIFIER",
       
   374           "name": "xyz",
       
   375           "startPosition": "1249"
       
   376         },
       
   377         "startPosition": "1249"
       
   378       },
       
   379       "endPosition": "1259",
       
   380       "kind": "EXPRESSION_STATEMENT",
       
   381       "startPosition": "1249"
       
   382     },
       
   383     {
       
   384       "expression": {
       
   385         "expression": {
       
   386           "endPosition": "1271",
       
   387           "kind": "NUMBER_LITERAL",
       
   388           "value": "314",
       
   389           "startPosition": "1268"
       
   390         },
       
   391         "endPosition": "1271",
       
   392         "kind": "OR_ASSIGNMENT",
       
   393         "variable": {
       
   394           "endPosition": "1264",
       
   395           "kind": "IDENTIFIER",
       
   396           "name": "xyz",
       
   397           "startPosition": "1261"
       
   398         },
       
   399         "startPosition": "1261"
       
   400       },
       
   401       "endPosition": "1271",
       
   402       "kind": "EXPRESSION_STATEMENT",
       
   403       "startPosition": "1261"
       
   404     }
       
   405   ],
       
   406   "sourceName": "parsertests/assignmentExpr.js",
       
   407   "strict": "false",
       
   408   "startPosition": "1126"
       
   409 }
       
   410 ,
       
   411 {
       
   412   "endPosition": "1116",
       
   413   "kind": "COMPILATION_UNIT",
       
   414   "sourceElements": [
       
   415     {
       
   416       "expression": {
       
   417         "leftOperand": {
       
   418           "endPosition": "1117",
       
   419           "kind": "IDENTIFIER",
       
   420           "name": "a",
       
   421           "startPosition": "1116"
       
   422         },
       
   423         "endPosition": "1121",
       
   424         "kind": "MULTIPLY",
       
   425         "rightOperand": {
       
   426           "endPosition": "1121",
       
   427           "kind": "IDENTIFIER",
       
   428           "name": "b",
       
   429           "startPosition": "1120"
       
   430         },
       
   431         "startPosition": "1116"
       
   432       },
       
   433       "endPosition": "1121",
       
   434       "kind": "EXPRESSION_STATEMENT",
       
   435       "startPosition": "1116"
       
   436     },
       
   437     {
       
   438       "expression": {
       
   439         "leftOperand": {
       
   440           "endPosition": "1123",
       
   441           "kind": "IDENTIFIER",
       
   442           "name": "a",
       
   443           "startPosition": "1122"
       
   444         },
       
   445         "endPosition": "1127",
       
   446         "kind": "DIVIDE",
       
   447         "rightOperand": {
       
   448           "endPosition": "1127",
       
   449           "kind": "IDENTIFIER",
       
   450           "name": "b",
       
   451           "startPosition": "1126"
       
   452         },
       
   453         "startPosition": "1122"
       
   454       },
       
   455       "endPosition": "1127",
       
   456       "kind": "EXPRESSION_STATEMENT",
       
   457       "startPosition": "1122"
       
   458     },
       
   459     {
       
   460       "expression": {
       
   461         "leftOperand": {
       
   462           "endPosition": "1130",
       
   463           "kind": "IDENTIFIER",
       
   464           "name": "a",
       
   465           "startPosition": "1129"
       
   466         },
       
   467         "endPosition": "1134",
       
   468         "kind": "REMAINDER",
       
   469         "rightOperand": {
       
   470           "endPosition": "1134",
       
   471           "kind": "IDENTIFIER",
       
   472           "name": "b",
       
   473           "startPosition": "1133"
       
   474         },
       
   475         "startPosition": "1129"
       
   476       },
       
   477       "endPosition": "1134",
       
   478       "kind": "EXPRESSION_STATEMENT",
       
   479       "startPosition": "1129"
       
   480     },
       
   481     {
       
   482       "expression": {
       
   483         "leftOperand": {
       
   484           "endPosition": "1137",
       
   485           "kind": "IDENTIFIER",
       
   486           "name": "a",
       
   487           "startPosition": "1136"
       
   488         },
       
   489         "endPosition": "1141",
       
   490         "kind": "PLUS",
       
   491         "rightOperand": {
       
   492           "endPosition": "1141",
       
   493           "kind": "IDENTIFIER",
       
   494           "name": "b",
       
   495           "startPosition": "1140"
       
   496         },
       
   497         "startPosition": "1136"
       
   498       },
       
   499       "endPosition": "1141",
       
   500       "kind": "EXPRESSION_STATEMENT",
       
   501       "startPosition": "1136"
       
   502     },
       
   503     {
       
   504       "expression": {
       
   505         "leftOperand": {
       
   506           "endPosition": "1144",
       
   507           "kind": "IDENTIFIER",
       
   508           "name": "a",
       
   509           "startPosition": "1143"
       
   510         },
       
   511         "endPosition": "1148",
       
   512         "kind": "MINUS",
       
   513         "rightOperand": {
       
   514           "endPosition": "1148",
       
   515           "kind": "IDENTIFIER",
       
   516           "name": "b",
       
   517           "startPosition": "1147"
       
   518         },
       
   519         "startPosition": "1143"
       
   520       },
       
   521       "endPosition": "1148",
       
   522       "kind": "EXPRESSION_STATEMENT",
       
   523       "startPosition": "1143"
       
   524     },
       
   525     {
       
   526       "expression": {
       
   527         "leftOperand": {
       
   528           "endPosition": "1151",
       
   529           "kind": "IDENTIFIER",
       
   530           "name": "a",
       
   531           "startPosition": "1150"
       
   532         },
       
   533         "endPosition": "1156",
       
   534         "kind": "LEFT_SHIFT",
       
   535         "rightOperand": {
       
   536           "endPosition": "1156",
       
   537           "kind": "IDENTIFIER",
       
   538           "name": "b",
       
   539           "startPosition": "1155"
       
   540         },
       
   541         "startPosition": "1150"
       
   542       },
       
   543       "endPosition": "1156",
       
   544       "kind": "EXPRESSION_STATEMENT",
       
   545       "startPosition": "1150"
       
   546     },
       
   547     {
       
   548       "expression": {
       
   549         "leftOperand": {
       
   550           "endPosition": "1159",
       
   551           "kind": "IDENTIFIER",
       
   552           "name": "a",
       
   553           "startPosition": "1158"
       
   554         },
       
   555         "endPosition": "1164",
       
   556         "kind": "RIGHT_SHIFT",
       
   557         "rightOperand": {
       
   558           "endPosition": "1164",
       
   559           "kind": "IDENTIFIER",
       
   560           "name": "b",
       
   561           "startPosition": "1163"
       
   562         },
       
   563         "startPosition": "1158"
       
   564       },
       
   565       "endPosition": "1164",
       
   566       "kind": "EXPRESSION_STATEMENT",
       
   567       "startPosition": "1158"
       
   568     },
       
   569     {
       
   570       "expression": {
       
   571         "leftOperand": {
       
   572           "endPosition": "1167",
       
   573           "kind": "IDENTIFIER",
       
   574           "name": "a",
       
   575           "startPosition": "1166"
       
   576         },
       
   577         "endPosition": "1173",
       
   578         "kind": "UNSIGNED_RIGHT_SHIFT",
       
   579         "rightOperand": {
       
   580           "endPosition": "1173",
       
   581           "kind": "IDENTIFIER",
       
   582           "name": "b",
       
   583           "startPosition": "1172"
       
   584         },
       
   585         "startPosition": "1166"
       
   586       },
       
   587       "endPosition": "1173",
       
   588       "kind": "EXPRESSION_STATEMENT",
       
   589       "startPosition": "1166"
       
   590     },
       
   591     {
       
   592       "expression": {
       
   593         "leftOperand": {
       
   594           "endPosition": "1176",
       
   595           "kind": "IDENTIFIER",
       
   596           "name": "a",
       
   597           "startPosition": "1175"
       
   598         },
       
   599         "endPosition": "1180",
       
   600         "kind": "LESS_THAN",
       
   601         "rightOperand": {
       
   602           "endPosition": "1180",
       
   603           "kind": "IDENTIFIER",
       
   604           "name": "b",
       
   605           "startPosition": "1179"
       
   606         },
       
   607         "startPosition": "1175"
       
   608       },
       
   609       "endPosition": "1180",
       
   610       "kind": "EXPRESSION_STATEMENT",
       
   611       "startPosition": "1175"
       
   612     },
       
   613     {
       
   614       "expression": {
       
   615         "leftOperand": {
       
   616           "endPosition": "1183",
       
   617           "kind": "IDENTIFIER",
       
   618           "name": "a",
       
   619           "startPosition": "1182"
       
   620         },
       
   621         "endPosition": "1187",
       
   622         "kind": "GREATER_THAN",
       
   623         "rightOperand": {
       
   624           "endPosition": "1187",
       
   625           "kind": "IDENTIFIER",
       
   626           "name": "b",
       
   627           "startPosition": "1186"
       
   628         },
       
   629         "startPosition": "1182"
       
   630       },
       
   631       "endPosition": "1187",
       
   632       "kind": "EXPRESSION_STATEMENT",
       
   633       "startPosition": "1182"
       
   634     },
       
   635     {
       
   636       "expression": {
       
   637         "leftOperand": {
       
   638           "endPosition": "1190",
       
   639           "kind": "IDENTIFIER",
       
   640           "name": "a",
       
   641           "startPosition": "1189"
       
   642         },
       
   643         "endPosition": "1195",
       
   644         "kind": "LESS_THAN_EQUAL",
       
   645         "rightOperand": {
       
   646           "endPosition": "1195",
       
   647           "kind": "IDENTIFIER",
       
   648           "name": "b",
       
   649           "startPosition": "1194"
       
   650         },
       
   651         "startPosition": "1189"
       
   652       },
       
   653       "endPosition": "1195",
       
   654       "kind": "EXPRESSION_STATEMENT",
       
   655       "startPosition": "1189"
       
   656     },
       
   657     {
       
   658       "expression": {
       
   659         "leftOperand": {
       
   660           "endPosition": "1198",
       
   661           "kind": "IDENTIFIER",
       
   662           "name": "a",
       
   663           "startPosition": "1197"
       
   664         },
       
   665         "endPosition": "1203",
       
   666         "kind": "GREATER_THAN_EQUAL",
       
   667         "rightOperand": {
       
   668           "endPosition": "1203",
       
   669           "kind": "IDENTIFIER",
       
   670           "name": "b",
       
   671           "startPosition": "1202"
       
   672         },
       
   673         "startPosition": "1197"
       
   674       },
       
   675       "endPosition": "1203",
       
   676       "kind": "EXPRESSION_STATEMENT",
       
   677       "startPosition": "1197"
       
   678     },
       
   679     {
       
   680       "expression": {
       
   681         "leftOperand": {
       
   682           "endPosition": "1206",
       
   683           "kind": "IDENTIFIER",
       
   684           "name": "a",
       
   685           "startPosition": "1205"
       
   686         },
       
   687         "expression": {
       
   688           "endPosition": "1206",
       
   689           "kind": "IDENTIFIER",
       
   690           "name": "a",
       
   691           "startPosition": "1205"
       
   692         },
       
   693         "endPosition": "1219",
       
   694         "kind": "INSTANCE_OF",
       
   695         "rightOperand": {
       
   696           "endPosition": "1219",
       
   697           "kind": "IDENTIFIER",
       
   698           "name": "b",
       
   699           "startPosition": "1218"
       
   700         },
       
   701         "type": {
       
   702           "endPosition": "1219",
       
   703           "kind": "IDENTIFIER",
       
   704           "name": "b",
       
   705           "startPosition": "1218"
       
   706         },
       
   707         "startPosition": "1205"
       
   708       },
       
   709       "endPosition": "1219",
       
   710       "kind": "EXPRESSION_STATEMENT",
       
   711       "startPosition": "1205"
       
   712     },
       
   713     {
       
   714       "expression": {
       
   715         "leftOperand": {
       
   716           "endPosition": "1222",
       
   717           "kind": "IDENTIFIER",
       
   718           "name": "a",
       
   719           "startPosition": "1221"
       
   720         },
       
   721         "endPosition": "1227",
       
   722         "kind": "EQUAL_TO",
       
   723         "rightOperand": {
       
   724           "endPosition": "1227",
       
   725           "kind": "IDENTIFIER",
       
   726           "name": "b",
       
   727           "startPosition": "1226"
       
   728         },
       
   729         "startPosition": "1221"
       
   730       },
       
   731       "endPosition": "1227",
       
   732       "kind": "EXPRESSION_STATEMENT",
       
   733       "startPosition": "1221"
       
   734     },
       
   735     {
       
   736       "expression": {
       
   737         "leftOperand": {
       
   738           "endPosition": "1230",
       
   739           "kind": "IDENTIFIER",
       
   740           "name": "a",
       
   741           "startPosition": "1229"
       
   742         },
       
   743         "endPosition": "1235",
       
   744         "kind": "NOT_EQUAL_TO",
       
   745         "rightOperand": {
       
   746           "endPosition": "1235",
       
   747           "kind": "IDENTIFIER",
       
   748           "name": "b",
       
   749           "startPosition": "1234"
       
   750         },
       
   751         "startPosition": "1229"
       
   752       },
       
   753       "endPosition": "1235",
       
   754       "kind": "EXPRESSION_STATEMENT",
       
   755       "startPosition": "1229"
       
   756     },
       
   757     {
       
   758       "expression": {
       
   759         "leftOperand": {
       
   760           "endPosition": "1238",
       
   761           "kind": "IDENTIFIER",
       
   762           "name": "a",
       
   763           "startPosition": "1237"
       
   764         },
       
   765         "endPosition": "1244",
       
   766         "kind": "STRICT_EQUAL_TO",
       
   767         "rightOperand": {
       
   768           "endPosition": "1244",
       
   769           "kind": "IDENTIFIER",
       
   770           "name": "b",
       
   771           "startPosition": "1243"
       
   772         },
       
   773         "startPosition": "1237"
       
   774       },
       
   775       "endPosition": "1244",
       
   776       "kind": "EXPRESSION_STATEMENT",
       
   777       "startPosition": "1237"
       
   778     },
       
   779     {
       
   780       "expression": {
       
   781         "leftOperand": {
       
   782           "endPosition": "1247",
       
   783           "kind": "IDENTIFIER",
       
   784           "name": "a",
       
   785           "startPosition": "1246"
       
   786         },
       
   787         "endPosition": "1253",
       
   788         "kind": "STRICT_NOT_EQUAL_TO",
       
   789         "rightOperand": {
       
   790           "endPosition": "1253",
       
   791           "kind": "IDENTIFIER",
       
   792           "name": "b",
       
   793           "startPosition": "1252"
       
   794         },
       
   795         "startPosition": "1246"
       
   796       },
       
   797       "endPosition": "1253",
       
   798       "kind": "EXPRESSION_STATEMENT",
       
   799       "startPosition": "1246"
       
   800     },
       
   801     {
       
   802       "expression": {
       
   803         "leftOperand": {
       
   804           "endPosition": "1256",
       
   805           "kind": "IDENTIFIER",
       
   806           "name": "a",
       
   807           "startPosition": "1255"
       
   808         },
       
   809         "endPosition": "1260",
       
   810         "kind": "AND",
       
   811         "rightOperand": {
       
   812           "endPosition": "1260",
       
   813           "kind": "IDENTIFIER",
       
   814           "name": "b",
       
   815           "startPosition": "1259"
       
   816         },
       
   817         "startPosition": "1255"
       
   818       },
       
   819       "endPosition": "1260",
       
   820       "kind": "EXPRESSION_STATEMENT",
       
   821       "startPosition": "1255"
       
   822     },
       
   823     {
       
   824       "expression": {
       
   825         "leftOperand": {
       
   826           "endPosition": "1263",
       
   827           "kind": "IDENTIFIER",
       
   828           "name": "a",
       
   829           "startPosition": "1262"
       
   830         },
       
   831         "endPosition": "1267",
       
   832         "kind": "XOR",
       
   833         "rightOperand": {
       
   834           "endPosition": "1267",
       
   835           "kind": "IDENTIFIER",
       
   836           "name": "b",
       
   837           "startPosition": "1266"
       
   838         },
       
   839         "startPosition": "1262"
       
   840       },
       
   841       "endPosition": "1267",
       
   842       "kind": "EXPRESSION_STATEMENT",
       
   843       "startPosition": "1262"
       
   844     },
       
   845     {
       
   846       "expression": {
       
   847         "leftOperand": {
       
   848           "endPosition": "1270",
       
   849           "kind": "IDENTIFIER",
       
   850           "name": "a",
       
   851           "startPosition": "1269"
       
   852         },
       
   853         "endPosition": "1274",
       
   854         "kind": "OR",
       
   855         "rightOperand": {
       
   856           "endPosition": "1274",
       
   857           "kind": "IDENTIFIER",
       
   858           "name": "b",
       
   859           "startPosition": "1273"
       
   860         },
       
   861         "startPosition": "1269"
       
   862       },
       
   863       "endPosition": "1274",
       
   864       "kind": "EXPRESSION_STATEMENT",
       
   865       "startPosition": "1269"
       
   866     },
       
   867     {
       
   868       "expression": {
       
   869         "leftOperand": {
       
   870           "endPosition": "1277",
       
   871           "kind": "IDENTIFIER",
       
   872           "name": "a",
       
   873           "startPosition": "1276"
       
   874         },
       
   875         "endPosition": "1282",
       
   876         "kind": "CONDITIONAL_AND",
       
   877         "rightOperand": {
       
   878           "endPosition": "1282",
       
   879           "kind": "IDENTIFIER",
       
   880           "name": "b",
       
   881           "startPosition": "1281"
       
   882         },
       
   883         "startPosition": "1276"
       
   884       },
       
   885       "endPosition": "1282",
       
   886       "kind": "EXPRESSION_STATEMENT",
       
   887       "startPosition": "1276"
       
   888     },
       
   889     {
       
   890       "expression": {
       
   891         "leftOperand": {
       
   892           "endPosition": "1285",
       
   893           "kind": "IDENTIFIER",
       
   894           "name": "a",
       
   895           "startPosition": "1284"
       
   896         },
       
   897         "endPosition": "1290",
       
   898         "kind": "CONDITIONAL_OR",
       
   899         "rightOperand": {
       
   900           "endPosition": "1290",
       
   901           "kind": "IDENTIFIER",
       
   902           "name": "b",
       
   903           "startPosition": "1289"
       
   904         },
       
   905         "startPosition": "1284"
       
   906       },
       
   907       "endPosition": "1290",
       
   908       "kind": "EXPRESSION_STATEMENT",
       
   909       "startPosition": "1284"
       
   910     }
       
   911   ],
       
   912   "sourceName": "parsertests/binaryExpr.js",
       
   913   "strict": "false",
       
   914   "startPosition": "1116"
       
   915 }
       
   916 ,
       
   917 {
       
   918   "endPosition": "1117",
       
   919   "kind": "COMPILATION_UNIT",
       
   920   "sourceElements": [
       
   921     {
       
   922       "endPosition": "1119",
       
   923       "kind": "BLOCK",
       
   924       "statements": [],
       
   925       "startPosition": "1117"
       
   926     },
       
   927     {
       
   928       "endPosition": "1139",
       
   929       "kind": "BLOCK",
       
   930       "statements": [
       
   931         {
       
   932           "expression": {
       
   933             "endPosition": "1136",
       
   934             "kind": "FUNCTION_INVOCATION",
       
   935             "functionSelect": {
       
   936               "endPosition": "1127",
       
   937               "kind": "IDENTIFIER",
       
   938               "name": "print",
       
   939               "startPosition": "1122"
       
   940             },
       
   941             "arguments": [
       
   942               {
       
   943                 "endPosition": "1134",
       
   944                 "kind": "STRING_LITERAL",
       
   945                 "value": "hello",
       
   946                 "startPosition": "1129"
       
   947               }
       
   948             ],
       
   949             "startPosition": "1122"
       
   950           },
       
   951           "endPosition": "1136",
       
   952           "kind": "EXPRESSION_STATEMENT",
       
   953           "startPosition": "1122"
       
   954         }
       
   955       ],
       
   956       "startPosition": "1120"
       
   957     }
       
   958   ],
       
   959   "sourceName": "parsertests/block.js",
       
   960   "strict": "false",
       
   961   "startPosition": "1117"
       
   962 }
       
   963 ,
       
   964 {
       
   965   "endPosition": "1117",
       
   966   "kind": "COMPILATION_UNIT",
       
   967   "sourceElements": [
       
   968     {
       
   969       "condition": {
       
   970         "endPosition": "1128",
       
   971         "kind": "BOOLEAN_LITERAL",
       
   972         "value": "true",
       
   973         "startPosition": "1124"
       
   974       },
       
   975       "endPosition": "1140",
       
   976       "kind": "WHILE_LOOP",
       
   977       "statement": {
       
   978         "endPosition": "1140",
       
   979         "kind": "BLOCK",
       
   980         "statements": [
       
   981           {
       
   982             "endPosition": "1138",
       
   983             "kind": "BREAK",
       
   984             "startPosition": "1132"
       
   985           }
       
   986         ],
       
   987         "startPosition": "1130"
       
   988       },
       
   989       "startPosition": "1117"
       
   990     },
       
   991     {
       
   992       "endPosition": "1179",
       
   993       "kind": "LABELED_STATEMENT",
       
   994       "statement": {
       
   995         "endPosition": "1179",
       
   996         "kind": "BLOCK",
       
   997         "statements": [
       
   998           {
       
   999             "condition": {
       
  1000               "endPosition": "1161",
       
  1001               "kind": "BOOLEAN_LITERAL",
       
  1002               "value": "true",
       
  1003               "startPosition": "1157"
       
  1004             },
       
  1005             "endPosition": "1177",
       
  1006             "kind": "WHILE_LOOP",
       
  1007             "statement": {
       
  1008               "endPosition": "1177",
       
  1009               "kind": "BLOCK",
       
  1010               "statements": [
       
  1011                 {
       
  1012                   "endPosition": "1175",
       
  1013                   "kind": "BREAK",
       
  1014                   "label": "loop",
       
  1015                   "startPosition": "1165"
       
  1016                 }
       
  1017               ],
       
  1018               "startPosition": "1163"
       
  1019             },
       
  1020             "startPosition": "1150"
       
  1021           }
       
  1022         ],
       
  1023         "startPosition": "1148"
       
  1024       },
       
  1025       "label": "loop",
       
  1026       "startPosition": "1142"
       
  1027     },
       
  1028     {
       
  1029       "endPosition": "1214",
       
  1030       "kind": "LABELED_STATEMENT",
       
  1031       "statement": {
       
  1032         "endPosition": "1214",
       
  1033         "kind": "BLOCK",
       
  1034         "statements": [
       
  1035           {
       
  1036             "endPosition": "1212",
       
  1037             "kind": "FOR_LOOP",
       
  1038             "statement": {
       
  1039               "endPosition": "1212",
       
  1040               "kind": "BLOCK",
       
  1041               "statements": [
       
  1042                 {
       
  1043                   "endPosition": "1210",
       
  1044                   "kind": "BREAK",
       
  1045                   "label": "loop",
       
  1046                   "startPosition": "1200"
       
  1047                 }
       
  1048               ],
       
  1049               "startPosition": "1198"
       
  1050             },
       
  1051             "startPosition": "1189"
       
  1052           }
       
  1053         ],
       
  1054         "startPosition": "1187"
       
  1055       },
       
  1056       "label": "loop",
       
  1057       "startPosition": "1181"
       
  1058     }
       
  1059   ],
       
  1060   "sourceName": "parsertests/breakStat.js",
       
  1061   "strict": "false",
       
  1062   "startPosition": "1117"
       
  1063 }
       
  1064 ,
       
  1065 {
       
  1066   "endPosition": "1117",
       
  1067   "kind": "COMPILATION_UNIT",
       
  1068   "sourceElements": [
       
  1069     {
       
  1070       "expression": {
       
  1071         "condition": {
       
  1072           "endPosition": "1118",
       
  1073           "kind": "IDENTIFIER",
       
  1074           "name": "a",
       
  1075           "startPosition": "1117"
       
  1076         },
       
  1077         "endPosition": "1125",
       
  1078         "kind": "CONDITIONAL_EXPRESSION",
       
  1079         "trueExpression": {
       
  1080           "endPosition": "1121",
       
  1081           "kind": "IDENTIFIER",
       
  1082           "name": "b",
       
  1083           "startPosition": "1120"
       
  1084         },
       
  1085         "falseExpression": {
       
  1086           "endPosition": "1125",
       
  1087           "kind": "IDENTIFIER",
       
  1088           "name": "c",
       
  1089           "startPosition": "1124"
       
  1090         },
       
  1091         "startPosition": "1118"
       
  1092       },
       
  1093       "endPosition": "1125",
       
  1094       "kind": "EXPRESSION_STATEMENT",
       
  1095       "startPosition": "1117"
       
  1096     }
       
  1097   ],
       
  1098   "sourceName": "parsertests/condExpr.js",
       
  1099   "strict": "false",
       
  1100   "startPosition": "1117"
       
  1101 }
       
  1102 ,
       
  1103 {
       
  1104   "endPosition": "1120",
       
  1105   "kind": "COMPILATION_UNIT",
       
  1106   "sourceElements": [
       
  1107     {
       
  1108       "condition": {
       
  1109         "endPosition": "1131",
       
  1110         "kind": "BOOLEAN_LITERAL",
       
  1111         "value": "true",
       
  1112         "startPosition": "1127"
       
  1113       },
       
  1114       "endPosition": "1146",
       
  1115       "kind": "WHILE_LOOP",
       
  1116       "statement": {
       
  1117         "endPosition": "1146",
       
  1118         "kind": "BLOCK",
       
  1119         "statements": [
       
  1120           {
       
  1121             "endPosition": "1144",
       
  1122             "kind": "CONTINUE",
       
  1123             "startPosition": "1135"
       
  1124           }
       
  1125         ],
       
  1126         "startPosition": "1133"
       
  1127       },
       
  1128       "startPosition": "1120"
       
  1129     },
       
  1130     {
       
  1131       "endPosition": "1191",
       
  1132       "kind": "LABELED_STATEMENT",
       
  1133       "statement": {
       
  1134         "endPosition": "1191",
       
  1135         "kind": "BLOCK",
       
  1136         "statements": [
       
  1137           {
       
  1138             "condition": {
       
  1139               "endPosition": "1168",
       
  1140               "kind": "BOOLEAN_LITERAL",
       
  1141               "value": "true",
       
  1142               "startPosition": "1164"
       
  1143             },
       
  1144             "endPosition": "1189",
       
  1145             "kind": "WHILE_LOOP",
       
  1146             "statement": {
       
  1147               "endPosition": "1189",
       
  1148               "kind": "BLOCK",
       
  1149               "statements": [
       
  1150                 {
       
  1151                   "endPosition": "1187",
       
  1152                   "kind": "CONTINUE",
       
  1153                   "label": "begin",
       
  1154                   "startPosition": "1172"
       
  1155                 }
       
  1156               ],
       
  1157               "startPosition": "1170"
       
  1158             },
       
  1159             "startPosition": "1157"
       
  1160           }
       
  1161         ],
       
  1162         "startPosition": "1155"
       
  1163       },
       
  1164       "label": "begin",
       
  1165       "startPosition": "1148"
       
  1166     },
       
  1167     {
       
  1168       "endPosition": "1231",
       
  1169       "kind": "LABELED_STATEMENT",
       
  1170       "statement": {
       
  1171         "endPosition": "1231",
       
  1172         "kind": "BLOCK",
       
  1173         "statements": [
       
  1174           {
       
  1175             "endPosition": "1229",
       
  1176             "kind": "FOR_LOOP",
       
  1177             "statement": {
       
  1178               "endPosition": "1229",
       
  1179               "kind": "BLOCK",
       
  1180               "statements": [
       
  1181                 {
       
  1182                   "endPosition": "1227",
       
  1183                   "kind": "CONTINUE",
       
  1184                   "label": "start",
       
  1185                   "startPosition": "1212"
       
  1186                 }
       
  1187               ],
       
  1188               "startPosition": "1210"
       
  1189             },
       
  1190             "startPosition": "1202"
       
  1191           }
       
  1192         ],
       
  1193         "startPosition": "1200"
       
  1194       },
       
  1195       "label": "start",
       
  1196       "startPosition": "1193"
       
  1197     }
       
  1198   ],
       
  1199   "sourceName": "parsertests/continueStat.js",
       
  1200   "strict": "false",
       
  1201   "startPosition": "1120"
       
  1202 }
       
  1203 ,
       
  1204 {
       
  1205   "endPosition": "1118",
       
  1206   "kind": "COMPILATION_UNIT",
       
  1207   "sourceElements": [
       
  1208     {
       
  1209       "endPosition": "1127",
       
  1210       "kind": "DEBUGGER",
       
  1211       "startPosition": "1118"
       
  1212     }
       
  1213   ],
       
  1214   "sourceName": "parsertests/debuggerStat.js",
       
  1215   "strict": "false",
       
  1216   "startPosition": "1118"
       
  1217 }
       
  1218 ,
       
  1219 {
       
  1220   "endPosition": "1137",
       
  1221   "kind": "COMPILATION_UNIT",
       
  1222   "sourceElements": [
       
  1223     {
       
  1224       "endPosition": "1172",
       
  1225       "kind": "FUNCTION",
       
  1226       "name": "hello",
       
  1227       "body": {
       
  1228         "endPosition": "1170",
       
  1229         "kind": "BLOCK",
       
  1230         "statements": [
       
  1231           {
       
  1232             "expression": {
       
  1233               "endPosition": "1170",
       
  1234               "kind": "FUNCTION_INVOCATION",
       
  1235               "functionSelect": {
       
  1236                 "endPosition": "1161",
       
  1237                 "kind": "IDENTIFIER",
       
  1238                 "name": "print",
       
  1239                 "startPosition": "1156"
       
  1240               },
       
  1241               "arguments": [
       
  1242                 {
       
  1243                   "endPosition": "1168",
       
  1244                   "kind": "STRING_LITERAL",
       
  1245                   "value": "hello",
       
  1246                   "startPosition": "1163"
       
  1247                 }
       
  1248               ],
       
  1249               "startPosition": "1156"
       
  1250             },
       
  1251             "endPosition": "1170",
       
  1252             "kind": "EXPRESSION_STATEMENT",
       
  1253             "startPosition": "1156"
       
  1254           }
       
  1255         ],
       
  1256         "startPosition": "1154"
       
  1257       },
       
  1258       "strict": "false",
       
  1259       "startPosition": "1137",
       
  1260       "parameters": []
       
  1261     },
       
  1262     {
       
  1263       "endPosition": "1203",
       
  1264       "kind": "FUNCTION",
       
  1265       "name": "hello",
       
  1266       "body": {
       
  1267         "endPosition": "1201",
       
  1268         "kind": "BLOCK",
       
  1269         "statements": [
       
  1270           {
       
  1271             "expression": {
       
  1272               "endPosition": "1201",
       
  1273               "kind": "FUNCTION_INVOCATION",
       
  1274               "functionSelect": {
       
  1275                 "endPosition": "1198",
       
  1276                 "kind": "IDENTIFIER",
       
  1277                 "name": "print",
       
  1278                 "startPosition": "1193"
       
  1279               },
       
  1280               "arguments": [
       
  1281                 {
       
  1282                   "endPosition": "1200",
       
  1283                   "kind": "IDENTIFIER",
       
  1284                   "name": "a",
       
  1285                   "startPosition": "1199"
       
  1286                 }
       
  1287               ],
       
  1288               "startPosition": "1193"
       
  1289             },
       
  1290             "endPosition": "1201",
       
  1291             "kind": "EXPRESSION_STATEMENT",
       
  1292             "startPosition": "1193"
       
  1293           }
       
  1294         ],
       
  1295         "startPosition": "1191"
       
  1296       },
       
  1297       "strict": "false",
       
  1298       "startPosition": "1173",
       
  1299       "parameters": [
       
  1300         {
       
  1301           "endPosition": "1189",
       
  1302           "kind": "IDENTIFIER",
       
  1303           "name": "a",
       
  1304           "startPosition": "1188"
       
  1305         }
       
  1306       ]
       
  1307     },
       
  1308     {
       
  1309       "endPosition": "1240",
       
  1310       "kind": "FUNCTION",
       
  1311       "name": "hello",
       
  1312       "body": {
       
  1313         "endPosition": "1238",
       
  1314         "kind": "BLOCK",
       
  1315         "statements": [
       
  1316           {
       
  1317             "expression": {
       
  1318               "endPosition": "1238",
       
  1319               "kind": "FUNCTION_INVOCATION",
       
  1320               "functionSelect": {
       
  1321                 "endPosition": "1232",
       
  1322                 "kind": "IDENTIFIER",
       
  1323                 "name": "print",
       
  1324                 "startPosition": "1227"
       
  1325               },
       
  1326               "arguments": [
       
  1327                 {
       
  1328                   "endPosition": "1234",
       
  1329                   "kind": "IDENTIFIER",
       
  1330                   "name": "a",
       
  1331                   "startPosition": "1233"
       
  1332                 },
       
  1333                 {
       
  1334                   "endPosition": "1237",
       
  1335                   "kind": "IDENTIFIER",
       
  1336                   "name": "b",
       
  1337                   "startPosition": "1236"
       
  1338                 }
       
  1339               ],
       
  1340               "startPosition": "1227"
       
  1341             },
       
  1342             "endPosition": "1238",
       
  1343             "kind": "EXPRESSION_STATEMENT",
       
  1344             "startPosition": "1227"
       
  1345           }
       
  1346         ],
       
  1347         "startPosition": "1225"
       
  1348       },
       
  1349       "strict": "false",
       
  1350       "startPosition": "1204",
       
  1351       "parameters": [
       
  1352         {
       
  1353           "endPosition": "1220",
       
  1354           "kind": "IDENTIFIER",
       
  1355           "name": "a",
       
  1356           "startPosition": "1219"
       
  1357         },
       
  1358         {
       
  1359           "endPosition": "1223",
       
  1360           "kind": "IDENTIFIER",
       
  1361           "name": "b",
       
  1362           "startPosition": "1222"
       
  1363         }
       
  1364       ]
       
  1365     },
       
  1366     {
       
  1367       "endPosition": "1380",
       
  1368       "kind": "FUNCTION",
       
  1369       "name": "test",
       
  1370       "body": {
       
  1371         "endPosition": "1377",
       
  1372         "kind": "BLOCK",
       
  1373         "statements": [
       
  1374           {
       
  1375             "expression": {
       
  1376               "endPosition": "1377",
       
  1377               "kind": "STRING_LITERAL",
       
  1378               "value": "use strict",
       
  1379               "startPosition": "1367"
       
  1380             },
       
  1381             "endPosition": "1377",
       
  1382             "kind": "EXPRESSION_STATEMENT",
       
  1383             "startPosition": "1367"
       
  1384           }
       
  1385         ],
       
  1386         "startPosition": "1364"
       
  1387       },
       
  1388       "strict": "true",
       
  1389       "startPosition": "1348",
       
  1390       "parameters": []
       
  1391     },
       
  1392     {
       
  1393       "endPosition": "1282",
       
  1394       "kind": "VARIABLE",
       
  1395       "name": "hello",
       
  1396       "startPosition": "1245",
       
  1397       "initializer": {
       
  1398         "endPosition": "1264",
       
  1399         "kind": "FUNCTION_EXPRESSION",
       
  1400         "body": {
       
  1401           "endPosition": "1280",
       
  1402           "kind": "BLOCK",
       
  1403           "statements": [
       
  1404             {
       
  1405               "expression": {
       
  1406                 "endPosition": "1280",
       
  1407                 "kind": "FUNCTION_INVOCATION",
       
  1408                 "functionSelect": {
       
  1409                   "endPosition": "1271",
       
  1410                   "kind": "IDENTIFIER",
       
  1411                   "name": "print",
       
  1412                   "startPosition": "1266"
       
  1413                 },
       
  1414                 "arguments": [
       
  1415                   {
       
  1416                     "endPosition": "1278",
       
  1417                     "kind": "STRING_LITERAL",
       
  1418                     "value": "hello",
       
  1419                     "startPosition": "1273"
       
  1420                   }
       
  1421                 ],
       
  1422                 "startPosition": "1266"
       
  1423               },
       
  1424               "endPosition": "1280",
       
  1425               "kind": "EXPRESSION_STATEMENT",
       
  1426               "startPosition": "1266"
       
  1427             }
       
  1428           ],
       
  1429           "startPosition": "1264"
       
  1430         },
       
  1431         "strict": "false",
       
  1432         "startPosition": "1264",
       
  1433         "parameters": []
       
  1434       }
       
  1435     },
       
  1436     {
       
  1437       "endPosition": "1331",
       
  1438       "kind": "VARIABLE",
       
  1439       "name": "hello",
       
  1440       "startPosition": "1288",
       
  1441       "initializer": {
       
  1442         "endPosition": "1313",
       
  1443         "kind": "FUNCTION_EXPRESSION",
       
  1444         "name": "hello",
       
  1445         "body": {
       
  1446           "endPosition": "1329",
       
  1447           "kind": "BLOCK",
       
  1448           "statements": [
       
  1449             {
       
  1450               "expression": {
       
  1451                 "endPosition": "1329",
       
  1452                 "kind": "FUNCTION_INVOCATION",
       
  1453                 "functionSelect": {
       
  1454                   "endPosition": "1320",
       
  1455                   "kind": "IDENTIFIER",
       
  1456                   "name": "print",
       
  1457                   "startPosition": "1315"
       
  1458                 },
       
  1459                 "arguments": [
       
  1460                   {
       
  1461                     "endPosition": "1327",
       
  1462                     "kind": "STRING_LITERAL",
       
  1463                     "value": "hello",
       
  1464                     "startPosition": "1322"
       
  1465                   }
       
  1466                 ],
       
  1467                 "startPosition": "1315"
       
  1468               },
       
  1469               "endPosition": "1329",
       
  1470               "kind": "EXPRESSION_STATEMENT",
       
  1471               "startPosition": "1315"
       
  1472             }
       
  1473           ],
       
  1474           "startPosition": "1313"
       
  1475         },
       
  1476         "strict": "false",
       
  1477         "startPosition": "1313",
       
  1478         "parameters": []
       
  1479       }
       
  1480     },
       
  1481     {
       
  1482       "expression": {
       
  1483         "endPosition": "1344",
       
  1484         "kind": "FUNCTION_EXPRESSION",
       
  1485         "body": {
       
  1486           "endPosition": "1345",
       
  1487           "kind": "BLOCK",
       
  1488           "statements": [],
       
  1489           "startPosition": "1344"
       
  1490         },
       
  1491         "strict": "false",
       
  1492         "startPosition": "1344",
       
  1493         "parameters": []
       
  1494       },
       
  1495       "endPosition": "1347",
       
  1496       "kind": "EXPRESSION_STATEMENT",
       
  1497       "startPosition": "1333"
       
  1498     }
       
  1499   ],
       
  1500   "sourceName": "parsertests/functions.js",
       
  1501   "strict": "false",
       
  1502   "startPosition": "1137"
       
  1503 }
       
  1504 ,
       
  1505 {
       
  1506   "endPosition": "1114",
       
  1507   "kind": "COMPILATION_UNIT",
       
  1508   "sourceElements": [
       
  1509     {
       
  1510       "condition": {
       
  1511         "endPosition": "1120",
       
  1512         "kind": "IDENTIFIER",
       
  1513         "name": "js",
       
  1514         "startPosition": "1118"
       
  1515       },
       
  1516       "endPosition": "1135",
       
  1517       "kind": "IF",
       
  1518       "startPosition": "1114",
       
  1519       "thenStatement": {
       
  1520         "endPosition": "1135",
       
  1521         "kind": "BLOCK",
       
  1522         "statements": [
       
  1523           {
       
  1524             "expression": {
       
  1525               "endPosition": "1133",
       
  1526               "kind": "FUNCTION_INVOCATION",
       
  1527               "functionSelect": {
       
  1528                 "endPosition": "1131",
       
  1529                 "kind": "IDENTIFIER",
       
  1530                 "name": "nashorn",
       
  1531                 "startPosition": "1124"
       
  1532               },
       
  1533               "arguments": [],
       
  1534               "startPosition": "1124"
       
  1535             },
       
  1536             "endPosition": "1133",
       
  1537             "kind": "EXPRESSION_STATEMENT",
       
  1538             "startPosition": "1124"
       
  1539           }
       
  1540         ],
       
  1541         "startPosition": "1122"
       
  1542       }
       
  1543     },
       
  1544     {
       
  1545       "condition": {
       
  1546         "endPosition": "1143",
       
  1547         "kind": "IDENTIFIER",
       
  1548         "name": "js",
       
  1549         "startPosition": "1141"
       
  1550       },
       
  1551       "elseStatement": {
       
  1552         "endPosition": "1174",
       
  1553         "kind": "BLOCK",
       
  1554         "statements": [
       
  1555           {
       
  1556             "expression": {
       
  1557               "endPosition": "1172",
       
  1558               "kind": "FUNCTION_INVOCATION",
       
  1559               "functionSelect": {
       
  1560                 "endPosition": "1170",
       
  1561                 "kind": "IDENTIFIER",
       
  1562                 "name": "java",
       
  1563                 "startPosition": "1166"
       
  1564               },
       
  1565               "arguments": [],
       
  1566               "startPosition": "1166"
       
  1567             },
       
  1568             "endPosition": "1172",
       
  1569             "kind": "EXPRESSION_STATEMENT",
       
  1570             "startPosition": "1166"
       
  1571           }
       
  1572         ],
       
  1573         "startPosition": "1164"
       
  1574       },
       
  1575       "endPosition": "1174",
       
  1576       "kind": "IF",
       
  1577       "startPosition": "1137",
       
  1578       "thenStatement": {
       
  1579         "endPosition": "1158",
       
  1580         "kind": "BLOCK",
       
  1581         "statements": [
       
  1582           {
       
  1583             "expression": {
       
  1584               "endPosition": "1156",
       
  1585               "kind": "FUNCTION_INVOCATION",
       
  1586               "functionSelect": {
       
  1587                 "endPosition": "1154",
       
  1588                 "kind": "IDENTIFIER",
       
  1589                 "name": "nashorn",
       
  1590                 "startPosition": "1147"
       
  1591               },
       
  1592               "arguments": [],
       
  1593               "startPosition": "1147"
       
  1594             },
       
  1595             "endPosition": "1156",
       
  1596             "kind": "EXPRESSION_STATEMENT",
       
  1597             "startPosition": "1147"
       
  1598           }
       
  1599         ],
       
  1600         "startPosition": "1145"
       
  1601       }
       
  1602     }
       
  1603   ],
       
  1604   "sourceName": "parsertests/ifStat.js",
       
  1605   "strict": "false",
       
  1606   "startPosition": "1114"
       
  1607 }
       
  1608 ,
       
  1609 {
       
  1610   "endPosition": "1113",
       
  1611   "kind": "COMPILATION_UNIT",
       
  1612   "sourceElements": [
       
  1613     {
       
  1614       "endPosition": "1144",
       
  1615       "kind": "LABELED_STATEMENT",
       
  1616       "statement": {
       
  1617         "endPosition": "1144",
       
  1618         "kind": "BLOCK",
       
  1619         "statements": [
       
  1620           {
       
  1621             "endPosition": "1142",
       
  1622             "kind": "FOR_LOOP",
       
  1623             "statement": {
       
  1624               "endPosition": "1142",
       
  1625               "kind": "BREAK",
       
  1626               "label": "begin",
       
  1627               "startPosition": "1131"
       
  1628             },
       
  1629             "startPosition": "1122"
       
  1630           }
       
  1631         ],
       
  1632         "startPosition": "1120"
       
  1633       },
       
  1634       "label": "begin",
       
  1635       "startPosition": "1113"
       
  1636     },
       
  1637     {
       
  1638       "endPosition": "1181",
       
  1639       "kind": "LABELED_STATEMENT",
       
  1640       "statement": {
       
  1641         "endPosition": "1181",
       
  1642         "kind": "BLOCK",
       
  1643         "statements": [
       
  1644           {
       
  1645             "condition": {
       
  1646               "endPosition": "1166",
       
  1647               "kind": "BOOLEAN_LITERAL",
       
  1648               "value": "true",
       
  1649               "startPosition": "1162"
       
  1650             },
       
  1651             "endPosition": "1179",
       
  1652             "kind": "WHILE_LOOP",
       
  1653             "statement": {
       
  1654               "endPosition": "1179",
       
  1655               "kind": "BREAK",
       
  1656               "label": "begin",
       
  1657               "startPosition": "1168"
       
  1658             },
       
  1659             "startPosition": "1155"
       
  1660           }
       
  1661         ],
       
  1662         "startPosition": "1153"
       
  1663       },
       
  1664       "label": "begin",
       
  1665       "startPosition": "1146"
       
  1666     }
       
  1667   ],
       
  1668   "sourceName": "parsertests/labelledStat.js",
       
  1669   "strict": "false",
       
  1670   "startPosition": "1113"
       
  1671 }
       
  1672 ,
       
  1673 {
       
  1674   "endPosition": "1125",
       
  1675   "kind": "COMPILATION_UNIT",
       
  1676   "sourceElements": [
       
  1677     {
       
  1678       "expression": {
       
  1679         "expression": {
       
  1680           "endPosition": "1126",
       
  1681           "kind": "IDENTIFIER",
       
  1682           "name": "a",
       
  1683           "startPosition": "1125"
       
  1684         },
       
  1685         "endPosition": "1129",
       
  1686         "kind": "ARRAY_ACCESS",
       
  1687         "index": {
       
  1688           "endPosition": "1128",
       
  1689           "kind": "NUMBER_LITERAL",
       
  1690           "value": "3",
       
  1691           "startPosition": "1127"
       
  1692         },
       
  1693         "startPosition": "1125"
       
  1694       },
       
  1695       "endPosition": "1129",
       
  1696       "kind": "EXPRESSION_STATEMENT",
       
  1697       "startPosition": "1125"
       
  1698     },
       
  1699     {
       
  1700       "expression": {
       
  1701         "expression": {
       
  1702           "endPosition": "1132",
       
  1703           "kind": "IDENTIFIER",
       
  1704           "name": "a",
       
  1705           "startPosition": "1131"
       
  1706         },
       
  1707         "endPosition": "1135",
       
  1708         "kind": "ARRAY_ACCESS",
       
  1709         "index": {
       
  1710           "endPosition": "1134",
       
  1711           "kind": "IDENTIFIER",
       
  1712           "name": "b",
       
  1713           "startPosition": "1133"
       
  1714         },
       
  1715         "startPosition": "1131"
       
  1716       },
       
  1717       "endPosition": "1135",
       
  1718       "kind": "EXPRESSION_STATEMENT",
       
  1719       "startPosition": "1131"
       
  1720     },
       
  1721     {
       
  1722       "expression": {
       
  1723         "expression": {
       
  1724           "endPosition": "1138",
       
  1725           "kind": "IDENTIFIER",
       
  1726           "name": "a",
       
  1727           "startPosition": "1137"
       
  1728         },
       
  1729         "endPosition": "1145",
       
  1730         "kind": "ARRAY_ACCESS",
       
  1731         "index": {
       
  1732           "endPosition": "1143",
       
  1733           "kind": "STRING_LITERAL",
       
  1734           "value": "foo",
       
  1735           "startPosition": "1140"
       
  1736         },
       
  1737         "startPosition": "1137"
       
  1738       },
       
  1739       "endPosition": "1145",
       
  1740       "kind": "EXPRESSION_STATEMENT",
       
  1741       "startPosition": "1137"
       
  1742     },
       
  1743     {
       
  1744       "expression": {
       
  1745         "identifier": "foo",
       
  1746         "expression": {
       
  1747           "endPosition": "1150",
       
  1748           "kind": "IDENTIFIER",
       
  1749           "name": "obj",
       
  1750           "startPosition": "1147"
       
  1751         },
       
  1752         "endPosition": "1154",
       
  1753         "kind": "MEMBER_SELECT",
       
  1754         "startPosition": "1147"
       
  1755       },
       
  1756       "endPosition": "1154",
       
  1757       "kind": "EXPRESSION_STATEMENT",
       
  1758       "startPosition": "1147"
       
  1759     },
       
  1760     {
       
  1761       "expression": {
       
  1762         "identifier": "bar",
       
  1763         "expression": {
       
  1764           "identifier": "foo",
       
  1765           "expression": {
       
  1766             "endPosition": "1159",
       
  1767             "kind": "IDENTIFIER",
       
  1768             "name": "obj",
       
  1769             "startPosition": "1156"
       
  1770           },
       
  1771           "endPosition": "1163",
       
  1772           "kind": "MEMBER_SELECT",
       
  1773           "startPosition": "1156"
       
  1774         },
       
  1775         "endPosition": "1167",
       
  1776         "kind": "MEMBER_SELECT",
       
  1777         "startPosition": "1156"
       
  1778       },
       
  1779       "endPosition": "1167",
       
  1780       "kind": "EXPRESSION_STATEMENT",
       
  1781       "startPosition": "1156"
       
  1782     },
       
  1783     {
       
  1784       "expression": {
       
  1785         "constructorExpression": {
       
  1786           "endPosition": "1177",
       
  1787           "kind": "FUNCTION_INVOCATION",
       
  1788           "functionSelect": {
       
  1789             "endPosition": "1177",
       
  1790             "kind": "IDENTIFIER",
       
  1791             "name": "Type",
       
  1792             "startPosition": "1173"
       
  1793           },
       
  1794           "arguments": [],
       
  1795           "startPosition": "1173"
       
  1796         },
       
  1797         "endPosition": "1177",
       
  1798         "kind": "NEW",
       
  1799         "startPosition": "1169"
       
  1800       },
       
  1801       "endPosition": "1177",
       
  1802       "kind": "EXPRESSION_STATEMENT",
       
  1803       "startPosition": "1169"
       
  1804     },
       
  1805     {
       
  1806       "expression": {
       
  1807         "constructorExpression": {
       
  1808           "endPosition": "1189",
       
  1809           "kind": "FUNCTION_INVOCATION",
       
  1810           "functionSelect": {
       
  1811             "endPosition": "1187",
       
  1812             "kind": "IDENTIFIER",
       
  1813             "name": "Type",
       
  1814             "startPosition": "1183"
       
  1815           },
       
  1816           "arguments": [],
       
  1817           "startPosition": "1183"
       
  1818         },
       
  1819         "endPosition": "1189",
       
  1820         "kind": "NEW",
       
  1821         "startPosition": "1179"
       
  1822       },
       
  1823       "endPosition": "1189",
       
  1824       "kind": "EXPRESSION_STATEMENT",
       
  1825       "startPosition": "1179"
       
  1826     },
       
  1827     {
       
  1828       "expression": {
       
  1829         "constructorExpression": {
       
  1830           "endPosition": "1211",
       
  1831           "kind": "FUNCTION_INVOCATION",
       
  1832           "functionSelect": {
       
  1833             "endPosition": "1199",
       
  1834             "kind": "IDENTIFIER",
       
  1835             "name": "Type",
       
  1836             "startPosition": "1195"
       
  1837           },
       
  1838           "arguments": [
       
  1839             {
       
  1840               "endPosition": "1201",
       
  1841               "kind": "IDENTIFIER",
       
  1842               "name": "a",
       
  1843               "startPosition": "1200"
       
  1844             },
       
  1845             {
       
  1846               "endPosition": "1209",
       
  1847               "kind": "STRING_LITERAL",
       
  1848               "value": "hello",
       
  1849               "startPosition": "1204"
       
  1850             }
       
  1851           ],
       
  1852           "startPosition": "1195"
       
  1853         },
       
  1854         "endPosition": "1211",
       
  1855         "kind": "NEW",
       
  1856         "startPosition": "1191"
       
  1857       },
       
  1858       "endPosition": "1211",
       
  1859       "kind": "EXPRESSION_STATEMENT",
       
  1860       "startPosition": "1191"
       
  1861     },
       
  1862     {
       
  1863       "expression": {
       
  1864         "constructorExpression": {
       
  1865           "endPosition": "1225",
       
  1866           "kind": "FUNCTION_INVOCATION",
       
  1867           "functionSelect": {
       
  1868             "identifier": "Type",
       
  1869             "expression": {
       
  1870               "endPosition": "1220",
       
  1871               "kind": "IDENTIFIER",
       
  1872               "name": "obj",
       
  1873               "startPosition": "1217"
       
  1874             },
       
  1875             "endPosition": "1225",
       
  1876             "kind": "MEMBER_SELECT",
       
  1877             "startPosition": "1217"
       
  1878           },
       
  1879           "arguments": [],
       
  1880           "startPosition": "1220"
       
  1881         },
       
  1882         "endPosition": "1225",
       
  1883         "kind": "NEW",
       
  1884         "startPosition": "1213"
       
  1885       },
       
  1886       "endPosition": "1225",
       
  1887       "kind": "EXPRESSION_STATEMENT",
       
  1888       "startPosition": "1213"
       
  1889     },
       
  1890     {
       
  1891       "expression": {
       
  1892         "constructorExpression": {
       
  1893           "endPosition": "1241",
       
  1894           "kind": "FUNCTION_INVOCATION",
       
  1895           "functionSelect": {
       
  1896             "identifier": "Type",
       
  1897             "expression": {
       
  1898               "endPosition": "1234",
       
  1899               "kind": "IDENTIFIER",
       
  1900               "name": "obj",
       
  1901               "startPosition": "1231"
       
  1902             },
       
  1903             "endPosition": "1239",
       
  1904             "kind": "MEMBER_SELECT",
       
  1905             "startPosition": "1231"
       
  1906           },
       
  1907           "arguments": [],
       
  1908           "startPosition": "1234"
       
  1909         },
       
  1910         "endPosition": "1241",
       
  1911         "kind": "NEW",
       
  1912         "startPosition": "1227"
       
  1913       },
       
  1914       "endPosition": "1241",
       
  1915       "kind": "EXPRESSION_STATEMENT",
       
  1916       "startPosition": "1227"
       
  1917     },
       
  1918     {
       
  1919       "expression": {
       
  1920         "constructorExpression": {
       
  1921           "endPosition": "1267",
       
  1922           "kind": "FUNCTION_INVOCATION",
       
  1923           "functionSelect": {
       
  1924             "identifier": "Type",
       
  1925             "expression": {
       
  1926               "endPosition": "1250",
       
  1927               "kind": "IDENTIFIER",
       
  1928               "name": "obj",
       
  1929               "startPosition": "1247"
       
  1930             },
       
  1931             "endPosition": "1255",
       
  1932             "kind": "MEMBER_SELECT",
       
  1933             "startPosition": "1247"
       
  1934           },
       
  1935           "arguments": [
       
  1936             {
       
  1937               "endPosition": "1257",
       
  1938               "kind": "IDENTIFIER",
       
  1939               "name": "a",
       
  1940               "startPosition": "1256"
       
  1941             },
       
  1942             {
       
  1943               "endPosition": "1265",
       
  1944               "kind": "STRING_LITERAL",
       
  1945               "value": "hello",
       
  1946               "startPosition": "1260"
       
  1947             }
       
  1948           ],
       
  1949           "startPosition": "1250"
       
  1950         },
       
  1951         "endPosition": "1267",
       
  1952         "kind": "NEW",
       
  1953         "startPosition": "1243"
       
  1954       },
       
  1955       "endPosition": "1267",
       
  1956       "kind": "EXPRESSION_STATEMENT",
       
  1957       "startPosition": "1243"
       
  1958     },
       
  1959     {
       
  1960       "expression": {
       
  1961         "endPosition": "1274",
       
  1962         "kind": "FUNCTION_INVOCATION",
       
  1963         "functionSelect": {
       
  1964           "endPosition": "1272",
       
  1965           "kind": "IDENTIFIER",
       
  1966           "name": "foo",
       
  1967           "startPosition": "1269"
       
  1968         },
       
  1969         "arguments": [],
       
  1970         "startPosition": "1269"
       
  1971       },
       
  1972       "endPosition": "1274",
       
  1973       "kind": "EXPRESSION_STATEMENT",
       
  1974       "startPosition": "1269"
       
  1975     },
       
  1976     {
       
  1977       "expression": {
       
  1978         "endPosition": "1284",
       
  1979         "kind": "FUNCTION_INVOCATION",
       
  1980         "functionSelect": {
       
  1981           "identifier": "foo",
       
  1982           "expression": {
       
  1983             "endPosition": "1278",
       
  1984             "kind": "IDENTIFIER",
       
  1985             "name": "obj",
       
  1986             "startPosition": "1275"
       
  1987           },
       
  1988           "endPosition": "1282",
       
  1989           "kind": "MEMBER_SELECT",
       
  1990           "startPosition": "1275"
       
  1991         },
       
  1992         "arguments": [],
       
  1993         "startPosition": "1275"
       
  1994       },
       
  1995       "endPosition": "1284",
       
  1996       "kind": "EXPRESSION_STATEMENT",
       
  1997       "startPosition": "1275"
       
  1998     },
       
  1999     {
       
  2000       "expression": {
       
  2001         "endPosition": "1294",
       
  2002         "kind": "FUNCTION_INVOCATION",
       
  2003         "functionSelect": {
       
  2004           "endPosition": "1289",
       
  2005           "kind": "IDENTIFIER",
       
  2006           "name": "foo",
       
  2007           "startPosition": "1286"
       
  2008         },
       
  2009         "arguments": [
       
  2010           {
       
  2011             "endPosition": "1291",
       
  2012             "kind": "IDENTIFIER",
       
  2013             "name": "a",
       
  2014             "startPosition": "1290"
       
  2015           },
       
  2016           {
       
  2017             "endPosition": "1293",
       
  2018             "kind": "IDENTIFIER",
       
  2019             "name": "b",
       
  2020             "startPosition": "1292"
       
  2021           }
       
  2022         ],
       
  2023         "startPosition": "1286"
       
  2024       },
       
  2025       "endPosition": "1294",
       
  2026       "kind": "EXPRESSION_STATEMENT",
       
  2027       "startPosition": "1286"
       
  2028     },
       
  2029     {
       
  2030       "expression": {
       
  2031         "endPosition": "1309",
       
  2032         "kind": "FUNCTION_INVOCATION",
       
  2033         "functionSelect": {
       
  2034           "identifier": "foo",
       
  2035           "expression": {
       
  2036             "endPosition": "1299",
       
  2037             "kind": "IDENTIFIER",
       
  2038             "name": "obj",
       
  2039             "startPosition": "1296"
       
  2040           },
       
  2041           "endPosition": "1303",
       
  2042           "kind": "MEMBER_SELECT",
       
  2043           "startPosition": "1296"
       
  2044         },
       
  2045         "arguments": [
       
  2046           {
       
  2047             "endPosition": "1305",
       
  2048             "kind": "IDENTIFIER",
       
  2049             "name": "a",
       
  2050             "startPosition": "1304"
       
  2051           },
       
  2052           {
       
  2053             "endPosition": "1308",
       
  2054             "kind": "IDENTIFIER",
       
  2055             "name": "b",
       
  2056             "startPosition": "1307"
       
  2057           }
       
  2058         ],
       
  2059         "startPosition": "1296"
       
  2060       },
       
  2061       "endPosition": "1309",
       
  2062       "kind": "EXPRESSION_STATEMENT",
       
  2063       "startPosition": "1296"
       
  2064     }
       
  2065   ],
       
  2066   "sourceName": "parsertests/lhsExpr.js",
       
  2067   "strict": "false",
       
  2068   "startPosition": "1125"
       
  2069 }
       
  2070 ,
       
  2071 {
       
  2072   "endPosition": "1110",
       
  2073   "kind": "COMPILATION_UNIT",
       
  2074   "sourceElements": [
       
  2075     {
       
  2076       "condition": {
       
  2077         "endPosition": "1120",
       
  2078         "kind": "BOOLEAN_LITERAL",
       
  2079         "value": "true",
       
  2080         "startPosition": "1116"
       
  2081       },
       
  2082       "endPosition": "1140",
       
  2083       "kind": "WHILE_LOOP",
       
  2084       "statement": {
       
  2085         "endPosition": "1140",
       
  2086         "kind": "BLOCK",
       
  2087         "statements": [
       
  2088           {
       
  2089             "expression": {
       
  2090               "endPosition": "1138",
       
  2091               "kind": "FUNCTION_INVOCATION",
       
  2092               "functionSelect": {
       
  2093                 "endPosition": "1129",
       
  2094                 "kind": "IDENTIFIER",
       
  2095                 "name": "print",
       
  2096                 "startPosition": "1124"
       
  2097               },
       
  2098               "arguments": [
       
  2099                 {
       
  2100                   "endPosition": "1136",
       
  2101                   "kind": "STRING_LITERAL",
       
  2102                   "value": "hello",
       
  2103                   "startPosition": "1131"
       
  2104                 }
       
  2105               ],
       
  2106               "startPosition": "1124"
       
  2107             },
       
  2108             "endPosition": "1138",
       
  2109             "kind": "EXPRESSION_STATEMENT",
       
  2110             "startPosition": "1124"
       
  2111           }
       
  2112         ],
       
  2113         "startPosition": "1122"
       
  2114       },
       
  2115       "startPosition": "1110"
       
  2116     },
       
  2117     {
       
  2118       "condition": {
       
  2119         "endPosition": "1173",
       
  2120         "kind": "BOOLEAN_LITERAL",
       
  2121         "value": "true",
       
  2122         "startPosition": "1169"
       
  2123       },
       
  2124       "endPosition": "1174",
       
  2125       "kind": "DO_WHILE_LOOP",
       
  2126       "statement": {
       
  2127         "endPosition": "1162",
       
  2128         "kind": "BLOCK",
       
  2129         "statements": [
       
  2130           {
       
  2131             "expression": {
       
  2132               "endPosition": "1160",
       
  2133               "kind": "FUNCTION_INVOCATION",
       
  2134               "functionSelect": {
       
  2135                 "endPosition": "1151",
       
  2136                 "kind": "IDENTIFIER",
       
  2137                 "name": "print",
       
  2138                 "startPosition": "1146"
       
  2139               },
       
  2140               "arguments": [
       
  2141                 {
       
  2142                   "endPosition": "1158",
       
  2143                   "kind": "STRING_LITERAL",
       
  2144                   "value": "hello",
       
  2145                   "startPosition": "1153"
       
  2146                 }
       
  2147               ],
       
  2148               "startPosition": "1146"
       
  2149             },
       
  2150             "endPosition": "1160",
       
  2151             "kind": "EXPRESSION_STATEMENT",
       
  2152             "startPosition": "1146"
       
  2153           }
       
  2154         ],
       
  2155         "startPosition": "1144"
       
  2156       },
       
  2157       "startPosition": "1141"
       
  2158     },
       
  2159     {
       
  2160       "expression": {
       
  2161         "endPosition": "1188",
       
  2162         "kind": "IDENTIFIER",
       
  2163         "name": "obj",
       
  2164         "startPosition": "1185"
       
  2165       },
       
  2166       "endPosition": "1207",
       
  2167       "kind": "FOR_IN_LOOP",
       
  2168       "forEach": "false",
       
  2169       "variable": {
       
  2170         "endPosition": "1181",
       
  2171         "kind": "IDENTIFIER",
       
  2172         "name": "i",
       
  2173         "startPosition": "1180"
       
  2174       },
       
  2175       "statement": {
       
  2176         "endPosition": "1207",
       
  2177         "kind": "BLOCK",
       
  2178         "statements": [
       
  2179           {
       
  2180             "expression": {
       
  2181               "endPosition": "1205",
       
  2182               "kind": "FUNCTION_INVOCATION",
       
  2183               "functionSelect": {
       
  2184                 "endPosition": "1197",
       
  2185                 "kind": "IDENTIFIER",
       
  2186                 "name": "print",
       
  2187                 "startPosition": "1192"
       
  2188               },
       
  2189               "arguments": [
       
  2190                 {
       
  2191                   "expression": {
       
  2192                     "endPosition": "1201",
       
  2193                     "kind": "IDENTIFIER",
       
  2194                     "name": "obj",
       
  2195                     "startPosition": "1198"
       
  2196                   },
       
  2197                   "endPosition": "1204",
       
  2198                   "kind": "ARRAY_ACCESS",
       
  2199                   "index": {
       
  2200                     "endPosition": "1203",
       
  2201                     "kind": "IDENTIFIER",
       
  2202                     "name": "i",
       
  2203                     "startPosition": "1202"
       
  2204                   },
       
  2205                   "startPosition": "1198"
       
  2206                 }
       
  2207               ],
       
  2208               "startPosition": "1192"
       
  2209             },
       
  2210             "endPosition": "1205",
       
  2211             "kind": "EXPRESSION_STATEMENT",
       
  2212             "startPosition": "1192"
       
  2213           }
       
  2214         ],
       
  2215         "startPosition": "1190"
       
  2216       },
       
  2217       "startPosition": "1175"
       
  2218     },
       
  2219     {
       
  2220       "expression": {
       
  2221         "endPosition": "1226",
       
  2222         "kind": "IDENTIFIER",
       
  2223         "name": "obj",
       
  2224         "startPosition": "1223"
       
  2225       },
       
  2226       "endPosition": "1240",
       
  2227       "kind": "FOR_IN_LOOP",
       
  2228       "forEach": "true",
       
  2229       "variable": {
       
  2230         "endPosition": "1219",
       
  2231         "kind": "IDENTIFIER",
       
  2232         "name": "i",
       
  2233         "startPosition": "1218"
       
  2234       },
       
  2235       "statement": {
       
  2236         "endPosition": "1240",
       
  2237         "kind": "BLOCK",
       
  2238         "statements": [
       
  2239           {
       
  2240             "expression": {
       
  2241               "endPosition": "1238",
       
  2242               "kind": "FUNCTION_INVOCATION",
       
  2243               "functionSelect": {
       
  2244                 "endPosition": "1235",
       
  2245                 "kind": "IDENTIFIER",
       
  2246                 "name": "print",
       
  2247                 "startPosition": "1230"
       
  2248               },
       
  2249               "arguments": [
       
  2250                 {
       
  2251                   "endPosition": "1237",
       
  2252                   "kind": "IDENTIFIER",
       
  2253                   "name": "i",
       
  2254                   "startPosition": "1236"
       
  2255                 }
       
  2256               ],
       
  2257               "startPosition": "1230"
       
  2258             },
       
  2259             "endPosition": "1238",
       
  2260             "kind": "EXPRESSION_STATEMENT",
       
  2261             "startPosition": "1230"
       
  2262           }
       
  2263         ],
       
  2264         "startPosition": "1228"
       
  2265       },
       
  2266       "startPosition": "1208"
       
  2267     },
       
  2268     {
       
  2269       "condition": {
       
  2270         "leftOperand": {
       
  2271           "endPosition": "1254",
       
  2272           "kind": "IDENTIFIER",
       
  2273           "name": "i",
       
  2274           "startPosition": "1253"
       
  2275         },
       
  2276         "endPosition": "1259",
       
  2277         "kind": "LESS_THAN",
       
  2278         "rightOperand": {
       
  2279           "endPosition": "1259",
       
  2280           "kind": "NUMBER_LITERAL",
       
  2281           "value": "10",
       
  2282           "startPosition": "1257"
       
  2283         },
       
  2284         "startPosition": "1253"
       
  2285       },
       
  2286       "endPosition": "1278",
       
  2287       "kind": "FOR_LOOP",
       
  2288       "statement": {
       
  2289         "endPosition": "1278",
       
  2290         "kind": "BLOCK",
       
  2291         "statements": [
       
  2292           {
       
  2293             "expression": {
       
  2294               "endPosition": "1276",
       
  2295               "kind": "FUNCTION_INVOCATION",
       
  2296               "functionSelect": {
       
  2297                 "endPosition": "1273",
       
  2298                 "kind": "IDENTIFIER",
       
  2299                 "name": "print",
       
  2300                 "startPosition": "1268"
       
  2301               },
       
  2302               "arguments": [
       
  2303                 {
       
  2304                   "endPosition": "1275",
       
  2305                   "kind": "IDENTIFIER",
       
  2306                   "name": "i",
       
  2307                   "startPosition": "1274"
       
  2308                 }
       
  2309               ],
       
  2310               "startPosition": "1268"
       
  2311             },
       
  2312             "endPosition": "1276",
       
  2313             "kind": "EXPRESSION_STATEMENT",
       
  2314             "startPosition": "1268"
       
  2315           }
       
  2316         ],
       
  2317         "startPosition": "1266"
       
  2318       },
       
  2319       "update": {
       
  2320         "expression": {
       
  2321           "endPosition": "1262",
       
  2322           "kind": "IDENTIFIER",
       
  2323           "name": "i",
       
  2324           "startPosition": "1261"
       
  2325         },
       
  2326         "endPosition": "1264",
       
  2327         "kind": "POSTFIX_INCREMENT",
       
  2328         "startPosition": "1261"
       
  2329       },
       
  2330       "startPosition": "1241",
       
  2331       "initializer": {
       
  2332         "expression": {
       
  2333           "endPosition": "1251",
       
  2334           "kind": "NUMBER_LITERAL",
       
  2335           "value": "0",
       
  2336           "startPosition": "1250"
       
  2337         },
       
  2338         "endPosition": "1251",
       
  2339         "kind": "ASSIGNMENT",
       
  2340         "variable": {
       
  2341           "endPosition": "1247",
       
  2342           "kind": "IDENTIFIER",
       
  2343           "name": "i",
       
  2344           "startPosition": "1246"
       
  2345         },
       
  2346         "startPosition": "1246"
       
  2347       }
       
  2348     }
       
  2349   ],
       
  2350   "sourceName": "parsertests/loopStat.js",
       
  2351   "strict": "false",
       
  2352   "startPosition": "1110"
       
  2353 }
       
  2354 ,
       
  2355 {
       
  2356   "endPosition": "1125",
       
  2357   "kind": "COMPILATION_UNIT",
       
  2358   "sourceElements": [
       
  2359     {
       
  2360       "expression": {
       
  2361         "expression": {
       
  2362           "endPosition": "1133",
       
  2363           "kind": "OBJECT_LITERAL",
       
  2364           "startPosition": "1131",
       
  2365           "properties": []
       
  2366         },
       
  2367         "endPosition": "1133",
       
  2368         "kind": "ASSIGNMENT",
       
  2369         "variable": {
       
  2370           "endPosition": "1128",
       
  2371           "kind": "IDENTIFIER",
       
  2372           "name": "obj",
       
  2373           "startPosition": "1125"
       
  2374         },
       
  2375         "startPosition": "1125"
       
  2376       },
       
  2377       "endPosition": "1133",
       
  2378       "kind": "EXPRESSION_STATEMENT",
       
  2379       "startPosition": "1125"
       
  2380     },
       
  2381     {
       
  2382       "expression": {
       
  2383         "expression": {
       
  2384           "endPosition": "1154",
       
  2385           "kind": "OBJECT_LITERAL",
       
  2386           "startPosition": "1139",
       
  2387           "properties": [
       
  2388             {
       
  2389               "endPosition": "1143",
       
  2390               "kind": "PROPERTY",
       
  2391               "value": {
       
  2392                 "endPosition": "1146",
       
  2393                 "kind": "NUMBER_LITERAL",
       
  2394                 "value": "10",
       
  2395                 "startPosition": "1144"
       
  2396               },
       
  2397               "startPosition": "1141",
       
  2398               "key": {
       
  2399                 "endPosition": "1142",
       
  2400                 "kind": "IDENTIFIER",
       
  2401                 "name": "x",
       
  2402                 "startPosition": "1141"
       
  2403               }
       
  2404             },
       
  2405             {
       
  2406               "endPosition": "1150",
       
  2407               "kind": "PROPERTY",
       
  2408               "value": {
       
  2409                 "endPosition": "1152",
       
  2410                 "kind": "NUMBER_LITERAL",
       
  2411                 "value": "2",
       
  2412                 "startPosition": "1151"
       
  2413               },
       
  2414               "startPosition": "1148",
       
  2415               "key": {
       
  2416                 "endPosition": "1149",
       
  2417                 "kind": "IDENTIFIER",
       
  2418                 "name": "y",
       
  2419                 "startPosition": "1148"
       
  2420               }
       
  2421             }
       
  2422           ]
       
  2423         },
       
  2424         "endPosition": "1154",
       
  2425         "kind": "ASSIGNMENT",
       
  2426         "variable": {
       
  2427           "endPosition": "1136",
       
  2428           "kind": "IDENTIFIER",
       
  2429           "name": "p",
       
  2430           "startPosition": "1135"
       
  2431         },
       
  2432         "startPosition": "1135"
       
  2433       },
       
  2434       "endPosition": "1154",
       
  2435       "kind": "EXPRESSION_STATEMENT",
       
  2436       "startPosition": "1135"
       
  2437     },
       
  2438     {
       
  2439       "expression": {
       
  2440         "expression": {
       
  2441           "endPosition": "1179",
       
  2442           "kind": "OBJECT_LITERAL",
       
  2443           "startPosition": "1160",
       
  2444           "properties": [
       
  2445             {
       
  2446               "endPosition": "1166",
       
  2447               "kind": "PROPERTY",
       
  2448               "value": {
       
  2449                 "endPosition": "1169",
       
  2450                 "kind": "NUMBER_LITERAL",
       
  2451                 "value": "10",
       
  2452                 "startPosition": "1167"
       
  2453               },
       
  2454               "startPosition": "1163",
       
  2455               "key": {
       
  2456                 "endPosition": "1164",
       
  2457                 "kind": "STRING_LITERAL",
       
  2458                 "value": "x",
       
  2459                 "startPosition": "1163"
       
  2460               }
       
  2461             },
       
  2462             {
       
  2463               "endPosition": "1175",
       
  2464               "kind": "PROPERTY",
       
  2465               "value": {
       
  2466                 "endPosition": "1177",
       
  2467                 "kind": "NUMBER_LITERAL",
       
  2468                 "value": "2",
       
  2469                 "startPosition": "1176"
       
  2470               },
       
  2471               "startPosition": "1172",
       
  2472               "key": {
       
  2473                 "endPosition": "1173",
       
  2474                 "kind": "STRING_LITERAL",
       
  2475                 "value": "y",
       
  2476                 "startPosition": "1172"
       
  2477               }
       
  2478             }
       
  2479           ]
       
  2480         },
       
  2481         "endPosition": "1179",
       
  2482         "kind": "ASSIGNMENT",
       
  2483         "variable": {
       
  2484           "endPosition": "1157",
       
  2485           "kind": "IDENTIFIER",
       
  2486           "name": "p",
       
  2487           "startPosition": "1156"
       
  2488         },
       
  2489         "startPosition": "1156"
       
  2490       },
       
  2491       "endPosition": "1179",
       
  2492       "kind": "EXPRESSION_STATEMENT",
       
  2493       "startPosition": "1156"
       
  2494     },
       
  2495     {
       
  2496       "expression": {
       
  2497         "expression": {
       
  2498           "endPosition": "1241",
       
  2499           "kind": "OBJECT_LITERAL",
       
  2500           "startPosition": "1185",
       
  2501           "properties": [
       
  2502             {
       
  2503               "getter": {
       
  2504                 "endPosition": "1195",
       
  2505                 "kind": "FUNCTION_EXPRESSION",
       
  2506                 "body": {
       
  2507                   "endPosition": "1210",
       
  2508                   "kind": "BLOCK",
       
  2509                   "statements": [
       
  2510                     {
       
  2511                       "expression": {
       
  2512                         "endPosition": "1210",
       
  2513                         "kind": "IDENTIFIER",
       
  2514                         "name": "xValue",
       
  2515                         "startPosition": "1204"
       
  2516                       },
       
  2517                       "endPosition": "1210",
       
  2518                       "kind": "RETURN",
       
  2519                       "startPosition": "1197"
       
  2520                     }
       
  2521                   ],
       
  2522                   "startPosition": "1195"
       
  2523                 },
       
  2524                 "strict": "false",
       
  2525                 "startPosition": "1195",
       
  2526                 "parameters": []
       
  2527               },
       
  2528               "endPosition": "1212",
       
  2529               "kind": "PROPERTY",
       
  2530               "startPosition": "1187",
       
  2531               "key": {
       
  2532                 "endPosition": "1192",
       
  2533                 "kind": "IDENTIFIER",
       
  2534                 "name": "x",
       
  2535                 "startPosition": "1191"
       
  2536               }
       
  2537             },
       
  2538             {
       
  2539               "getter": {
       
  2540                 "endPosition": "1222",
       
  2541                 "kind": "FUNCTION_EXPRESSION",
       
  2542                 "body": {
       
  2543                   "endPosition": "1237",
       
  2544                   "kind": "BLOCK",
       
  2545                   "statements": [
       
  2546                     {
       
  2547                       "expression": {
       
  2548                         "endPosition": "1237",
       
  2549                         "kind": "IDENTIFIER",
       
  2550                         "name": "yValue",
       
  2551                         "startPosition": "1231"
       
  2552                       },
       
  2553                       "endPosition": "1237",
       
  2554                       "kind": "RETURN",
       
  2555                       "startPosition": "1224"
       
  2556                     }
       
  2557                   ],
       
  2558                   "startPosition": "1222"
       
  2559                 },
       
  2560                 "strict": "false",
       
  2561                 "startPosition": "1222",
       
  2562                 "parameters": []
       
  2563               },
       
  2564               "endPosition": "1239",
       
  2565               "kind": "PROPERTY",
       
  2566               "startPosition": "1214",
       
  2567               "key": {
       
  2568                 "endPosition": "1219",
       
  2569                 "kind": "IDENTIFIER",
       
  2570                 "name": "y",
       
  2571                 "startPosition": "1218"
       
  2572               }
       
  2573             }
       
  2574           ]
       
  2575         },
       
  2576         "endPosition": "1241",
       
  2577         "kind": "ASSIGNMENT",
       
  2578         "variable": {
       
  2579           "endPosition": "1182",
       
  2580           "kind": "IDENTIFIER",
       
  2581           "name": "p",
       
  2582           "startPosition": "1181"
       
  2583         },
       
  2584         "startPosition": "1181"
       
  2585       },
       
  2586       "endPosition": "1241",
       
  2587       "kind": "EXPRESSION_STATEMENT",
       
  2588       "startPosition": "1181"
       
  2589     },
       
  2590     {
       
  2591       "expression": {
       
  2592         "expression": {
       
  2593           "endPosition": "1315",
       
  2594           "kind": "OBJECT_LITERAL",
       
  2595           "startPosition": "1247",
       
  2596           "properties": [
       
  2597             {
       
  2598               "getter": {
       
  2599                 "endPosition": "1259",
       
  2600                 "kind": "FUNCTION_EXPRESSION",
       
  2601                 "body": {
       
  2602                   "endPosition": "1277",
       
  2603                   "kind": "BLOCK",
       
  2604                   "statements": [
       
  2605                     {
       
  2606                       "expression": {
       
  2607                         "identifier": "_foo",
       
  2608                         "expression": {
       
  2609                           "endPosition": "1272",
       
  2610                           "kind": "IDENTIFIER",
       
  2611                           "name": "this",
       
  2612                           "startPosition": "1268"
       
  2613                         },
       
  2614                         "endPosition": "1277",
       
  2615                         "kind": "MEMBER_SELECT",
       
  2616                         "startPosition": "1268"
       
  2617                       },
       
  2618                       "endPosition": "1277",
       
  2619                       "kind": "RETURN",
       
  2620                       "startPosition": "1261"
       
  2621                     }
       
  2622                   ],
       
  2623                   "startPosition": "1259"
       
  2624                 },
       
  2625                 "strict": "false",
       
  2626                 "startPosition": "1259",
       
  2627                 "parameters": []
       
  2628               },
       
  2629               "endPosition": "1279",
       
  2630               "kind": "PROPERTY",
       
  2631               "setter": {
       
  2632                 "endPosition": "1294",
       
  2633                 "kind": "FUNCTION_EXPRESSION",
       
  2634                 "body": {
       
  2635                   "endPosition": "1311",
       
  2636                   "kind": "BLOCK",
       
  2637                   "statements": [
       
  2638                     {
       
  2639                       "expression": {
       
  2640                         "expression": {
       
  2641                           "endPosition": "1311",
       
  2642                           "kind": "IDENTIFIER",
       
  2643                           "name": "val",
       
  2644                           "startPosition": "1308"
       
  2645                         },
       
  2646                         "endPosition": "1311",
       
  2647                         "kind": "ASSIGNMENT",
       
  2648                         "variable": {
       
  2649                           "identifier": "_foo",
       
  2650                           "expression": {
       
  2651                             "endPosition": "1300",
       
  2652                             "kind": "IDENTIFIER",
       
  2653                             "name": "this",
       
  2654                             "startPosition": "1296"
       
  2655                           },
       
  2656                           "endPosition": "1305",
       
  2657                           "kind": "MEMBER_SELECT",
       
  2658                           "startPosition": "1296"
       
  2659                         },
       
  2660                         "startPosition": "1296"
       
  2661                       },
       
  2662                       "endPosition": "1311",
       
  2663                       "kind": "EXPRESSION_STATEMENT",
       
  2664                       "startPosition": "1296"
       
  2665                     }
       
  2666                   ],
       
  2667                   "startPosition": "1294"
       
  2668                 },
       
  2669                 "strict": "false",
       
  2670                 "startPosition": "1294",
       
  2671                 "parameters": [
       
  2672                   {
       
  2673                     "endPosition": "1292",
       
  2674                     "kind": "IDENTIFIER",
       
  2675                     "name": "val",
       
  2676                     "startPosition": "1289"
       
  2677                   }
       
  2678                 ]
       
  2679               },
       
  2680               "startPosition": "1249",
       
  2681               "key": {
       
  2682                 "endPosition": "1256",
       
  2683                 "kind": "IDENTIFIER",
       
  2684                 "name": "foo",
       
  2685                 "startPosition": "1253"
       
  2686               }
       
  2687             }
       
  2688           ]
       
  2689         },
       
  2690         "endPosition": "1315",
       
  2691         "kind": "ASSIGNMENT",
       
  2692         "variable": {
       
  2693           "endPosition": "1244",
       
  2694           "kind": "IDENTIFIER",
       
  2695           "name": "p",
       
  2696           "startPosition": "1243"
       
  2697         },
       
  2698         "startPosition": "1243"
       
  2699       },
       
  2700       "endPosition": "1315",
       
  2701       "kind": "EXPRESSION_STATEMENT",
       
  2702       "startPosition": "1243"
       
  2703     }
       
  2704   ],
       
  2705   "sourceName": "parsertests/objectLitExpr.js",
       
  2706   "strict": "false",
       
  2707   "startPosition": "1125"
       
  2708 }
       
  2709 ,
       
  2710 {
       
  2711   "endPosition": "1118",
       
  2712   "kind": "COMPILATION_UNIT",
       
  2713   "sourceElements": [
       
  2714     {
       
  2715       "expression": {
       
  2716         "leftOperand": {
       
  2717           "leftOperand": {
       
  2718             "endPosition": "1120",
       
  2719             "kind": "NUMBER_LITERAL",
       
  2720             "value": "2",
       
  2721             "startPosition": "1119"
       
  2722           },
       
  2723           "endPosition": "1126",
       
  2724           "kind": "PLUS",
       
  2725           "rightOperand": {
       
  2726             "endPosition": "1126",
       
  2727             "kind": "NUMBER_LITERAL",
       
  2728             "value": "1",
       
  2729             "startPosition": "1125"
       
  2730           },
       
  2731           "startPosition": "1119"
       
  2732         },
       
  2733         "endPosition": "1131",
       
  2734         "kind": "PLUS",
       
  2735         "rightOperand": {
       
  2736           "endPosition": "1131",
       
  2737           "kind": "NUMBER_LITERAL",
       
  2738           "value": "4",
       
  2739           "startPosition": "1130"
       
  2740         },
       
  2741         "startPosition": "1119"
       
  2742       },
       
  2743       "endPosition": "1131",
       
  2744       "kind": "EXPRESSION_STATEMENT",
       
  2745       "startPosition": "1118"
       
  2746     },
       
  2747     {
       
  2748       "expression": {
       
  2749         "leftOperand": {
       
  2750           "leftOperand": {
       
  2751             "endPosition": "1134",
       
  2752             "kind": "NUMBER_LITERAL",
       
  2753             "value": "3",
       
  2754             "startPosition": "1133"
       
  2755           },
       
  2756           "endPosition": "1139",
       
  2757           "kind": "PLUS",
       
  2758           "rightOperand": {
       
  2759             "endPosition": "1139",
       
  2760             "kind": "NUMBER_LITERAL",
       
  2761             "value": "7",
       
  2762             "startPosition": "1138"
       
  2763           },
       
  2764           "startPosition": "1133"
       
  2765         },
       
  2766         "endPosition": "1146",
       
  2767         "kind": "LEFT_SHIFT",
       
  2768         "rightOperand": {
       
  2769           "endPosition": "1146",
       
  2770           "kind": "NUMBER_LITERAL",
       
  2771           "value": "5",
       
  2772           "startPosition": "1145"
       
  2773         },
       
  2774         "startPosition": "1133"
       
  2775       },
       
  2776       "endPosition": "1147",
       
  2777       "kind": "EXPRESSION_STATEMENT",
       
  2778       "startPosition": "1133"
       
  2779     }
       
  2780   ],
       
  2781   "sourceName": "parsertests/parenExpr.js",
       
  2782   "strict": "false",
       
  2783   "startPosition": "1118"
       
  2784 }
       
  2785 ,
       
  2786 {
       
  2787   "endPosition": "1119",
       
  2788   "kind": "COMPILATION_UNIT",
       
  2789   "sourceElements": [
       
  2790     {
       
  2791       "expression": {
       
  2792         "endPosition": "1123",
       
  2793         "kind": "IDENTIFIER",
       
  2794         "name": "this",
       
  2795         "startPosition": "1119"
       
  2796       },
       
  2797       "endPosition": "1123",
       
  2798       "kind": "EXPRESSION_STATEMENT",
       
  2799       "startPosition": "1119"
       
  2800     },
       
  2801     {
       
  2802       "expression": {
       
  2803         "endPosition": "1128",
       
  2804         "kind": "IDENTIFIER",
       
  2805         "name": "foo",
       
  2806         "startPosition": "1125"
       
  2807       },
       
  2808       "endPosition": "1128",
       
  2809       "kind": "EXPRESSION_STATEMENT",
       
  2810       "startPosition": "1125"
       
  2811     },
       
  2812     {
       
  2813       "expression": {
       
  2814         "endPosition": "1134",
       
  2815         "kind": "NULL_LITERAL",
       
  2816         "startPosition": "1130"
       
  2817       },
       
  2818       "endPosition": "1134",
       
  2819       "kind": "EXPRESSION_STATEMENT",
       
  2820       "startPosition": "1130"
       
  2821     },
       
  2822     {
       
  2823       "expression": {
       
  2824         "endPosition": "1140",
       
  2825         "kind": "BOOLEAN_LITERAL",
       
  2826         "value": "true",
       
  2827         "startPosition": "1136"
       
  2828       },
       
  2829       "endPosition": "1140",
       
  2830       "kind": "EXPRESSION_STATEMENT",
       
  2831       "startPosition": "1136"
       
  2832     },
       
  2833     {
       
  2834       "expression": {
       
  2835         "endPosition": "1147",
       
  2836         "kind": "BOOLEAN_LITERAL",
       
  2837         "value": "false",
       
  2838         "startPosition": "1142"
       
  2839       },
       
  2840       "endPosition": "1147",
       
  2841       "kind": "EXPRESSION_STATEMENT",
       
  2842       "startPosition": "1142"
       
  2843     },
       
  2844     {
       
  2845       "expression": {
       
  2846         "endPosition": "1151",
       
  2847         "kind": "NUMBER_LITERAL",
       
  2848         "value": "33",
       
  2849         "startPosition": "1149"
       
  2850       },
       
  2851       "endPosition": "1151",
       
  2852       "kind": "EXPRESSION_STATEMENT",
       
  2853       "startPosition": "1149"
       
  2854     },
       
  2855     {
       
  2856       "expression": {
       
  2857         "endPosition": "1157",
       
  2858         "kind": "NUMBER_LITERAL",
       
  2859         "value": "3.14",
       
  2860         "startPosition": "1153"
       
  2861       },
       
  2862       "endPosition": "1157",
       
  2863       "kind": "EXPRESSION_STATEMENT",
       
  2864       "startPosition": "1153"
       
  2865     },
       
  2866     {
       
  2867       "expression": {
       
  2868         "leftOperand": {
       
  2869           "leftOperand": {
       
  2870             "endPosition": "1162",
       
  2871             "kind": "NUMBER_LITERAL",
       
  2872             "value": "10",
       
  2873             "startPosition": "1160"
       
  2874           },
       
  2875           "endPosition": "1166",
       
  2876           "kind": "PLUS",
       
  2877           "rightOperand": {
       
  2878             "endPosition": "1166",
       
  2879             "kind": "NUMBER_LITERAL",
       
  2880             "value": "3",
       
  2881             "startPosition": "1165"
       
  2882           },
       
  2883           "startPosition": "1160"
       
  2884         },
       
  2885         "endPosition": "1169",
       
  2886         "kind": "MULTIPLY",
       
  2887         "rightOperand": {
       
  2888           "endPosition": "1169",
       
  2889           "kind": "NUMBER_LITERAL",
       
  2890           "value": "2",
       
  2891           "startPosition": "1168"
       
  2892         },
       
  2893         "startPosition": "1160"
       
  2894       },
       
  2895       "endPosition": "1169",
       
  2896       "kind": "EXPRESSION_STATEMENT",
       
  2897       "startPosition": "1159"
       
  2898     },
       
  2899     {
       
  2900       "expression": {
       
  2901         "endPosition": "1174",
       
  2902         "kind": "OBJECT_LITERAL",
       
  2903         "startPosition": "1172",
       
  2904         "properties": []
       
  2905       },
       
  2906       "endPosition": "1175",
       
  2907       "kind": "EXPRESSION_STATEMENT",
       
  2908       "startPosition": "1171"
       
  2909     },
       
  2910     {
       
  2911       "expression": {
       
  2912         "endPosition": "1186",
       
  2913         "kind": "OBJECT_LITERAL",
       
  2914         "startPosition": "1178",
       
  2915         "properties": [
       
  2916           {
       
  2917             "endPosition": "1182",
       
  2918             "kind": "PROPERTY",
       
  2919             "value": {
       
  2920               "endPosition": "1184",
       
  2921               "kind": "NUMBER_LITERAL",
       
  2922               "value": "3",
       
  2923               "startPosition": "1183"
       
  2924             },
       
  2925             "startPosition": "1180",
       
  2926             "key": {
       
  2927               "endPosition": "1181",
       
  2928               "kind": "IDENTIFIER",
       
  2929               "name": "x",
       
  2930               "startPosition": "1180"
       
  2931             }
       
  2932           }
       
  2933         ]
       
  2934       },
       
  2935       "endPosition": "1187",
       
  2936       "kind": "EXPRESSION_STATEMENT",
       
  2937       "startPosition": "1177"
       
  2938     },
       
  2939     {
       
  2940       "expression": {
       
  2941         "endPosition": "1191",
       
  2942         "kind": "ARRAY_LITERAL",
       
  2943         "elements": [],
       
  2944         "startPosition": "1189"
       
  2945       },
       
  2946       "endPosition": "1191",
       
  2947       "kind": "EXPRESSION_STATEMENT",
       
  2948       "startPosition": "1189"
       
  2949     },
       
  2950     {
       
  2951       "expression": {
       
  2952         "endPosition": "1197",
       
  2953         "kind": "ARRAY_LITERAL",
       
  2954         "elements": [
       
  2955           null,
       
  2956           null
       
  2957         ],
       
  2958         "startPosition": "1193"
       
  2959       },
       
  2960       "endPosition": "1197",
       
  2961       "kind": "EXPRESSION_STATEMENT",
       
  2962       "startPosition": "1193"
       
  2963     },
       
  2964     {
       
  2965       "expression": {
       
  2966         "endPosition": "1208",
       
  2967         "kind": "ARRAY_LITERAL",
       
  2968         "elements": [
       
  2969           {
       
  2970             "endPosition": "1201",
       
  2971             "kind": "NUMBER_LITERAL",
       
  2972             "value": "4",
       
  2973             "startPosition": "1200"
       
  2974           },
       
  2975           {
       
  2976             "endPosition": "1204",
       
  2977             "kind": "NUMBER_LITERAL",
       
  2978             "value": "5",
       
  2979             "startPosition": "1203"
       
  2980           },
       
  2981           {
       
  2982             "endPosition": "1207",
       
  2983             "kind": "NUMBER_LITERAL",
       
  2984             "value": "5",
       
  2985             "startPosition": "1206"
       
  2986           }
       
  2987         ],
       
  2988         "startPosition": "1199"
       
  2989       },
       
  2990       "endPosition": "1208",
       
  2991       "kind": "EXPRESSION_STATEMENT",
       
  2992       "startPosition": "1199"
       
  2993     }
       
  2994   ],
       
  2995   "sourceName": "parsertests/primaryExpr.js",
       
  2996   "strict": "false",
       
  2997   "startPosition": "1119"
       
  2998 }
       
  2999 ,
       
  3000 {
       
  3001   "endPosition": "1114",
       
  3002   "kind": "COMPILATION_UNIT",
       
  3003   "sourceElements": [
       
  3004     {
       
  3005       "endPosition": "1127",
       
  3006       "kind": "VARIABLE",
       
  3007       "name": "x",
       
  3008       "startPosition": "1118",
       
  3009       "initializer": {
       
  3010         "endPosition": "1127",
       
  3011         "kind": "REGEXP_LITERAL",
       
  3012         "options": "",
       
  3013         "pattern": "foo",
       
  3014         "startPosition": "1122"
       
  3015       }
       
  3016     },
       
  3017     {
       
  3018       "endPosition": "1143",
       
  3019       "kind": "VARIABLE",
       
  3020       "name": "y",
       
  3021       "startPosition": "1133",
       
  3022       "initializer": {
       
  3023         "endPosition": "1143",
       
  3024         "kind": "REGEXP_LITERAL",
       
  3025         "options": "g",
       
  3026         "pattern": "foo",
       
  3027         "startPosition": "1137"
       
  3028       }
       
  3029     },
       
  3030     {
       
  3031       "endPosition": "1168",
       
  3032       "kind": "VARIABLE",
       
  3033       "name": "z",
       
  3034       "startPosition": "1149",
       
  3035       "initializer": {
       
  3036         "endPosition": "1168",
       
  3037         "kind": "REGEXP_LITERAL",
       
  3038         "options": "",
       
  3039         "pattern": "[a-z]*[1-10]?",
       
  3040         "startPosition": "1153"
       
  3041       }
       
  3042     }
       
  3043   ],
       
  3044   "sourceName": "parsertests/regexp_literal.js",
       
  3045   "strict": "false",
       
  3046   "startPosition": "1114"
       
  3047 }
       
  3048 ,
       
  3049 {
       
  3050   "endPosition": "1118",
       
  3051   "kind": "COMPILATION_UNIT",
       
  3052   "sourceElements": [
       
  3053     {
       
  3054       "expression": {
       
  3055         "endPosition": "1130",
       
  3056         "kind": "FUNCTION_EXPRESSION",
       
  3057         "body": {
       
  3058           "endPosition": "1138",
       
  3059           "kind": "BLOCK",
       
  3060           "statements": [
       
  3061             {
       
  3062               "endPosition": "1138",
       
  3063               "kind": "RETURN",
       
  3064               "startPosition": "1132"
       
  3065             }
       
  3066           ],
       
  3067           "startPosition": "1130"
       
  3068         },
       
  3069         "strict": "false",
       
  3070         "startPosition": "1130",
       
  3071         "parameters": []
       
  3072       },
       
  3073       "endPosition": "1141",
       
  3074       "kind": "EXPRESSION_STATEMENT",
       
  3075       "startPosition": "1118"
       
  3076     },
       
  3077     {
       
  3078       "expression": {
       
  3079         "endPosition": "1155",
       
  3080         "kind": "FUNCTION_EXPRESSION",
       
  3081         "body": {
       
  3082           "endPosition": "1167",
       
  3083           "kind": "BLOCK",
       
  3084           "statements": [
       
  3085             {
       
  3086               "expression": {
       
  3087                 "endPosition": "1167",
       
  3088                 "kind": "IDENTIFIER",
       
  3089                 "name": "res",
       
  3090                 "startPosition": "1164"
       
  3091               },
       
  3092               "endPosition": "1167",
       
  3093               "kind": "RETURN",
       
  3094               "startPosition": "1157"
       
  3095             }
       
  3096           ],
       
  3097           "startPosition": "1155"
       
  3098         },
       
  3099         "strict": "false",
       
  3100         "startPosition": "1155",
       
  3101         "parameters": []
       
  3102       },
       
  3103       "endPosition": "1170",
       
  3104       "kind": "EXPRESSION_STATEMENT",
       
  3105       "startPosition": "1143"
       
  3106     },
       
  3107     {
       
  3108       "expression": {
       
  3109         "endPosition": "1184",
       
  3110         "kind": "FUNCTION_EXPRESSION",
       
  3111         "body": {
       
  3112           "endPosition": "1198",
       
  3113           "kind": "BLOCK",
       
  3114           "statements": [
       
  3115             {
       
  3116               "expression": {
       
  3117                 "endPosition": "1198",
       
  3118                 "kind": "FUNCTION_INVOCATION",
       
  3119                 "functionSelect": {
       
  3120                   "endPosition": "1196",
       
  3121                   "kind": "IDENTIFIER",
       
  3122                   "name": "foo",
       
  3123                   "startPosition": "1193"
       
  3124                 },
       
  3125                 "arguments": [],
       
  3126                 "startPosition": "1193"
       
  3127               },
       
  3128               "endPosition": "1198",
       
  3129               "kind": "RETURN",
       
  3130               "startPosition": "1186"
       
  3131             }
       
  3132           ],
       
  3133           "startPosition": "1184"
       
  3134         },
       
  3135         "strict": "false",
       
  3136         "startPosition": "1184",
       
  3137         "parameters": []
       
  3138       },
       
  3139       "endPosition": "1201",
       
  3140       "kind": "EXPRESSION_STATEMENT",
       
  3141       "startPosition": "1172"
       
  3142     }
       
  3143   ],
       
  3144   "sourceName": "parsertests/returnStat.js",
       
  3145   "strict": "false",
       
  3146   "startPosition": "1118"
       
  3147 }
       
  3148 ,
       
  3149 {
       
  3150   "endPosition": "1111",
       
  3151   "kind": "COMPILATION_UNIT",
       
  3152   "sourceElements": [
       
  3153     {
       
  3154       "cases": [],
       
  3155       "expression": {
       
  3156         "endPosition": "1122",
       
  3157         "kind": "IDENTIFIER",
       
  3158         "name": "key",
       
  3159         "startPosition": "1119"
       
  3160       },
       
  3161       "endPosition": "1126",
       
  3162       "kind": "SWITCH",
       
  3163       "startPosition": "1111"
       
  3164     },
       
  3165     {
       
  3166       "cases": [
       
  3167         {
       
  3168           "expression": {
       
  3169             "endPosition": "1149",
       
  3170             "kind": "NUMBER_LITERAL",
       
  3171             "value": "2",
       
  3172             "startPosition": "1148"
       
  3173           },
       
  3174           "endPosition": "1166",
       
  3175           "kind": "CASE",
       
  3176           "statements": [
       
  3177             {
       
  3178               "expression": {
       
  3179                 "endPosition": "1158",
       
  3180                 "kind": "FUNCTION_INVOCATION",
       
  3181                 "functionSelect": {
       
  3182                   "endPosition": "1156",
       
  3183                   "kind": "IDENTIFIER",
       
  3184                   "name": "hello",
       
  3185                   "startPosition": "1151"
       
  3186                 },
       
  3187                 "arguments": [],
       
  3188                 "startPosition": "1151"
       
  3189               },
       
  3190               "endPosition": "1158",
       
  3191               "kind": "EXPRESSION_STATEMENT",
       
  3192               "startPosition": "1151"
       
  3193             },
       
  3194             {
       
  3195               "endPosition": "1166",
       
  3196               "kind": "BREAK",
       
  3197               "startPosition": "1160"
       
  3198             }
       
  3199           ],
       
  3200           "startPosition": "1143"
       
  3201         }
       
  3202       ],
       
  3203       "expression": {
       
  3204         "endPosition": "1139",
       
  3205         "kind": "IDENTIFIER",
       
  3206         "name": "key",
       
  3207         "startPosition": "1136"
       
  3208       },
       
  3209       "endPosition": "1168",
       
  3210       "kind": "SWITCH",
       
  3211       "startPosition": "1128"
       
  3212     },
       
  3213     {
       
  3214       "cases": [
       
  3215         {
       
  3216           "expression": {
       
  3217             "endPosition": "1191",
       
  3218             "kind": "NUMBER_LITERAL",
       
  3219             "value": "4",
       
  3220             "startPosition": "1190"
       
  3221           },
       
  3222           "endPosition": "1208",
       
  3223           "kind": "CASE",
       
  3224           "statements": [
       
  3225             {
       
  3226               "expression": {
       
  3227                 "endPosition": "1200",
       
  3228                 "kind": "FUNCTION_INVOCATION",
       
  3229                 "functionSelect": {
       
  3230                   "endPosition": "1198",
       
  3231                   "kind": "IDENTIFIER",
       
  3232                   "name": "hello",
       
  3233                   "startPosition": "1193"
       
  3234                 },
       
  3235                 "arguments": [],
       
  3236                 "startPosition": "1193"
       
  3237               },
       
  3238               "endPosition": "1200",
       
  3239               "kind": "EXPRESSION_STATEMENT",
       
  3240               "startPosition": "1193"
       
  3241             },
       
  3242             {
       
  3243               "endPosition": "1208",
       
  3244               "kind": "BREAK",
       
  3245               "startPosition": "1202"
       
  3246             }
       
  3247           ],
       
  3248           "startPosition": "1185"
       
  3249         },
       
  3250         {
       
  3251           "expression": {
       
  3252             "endPosition": "1215",
       
  3253             "kind": "NUMBER_LITERAL",
       
  3254             "value": "2",
       
  3255             "startPosition": "1214"
       
  3256           },
       
  3257           "endPosition": "1232",
       
  3258           "kind": "CASE",
       
  3259           "statements": [
       
  3260             {
       
  3261               "expression": {
       
  3262                 "endPosition": "1224",
       
  3263                 "kind": "FUNCTION_INVOCATION",
       
  3264                 "functionSelect": {
       
  3265                   "endPosition": "1222",
       
  3266                   "kind": "IDENTIFIER",
       
  3267                   "name": "world",
       
  3268                   "startPosition": "1217"
       
  3269                 },
       
  3270                 "arguments": [],
       
  3271                 "startPosition": "1217"
       
  3272               },
       
  3273               "endPosition": "1224",
       
  3274               "kind": "EXPRESSION_STATEMENT",
       
  3275               "startPosition": "1217"
       
  3276             },
       
  3277             {
       
  3278               "endPosition": "1232",
       
  3279               "kind": "BREAK",
       
  3280               "startPosition": "1226"
       
  3281             }
       
  3282           ],
       
  3283           "startPosition": "1209"
       
  3284         },
       
  3285         {
       
  3286           "endPosition": "1247",
       
  3287           "kind": "CASE",
       
  3288           "statements": [
       
  3289             {
       
  3290               "endPosition": "1247",
       
  3291               "kind": "BREAK",
       
  3292               "startPosition": "1242"
       
  3293             }
       
  3294           ],
       
  3295           "startPosition": "1233"
       
  3296         }
       
  3297       ],
       
  3298       "expression": {
       
  3299         "endPosition": "1181",
       
  3300         "kind": "IDENTIFIER",
       
  3301         "name": "key",
       
  3302         "startPosition": "1178"
       
  3303       },
       
  3304       "endPosition": "1249",
       
  3305       "kind": "SWITCH",
       
  3306       "startPosition": "1170"
       
  3307     }
       
  3308   ],
       
  3309   "sourceName": "parsertests/switchStat.js",
       
  3310   "strict": "false",
       
  3311   "startPosition": "1111"
       
  3312 }
       
  3313 ,
       
  3314 {
       
  3315   "endPosition": "1110",
       
  3316   "kind": "COMPILATION_UNIT",
       
  3317   "sourceElements": [
       
  3318     {
       
  3319       "expression": {
       
  3320         "endPosition": "1119",
       
  3321         "kind": "IDENTIFIER",
       
  3322         "name": "err",
       
  3323         "startPosition": "1116"
       
  3324       },
       
  3325       "endPosition": "1120",
       
  3326       "kind": "THROW",
       
  3327       "startPosition": "1110"
       
  3328     },
       
  3329     {
       
  3330       "expression": {
       
  3331         "endPosition": "1133",
       
  3332         "kind": "STRING_LITERAL",
       
  3333         "value": "wrong",
       
  3334         "startPosition": "1128"
       
  3335       },
       
  3336       "endPosition": "1135",
       
  3337       "kind": "THROW",
       
  3338       "startPosition": "1121"
       
  3339     },
       
  3340     {
       
  3341       "expression": {
       
  3342         "constructorExpression": {
       
  3343           "endPosition": "1155",
       
  3344           "kind": "FUNCTION_INVOCATION",
       
  3345           "functionSelect": {
       
  3346             "endPosition": "1155",
       
  3347             "kind": "IDENTIFIER",
       
  3348             "name": "TypeError",
       
  3349             "startPosition": "1146"
       
  3350           },
       
  3351           "arguments": [],
       
  3352           "startPosition": "1146"
       
  3353         },
       
  3354         "endPosition": "1155",
       
  3355         "kind": "NEW",
       
  3356         "startPosition": "1142"
       
  3357       },
       
  3358       "endPosition": "1156",
       
  3359       "kind": "THROW",
       
  3360       "startPosition": "1136"
       
  3361     },
       
  3362     {
       
  3363       "expression": {
       
  3364         "constructorExpression": {
       
  3365           "endPosition": "1192",
       
  3366           "kind": "FUNCTION_INVOCATION",
       
  3367           "functionSelect": {
       
  3368             "endPosition": "1176",
       
  3369             "kind": "IDENTIFIER",
       
  3370             "name": "TypeError",
       
  3371             "startPosition": "1167"
       
  3372           },
       
  3373           "arguments": [
       
  3374             {
       
  3375               "endPosition": "1190",
       
  3376               "kind": "STRING_LITERAL",
       
  3377               "value": "not an array",
       
  3378               "startPosition": "1178"
       
  3379             }
       
  3380           ],
       
  3381           "startPosition": "1167"
       
  3382         },
       
  3383         "endPosition": "1192",
       
  3384         "kind": "NEW",
       
  3385         "startPosition": "1163"
       
  3386       },
       
  3387       "endPosition": "1193",
       
  3388       "kind": "THROW",
       
  3389       "startPosition": "1157"
       
  3390     },
       
  3391     {
       
  3392       "expression": {
       
  3393         "endPosition": "1217",
       
  3394         "kind": "OBJECT_LITERAL",
       
  3395         "startPosition": "1200",
       
  3396         "properties": [
       
  3397           {
       
  3398             "endPosition": "1206",
       
  3399             "kind": "PROPERTY",
       
  3400             "value": {
       
  3401               "endPosition": "1214",
       
  3402               "kind": "STRING_LITERAL",
       
  3403               "value": "wrong!",
       
  3404               "startPosition": "1208"
       
  3405             },
       
  3406             "startPosition": "1202",
       
  3407             "key": {
       
  3408               "endPosition": "1205",
       
  3409               "kind": "IDENTIFIER",
       
  3410               "name": "msg",
       
  3411               "startPosition": "1202"
       
  3412             }
       
  3413           }
       
  3414         ]
       
  3415       },
       
  3416       "endPosition": "1218",
       
  3417       "kind": "THROW",
       
  3418       "startPosition": "1194"
       
  3419     }
       
  3420   ],
       
  3421   "sourceName": "parsertests/throwStat.js",
       
  3422   "strict": "false",
       
  3423   "startPosition": "1110"
       
  3424 }
       
  3425 ,
       
  3426 {
       
  3427   "endPosition": "1121",
       
  3428   "kind": "COMPILATION_UNIT",
       
  3429   "sourceElements": [
       
  3430     {
       
  3431       "endPosition": "1142",
       
  3432       "kind": "TRY",
       
  3433       "catches": [
       
  3434         {
       
  3435           "endPosition": "1142",
       
  3436           "kind": "CATCH",
       
  3437           "parameter": {
       
  3438             "endPosition": "1137",
       
  3439             "kind": "IDENTIFIER",
       
  3440             "name": "e",
       
  3441             "startPosition": "1136"
       
  3442           },
       
  3443           "block": {
       
  3444             "endPosition": "1142",
       
  3445             "kind": "BLOCK",
       
  3446             "statements": [],
       
  3447             "startPosition": "1139"
       
  3448           },
       
  3449           "startPosition": "1129"
       
  3450         }
       
  3451       ],
       
  3452       "block": {
       
  3453         "endPosition": "1128",
       
  3454         "kind": "BLOCK",
       
  3455         "statements": [],
       
  3456         "startPosition": "1125"
       
  3457       },
       
  3458       "startPosition": "1121"
       
  3459     },
       
  3460     {
       
  3461       "endPosition": "1175",
       
  3462       "kind": "TRY",
       
  3463       "catches": [
       
  3464         {
       
  3465           "endPosition": "1164",
       
  3466           "kind": "CATCH",
       
  3467           "parameter": {
       
  3468             "endPosition": "1159",
       
  3469             "kind": "IDENTIFIER",
       
  3470             "name": "e",
       
  3471             "startPosition": "1158"
       
  3472           },
       
  3473           "block": {
       
  3474             "endPosition": "1164",
       
  3475             "kind": "BLOCK",
       
  3476             "statements": [],
       
  3477             "startPosition": "1161"
       
  3478           },
       
  3479           "startPosition": "1151"
       
  3480         }
       
  3481       ],
       
  3482       "block": {
       
  3483         "endPosition": "1150",
       
  3484         "kind": "BLOCK",
       
  3485         "statements": [],
       
  3486         "startPosition": "1147"
       
  3487       },
       
  3488       "finallyBlock": {
       
  3489         "endPosition": "1175",
       
  3490         "kind": "BLOCK",
       
  3491         "statements": [],
       
  3492         "startPosition": "1173"
       
  3493       },
       
  3494       "startPosition": "1143"
       
  3495     },
       
  3496     {
       
  3497       "endPosition": "1194",
       
  3498       "kind": "TRY",
       
  3499       "catches": [],
       
  3500       "block": {
       
  3501         "endPosition": "1183",
       
  3502         "kind": "BLOCK",
       
  3503         "statements": [],
       
  3504         "startPosition": "1180"
       
  3505       },
       
  3506       "finallyBlock": {
       
  3507         "endPosition": "1194",
       
  3508         "kind": "BLOCK",
       
  3509         "statements": [],
       
  3510         "startPosition": "1192"
       
  3511       },
       
  3512       "startPosition": "1176"
       
  3513     },
       
  3514     {
       
  3515       "endPosition": "1225",
       
  3516       "kind": "TRY",
       
  3517       "catches": [
       
  3518         {
       
  3519           "endPosition": "1225",
       
  3520           "kind": "CATCH",
       
  3521           "parameter": {
       
  3522             "endPosition": "1211",
       
  3523             "kind": "IDENTIFIER",
       
  3524             "name": "e",
       
  3525             "startPosition": "1210"
       
  3526           },
       
  3527           "block": {
       
  3528             "endPosition": "1225",
       
  3529             "kind": "BLOCK",
       
  3530             "statements": [
       
  3531               {
       
  3532                 "expression": {
       
  3533                   "endPosition": "1223",
       
  3534                   "kind": "FUNCTION_INVOCATION",
       
  3535                   "functionSelect": {
       
  3536                     "endPosition": "1221",
       
  3537                     "kind": "IDENTIFIER",
       
  3538                     "name": "handle",
       
  3539                     "startPosition": "1215"
       
  3540                   },
       
  3541                   "arguments": [],
       
  3542                   "startPosition": "1215"
       
  3543                 },
       
  3544                 "endPosition": "1223",
       
  3545                 "kind": "EXPRESSION_STATEMENT",
       
  3546                 "startPosition": "1215"
       
  3547               }
       
  3548             ],
       
  3549             "startPosition": "1213"
       
  3550           },
       
  3551           "startPosition": "1203"
       
  3552         }
       
  3553       ],
       
  3554       "block": {
       
  3555         "endPosition": "1202",
       
  3556         "kind": "BLOCK",
       
  3557         "statements": [],
       
  3558         "startPosition": "1199"
       
  3559       },
       
  3560       "startPosition": "1195"
       
  3561     },
       
  3562     {
       
  3563       "endPosition": "1283",
       
  3564       "kind": "TRY",
       
  3565       "catches": [
       
  3566         {
       
  3567           "endPosition": "1263",
       
  3568           "kind": "CATCH",
       
  3569           "parameter": {
       
  3570             "endPosition": "1249",
       
  3571             "kind": "IDENTIFIER",
       
  3572             "name": "e",
       
  3573             "startPosition": "1248"
       
  3574           },
       
  3575           "block": {
       
  3576             "endPosition": "1263",
       
  3577             "kind": "BLOCK",
       
  3578             "statements": [
       
  3579               {
       
  3580                 "expression": {
       
  3581                   "endPosition": "1261",
       
  3582                   "kind": "FUNCTION_INVOCATION",
       
  3583                   "functionSelect": {
       
  3584                     "endPosition": "1259",
       
  3585                     "kind": "IDENTIFIER",
       
  3586                     "name": "handle",
       
  3587                     "startPosition": "1253"
       
  3588                   },
       
  3589                   "arguments": [],
       
  3590                   "startPosition": "1253"
       
  3591                 },
       
  3592                 "endPosition": "1261",
       
  3593                 "kind": "EXPRESSION_STATEMENT",
       
  3594                 "startPosition": "1253"
       
  3595               }
       
  3596             ],
       
  3597             "startPosition": "1251"
       
  3598           },
       
  3599           "startPosition": "1241"
       
  3600         }
       
  3601       ],
       
  3602       "block": {
       
  3603         "endPosition": "1240",
       
  3604         "kind": "BLOCK",
       
  3605         "statements": [
       
  3606           {
       
  3607             "expression": {
       
  3608               "endPosition": "1238",
       
  3609               "kind": "FUNCTION_INVOCATION",
       
  3610               "functionSelect": {
       
  3611                 "endPosition": "1236",
       
  3612                 "kind": "IDENTIFIER",
       
  3613                 "name": "that",
       
  3614                 "startPosition": "1232"
       
  3615               },
       
  3616               "arguments": [],
       
  3617               "startPosition": "1232"
       
  3618             },
       
  3619             "endPosition": "1238",
       
  3620             "kind": "EXPRESSION_STATEMENT",
       
  3621             "startPosition": "1232"
       
  3622           }
       
  3623         ],
       
  3624         "startPosition": "1230"
       
  3625       },
       
  3626       "finallyBlock": {
       
  3627         "endPosition": "1283",
       
  3628         "kind": "BLOCK",
       
  3629         "statements": [
       
  3630           {
       
  3631             "expression": {
       
  3632               "endPosition": "1281",
       
  3633               "kind": "FUNCTION_INVOCATION",
       
  3634               "functionSelect": {
       
  3635                 "endPosition": "1279",
       
  3636                 "kind": "IDENTIFIER",
       
  3637                 "name": "clean",
       
  3638                 "startPosition": "1274"
       
  3639               },
       
  3640               "arguments": [],
       
  3641               "startPosition": "1274"
       
  3642             },
       
  3643             "endPosition": "1281",
       
  3644             "kind": "EXPRESSION_STATEMENT",
       
  3645             "startPosition": "1274"
       
  3646           }
       
  3647         ],
       
  3648         "startPosition": "1272"
       
  3649       },
       
  3650       "startPosition": "1226"
       
  3651     },
       
  3652     {
       
  3653       "endPosition": "1368",
       
  3654       "kind": "TRY",
       
  3655       "catches": [
       
  3656         {
       
  3657           "condition": {
       
  3658             "leftOperand": {
       
  3659               "endPosition": "1312",
       
  3660               "kind": "IDENTIFIER",
       
  3661               "name": "e",
       
  3662               "startPosition": "1311"
       
  3663             },
       
  3664             "expression": {
       
  3665               "endPosition": "1312",
       
  3666               "kind": "IDENTIFIER",
       
  3667               "name": "e",
       
  3668               "startPosition": "1311"
       
  3669             },
       
  3670             "endPosition": "1333",
       
  3671             "kind": "INSTANCE_OF",
       
  3672             "rightOperand": {
       
  3673               "endPosition": "1333",
       
  3674               "kind": "IDENTIFIER",
       
  3675               "name": "TypeError",
       
  3676               "startPosition": "1324"
       
  3677             },
       
  3678             "type": {
       
  3679               "endPosition": "1333",
       
  3680               "kind": "IDENTIFIER",
       
  3681               "name": "TypeError",
       
  3682               "startPosition": "1324"
       
  3683             },
       
  3684             "startPosition": "1311"
       
  3685           },
       
  3686           "endPosition": "1347",
       
  3687           "kind": "CATCH",
       
  3688           "parameter": {
       
  3689             "endPosition": "1307",
       
  3690             "kind": "IDENTIFIER",
       
  3691             "name": "e",
       
  3692             "startPosition": "1306"
       
  3693           },
       
  3694           "block": {
       
  3695             "endPosition": "1347",
       
  3696             "kind": "BLOCK",
       
  3697             "statements": [
       
  3698               {
       
  3699                 "expression": {
       
  3700                   "endPosition": "1345",
       
  3701                   "kind": "FUNCTION_INVOCATION",
       
  3702                   "functionSelect": {
       
  3703                     "endPosition": "1343",
       
  3704                     "kind": "IDENTIFIER",
       
  3705                     "name": "handle",
       
  3706                     "startPosition": "1337"
       
  3707                   },
       
  3708                   "arguments": [],
       
  3709                   "startPosition": "1337"
       
  3710                 },
       
  3711                 "endPosition": "1345",
       
  3712                 "kind": "EXPRESSION_STATEMENT",
       
  3713                 "startPosition": "1337"
       
  3714               }
       
  3715             ],
       
  3716             "startPosition": "1335"
       
  3717           },
       
  3718           "startPosition": "1299"
       
  3719         },
       
  3720         {
       
  3721           "endPosition": "1368",
       
  3722           "kind": "CATCH",
       
  3723           "parameter": {
       
  3724             "endPosition": "1356",
       
  3725             "kind": "IDENTIFIER",
       
  3726             "name": "e",
       
  3727             "startPosition": "1355"
       
  3728           },
       
  3729           "block": {
       
  3730             "endPosition": "1368",
       
  3731             "kind": "BLOCK",
       
  3732             "statements": [
       
  3733               {
       
  3734                 "expression": {
       
  3735                   "endPosition": "1366",
       
  3736                   "kind": "FUNCTION_INVOCATION",
       
  3737                   "functionSelect": {
       
  3738                     "endPosition": "1364",
       
  3739                     "kind": "IDENTIFIER",
       
  3740                     "name": "rest",
       
  3741                     "startPosition": "1360"
       
  3742                   },
       
  3743                   "arguments": [],
       
  3744                   "startPosition": "1360"
       
  3745                 },
       
  3746                 "endPosition": "1366",
       
  3747                 "kind": "EXPRESSION_STATEMENT",
       
  3748                 "startPosition": "1360"
       
  3749               }
       
  3750             ],
       
  3751             "startPosition": "1358"
       
  3752           },
       
  3753           "startPosition": "1348"
       
  3754         }
       
  3755       ],
       
  3756       "block": {
       
  3757         "endPosition": "1298",
       
  3758         "kind": "BLOCK",
       
  3759         "statements": [
       
  3760           {
       
  3761             "expression": {
       
  3762               "endPosition": "1296",
       
  3763               "kind": "FUNCTION_INVOCATION",
       
  3764               "functionSelect": {
       
  3765                 "endPosition": "1294",
       
  3766                 "kind": "IDENTIFIER",
       
  3767                 "name": "that",
       
  3768                 "startPosition": "1290"
       
  3769               },
       
  3770               "arguments": [],
       
  3771               "startPosition": "1290"
       
  3772             },
       
  3773             "endPosition": "1296",
       
  3774             "kind": "EXPRESSION_STATEMENT",
       
  3775             "startPosition": "1290"
       
  3776           }
       
  3777         ],
       
  3778         "startPosition": "1288"
       
  3779       },
       
  3780       "startPosition": "1284"
       
  3781     }
       
  3782   ],
       
  3783   "sourceName": "parsertests/tryCatchStat.js",
       
  3784   "strict": "false",
       
  3785   "startPosition": "1121"
       
  3786 }
       
  3787 ,
       
  3788 {
       
  3789   "endPosition": "1115",
       
  3790   "kind": "COMPILATION_UNIT",
       
  3791   "sourceElements": [
       
  3792     {
       
  3793       "expression": {
       
  3794         "expression": {
       
  3795           "endPosition": "1116",
       
  3796           "kind": "IDENTIFIER",
       
  3797           "name": "x",
       
  3798           "startPosition": "1115"
       
  3799         },
       
  3800         "endPosition": "1118",
       
  3801         "kind": "POSTFIX_INCREMENT",
       
  3802         "startPosition": "1115"
       
  3803       },
       
  3804       "endPosition": "1118",
       
  3805       "kind": "EXPRESSION_STATEMENT",
       
  3806       "startPosition": "1115"
       
  3807     },
       
  3808     {
       
  3809       "expression": {
       
  3810         "expression": {
       
  3811           "endPosition": "1121",
       
  3812           "kind": "IDENTIFIER",
       
  3813           "name": "x",
       
  3814           "startPosition": "1120"
       
  3815         },
       
  3816         "endPosition": "1123",
       
  3817         "kind": "POSTFIX_DECREMENT",
       
  3818         "startPosition": "1120"
       
  3819       },
       
  3820       "endPosition": "1123",
       
  3821       "kind": "EXPRESSION_STATEMENT",
       
  3822       "startPosition": "1120"
       
  3823     },
       
  3824     {
       
  3825       "expression": {
       
  3826         "expression": {
       
  3827           "endPosition": "1133",
       
  3828           "kind": "IDENTIFIER",
       
  3829           "name": "x",
       
  3830           "startPosition": "1132"
       
  3831         },
       
  3832         "endPosition": "1133",
       
  3833         "kind": "DELETE",
       
  3834         "startPosition": "1125"
       
  3835       },
       
  3836       "endPosition": "1133",
       
  3837       "kind": "EXPRESSION_STATEMENT",
       
  3838       "startPosition": "1125"
       
  3839     },
       
  3840     {
       
  3841       "expression": {
       
  3842         "expression": {
       
  3843           "endPosition": "1141",
       
  3844           "kind": "IDENTIFIER",
       
  3845           "name": "x",
       
  3846           "startPosition": "1140"
       
  3847         },
       
  3848         "endPosition": "1141",
       
  3849         "kind": "VOID",
       
  3850         "startPosition": "1135"
       
  3851       },
       
  3852       "endPosition": "1141",
       
  3853       "kind": "EXPRESSION_STATEMENT",
       
  3854       "startPosition": "1135"
       
  3855     },
       
  3856     {
       
  3857       "expression": {
       
  3858         "expression": {
       
  3859           "endPosition": "1151",
       
  3860           "kind": "IDENTIFIER",
       
  3861           "name": "x",
       
  3862           "startPosition": "1150"
       
  3863         },
       
  3864         "endPosition": "1151",
       
  3865         "kind": "TYPEOF",
       
  3866         "startPosition": "1143"
       
  3867       },
       
  3868       "endPosition": "1151",
       
  3869       "kind": "EXPRESSION_STATEMENT",
       
  3870       "startPosition": "1143"
       
  3871     },
       
  3872     {
       
  3873       "expression": {
       
  3874         "expression": {
       
  3875           "endPosition": "1156",
       
  3876           "kind": "IDENTIFIER",
       
  3877           "name": "x",
       
  3878           "startPosition": "1155"
       
  3879         },
       
  3880         "endPosition": "1156",
       
  3881         "kind": "PREFIX_INCREMENT",
       
  3882         "startPosition": "1153"
       
  3883       },
       
  3884       "endPosition": "1156",
       
  3885       "kind": "EXPRESSION_STATEMENT",
       
  3886       "startPosition": "1153"
       
  3887     },
       
  3888     {
       
  3889       "expression": {
       
  3890         "expression": {
       
  3891           "endPosition": "1161",
       
  3892           "kind": "IDENTIFIER",
       
  3893           "name": "x",
       
  3894           "startPosition": "1160"
       
  3895         },
       
  3896         "endPosition": "1161",
       
  3897         "kind": "PREFIX_DECREMENT",
       
  3898         "startPosition": "1158"
       
  3899       },
       
  3900       "endPosition": "1161",
       
  3901       "kind": "EXPRESSION_STATEMENT",
       
  3902       "startPosition": "1158"
       
  3903     },
       
  3904     {
       
  3905       "expression": {
       
  3906         "expression": {
       
  3907           "endPosition": "1165",
       
  3908           "kind": "IDENTIFIER",
       
  3909           "name": "x",
       
  3910           "startPosition": "1164"
       
  3911         },
       
  3912         "endPosition": "1165",
       
  3913         "kind": "PLUS",
       
  3914         "startPosition": "1163"
       
  3915       },
       
  3916       "endPosition": "1165",
       
  3917       "kind": "EXPRESSION_STATEMENT",
       
  3918       "startPosition": "1163"
       
  3919     },
       
  3920     {
       
  3921       "expression": {
       
  3922         "expression": {
       
  3923           "endPosition": "1169",
       
  3924           "kind": "IDENTIFIER",
       
  3925           "name": "x",
       
  3926           "startPosition": "1168"
       
  3927         },
       
  3928         "endPosition": "1169",
       
  3929         "kind": "MINUS",
       
  3930         "startPosition": "1167"
       
  3931       },
       
  3932       "endPosition": "1169",
       
  3933       "kind": "EXPRESSION_STATEMENT",
       
  3934       "startPosition": "1167"
       
  3935     },
       
  3936     {
       
  3937       "expression": {
       
  3938         "expression": {
       
  3939           "endPosition": "1173",
       
  3940           "kind": "IDENTIFIER",
       
  3941           "name": "x",
       
  3942           "startPosition": "1172"
       
  3943         },
       
  3944         "endPosition": "1173",
       
  3945         "kind": "BITWISE_COMPLEMENT",
       
  3946         "startPosition": "1171"
       
  3947       },
       
  3948       "endPosition": "1173",
       
  3949       "kind": "EXPRESSION_STATEMENT",
       
  3950       "startPosition": "1171"
       
  3951     },
       
  3952     {
       
  3953       "expression": {
       
  3954         "expression": {
       
  3955           "endPosition": "1177",
       
  3956           "kind": "IDENTIFIER",
       
  3957           "name": "x",
       
  3958           "startPosition": "1176"
       
  3959         },
       
  3960         "endPosition": "1177",
       
  3961         "kind": "LOGICAL_COMPLEMENT",
       
  3962         "startPosition": "1175"
       
  3963       },
       
  3964       "endPosition": "1177",
       
  3965       "kind": "EXPRESSION_STATEMENT",
       
  3966       "startPosition": "1175"
       
  3967     }
       
  3968   ],
       
  3969   "sourceName": "parsertests/unaryExpr.js",
       
  3970   "strict": "false",
       
  3971   "startPosition": "1115"
       
  3972 }
       
  3973 ,
       
  3974 {
       
  3975   "endPosition": "1122",
       
  3976   "kind": "COMPILATION_UNIT",
       
  3977   "sourceElements": [
       
  3978     {
       
  3979       "endPosition": "1165",
       
  3980       "kind": "FUNCTION",
       
  3981       "name": "f",
       
  3982       "body": {
       
  3983         "endPosition": "1162",
       
  3984         "kind": "BLOCK",
       
  3985         "statements": [
       
  3986           {
       
  3987             "expression": {
       
  3988               "endPosition": "1162",
       
  3989               "kind": "STRING_LITERAL",
       
  3990               "value": "use strict",
       
  3991               "startPosition": "1152"
       
  3992             },
       
  3993             "endPosition": "1162",
       
  3994             "kind": "EXPRESSION_STATEMENT",
       
  3995             "startPosition": "1152"
       
  3996           }
       
  3997         ],
       
  3998         "startPosition": "1149"
       
  3999       },
       
  4000       "strict": "true",
       
  4001       "startPosition": "1136",
       
  4002       "parameters": []
       
  4003     },
       
  4004     {
       
  4005       "expression": {
       
  4006         "endPosition": "1133",
       
  4007         "kind": "STRING_LITERAL",
       
  4008         "value": "use strict",
       
  4009         "startPosition": "1123"
       
  4010       },
       
  4011       "endPosition": "1133",
       
  4012       "kind": "EXPRESSION_STATEMENT",
       
  4013       "startPosition": "1123"
       
  4014     }
       
  4015   ],
       
  4016   "sourceName": "parsertests/useStrict.js",
       
  4017   "strict": "true",
       
  4018   "startPosition": "1122"
       
  4019 }
       
  4020 ,
       
  4021 {
       
  4022   "endPosition": "1143",
       
  4023   "kind": "COMPILATION_UNIT",
       
  4024   "sourceElements": [
       
  4025     {
       
  4026       "endPosition": "1148",
       
  4027       "kind": "VARIABLE",
       
  4028       "name": "a",
       
  4029       "startPosition": "1147"
       
  4030     },
       
  4031     {
       
  4032       "endPosition": "1155",
       
  4033       "kind": "VARIABLE",
       
  4034       "name": "a",
       
  4035       "startPosition": "1154"
       
  4036     },
       
  4037     {
       
  4038       "endPosition": "1158",
       
  4039       "kind": "VARIABLE",
       
  4040       "name": "b",
       
  4041       "startPosition": "1157"
       
  4042     },
       
  4043     {
       
  4044       "endPosition": "1200",
       
  4045       "kind": "VARIABLE",
       
  4046       "name": "a",
       
  4047       "startPosition": "1190",
       
  4048       "initializer": {
       
  4049         "endPosition": "1200",
       
  4050         "kind": "STRING_LITERAL",
       
  4051         "value": "hello",
       
  4052         "startPosition": "1195"
       
  4053       }
       
  4054     },
       
  4055     {
       
  4056       "endPosition": "1212",
       
  4057       "kind": "VARIABLE",
       
  4058       "name": "a",
       
  4059       "startPosition": "1207",
       
  4060       "initializer": {
       
  4061         "endPosition": "1212",
       
  4062         "kind": "NUMBER_LITERAL",
       
  4063         "value": "1",
       
  4064         "startPosition": "1211"
       
  4065       }
       
  4066     },
       
  4067     {
       
  4068       "endPosition": "1219",
       
  4069       "kind": "VARIABLE",
       
  4070       "name": "b",
       
  4071       "startPosition": "1214",
       
  4072       "initializer": {
       
  4073         "endPosition": "1219",
       
  4074         "kind": "NUMBER_LITERAL",
       
  4075         "value": "2",
       
  4076         "startPosition": "1218"
       
  4077       }
       
  4078     },
       
  4079     {
       
  4080       "endPosition": "1226",
       
  4081       "kind": "VARIABLE",
       
  4082       "name": "c",
       
  4083       "startPosition": "1221",
       
  4084       "initializer": {
       
  4085         "endPosition": "1226",
       
  4086         "kind": "NUMBER_LITERAL",
       
  4087         "value": "3",
       
  4088         "startPosition": "1225"
       
  4089       }
       
  4090     }
       
  4091   ],
       
  4092   "sourceName": "parsertests/varDecl.js",
       
  4093   "strict": "false",
       
  4094   "startPosition": "1143"
       
  4095 }
       
  4096 ,
       
  4097 {
       
  4098   "endPosition": "1111",
       
  4099   "kind": "COMPILATION_UNIT",
       
  4100   "sourceElements": [
       
  4101     {
       
  4102       "endPosition": "1133",
       
  4103       "kind": "WITH",
       
  4104       "scope": {
       
  4105         "endPosition": "1122",
       
  4106         "kind": "IDENTIFIER",
       
  4107         "name": "scope",
       
  4108         "startPosition": "1117"
       
  4109       },
       
  4110       "statement": {
       
  4111         "endPosition": "1133",
       
  4112         "kind": "BLOCK",
       
  4113         "statements": [
       
  4114           {
       
  4115             "expression": {
       
  4116               "expression": {
       
  4117                 "endPosition": "1131",
       
  4118                 "kind": "IDENTIFIER",
       
  4119                 "name": "y",
       
  4120                 "startPosition": "1130"
       
  4121               },
       
  4122               "endPosition": "1131",
       
  4123               "kind": "ASSIGNMENT",
       
  4124               "variable": {
       
  4125                 "endPosition": "1127",
       
  4126                 "kind": "IDENTIFIER",
       
  4127                 "name": "x",
       
  4128                 "startPosition": "1126"
       
  4129               },
       
  4130               "startPosition": "1126"
       
  4131             },
       
  4132             "endPosition": "1131",
       
  4133             "kind": "EXPRESSION_STATEMENT",
       
  4134             "startPosition": "1126"
       
  4135           }
       
  4136         ],
       
  4137         "startPosition": "1124"
       
  4138       },
       
  4139       "startPosition": "1111"
       
  4140     }
       
  4141   ],
       
  4142   "sourceName": "parsertests/withStat.js",
       
  4143   "strict": "false",
       
  4144   "startPosition": "1111"
       
  4145 }
       
  4146 ,
       
  4147 {
       
  4148   "fileName": "parsernegativetests/caseoutofswitch.js",
       
  4149   "code": "case (1090, 4)",
       
  4150   "columnNumber": "0",
       
  4151   "kind": "ERROR",
       
  4152   "position": "1090",
       
  4153   "message": "parsernegativetests/caseoutofswitch.js:29:0 Expected an operand but found case\ncase 23:\n^",
       
  4154   "lineNumber": "29"
       
  4155 }
       
  4156 ,
       
  4157 {
       
  4158   "fileName": "parsernegativetests/caseoutofswitch.js",
       
  4159   "code": "default (1112, 7)",
       
  4160   "columnNumber": "0",
       
  4161   "kind": "ERROR",
       
  4162   "position": "1112",
       
  4163   "message": "parsernegativetests/caseoutofswitch.js:31:0 Expected an operand but found default\ndefault:\n^",
       
  4164   "lineNumber": "31"
       
  4165 }
       
  4166 ,
       
  4167 {
       
  4168   "endPosition": "1090",
       
  4169   "kind": "COMPILATION_UNIT",
       
  4170   "sourceElements": [
       
  4171     {
       
  4172       "expression": {
       
  4173         "endPosition": "1098",
       
  4174         "kind": "ERROR",
       
  4175         "startPosition": "1090"
       
  4176       },
       
  4177       "endPosition": "1098",
       
  4178       "kind": "EXPRESSION_STATEMENT",
       
  4179       "startPosition": "1090"
       
  4180     },
       
  4181     {
       
  4182       "expression": {
       
  4183         "endPosition": "1110",
       
  4184         "kind": "FUNCTION_INVOCATION",
       
  4185         "functionSelect": {
       
  4186           "endPosition": "1104",
       
  4187           "kind": "IDENTIFIER",
       
  4188           "name": "print",
       
  4189           "startPosition": "1099"
       
  4190         },
       
  4191         "arguments": [
       
  4192           {
       
  4193             "endPosition": "1108",
       
  4194             "kind": "STRING_LITERAL",
       
  4195             "value": "23",
       
  4196             "startPosition": "1106"
       
  4197           }
       
  4198         ],
       
  4199         "startPosition": "1099"
       
  4200       },
       
  4201       "endPosition": "1110",
       
  4202       "kind": "EXPRESSION_STATEMENT",
       
  4203       "startPosition": "1099"
       
  4204     },
       
  4205     {
       
  4206       "expression": {
       
  4207         "endPosition": "1120",
       
  4208         "kind": "ERROR",
       
  4209         "startPosition": "1112"
       
  4210       },
       
  4211       "endPosition": "1120",
       
  4212       "kind": "EXPRESSION_STATEMENT",
       
  4213       "startPosition": "1112"
       
  4214     },
       
  4215     {
       
  4216       "expression": {
       
  4217         "endPosition": "1135",
       
  4218         "kind": "FUNCTION_INVOCATION",
       
  4219         "functionSelect": {
       
  4220           "endPosition": "1126",
       
  4221           "kind": "IDENTIFIER",
       
  4222           "name": "print",
       
  4223           "startPosition": "1121"
       
  4224         },
       
  4225         "arguments": [
       
  4226           {
       
  4227             "endPosition": "1133",
       
  4228             "kind": "STRING_LITERAL",
       
  4229             "value": "hello",
       
  4230             "startPosition": "1128"
       
  4231           }
       
  4232         ],
       
  4233         "startPosition": "1121"
       
  4234       },
       
  4235       "endPosition": "1135",
       
  4236       "kind": "EXPRESSION_STATEMENT",
       
  4237       "startPosition": "1121"
       
  4238     }
       
  4239   ],
       
  4240   "sourceName": "parsernegativetests/caseoutofswitch.js",
       
  4241   "strict": "false",
       
  4242   "startPosition": "1090"
       
  4243 }
       
  4244 ,
       
  4245 {
       
  4246   "fileName": "parsernegativetests/illegalbreak.js",
       
  4247   "code": "break (1090, 5)",
       
  4248   "columnNumber": "0",
       
  4249   "kind": "ERROR",
       
  4250   "position": "1090",
       
  4251   "message": "parsernegativetests/illegalbreak.js:29:0 Illegal break statement\nbreak;\n^",
       
  4252   "lineNumber": "29"
       
  4253 }
       
  4254 ,
       
  4255 {
       
  4256   "fileName": "parsernegativetests/illegalbreak.js",
       
  4257   "code": "ident (1103, 3)",
       
  4258   "columnNumber": "6",
       
  4259   "kind": "ERROR",
       
  4260   "position": "1103",
       
  4261   "message": "parsernegativetests/illegalbreak.js:30:6 Undefined Label \"foo\"\nbreak foo;\n      ^",
       
  4262   "lineNumber": "30"
       
  4263 }
       
  4264 ,
       
  4265 {
       
  4266   "endPosition": "1090",
       
  4267   "kind": "COMPILATION_UNIT",
       
  4268   "sourceElements": [
       
  4269     {
       
  4270       "expression": {
       
  4271         "endPosition": "1096",
       
  4272         "kind": "ERROR",
       
  4273         "startPosition": "1095"
       
  4274       },
       
  4275       "endPosition": "1096",
       
  4276       "kind": "EXPRESSION_STATEMENT",
       
  4277       "startPosition": "1095"
       
  4278     },
       
  4279     {
       
  4280       "expression": {
       
  4281         "endPosition": "1107",
       
  4282         "kind": "ERROR",
       
  4283         "startPosition": "1106"
       
  4284       },
       
  4285       "endPosition": "1107",
       
  4286       "kind": "EXPRESSION_STATEMENT",
       
  4287       "startPosition": "1106"
       
  4288     }
       
  4289   ],
       
  4290   "sourceName": "parsernegativetests/illegalbreak.js",
       
  4291   "strict": "false",
       
  4292   "startPosition": "1090"
       
  4293 }
       
  4294 ,
       
  4295 {
       
  4296   "fileName": "parsernegativetests/illegalcontinue.js",
       
  4297   "code": "continue (1090, 8)",
       
  4298   "columnNumber": "0",
       
  4299   "kind": "ERROR",
       
  4300   "position": "1090",
       
  4301   "message": "parsernegativetests/illegalcontinue.js:29:0 Illegal continue statement\ncontinue;\n^",
       
  4302   "lineNumber": "29"
       
  4303 }
       
  4304 ,
       
  4305 {
       
  4306   "fileName": "parsernegativetests/illegalcontinue.js",
       
  4307   "code": "ident (1109, 3)",
       
  4308   "columnNumber": "9",
       
  4309   "kind": "ERROR",
       
  4310   "position": "1109",
       
  4311   "message": "parsernegativetests/illegalcontinue.js:30:9 Undefined Label \"foo\"\ncontinue foo;\n         ^",
       
  4312   "lineNumber": "30"
       
  4313 }
       
  4314 ,
       
  4315 {
       
  4316   "endPosition": "1090",
       
  4317   "kind": "COMPILATION_UNIT",
       
  4318   "sourceElements": [
       
  4319     {
       
  4320       "expression": {
       
  4321         "endPosition": "1099",
       
  4322         "kind": "ERROR",
       
  4323         "startPosition": "1098"
       
  4324       },
       
  4325       "endPosition": "1099",
       
  4326       "kind": "EXPRESSION_STATEMENT",
       
  4327       "startPosition": "1098"
       
  4328     },
       
  4329     {
       
  4330       "expression": {
       
  4331         "endPosition": "1113",
       
  4332         "kind": "ERROR",
       
  4333         "startPosition": "1112"
       
  4334       },
       
  4335       "endPosition": "1113",
       
  4336       "kind": "EXPRESSION_STATEMENT",
       
  4337       "startPosition": "1112"
       
  4338     }
       
  4339   ],
       
  4340   "sourceName": "parsernegativetests/illegalcontinue.js",
       
  4341   "strict": "false",
       
  4342   "startPosition": "1090"
       
  4343 }
       
  4344 ,
       
  4345 {
       
  4346   "fileName": "parsernegativetests/illegallvalue.js",
       
  4347   "code": "decimal (1090, 2)",
       
  4348   "columnNumber": "0",
       
  4349   "kind": "ERROR",
       
  4350   "position": "1090",
       
  4351   "message": "parsernegativetests/illegallvalue.js:29:0 Invalid left hand side for assignment\n44 = 54;\n^",
       
  4352   "lineNumber": "29"
       
  4353 }
       
  4354 ,
       
  4355 {
       
  4356   "fileName": "parsernegativetests/illegallvalue.js",
       
  4357   "code": "decimal (1099, 3)",
       
  4358   "columnNumber": "0",
       
  4359   "kind": "ERROR",
       
  4360   "position": "1099",
       
  4361   "message": "parsernegativetests/illegallvalue.js:30:0 Invalid left hand side for assignment\n233 += 33;\n^",
       
  4362   "lineNumber": "30"
       
  4363 }
       
  4364 ,
       
  4365 {
       
  4366   "fileName": "parsernegativetests/illegallvalue.js",
       
  4367   "code": "decimal (1110, 4)",
       
  4368   "columnNumber": "0",
       
  4369   "kind": "ERROR",
       
  4370   "position": "1110",
       
  4371   "message": "parsernegativetests/illegallvalue.js:31:0 Invalid left hand side for assignment\n3423 -= 234;\n^",
       
  4372   "lineNumber": "31"
       
  4373 }
       
  4374 ,
       
  4375 {
       
  4376   "endPosition": "1090",
       
  4377   "kind": "COMPILATION_UNIT",
       
  4378   "sourceElements": [
       
  4379     {
       
  4380       "expression": {
       
  4381         "endPosition": "1098",
       
  4382         "kind": "ERROR",
       
  4383         "startPosition": "1097"
       
  4384       },
       
  4385       "endPosition": "1098",
       
  4386       "kind": "EXPRESSION_STATEMENT",
       
  4387       "startPosition": "1097"
       
  4388     },
       
  4389     {
       
  4390       "expression": {
       
  4391         "endPosition": "1109",
       
  4392         "kind": "ERROR",
       
  4393         "startPosition": "1108"
       
  4394       },
       
  4395       "endPosition": "1109",
       
  4396       "kind": "EXPRESSION_STATEMENT",
       
  4397       "startPosition": "1108"
       
  4398     },
       
  4399     {
       
  4400       "expression": {
       
  4401         "endPosition": "1122",
       
  4402         "kind": "ERROR",
       
  4403         "startPosition": "1121"
       
  4404       },
       
  4405       "endPosition": "1122",
       
  4406       "kind": "EXPRESSION_STATEMENT",
       
  4407       "startPosition": "1121"
       
  4408     }
       
  4409   ],
       
  4410   "sourceName": "parsernegativetests/illegallvalue.js",
       
  4411   "strict": "false",
       
  4412   "startPosition": "1090"
       
  4413 }
       
  4414 ,
       
  4415 {
       
  4416   "fileName": "parsernegativetests/illegaloperator.js",
       
  4417   "code": "* (1093, 1)",
       
  4418   "columnNumber": "3",
       
  4419   "kind": "ERROR",
       
  4420   "position": "1093",
       
  4421   "message": "parsernegativetests/illegaloperator.js:29:3 Expected an operand but found *\nx ** y\n   ^",
       
  4422   "lineNumber": "29"
       
  4423 }
       
  4424 ,
       
  4425 {
       
  4426   "endPosition": "1090",
       
  4427   "kind": "COMPILATION_UNIT",
       
  4428   "sourceElements": [
       
  4429     {
       
  4430       "expression": {
       
  4431         "endPosition": "1096",
       
  4432         "kind": "ERROR",
       
  4433         "startPosition": "1093"
       
  4434       },
       
  4435       "endPosition": "1096",
       
  4436       "kind": "EXPRESSION_STATEMENT",
       
  4437       "startPosition": "1093"
       
  4438     }
       
  4439   ],
       
  4440   "sourceName": "parsernegativetests/illegaloperator.js",
       
  4441   "strict": "false",
       
  4442   "startPosition": "1090"
       
  4443 }
       
  4444 ,
       
  4445 {
       
  4446   "fileName": "parsernegativetests/keywordident.js",
       
  4447   "code": "var (1094, 3)",
       
  4448   "columnNumber": "4",
       
  4449   "kind": "ERROR",
       
  4450   "position": "1094",
       
  4451   "message": "parsernegativetests/keywordident.js:29:4 Expected ident but found var\nvar var = 23;\n    ^",
       
  4452   "lineNumber": "29"
       
  4453 }
       
  4454 ,
       
  4455 {
       
  4456   "endPosition": "1090",
       
  4457   "kind": "COMPILATION_UNIT",
       
  4458   "sourceElements": [
       
  4459     {
       
  4460       "expression": {
       
  4461         "endPosition": "1103",
       
  4462         "kind": "ERROR",
       
  4463         "startPosition": "1094"
       
  4464       },
       
  4465       "endPosition": "1103",
       
  4466       "kind": "EXPRESSION_STATEMENT",
       
  4467       "startPosition": "1094"
       
  4468     },
       
  4469     {
       
  4470       "endPosition": "1115",
       
  4471       "kind": "VARIABLE",
       
  4472       "name": "x",
       
  4473       "startPosition": "1108",
       
  4474       "initializer": {
       
  4475         "endPosition": "1115",
       
  4476         "kind": "NUMBER_LITERAL",
       
  4477         "value": "223",
       
  4478         "startPosition": "1112"
       
  4479       }
       
  4480     }
       
  4481   ],
       
  4482   "sourceName": "parsernegativetests/keywordident.js",
       
  4483   "strict": "false",
       
  4484   "startPosition": "1090"
       
  4485 }
       
  4486 ,
       
  4487 {
       
  4488   "fileName": "parsernegativetests/parenmissing.js",
       
  4489   "code": "; (1096, 1)",
       
  4490   "columnNumber": "6",
       
  4491   "kind": "ERROR",
       
  4492   "position": "1096",
       
  4493   "message": "parsernegativetests/parenmissing.js:29:6 Expected ) but found ;\n(1 + 2;\n      ^",
       
  4494   "lineNumber": "29"
       
  4495 }
       
  4496 ,
       
  4497 {
       
  4498   "fileName": "parsernegativetests/parenmissing.js",
       
  4499   "code": ") (1103, 1)",
       
  4500   "columnNumber": "5",
       
  4501   "kind": "ERROR",
       
  4502   "position": "1103",
       
  4503   "message": "parsernegativetests/parenmissing.js:30:5 Expected ; but found )\nx * y);\n     ^",
       
  4504   "lineNumber": "30"
       
  4505 }
       
  4506 ,
       
  4507 {
       
  4508   "endPosition": "1090",
       
  4509   "kind": "COMPILATION_UNIT",
       
  4510   "sourceElements": [
       
  4511     {
       
  4512       "expression": {
       
  4513         "endPosition": "1097",
       
  4514         "kind": "ERROR",
       
  4515         "startPosition": "1096"
       
  4516       },
       
  4517       "endPosition": "1097",
       
  4518       "kind": "EXPRESSION_STATEMENT",
       
  4519       "startPosition": "1096"
       
  4520     },
       
  4521     {
       
  4522       "expression": {
       
  4523         "leftOperand": {
       
  4524           "endPosition": "1099",
       
  4525           "kind": "IDENTIFIER",
       
  4526           "name": "x",
       
  4527           "startPosition": "1098"
       
  4528         },
       
  4529         "endPosition": "1103",
       
  4530         "kind": "MULTIPLY",
       
  4531         "rightOperand": {
       
  4532           "endPosition": "1103",
       
  4533           "kind": "IDENTIFIER",
       
  4534           "name": "y",
       
  4535           "startPosition": "1102"
       
  4536         },
       
  4537         "startPosition": "1098"
       
  4538       },
       
  4539       "endPosition": "1103",
       
  4540       "kind": "EXPRESSION_STATEMENT",
       
  4541       "startPosition": "1098"
       
  4542     },
       
  4543     {
       
  4544       "expression": {
       
  4545         "endPosition": "1105",
       
  4546         "kind": "ERROR",
       
  4547         "startPosition": "1103"
       
  4548       },
       
  4549       "endPosition": "1105",
       
  4550       "kind": "EXPRESSION_STATEMENT",
       
  4551       "startPosition": "1103"
       
  4552     }
       
  4553   ],
       
  4554   "sourceName": "parsernegativetests/parenmissing.js",
       
  4555   "strict": "false",
       
  4556   "startPosition": "1090"
       
  4557 }
       
  4558 ,
       
  4559 {
       
  4560   "fileName": "parsernegativetests/repeatedproperty.js",
       
  4561   "code": "ident (1111, 3)",
       
  4562   "columnNumber": "21",
       
  4563   "kind": "ERROR",
       
  4564   "position": "1111",
       
  4565   "message": "parsernegativetests/repeatedproperty.js:29:21 Property \"foo\" already defined\nvar obj = { foo: 34, get foo() { return 'hello' } };\n                     ^",
       
  4566   "lineNumber": "29"
       
  4567 }
       
  4568 ,
       
  4569 {
       
  4570   "fileName": "parsernegativetests/repeatedproperty.js",
       
  4571   "code": "ident (1165, 3)",
       
  4572   "columnNumber": "22",
       
  4573   "kind": "ERROR",
       
  4574   "position": "1165",
       
  4575   "message": "parsernegativetests/repeatedproperty.js:30:22 Property \"foo\" already defined\nvar obj1 = { foo: 34, set foo(x) { } };\n                      ^",
       
  4576   "lineNumber": "30"
       
  4577 }
       
  4578 ,
       
  4579 {
       
  4580   "fileName": "parsernegativetests/repeatedproperty.js",
       
  4581   "code": "ident (1205, 3)",
       
  4582   "columnNumber": "22",
       
  4583   "kind": "ERROR",
       
  4584   "position": "1205",
       
  4585   "message": "parsernegativetests/repeatedproperty.js:31:22 Property \"foo\" already defined\nvar obj2 = { foo: 34, set foo(x) { } };\n                      ^",
       
  4586   "lineNumber": "31"
       
  4587 }
       
  4588 ,
       
  4589 {
       
  4590   "fileName": "parsernegativetests/repeatedproperty.js",
       
  4591   "code": "ident (1251, 3)",
       
  4592   "columnNumber": "28",
       
  4593   "kind": "ERROR",
       
  4594   "position": "1251",
       
  4595   "message": "parsernegativetests/repeatedproperty.js:32:28 Property \"bar\" already defined\nvar obj3 = { get bar() { }, get bar() {} };\n                            ^",
       
  4596   "lineNumber": "32"
       
  4597 }
       
  4598 ,
       
  4599 {
       
  4600   "fileName": "parsernegativetests/repeatedproperty.js",
       
  4601   "code": "ident (1296, 3)",
       
  4602   "columnNumber": "29",
       
  4603   "kind": "ERROR",
       
  4604   "position": "1296",
       
  4605   "message": "parsernegativetests/repeatedproperty.js:33:29 Property \"bar\" already defined\nvar obj4 = { set bar(x) { }, set bar(x) {} };\n                             ^",
       
  4606   "lineNumber": "33"
       
  4607 }
       
  4608 ,
       
  4609 {
       
  4610   "endPosition": "1090",
       
  4611   "kind": "COMPILATION_UNIT",
       
  4612   "sourceElements": [
       
  4613     {
       
  4614       "expression": {
       
  4615         "endPosition": "1141",
       
  4616         "kind": "ERROR",
       
  4617         "startPosition": "1140"
       
  4618       },
       
  4619       "endPosition": "1141",
       
  4620       "kind": "EXPRESSION_STATEMENT",
       
  4621       "startPosition": "1140"
       
  4622     },
       
  4623     {
       
  4624       "expression": {
       
  4625         "endPosition": "1181",
       
  4626         "kind": "ERROR",
       
  4627         "startPosition": "1180"
       
  4628       },
       
  4629       "endPosition": "1181",
       
  4630       "kind": "EXPRESSION_STATEMENT",
       
  4631       "startPosition": "1180"
       
  4632     },
       
  4633     {
       
  4634       "expression": {
       
  4635         "endPosition": "1221",
       
  4636         "kind": "ERROR",
       
  4637         "startPosition": "1220"
       
  4638       },
       
  4639       "endPosition": "1221",
       
  4640       "kind": "EXPRESSION_STATEMENT",
       
  4641       "startPosition": "1220"
       
  4642     },
       
  4643     {
       
  4644       "expression": {
       
  4645         "endPosition": "1265",
       
  4646         "kind": "ERROR",
       
  4647         "startPosition": "1264"
       
  4648       },
       
  4649       "endPosition": "1265",
       
  4650       "kind": "EXPRESSION_STATEMENT",
       
  4651       "startPosition": "1264"
       
  4652     },
       
  4653     {
       
  4654       "expression": {
       
  4655         "endPosition": "1311",
       
  4656         "kind": "ERROR",
       
  4657         "startPosition": "1310"
       
  4658       },
       
  4659       "endPosition": "1311",
       
  4660       "kind": "EXPRESSION_STATEMENT",
       
  4661       "startPosition": "1310"
       
  4662     }
       
  4663   ],
       
  4664   "sourceName": "parsernegativetests/repeatedproperty.js",
       
  4665   "strict": "false",
       
  4666   "startPosition": "1090"
       
  4667 }
       
  4668 ,
       
  4669 {
       
  4670   "fileName": "parsernegativetests/strict_repeatedproperty.js",
       
  4671   "code": "ident (1126, 3)",
       
  4672   "columnNumber": "21",
       
  4673   "kind": "ERROR",
       
  4674   "position": "1126",
       
  4675   "message": "parsernegativetests/strict_repeatedproperty.js:31:21 Property \"foo\" already defined\nvar obj = { foo: 34, foo: 'hello' };\n                     ^",
       
  4676   "lineNumber": "31"
       
  4677 }
       
  4678 ,
       
  4679 {
       
  4680   "endPosition": "1090",
       
  4681   "kind": "COMPILATION_UNIT",
       
  4682   "sourceElements": [
       
  4683     {
       
  4684       "expression": {
       
  4685         "endPosition": "1101",
       
  4686         "kind": "STRING_LITERAL",
       
  4687         "value": "use strict",
       
  4688         "startPosition": "1091"
       
  4689       },
       
  4690       "endPosition": "1101",
       
  4691       "kind": "EXPRESSION_STATEMENT",
       
  4692       "startPosition": "1091"
       
  4693     },
       
  4694     {
       
  4695       "expression": {
       
  4696         "endPosition": "1140",
       
  4697         "kind": "ERROR",
       
  4698         "startPosition": "1139"
       
  4699       },
       
  4700       "endPosition": "1140",
       
  4701       "kind": "EXPRESSION_STATEMENT",
       
  4702       "startPosition": "1139"
       
  4703     }
       
  4704   ],
       
  4705   "sourceName": "parsernegativetests/strict_repeatedproperty.js",
       
  4706   "strict": "true",
       
  4707   "startPosition": "1090"
       
  4708 }
       
  4709 ,
       
  4710 {
       
  4711   "fileName": "parsernegativetests/strict_repeatparam.js",
       
  4712   "code": "ident (1119, 1)",
       
  4713   "columnNumber": "14",
       
  4714   "kind": "ERROR",
       
  4715   "position": "1119",
       
  4716   "message": "parsernegativetests/strict_repeatparam.js:31:14 strict mode function cannot have duplicate parameter name \"x\"\nfunction func(x, x) {}\n              ^",
       
  4717   "lineNumber": "31"
       
  4718 }
       
  4719 ,
       
  4720 {
       
  4721   "endPosition": "1090",
       
  4722   "kind": "COMPILATION_UNIT",
       
  4723   "sourceElements": [
       
  4724     {
       
  4725       "expression": {
       
  4726         "endPosition": "1101",
       
  4727         "kind": "STRING_LITERAL",
       
  4728         "value": "use strict",
       
  4729         "startPosition": "1091"
       
  4730       },
       
  4731       "endPosition": "1101",
       
  4732       "kind": "EXPRESSION_STATEMENT",
       
  4733       "startPosition": "1091"
       
  4734     },
       
  4735     {
       
  4736       "expression": {
       
  4737         "endPosition": "1127",
       
  4738         "kind": "ERROR",
       
  4739         "startPosition": "1128"
       
  4740       },
       
  4741       "endPosition": "1127",
       
  4742       "kind": "EXPRESSION_STATEMENT",
       
  4743       "startPosition": "1128"
       
  4744     }
       
  4745   ],
       
  4746   "sourceName": "parsernegativetests/strict_repeatparam.js",
       
  4747   "strict": "true",
       
  4748   "startPosition": "1090"
       
  4749 }
       
  4750 ,
       
  4751 {
       
  4752   "fileName": "parsernegativetests/strict_with.js",
       
  4753   "code": "with (1105, 4)",
       
  4754   "columnNumber": "0",
       
  4755   "kind": "ERROR",
       
  4756   "position": "1105",
       
  4757   "message": "parsernegativetests/strict_with.js:31:0 \"with\" statement cannot be used in strict mode\nwith({}) {}\n^",
       
  4758   "lineNumber": "31"
       
  4759 }
       
  4760 ,
       
  4761 {
       
  4762   "fileName": "parsernegativetests/strict_with.js",
       
  4763   "code": ") (1112, 1)",
       
  4764   "columnNumber": "7",
       
  4765   "kind": "ERROR",
       
  4766   "position": "1112",
       
  4767   "message": "parsernegativetests/strict_with.js:31:7 Expected ; but found )\nwith({}) {}\n       ^",
       
  4768   "lineNumber": "31"
       
  4769 }
       
  4770 ,
       
  4771 {
       
  4772   "endPosition": "1090",
       
  4773   "kind": "COMPILATION_UNIT",
       
  4774   "sourceElements": [
       
  4775     {
       
  4776       "expression": {
       
  4777         "endPosition": "1101",
       
  4778         "kind": "STRING_LITERAL",
       
  4779         "value": "use strict",
       
  4780         "startPosition": "1091"
       
  4781       },
       
  4782       "endPosition": "1101",
       
  4783       "kind": "EXPRESSION_STATEMENT",
       
  4784       "startPosition": "1091"
       
  4785     },
       
  4786     {
       
  4787       "expression": {
       
  4788         "endPosition": "1112",
       
  4789         "kind": "ERROR",
       
  4790         "startPosition": "1109"
       
  4791       },
       
  4792       "endPosition": "1112",
       
  4793       "kind": "EXPRESSION_STATEMENT",
       
  4794       "startPosition": "1109"
       
  4795     },
       
  4796     {
       
  4797       "expression": {
       
  4798         "endPosition": "1116",
       
  4799         "kind": "ERROR",
       
  4800         "startPosition": "1112"
       
  4801       },
       
  4802       "endPosition": "1116",
       
  4803       "kind": "EXPRESSION_STATEMENT",
       
  4804       "startPosition": "1112"
       
  4805     }
       
  4806   ],
       
  4807   "sourceName": "parsernegativetests/strict_with.js",
       
  4808   "strict": "true",
       
  4809   "startPosition": "1090"
       
  4810 }
       
  4811 ,
       
  4812 {
       
  4813   "fileName": "parsernegativetests/toplevelreturn.js",
       
  4814   "code": "return (1090, 6)",
       
  4815   "columnNumber": "0",
       
  4816   "kind": "ERROR",
       
  4817   "position": "1090",
       
  4818   "message": "parsernegativetests/toplevelreturn.js:29:0 Invalid return statement\nreturn;\n^",
       
  4819   "lineNumber": "29"
       
  4820 }
       
  4821 ,
       
  4822 {
       
  4823   "fileName": "parsernegativetests/toplevelreturn.js",
       
  4824   "code": "return (1098, 6)",
       
  4825   "columnNumber": "0",
       
  4826   "kind": "ERROR",
       
  4827   "position": "1098",
       
  4828   "message": "parsernegativetests/toplevelreturn.js:30:0 Invalid return statement\nreturn 23;\n^",
       
  4829   "lineNumber": "30"
       
  4830 }
       
  4831 ,
       
  4832 {
       
  4833   "endPosition": "1090",
       
  4834   "kind": "COMPILATION_UNIT",
       
  4835   "sourceElements": [
       
  4836     {
       
  4837       "expression": {
       
  4838         "endPosition": "1097",
       
  4839         "kind": "ERROR",
       
  4840         "startPosition": "1090"
       
  4841       },
       
  4842       "endPosition": "1097",
       
  4843       "kind": "EXPRESSION_STATEMENT",
       
  4844       "startPosition": "1090"
       
  4845     },
       
  4846     {
       
  4847       "expression": {
       
  4848         "endPosition": "1108",
       
  4849         "kind": "ERROR",
       
  4850         "startPosition": "1098"
       
  4851       },
       
  4852       "endPosition": "1108",
       
  4853       "kind": "EXPRESSION_STATEMENT",
       
  4854       "startPosition": "1098"
       
  4855     }
       
  4856   ],
       
  4857   "sourceName": "parsernegativetests/toplevelreturn.js",
       
  4858   "strict": "false",
       
  4859   "startPosition": "1090"
       
  4860 }
       
  4861 ,
       
  4862 {
       
  4863   "endPosition": "1136",
       
  4864   "kind": "COMPILATION_UNIT",
       
  4865   "sourceElements": [
       
  4866     {
       
  4867       "endPosition": "1240",
       
  4868       "kind": "FUNCTION",
       
  4869       "name": "Parser",
       
  4870       "body": {
       
  4871         "endPosition": "1218",
       
  4872         "kind": "BLOCK",
       
  4873         "statements": [
       
  4874           {
       
  4875             "expression": {
       
  4876               "expression": {
       
  4877                 "endPosition": "1217",
       
  4878                 "kind": "FUNCTION_INVOCATION",
       
  4879                 "functionSelect": {
       
  4880                   "identifier": "create",
       
  4881                   "expression": {
       
  4882                     "endPosition": "1208",
       
  4883                     "kind": "IDENTIFIER",
       
  4884                     "name": "Parser",
       
  4885                     "startPosition": "1202"
       
  4886                   },
       
  4887                   "endPosition": "1215",
       
  4888                   "kind": "MEMBER_SELECT",
       
  4889                   "startPosition": "1202"
       
  4890                 },
       
  4891                 "arguments": [],
       
  4892                 "startPosition": "1202"
       
  4893               },
       
  4894               "endPosition": "1217",
       
  4895               "kind": "ASSIGNMENT",
       
  4896               "variable": {
       
  4897                 "identifier": "_parser",
       
  4898                 "expression": {
       
  4899                   "endPosition": "1191",
       
  4900                   "kind": "IDENTIFIER",
       
  4901                   "name": "this",
       
  4902                   "startPosition": "1187"
       
  4903                 },
       
  4904                 "endPosition": "1199",
       
  4905                 "kind": "MEMBER_SELECT",
       
  4906                 "startPosition": "1187"
       
  4907               },
       
  4908               "startPosition": "1187"
       
  4909             },
       
  4910             "endPosition": "1217",
       
  4911             "kind": "EXPRESSION_STATEMENT",
       
  4912             "startPosition": "1187"
       
  4913           }
       
  4914         ],
       
  4915         "startPosition": "1154"
       
  4916       },
       
  4917       "strict": "false",
       
  4918       "startPosition": "1136",
       
  4919       "parameters": []
       
  4920     },
       
  4921     {
       
  4922       "endPosition": "3598",
       
  4923       "kind": "FUNCTION",
       
  4924       "name": "processFiles",
       
  4925       "body": {
       
  4926         "endPosition": "3555",
       
  4927         "kind": "BLOCK",
       
  4928         "statements": [
       
  4929           {
       
  4930             "endPosition": "2938",
       
  4931             "kind": "VARIABLE",
       
  4932             "name": "File",
       
  4933             "startPosition": "2906",
       
  4934             "initializer": {
       
  4935               "endPosition": "2938",
       
  4936               "kind": "FUNCTION_INVOCATION",
       
  4937               "functionSelect": {
       
  4938                 "identifier": "type",
       
  4939                 "expression": {
       
  4940                   "endPosition": "2917",
       
  4941                   "kind": "IDENTIFIER",
       
  4942                   "name": "Java",
       
  4943                   "startPosition": "2913"
       
  4944                 },
       
  4945                 "endPosition": "2922",
       
  4946                 "kind": "MEMBER_SELECT",
       
  4947                 "startPosition": "2913"
       
  4948               },
       
  4949               "arguments": [
       
  4950                 {
       
  4951                   "endPosition": "2936",
       
  4952                   "kind": "STRING_LITERAL",
       
  4953                   "value": "java.io.File",
       
  4954                   "startPosition": "2924"
       
  4955                 }
       
  4956               ],
       
  4957               "startPosition": "2913"
       
  4958             }
       
  4959           },
       
  4960           {
       
  4961             "endPosition": "2993",
       
  4962             "kind": "VARIABLE",
       
  4963             "name": "files",
       
  4964             "startPosition": "2947",
       
  4965             "initializer": {
       
  4966               "endPosition": "2993",
       
  4967               "kind": "FUNCTION_INVOCATION",
       
  4968               "functionSelect": {
       
  4969                 "identifier": "listFiles",
       
  4970                 "expression": {
       
  4971                   "constructorExpression": {
       
  4972                     "endPosition": "2981",
       
  4973                     "kind": "FUNCTION_INVOCATION",
       
  4974                     "functionSelect": {
       
  4975                       "endPosition": "2963",
       
  4976                       "kind": "IDENTIFIER",
       
  4977                       "name": "File",
       
  4978                       "startPosition": "2959"
       
  4979                     },
       
  4980                     "arguments": [
       
  4981                       {
       
  4982                         "leftOperand": {
       
  4983                           "endPosition": "2971",
       
  4984                           "kind": "IDENTIFIER",
       
  4985                           "name": "__DIR__",
       
  4986                           "startPosition": "2964"
       
  4987                         },
       
  4988                         "endPosition": "2980",
       
  4989                         "kind": "PLUS",
       
  4990                         "rightOperand": {
       
  4991                           "endPosition": "2980",
       
  4992                           "kind": "IDENTIFIER",
       
  4993                           "name": "subdir",
       
  4994                           "startPosition": "2974"
       
  4995                         },
       
  4996                         "startPosition": "2964"
       
  4997                       }
       
  4998                     ],
       
  4999                     "startPosition": "2959"
       
  5000                   },
       
  5001                   "endPosition": "2981",
       
  5002                   "kind": "NEW",
       
  5003                   "startPosition": "2955"
       
  5004                 },
       
  5005                 "endPosition": "2991",
       
  5006                 "kind": "MEMBER_SELECT",
       
  5007                 "startPosition": "2955"
       
  5008               },
       
  5009               "arguments": [],
       
  5010               "startPosition": "2955"
       
  5011             }
       
  5012           },
       
  5013           {
       
  5014             "expression": {
       
  5015               "endPosition": "3026",
       
  5016               "kind": "FUNCTION_INVOCATION",
       
  5017               "functionSelect": {
       
  5018                 "identifier": "sort",
       
  5019                 "expression": {
       
  5020                   "identifier": "Arrays",
       
  5021                   "expression": {
       
  5022                     "identifier": "util",
       
  5023                     "expression": {
       
  5024                       "endPosition": "3002",
       
  5025                       "kind": "IDENTIFIER",
       
  5026                       "name": "java",
       
  5027                       "startPosition": "2998"
       
  5028                     },
       
  5029                     "endPosition": "3007",
       
  5030                     "kind": "MEMBER_SELECT",
       
  5031                     "startPosition": "2998"
       
  5032                   },
       
  5033                   "endPosition": "3014",
       
  5034                   "kind": "MEMBER_SELECT",
       
  5035                   "startPosition": "2998"
       
  5036                 },
       
  5037                 "endPosition": "3019",
       
  5038                 "kind": "MEMBER_SELECT",
       
  5039                 "startPosition": "2998"
       
  5040               },
       
  5041               "arguments": [
       
  5042                 {
       
  5043                   "endPosition": "3025",
       
  5044                   "kind": "IDENTIFIER",
       
  5045                   "name": "files",
       
  5046                   "startPosition": "3020"
       
  5047                 }
       
  5048               ],
       
  5049               "startPosition": "2998"
       
  5050             },
       
  5051             "endPosition": "3026",
       
  5052             "kind": "EXPRESSION_STATEMENT",
       
  5053             "startPosition": "2998"
       
  5054           },
       
  5055           {
       
  5056             "endPosition": "3049",
       
  5057             "kind": "VARIABLE",
       
  5058             "name": "file",
       
  5059             "startPosition": "3045"
       
  5060           },
       
  5061           {
       
  5062             "expression": {
       
  5063               "endPosition": "3058",
       
  5064               "kind": "IDENTIFIER",
       
  5065               "name": "files",
       
  5066               "startPosition": "3053"
       
  5067             },
       
  5068             "endPosition": "3555",
       
  5069             "kind": "FOR_IN_LOOP",
       
  5070             "forEach": "true",
       
  5071             "variable": {
       
  5072               "endPosition": "3049",
       
  5073               "kind": "IDENTIFIER",
       
  5074               "name": "file",
       
  5075               "startPosition": "3045"
       
  5076             },
       
  5077             "statement": {
       
  5078               "endPosition": "3555",
       
  5079               "kind": "BLOCK",
       
  5080               "statements": [
       
  5081                 {
       
  5082                   "condition": {
       
  5083                     "endPosition": "3098",
       
  5084                     "kind": "FUNCTION_INVOCATION",
       
  5085                     "functionSelect": {
       
  5086                       "identifier": "endsWith",
       
  5087                       "expression": {
       
  5088                         "identifier": "name",
       
  5089                         "expression": {
       
  5090                           "endPosition": "3077",
       
  5091                           "kind": "IDENTIFIER",
       
  5092                           "name": "file",
       
  5093                           "startPosition": "3073"
       
  5094                         },
       
  5095                         "endPosition": "3082",
       
  5096                         "kind": "MEMBER_SELECT",
       
  5097                         "startPosition": "3073"
       
  5098                       },
       
  5099                       "endPosition": "3091",
       
  5100                       "kind": "MEMBER_SELECT",
       
  5101                       "startPosition": "3073"
       
  5102                     },
       
  5103                     "arguments": [
       
  5104                       {
       
  5105                         "endPosition": "3096",
       
  5106                         "kind": "STRING_LITERAL",
       
  5107                         "value": ".js",
       
  5108                         "startPosition": "3093"
       
  5109                       }
       
  5110                     ],
       
  5111                     "startPosition": "3073"
       
  5112                   },
       
  5113                   "endPosition": "3550",
       
  5114                   "kind": "IF",
       
  5115                   "startPosition": "3069",
       
  5116                   "thenStatement": {
       
  5117                     "endPosition": "3550",
       
  5118                     "kind": "BLOCK",
       
  5119                     "statements": [
       
  5120                       {
       
  5121                         "endPosition": "3141",
       
  5122                         "kind": "VARIABLE",
       
  5123                         "name": "script",
       
  5124                         "startPosition": "3117",
       
  5125                         "initializer": {
       
  5126                           "endPosition": "3141",
       
  5127                           "kind": "FUNCTION_INVOCATION",
       
  5128                           "functionSelect": {
       
  5129                             "endPosition": "3135",
       
  5130                             "kind": "IDENTIFIER",
       
  5131                             "name": "readFully",
       
  5132                             "startPosition": "3126"
       
  5133                           },
       
  5134                           "arguments": [
       
  5135                             {
       
  5136                               "endPosition": "3140",
       
  5137                               "kind": "IDENTIFIER",
       
  5138                               "name": "file",
       
  5139                               "startPosition": "3136"
       
  5140                             }
       
  5141                           ],
       
  5142                           "startPosition": "3126"
       
  5143                         }
       
  5144                       },
       
  5145                       {
       
  5146                         "endPosition": "3179",
       
  5147                         "kind": "VARIABLE",
       
  5148                         "name": "parser",
       
  5149                         "startPosition": "3158",
       
  5150                         "initializer": {
       
  5151                           "constructorExpression": {
       
  5152                             "endPosition": "3179",
       
  5153                             "kind": "FUNCTION_INVOCATION",
       
  5154                             "functionSelect": {
       
  5155                               "endPosition": "3177",
       
  5156                               "kind": "IDENTIFIER",
       
  5157                               "name": "Parser",
       
  5158                               "startPosition": "3171"
       
  5159                             },
       
  5160                             "arguments": [],
       
  5161                             "startPosition": "3171"
       
  5162                           },
       
  5163                           "endPosition": "3179",
       
  5164                           "kind": "NEW",
       
  5165                           "startPosition": "3167"
       
  5166                         }
       
  5167                       },
       
  5168                       {
       
  5169                         "endPosition": "3415",
       
  5170                         "kind": "VARIABLE",
       
  5171                         "name": "tree",
       
  5172                         "startPosition": "3196",
       
  5173                         "initializer": {
       
  5174                           "endPosition": "3415",
       
  5175                           "kind": "FUNCTION_INVOCATION",
       
  5176                           "functionSelect": {
       
  5177                             "identifier": "parse",
       
  5178                             "expression": {
       
  5179                               "endPosition": "3209",
       
  5180                               "kind": "IDENTIFIER",
       
  5181                               "name": "parser",
       
  5182                               "startPosition": "3203"
       
  5183                             },
       
  5184                             "endPosition": "3215",
       
  5185                             "kind": "MEMBER_SELECT",
       
  5186                             "startPosition": "3203"
       
  5187                           },
       
  5188                           "arguments": [
       
  5189                             {
       
  5190                               "leftOperand": {
       
  5191                                 "leftOperand": {
       
  5192                                   "endPosition": "3222",
       
  5193                                   "kind": "IDENTIFIER",
       
  5194                                   "name": "subdir",
       
  5195                                   "startPosition": "3216"
       
  5196                                 },
       
  5197                                 "endPosition": "3227",
       
  5198                                 "kind": "PLUS",
       
  5199                                 "rightOperand": {
       
  5200                                   "endPosition": "3227",
       
  5201                                   "kind": "STRING_LITERAL",
       
  5202                                   "value": "/",
       
  5203                                   "startPosition": "3226"
       
  5204                                 },
       
  5205                                 "startPosition": "3216"
       
  5206                               },
       
  5207                               "endPosition": "3240",
       
  5208                               "kind": "PLUS",
       
  5209                               "rightOperand": {
       
  5210                                 "identifier": "name",
       
  5211                                 "expression": {
       
  5212                                   "endPosition": "3235",
       
  5213                                   "kind": "IDENTIFIER",
       
  5214                                   "name": "file",
       
  5215                                   "startPosition": "3231"
       
  5216                                 },
       
  5217                                 "endPosition": "3240",
       
  5218                                 "kind": "MEMBER_SELECT",
       
  5219                                 "startPosition": "3231"
       
  5220                               },
       
  5221                               "startPosition": "3216"
       
  5222                             },
       
  5223                             {
       
  5224                               "endPosition": "3248",
       
  5225                               "kind": "IDENTIFIER",
       
  5226                               "name": "script",
       
  5227                               "startPosition": "3242"
       
  5228                             },
       
  5229                             {
       
  5230                               "endPosition": "3286",
       
  5231                               "kind": "FUNCTION_EXPRESSION",
       
  5232                               "body": {
       
  5233                                 "endPosition": "3397",
       
  5234                                 "kind": "BLOCK",
       
  5235                                 "statements": [
       
  5236                                   {
       
  5237                                     "expression": {
       
  5238                                       "endPosition": "3365",
       
  5239                                       "kind": "FUNCTION_INVOCATION",
       
  5240                                       "functionSelect": {
       
  5241                                         "endPosition": "3312",
       
  5242                                         "kind": "IDENTIFIER",
       
  5243                                         "name": "print",
       
  5244                                         "startPosition": "3307"
       
  5245                                       },
       
  5246                                       "arguments": [
       
  5247                                         {
       
  5248                                           "endPosition": "3364",
       
  5249                                           "kind": "FUNCTION_INVOCATION",
       
  5250                                           "functionSelect": {
       
  5251                                             "identifier": "stringify",
       
  5252                                             "expression": {
       
  5253                                               "endPosition": "3317",
       
  5254                                               "kind": "IDENTIFIER",
       
  5255                                               "name": "JSON",
       
  5256                                               "startPosition": "3313"
       
  5257                                             },
       
  5258                                             "endPosition": "3327",
       
  5259                                             "kind": "MEMBER_SELECT",
       
  5260                                             "startPosition": "3313"
       
  5261                                           },
       
  5262                                           "arguments": [
       
  5263                                             {
       
  5264                                               "endPosition": "3354",
       
  5265                                               "kind": "FUNCTION_INVOCATION",
       
  5266                                               "functionSelect": {
       
  5267                                                 "identifier": "convert",
       
  5268                                                 "expression": {
       
  5269                                                   "endPosition": "3334",
       
  5270                                                   "kind": "IDENTIFIER",
       
  5271                                                   "name": "parser",
       
  5272                                                   "startPosition": "3328"
       
  5273                                                 },
       
  5274                                                 "endPosition": "3342",
       
  5275                                                 "kind": "MEMBER_SELECT",
       
  5276                                                 "startPosition": "3328"
       
  5277                                               },
       
  5278                                               "arguments": [
       
  5279                                                 {
       
  5280                                                   "endPosition": "3353",
       
  5281                                                   "kind": "IDENTIFIER",
       
  5282                                                   "name": "diagnostic",
       
  5283                                                   "startPosition": "3343"
       
  5284                                                 }
       
  5285                                               ],
       
  5286                                               "startPosition": "3328"
       
  5287                                             },
       
  5288                                             {
       
  5289                                               "endPosition": "3360",
       
  5290                                               "kind": "NULL_LITERAL",
       
  5291                                               "startPosition": "3356"
       
  5292                                             },
       
  5293                                             {
       
  5294                                               "endPosition": "3363",
       
  5295                                               "kind": "NUMBER_LITERAL",
       
  5296                                               "value": "2",
       
  5297                                               "startPosition": "3362"
       
  5298                                             }
       
  5299                                           ],
       
  5300                                           "startPosition": "3313"
       
  5301                                         }
       
  5302                                       ],
       
  5303                                       "startPosition": "3307"
       
  5304                                     },
       
  5305                                     "endPosition": "3365",
       
  5306                                     "kind": "EXPRESSION_STATEMENT",
       
  5307                                     "startPosition": "3307"
       
  5308                                   },
       
  5309                                   {
       
  5310                                     "expression": {
       
  5311                                       "endPosition": "3396",
       
  5312                                       "kind": "FUNCTION_INVOCATION",
       
  5313                                       "functionSelect": {
       
  5314                                         "endPosition": "3391",
       
  5315                                         "kind": "IDENTIFIER",
       
  5316                                         "name": "print",
       
  5317                                         "startPosition": "3386"
       
  5318                                       },
       
  5319                                       "arguments": [
       
  5320                                         {
       
  5321                                           "endPosition": "3394",
       
  5322                                           "kind": "STRING_LITERAL",
       
  5323                                           "value": ",",
       
  5324                                           "startPosition": "3393"
       
  5325                                         }
       
  5326                                       ],
       
  5327                                       "startPosition": "3386"
       
  5328                                     },
       
  5329                                     "endPosition": "3396",
       
  5330                                     "kind": "EXPRESSION_STATEMENT",
       
  5331                                     "startPosition": "3386"
       
  5332                                   }
       
  5333                                 ],
       
  5334                                 "startPosition": "3286"
       
  5335                               },
       
  5336                               "strict": "false",
       
  5337                               "startPosition": "3286",
       
  5338                               "parameters": [
       
  5339                                 {
       
  5340                                   "endPosition": "3284",
       
  5341                                   "kind": "IDENTIFIER",
       
  5342                                   "name": "diagnostic",
       
  5343                                   "startPosition": "3274"
       
  5344                                 }
       
  5345                               ]
       
  5346                             }
       
  5347                           ],
       
  5348                           "startPosition": "3203"
       
  5349                         }
       
  5350                       },
       
  5351                       {
       
  5352                         "condition": {
       
  5353                           "leftOperand": {
       
  5354                             "endPosition": "3437",
       
  5355                             "kind": "IDENTIFIER",
       
  5356                             "name": "tree",
       
  5357                             "startPosition": "3433"
       
  5358                           },
       
  5359                           "endPosition": "3445",
       
  5360                           "kind": "NOT_EQUAL_TO",
       
  5361                           "rightOperand": {
       
  5362                             "endPosition": "3445",
       
  5363                             "kind": "NULL_LITERAL",
       
  5364                             "startPosition": "3441"
       
  5365                           },
       
  5366                           "startPosition": "3433"
       
  5367                         },
       
  5368                         "endPosition": "3541",
       
  5369                         "kind": "IF",
       
  5370                         "startPosition": "3429",
       
  5371                         "thenStatement": {
       
  5372                           "endPosition": "3541",
       
  5373                           "kind": "BLOCK",
       
  5374                           "statements": [
       
  5375                             {
       
  5376                               "expression": {
       
  5377                                 "endPosition": "3500",
       
  5378                                 "kind": "FUNCTION_INVOCATION",
       
  5379                                 "functionSelect": {
       
  5380                                   "endPosition": "3469",
       
  5381                                   "kind": "IDENTIFIER",
       
  5382                                   "name": "print",
       
  5383                                   "startPosition": "3464"
       
  5384                                 },
       
  5385                                 "arguments": [
       
  5386                                   {
       
  5387                                     "endPosition": "3499",
       
  5388                                     "kind": "FUNCTION_INVOCATION",
       
  5389                                     "functionSelect": {
       
  5390                                       "identifier": "stringify",
       
  5391                                       "expression": {
       
  5392                                         "endPosition": "3474",
       
  5393                                         "kind": "IDENTIFIER",
       
  5394                                         "name": "JSON",
       
  5395                                         "startPosition": "3470"
       
  5396                                       },
       
  5397                                       "endPosition": "3484",
       
  5398                                       "kind": "MEMBER_SELECT",
       
  5399                                       "startPosition": "3470"
       
  5400                                     },
       
  5401                                     "arguments": [
       
  5402                                       {
       
  5403                                         "endPosition": "3489",
       
  5404                                         "kind": "IDENTIFIER",
       
  5405                                         "name": "tree",
       
  5406                                         "startPosition": "3485"
       
  5407                                       },
       
  5408                                       {
       
  5409                                         "endPosition": "3495",
       
  5410                                         "kind": "NULL_LITERAL",
       
  5411                                         "startPosition": "3491"
       
  5412                                       },
       
  5413                                       {
       
  5414                                         "endPosition": "3498",
       
  5415                                         "kind": "NUMBER_LITERAL",
       
  5416                                         "value": "2",
       
  5417                                         "startPosition": "3497"
       
  5418                                       }
       
  5419                                     ],
       
  5420                                     "startPosition": "3470"
       
  5421                                   }
       
  5422                                 ],
       
  5423                                 "startPosition": "3464"
       
  5424                               },
       
  5425                               "endPosition": "3500",
       
  5426                               "kind": "EXPRESSION_STATEMENT",
       
  5427                               "startPosition": "3464"
       
  5428                             },
       
  5429                             {
       
  5430                               "expression": {
       
  5431                                 "endPosition": "3527",
       
  5432                                 "kind": "FUNCTION_INVOCATION",
       
  5433                                 "functionSelect": {
       
  5434                                   "endPosition": "3522",
       
  5435                                   "kind": "IDENTIFIER",
       
  5436                                   "name": "print",
       
  5437                                   "startPosition": "3517"
       
  5438                                 },
       
  5439                                 "arguments": [
       
  5440                                   {
       
  5441                                     "endPosition": "3525",
       
  5442                                     "kind": "STRING_LITERAL",
       
  5443                                     "value": ",",
       
  5444                                     "startPosition": "3524"
       
  5445                                   }
       
  5446                                 ],
       
  5447                                 "startPosition": "3517"
       
  5448                               },
       
  5449                               "endPosition": "3527",
       
  5450                               "kind": "EXPRESSION_STATEMENT",
       
  5451                               "startPosition": "3517"
       
  5452                             }
       
  5453                           ],
       
  5454                           "startPosition": "3447"
       
  5455                         }
       
  5456                       }
       
  5457                     ],
       
  5458                     "startPosition": "3100"
       
  5459                   }
       
  5460                 }
       
  5461               ],
       
  5462               "startPosition": "3060"
       
  5463             },
       
  5464             "startPosition": "3031"
       
  5465           }
       
  5466         ],
       
  5467         "startPosition": "2897"
       
  5468       },
       
  5469       "strict": "false",
       
  5470       "startPosition": "2867",
       
  5471       "parameters": [
       
  5472         {
       
  5473           "endPosition": "2895",
       
  5474           "kind": "IDENTIFIER",
       
  5475           "name": "subdir",
       
  5476           "startPosition": "2889"
       
  5477         }
       
  5478       ]
       
  5479     },
       
  5480     {
       
  5481       "endPosition": "3901",
       
  5482       "kind": "FUNCTION",
       
  5483       "name": "main",
       
  5484       "body": {
       
  5485         "endPosition": "3899",
       
  5486         "kind": "BLOCK",
       
  5487         "statements": [
       
  5488           {
       
  5489             "expression": {
       
  5490               "endPosition": "3631",
       
  5491               "kind": "FUNCTION_INVOCATION",
       
  5492               "functionSelect": {
       
  5493                 "endPosition": "3626",
       
  5494                 "kind": "IDENTIFIER",
       
  5495                 "name": "print",
       
  5496                 "startPosition": "3621"
       
  5497               },
       
  5498               "arguments": [
       
  5499                 {
       
  5500                   "endPosition": "3629",
       
  5501                   "kind": "STRING_LITERAL",
       
  5502                   "value": "[",
       
  5503                   "startPosition": "3628"
       
  5504                 }
       
  5505               ],
       
  5506               "startPosition": "3621"
       
  5507             },
       
  5508             "endPosition": "3631",
       
  5509             "kind": "EXPRESSION_STATEMENT",
       
  5510             "startPosition": "3621"
       
  5511           },
       
  5512           {
       
  5513             "expression": {
       
  5514               "endPosition": "3665",
       
  5515               "kind": "FUNCTION_INVOCATION",
       
  5516               "functionSelect": {
       
  5517                 "endPosition": "3650",
       
  5518                 "kind": "IDENTIFIER",
       
  5519                 "name": "processFiles",
       
  5520                 "startPosition": "3638"
       
  5521               },
       
  5522               "arguments": [
       
  5523                 {
       
  5524                   "endPosition": "3663",
       
  5525                   "kind": "STRING_LITERAL",
       
  5526                   "value": "parsertests",
       
  5527                   "startPosition": "3652"
       
  5528                 }
       
  5529               ],
       
  5530               "startPosition": "3638"
       
  5531             },
       
  5532             "endPosition": "3665",
       
  5533             "kind": "EXPRESSION_STATEMENT",
       
  5534             "startPosition": "3638"
       
  5535           },
       
  5536           {
       
  5537             "expression": {
       
  5538               "endPosition": "3706",
       
  5539               "kind": "FUNCTION_INVOCATION",
       
  5540               "functionSelect": {
       
  5541                 "endPosition": "3683",
       
  5542                 "kind": "IDENTIFIER",
       
  5543                 "name": "processFiles",
       
  5544                 "startPosition": "3671"
       
  5545               },
       
  5546               "arguments": [
       
  5547                 {
       
  5548                   "endPosition": "3704",
       
  5549                   "kind": "STRING_LITERAL",
       
  5550                   "value": "parsernegativetests",
       
  5551                   "startPosition": "3685"
       
  5552                 }
       
  5553               ],
       
  5554               "startPosition": "3671"
       
  5555             },
       
  5556             "endPosition": "3706",
       
  5557             "kind": "EXPRESSION_STATEMENT",
       
  5558             "startPosition": "3671"
       
  5559           },
       
  5560           {
       
  5561             "endPosition": "3775",
       
  5562             "kind": "VARIABLE",
       
  5563             "name": "script",
       
  5564             "startPosition": "3747",
       
  5565             "initializer": {
       
  5566               "endPosition": "3775",
       
  5567               "kind": "FUNCTION_INVOCATION",
       
  5568               "functionSelect": {
       
  5569                 "endPosition": "3765",
       
  5570                 "kind": "IDENTIFIER",
       
  5571                 "name": "readFully",
       
  5572                 "startPosition": "3756"
       
  5573               },
       
  5574               "arguments": [
       
  5575                 {
       
  5576                   "endPosition": "3774",
       
  5577                   "kind": "IDENTIFIER",
       
  5578                   "name": "__FILE__",
       
  5579                   "startPosition": "3766"
       
  5580                 }
       
  5581               ],
       
  5582               "startPosition": "3756"
       
  5583             }
       
  5584           },
       
  5585           {
       
  5586             "endPosition": "3840",
       
  5587             "kind": "VARIABLE",
       
  5588             "name": "tree",
       
  5589             "startPosition": "3785",
       
  5590             "initializer": {
       
  5591               "endPosition": "3840",
       
  5592               "kind": "FUNCTION_INVOCATION",
       
  5593               "functionSelect": {
       
  5594                 "identifier": "parse",
       
  5595                 "expression": {
       
  5596                   "constructorExpression": {
       
  5597                     "endPosition": "3804",
       
  5598                     "kind": "FUNCTION_INVOCATION",
       
  5599                     "functionSelect": {
       
  5600                       "endPosition": "3802",
       
  5601                       "kind": "IDENTIFIER",
       
  5602                       "name": "Parser",
       
  5603                       "startPosition": "3796"
       
  5604                     },
       
  5605                     "arguments": [],
       
  5606                     "startPosition": "3796"
       
  5607                   },
       
  5608                   "endPosition": "3804",
       
  5609                   "kind": "NEW",
       
  5610                   "startPosition": "3792"
       
  5611                 },
       
  5612                 "endPosition": "3810",
       
  5613                 "kind": "MEMBER_SELECT",
       
  5614                 "startPosition": "3792"
       
  5615               },
       
  5616               "arguments": [
       
  5617                 {
       
  5618                   "endPosition": "3824",
       
  5619                   "kind": "STRING_LITERAL",
       
  5620                   "value": "parserapi.js",
       
  5621                   "startPosition": "3812"
       
  5622                 },
       
  5623                 {
       
  5624                   "endPosition": "3833",
       
  5625                   "kind": "IDENTIFIER",
       
  5626                   "name": "script",
       
  5627                   "startPosition": "3827"
       
  5628                 },
       
  5629                 {
       
  5630                   "endPosition": "3839",
       
  5631                   "kind": "NULL_LITERAL",
       
  5632                   "startPosition": "3835"
       
  5633                 }
       
  5634               ],
       
  5635               "startPosition": "3792"
       
  5636             }
       
  5637           },
       
  5638           {
       
  5639             "expression": {
       
  5640               "endPosition": "3882",
       
  5641               "kind": "FUNCTION_INVOCATION",
       
  5642               "functionSelect": {
       
  5643                 "endPosition": "3851",
       
  5644                 "kind": "IDENTIFIER",
       
  5645                 "name": "print",
       
  5646                 "startPosition": "3846"
       
  5647               },
       
  5648               "arguments": [
       
  5649                 {
       
  5650                   "endPosition": "3881",
       
  5651                   "kind": "FUNCTION_INVOCATION",
       
  5652                   "functionSelect": {
       
  5653                     "identifier": "stringify",
       
  5654                     "expression": {
       
  5655                       "endPosition": "3856",
       
  5656                       "kind": "IDENTIFIER",
       
  5657                       "name": "JSON",
       
  5658                       "startPosition": "3852"
       
  5659                     },
       
  5660                     "endPosition": "3866",
       
  5661                     "kind": "MEMBER_SELECT",
       
  5662                     "startPosition": "3852"
       
  5663                   },
       
  5664                   "arguments": [
       
  5665                     {
       
  5666                       "endPosition": "3871",
       
  5667                       "kind": "IDENTIFIER",
       
  5668                       "name": "tree",
       
  5669                       "startPosition": "3867"
       
  5670                     },
       
  5671                     {
       
  5672                       "endPosition": "3877",
       
  5673                       "kind": "NULL_LITERAL",
       
  5674                       "startPosition": "3873"
       
  5675                     },
       
  5676                     {
       
  5677                       "endPosition": "3880",
       
  5678                       "kind": "NUMBER_LITERAL",
       
  5679                       "value": "2",
       
  5680                       "startPosition": "3879"
       
  5681                     }
       
  5682                   ],
       
  5683                   "startPosition": "3852"
       
  5684                 }
       
  5685               ],
       
  5686               "startPosition": "3846"
       
  5687             },
       
  5688             "endPosition": "3882",
       
  5689             "kind": "EXPRESSION_STATEMENT",
       
  5690             "startPosition": "3846"
       
  5691           },
       
  5692           {
       
  5693             "expression": {
       
  5694               "endPosition": "3898",
       
  5695               "kind": "FUNCTION_INVOCATION",
       
  5696               "functionSelect": {
       
  5697                 "endPosition": "3893",
       
  5698                 "kind": "IDENTIFIER",
       
  5699                 "name": "print",
       
  5700                 "startPosition": "3888"
       
  5701               },
       
  5702               "arguments": [
       
  5703                 {
       
  5704                   "endPosition": "3896",
       
  5705                   "kind": "STRING_LITERAL",
       
  5706                   "value": "]",
       
  5707                   "startPosition": "3895"
       
  5708                 }
       
  5709               ],
       
  5710               "startPosition": "3888"
       
  5711             },
       
  5712             "endPosition": "3898",
       
  5713             "kind": "EXPRESSION_STATEMENT",
       
  5714             "startPosition": "3888"
       
  5715           }
       
  5716         ],
       
  5717         "startPosition": "3615"
       
  5718       },
       
  5719       "strict": "false",
       
  5720       "startPosition": "3599",
       
  5721       "parameters": []
       
  5722     },
       
  5723     {
       
  5724       "expression": {
       
  5725         "expression": {
       
  5726           "endPosition": "1305",
       
  5727           "kind": "FUNCTION_INVOCATION",
       
  5728           "functionSelect": {
       
  5729             "identifier": "type",
       
  5730             "expression": {
       
  5731               "endPosition": "1265",
       
  5732               "kind": "IDENTIFIER",
       
  5733               "name": "Java",
       
  5734               "startPosition": "1261"
       
  5735             },
       
  5736             "endPosition": "1270",
       
  5737             "kind": "MEMBER_SELECT",
       
  5738             "startPosition": "1261"
       
  5739           },
       
  5740           "arguments": [
       
  5741             {
       
  5742               "endPosition": "1303",
       
  5743               "kind": "STRING_LITERAL",
       
  5744               "value": "jdk.nashorn.api.tree.Diagnostic",
       
  5745               "startPosition": "1272"
       
  5746             }
       
  5747           ],
       
  5748           "startPosition": "1261"
       
  5749         },
       
  5750         "endPosition": "1305",
       
  5751         "kind": "ASSIGNMENT",
       
  5752         "variable": {
       
  5753           "identifier": "Diagnostic",
       
  5754           "expression": {
       
  5755             "endPosition": "1247",
       
  5756             "kind": "IDENTIFIER",
       
  5757             "name": "Parser",
       
  5758             "startPosition": "1241"
       
  5759           },
       
  5760           "endPosition": "1258",
       
  5761           "kind": "MEMBER_SELECT",
       
  5762           "startPosition": "1241"
       
  5763         },
       
  5764         "startPosition": "1241"
       
  5765       },
       
  5766       "endPosition": "1305",
       
  5767       "kind": "EXPRESSION_STATEMENT",
       
  5768       "startPosition": "1241"
       
  5769     },
       
  5770     {
       
  5771       "expression": {
       
  5772         "expression": {
       
  5773           "endPosition": "1390",
       
  5774           "kind": "FUNCTION_INVOCATION",
       
  5775           "functionSelect": {
       
  5776             "identifier": "type",
       
  5777             "expression": {
       
  5778               "endPosition": "1338",
       
  5779               "kind": "IDENTIFIER",
       
  5780               "name": "Java",
       
  5781               "startPosition": "1334"
       
  5782             },
       
  5783             "endPosition": "1343",
       
  5784             "kind": "MEMBER_SELECT",
       
  5785             "startPosition": "1334"
       
  5786           },
       
  5787           "arguments": [
       
  5788             {
       
  5789               "endPosition": "1388",
       
  5790               "kind": "STRING_LITERAL",
       
  5791               "value": "jdk.nashorn.api.tree.SimpleTreeVisitorES5_1",
       
  5792               "startPosition": "1345"
       
  5793             }
       
  5794           ],
       
  5795           "startPosition": "1334"
       
  5796         },
       
  5797         "endPosition": "1390",
       
  5798         "kind": "ASSIGNMENT",
       
  5799         "variable": {
       
  5800           "identifier": "SimpleTreeVisitor",
       
  5801           "expression": {
       
  5802             "endPosition": "1313",
       
  5803             "kind": "IDENTIFIER",
       
  5804             "name": "Parser",
       
  5805             "startPosition": "1307"
       
  5806           },
       
  5807           "endPosition": "1331",
       
  5808           "kind": "MEMBER_SELECT",
       
  5809           "startPosition": "1307"
       
  5810         },
       
  5811         "startPosition": "1307"
       
  5812       },
       
  5813       "endPosition": "1390",
       
  5814       "kind": "EXPRESSION_STATEMENT",
       
  5815       "startPosition": "1307"
       
  5816     },
       
  5817     {
       
  5818       "expression": {
       
  5819         "expression": {
       
  5820           "endPosition": "1444",
       
  5821           "kind": "FUNCTION_INVOCATION",
       
  5822           "functionSelect": {
       
  5823             "identifier": "type",
       
  5824             "expression": {
       
  5825               "endPosition": "1410",
       
  5826               "kind": "IDENTIFIER",
       
  5827               "name": "Java",
       
  5828               "startPosition": "1406"
       
  5829             },
       
  5830             "endPosition": "1415",
       
  5831             "kind": "MEMBER_SELECT",
       
  5832             "startPosition": "1406"
       
  5833           },
       
  5834           "arguments": [
       
  5835             {
       
  5836               "endPosition": "1442",
       
  5837               "kind": "STRING_LITERAL",
       
  5838               "value": "jdk.nashorn.api.tree.Tree",
       
  5839               "startPosition": "1417"
       
  5840             }
       
  5841           ],
       
  5842           "startPosition": "1406"
       
  5843         },
       
  5844         "endPosition": "1444",
       
  5845         "kind": "ASSIGNMENT",
       
  5846         "variable": {
       
  5847           "identifier": "Tree",
       
  5848           "expression": {
       
  5849             "endPosition": "1398",
       
  5850             "kind": "IDENTIFIER",
       
  5851             "name": "Parser",
       
  5852             "startPosition": "1392"
       
  5853           },
       
  5854           "endPosition": "1403",
       
  5855           "kind": "MEMBER_SELECT",
       
  5856           "startPosition": "1392"
       
  5857         },
       
  5858         "startPosition": "1392"
       
  5859       },
       
  5860       "endPosition": "1444",
       
  5861       "kind": "EXPRESSION_STATEMENT",
       
  5862       "startPosition": "1392"
       
  5863     },
       
  5864     {
       
  5865       "expression": {
       
  5866         "expression": {
       
  5867           "endPosition": "1487",
       
  5868           "kind": "FUNCTION_INVOCATION",
       
  5869           "functionSelect": {
       
  5870             "identifier": "type",
       
  5871             "expression": {
       
  5872               "endPosition": "1464",
       
  5873               "kind": "IDENTIFIER",
       
  5874               "name": "Java",
       
  5875               "startPosition": "1460"
       
  5876             },
       
  5877             "endPosition": "1469",
       
  5878             "kind": "MEMBER_SELECT",
       
  5879             "startPosition": "1460"
       
  5880           },
       
  5881           "arguments": [
       
  5882             {
       
  5883               "endPosition": "1485",
       
  5884               "kind": "STRING_LITERAL",
       
  5885               "value": "java.util.List",
       
  5886               "startPosition": "1471"
       
  5887             }
       
  5888           ],
       
  5889           "startPosition": "1460"
       
  5890         },
       
  5891         "endPosition": "1487",
       
  5892         "kind": "ASSIGNMENT",
       
  5893         "variable": {
       
  5894           "identifier": "List",
       
  5895           "expression": {
       
  5896             "endPosition": "1452",
       
  5897             "kind": "IDENTIFIER",
       
  5898             "name": "Parser",
       
  5899             "startPosition": "1446"
       
  5900           },
       
  5901           "endPosition": "1457",
       
  5902           "kind": "MEMBER_SELECT",
       
  5903           "startPosition": "1446"
       
  5904         },
       
  5905         "startPosition": "1446"
       
  5906       },
       
  5907       "endPosition": "1487",
       
  5908       "kind": "EXPRESSION_STATEMENT",
       
  5909       "startPosition": "1446"
       
  5910     },
       
  5911     {
       
  5912       "expression": {
       
  5913         "expression": {
       
  5914           "endPosition": "1530",
       
  5915           "kind": "FUNCTION_INVOCATION",
       
  5916           "functionSelect": {
       
  5917             "identifier": "type",
       
  5918             "expression": {
       
  5919               "endPosition": "1507",
       
  5920               "kind": "IDENTIFIER",
       
  5921               "name": "Java",
       
  5922               "startPosition": "1503"
       
  5923             },
       
  5924             "endPosition": "1512",
       
  5925             "kind": "MEMBER_SELECT",
       
  5926             "startPosition": "1503"
       
  5927           },
       
  5928           "arguments": [
       
  5929             {
       
  5930               "endPosition": "1528",
       
  5931               "kind": "STRING_LITERAL",
       
  5932               "value": "java.lang.Enum",
       
  5933               "startPosition": "1514"
       
  5934             }
       
  5935           ],
       
  5936           "startPosition": "1503"
       
  5937         },
       
  5938         "endPosition": "1530",
       
  5939         "kind": "ASSIGNMENT",
       
  5940         "variable": {
       
  5941           "identifier": "Enum",
       
  5942           "expression": {
       
  5943             "endPosition": "1495",
       
  5944             "kind": "IDENTIFIER",
       
  5945             "name": "Parser",
       
  5946             "startPosition": "1489"
       
  5947           },
       
  5948           "endPosition": "1500",
       
  5949           "kind": "MEMBER_SELECT",
       
  5950           "startPosition": "1489"
       
  5951         },
       
  5952         "startPosition": "1489"
       
  5953       },
       
  5954       "endPosition": "1530",
       
  5955       "kind": "EXPRESSION_STATEMENT",
       
  5956       "startPosition": "1489"
       
  5957     },
       
  5958     {
       
  5959       "expression": {
       
  5960         "expression": {
       
  5961           "endPosition": "1657",
       
  5962           "kind": "FUNCTION_EXPRESSION",
       
  5963           "body": {
       
  5964             "endPosition": "1803",
       
  5965             "kind": "BLOCK",
       
  5966             "statements": [
       
  5967               {
       
  5968                 "endPosition": "1716",
       
  5969                 "kind": "VARIABLE",
       
  5970                 "name": "tree",
       
  5971                 "startPosition": "1667",
       
  5972                 "initializer": {
       
  5973                   "endPosition": "1716",
       
  5974                   "kind": "FUNCTION_INVOCATION",
       
  5975                   "functionSelect": {
       
  5976                     "identifier": "parse",
       
  5977                     "expression": {
       
  5978                       "identifier": "_parser",
       
  5979                       "expression": {
       
  5980                         "endPosition": "1678",
       
  5981                         "kind": "IDENTIFIER",
       
  5982                         "name": "this",
       
  5983                         "startPosition": "1674"
       
  5984                       },
       
  5985                       "endPosition": "1686",
       
  5986                       "kind": "MEMBER_SELECT",
       
  5987                       "startPosition": "1674"
       
  5988                     },
       
  5989                     "endPosition": "1692",
       
  5990                     "kind": "MEMBER_SELECT",
       
  5991                     "startPosition": "1674"
       
  5992                   },
       
  5993                   "arguments": [
       
  5994                     {
       
  5995                       "endPosition": "1697",
       
  5996                       "kind": "IDENTIFIER",
       
  5997                       "name": "name",
       
  5998                       "startPosition": "1693"
       
  5999                     },
       
  6000                     {
       
  6001                       "endPosition": "1705",
       
  6002                       "kind": "IDENTIFIER",
       
  6003                       "name": "script",
       
  6004                       "startPosition": "1699"
       
  6005                     },
       
  6006                     {
       
  6007                       "endPosition": "1715",
       
  6008                       "kind": "IDENTIFIER",
       
  6009                       "name": "listener",
       
  6010                       "startPosition": "1707"
       
  6011                     }
       
  6012                   ],
       
  6013                   "startPosition": "1674"
       
  6014                 }
       
  6015               },
       
  6016               {
       
  6017                 "expression": {
       
  6018                   "endPosition": "1771",
       
  6019                   "kind": "FUNCTION_INVOCATION",
       
  6020                   "functionSelect": {
       
  6021                     "identifier": "accept",
       
  6022                     "expression": {
       
  6023                       "endPosition": "1726",
       
  6024                       "kind": "IDENTIFIER",
       
  6025                       "name": "tree",
       
  6026                       "startPosition": "1722"
       
  6027                     },
       
  6028                     "endPosition": "1733",
       
  6029                     "kind": "MEMBER_SELECT",
       
  6030                     "startPosition": "1722"
       
  6031                   },
       
  6032                   "arguments": [
       
  6033                     {
       
  6034                       "constructorExpression": {
       
  6035                         "endPosition": "1764",
       
  6036                         "kind": "FUNCTION_INVOCATION",
       
  6037                         "functionSelect": {
       
  6038                           "identifier": "SimpleTreeVisitor",
       
  6039                           "expression": {
       
  6040                             "endPosition": "1744",
       
  6041                             "kind": "IDENTIFIER",
       
  6042                             "name": "Parser",
       
  6043                             "startPosition": "1738"
       
  6044                           },
       
  6045                           "endPosition": "1762",
       
  6046                           "kind": "MEMBER_SELECT",
       
  6047                           "startPosition": "1738"
       
  6048                         },
       
  6049                         "arguments": [],
       
  6050                         "startPosition": "1744"
       
  6051                       },
       
  6052                       "endPosition": "1764",
       
  6053                       "kind": "NEW",
       
  6054                       "startPosition": "1734"
       
  6055                     },
       
  6056                     {
       
  6057                       "endPosition": "1770",
       
  6058                       "kind": "NULL_LITERAL",
       
  6059                       "startPosition": "1766"
       
  6060                     }
       
  6061                   ],
       
  6062                   "startPosition": "1722"
       
  6063                 },
       
  6064                 "endPosition": "1771",
       
  6065                 "kind": "EXPRESSION_STATEMENT",
       
  6066                 "startPosition": "1722"
       
  6067               },
       
  6068               {
       
  6069                 "expression": {
       
  6070                   "endPosition": "1802",
       
  6071                   "kind": "FUNCTION_INVOCATION",
       
  6072                   "functionSelect": {
       
  6073                     "identifier": "convert",
       
  6074                     "expression": {
       
  6075                       "endPosition": "1788",
       
  6076                       "kind": "IDENTIFIER",
       
  6077                       "name": "this",
       
  6078                       "startPosition": "1784"
       
  6079                     },
       
  6080                     "endPosition": "1796",
       
  6081                     "kind": "MEMBER_SELECT",
       
  6082                     "startPosition": "1784"
       
  6083                   },
       
  6084                   "arguments": [
       
  6085                     {
       
  6086                       "endPosition": "1801",
       
  6087                       "kind": "IDENTIFIER",
       
  6088                       "name": "tree",
       
  6089                       "startPosition": "1797"
       
  6090                     }
       
  6091                   ],
       
  6092                   "startPosition": "1784"
       
  6093                 },
       
  6094                 "endPosition": "1803",
       
  6095                 "kind": "RETURN",
       
  6096                 "startPosition": "1777"
       
  6097               }
       
  6098             ],
       
  6099             "startPosition": "1657"
       
  6100           },
       
  6101           "strict": "false",
       
  6102           "startPosition": "1657",
       
  6103           "parameters": [
       
  6104             {
       
  6105               "endPosition": "1637",
       
  6106               "kind": "IDENTIFIER",
       
  6107               "name": "name",
       
  6108               "startPosition": "1633"
       
  6109             },
       
  6110             {
       
  6111               "endPosition": "1645",
       
  6112               "kind": "IDENTIFIER",
       
  6113               "name": "script",
       
  6114               "startPosition": "1639"
       
  6115             },
       
  6116             {
       
  6117               "endPosition": "1655",
       
  6118               "kind": "IDENTIFIER",
       
  6119               "name": "listener",
       
  6120               "startPosition": "1647"
       
  6121             }
       
  6122           ]
       
  6123         },
       
  6124         "endPosition": "1657",
       
  6125         "kind": "ASSIGNMENT",
       
  6126         "variable": {
       
  6127           "identifier": "parse",
       
  6128           "expression": {
       
  6129             "identifier": "prototype",
       
  6130             "expression": {
       
  6131               "endPosition": "1605",
       
  6132               "kind": "IDENTIFIER",
       
  6133               "name": "Parser",
       
  6134               "startPosition": "1599"
       
  6135             },
       
  6136             "endPosition": "1615",
       
  6137             "kind": "MEMBER_SELECT",
       
  6138             "startPosition": "1599"
       
  6139           },
       
  6140           "endPosition": "1621",
       
  6141           "kind": "MEMBER_SELECT",
       
  6142           "startPosition": "1599"
       
  6143         },
       
  6144         "startPosition": "1599"
       
  6145       },
       
  6146       "endPosition": "1805",
       
  6147       "kind": "EXPRESSION_STATEMENT",
       
  6148       "startPosition": "1599"
       
  6149     },
       
  6150     {
       
  6151       "expression": {
       
  6152         "expression": {
       
  6153           "endPosition": "1834",
       
  6154           "kind": "FUNCTION_EXPRESSION",
       
  6155           "body": {
       
  6156             "endPosition": "1897",
       
  6157             "kind": "BLOCK",
       
  6158             "statements": [
       
  6159               {
       
  6160                 "expression": {
       
  6161                   "endPosition": "1896",
       
  6162                   "kind": "FUNCTION_INVOCATION",
       
  6163                   "functionSelect": {
       
  6164                     "identifier": "create",
       
  6165                     "expression": {
       
  6166                       "endPosition": "1887",
       
  6167                       "kind": "FUNCTION_INVOCATION",
       
  6168                       "functionSelect": {
       
  6169                         "identifier": "type",
       
  6170                         "expression": {
       
  6171                           "endPosition": "1851",
       
  6172                           "kind": "IDENTIFIER",
       
  6173                           "name": "Java",
       
  6174                           "startPosition": "1847"
       
  6175                         },
       
  6176                         "endPosition": "1856",
       
  6177                         "kind": "MEMBER_SELECT",
       
  6178                         "startPosition": "1847"
       
  6179                       },
       
  6180                       "arguments": [
       
  6181                         {
       
  6182                           "endPosition": "1885",
       
  6183                           "kind": "STRING_LITERAL",
       
  6184                           "value": "jdk.nashorn.api.tree.Parser",
       
  6185                           "startPosition": "1858"
       
  6186                         }
       
  6187                       ],
       
  6188                       "startPosition": "1847"
       
  6189                     },
       
  6190                     "endPosition": "1894",
       
  6191                     "kind": "MEMBER_SELECT",
       
  6192                     "startPosition": "1847"
       
  6193                   },
       
  6194                   "arguments": [],
       
  6195                   "startPosition": "1894"
       
  6196                 },
       
  6197                 "endPosition": "1897",
       
  6198                 "kind": "RETURN",
       
  6199                 "startPosition": "1840"
       
  6200               }
       
  6201             ],
       
  6202             "startPosition": "1834"
       
  6203           },
       
  6204           "strict": "false",
       
  6205           "startPosition": "1834",
       
  6206           "parameters": []
       
  6207         },
       
  6208         "endPosition": "1834",
       
  6209         "kind": "ASSIGNMENT",
       
  6210         "variable": {
       
  6211           "identifier": "create",
       
  6212           "expression": {
       
  6213             "endPosition": "1813",
       
  6214             "kind": "IDENTIFIER",
       
  6215             "name": "Parser",
       
  6216             "startPosition": "1807"
       
  6217           },
       
  6218           "endPosition": "1820",
       
  6219           "kind": "MEMBER_SELECT",
       
  6220           "startPosition": "1807"
       
  6221         },
       
  6222         "startPosition": "1807"
       
  6223       },
       
  6224       "endPosition": "1971",
       
  6225       "kind": "EXPRESSION_STATEMENT",
       
  6226       "startPosition": "1807"
       
  6227     },
       
  6228     {
       
  6229       "expression": {
       
  6230         "expression": {
       
  6231           "endPosition": "2014",
       
  6232           "kind": "FUNCTION_EXPRESSION",
       
  6233           "body": {
       
  6234             "endPosition": "2863",
       
  6235             "kind": "BLOCK",
       
  6236             "statements": [
       
  6237               {
       
  6238                 "condition": {
       
  6239                   "leftOperand": {
       
  6240                     "expression": {
       
  6241                       "endPosition": "2029",
       
  6242                       "kind": "IDENTIFIER",
       
  6243                       "name": "tree",
       
  6244                       "startPosition": "2025"
       
  6245                     },
       
  6246                     "endPosition": "2029",
       
  6247                     "kind": "LOGICAL_COMPLEMENT",
       
  6248                     "startPosition": "2024"
       
  6249                   },
       
  6250                   "endPosition": "2055",
       
  6251                   "kind": "CONDITIONAL_OR",
       
  6252                   "rightOperand": {
       
  6253                     "leftOperand": {
       
  6254                       "expression": {
       
  6255                         "endPosition": "2044",
       
  6256                         "kind": "IDENTIFIER",
       
  6257                         "name": "tree",
       
  6258                         "startPosition": "2040"
       
  6259                       },
       
  6260                       "endPosition": "2044",
       
  6261                       "kind": "TYPEOF",
       
  6262                       "startPosition": "2033"
       
  6263                     },
       
  6264                     "endPosition": "2055",
       
  6265                     "kind": "NOT_EQUAL_TO",
       
  6266                     "rightOperand": {
       
  6267                       "endPosition": "2055",
       
  6268                       "kind": "STRING_LITERAL",
       
  6269                       "value": "object",
       
  6270                       "startPosition": "2049"
       
  6271                     },
       
  6272                     "startPosition": "2033"
       
  6273                   },
       
  6274                   "startPosition": "2024"
       
  6275                 },
       
  6276                 "endPosition": "2086",
       
  6277                 "kind": "IF",
       
  6278                 "startPosition": "2020",
       
  6279                 "thenStatement": {
       
  6280                   "endPosition": "2086",
       
  6281                   "kind": "BLOCK",
       
  6282                   "statements": [
       
  6283                     {
       
  6284                       "expression": {
       
  6285                         "endPosition": "2079",
       
  6286                         "kind": "IDENTIFIER",
       
  6287                         "name": "tree",
       
  6288                         "startPosition": "2075"
       
  6289                       },
       
  6290                       "endPosition": "2080",
       
  6291                       "kind": "RETURN",
       
  6292                       "startPosition": "2068"
       
  6293                     }
       
  6294                   ],
       
  6295                   "startPosition": "2058"
       
  6296                 }
       
  6297               },
       
  6298               {
       
  6299                 "endPosition": "2133",
       
  6300                 "kind": "VARIABLE",
       
  6301                 "name": "obj",
       
  6302                 "startPosition": "2096",
       
  6303                 "initializer": {
       
  6304                   "endPosition": "2133",
       
  6305                   "kind": "FUNCTION_INVOCATION",
       
  6306                   "functionSelect": {
       
  6307                     "identifier": "bindProperties",
       
  6308                     "expression": {
       
  6309                       "endPosition": "2108",
       
  6310                       "kind": "IDENTIFIER",
       
  6311                       "name": "Object",
       
  6312                       "startPosition": "2102"
       
  6313                     },
       
  6314                     "endPosition": "2123",
       
  6315                     "kind": "MEMBER_SELECT",
       
  6316                     "startPosition": "2102"
       
  6317                   },
       
  6318                   "arguments": [
       
  6319                     {
       
  6320                       "endPosition": "2126",
       
  6321                       "kind": "OBJECT_LITERAL",
       
  6322                       "startPosition": "2124",
       
  6323                       "properties": []
       
  6324                     },
       
  6325                     {
       
  6326                       "endPosition": "2132",
       
  6327                       "kind": "IDENTIFIER",
       
  6328                       "name": "tree",
       
  6329                       "startPosition": "2128"
       
  6330                     }
       
  6331                   ],
       
  6332                   "startPosition": "2102"
       
  6333                 }
       
  6334               },
       
  6335               {
       
  6336                 "endPosition": "2154",
       
  6337                 "kind": "VARIABLE",
       
  6338                 "name": "result",
       
  6339                 "startPosition": "2143",
       
  6340                 "initializer": {
       
  6341                   "endPosition": "2154",
       
  6342                   "kind": "OBJECT_LITERAL",
       
  6343                   "startPosition": "2152",
       
  6344                   "properties": []
       
  6345                 }
       
  6346               },
       
  6347               {
       
  6348                 "endPosition": "2170",
       
  6349                 "kind": "VARIABLE",
       
  6350                 "name": "i",
       
  6351                 "startPosition": "2169"
       
  6352               },
       
  6353               {
       
  6354                 "expression": {
       
  6355                   "endPosition": "2177",
       
  6356                   "kind": "IDENTIFIER",
       
  6357                   "name": "obj",
       
  6358                   "startPosition": "2174"
       
  6359                 },
       
  6360                 "endPosition": "2845",
       
  6361                 "kind": "FOR_IN_LOOP",
       
  6362                 "forEach": "false",
       
  6363                 "variable": {
       
  6364                   "endPosition": "2170",
       
  6365                   "kind": "IDENTIFIER",
       
  6366                   "name": "i",
       
  6367                   "startPosition": "2169"
       
  6368                 },
       
  6369                 "statement": {
       
  6370                   "endPosition": "2845",
       
  6371                   "kind": "BLOCK",
       
  6372                   "statements": [
       
  6373                     {
       
  6374                       "endPosition": "2204",
       
  6375                       "kind": "VARIABLE",
       
  6376                       "name": "val",
       
  6377                       "startPosition": "2192",
       
  6378                       "initializer": {
       
  6379                         "expression": {
       
  6380                           "endPosition": "2201",
       
  6381                           "kind": "IDENTIFIER",
       
  6382                           "name": "obj",
       
  6383                           "startPosition": "2198"
       
  6384                         },
       
  6385                         "endPosition": "2204",
       
  6386                         "kind": "ARRAY_ACCESS",
       
  6387                         "index": {
       
  6388                           "endPosition": "2203",
       
  6389                           "kind": "IDENTIFIER",
       
  6390                           "name": "i",
       
  6391                           "startPosition": "2202"
       
  6392                         },
       
  6393                         "startPosition": "2198"
       
  6394                       }
       
  6395                     },
       
  6396                     {
       
  6397                       "condition": {
       
  6398                         "leftOperand": {
       
  6399                           "endPosition": "2220",
       
  6400                           "kind": "IDENTIFIER",
       
  6401                           "name": "val",
       
  6402                           "startPosition": "2217"
       
  6403                         },
       
  6404                         "expression": {
       
  6405                           "endPosition": "2220",
       
  6406                           "kind": "IDENTIFIER",
       
  6407                           "name": "val",
       
  6408                           "startPosition": "2217"
       
  6409                         },
       
  6410                         "endPosition": "2243",
       
  6411                         "kind": "INSTANCE_OF",
       
  6412                         "rightOperand": {
       
  6413                           "identifier": "Tree",
       
  6414                           "expression": {
       
  6415                             "endPosition": "2238",
       
  6416                             "kind": "IDENTIFIER",
       
  6417                             "name": "Parser",
       
  6418                             "startPosition": "2232"
       
  6419                           },
       
  6420                           "endPosition": "2243",
       
  6421                           "kind": "MEMBER_SELECT",
       
  6422                           "startPosition": "2232"
       
  6423                         },
       
  6424                         "type": {
       
  6425                           "identifier": "Tree",
       
  6426                           "expression": {
       
  6427                             "endPosition": "2238",
       
  6428                             "kind": "IDENTIFIER",
       
  6429                             "name": "Parser",
       
  6430                             "startPosition": "2232"
       
  6431                           },
       
  6432                           "endPosition": "2243",
       
  6433                           "kind": "MEMBER_SELECT",
       
  6434                           "startPosition": "2232"
       
  6435                         },
       
  6436                         "startPosition": "2217"
       
  6437                       },
       
  6438                       "elseStatement": {
       
  6439                         "condition": {
       
  6440                           "leftOperand": {
       
  6441                             "endPosition": "2309",
       
  6442                             "kind": "IDENTIFIER",
       
  6443                             "name": "val",
       
  6444                             "startPosition": "2306"
       
  6445                           },
       
  6446                           "expression": {
       
  6447                             "endPosition": "2309",
       
  6448                             "kind": "IDENTIFIER",
       
  6449                             "name": "val",
       
  6450                             "startPosition": "2306"
       
  6451                           },
       
  6452                           "endPosition": "2332",
       
  6453                           "kind": "INSTANCE_OF",
       
  6454                           "rightOperand": {
       
  6455                             "identifier": "List",
       
  6456                             "expression": {
       
  6457                               "endPosition": "2327",
       
  6458                               "kind": "IDENTIFIER",
       
  6459                               "name": "Parser",
       
  6460                               "startPosition": "2321"
       
  6461                             },
       
  6462                             "endPosition": "2332",
       
  6463                             "kind": "MEMBER_SELECT",
       
  6464                             "startPosition": "2321"
       
  6465                           },
       
  6466                           "type": {
       
  6467                             "identifier": "List",
       
  6468                             "expression": {
       
  6469                               "endPosition": "2327",
       
  6470                               "kind": "IDENTIFIER",
       
  6471                               "name": "Parser",
       
  6472                               "startPosition": "2321"
       
  6473                             },
       
  6474                             "endPosition": "2332",
       
  6475                             "kind": "MEMBER_SELECT",
       
  6476                             "startPosition": "2321"
       
  6477                           },
       
  6478                           "startPosition": "2306"
       
  6479                         },
       
  6480                         "elseStatement": {
       
  6481                           "endPosition": "2840",
       
  6482                           "kind": "BLOCK",
       
  6483                           "statements": [
       
  6484                             {
       
  6485                               "cases": [
       
  6486                                 {
       
  6487                                   "expression": {
       
  6488                                     "endPosition": "2574",
       
  6489                                     "kind": "STRING_LITERAL",
       
  6490                                     "value": "number",
       
  6491                                     "startPosition": "2568"
       
  6492                                   },
       
  6493                                   "endPosition": "2576",
       
  6494                                   "kind": "CASE",
       
  6495                                   "statements": [],
       
  6496                                   "startPosition": "2562"
       
  6497                                 },
       
  6498                                 {
       
  6499                                   "expression": {
       
  6500                                     "endPosition": "2603",
       
  6501                                     "kind": "STRING_LITERAL",
       
  6502                                     "value": "string",
       
  6503                                     "startPosition": "2597"
       
  6504                                   },
       
  6505                                   "endPosition": "2605",
       
  6506                                   "kind": "CASE",
       
  6507                                   "statements": [],
       
  6508                                   "startPosition": "2591"
       
  6509                                 },
       
  6510                                 {
       
  6511                                   "expression": {
       
  6512                                     "endPosition": "2633",
       
  6513                                     "kind": "STRING_LITERAL",
       
  6514                                     "value": "boolean",
       
  6515                                     "startPosition": "2626"
       
  6516                                   },
       
  6517                                   "endPosition": "2678",
       
  6518                                   "kind": "CASE",
       
  6519                                   "statements": [
       
  6520                                     {
       
  6521                                       "expression": {
       
  6522                                         "expression": {
       
  6523                                           "endPosition": "2677",
       
  6524                                           "kind": "FUNCTION_INVOCATION",
       
  6525                                           "functionSelect": {
       
  6526                                             "endPosition": "2672",
       
  6527                                             "kind": "IDENTIFIER",
       
  6528                                             "name": "String",
       
  6529                                             "startPosition": "2666"
       
  6530                                           },
       
  6531                                           "arguments": [
       
  6532                                             {
       
  6533                                               "endPosition": "2676",
       
  6534                                               "kind": "IDENTIFIER",
       
  6535                                               "name": "val",
       
  6536                                               "startPosition": "2673"
       
  6537                                             }
       
  6538                                           ],
       
  6539                                           "startPosition": "2666"
       
  6540                                         },
       
  6541                                         "endPosition": "2677",
       
  6542                                         "kind": "ASSIGNMENT",
       
  6543                                         "variable": {
       
  6544                                           "expression": {
       
  6545                                             "endPosition": "2660",
       
  6546                                             "kind": "IDENTIFIER",
       
  6547                                             "name": "result",
       
  6548                                             "startPosition": "2654"
       
  6549                                           },
       
  6550                                           "endPosition": "2663",
       
  6551                                           "kind": "ARRAY_ACCESS",
       
  6552                                           "index": {
       
  6553                                             "endPosition": "2662",
       
  6554                                             "kind": "IDENTIFIER",
       
  6555                                             "name": "i",
       
  6556                                             "startPosition": "2661"
       
  6557                                           },
       
  6558                                           "startPosition": "2654"
       
  6559                                         },
       
  6560                                         "startPosition": "2654"
       
  6561                                       },
       
  6562                                       "endPosition": "2677",
       
  6563                                       "kind": "EXPRESSION_STATEMENT",
       
  6564                                       "startPosition": "2654"
       
  6565                                     }
       
  6566                                   ],
       
  6567                                   "startPosition": "2620"
       
  6568                                 },
       
  6569                                 {
       
  6570                                   "endPosition": "2820",
       
  6571                                   "kind": "CASE",
       
  6572                                   "statements": [
       
  6573                                     {
       
  6574                                       "condition": {
       
  6575                                         "leftOperand": {
       
  6576                                           "endPosition": "2727",
       
  6577                                           "kind": "IDENTIFIER",
       
  6578                                           "name": "val",
       
  6579                                           "startPosition": "2724"
       
  6580                                         },
       
  6581                                         "expression": {
       
  6582                                           "endPosition": "2727",
       
  6583                                           "kind": "IDENTIFIER",
       
  6584                                           "name": "val",
       
  6585                                           "startPosition": "2724"
       
  6586                                         },
       
  6587                                         "endPosition": "2750",
       
  6588                                         "kind": "INSTANCE_OF",
       
  6589                                         "rightOperand": {
       
  6590                                           "identifier": "Enum",
       
  6591                                           "expression": {
       
  6592                                             "endPosition": "2745",
       
  6593                                             "kind": "IDENTIFIER",
       
  6594                                             "name": "Parser",
       
  6595                                             "startPosition": "2739"
       
  6596                                           },
       
  6597                                           "endPosition": "2750",
       
  6598                                           "kind": "MEMBER_SELECT",
       
  6599                                           "startPosition": "2739"
       
  6600                                         },
       
  6601                                         "type": {
       
  6602                                           "identifier": "Enum",
       
  6603                                           "expression": {
       
  6604                                             "endPosition": "2745",
       
  6605                                             "kind": "IDENTIFIER",
       
  6606                                             "name": "Parser",
       
  6607                                             "startPosition": "2739"
       
  6608                                           },
       
  6609                                           "endPosition": "2750",
       
  6610                                           "kind": "MEMBER_SELECT",
       
  6611                                           "startPosition": "2739"
       
  6612                                         },
       
  6613                                         "startPosition": "2724"
       
  6614                                       },
       
  6615                                       "endPosition": "2820",
       
  6616                                       "kind": "IF",
       
  6617                                       "startPosition": "2720",
       
  6618                                       "thenStatement": {
       
  6619                                         "endPosition": "2820",
       
  6620                                         "kind": "BLOCK",
       
  6621                                         "statements": [
       
  6622                                           {
       
  6623                                             "expression": {
       
  6624                                               "expression": {
       
  6625                                                 "endPosition": "2799",
       
  6626                                                 "kind": "FUNCTION_INVOCATION",
       
  6627                                                 "functionSelect": {
       
  6628                                                   "endPosition": "2794",
       
  6629                                                   "kind": "IDENTIFIER",
       
  6630                                                   "name": "String",
       
  6631                                                   "startPosition": "2788"
       
  6632                                                 },
       
  6633                                                 "arguments": [
       
  6634                                                   {
       
  6635                                                     "endPosition": "2798",
       
  6636                                                     "kind": "IDENTIFIER",
       
  6637                                                     "name": "val",
       
  6638                                                     "startPosition": "2795"
       
  6639                                                   }
       
  6640                                                 ],
       
  6641                                                 "startPosition": "2788"
       
  6642                                               },
       
  6643                                               "endPosition": "2799",
       
  6644                                               "kind": "ASSIGNMENT",
       
  6645                                               "variable": {
       
  6646                                                 "expression": {
       
  6647                                                   "endPosition": "2782",
       
  6648                                                   "kind": "IDENTIFIER",
       
  6649                                                   "name": "result",
       
  6650                                                   "startPosition": "2776"
       
  6651                                                 },
       
  6652                                                 "endPosition": "2785",
       
  6653                                                 "kind": "ARRAY_ACCESS",
       
  6654                                                 "index": {
       
  6655                                                   "endPosition": "2784",
       
  6656                                                   "kind": "IDENTIFIER",
       
  6657                                                   "name": "i",
       
  6658                                                   "startPosition": "2783"
       
  6659                                                 },
       
  6660                                                 "startPosition": "2776"
       
  6661                                               },
       
  6662                                               "startPosition": "2776"
       
  6663                                             },
       
  6664                                             "endPosition": "2799",
       
  6665                                             "kind": "EXPRESSION_STATEMENT",
       
  6666                                             "startPosition": "2776"
       
  6667                                           }
       
  6668                                         ],
       
  6669                                         "startPosition": "2752"
       
  6670                                       }
       
  6671                                     }
       
  6672                                   ],
       
  6673                                   "startPosition": "2693"
       
  6674                                 }
       
  6675                               ],
       
  6676                               "expression": {
       
  6677                                 "expression": {
       
  6678                                   "endPosition": "2544",
       
  6679                                   "kind": "IDENTIFIER",
       
  6680                                   "name": "val",
       
  6681                                   "startPosition": "2541"
       
  6682                                 },
       
  6683                                 "endPosition": "2544",
       
  6684                                 "kind": "TYPEOF",
       
  6685                                 "startPosition": "2534"
       
  6686                               },
       
  6687                               "endPosition": "2832",
       
  6688                               "kind": "SWITCH",
       
  6689                               "startPosition": "2526"
       
  6690                             }
       
  6691                           ],
       
  6692                           "startPosition": "2514"
       
  6693                         },
       
  6694                         "endPosition": "2840",
       
  6695                         "kind": "IF",
       
  6696                         "startPosition": "2302",
       
  6697                         "thenStatement": {
       
  6698                           "endPosition": "2508",
       
  6699                           "kind": "BLOCK",
       
  6700                           "statements": [
       
  6701                             {
       
  6702                               "endPosition": "2377",
       
  6703                               "kind": "VARIABLE",
       
  6704                               "name": "arr",
       
  6705                               "startPosition": "2350",
       
  6706                               "initializer": {
       
  6707                                 "constructorExpression": {
       
  6708                                   "endPosition": "2377",
       
  6709                                   "kind": "FUNCTION_INVOCATION",
       
  6710                                   "functionSelect": {
       
  6711                                     "endPosition": "2365",
       
  6712                                     "kind": "IDENTIFIER",
       
  6713                                     "name": "Array",
       
  6714                                     "startPosition": "2360"
       
  6715                                   },
       
  6716                                   "arguments": [
       
  6717                                     {
       
  6718                                       "endPosition": "2376",
       
  6719                                       "kind": "FUNCTION_INVOCATION",
       
  6720                                       "functionSelect": {
       
  6721                                         "identifier": "size",
       
  6722                                         "expression": {
       
  6723                                           "endPosition": "2369",
       
  6724                                           "kind": "IDENTIFIER",
       
  6725                                           "name": "val",
       
  6726                                           "startPosition": "2366"
       
  6727                                         },
       
  6728                                         "endPosition": "2374",
       
  6729                                         "kind": "MEMBER_SELECT",
       
  6730                                         "startPosition": "2366"
       
  6731                                       },
       
  6732                                       "arguments": [],
       
  6733                                       "startPosition": "2366"
       
  6734                                     }
       
  6735                                   ],
       
  6736                                   "startPosition": "2360"
       
  6737                                 },
       
  6738                                 "endPosition": "2377",
       
  6739                                 "kind": "NEW",
       
  6740                                 "startPosition": "2356"
       
  6741                               }
       
  6742                             },
       
  6743                             {
       
  6744                               "endPosition": "2399",
       
  6745                               "kind": "VARIABLE",
       
  6746                               "name": "j",
       
  6747                               "startPosition": "2398"
       
  6748                             },
       
  6749                             {
       
  6750                               "expression": {
       
  6751                                 "endPosition": "2406",
       
  6752                                 "kind": "IDENTIFIER",
       
  6753                                 "name": "val",
       
  6754                                 "startPosition": "2403"
       
  6755                               },
       
  6756                               "endPosition": "2466",
       
  6757                               "kind": "FOR_IN_LOOP",
       
  6758                               "forEach": "false",
       
  6759                               "variable": {
       
  6760                                 "endPosition": "2399",
       
  6761                                 "kind": "IDENTIFIER",
       
  6762                                 "name": "j",
       
  6763                                 "startPosition": "2398"
       
  6764                               },
       
  6765                               "statement": {
       
  6766                                 "endPosition": "2466",
       
  6767                                 "kind": "BLOCK",
       
  6768                                 "statements": [
       
  6769                                   {
       
  6770                                     "expression": {
       
  6771                                       "expression": {
       
  6772                                         "endPosition": "2453",
       
  6773                                         "kind": "FUNCTION_INVOCATION",
       
  6774                                         "functionSelect": {
       
  6775                                           "identifier": "convert",
       
  6776                                           "expression": {
       
  6777                                             "endPosition": "2437",
       
  6778                                             "kind": "IDENTIFIER",
       
  6779                                             "name": "this",
       
  6780                                             "startPosition": "2433"
       
  6781                                           },
       
  6782                                           "endPosition": "2445",
       
  6783                                           "kind": "MEMBER_SELECT",
       
  6784                                           "startPosition": "2433"
       
  6785                                         },
       
  6786                                         "arguments": [
       
  6787                                           {
       
  6788                                             "expression": {
       
  6789                                               "endPosition": "2449",
       
  6790                                               "kind": "IDENTIFIER",
       
  6791                                               "name": "val",
       
  6792                                               "startPosition": "2446"
       
  6793                                             },
       
  6794                                             "endPosition": "2452",
       
  6795                                             "kind": "ARRAY_ACCESS",
       
  6796                                             "index": {
       
  6797                                               "endPosition": "2451",
       
  6798                                               "kind": "IDENTIFIER",
       
  6799                                               "name": "j",
       
  6800                                               "startPosition": "2450"
       
  6801                                             },
       
  6802                                             "startPosition": "2446"
       
  6803                                           }
       
  6804                                         ],
       
  6805                                         "startPosition": "2433"
       
  6806                                       },
       
  6807                                       "endPosition": "2453",
       
  6808                                       "kind": "ASSIGNMENT",
       
  6809                                       "variable": {
       
  6810                                         "expression": {
       
  6811                                           "endPosition": "2427",
       
  6812                                           "kind": "IDENTIFIER",
       
  6813                                           "name": "arr",
       
  6814                                           "startPosition": "2424"
       
  6815                                         },
       
  6816                                         "endPosition": "2430",
       
  6817                                         "kind": "ARRAY_ACCESS",
       
  6818                                         "index": {
       
  6819                                           "endPosition": "2429",
       
  6820                                           "kind": "IDENTIFIER",
       
  6821                                           "name": "j",
       
  6822                                           "startPosition": "2428"
       
  6823                                         },
       
  6824                                         "startPosition": "2424"
       
  6825                                       },
       
  6826                                       "startPosition": "2424"
       
  6827                                     },
       
  6828                                     "endPosition": "2453",
       
  6829                                     "kind": "EXPRESSION_STATEMENT",
       
  6830                                     "startPosition": "2424"
       
  6831                                   }
       
  6832                                 ],
       
  6833                                 "startPosition": "2408"
       
  6834                               },
       
  6835                               "startPosition": "2389"
       
  6836                             },
       
  6837                             {
       
  6838                               "expression": {
       
  6839                                 "expression": {
       
  6840                                   "endPosition": "2499",
       
  6841                                   "kind": "IDENTIFIER",
       
  6842                                   "name": "arr",
       
  6843                                   "startPosition": "2496"
       
  6844                                 },
       
  6845                                 "endPosition": "2499",
       
  6846                                 "kind": "ASSIGNMENT",
       
  6847                                 "variable": {
       
  6848                                   "expression": {
       
  6849                                     "endPosition": "2490",
       
  6850                                     "kind": "IDENTIFIER",
       
  6851                                     "name": "result",
       
  6852                                     "startPosition": "2484"
       
  6853                                   },
       
  6854                                   "endPosition": "2493",
       
  6855                                   "kind": "ARRAY_ACCESS",
       
  6856                                   "index": {
       
  6857                                     "endPosition": "2492",
       
  6858                                     "kind": "IDENTIFIER",
       
  6859                                     "name": "i",
       
  6860                                     "startPosition": "2491"
       
  6861                                   },
       
  6862                                   "startPosition": "2484"
       
  6863                                 },
       
  6864                                 "startPosition": "2484"
       
  6865                               },
       
  6866                               "endPosition": "2499",
       
  6867                               "kind": "EXPRESSION_STATEMENT",
       
  6868                               "startPosition": "2484"
       
  6869                             }
       
  6870                           ],
       
  6871                           "startPosition": "2334"
       
  6872                         }
       
  6873                       },
       
  6874                       "endPosition": "2840",
       
  6875                       "kind": "IF",
       
  6876                       "startPosition": "2213",
       
  6877                       "thenStatement": {
       
  6878                         "endPosition": "2296",
       
  6879                         "kind": "BLOCK",
       
  6880                         "statements": [
       
  6881                           {
       
  6882                             "expression": {
       
  6883                               "expression": {
       
  6884                                 "endPosition": "2286",
       
  6885                                 "kind": "FUNCTION_INVOCATION",
       
  6886                                 "functionSelect": {
       
  6887                                   "identifier": "convert",
       
  6888                                   "expression": {
       
  6889                                     "endPosition": "2273",
       
  6890                                     "kind": "IDENTIFIER",
       
  6891                                     "name": "this",
       
  6892                                     "startPosition": "2269"
       
  6893                                   },
       
  6894                                   "endPosition": "2281",
       
  6895                                   "kind": "MEMBER_SELECT",
       
  6896                                   "startPosition": "2269"
       
  6897                                 },
       
  6898                                 "arguments": [
       
  6899                                   {
       
  6900                                     "endPosition": "2285",
       
  6901                                     "kind": "IDENTIFIER",
       
  6902                                     "name": "val",
       
  6903                                     "startPosition": "2282"
       
  6904                                   }
       
  6905                                 ],
       
  6906                                 "startPosition": "2269"
       
  6907                               },
       
  6908                               "endPosition": "2286",
       
  6909                               "kind": "ASSIGNMENT",
       
  6910                               "variable": {
       
  6911                                 "expression": {
       
  6912                                   "endPosition": "2263",
       
  6913                                   "kind": "IDENTIFIER",
       
  6914                                   "name": "result",
       
  6915                                   "startPosition": "2257"
       
  6916                                 },
       
  6917                                 "endPosition": "2266",
       
  6918                                 "kind": "ARRAY_ACCESS",
       
  6919                                 "index": {
       
  6920                                   "endPosition": "2265",
       
  6921                                   "kind": "IDENTIFIER",
       
  6922                                   "name": "i",
       
  6923                                   "startPosition": "2264"
       
  6924                                 },
       
  6925                                 "startPosition": "2257"
       
  6926                               },
       
  6927                               "startPosition": "2257"
       
  6928                             },
       
  6929                             "endPosition": "2286",
       
  6930                             "kind": "EXPRESSION_STATEMENT",
       
  6931                             "startPosition": "2257"
       
  6932                           }
       
  6933                         ],
       
  6934                         "startPosition": "2245"
       
  6935                       }
       
  6936                     }
       
  6937                   ],
       
  6938                   "startPosition": "2179"
       
  6939                 },
       
  6940                 "startPosition": "2160"
       
  6941               },
       
  6942               {
       
  6943                 "expression": {
       
  6944                   "endPosition": "2862",
       
  6945                   "kind": "IDENTIFIER",
       
  6946                   "name": "result",
       
  6947                   "startPosition": "2856"
       
  6948                 },
       
  6949                 "endPosition": "2863",
       
  6950                 "kind": "RETURN",
       
  6951                 "startPosition": "2849"
       
  6952               }
       
  6953             ],
       
  6954             "startPosition": "2014"
       
  6955           },
       
  6956           "strict": "false",
       
  6957           "startPosition": "2014",
       
  6958           "parameters": [
       
  6959             {
       
  6960               "endPosition": "2012",
       
  6961               "kind": "IDENTIFIER",
       
  6962               "name": "tree",
       
  6963               "startPosition": "2008"
       
  6964             }
       
  6965           ]
       
  6966         },
       
  6967         "endPosition": "2014",
       
  6968         "kind": "ASSIGNMENT",
       
  6969         "variable": {
       
  6970           "identifier": "convert",
       
  6971           "expression": {
       
  6972             "identifier": "prototype",
       
  6973             "expression": {
       
  6974               "endPosition": "1978",
       
  6975               "kind": "IDENTIFIER",
       
  6976               "name": "Parser",
       
  6977               "startPosition": "1972"
       
  6978             },
       
  6979             "endPosition": "1988",
       
  6980             "kind": "MEMBER_SELECT",
       
  6981             "startPosition": "1972"
       
  6982           },
       
  6983           "endPosition": "1996",
       
  6984           "kind": "MEMBER_SELECT",
       
  6985           "startPosition": "1972"
       
  6986         },
       
  6987         "startPosition": "1972"
       
  6988       },
       
  6989       "endPosition": "2865",
       
  6990       "kind": "EXPRESSION_STATEMENT",
       
  6991       "startPosition": "1972"
       
  6992     },
       
  6993     {
       
  6994       "expression": {
       
  6995         "endPosition": "3909",
       
  6996         "kind": "FUNCTION_INVOCATION",
       
  6997         "functionSelect": {
       
  6998           "endPosition": "3907",
       
  6999           "kind": "IDENTIFIER",
       
  7000           "name": "main",
       
  7001           "startPosition": "3903"
       
  7002         },
       
  7003         "arguments": [],
       
  7004         "startPosition": "3903"
       
  7005       },
       
  7006       "endPosition": "3909",
       
  7007       "kind": "EXPRESSION_STATEMENT",
       
  7008       "startPosition": "3903"
       
  7009     }
       
  7010   ],
       
  7011   "sourceName": "parserapi.js",
       
  7012   "strict": "false",
       
  7013   "startPosition": "1136"
       
  7014 }
       
  7015 ]