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": 16,
13            "column": 6
14          },
15          "end": {
16            "line": 16,
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": 17,
31                "column": 5
32              },
33              "end": {
34                "line": 17,
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": 17,
56              "column": 5
57            },
58            "end": {
59              "line": 17,
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": 17,
73                "column": 8
74              },
75              "end": {
76                "line": 17,
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": 17,
98              "column": 8
99            },
100            "end": {
101              "line": 17,
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": 17,
115                "column": 11
116              },
117              "end": {
118                "line": 17,
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": 17,
140              "column": 11
141            },
142            "end": {
143              "line": 17,
144              "column": 12
145            }
146          }
147        }
148      ],
149      "const": false,
150      "loc": {
151        "start": {
152          "line": 16,
153          "column": 1
154        },
155        "end": {
156          "line": 18,
157          "column": 2
158        }
159      }
160    },
161    {
162      "type": "TSEnumDeclaration",
163      "id": {
164        "type": "Identifier",
165        "name": "E",
166        "decorators": [],
167        "loc": {
168          "start": {
169            "line": 21,
170            "column": 6
171          },
172          "end": {
173            "line": 21,
174            "column": 7
175          }
176        }
177      },
178      "members": [
179        {
180          "type": "TSEnumMember",
181          "id": {
182            "type": "Identifier",
183            "name": "F",
184            "decorators": [],
185            "loc": {
186              "start": {
187                "line": 22,
188                "column": 5
189              },
190              "end": {
191                "line": 22,
192                "column": 6
193              }
194            }
195          },
196          "initializer": {
197            "type": "NumberLiteral",
198            "value": 0,
199            "loc": {
200              "start": {
201                "line": 1,
202                "column": 1
203              },
204              "end": {
205                "line": 1,
206                "column": 1
207              }
208            }
209          },
210          "loc": {
211            "start": {
212              "line": 22,
213              "column": 5
214            },
215            "end": {
216              "line": 22,
217              "column": 6
218            }
219          }
220        },
221        {
222          "type": "TSEnumMember",
223          "id": {
224            "type": "Identifier",
225            "name": "G",
226            "decorators": [],
227            "loc": {
228              "start": {
229                "line": 22,
230                "column": 8
231              },
232              "end": {
233                "line": 22,
234                "column": 9
235              }
236            }
237          },
238          "initializer": {
239            "type": "NumberLiteral",
240            "value": 1,
241            "loc": {
242              "start": {
243                "line": 1,
244                "column": 1
245              },
246              "end": {
247                "line": 1,
248                "column": 1
249              }
250            }
251          },
252          "loc": {
253            "start": {
254              "line": 22,
255              "column": 8
256            },
257            "end": {
258              "line": 22,
259              "column": 9
260            }
261          }
262        },
263        {
264          "type": "TSEnumMember",
265          "id": {
266            "type": "Identifier",
267            "name": "H",
268            "decorators": [],
269            "loc": {
270              "start": {
271                "line": 22,
272                "column": 11
273              },
274              "end": {
275                "line": 22,
276                "column": 12
277              }
278            }
279          },
280          "initializer": {
281            "type": "NumberLiteral",
282            "value": 2,
283            "loc": {
284              "start": {
285                "line": 1,
286                "column": 1
287              },
288              "end": {
289                "line": 1,
290                "column": 1
291              }
292            }
293          },
294          "loc": {
295            "start": {
296              "line": 22,
297              "column": 11
298            },
299            "end": {
300              "line": 22,
301              "column": 12
302            }
303          }
304        }
305      ],
306      "const": false,
307      "loc": {
308        "start": {
309          "line": 21,
310          "column": 1
311        },
312        "end": {
313          "line": 23,
314          "column": 2
315        }
316      }
317    },
318    {
319      "type": "ClassDeclaration",
320      "definition": {
321        "id": {
322          "type": "Identifier",
323          "name": "Fgr",
324          "decorators": [],
325          "loc": {
326            "start": {
327              "line": 24,
328              "column": 7
329            },
330            "end": {
331              "line": 24,
332              "column": 10
333            }
334          }
335        },
336        "superClass": null,
337        "implements": [],
338        "body": [
339          {
340            "type": "ClassProperty",
341            "key": {
342              "type": "Identifier",
343              "name": "BR",
344              "decorators": [],
345              "loc": {
346                "start": {
347                  "line": 25,
348                  "column": 21
349                },
350                "end": {
351                  "line": 25,
352                  "column": 23
353                }
354              }
355            },
356            "value": {
357              "type": "MemberExpression",
358              "object": {
359                "type": "Identifier",
360                "name": "A",
361                "decorators": [],
362                "loc": {
363                  "start": {
364                    "line": 25,
365                    "column": 26
366                  },
367                  "end": {
368                    "line": 25,
369                    "column": 27
370                  }
371                }
372              },
373              "property": {
374                "type": "Identifier",
375                "name": "B",
376                "decorators": [],
377                "loc": {
378                  "start": {
379                    "line": 25,
380                    "column": 28
381                  },
382                  "end": {
383                    "line": 25,
384                    "column": 29
385                  }
386                }
387              },
388              "computed": false,
389              "optional": false,
390              "loc": {
391                "start": {
392                  "line": 25,
393                  "column": 26
394                },
395                "end": {
396                  "line": 25,
397                  "column": 29
398                }
399              }
400            },
401            "accessibility": "public",
402            "static": true,
403            "readonly": true,
404            "declare": false,
405            "optional": false,
406            "computed": false,
407            "definite": false,
408            "decorators": [],
409            "loc": {
410              "start": {
411                "line": 25,
412                "column": 21
413              },
414              "end": {
415                "line": 25,
416                "column": 29
417              }
418            }
419          },
420          {
421            "type": "MethodDefinition",
422            "key": {
423              "type": "Identifier",
424              "name": "constructor",
425              "decorators": [],
426              "loc": {
427                "start": {
428                  "line": 1,
429                  "column": 1
430                },
431                "end": {
432                  "line": 1,
433                  "column": 1
434                }
435              }
436            },
437            "kind": "constructor",
438            "static": false,
439            "optional": false,
440            "computed": false,
441            "value": {
442              "type": "FunctionExpression",
443              "function": {
444                "type": "ScriptFunction",
445                "id": {
446                  "type": "Identifier",
447                  "name": "constructor",
448                  "decorators": [],
449                  "loc": {
450                    "start": {
451                      "line": 1,
452                      "column": 1
453                    },
454                    "end": {
455                      "line": 1,
456                      "column": 1
457                    }
458                  }
459                },
460                "generator": false,
461                "async": false,
462                "expression": false,
463                "params": [],
464                "body": {
465                  "type": "BlockStatement",
466                  "statements": [],
467                  "loc": {
468                    "start": {
469                      "line": 1,
470                      "column": 1
471                    },
472                    "end": {
473                      "line": 1,
474                      "column": 1
475                    }
476                  }
477                },
478                "loc": {
479                  "start": {
480                    "line": 1,
481                    "column": 1
482                  },
483                  "end": {
484                    "line": 1,
485                    "column": 1
486                  }
487                }
488              },
489              "loc": {
490                "start": {
491                  "line": 1,
492                  "column": 1
493                },
494                "end": {
495                  "line": 1,
496                  "column": 1
497                }
498              }
499            },
500            "overloads": [],
501            "decorators": [],
502            "loc": {
503              "start": {
504                "line": 26,
505                "column": 2
506              },
507              "end": {
508                "line": 26,
509                "column": 2
510              }
511            }
512          }
513        ],
514        "loc": {
515          "start": {
516            "line": 24,
517            "column": 11
518          },
519          "end": {
520            "line": 26,
521            "column": 2
522          }
523        }
524      },
525      "loc": {
526        "start": {
527          "line": 24,
528          "column": 1
529        },
530        "end": {
531          "line": 26,
532          "column": 2
533        }
534      }
535    },
536    {
537      "type": "ClassDeclaration",
538      "definition": {
539        "id": {
540          "type": "Identifier",
541          "name": "Sqr",
542          "decorators": [],
543          "loc": {
544            "start": {
545              "line": 28,
546              "column": 7
547            },
548            "end": {
549              "line": 28,
550              "column": 10
551            }
552          }
553        },
554        "superClass": null,
555        "implements": [],
556        "body": [
557          {
558            "type": "ClassProperty",
559            "key": {
560              "type": "Identifier",
561              "name": "BR",
562              "decorators": [],
563              "loc": {
564                "start": {
565                  "line": 29,
566                  "column": 21
567                },
568                "end": {
569                  "line": 29,
570                  "column": 23
571                }
572              }
573            },
574            "value": {
575              "type": "MemberExpression",
576              "object": {
577                "type": "Identifier",
578                "name": "A",
579                "decorators": [],
580                "loc": {
581                  "start": {
582                    "line": 29,
583                    "column": 26
584                  },
585                  "end": {
586                    "line": 29,
587                    "column": 27
588                  }
589                }
590              },
591              "property": {
592                "type": "Identifier",
593                "name": "C",
594                "decorators": [],
595                "loc": {
596                  "start": {
597                    "line": 29,
598                    "column": 28
599                  },
600                  "end": {
601                    "line": 29,
602                    "column": 29
603                  }
604                }
605              },
606              "computed": false,
607              "optional": false,
608              "loc": {
609                "start": {
610                  "line": 29,
611                  "column": 26
612                },
613                "end": {
614                  "line": 29,
615                  "column": 29
616                }
617              }
618            },
619            "accessibility": "public",
620            "static": true,
621            "readonly": true,
622            "declare": false,
623            "optional": false,
624            "computed": false,
625            "definite": false,
626            "decorators": [],
627            "loc": {
628              "start": {
629                "line": 29,
630                "column": 21
631              },
632              "end": {
633                "line": 29,
634                "column": 29
635              }
636            }
637          },
638          {
639            "type": "MethodDefinition",
640            "key": {
641              "type": "Identifier",
642              "name": "constructor",
643              "decorators": [],
644              "loc": {
645                "start": {
646                  "line": 1,
647                  "column": 1
648                },
649                "end": {
650                  "line": 1,
651                  "column": 1
652                }
653              }
654            },
655            "kind": "constructor",
656            "static": false,
657            "optional": false,
658            "computed": false,
659            "value": {
660              "type": "FunctionExpression",
661              "function": {
662                "type": "ScriptFunction",
663                "id": {
664                  "type": "Identifier",
665                  "name": "constructor",
666                  "decorators": [],
667                  "loc": {
668                    "start": {
669                      "line": 1,
670                      "column": 1
671                    },
672                    "end": {
673                      "line": 1,
674                      "column": 1
675                    }
676                  }
677                },
678                "generator": false,
679                "async": false,
680                "expression": false,
681                "params": [],
682                "body": {
683                  "type": "BlockStatement",
684                  "statements": [],
685                  "loc": {
686                    "start": {
687                      "line": 1,
688                      "column": 1
689                    },
690                    "end": {
691                      "line": 1,
692                      "column": 1
693                    }
694                  }
695                },
696                "loc": {
697                  "start": {
698                    "line": 1,
699                    "column": 1
700                  },
701                  "end": {
702                    "line": 1,
703                    "column": 1
704                  }
705                }
706              },
707              "loc": {
708                "start": {
709                  "line": 1,
710                  "column": 1
711                },
712                "end": {
713                  "line": 1,
714                  "column": 1
715                }
716              }
717            },
718            "overloads": [],
719            "decorators": [],
720            "loc": {
721              "start": {
722                "line": 30,
723                "column": 2
724              },
725              "end": {
726                "line": 30,
727                "column": 2
728              }
729            }
730          }
731        ],
732        "loc": {
733          "start": {
734            "line": 28,
735            "column": 11
736          },
737          "end": {
738            "line": 30,
739            "column": 2
740          }
741        }
742      },
743      "loc": {
744        "start": {
745          "line": 28,
746          "column": 1
747        },
748        "end": {
749          "line": 30,
750          "column": 2
751        }
752      }
753    },
754    {
755      "type": "ClassDeclaration",
756      "definition": {
757        "id": {
758          "type": "Identifier",
759          "name": "ETSGLOBAL",
760          "decorators": [],
761          "loc": {
762            "start": {
763              "line": 1,
764              "column": 1
765            },
766            "end": {
767              "line": 1,
768              "column": 1
769            }
770          }
771        },
772        "superClass": null,
773        "implements": [],
774        "body": [
775          {
776            "type": "MethodDefinition",
777            "key": {
778              "type": "Identifier",
779              "name": "_$init$_",
780              "decorators": [],
781              "loc": {
782                "start": {
783                  "line": 1,
784                  "column": 1
785                },
786                "end": {
787                  "line": 1,
788                  "column": 1
789                }
790              }
791            },
792            "kind": "method",
793            "accessibility": "public",
794            "static": true,
795            "optional": false,
796            "computed": false,
797            "value": {
798              "type": "FunctionExpression",
799              "function": {
800                "type": "ScriptFunction",
801                "id": {
802                  "type": "Identifier",
803                  "name": "_$init$_",
804                  "decorators": [],
805                  "loc": {
806                    "start": {
807                      "line": 1,
808                      "column": 1
809                    },
810                    "end": {
811                      "line": 1,
812                      "column": 1
813                    }
814                  }
815                },
816                "generator": false,
817                "async": false,
818                "expression": false,
819                "params": [],
820                "body": {
821                  "type": "BlockStatement",
822                  "statements": [],
823                  "loc": {
824                    "start": {
825                      "line": 1,
826                      "column": 1
827                    },
828                    "end": {
829                      "line": 1,
830                      "column": 1
831                    }
832                  }
833                },
834                "loc": {
835                  "start": {
836                    "line": 1,
837                    "column": 1
838                  },
839                  "end": {
840                    "line": 1,
841                    "column": 1
842                  }
843                }
844              },
845              "loc": {
846                "start": {
847                  "line": 1,
848                  "column": 1
849                },
850                "end": {
851                  "line": 1,
852                  "column": 1
853                }
854              }
855            },
856            "overloads": [],
857            "decorators": [],
858            "loc": {
859              "start": {
860                "line": 1,
861                "column": 1
862              },
863              "end": {
864                "line": 1,
865                "column": 1
866              }
867            }
868          },
869          {
870            "type": "MethodDefinition",
871            "key": {
872              "type": "Identifier",
873              "name": "main",
874              "decorators": [],
875              "loc": {
876                "start": {
877                  "line": 32,
878                  "column": 10
879                },
880                "end": {
881                  "line": 32,
882                  "column": 14
883                }
884              }
885            },
886            "kind": "method",
887            "accessibility": "public",
888            "static": true,
889            "optional": false,
890            "computed": false,
891            "value": {
892              "type": "FunctionExpression",
893              "function": {
894                "type": "ScriptFunction",
895                "id": {
896                  "type": "Identifier",
897                  "name": "main",
898                  "decorators": [],
899                  "loc": {
900                    "start": {
901                      "line": 32,
902                      "column": 10
903                    },
904                    "end": {
905                      "line": 32,
906                      "column": 14
907                    }
908                  }
909                },
910                "generator": false,
911                "async": false,
912                "expression": false,
913                "params": [],
914                "body": {
915                  "type": "BlockStatement",
916                  "statements": [
917                    {
918                      "type": "VariableDeclaration",
919                      "declarations": [
920                        {
921                          "type": "VariableDeclarator",
922                          "id": {
923                            "type": "Identifier",
924                            "name": "a",
925                            "decorators": [],
926                            "loc": {
927                              "start": {
928                                "line": 33,
929                                "column": 9
930                              },
931                              "end": {
932                                "line": 33,
933                                "column": 10
934                              }
935                            }
936                          },
937                          "init": {
938                            "type": "MemberExpression",
939                            "object": {
940                              "type": "Identifier",
941                              "name": "A",
942                              "decorators": [],
943                              "loc": {
944                                "start": {
945                                  "line": 33,
946                                  "column": 13
947                                },
948                                "end": {
949                                  "line": 33,
950                                  "column": 14
951                                }
952                              }
953                            },
954                            "property": {
955                              "type": "Identifier",
956                              "name": "B",
957                              "decorators": [],
958                              "loc": {
959                                "start": {
960                                  "line": 33,
961                                  "column": 15
962                                },
963                                "end": {
964                                  "line": 33,
965                                  "column": 16
966                                }
967                              }
968                            },
969                            "computed": false,
970                            "optional": false,
971                            "loc": {
972                              "start": {
973                                "line": 33,
974                                "column": 13
975                              },
976                              "end": {
977                                "line": 33,
978                                "column": 16
979                              }
980                            }
981                          },
982                          "loc": {
983                            "start": {
984                              "line": 33,
985                              "column": 9
986                            },
987                            "end": {
988                              "line": 33,
989                              "column": 16
990                            }
991                          }
992                        }
993                      ],
994                      "kind": "let",
995                      "loc": {
996                        "start": {
997                          "line": 33,
998                          "column": 5
999                        },
1000                        "end": {
1001                          "line": 33,
1002                          "column": 16
1003                        }
1004                      }
1005                    },
1006                    {
1007                      "type": "SwitchStatement",
1008                      "discriminant": {
1009                        "type": "Identifier",
1010                        "name": "a",
1011                        "decorators": [],
1012                        "loc": {
1013                          "start": {
1014                            "line": 34,
1015                            "column": 13
1016                          },
1017                          "end": {
1018                            "line": 34,
1019                            "column": 14
1020                          }
1021                        }
1022                      },
1023                      "cases": [
1024                        {
1025                          "type": "SwitchCase",
1026                          "test": {
1027                            "type": "MemberExpression",
1028                            "object": {
1029                              "type": "Identifier",
1030                              "name": "Fgr",
1031                              "decorators": [],
1032                              "loc": {
1033                                "start": {
1034                                  "line": 35,
1035                                  "column": 14
1036                                },
1037                                "end": {
1038                                  "line": 35,
1039                                  "column": 17
1040                                }
1041                              }
1042                            },
1043                            "property": {
1044                              "type": "Identifier",
1045                              "name": "BR",
1046                              "decorators": [],
1047                              "loc": {
1048                                "start": {
1049                                  "line": 35,
1050                                  "column": 18
1051                                },
1052                                "end": {
1053                                  "line": 35,
1054                                  "column": 20
1055                                }
1056                              }
1057                            },
1058                            "computed": false,
1059                            "optional": false,
1060                            "loc": {
1061                              "start": {
1062                                "line": 35,
1063                                "column": 14
1064                              },
1065                              "end": {
1066                                "line": 35,
1067                                "column": 20
1068                              }
1069                            }
1070                          },
1071                          "consequent": [
1072                            {
1073                              "type": "BreakStatement",
1074                              "label": null,
1075                              "loc": {
1076                                "start": {
1077                                  "line": 36,
1078                                  "column": 10
1079                                },
1080                                "end": {
1081                                  "line": 36,
1082                                  "column": 16
1083                                }
1084                              }
1085                            }
1086                          ],
1087                          "loc": {
1088                            "start": {
1089                              "line": 35,
1090                              "column": 9
1091                            },
1092                            "end": {
1093                              "line": 36,
1094                              "column": 16
1095                            }
1096                          }
1097                        },
1098                        {
1099                          "type": "SwitchCase",
1100                          "test": {
1101                            "type": "MemberExpression",
1102                            "object": {
1103                              "type": "Identifier",
1104                              "name": "Sqr",
1105                              "decorators": [],
1106                              "loc": {
1107                                "start": {
1108                                  "line": 37,
1109                                  "column": 14
1110                                },
1111                                "end": {
1112                                  "line": 37,
1113                                  "column": 17
1114                                }
1115                              }
1116                            },
1117                            "property": {
1118                              "type": "Identifier",
1119                              "name": "BR",
1120                              "decorators": [],
1121                              "loc": {
1122                                "start": {
1123                                  "line": 37,
1124                                  "column": 18
1125                                },
1126                                "end": {
1127                                  "line": 37,
1128                                  "column": 20
1129                                }
1130                              }
1131                            },
1132                            "computed": false,
1133                            "optional": false,
1134                            "loc": {
1135                              "start": {
1136                                "line": 37,
1137                                "column": 14
1138                              },
1139                              "end": {
1140                                "line": 37,
1141                                "column": 20
1142                              }
1143                            }
1144                          },
1145                          "consequent": [
1146                            {
1147                              "type": "BreakStatement",
1148                              "label": null,
1149                              "loc": {
1150                                "start": {
1151                                  "line": 38,
1152                                  "column": 9
1153                                },
1154                                "end": {
1155                                  "line": 38,
1156                                  "column": 15
1157                                }
1158                              }
1159                            }
1160                          ],
1161                          "loc": {
1162                            "start": {
1163                              "line": 37,
1164                              "column": 9
1165                            },
1166                            "end": {
1167                              "line": 38,
1168                              "column": 15
1169                            }
1170                          }
1171                        },
1172                        {
1173                          "type": "SwitchCase",
1174                          "test": null,
1175                          "consequent": [
1176                            {
1177                              "type": "BreakStatement",
1178                              "label": null,
1179                              "loc": {
1180                                "start": {
1181                                  "line": 39,
1182                                  "column": 18
1183                                },
1184                                "end": {
1185                                  "line": 39,
1186                                  "column": 24
1187                                }
1188                              }
1189                            }
1190                          ],
1191                          "loc": {
1192                            "start": {
1193                              "line": 39,
1194                              "column": 9
1195                            },
1196                            "end": {
1197                              "line": 39,
1198                              "column": 24
1199                            }
1200                          }
1201                        }
1202                      ],
1203                      "loc": {
1204                        "start": {
1205                          "line": 34,
1206                          "column": 5
1207                        },
1208                        "end": {
1209                          "line": 40,
1210                          "column": 6
1211                        }
1212                      }
1213                    }
1214                  ],
1215                  "loc": {
1216                    "start": {
1217                      "line": 32,
1218                      "column": 17
1219                    },
1220                    "end": {
1221                      "line": 41,
1222                      "column": 2
1223                    }
1224                  }
1225                },
1226                "loc": {
1227                  "start": {
1228                    "line": 32,
1229                    "column": 14
1230                  },
1231                  "end": {
1232                    "line": 41,
1233                    "column": 2
1234                  }
1235                }
1236              },
1237              "loc": {
1238                "start": {
1239                  "line": 32,
1240                  "column": 14
1241                },
1242                "end": {
1243                  "line": 41,
1244                  "column": 2
1245                }
1246              }
1247            },
1248            "overloads": [],
1249            "decorators": [],
1250            "loc": {
1251              "start": {
1252                "line": 32,
1253                "column": 1
1254              },
1255              "end": {
1256                "line": 41,
1257                "column": 2
1258              }
1259            }
1260          }
1261        ],
1262        "loc": {
1263          "start": {
1264            "line": 1,
1265            "column": 1
1266          },
1267          "end": {
1268            "line": 1,
1269            "column": 1
1270          }
1271        }
1272      },
1273      "loc": {
1274        "start": {
1275          "line": 1,
1276          "column": 1
1277        },
1278        "end": {
1279          "line": 1,
1280          "column": 1
1281        }
1282      }
1283    },
1284    {
1285      "type": "ClassDeclaration",
1286      "definition": {
1287        "id": {
1288          "type": "Identifier",
1289          "name": "#A",
1290          "decorators": [],
1291          "loc": {
1292            "start": {
1293              "line": 1,
1294              "column": 1
1295            },
1296            "end": {
1297              "line": 1,
1298              "column": 1
1299            }
1300          }
1301        },
1302        "superClass": null,
1303        "implements": [],
1304        "body": [
1305          {
1306            "type": "ClassProperty",
1307            "key": {
1308              "type": "Identifier",
1309              "name": "ordinal",
1310              "decorators": [],
1311              "loc": {
1312                "start": {
1313                  "line": 1,
1314                  "column": 1
1315                },
1316                "end": {
1317                  "line": 1,
1318                  "column": 1
1319                }
1320              }
1321            },
1322            "accessibility": "protected",
1323            "static": false,
1324            "readonly": false,
1325            "declare": false,
1326            "optional": false,
1327            "computed": false,
1328            "typeAnnotation": {
1329              "type": "ETSPrimitiveType",
1330              "loc": {
1331                "start": {
1332                  "line": 1,
1333                  "column": 1
1334                },
1335                "end": {
1336                  "line": 1,
1337                  "column": 1
1338                }
1339              }
1340            },
1341            "definite": false,
1342            "decorators": [],
1343            "loc": {
1344              "start": {
1345                "line": 1,
1346                "column": 1
1347              },
1348              "end": {
1349                "line": 1,
1350                "column": 1
1351              }
1352            }
1353          },
1354          {
1355            "type": "MethodDefinition",
1356            "key": {
1357              "type": "Identifier",
1358              "name": "<cctor>",
1359              "decorators": [],
1360              "loc": {
1361                "start": {
1362                  "line": 1,
1363                  "column": 1
1364                },
1365                "end": {
1366                  "line": 1,
1367                  "column": 1
1368                }
1369              }
1370            },
1371            "kind": "method",
1372            "accessibility": "public",
1373            "static": true,
1374            "optional": false,
1375            "computed": false,
1376            "value": {
1377              "type": "FunctionExpression",
1378              "function": {
1379                "type": "ScriptFunction",
1380                "id": {
1381                  "type": "Identifier",
1382                  "name": "<cctor>",
1383                  "decorators": [],
1384                  "loc": {
1385                    "start": {
1386                      "line": 1,
1387                      "column": 1
1388                    },
1389                    "end": {
1390                      "line": 1,
1391                      "column": 1
1392                    }
1393                  }
1394                },
1395                "generator": false,
1396                "async": false,
1397                "expression": false,
1398                "params": [],
1399                "body": {
1400                  "type": "BlockStatement",
1401                  "statements": [],
1402                  "loc": {
1403                    "start": {
1404                      "line": 1,
1405                      "column": 1
1406                    },
1407                    "end": {
1408                      "line": 1,
1409                      "column": 1
1410                    }
1411                  }
1412                },
1413                "loc": {
1414                  "start": {
1415                    "line": 1,
1416                    "column": 1
1417                  },
1418                  "end": {
1419                    "line": 1,
1420                    "column": 1
1421                  }
1422                }
1423              },
1424              "loc": {
1425                "start": {
1426                  "line": 1,
1427                  "column": 1
1428                },
1429                "end": {
1430                  "line": 1,
1431                  "column": 1
1432                }
1433              }
1434            },
1435            "overloads": [],
1436            "decorators": [],
1437            "loc": {
1438              "start": {
1439                "line": 1,
1440                "column": 1
1441              },
1442              "end": {
1443                "line": 1,
1444                "column": 1
1445              }
1446            }
1447          },
1448          {
1449            "type": "MethodDefinition",
1450            "key": {
1451              "type": "Identifier",
1452              "name": "constructor",
1453              "decorators": [],
1454              "loc": {
1455                "start": {
1456                  "line": 1,
1457                  "column": 1
1458                },
1459                "end": {
1460                  "line": 1,
1461                  "column": 1
1462                }
1463              }
1464            },
1465            "kind": "constructor",
1466            "accessibility": "public",
1467            "static": false,
1468            "optional": false,
1469            "computed": false,
1470            "value": {
1471              "type": "FunctionExpression",
1472              "function": {
1473                "type": "ScriptFunction",
1474                "id": {
1475                  "type": "Identifier",
1476                  "name": "constructor",
1477                  "decorators": [],
1478                  "loc": {
1479                    "start": {
1480                      "line": 1,
1481                      "column": 1
1482                    },
1483                    "end": {
1484                      "line": 1,
1485                      "column": 1
1486                    }
1487                  }
1488                },
1489                "generator": false,
1490                "async": false,
1491                "expression": false,
1492                "params": [
1493                  {
1494                    "type": "ETSParameterExpression",
1495                    "name": {
1496                      "type": "Identifier",
1497                      "name": "ordinal",
1498                      "typeAnnotation": {
1499                        "type": "ETSPrimitiveType",
1500                        "loc": {
1501                          "start": {
1502                            "line": 1,
1503                            "column": 1
1504                          },
1505                          "end": {
1506                            "line": 1,
1507                            "column": 1
1508                          }
1509                        }
1510                      },
1511                      "decorators": [],
1512                      "loc": {
1513                        "start": {
1514                          "line": 1,
1515                          "column": 1
1516                        },
1517                        "end": {
1518                          "line": 1,
1519                          "column": 1
1520                        }
1521                      }
1522                    },
1523                    "loc": {
1524                      "start": {
1525                        "line": 1,
1526                        "column": 1
1527                      },
1528                      "end": {
1529                        "line": 1,
1530                        "column": 1
1531                      }
1532                    }
1533                  }
1534                ],
1535                "body": {
1536                  "type": "BlockStatement",
1537                  "statements": [
1538                    {
1539                      "type": "ExpressionStatement",
1540                      "expression": {
1541                        "type": "AssignmentExpression",
1542                        "operator": "=",
1543                        "left": {
1544                          "type": "MemberExpression",
1545                          "object": {
1546                            "type": "ThisExpression",
1547                            "loc": {
1548                              "start": {
1549                                "line": 1,
1550                                "column": 1
1551                              },
1552                              "end": {
1553                                "line": 1,
1554                                "column": 1
1555                              }
1556                            }
1557                          },
1558                          "property": {
1559                            "type": "Identifier",
1560                            "name": "ordinal",
1561                            "decorators": [],
1562                            "loc": {
1563                              "start": {
1564                                "line": 1,
1565                                "column": 1
1566                              },
1567                              "end": {
1568                                "line": 1,
1569                                "column": 1
1570                              }
1571                            }
1572                          },
1573                          "computed": false,
1574                          "optional": false,
1575                          "loc": {
1576                            "start": {
1577                              "line": 1,
1578                              "column": 1
1579                            },
1580                            "end": {
1581                              "line": 1,
1582                              "column": 1
1583                            }
1584                          }
1585                        },
1586                        "right": {
1587                          "type": "Identifier",
1588                          "name": "ordinal",
1589                          "decorators": [],
1590                          "loc": {
1591                            "start": {
1592                              "line": 1,
1593                              "column": 1
1594                            },
1595                            "end": {
1596                              "line": 1,
1597                              "column": 1
1598                            }
1599                          }
1600                        },
1601                        "loc": {
1602                          "start": {
1603                            "line": 1,
1604                            "column": 1
1605                          },
1606                          "end": {
1607                            "line": 1,
1608                            "column": 1
1609                          }
1610                        }
1611                      },
1612                      "loc": {
1613                        "start": {
1614                          "line": 1,
1615                          "column": 1
1616                        },
1617                        "end": {
1618                          "line": 1,
1619                          "column": 1
1620                        }
1621                      }
1622                    }
1623                  ],
1624                  "loc": {
1625                    "start": {
1626                      "line": 1,
1627                      "column": 1
1628                    },
1629                    "end": {
1630                      "line": 1,
1631                      "column": 1
1632                    }
1633                  }
1634                },
1635                "loc": {
1636                  "start": {
1637                    "line": 1,
1638                    "column": 1
1639                  },
1640                  "end": {
1641                    "line": 1,
1642                    "column": 1
1643                  }
1644                }
1645              },
1646              "loc": {
1647                "start": {
1648                  "line": 1,
1649                  "column": 1
1650                },
1651                "end": {
1652                  "line": 1,
1653                  "column": 1
1654                }
1655              }
1656            },
1657            "overloads": [],
1658            "decorators": [],
1659            "loc": {
1660              "start": {
1661                "line": 1,
1662                "column": 1
1663              },
1664              "end": {
1665                "line": 1,
1666                "column": 1
1667              }
1668            }
1669          },
1670          {
1671            "type": "ClassProperty",
1672            "key": {
1673              "type": "Identifier",
1674              "name": "NamesArray",
1675              "decorators": [],
1676              "loc": {
1677                "start": {
1678                  "line": 1,
1679                  "column": 1
1680                },
1681                "end": {
1682                  "line": 1,
1683                  "column": 1
1684                }
1685              }
1686            },
1687            "value": {
1688              "type": "ArrayExpression",
1689              "elements": [
1690                {
1691                  "type": "StringLiteral",
1692                  "value": "B",
1693                  "loc": {
1694                    "start": {
1695                      "line": 1,
1696                      "column": 1
1697                    },
1698                    "end": {
1699                      "line": 1,
1700                      "column": 1
1701                    }
1702                  }
1703                },
1704                {
1705                  "type": "StringLiteral",
1706                  "value": "C",
1707                  "loc": {
1708                    "start": {
1709                      "line": 1,
1710                      "column": 1
1711                    },
1712                    "end": {
1713                      "line": 1,
1714                      "column": 1
1715                    }
1716                  }
1717                },
1718                {
1719                  "type": "StringLiteral",
1720                  "value": "D",
1721                  "loc": {
1722                    "start": {
1723                      "line": 1,
1724                      "column": 1
1725                    },
1726                    "end": {
1727                      "line": 1,
1728                      "column": 1
1729                    }
1730                  }
1731                }
1732              ],
1733              "loc": {
1734                "start": {
1735                  "line": 1,
1736                  "column": 1
1737                },
1738                "end": {
1739                  "line": 1,
1740                  "column": 1
1741                }
1742              }
1743            },
1744            "accessibility": "protected",
1745            "static": true,
1746            "readonly": false,
1747            "declare": false,
1748            "optional": false,
1749            "computed": false,
1750            "typeAnnotation": {
1751              "type": "TSArrayType",
1752              "elementType": {
1753                "type": "ETSTypeReference",
1754                "part": {
1755                  "type": "ETSTypeReferencePart",
1756                  "name": {
1757                    "type": "Identifier",
1758                    "name": "String",
1759                    "decorators": [],
1760                    "loc": {
1761                      "start": {
1762                        "line": 1,
1763                        "column": 1
1764                      },
1765                      "end": {
1766                        "line": 1,
1767                        "column": 1
1768                      }
1769                    }
1770                  },
1771                  "loc": {
1772                    "start": {
1773                      "line": 1,
1774                      "column": 1
1775                    },
1776                    "end": {
1777                      "line": 1,
1778                      "column": 1
1779                    }
1780                  }
1781                },
1782                "loc": {
1783                  "start": {
1784                    "line": 1,
1785                    "column": 1
1786                  },
1787                  "end": {
1788                    "line": 1,
1789                    "column": 1
1790                  }
1791                }
1792              },
1793              "loc": {
1794                "start": {
1795                  "line": 1,
1796                  "column": 1
1797                },
1798                "end": {
1799                  "line": 1,
1800                  "column": 1
1801                }
1802              }
1803            },
1804            "definite": false,
1805            "decorators": [],
1806            "loc": {
1807              "start": {
1808                "line": 1,
1809                "column": 1
1810              },
1811              "end": {
1812                "line": 1,
1813                "column": 1
1814              }
1815            }
1816          },
1817          {
1818            "type": "ClassProperty",
1819            "key": {
1820              "type": "Identifier",
1821              "name": "ValuesArray",
1822              "decorators": [],
1823              "loc": {
1824                "start": {
1825                  "line": 1,
1826                  "column": 1
1827                },
1828                "end": {
1829                  "line": 1,
1830                  "column": 1
1831                }
1832              }
1833            },
1834            "value": {
1835              "type": "ArrayExpression",
1836              "elements": [
1837                {
1838                  "type": "NumberLiteral",
1839                  "value": 0,
1840                  "loc": {
1841                    "start": {
1842                      "line": 1,
1843                      "column": 1
1844                    },
1845                    "end": {
1846                      "line": 1,
1847                      "column": 1
1848                    }
1849                  }
1850                },
1851                {
1852                  "type": "NumberLiteral",
1853                  "value": 1,
1854                  "loc": {
1855                    "start": {
1856                      "line": 1,
1857                      "column": 1
1858                    },
1859                    "end": {
1860                      "line": 1,
1861                      "column": 1
1862                    }
1863                  }
1864                },
1865                {
1866                  "type": "NumberLiteral",
1867                  "value": 2,
1868                  "loc": {
1869                    "start": {
1870                      "line": 1,
1871                      "column": 1
1872                    },
1873                    "end": {
1874                      "line": 1,
1875                      "column": 1
1876                    }
1877                  }
1878                }
1879              ],
1880              "loc": {
1881                "start": {
1882                  "line": 1,
1883                  "column": 1
1884                },
1885                "end": {
1886                  "line": 1,
1887                  "column": 1
1888                }
1889              }
1890            },
1891            "accessibility": "protected",
1892            "static": true,
1893            "readonly": false,
1894            "declare": false,
1895            "optional": false,
1896            "computed": false,
1897            "typeAnnotation": {
1898              "type": "TSArrayType",
1899              "elementType": {
1900                "type": "ETSPrimitiveType",
1901                "loc": {
1902                  "start": {
1903                    "line": 1,
1904                    "column": 1
1905                  },
1906                  "end": {
1907                    "line": 1,
1908                    "column": 1
1909                  }
1910                }
1911              },
1912              "loc": {
1913                "start": {
1914                  "line": 1,
1915                  "column": 1
1916                },
1917                "end": {
1918                  "line": 1,
1919                  "column": 1
1920                }
1921              }
1922            },
1923            "definite": false,
1924            "decorators": [],
1925            "loc": {
1926              "start": {
1927                "line": 1,
1928                "column": 1
1929              },
1930              "end": {
1931                "line": 1,
1932                "column": 1
1933              }
1934            }
1935          },
1936          {
1937            "type": "ClassProperty",
1938            "key": {
1939              "type": "Identifier",
1940              "name": "StringValuesArray",
1941              "decorators": [],
1942              "loc": {
1943                "start": {
1944                  "line": 1,
1945                  "column": 1
1946                },
1947                "end": {
1948                  "line": 1,
1949                  "column": 1
1950                }
1951              }
1952            },
1953            "value": {
1954              "type": "ArrayExpression",
1955              "elements": [
1956                {
1957                  "type": "StringLiteral",
1958                  "value": "0",
1959                  "loc": {
1960                    "start": {
1961                      "line": 1,
1962                      "column": 1
1963                    },
1964                    "end": {
1965                      "line": 1,
1966                      "column": 1
1967                    }
1968                  }
1969                },
1970                {
1971                  "type": "StringLiteral",
1972                  "value": "1",
1973                  "loc": {
1974                    "start": {
1975                      "line": 1,
1976                      "column": 1
1977                    },
1978                    "end": {
1979                      "line": 1,
1980                      "column": 1
1981                    }
1982                  }
1983                },
1984                {
1985                  "type": "StringLiteral",
1986                  "value": "2",
1987                  "loc": {
1988                    "start": {
1989                      "line": 1,
1990                      "column": 1
1991                    },
1992                    "end": {
1993                      "line": 1,
1994                      "column": 1
1995                    }
1996                  }
1997                }
1998              ],
1999              "loc": {
2000                "start": {
2001                  "line": 1,
2002                  "column": 1
2003                },
2004                "end": {
2005                  "line": 1,
2006                  "column": 1
2007                }
2008              }
2009            },
2010            "accessibility": "protected",
2011            "static": true,
2012            "readonly": false,
2013            "declare": false,
2014            "optional": false,
2015            "computed": false,
2016            "typeAnnotation": {
2017              "type": "TSArrayType",
2018              "elementType": {
2019                "type": "ETSTypeReference",
2020                "part": {
2021                  "type": "ETSTypeReferencePart",
2022                  "name": {
2023                    "type": "Identifier",
2024                    "name": "String",
2025                    "decorators": [],
2026                    "loc": {
2027                      "start": {
2028                        "line": 1,
2029                        "column": 1
2030                      },
2031                      "end": {
2032                        "line": 1,
2033                        "column": 1
2034                      }
2035                    }
2036                  },
2037                  "loc": {
2038                    "start": {
2039                      "line": 1,
2040                      "column": 1
2041                    },
2042                    "end": {
2043                      "line": 1,
2044                      "column": 1
2045                    }
2046                  }
2047                },
2048                "loc": {
2049                  "start": {
2050                    "line": 1,
2051                    "column": 1
2052                  },
2053                  "end": {
2054                    "line": 1,
2055                    "column": 1
2056                  }
2057                }
2058              },
2059              "loc": {
2060                "start": {
2061                  "line": 1,
2062                  "column": 1
2063                },
2064                "end": {
2065                  "line": 1,
2066                  "column": 1
2067                }
2068              }
2069            },
2070            "definite": false,
2071            "decorators": [],
2072            "loc": {
2073              "start": {
2074                "line": 1,
2075                "column": 1
2076              },
2077              "end": {
2078                "line": 1,
2079                "column": 1
2080              }
2081            }
2082          },
2083          {
2084            "type": "ClassProperty",
2085            "key": {
2086              "type": "Identifier",
2087              "name": "ItemsArray",
2088              "decorators": [],
2089              "loc": {
2090                "start": {
2091                  "line": 1,
2092                  "column": 1
2093                },
2094                "end": {
2095                  "line": 1,
2096                  "column": 1
2097                }
2098              }
2099            },
2100            "value": {
2101              "type": "ArrayExpression",
2102              "elements": [
2103                {
2104                  "type": "MemberExpression",
2105                  "object": {
2106                    "type": "Identifier",
2107                    "name": "A",
2108                    "decorators": [],
2109                    "loc": {
2110                      "start": {
2111                        "line": 1,
2112                        "column": 1
2113                      },
2114                      "end": {
2115                        "line": 1,
2116                        "column": 1
2117                      }
2118                    }
2119                  },
2120                  "property": {
2121                    "type": "Identifier",
2122                    "name": "B",
2123                    "decorators": [],
2124                    "loc": {
2125                      "start": {
2126                        "line": 1,
2127                        "column": 1
2128                      },
2129                      "end": {
2130                        "line": 1,
2131                        "column": 1
2132                      }
2133                    }
2134                  },
2135                  "computed": false,
2136                  "optional": false,
2137                  "loc": {
2138                    "start": {
2139                      "line": 1,
2140                      "column": 1
2141                    },
2142                    "end": {
2143                      "line": 1,
2144                      "column": 1
2145                    }
2146                  }
2147                },
2148                {
2149                  "type": "MemberExpression",
2150                  "object": {
2151                    "type": "Identifier",
2152                    "name": "A",
2153                    "decorators": [],
2154                    "loc": {
2155                      "start": {
2156                        "line": 1,
2157                        "column": 1
2158                      },
2159                      "end": {
2160                        "line": 1,
2161                        "column": 1
2162                      }
2163                    }
2164                  },
2165                  "property": {
2166                    "type": "Identifier",
2167                    "name": "C",
2168                    "decorators": [],
2169                    "loc": {
2170                      "start": {
2171                        "line": 1,
2172                        "column": 1
2173                      },
2174                      "end": {
2175                        "line": 1,
2176                        "column": 1
2177                      }
2178                    }
2179                  },
2180                  "computed": false,
2181                  "optional": false,
2182                  "loc": {
2183                    "start": {
2184                      "line": 1,
2185                      "column": 1
2186                    },
2187                    "end": {
2188                      "line": 1,
2189                      "column": 1
2190                    }
2191                  }
2192                },
2193                {
2194                  "type": "MemberExpression",
2195                  "object": {
2196                    "type": "Identifier",
2197                    "name": "A",
2198                    "decorators": [],
2199                    "loc": {
2200                      "start": {
2201                        "line": 1,
2202                        "column": 1
2203                      },
2204                      "end": {
2205                        "line": 1,
2206                        "column": 1
2207                      }
2208                    }
2209                  },
2210                  "property": {
2211                    "type": "Identifier",
2212                    "name": "D",
2213                    "decorators": [],
2214                    "loc": {
2215                      "start": {
2216                        "line": 1,
2217                        "column": 1
2218                      },
2219                      "end": {
2220                        "line": 1,
2221                        "column": 1
2222                      }
2223                    }
2224                  },
2225                  "computed": false,
2226                  "optional": false,
2227                  "loc": {
2228                    "start": {
2229                      "line": 1,
2230                      "column": 1
2231                    },
2232                    "end": {
2233                      "line": 1,
2234                      "column": 1
2235                    }
2236                  }
2237                }
2238              ],
2239              "loc": {
2240                "start": {
2241                  "line": 1,
2242                  "column": 1
2243                },
2244                "end": {
2245                  "line": 1,
2246                  "column": 1
2247                }
2248              }
2249            },
2250            "accessibility": "protected",
2251            "static": true,
2252            "readonly": false,
2253            "declare": false,
2254            "optional": false,
2255            "computed": false,
2256            "typeAnnotation": {
2257              "type": "TSArrayType",
2258              "elementType": {
2259                "type": "ETSTypeReference",
2260                "part": {
2261                  "type": "ETSTypeReferencePart",
2262                  "name": {
2263                    "type": "Identifier",
2264                    "name": "A",
2265                    "decorators": [],
2266                    "loc": {
2267                      "start": {
2268                        "line": 1,
2269                        "column": 1
2270                      },
2271                      "end": {
2272                        "line": 1,
2273                        "column": 1
2274                      }
2275                    }
2276                  },
2277                  "loc": {
2278                    "start": {
2279                      "line": 1,
2280                      "column": 1
2281                    },
2282                    "end": {
2283                      "line": 1,
2284                      "column": 1
2285                    }
2286                  }
2287                },
2288                "loc": {
2289                  "start": {
2290                    "line": 1,
2291                    "column": 1
2292                  },
2293                  "end": {
2294                    "line": 1,
2295                    "column": 1
2296                  }
2297                }
2298              },
2299              "loc": {
2300                "start": {
2301                  "line": 1,
2302                  "column": 1
2303                },
2304                "end": {
2305                  "line": 1,
2306                  "column": 1
2307                }
2308              }
2309            },
2310            "definite": false,
2311            "decorators": [],
2312            "loc": {
2313              "start": {
2314                "line": 1,
2315                "column": 1
2316              },
2317              "end": {
2318                "line": 1,
2319                "column": 1
2320              }
2321            }
2322          },
2323          {
2324            "type": "ClassProperty",
2325            "key": {
2326              "type": "Identifier",
2327              "name": "BoxedItemsArray",
2328              "decorators": [],
2329              "loc": {
2330                "start": {
2331                  "line": 1,
2332                  "column": 1
2333                },
2334                "end": {
2335                  "line": 1,
2336                  "column": 1
2337                }
2338              }
2339            },
2340            "value": {
2341              "type": "ArrayExpression",
2342              "elements": [
2343                {
2344                  "type": "ETSNewClassInstanceExpression",
2345                  "typeReference": {
2346                    "type": "ETSTypeReference",
2347                    "part": {
2348                      "type": "ETSTypeReferencePart",
2349                      "name": {
2350                        "type": "Identifier",
2351                        "name": "#A",
2352                        "decorators": [],
2353                        "loc": {
2354                          "start": {
2355                            "line": 1,
2356                            "column": 1
2357                          },
2358                          "end": {
2359                            "line": 1,
2360                            "column": 1
2361                          }
2362                        }
2363                      },
2364                      "loc": {
2365                        "start": {
2366                          "line": 1,
2367                          "column": 1
2368                        },
2369                        "end": {
2370                          "line": 1,
2371                          "column": 1
2372                        }
2373                      }
2374                    },
2375                    "loc": {
2376                      "start": {
2377                        "line": 1,
2378                        "column": 1
2379                      },
2380                      "end": {
2381                        "line": 1,
2382                        "column": 1
2383                      }
2384                    }
2385                  },
2386                  "arguments": [
2387                    {
2388                      "type": "TSAsExpression",
2389                      "expression": {
2390                        "type": "MemberExpression",
2391                        "object": {
2392                          "type": "Identifier",
2393                          "name": "A",
2394                          "decorators": [],
2395                          "loc": {
2396                            "start": {
2397                              "line": 1,
2398                              "column": 1
2399                            },
2400                            "end": {
2401                              "line": 1,
2402                              "column": 1
2403                            }
2404                          }
2405                        },
2406                        "property": {
2407                          "type": "Identifier",
2408                          "name": "B",
2409                          "decorators": [],
2410                          "loc": {
2411                            "start": {
2412                              "line": 1,
2413                              "column": 1
2414                            },
2415                            "end": {
2416                              "line": 1,
2417                              "column": 1
2418                            }
2419                          }
2420                        },
2421                        "computed": false,
2422                        "optional": false,
2423                        "loc": {
2424                          "start": {
2425                            "line": 1,
2426                            "column": 1
2427                          },
2428                          "end": {
2429                            "line": 1,
2430                            "column": 1
2431                          }
2432                        }
2433                      },
2434                      "typeAnnotation": {
2435                        "type": "ETSPrimitiveType",
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                  ],
2459                  "loc": {
2460                    "start": {
2461                      "line": 1,
2462                      "column": 1
2463                    },
2464                    "end": {
2465                      "line": 1,
2466                      "column": 1
2467                    }
2468                  }
2469                },
2470                {
2471                  "type": "ETSNewClassInstanceExpression",
2472                  "typeReference": {
2473                    "type": "ETSTypeReference",
2474                    "part": {
2475                      "type": "ETSTypeReferencePart",
2476                      "name": {
2477                        "type": "Identifier",
2478                        "name": "#A",
2479                        "decorators": [],
2480                        "loc": {
2481                          "start": {
2482                            "line": 1,
2483                            "column": 1
2484                          },
2485                          "end": {
2486                            "line": 1,
2487                            "column": 1
2488                          }
2489                        }
2490                      },
2491                      "loc": {
2492                        "start": {
2493                          "line": 1,
2494                          "column": 1
2495                        },
2496                        "end": {
2497                          "line": 1,
2498                          "column": 1
2499                        }
2500                      }
2501                    },
2502                    "loc": {
2503                      "start": {
2504                        "line": 1,
2505                        "column": 1
2506                      },
2507                      "end": {
2508                        "line": 1,
2509                        "column": 1
2510                      }
2511                    }
2512                  },
2513                  "arguments": [
2514                    {
2515                      "type": "TSAsExpression",
2516                      "expression": {
2517                        "type": "MemberExpression",
2518                        "object": {
2519                          "type": "Identifier",
2520                          "name": "A",
2521                          "decorators": [],
2522                          "loc": {
2523                            "start": {
2524                              "line": 1,
2525                              "column": 1
2526                            },
2527                            "end": {
2528                              "line": 1,
2529                              "column": 1
2530                            }
2531                          }
2532                        },
2533                        "property": {
2534                          "type": "Identifier",
2535                          "name": "C",
2536                          "decorators": [],
2537                          "loc": {
2538                            "start": {
2539                              "line": 1,
2540                              "column": 1
2541                            },
2542                            "end": {
2543                              "line": 1,
2544                              "column": 1
2545                            }
2546                          }
2547                        },
2548                        "computed": false,
2549                        "optional": false,
2550                        "loc": {
2551                          "start": {
2552                            "line": 1,
2553                            "column": 1
2554                          },
2555                          "end": {
2556                            "line": 1,
2557                            "column": 1
2558                          }
2559                        }
2560                      },
2561                      "typeAnnotation": {
2562                        "type": "ETSPrimitiveType",
2563                        "loc": {
2564                          "start": {
2565                            "line": 1,
2566                            "column": 1
2567                          },
2568                          "end": {
2569                            "line": 1,
2570                            "column": 1
2571                          }
2572                        }
2573                      },
2574                      "loc": {
2575                        "start": {
2576                          "line": 1,
2577                          "column": 1
2578                        },
2579                        "end": {
2580                          "line": 1,
2581                          "column": 1
2582                        }
2583                      }
2584                    }
2585                  ],
2586                  "loc": {
2587                    "start": {
2588                      "line": 1,
2589                      "column": 1
2590                    },
2591                    "end": {
2592                      "line": 1,
2593                      "column": 1
2594                    }
2595                  }
2596                },
2597                {
2598                  "type": "ETSNewClassInstanceExpression",
2599                  "typeReference": {
2600                    "type": "ETSTypeReference",
2601                    "part": {
2602                      "type": "ETSTypeReferencePart",
2603                      "name": {
2604                        "type": "Identifier",
2605                        "name": "#A",
2606                        "decorators": [],
2607                        "loc": {
2608                          "start": {
2609                            "line": 1,
2610                            "column": 1
2611                          },
2612                          "end": {
2613                            "line": 1,
2614                            "column": 1
2615                          }
2616                        }
2617                      },
2618                      "loc": {
2619                        "start": {
2620                          "line": 1,
2621                          "column": 1
2622                        },
2623                        "end": {
2624                          "line": 1,
2625                          "column": 1
2626                        }
2627                      }
2628                    },
2629                    "loc": {
2630                      "start": {
2631                        "line": 1,
2632                        "column": 1
2633                      },
2634                      "end": {
2635                        "line": 1,
2636                        "column": 1
2637                      }
2638                    }
2639                  },
2640                  "arguments": [
2641                    {
2642                      "type": "TSAsExpression",
2643                      "expression": {
2644                        "type": "MemberExpression",
2645                        "object": {
2646                          "type": "Identifier",
2647                          "name": "A",
2648                          "decorators": [],
2649                          "loc": {
2650                            "start": {
2651                              "line": 1,
2652                              "column": 1
2653                            },
2654                            "end": {
2655                              "line": 1,
2656                              "column": 1
2657                            }
2658                          }
2659                        },
2660                        "property": {
2661                          "type": "Identifier",
2662                          "name": "D",
2663                          "decorators": [],
2664                          "loc": {
2665                            "start": {
2666                              "line": 1,
2667                              "column": 1
2668                            },
2669                            "end": {
2670                              "line": 1,
2671                              "column": 1
2672                            }
2673                          }
2674                        },
2675                        "computed": false,
2676                        "optional": false,
2677                        "loc": {
2678                          "start": {
2679                            "line": 1,
2680                            "column": 1
2681                          },
2682                          "end": {
2683                            "line": 1,
2684                            "column": 1
2685                          }
2686                        }
2687                      },
2688                      "typeAnnotation": {
2689                        "type": "ETSPrimitiveType",
2690                        "loc": {
2691                          "start": {
2692                            "line": 1,
2693                            "column": 1
2694                          },
2695                          "end": {
2696                            "line": 1,
2697                            "column": 1
2698                          }
2699                        }
2700                      },
2701                      "loc": {
2702                        "start": {
2703                          "line": 1,
2704                          "column": 1
2705                        },
2706                        "end": {
2707                          "line": 1,
2708                          "column": 1
2709                        }
2710                      }
2711                    }
2712                  ],
2713                  "loc": {
2714                    "start": {
2715                      "line": 1,
2716                      "column": 1
2717                    },
2718                    "end": {
2719                      "line": 1,
2720                      "column": 1
2721                    }
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            "accessibility": "protected",
2737            "static": true,
2738            "readonly": false,
2739            "declare": false,
2740            "optional": false,
2741            "computed": false,
2742            "typeAnnotation": {
2743              "type": "TSArrayType",
2744              "elementType": {
2745                "type": "ETSTypeReference",
2746                "part": {
2747                  "type": "ETSTypeReferencePart",
2748                  "name": {
2749                    "type": "Identifier",
2750                    "name": "#A",
2751                    "decorators": [],
2752                    "loc": {
2753                      "start": {
2754                        "line": 1,
2755                        "column": 1
2756                      },
2757                      "end": {
2758                        "line": 1,
2759                        "column": 1
2760                      }
2761                    }
2762                  },
2763                  "loc": {
2764                    "start": {
2765                      "line": 1,
2766                      "column": 1
2767                    },
2768                    "end": {
2769                      "line": 1,
2770                      "column": 1
2771                    }
2772                  }
2773                },
2774                "loc": {
2775                  "start": {
2776                    "line": 1,
2777                    "column": 1
2778                  },
2779                  "end": {
2780                    "line": 1,
2781                    "column": 1
2782                  }
2783                }
2784              },
2785              "loc": {
2786                "start": {
2787                  "line": 1,
2788                  "column": 1
2789                },
2790                "end": {
2791                  "line": 1,
2792                  "column": 1
2793                }
2794              }
2795            },
2796            "definite": false,
2797            "decorators": [],
2798            "loc": {
2799              "start": {
2800                "line": 1,
2801                "column": 1
2802              },
2803              "end": {
2804                "line": 1,
2805                "column": 1
2806              }
2807            }
2808          },
2809          {
2810            "type": "MethodDefinition",
2811            "key": {
2812              "type": "Identifier",
2813              "name": "getName",
2814              "decorators": [],
2815              "loc": {
2816                "start": {
2817                  "line": 1,
2818                  "column": 1
2819                },
2820                "end": {
2821                  "line": 1,
2822                  "column": 1
2823                }
2824              }
2825            },
2826            "kind": "method",
2827            "accessibility": "public",
2828            "static": true,
2829            "optional": false,
2830            "computed": false,
2831            "value": {
2832              "type": "FunctionExpression",
2833              "function": {
2834                "type": "ScriptFunction",
2835                "id": {
2836                  "type": "Identifier",
2837                  "name": "getName",
2838                  "decorators": [],
2839                  "loc": {
2840                    "start": {
2841                      "line": 1,
2842                      "column": 1
2843                    },
2844                    "end": {
2845                      "line": 1,
2846                      "column": 1
2847                    }
2848                  }
2849                },
2850                "generator": false,
2851                "async": false,
2852                "expression": false,
2853                "params": [
2854                  {
2855                    "type": "ETSParameterExpression",
2856                    "name": {
2857                      "type": "Identifier",
2858                      "name": "ordinal",
2859                      "typeAnnotation": {
2860                        "type": "ETSTypeReference",
2861                        "part": {
2862                          "type": "ETSTypeReferencePart",
2863                          "name": {
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                          "loc": {
2879                            "start": {
2880                              "line": 1,
2881                              "column": 1
2882                            },
2883                            "end": {
2884                              "line": 1,
2885                              "column": 1
2886                            }
2887                          }
2888                        },
2889                        "loc": {
2890                          "start": {
2891                            "line": 1,
2892                            "column": 1
2893                          },
2894                          "end": {
2895                            "line": 1,
2896                            "column": 1
2897                          }
2898                        }
2899                      },
2900                      "decorators": [],
2901                      "loc": {
2902                        "start": {
2903                          "line": 1,
2904                          "column": 1
2905                        },
2906                        "end": {
2907                          "line": 1,
2908                          "column": 1
2909                        }
2910                      }
2911                    },
2912                    "loc": {
2913                      "start": {
2914                        "line": 1,
2915                        "column": 1
2916                      },
2917                      "end": {
2918                        "line": 1,
2919                        "column": 1
2920                      }
2921                    }
2922                  }
2923                ],
2924                "returnType": {
2925                  "type": "ETSTypeReference",
2926                  "part": {
2927                    "type": "ETSTypeReferencePart",
2928                    "name": {
2929                      "type": "Identifier",
2930                      "name": "String",
2931                      "decorators": [],
2932                      "loc": {
2933                        "start": {
2934                          "line": 1,
2935                          "column": 1
2936                        },
2937                        "end": {
2938                          "line": 1,
2939                          "column": 1
2940                        }
2941                      }
2942                    },
2943                    "loc": {
2944                      "start": {
2945                        "line": 1,
2946                        "column": 1
2947                      },
2948                      "end": {
2949                        "line": 1,
2950                        "column": 1
2951                      }
2952                    }
2953                  },
2954                  "loc": {
2955                    "start": {
2956                      "line": 1,
2957                      "column": 1
2958                    },
2959                    "end": {
2960                      "line": 1,
2961                      "column": 1
2962                    }
2963                  }
2964                },
2965                "body": {
2966                  "type": "BlockStatement",
2967                  "statements": [
2968                    {
2969                      "type": "ReturnStatement",
2970                      "argument": {
2971                        "type": "MemberExpression",
2972                        "object": {
2973                          "type": "Identifier",
2974                          "name": "NamesArray",
2975                          "decorators": [],
2976                          "loc": {
2977                            "start": {
2978                              "line": 1,
2979                              "column": 1
2980                            },
2981                            "end": {
2982                              "line": 1,
2983                              "column": 1
2984                            }
2985                          }
2986                        },
2987                        "property": {
2988                          "type": "TSAsExpression",
2989                          "expression": {
2990                            "type": "Identifier",
2991                            "name": "ordinal",
2992                            "decorators": [],
2993                            "loc": {
2994                              "start": {
2995                                "line": 1,
2996                                "column": 1
2997                              },
2998                              "end": {
2999                                "line": 1,
3000                                "column": 1
3001                              }
3002                            }
3003                          },
3004                          "typeAnnotation": {
3005                            "type": "ETSPrimitiveType",
3006                            "loc": {
3007                              "start": {
3008                                "line": 1,
3009                                "column": 1
3010                              },
3011                              "end": {
3012                                "line": 1,
3013                                "column": 1
3014                              }
3015                            }
3016                          },
3017                          "loc": {
3018                            "start": {
3019                              "line": 1,
3020                              "column": 1
3021                            },
3022                            "end": {
3023                              "line": 1,
3024                              "column": 1
3025                            }
3026                          }
3027                        },
3028                        "computed": true,
3029                        "optional": false,
3030                        "loc": {
3031                          "start": {
3032                            "line": 1,
3033                            "column": 1
3034                          },
3035                          "end": {
3036                            "line": 1,
3037                            "column": 1
3038                          }
3039                        }
3040                      },
3041                      "loc": {
3042                        "start": {
3043                          "line": 1,
3044                          "column": 1
3045                        },
3046                        "end": {
3047                          "line": 1,
3048                          "column": 1
3049                        }
3050                      }
3051                    }
3052                  ],
3053                  "loc": {
3054                    "start": {
3055                      "line": 1,
3056                      "column": 1
3057                    },
3058                    "end": {
3059                      "line": 1,
3060                      "column": 1
3061                    }
3062                  }
3063                },
3064                "loc": {
3065                  "start": {
3066                    "line": 1,
3067                    "column": 1
3068                  },
3069                  "end": {
3070                    "line": 1,
3071                    "column": 1
3072                  }
3073                }
3074              },
3075              "loc": {
3076                "start": {
3077                  "line": 1,
3078                  "column": 1
3079                },
3080                "end": {
3081                  "line": 1,
3082                  "column": 1
3083                }
3084              }
3085            },
3086            "overloads": [],
3087            "decorators": [],
3088            "loc": {
3089              "start": {
3090                "line": 1,
3091                "column": 1
3092              },
3093              "end": {
3094                "line": 1,
3095                "column": 1
3096              }
3097            }
3098          },
3099          {
3100            "type": "MethodDefinition",
3101            "key": {
3102              "type": "Identifier",
3103              "name": "getValueOf",
3104              "decorators": [],
3105              "loc": {
3106                "start": {
3107                  "line": 1,
3108                  "column": 1
3109                },
3110                "end": {
3111                  "line": 1,
3112                  "column": 1
3113                }
3114              }
3115            },
3116            "kind": "method",
3117            "accessibility": "public",
3118            "static": true,
3119            "optional": false,
3120            "computed": false,
3121            "value": {
3122              "type": "FunctionExpression",
3123              "function": {
3124                "type": "ScriptFunction",
3125                "id": {
3126                  "type": "Identifier",
3127                  "name": "getValueOf",
3128                  "decorators": [],
3129                  "loc": {
3130                    "start": {
3131                      "line": 1,
3132                      "column": 1
3133                    },
3134                    "end": {
3135                      "line": 1,
3136                      "column": 1
3137                    }
3138                  }
3139                },
3140                "generator": false,
3141                "async": false,
3142                "expression": false,
3143                "params": [
3144                  {
3145                    "type": "ETSParameterExpression",
3146                    "name": {
3147                      "type": "Identifier",
3148                      "name": "name",
3149                      "typeAnnotation": {
3150                        "type": "ETSTypeReference",
3151                        "part": {
3152                          "type": "ETSTypeReferencePart",
3153                          "name": {
3154                            "type": "Identifier",
3155                            "name": "String",
3156                            "decorators": [],
3157                            "loc": {
3158                              "start": {
3159                                "line": 1,
3160                                "column": 1
3161                              },
3162                              "end": {
3163                                "line": 1,
3164                                "column": 1
3165                              }
3166                            }
3167                          },
3168                          "loc": {
3169                            "start": {
3170                              "line": 1,
3171                              "column": 1
3172                            },
3173                            "end": {
3174                              "line": 1,
3175                              "column": 1
3176                            }
3177                          }
3178                        },
3179                        "loc": {
3180                          "start": {
3181                            "line": 1,
3182                            "column": 1
3183                          },
3184                          "end": {
3185                            "line": 1,
3186                            "column": 1
3187                          }
3188                        }
3189                      },
3190                      "decorators": [],
3191                      "loc": {
3192                        "start": {
3193                          "line": 1,
3194                          "column": 1
3195                        },
3196                        "end": {
3197                          "line": 1,
3198                          "column": 1
3199                        }
3200                      }
3201                    },
3202                    "loc": {
3203                      "start": {
3204                        "line": 1,
3205                        "column": 1
3206                      },
3207                      "end": {
3208                        "line": 1,
3209                        "column": 1
3210                      }
3211                    }
3212                  }
3213                ],
3214                "returnType": {
3215                  "type": "ETSTypeReference",
3216                  "part": {
3217                    "type": "ETSTypeReferencePart",
3218                    "name": {
3219                      "type": "Identifier",
3220                      "name": "A",
3221                      "decorators": [],
3222                      "loc": {
3223                        "start": {
3224                          "line": 1,
3225                          "column": 1
3226                        },
3227                        "end": {
3228                          "line": 1,
3229                          "column": 1
3230                        }
3231                      }
3232                    },
3233                    "loc": {
3234                      "start": {
3235                        "line": 1,
3236                        "column": 1
3237                      },
3238                      "end": {
3239                        "line": 1,
3240                        "column": 1
3241                      }
3242                    }
3243                  },
3244                  "loc": {
3245                    "start": {
3246                      "line": 1,
3247                      "column": 1
3248                    },
3249                    "end": {
3250                      "line": 1,
3251                      "column": 1
3252                    }
3253                  }
3254                },
3255                "body": {
3256                  "type": "BlockStatement",
3257                  "statements": [
3258                    {
3259                      "type": "ForUpdateStatement",
3260                      "init": {
3261                        "type": "VariableDeclaration",
3262                        "declarations": [
3263                          {
3264                            "type": "VariableDeclarator",
3265                            "id": {
3266                              "type": "Identifier",
3267                              "name": "i",
3268                              "decorators": [],
3269                              "loc": {
3270                                "start": {
3271                                  "line": 1,
3272                                  "column": 1
3273                                },
3274                                "end": {
3275                                  "line": 1,
3276                                  "column": 1
3277                                }
3278                              }
3279                            },
3280                            "init": {
3281                              "type": "NumberLiteral",
3282                              "value": 0,
3283                              "loc": {
3284                                "start": {
3285                                  "line": 1,
3286                                  "column": 1
3287                                },
3288                                "end": {
3289                                  "line": 1,
3290                                  "column": 1
3291                                }
3292                              }
3293                            },
3294                            "loc": {
3295                              "start": {
3296                                "line": 1,
3297                                "column": 1
3298                              },
3299                              "end": {
3300                                "line": 1,
3301                                "column": 1
3302                              }
3303                            }
3304                          }
3305                        ],
3306                        "kind": "let",
3307                        "loc": {
3308                          "start": {
3309                            "line": 1,
3310                            "column": 1
3311                          },
3312                          "end": {
3313                            "line": 1,
3314                            "column": 1
3315                          }
3316                        }
3317                      },
3318                      "test": {
3319                        "type": "BinaryExpression",
3320                        "operator": "<",
3321                        "left": {
3322                          "type": "Identifier",
3323                          "name": "i",
3324                          "decorators": [],
3325                          "loc": {
3326                            "start": {
3327                              "line": 1,
3328                              "column": 1
3329                            },
3330                            "end": {
3331                              "line": 1,
3332                              "column": 1
3333                            }
3334                          }
3335                        },
3336                        "right": {
3337                          "type": "MemberExpression",
3338                          "object": {
3339                            "type": "Identifier",
3340                            "name": "NamesArray",
3341                            "decorators": [],
3342                            "loc": {
3343                              "start": {
3344                                "line": 1,
3345                                "column": 1
3346                              },
3347                              "end": {
3348                                "line": 1,
3349                                "column": 1
3350                              }
3351                            }
3352                          },
3353                          "property": {
3354                            "type": "Identifier",
3355                            "name": "length",
3356                            "decorators": [],
3357                            "loc": {
3358                              "start": {
3359                                "line": 1,
3360                                "column": 1
3361                              },
3362                              "end": {
3363                                "line": 1,
3364                                "column": 1
3365                              }
3366                            }
3367                          },
3368                          "computed": false,
3369                          "optional": false,
3370                          "loc": {
3371                            "start": {
3372                              "line": 1,
3373                              "column": 1
3374                            },
3375                            "end": {
3376                              "line": 1,
3377                              "column": 1
3378                            }
3379                          }
3380                        },
3381                        "loc": {
3382                          "start": {
3383                            "line": 1,
3384                            "column": 1
3385                          },
3386                          "end": {
3387                            "line": 1,
3388                            "column": 1
3389                          }
3390                        }
3391                      },
3392                      "update": {
3393                        "type": "UpdateExpression",
3394                        "operator": "++",
3395                        "prefix": true,
3396                        "argument": {
3397                          "type": "Identifier",
3398                          "name": "i",
3399                          "decorators": [],
3400                          "loc": {
3401                            "start": {
3402                              "line": 1,
3403                              "column": 1
3404                            },
3405                            "end": {
3406                              "line": 1,
3407                              "column": 1
3408                            }
3409                          }
3410                        },
3411                        "loc": {
3412                          "start": {
3413                            "line": 1,
3414                            "column": 1
3415                          },
3416                          "end": {
3417                            "line": 1,
3418                            "column": 1
3419                          }
3420                        }
3421                      },
3422                      "body": {
3423                        "type": "IfStatement",
3424                        "test": {
3425                          "type": "BinaryExpression",
3426                          "operator": "==",
3427                          "left": {
3428                            "type": "Identifier",
3429                            "name": "name",
3430                            "decorators": [],
3431                            "loc": {
3432                              "start": {
3433                                "line": 1,
3434                                "column": 1
3435                              },
3436                              "end": {
3437                                "line": 1,
3438                                "column": 1
3439                              }
3440                            }
3441                          },
3442                          "right": {
3443                            "type": "MemberExpression",
3444                            "object": {
3445                              "type": "Identifier",
3446                              "name": "NamesArray",
3447                              "decorators": [],
3448                              "loc": {
3449                                "start": {
3450                                  "line": 1,
3451                                  "column": 1
3452                                },
3453                                "end": {
3454                                  "line": 1,
3455                                  "column": 1
3456                                }
3457                              }
3458                            },
3459                            "property": {
3460                              "type": "Identifier",
3461                              "name": "i",
3462                              "decorators": [],
3463                              "loc": {
3464                                "start": {
3465                                  "line": 1,
3466                                  "column": 1
3467                                },
3468                                "end": {
3469                                  "line": 1,
3470                                  "column": 1
3471                                }
3472                              }
3473                            },
3474                            "computed": true,
3475                            "optional": false,
3476                            "loc": {
3477                              "start": {
3478                                "line": 1,
3479                                "column": 1
3480                              },
3481                              "end": {
3482                                "line": 1,
3483                                "column": 1
3484                              }
3485                            }
3486                          },
3487                          "loc": {
3488                            "start": {
3489                              "line": 1,
3490                              "column": 1
3491                            },
3492                            "end": {
3493                              "line": 1,
3494                              "column": 1
3495                            }
3496                          }
3497                        },
3498                        "consequent": {
3499                          "type": "ReturnStatement",
3500                          "argument": {
3501                            "type": "TSAsExpression",
3502                            "expression": {
3503                              "type": "Identifier",
3504                              "name": "i",
3505                              "decorators": [],
3506                              "loc": {
3507                                "start": {
3508                                  "line": 1,
3509                                  "column": 1
3510                                },
3511                                "end": {
3512                                  "line": 1,
3513                                  "column": 1
3514                                }
3515                              }
3516                            },
3517                            "typeAnnotation": {
3518                              "type": "ETSTypeReference",
3519                              "part": {
3520                                "type": "ETSTypeReferencePart",
3521                                "name": {
3522                                  "type": "Identifier",
3523                                  "name": "A",
3524                                  "decorators": [],
3525                                  "loc": {
3526                                    "start": {
3527                                      "line": 1,
3528                                      "column": 1
3529                                    },
3530                                    "end": {
3531                                      "line": 1,
3532                                      "column": 1
3533                                    }
3534                                  }
3535                                },
3536                                "loc": {
3537                                  "start": {
3538                                    "line": 1,
3539                                    "column": 1
3540                                  },
3541                                  "end": {
3542                                    "line": 1,
3543                                    "column": 1
3544                                  }
3545                                }
3546                              },
3547                              "loc": {
3548                                "start": {
3549                                  "line": 1,
3550                                  "column": 1
3551                                },
3552                                "end": {
3553                                  "line": 1,
3554                                  "column": 1
3555                                }
3556                              }
3557                            },
3558                            "loc": {
3559                              "start": {
3560                                "line": 1,
3561                                "column": 1
3562                              },
3563                              "end": {
3564                                "line": 1,
3565                                "column": 1
3566                              }
3567                            }
3568                          },
3569                          "loc": {
3570                            "start": {
3571                              "line": 1,
3572                              "column": 1
3573                            },
3574                            "end": {
3575                              "line": 1,
3576                              "column": 1
3577                            }
3578                          }
3579                        },
3580                        "alternate": null,
3581                        "loc": {
3582                          "start": {
3583                            "line": 1,
3584                            "column": 1
3585                          },
3586                          "end": {
3587                            "line": 1,
3588                            "column": 1
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                    {
3604                      "type": "ThrowStatement",
3605                      "argument": {
3606                        "type": "ETSNewClassInstanceExpression",
3607                        "typeReference": {
3608                          "type": "ETSTypeReference",
3609                          "part": {
3610                            "type": "ETSTypeReferencePart",
3611                            "name": {
3612                              "type": "Identifier",
3613                              "name": "Exception",
3614                              "decorators": [],
3615                              "loc": {
3616                                "start": {
3617                                  "line": 1,
3618                                  "column": 1
3619                                },
3620                                "end": {
3621                                  "line": 1,
3622                                  "column": 1
3623                                }
3624                              }
3625                            },
3626                            "loc": {
3627                              "start": {
3628                                "line": 1,
3629                                "column": 1
3630                              },
3631                              "end": {
3632                                "line": 1,
3633                                "column": 1
3634                              }
3635                            }
3636                          },
3637                          "loc": {
3638                            "start": {
3639                              "line": 1,
3640                              "column": 1
3641                            },
3642                            "end": {
3643                              "line": 1,
3644                              "column": 1
3645                            }
3646                          }
3647                        },
3648                        "arguments": [
3649                          {
3650                            "type": "BinaryExpression",
3651                            "operator": "+",
3652                            "left": {
3653                              "type": "StringLiteral",
3654                              "value": "No enum constant A.",
3655                              "loc": {
3656                                "start": {
3657                                  "line": 1,
3658                                  "column": 1
3659                                },
3660                                "end": {
3661                                  "line": 1,
3662                                  "column": 1
3663                                }
3664                              }
3665                            },
3666                            "right": {
3667                              "type": "Identifier",
3668                              "name": "name",
3669                              "decorators": [],
3670                              "loc": {
3671                                "start": {
3672                                  "line": 1,
3673                                  "column": 1
3674                                },
3675                                "end": {
3676                                  "line": 1,
3677                                  "column": 1
3678                                }
3679                              }
3680                            },
3681                            "loc": {
3682                              "start": {
3683                                "line": 1,
3684                                "column": 1
3685                              },
3686                              "end": {
3687                                "line": 1,
3688                                "column": 1
3689                              }
3690                            }
3691                          }
3692                        ],
3693                        "loc": {
3694                          "start": {
3695                            "line": 1,
3696                            "column": 1
3697                          },
3698                          "end": {
3699                            "line": 1,
3700                            "column": 1
3701                          }
3702                        }
3703                      },
3704                      "loc": {
3705                        "start": {
3706                          "line": 1,
3707                          "column": 1
3708                        },
3709                        "end": {
3710                          "line": 1,
3711                          "column": 1
3712                        }
3713                      }
3714                    }
3715                  ],
3716                  "loc": {
3717                    "start": {
3718                      "line": 1,
3719                      "column": 1
3720                    },
3721                    "end": {
3722                      "line": 1,
3723                      "column": 1
3724                    }
3725                  }
3726                }
3727                "throwMarker": "throws",
3728                "loc": {
3729                  "start": {
3730                    "line": 1,
3731                    "column": 1
3732                  },
3733                  "end": {
3734                    "line": 1,
3735                    "column": 1
3736                  }
3737                }
3738              },
3739              "loc": {
3740                "start": {
3741                  "line": 1,
3742                  "column": 1
3743                },
3744                "end": {
3745                  "line": 1,
3746                  "column": 1
3747                }
3748              }
3749            },
3750            "overloads": [],
3751            "decorators": [],
3752            "loc": {
3753              "start": {
3754                "line": 1,
3755                "column": 1
3756              },
3757              "end": {
3758                "line": 1,
3759                "column": 1
3760              }
3761            }
3762          },
3763          {
3764            "type": "MethodDefinition",
3765            "key": {
3766              "type": "Identifier",
3767              "name": "valueOf",
3768              "decorators": [],
3769              "loc": {
3770                "start": {
3771                  "line": 1,
3772                  "column": 1
3773                },
3774                "end": {
3775                  "line": 1,
3776                  "column": 1
3777                }
3778              }
3779            },
3780            "kind": "method",
3781            "accessibility": "public",
3782            "static": true,
3783            "optional": false,
3784            "computed": false,
3785            "value": {
3786              "type": "FunctionExpression",
3787              "function": {
3788                "type": "ScriptFunction",
3789                "id": {
3790                  "type": "Identifier",
3791                  "name": "valueOf",
3792                  "decorators": [],
3793                  "loc": {
3794                    "start": {
3795                      "line": 1,
3796                      "column": 1
3797                    },
3798                    "end": {
3799                      "line": 1,
3800                      "column": 1
3801                    }
3802                  }
3803                },
3804                "generator": false,
3805                "async": false,
3806                "expression": false,
3807                "params": [
3808                  {
3809                    "type": "ETSParameterExpression",
3810                    "name": {
3811                      "type": "Identifier",
3812                      "name": "e",
3813                      "typeAnnotation": {
3814                        "type": "ETSTypeReference",
3815                        "part": {
3816                          "type": "ETSTypeReferencePart",
3817                          "name": {
3818                            "type": "Identifier",
3819                            "name": "A",
3820                            "decorators": [],
3821                            "loc": {
3822                              "start": {
3823                                "line": 1,
3824                                "column": 1
3825                              },
3826                              "end": {
3827                                "line": 1,
3828                                "column": 1
3829                              }
3830                            }
3831                          },
3832                          "loc": {
3833                            "start": {
3834                              "line": 1,
3835                              "column": 1
3836                            },
3837                            "end": {
3838                              "line": 1,
3839                              "column": 1
3840                            }
3841                          }
3842                        },
3843                        "loc": {
3844                          "start": {
3845                            "line": 1,
3846                            "column": 1
3847                          },
3848                          "end": {
3849                            "line": 1,
3850                            "column": 1
3851                          }
3852                        }
3853                      },
3854                      "decorators": [],
3855                      "loc": {
3856                        "start": {
3857                          "line": 1,
3858                          "column": 1
3859                        },
3860                        "end": {
3861                          "line": 1,
3862                          "column": 1
3863                        }
3864                      }
3865                    },
3866                    "loc": {
3867                      "start": {
3868                        "line": 1,
3869                        "column": 1
3870                      },
3871                      "end": {
3872                        "line": 1,
3873                        "column": 1
3874                      }
3875                    }
3876                  }
3877                ],
3878                "returnType": {
3879                  "type": "ETSPrimitiveType",
3880                  "loc": {
3881                    "start": {
3882                      "line": 1,
3883                      "column": 1
3884                    },
3885                    "end": {
3886                      "line": 1,
3887                      "column": 1
3888                    }
3889                  }
3890                },
3891                "body": {
3892                  "type": "BlockStatement",
3893                  "statements": [
3894                    {
3895                      "type": "ReturnStatement",
3896                      "argument": {
3897                        "type": "MemberExpression",
3898                        "object": {
3899                          "type": "Identifier",
3900                          "name": "ValuesArray",
3901                          "decorators": [],
3902                          "loc": {
3903                            "start": {
3904                              "line": 1,
3905                              "column": 1
3906                            },
3907                            "end": {
3908                              "line": 1,
3909                              "column": 1
3910                            }
3911                          }
3912                        },
3913                        "property": {
3914                          "type": "TSAsExpression",
3915                          "expression": {
3916                            "type": "Identifier",
3917                            "name": "e",
3918                            "decorators": [],
3919                            "loc": {
3920                              "start": {
3921                                "line": 1,
3922                                "column": 1
3923                              },
3924                              "end": {
3925                                "line": 1,
3926                                "column": 1
3927                              }
3928                            }
3929                          },
3930                          "typeAnnotation": {
3931                            "type": "ETSPrimitiveType",
3932                            "loc": {
3933                              "start": {
3934                                "line": 1,
3935                                "column": 1
3936                              },
3937                              "end": {
3938                                "line": 1,
3939                                "column": 1
3940                              }
3941                            }
3942                          },
3943                          "loc": {
3944                            "start": {
3945                              "line": 1,
3946                              "column": 1
3947                            },
3948                            "end": {
3949                              "line": 1,
3950                              "column": 1
3951                            }
3952                          }
3953                        },
3954                        "computed": true,
3955                        "optional": false,
3956                        "loc": {
3957                          "start": {
3958                            "line": 1,
3959                            "column": 1
3960                          },
3961                          "end": {
3962                            "line": 1,
3963                            "column": 1
3964                          }
3965                        }
3966                      },
3967                      "loc": {
3968                        "start": {
3969                          "line": 1,
3970                          "column": 1
3971                        },
3972                        "end": {
3973                          "line": 1,
3974                          "column": 1
3975                        }
3976                      }
3977                    }
3978                  ],
3979                  "loc": {
3980                    "start": {
3981                      "line": 1,
3982                      "column": 1
3983                    },
3984                    "end": {
3985                      "line": 1,
3986                      "column": 1
3987                    }
3988                  }
3989                },
3990                "loc": {
3991                  "start": {
3992                    "line": 1,
3993                    "column": 1
3994                  },
3995                  "end": {
3996                    "line": 1,
3997                    "column": 1
3998                  }
3999                }
4000              },
4001              "loc": {
4002                "start": {
4003                  "line": 1,
4004                  "column": 1
4005                },
4006                "end": {
4007                  "line": 1,
4008                  "column": 1
4009                }
4010              }
4011            },
4012            "overloads": [],
4013            "decorators": [],
4014            "loc": {
4015              "start": {
4016                "line": 1,
4017                "column": 1
4018              },
4019              "end": {
4020                "line": 1,
4021                "column": 1
4022              }
4023            }
4024          },
4025          {
4026            "type": "MethodDefinition",
4027            "key": {
4028              "type": "Identifier",
4029              "name": "toString",
4030              "decorators": [],
4031              "loc": {
4032                "start": {
4033                  "line": 1,
4034                  "column": 1
4035                },
4036                "end": {
4037                  "line": 1,
4038                  "column": 1
4039                }
4040              }
4041            },
4042            "kind": "method",
4043            "accessibility": "public",
4044            "static": true,
4045            "optional": false,
4046            "computed": false,
4047            "value": {
4048              "type": "FunctionExpression",
4049              "function": {
4050                "type": "ScriptFunction",
4051                "id": {
4052                  "type": "Identifier",
4053                  "name": "toString",
4054                  "decorators": [],
4055                  "loc": {
4056                    "start": {
4057                      "line": 1,
4058                      "column": 1
4059                    },
4060                    "end": {
4061                      "line": 1,
4062                      "column": 1
4063                    }
4064                  }
4065                },
4066                "generator": false,
4067                "async": false,
4068                "expression": false,
4069                "params": [
4070                  {
4071                    "type": "ETSParameterExpression",
4072                    "name": {
4073                      "type": "Identifier",
4074                      "name": "ordinal",
4075                      "typeAnnotation": {
4076                        "type": "ETSTypeReference",
4077                        "part": {
4078                          "type": "ETSTypeReferencePart",
4079                          "name": {
4080                            "type": "Identifier",
4081                            "name": "A",
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                          "loc": {
4095                            "start": {
4096                              "line": 1,
4097                              "column": 1
4098                            },
4099                            "end": {
4100                              "line": 1,
4101                              "column": 1
4102                            }
4103                          }
4104                        },
4105                        "loc": {
4106                          "start": {
4107                            "line": 1,
4108                            "column": 1
4109                          },
4110                          "end": {
4111                            "line": 1,
4112                            "column": 1
4113                          }
4114                        }
4115                      },
4116                      "decorators": [],
4117                      "loc": {
4118                        "start": {
4119                          "line": 1,
4120                          "column": 1
4121                        },
4122                        "end": {
4123                          "line": 1,
4124                          "column": 1
4125                        }
4126                      }
4127                    },
4128                    "loc": {
4129                      "start": {
4130                        "line": 1,
4131                        "column": 1
4132                      },
4133                      "end": {
4134                        "line": 1,
4135                        "column": 1
4136                      }
4137                    }
4138                  }
4139                ],
4140                "returnType": {
4141                  "type": "ETSTypeReference",
4142                  "part": {
4143                    "type": "ETSTypeReferencePart",
4144                    "name": {
4145                      "type": "Identifier",
4146                      "name": "String",
4147                      "decorators": [],
4148                      "loc": {
4149                        "start": {
4150                          "line": 1,
4151                          "column": 1
4152                        },
4153                        "end": {
4154                          "line": 1,
4155                          "column": 1
4156                        }
4157                      }
4158                    },
4159                    "loc": {
4160                      "start": {
4161                        "line": 1,
4162                        "column": 1
4163                      },
4164                      "end": {
4165                        "line": 1,
4166                        "column": 1
4167                      }
4168                    }
4169                  },
4170                  "loc": {
4171                    "start": {
4172                      "line": 1,
4173                      "column": 1
4174                    },
4175                    "end": {
4176                      "line": 1,
4177                      "column": 1
4178                    }
4179                  }
4180                },
4181                "body": {
4182                  "type": "BlockStatement",
4183                  "statements": [
4184                    {
4185                      "type": "ReturnStatement",
4186                      "argument": {
4187                        "type": "MemberExpression",
4188                        "object": {
4189                          "type": "Identifier",
4190                          "name": "StringValuesArray",
4191                          "decorators": [],
4192                          "loc": {
4193                            "start": {
4194                              "line": 1,
4195                              "column": 1
4196                            },
4197                            "end": {
4198                              "line": 1,
4199                              "column": 1
4200                            }
4201                          }
4202                        },
4203                        "property": {
4204                          "type": "TSAsExpression",
4205                          "expression": {
4206                            "type": "Identifier",
4207                            "name": "ordinal",
4208                            "decorators": [],
4209                            "loc": {
4210                              "start": {
4211                                "line": 1,
4212                                "column": 1
4213                              },
4214                              "end": {
4215                                "line": 1,
4216                                "column": 1
4217                              }
4218                            }
4219                          },
4220                          "typeAnnotation": {
4221                            "type": "ETSPrimitiveType",
4222                            "loc": {
4223                              "start": {
4224                                "line": 1,
4225                                "column": 1
4226                              },
4227                              "end": {
4228                                "line": 1,
4229                                "column": 1
4230                              }
4231                            }
4232                          },
4233                          "loc": {
4234                            "start": {
4235                              "line": 1,
4236                              "column": 1
4237                            },
4238                            "end": {
4239                              "line": 1,
4240                              "column": 1
4241                            }
4242                          }
4243                        },
4244                        "computed": true,
4245                        "optional": false,
4246                        "loc": {
4247                          "start": {
4248                            "line": 1,
4249                            "column": 1
4250                          },
4251                          "end": {
4252                            "line": 1,
4253                            "column": 1
4254                          }
4255                        }
4256                      },
4257                      "loc": {
4258                        "start": {
4259                          "line": 1,
4260                          "column": 1
4261                        },
4262                        "end": {
4263                          "line": 1,
4264                          "column": 1
4265                        }
4266                      }
4267                    }
4268                  ],
4269                  "loc": {
4270                    "start": {
4271                      "line": 1,
4272                      "column": 1
4273                    },
4274                    "end": {
4275                      "line": 1,
4276                      "column": 1
4277                    }
4278                  }
4279                },
4280                "loc": {
4281                  "start": {
4282                    "line": 1,
4283                    "column": 1
4284                  },
4285                  "end": {
4286                    "line": 1,
4287                    "column": 1
4288                  }
4289                }
4290              },
4291              "loc": {
4292                "start": {
4293                  "line": 1,
4294                  "column": 1
4295                },
4296                "end": {
4297                  "line": 1,
4298                  "column": 1
4299                }
4300              }
4301            },
4302            "overloads": [],
4303            "decorators": [],
4304            "loc": {
4305              "start": {
4306                "line": 1,
4307                "column": 1
4308              },
4309              "end": {
4310                "line": 1,
4311                "column": 1
4312              }
4313            }
4314          },
4315          {
4316            "type": "MethodDefinition",
4317            "key": {
4318              "type": "Identifier",
4319              "name": "values",
4320              "decorators": [],
4321              "loc": {
4322                "start": {
4323                  "line": 1,
4324                  "column": 1
4325                },
4326                "end": {
4327                  "line": 1,
4328                  "column": 1
4329                }
4330              }
4331            },
4332            "kind": "method",
4333            "accessibility": "public",
4334            "static": true,
4335            "optional": false,
4336            "computed": false,
4337            "value": {
4338              "type": "FunctionExpression",
4339              "function": {
4340                "type": "ScriptFunction",
4341                "id": {
4342                  "type": "Identifier",
4343                  "name": "values",
4344                  "decorators": [],
4345                  "loc": {
4346                    "start": {
4347                      "line": 1,
4348                      "column": 1
4349                    },
4350                    "end": {
4351                      "line": 1,
4352                      "column": 1
4353                    }
4354                  }
4355                },
4356                "generator": false,
4357                "async": false,
4358                "expression": false,
4359                "params": [],
4360                "returnType": {
4361                  "type": "TSArrayType",
4362                  "elementType": {
4363                    "type": "ETSTypeReference",
4364                    "part": {
4365                      "type": "ETSTypeReferencePart",
4366                      "name": {
4367                        "type": "Identifier",
4368                        "name": "A",
4369                        "decorators": [],
4370                        "loc": {
4371                          "start": {
4372                            "line": 1,
4373                            "column": 1
4374                          },
4375                          "end": {
4376                            "line": 1,
4377                            "column": 1
4378                          }
4379                        }
4380                      },
4381                      "loc": {
4382                        "start": {
4383                          "line": 1,
4384                          "column": 1
4385                        },
4386                        "end": {
4387                          "line": 1,
4388                          "column": 1
4389                        }
4390                      }
4391                    },
4392                    "loc": {
4393                      "start": {
4394                        "line": 1,
4395                        "column": 1
4396                      },
4397                      "end": {
4398                        "line": 1,
4399                        "column": 1
4400                      }
4401                    }
4402                  },
4403                  "loc": {
4404                    "start": {
4405                      "line": 1,
4406                      "column": 1
4407                    },
4408                    "end": {
4409                      "line": 1,
4410                      "column": 1
4411                    }
4412                  }
4413                },
4414                "body": {
4415                  "type": "BlockStatement",
4416                  "statements": [
4417                    {
4418                      "type": "ReturnStatement",
4419                      "argument": {
4420                        "type": "Identifier",
4421                        "name": "ItemsArray",
4422                        "decorators": [],
4423                        "loc": {
4424                          "start": {
4425                            "line": 1,
4426                            "column": 1
4427                          },
4428                          "end": {
4429                            "line": 1,
4430                            "column": 1
4431                          }
4432                        }
4433                      },
4434                      "loc": {
4435                        "start": {
4436                          "line": 1,
4437                          "column": 1
4438                        },
4439                        "end": {
4440                          "line": 1,
4441                          "column": 1
4442                        }
4443                      }
4444                    }
4445                  ],
4446                  "loc": {
4447                    "start": {
4448                      "line": 1,
4449                      "column": 1
4450                    },
4451                    "end": {
4452                      "line": 1,
4453                      "column": 1
4454                    }
4455                  }
4456                },
4457                "loc": {
4458                  "start": {
4459                    "line": 1,
4460                    "column": 1
4461                  },
4462                  "end": {
4463                    "line": 1,
4464                    "column": 1
4465                  }
4466                }
4467              },
4468              "loc": {
4469                "start": {
4470                  "line": 1,
4471                  "column": 1
4472                },
4473                "end": {
4474                  "line": 1,
4475                  "column": 1
4476                }
4477              }
4478            },
4479            "overloads": [],
4480            "decorators": [],
4481            "loc": {
4482              "start": {
4483                "line": 1,
4484                "column": 1
4485              },
4486              "end": {
4487                "line": 1,
4488                "column": 1
4489              }
4490            }
4491          },
4492          {
4493            "type": "MethodDefinition",
4494            "key": {
4495              "type": "Identifier",
4496              "name": "fromInt",
4497              "decorators": [],
4498              "loc": {
4499                "start": {
4500                  "line": 1,
4501                  "column": 1
4502                },
4503                "end": {
4504                  "line": 1,
4505                  "column": 1
4506                }
4507              }
4508            },
4509            "kind": "method",
4510            "accessibility": "public",
4511            "static": true,
4512            "optional": false,
4513            "computed": false,
4514            "value": {
4515              "type": "FunctionExpression",
4516              "function": {
4517                "type": "ScriptFunction",
4518                "id": {
4519                  "type": "Identifier",
4520                  "name": "fromInt",
4521                  "decorators": [],
4522                  "loc": {
4523                    "start": {
4524                      "line": 1,
4525                      "column": 1
4526                    },
4527                    "end": {
4528                      "line": 1,
4529                      "column": 1
4530                    }
4531                  }
4532                },
4533                "generator": false,
4534                "async": false,
4535                "expression": false,
4536                "params": [
4537                  {
4538                    "type": "ETSParameterExpression",
4539                    "name": {
4540                      "type": "Identifier",
4541                      "name": "ordinal",
4542                      "typeAnnotation": {
4543                        "type": "ETSPrimitiveType",
4544                        "loc": {
4545                          "start": {
4546                            "line": 1,
4547                            "column": 1
4548                          },
4549                          "end": {
4550                            "line": 1,
4551                            "column": 1
4552                          }
4553                        }
4554                      },
4555                      "decorators": [],
4556                      "loc": {
4557                        "start": {
4558                          "line": 1,
4559                          "column": 1
4560                        },
4561                        "end": {
4562                          "line": 1,
4563                          "column": 1
4564                        }
4565                      }
4566                    },
4567                    "loc": {
4568                      "start": {
4569                        "line": 1,
4570                        "column": 1
4571                      },
4572                      "end": {
4573                        "line": 1,
4574                        "column": 1
4575                      }
4576                    }
4577                  }
4578                ],
4579                "returnType": {
4580                  "type": "ETSTypeReference",
4581                  "part": {
4582                    "type": "ETSTypeReferencePart",
4583                    "name": {
4584                      "type": "Identifier",
4585                      "name": "A",
4586                      "decorators": [],
4587                      "loc": {
4588                        "start": {
4589                          "line": 1,
4590                          "column": 1
4591                        },
4592                        "end": {
4593                          "line": 1,
4594                          "column": 1
4595                        }
4596                      }
4597                    },
4598                    "loc": {
4599                      "start": {
4600                        "line": 1,
4601                        "column": 1
4602                      },
4603                      "end": {
4604                        "line": 1,
4605                        "column": 1
4606                      }
4607                    }
4608                  },
4609                  "loc": {
4610                    "start": {
4611                      "line": 1,
4612                      "column": 1
4613                    },
4614                    "end": {
4615                      "line": 1,
4616                      "column": 1
4617                    }
4618                  }
4619                },
4620                "body": {
4621                  "type": "BlockStatement",
4622                  "statements": [
4623                    {
4624                      "type": "IfStatement",
4625                      "test": {
4626                        "type": "BinaryExpression",
4627                        "operator": "<",
4628                        "left": {
4629                          "type": "Identifier",
4630                          "name": "ordinal",
4631                          "decorators": [],
4632                          "loc": {
4633                            "start": {
4634                              "line": 1,
4635                              "column": 1
4636                            },
4637                            "end": {
4638                              "line": 1,
4639                              "column": 1
4640                            }
4641                          }
4642                        },
4643                        "right": {
4644                          "type": "MemberExpression",
4645                          "object": {
4646                            "type": "Identifier",
4647                            "name": "ItemsArray",
4648                            "decorators": [],
4649                            "loc": {
4650                              "start": {
4651                                "line": 1,
4652                                "column": 1
4653                              },
4654                              "end": {
4655                                "line": 1,
4656                                "column": 1
4657                              }
4658                            }
4659                          },
4660                          "property": {
4661                            "type": "Identifier",
4662                            "name": "length",
4663                            "decorators": [],
4664                            "loc": {
4665                              "start": {
4666                                "line": 1,
4667                                "column": 1
4668                              },
4669                              "end": {
4670                                "line": 1,
4671                                "column": 1
4672                              }
4673                            }
4674                          },
4675                          "computed": false,
4676                          "optional": false,
4677                          "loc": {
4678                            "start": {
4679                              "line": 1,
4680                              "column": 1
4681                            },
4682                            "end": {
4683                              "line": 1,
4684                              "column": 1
4685                            }
4686                          }
4687                        },
4688                        "loc": {
4689                          "start": {
4690                            "line": 1,
4691                            "column": 1
4692                          },
4693                          "end": {
4694                            "line": 1,
4695                            "column": 1
4696                          }
4697                        }
4698                      },
4699                      "consequent": {
4700                        "type": "ReturnStatement",
4701                        "argument": {
4702                          "type": "MemberExpression",
4703                          "object": {
4704                            "type": "Identifier",
4705                            "name": "ItemsArray",
4706                            "decorators": [],
4707                            "loc": {
4708                              "start": {
4709                                "line": 1,
4710                                "column": 1
4711                              },
4712                              "end": {
4713                                "line": 1,
4714                                "column": 1
4715                              }
4716                            }
4717                          },
4718                          "property": {
4719                            "type": "Identifier",
4720                            "name": "ordinal",
4721                            "decorators": [],
4722                            "loc": {
4723                              "start": {
4724                                "line": 1,
4725                                "column": 1
4726                              },
4727                              "end": {
4728                                "line": 1,
4729                                "column": 1
4730                              }
4731                            }
4732                          },
4733                          "computed": true,
4734                          "optional": false,
4735                          "loc": {
4736                            "start": {
4737                              "line": 1,
4738                              "column": 1
4739                            },
4740                            "end": {
4741                              "line": 1,
4742                              "column": 1
4743                            }
4744                          }
4745                        },
4746                        "loc": {
4747                          "start": {
4748                            "line": 1,
4749                            "column": 1
4750                          },
4751                          "end": {
4752                            "line": 1,
4753                            "column": 1
4754                          }
4755                        }
4756                      },
4757                      "alternate": null,
4758                      "loc": {
4759                        "start": {
4760                          "line": 1,
4761                          "column": 1
4762                        },
4763                        "end": {
4764                          "line": 1,
4765                          "column": 1
4766                        }
4767                      }
4768                    },
4769                    {
4770                      "type": "ThrowStatement",
4771                      "argument": {
4772                        "type": "ETSNewClassInstanceExpression",
4773                        "typeReference": {
4774                          "type": "ETSTypeReference",
4775                          "part": {
4776                            "type": "ETSTypeReferencePart",
4777                            "name": {
4778                              "type": "Identifier",
4779                              "name": "Exception",
4780                              "decorators": [],
4781                              "loc": {
4782                                "start": {
4783                                  "line": 1,
4784                                  "column": 1
4785                                },
4786                                "end": {
4787                                  "line": 1,
4788                                  "column": 1
4789                                }
4790                              }
4791                            },
4792                            "loc": {
4793                              "start": {
4794                                "line": 1,
4795                                "column": 1
4796                              },
4797                              "end": {
4798                                "line": 1,
4799                                "column": 1
4800                              }
4801                            }
4802                          },
4803                          "loc": {
4804                            "start": {
4805                              "line": 1,
4806                              "column": 1
4807                            },
4808                            "end": {
4809                              "line": 1,
4810                              "column": 1
4811                            }
4812                          }
4813                        },
4814                        "arguments": [
4815                          {
4816                            "type": "BinaryExpression",
4817                            "operator": "+",
4818                            "left": {
4819                              "type": "StringLiteral",
4820                              "value": "No enum constant in A with ordinal value ",
4821                              "loc": {
4822                                "start": {
4823                                  "line": 1,
4824                                  "column": 1
4825                                },
4826                                "end": {
4827                                  "line": 1,
4828                                  "column": 1
4829                                }
4830                              }
4831                            },
4832                            "right": {
4833                              "type": "Identifier",
4834                              "name": "ordinal",
4835                              "decorators": [],
4836                              "loc": {
4837                                "start": {
4838                                  "line": 1,
4839                                  "column": 1
4840                                },
4841                                "end": {
4842                                  "line": 1,
4843                                  "column": 1
4844                                }
4845                              }
4846                            },
4847                            "loc": {
4848                              "start": {
4849                                "line": 1,
4850                                "column": 1
4851                              },
4852                              "end": {
4853                                "line": 1,
4854                                "column": 1
4855                              }
4856                            }
4857                          }
4858                        ],
4859                        "loc": {
4860                          "start": {
4861                            "line": 1,
4862                            "column": 1
4863                          },
4864                          "end": {
4865                            "line": 1,
4866                            "column": 1
4867                          }
4868                        }
4869                      },
4870                      "loc": {
4871                        "start": {
4872                          "line": 1,
4873                          "column": 1
4874                        },
4875                        "end": {
4876                          "line": 1,
4877                          "column": 1
4878                        }
4879                      }
4880                    }
4881                  ],
4882                  "loc": {
4883                    "start": {
4884                      "line": 1,
4885                      "column": 1
4886                    },
4887                    "end": {
4888                      "line": 1,
4889                      "column": 1
4890                    }
4891                  }
4892                }
4893                "throwMarker": "throws",
4894                "loc": {
4895                  "start": {
4896                    "line": 1,
4897                    "column": 1
4898                  },
4899                  "end": {
4900                    "line": 1,
4901                    "column": 1
4902                  }
4903                }
4904              },
4905              "loc": {
4906                "start": {
4907                  "line": 1,
4908                  "column": 1
4909                },
4910                "end": {
4911                  "line": 1,
4912                  "column": 1
4913                }
4914              }
4915            },
4916            "overloads": [],
4917            "decorators": [],
4918            "loc": {
4919              "start": {
4920                "line": 1,
4921                "column": 1
4922              },
4923              "end": {
4924                "line": 1,
4925                "column": 1
4926              }
4927            }
4928          },
4929          {
4930            "type": "MethodDefinition",
4931            "key": {
4932              "type": "Identifier",
4933              "name": "unbox",
4934              "decorators": [],
4935              "loc": {
4936                "start": {
4937                  "line": 1,
4938                  "column": 1
4939                },
4940                "end": {
4941                  "line": 1,
4942                  "column": 1
4943                }
4944              }
4945            },
4946            "kind": "method",
4947            "accessibility": "public",
4948            "static": false,
4949            "optional": false,
4950            "computed": false,
4951            "value": {
4952              "type": "FunctionExpression",
4953              "function": {
4954                "type": "ScriptFunction",
4955                "id": {
4956                  "type": "Identifier",
4957                  "name": "unbox",
4958                  "decorators": [],
4959                  "loc": {
4960                    "start": {
4961                      "line": 1,
4962                      "column": 1
4963                    },
4964                    "end": {
4965                      "line": 1,
4966                      "column": 1
4967                    }
4968                  }
4969                },
4970                "generator": false,
4971                "async": false,
4972                "expression": false,
4973                "params": [],
4974                "returnType": {
4975                  "type": "ETSTypeReference",
4976                  "part": {
4977                    "type": "ETSTypeReferencePart",
4978                    "name": {
4979                      "type": "Identifier",
4980                      "name": "A",
4981                      "decorators": [],
4982                      "loc": {
4983                        "start": {
4984                          "line": 1,
4985                          "column": 1
4986                        },
4987                        "end": {
4988                          "line": 1,
4989                          "column": 1
4990                        }
4991                      }
4992                    },
4993                    "loc": {
4994                      "start": {
4995                        "line": 1,
4996                        "column": 1
4997                      },
4998                      "end": {
4999                        "line": 1,
5000                        "column": 1
5001                      }
5002                    }
5003                  },
5004                  "loc": {
5005                    "start": {
5006                      "line": 1,
5007                      "column": 1
5008                    },
5009                    "end": {
5010                      "line": 1,
5011                      "column": 1
5012                    }
5013                  }
5014                },
5015                "body": {
5016                  "type": "BlockStatement",
5017                  "statements": [
5018                    {
5019                      "type": "ReturnStatement",
5020                      "argument": {
5021                        "type": "MemberExpression",
5022                        "object": {
5023                          "type": "Identifier",
5024                          "name": "ItemsArray",
5025                          "decorators": [],
5026                          "loc": {
5027                            "start": {
5028                              "line": 1,
5029                              "column": 1
5030                            },
5031                            "end": {
5032                              "line": 1,
5033                              "column": 1
5034                            }
5035                          }
5036                        },
5037                        "property": {
5038                          "type": "MemberExpression",
5039                          "object": {
5040                            "type": "ThisExpression",
5041                            "loc": {
5042                              "start": {
5043                                "line": 1,
5044                                "column": 1
5045                              },
5046                              "end": {
5047                                "line": 1,
5048                                "column": 1
5049                              }
5050                            }
5051                          },
5052                          "property": {
5053                            "type": "Identifier",
5054                            "name": "ordinal",
5055                            "decorators": [],
5056                            "loc": {
5057                              "start": {
5058                                "line": 1,
5059                                "column": 1
5060                              },
5061                              "end": {
5062                                "line": 1,
5063                                "column": 1
5064                              }
5065                            }
5066                          },
5067                          "computed": false,
5068                          "optional": false,
5069                          "loc": {
5070                            "start": {
5071                              "line": 1,
5072                              "column": 1
5073                            },
5074                            "end": {
5075                              "line": 1,
5076                              "column": 1
5077                            }
5078                          }
5079                        },
5080                        "computed": true,
5081                        "optional": false,
5082                        "loc": {
5083                          "start": {
5084                            "line": 1,
5085                            "column": 1
5086                          },
5087                          "end": {
5088                            "line": 1,
5089                            "column": 1
5090                          }
5091                        }
5092                      },
5093                      "loc": {
5094                        "start": {
5095                          "line": 1,
5096                          "column": 1
5097                        },
5098                        "end": {
5099                          "line": 1,
5100                          "column": 1
5101                        }
5102                      }
5103                    }
5104                  ],
5105                  "loc": {
5106                    "start": {
5107                      "line": 1,
5108                      "column": 1
5109                    },
5110                    "end": {
5111                      "line": 1,
5112                      "column": 1
5113                    }
5114                  }
5115                },
5116                "loc": {
5117                  "start": {
5118                    "line": 1,
5119                    "column": 1
5120                  },
5121                  "end": {
5122                    "line": 1,
5123                    "column": 1
5124                  }
5125                }
5126              },
5127              "loc": {
5128                "start": {
5129                  "line": 1,
5130                  "column": 1
5131                },
5132                "end": {
5133                  "line": 1,
5134                  "column": 1
5135                }
5136              }
5137            },
5138            "overloads": [],
5139            "decorators": [],
5140            "loc": {
5141              "start": {
5142                "line": 1,
5143                "column": 1
5144              },
5145              "end": {
5146                "line": 1,
5147                "column": 1
5148              }
5149            }
5150          },
5151          {
5152            "type": "MethodDefinition",
5153            "key": {
5154              "type": "Identifier",
5155              "name": "boxedfromInt",
5156              "decorators": [],
5157              "loc": {
5158                "start": {
5159                  "line": 1,
5160                  "column": 1
5161                },
5162                "end": {
5163                  "line": 1,
5164                  "column": 1
5165                }
5166              }
5167            },
5168            "kind": "method",
5169            "accessibility": "public",
5170            "static": true,
5171            "optional": false,
5172            "computed": false,
5173            "value": {
5174              "type": "FunctionExpression",
5175              "function": {
5176                "type": "ScriptFunction",
5177                "id": {
5178                  "type": "Identifier",
5179                  "name": "boxedfromInt",
5180                  "decorators": [],
5181                  "loc": {
5182                    "start": {
5183                      "line": 1,
5184                      "column": 1
5185                    },
5186                    "end": {
5187                      "line": 1,
5188                      "column": 1
5189                    }
5190                  }
5191                },
5192                "generator": false,
5193                "async": false,
5194                "expression": false,
5195                "params": [
5196                  {
5197                    "type": "ETSParameterExpression",
5198                    "name": {
5199                      "type": "Identifier",
5200                      "name": "ordinal",
5201                      "typeAnnotation": {
5202                        "type": "ETSPrimitiveType",
5203                        "loc": {
5204                          "start": {
5205                            "line": 1,
5206                            "column": 1
5207                          },
5208                          "end": {
5209                            "line": 1,
5210                            "column": 1
5211                          }
5212                        }
5213                      },
5214                      "decorators": [],
5215                      "loc": {
5216                        "start": {
5217                          "line": 1,
5218                          "column": 1
5219                        },
5220                        "end": {
5221                          "line": 1,
5222                          "column": 1
5223                        }
5224                      }
5225                    },
5226                    "loc": {
5227                      "start": {
5228                        "line": 1,
5229                        "column": 1
5230                      },
5231                      "end": {
5232                        "line": 1,
5233                        "column": 1
5234                      }
5235                    }
5236                  }
5237                ],
5238                "returnType": {
5239                  "type": "ETSTypeReference",
5240                  "part": {
5241                    "type": "ETSTypeReferencePart",
5242                    "name": {
5243                      "type": "Identifier",
5244                      "name": "#A",
5245                      "decorators": [],
5246                      "loc": {
5247                        "start": {
5248                          "line": 1,
5249                          "column": 1
5250                        },
5251                        "end": {
5252                          "line": 1,
5253                          "column": 1
5254                        }
5255                      }
5256                    },
5257                    "loc": {
5258                      "start": {
5259                        "line": 1,
5260                        "column": 1
5261                      },
5262                      "end": {
5263                        "line": 1,
5264                        "column": 1
5265                      }
5266                    }
5267                  },
5268                  "loc": {
5269                    "start": {
5270                      "line": 1,
5271                      "column": 1
5272                    },
5273                    "end": {
5274                      "line": 1,
5275                      "column": 1
5276                    }
5277                  }
5278                },
5279                "body": {
5280                  "type": "BlockStatement",
5281                  "statements": [
5282                    {
5283                      "type": "IfStatement",
5284                      "test": {
5285                        "type": "BinaryExpression",
5286                        "operator": "<",
5287                        "left": {
5288                          "type": "Identifier",
5289                          "name": "ordinal",
5290                          "decorators": [],
5291                          "loc": {
5292                            "start": {
5293                              "line": 1,
5294                              "column": 1
5295                            },
5296                            "end": {
5297                              "line": 1,
5298                              "column": 1
5299                            }
5300                          }
5301                        },
5302                        "right": {
5303                          "type": "MemberExpression",
5304                          "object": {
5305                            "type": "Identifier",
5306                            "name": "BoxedItemsArray",
5307                            "decorators": [],
5308                            "loc": {
5309                              "start": {
5310                                "line": 1,
5311                                "column": 1
5312                              },
5313                              "end": {
5314                                "line": 1,
5315                                "column": 1
5316                              }
5317                            }
5318                          },
5319                          "property": {
5320                            "type": "Identifier",
5321                            "name": "length",
5322                            "decorators": [],
5323                            "loc": {
5324                              "start": {
5325                                "line": 1,
5326                                "column": 1
5327                              },
5328                              "end": {
5329                                "line": 1,
5330                                "column": 1
5331                              }
5332                            }
5333                          },
5334                          "computed": false,
5335                          "optional": false,
5336                          "loc": {
5337                            "start": {
5338                              "line": 1,
5339                              "column": 1
5340                            },
5341                            "end": {
5342                              "line": 1,
5343                              "column": 1
5344                            }
5345                          }
5346                        },
5347                        "loc": {
5348                          "start": {
5349                            "line": 1,
5350                            "column": 1
5351                          },
5352                          "end": {
5353                            "line": 1,
5354                            "column": 1
5355                          }
5356                        }
5357                      },
5358                      "consequent": {
5359                        "type": "ReturnStatement",
5360                        "argument": {
5361                          "type": "MemberExpression",
5362                          "object": {
5363                            "type": "Identifier",
5364                            "name": "BoxedItemsArray",
5365                            "decorators": [],
5366                            "loc": {
5367                              "start": {
5368                                "line": 1,
5369                                "column": 1
5370                              },
5371                              "end": {
5372                                "line": 1,
5373                                "column": 1
5374                              }
5375                            }
5376                          },
5377                          "property": {
5378                            "type": "Identifier",
5379                            "name": "ordinal",
5380                            "decorators": [],
5381                            "loc": {
5382                              "start": {
5383                                "line": 1,
5384                                "column": 1
5385                              },
5386                              "end": {
5387                                "line": 1,
5388                                "column": 1
5389                              }
5390                            }
5391                          },
5392                          "computed": true,
5393                          "optional": false,
5394                          "loc": {
5395                            "start": {
5396                              "line": 1,
5397                              "column": 1
5398                            },
5399                            "end": {
5400                              "line": 1,
5401                              "column": 1
5402                            }
5403                          }
5404                        },
5405                        "loc": {
5406                          "start": {
5407                            "line": 1,
5408                            "column": 1
5409                          },
5410                          "end": {
5411                            "line": 1,
5412                            "column": 1
5413                          }
5414                        }
5415                      },
5416                      "alternate": null,
5417                      "loc": {
5418                        "start": {
5419                          "line": 1,
5420                          "column": 1
5421                        },
5422                        "end": {
5423                          "line": 1,
5424                          "column": 1
5425                        }
5426                      }
5427                    },
5428                    {
5429                      "type": "ThrowStatement",
5430                      "argument": {
5431                        "type": "ETSNewClassInstanceExpression",
5432                        "typeReference": {
5433                          "type": "ETSTypeReference",
5434                          "part": {
5435                            "type": "ETSTypeReferencePart",
5436                            "name": {
5437                              "type": "Identifier",
5438                              "name": "Exception",
5439                              "decorators": [],
5440                              "loc": {
5441                                "start": {
5442                                  "line": 1,
5443                                  "column": 1
5444                                },
5445                                "end": {
5446                                  "line": 1,
5447                                  "column": 1
5448                                }
5449                              }
5450                            },
5451                            "loc": {
5452                              "start": {
5453                                "line": 1,
5454                                "column": 1
5455                              },
5456                              "end": {
5457                                "line": 1,
5458                                "column": 1
5459                              }
5460                            }
5461                          },
5462                          "loc": {
5463                            "start": {
5464                              "line": 1,
5465                              "column": 1
5466                            },
5467                            "end": {
5468                              "line": 1,
5469                              "column": 1
5470                            }
5471                          }
5472                        },
5473                        "arguments": [
5474                          {
5475                            "type": "BinaryExpression",
5476                            "operator": "+",
5477                            "left": {
5478                              "type": "StringLiteral",
5479                              "value": "No enum constant in A with ordinal value ",
5480                              "loc": {
5481                                "start": {
5482                                  "line": 1,
5483                                  "column": 1
5484                                },
5485                                "end": {
5486                                  "line": 1,
5487                                  "column": 1
5488                                }
5489                              }
5490                            },
5491                            "right": {
5492                              "type": "Identifier",
5493                              "name": "ordinal",
5494                              "decorators": [],
5495                              "loc": {
5496                                "start": {
5497                                  "line": 1,
5498                                  "column": 1
5499                                },
5500                                "end": {
5501                                  "line": 1,
5502                                  "column": 1
5503                                }
5504                              }
5505                            },
5506                            "loc": {
5507                              "start": {
5508                                "line": 1,
5509                                "column": 1
5510                              },
5511                              "end": {
5512                                "line": 1,
5513                                "column": 1
5514                              }
5515                            }
5516                          }
5517                        ],
5518                        "loc": {
5519                          "start": {
5520                            "line": 1,
5521                            "column": 1
5522                          },
5523                          "end": {
5524                            "line": 1,
5525                            "column": 1
5526                          }
5527                        }
5528                      },
5529                      "loc": {
5530                        "start": {
5531                          "line": 1,
5532                          "column": 1
5533                        },
5534                        "end": {
5535                          "line": 1,
5536                          "column": 1
5537                        }
5538                      }
5539                    }
5540                  ],
5541                  "loc": {
5542                    "start": {
5543                      "line": 1,
5544                      "column": 1
5545                    },
5546                    "end": {
5547                      "line": 1,
5548                      "column": 1
5549                    }
5550                  }
5551                }
5552                "throwMarker": "throws",
5553                "loc": {
5554                  "start": {
5555                    "line": 1,
5556                    "column": 1
5557                  },
5558                  "end": {
5559                    "line": 1,
5560                    "column": 1
5561                  }
5562                }
5563              },
5564              "loc": {
5565                "start": {
5566                  "line": 1,
5567                  "column": 1
5568                },
5569                "end": {
5570                  "line": 1,
5571                  "column": 1
5572                }
5573              }
5574            },
5575            "overloads": [],
5576            "decorators": [],
5577            "loc": {
5578              "start": {
5579                "line": 1,
5580                "column": 1
5581              },
5582              "end": {
5583                "line": 1,
5584                "column": 1
5585              }
5586            }
5587          }
5588        ],
5589        "loc": {
5590          "start": {
5591            "line": 1,
5592            "column": 1
5593          },
5594          "end": {
5595            "line": 1,
5596            "column": 1
5597          }
5598        }
5599      },
5600      "loc": {
5601        "start": {
5602          "line": 1,
5603          "column": 1
5604        },
5605        "end": {
5606          "line": 1,
5607          "column": 1
5608        }
5609      }
5610    },
5611    {
5612      "type": "ClassDeclaration",
5613      "definition": {
5614        "id": {
5615          "type": "Identifier",
5616          "name": "#E",
5617          "decorators": [],
5618          "loc": {
5619            "start": {
5620              "line": 1,
5621              "column": 1
5622            },
5623            "end": {
5624              "line": 1,
5625              "column": 1
5626            }
5627          }
5628        },
5629        "superClass": null,
5630        "implements": [],
5631        "body": [
5632          {
5633            "type": "ClassProperty",
5634            "key": {
5635              "type": "Identifier",
5636              "name": "ordinal",
5637              "decorators": [],
5638              "loc": {
5639                "start": {
5640                  "line": 1,
5641                  "column": 1
5642                },
5643                "end": {
5644                  "line": 1,
5645                  "column": 1
5646                }
5647              }
5648            },
5649            "accessibility": "protected",
5650            "static": false,
5651            "readonly": false,
5652            "declare": false,
5653            "optional": false,
5654            "computed": false,
5655            "typeAnnotation": {
5656              "type": "ETSPrimitiveType",
5657              "loc": {
5658                "start": {
5659                  "line": 1,
5660                  "column": 1
5661                },
5662                "end": {
5663                  "line": 1,
5664                  "column": 1
5665                }
5666              }
5667            },
5668            "definite": false,
5669            "decorators": [],
5670            "loc": {
5671              "start": {
5672                "line": 1,
5673                "column": 1
5674              },
5675              "end": {
5676                "line": 1,
5677                "column": 1
5678              }
5679            }
5680          },
5681          {
5682            "type": "MethodDefinition",
5683            "key": {
5684              "type": "Identifier",
5685              "name": "<cctor>",
5686              "decorators": [],
5687              "loc": {
5688                "start": {
5689                  "line": 1,
5690                  "column": 1
5691                },
5692                "end": {
5693                  "line": 1,
5694                  "column": 1
5695                }
5696              }
5697            },
5698            "kind": "method",
5699            "accessibility": "public",
5700            "static": true,
5701            "optional": false,
5702            "computed": false,
5703            "value": {
5704              "type": "FunctionExpression",
5705              "function": {
5706                "type": "ScriptFunction",
5707                "id": {
5708                  "type": "Identifier",
5709                  "name": "<cctor>",
5710                  "decorators": [],
5711                  "loc": {
5712                    "start": {
5713                      "line": 1,
5714                      "column": 1
5715                    },
5716                    "end": {
5717                      "line": 1,
5718                      "column": 1
5719                    }
5720                  }
5721                },
5722                "generator": false,
5723                "async": false,
5724                "expression": false,
5725                "params": [],
5726                "body": {
5727                  "type": "BlockStatement",
5728                  "statements": [],
5729                  "loc": {
5730                    "start": {
5731                      "line": 1,
5732                      "column": 1
5733                    },
5734                    "end": {
5735                      "line": 1,
5736                      "column": 1
5737                    }
5738                  }
5739                },
5740                "loc": {
5741                  "start": {
5742                    "line": 1,
5743                    "column": 1
5744                  },
5745                  "end": {
5746                    "line": 1,
5747                    "column": 1
5748                  }
5749                }
5750              },
5751              "loc": {
5752                "start": {
5753                  "line": 1,
5754                  "column": 1
5755                },
5756                "end": {
5757                  "line": 1,
5758                  "column": 1
5759                }
5760              }
5761            },
5762            "overloads": [],
5763            "decorators": [],
5764            "loc": {
5765              "start": {
5766                "line": 1,
5767                "column": 1
5768              },
5769              "end": {
5770                "line": 1,
5771                "column": 1
5772              }
5773            }
5774          },
5775          {
5776            "type": "MethodDefinition",
5777            "key": {
5778              "type": "Identifier",
5779              "name": "constructor",
5780              "decorators": [],
5781              "loc": {
5782                "start": {
5783                  "line": 1,
5784                  "column": 1
5785                },
5786                "end": {
5787                  "line": 1,
5788                  "column": 1
5789                }
5790              }
5791            },
5792            "kind": "constructor",
5793            "accessibility": "public",
5794            "static": false,
5795            "optional": false,
5796            "computed": false,
5797            "value": {
5798              "type": "FunctionExpression",
5799              "function": {
5800                "type": "ScriptFunction",
5801                "id": {
5802                  "type": "Identifier",
5803                  "name": "constructor",
5804                  "decorators": [],
5805                  "loc": {
5806                    "start": {
5807                      "line": 1,
5808                      "column": 1
5809                    },
5810                    "end": {
5811                      "line": 1,
5812                      "column": 1
5813                    }
5814                  }
5815                },
5816                "generator": false,
5817                "async": false,
5818                "expression": false,
5819                "params": [
5820                  {
5821                    "type": "ETSParameterExpression",
5822                    "name": {
5823                      "type": "Identifier",
5824                      "name": "ordinal",
5825                      "typeAnnotation": {
5826                        "type": "ETSPrimitiveType",
5827                        "loc": {
5828                          "start": {
5829                            "line": 1,
5830                            "column": 1
5831                          },
5832                          "end": {
5833                            "line": 1,
5834                            "column": 1
5835                          }
5836                        }
5837                      },
5838                      "decorators": [],
5839                      "loc": {
5840                        "start": {
5841                          "line": 1,
5842                          "column": 1
5843                        },
5844                        "end": {
5845                          "line": 1,
5846                          "column": 1
5847                        }
5848                      }
5849                    },
5850                    "loc": {
5851                      "start": {
5852                        "line": 1,
5853                        "column": 1
5854                      },
5855                      "end": {
5856                        "line": 1,
5857                        "column": 1
5858                      }
5859                    }
5860                  }
5861                ],
5862                "body": {
5863                  "type": "BlockStatement",
5864                  "statements": [
5865                    {
5866                      "type": "ExpressionStatement",
5867                      "expression": {
5868                        "type": "AssignmentExpression",
5869                        "operator": "=",
5870                        "left": {
5871                          "type": "MemberExpression",
5872                          "object": {
5873                            "type": "ThisExpression",
5874                            "loc": {
5875                              "start": {
5876                                "line": 1,
5877                                "column": 1
5878                              },
5879                              "end": {
5880                                "line": 1,
5881                                "column": 1
5882                              }
5883                            }
5884                          },
5885                          "property": {
5886                            "type": "Identifier",
5887                            "name": "ordinal",
5888                            "decorators": [],
5889                            "loc": {
5890                              "start": {
5891                                "line": 1,
5892                                "column": 1
5893                              },
5894                              "end": {
5895                                "line": 1,
5896                                "column": 1
5897                              }
5898                            }
5899                          },
5900                          "computed": false,
5901                          "optional": false,
5902                          "loc": {
5903                            "start": {
5904                              "line": 1,
5905                              "column": 1
5906                            },
5907                            "end": {
5908                              "line": 1,
5909                              "column": 1
5910                            }
5911                          }
5912                        },
5913                        "right": {
5914                          "type": "Identifier",
5915                          "name": "ordinal",
5916                          "decorators": [],
5917                          "loc": {
5918                            "start": {
5919                              "line": 1,
5920                              "column": 1
5921                            },
5922                            "end": {
5923                              "line": 1,
5924                              "column": 1
5925                            }
5926                          }
5927                        },
5928                        "loc": {
5929                          "start": {
5930                            "line": 1,
5931                            "column": 1
5932                          },
5933                          "end": {
5934                            "line": 1,
5935                            "column": 1
5936                          }
5937                        }
5938                      },
5939                      "loc": {
5940                        "start": {
5941                          "line": 1,
5942                          "column": 1
5943                        },
5944                        "end": {
5945                          "line": 1,
5946                          "column": 1
5947                        }
5948                      }
5949                    }
5950                  ],
5951                  "loc": {
5952                    "start": {
5953                      "line": 1,
5954                      "column": 1
5955                    },
5956                    "end": {
5957                      "line": 1,
5958                      "column": 1
5959                    }
5960                  }
5961                },
5962                "loc": {
5963                  "start": {
5964                    "line": 1,
5965                    "column": 1
5966                  },
5967                  "end": {
5968                    "line": 1,
5969                    "column": 1
5970                  }
5971                }
5972              },
5973              "loc": {
5974                "start": {
5975                  "line": 1,
5976                  "column": 1
5977                },
5978                "end": {
5979                  "line": 1,
5980                  "column": 1
5981                }
5982              }
5983            },
5984            "overloads": [],
5985            "decorators": [],
5986            "loc": {
5987              "start": {
5988                "line": 1,
5989                "column": 1
5990              },
5991              "end": {
5992                "line": 1,
5993                "column": 1
5994              }
5995            }
5996          },
5997          {
5998            "type": "ClassProperty",
5999            "key": {
6000              "type": "Identifier",
6001              "name": "NamesArray",
6002              "decorators": [],
6003              "loc": {
6004                "start": {
6005                  "line": 1,
6006                  "column": 1
6007                },
6008                "end": {
6009                  "line": 1,
6010                  "column": 1
6011                }
6012              }
6013            },
6014            "value": {
6015              "type": "ArrayExpression",
6016              "elements": [
6017                {
6018                  "type": "StringLiteral",
6019                  "value": "F",
6020                  "loc": {
6021                    "start": {
6022                      "line": 1,
6023                      "column": 1
6024                    },
6025                    "end": {
6026                      "line": 1,
6027                      "column": 1
6028                    }
6029                  }
6030                },
6031                {
6032                  "type": "StringLiteral",
6033                  "value": "G",
6034                  "loc": {
6035                    "start": {
6036                      "line": 1,
6037                      "column": 1
6038                    },
6039                    "end": {
6040                      "line": 1,
6041                      "column": 1
6042                    }
6043                  }
6044                },
6045                {
6046                  "type": "StringLiteral",
6047                  "value": "H",
6048                  "loc": {
6049                    "start": {
6050                      "line": 1,
6051                      "column": 1
6052                    },
6053                    "end": {
6054                      "line": 1,
6055                      "column": 1
6056                    }
6057                  }
6058                }
6059              ],
6060              "loc": {
6061                "start": {
6062                  "line": 1,
6063                  "column": 1
6064                },
6065                "end": {
6066                  "line": 1,
6067                  "column": 1
6068                }
6069              }
6070            },
6071            "accessibility": "protected",
6072            "static": true,
6073            "readonly": false,
6074            "declare": false,
6075            "optional": false,
6076            "computed": false,
6077            "typeAnnotation": {
6078              "type": "TSArrayType",
6079              "elementType": {
6080                "type": "ETSTypeReference",
6081                "part": {
6082                  "type": "ETSTypeReferencePart",
6083                  "name": {
6084                    "type": "Identifier",
6085                    "name": "String",
6086                    "decorators": [],
6087                    "loc": {
6088                      "start": {
6089                        "line": 1,
6090                        "column": 1
6091                      },
6092                      "end": {
6093                        "line": 1,
6094                        "column": 1
6095                      }
6096                    }
6097                  },
6098                  "loc": {
6099                    "start": {
6100                      "line": 1,
6101                      "column": 1
6102                    },
6103                    "end": {
6104                      "line": 1,
6105                      "column": 1
6106                    }
6107                  }
6108                },
6109                "loc": {
6110                  "start": {
6111                    "line": 1,
6112                    "column": 1
6113                  },
6114                  "end": {
6115                    "line": 1,
6116                    "column": 1
6117                  }
6118                }
6119              },
6120              "loc": {
6121                "start": {
6122                  "line": 1,
6123                  "column": 1
6124                },
6125                "end": {
6126                  "line": 1,
6127                  "column": 1
6128                }
6129              }
6130            },
6131            "definite": false,
6132            "decorators": [],
6133            "loc": {
6134              "start": {
6135                "line": 1,
6136                "column": 1
6137              },
6138              "end": {
6139                "line": 1,
6140                "column": 1
6141              }
6142            }
6143          },
6144          {
6145            "type": "ClassProperty",
6146            "key": {
6147              "type": "Identifier",
6148              "name": "ValuesArray",
6149              "decorators": [],
6150              "loc": {
6151                "start": {
6152                  "line": 1,
6153                  "column": 1
6154                },
6155                "end": {
6156                  "line": 1,
6157                  "column": 1
6158                }
6159              }
6160            },
6161            "value": {
6162              "type": "ArrayExpression",
6163              "elements": [
6164                {
6165                  "type": "NumberLiteral",
6166                  "value": 0,
6167                  "loc": {
6168                    "start": {
6169                      "line": 1,
6170                      "column": 1
6171                    },
6172                    "end": {
6173                      "line": 1,
6174                      "column": 1
6175                    }
6176                  }
6177                },
6178                {
6179                  "type": "NumberLiteral",
6180                  "value": 1,
6181                  "loc": {
6182                    "start": {
6183                      "line": 1,
6184                      "column": 1
6185                    },
6186                    "end": {
6187                      "line": 1,
6188                      "column": 1
6189                    }
6190                  }
6191                },
6192                {
6193                  "type": "NumberLiteral",
6194                  "value": 2,
6195                  "loc": {
6196                    "start": {
6197                      "line": 1,
6198                      "column": 1
6199                    },
6200                    "end": {
6201                      "line": 1,
6202                      "column": 1
6203                    }
6204                  }
6205                }
6206              ],
6207              "loc": {
6208                "start": {
6209                  "line": 1,
6210                  "column": 1
6211                },
6212                "end": {
6213                  "line": 1,
6214                  "column": 1
6215                }
6216              }
6217            },
6218            "accessibility": "protected",
6219            "static": true,
6220            "readonly": false,
6221            "declare": false,
6222            "optional": false,
6223            "computed": false,
6224            "typeAnnotation": {
6225              "type": "TSArrayType",
6226              "elementType": {
6227                "type": "ETSPrimitiveType",
6228                "loc": {
6229                  "start": {
6230                    "line": 1,
6231                    "column": 1
6232                  },
6233                  "end": {
6234                    "line": 1,
6235                    "column": 1
6236                  }
6237                }
6238              },
6239              "loc": {
6240                "start": {
6241                  "line": 1,
6242                  "column": 1
6243                },
6244                "end": {
6245                  "line": 1,
6246                  "column": 1
6247                }
6248              }
6249            },
6250            "definite": false,
6251            "decorators": [],
6252            "loc": {
6253              "start": {
6254                "line": 1,
6255                "column": 1
6256              },
6257              "end": {
6258                "line": 1,
6259                "column": 1
6260              }
6261            }
6262          },
6263          {
6264            "type": "ClassProperty",
6265            "key": {
6266              "type": "Identifier",
6267              "name": "StringValuesArray",
6268              "decorators": [],
6269              "loc": {
6270                "start": {
6271                  "line": 1,
6272                  "column": 1
6273                },
6274                "end": {
6275                  "line": 1,
6276                  "column": 1
6277                }
6278              }
6279            },
6280            "value": {
6281              "type": "ArrayExpression",
6282              "elements": [
6283                {
6284                  "type": "StringLiteral",
6285                  "value": "0",
6286                  "loc": {
6287                    "start": {
6288                      "line": 1,
6289                      "column": 1
6290                    },
6291                    "end": {
6292                      "line": 1,
6293                      "column": 1
6294                    }
6295                  }
6296                },
6297                {
6298                  "type": "StringLiteral",
6299                  "value": "1",
6300                  "loc": {
6301                    "start": {
6302                      "line": 1,
6303                      "column": 1
6304                    },
6305                    "end": {
6306                      "line": 1,
6307                      "column": 1
6308                    }
6309                  }
6310                },
6311                {
6312                  "type": "StringLiteral",
6313                  "value": "2",
6314                  "loc": {
6315                    "start": {
6316                      "line": 1,
6317                      "column": 1
6318                    },
6319                    "end": {
6320                      "line": 1,
6321                      "column": 1
6322                    }
6323                  }
6324                }
6325              ],
6326              "loc": {
6327                "start": {
6328                  "line": 1,
6329                  "column": 1
6330                },
6331                "end": {
6332                  "line": 1,
6333                  "column": 1
6334                }
6335              }
6336            },
6337            "accessibility": "protected",
6338            "static": true,
6339            "readonly": false,
6340            "declare": false,
6341            "optional": false,
6342            "computed": false,
6343            "typeAnnotation": {
6344              "type": "TSArrayType",
6345              "elementType": {
6346                "type": "ETSTypeReference",
6347                "part": {
6348                  "type": "ETSTypeReferencePart",
6349                  "name": {
6350                    "type": "Identifier",
6351                    "name": "String",
6352                    "decorators": [],
6353                    "loc": {
6354                      "start": {
6355                        "line": 1,
6356                        "column": 1
6357                      },
6358                      "end": {
6359                        "line": 1,
6360                        "column": 1
6361                      }
6362                    }
6363                  },
6364                  "loc": {
6365                    "start": {
6366                      "line": 1,
6367                      "column": 1
6368                    },
6369                    "end": {
6370                      "line": 1,
6371                      "column": 1
6372                    }
6373                  }
6374                },
6375                "loc": {
6376                  "start": {
6377                    "line": 1,
6378                    "column": 1
6379                  },
6380                  "end": {
6381                    "line": 1,
6382                    "column": 1
6383                  }
6384                }
6385              },
6386              "loc": {
6387                "start": {
6388                  "line": 1,
6389                  "column": 1
6390                },
6391                "end": {
6392                  "line": 1,
6393                  "column": 1
6394                }
6395              }
6396            },
6397            "definite": false,
6398            "decorators": [],
6399            "loc": {
6400              "start": {
6401                "line": 1,
6402                "column": 1
6403              },
6404              "end": {
6405                "line": 1,
6406                "column": 1
6407              }
6408            }
6409          },
6410          {
6411            "type": "ClassProperty",
6412            "key": {
6413              "type": "Identifier",
6414              "name": "ItemsArray",
6415              "decorators": [],
6416              "loc": {
6417                "start": {
6418                  "line": 1,
6419                  "column": 1
6420                },
6421                "end": {
6422                  "line": 1,
6423                  "column": 1
6424                }
6425              }
6426            },
6427            "value": {
6428              "type": "ArrayExpression",
6429              "elements": [
6430                {
6431                  "type": "MemberExpression",
6432                  "object": {
6433                    "type": "Identifier",
6434                    "name": "E",
6435                    "decorators": [],
6436                    "loc": {
6437                      "start": {
6438                        "line": 1,
6439                        "column": 1
6440                      },
6441                      "end": {
6442                        "line": 1,
6443                        "column": 1
6444                      }
6445                    }
6446                  },
6447                  "property": {
6448                    "type": "Identifier",
6449                    "name": "F",
6450                    "decorators": [],
6451                    "loc": {
6452                      "start": {
6453                        "line": 1,
6454                        "column": 1
6455                      },
6456                      "end": {
6457                        "line": 1,
6458                        "column": 1
6459                      }
6460                    }
6461                  },
6462                  "computed": false,
6463                  "optional": false,
6464                  "loc": {
6465                    "start": {
6466                      "line": 1,
6467                      "column": 1
6468                    },
6469                    "end": {
6470                      "line": 1,
6471                      "column": 1
6472                    }
6473                  }
6474                },
6475                {
6476                  "type": "MemberExpression",
6477                  "object": {
6478                    "type": "Identifier",
6479                    "name": "E",
6480                    "decorators": [],
6481                    "loc": {
6482                      "start": {
6483                        "line": 1,
6484                        "column": 1
6485                      },
6486                      "end": {
6487                        "line": 1,
6488                        "column": 1
6489                      }
6490                    }
6491                  },
6492                  "property": {
6493                    "type": "Identifier",
6494                    "name": "G",
6495                    "decorators": [],
6496                    "loc": {
6497                      "start": {
6498                        "line": 1,
6499                        "column": 1
6500                      },
6501                      "end": {
6502                        "line": 1,
6503                        "column": 1
6504                      }
6505                    }
6506                  },
6507                  "computed": false,
6508                  "optional": false,
6509                  "loc": {
6510                    "start": {
6511                      "line": 1,
6512                      "column": 1
6513                    },
6514                    "end": {
6515                      "line": 1,
6516                      "column": 1
6517                    }
6518                  }
6519                },
6520                {
6521                  "type": "MemberExpression",
6522                  "object": {
6523                    "type": "Identifier",
6524                    "name": "E",
6525                    "decorators": [],
6526                    "loc": {
6527                      "start": {
6528                        "line": 1,
6529                        "column": 1
6530                      },
6531                      "end": {
6532                        "line": 1,
6533                        "column": 1
6534                      }
6535                    }
6536                  },
6537                  "property": {
6538                    "type": "Identifier",
6539                    "name": "H",
6540                    "decorators": [],
6541                    "loc": {
6542                      "start": {
6543                        "line": 1,
6544                        "column": 1
6545                      },
6546                      "end": {
6547                        "line": 1,
6548                        "column": 1
6549                      }
6550                    }
6551                  },
6552                  "computed": false,
6553                  "optional": false,
6554                  "loc": {
6555                    "start": {
6556                      "line": 1,
6557                      "column": 1
6558                    },
6559                    "end": {
6560                      "line": 1,
6561                      "column": 1
6562                    }
6563                  }
6564                }
6565              ],
6566              "loc": {
6567                "start": {
6568                  "line": 1,
6569                  "column": 1
6570                },
6571                "end": {
6572                  "line": 1,
6573                  "column": 1
6574                }
6575              }
6576            },
6577            "accessibility": "protected",
6578            "static": true,
6579            "readonly": false,
6580            "declare": false,
6581            "optional": false,
6582            "computed": false,
6583            "typeAnnotation": {
6584              "type": "TSArrayType",
6585              "elementType": {
6586                "type": "ETSTypeReference",
6587                "part": {
6588                  "type": "ETSTypeReferencePart",
6589                  "name": {
6590                    "type": "Identifier",
6591                    "name": "E",
6592                    "decorators": [],
6593                    "loc": {
6594                      "start": {
6595                        "line": 1,
6596                        "column": 1
6597                      },
6598                      "end": {
6599                        "line": 1,
6600                        "column": 1
6601                      }
6602                    }
6603                  },
6604                  "loc": {
6605                    "start": {
6606                      "line": 1,
6607                      "column": 1
6608                    },
6609                    "end": {
6610                      "line": 1,
6611                      "column": 1
6612                    }
6613                  }
6614                },
6615                "loc": {
6616                  "start": {
6617                    "line": 1,
6618                    "column": 1
6619                  },
6620                  "end": {
6621                    "line": 1,
6622                    "column": 1
6623                  }
6624                }
6625              },
6626              "loc": {
6627                "start": {
6628                  "line": 1,
6629                  "column": 1
6630                },
6631                "end": {
6632                  "line": 1,
6633                  "column": 1
6634                }
6635              }
6636            },
6637            "definite": false,
6638            "decorators": [],
6639            "loc": {
6640              "start": {
6641                "line": 1,
6642                "column": 1
6643              },
6644              "end": {
6645                "line": 1,
6646                "column": 1
6647              }
6648            }
6649          },
6650          {
6651            "type": "ClassProperty",
6652            "key": {
6653              "type": "Identifier",
6654              "name": "BoxedItemsArray",
6655              "decorators": [],
6656              "loc": {
6657                "start": {
6658                  "line": 1,
6659                  "column": 1
6660                },
6661                "end": {
6662                  "line": 1,
6663                  "column": 1
6664                }
6665              }
6666            },
6667            "value": {
6668              "type": "ArrayExpression",
6669              "elements": [
6670                {
6671                  "type": "ETSNewClassInstanceExpression",
6672                  "typeReference": {
6673                    "type": "ETSTypeReference",
6674                    "part": {
6675                      "type": "ETSTypeReferencePart",
6676                      "name": {
6677                        "type": "Identifier",
6678                        "name": "#E",
6679                        "decorators": [],
6680                        "loc": {
6681                          "start": {
6682                            "line": 1,
6683                            "column": 1
6684                          },
6685                          "end": {
6686                            "line": 1,
6687                            "column": 1
6688                          }
6689                        }
6690                      },
6691                      "loc": {
6692                        "start": {
6693                          "line": 1,
6694                          "column": 1
6695                        },
6696                        "end": {
6697                          "line": 1,
6698                          "column": 1
6699                        }
6700                      }
6701                    },
6702                    "loc": {
6703                      "start": {
6704                        "line": 1,
6705                        "column": 1
6706                      },
6707                      "end": {
6708                        "line": 1,
6709                        "column": 1
6710                      }
6711                    }
6712                  },
6713                  "arguments": [
6714                    {
6715                      "type": "TSAsExpression",
6716                      "expression": {
6717                        "type": "MemberExpression",
6718                        "object": {
6719                          "type": "Identifier",
6720                          "name": "E",
6721                          "decorators": [],
6722                          "loc": {
6723                            "start": {
6724                              "line": 1,
6725                              "column": 1
6726                            },
6727                            "end": {
6728                              "line": 1,
6729                              "column": 1
6730                            }
6731                          }
6732                        },
6733                        "property": {
6734                          "type": "Identifier",
6735                          "name": "F",
6736                          "decorators": [],
6737                          "loc": {
6738                            "start": {
6739                              "line": 1,
6740                              "column": 1
6741                            },
6742                            "end": {
6743                              "line": 1,
6744                              "column": 1
6745                            }
6746                          }
6747                        },
6748                        "computed": false,
6749                        "optional": false,
6750                        "loc": {
6751                          "start": {
6752                            "line": 1,
6753                            "column": 1
6754                          },
6755                          "end": {
6756                            "line": 1,
6757                            "column": 1
6758                          }
6759                        }
6760                      },
6761                      "typeAnnotation": {
6762                        "type": "ETSPrimitiveType",
6763                        "loc": {
6764                          "start": {
6765                            "line": 1,
6766                            "column": 1
6767                          },
6768                          "end": {
6769                            "line": 1,
6770                            "column": 1
6771                          }
6772                        }
6773                      },
6774                      "loc": {
6775                        "start": {
6776                          "line": 1,
6777                          "column": 1
6778                        },
6779                        "end": {
6780                          "line": 1,
6781                          "column": 1
6782                        }
6783                      }
6784                    }
6785                  ],
6786                  "loc": {
6787                    "start": {
6788                      "line": 1,
6789                      "column": 1
6790                    },
6791                    "end": {
6792                      "line": 1,
6793                      "column": 1
6794                    }
6795                  }
6796                },
6797                {
6798                  "type": "ETSNewClassInstanceExpression",
6799                  "typeReference": {
6800                    "type": "ETSTypeReference",
6801                    "part": {
6802                      "type": "ETSTypeReferencePart",
6803                      "name": {
6804                        "type": "Identifier",
6805                        "name": "#E",
6806                        "decorators": [],
6807                        "loc": {
6808                          "start": {
6809                            "line": 1,
6810                            "column": 1
6811                          },
6812                          "end": {
6813                            "line": 1,
6814                            "column": 1
6815                          }
6816                        }
6817                      },
6818                      "loc": {
6819                        "start": {
6820                          "line": 1,
6821                          "column": 1
6822                        },
6823                        "end": {
6824                          "line": 1,
6825                          "column": 1
6826                        }
6827                      }
6828                    },
6829                    "loc": {
6830                      "start": {
6831                        "line": 1,
6832                        "column": 1
6833                      },
6834                      "end": {
6835                        "line": 1,
6836                        "column": 1
6837                      }
6838                    }
6839                  },
6840                  "arguments": [
6841                    {
6842                      "type": "TSAsExpression",
6843                      "expression": {
6844                        "type": "MemberExpression",
6845                        "object": {
6846                          "type": "Identifier",
6847                          "name": "E",
6848                          "decorators": [],
6849                          "loc": {
6850                            "start": {
6851                              "line": 1,
6852                              "column": 1
6853                            },
6854                            "end": {
6855                              "line": 1,
6856                              "column": 1
6857                            }
6858                          }
6859                        },
6860                        "property": {
6861                          "type": "Identifier",
6862                          "name": "G",
6863                          "decorators": [],
6864                          "loc": {
6865                            "start": {
6866                              "line": 1,
6867                              "column": 1
6868                            },
6869                            "end": {
6870                              "line": 1,
6871                              "column": 1
6872                            }
6873                          }
6874                        },
6875                        "computed": false,
6876                        "optional": false,
6877                        "loc": {
6878                          "start": {
6879                            "line": 1,
6880                            "column": 1
6881                          },
6882                          "end": {
6883                            "line": 1,
6884                            "column": 1
6885                          }
6886                        }
6887                      },
6888                      "typeAnnotation": {
6889                        "type": "ETSPrimitiveType",
6890                        "loc": {
6891                          "start": {
6892                            "line": 1,
6893                            "column": 1
6894                          },
6895                          "end": {
6896                            "line": 1,
6897                            "column": 1
6898                          }
6899                        }
6900                      },
6901                      "loc": {
6902                        "start": {
6903                          "line": 1,
6904                          "column": 1
6905                        },
6906                        "end": {
6907                          "line": 1,
6908                          "column": 1
6909                        }
6910                      }
6911                    }
6912                  ],
6913                  "loc": {
6914                    "start": {
6915                      "line": 1,
6916                      "column": 1
6917                    },
6918                    "end": {
6919                      "line": 1,
6920                      "column": 1
6921                    }
6922                  }
6923                },
6924                {
6925                  "type": "ETSNewClassInstanceExpression",
6926                  "typeReference": {
6927                    "type": "ETSTypeReference",
6928                    "part": {
6929                      "type": "ETSTypeReferencePart",
6930                      "name": {
6931                        "type": "Identifier",
6932                        "name": "#E",
6933                        "decorators": [],
6934                        "loc": {
6935                          "start": {
6936                            "line": 1,
6937                            "column": 1
6938                          },
6939                          "end": {
6940                            "line": 1,
6941                            "column": 1
6942                          }
6943                        }
6944                      },
6945                      "loc": {
6946                        "start": {
6947                          "line": 1,
6948                          "column": 1
6949                        },
6950                        "end": {
6951                          "line": 1,
6952                          "column": 1
6953                        }
6954                      }
6955                    },
6956                    "loc": {
6957                      "start": {
6958                        "line": 1,
6959                        "column": 1
6960                      },
6961                      "end": {
6962                        "line": 1,
6963                        "column": 1
6964                      }
6965                    }
6966                  },
6967                  "arguments": [
6968                    {
6969                      "type": "TSAsExpression",
6970                      "expression": {
6971                        "type": "MemberExpression",
6972                        "object": {
6973                          "type": "Identifier",
6974                          "name": "E",
6975                          "decorators": [],
6976                          "loc": {
6977                            "start": {
6978                              "line": 1,
6979                              "column": 1
6980                            },
6981                            "end": {
6982                              "line": 1,
6983                              "column": 1
6984                            }
6985                          }
6986                        },
6987                        "property": {
6988                          "type": "Identifier",
6989                          "name": "H",
6990                          "decorators": [],
6991                          "loc": {
6992                            "start": {
6993                              "line": 1,
6994                              "column": 1
6995                            },
6996                            "end": {
6997                              "line": 1,
6998                              "column": 1
6999                            }
7000                          }
7001                        },
7002                        "computed": false,
7003                        "optional": false,
7004                        "loc": {
7005                          "start": {
7006                            "line": 1,
7007                            "column": 1
7008                          },
7009                          "end": {
7010                            "line": 1,
7011                            "column": 1
7012                          }
7013                        }
7014                      },
7015                      "typeAnnotation": {
7016                        "type": "ETSPrimitiveType",
7017                        "loc": {
7018                          "start": {
7019                            "line": 1,
7020                            "column": 1
7021                          },
7022                          "end": {
7023                            "line": 1,
7024                            "column": 1
7025                          }
7026                        }
7027                      },
7028                      "loc": {
7029                        "start": {
7030                          "line": 1,
7031                          "column": 1
7032                        },
7033                        "end": {
7034                          "line": 1,
7035                          "column": 1
7036                        }
7037                      }
7038                    }
7039                  ],
7040                  "loc": {
7041                    "start": {
7042                      "line": 1,
7043                      "column": 1
7044                    },
7045                    "end": {
7046                      "line": 1,
7047                      "column": 1
7048                    }
7049                  }
7050                }
7051              ],
7052              "loc": {
7053                "start": {
7054                  "line": 1,
7055                  "column": 1
7056                },
7057                "end": {
7058                  "line": 1,
7059                  "column": 1
7060                }
7061              }
7062            },
7063            "accessibility": "protected",
7064            "static": true,
7065            "readonly": false,
7066            "declare": false,
7067            "optional": false,
7068            "computed": false,
7069            "typeAnnotation": {
7070              "type": "TSArrayType",
7071              "elementType": {
7072                "type": "ETSTypeReference",
7073                "part": {
7074                  "type": "ETSTypeReferencePart",
7075                  "name": {
7076                    "type": "Identifier",
7077                    "name": "#E",
7078                    "decorators": [],
7079                    "loc": {
7080                      "start": {
7081                        "line": 1,
7082                        "column": 1
7083                      },
7084                      "end": {
7085                        "line": 1,
7086                        "column": 1
7087                      }
7088                    }
7089                  },
7090                  "loc": {
7091                    "start": {
7092                      "line": 1,
7093                      "column": 1
7094                    },
7095                    "end": {
7096                      "line": 1,
7097                      "column": 1
7098                    }
7099                  }
7100                },
7101                "loc": {
7102                  "start": {
7103                    "line": 1,
7104                    "column": 1
7105                  },
7106                  "end": {
7107                    "line": 1,
7108                    "column": 1
7109                  }
7110                }
7111              },
7112              "loc": {
7113                "start": {
7114                  "line": 1,
7115                  "column": 1
7116                },
7117                "end": {
7118                  "line": 1,
7119                  "column": 1
7120                }
7121              }
7122            },
7123            "definite": false,
7124            "decorators": [],
7125            "loc": {
7126              "start": {
7127                "line": 1,
7128                "column": 1
7129              },
7130              "end": {
7131                "line": 1,
7132                "column": 1
7133              }
7134            }
7135          },
7136          {
7137            "type": "MethodDefinition",
7138            "key": {
7139              "type": "Identifier",
7140              "name": "getName",
7141              "decorators": [],
7142              "loc": {
7143                "start": {
7144                  "line": 1,
7145                  "column": 1
7146                },
7147                "end": {
7148                  "line": 1,
7149                  "column": 1
7150                }
7151              }
7152            },
7153            "kind": "method",
7154            "accessibility": "public",
7155            "static": true,
7156            "optional": false,
7157            "computed": false,
7158            "value": {
7159              "type": "FunctionExpression",
7160              "function": {
7161                "type": "ScriptFunction",
7162                "id": {
7163                  "type": "Identifier",
7164                  "name": "getName",
7165                  "decorators": [],
7166                  "loc": {
7167                    "start": {
7168                      "line": 1,
7169                      "column": 1
7170                    },
7171                    "end": {
7172                      "line": 1,
7173                      "column": 1
7174                    }
7175                  }
7176                },
7177                "generator": false,
7178                "async": false,
7179                "expression": false,
7180                "params": [
7181                  {
7182                    "type": "ETSParameterExpression",
7183                    "name": {
7184                      "type": "Identifier",
7185                      "name": "ordinal",
7186                      "typeAnnotation": {
7187                        "type": "ETSTypeReference",
7188                        "part": {
7189                          "type": "ETSTypeReferencePart",
7190                          "name": {
7191                            "type": "Identifier",
7192                            "name": "E",
7193                            "decorators": [],
7194                            "loc": {
7195                              "start": {
7196                                "line": 1,
7197                                "column": 1
7198                              },
7199                              "end": {
7200                                "line": 1,
7201                                "column": 1
7202                              }
7203                            }
7204                          },
7205                          "loc": {
7206                            "start": {
7207                              "line": 1,
7208                              "column": 1
7209                            },
7210                            "end": {
7211                              "line": 1,
7212                              "column": 1
7213                            }
7214                          }
7215                        },
7216                        "loc": {
7217                          "start": {
7218                            "line": 1,
7219                            "column": 1
7220                          },
7221                          "end": {
7222                            "line": 1,
7223                            "column": 1
7224                          }
7225                        }
7226                      },
7227                      "decorators": [],
7228                      "loc": {
7229                        "start": {
7230                          "line": 1,
7231                          "column": 1
7232                        },
7233                        "end": {
7234                          "line": 1,
7235                          "column": 1
7236                        }
7237                      }
7238                    },
7239                    "loc": {
7240                      "start": {
7241                        "line": 1,
7242                        "column": 1
7243                      },
7244                      "end": {
7245                        "line": 1,
7246                        "column": 1
7247                      }
7248                    }
7249                  }
7250                ],
7251                "returnType": {
7252                  "type": "ETSTypeReference",
7253                  "part": {
7254                    "type": "ETSTypeReferencePart",
7255                    "name": {
7256                      "type": "Identifier",
7257                      "name": "String",
7258                      "decorators": [],
7259                      "loc": {
7260                        "start": {
7261                          "line": 1,
7262                          "column": 1
7263                        },
7264                        "end": {
7265                          "line": 1,
7266                          "column": 1
7267                        }
7268                      }
7269                    },
7270                    "loc": {
7271                      "start": {
7272                        "line": 1,
7273                        "column": 1
7274                      },
7275                      "end": {
7276                        "line": 1,
7277                        "column": 1
7278                      }
7279                    }
7280                  },
7281                  "loc": {
7282                    "start": {
7283                      "line": 1,
7284                      "column": 1
7285                    },
7286                    "end": {
7287                      "line": 1,
7288                      "column": 1
7289                    }
7290                  }
7291                },
7292                "body": {
7293                  "type": "BlockStatement",
7294                  "statements": [
7295                    {
7296                      "type": "ReturnStatement",
7297                      "argument": {
7298                        "type": "MemberExpression",
7299                        "object": {
7300                          "type": "Identifier",
7301                          "name": "NamesArray",
7302                          "decorators": [],
7303                          "loc": {
7304                            "start": {
7305                              "line": 1,
7306                              "column": 1
7307                            },
7308                            "end": {
7309                              "line": 1,
7310                              "column": 1
7311                            }
7312                          }
7313                        },
7314                        "property": {
7315                          "type": "TSAsExpression",
7316                          "expression": {
7317                            "type": "Identifier",
7318                            "name": "ordinal",
7319                            "decorators": [],
7320                            "loc": {
7321                              "start": {
7322                                "line": 1,
7323                                "column": 1
7324                              },
7325                              "end": {
7326                                "line": 1,
7327                                "column": 1
7328                              }
7329                            }
7330                          },
7331                          "typeAnnotation": {
7332                            "type": "ETSPrimitiveType",
7333                            "loc": {
7334                              "start": {
7335                                "line": 1,
7336                                "column": 1
7337                              },
7338                              "end": {
7339                                "line": 1,
7340                                "column": 1
7341                              }
7342                            }
7343                          },
7344                          "loc": {
7345                            "start": {
7346                              "line": 1,
7347                              "column": 1
7348                            },
7349                            "end": {
7350                              "line": 1,
7351                              "column": 1
7352                            }
7353                          }
7354                        },
7355                        "computed": true,
7356                        "optional": false,
7357                        "loc": {
7358                          "start": {
7359                            "line": 1,
7360                            "column": 1
7361                          },
7362                          "end": {
7363                            "line": 1,
7364                            "column": 1
7365                          }
7366                        }
7367                      },
7368                      "loc": {
7369                        "start": {
7370                          "line": 1,
7371                          "column": 1
7372                        },
7373                        "end": {
7374                          "line": 1,
7375                          "column": 1
7376                        }
7377                      }
7378                    }
7379                  ],
7380                  "loc": {
7381                    "start": {
7382                      "line": 1,
7383                      "column": 1
7384                    },
7385                    "end": {
7386                      "line": 1,
7387                      "column": 1
7388                    }
7389                  }
7390                },
7391                "loc": {
7392                  "start": {
7393                    "line": 1,
7394                    "column": 1
7395                  },
7396                  "end": {
7397                    "line": 1,
7398                    "column": 1
7399                  }
7400                }
7401              },
7402              "loc": {
7403                "start": {
7404                  "line": 1,
7405                  "column": 1
7406                },
7407                "end": {
7408                  "line": 1,
7409                  "column": 1
7410                }
7411              }
7412            },
7413            "overloads": [],
7414            "decorators": [],
7415            "loc": {
7416              "start": {
7417                "line": 1,
7418                "column": 1
7419              },
7420              "end": {
7421                "line": 1,
7422                "column": 1
7423              }
7424            }
7425          },
7426          {
7427            "type": "MethodDefinition",
7428            "key": {
7429              "type": "Identifier",
7430              "name": "getValueOf",
7431              "decorators": [],
7432              "loc": {
7433                "start": {
7434                  "line": 1,
7435                  "column": 1
7436                },
7437                "end": {
7438                  "line": 1,
7439                  "column": 1
7440                }
7441              }
7442            },
7443            "kind": "method",
7444            "accessibility": "public",
7445            "static": true,
7446            "optional": false,
7447            "computed": false,
7448            "value": {
7449              "type": "FunctionExpression",
7450              "function": {
7451                "type": "ScriptFunction",
7452                "id": {
7453                  "type": "Identifier",
7454                  "name": "getValueOf",
7455                  "decorators": [],
7456                  "loc": {
7457                    "start": {
7458                      "line": 1,
7459                      "column": 1
7460                    },
7461                    "end": {
7462                      "line": 1,
7463                      "column": 1
7464                    }
7465                  }
7466                },
7467                "generator": false,
7468                "async": false,
7469                "expression": false,
7470                "params": [
7471                  {
7472                    "type": "ETSParameterExpression",
7473                    "name": {
7474                      "type": "Identifier",
7475                      "name": "name",
7476                      "typeAnnotation": {
7477                        "type": "ETSTypeReference",
7478                        "part": {
7479                          "type": "ETSTypeReferencePart",
7480                          "name": {
7481                            "type": "Identifier",
7482                            "name": "String",
7483                            "decorators": [],
7484                            "loc": {
7485                              "start": {
7486                                "line": 1,
7487                                "column": 1
7488                              },
7489                              "end": {
7490                                "line": 1,
7491                                "column": 1
7492                              }
7493                            }
7494                          },
7495                          "loc": {
7496                            "start": {
7497                              "line": 1,
7498                              "column": 1
7499                            },
7500                            "end": {
7501                              "line": 1,
7502                              "column": 1
7503                            }
7504                          }
7505                        },
7506                        "loc": {
7507                          "start": {
7508                            "line": 1,
7509                            "column": 1
7510                          },
7511                          "end": {
7512                            "line": 1,
7513                            "column": 1
7514                          }
7515                        }
7516                      },
7517                      "decorators": [],
7518                      "loc": {
7519                        "start": {
7520                          "line": 1,
7521                          "column": 1
7522                        },
7523                        "end": {
7524                          "line": 1,
7525                          "column": 1
7526                        }
7527                      }
7528                    },
7529                    "loc": {
7530                      "start": {
7531                        "line": 1,
7532                        "column": 1
7533                      },
7534                      "end": {
7535                        "line": 1,
7536                        "column": 1
7537                      }
7538                    }
7539                  }
7540                ],
7541                "returnType": {
7542                  "type": "ETSTypeReference",
7543                  "part": {
7544                    "type": "ETSTypeReferencePart",
7545                    "name": {
7546                      "type": "Identifier",
7547                      "name": "E",
7548                      "decorators": [],
7549                      "loc": {
7550                        "start": {
7551                          "line": 1,
7552                          "column": 1
7553                        },
7554                        "end": {
7555                          "line": 1,
7556                          "column": 1
7557                        }
7558                      }
7559                    },
7560                    "loc": {
7561                      "start": {
7562                        "line": 1,
7563                        "column": 1
7564                      },
7565                      "end": {
7566                        "line": 1,
7567                        "column": 1
7568                      }
7569                    }
7570                  },
7571                  "loc": {
7572                    "start": {
7573                      "line": 1,
7574                      "column": 1
7575                    },
7576                    "end": {
7577                      "line": 1,
7578                      "column": 1
7579                    }
7580                  }
7581                },
7582                "body": {
7583                  "type": "BlockStatement",
7584                  "statements": [
7585                    {
7586                      "type": "ForUpdateStatement",
7587                      "init": {
7588                        "type": "VariableDeclaration",
7589                        "declarations": [
7590                          {
7591                            "type": "VariableDeclarator",
7592                            "id": {
7593                              "type": "Identifier",
7594                              "name": "i",
7595                              "decorators": [],
7596                              "loc": {
7597                                "start": {
7598                                  "line": 1,
7599                                  "column": 1
7600                                },
7601                                "end": {
7602                                  "line": 1,
7603                                  "column": 1
7604                                }
7605                              }
7606                            },
7607                            "init": {
7608                              "type": "NumberLiteral",
7609                              "value": 0,
7610                              "loc": {
7611                                "start": {
7612                                  "line": 1,
7613                                  "column": 1
7614                                },
7615                                "end": {
7616                                  "line": 1,
7617                                  "column": 1
7618                                }
7619                              }
7620                            },
7621                            "loc": {
7622                              "start": {
7623                                "line": 1,
7624                                "column": 1
7625                              },
7626                              "end": {
7627                                "line": 1,
7628                                "column": 1
7629                              }
7630                            }
7631                          }
7632                        ],
7633                        "kind": "let",
7634                        "loc": {
7635                          "start": {
7636                            "line": 1,
7637                            "column": 1
7638                          },
7639                          "end": {
7640                            "line": 1,
7641                            "column": 1
7642                          }
7643                        }
7644                      },
7645                      "test": {
7646                        "type": "BinaryExpression",
7647                        "operator": "<",
7648                        "left": {
7649                          "type": "Identifier",
7650                          "name": "i",
7651                          "decorators": [],
7652                          "loc": {
7653                            "start": {
7654                              "line": 1,
7655                              "column": 1
7656                            },
7657                            "end": {
7658                              "line": 1,
7659                              "column": 1
7660                            }
7661                          }
7662                        },
7663                        "right": {
7664                          "type": "MemberExpression",
7665                          "object": {
7666                            "type": "Identifier",
7667                            "name": "NamesArray",
7668                            "decorators": [],
7669                            "loc": {
7670                              "start": {
7671                                "line": 1,
7672                                "column": 1
7673                              },
7674                              "end": {
7675                                "line": 1,
7676                                "column": 1
7677                              }
7678                            }
7679                          },
7680                          "property": {
7681                            "type": "Identifier",
7682                            "name": "length",
7683                            "decorators": [],
7684                            "loc": {
7685                              "start": {
7686                                "line": 1,
7687                                "column": 1
7688                              },
7689                              "end": {
7690                                "line": 1,
7691                                "column": 1
7692                              }
7693                            }
7694                          },
7695                          "computed": false,
7696                          "optional": false,
7697                          "loc": {
7698                            "start": {
7699                              "line": 1,
7700                              "column": 1
7701                            },
7702                            "end": {
7703                              "line": 1,
7704                              "column": 1
7705                            }
7706                          }
7707                        },
7708                        "loc": {
7709                          "start": {
7710                            "line": 1,
7711                            "column": 1
7712                          },
7713                          "end": {
7714                            "line": 1,
7715                            "column": 1
7716                          }
7717                        }
7718                      },
7719                      "update": {
7720                        "type": "UpdateExpression",
7721                        "operator": "++",
7722                        "prefix": true,
7723                        "argument": {
7724                          "type": "Identifier",
7725                          "name": "i",
7726                          "decorators": [],
7727                          "loc": {
7728                            "start": {
7729                              "line": 1,
7730                              "column": 1
7731                            },
7732                            "end": {
7733                              "line": 1,
7734                              "column": 1
7735                            }
7736                          }
7737                        },
7738                        "loc": {
7739                          "start": {
7740                            "line": 1,
7741                            "column": 1
7742                          },
7743                          "end": {
7744                            "line": 1,
7745                            "column": 1
7746                          }
7747                        }
7748                      },
7749                      "body": {
7750                        "type": "IfStatement",
7751                        "test": {
7752                          "type": "BinaryExpression",
7753                          "operator": "==",
7754                          "left": {
7755                            "type": "Identifier",
7756                            "name": "name",
7757                            "decorators": [],
7758                            "loc": {
7759                              "start": {
7760                                "line": 1,
7761                                "column": 1
7762                              },
7763                              "end": {
7764                                "line": 1,
7765                                "column": 1
7766                              }
7767                            }
7768                          },
7769                          "right": {
7770                            "type": "MemberExpression",
7771                            "object": {
7772                              "type": "Identifier",
7773                              "name": "NamesArray",
7774                              "decorators": [],
7775                              "loc": {
7776                                "start": {
7777                                  "line": 1,
7778                                  "column": 1
7779                                },
7780                                "end": {
7781                                  "line": 1,
7782                                  "column": 1
7783                                }
7784                              }
7785                            },
7786                            "property": {
7787                              "type": "Identifier",
7788                              "name": "i",
7789                              "decorators": [],
7790                              "loc": {
7791                                "start": {
7792                                  "line": 1,
7793                                  "column": 1
7794                                },
7795                                "end": {
7796                                  "line": 1,
7797                                  "column": 1
7798                                }
7799                              }
7800                            },
7801                            "computed": true,
7802                            "optional": false,
7803                            "loc": {
7804                              "start": {
7805                                "line": 1,
7806                                "column": 1
7807                              },
7808                              "end": {
7809                                "line": 1,
7810                                "column": 1
7811                              }
7812                            }
7813                          },
7814                          "loc": {
7815                            "start": {
7816                              "line": 1,
7817                              "column": 1
7818                            },
7819                            "end": {
7820                              "line": 1,
7821                              "column": 1
7822                            }
7823                          }
7824                        },
7825                        "consequent": {
7826                          "type": "ReturnStatement",
7827                          "argument": {
7828                            "type": "TSAsExpression",
7829                            "expression": {
7830                              "type": "Identifier",
7831                              "name": "i",
7832                              "decorators": [],
7833                              "loc": {
7834                                "start": {
7835                                  "line": 1,
7836                                  "column": 1
7837                                },
7838                                "end": {
7839                                  "line": 1,
7840                                  "column": 1
7841                                }
7842                              }
7843                            },
7844                            "typeAnnotation": {
7845                              "type": "ETSTypeReference",
7846                              "part": {
7847                                "type": "ETSTypeReferencePart",
7848                                "name": {
7849                                  "type": "Identifier",
7850                                  "name": "E",
7851                                  "decorators": [],
7852                                  "loc": {
7853                                    "start": {
7854                                      "line": 1,
7855                                      "column": 1
7856                                    },
7857                                    "end": {
7858                                      "line": 1,
7859                                      "column": 1
7860                                    }
7861                                  }
7862                                },
7863                                "loc": {
7864                                  "start": {
7865                                    "line": 1,
7866                                    "column": 1
7867                                  },
7868                                  "end": {
7869                                    "line": 1,
7870                                    "column": 1
7871                                  }
7872                                }
7873                              },
7874                              "loc": {
7875                                "start": {
7876                                  "line": 1,
7877                                  "column": 1
7878                                },
7879                                "end": {
7880                                  "line": 1,
7881                                  "column": 1
7882                                }
7883                              }
7884                            },
7885                            "loc": {
7886                              "start": {
7887                                "line": 1,
7888                                "column": 1
7889                              },
7890                              "end": {
7891                                "line": 1,
7892                                "column": 1
7893                              }
7894                            }
7895                          },
7896                          "loc": {
7897                            "start": {
7898                              "line": 1,
7899                              "column": 1
7900                            },
7901                            "end": {
7902                              "line": 1,
7903                              "column": 1
7904                            }
7905                          }
7906                        },
7907                        "alternate": null,
7908                        "loc": {
7909                          "start": {
7910                            "line": 1,
7911                            "column": 1
7912                          },
7913                          "end": {
7914                            "line": 1,
7915                            "column": 1
7916                          }
7917                        }
7918                      },
7919                      "loc": {
7920                        "start": {
7921                          "line": 1,
7922                          "column": 1
7923                        },
7924                        "end": {
7925                          "line": 1,
7926                          "column": 1
7927                        }
7928                      }
7929                    },
7930                    {
7931                      "type": "ThrowStatement",
7932                      "argument": {
7933                        "type": "ETSNewClassInstanceExpression",
7934                        "typeReference": {
7935                          "type": "ETSTypeReference",
7936                          "part": {
7937                            "type": "ETSTypeReferencePart",
7938                            "name": {
7939                              "type": "Identifier",
7940                              "name": "Exception",
7941                              "decorators": [],
7942                              "loc": {
7943                                "start": {
7944                                  "line": 1,
7945                                  "column": 1
7946                                },
7947                                "end": {
7948                                  "line": 1,
7949                                  "column": 1
7950                                }
7951                              }
7952                            },
7953                            "loc": {
7954                              "start": {
7955                                "line": 1,
7956                                "column": 1
7957                              },
7958                              "end": {
7959                                "line": 1,
7960                                "column": 1
7961                              }
7962                            }
7963                          },
7964                          "loc": {
7965                            "start": {
7966                              "line": 1,
7967                              "column": 1
7968                            },
7969                            "end": {
7970                              "line": 1,
7971                              "column": 1
7972                            }
7973                          }
7974                        },
7975                        "arguments": [
7976                          {
7977                            "type": "BinaryExpression",
7978                            "operator": "+",
7979                            "left": {
7980                              "type": "StringLiteral",
7981                              "value": "No enum constant E.",
7982                              "loc": {
7983                                "start": {
7984                                  "line": 1,
7985                                  "column": 1
7986                                },
7987                                "end": {
7988                                  "line": 1,
7989                                  "column": 1
7990                                }
7991                              }
7992                            },
7993                            "right": {
7994                              "type": "Identifier",
7995                              "name": "name",
7996                              "decorators": [],
7997                              "loc": {
7998                                "start": {
7999                                  "line": 1,
8000                                  "column": 1
8001                                },
8002                                "end": {
8003                                  "line": 1,
8004                                  "column": 1
8005                                }
8006                              }
8007                            },
8008                            "loc": {
8009                              "start": {
8010                                "line": 1,
8011                                "column": 1
8012                              },
8013                              "end": {
8014                                "line": 1,
8015                                "column": 1
8016                              }
8017                            }
8018                          }
8019                        ],
8020                        "loc": {
8021                          "start": {
8022                            "line": 1,
8023                            "column": 1
8024                          },
8025                          "end": {
8026                            "line": 1,
8027                            "column": 1
8028                          }
8029                        }
8030                      },
8031                      "loc": {
8032                        "start": {
8033                          "line": 1,
8034                          "column": 1
8035                        },
8036                        "end": {
8037                          "line": 1,
8038                          "column": 1
8039                        }
8040                      }
8041                    }
8042                  ],
8043                  "loc": {
8044                    "start": {
8045                      "line": 1,
8046                      "column": 1
8047                    },
8048                    "end": {
8049                      "line": 1,
8050                      "column": 1
8051                    }
8052                  }
8053                }
8054                "throwMarker": "throws",
8055                "loc": {
8056                  "start": {
8057                    "line": 1,
8058                    "column": 1
8059                  },
8060                  "end": {
8061                    "line": 1,
8062                    "column": 1
8063                  }
8064                }
8065              },
8066              "loc": {
8067                "start": {
8068                  "line": 1,
8069                  "column": 1
8070                },
8071                "end": {
8072                  "line": 1,
8073                  "column": 1
8074                }
8075              }
8076            },
8077            "overloads": [],
8078            "decorators": [],
8079            "loc": {
8080              "start": {
8081                "line": 1,
8082                "column": 1
8083              },
8084              "end": {
8085                "line": 1,
8086                "column": 1
8087              }
8088            }
8089          },
8090          {
8091            "type": "MethodDefinition",
8092            "key": {
8093              "type": "Identifier",
8094              "name": "valueOf",
8095              "decorators": [],
8096              "loc": {
8097                "start": {
8098                  "line": 1,
8099                  "column": 1
8100                },
8101                "end": {
8102                  "line": 1,
8103                  "column": 1
8104                }
8105              }
8106            },
8107            "kind": "method",
8108            "accessibility": "public",
8109            "static": true,
8110            "optional": false,
8111            "computed": false,
8112            "value": {
8113              "type": "FunctionExpression",
8114              "function": {
8115                "type": "ScriptFunction",
8116                "id": {
8117                  "type": "Identifier",
8118                  "name": "valueOf",
8119                  "decorators": [],
8120                  "loc": {
8121                    "start": {
8122                      "line": 1,
8123                      "column": 1
8124                    },
8125                    "end": {
8126                      "line": 1,
8127                      "column": 1
8128                    }
8129                  }
8130                },
8131                "generator": false,
8132                "async": false,
8133                "expression": false,
8134                "params": [
8135                  {
8136                    "type": "ETSParameterExpression",
8137                    "name": {
8138                      "type": "Identifier",
8139                      "name": "e",
8140                      "typeAnnotation": {
8141                        "type": "ETSTypeReference",
8142                        "part": {
8143                          "type": "ETSTypeReferencePart",
8144                          "name": {
8145                            "type": "Identifier",
8146                            "name": "E",
8147                            "decorators": [],
8148                            "loc": {
8149                              "start": {
8150                                "line": 1,
8151                                "column": 1
8152                              },
8153                              "end": {
8154                                "line": 1,
8155                                "column": 1
8156                              }
8157                            }
8158                          },
8159                          "loc": {
8160                            "start": {
8161                              "line": 1,
8162                              "column": 1
8163                            },
8164                            "end": {
8165                              "line": 1,
8166                              "column": 1
8167                            }
8168                          }
8169                        },
8170                        "loc": {
8171                          "start": {
8172                            "line": 1,
8173                            "column": 1
8174                          },
8175                          "end": {
8176                            "line": 1,
8177                            "column": 1
8178                          }
8179                        }
8180                      },
8181                      "decorators": [],
8182                      "loc": {
8183                        "start": {
8184                          "line": 1,
8185                          "column": 1
8186                        },
8187                        "end": {
8188                          "line": 1,
8189                          "column": 1
8190                        }
8191                      }
8192                    },
8193                    "loc": {
8194                      "start": {
8195                        "line": 1,
8196                        "column": 1
8197                      },
8198                      "end": {
8199                        "line": 1,
8200                        "column": 1
8201                      }
8202                    }
8203                  }
8204                ],
8205                "returnType": {
8206                  "type": "ETSPrimitiveType",
8207                  "loc": {
8208                    "start": {
8209                      "line": 1,
8210                      "column": 1
8211                    },
8212                    "end": {
8213                      "line": 1,
8214                      "column": 1
8215                    }
8216                  }
8217                },
8218                "body": {
8219                  "type": "BlockStatement",
8220                  "statements": [
8221                    {
8222                      "type": "ReturnStatement",
8223                      "argument": {
8224                        "type": "MemberExpression",
8225                        "object": {
8226                          "type": "Identifier",
8227                          "name": "ValuesArray",
8228                          "decorators": [],
8229                          "loc": {
8230                            "start": {
8231                              "line": 1,
8232                              "column": 1
8233                            },
8234                            "end": {
8235                              "line": 1,
8236                              "column": 1
8237                            }
8238                          }
8239                        },
8240                        "property": {
8241                          "type": "TSAsExpression",
8242                          "expression": {
8243                            "type": "Identifier",
8244                            "name": "e",
8245                            "decorators": [],
8246                            "loc": {
8247                              "start": {
8248                                "line": 1,
8249                                "column": 1
8250                              },
8251                              "end": {
8252                                "line": 1,
8253                                "column": 1
8254                              }
8255                            }
8256                          },
8257                          "typeAnnotation": {
8258                            "type": "ETSPrimitiveType",
8259                            "loc": {
8260                              "start": {
8261                                "line": 1,
8262                                "column": 1
8263                              },
8264                              "end": {
8265                                "line": 1,
8266                                "column": 1
8267                              }
8268                            }
8269                          },
8270                          "loc": {
8271                            "start": {
8272                              "line": 1,
8273                              "column": 1
8274                            },
8275                            "end": {
8276                              "line": 1,
8277                              "column": 1
8278                            }
8279                          }
8280                        },
8281                        "computed": true,
8282                        "optional": false,
8283                        "loc": {
8284                          "start": {
8285                            "line": 1,
8286                            "column": 1
8287                          },
8288                          "end": {
8289                            "line": 1,
8290                            "column": 1
8291                          }
8292                        }
8293                      },
8294                      "loc": {
8295                        "start": {
8296                          "line": 1,
8297                          "column": 1
8298                        },
8299                        "end": {
8300                          "line": 1,
8301                          "column": 1
8302                        }
8303                      }
8304                    }
8305                  ],
8306                  "loc": {
8307                    "start": {
8308                      "line": 1,
8309                      "column": 1
8310                    },
8311                    "end": {
8312                      "line": 1,
8313                      "column": 1
8314                    }
8315                  }
8316                },
8317                "loc": {
8318                  "start": {
8319                    "line": 1,
8320                    "column": 1
8321                  },
8322                  "end": {
8323                    "line": 1,
8324                    "column": 1
8325                  }
8326                }
8327              },
8328              "loc": {
8329                "start": {
8330                  "line": 1,
8331                  "column": 1
8332                },
8333                "end": {
8334                  "line": 1,
8335                  "column": 1
8336                }
8337              }
8338            },
8339            "overloads": [],
8340            "decorators": [],
8341            "loc": {
8342              "start": {
8343                "line": 1,
8344                "column": 1
8345              },
8346              "end": {
8347                "line": 1,
8348                "column": 1
8349              }
8350            }
8351          },
8352          {
8353            "type": "MethodDefinition",
8354            "key": {
8355              "type": "Identifier",
8356              "name": "toString",
8357              "decorators": [],
8358              "loc": {
8359                "start": {
8360                  "line": 1,
8361                  "column": 1
8362                },
8363                "end": {
8364                  "line": 1,
8365                  "column": 1
8366                }
8367              }
8368            },
8369            "kind": "method",
8370            "accessibility": "public",
8371            "static": true,
8372            "optional": false,
8373            "computed": false,
8374            "value": {
8375              "type": "FunctionExpression",
8376              "function": {
8377                "type": "ScriptFunction",
8378                "id": {
8379                  "type": "Identifier",
8380                  "name": "toString",
8381                  "decorators": [],
8382                  "loc": {
8383                    "start": {
8384                      "line": 1,
8385                      "column": 1
8386                    },
8387                    "end": {
8388                      "line": 1,
8389                      "column": 1
8390                    }
8391                  }
8392                },
8393                "generator": false,
8394                "async": false,
8395                "expression": false,
8396                "params": [
8397                  {
8398                    "type": "ETSParameterExpression",
8399                    "name": {
8400                      "type": "Identifier",
8401                      "name": "ordinal",
8402                      "typeAnnotation": {
8403                        "type": "ETSTypeReference",
8404                        "part": {
8405                          "type": "ETSTypeReferencePart",
8406                          "name": {
8407                            "type": "Identifier",
8408                            "name": "E",
8409                            "decorators": [],
8410                            "loc": {
8411                              "start": {
8412                                "line": 1,
8413                                "column": 1
8414                              },
8415                              "end": {
8416                                "line": 1,
8417                                "column": 1
8418                              }
8419                            }
8420                          },
8421                          "loc": {
8422                            "start": {
8423                              "line": 1,
8424                              "column": 1
8425                            },
8426                            "end": {
8427                              "line": 1,
8428                              "column": 1
8429                            }
8430                          }
8431                        },
8432                        "loc": {
8433                          "start": {
8434                            "line": 1,
8435                            "column": 1
8436                          },
8437                          "end": {
8438                            "line": 1,
8439                            "column": 1
8440                          }
8441                        }
8442                      },
8443                      "decorators": [],
8444                      "loc": {
8445                        "start": {
8446                          "line": 1,
8447                          "column": 1
8448                        },
8449                        "end": {
8450                          "line": 1,
8451                          "column": 1
8452                        }
8453                      }
8454                    },
8455                    "loc": {
8456                      "start": {
8457                        "line": 1,
8458                        "column": 1
8459                      },
8460                      "end": {
8461                        "line": 1,
8462                        "column": 1
8463                      }
8464                    }
8465                  }
8466                ],
8467                "returnType": {
8468                  "type": "ETSTypeReference",
8469                  "part": {
8470                    "type": "ETSTypeReferencePart",
8471                    "name": {
8472                      "type": "Identifier",
8473                      "name": "String",
8474                      "decorators": [],
8475                      "loc": {
8476                        "start": {
8477                          "line": 1,
8478                          "column": 1
8479                        },
8480                        "end": {
8481                          "line": 1,
8482                          "column": 1
8483                        }
8484                      }
8485                    },
8486                    "loc": {
8487                      "start": {
8488                        "line": 1,
8489                        "column": 1
8490                      },
8491                      "end": {
8492                        "line": 1,
8493                        "column": 1
8494                      }
8495                    }
8496                  },
8497                  "loc": {
8498                    "start": {
8499                      "line": 1,
8500                      "column": 1
8501                    },
8502                    "end": {
8503                      "line": 1,
8504                      "column": 1
8505                    }
8506                  }
8507                },
8508                "body": {
8509                  "type": "BlockStatement",
8510                  "statements": [
8511                    {
8512                      "type": "ReturnStatement",
8513                      "argument": {
8514                        "type": "MemberExpression",
8515                        "object": {
8516                          "type": "Identifier",
8517                          "name": "StringValuesArray",
8518                          "decorators": [],
8519                          "loc": {
8520                            "start": {
8521                              "line": 1,
8522                              "column": 1
8523                            },
8524                            "end": {
8525                              "line": 1,
8526                              "column": 1
8527                            }
8528                          }
8529                        },
8530                        "property": {
8531                          "type": "TSAsExpression",
8532                          "expression": {
8533                            "type": "Identifier",
8534                            "name": "ordinal",
8535                            "decorators": [],
8536                            "loc": {
8537                              "start": {
8538                                "line": 1,
8539                                "column": 1
8540                              },
8541                              "end": {
8542                                "line": 1,
8543                                "column": 1
8544                              }
8545                            }
8546                          },
8547                          "typeAnnotation": {
8548                            "type": "ETSPrimitiveType",
8549                            "loc": {
8550                              "start": {
8551                                "line": 1,
8552                                "column": 1
8553                              },
8554                              "end": {
8555                                "line": 1,
8556                                "column": 1
8557                              }
8558                            }
8559                          },
8560                          "loc": {
8561                            "start": {
8562                              "line": 1,
8563                              "column": 1
8564                            },
8565                            "end": {
8566                              "line": 1,
8567                              "column": 1
8568                            }
8569                          }
8570                        },
8571                        "computed": true,
8572                        "optional": false,
8573                        "loc": {
8574                          "start": {
8575                            "line": 1,
8576                            "column": 1
8577                          },
8578                          "end": {
8579                            "line": 1,
8580                            "column": 1
8581                          }
8582                        }
8583                      },
8584                      "loc": {
8585                        "start": {
8586                          "line": 1,
8587                          "column": 1
8588                        },
8589                        "end": {
8590                          "line": 1,
8591                          "column": 1
8592                        }
8593                      }
8594                    }
8595                  ],
8596                  "loc": {
8597                    "start": {
8598                      "line": 1,
8599                      "column": 1
8600                    },
8601                    "end": {
8602                      "line": 1,
8603                      "column": 1
8604                    }
8605                  }
8606                },
8607                "loc": {
8608                  "start": {
8609                    "line": 1,
8610                    "column": 1
8611                  },
8612                  "end": {
8613                    "line": 1,
8614                    "column": 1
8615                  }
8616                }
8617              },
8618              "loc": {
8619                "start": {
8620                  "line": 1,
8621                  "column": 1
8622                },
8623                "end": {
8624                  "line": 1,
8625                  "column": 1
8626                }
8627              }
8628            },
8629            "overloads": [],
8630            "decorators": [],
8631            "loc": {
8632              "start": {
8633                "line": 1,
8634                "column": 1
8635              },
8636              "end": {
8637                "line": 1,
8638                "column": 1
8639              }
8640            }
8641          },
8642          {
8643            "type": "MethodDefinition",
8644            "key": {
8645              "type": "Identifier",
8646              "name": "values",
8647              "decorators": [],
8648              "loc": {
8649                "start": {
8650                  "line": 1,
8651                  "column": 1
8652                },
8653                "end": {
8654                  "line": 1,
8655                  "column": 1
8656                }
8657              }
8658            },
8659            "kind": "method",
8660            "accessibility": "public",
8661            "static": true,
8662            "optional": false,
8663            "computed": false,
8664            "value": {
8665              "type": "FunctionExpression",
8666              "function": {
8667                "type": "ScriptFunction",
8668                "id": {
8669                  "type": "Identifier",
8670                  "name": "values",
8671                  "decorators": [],
8672                  "loc": {
8673                    "start": {
8674                      "line": 1,
8675                      "column": 1
8676                    },
8677                    "end": {
8678                      "line": 1,
8679                      "column": 1
8680                    }
8681                  }
8682                },
8683                "generator": false,
8684                "async": false,
8685                "expression": false,
8686                "params": [],
8687                "returnType": {
8688                  "type": "TSArrayType",
8689                  "elementType": {
8690                    "type": "ETSTypeReference",
8691                    "part": {
8692                      "type": "ETSTypeReferencePart",
8693                      "name": {
8694                        "type": "Identifier",
8695                        "name": "E",
8696                        "decorators": [],
8697                        "loc": {
8698                          "start": {
8699                            "line": 1,
8700                            "column": 1
8701                          },
8702                          "end": {
8703                            "line": 1,
8704                            "column": 1
8705                          }
8706                        }
8707                      },
8708                      "loc": {
8709                        "start": {
8710                          "line": 1,
8711                          "column": 1
8712                        },
8713                        "end": {
8714                          "line": 1,
8715                          "column": 1
8716                        }
8717                      }
8718                    },
8719                    "loc": {
8720                      "start": {
8721                        "line": 1,
8722                        "column": 1
8723                      },
8724                      "end": {
8725                        "line": 1,
8726                        "column": 1
8727                      }
8728                    }
8729                  },
8730                  "loc": {
8731                    "start": {
8732                      "line": 1,
8733                      "column": 1
8734                    },
8735                    "end": {
8736                      "line": 1,
8737                      "column": 1
8738                    }
8739                  }
8740                },
8741                "body": {
8742                  "type": "BlockStatement",
8743                  "statements": [
8744                    {
8745                      "type": "ReturnStatement",
8746                      "argument": {
8747                        "type": "Identifier",
8748                        "name": "ItemsArray",
8749                        "decorators": [],
8750                        "loc": {
8751                          "start": {
8752                            "line": 1,
8753                            "column": 1
8754                          },
8755                          "end": {
8756                            "line": 1,
8757                            "column": 1
8758                          }
8759                        }
8760                      },
8761                      "loc": {
8762                        "start": {
8763                          "line": 1,
8764                          "column": 1
8765                        },
8766                        "end": {
8767                          "line": 1,
8768                          "column": 1
8769                        }
8770                      }
8771                    }
8772                  ],
8773                  "loc": {
8774                    "start": {
8775                      "line": 1,
8776                      "column": 1
8777                    },
8778                    "end": {
8779                      "line": 1,
8780                      "column": 1
8781                    }
8782                  }
8783                },
8784                "loc": {
8785                  "start": {
8786                    "line": 1,
8787                    "column": 1
8788                  },
8789                  "end": {
8790                    "line": 1,
8791                    "column": 1
8792                  }
8793                }
8794              },
8795              "loc": {
8796                "start": {
8797                  "line": 1,
8798                  "column": 1
8799                },
8800                "end": {
8801                  "line": 1,
8802                  "column": 1
8803                }
8804              }
8805            },
8806            "overloads": [],
8807            "decorators": [],
8808            "loc": {
8809              "start": {
8810                "line": 1,
8811                "column": 1
8812              },
8813              "end": {
8814                "line": 1,
8815                "column": 1
8816              }
8817            }
8818          },
8819          {
8820            "type": "MethodDefinition",
8821            "key": {
8822              "type": "Identifier",
8823              "name": "fromInt",
8824              "decorators": [],
8825              "loc": {
8826                "start": {
8827                  "line": 1,
8828                  "column": 1
8829                },
8830                "end": {
8831                  "line": 1,
8832                  "column": 1
8833                }
8834              }
8835            },
8836            "kind": "method",
8837            "accessibility": "public",
8838            "static": true,
8839            "optional": false,
8840            "computed": false,
8841            "value": {
8842              "type": "FunctionExpression",
8843              "function": {
8844                "type": "ScriptFunction",
8845                "id": {
8846                  "type": "Identifier",
8847                  "name": "fromInt",
8848                  "decorators": [],
8849                  "loc": {
8850                    "start": {
8851                      "line": 1,
8852                      "column": 1
8853                    },
8854                    "end": {
8855                      "line": 1,
8856                      "column": 1
8857                    }
8858                  }
8859                },
8860                "generator": false,
8861                "async": false,
8862                "expression": false,
8863                "params": [
8864                  {
8865                    "type": "ETSParameterExpression",
8866                    "name": {
8867                      "type": "Identifier",
8868                      "name": "ordinal",
8869                      "typeAnnotation": {
8870                        "type": "ETSPrimitiveType",
8871                        "loc": {
8872                          "start": {
8873                            "line": 1,
8874                            "column": 1
8875                          },
8876                          "end": {
8877                            "line": 1,
8878                            "column": 1
8879                          }
8880                        }
8881                      },
8882                      "decorators": [],
8883                      "loc": {
8884                        "start": {
8885                          "line": 1,
8886                          "column": 1
8887                        },
8888                        "end": {
8889                          "line": 1,
8890                          "column": 1
8891                        }
8892                      }
8893                    },
8894                    "loc": {
8895                      "start": {
8896                        "line": 1,
8897                        "column": 1
8898                      },
8899                      "end": {
8900                        "line": 1,
8901                        "column": 1
8902                      }
8903                    }
8904                  }
8905                ],
8906                "returnType": {
8907                  "type": "ETSTypeReference",
8908                  "part": {
8909                    "type": "ETSTypeReferencePart",
8910                    "name": {
8911                      "type": "Identifier",
8912                      "name": "E",
8913                      "decorators": [],
8914                      "loc": {
8915                        "start": {
8916                          "line": 1,
8917                          "column": 1
8918                        },
8919                        "end": {
8920                          "line": 1,
8921                          "column": 1
8922                        }
8923                      }
8924                    },
8925                    "loc": {
8926                      "start": {
8927                        "line": 1,
8928                        "column": 1
8929                      },
8930                      "end": {
8931                        "line": 1,
8932                        "column": 1
8933                      }
8934                    }
8935                  },
8936                  "loc": {
8937                    "start": {
8938                      "line": 1,
8939                      "column": 1
8940                    },
8941                    "end": {
8942                      "line": 1,
8943                      "column": 1
8944                    }
8945                  }
8946                },
8947                "body": {
8948                  "type": "BlockStatement",
8949                  "statements": [
8950                    {
8951                      "type": "IfStatement",
8952                      "test": {
8953                        "type": "BinaryExpression",
8954                        "operator": "<",
8955                        "left": {
8956                          "type": "Identifier",
8957                          "name": "ordinal",
8958                          "decorators": [],
8959                          "loc": {
8960                            "start": {
8961                              "line": 1,
8962                              "column": 1
8963                            },
8964                            "end": {
8965                              "line": 1,
8966                              "column": 1
8967                            }
8968                          }
8969                        },
8970                        "right": {
8971                          "type": "MemberExpression",
8972                          "object": {
8973                            "type": "Identifier",
8974                            "name": "ItemsArray",
8975                            "decorators": [],
8976                            "loc": {
8977                              "start": {
8978                                "line": 1,
8979                                "column": 1
8980                              },
8981                              "end": {
8982                                "line": 1,
8983                                "column": 1
8984                              }
8985                            }
8986                          },
8987                          "property": {
8988                            "type": "Identifier",
8989                            "name": "length",
8990                            "decorators": [],
8991                            "loc": {
8992                              "start": {
8993                                "line": 1,
8994                                "column": 1
8995                              },
8996                              "end": {
8997                                "line": 1,
8998                                "column": 1
8999                              }
9000                            }
9001                          },
9002                          "computed": false,
9003                          "optional": false,
9004                          "loc": {
9005                            "start": {
9006                              "line": 1,
9007                              "column": 1
9008                            },
9009                            "end": {
9010                              "line": 1,
9011                              "column": 1
9012                            }
9013                          }
9014                        },
9015                        "loc": {
9016                          "start": {
9017                            "line": 1,
9018                            "column": 1
9019                          },
9020                          "end": {
9021                            "line": 1,
9022                            "column": 1
9023                          }
9024                        }
9025                      },
9026                      "consequent": {
9027                        "type": "ReturnStatement",
9028                        "argument": {
9029                          "type": "MemberExpression",
9030                          "object": {
9031                            "type": "Identifier",
9032                            "name": "ItemsArray",
9033                            "decorators": [],
9034                            "loc": {
9035                              "start": {
9036                                "line": 1,
9037                                "column": 1
9038                              },
9039                              "end": {
9040                                "line": 1,
9041                                "column": 1
9042                              }
9043                            }
9044                          },
9045                          "property": {
9046                            "type": "Identifier",
9047                            "name": "ordinal",
9048                            "decorators": [],
9049                            "loc": {
9050                              "start": {
9051                                "line": 1,
9052                                "column": 1
9053                              },
9054                              "end": {
9055                                "line": 1,
9056                                "column": 1
9057                              }
9058                            }
9059                          },
9060                          "computed": true,
9061                          "optional": false,
9062                          "loc": {
9063                            "start": {
9064                              "line": 1,
9065                              "column": 1
9066                            },
9067                            "end": {
9068                              "line": 1,
9069                              "column": 1
9070                            }
9071                          }
9072                        },
9073                        "loc": {
9074                          "start": {
9075                            "line": 1,
9076                            "column": 1
9077                          },
9078                          "end": {
9079                            "line": 1,
9080                            "column": 1
9081                          }
9082                        }
9083                      },
9084                      "alternate": null,
9085                      "loc": {
9086                        "start": {
9087                          "line": 1,
9088                          "column": 1
9089                        },
9090                        "end": {
9091                          "line": 1,
9092                          "column": 1
9093                        }
9094                      }
9095                    },
9096                    {
9097                      "type": "ThrowStatement",
9098                      "argument": {
9099                        "type": "ETSNewClassInstanceExpression",
9100                        "typeReference": {
9101                          "type": "ETSTypeReference",
9102                          "part": {
9103                            "type": "ETSTypeReferencePart",
9104                            "name": {
9105                              "type": "Identifier",
9106                              "name": "Exception",
9107                              "decorators": [],
9108                              "loc": {
9109                                "start": {
9110                                  "line": 1,
9111                                  "column": 1
9112                                },
9113                                "end": {
9114                                  "line": 1,
9115                                  "column": 1
9116                                }
9117                              }
9118                            },
9119                            "loc": {
9120                              "start": {
9121                                "line": 1,
9122                                "column": 1
9123                              },
9124                              "end": {
9125                                "line": 1,
9126                                "column": 1
9127                              }
9128                            }
9129                          },
9130                          "loc": {
9131                            "start": {
9132                              "line": 1,
9133                              "column": 1
9134                            },
9135                            "end": {
9136                              "line": 1,
9137                              "column": 1
9138                            }
9139                          }
9140                        },
9141                        "arguments": [
9142                          {
9143                            "type": "BinaryExpression",
9144                            "operator": "+",
9145                            "left": {
9146                              "type": "StringLiteral",
9147                              "value": "No enum constant in E with ordinal value ",
9148                              "loc": {
9149                                "start": {
9150                                  "line": 1,
9151                                  "column": 1
9152                                },
9153                                "end": {
9154                                  "line": 1,
9155                                  "column": 1
9156                                }
9157                              }
9158                            },
9159                            "right": {
9160                              "type": "Identifier",
9161                              "name": "ordinal",
9162                              "decorators": [],
9163                              "loc": {
9164                                "start": {
9165                                  "line": 1,
9166                                  "column": 1
9167                                },
9168                                "end": {
9169                                  "line": 1,
9170                                  "column": 1
9171                                }
9172                              }
9173                            },
9174                            "loc": {
9175                              "start": {
9176                                "line": 1,
9177                                "column": 1
9178                              },
9179                              "end": {
9180                                "line": 1,
9181                                "column": 1
9182                              }
9183                            }
9184                          }
9185                        ],
9186                        "loc": {
9187                          "start": {
9188                            "line": 1,
9189                            "column": 1
9190                          },
9191                          "end": {
9192                            "line": 1,
9193                            "column": 1
9194                          }
9195                        }
9196                      },
9197                      "loc": {
9198                        "start": {
9199                          "line": 1,
9200                          "column": 1
9201                        },
9202                        "end": {
9203                          "line": 1,
9204                          "column": 1
9205                        }
9206                      }
9207                    }
9208                  ],
9209                  "loc": {
9210                    "start": {
9211                      "line": 1,
9212                      "column": 1
9213                    },
9214                    "end": {
9215                      "line": 1,
9216                      "column": 1
9217                    }
9218                  }
9219                }
9220                "throwMarker": "throws",
9221                "loc": {
9222                  "start": {
9223                    "line": 1,
9224                    "column": 1
9225                  },
9226                  "end": {
9227                    "line": 1,
9228                    "column": 1
9229                  }
9230                }
9231              },
9232              "loc": {
9233                "start": {
9234                  "line": 1,
9235                  "column": 1
9236                },
9237                "end": {
9238                  "line": 1,
9239                  "column": 1
9240                }
9241              }
9242            },
9243            "overloads": [],
9244            "decorators": [],
9245            "loc": {
9246              "start": {
9247                "line": 1,
9248                "column": 1
9249              },
9250              "end": {
9251                "line": 1,
9252                "column": 1
9253              }
9254            }
9255          },
9256          {
9257            "type": "MethodDefinition",
9258            "key": {
9259              "type": "Identifier",
9260              "name": "unbox",
9261              "decorators": [],
9262              "loc": {
9263                "start": {
9264                  "line": 1,
9265                  "column": 1
9266                },
9267                "end": {
9268                  "line": 1,
9269                  "column": 1
9270                }
9271              }
9272            },
9273            "kind": "method",
9274            "accessibility": "public",
9275            "static": false,
9276            "optional": false,
9277            "computed": false,
9278            "value": {
9279              "type": "FunctionExpression",
9280              "function": {
9281                "type": "ScriptFunction",
9282                "id": {
9283                  "type": "Identifier",
9284                  "name": "unbox",
9285                  "decorators": [],
9286                  "loc": {
9287                    "start": {
9288                      "line": 1,
9289                      "column": 1
9290                    },
9291                    "end": {
9292                      "line": 1,
9293                      "column": 1
9294                    }
9295                  }
9296                },
9297                "generator": false,
9298                "async": false,
9299                "expression": false,
9300                "params": [],
9301                "returnType": {
9302                  "type": "ETSTypeReference",
9303                  "part": {
9304                    "type": "ETSTypeReferencePart",
9305                    "name": {
9306                      "type": "Identifier",
9307                      "name": "E",
9308                      "decorators": [],
9309                      "loc": {
9310                        "start": {
9311                          "line": 1,
9312                          "column": 1
9313                        },
9314                        "end": {
9315                          "line": 1,
9316                          "column": 1
9317                        }
9318                      }
9319                    },
9320                    "loc": {
9321                      "start": {
9322                        "line": 1,
9323                        "column": 1
9324                      },
9325                      "end": {
9326                        "line": 1,
9327                        "column": 1
9328                      }
9329                    }
9330                  },
9331                  "loc": {
9332                    "start": {
9333                      "line": 1,
9334                      "column": 1
9335                    },
9336                    "end": {
9337                      "line": 1,
9338                      "column": 1
9339                    }
9340                  }
9341                },
9342                "body": {
9343                  "type": "BlockStatement",
9344                  "statements": [
9345                    {
9346                      "type": "ReturnStatement",
9347                      "argument": {
9348                        "type": "MemberExpression",
9349                        "object": {
9350                          "type": "Identifier",
9351                          "name": "ItemsArray",
9352                          "decorators": [],
9353                          "loc": {
9354                            "start": {
9355                              "line": 1,
9356                              "column": 1
9357                            },
9358                            "end": {
9359                              "line": 1,
9360                              "column": 1
9361                            }
9362                          }
9363                        },
9364                        "property": {
9365                          "type": "MemberExpression",
9366                          "object": {
9367                            "type": "ThisExpression",
9368                            "loc": {
9369                              "start": {
9370                                "line": 1,
9371                                "column": 1
9372                              },
9373                              "end": {
9374                                "line": 1,
9375                                "column": 1
9376                              }
9377                            }
9378                          },
9379                          "property": {
9380                            "type": "Identifier",
9381                            "name": "ordinal",
9382                            "decorators": [],
9383                            "loc": {
9384                              "start": {
9385                                "line": 1,
9386                                "column": 1
9387                              },
9388                              "end": {
9389                                "line": 1,
9390                                "column": 1
9391                              }
9392                            }
9393                          },
9394                          "computed": false,
9395                          "optional": false,
9396                          "loc": {
9397                            "start": {
9398                              "line": 1,
9399                              "column": 1
9400                            },
9401                            "end": {
9402                              "line": 1,
9403                              "column": 1
9404                            }
9405                          }
9406                        },
9407                        "computed": true,
9408                        "optional": false,
9409                        "loc": {
9410                          "start": {
9411                            "line": 1,
9412                            "column": 1
9413                          },
9414                          "end": {
9415                            "line": 1,
9416                            "column": 1
9417                          }
9418                        }
9419                      },
9420                      "loc": {
9421                        "start": {
9422                          "line": 1,
9423                          "column": 1
9424                        },
9425                        "end": {
9426                          "line": 1,
9427                          "column": 1
9428                        }
9429                      }
9430                    }
9431                  ],
9432                  "loc": {
9433                    "start": {
9434                      "line": 1,
9435                      "column": 1
9436                    },
9437                    "end": {
9438                      "line": 1,
9439                      "column": 1
9440                    }
9441                  }
9442                },
9443                "loc": {
9444                  "start": {
9445                    "line": 1,
9446                    "column": 1
9447                  },
9448                  "end": {
9449                    "line": 1,
9450                    "column": 1
9451                  }
9452                }
9453              },
9454              "loc": {
9455                "start": {
9456                  "line": 1,
9457                  "column": 1
9458                },
9459                "end": {
9460                  "line": 1,
9461                  "column": 1
9462                }
9463              }
9464            },
9465            "overloads": [],
9466            "decorators": [],
9467            "loc": {
9468              "start": {
9469                "line": 1,
9470                "column": 1
9471              },
9472              "end": {
9473                "line": 1,
9474                "column": 1
9475              }
9476            }
9477          },
9478          {
9479            "type": "MethodDefinition",
9480            "key": {
9481              "type": "Identifier",
9482              "name": "boxedfromInt",
9483              "decorators": [],
9484              "loc": {
9485                "start": {
9486                  "line": 1,
9487                  "column": 1
9488                },
9489                "end": {
9490                  "line": 1,
9491                  "column": 1
9492                }
9493              }
9494            },
9495            "kind": "method",
9496            "accessibility": "public",
9497            "static": true,
9498            "optional": false,
9499            "computed": false,
9500            "value": {
9501              "type": "FunctionExpression",
9502              "function": {
9503                "type": "ScriptFunction",
9504                "id": {
9505                  "type": "Identifier",
9506                  "name": "boxedfromInt",
9507                  "decorators": [],
9508                  "loc": {
9509                    "start": {
9510                      "line": 1,
9511                      "column": 1
9512                    },
9513                    "end": {
9514                      "line": 1,
9515                      "column": 1
9516                    }
9517                  }
9518                },
9519                "generator": false,
9520                "async": false,
9521                "expression": false,
9522                "params": [
9523                  {
9524                    "type": "ETSParameterExpression",
9525                    "name": {
9526                      "type": "Identifier",
9527                      "name": "ordinal",
9528                      "typeAnnotation": {
9529                        "type": "ETSPrimitiveType",
9530                        "loc": {
9531                          "start": {
9532                            "line": 1,
9533                            "column": 1
9534                          },
9535                          "end": {
9536                            "line": 1,
9537                            "column": 1
9538                          }
9539                        }
9540                      },
9541                      "decorators": [],
9542                      "loc": {
9543                        "start": {
9544                          "line": 1,
9545                          "column": 1
9546                        },
9547                        "end": {
9548                          "line": 1,
9549                          "column": 1
9550                        }
9551                      }
9552                    },
9553                    "loc": {
9554                      "start": {
9555                        "line": 1,
9556                        "column": 1
9557                      },
9558                      "end": {
9559                        "line": 1,
9560                        "column": 1
9561                      }
9562                    }
9563                  }
9564                ],
9565                "returnType": {
9566                  "type": "ETSTypeReference",
9567                  "part": {
9568                    "type": "ETSTypeReferencePart",
9569                    "name": {
9570                      "type": "Identifier",
9571                      "name": "#E",
9572                      "decorators": [],
9573                      "loc": {
9574                        "start": {
9575                          "line": 1,
9576                          "column": 1
9577                        },
9578                        "end": {
9579                          "line": 1,
9580                          "column": 1
9581                        }
9582                      }
9583                    },
9584                    "loc": {
9585                      "start": {
9586                        "line": 1,
9587                        "column": 1
9588                      },
9589                      "end": {
9590                        "line": 1,
9591                        "column": 1
9592                      }
9593                    }
9594                  },
9595                  "loc": {
9596                    "start": {
9597                      "line": 1,
9598                      "column": 1
9599                    },
9600                    "end": {
9601                      "line": 1,
9602                      "column": 1
9603                    }
9604                  }
9605                },
9606                "body": {
9607                  "type": "BlockStatement",
9608                  "statements": [
9609                    {
9610                      "type": "IfStatement",
9611                      "test": {
9612                        "type": "BinaryExpression",
9613                        "operator": "<",
9614                        "left": {
9615                          "type": "Identifier",
9616                          "name": "ordinal",
9617                          "decorators": [],
9618                          "loc": {
9619                            "start": {
9620                              "line": 1,
9621                              "column": 1
9622                            },
9623                            "end": {
9624                              "line": 1,
9625                              "column": 1
9626                            }
9627                          }
9628                        },
9629                        "right": {
9630                          "type": "MemberExpression",
9631                          "object": {
9632                            "type": "Identifier",
9633                            "name": "BoxedItemsArray",
9634                            "decorators": [],
9635                            "loc": {
9636                              "start": {
9637                                "line": 1,
9638                                "column": 1
9639                              },
9640                              "end": {
9641                                "line": 1,
9642                                "column": 1
9643                              }
9644                            }
9645                          },
9646                          "property": {
9647                            "type": "Identifier",
9648                            "name": "length",
9649                            "decorators": [],
9650                            "loc": {
9651                              "start": {
9652                                "line": 1,
9653                                "column": 1
9654                              },
9655                              "end": {
9656                                "line": 1,
9657                                "column": 1
9658                              }
9659                            }
9660                          },
9661                          "computed": false,
9662                          "optional": false,
9663                          "loc": {
9664                            "start": {
9665                              "line": 1,
9666                              "column": 1
9667                            },
9668                            "end": {
9669                              "line": 1,
9670                              "column": 1
9671                            }
9672                          }
9673                        },
9674                        "loc": {
9675                          "start": {
9676                            "line": 1,
9677                            "column": 1
9678                          },
9679                          "end": {
9680                            "line": 1,
9681                            "column": 1
9682                          }
9683                        }
9684                      },
9685                      "consequent": {
9686                        "type": "ReturnStatement",
9687                        "argument": {
9688                          "type": "MemberExpression",
9689                          "object": {
9690                            "type": "Identifier",
9691                            "name": "BoxedItemsArray",
9692                            "decorators": [],
9693                            "loc": {
9694                              "start": {
9695                                "line": 1,
9696                                "column": 1
9697                              },
9698                              "end": {
9699                                "line": 1,
9700                                "column": 1
9701                              }
9702                            }
9703                          },
9704                          "property": {
9705                            "type": "Identifier",
9706                            "name": "ordinal",
9707                            "decorators": [],
9708                            "loc": {
9709                              "start": {
9710                                "line": 1,
9711                                "column": 1
9712                              },
9713                              "end": {
9714                                "line": 1,
9715                                "column": 1
9716                              }
9717                            }
9718                          },
9719                          "computed": true,
9720                          "optional": false,
9721                          "loc": {
9722                            "start": {
9723                              "line": 1,
9724                              "column": 1
9725                            },
9726                            "end": {
9727                              "line": 1,
9728                              "column": 1
9729                            }
9730                          }
9731                        },
9732                        "loc": {
9733                          "start": {
9734                            "line": 1,
9735                            "column": 1
9736                          },
9737                          "end": {
9738                            "line": 1,
9739                            "column": 1
9740                          }
9741                        }
9742                      },
9743                      "alternate": null,
9744                      "loc": {
9745                        "start": {
9746                          "line": 1,
9747                          "column": 1
9748                        },
9749                        "end": {
9750                          "line": 1,
9751                          "column": 1
9752                        }
9753                      }
9754                    },
9755                    {
9756                      "type": "ThrowStatement",
9757                      "argument": {
9758                        "type": "ETSNewClassInstanceExpression",
9759                        "typeReference": {
9760                          "type": "ETSTypeReference",
9761                          "part": {
9762                            "type": "ETSTypeReferencePart",
9763                            "name": {
9764                              "type": "Identifier",
9765                              "name": "Exception",
9766                              "decorators": [],
9767                              "loc": {
9768                                "start": {
9769                                  "line": 1,
9770                                  "column": 1
9771                                },
9772                                "end": {
9773                                  "line": 1,
9774                                  "column": 1
9775                                }
9776                              }
9777                            },
9778                            "loc": {
9779                              "start": {
9780                                "line": 1,
9781                                "column": 1
9782                              },
9783                              "end": {
9784                                "line": 1,
9785                                "column": 1
9786                              }
9787                            }
9788                          },
9789                          "loc": {
9790                            "start": {
9791                              "line": 1,
9792                              "column": 1
9793                            },
9794                            "end": {
9795                              "line": 1,
9796                              "column": 1
9797                            }
9798                          }
9799                        },
9800                        "arguments": [
9801                          {
9802                            "type": "BinaryExpression",
9803                            "operator": "+",
9804                            "left": {
9805                              "type": "StringLiteral",
9806                              "value": "No enum constant in E with ordinal value ",
9807                              "loc": {
9808                                "start": {
9809                                  "line": 1,
9810                                  "column": 1
9811                                },
9812                                "end": {
9813                                  "line": 1,
9814                                  "column": 1
9815                                }
9816                              }
9817                            },
9818                            "right": {
9819                              "type": "Identifier",
9820                              "name": "ordinal",
9821                              "decorators": [],
9822                              "loc": {
9823                                "start": {
9824                                  "line": 1,
9825                                  "column": 1
9826                                },
9827                                "end": {
9828                                  "line": 1,
9829                                  "column": 1
9830                                }
9831                              }
9832                            },
9833                            "loc": {
9834                              "start": {
9835                                "line": 1,
9836                                "column": 1
9837                              },
9838                              "end": {
9839                                "line": 1,
9840                                "column": 1
9841                              }
9842                            }
9843                          }
9844                        ],
9845                        "loc": {
9846                          "start": {
9847                            "line": 1,
9848                            "column": 1
9849                          },
9850                          "end": {
9851                            "line": 1,
9852                            "column": 1
9853                          }
9854                        }
9855                      },
9856                      "loc": {
9857                        "start": {
9858                          "line": 1,
9859                          "column": 1
9860                        },
9861                        "end": {
9862                          "line": 1,
9863                          "column": 1
9864                        }
9865                      }
9866                    }
9867                  ],
9868                  "loc": {
9869                    "start": {
9870                      "line": 1,
9871                      "column": 1
9872                    },
9873                    "end": {
9874                      "line": 1,
9875                      "column": 1
9876                    }
9877                  }
9878                }
9879                "throwMarker": "throws",
9880                "loc": {
9881                  "start": {
9882                    "line": 1,
9883                    "column": 1
9884                  },
9885                  "end": {
9886                    "line": 1,
9887                    "column": 1
9888                  }
9889                }
9890              },
9891              "loc": {
9892                "start": {
9893                  "line": 1,
9894                  "column": 1
9895                },
9896                "end": {
9897                  "line": 1,
9898                  "column": 1
9899                }
9900              }
9901            },
9902            "overloads": [],
9903            "decorators": [],
9904            "loc": {
9905              "start": {
9906                "line": 1,
9907                "column": 1
9908              },
9909              "end": {
9910                "line": 1,
9911                "column": 1
9912              }
9913            }
9914          }
9915        ],
9916        "loc": {
9917          "start": {
9918            "line": 1,
9919            "column": 1
9920          },
9921          "end": {
9922            "line": 1,
9923            "column": 1
9924          }
9925        }
9926      },
9927      "loc": {
9928        "start": {
9929          "line": 1,
9930          "column": 1
9931        },
9932        "end": {
9933          "line": 1,
9934          "column": 1
9935        }
9936      }
9937    }
9938  ],
9939  "loc": {
9940    "start": {
9941      "line": 1,
9942      "column": 1
9943    },
9944    "end": {
9945      "line": 42,
9946      "column": 1
9947    }
9948  }
9949}
9950