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": 17,
128                  "column": 10
129                },
130                "end": {
131                  "line": 17,
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": 17,
152                      "column": 10
153                    },
154                    "end": {
155                      "line": 17,
156                      "column": 14
157                    }
158                  }
159                },
160                "generator": false,
161                "async": false,
162                "expression": false,
163                "params": [],
164                "returnType": {
165                  "type": "ETSPrimitiveType",
166                  "loc": {
167                    "start": {
168                      "line": 17,
169                      "column": 18
170                    },
171                    "end": {
172                      "line": 17,
173                      "column": 22
174                    }
175                  }
176                },
177                "body": {
178                  "type": "BlockStatement",
179                  "statements": [
180                    {
181                      "type": "VariableDeclaration",
182                      "declarations": [
183                        {
184                          "type": "VariableDeclarator",
185                          "id": {
186                            "type": "Identifier",
187                            "name": "value",
188                            "typeAnnotation": {
189                              "type": "ETSPrimitiveType",
190                              "loc": {
191                                "start": {
192                                  "line": 18,
193                                  "column": 13
194                                },
195                                "end": {
196                                  "line": 18,
197                                  "column": 17
198                                }
199                              }
200                            },
201                            "decorators": [],
202                            "loc": {
203                              "start": {
204                                "line": 18,
205                                "column": 6
206                              },
207                              "end": {
208                                "line": 18,
209                                "column": 11
210                              }
211                            }
212                          },
213                          "init": {
214                            "type": "NumberLiteral",
215                            "value": 10,
216                            "loc": {
217                              "start": {
218                                "line": 18,
219                                "column": 20
220                              },
221                              "end": {
222                                "line": 18,
223                                "column": 22
224                              }
225                            }
226                          },
227                          "loc": {
228                            "start": {
229                              "line": 18,
230                              "column": 6
231                            },
232                            "end": {
233                              "line": 18,
234                              "column": 22
235                            }
236                          }
237                        }
238                      ],
239                      "kind": "let",
240                      "loc": {
241                        "start": {
242                          "line": 18,
243                          "column": 2
244                        },
245                        "end": {
246                          "line": 18,
247                          "column": 23
248                        }
249                      }
250                    },
251                    {
252                      "type": "VariableDeclaration",
253                      "declarations": [
254                        {
255                          "type": "VariableDeclarator",
256                          "id": {
257                            "type": "Identifier",
258                            "name": "result",
259                            "typeAnnotation": {
260                              "type": "ETSPrimitiveType",
261                              "loc": {
262                                "start": {
263                                  "line": 19,
264                                  "column": 14
265                                },
266                                "end": {
267                                  "line": 19,
268                                  "column": 18
269                                }
270                              }
271                            },
272                            "decorators": [],
273                            "loc": {
274                              "start": {
275                                "line": 19,
276                                "column": 6
277                              },
278                              "end": {
279                                "line": 19,
280                                "column": 12
281                              }
282                            }
283                          },
284                          "init": {
285                            "type": "NumberLiteral",
286                            "value": 0,
287                            "loc": {
288                              "start": {
289                                "line": 19,
290                                "column": 21
291                              },
292                              "end": {
293                                "line": 19,
294                                "column": 22
295                              }
296                            }
297                          },
298                          "loc": {
299                            "start": {
300                              "line": 19,
301                              "column": 6
302                            },
303                            "end": {
304                              "line": 19,
305                              "column": 22
306                            }
307                          }
308                        }
309                      ],
310                      "kind": "let",
311                      "loc": {
312                        "start": {
313                          "line": 19,
314                          "column": 2
315                        },
316                        "end": {
317                          "line": 19,
318                          "column": 23
319                        }
320                      }
321                    },
322                    {
323                      "type": "SwitchStatement",
324                      "discriminant": {
325                        "type": "Identifier",
326                        "name": "value",
327                        "decorators": [],
328                        "loc": {
329                          "start": {
330                            "line": 20,
331                            "column": 10
332                          },
333                          "end": {
334                            "line": 20,
335                            "column": 15
336                          }
337                        }
338                      },
339                      "cases": [
340                        {
341                          "type": "SwitchCase",
342                          "test": {
343                            "type": "NumberLiteral",
344                            "value": 0,
345                            "loc": {
346                              "start": {
347                                "line": 21,
348                                "column": 8
349                              },
350                              "end": {
351                                "line": 21,
352                                "column": 9
353                              }
354                            }
355                          },
356                          "consequent": [],
357                          "loc": {
358                            "start": {
359                              "line": 21,
360                              "column": 3
361                            },
362                            "end": {
363                              "line": 21,
364                              "column": 10
365                            }
366                          }
367                        },
368                        {
369                          "type": "SwitchCase",
370                          "test": {
371                            "type": "NumberLiteral",
372                            "value": 1,
373                            "loc": {
374                              "start": {
375                                "line": 22,
376                                "column": 8
377                              },
378                              "end": {
379                                "line": 22,
380                                "column": 9
381                              }
382                            }
383                          },
384                          "consequent": [
385                            {
386                              "type": "ExpressionStatement",
387                              "expression": {
388                                "type": "AssignmentExpression",
389                                "operator": "=",
390                                "left": {
391                                  "type": "Identifier",
392                                  "name": "result",
393                                  "decorators": [],
394                                  "loc": {
395                                    "start": {
396                                      "line": 23,
397                                      "column": 4
398                                    },
399                                    "end": {
400                                      "line": 23,
401                                      "column": 10
402                                    }
403                                  }
404                                },
405                                "right": {
406                                  "type": "NumberLiteral",
407                                  "value": 1,
408                                  "loc": {
409                                    "start": {
410                                      "line": 23,
411                                      "column": 13
412                                    },
413                                    "end": {
414                                      "line": 23,
415                                      "column": 14
416                                    }
417                                  }
418                                },
419                                "loc": {
420                                  "start": {
421                                    "line": 23,
422                                    "column": 4
423                                  },
424                                  "end": {
425                                    "line": 23,
426                                    "column": 14
427                                  }
428                                }
429                              },
430                              "loc": {
431                                "start": {
432                                  "line": 23,
433                                  "column": 4
434                                },
435                                "end": {
436                                  "line": 23,
437                                  "column": 15
438                                }
439                              }
440                            },
441                            {
442                              "type": "BreakStatement",
443                              "label": null,
444                              "loc": {
445                                "start": {
446                                  "line": 24,
447                                  "column": 4
448                                },
449                                "end": {
450                                  "line": 24,
451                                  "column": 10
452                                }
453                              }
454                            }
455                          ],
456                          "loc": {
457                            "start": {
458                              "line": 22,
459                              "column": 3
460                            },
461                            "end": {
462                              "line": 24,
463                              "column": 10
464                            }
465                          }
466                        },
467                        {
468                          "type": "SwitchCase",
469                          "test": {
470                            "type": "NumberLiteral",
471                            "value": 2,
472                            "loc": {
473                              "start": {
474                                "line": 25,
475                                "column": 8
476                              },
477                              "end": {
478                                "line": 25,
479                                "column": 9
480                              }
481                            }
482                          },
483                          "consequent": [
484                            {
485                              "type": "ExpressionStatement",
486                              "expression": {
487                                "type": "AssignmentExpression",
488                                "operator": "=",
489                                "left": {
490                                  "type": "Identifier",
491                                  "name": "result",
492                                  "decorators": [],
493                                  "loc": {
494                                    "start": {
495                                      "line": 26,
496                                      "column": 4
497                                    },
498                                    "end": {
499                                      "line": 26,
500                                      "column": 10
501                                    }
502                                  }
503                                },
504                                "right": {
505                                  "type": "NumberLiteral",
506                                  "value": 2,
507                                  "loc": {
508                                    "start": {
509                                      "line": 26,
510                                      "column": 13
511                                    },
512                                    "end": {
513                                      "line": 26,
514                                      "column": 14
515                                    }
516                                  }
517                                },
518                                "loc": {
519                                  "start": {
520                                    "line": 26,
521                                    "column": 4
522                                  },
523                                  "end": {
524                                    "line": 26,
525                                    "column": 14
526                                  }
527                                }
528                              },
529                              "loc": {
530                                "start": {
531                                  "line": 26,
532                                  "column": 4
533                                },
534                                "end": {
535                                  "line": 26,
536                                  "column": 15
537                                }
538                              }
539                            },
540                            {
541                              "type": "BreakStatement",
542                              "label": null,
543                              "loc": {
544                                "start": {
545                                  "line": 27,
546                                  "column": 4
547                                },
548                                "end": {
549                                  "line": 27,
550                                  "column": 10
551                                }
552                              }
553                            }
554                          ],
555                          "loc": {
556                            "start": {
557                              "line": 25,
558                              "column": 3
559                            },
560                            "end": {
561                              "line": 27,
562                              "column": 10
563                            }
564                          }
565                        },
566                        {
567                          "type": "SwitchCase",
568                          "test": null,
569                          "consequent": [
570                            {
571                              "type": "ExpressionStatement",
572                              "expression": {
573                                "type": "AssignmentExpression",
574                                "operator": "=",
575                                "left": {
576                                  "type": "Identifier",
577                                  "name": "result",
578                                  "decorators": [],
579                                  "loc": {
580                                    "start": {
581                                      "line": 29,
582                                      "column": 4
583                                    },
584                                    "end": {
585                                      "line": 29,
586                                      "column": 10
587                                    }
588                                  }
589                                },
590                                "right": {
591                                  "type": "UnaryExpression",
592                                  "operator": "-",
593                                  "prefix": true,
594                                  "argument": {
595                                    "type": "NumberLiteral",
596                                    "value": 1,
597                                    "loc": {
598                                      "start": {
599                                        "line": 29,
600                                        "column": 14
601                                      },
602                                      "end": {
603                                        "line": 29,
604                                        "column": 15
605                                      }
606                                    }
607                                  },
608                                  "loc": {
609                                    "start": {
610                                      "line": 29,
611                                      "column": 13
612                                    },
613                                    "end": {
614                                      "line": 29,
615                                      "column": 15
616                                    }
617                                  }
618                                },
619                                "loc": {
620                                  "start": {
621                                    "line": 29,
622                                    "column": 4
623                                  },
624                                  "end": {
625                                    "line": 29,
626                                    "column": 15
627                                  }
628                                }
629                              },
630                              "loc": {
631                                "start": {
632                                  "line": 29,
633                                  "column": 4
634                                },
635                                "end": {
636                                  "line": 29,
637                                  "column": 16
638                                }
639                              }
640                            }
641                          ],
642                          "loc": {
643                            "start": {
644                              "line": 28,
645                              "column": 3
646                            },
647                            "end": {
648                              "line": 29,
649                              "column": 16
650                            }
651                          }
652                        }
653                      ],
654                      "loc": {
655                        "start": {
656                          "line": 20,
657                          "column": 2
658                        },
659                        "end": {
660                          "line": 30,
661                          "column": 3
662                        }
663                      }
664                    }
665                  ],
666                  "loc": {
667                    "start": {
668                      "line": 17,
669                      "column": 23
670                    },
671                    "end": {
672                      "line": 31,
673                      "column": 2
674                    }
675                  }
676                },
677                "loc": {
678                  "start": {
679                    "line": 17,
680                    "column": 14
681                  },
682                  "end": {
683                    "line": 31,
684                    "column": 2
685                  }
686                }
687              },
688              "loc": {
689                "start": {
690                  "line": 17,
691                  "column": 14
692                },
693                "end": {
694                  "line": 31,
695                  "column": 2
696                }
697              }
698            },
699            "overloads": [],
700            "decorators": [],
701            "loc": {
702              "start": {
703                "line": 17,
704                "column": 1
705              },
706              "end": {
707                "line": 31,
708                "column": 2
709              }
710            }
711          }
712        ],
713        "loc": {
714          "start": {
715            "line": 1,
716            "column": 1
717          },
718          "end": {
719            "line": 1,
720            "column": 1
721          }
722        }
723      },
724      "loc": {
725        "start": {
726          "line": 1,
727          "column": 1
728        },
729        "end": {
730          "line": 1,
731          "column": 1
732        }
733      }
734    }
735  ],
736  "loc": {
737    "start": {
738      "line": 1,
739      "column": 1
740    },
741    "end": {
742      "line": 32,
743      "column": 1
744    }
745  }
746}
747