1{
2  "type": "Program",
3  "statements": [
4    {
5      "type": "ImportDeclaration",
6      "source": {
7        "type": "StringLiteral",
8        "value": "dynamic_js_import_tests",
9        "loc": {
10          "start": {
11            "line": 20,
12            "column": 19
13          },
14          "end": {
15            "line": 20,
16            "column": 44
17          }
18        }
19      },
20      "specifiers": [
21        {
22          "type": "ImportSpecifier",
23          "local": {
24            "type": "Identifier",
25            "name": "A",
26            "decorators": [],
27            "loc": {
28              "start": {
29                "line": 20,
30                "column": 10
31              },
32              "end": {
33                "line": 20,
34                "column": 11
35              }
36            }
37          },
38          "imported": {
39            "type": "Identifier",
40            "name": "A",
41            "decorators": [],
42            "loc": {
43              "start": {
44                "line": 20,
45                "column": 10
46              },
47              "end": {
48                "line": 20,
49                "column": 11
50              }
51            }
52          },
53          "loc": {
54            "start": {
55              "line": 20,
56              "column": 10
57            },
58            "end": {
59              "line": 20,
60              "column": 11
61            }
62          }
63        }
64      ],
65      "loc": {
66        "start": {
67          "line": 20,
68          "column": 1
69        },
70        "end": {
71          "line": 20,
72          "column": 44
73        }
74      }
75    },
76    {
77      "type": "ClassDeclaration",
78      "definition": {
79        "id": {
80          "type": "Identifier",
81          "name": "ETSGLOBAL",
82          "decorators": [],
83          "loc": {
84            "start": {
85              "line": 1,
86              "column": 1
87            },
88            "end": {
89              "line": 1,
90              "column": 1
91            }
92          }
93        },
94        "superClass": null,
95        "implements": [],
96        "body": [
97          {
98            "type": "MethodDefinition",
99            "key": {
100              "type": "Identifier",
101              "name": "_$init$_",
102              "decorators": [],
103              "loc": {
104                "start": {
105                  "line": 1,
106                  "column": 1
107                },
108                "end": {
109                  "line": 1,
110                  "column": 1
111                }
112              }
113            },
114            "kind": "method",
115            "accessibility": "public",
116            "static": true,
117            "optional": false,
118            "computed": false,
119            "value": {
120              "type": "FunctionExpression",
121              "function": {
122                "type": "ScriptFunction",
123                "id": {
124                  "type": "Identifier",
125                  "name": "_$init$_",
126                  "decorators": [],
127                  "loc": {
128                    "start": {
129                      "line": 1,
130                      "column": 1
131                    },
132                    "end": {
133                      "line": 1,
134                      "column": 1
135                    }
136                  }
137                },
138                "generator": false,
139                "async": false,
140                "expression": false,
141                "params": [],
142                "body": {
143                  "type": "BlockStatement",
144                  "statements": [],
145                  "loc": {
146                    "start": {
147                      "line": 1,
148                      "column": 1
149                    },
150                    "end": {
151                      "line": 1,
152                      "column": 1
153                    }
154                  }
155                },
156                "loc": {
157                  "start": {
158                    "line": 1,
159                    "column": 1
160                  },
161                  "end": {
162                    "line": 1,
163                    "column": 1
164                  }
165                }
166              },
167              "loc": {
168                "start": {
169                  "line": 1,
170                  "column": 1
171                },
172                "end": {
173                  "line": 1,
174                  "column": 1
175                }
176              }
177            },
178            "overloads": [],
179            "decorators": [],
180            "loc": {
181              "start": {
182                "line": 1,
183                "column": 1
184              },
185              "end": {
186                "line": 1,
187                "column": 1
188              }
189            }
190          },
191          {
192            "type": "MethodDefinition",
193            "key": {
194              "type": "Identifier",
195              "name": "foo",
196              "decorators": [],
197              "loc": {
198                "start": {
199                  "line": 22,
200                  "column": 10
201                },
202                "end": {
203                  "line": 22,
204                  "column": 13
205                }
206              }
207            },
208            "kind": "method",
209            "accessibility": "public",
210            "static": true,
211            "optional": false,
212            "computed": false,
213            "value": {
214              "type": "FunctionExpression",
215              "function": {
216                "type": "ScriptFunction",
217                "id": {
218                  "type": "Identifier",
219                  "name": "foo",
220                  "decorators": [],
221                  "loc": {
222                    "start": {
223                      "line": 22,
224                      "column": 10
225                    },
226                    "end": {
227                      "line": 22,
228                      "column": 13
229                    }
230                  }
231                },
232                "generator": false,
233                "async": false,
234                "expression": false,
235                "params": [],
236                "returnType": {
237                  "type": "ETSPrimitiveType",
238                  "loc": {
239                    "start": {
240                      "line": 22,
241                      "column": 17
242                    },
243                    "end": {
244                      "line": 22,
245                      "column": 20
246                    }
247                  }
248                },
249                "body": {
250                  "type": "BlockStatement",
251                  "statements": [
252                    {
253                      "type": "VariableDeclaration",
254                      "declarations": [
255                        {
256                          "type": "VariableDeclarator",
257                          "id": {
258                            "type": "Identifier",
259                            "name": "a",
260                            "decorators": [],
261                            "loc": {
262                              "start": {
263                                "line": 23,
264                                "column": 9
265                              },
266                              "end": {
267                                "line": 23,
268                                "column": 10
269                              }
270                            }
271                          },
272                          "init": {
273                            "type": "ETSNewClassInstanceExpression",
274                            "typeReference": {
275                              "type": "ETSTypeReference",
276                              "part": {
277                                "type": "ETSTypeReferencePart",
278                                "name": {
279                                  "type": "Identifier",
280                                  "name": "A",
281                                  "decorators": [],
282                                  "loc": {
283                                    "start": {
284                                      "line": 23,
285                                      "column": 17
286                                    },
287                                    "end": {
288                                      "line": 23,
289                                      "column": 18
290                                    }
291                                  }
292                                },
293                                "loc": {
294                                  "start": {
295                                    "line": 23,
296                                    "column": 17
297                                  },
298                                  "end": {
299                                    "line": 23,
300                                    "column": 19
301                                  }
302                                }
303                              },
304                              "loc": {
305                                "start": {
306                                  "line": 23,
307                                  "column": 17
308                                },
309                                "end": {
310                                  "line": 23,
311                                  "column": 19
312                                }
313                              }
314                            },
315                            "arguments": [],
316                            "loc": {
317                              "start": {
318                                "line": 23,
319                                "column": 13
320                              },
321                              "end": {
322                                "line": 23,
323                                "column": 21
324                              }
325                            }
326                          },
327                          "loc": {
328                            "start": {
329                              "line": 23,
330                              "column": 9
331                            },
332                            "end": {
333                              "line": 23,
334                              "column": 21
335                            }
336                          }
337                        }
338                      ],
339                      "kind": "let",
340                      "loc": {
341                        "start": {
342                          "line": 23,
343                          "column": 5
344                        },
345                        "end": {
346                          "line": 23,
347                          "column": 21
348                        }
349                      }
350                    },
351                    {
352                      "type": "ReturnStatement",
353                      "argument": {
354                        "type": "TSAsExpression",
355                        "expression": {
356                          "type": "CallExpression",
357                          "callee": {
358                            "type": "MemberExpression",
359                            "object": {
360                              "type": "MemberExpression",
361                              "object": {
362                                "type": "CallExpression",
363                                "callee": {
364                                  "type": "MemberExpression",
365                                  "object": {
366                                    "type": "Identifier",
367                                    "name": "a",
368                                    "decorators": [],
369                                    "loc": {
370                                      "start": {
371                                        "line": 24,
372                                        "column": 12
373                                      },
374                                      "end": {
375                                        "line": 24,
376                                        "column": 13
377                                      }
378                                    }
379                                  },
380                                  "property": {
381                                    "type": "Identifier",
382                                    "name": "getB",
383                                    "decorators": [],
384                                    "loc": {
385                                      "start": {
386                                        "line": 24,
387                                        "column": 14
388                                      },
389                                      "end": {
390                                        "line": 24,
391                                        "column": 18
392                                      }
393                                    }
394                                  },
395                                  "computed": false,
396                                  "optional": false,
397                                  "loc": {
398                                    "start": {
399                                      "line": 24,
400                                      "column": 12
401                                    },
402                                    "end": {
403                                      "line": 24,
404                                      "column": 18
405                                    }
406                                  }
407                                },
408                                "arguments": [],
409                                "optional": false,
410                                "loc": {
411                                  "start": {
412                                    "line": 24,
413                                    "column": 12
414                                  },
415                                  "end": {
416                                    "line": 24,
417                                    "column": 20
418                                  }
419                                }
420                              },
421                              "property": {
422                                "type": "Identifier",
423                                "name": "prop_var",
424                                "decorators": [],
425                                "loc": {
426                                  "start": {
427                                    "line": 24,
428                                    "column": 21
429                                  },
430                                  "end": {
431                                    "line": 24,
432                                    "column": 29
433                                  }
434                                }
435                              },
436                              "computed": false,
437                              "optional": false,
438                              "loc": {
439                                "start": {
440                                  "line": 24,
441                                  "column": 12
442                                },
443                                "end": {
444                                  "line": 24,
445                                  "column": 29
446                                }
447                              }
448                            },
449                            "property": {
450                              "type": "Identifier",
451                              "name": "foo",
452                              "decorators": [],
453                              "loc": {
454                                "start": {
455                                  "line": 24,
456                                  "column": 30
457                                },
458                                "end": {
459                                  "line": 24,
460                                  "column": 33
461                                }
462                              }
463                            },
464                            "computed": false,
465                            "optional": false,
466                            "loc": {
467                              "start": {
468                                "line": 24,
469                                "column": 12
470                              },
471                              "end": {
472                                "line": 24,
473                                "column": 33
474                              }
475                            }
476                          },
477                          "arguments": [
478                            {
479                              "type": "NumberLiteral",
480                              "value": 5,
481                              "loc": {
482                                "start": {
483                                  "line": 24,
484                                  "column": 34
485                                },
486                                "end": {
487                                  "line": 24,
488                                  "column": 35
489                                }
490                              }
491                            }
492                          ],
493                          "optional": false,
494                          "loc": {
495                            "start": {
496                              "line": 24,
497                              "column": 12
498                            },
499                            "end": {
500                              "line": 24,
501                              "column": 36
502                            }
503                          }
504                        },
505                        "typeAnnotation": {
506                          "type": "ETSPrimitiveType",
507                          "loc": {
508                            "start": {
509                              "line": 24,
510                              "column": 40
511                            },
512                            "end": {
513                              "line": 24,
514                              "column": 43
515                            }
516                          }
517                        },
518                        "loc": {
519                          "start": {
520                            "line": 24,
521                            "column": 12
522                          },
523                          "end": {
524                            "line": 24,
525                            "column": 36
526                          }
527                        }
528                      },
529                      "loc": {
530                        "start": {
531                          "line": 24,
532                          "column": 5
533                        },
534                        "end": {
535                          "line": 24,
536                          "column": 44
537                        }
538                      }
539                    }
540                  ],
541                  "loc": {
542                    "start": {
543                      "line": 22,
544                      "column": 21
545                    },
546                    "end": {
547                      "line": 25,
548                      "column": 2
549                    }
550                  }
551                },
552                "loc": {
553                  "start": {
554                    "line": 22,
555                    "column": 13
556                  },
557                  "end": {
558                    "line": 25,
559                    "column": 2
560                  }
561                }
562              },
563              "loc": {
564                "start": {
565                  "line": 22,
566                  "column": 13
567                },
568                "end": {
569                  "line": 25,
570                  "column": 2
571                }
572              }
573            },
574            "overloads": [],
575            "decorators": [],
576            "loc": {
577              "start": {
578                "line": 22,
579                "column": 1
580              },
581              "end": {
582                "line": 25,
583                "column": 2
584              }
585            }
586          }
587        ],
588        "loc": {
589          "start": {
590            "line": 1,
591            "column": 1
592          },
593          "end": {
594            "line": 1,
595            "column": 1
596          }
597        }
598      },
599      "loc": {
600        "start": {
601          "line": 1,
602          "column": 1
603        },
604        "end": {
605          "line": 1,
606          "column": 1
607        }
608      }
609    },
610    {
611      "type": "ClassDeclaration",
612      "definition": {
613        "id": {
614          "type": "Identifier",
615          "name": "$jsnew",
616          "decorators": [],
617          "loc": {
618            "start": {
619              "line": 1,
620              "column": 1
621            },
622            "end": {
623              "line": 1,
624              "column": 1
625            }
626          }
627        },
628        "superClass": null,
629        "implements": [],
630        "body": [
631          {
632            "type": "ClassProperty",
633            "key": {
634              "type": "Identifier",
635              "name": "qname_start_from",
636              "decorators": [],
637              "loc": {
638                "start": {
639                  "line": 1,
640                  "column": 1
641                },
642                "end": {
643                  "line": 1,
644                  "column": 1
645                }
646              }
647            },
648            "accessibility": "private",
649            "static": true,
650            "readonly": true,
651            "declare": false,
652            "optional": false,
653            "computed": false,
654            "typeAnnotation": {
655              "type": "ETSPrimitiveType",
656              "loc": {
657                "start": {
658                  "line": 1,
659                  "column": 1
660                },
661                "end": {
662                  "line": 1,
663                  "column": 1
664                }
665              }
666            },
667            "definite": false,
668            "decorators": [],
669            "loc": {
670              "start": {
671                "line": 1,
672                "column": 1
673              },
674              "end": {
675                "line": 1,
676                "column": 1
677              }
678            }
679          },
680          {
681            "type": "ClassStaticBlock",
682            "value": {
683              "type": "FunctionExpression",
684              "function": {
685                "type": "ScriptFunction",
686                "id": {
687                  "type": "Identifier",
688                  "name": "<cctor>",
689                  "decorators": [],
690                  "loc": {
691                    "start": {
692                      "line": 1,
693                      "column": 1
694                    },
695                    "end": {
696                      "line": 1,
697                      "column": 1
698                    }
699                  }
700                },
701                "generator": false,
702                "async": false,
703                "expression": true,
704                "params": [],
705                "body": {
706                  "type": "BlockStatement",
707                  "statements": [
708                    {
709                      "type": "ExpressionStatement",
710                      "expression": {
711                        "type": "CallExpression",
712                        "callee": {
713                          "type": "MemberExpression",
714                          "object": {
715                            "type": "Identifier",
716                            "name": "JSRuntime",
717                            "decorators": [],
718                            "loc": {
719                              "start": {
720                                "line": 1,
721                                "column": 1
722                              },
723                              "end": {
724                                "line": 1,
725                                "column": 1
726                              }
727                            }
728                          },
729                          "property": {
730                            "type": "Identifier",
731                            "name": "__initJSNewClass",
732                            "decorators": [],
733                            "loc": {
734                              "start": {
735                                "line": 1,
736                                "column": 1
737                              },
738                              "end": {
739                                "line": 1,
740                                "column": 1
741                              }
742                            }
743                          },
744                          "computed": false,
745                          "optional": false,
746                          "loc": {
747                            "start": {
748                              "line": 1,
749                              "column": 1
750                            },
751                            "end": {
752                              "line": 1,
753                              "column": 1
754                            }
755                          }
756                        },
757                        "arguments": [],
758                        "optional": false,
759                        "loc": {
760                          "start": {
761                            "line": 1,
762                            "column": 1
763                          },
764                          "end": {
765                            "line": 1,
766                            "column": 1
767                          }
768                        }
769                      },
770                      "loc": {
771                        "start": {
772                          "line": 1,
773                          "column": 1
774                        },
775                        "end": {
776                          "line": 1,
777                          "column": 1
778                        }
779                      }
780                    }
781                  ],
782                  "loc": {
783                    "start": {
784                      "line": 1,
785                      "column": 1
786                    },
787                    "end": {
788                      "line": 1,
789                      "column": 1
790                    }
791                  }
792                },
793                "loc": {
794                  "start": {
795                    "line": 1,
796                    "column": 1
797                  },
798                  "end": {
799                    "line": 1,
800                    "column": 1
801                  }
802                }
803              },
804              "loc": {
805                "start": {
806                  "line": 1,
807                  "column": 1
808                },
809                "end": {
810                  "line": 1,
811                  "column": 1
812                }
813              }
814            },
815            "loc": {
816              "start": {
817                "line": 1,
818                "column": 1
819              },
820              "end": {
821                "line": 1,
822                "column": 1
823              }
824            }
825          },
826          {
827            "type": "MethodDefinition",
828            "key": {
829              "type": "Identifier",
830              "name": "invoke",
831              "decorators": [],
832              "loc": {
833                "start": {
834                  "line": 1,
835                  "column": 1
836                },
837                "end": {
838                  "line": 1,
839                  "column": 1
840                }
841              }
842            },
843            "kind": "method",
844            "accessibility": "public",
845            "static": true,
846            "optional": false,
847            "computed": false,
848            "value": {
849              "type": "FunctionExpression",
850              "function": {
851                "type": "ScriptFunction",
852                "id": {
853                  "type": "Identifier",
854                  "name": "invoke",
855                  "decorators": [],
856                  "loc": {
857                    "start": {
858                      "line": 1,
859                      "column": 1
860                    },
861                    "end": {
862                      "line": 1,
863                      "column": 1
864                    }
865                  }
866                },
867                "generator": false,
868                "async": false,
869                "expression": false,
870                "params": [
871                  {
872                    "type": "ETSParameterExpression",
873                    "name": {
874                      "type": "Identifier",
875                      "name": "obj",
876                      "typeAnnotation": {
877                        "type": "OpaqueType",
878                        "loc": {
879                          "start": {
880                            "line": 1,
881                            "column": 1
882                          },
883                          "end": {
884                            "line": 1,
885                            "column": 1
886                          }
887                        }
888                      },
889                      "decorators": [],
890                      "loc": {
891                        "start": {
892                          "line": 1,
893                          "column": 1
894                        },
895                        "end": {
896                          "line": 1,
897                          "column": 1
898                        }
899                      }
900                    },
901                    "loc": {
902                      "start": {
903                        "line": 1,
904                        "column": 1
905                      },
906                      "end": {
907                        "line": 1,
908                        "column": 1
909                      }
910                    }
911                  },
912                  {
913                    "type": "ETSParameterExpression",
914                    "name": {
915                      "type": "Identifier",
916                      "name": "qname_start",
917                      "typeAnnotation": {
918                        "type": "ETSPrimitiveType",
919                        "loc": {
920                          "start": {
921                            "line": 1,
922                            "column": 1
923                          },
924                          "end": {
925                            "line": 1,
926                            "column": 1
927                          }
928                        }
929                      },
930                      "decorators": [],
931                      "loc": {
932                        "start": {
933                          "line": 1,
934                          "column": 1
935                        },
936                        "end": {
937                          "line": 1,
938                          "column": 1
939                        }
940                      }
941                    },
942                    "loc": {
943                      "start": {
944                        "line": 1,
945                        "column": 1
946                      },
947                      "end": {
948                        "line": 1,
949                        "column": 1
950                      }
951                    }
952                  },
953                  {
954                    "type": "ETSParameterExpression",
955                    "name": {
956                      "type": "Identifier",
957                      "name": "qname_len",
958                      "typeAnnotation": {
959                        "type": "ETSPrimitiveType",
960                        "loc": {
961                          "start": {
962                            "line": 1,
963                            "column": 1
964                          },
965                          "end": {
966                            "line": 1,
967                            "column": 1
968                          }
969                        }
970                      },
971                      "decorators": [],
972                      "loc": {
973                        "start": {
974                          "line": 1,
975                          "column": 1
976                        },
977                        "end": {
978                          "line": 1,
979                          "column": 1
980                        }
981                      }
982                    },
983                    "loc": {
984                      "start": {
985                        "line": 1,
986                        "column": 1
987                      },
988                      "end": {
989                        "line": 1,
990                        "column": 1
991                      }
992                    }
993                  }
994                ],
995                "returnType": {
996                  "type": "OpaqueType",
997                  "loc": {
998                    "start": {
999                      "line": 1,
1000                      "column": 1
1001                    },
1002                    "end": {
1003                      "line": 1,
1004                      "column": 1
1005                    }
1006                  }
1007                },
1008                "loc": {
1009                  "start": {
1010                    "line": 1,
1011                    "column": 1
1012                  },
1013                  "end": {
1014                    "line": 1,
1015                    "column": 1
1016                  }
1017                }
1018              },
1019              "loc": {
1020                "start": {
1021                  "line": 1,
1022                  "column": 1
1023                },
1024                "end": {
1025                  "line": 1,
1026                  "column": 1
1027                }
1028              }
1029            },
1030            "overloads": [],
1031            "decorators": [],
1032            "loc": {
1033              "start": {
1034                "line": 1,
1035                "column": 1
1036              },
1037              "end": {
1038                "line": 1,
1039                "column": 1
1040              }
1041            }
1042          }
1043        ],
1044        "loc": {
1045          "start": {
1046            "line": 1,
1047            "column": 1
1048          },
1049          "end": {
1050            "line": 1,
1051            "column": 1
1052          }
1053        }
1054      },
1055      "loc": {
1056        "start": {
1057          "line": 1,
1058          "column": 1
1059        },
1060        "end": {
1061          "line": 1,
1062          "column": 1
1063        }
1064      }
1065    },
1066    {
1067      "type": "ClassDeclaration",
1068      "definition": {
1069        "id": {
1070          "type": "Identifier",
1071          "name": "$jscall",
1072          "decorators": [],
1073          "loc": {
1074            "start": {
1075              "line": 1,
1076              "column": 1
1077            },
1078            "end": {
1079              "line": 1,
1080              "column": 1
1081            }
1082          }
1083        },
1084        "superClass": null,
1085        "implements": [],
1086        "body": [
1087          {
1088            "type": "ClassProperty",
1089            "key": {
1090              "type": "Identifier",
1091              "name": "qname_start_from",
1092              "decorators": [],
1093              "loc": {
1094                "start": {
1095                  "line": 1,
1096                  "column": 1
1097                },
1098                "end": {
1099                  "line": 1,
1100                  "column": 1
1101                }
1102              }
1103            },
1104            "accessibility": "private",
1105            "static": true,
1106            "readonly": true,
1107            "declare": false,
1108            "optional": false,
1109            "computed": false,
1110            "typeAnnotation": {
1111              "type": "ETSPrimitiveType",
1112              "loc": {
1113                "start": {
1114                  "line": 1,
1115                  "column": 1
1116                },
1117                "end": {
1118                  "line": 1,
1119                  "column": 1
1120                }
1121              }
1122            },
1123            "definite": false,
1124            "decorators": [],
1125            "loc": {
1126              "start": {
1127                "line": 1,
1128                "column": 1
1129              },
1130              "end": {
1131                "line": 1,
1132                "column": 1
1133              }
1134            }
1135          },
1136          {
1137            "type": "ClassStaticBlock",
1138            "value": {
1139              "type": "FunctionExpression",
1140              "function": {
1141                "type": "ScriptFunction",
1142                "id": {
1143                  "type": "Identifier",
1144                  "name": "<cctor>",
1145                  "decorators": [],
1146                  "loc": {
1147                    "start": {
1148                      "line": 1,
1149                      "column": 1
1150                    },
1151                    "end": {
1152                      "line": 1,
1153                      "column": 1
1154                    }
1155                  }
1156                },
1157                "generator": false,
1158                "async": false,
1159                "expression": true,
1160                "params": [],
1161                "body": {
1162                  "type": "BlockStatement",
1163                  "statements": [
1164                    {
1165                      "type": "ExpressionStatement",
1166                      "expression": {
1167                        "type": "CallExpression",
1168                        "callee": {
1169                          "type": "MemberExpression",
1170                          "object": {
1171                            "type": "Identifier",
1172                            "name": "JSRuntime",
1173                            "decorators": [],
1174                            "loc": {
1175                              "start": {
1176                                "line": 1,
1177                                "column": 1
1178                              },
1179                              "end": {
1180                                "line": 1,
1181                                "column": 1
1182                              }
1183                            }
1184                          },
1185                          "property": {
1186                            "type": "Identifier",
1187                            "name": "__initJSCallClass",
1188                            "decorators": [],
1189                            "loc": {
1190                              "start": {
1191                                "line": 1,
1192                                "column": 1
1193                              },
1194                              "end": {
1195                                "line": 1,
1196                                "column": 1
1197                              }
1198                            }
1199                          },
1200                          "computed": false,
1201                          "optional": false,
1202                          "loc": {
1203                            "start": {
1204                              "line": 1,
1205                              "column": 1
1206                            },
1207                            "end": {
1208                              "line": 1,
1209                              "column": 1
1210                            }
1211                          }
1212                        },
1213                        "arguments": [],
1214                        "optional": false,
1215                        "loc": {
1216                          "start": {
1217                            "line": 1,
1218                            "column": 1
1219                          },
1220                          "end": {
1221                            "line": 1,
1222                            "column": 1
1223                          }
1224                        }
1225                      },
1226                      "loc": {
1227                        "start": {
1228                          "line": 1,
1229                          "column": 1
1230                        },
1231                        "end": {
1232                          "line": 1,
1233                          "column": 1
1234                        }
1235                      }
1236                    }
1237                  ],
1238                  "loc": {
1239                    "start": {
1240                      "line": 1,
1241                      "column": 1
1242                    },
1243                    "end": {
1244                      "line": 1,
1245                      "column": 1
1246                    }
1247                  }
1248                },
1249                "loc": {
1250                  "start": {
1251                    "line": 1,
1252                    "column": 1
1253                  },
1254                  "end": {
1255                    "line": 1,
1256                    "column": 1
1257                  }
1258                }
1259              },
1260              "loc": {
1261                "start": {
1262                  "line": 1,
1263                  "column": 1
1264                },
1265                "end": {
1266                  "line": 1,
1267                  "column": 1
1268                }
1269              }
1270            },
1271            "loc": {
1272              "start": {
1273                "line": 1,
1274                "column": 1
1275              },
1276              "end": {
1277                "line": 1,
1278                "column": 1
1279              }
1280            }
1281          },
1282          {
1283            "type": "MethodDefinition",
1284            "key": {
1285              "type": "Identifier",
1286              "name": "invoke",
1287              "decorators": [],
1288              "loc": {
1289                "start": {
1290                  "line": 1,
1291                  "column": 1
1292                },
1293                "end": {
1294                  "line": 1,
1295                  "column": 1
1296                }
1297              }
1298            },
1299            "kind": "method",
1300            "accessibility": "public",
1301            "static": true,
1302            "optional": false,
1303            "computed": false,
1304            "value": {
1305              "type": "FunctionExpression",
1306              "function": {
1307                "type": "ScriptFunction",
1308                "id": {
1309                  "type": "Identifier",
1310                  "name": "invoke",
1311                  "decorators": [],
1312                  "loc": {
1313                    "start": {
1314                      "line": 1,
1315                      "column": 1
1316                    },
1317                    "end": {
1318                      "line": 1,
1319                      "column": 1
1320                    }
1321                  }
1322                },
1323                "generator": false,
1324                "async": false,
1325                "expression": false,
1326                "params": [
1327                  {
1328                    "type": "ETSParameterExpression",
1329                    "name": {
1330                      "type": "Identifier",
1331                      "name": "obj",
1332                      "typeAnnotation": {
1333                        "type": "OpaqueType",
1334                        "loc": {
1335                          "start": {
1336                            "line": 1,
1337                            "column": 1
1338                          },
1339                          "end": {
1340                            "line": 1,
1341                            "column": 1
1342                          }
1343                        }
1344                      },
1345                      "decorators": [],
1346                      "loc": {
1347                        "start": {
1348                          "line": 1,
1349                          "column": 1
1350                        },
1351                        "end": {
1352                          "line": 1,
1353                          "column": 1
1354                        }
1355                      }
1356                    },
1357                    "loc": {
1358                      "start": {
1359                        "line": 1,
1360                        "column": 1
1361                      },
1362                      "end": {
1363                        "line": 1,
1364                        "column": 1
1365                      }
1366                    }
1367                  },
1368                  {
1369                    "type": "ETSParameterExpression",
1370                    "name": {
1371                      "type": "Identifier",
1372                      "name": "qname_start",
1373                      "typeAnnotation": {
1374                        "type": "ETSPrimitiveType",
1375                        "loc": {
1376                          "start": {
1377                            "line": 1,
1378                            "column": 1
1379                          },
1380                          "end": {
1381                            "line": 1,
1382                            "column": 1
1383                          }
1384                        }
1385                      },
1386                      "decorators": [],
1387                      "loc": {
1388                        "start": {
1389                          "line": 1,
1390                          "column": 1
1391                        },
1392                        "end": {
1393                          "line": 1,
1394                          "column": 1
1395                        }
1396                      }
1397                    },
1398                    "loc": {
1399                      "start": {
1400                        "line": 1,
1401                        "column": 1
1402                      },
1403                      "end": {
1404                        "line": 1,
1405                        "column": 1
1406                      }
1407                    }
1408                  },
1409                  {
1410                    "type": "ETSParameterExpression",
1411                    "name": {
1412                      "type": "Identifier",
1413                      "name": "qname_len",
1414                      "typeAnnotation": {
1415                        "type": "ETSPrimitiveType",
1416                        "loc": {
1417                          "start": {
1418                            "line": 1,
1419                            "column": 1
1420                          },
1421                          "end": {
1422                            "line": 1,
1423                            "column": 1
1424                          }
1425                        }
1426                      },
1427                      "decorators": [],
1428                      "loc": {
1429                        "start": {
1430                          "line": 1,
1431                          "column": 1
1432                        },
1433                        "end": {
1434                          "line": 1,
1435                          "column": 1
1436                        }
1437                      }
1438                    },
1439                    "loc": {
1440                      "start": {
1441                        "line": 1,
1442                        "column": 1
1443                      },
1444                      "end": {
1445                        "line": 1,
1446                        "column": 1
1447                      }
1448                    }
1449                  }
1450                ],
1451                "returnType": {
1452                  "type": "OpaqueType",
1453                  "loc": {
1454                    "start": {
1455                      "line": 1,
1456                      "column": 1
1457                    },
1458                    "end": {
1459                      "line": 1,
1460                      "column": 1
1461                    }
1462                  }
1463                },
1464                "loc": {
1465                  "start": {
1466                    "line": 1,
1467                    "column": 1
1468                  },
1469                  "end": {
1470                    "line": 1,
1471                    "column": 1
1472                  }
1473                }
1474              },
1475              "loc": {
1476                "start": {
1477                  "line": 1,
1478                  "column": 1
1479                },
1480                "end": {
1481                  "line": 1,
1482                  "column": 1
1483                }
1484              }
1485            },
1486            "overloads": [
1487              {
1488                "type": "MethodDefinition",
1489                "key": {
1490                  "type": "Identifier",
1491                  "name": "invoke",
1492                  "decorators": [],
1493                  "loc": {
1494                    "start": {
1495                      "line": 1,
1496                      "column": 1
1497                    },
1498                    "end": {
1499                      "line": 1,
1500                      "column": 1
1501                    }
1502                  }
1503                },
1504                "kind": "method",
1505                "accessibility": "public",
1506                "static": true,
1507                "optional": false,
1508                "computed": false,
1509                "value": {
1510                  "type": "FunctionExpression",
1511                  "function": {
1512                    "type": "ScriptFunction",
1513                    "id": {
1514                      "type": "Identifier",
1515                      "name": "invoke",
1516                      "decorators": [],
1517                      "loc": {
1518                        "start": {
1519                          "line": 1,
1520                          "column": 1
1521                        },
1522                        "end": {
1523                          "line": 1,
1524                          "column": 1
1525                        }
1526                      }
1527                    },
1528                    "generator": false,
1529                    "async": false,
1530                    "expression": false,
1531                    "params": [
1532                      {
1533                        "type": "ETSParameterExpression",
1534                        "name": {
1535                          "type": "Identifier",
1536                          "name": "obj",
1537                          "typeAnnotation": {
1538                            "type": "OpaqueType",
1539                            "loc": {
1540                              "start": {
1541                                "line": 1,
1542                                "column": 1
1543                              },
1544                              "end": {
1545                                "line": 1,
1546                                "column": 1
1547                              }
1548                            }
1549                          },
1550                          "decorators": [],
1551                          "loc": {
1552                            "start": {
1553                              "line": 1,
1554                              "column": 1
1555                            },
1556                            "end": {
1557                              "line": 1,
1558                              "column": 1
1559                            }
1560                          }
1561                        },
1562                        "loc": {
1563                          "start": {
1564                            "line": 1,
1565                            "column": 1
1566                          },
1567                          "end": {
1568                            "line": 1,
1569                            "column": 1
1570                          }
1571                        }
1572                      },
1573                      {
1574                        "type": "ETSParameterExpression",
1575                        "name": {
1576                          "type": "Identifier",
1577                          "name": "qname_start",
1578                          "typeAnnotation": {
1579                            "type": "ETSPrimitiveType",
1580                            "loc": {
1581                              "start": {
1582                                "line": 1,
1583                                "column": 1
1584                              },
1585                              "end": {
1586                                "line": 1,
1587                                "column": 1
1588                              }
1589                            }
1590                          },
1591                          "decorators": [],
1592                          "loc": {
1593                            "start": {
1594                              "line": 1,
1595                              "column": 1
1596                            },
1597                            "end": {
1598                              "line": 1,
1599                              "column": 1
1600                            }
1601                          }
1602                        },
1603                        "loc": {
1604                          "start": {
1605                            "line": 1,
1606                            "column": 1
1607                          },
1608                          "end": {
1609                            "line": 1,
1610                            "column": 1
1611                          }
1612                        }
1613                      },
1614                      {
1615                        "type": "ETSParameterExpression",
1616                        "name": {
1617                          "type": "Identifier",
1618                          "name": "qname_len",
1619                          "typeAnnotation": {
1620                            "type": "ETSPrimitiveType",
1621                            "loc": {
1622                              "start": {
1623                                "line": 1,
1624                                "column": 1
1625                              },
1626                              "end": {
1627                                "line": 1,
1628                                "column": 1
1629                              }
1630                            }
1631                          },
1632                          "decorators": [],
1633                          "loc": {
1634                            "start": {
1635                              "line": 1,
1636                              "column": 1
1637                            },
1638                            "end": {
1639                              "line": 1,
1640                              "column": 1
1641                            }
1642                          }
1643                        },
1644                        "loc": {
1645                          "start": {
1646                            "line": 1,
1647                            "column": 1
1648                          },
1649                          "end": {
1650                            "line": 1,
1651                            "column": 1
1652                          }
1653                        }
1654                      },
1655                      {
1656                        "type": "ETSParameterExpression",
1657                        "name": {
1658                          "type": "Identifier",
1659                          "name": "p0",
1660                          "typeAnnotation": {
1661                            "type": "OpaqueType",
1662                            "loc": {
1663                              "start": {
1664                                "line": 1,
1665                                "column": 1
1666                              },
1667                              "end": {
1668                                "line": 1,
1669                                "column": 1
1670                              }
1671                            }
1672                          },
1673                          "decorators": [],
1674                          "loc": {
1675                            "start": {
1676                              "line": 1,
1677                              "column": 1
1678                            },
1679                            "end": {
1680                              "line": 1,
1681                              "column": 1
1682                            }
1683                          }
1684                        },
1685                        "loc": {
1686                          "start": {
1687                            "line": 1,
1688                            "column": 1
1689                          },
1690                          "end": {
1691                            "line": 1,
1692                            "column": 1
1693                          }
1694                        }
1695                      }
1696                    ],
1697                    "returnType": {
1698                      "type": "OpaqueType",
1699                      "loc": {
1700                        "start": {
1701                          "line": 1,
1702                          "column": 1
1703                        },
1704                        "end": {
1705                          "line": 1,
1706                          "column": 1
1707                        }
1708                      }
1709                    },
1710                    "loc": {
1711                      "start": {
1712                        "line": 1,
1713                        "column": 1
1714                      },
1715                      "end": {
1716                        "line": 1,
1717                        "column": 1
1718                      }
1719                    }
1720                  },
1721                  "loc": {
1722                    "start": {
1723                      "line": 1,
1724                      "column": 1
1725                    },
1726                    "end": {
1727                      "line": 1,
1728                      "column": 1
1729                    }
1730                  }
1731                },
1732                "overloads": [],
1733                "decorators": [],
1734                "loc": {
1735                  "start": {
1736                    "line": 1,
1737                    "column": 1
1738                  },
1739                  "end": {
1740                    "line": 1,
1741                    "column": 1
1742                  }
1743                }
1744              }
1745            ],
1746            "decorators": [],
1747            "loc": {
1748              "start": {
1749                "line": 1,
1750                "column": 1
1751              },
1752              "end": {
1753                "line": 1,
1754                "column": 1
1755              }
1756            }
1757          },
1758          {
1759            "type": "MethodDefinition",
1760            "key": {
1761              "type": "Identifier",
1762              "name": "invoke",
1763              "decorators": [],
1764              "loc": {
1765                "start": {
1766                  "line": 1,
1767                  "column": 1
1768                },
1769                "end": {
1770                  "line": 1,
1771                  "column": 1
1772                }
1773              }
1774            },
1775            "kind": "method",
1776            "accessibility": "public",
1777            "static": true,
1778            "optional": false,
1779            "computed": false,
1780            "value": {
1781              "type": "FunctionExpression",
1782              "function": {
1783                "type": "ScriptFunction",
1784                "id": {
1785                  "type": "Identifier",
1786                  "name": "invoke",
1787                  "decorators": [],
1788                  "loc": {
1789                    "start": {
1790                      "line": 1,
1791                      "column": 1
1792                    },
1793                    "end": {
1794                      "line": 1,
1795                      "column": 1
1796                    }
1797                  }
1798                },
1799                "generator": false,
1800                "async": false,
1801                "expression": false,
1802                "params": [
1803                  {
1804                    "type": "ETSParameterExpression",
1805                    "name": {
1806                      "type": "Identifier",
1807                      "name": "obj",
1808                      "typeAnnotation": {
1809                        "type": "OpaqueType",
1810                        "loc": {
1811                          "start": {
1812                            "line": 1,
1813                            "column": 1
1814                          },
1815                          "end": {
1816                            "line": 1,
1817                            "column": 1
1818                          }
1819                        }
1820                      },
1821                      "decorators": [],
1822                      "loc": {
1823                        "start": {
1824                          "line": 1,
1825                          "column": 1
1826                        },
1827                        "end": {
1828                          "line": 1,
1829                          "column": 1
1830                        }
1831                      }
1832                    },
1833                    "loc": {
1834                      "start": {
1835                        "line": 1,
1836                        "column": 1
1837                      },
1838                      "end": {
1839                        "line": 1,
1840                        "column": 1
1841                      }
1842                    }
1843                  },
1844                  {
1845                    "type": "ETSParameterExpression",
1846                    "name": {
1847                      "type": "Identifier",
1848                      "name": "qname_start",
1849                      "typeAnnotation": {
1850                        "type": "ETSPrimitiveType",
1851                        "loc": {
1852                          "start": {
1853                            "line": 1,
1854                            "column": 1
1855                          },
1856                          "end": {
1857                            "line": 1,
1858                            "column": 1
1859                          }
1860                        }
1861                      },
1862                      "decorators": [],
1863                      "loc": {
1864                        "start": {
1865                          "line": 1,
1866                          "column": 1
1867                        },
1868                        "end": {
1869                          "line": 1,
1870                          "column": 1
1871                        }
1872                      }
1873                    },
1874                    "loc": {
1875                      "start": {
1876                        "line": 1,
1877                        "column": 1
1878                      },
1879                      "end": {
1880                        "line": 1,
1881                        "column": 1
1882                      }
1883                    }
1884                  },
1885                  {
1886                    "type": "ETSParameterExpression",
1887                    "name": {
1888                      "type": "Identifier",
1889                      "name": "qname_len",
1890                      "typeAnnotation": {
1891                        "type": "ETSPrimitiveType",
1892                        "loc": {
1893                          "start": {
1894                            "line": 1,
1895                            "column": 1
1896                          },
1897                          "end": {
1898                            "line": 1,
1899                            "column": 1
1900                          }
1901                        }
1902                      },
1903                      "decorators": [],
1904                      "loc": {
1905                        "start": {
1906                          "line": 1,
1907                          "column": 1
1908                        },
1909                        "end": {
1910                          "line": 1,
1911                          "column": 1
1912                        }
1913                      }
1914                    },
1915                    "loc": {
1916                      "start": {
1917                        "line": 1,
1918                        "column": 1
1919                      },
1920                      "end": {
1921                        "line": 1,
1922                        "column": 1
1923                      }
1924                    }
1925                  },
1926                  {
1927                    "type": "ETSParameterExpression",
1928                    "name": {
1929                      "type": "Identifier",
1930                      "name": "p0",
1931                      "typeAnnotation": {
1932                        "type": "OpaqueType",
1933                        "loc": {
1934                          "start": {
1935                            "line": 1,
1936                            "column": 1
1937                          },
1938                          "end": {
1939                            "line": 1,
1940                            "column": 1
1941                          }
1942                        }
1943                      },
1944                      "decorators": [],
1945                      "loc": {
1946                        "start": {
1947                          "line": 1,
1948                          "column": 1
1949                        },
1950                        "end": {
1951                          "line": 1,
1952                          "column": 1
1953                        }
1954                      }
1955                    },
1956                    "loc": {
1957                      "start": {
1958                        "line": 1,
1959                        "column": 1
1960                      },
1961                      "end": {
1962                        "line": 1,
1963                        "column": 1
1964                      }
1965                    }
1966                  }
1967                ],
1968                "returnType": {
1969                  "type": "OpaqueType",
1970                  "loc": {
1971                    "start": {
1972                      "line": 1,
1973                      "column": 1
1974                    },
1975                    "end": {
1976                      "line": 1,
1977                      "column": 1
1978                    }
1979                  }
1980                },
1981                "loc": {
1982                  "start": {
1983                    "line": 1,
1984                    "column": 1
1985                  },
1986                  "end": {
1987                    "line": 1,
1988                    "column": 1
1989                  }
1990                }
1991              },
1992              "loc": {
1993                "start": {
1994                  "line": 1,
1995                  "column": 1
1996                },
1997                "end": {
1998                  "line": 1,
1999                  "column": 1
2000                }
2001              }
2002            },
2003            "overloads": [],
2004            "decorators": [],
2005            "loc": {
2006              "start": {
2007                "line": 1,
2008                "column": 1
2009              },
2010              "end": {
2011                "line": 1,
2012                "column": 1
2013              }
2014            }
2015          }
2016        ],
2017        "loc": {
2018          "start": {
2019            "line": 1,
2020            "column": 1
2021          },
2022          "end": {
2023            "line": 1,
2024            "column": 1
2025          }
2026        }
2027      },
2028      "loc": {
2029        "start": {
2030          "line": 1,
2031          "column": 1
2032        },
2033        "end": {
2034          "line": 1,
2035          "column": 1
2036        }
2037      }
2038    },
2039    {
2040      "type": "ClassDeclaration",
2041      "definition": {
2042        "id": {
2043          "type": "Identifier",
2044          "name": "$dynmodule",
2045          "decorators": [],
2046          "loc": {
2047            "start": {
2048              "line": 1,
2049              "column": 1
2050            },
2051            "end": {
2052              "line": 1,
2053              "column": 1
2054            }
2055          }
2056        },
2057        "superClass": null,
2058        "implements": [],
2059        "body": [
2060          {
2061            "type": "ClassProperty",
2062            "key": {
2063              "type": "Identifier",
2064              "name": "dynamic_js_import_tests0",
2065              "decorators": [],
2066              "loc": {
2067                "start": {
2068                  "line": 1,
2069                  "column": 1
2070                },
2071                "end": {
2072                  "line": 1,
2073                  "column": 1
2074                }
2075              }
2076            },
2077            "accessibility": "public",
2078            "static": true,
2079            "readonly": true,
2080            "declare": false,
2081            "optional": false,
2082            "computed": false,
2083            "typeAnnotation": {
2084              "type": "OpaqueType",
2085              "loc": {
2086                "start": {
2087                  "line": 1,
2088                  "column": 1
2089                },
2090                "end": {
2091                  "line": 1,
2092                  "column": 1
2093                }
2094              }
2095            },
2096            "definite": false,
2097            "decorators": [],
2098            "loc": {
2099              "start": {
2100                "line": 1,
2101                "column": 1
2102              },
2103              "end": {
2104                "line": 1,
2105                "column": 1
2106              }
2107            }
2108          },
2109          {
2110            "type": "ClassStaticBlock",
2111            "value": {
2112              "type": "FunctionExpression",
2113              "function": {
2114                "type": "ScriptFunction",
2115                "id": {
2116                  "type": "Identifier",
2117                  "name": "<cctor>",
2118                  "decorators": [],
2119                  "loc": {
2120                    "start": {
2121                      "line": 1,
2122                      "column": 1
2123                    },
2124                    "end": {
2125                      "line": 1,
2126                      "column": 1
2127                    }
2128                  }
2129                },
2130                "generator": false,
2131                "async": false,
2132                "expression": true,
2133                "params": [],
2134                "body": {
2135                  "type": "BlockStatement",
2136                  "statements": [
2137                    {
2138                      "type": "ExpressionStatement",
2139                      "expression": {
2140                        "type": "AssignmentExpression",
2141                        "operator": "=",
2142                        "left": {
2143                          "type": "MemberExpression",
2144                          "object": {
2145                            "type": "Identifier",
2146                            "name": "$dynmodule",
2147                            "decorators": [],
2148                            "loc": {
2149                              "start": {
2150                                "line": 1,
2151                                "column": 1
2152                              },
2153                              "end": {
2154                                "line": 1,
2155                                "column": 1
2156                              }
2157                            }
2158                          },
2159                          "property": {
2160                            "type": "Identifier",
2161                            "name": "dynamic_js_import_tests0",
2162                            "decorators": [],
2163                            "loc": {
2164                              "start": {
2165                                "line": 1,
2166                                "column": 1
2167                              },
2168                              "end": {
2169                                "line": 1,
2170                                "column": 1
2171                              }
2172                            }
2173                          },
2174                          "computed": false,
2175                          "optional": false,
2176                          "loc": {
2177                            "start": {
2178                              "line": 1,
2179                              "column": 1
2180                            },
2181                            "end": {
2182                              "line": 1,
2183                              "column": 1
2184                            }
2185                          }
2186                        },
2187                        "right": {
2188                          "type": "CallExpression",
2189                          "callee": {
2190                            "type": "MemberExpression",
2191                            "object": {
2192                              "type": "Identifier",
2193                              "name": "JSRuntime",
2194                              "decorators": [],
2195                              "loc": {
2196                                "start": {
2197                                  "line": 1,
2198                                  "column": 1
2199                                },
2200                                "end": {
2201                                  "line": 1,
2202                                  "column": 1
2203                                }
2204                              }
2205                            },
2206                            "property": {
2207                              "type": "Identifier",
2208                              "name": "loadModule",
2209                              "decorators": [],
2210                              "loc": {
2211                                "start": {
2212                                  "line": 1,
2213                                  "column": 1
2214                                },
2215                                "end": {
2216                                  "line": 1,
2217                                  "column": 1
2218                                }
2219                              }
2220                            },
2221                            "computed": false,
2222                            "optional": false,
2223                            "loc": {
2224                              "start": {
2225                                "line": 1,
2226                                "column": 1
2227                              },
2228                              "end": {
2229                                "line": 1,
2230                                "column": 1
2231                              }
2232                            }
2233                          },
2234                          "arguments": [
2235                            {
2236                              "type": "StringLiteral",
2237                              "value": "dynamic_js_import_tests",
2238                              "loc": {
2239                                "start": {
2240                                  "line": 1,
2241                                  "column": 1
2242                                },
2243                                "end": {
2244                                  "line": 1,
2245                                  "column": 1
2246                                }
2247                              }
2248                            }
2249                          ],
2250                          "optional": false,
2251                          "loc": {
2252                            "start": {
2253                              "line": 1,
2254                              "column": 1
2255                            },
2256                            "end": {
2257                              "line": 1,
2258                              "column": 1
2259                            }
2260                          }
2261                        },
2262                        "loc": {
2263                          "start": {
2264                            "line": 1,
2265                            "column": 1
2266                          },
2267                          "end": {
2268                            "line": 1,
2269                            "column": 1
2270                          }
2271                        }
2272                      },
2273                      "loc": {
2274                        "start": {
2275                          "line": 1,
2276                          "column": 1
2277                        },
2278                        "end": {
2279                          "line": 1,
2280                          "column": 1
2281                        }
2282                      }
2283                    }
2284                  ],
2285                  "loc": {
2286                    "start": {
2287                      "line": 1,
2288                      "column": 1
2289                    },
2290                    "end": {
2291                      "line": 1,
2292                      "column": 1
2293                    }
2294                  }
2295                },
2296                "loc": {
2297                  "start": {
2298                    "line": 1,
2299                    "column": 1
2300                  },
2301                  "end": {
2302                    "line": 1,
2303                    "column": 1
2304                  }
2305                }
2306              },
2307              "loc": {
2308                "start": {
2309                  "line": 1,
2310                  "column": 1
2311                },
2312                "end": {
2313                  "line": 1,
2314                  "column": 1
2315                }
2316              }
2317            },
2318            "loc": {
2319              "start": {
2320                "line": 1,
2321                "column": 1
2322              },
2323              "end": {
2324                "line": 1,
2325                "column": 1
2326              }
2327            }
2328          },
2329          {
2330            "type": "MethodDefinition",
2331            "key": {
2332              "type": "Identifier",
2333              "name": "init",
2334              "decorators": [],
2335              "loc": {
2336                "start": {
2337                  "line": 1,
2338                  "column": 1
2339                },
2340                "end": {
2341                  "line": 1,
2342                  "column": 1
2343                }
2344              }
2345            },
2346            "kind": "method",
2347            "accessibility": "public",
2348            "static": true,
2349            "optional": false,
2350            "computed": false,
2351            "value": {
2352              "type": "FunctionExpression",
2353              "function": {
2354                "type": "ScriptFunction",
2355                "id": {
2356                  "type": "Identifier",
2357                  "name": "init",
2358                  "decorators": [],
2359                  "loc": {
2360                    "start": {
2361                      "line": 1,
2362                      "column": 1
2363                    },
2364                    "end": {
2365                      "line": 1,
2366                      "column": 1
2367                    }
2368                  }
2369                },
2370                "generator": false,
2371                "async": false,
2372                "expression": false,
2373                "params": [],
2374                "returnType": {
2375                  "type": "OpaqueType",
2376                  "loc": {
2377                    "start": {
2378                      "line": 1,
2379                      "column": 1
2380                    },
2381                    "end": {
2382                      "line": 1,
2383                      "column": 1
2384                    }
2385                  }
2386                },
2387                "body": {
2388                  "type": "BlockStatement",
2389                  "statements": [],
2390                  "loc": {
2391                    "start": {
2392                      "line": 1,
2393                      "column": 1
2394                    },
2395                    "end": {
2396                      "line": 1,
2397                      "column": 1
2398                    }
2399                  }
2400                },
2401                "loc": {
2402                  "start": {
2403                    "line": 1,
2404                    "column": 1
2405                  },
2406                  "end": {
2407                    "line": 1,
2408                    "column": 1
2409                  }
2410                }
2411              },
2412              "loc": {
2413                "start": {
2414                  "line": 1,
2415                  "column": 1
2416                },
2417                "end": {
2418                  "line": 1,
2419                  "column": 1
2420                }
2421              }
2422            },
2423            "overloads": [],
2424            "decorators": [],
2425            "loc": {
2426              "start": {
2427                "line": 1,
2428                "column": 1
2429              },
2430              "end": {
2431                "line": 1,
2432                "column": 1
2433              }
2434            }
2435          }
2436        ],
2437        "loc": {
2438          "start": {
2439            "line": 1,
2440            "column": 1
2441          },
2442          "end": {
2443            "line": 1,
2444            "column": 1
2445          }
2446        }
2447      },
2448      "loc": {
2449        "start": {
2450          "line": 1,
2451          "column": 1
2452        },
2453        "end": {
2454          "line": 1,
2455          "column": 1
2456        }
2457      }
2458    }
2459  ],
2460  "loc": {
2461    "start": {
2462      "line": 1,
2463      "column": 1
2464    },
2465    "end": {
2466      "line": 26,
2467      "column": 1
2468    }
2469  }
2470}
2471