1{
2  "type": "Program",
3  "statements": [
4    {
5      "type": "ClassDeclaration",
6      "definition": {
7        "id": {
8          "type": "Identifier",
9          "name": "ETSGLOBAL",
10          "decorators": [],
11          "loc": {
12            "start": {
13              "line": 1,
14              "column": 1
15            },
16            "end": {
17              "line": 1,
18              "column": 1
19            }
20          }
21        },
22        "superClass": null,
23        "implements": [],
24        "body": [
25          {
26            "type": "MethodDefinition",
27            "key": {
28              "type": "Identifier",
29              "name": "_$init$_",
30              "decorators": [],
31              "loc": {
32                "start": {
33                  "line": 1,
34                  "column": 1
35                },
36                "end": {
37                  "line": 1,
38                  "column": 1
39                }
40              }
41            },
42            "kind": "method",
43            "accessibility": "public",
44            "static": true,
45            "optional": false,
46            "computed": false,
47            "value": {
48              "type": "FunctionExpression",
49              "function": {
50                "type": "ScriptFunction",
51                "id": {
52                  "type": "Identifier",
53                  "name": "_$init$_",
54                  "decorators": [],
55                  "loc": {
56                    "start": {
57                      "line": 1,
58                      "column": 1
59                    },
60                    "end": {
61                      "line": 1,
62                      "column": 1
63                    }
64                  }
65                },
66                "generator": false,
67                "async": false,
68                "expression": false,
69                "params": [],
70                "body": {
71                  "type": "BlockStatement",
72                  "statements": [],
73                  "loc": {
74                    "start": {
75                      "line": 1,
76                      "column": 1
77                    },
78                    "end": {
79                      "line": 1,
80                      "column": 1
81                    }
82                  }
83                },
84                "loc": {
85                  "start": {
86                    "line": 1,
87                    "column": 1
88                  },
89                  "end": {
90                    "line": 1,
91                    "column": 1
92                  }
93                }
94              },
95              "loc": {
96                "start": {
97                  "line": 1,
98                  "column": 1
99                },
100                "end": {
101                  "line": 1,
102                  "column": 1
103                }
104              }
105            },
106            "overloads": [],
107            "decorators": [],
108            "loc": {
109              "start": {
110                "line": 1,
111                "column": 1
112              },
113              "end": {
114                "line": 1,
115                "column": 1
116              }
117            }
118          },
119          {
120            "type": "MethodDefinition",
121            "key": {
122              "type": "Identifier",
123              "name": "main",
124              "decorators": [],
125              "loc": {
126                "start": {
127                  "line": 16,
128                  "column": 10
129                },
130                "end": {
131                  "line": 16,
132                  "column": 14
133                }
134              }
135            },
136            "kind": "method",
137            "accessibility": "public",
138            "static": true,
139            "optional": false,
140            "computed": false,
141            "value": {
142              "type": "FunctionExpression",
143              "function": {
144                "type": "ScriptFunction",
145                "id": {
146                  "type": "Identifier",
147                  "name": "main",
148                  "decorators": [],
149                  "loc": {
150                    "start": {
151                      "line": 16,
152                      "column": 10
153                    },
154                    "end": {
155                      "line": 16,
156                      "column": 14
157                    }
158                  }
159                },
160                "generator": false,
161                "async": false,
162                "expression": false,
163                "params": [],
164                "body": {
165                  "type": "BlockStatement",
166                  "statements": [
167                    {
168                      "type": "VariableDeclaration",
169                      "declarations": [
170                        {
171                          "type": "VariableDeclarator",
172                          "id": {
173                            "type": "Identifier",
174                            "name": "v",
175                            "decorators": [],
176                            "loc": {
177                              "start": {
178                                "line": 17,
179                                "column": 8
180                              },
181                              "end": {
182                                "line": 17,
183                                "column": 9
184                              }
185                            }
186                          },
187                          "init": {
188                            "type": "TemplateLiteral",
189                            "expressions": [
190                              {
191                                "type": "TemplateLiteral",
192                                "expressions": [],
193                                "quasis": [
194                                  {
195                                    "type": "TemplateElement",
196                                    "value": {
197                                      "raw": "backtick = \`",
198                                      "cooked": "backtick = `"
199                                    },
200                                    "loc": {
201                                      "start": {
202                                        "line": 17,
203                                        "column": 23
204                                      },
205                                      "end": {
206                                        "line": 17,
207                                        "column": 36
208                                      }
209                                    }
210                                  }
211                                ],
212                                "loc": {
213                                  "start": {
214                                    "line": 17,
215                                    "column": 22
216                                  },
217                                  "end": {
218                                    "line": 17,
219                                    "column": 37
220                                  }
221                                }
222                              }
223                            ],
224                            "quasis": [
225                              {
226                                "type": "TemplateElement",
227                                "value": {
228                                  "raw": "nested ",
229                                  "cooked": "nested "
230                                },
231                                "loc": {
232                                  "start": {
233                                    "line": 17,
234                                    "column": 13
235                                  },
236                                  "end": {
237                                    "line": 17,
238                                    "column": 20
239                                  }
240                                }
241                              },
242                              {
243                                "type": "TemplateElement",
244                                "value": {
245                                  "raw": "",
246                                  "cooked": ""
247                                },
248                                "loc": {
249                                  "start": {
250                                    "line": 17,
251                                    "column": 38
252                                  },
253                                  "end": {
254                                    "line": 17,
255                                    "column": 38
256                                  }
257                                }
258                              }
259                            ],
260                            "loc": {
261                              "start": {
262                                "line": 17,
263                                "column": 12
264                              },
265                              "end": {
266                                "line": 17,
267                                "column": 39
268                              }
269                            }
270                          },
271                          "loc": {
272                            "start": {
273                              "line": 17,
274                              "column": 8
275                            },
276                            "end": {
277                              "line": 17,
278                              "column": 39
279                            }
280                          }
281                        }
282                      ],
283                      "kind": "const",
284                      "loc": {
285                        "start": {
286                          "line": 17,
287                          "column": 2
288                        },
289                        "end": {
290                          "line": 17,
291                          "column": 39
292                        }
293                      }
294                    },
295                    {
296                      "type": "ExpressionStatement",
297                      "expression": {
298                        "type": "CallExpression",
299                        "callee": {
300                          "type": "MemberExpression",
301                          "object": {
302                            "type": "Identifier",
303                            "name": "console",
304                            "decorators": [],
305                            "loc": {
306                              "start": {
307                                "line": 18,
308                                "column": 2
309                              },
310                              "end": {
311                                "line": 18,
312                                "column": 9
313                              }
314                            }
315                          },
316                          "property": {
317                            "type": "Identifier",
318                            "name": "log",
319                            "decorators": [],
320                            "loc": {
321                              "start": {
322                                "line": 18,
323                                "column": 10
324                              },
325                              "end": {
326                                "line": 18,
327                                "column": 13
328                              }
329                            }
330                          },
331                          "computed": false,
332                          "optional": false,
333                          "loc": {
334                            "start": {
335                              "line": 18,
336                              "column": 2
337                            },
338                            "end": {
339                              "line": 18,
340                              "column": 13
341                            }
342                          }
343                        },
344                        "arguments": [
345                          {
346                            "type": "Identifier",
347                            "name": "v",
348                            "decorators": [],
349                            "loc": {
350                              "start": {
351                                "line": 18,
352                                "column": 14
353                              },
354                              "end": {
355                                "line": 18,
356                                "column": 15
357                              }
358                            }
359                          }
360                        ],
361                        "optional": false,
362                        "loc": {
363                          "start": {
364                            "line": 18,
365                            "column": 2
366                          },
367                          "end": {
368                            "line": 18,
369                            "column": 16
370                          }
371                        }
372                      },
373                      "loc": {
374                        "start": {
375                          "line": 18,
376                          "column": 2
377                        },
378                        "end": {
379                          "line": 18,
380                          "column": 16
381                        }
382                      }
383                    },
384                    {
385                      "type": "VariableDeclaration",
386                      "declarations": [
387                        {
388                          "type": "VariableDeclarator",
389                          "id": {
390                            "type": "Identifier",
391                            "name": "expected",
392                            "decorators": [],
393                            "loc": {
394                              "start": {
395                                "line": 19,
396                                "column": 8
397                              },
398                              "end": {
399                                "line": 19,
400                                "column": 16
401                              }
402                            }
403                          },
404                          "init": {
405                            "type": "StringLiteral",
406                            "value": "nested backtick = `",
407                            "loc": {
408                              "start": {
409                                "line": 19,
410                                "column": 19
411                              },
412                              "end": {
413                                "line": 19,
414                                "column": 40
415                              }
416                            }
417                          },
418                          "loc": {
419                            "start": {
420                              "line": 19,
421                              "column": 8
422                            },
423                            "end": {
424                              "line": 19,
425                              "column": 40
426                            }
427                          }
428                        }
429                      ],
430                      "kind": "const",
431                      "loc": {
432                        "start": {
433                          "line": 19,
434                          "column": 2
435                        },
436                        "end": {
437                          "line": 19,
438                          "column": 40
439                        }
440                      }
441                    },
442                    {
443                      "type": "AssertStatement",
444                      "test": {
445                        "type": "BinaryExpression",
446                        "operator": "==",
447                        "left": {
448                          "type": "Identifier",
449                          "name": "v",
450                          "decorators": [],
451                          "loc": {
452                            "start": {
453                              "line": 20,
454                              "column": 9
455                            },
456                            "end": {
457                              "line": 20,
458                              "column": 10
459                            }
460                          }
461                        },
462                        "right": {
463                          "type": "Identifier",
464                          "name": "expected",
465                          "decorators": [],
466                          "loc": {
467                            "start": {
468                              "line": 20,
469                              "column": 14
470                            },
471                            "end": {
472                              "line": 20,
473                              "column": 22
474                            }
475                          }
476                        },
477                        "loc": {
478                          "start": {
479                            "line": 20,
480                            "column": 9
481                          },
482                          "end": {
483                            "line": 20,
484                            "column": 22
485                          }
486                        }
487                      },
488                      "second": null,
489                      "loc": {
490                        "start": {
491                          "line": 20,
492                          "column": 2
493                        },
494                        "end": {
495                          "line": 20,
496                          "column": 22
497                        }
498                      }
499                    }
500                  ],
501                  "loc": {
502                    "start": {
503                      "line": 16,
504                      "column": 17
505                    },
506                    "end": {
507                      "line": 21,
508                      "column": 2
509                    }
510                  }
511                },
512                "loc": {
513                  "start": {
514                    "line": 16,
515                    "column": 14
516                  },
517                  "end": {
518                    "line": 21,
519                    "column": 2
520                  }
521                }
522              },
523              "loc": {
524                "start": {
525                  "line": 16,
526                  "column": 14
527                },
528                "end": {
529                  "line": 21,
530                  "column": 2
531                }
532              }
533            },
534            "overloads": [],
535            "decorators": [],
536            "loc": {
537              "start": {
538                "line": 16,
539                "column": 1
540              },
541              "end": {
542                "line": 21,
543                "column": 2
544              }
545            }
546          }
547        ],
548        "loc": {
549          "start": {
550            "line": 1,
551            "column": 1
552          },
553          "end": {
554            "line": 1,
555            "column": 1
556          }
557        }
558      },
559      "loc": {
560        "start": {
561          "line": 1,
562          "column": 1
563        },
564        "end": {
565          "line": 1,
566          "column": 1
567        }
568      }
569    }
570  ],
571  "loc": {
572    "start": {
573      "line": 1,
574      "column": 1
575    },
576    "end": {
577      "line": 21,
578      "column": 2
579    }
580  }
581}
582