1 {
   2     "type": "Program",
   3     "body": [
   4         {
   5             "type": "ExpressionStatement",
   6             "expression": {
   7                 "type": "MemberExpression",
   8                 "object": {
   9                     "type": "Identifier",
  10                     "name": "a"
  11                 },
  12                 "property": {
  13                     "type": "Literal",
  14                     "value": 3
  15                 },
  16                 "computed": true
  17             }
  18         }
  19     ]
  20 }
  21 {
  22     "type": "Program",
  23     "body": [
  24         {
  25             "type": "ExpressionStatement",
  26             "expression": {
  27                 "type": "MemberExpression",
  28                 "object": {
  29                     "type": "Identifier",
  30                     "name": "a"
  31                 },
  32                 "property": {
  33                     "type": "Identifier",
  34                     "name": "b"
  35                 },
  36                 "computed": true
  37             }
  38         }
  39     ]
  40 }
  41 {
  42     "type": "Program",
  43     "body": [
  44         {
  45             "type": "ExpressionStatement",
  46             "expression": {
  47                 "type": "MemberExpression",
  48                 "object": {
  49                     "type": "Identifier",
  50                     "name": "a"
  51                 },
  52                 "property": {
  53                     "type": "Literal",
  54                     "value": "foo"
  55                 },
  56                 "computed": true
  57             }
  58         }
  59     ]
  60 }
  61 {
  62     "type": "Program",
  63     "body": [
  64         {
  65             "type": "ExpressionStatement",
  66             "expression": {
  67                 "type": "MemberExpression",
  68                 "object": {
  69                     "type": "Identifier",
  70                     "name": "obj"
  71                 },
  72                 "property": "foo",
  73                 "computed": false
  74             }
  75         }
  76     ]
  77 }
  78 {
  79     "type": "Program",
  80     "body": [
  81         {
  82             "type": "ExpressionStatement",
  83             "expression": {
  84                 "type": "MemberExpression",
  85                 "object": {
  86                     "type": "MemberExpression",
  87                     "object": {
  88                         "type": "Identifier",
  89                         "name": "obj"
  90                     },
  91                     "property": "foo",
  92                     "computed": false
  93                 },
  94                 "property": "bar",
  95                 "computed": false
  96             }
  97         }
  98     ]
  99 }
 100 {
 101     "type": "Program",
 102     "body": [
 103         {
 104             "type": "ExpressionStatement",
 105             "expression": {
 106                 "type": "NewExpression",
 107                 "callee": {
 108                     "type": "Identifier",
 109                     "name": "Type"
 110                 },
 111                 "arguments": []
 112             }
 113         }
 114     ]
 115 }
 116 {
 117     "type": "Program",
 118     "body": [
 119         {
 120             "type": "ExpressionStatement",
 121             "expression": {
 122                 "type": "NewExpression",
 123                 "callee": {
 124                     "type": "Identifier",
 125                     "name": "Type"
 126                 },
 127                 "arguments": []
 128             }
 129         }
 130     ]
 131 }
 132 {
 133     "type": "Program",
 134     "body": [
 135         {
 136             "type": "ExpressionStatement",
 137             "expression": {
 138                 "type": "NewExpression",
 139                 "callee": {
 140                     "type": "Identifier",
 141                     "name": "Type"
 142                 },
 143                 "arguments": [
 144                     {
 145                         "type": "Identifier",
 146                         "name": "a"
 147                     },
 148                     {
 149                         "type": "Literal",
 150                         "value": "hello"
 151                     }
 152                 ]
 153             }
 154         }
 155     ]
 156 }
 157 {
 158     "type": "Program",
 159     "body": [
 160         {
 161             "type": "ExpressionStatement",
 162             "expression": {
 163                 "type": "NewExpression",
 164                 "callee": {
 165                     "type": "MemberExpression",
 166                     "object": {
 167                         "type": "Identifier",
 168                         "name": "obj"
 169                     },
 170                     "property": "Type",
 171                     "computed": false
 172                 },
 173                 "arguments": []
 174             }
 175         }
 176     ]
 177 }
 178 {
 179     "type": "Program",
 180     "body": [
 181         {
 182             "type": "ExpressionStatement",
 183             "expression": {
 184                 "type": "NewExpression",
 185                 "callee": {
 186                     "type": "MemberExpression",
 187                     "object": {
 188                         "type": "Identifier",
 189                         "name": "obj"
 190                     },
 191                     "property": "Type",
 192                     "computed": false
 193                 },
 194                 "arguments": []
 195             }
 196         }
 197     ]
 198 }
 199 {
 200     "type": "Program",
 201     "body": [
 202         {
 203             "type": "ExpressionStatement",
 204             "expression": {
 205                 "type": "NewExpression",
 206                 "callee": {
 207                     "type": "MemberExpression",
 208                     "object": {
 209                         "type": "Identifier",
 210                         "name": "obj"
 211                     },
 212                     "property": "Type",
 213                     "computed": false
 214                 },
 215                 "arguments": [
 216                     {
 217                         "type": "Identifier",
 218                         "name": "a"
 219                     },
 220                     {
 221                         "type": "Literal",
 222                         "value": "hello"
 223                     }
 224                 ]
 225             }
 226         }
 227     ]
 228 }
 229 {
 230     "type": "Program",
 231     "body": [
 232         {
 233             "type": "ExpressionStatement",
 234             "expression": {
 235                 "type": "CallExpression",
 236                 "callee": {
 237                     "type": "Identifier",
 238                     "name": "foo"
 239                 },
 240                 "arguments": []
 241             }
 242         }
 243     ]
 244 }
 245 {
 246     "type": "Program",
 247     "body": [
 248         {
 249             "type": "ExpressionStatement",
 250             "expression": {
 251                 "type": "CallExpression",
 252                 "callee": {
 253                     "type": "MemberExpression",
 254                     "object": {
 255                         "type": "Identifier",
 256                         "name": "obj"
 257                     },
 258                     "property": "foo",
 259                     "computed": false
 260                 },
 261                 "arguments": []
 262             }
 263         }
 264     ]
 265 }
 266 {
 267     "type": "Program",
 268     "body": [
 269         {
 270             "type": "ExpressionStatement",
 271             "expression": {
 272                 "type": "CallExpression",
 273                 "callee": {
 274                     "type": "Identifier",
 275                     "name": "foo"
 276                 },
 277                 "arguments": [
 278                     {
 279                         "type": "Identifier",
 280                         "name": "a"
 281                     },
 282                     {
 283                         "type": "Identifier",
 284                         "name": "b"
 285                     }
 286                 ]
 287             }
 288         }
 289     ]
 290 }
 291 {
 292     "type": "Program",
 293     "body": [
 294         {
 295             "type": "ExpressionStatement",
 296             "expression": {
 297                 "type": "CallExpression",
 298                 "callee": {
 299                     "type": "MemberExpression",
 300                     "object": {
 301                         "type": "Identifier",
 302                         "name": "obj"
 303                     },
 304                     "property": "foo",
 305                     "computed": false
 306                 },
 307                 "arguments": [
 308                     {
 309                         "type": "Identifier",
 310                         "name": "a"
 311                     },
 312                     {
 313                         "type": "Identifier",
 314                         "name": "b"
 315                     }
 316                 ]
 317             }
 318         }
 319     ]
 320 }