1 [
   2   {
   3     "endPosition": "67",
   4     "kind": "FUNCTION",
   5     "name": {
   6       "endPosition": "13",
   7       "kind": "IDENTIFIER",
   8       "name": "id",
   9       "startPosition": "11"
  10     },
  11     "generator": "true",
  12     "body": {
  13       "endPosition": "65",
  14       "kind": "BLOCK",
  15       "statements": [
  16         {
  17           "endPosition": "30",
  18           "kind": "VARIABLE",
  19           "binding": {
  20             "endPosition": "26",
  21             "kind": "IDENTIFIER",
  22             "name": "idx",
  23             "startPosition": "23"
  24           },
  25           "startPosition": "19",
  26           "initializer": {
  27             "endPosition": "30",
  28             "kind": "NUMBER_LITERAL",
  29             "value": "0",
  30             "startPosition": "29"
  31           }
  32         },
  33         {
  34           "condition": {
  35             "leftOperand": {
  36               "endPosition": "43",
  37               "kind": "IDENTIFIER",
  38               "name": "idx",
  39               "startPosition": "40"
  40             },
  41             "endPosition": "47",
  42             "kind": "LESS_THAN",
  43             "rightOperand": {
  44               "endPosition": "47",
  45               "kind": "NUMBER_LITERAL",
  46               "value": "3",
  47               "startPosition": "46"
  48             },
  49             "startPosition": "40"
  50           },
  51           "endPosition": "65",
  52           "kind": "WHILE_LOOP",
  53           "statement": {
  54             "expression": {
  55               "expression": {
  56                 "expression": {
  57                   "endPosition": "62",
  58                   "kind": "IDENTIFIER",
  59                   "name": "idx",
  60                   "startPosition": "59"
  61                 },
  62                 "endPosition": "64",
  63                 "kind": "POSTFIX_INCREMENT",
  64                 "startPosition": "59"
  65               },
  66               "endPosition": "64",
  67               "kind": "YIELD",
  68               "startPosition": "53"
  69             },
  70             "endPosition": "64",
  71             "kind": "EXPRESSION_STATEMENT",
  72             "startPosition": "53"
  73           },
  74           "startPosition": "34"
  75         }
  76       ],
  77       "startPosition": "15"
  78     },
  79     "strict": "false",
  80     "startPosition": "1",
  81     "parameters": []
  82   },
  83   {
  84     "endPosition": "120",
  85     "kind": "VARIABLE",
  86     "binding": {
  87       "endPosition": "76",
  88       "kind": "IDENTIFIER",
  89       "name": "obj",
  90       "startPosition": "73"
  91     },
  92     "startPosition": "69",
  93     "initializer": {
  94       "endPosition": "120",
  95       "kind": "OBJECT_LITERAL",
  96       "startPosition": "79",
  97       "properties": [
  98         {
  99           "getter": "null",
 100           "endPosition": "118",
 101           "kind": "PROPERTY",
 102           "setter": "null",
 103           "value": {
 104             "endPosition": "95",
 105             "kind": "FUNCTION_EXPRESSION",
 106             "name": {
 107               "endPosition": "87",
 108               "kind": "IDENTIFIER",
 109               "name": "q",
 110               "startPosition": "85"
 111             },
 112             "generator": "true",
 113             "body": {
 114               "endPosition": "112",
 115               "kind": "BLOCK",
 116               "statements": [
 117                 {
 118                   "expression": {
 119                     "expression": {
 120                       "endPosition": "111",
 121                       "kind": "NUMBER_LITERAL",
 122                       "value": "1",
 123                       "startPosition": "110"
 124                     },
 125                     "endPosition": "111",
 126                     "kind": "YIELD",
 127                     "startPosition": "104"
 128                   },
 129                   "endPosition": "111",
 130                   "kind": "EXPRESSION_STATEMENT",
 131                   "startPosition": "104"
 132                 }
 133               ],
 134               "startPosition": "95"
 135             },
 136             "strict": "false",
 137             "startPosition": "95",
 138             "parameters": [
 139               {
 140                 "endPosition": "90",
 141                 "kind": "IDENTIFIER",
 142                 "name": "x",
 143                 "startPosition": "89"
 144               },
 145               {
 146                 "endPosition": "93",
 147                 "kind": "IDENTIFIER",
 148                 "name": "y",
 149                 "startPosition": "92"
 150               }
 151             ]
 152           },
 153           "startPosition": "85",
 154           "key": {
 155             "endPosition": "87",
 156             "kind": "IDENTIFIER",
 157             "name": "q",
 158             "startPosition": "85"
 159           }
 160         }
 161       ]
 162     }
 163   },
 164   {
 165     "endPosition": "250",
 166     "kind": "VARIABLE",
 167     "binding": {
 168       "endPosition": "128",
 169       "kind": "IDENTIFIER",
 170       "name": "f",
 171       "startPosition": "127"
 172     },
 173     "startPosition": "123",
 174     "initializer": {
 175       "endPosition": "250",
 176       "kind": "OBJECT_LITERAL",
 177       "startPosition": "131",
 178       "properties": [
 179         {
 180           "getter": "null",
 181           "computed": "true",
 182           "endPosition": "248",
 183           "kind": "PROPERTY",
 184           "setter": "null",
 185           "value": {
 186             "endPosition": "168",
 187             "kind": "FUNCTION_EXPRESSION",
 188             "name": "null",
 189             "generator": "true",
 190             "body": {
 191               "endPosition": "242",
 192               "kind": "BLOCK",
 193               "statements": [
 194                 {
 195                   "endPosition": "189",
 196                   "kind": "VARIABLE",
 197                   "binding": {
 198                     "endPosition": "185",
 199                     "kind": "IDENTIFIER",
 200                     "name": "cur",
 201                     "startPosition": "182"
 202                   },
 203                   "startPosition": "178",
 204                   "initializer": {
 205                     "endPosition": "189",
 206                     "kind": "NUMBER_LITERAL",
 207                     "value": "1",
 208                     "startPosition": "188"
 209                   }
 210                 },
 211                 {
 212                   "condition": "null",
 213                   "endPosition": "242",
 214                   "kind": "FOR_LOOP",
 215                   "statement": {
 216                     "endPosition": "242",
 217                     "kind": "BLOCK",
 218                     "statements": [
 219                       {
 220                         "expression": {
 221                           "expression": {
 222                             "endPosition": "231",
 223                             "kind": "IDENTIFIER",
 224                             "name": "cur",
 225                             "startPosition": "228"
 226                           },
 227                           "endPosition": "231",
 228                           "kind": "YIELD",
 229                           "startPosition": "222"
 230                         },
 231                         "endPosition": "231",
 232                         "kind": "EXPRESSION_STATEMENT",
 233                         "startPosition": "222"
 234                       }
 235                     ],
 236                     "startPosition": "208"
 237                   },
 238                   "update": "null",
 239                   "startPosition": "199",
 240                   "initializer": "null"
 241                 }
 242               ],
 243               "startPosition": "168"
 244             },
 245             "strict": "false",
 246             "startPosition": "168",
 247             "parameters": []
 248           },
 249           "startPosition": "137",
 250           "key": {
 251             "identifier": "iterator",
 252             "expression": {
 253               "endPosition": "144",
 254               "kind": "IDENTIFIER",
 255               "name": "Symbol",
 256               "startPosition": "138"
 257             },
 258             "endPosition": "153",
 259             "kind": "MEMBER_SELECT",
 260             "startPosition": "138"
 261           }
 262         }
 263       ]
 264     }
 265   }
 266 ]