• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1{
2  "type": "Program",
3  "statements": [
4    {
5      "type": "TSEnumDeclaration",
6      "id": {
7        "type": "Identifier",
8        "name": "A",
9        "decorators": [],
10        "loc": {
11          "start": {
12            "line": 20,
13            "column": 6
14          },
15          "end": {
16            "line": 20,
17            "column": 7
18          }
19        }
20      },
21      "members": [
22        {
23          "type": "TSEnumMember",
24          "id": {
25            "type": "Identifier",
26            "name": "B",
27            "decorators": [],
28            "loc": {
29              "start": {
30                "line": 21,
31                "column": 5
32              },
33              "end": {
34                "line": 21,
35                "column": 6
36              }
37            }
38          },
39          "initializer": {
40            "type": "NumberLiteral",
41            "value": 0,
42            "loc": {
43              "start": {
44                "line": 1,
45                "column": 1
46              },
47              "end": {
48                "line": 1,
49                "column": 1
50              }
51            }
52          },
53          "loc": {
54            "start": {
55              "line": 21,
56              "column": 5
57            },
58            "end": {
59              "line": 21,
60              "column": 6
61            }
62          }
63        },
64        {
65          "type": "TSEnumMember",
66          "id": {
67            "type": "Identifier",
68            "name": "C",
69            "decorators": [],
70            "loc": {
71              "start": {
72                "line": 21,
73                "column": 8
74              },
75              "end": {
76                "line": 21,
77                "column": 9
78              }
79            }
80          },
81          "initializer": {
82            "type": "NumberLiteral",
83            "value": 1,
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": 21,
98              "column": 8
99            },
100            "end": {
101              "line": 21,
102              "column": 9
103            }
104          }
105        },
106        {
107          "type": "TSEnumMember",
108          "id": {
109            "type": "Identifier",
110            "name": "D",
111            "decorators": [],
112            "loc": {
113              "start": {
114                "line": 21,
115                "column": 11
116              },
117              "end": {
118                "line": 21,
119                "column": 12
120              }
121            }
122          },
123          "initializer": {
124            "type": "NumberLiteral",
125            "value": 2,
126            "loc": {
127              "start": {
128                "line": 1,
129                "column": 1
130              },
131              "end": {
132                "line": 1,
133                "column": 1
134              }
135            }
136          },
137          "loc": {
138            "start": {
139              "line": 21,
140              "column": 11
141            },
142            "end": {
143              "line": 21,
144              "column": 12
145            }
146          }
147        }
148      ],
149      "const": false,
150      "declare": false,
151      "loc": {
152        "start": {
153          "line": 20,
154          "column": 1
155        },
156        "end": {
157          "line": 22,
158          "column": 2
159        }
160      }
161    },
162    {
163      "type": "ClassDeclaration",
164      "definition": {
165        "id": {
166          "type": "Identifier",
167          "name": "ETSGLOBAL",
168          "decorators": [],
169          "loc": {
170            "start": {
171              "line": 1,
172              "column": 1
173            },
174            "end": {
175              "line": 1,
176              "column": 1
177            }
178          }
179        },
180        "superClass": null,
181        "implements": [],
182        "body": [
183          {
184            "type": "MethodDefinition",
185            "key": {
186              "type": "Identifier",
187              "name": "_$init$_",
188              "decorators": [],
189              "loc": {
190                "start": {
191                  "line": 1,
192                  "column": 1
193                },
194                "end": {
195                  "line": 1,
196                  "column": 1
197                }
198              }
199            },
200            "kind": "method",
201            "accessibility": "public",
202            "static": true,
203            "optional": false,
204            "computed": false,
205            "value": {
206              "type": "FunctionExpression",
207              "function": {
208                "type": "ScriptFunction",
209                "id": {
210                  "type": "Identifier",
211                  "name": "_$init$_",
212                  "decorators": [],
213                  "loc": {
214                    "start": {
215                      "line": 1,
216                      "column": 1
217                    },
218                    "end": {
219                      "line": 1,
220                      "column": 1
221                    }
222                  }
223                },
224                "generator": false,
225                "async": false,
226                "expression": false,
227                "params": [],
228                "body": {
229                  "type": "BlockStatement",
230                  "statements": [],
231                  "loc": {
232                    "start": {
233                      "line": 1,
234                      "column": 1
235                    },
236                    "end": {
237                      "line": 1,
238                      "column": 1
239                    }
240                  }
241                },
242                "loc": {
243                  "start": {
244                    "line": 1,
245                    "column": 1
246                  },
247                  "end": {
248                    "line": 1,
249                    "column": 1
250                  }
251                }
252              },
253              "loc": {
254                "start": {
255                  "line": 1,
256                  "column": 1
257                },
258                "end": {
259                  "line": 1,
260                  "column": 1
261                }
262              }
263            },
264            "overloads": [],
265            "decorators": [],
266            "loc": {
267              "start": {
268                "line": 1,
269                "column": 1
270              },
271              "end": {
272                "line": 1,
273                "column": 1
274              }
275            }
276          },
277          {
278            "type": "MethodDefinition",
279            "key": {
280              "type": "Identifier",
281              "name": "main",
282              "decorators": [],
283              "loc": {
284                "start": {
285                  "line": 24,
286                  "column": 10
287                },
288                "end": {
289                  "line": 24,
290                  "column": 14
291                }
292              }
293            },
294            "kind": "method",
295            "accessibility": "public",
296            "static": true,
297            "optional": false,
298            "computed": false,
299            "value": {
300              "type": "FunctionExpression",
301              "function": {
302                "type": "ScriptFunction",
303                "id": {
304                  "type": "Identifier",
305                  "name": "main",
306                  "decorators": [],
307                  "loc": {
308                    "start": {
309                      "line": 24,
310                      "column": 10
311                    },
312                    "end": {
313                      "line": 24,
314                      "column": 14
315                    }
316                  }
317                },
318                "generator": false,
319                "async": false,
320                "expression": false,
321                "params": [],
322                "body": {
323                  "type": "BlockStatement",
324                  "statements": [
325                    {
326                      "type": "VariableDeclaration",
327                      "declarations": [
328                        {
329                          "type": "VariableDeclarator",
330                          "id": {
331                            "type": "Identifier",
332                            "name": "k",
333                            "typeAnnotation": {
334                              "type": "ETSTypeReference",
335                              "part": {
336                                "type": "ETSTypeReferencePart",
337                                "name": {
338                                  "type": "Identifier",
339                                  "name": "A",
340                                  "decorators": [],
341                                  "loc": {
342                                    "start": {
343                                      "line": 25,
344                                      "column": 12
345                                    },
346                                    "end": {
347                                      "line": 25,
348                                      "column": 13
349                                    }
350                                  }
351                                },
352                                "loc": {
353                                  "start": {
354                                    "line": 25,
355                                    "column": 12
356                                  },
357                                  "end": {
358                                    "line": 25,
359                                    "column": 15
360                                  }
361                                }
362                              },
363                              "loc": {
364                                "start": {
365                                  "line": 25,
366                                  "column": 12
367                                },
368                                "end": {
369                                  "line": 25,
370                                  "column": 15
371                                }
372                              }
373                            },
374                            "decorators": [],
375                            "loc": {
376                              "start": {
377                                "line": 25,
378                                "column": 9
379                              },
380                              "end": {
381                                "line": 25,
382                                "column": 10
383                              }
384                            }
385                          },
386                          "init": {
387                            "type": "MemberExpression",
388                            "object": {
389                              "type": "Identifier",
390                              "name": "A",
391                              "decorators": [],
392                              "loc": {
393                                "start": {
394                                  "line": 25,
395                                  "column": 16
396                                },
397                                "end": {
398                                  "line": 25,
399                                  "column": 17
400                                }
401                              }
402                            },
403                            "property": {
404                              "type": "Identifier",
405                              "name": "D",
406                              "decorators": [],
407                              "loc": {
408                                "start": {
409                                  "line": 25,
410                                  "column": 18
411                                },
412                                "end": {
413                                  "line": 25,
414                                  "column": 19
415                                }
416                              }
417                            },
418                            "computed": false,
419                            "optional": false,
420                            "loc": {
421                              "start": {
422                                "line": 25,
423                                "column": 16
424                              },
425                              "end": {
426                                "line": 25,
427                                "column": 19
428                              }
429                            }
430                          },
431                          "loc": {
432                            "start": {
433                              "line": 25,
434                              "column": 9
435                            },
436                            "end": {
437                              "line": 25,
438                              "column": 19
439                            }
440                          }
441                        }
442                      ],
443                      "kind": "let",
444                      "loc": {
445                        "start": {
446                          "line": 25,
447                          "column": 5
448                        },
449                        "end": {
450                          "line": 25,
451                          "column": 19
452                        }
453                      }
454                    },
455                    {
456                      "type": "SwitchStatement",
457                      "discriminant": {
458                        "type": "Identifier",
459                        "name": "k",
460                        "decorators": [],
461                        "loc": {
462                          "start": {
463                            "line": 26,
464                            "column": 13
465                          },
466                          "end": {
467                            "line": 26,
468                            "column": 14
469                          }
470                        }
471                      },
472                      "cases": [
473                        {
474                          "type": "SwitchCase",
475                          "test": {
476                            "type": "MemberExpression",
477                            "object": {
478                              "type": "Identifier",
479                              "name": "A",
480                              "decorators": [],
481                              "loc": {
482                                "start": {
483                                  "line": 27,
484                                  "column": 14
485                                },
486                                "end": {
487                                  "line": 27,
488                                  "column": 15
489                                }
490                              }
491                            },
492                            "property": {
493                              "type": "Identifier",
494                              "name": "B",
495                              "decorators": [],
496                              "loc": {
497                                "start": {
498                                  "line": 27,
499                                  "column": 16
500                                },
501                                "end": {
502                                  "line": 27,
503                                  "column": 17
504                                }
505                              }
506                            },
507                            "computed": false,
508                            "optional": false,
509                            "loc": {
510                              "start": {
511                                "line": 27,
512                                "column": 14
513                              },
514                              "end": {
515                                "line": 27,
516                                "column": 17
517                              }
518                            }
519                          },
520                          "consequent": [
521                            {
522                              "type": "BreakStatement",
523                              "label": null,
524                              "loc": {
525                                "start": {
526                                  "line": 28,
527                                  "column": 13
528                                },
529                                "end": {
530                                  "line": 28,
531                                  "column": 19
532                                }
533                              }
534                            }
535                          ],
536                          "loc": {
537                            "start": {
538                              "line": 27,
539                              "column": 9
540                            },
541                            "end": {
542                              "line": 28,
543                              "column": 19
544                            }
545                          }
546                        },
547                        {
548                          "type": "SwitchCase",
549                          "test": {
550                            "type": "MemberExpression",
551                            "object": {
552                              "type": "Identifier",
553                              "name": "A",
554                              "decorators": [],
555                              "loc": {
556                                "start": {
557                                  "line": 29,
558                                  "column": 14
559                                },
560                                "end": {
561                                  "line": 29,
562                                  "column": 15
563                                }
564                              }
565                            },
566                            "property": {
567                              "type": "Identifier",
568                              "name": "C",
569                              "decorators": [],
570                              "loc": {
571                                "start": {
572                                  "line": 29,
573                                  "column": 16
574                                },
575                                "end": {
576                                  "line": 29,
577                                  "column": 17
578                                }
579                              }
580                            },
581                            "computed": false,
582                            "optional": false,
583                            "loc": {
584                              "start": {
585                                "line": 29,
586                                "column": 14
587                              },
588                              "end": {
589                                "line": 29,
590                                "column": 17
591                              }
592                            }
593                          },
594                          "consequent": [
595                            {
596                              "type": "BreakStatement",
597                              "label": null,
598                              "loc": {
599                                "start": {
600                                  "line": 30,
601                                  "column": 13
602                                },
603                                "end": {
604                                  "line": 30,
605                                  "column": 19
606                                }
607                              }
608                            }
609                          ],
610                          "loc": {
611                            "start": {
612                              "line": 29,
613                              "column": 9
614                            },
615                            "end": {
616                              "line": 30,
617                              "column": 19
618                            }
619                          }
620                        },
621                        {
622                          "type": "SwitchCase",
623                          "test": {
624                            "type": "MemberExpression",
625                            "object": {
626                              "type": "Identifier",
627                              "name": "A",
628                              "decorators": [],
629                              "loc": {
630                                "start": {
631                                  "line": 31,
632                                  "column": 14
633                                },
634                                "end": {
635                                  "line": 31,
636                                  "column": 15
637                                }
638                              }
639                            },
640                            "property": {
641                              "type": "Identifier",
642                              "name": "D",
643                              "decorators": [],
644                              "loc": {
645                                "start": {
646                                  "line": 31,
647                                  "column": 16
648                                },
649                                "end": {
650                                  "line": 31,
651                                  "column": 17
652                                }
653                              }
654                            },
655                            "computed": false,
656                            "optional": false,
657                            "loc": {
658                              "start": {
659                                "line": 31,
660                                "column": 14
661                              },
662                              "end": {
663                                "line": 31,
664                                "column": 17
665                              }
666                            }
667                          },
668                          "consequent": [
669                            {
670                              "type": "BreakStatement",
671                              "label": null,
672                              "loc": {
673                                "start": {
674                                  "line": 32,
675                                  "column": 13
676                                },
677                                "end": {
678                                  "line": 32,
679                                  "column": 19
680                                }
681                              }
682                            }
683                          ],
684                          "loc": {
685                            "start": {
686                              "line": 31,
687                              "column": 9
688                            },
689                            "end": {
690                              "line": 32,
691                              "column": 19
692                            }
693                          }
694                        }
695                      ],
696                      "loc": {
697                        "start": {
698                          "line": 26,
699                          "column": 5
700                        },
701                        "end": {
702                          "line": 33,
703                          "column": 6
704                        }
705                      }
706                    }
707                  ],
708                  "loc": {
709                    "start": {
710                      "line": 24,
711                      "column": 17
712                    },
713                    "end": {
714                      "line": 34,
715                      "column": 2
716                    }
717                  }
718                },
719                "loc": {
720                  "start": {
721                    "line": 24,
722                    "column": 10
723                  },
724                  "end": {
725                    "line": 34,
726                    "column": 2
727                  }
728                }
729              },
730              "loc": {
731                "start": {
732                  "line": 24,
733                  "column": 10
734                },
735                "end": {
736                  "line": 34,
737                  "column": 2
738                }
739              }
740            },
741            "overloads": [],
742            "decorators": [],
743            "loc": {
744              "start": {
745                "line": 24,
746                "column": 1
747              },
748              "end": {
749                "line": 34,
750                "column": 2
751              }
752            }
753          }
754        ],
755        "loc": {
756          "start": {
757            "line": 1,
758            "column": 1
759          },
760          "end": {
761            "line": 1,
762            "column": 1
763          }
764        }
765      },
766      "loc": {
767        "start": {
768          "line": 1,
769          "column": 1
770        },
771        "end": {
772          "line": 1,
773          "column": 1
774        }
775      }
776    },
777    {
778      "type": "ClassDeclaration",
779      "definition": {
780        "id": {
781          "type": "Identifier",
782          "name": "#A",
783          "decorators": [],
784          "loc": {
785            "start": {
786              "line": 1,
787              "column": 1
788            },
789            "end": {
790              "line": 1,
791              "column": 1
792            }
793          }
794        },
795        "superClass": null,
796        "implements": [],
797        "body": [
798          {
799            "type": "ClassProperty",
800            "key": {
801              "type": "Identifier",
802              "name": "ordinal",
803              "decorators": [],
804              "loc": {
805                "start": {
806                  "line": 1,
807                  "column": 1
808                },
809                "end": {
810                  "line": 1,
811                  "column": 1
812                }
813              }
814            },
815            "accessibility": "protected",
816            "static": false,
817            "readonly": false,
818            "declare": false,
819            "optional": false,
820            "computed": false,
821            "typeAnnotation": {
822              "type": "ETSPrimitiveType",
823              "loc": {
824                "start": {
825                  "line": 1,
826                  "column": 1
827                },
828                "end": {
829                  "line": 1,
830                  "column": 1
831                }
832              }
833            },
834            "definite": false,
835            "decorators": [],
836            "loc": {
837              "start": {
838                "line": 1,
839                "column": 1
840              },
841              "end": {
842                "line": 1,
843                "column": 1
844              }
845            }
846          },
847          {
848            "type": "MethodDefinition",
849            "key": {
850              "type": "Identifier",
851              "name": "<cctor>",
852              "decorators": [],
853              "loc": {
854                "start": {
855                  "line": 1,
856                  "column": 1
857                },
858                "end": {
859                  "line": 1,
860                  "column": 1
861                }
862              }
863            },
864            "kind": "method",
865            "accessibility": "public",
866            "static": true,
867            "optional": false,
868            "computed": false,
869            "value": {
870              "type": "FunctionExpression",
871              "function": {
872                "type": "ScriptFunction",
873                "id": {
874                  "type": "Identifier",
875                  "name": "<cctor>",
876                  "decorators": [],
877                  "loc": {
878                    "start": {
879                      "line": 1,
880                      "column": 1
881                    },
882                    "end": {
883                      "line": 1,
884                      "column": 1
885                    }
886                  }
887                },
888                "generator": false,
889                "async": false,
890                "expression": false,
891                "params": [],
892                "body": {
893                  "type": "BlockStatement",
894                  "statements": [],
895                  "loc": {
896                    "start": {
897                      "line": 1,
898                      "column": 1
899                    },
900                    "end": {
901                      "line": 1,
902                      "column": 1
903                    }
904                  }
905                },
906                "loc": {
907                  "start": {
908                    "line": 1,
909                    "column": 1
910                  },
911                  "end": {
912                    "line": 1,
913                    "column": 1
914                  }
915                }
916              },
917              "loc": {
918                "start": {
919                  "line": 1,
920                  "column": 1
921                },
922                "end": {
923                  "line": 1,
924                  "column": 1
925                }
926              }
927            },
928            "overloads": [],
929            "decorators": [],
930            "loc": {
931              "start": {
932                "line": 1,
933                "column": 1
934              },
935              "end": {
936                "line": 1,
937                "column": 1
938              }
939            }
940          },
941          {
942            "type": "MethodDefinition",
943            "key": {
944              "type": "Identifier",
945              "name": "constructor",
946              "decorators": [],
947              "loc": {
948                "start": {
949                  "line": 1,
950                  "column": 1
951                },
952                "end": {
953                  "line": 1,
954                  "column": 1
955                }
956              }
957            },
958            "kind": "constructor",
959            "accessibility": "public",
960            "static": false,
961            "optional": false,
962            "computed": false,
963            "value": {
964              "type": "FunctionExpression",
965              "function": {
966                "type": "ScriptFunction",
967                "id": {
968                  "type": "Identifier",
969                  "name": "constructor",
970                  "decorators": [],
971                  "loc": {
972                    "start": {
973                      "line": 1,
974                      "column": 1
975                    },
976                    "end": {
977                      "line": 1,
978                      "column": 1
979                    }
980                  }
981                },
982                "generator": false,
983                "async": false,
984                "expression": false,
985                "params": [
986                  {
987                    "type": "ETSParameterExpression",
988                    "name": {
989                      "type": "Identifier",
990                      "name": "ordinal",
991                      "typeAnnotation": {
992                        "type": "ETSPrimitiveType",
993                        "loc": {
994                          "start": {
995                            "line": 1,
996                            "column": 1
997                          },
998                          "end": {
999                            "line": 1,
1000                            "column": 1
1001                          }
1002                        }
1003                      },
1004                      "decorators": [],
1005                      "loc": {
1006                        "start": {
1007                          "line": 1,
1008                          "column": 1
1009                        },
1010                        "end": {
1011                          "line": 1,
1012                          "column": 1
1013                        }
1014                      }
1015                    },
1016                    "loc": {
1017                      "start": {
1018                        "line": 1,
1019                        "column": 1
1020                      },
1021                      "end": {
1022                        "line": 1,
1023                        "column": 1
1024                      }
1025                    }
1026                  }
1027                ],
1028                "body": {
1029                  "type": "BlockStatement",
1030                  "statements": [
1031                    {
1032                      "type": "ExpressionStatement",
1033                      "expression": {
1034                        "type": "AssignmentExpression",
1035                        "operator": "=",
1036                        "left": {
1037                          "type": "MemberExpression",
1038                          "object": {
1039                            "type": "ThisExpression",
1040                            "loc": {
1041                              "start": {
1042                                "line": 1,
1043                                "column": 1
1044                              },
1045                              "end": {
1046                                "line": 1,
1047                                "column": 1
1048                              }
1049                            }
1050                          },
1051                          "property": {
1052                            "type": "Identifier",
1053                            "name": "ordinal",
1054                            "decorators": [],
1055                            "loc": {
1056                              "start": {
1057                                "line": 1,
1058                                "column": 1
1059                              },
1060                              "end": {
1061                                "line": 1,
1062                                "column": 1
1063                              }
1064                            }
1065                          },
1066                          "computed": false,
1067                          "optional": false,
1068                          "loc": {
1069                            "start": {
1070                              "line": 1,
1071                              "column": 1
1072                            },
1073                            "end": {
1074                              "line": 1,
1075                              "column": 1
1076                            }
1077                          }
1078                        },
1079                        "right": {
1080                          "type": "Identifier",
1081                          "name": "ordinal",
1082                          "decorators": [],
1083                          "loc": {
1084                            "start": {
1085                              "line": 1,
1086                              "column": 1
1087                            },
1088                            "end": {
1089                              "line": 1,
1090                              "column": 1
1091                            }
1092                          }
1093                        },
1094                        "loc": {
1095                          "start": {
1096                            "line": 1,
1097                            "column": 1
1098                          },
1099                          "end": {
1100                            "line": 1,
1101                            "column": 1
1102                          }
1103                        }
1104                      },
1105                      "loc": {
1106                        "start": {
1107                          "line": 1,
1108                          "column": 1
1109                        },
1110                        "end": {
1111                          "line": 1,
1112                          "column": 1
1113                        }
1114                      }
1115                    }
1116                  ],
1117                  "loc": {
1118                    "start": {
1119                      "line": 1,
1120                      "column": 1
1121                    },
1122                    "end": {
1123                      "line": 1,
1124                      "column": 1
1125                    }
1126                  }
1127                },
1128                "loc": {
1129                  "start": {
1130                    "line": 1,
1131                    "column": 1
1132                  },
1133                  "end": {
1134                    "line": 1,
1135                    "column": 1
1136                  }
1137                }
1138              },
1139              "loc": {
1140                "start": {
1141                  "line": 1,
1142                  "column": 1
1143                },
1144                "end": {
1145                  "line": 1,
1146                  "column": 1
1147                }
1148              }
1149            },
1150            "overloads": [],
1151            "decorators": [],
1152            "loc": {
1153              "start": {
1154                "line": 1,
1155                "column": 1
1156              },
1157              "end": {
1158                "line": 1,
1159                "column": 1
1160              }
1161            }
1162          },
1163          {
1164            "type": "ClassProperty",
1165            "key": {
1166              "type": "Identifier",
1167              "name": "NamesArray",
1168              "decorators": [],
1169              "loc": {
1170                "start": {
1171                  "line": 1,
1172                  "column": 1
1173                },
1174                "end": {
1175                  "line": 1,
1176                  "column": 1
1177                }
1178              }
1179            },
1180            "value": {
1181              "type": "ArrayExpression",
1182              "elements": [
1183                {
1184                  "type": "StringLiteral",
1185                  "value": "B",
1186                  "loc": {
1187                    "start": {
1188                      "line": 1,
1189                      "column": 1
1190                    },
1191                    "end": {
1192                      "line": 1,
1193                      "column": 1
1194                    }
1195                  }
1196                },
1197                {
1198                  "type": "StringLiteral",
1199                  "value": "C",
1200                  "loc": {
1201                    "start": {
1202                      "line": 1,
1203                      "column": 1
1204                    },
1205                    "end": {
1206                      "line": 1,
1207                      "column": 1
1208                    }
1209                  }
1210                },
1211                {
1212                  "type": "StringLiteral",
1213                  "value": "D",
1214                  "loc": {
1215                    "start": {
1216                      "line": 1,
1217                      "column": 1
1218                    },
1219                    "end": {
1220                      "line": 1,
1221                      "column": 1
1222                    }
1223                  }
1224                }
1225              ],
1226              "loc": {
1227                "start": {
1228                  "line": 1,
1229                  "column": 1
1230                },
1231                "end": {
1232                  "line": 1,
1233                  "column": 1
1234                }
1235              }
1236            },
1237            "accessibility": "protected",
1238            "static": true,
1239            "readonly": true,
1240            "declare": false,
1241            "optional": false,
1242            "computed": false,
1243            "typeAnnotation": {
1244              "type": "TSArrayType",
1245              "elementType": {
1246                "type": "ETSTypeReference",
1247                "part": {
1248                  "type": "ETSTypeReferencePart",
1249                  "name": {
1250                    "type": "Identifier",
1251                    "name": "String",
1252                    "decorators": [],
1253                    "loc": {
1254                      "start": {
1255                        "line": 1,
1256                        "column": 1
1257                      },
1258                      "end": {
1259                        "line": 1,
1260                        "column": 1
1261                      }
1262                    }
1263                  },
1264                  "loc": {
1265                    "start": {
1266                      "line": 1,
1267                      "column": 1
1268                    },
1269                    "end": {
1270                      "line": 1,
1271                      "column": 1
1272                    }
1273                  }
1274                },
1275                "loc": {
1276                  "start": {
1277                    "line": 1,
1278                    "column": 1
1279                  },
1280                  "end": {
1281                    "line": 1,
1282                    "column": 1
1283                  }
1284                }
1285              },
1286              "loc": {
1287                "start": {
1288                  "line": 1,
1289                  "column": 1
1290                },
1291                "end": {
1292                  "line": 1,
1293                  "column": 1
1294                }
1295              }
1296            },
1297            "definite": false,
1298            "decorators": [],
1299            "loc": {
1300              "start": {
1301                "line": 1,
1302                "column": 1
1303              },
1304              "end": {
1305                "line": 1,
1306                "column": 1
1307              }
1308            }
1309          },
1310          {
1311            "type": "ClassProperty",
1312            "key": {
1313              "type": "Identifier",
1314              "name": "ValuesArray",
1315              "decorators": [],
1316              "loc": {
1317                "start": {
1318                  "line": 1,
1319                  "column": 1
1320                },
1321                "end": {
1322                  "line": 1,
1323                  "column": 1
1324                }
1325              }
1326            },
1327            "value": {
1328              "type": "ArrayExpression",
1329              "elements": [
1330                {
1331                  "type": "NumberLiteral",
1332                  "value": 0,
1333                  "loc": {
1334                    "start": {
1335                      "line": 1,
1336                      "column": 1
1337                    },
1338                    "end": {
1339                      "line": 1,
1340                      "column": 1
1341                    }
1342                  }
1343                },
1344                {
1345                  "type": "NumberLiteral",
1346                  "value": 1,
1347                  "loc": {
1348                    "start": {
1349                      "line": 1,
1350                      "column": 1
1351                    },
1352                    "end": {
1353                      "line": 1,
1354                      "column": 1
1355                    }
1356                  }
1357                },
1358                {
1359                  "type": "NumberLiteral",
1360                  "value": 2,
1361                  "loc": {
1362                    "start": {
1363                      "line": 1,
1364                      "column": 1
1365                    },
1366                    "end": {
1367                      "line": 1,
1368                      "column": 1
1369                    }
1370                  }
1371                }
1372              ],
1373              "loc": {
1374                "start": {
1375                  "line": 1,
1376                  "column": 1
1377                },
1378                "end": {
1379                  "line": 1,
1380                  "column": 1
1381                }
1382              }
1383            },
1384            "accessibility": "protected",
1385            "static": true,
1386            "readonly": true,
1387            "declare": false,
1388            "optional": false,
1389            "computed": false,
1390            "typeAnnotation": {
1391              "type": "TSArrayType",
1392              "elementType": {
1393                "type": "ETSPrimitiveType",
1394                "loc": {
1395                  "start": {
1396                    "line": 1,
1397                    "column": 1
1398                  },
1399                  "end": {
1400                    "line": 1,
1401                    "column": 1
1402                  }
1403                }
1404              },
1405              "loc": {
1406                "start": {
1407                  "line": 1,
1408                  "column": 1
1409                },
1410                "end": {
1411                  "line": 1,
1412                  "column": 1
1413                }
1414              }
1415            },
1416            "definite": false,
1417            "decorators": [],
1418            "loc": {
1419              "start": {
1420                "line": 1,
1421                "column": 1
1422              },
1423              "end": {
1424                "line": 1,
1425                "column": 1
1426              }
1427            }
1428          },
1429          {
1430            "type": "ClassProperty",
1431            "key": {
1432              "type": "Identifier",
1433              "name": "StringValuesArray",
1434              "decorators": [],
1435              "loc": {
1436                "start": {
1437                  "line": 1,
1438                  "column": 1
1439                },
1440                "end": {
1441                  "line": 1,
1442                  "column": 1
1443                }
1444              }
1445            },
1446            "value": {
1447              "type": "ArrayExpression",
1448              "elements": [
1449                {
1450                  "type": "StringLiteral",
1451                  "value": "0",
1452                  "loc": {
1453                    "start": {
1454                      "line": 1,
1455                      "column": 1
1456                    },
1457                    "end": {
1458                      "line": 1,
1459                      "column": 1
1460                    }
1461                  }
1462                },
1463                {
1464                  "type": "StringLiteral",
1465                  "value": "1",
1466                  "loc": {
1467                    "start": {
1468                      "line": 1,
1469                      "column": 1
1470                    },
1471                    "end": {
1472                      "line": 1,
1473                      "column": 1
1474                    }
1475                  }
1476                },
1477                {
1478                  "type": "StringLiteral",
1479                  "value": "2",
1480                  "loc": {
1481                    "start": {
1482                      "line": 1,
1483                      "column": 1
1484                    },
1485                    "end": {
1486                      "line": 1,
1487                      "column": 1
1488                    }
1489                  }
1490                }
1491              ],
1492              "loc": {
1493                "start": {
1494                  "line": 1,
1495                  "column": 1
1496                },
1497                "end": {
1498                  "line": 1,
1499                  "column": 1
1500                }
1501              }
1502            },
1503            "accessibility": "protected",
1504            "static": true,
1505            "readonly": true,
1506            "declare": false,
1507            "optional": false,
1508            "computed": false,
1509            "typeAnnotation": {
1510              "type": "TSArrayType",
1511              "elementType": {
1512                "type": "ETSTypeReference",
1513                "part": {
1514                  "type": "ETSTypeReferencePart",
1515                  "name": {
1516                    "type": "Identifier",
1517                    "name": "String",
1518                    "decorators": [],
1519                    "loc": {
1520                      "start": {
1521                        "line": 1,
1522                        "column": 1
1523                      },
1524                      "end": {
1525                        "line": 1,
1526                        "column": 1
1527                      }
1528                    }
1529                  },
1530                  "loc": {
1531                    "start": {
1532                      "line": 1,
1533                      "column": 1
1534                    },
1535                    "end": {
1536                      "line": 1,
1537                      "column": 1
1538                    }
1539                  }
1540                },
1541                "loc": {
1542                  "start": {
1543                    "line": 1,
1544                    "column": 1
1545                  },
1546                  "end": {
1547                    "line": 1,
1548                    "column": 1
1549                  }
1550                }
1551              },
1552              "loc": {
1553                "start": {
1554                  "line": 1,
1555                  "column": 1
1556                },
1557                "end": {
1558                  "line": 1,
1559                  "column": 1
1560                }
1561              }
1562            },
1563            "definite": false,
1564            "decorators": [],
1565            "loc": {
1566              "start": {
1567                "line": 1,
1568                "column": 1
1569              },
1570              "end": {
1571                "line": 1,
1572                "column": 1
1573              }
1574            }
1575          },
1576          {
1577            "type": "ClassProperty",
1578            "key": {
1579              "type": "Identifier",
1580              "name": "ItemsArray",
1581              "decorators": [],
1582              "loc": {
1583                "start": {
1584                  "line": 1,
1585                  "column": 1
1586                },
1587                "end": {
1588                  "line": 1,
1589                  "column": 1
1590                }
1591              }
1592            },
1593            "value": {
1594              "type": "ArrayExpression",
1595              "elements": [
1596                {
1597                  "type": "MemberExpression",
1598                  "object": {
1599                    "type": "Identifier",
1600                    "name": "A",
1601                    "decorators": [],
1602                    "loc": {
1603                      "start": {
1604                        "line": 1,
1605                        "column": 1
1606                      },
1607                      "end": {
1608                        "line": 1,
1609                        "column": 1
1610                      }
1611                    }
1612                  },
1613                  "property": {
1614                    "type": "Identifier",
1615                    "name": "B",
1616                    "decorators": [],
1617                    "loc": {
1618                      "start": {
1619                        "line": 1,
1620                        "column": 1
1621                      },
1622                      "end": {
1623                        "line": 1,
1624                        "column": 1
1625                      }
1626                    }
1627                  },
1628                  "computed": false,
1629                  "optional": false,
1630                  "loc": {
1631                    "start": {
1632                      "line": 1,
1633                      "column": 1
1634                    },
1635                    "end": {
1636                      "line": 1,
1637                      "column": 1
1638                    }
1639                  }
1640                },
1641                {
1642                  "type": "MemberExpression",
1643                  "object": {
1644                    "type": "Identifier",
1645                    "name": "A",
1646                    "decorators": [],
1647                    "loc": {
1648                      "start": {
1649                        "line": 1,
1650                        "column": 1
1651                      },
1652                      "end": {
1653                        "line": 1,
1654                        "column": 1
1655                      }
1656                    }
1657                  },
1658                  "property": {
1659                    "type": "Identifier",
1660                    "name": "C",
1661                    "decorators": [],
1662                    "loc": {
1663                      "start": {
1664                        "line": 1,
1665                        "column": 1
1666                      },
1667                      "end": {
1668                        "line": 1,
1669                        "column": 1
1670                      }
1671                    }
1672                  },
1673                  "computed": false,
1674                  "optional": false,
1675                  "loc": {
1676                    "start": {
1677                      "line": 1,
1678                      "column": 1
1679                    },
1680                    "end": {
1681                      "line": 1,
1682                      "column": 1
1683                    }
1684                  }
1685                },
1686                {
1687                  "type": "MemberExpression",
1688                  "object": {
1689                    "type": "Identifier",
1690                    "name": "A",
1691                    "decorators": [],
1692                    "loc": {
1693                      "start": {
1694                        "line": 1,
1695                        "column": 1
1696                      },
1697                      "end": {
1698                        "line": 1,
1699                        "column": 1
1700                      }
1701                    }
1702                  },
1703                  "property": {
1704                    "type": "Identifier",
1705                    "name": "D",
1706                    "decorators": [],
1707                    "loc": {
1708                      "start": {
1709                        "line": 1,
1710                        "column": 1
1711                      },
1712                      "end": {
1713                        "line": 1,
1714                        "column": 1
1715                      }
1716                    }
1717                  },
1718                  "computed": false,
1719                  "optional": false,
1720                  "loc": {
1721                    "start": {
1722                      "line": 1,
1723                      "column": 1
1724                    },
1725                    "end": {
1726                      "line": 1,
1727                      "column": 1
1728                    }
1729                  }
1730                }
1731              ],
1732              "loc": {
1733                "start": {
1734                  "line": 1,
1735                  "column": 1
1736                },
1737                "end": {
1738                  "line": 1,
1739                  "column": 1
1740                }
1741              }
1742            },
1743            "accessibility": "protected",
1744            "static": true,
1745            "readonly": true,
1746            "declare": false,
1747            "optional": false,
1748            "computed": false,
1749            "typeAnnotation": {
1750              "type": "TSArrayType",
1751              "elementType": {
1752                "type": "ETSTypeReference",
1753                "part": {
1754                  "type": "ETSTypeReferencePart",
1755                  "name": {
1756                    "type": "Identifier",
1757                    "name": "A",
1758                    "decorators": [],
1759                    "loc": {
1760                      "start": {
1761                        "line": 1,
1762                        "column": 1
1763                      },
1764                      "end": {
1765                        "line": 1,
1766                        "column": 1
1767                      }
1768                    }
1769                  },
1770                  "loc": {
1771                    "start": {
1772                      "line": 1,
1773                      "column": 1
1774                    },
1775                    "end": {
1776                      "line": 1,
1777                      "column": 1
1778                    }
1779                  }
1780                },
1781                "loc": {
1782                  "start": {
1783                    "line": 1,
1784                    "column": 1
1785                  },
1786                  "end": {
1787                    "line": 1,
1788                    "column": 1
1789                  }
1790                }
1791              },
1792              "loc": {
1793                "start": {
1794                  "line": 1,
1795                  "column": 1
1796                },
1797                "end": {
1798                  "line": 1,
1799                  "column": 1
1800                }
1801              }
1802            },
1803            "definite": false,
1804            "decorators": [],
1805            "loc": {
1806              "start": {
1807                "line": 1,
1808                "column": 1
1809              },
1810              "end": {
1811                "line": 1,
1812                "column": 1
1813              }
1814            }
1815          },
1816          {
1817            "type": "ClassProperty",
1818            "key": {
1819              "type": "Identifier",
1820              "name": "BoxedItemsArray",
1821              "decorators": [],
1822              "loc": {
1823                "start": {
1824                  "line": 1,
1825                  "column": 1
1826                },
1827                "end": {
1828                  "line": 1,
1829                  "column": 1
1830                }
1831              }
1832            },
1833            "value": {
1834              "type": "ArrayExpression",
1835              "elements": [
1836                {
1837                  "type": "ETSNewClassInstanceExpression",
1838                  "typeReference": {
1839                    "type": "ETSTypeReference",
1840                    "part": {
1841                      "type": "ETSTypeReferencePart",
1842                      "name": {
1843                        "type": "Identifier",
1844                        "name": "#A",
1845                        "decorators": [],
1846                        "loc": {
1847                          "start": {
1848                            "line": 1,
1849                            "column": 1
1850                          },
1851                          "end": {
1852                            "line": 1,
1853                            "column": 1
1854                          }
1855                        }
1856                      },
1857                      "loc": {
1858                        "start": {
1859                          "line": 1,
1860                          "column": 1
1861                        },
1862                        "end": {
1863                          "line": 1,
1864                          "column": 1
1865                        }
1866                      }
1867                    },
1868                    "loc": {
1869                      "start": {
1870                        "line": 1,
1871                        "column": 1
1872                      },
1873                      "end": {
1874                        "line": 1,
1875                        "column": 1
1876                      }
1877                    }
1878                  },
1879                  "arguments": [
1880                    {
1881                      "type": "TSAsExpression",
1882                      "expression": {
1883                        "type": "MemberExpression",
1884                        "object": {
1885                          "type": "Identifier",
1886                          "name": "A",
1887                          "decorators": [],
1888                          "loc": {
1889                            "start": {
1890                              "line": 1,
1891                              "column": 1
1892                            },
1893                            "end": {
1894                              "line": 1,
1895                              "column": 1
1896                            }
1897                          }
1898                        },
1899                        "property": {
1900                          "type": "Identifier",
1901                          "name": "B",
1902                          "decorators": [],
1903                          "loc": {
1904                            "start": {
1905                              "line": 1,
1906                              "column": 1
1907                            },
1908                            "end": {
1909                              "line": 1,
1910                              "column": 1
1911                            }
1912                          }
1913                        },
1914                        "computed": false,
1915                        "optional": false,
1916                        "loc": {
1917                          "start": {
1918                            "line": 1,
1919                            "column": 1
1920                          },
1921                          "end": {
1922                            "line": 1,
1923                            "column": 1
1924                          }
1925                        }
1926                      },
1927                      "typeAnnotation": {
1928                        "type": "ETSPrimitiveType",
1929                        "loc": {
1930                          "start": {
1931                            "line": 1,
1932                            "column": 1
1933                          },
1934                          "end": {
1935                            "line": 1,
1936                            "column": 1
1937                          }
1938                        }
1939                      },
1940                      "loc": {
1941                        "start": {
1942                          "line": 1,
1943                          "column": 1
1944                        },
1945                        "end": {
1946                          "line": 1,
1947                          "column": 1
1948                        }
1949                      }
1950                    }
1951                  ],
1952                  "loc": {
1953                    "start": {
1954                      "line": 1,
1955                      "column": 1
1956                    },
1957                    "end": {
1958                      "line": 1,
1959                      "column": 1
1960                    }
1961                  }
1962                },
1963                {
1964                  "type": "ETSNewClassInstanceExpression",
1965                  "typeReference": {
1966                    "type": "ETSTypeReference",
1967                    "part": {
1968                      "type": "ETSTypeReferencePart",
1969                      "name": {
1970                        "type": "Identifier",
1971                        "name": "#A",
1972                        "decorators": [],
1973                        "loc": {
1974                          "start": {
1975                            "line": 1,
1976                            "column": 1
1977                          },
1978                          "end": {
1979                            "line": 1,
1980                            "column": 1
1981                          }
1982                        }
1983                      },
1984                      "loc": {
1985                        "start": {
1986                          "line": 1,
1987                          "column": 1
1988                        },
1989                        "end": {
1990                          "line": 1,
1991                          "column": 1
1992                        }
1993                      }
1994                    },
1995                    "loc": {
1996                      "start": {
1997                        "line": 1,
1998                        "column": 1
1999                      },
2000                      "end": {
2001                        "line": 1,
2002                        "column": 1
2003                      }
2004                    }
2005                  },
2006                  "arguments": [
2007                    {
2008                      "type": "TSAsExpression",
2009                      "expression": {
2010                        "type": "MemberExpression",
2011                        "object": {
2012                          "type": "Identifier",
2013                          "name": "A",
2014                          "decorators": [],
2015                          "loc": {
2016                            "start": {
2017                              "line": 1,
2018                              "column": 1
2019                            },
2020                            "end": {
2021                              "line": 1,
2022                              "column": 1
2023                            }
2024                          }
2025                        },
2026                        "property": {
2027                          "type": "Identifier",
2028                          "name": "C",
2029                          "decorators": [],
2030                          "loc": {
2031                            "start": {
2032                              "line": 1,
2033                              "column": 1
2034                            },
2035                            "end": {
2036                              "line": 1,
2037                              "column": 1
2038                            }
2039                          }
2040                        },
2041                        "computed": false,
2042                        "optional": false,
2043                        "loc": {
2044                          "start": {
2045                            "line": 1,
2046                            "column": 1
2047                          },
2048                          "end": {
2049                            "line": 1,
2050                            "column": 1
2051                          }
2052                        }
2053                      },
2054                      "typeAnnotation": {
2055                        "type": "ETSPrimitiveType",
2056                        "loc": {
2057                          "start": {
2058                            "line": 1,
2059                            "column": 1
2060                          },
2061                          "end": {
2062                            "line": 1,
2063                            "column": 1
2064                          }
2065                        }
2066                      },
2067                      "loc": {
2068                        "start": {
2069                          "line": 1,
2070                          "column": 1
2071                        },
2072                        "end": {
2073                          "line": 1,
2074                          "column": 1
2075                        }
2076                      }
2077                    }
2078                  ],
2079                  "loc": {
2080                    "start": {
2081                      "line": 1,
2082                      "column": 1
2083                    },
2084                    "end": {
2085                      "line": 1,
2086                      "column": 1
2087                    }
2088                  }
2089                },
2090                {
2091                  "type": "ETSNewClassInstanceExpression",
2092                  "typeReference": {
2093                    "type": "ETSTypeReference",
2094                    "part": {
2095                      "type": "ETSTypeReferencePart",
2096                      "name": {
2097                        "type": "Identifier",
2098                        "name": "#A",
2099                        "decorators": [],
2100                        "loc": {
2101                          "start": {
2102                            "line": 1,
2103                            "column": 1
2104                          },
2105                          "end": {
2106                            "line": 1,
2107                            "column": 1
2108                          }
2109                        }
2110                      },
2111                      "loc": {
2112                        "start": {
2113                          "line": 1,
2114                          "column": 1
2115                        },
2116                        "end": {
2117                          "line": 1,
2118                          "column": 1
2119                        }
2120                      }
2121                    },
2122                    "loc": {
2123                      "start": {
2124                        "line": 1,
2125                        "column": 1
2126                      },
2127                      "end": {
2128                        "line": 1,
2129                        "column": 1
2130                      }
2131                    }
2132                  },
2133                  "arguments": [
2134                    {
2135                      "type": "TSAsExpression",
2136                      "expression": {
2137                        "type": "MemberExpression",
2138                        "object": {
2139                          "type": "Identifier",
2140                          "name": "A",
2141                          "decorators": [],
2142                          "loc": {
2143                            "start": {
2144                              "line": 1,
2145                              "column": 1
2146                            },
2147                            "end": {
2148                              "line": 1,
2149                              "column": 1
2150                            }
2151                          }
2152                        },
2153                        "property": {
2154                          "type": "Identifier",
2155                          "name": "D",
2156                          "decorators": [],
2157                          "loc": {
2158                            "start": {
2159                              "line": 1,
2160                              "column": 1
2161                            },
2162                            "end": {
2163                              "line": 1,
2164                              "column": 1
2165                            }
2166                          }
2167                        },
2168                        "computed": false,
2169                        "optional": false,
2170                        "loc": {
2171                          "start": {
2172                            "line": 1,
2173                            "column": 1
2174                          },
2175                          "end": {
2176                            "line": 1,
2177                            "column": 1
2178                          }
2179                        }
2180                      },
2181                      "typeAnnotation": {
2182                        "type": "ETSPrimitiveType",
2183                        "loc": {
2184                          "start": {
2185                            "line": 1,
2186                            "column": 1
2187                          },
2188                          "end": {
2189                            "line": 1,
2190                            "column": 1
2191                          }
2192                        }
2193                      },
2194                      "loc": {
2195                        "start": {
2196                          "line": 1,
2197                          "column": 1
2198                        },
2199                        "end": {
2200                          "line": 1,
2201                          "column": 1
2202                        }
2203                      }
2204                    }
2205                  ],
2206                  "loc": {
2207                    "start": {
2208                      "line": 1,
2209                      "column": 1
2210                    },
2211                    "end": {
2212                      "line": 1,
2213                      "column": 1
2214                    }
2215                  }
2216                }
2217              ],
2218              "loc": {
2219                "start": {
2220                  "line": 1,
2221                  "column": 1
2222                },
2223                "end": {
2224                  "line": 1,
2225                  "column": 1
2226                }
2227              }
2228            },
2229            "accessibility": "protected",
2230            "static": true,
2231            "readonly": true,
2232            "declare": false,
2233            "optional": false,
2234            "computed": false,
2235            "typeAnnotation": {
2236              "type": "TSArrayType",
2237              "elementType": {
2238                "type": "ETSTypeReference",
2239                "part": {
2240                  "type": "ETSTypeReferencePart",
2241                  "name": {
2242                    "type": "Identifier",
2243                    "name": "#A",
2244                    "decorators": [],
2245                    "loc": {
2246                      "start": {
2247                        "line": 1,
2248                        "column": 1
2249                      },
2250                      "end": {
2251                        "line": 1,
2252                        "column": 1
2253                      }
2254                    }
2255                  },
2256                  "loc": {
2257                    "start": {
2258                      "line": 1,
2259                      "column": 1
2260                    },
2261                    "end": {
2262                      "line": 1,
2263                      "column": 1
2264                    }
2265                  }
2266                },
2267                "loc": {
2268                  "start": {
2269                    "line": 1,
2270                    "column": 1
2271                  },
2272                  "end": {
2273                    "line": 1,
2274                    "column": 1
2275                  }
2276                }
2277              },
2278              "loc": {
2279                "start": {
2280                  "line": 1,
2281                  "column": 1
2282                },
2283                "end": {
2284                  "line": 1,
2285                  "column": 1
2286                }
2287              }
2288            },
2289            "definite": false,
2290            "decorators": [],
2291            "loc": {
2292              "start": {
2293                "line": 1,
2294                "column": 1
2295              },
2296              "end": {
2297                "line": 1,
2298                "column": 1
2299              }
2300            }
2301          },
2302          {
2303            "type": "MethodDefinition",
2304            "key": {
2305              "type": "Identifier",
2306              "name": "getName",
2307              "decorators": [],
2308              "loc": {
2309                "start": {
2310                  "line": 1,
2311                  "column": 1
2312                },
2313                "end": {
2314                  "line": 1,
2315                  "column": 1
2316                }
2317              }
2318            },
2319            "kind": "method",
2320            "accessibility": "public",
2321            "static": true,
2322            "optional": false,
2323            "computed": false,
2324            "value": {
2325              "type": "FunctionExpression",
2326              "function": {
2327                "type": "ScriptFunction",
2328                "id": {
2329                  "type": "Identifier",
2330                  "name": "getName",
2331                  "decorators": [],
2332                  "loc": {
2333                    "start": {
2334                      "line": 1,
2335                      "column": 1
2336                    },
2337                    "end": {
2338                      "line": 1,
2339                      "column": 1
2340                    }
2341                  }
2342                },
2343                "generator": false,
2344                "async": false,
2345                "expression": false,
2346                "params": [
2347                  {
2348                    "type": "ETSParameterExpression",
2349                    "name": {
2350                      "type": "Identifier",
2351                      "name": "ordinal",
2352                      "typeAnnotation": {
2353                        "type": "ETSTypeReference",
2354                        "part": {
2355                          "type": "ETSTypeReferencePart",
2356                          "name": {
2357                            "type": "Identifier",
2358                            "name": "A",
2359                            "decorators": [],
2360                            "loc": {
2361                              "start": {
2362                                "line": 1,
2363                                "column": 1
2364                              },
2365                              "end": {
2366                                "line": 1,
2367                                "column": 1
2368                              }
2369                            }
2370                          },
2371                          "loc": {
2372                            "start": {
2373                              "line": 1,
2374                              "column": 1
2375                            },
2376                            "end": {
2377                              "line": 1,
2378                              "column": 1
2379                            }
2380                          }
2381                        },
2382                        "loc": {
2383                          "start": {
2384                            "line": 1,
2385                            "column": 1
2386                          },
2387                          "end": {
2388                            "line": 1,
2389                            "column": 1
2390                          }
2391                        }
2392                      },
2393                      "decorators": [],
2394                      "loc": {
2395                        "start": {
2396                          "line": 1,
2397                          "column": 1
2398                        },
2399                        "end": {
2400                          "line": 1,
2401                          "column": 1
2402                        }
2403                      }
2404                    },
2405                    "loc": {
2406                      "start": {
2407                        "line": 1,
2408                        "column": 1
2409                      },
2410                      "end": {
2411                        "line": 1,
2412                        "column": 1
2413                      }
2414                    }
2415                  }
2416                ],
2417                "returnType": {
2418                  "type": "ETSTypeReference",
2419                  "part": {
2420                    "type": "ETSTypeReferencePart",
2421                    "name": {
2422                      "type": "Identifier",
2423                      "name": "String",
2424                      "decorators": [],
2425                      "loc": {
2426                        "start": {
2427                          "line": 1,
2428                          "column": 1
2429                        },
2430                        "end": {
2431                          "line": 1,
2432                          "column": 1
2433                        }
2434                      }
2435                    },
2436                    "loc": {
2437                      "start": {
2438                        "line": 1,
2439                        "column": 1
2440                      },
2441                      "end": {
2442                        "line": 1,
2443                        "column": 1
2444                      }
2445                    }
2446                  },
2447                  "loc": {
2448                    "start": {
2449                      "line": 1,
2450                      "column": 1
2451                    },
2452                    "end": {
2453                      "line": 1,
2454                      "column": 1
2455                    }
2456                  }
2457                },
2458                "body": {
2459                  "type": "BlockStatement",
2460                  "statements": [
2461                    {
2462                      "type": "ReturnStatement",
2463                      "argument": {
2464                        "type": "MemberExpression",
2465                        "object": {
2466                          "type": "MemberExpression",
2467                          "object": {
2468                            "type": "Identifier",
2469                            "name": "#A",
2470                            "decorators": [],
2471                            "loc": {
2472                              "start": {
2473                                "line": 1,
2474                                "column": 1
2475                              },
2476                              "end": {
2477                                "line": 1,
2478                                "column": 1
2479                              }
2480                            }
2481                          },
2482                          "property": {
2483                            "type": "Identifier",
2484                            "name": "NamesArray",
2485                            "decorators": [],
2486                            "loc": {
2487                              "start": {
2488                                "line": 1,
2489                                "column": 1
2490                              },
2491                              "end": {
2492                                "line": 1,
2493                                "column": 1
2494                              }
2495                            }
2496                          },
2497                          "computed": false,
2498                          "optional": false,
2499                          "loc": {
2500                            "start": {
2501                              "line": 1,
2502                              "column": 1
2503                            },
2504                            "end": {
2505                              "line": 1,
2506                              "column": 1
2507                            }
2508                          }
2509                        },
2510                        "property": {
2511                          "type": "TSAsExpression",
2512                          "expression": {
2513                            "type": "Identifier",
2514                            "name": "ordinal",
2515                            "decorators": [],
2516                            "loc": {
2517                              "start": {
2518                                "line": 1,
2519                                "column": 1
2520                              },
2521                              "end": {
2522                                "line": 1,
2523                                "column": 1
2524                              }
2525                            }
2526                          },
2527                          "typeAnnotation": {
2528                            "type": "ETSPrimitiveType",
2529                            "loc": {
2530                              "start": {
2531                                "line": 1,
2532                                "column": 1
2533                              },
2534                              "end": {
2535                                "line": 1,
2536                                "column": 1
2537                              }
2538                            }
2539                          },
2540                          "loc": {
2541                            "start": {
2542                              "line": 1,
2543                              "column": 1
2544                            },
2545                            "end": {
2546                              "line": 1,
2547                              "column": 1
2548                            }
2549                          }
2550                        },
2551                        "computed": true,
2552                        "optional": false,
2553                        "loc": {
2554                          "start": {
2555                            "line": 1,
2556                            "column": 1
2557                          },
2558                          "end": {
2559                            "line": 1,
2560                            "column": 1
2561                          }
2562                        }
2563                      },
2564                      "loc": {
2565                        "start": {
2566                          "line": 1,
2567                          "column": 1
2568                        },
2569                        "end": {
2570                          "line": 1,
2571                          "column": 1
2572                        }
2573                      }
2574                    }
2575                  ],
2576                  "loc": {
2577                    "start": {
2578                      "line": 1,
2579                      "column": 1
2580                    },
2581                    "end": {
2582                      "line": 1,
2583                      "column": 1
2584                    }
2585                  }
2586                },
2587                "loc": {
2588                  "start": {
2589                    "line": 1,
2590                    "column": 1
2591                  },
2592                  "end": {
2593                    "line": 1,
2594                    "column": 1
2595                  }
2596                }
2597              },
2598              "loc": {
2599                "start": {
2600                  "line": 1,
2601                  "column": 1
2602                },
2603                "end": {
2604                  "line": 1,
2605                  "column": 1
2606                }
2607              }
2608            },
2609            "overloads": [],
2610            "decorators": [],
2611            "loc": {
2612              "start": {
2613                "line": 1,
2614                "column": 1
2615              },
2616              "end": {
2617                "line": 1,
2618                "column": 1
2619              }
2620            }
2621          },
2622          {
2623            "type": "MethodDefinition",
2624            "key": {
2625              "type": "Identifier",
2626              "name": "getValueOf",
2627              "decorators": [],
2628              "loc": {
2629                "start": {
2630                  "line": 1,
2631                  "column": 1
2632                },
2633                "end": {
2634                  "line": 1,
2635                  "column": 1
2636                }
2637              }
2638            },
2639            "kind": "method",
2640            "accessibility": "public",
2641            "static": true,
2642            "optional": false,
2643            "computed": false,
2644            "value": {
2645              "type": "FunctionExpression",
2646              "function": {
2647                "type": "ScriptFunction",
2648                "id": {
2649                  "type": "Identifier",
2650                  "name": "getValueOf",
2651                  "decorators": [],
2652                  "loc": {
2653                    "start": {
2654                      "line": 1,
2655                      "column": 1
2656                    },
2657                    "end": {
2658                      "line": 1,
2659                      "column": 1
2660                    }
2661                  }
2662                },
2663                "generator": false,
2664                "async": false,
2665                "expression": false,
2666                "params": [
2667                  {
2668                    "type": "ETSParameterExpression",
2669                    "name": {
2670                      "type": "Identifier",
2671                      "name": "name",
2672                      "typeAnnotation": {
2673                        "type": "ETSTypeReference",
2674                        "part": {
2675                          "type": "ETSTypeReferencePart",
2676                          "name": {
2677                            "type": "Identifier",
2678                            "name": "String",
2679                            "decorators": [],
2680                            "loc": {
2681                              "start": {
2682                                "line": 1,
2683                                "column": 1
2684                              },
2685                              "end": {
2686                                "line": 1,
2687                                "column": 1
2688                              }
2689                            }
2690                          },
2691                          "loc": {
2692                            "start": {
2693                              "line": 1,
2694                              "column": 1
2695                            },
2696                            "end": {
2697                              "line": 1,
2698                              "column": 1
2699                            }
2700                          }
2701                        },
2702                        "loc": {
2703                          "start": {
2704                            "line": 1,
2705                            "column": 1
2706                          },
2707                          "end": {
2708                            "line": 1,
2709                            "column": 1
2710                          }
2711                        }
2712                      },
2713                      "decorators": [],
2714                      "loc": {
2715                        "start": {
2716                          "line": 1,
2717                          "column": 1
2718                        },
2719                        "end": {
2720                          "line": 1,
2721                          "column": 1
2722                        }
2723                      }
2724                    },
2725                    "loc": {
2726                      "start": {
2727                        "line": 1,
2728                        "column": 1
2729                      },
2730                      "end": {
2731                        "line": 1,
2732                        "column": 1
2733                      }
2734                    }
2735                  }
2736                ],
2737                "returnType": {
2738                  "type": "ETSTypeReference",
2739                  "part": {
2740                    "type": "ETSTypeReferencePart",
2741                    "name": {
2742                      "type": "Identifier",
2743                      "name": "A",
2744                      "decorators": [],
2745                      "loc": {
2746                        "start": {
2747                          "line": 1,
2748                          "column": 1
2749                        },
2750                        "end": {
2751                          "line": 1,
2752                          "column": 1
2753                        }
2754                      }
2755                    },
2756                    "loc": {
2757                      "start": {
2758                        "line": 1,
2759                        "column": 1
2760                      },
2761                      "end": {
2762                        "line": 1,
2763                        "column": 1
2764                      }
2765                    }
2766                  },
2767                  "loc": {
2768                    "start": {
2769                      "line": 1,
2770                      "column": 1
2771                    },
2772                    "end": {
2773                      "line": 1,
2774                      "column": 1
2775                    }
2776                  }
2777                },
2778                "body": {
2779                  "type": "BlockStatement",
2780                  "statements": [
2781                    {
2782                      "type": "ForUpdateStatement",
2783                      "init": {
2784                        "type": "VariableDeclaration",
2785                        "declarations": [
2786                          {
2787                            "type": "VariableDeclarator",
2788                            "id": {
2789                              "type": "Identifier",
2790                              "name": "i",
2791                              "decorators": [],
2792                              "loc": {
2793                                "start": {
2794                                  "line": 1,
2795                                  "column": 1
2796                                },
2797                                "end": {
2798                                  "line": 1,
2799                                  "column": 1
2800                                }
2801                              }
2802                            },
2803                            "init": {
2804                              "type": "NumberLiteral",
2805                              "value": 0,
2806                              "loc": {
2807                                "start": {
2808                                  "line": 1,
2809                                  "column": 1
2810                                },
2811                                "end": {
2812                                  "line": 1,
2813                                  "column": 1
2814                                }
2815                              }
2816                            },
2817                            "loc": {
2818                              "start": {
2819                                "line": 1,
2820                                "column": 1
2821                              },
2822                              "end": {
2823                                "line": 1,
2824                                "column": 1
2825                              }
2826                            }
2827                          }
2828                        ],
2829                        "kind": "let",
2830                        "loc": {
2831                          "start": {
2832                            "line": 1,
2833                            "column": 1
2834                          },
2835                          "end": {
2836                            "line": 1,
2837                            "column": 1
2838                          }
2839                        }
2840                      },
2841                      "test": {
2842                        "type": "BinaryExpression",
2843                        "operator": "<",
2844                        "left": {
2845                          "type": "Identifier",
2846                          "name": "i",
2847                          "decorators": [],
2848                          "loc": {
2849                            "start": {
2850                              "line": 1,
2851                              "column": 1
2852                            },
2853                            "end": {
2854                              "line": 1,
2855                              "column": 1
2856                            }
2857                          }
2858                        },
2859                        "right": {
2860                          "type": "MemberExpression",
2861                          "object": {
2862                            "type": "MemberExpression",
2863                            "object": {
2864                              "type": "Identifier",
2865                              "name": "#A",
2866                              "decorators": [],
2867                              "loc": {
2868                                "start": {
2869                                  "line": 1,
2870                                  "column": 1
2871                                },
2872                                "end": {
2873                                  "line": 1,
2874                                  "column": 1
2875                                }
2876                              }
2877                            },
2878                            "property": {
2879                              "type": "Identifier",
2880                              "name": "NamesArray",
2881                              "decorators": [],
2882                              "loc": {
2883                                "start": {
2884                                  "line": 1,
2885                                  "column": 1
2886                                },
2887                                "end": {
2888                                  "line": 1,
2889                                  "column": 1
2890                                }
2891                              }
2892                            },
2893                            "computed": false,
2894                            "optional": false,
2895                            "loc": {
2896                              "start": {
2897                                "line": 1,
2898                                "column": 1
2899                              },
2900                              "end": {
2901                                "line": 1,
2902                                "column": 1
2903                              }
2904                            }
2905                          },
2906                          "property": {
2907                            "type": "Identifier",
2908                            "name": "length",
2909                            "decorators": [],
2910                            "loc": {
2911                              "start": {
2912                                "line": 1,
2913                                "column": 1
2914                              },
2915                              "end": {
2916                                "line": 1,
2917                                "column": 1
2918                              }
2919                            }
2920                          },
2921                          "computed": false,
2922                          "optional": false,
2923                          "loc": {
2924                            "start": {
2925                              "line": 1,
2926                              "column": 1
2927                            },
2928                            "end": {
2929                              "line": 1,
2930                              "column": 1
2931                            }
2932                          }
2933                        },
2934                        "loc": {
2935                          "start": {
2936                            "line": 1,
2937                            "column": 1
2938                          },
2939                          "end": {
2940                            "line": 1,
2941                            "column": 1
2942                          }
2943                        }
2944                      },
2945                      "update": {
2946                        "type": "UpdateExpression",
2947                        "operator": "++",
2948                        "prefix": true,
2949                        "argument": {
2950                          "type": "Identifier",
2951                          "name": "i",
2952                          "decorators": [],
2953                          "loc": {
2954                            "start": {
2955                              "line": 1,
2956                              "column": 1
2957                            },
2958                            "end": {
2959                              "line": 1,
2960                              "column": 1
2961                            }
2962                          }
2963                        },
2964                        "loc": {
2965                          "start": {
2966                            "line": 1,
2967                            "column": 1
2968                          },
2969                          "end": {
2970                            "line": 1,
2971                            "column": 1
2972                          }
2973                        }
2974                      },
2975                      "body": {
2976                        "type": "IfStatement",
2977                        "test": {
2978                          "type": "BinaryExpression",
2979                          "operator": "==",
2980                          "left": {
2981                            "type": "Identifier",
2982                            "name": "name",
2983                            "decorators": [],
2984                            "loc": {
2985                              "start": {
2986                                "line": 1,
2987                                "column": 1
2988                              },
2989                              "end": {
2990                                "line": 1,
2991                                "column": 1
2992                              }
2993                            }
2994                          },
2995                          "right": {
2996                            "type": "MemberExpression",
2997                            "object": {
2998                              "type": "MemberExpression",
2999                              "object": {
3000                                "type": "Identifier",
3001                                "name": "#A",
3002                                "decorators": [],
3003                                "loc": {
3004                                  "start": {
3005                                    "line": 1,
3006                                    "column": 1
3007                                  },
3008                                  "end": {
3009                                    "line": 1,
3010                                    "column": 1
3011                                  }
3012                                }
3013                              },
3014                              "property": {
3015                                "type": "Identifier",
3016                                "name": "NamesArray",
3017                                "decorators": [],
3018                                "loc": {
3019                                  "start": {
3020                                    "line": 1,
3021                                    "column": 1
3022                                  },
3023                                  "end": {
3024                                    "line": 1,
3025                                    "column": 1
3026                                  }
3027                                }
3028                              },
3029                              "computed": false,
3030                              "optional": false,
3031                              "loc": {
3032                                "start": {
3033                                  "line": 1,
3034                                  "column": 1
3035                                },
3036                                "end": {
3037                                  "line": 1,
3038                                  "column": 1
3039                                }
3040                              }
3041                            },
3042                            "property": {
3043                              "type": "Identifier",
3044                              "name": "i",
3045                              "decorators": [],
3046                              "loc": {
3047                                "start": {
3048                                  "line": 1,
3049                                  "column": 1
3050                                },
3051                                "end": {
3052                                  "line": 1,
3053                                  "column": 1
3054                                }
3055                              }
3056                            },
3057                            "computed": true,
3058                            "optional": false,
3059                            "loc": {
3060                              "start": {
3061                                "line": 1,
3062                                "column": 1
3063                              },
3064                              "end": {
3065                                "line": 1,
3066                                "column": 1
3067                              }
3068                            }
3069                          },
3070                          "loc": {
3071                            "start": {
3072                              "line": 1,
3073                              "column": 1
3074                            },
3075                            "end": {
3076                              "line": 1,
3077                              "column": 1
3078                            }
3079                          }
3080                        },
3081                        "consequent": {
3082                          "type": "ReturnStatement",
3083                          "argument": {
3084                            "type": "TSAsExpression",
3085                            "expression": {
3086                              "type": "Identifier",
3087                              "name": "i",
3088                              "decorators": [],
3089                              "loc": {
3090                                "start": {
3091                                  "line": 1,
3092                                  "column": 1
3093                                },
3094                                "end": {
3095                                  "line": 1,
3096                                  "column": 1
3097                                }
3098                              }
3099                            },
3100                            "typeAnnotation": {
3101                              "type": "ETSTypeReference",
3102                              "part": {
3103                                "type": "ETSTypeReferencePart",
3104                                "name": {
3105                                  "type": "Identifier",
3106                                  "name": "A",
3107                                  "decorators": [],
3108                                  "loc": {
3109                                    "start": {
3110                                      "line": 1,
3111                                      "column": 1
3112                                    },
3113                                    "end": {
3114                                      "line": 1,
3115                                      "column": 1
3116                                    }
3117                                  }
3118                                },
3119                                "loc": {
3120                                  "start": {
3121                                    "line": 1,
3122                                    "column": 1
3123                                  },
3124                                  "end": {
3125                                    "line": 1,
3126                                    "column": 1
3127                                  }
3128                                }
3129                              },
3130                              "loc": {
3131                                "start": {
3132                                  "line": 1,
3133                                  "column": 1
3134                                },
3135                                "end": {
3136                                  "line": 1,
3137                                  "column": 1
3138                                }
3139                              }
3140                            },
3141                            "loc": {
3142                              "start": {
3143                                "line": 1,
3144                                "column": 1
3145                              },
3146                              "end": {
3147                                "line": 1,
3148                                "column": 1
3149                              }
3150                            }
3151                          },
3152                          "loc": {
3153                            "start": {
3154                              "line": 1,
3155                              "column": 1
3156                            },
3157                            "end": {
3158                              "line": 1,
3159                              "column": 1
3160                            }
3161                          }
3162                        },
3163                        "alternate": null,
3164                        "loc": {
3165                          "start": {
3166                            "line": 1,
3167                            "column": 1
3168                          },
3169                          "end": {
3170                            "line": 1,
3171                            "column": 1
3172                          }
3173                        }
3174                      },
3175                      "loc": {
3176                        "start": {
3177                          "line": 1,
3178                          "column": 1
3179                        },
3180                        "end": {
3181                          "line": 1,
3182                          "column": 1
3183                        }
3184                      }
3185                    },
3186                    {
3187                      "type": "ThrowStatement",
3188                      "argument": {
3189                        "type": "ETSNewClassInstanceExpression",
3190                        "typeReference": {
3191                          "type": "ETSTypeReference",
3192                          "part": {
3193                            "type": "ETSTypeReferencePart",
3194                            "name": {
3195                              "type": "Identifier",
3196                              "name": "Exception",
3197                              "decorators": [],
3198                              "loc": {
3199                                "start": {
3200                                  "line": 1,
3201                                  "column": 1
3202                                },
3203                                "end": {
3204                                  "line": 1,
3205                                  "column": 1
3206                                }
3207                              }
3208                            },
3209                            "loc": {
3210                              "start": {
3211                                "line": 1,
3212                                "column": 1
3213                              },
3214                              "end": {
3215                                "line": 1,
3216                                "column": 1
3217                              }
3218                            }
3219                          },
3220                          "loc": {
3221                            "start": {
3222                              "line": 1,
3223                              "column": 1
3224                            },
3225                            "end": {
3226                              "line": 1,
3227                              "column": 1
3228                            }
3229                          }
3230                        },
3231                        "arguments": [
3232                          {
3233                            "type": "BinaryExpression",
3234                            "operator": "+",
3235                            "left": {
3236                              "type": "StringLiteral",
3237                              "value": "No enum constant A.",
3238                              "loc": {
3239                                "start": {
3240                                  "line": 1,
3241                                  "column": 1
3242                                },
3243                                "end": {
3244                                  "line": 1,
3245                                  "column": 1
3246                                }
3247                              }
3248                            },
3249                            "right": {
3250                              "type": "Identifier",
3251                              "name": "name",
3252                              "decorators": [],
3253                              "loc": {
3254                                "start": {
3255                                  "line": 1,
3256                                  "column": 1
3257                                },
3258                                "end": {
3259                                  "line": 1,
3260                                  "column": 1
3261                                }
3262                              }
3263                            },
3264                            "loc": {
3265                              "start": {
3266                                "line": 1,
3267                                "column": 1
3268                              },
3269                              "end": {
3270                                "line": 1,
3271                                "column": 1
3272                              }
3273                            }
3274                          }
3275                        ],
3276                        "loc": {
3277                          "start": {
3278                            "line": 1,
3279                            "column": 1
3280                          },
3281                          "end": {
3282                            "line": 1,
3283                            "column": 1
3284                          }
3285                        }
3286                      },
3287                      "loc": {
3288                        "start": {
3289                          "line": 1,
3290                          "column": 1
3291                        },
3292                        "end": {
3293                          "line": 1,
3294                          "column": 1
3295                        }
3296                      }
3297                    }
3298                  ],
3299                  "loc": {
3300                    "start": {
3301                      "line": 1,
3302                      "column": 1
3303                    },
3304                    "end": {
3305                      "line": 1,
3306                      "column": 1
3307                    }
3308                  }
3309                },
3310                "throwMarker": "throws",
3311                "loc": {
3312                  "start": {
3313                    "line": 1,
3314                    "column": 1
3315                  },
3316                  "end": {
3317                    "line": 1,
3318                    "column": 1
3319                  }
3320                }
3321              },
3322              "loc": {
3323                "start": {
3324                  "line": 1,
3325                  "column": 1
3326                },
3327                "end": {
3328                  "line": 1,
3329                  "column": 1
3330                }
3331              }
3332            },
3333            "overloads": [],
3334            "decorators": [],
3335            "loc": {
3336              "start": {
3337                "line": 1,
3338                "column": 1
3339              },
3340              "end": {
3341                "line": 1,
3342                "column": 1
3343              }
3344            }
3345          },
3346          {
3347            "type": "MethodDefinition",
3348            "key": {
3349              "type": "Identifier",
3350              "name": "valueOf",
3351              "decorators": [],
3352              "loc": {
3353                "start": {
3354                  "line": 1,
3355                  "column": 1
3356                },
3357                "end": {
3358                  "line": 1,
3359                  "column": 1
3360                }
3361              }
3362            },
3363            "kind": "method",
3364            "accessibility": "public",
3365            "static": true,
3366            "optional": false,
3367            "computed": false,
3368            "value": {
3369              "type": "FunctionExpression",
3370              "function": {
3371                "type": "ScriptFunction",
3372                "id": {
3373                  "type": "Identifier",
3374                  "name": "valueOf",
3375                  "decorators": [],
3376                  "loc": {
3377                    "start": {
3378                      "line": 1,
3379                      "column": 1
3380                    },
3381                    "end": {
3382                      "line": 1,
3383                      "column": 1
3384                    }
3385                  }
3386                },
3387                "generator": false,
3388                "async": false,
3389                "expression": false,
3390                "params": [
3391                  {
3392                    "type": "ETSParameterExpression",
3393                    "name": {
3394                      "type": "Identifier",
3395                      "name": "e",
3396                      "typeAnnotation": {
3397                        "type": "ETSTypeReference",
3398                        "part": {
3399                          "type": "ETSTypeReferencePart",
3400                          "name": {
3401                            "type": "Identifier",
3402                            "name": "A",
3403                            "decorators": [],
3404                            "loc": {
3405                              "start": {
3406                                "line": 1,
3407                                "column": 1
3408                              },
3409                              "end": {
3410                                "line": 1,
3411                                "column": 1
3412                              }
3413                            }
3414                          },
3415                          "loc": {
3416                            "start": {
3417                              "line": 1,
3418                              "column": 1
3419                            },
3420                            "end": {
3421                              "line": 1,
3422                              "column": 1
3423                            }
3424                          }
3425                        },
3426                        "loc": {
3427                          "start": {
3428                            "line": 1,
3429                            "column": 1
3430                          },
3431                          "end": {
3432                            "line": 1,
3433                            "column": 1
3434                          }
3435                        }
3436                      },
3437                      "decorators": [],
3438                      "loc": {
3439                        "start": {
3440                          "line": 1,
3441                          "column": 1
3442                        },
3443                        "end": {
3444                          "line": 1,
3445                          "column": 1
3446                        }
3447                      }
3448                    },
3449                    "loc": {
3450                      "start": {
3451                        "line": 1,
3452                        "column": 1
3453                      },
3454                      "end": {
3455                        "line": 1,
3456                        "column": 1
3457                      }
3458                    }
3459                  }
3460                ],
3461                "returnType": {
3462                  "type": "ETSPrimitiveType",
3463                  "loc": {
3464                    "start": {
3465                      "line": 1,
3466                      "column": 1
3467                    },
3468                    "end": {
3469                      "line": 1,
3470                      "column": 1
3471                    }
3472                  }
3473                },
3474                "body": {
3475                  "type": "BlockStatement",
3476                  "statements": [
3477                    {
3478                      "type": "ReturnStatement",
3479                      "argument": {
3480                        "type": "MemberExpression",
3481                        "object": {
3482                          "type": "MemberExpression",
3483                          "object": {
3484                            "type": "Identifier",
3485                            "name": "#A",
3486                            "decorators": [],
3487                            "loc": {
3488                              "start": {
3489                                "line": 1,
3490                                "column": 1
3491                              },
3492                              "end": {
3493                                "line": 1,
3494                                "column": 1
3495                              }
3496                            }
3497                          },
3498                          "property": {
3499                            "type": "Identifier",
3500                            "name": "ValuesArray",
3501                            "decorators": [],
3502                            "loc": {
3503                              "start": {
3504                                "line": 1,
3505                                "column": 1
3506                              },
3507                              "end": {
3508                                "line": 1,
3509                                "column": 1
3510                              }
3511                            }
3512                          },
3513                          "computed": false,
3514                          "optional": false,
3515                          "loc": {
3516                            "start": {
3517                              "line": 1,
3518                              "column": 1
3519                            },
3520                            "end": {
3521                              "line": 1,
3522                              "column": 1
3523                            }
3524                          }
3525                        },
3526                        "property": {
3527                          "type": "TSAsExpression",
3528                          "expression": {
3529                            "type": "Identifier",
3530                            "name": "e",
3531                            "decorators": [],
3532                            "loc": {
3533                              "start": {
3534                                "line": 1,
3535                                "column": 1
3536                              },
3537                              "end": {
3538                                "line": 1,
3539                                "column": 1
3540                              }
3541                            }
3542                          },
3543                          "typeAnnotation": {
3544                            "type": "ETSPrimitiveType",
3545                            "loc": {
3546                              "start": {
3547                                "line": 1,
3548                                "column": 1
3549                              },
3550                              "end": {
3551                                "line": 1,
3552                                "column": 1
3553                              }
3554                            }
3555                          },
3556                          "loc": {
3557                            "start": {
3558                              "line": 1,
3559                              "column": 1
3560                            },
3561                            "end": {
3562                              "line": 1,
3563                              "column": 1
3564                            }
3565                          }
3566                        },
3567                        "computed": true,
3568                        "optional": false,
3569                        "loc": {
3570                          "start": {
3571                            "line": 1,
3572                            "column": 1
3573                          },
3574                          "end": {
3575                            "line": 1,
3576                            "column": 1
3577                          }
3578                        }
3579                      },
3580                      "loc": {
3581                        "start": {
3582                          "line": 1,
3583                          "column": 1
3584                        },
3585                        "end": {
3586                          "line": 1,
3587                          "column": 1
3588                        }
3589                      }
3590                    }
3591                  ],
3592                  "loc": {
3593                    "start": {
3594                      "line": 1,
3595                      "column": 1
3596                    },
3597                    "end": {
3598                      "line": 1,
3599                      "column": 1
3600                    }
3601                  }
3602                },
3603                "loc": {
3604                  "start": {
3605                    "line": 1,
3606                    "column": 1
3607                  },
3608                  "end": {
3609                    "line": 1,
3610                    "column": 1
3611                  }
3612                }
3613              },
3614              "loc": {
3615                "start": {
3616                  "line": 1,
3617                  "column": 1
3618                },
3619                "end": {
3620                  "line": 1,
3621                  "column": 1
3622                }
3623              }
3624            },
3625            "overloads": [],
3626            "decorators": [],
3627            "loc": {
3628              "start": {
3629                "line": 1,
3630                "column": 1
3631              },
3632              "end": {
3633                "line": 1,
3634                "column": 1
3635              }
3636            }
3637          },
3638          {
3639            "type": "MethodDefinition",
3640            "key": {
3641              "type": "Identifier",
3642              "name": "toString",
3643              "decorators": [],
3644              "loc": {
3645                "start": {
3646                  "line": 1,
3647                  "column": 1
3648                },
3649                "end": {
3650                  "line": 1,
3651                  "column": 1
3652                }
3653              }
3654            },
3655            "kind": "method",
3656            "accessibility": "public",
3657            "static": true,
3658            "optional": false,
3659            "computed": false,
3660            "value": {
3661              "type": "FunctionExpression",
3662              "function": {
3663                "type": "ScriptFunction",
3664                "id": {
3665                  "type": "Identifier",
3666                  "name": "toString",
3667                  "decorators": [],
3668                  "loc": {
3669                    "start": {
3670                      "line": 1,
3671                      "column": 1
3672                    },
3673                    "end": {
3674                      "line": 1,
3675                      "column": 1
3676                    }
3677                  }
3678                },
3679                "generator": false,
3680                "async": false,
3681                "expression": false,
3682                "params": [
3683                  {
3684                    "type": "ETSParameterExpression",
3685                    "name": {
3686                      "type": "Identifier",
3687                      "name": "ordinal",
3688                      "typeAnnotation": {
3689                        "type": "ETSTypeReference",
3690                        "part": {
3691                          "type": "ETSTypeReferencePart",
3692                          "name": {
3693                            "type": "Identifier",
3694                            "name": "A",
3695                            "decorators": [],
3696                            "loc": {
3697                              "start": {
3698                                "line": 1,
3699                                "column": 1
3700                              },
3701                              "end": {
3702                                "line": 1,
3703                                "column": 1
3704                              }
3705                            }
3706                          },
3707                          "loc": {
3708                            "start": {
3709                              "line": 1,
3710                              "column": 1
3711                            },
3712                            "end": {
3713                              "line": 1,
3714                              "column": 1
3715                            }
3716                          }
3717                        },
3718                        "loc": {
3719                          "start": {
3720                            "line": 1,
3721                            "column": 1
3722                          },
3723                          "end": {
3724                            "line": 1,
3725                            "column": 1
3726                          }
3727                        }
3728                      },
3729                      "decorators": [],
3730                      "loc": {
3731                        "start": {
3732                          "line": 1,
3733                          "column": 1
3734                        },
3735                        "end": {
3736                          "line": 1,
3737                          "column": 1
3738                        }
3739                      }
3740                    },
3741                    "loc": {
3742                      "start": {
3743                        "line": 1,
3744                        "column": 1
3745                      },
3746                      "end": {
3747                        "line": 1,
3748                        "column": 1
3749                      }
3750                    }
3751                  }
3752                ],
3753                "returnType": {
3754                  "type": "ETSTypeReference",
3755                  "part": {
3756                    "type": "ETSTypeReferencePart",
3757                    "name": {
3758                      "type": "Identifier",
3759                      "name": "String",
3760                      "decorators": [],
3761                      "loc": {
3762                        "start": {
3763                          "line": 1,
3764                          "column": 1
3765                        },
3766                        "end": {
3767                          "line": 1,
3768                          "column": 1
3769                        }
3770                      }
3771                    },
3772                    "loc": {
3773                      "start": {
3774                        "line": 1,
3775                        "column": 1
3776                      },
3777                      "end": {
3778                        "line": 1,
3779                        "column": 1
3780                      }
3781                    }
3782                  },
3783                  "loc": {
3784                    "start": {
3785                      "line": 1,
3786                      "column": 1
3787                    },
3788                    "end": {
3789                      "line": 1,
3790                      "column": 1
3791                    }
3792                  }
3793                },
3794                "body": {
3795                  "type": "BlockStatement",
3796                  "statements": [
3797                    {
3798                      "type": "ReturnStatement",
3799                      "argument": {
3800                        "type": "MemberExpression",
3801                        "object": {
3802                          "type": "MemberExpression",
3803                          "object": {
3804                            "type": "Identifier",
3805                            "name": "#A",
3806                            "decorators": [],
3807                            "loc": {
3808                              "start": {
3809                                "line": 1,
3810                                "column": 1
3811                              },
3812                              "end": {
3813                                "line": 1,
3814                                "column": 1
3815                              }
3816                            }
3817                          },
3818                          "property": {
3819                            "type": "Identifier",
3820                            "name": "StringValuesArray",
3821                            "decorators": [],
3822                            "loc": {
3823                              "start": {
3824                                "line": 1,
3825                                "column": 1
3826                              },
3827                              "end": {
3828                                "line": 1,
3829                                "column": 1
3830                              }
3831                            }
3832                          },
3833                          "computed": false,
3834                          "optional": false,
3835                          "loc": {
3836                            "start": {
3837                              "line": 1,
3838                              "column": 1
3839                            },
3840                            "end": {
3841                              "line": 1,
3842                              "column": 1
3843                            }
3844                          }
3845                        },
3846                        "property": {
3847                          "type": "TSAsExpression",
3848                          "expression": {
3849                            "type": "Identifier",
3850                            "name": "ordinal",
3851                            "decorators": [],
3852                            "loc": {
3853                              "start": {
3854                                "line": 1,
3855                                "column": 1
3856                              },
3857                              "end": {
3858                                "line": 1,
3859                                "column": 1
3860                              }
3861                            }
3862                          },
3863                          "typeAnnotation": {
3864                            "type": "ETSPrimitiveType",
3865                            "loc": {
3866                              "start": {
3867                                "line": 1,
3868                                "column": 1
3869                              },
3870                              "end": {
3871                                "line": 1,
3872                                "column": 1
3873                              }
3874                            }
3875                          },
3876                          "loc": {
3877                            "start": {
3878                              "line": 1,
3879                              "column": 1
3880                            },
3881                            "end": {
3882                              "line": 1,
3883                              "column": 1
3884                            }
3885                          }
3886                        },
3887                        "computed": true,
3888                        "optional": false,
3889                        "loc": {
3890                          "start": {
3891                            "line": 1,
3892                            "column": 1
3893                          },
3894                          "end": {
3895                            "line": 1,
3896                            "column": 1
3897                          }
3898                        }
3899                      },
3900                      "loc": {
3901                        "start": {
3902                          "line": 1,
3903                          "column": 1
3904                        },
3905                        "end": {
3906                          "line": 1,
3907                          "column": 1
3908                        }
3909                      }
3910                    }
3911                  ],
3912                  "loc": {
3913                    "start": {
3914                      "line": 1,
3915                      "column": 1
3916                    },
3917                    "end": {
3918                      "line": 1,
3919                      "column": 1
3920                    }
3921                  }
3922                },
3923                "loc": {
3924                  "start": {
3925                    "line": 1,
3926                    "column": 1
3927                  },
3928                  "end": {
3929                    "line": 1,
3930                    "column": 1
3931                  }
3932                }
3933              },
3934              "loc": {
3935                "start": {
3936                  "line": 1,
3937                  "column": 1
3938                },
3939                "end": {
3940                  "line": 1,
3941                  "column": 1
3942                }
3943              }
3944            },
3945            "overloads": [],
3946            "decorators": [],
3947            "loc": {
3948              "start": {
3949                "line": 1,
3950                "column": 1
3951              },
3952              "end": {
3953                "line": 1,
3954                "column": 1
3955              }
3956            }
3957          },
3958          {
3959            "type": "MethodDefinition",
3960            "key": {
3961              "type": "Identifier",
3962              "name": "values",
3963              "decorators": [],
3964              "loc": {
3965                "start": {
3966                  "line": 1,
3967                  "column": 1
3968                },
3969                "end": {
3970                  "line": 1,
3971                  "column": 1
3972                }
3973              }
3974            },
3975            "kind": "method",
3976            "accessibility": "public",
3977            "static": true,
3978            "optional": false,
3979            "computed": false,
3980            "value": {
3981              "type": "FunctionExpression",
3982              "function": {
3983                "type": "ScriptFunction",
3984                "id": {
3985                  "type": "Identifier",
3986                  "name": "values",
3987                  "decorators": [],
3988                  "loc": {
3989                    "start": {
3990                      "line": 1,
3991                      "column": 1
3992                    },
3993                    "end": {
3994                      "line": 1,
3995                      "column": 1
3996                    }
3997                  }
3998                },
3999                "generator": false,
4000                "async": false,
4001                "expression": false,
4002                "params": [],
4003                "returnType": {
4004                  "type": "TSArrayType",
4005                  "elementType": {
4006                    "type": "ETSTypeReference",
4007                    "part": {
4008                      "type": "ETSTypeReferencePart",
4009                      "name": {
4010                        "type": "Identifier",
4011                        "name": "A",
4012                        "decorators": [],
4013                        "loc": {
4014                          "start": {
4015                            "line": 1,
4016                            "column": 1
4017                          },
4018                          "end": {
4019                            "line": 1,
4020                            "column": 1
4021                          }
4022                        }
4023                      },
4024                      "loc": {
4025                        "start": {
4026                          "line": 1,
4027                          "column": 1
4028                        },
4029                        "end": {
4030                          "line": 1,
4031                          "column": 1
4032                        }
4033                      }
4034                    },
4035                    "loc": {
4036                      "start": {
4037                        "line": 1,
4038                        "column": 1
4039                      },
4040                      "end": {
4041                        "line": 1,
4042                        "column": 1
4043                      }
4044                    }
4045                  },
4046                  "loc": {
4047                    "start": {
4048                      "line": 1,
4049                      "column": 1
4050                    },
4051                    "end": {
4052                      "line": 1,
4053                      "column": 1
4054                    }
4055                  }
4056                },
4057                "body": {
4058                  "type": "BlockStatement",
4059                  "statements": [
4060                    {
4061                      "type": "ReturnStatement",
4062                      "argument": {
4063                        "type": "MemberExpression",
4064                        "object": {
4065                          "type": "Identifier",
4066                          "name": "#A",
4067                          "decorators": [],
4068                          "loc": {
4069                            "start": {
4070                              "line": 1,
4071                              "column": 1
4072                            },
4073                            "end": {
4074                              "line": 1,
4075                              "column": 1
4076                            }
4077                          }
4078                        },
4079                        "property": {
4080                          "type": "Identifier",
4081                          "name": "ItemsArray",
4082                          "decorators": [],
4083                          "loc": {
4084                            "start": {
4085                              "line": 1,
4086                              "column": 1
4087                            },
4088                            "end": {
4089                              "line": 1,
4090                              "column": 1
4091                            }
4092                          }
4093                        },
4094                        "computed": false,
4095                        "optional": false,
4096                        "loc": {
4097                          "start": {
4098                            "line": 1,
4099                            "column": 1
4100                          },
4101                          "end": {
4102                            "line": 1,
4103                            "column": 1
4104                          }
4105                        }
4106                      },
4107                      "loc": {
4108                        "start": {
4109                          "line": 1,
4110                          "column": 1
4111                        },
4112                        "end": {
4113                          "line": 1,
4114                          "column": 1
4115                        }
4116                      }
4117                    }
4118                  ],
4119                  "loc": {
4120                    "start": {
4121                      "line": 1,
4122                      "column": 1
4123                    },
4124                    "end": {
4125                      "line": 1,
4126                      "column": 1
4127                    }
4128                  }
4129                },
4130                "loc": {
4131                  "start": {
4132                    "line": 1,
4133                    "column": 1
4134                  },
4135                  "end": {
4136                    "line": 1,
4137                    "column": 1
4138                  }
4139                }
4140              },
4141              "loc": {
4142                "start": {
4143                  "line": 1,
4144                  "column": 1
4145                },
4146                "end": {
4147                  "line": 1,
4148                  "column": 1
4149                }
4150              }
4151            },
4152            "overloads": [],
4153            "decorators": [],
4154            "loc": {
4155              "start": {
4156                "line": 1,
4157                "column": 1
4158              },
4159              "end": {
4160                "line": 1,
4161                "column": 1
4162              }
4163            }
4164          },
4165          {
4166            "type": "MethodDefinition",
4167            "key": {
4168              "type": "Identifier",
4169              "name": "fromInt",
4170              "decorators": [],
4171              "loc": {
4172                "start": {
4173                  "line": 1,
4174                  "column": 1
4175                },
4176                "end": {
4177                  "line": 1,
4178                  "column": 1
4179                }
4180              }
4181            },
4182            "kind": "method",
4183            "accessibility": "public",
4184            "static": true,
4185            "optional": false,
4186            "computed": false,
4187            "value": {
4188              "type": "FunctionExpression",
4189              "function": {
4190                "type": "ScriptFunction",
4191                "id": {
4192                  "type": "Identifier",
4193                  "name": "fromInt",
4194                  "decorators": [],
4195                  "loc": {
4196                    "start": {
4197                      "line": 1,
4198                      "column": 1
4199                    },
4200                    "end": {
4201                      "line": 1,
4202                      "column": 1
4203                    }
4204                  }
4205                },
4206                "generator": false,
4207                "async": false,
4208                "expression": false,
4209                "params": [
4210                  {
4211                    "type": "ETSParameterExpression",
4212                    "name": {
4213                      "type": "Identifier",
4214                      "name": "ordinal",
4215                      "typeAnnotation": {
4216                        "type": "ETSPrimitiveType",
4217                        "loc": {
4218                          "start": {
4219                            "line": 1,
4220                            "column": 1
4221                          },
4222                          "end": {
4223                            "line": 1,
4224                            "column": 1
4225                          }
4226                        }
4227                      },
4228                      "decorators": [],
4229                      "loc": {
4230                        "start": {
4231                          "line": 1,
4232                          "column": 1
4233                        },
4234                        "end": {
4235                          "line": 1,
4236                          "column": 1
4237                        }
4238                      }
4239                    },
4240                    "loc": {
4241                      "start": {
4242                        "line": 1,
4243                        "column": 1
4244                      },
4245                      "end": {
4246                        "line": 1,
4247                        "column": 1
4248                      }
4249                    }
4250                  }
4251                ],
4252                "returnType": {
4253                  "type": "ETSTypeReference",
4254                  "part": {
4255                    "type": "ETSTypeReferencePart",
4256                    "name": {
4257                      "type": "Identifier",
4258                      "name": "A",
4259                      "decorators": [],
4260                      "loc": {
4261                        "start": {
4262                          "line": 1,
4263                          "column": 1
4264                        },
4265                        "end": {
4266                          "line": 1,
4267                          "column": 1
4268                        }
4269                      }
4270                    },
4271                    "loc": {
4272                      "start": {
4273                        "line": 1,
4274                        "column": 1
4275                      },
4276                      "end": {
4277                        "line": 1,
4278                        "column": 1
4279                      }
4280                    }
4281                  },
4282                  "loc": {
4283                    "start": {
4284                      "line": 1,
4285                      "column": 1
4286                    },
4287                    "end": {
4288                      "line": 1,
4289                      "column": 1
4290                    }
4291                  }
4292                },
4293                "body": {
4294                  "type": "BlockStatement",
4295                  "statements": [
4296                    {
4297                      "type": "IfStatement",
4298                      "test": {
4299                        "type": "BinaryExpression",
4300                        "operator": "<",
4301                        "left": {
4302                          "type": "Identifier",
4303                          "name": "ordinal",
4304                          "decorators": [],
4305                          "loc": {
4306                            "start": {
4307                              "line": 1,
4308                              "column": 1
4309                            },
4310                            "end": {
4311                              "line": 1,
4312                              "column": 1
4313                            }
4314                          }
4315                        },
4316                        "right": {
4317                          "type": "MemberExpression",
4318                          "object": {
4319                            "type": "MemberExpression",
4320                            "object": {
4321                              "type": "Identifier",
4322                              "name": "#A",
4323                              "decorators": [],
4324                              "loc": {
4325                                "start": {
4326                                  "line": 1,
4327                                  "column": 1
4328                                },
4329                                "end": {
4330                                  "line": 1,
4331                                  "column": 1
4332                                }
4333                              }
4334                            },
4335                            "property": {
4336                              "type": "Identifier",
4337                              "name": "ItemsArray",
4338                              "decorators": [],
4339                              "loc": {
4340                                "start": {
4341                                  "line": 1,
4342                                  "column": 1
4343                                },
4344                                "end": {
4345                                  "line": 1,
4346                                  "column": 1
4347                                }
4348                              }
4349                            },
4350                            "computed": false,
4351                            "optional": false,
4352                            "loc": {
4353                              "start": {
4354                                "line": 1,
4355                                "column": 1
4356                              },
4357                              "end": {
4358                                "line": 1,
4359                                "column": 1
4360                              }
4361                            }
4362                          },
4363                          "property": {
4364                            "type": "Identifier",
4365                            "name": "length",
4366                            "decorators": [],
4367                            "loc": {
4368                              "start": {
4369                                "line": 1,
4370                                "column": 1
4371                              },
4372                              "end": {
4373                                "line": 1,
4374                                "column": 1
4375                              }
4376                            }
4377                          },
4378                          "computed": false,
4379                          "optional": false,
4380                          "loc": {
4381                            "start": {
4382                              "line": 1,
4383                              "column": 1
4384                            },
4385                            "end": {
4386                              "line": 1,
4387                              "column": 1
4388                            }
4389                          }
4390                        },
4391                        "loc": {
4392                          "start": {
4393                            "line": 1,
4394                            "column": 1
4395                          },
4396                          "end": {
4397                            "line": 1,
4398                            "column": 1
4399                          }
4400                        }
4401                      },
4402                      "consequent": {
4403                        "type": "ReturnStatement",
4404                        "argument": {
4405                          "type": "MemberExpression",
4406                          "object": {
4407                            "type": "MemberExpression",
4408                            "object": {
4409                              "type": "Identifier",
4410                              "name": "#A",
4411                              "decorators": [],
4412                              "loc": {
4413                                "start": {
4414                                  "line": 1,
4415                                  "column": 1
4416                                },
4417                                "end": {
4418                                  "line": 1,
4419                                  "column": 1
4420                                }
4421                              }
4422                            },
4423                            "property": {
4424                              "type": "Identifier",
4425                              "name": "ItemsArray",
4426                              "decorators": [],
4427                              "loc": {
4428                                "start": {
4429                                  "line": 1,
4430                                  "column": 1
4431                                },
4432                                "end": {
4433                                  "line": 1,
4434                                  "column": 1
4435                                }
4436                              }
4437                            },
4438                            "computed": false,
4439                            "optional": false,
4440                            "loc": {
4441                              "start": {
4442                                "line": 1,
4443                                "column": 1
4444                              },
4445                              "end": {
4446                                "line": 1,
4447                                "column": 1
4448                              }
4449                            }
4450                          },
4451                          "property": {
4452                            "type": "Identifier",
4453                            "name": "ordinal",
4454                            "decorators": [],
4455                            "loc": {
4456                              "start": {
4457                                "line": 1,
4458                                "column": 1
4459                              },
4460                              "end": {
4461                                "line": 1,
4462                                "column": 1
4463                              }
4464                            }
4465                          },
4466                          "computed": true,
4467                          "optional": false,
4468                          "loc": {
4469                            "start": {
4470                              "line": 1,
4471                              "column": 1
4472                            },
4473                            "end": {
4474                              "line": 1,
4475                              "column": 1
4476                            }
4477                          }
4478                        },
4479                        "loc": {
4480                          "start": {
4481                            "line": 1,
4482                            "column": 1
4483                          },
4484                          "end": {
4485                            "line": 1,
4486                            "column": 1
4487                          }
4488                        }
4489                      },
4490                      "alternate": null,
4491                      "loc": {
4492                        "start": {
4493                          "line": 1,
4494                          "column": 1
4495                        },
4496                        "end": {
4497                          "line": 1,
4498                          "column": 1
4499                        }
4500                      }
4501                    },
4502                    {
4503                      "type": "ThrowStatement",
4504                      "argument": {
4505                        "type": "ETSNewClassInstanceExpression",
4506                        "typeReference": {
4507                          "type": "ETSTypeReference",
4508                          "part": {
4509                            "type": "ETSTypeReferencePart",
4510                            "name": {
4511                              "type": "Identifier",
4512                              "name": "Exception",
4513                              "decorators": [],
4514                              "loc": {
4515                                "start": {
4516                                  "line": 1,
4517                                  "column": 1
4518                                },
4519                                "end": {
4520                                  "line": 1,
4521                                  "column": 1
4522                                }
4523                              }
4524                            },
4525                            "loc": {
4526                              "start": {
4527                                "line": 1,
4528                                "column": 1
4529                              },
4530                              "end": {
4531                                "line": 1,
4532                                "column": 1
4533                              }
4534                            }
4535                          },
4536                          "loc": {
4537                            "start": {
4538                              "line": 1,
4539                              "column": 1
4540                            },
4541                            "end": {
4542                              "line": 1,
4543                              "column": 1
4544                            }
4545                          }
4546                        },
4547                        "arguments": [
4548                          {
4549                            "type": "BinaryExpression",
4550                            "operator": "+",
4551                            "left": {
4552                              "type": "StringLiteral",
4553                              "value": "No enum constant in A with ordinal value ",
4554                              "loc": {
4555                                "start": {
4556                                  "line": 1,
4557                                  "column": 1
4558                                },
4559                                "end": {
4560                                  "line": 1,
4561                                  "column": 1
4562                                }
4563                              }
4564                            },
4565                            "right": {
4566                              "type": "Identifier",
4567                              "name": "ordinal",
4568                              "decorators": [],
4569                              "loc": {
4570                                "start": {
4571                                  "line": 1,
4572                                  "column": 1
4573                                },
4574                                "end": {
4575                                  "line": 1,
4576                                  "column": 1
4577                                }
4578                              }
4579                            },
4580                            "loc": {
4581                              "start": {
4582                                "line": 1,
4583                                "column": 1
4584                              },
4585                              "end": {
4586                                "line": 1,
4587                                "column": 1
4588                              }
4589                            }
4590                          }
4591                        ],
4592                        "loc": {
4593                          "start": {
4594                            "line": 1,
4595                            "column": 1
4596                          },
4597                          "end": {
4598                            "line": 1,
4599                            "column": 1
4600                          }
4601                        }
4602                      },
4603                      "loc": {
4604                        "start": {
4605                          "line": 1,
4606                          "column": 1
4607                        },
4608                        "end": {
4609                          "line": 1,
4610                          "column": 1
4611                        }
4612                      }
4613                    }
4614                  ],
4615                  "loc": {
4616                    "start": {
4617                      "line": 1,
4618                      "column": 1
4619                    },
4620                    "end": {
4621                      "line": 1,
4622                      "column": 1
4623                    }
4624                  }
4625                },
4626                "throwMarker": "throws",
4627                "loc": {
4628                  "start": {
4629                    "line": 1,
4630                    "column": 1
4631                  },
4632                  "end": {
4633                    "line": 1,
4634                    "column": 1
4635                  }
4636                }
4637              },
4638              "loc": {
4639                "start": {
4640                  "line": 1,
4641                  "column": 1
4642                },
4643                "end": {
4644                  "line": 1,
4645                  "column": 1
4646                }
4647              }
4648            },
4649            "overloads": [],
4650            "decorators": [],
4651            "loc": {
4652              "start": {
4653                "line": 1,
4654                "column": 1
4655              },
4656              "end": {
4657                "line": 1,
4658                "column": 1
4659              }
4660            }
4661          },
4662          {
4663            "type": "MethodDefinition",
4664            "key": {
4665              "type": "Identifier",
4666              "name": "unbox",
4667              "decorators": [],
4668              "loc": {
4669                "start": {
4670                  "line": 1,
4671                  "column": 1
4672                },
4673                "end": {
4674                  "line": 1,
4675                  "column": 1
4676                }
4677              }
4678            },
4679            "kind": "method",
4680            "accessibility": "public",
4681            "static": false,
4682            "optional": false,
4683            "computed": false,
4684            "value": {
4685              "type": "FunctionExpression",
4686              "function": {
4687                "type": "ScriptFunction",
4688                "id": {
4689                  "type": "Identifier",
4690                  "name": "unbox",
4691                  "decorators": [],
4692                  "loc": {
4693                    "start": {
4694                      "line": 1,
4695                      "column": 1
4696                    },
4697                    "end": {
4698                      "line": 1,
4699                      "column": 1
4700                    }
4701                  }
4702                },
4703                "generator": false,
4704                "async": false,
4705                "expression": false,
4706                "params": [],
4707                "returnType": {
4708                  "type": "ETSTypeReference",
4709                  "part": {
4710                    "type": "ETSTypeReferencePart",
4711                    "name": {
4712                      "type": "Identifier",
4713                      "name": "A",
4714                      "decorators": [],
4715                      "loc": {
4716                        "start": {
4717                          "line": 1,
4718                          "column": 1
4719                        },
4720                        "end": {
4721                          "line": 1,
4722                          "column": 1
4723                        }
4724                      }
4725                    },
4726                    "loc": {
4727                      "start": {
4728                        "line": 1,
4729                        "column": 1
4730                      },
4731                      "end": {
4732                        "line": 1,
4733                        "column": 1
4734                      }
4735                    }
4736                  },
4737                  "loc": {
4738                    "start": {
4739                      "line": 1,
4740                      "column": 1
4741                    },
4742                    "end": {
4743                      "line": 1,
4744                      "column": 1
4745                    }
4746                  }
4747                },
4748                "body": {
4749                  "type": "BlockStatement",
4750                  "statements": [
4751                    {
4752                      "type": "ReturnStatement",
4753                      "argument": {
4754                        "type": "MemberExpression",
4755                        "object": {
4756                          "type": "MemberExpression",
4757                          "object": {
4758                            "type": "Identifier",
4759                            "name": "#A",
4760                            "decorators": [],
4761                            "loc": {
4762                              "start": {
4763                                "line": 1,
4764                                "column": 1
4765                              },
4766                              "end": {
4767                                "line": 1,
4768                                "column": 1
4769                              }
4770                            }
4771                          },
4772                          "property": {
4773                            "type": "Identifier",
4774                            "name": "ItemsArray",
4775                            "decorators": [],
4776                            "loc": {
4777                              "start": {
4778                                "line": 1,
4779                                "column": 1
4780                              },
4781                              "end": {
4782                                "line": 1,
4783                                "column": 1
4784                              }
4785                            }
4786                          },
4787                          "computed": false,
4788                          "optional": false,
4789                          "loc": {
4790                            "start": {
4791                              "line": 1,
4792                              "column": 1
4793                            },
4794                            "end": {
4795                              "line": 1,
4796                              "column": 1
4797                            }
4798                          }
4799                        },
4800                        "property": {
4801                          "type": "MemberExpression",
4802                          "object": {
4803                            "type": "ThisExpression",
4804                            "loc": {
4805                              "start": {
4806                                "line": 1,
4807                                "column": 1
4808                              },
4809                              "end": {
4810                                "line": 1,
4811                                "column": 1
4812                              }
4813                            }
4814                          },
4815                          "property": {
4816                            "type": "Identifier",
4817                            "name": "ordinal",
4818                            "decorators": [],
4819                            "loc": {
4820                              "start": {
4821                                "line": 1,
4822                                "column": 1
4823                              },
4824                              "end": {
4825                                "line": 1,
4826                                "column": 1
4827                              }
4828                            }
4829                          },
4830                          "computed": false,
4831                          "optional": false,
4832                          "loc": {
4833                            "start": {
4834                              "line": 1,
4835                              "column": 1
4836                            },
4837                            "end": {
4838                              "line": 1,
4839                              "column": 1
4840                            }
4841                          }
4842                        },
4843                        "computed": true,
4844                        "optional": false,
4845                        "loc": {
4846                          "start": {
4847                            "line": 1,
4848                            "column": 1
4849                          },
4850                          "end": {
4851                            "line": 1,
4852                            "column": 1
4853                          }
4854                        }
4855                      },
4856                      "loc": {
4857                        "start": {
4858                          "line": 1,
4859                          "column": 1
4860                        },
4861                        "end": {
4862                          "line": 1,
4863                          "column": 1
4864                        }
4865                      }
4866                    }
4867                  ],
4868                  "loc": {
4869                    "start": {
4870                      "line": 1,
4871                      "column": 1
4872                    },
4873                    "end": {
4874                      "line": 1,
4875                      "column": 1
4876                    }
4877                  }
4878                },
4879                "loc": {
4880                  "start": {
4881                    "line": 1,
4882                    "column": 1
4883                  },
4884                  "end": {
4885                    "line": 1,
4886                    "column": 1
4887                  }
4888                }
4889              },
4890              "loc": {
4891                "start": {
4892                  "line": 1,
4893                  "column": 1
4894                },
4895                "end": {
4896                  "line": 1,
4897                  "column": 1
4898                }
4899              }
4900            },
4901            "overloads": [],
4902            "decorators": [],
4903            "loc": {
4904              "start": {
4905                "line": 1,
4906                "column": 1
4907              },
4908              "end": {
4909                "line": 1,
4910                "column": 1
4911              }
4912            }
4913          },
4914          {
4915            "type": "MethodDefinition",
4916            "key": {
4917              "type": "Identifier",
4918              "name": "boxedfromInt",
4919              "decorators": [],
4920              "loc": {
4921                "start": {
4922                  "line": 1,
4923                  "column": 1
4924                },
4925                "end": {
4926                  "line": 1,
4927                  "column": 1
4928                }
4929              }
4930            },
4931            "kind": "method",
4932            "accessibility": "public",
4933            "static": true,
4934            "optional": false,
4935            "computed": false,
4936            "value": {
4937              "type": "FunctionExpression",
4938              "function": {
4939                "type": "ScriptFunction",
4940                "id": {
4941                  "type": "Identifier",
4942                  "name": "boxedfromInt",
4943                  "decorators": [],
4944                  "loc": {
4945                    "start": {
4946                      "line": 1,
4947                      "column": 1
4948                    },
4949                    "end": {
4950                      "line": 1,
4951                      "column": 1
4952                    }
4953                  }
4954                },
4955                "generator": false,
4956                "async": false,
4957                "expression": false,
4958                "params": [
4959                  {
4960                    "type": "ETSParameterExpression",
4961                    "name": {
4962                      "type": "Identifier",
4963                      "name": "ordinal",
4964                      "typeAnnotation": {
4965                        "type": "ETSPrimitiveType",
4966                        "loc": {
4967                          "start": {
4968                            "line": 1,
4969                            "column": 1
4970                          },
4971                          "end": {
4972                            "line": 1,
4973                            "column": 1
4974                          }
4975                        }
4976                      },
4977                      "decorators": [],
4978                      "loc": {
4979                        "start": {
4980                          "line": 1,
4981                          "column": 1
4982                        },
4983                        "end": {
4984                          "line": 1,
4985                          "column": 1
4986                        }
4987                      }
4988                    },
4989                    "loc": {
4990                      "start": {
4991                        "line": 1,
4992                        "column": 1
4993                      },
4994                      "end": {
4995                        "line": 1,
4996                        "column": 1
4997                      }
4998                    }
4999                  }
5000                ],
5001                "returnType": {
5002                  "type": "ETSTypeReference",
5003                  "part": {
5004                    "type": "ETSTypeReferencePart",
5005                    "name": {
5006                      "type": "Identifier",
5007                      "name": "#A",
5008                      "decorators": [],
5009                      "loc": {
5010                        "start": {
5011                          "line": 1,
5012                          "column": 1
5013                        },
5014                        "end": {
5015                          "line": 1,
5016                          "column": 1
5017                        }
5018                      }
5019                    },
5020                    "loc": {
5021                      "start": {
5022                        "line": 1,
5023                        "column": 1
5024                      },
5025                      "end": {
5026                        "line": 1,
5027                        "column": 1
5028                      }
5029                    }
5030                  },
5031                  "loc": {
5032                    "start": {
5033                      "line": 1,
5034                      "column": 1
5035                    },
5036                    "end": {
5037                      "line": 1,
5038                      "column": 1
5039                    }
5040                  }
5041                },
5042                "body": {
5043                  "type": "BlockStatement",
5044                  "statements": [
5045                    {
5046                      "type": "IfStatement",
5047                      "test": {
5048                        "type": "BinaryExpression",
5049                        "operator": "<",
5050                        "left": {
5051                          "type": "Identifier",
5052                          "name": "ordinal",
5053                          "decorators": [],
5054                          "loc": {
5055                            "start": {
5056                              "line": 1,
5057                              "column": 1
5058                            },
5059                            "end": {
5060                              "line": 1,
5061                              "column": 1
5062                            }
5063                          }
5064                        },
5065                        "right": {
5066                          "type": "MemberExpression",
5067                          "object": {
5068                            "type": "MemberExpression",
5069                            "object": {
5070                              "type": "Identifier",
5071                              "name": "#A",
5072                              "decorators": [],
5073                              "loc": {
5074                                "start": {
5075                                  "line": 1,
5076                                  "column": 1
5077                                },
5078                                "end": {
5079                                  "line": 1,
5080                                  "column": 1
5081                                }
5082                              }
5083                            },
5084                            "property": {
5085                              "type": "Identifier",
5086                              "name": "BoxedItemsArray",
5087                              "decorators": [],
5088                              "loc": {
5089                                "start": {
5090                                  "line": 1,
5091                                  "column": 1
5092                                },
5093                                "end": {
5094                                  "line": 1,
5095                                  "column": 1
5096                                }
5097                              }
5098                            },
5099                            "computed": false,
5100                            "optional": false,
5101                            "loc": {
5102                              "start": {
5103                                "line": 1,
5104                                "column": 1
5105                              },
5106                              "end": {
5107                                "line": 1,
5108                                "column": 1
5109                              }
5110                            }
5111                          },
5112                          "property": {
5113                            "type": "Identifier",
5114                            "name": "length",
5115                            "decorators": [],
5116                            "loc": {
5117                              "start": {
5118                                "line": 1,
5119                                "column": 1
5120                              },
5121                              "end": {
5122                                "line": 1,
5123                                "column": 1
5124                              }
5125                            }
5126                          },
5127                          "computed": false,
5128                          "optional": false,
5129                          "loc": {
5130                            "start": {
5131                              "line": 1,
5132                              "column": 1
5133                            },
5134                            "end": {
5135                              "line": 1,
5136                              "column": 1
5137                            }
5138                          }
5139                        },
5140                        "loc": {
5141                          "start": {
5142                            "line": 1,
5143                            "column": 1
5144                          },
5145                          "end": {
5146                            "line": 1,
5147                            "column": 1
5148                          }
5149                        }
5150                      },
5151                      "consequent": {
5152                        "type": "ReturnStatement",
5153                        "argument": {
5154                          "type": "MemberExpression",
5155                          "object": {
5156                            "type": "MemberExpression",
5157                            "object": {
5158                              "type": "Identifier",
5159                              "name": "#A",
5160                              "decorators": [],
5161                              "loc": {
5162                                "start": {
5163                                  "line": 1,
5164                                  "column": 1
5165                                },
5166                                "end": {
5167                                  "line": 1,
5168                                  "column": 1
5169                                }
5170                              }
5171                            },
5172                            "property": {
5173                              "type": "Identifier",
5174                              "name": "BoxedItemsArray",
5175                              "decorators": [],
5176                              "loc": {
5177                                "start": {
5178                                  "line": 1,
5179                                  "column": 1
5180                                },
5181                                "end": {
5182                                  "line": 1,
5183                                  "column": 1
5184                                }
5185                              }
5186                            },
5187                            "computed": false,
5188                            "optional": false,
5189                            "loc": {
5190                              "start": {
5191                                "line": 1,
5192                                "column": 1
5193                              },
5194                              "end": {
5195                                "line": 1,
5196                                "column": 1
5197                              }
5198                            }
5199                          },
5200                          "property": {
5201                            "type": "Identifier",
5202                            "name": "ordinal",
5203                            "decorators": [],
5204                            "loc": {
5205                              "start": {
5206                                "line": 1,
5207                                "column": 1
5208                              },
5209                              "end": {
5210                                "line": 1,
5211                                "column": 1
5212                              }
5213                            }
5214                          },
5215                          "computed": true,
5216                          "optional": false,
5217                          "loc": {
5218                            "start": {
5219                              "line": 1,
5220                              "column": 1
5221                            },
5222                            "end": {
5223                              "line": 1,
5224                              "column": 1
5225                            }
5226                          }
5227                        },
5228                        "loc": {
5229                          "start": {
5230                            "line": 1,
5231                            "column": 1
5232                          },
5233                          "end": {
5234                            "line": 1,
5235                            "column": 1
5236                          }
5237                        }
5238                      },
5239                      "alternate": null,
5240                      "loc": {
5241                        "start": {
5242                          "line": 1,
5243                          "column": 1
5244                        },
5245                        "end": {
5246                          "line": 1,
5247                          "column": 1
5248                        }
5249                      }
5250                    },
5251                    {
5252                      "type": "ThrowStatement",
5253                      "argument": {
5254                        "type": "ETSNewClassInstanceExpression",
5255                        "typeReference": {
5256                          "type": "ETSTypeReference",
5257                          "part": {
5258                            "type": "ETSTypeReferencePart",
5259                            "name": {
5260                              "type": "Identifier",
5261                              "name": "Exception",
5262                              "decorators": [],
5263                              "loc": {
5264                                "start": {
5265                                  "line": 1,
5266                                  "column": 1
5267                                },
5268                                "end": {
5269                                  "line": 1,
5270                                  "column": 1
5271                                }
5272                              }
5273                            },
5274                            "loc": {
5275                              "start": {
5276                                "line": 1,
5277                                "column": 1
5278                              },
5279                              "end": {
5280                                "line": 1,
5281                                "column": 1
5282                              }
5283                            }
5284                          },
5285                          "loc": {
5286                            "start": {
5287                              "line": 1,
5288                              "column": 1
5289                            },
5290                            "end": {
5291                              "line": 1,
5292                              "column": 1
5293                            }
5294                          }
5295                        },
5296                        "arguments": [
5297                          {
5298                            "type": "BinaryExpression",
5299                            "operator": "+",
5300                            "left": {
5301                              "type": "StringLiteral",
5302                              "value": "No enum constant in A with ordinal value ",
5303                              "loc": {
5304                                "start": {
5305                                  "line": 1,
5306                                  "column": 1
5307                                },
5308                                "end": {
5309                                  "line": 1,
5310                                  "column": 1
5311                                }
5312                              }
5313                            },
5314                            "right": {
5315                              "type": "Identifier",
5316                              "name": "ordinal",
5317                              "decorators": [],
5318                              "loc": {
5319                                "start": {
5320                                  "line": 1,
5321                                  "column": 1
5322                                },
5323                                "end": {
5324                                  "line": 1,
5325                                  "column": 1
5326                                }
5327                              }
5328                            },
5329                            "loc": {
5330                              "start": {
5331                                "line": 1,
5332                                "column": 1
5333                              },
5334                              "end": {
5335                                "line": 1,
5336                                "column": 1
5337                              }
5338                            }
5339                          }
5340                        ],
5341                        "loc": {
5342                          "start": {
5343                            "line": 1,
5344                            "column": 1
5345                          },
5346                          "end": {
5347                            "line": 1,
5348                            "column": 1
5349                          }
5350                        }
5351                      },
5352                      "loc": {
5353                        "start": {
5354                          "line": 1,
5355                          "column": 1
5356                        },
5357                        "end": {
5358                          "line": 1,
5359                          "column": 1
5360                        }
5361                      }
5362                    }
5363                  ],
5364                  "loc": {
5365                    "start": {
5366                      "line": 1,
5367                      "column": 1
5368                    },
5369                    "end": {
5370                      "line": 1,
5371                      "column": 1
5372                    }
5373                  }
5374                },
5375                "throwMarker": "throws",
5376                "loc": {
5377                  "start": {
5378                    "line": 1,
5379                    "column": 1
5380                  },
5381                  "end": {
5382                    "line": 1,
5383                    "column": 1
5384                  }
5385                }
5386              },
5387              "loc": {
5388                "start": {
5389                  "line": 1,
5390                  "column": 1
5391                },
5392                "end": {
5393                  "line": 1,
5394                  "column": 1
5395                }
5396              }
5397            },
5398            "overloads": [],
5399            "decorators": [],
5400            "loc": {
5401              "start": {
5402                "line": 1,
5403                "column": 1
5404              },
5405              "end": {
5406                "line": 1,
5407                "column": 1
5408              }
5409            }
5410          }
5411        ],
5412        "loc": {
5413          "start": {
5414            "line": 1,
5415            "column": 1
5416          },
5417          "end": {
5418            "line": 1,
5419            "column": 1
5420          }
5421        }
5422      },
5423      "loc": {
5424        "start": {
5425          "line": 1,
5426          "column": 1
5427        },
5428        "end": {
5429          "line": 1,
5430          "column": 1
5431        }
5432      }
5433    }
5434  ],
5435  "loc": {
5436    "start": {
5437      "line": 1,
5438      "column": 1
5439    },
5440    "end": {
5441      "line": 35,
5442      "column": 1
5443    }
5444  }
5445}
5446