1{
2  "type": "Program",
3  "statements": [
4    {
5      "type": "ClassDeclaration",
6      "definition": {
7        "id": {
8          "type": "Identifier",
9          "name": "NativeModule",
10          "decorators": [],
11          "loc": {
12            "start": {
13              "line": 21,
14              "column": 7
15            },
16            "end": {
17              "line": 21,
18              "column": 19
19            }
20          }
21        },
22        "superClass": null,
23        "implements": [],
24        "body": [
25          {
26            "type": "MethodDefinition",
27            "key": {
28              "type": "Identifier",
29              "name": "MethodeOfClass",
30              "decorators": [],
31              "loc": {
32                "start": {
33                  "line": 22,
34                  "column": 5
35                },
36                "end": {
37                  "line": 22,
38                  "column": 19
39                }
40              }
41            },
42            "kind": "method",
43            "accessibility": "public",
44            "static": false,
45            "optional": false,
46            "computed": false,
47            "value": {
48              "type": "FunctionExpression",
49              "function": {
50                "type": "ScriptFunction",
51                "id": {
52                  "type": "Identifier",
53                  "name": "MethodeOfClass",
54                  "decorators": [],
55                  "loc": {
56                    "start": {
57                      "line": 22,
58                      "column": 5
59                    },
60                    "end": {
61                      "line": 22,
62                      "column": 19
63                    }
64                  }
65                },
66                "generator": false,
67                "async": false,
68                "expression": false,
69                "params": [
70                  {
71                    "type": "ETSParameterExpression",
72                    "name": {
73                      "type": "Identifier",
74                      "name": "n",
75                      "typeAnnotation": {
76                        "type": "ETSTypeReference",
77                        "part": {
78                          "type": "ETSTypeReferencePart",
79                          "name": {
80                            "type": "Identifier",
81                            "name": "number",
82                            "decorators": [],
83                            "loc": {
84                              "start": {
85                                "line": 22,
86                                "column": 23
87                              },
88                              "end": {
89                                "line": 22,
90                                "column": 29
91                              }
92                            }
93                          },
94                          "loc": {
95                            "start": {
96                              "line": 22,
97                              "column": 23
98                            },
99                            "end": {
100                              "line": 22,
101                              "column": 30
102                            }
103                          }
104                        },
105                        "loc": {
106                          "start": {
107                            "line": 22,
108                            "column": 23
109                          },
110                          "end": {
111                            "line": 22,
112                            "column": 30
113                          }
114                        }
115                      },
116                      "decorators": [],
117                      "loc": {
118                        "start": {
119                          "line": 22,
120                          "column": 20
121                        },
122                        "end": {
123                          "line": 22,
124                          "column": 30
125                        }
126                      }
127                    },
128                    "loc": {
129                      "start": {
130                        "line": 22,
131                        "column": 20
132                      },
133                      "end": {
134                        "line": 22,
135                        "column": 30
136                      }
137                    }
138                  }
139                ],
140                "returnType": {
141                  "type": "ETSPrimitiveType",
142                  "loc": {
143                    "start": {
144                      "line": 22,
145                      "column": 31
146                    },
147                    "end": {
148                      "line": 22,
149                      "column": 35
150                    }
151                  }
152                },
153                "body": {
154                  "type": "BlockStatement",
155                  "statements": [],
156                  "loc": {
157                    "start": {
158                      "line": 22,
159                      "column": 36
160                    },
161                    "end": {
162                      "line": 22,
163                      "column": 38
164                    }
165                  }
166                },
167                "loc": {
168                  "start": {
169                    "line": 22,
170                    "column": 19
171                  },
172                  "end": {
173                    "line": 22,
174                    "column": 38
175                  }
176                }
177              },
178              "loc": {
179                "start": {
180                  "line": 22,
181                  "column": 19
182                },
183                "end": {
184                  "line": 22,
185                  "column": 38
186                }
187              }
188            },
189            "overloads": [],
190            "decorators": [],
191            "loc": {
192              "start": {
193                "line": 22,
194                "column": 5
195              },
196              "end": {
197                "line": 22,
198                "column": 38
199              }
200            }
201          },
202          {
203            "type": "MethodDefinition",
204            "key": {
205              "type": "Identifier",
206              "name": "constructor",
207              "decorators": [],
208              "loc": {
209                "start": {
210                  "line": 1,
211                  "column": 1
212                },
213                "end": {
214                  "line": 1,
215                  "column": 1
216                }
217              }
218            },
219            "kind": "constructor",
220            "static": false,
221            "optional": false,
222            "computed": false,
223            "value": {
224              "type": "FunctionExpression",
225              "function": {
226                "type": "ScriptFunction",
227                "id": {
228                  "type": "Identifier",
229                  "name": "constructor",
230                  "decorators": [],
231                  "loc": {
232                    "start": {
233                      "line": 1,
234                      "column": 1
235                    },
236                    "end": {
237                      "line": 1,
238                      "column": 1
239                    }
240                  }
241                },
242                "generator": false,
243                "async": false,
244                "expression": false,
245                "params": [],
246                "body": {
247                  "type": "BlockStatement",
248                  "statements": [],
249                  "loc": {
250                    "start": {
251                      "line": 1,
252                      "column": 1
253                    },
254                    "end": {
255                      "line": 1,
256                      "column": 1
257                    }
258                  }
259                },
260                "loc": {
261                  "start": {
262                    "line": 1,
263                    "column": 1
264                  },
265                  "end": {
266                    "line": 1,
267                    "column": 1
268                  }
269                }
270              },
271              "loc": {
272                "start": {
273                  "line": 1,
274                  "column": 1
275                },
276                "end": {
277                  "line": 1,
278                  "column": 1
279                }
280              }
281            },
282            "overloads": [],
283            "decorators": [],
284            "loc": {
285              "start": {
286                "line": 23,
287                "column": 2
288              },
289              "end": {
290                "line": 23,
291                "column": 2
292              }
293            }
294          }
295        ],
296        "loc": {
297          "start": {
298            "line": 21,
299            "column": 20
300          },
301          "end": {
302            "line": 23,
303            "column": 2
304          }
305        }
306      },
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": "NativeString",
324          "decorators": [],
325          "loc": {
326            "start": {
327              "line": 29,
328              "column": 7
329            },
330            "end": {
331              "line": 29,
332              "column": 19
333            }
334          }
335        },
336        "superClass": null,
337        "implements": [],
338        "body": [
339          {
340            "type": "MethodDefinition",
341            "key": {
342              "type": "Identifier",
343              "name": "MethodeOfStatic",
344              "decorators": [],
345              "loc": {
346                "start": {
347                  "line": 30,
348                  "column": 12
349                },
350                "end": {
351                  "line": 30,
352                  "column": 27
353                }
354              }
355            },
356            "kind": "method",
357            "accessibility": "public",
358            "static": true,
359            "optional": false,
360            "computed": false,
361            "value": {
362              "type": "FunctionExpression",
363              "function": {
364                "type": "ScriptFunction",
365                "id": {
366                  "type": "Identifier",
367                  "name": "MethodeOfStatic",
368                  "decorators": [],
369                  "loc": {
370                    "start": {
371                      "line": 30,
372                      "column": 12
373                    },
374                    "end": {
375                      "line": 30,
376                      "column": 27
377                    }
378                  }
379                },
380                "generator": false,
381                "async": false,
382                "expression": false,
383                "params": [],
384                "body": {
385                  "type": "BlockStatement",
386                  "statements": [
387                    {
388                      "type": "ExpressionStatement",
389                      "expression": {
390                        "type": "CallExpression",
391                        "callee": {
392                          "type": "Identifier",
393                          "name": "globalFunction",
394                          "decorators": [],
395                          "loc": {
396                            "start": {
397                              "line": 31,
398                              "column": 9
399                            },
400                            "end": {
401                              "line": 31,
402                              "column": 23
403                            }
404                          }
405                        },
406                        "arguments": [
407                          {
408                            "type": "ArrowFunctionExpression",
409                            "function": {
410                              "type": "ScriptFunction",
411                              "id": null,
412                              "generator": false,
413                              "async": false,
414                              "expression": false,
415                              "params": [
416                                {
417                                  "type": "ETSParameterExpression",
418                                  "name": {
419                                    "type": "Identifier",
420                                    "name": "len",
421                                    "typeAnnotation": {
422                                      "type": "ETSTypeReference",
423                                      "part": {
424                                        "type": "ETSTypeReferencePart",
425                                        "name": {
426                                          "type": "Identifier",
427                                          "name": "number",
428                                          "decorators": [],
429                                          "loc": {
430                                            "start": {
431                                              "line": 31,
432                                              "column": 30
433                                            },
434                                            "end": {
435                                              "line": 31,
436                                              "column": 36
437                                            }
438                                          }
439                                        },
440                                        "loc": {
441                                          "start": {
442                                            "line": 31,
443                                            "column": 30
444                                          },
445                                          "end": {
446                                            "line": 31,
447                                            "column": 37
448                                          }
449                                        }
450                                      },
451                                      "loc": {
452                                        "start": {
453                                          "line": 31,
454                                          "column": 30
455                                        },
456                                        "end": {
457                                          "line": 31,
458                                          "column": 37
459                                        }
460                                      }
461                                    },
462                                    "decorators": [],
463                                    "loc": {
464                                      "start": {
465                                        "line": 31,
466                                        "column": 25
467                                      },
468                                      "end": {
469                                        "line": 31,
470                                        "column": 37
471                                      }
472                                    }
473                                  },
474                                  "loc": {
475                                    "start": {
476                                      "line": 31,
477                                      "column": 25
478                                    },
479                                    "end": {
480                                      "line": 31,
481                                      "column": 37
482                                    }
483                                  }
484                                }
485                              ],
486                              "returnType": {
487                                "type": "ETSPrimitiveType",
488                                "loc": {
489                                  "start": {
490                                    "line": 31,
491                                    "column": 38
492                                  },
493                                  "end": {
494                                    "line": 31,
495                                    "column": 42
496                                  }
497                                }
498                              },
499                              "body": {
500                                "type": "BlockStatement",
501                                "statements": [
502                                  {
503                                    "type": "ExpressionStatement",
504                                    "expression": {
505                                      "type": "CallExpression",
506                                      "callee": {
507                                        "type": "MemberExpression",
508                                        "object": {
509                                          "type": "CallExpression",
510                                          "callee": {
511                                            "type": "Identifier",
512                                            "name": "nativeModule",
513                                            "decorators": [],
514                                            "loc": {
515                                              "start": {
516                                                "line": 32,
517                                                "column": 13
518                                              },
519                                              "end": {
520                                                "line": 32,
521                                                "column": 25
522                                              }
523                                            }
524                                          },
525                                          "arguments": [],
526                                          "optional": false,
527                                          "loc": {
528                                            "start": {
529                                              "line": 32,
530                                              "column": 13
531                                            },
532                                            "end": {
533                                              "line": 32,
534                                              "column": 27
535                                            }
536                                          }
537                                        },
538                                        "property": {
539                                          "type": "Identifier",
540                                          "name": "MethodeOfClass",
541                                          "decorators": [],
542                                          "loc": {
543                                            "start": {
544                                              "line": 32,
545                                              "column": 28
546                                            },
547                                            "end": {
548                                              "line": 32,
549                                              "column": 42
550                                            }
551                                          }
552                                        },
553                                        "computed": false,
554                                        "optional": false,
555                                        "loc": {
556                                          "start": {
557                                            "line": 32,
558                                            "column": 13
559                                          },
560                                          "end": {
561                                            "line": 32,
562                                            "column": 42
563                                          }
564                                        }
565                                      },
566                                      "arguments": [
567                                        {
568                                          "type": "Identifier",
569                                          "name": "len",
570                                          "decorators": [],
571                                          "loc": {
572                                            "start": {
573                                              "line": 32,
574                                              "column": 43
575                                            },
576                                            "end": {
577                                              "line": 32,
578                                              "column": 46
579                                            }
580                                          }
581                                        }
582                                      ],
583                                      "optional": false,
584                                      "loc": {
585                                        "start": {
586                                          "line": 32,
587                                          "column": 13
588                                        },
589                                        "end": {
590                                          "line": 32,
591                                          "column": 47
592                                        }
593                                      }
594                                    },
595                                    "loc": {
596                                      "start": {
597                                        "line": 32,
598                                        "column": 13
599                                      },
600                                      "end": {
601                                        "line": 32,
602                                        "column": 48
603                                      }
604                                    }
605                                  }
606                                ],
607                                "loc": {
608                                  "start": {
609                                    "line": 31,
610                                    "column": 46
611                                  },
612                                  "end": {
613                                    "line": 33,
614                                    "column": 10
615                                  }
616                                }
617                              },
618                              "loc": {
619                                "start": {
620                                  "line": 31,
621                                  "column": 24
622                                },
623                                "end": {
624                                  "line": 33,
625                                  "column": 10
626                                }
627                              }
628                            },
629                            "loc": {
630                              "start": {
631                                "line": 31,
632                                "column": 24
633                              },
634                              "end": {
635                                "line": 33,
636                                "column": 10
637                              }
638                            }
639                          }
640                        ],
641                        "optional": false,
642                        "loc": {
643                          "start": {
644                            "line": 31,
645                            "column": 9
646                          },
647                          "end": {
648                            "line": 33,
649                            "column": 11
650                          }
651                        }
652                      },
653                      "loc": {
654                        "start": {
655                          "line": 31,
656                          "column": 9
657                        },
658                        "end": {
659                          "line": 33,
660                          "column": 12
661                        }
662                      }
663                    }
664                  ],
665                  "loc": {
666                    "start": {
667                      "line": 30,
668                      "column": 30
669                    },
670                    "end": {
671                      "line": 34,
672                      "column": 6
673                    }
674                  }
675                },
676                "loc": {
677                  "start": {
678                    "line": 30,
679                    "column": 27
680                  },
681                  "end": {
682                    "line": 34,
683                    "column": 6
684                  }
685                }
686              },
687              "loc": {
688                "start": {
689                  "line": 30,
690                  "column": 27
691                },
692                "end": {
693                  "line": 34,
694                  "column": 6
695                }
696              }
697            },
698            "overloads": [],
699            "decorators": [],
700            "loc": {
701              "start": {
702                "line": 30,
703                "column": 5
704              },
705              "end": {
706                "line": 34,
707                "column": 6
708              }
709            }
710          },
711          {
712            "type": "MethodDefinition",
713            "key": {
714              "type": "Identifier",
715              "name": "constructor",
716              "decorators": [],
717              "loc": {
718                "start": {
719                  "line": 1,
720                  "column": 1
721                },
722                "end": {
723                  "line": 1,
724                  "column": 1
725                }
726              }
727            },
728            "kind": "constructor",
729            "static": false,
730            "optional": false,
731            "computed": false,
732            "value": {
733              "type": "FunctionExpression",
734              "function": {
735                "type": "ScriptFunction",
736                "id": {
737                  "type": "Identifier",
738                  "name": "constructor",
739                  "decorators": [],
740                  "loc": {
741                    "start": {
742                      "line": 1,
743                      "column": 1
744                    },
745                    "end": {
746                      "line": 1,
747                      "column": 1
748                    }
749                  }
750                },
751                "generator": false,
752                "async": false,
753                "expression": false,
754                "params": [],
755                "body": {
756                  "type": "BlockStatement",
757                  "statements": [],
758                  "loc": {
759                    "start": {
760                      "line": 1,
761                      "column": 1
762                    },
763                    "end": {
764                      "line": 1,
765                      "column": 1
766                    }
767                  }
768                },
769                "loc": {
770                  "start": {
771                    "line": 1,
772                    "column": 1
773                  },
774                  "end": {
775                    "line": 1,
776                    "column": 1
777                  }
778                }
779              },
780              "loc": {
781                "start": {
782                  "line": 1,
783                  "column": 1
784                },
785                "end": {
786                  "line": 1,
787                  "column": 1
788                }
789              }
790            },
791            "overloads": [],
792            "decorators": [],
793            "loc": {
794              "start": {
795                "line": 35,
796                "column": 2
797              },
798              "end": {
799                "line": 35,
800                "column": 2
801              }
802            }
803          }
804        ],
805        "loc": {
806          "start": {
807            "line": 29,
808            "column": 20
809          },
810          "end": {
811            "line": 35,
812            "column": 2
813          }
814        }
815      },
816      "loc": {
817        "start": {
818          "line": 29,
819          "column": 1
820        },
821        "end": {
822          "line": 35,
823          "column": 2
824        }
825      }
826    },
827    {
828      "type": "ClassDeclaration",
829      "definition": {
830        "id": {
831          "type": "Identifier",
832          "name": "ETSGLOBAL",
833          "decorators": [],
834          "loc": {
835            "start": {
836              "line": 1,
837              "column": 1
838            },
839            "end": {
840              "line": 1,
841              "column": 1
842            }
843          }
844        },
845        "superClass": null,
846        "implements": [],
847        "body": [
848          {
849            "type": "MethodDefinition",
850            "key": {
851              "type": "Identifier",
852              "name": "_$init$_",
853              "decorators": [],
854              "loc": {
855                "start": {
856                  "line": 1,
857                  "column": 1
858                },
859                "end": {
860                  "line": 1,
861                  "column": 1
862                }
863              }
864            },
865            "kind": "method",
866            "accessibility": "public",
867            "static": true,
868            "optional": false,
869            "computed": false,
870            "value": {
871              "type": "FunctionExpression",
872              "function": {
873                "type": "ScriptFunction",
874                "id": {
875                  "type": "Identifier",
876                  "name": "_$init$_",
877                  "decorators": [],
878                  "loc": {
879                    "start": {
880                      "line": 1,
881                      "column": 1
882                    },
883                    "end": {
884                      "line": 1,
885                      "column": 1
886                    }
887                  }
888                },
889                "generator": false,
890                "async": false,
891                "expression": false,
892                "params": [],
893                "body": {
894                  "type": "BlockStatement",
895                  "statements": [],
896                  "loc": {
897                    "start": {
898                      "line": 1,
899                      "column": 1
900                    },
901                    "end": {
902                      "line": 1,
903                      "column": 1
904                    }
905                  }
906                },
907                "loc": {
908                  "start": {
909                    "line": 1,
910                    "column": 1
911                  },
912                  "end": {
913                    "line": 1,
914                    "column": 1
915                  }
916                }
917              },
918              "loc": {
919                "start": {
920                  "line": 1,
921                  "column": 1
922                },
923                "end": {
924                  "line": 1,
925                  "column": 1
926                }
927              }
928            },
929            "overloads": [],
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          {
943            "type": "MethodDefinition",
944            "key": {
945              "type": "Identifier",
946              "name": "globalFunction",
947              "decorators": [],
948              "loc": {
949                "start": {
950                  "line": 16,
951                  "column": 10
952                },
953                "end": {
954                  "line": 16,
955                  "column": 24
956                }
957              }
958            },
959            "kind": "method",
960            "accessibility": "public",
961            "static": true,
962            "optional": false,
963            "computed": false,
964            "value": {
965              "type": "FunctionExpression",
966              "function": {
967                "type": "ScriptFunction",
968                "id": {
969                  "type": "Identifier",
970                  "name": "globalFunction",
971                  "decorators": [],
972                  "loc": {
973                    "start": {
974                      "line": 16,
975                      "column": 10
976                    },
977                    "end": {
978                      "line": 16,
979                      "column": 24
980                    }
981                  }
982                },
983                "generator": false,
984                "async": false,
985                "expression": false,
986                "params": [
987                  {
988                    "type": "ETSParameterExpression",
989                    "name": {
990                      "type": "Identifier",
991                      "name": "exec",
992                      "typeAnnotation": {
993                        "type": "ETSFunctionType",
994                        "params": [
995                          {
996                            "type": "ETSParameterExpression",
997                            "name": {
998                              "type": "Identifier",
999                              "name": "len",
1000                              "typeAnnotation": {
1001                                "type": "ETSTypeReference",
1002                                "part": {
1003                                  "type": "ETSTypeReferencePart",
1004                                  "name": {
1005                                    "type": "Identifier",
1006                                    "name": "number",
1007                                    "decorators": [],
1008                                    "loc": {
1009                                      "start": {
1010                                        "line": 16,
1011                                        "column": 37
1012                                      },
1013                                      "end": {
1014                                        "line": 16,
1015                                        "column": 43
1016                                      }
1017                                    }
1018                                  },
1019                                  "loc": {
1020                                    "start": {
1021                                      "line": 16,
1022                                      "column": 37
1023                                    },
1024                                    "end": {
1025                                      "line": 16,
1026                                      "column": 44
1027                                    }
1028                                  }
1029                                },
1030                                "loc": {
1031                                  "start": {
1032                                    "line": 16,
1033                                    "column": 37
1034                                  },
1035                                  "end": {
1036                                    "line": 16,
1037                                    "column": 44
1038                                  }
1039                                }
1040                              },
1041                              "decorators": [],
1042                              "loc": {
1043                                "start": {
1044                                  "line": 16,
1045                                  "column": 32
1046                                },
1047                                "end": {
1048                                  "line": 16,
1049                                  "column": 44
1050                                }
1051                              }
1052                            },
1053                            "loc": {
1054                              "start": {
1055                                "line": 16,
1056                                "column": 32
1057                              },
1058                              "end": {
1059                                "line": 16,
1060                                "column": 44
1061                              }
1062                            }
1063                          }
1064                        ],
1065                        "returnType": {
1066                          "type": "ETSPrimitiveType",
1067                          "loc": {
1068                            "start": {
1069                              "line": 16,
1070                              "column": 47
1071                            },
1072                            "end": {
1073                              "line": 16,
1074                              "column": 51
1075                            }
1076                          }
1077                        },
1078                        "loc": {
1079                          "start": {
1080                            "line": 16,
1081                            "column": 31
1082                          },
1083                          "end": {
1084                            "line": 16,
1085                            "column": 51
1086                          }
1087                        }
1088                      },
1089                      "decorators": [],
1090                      "loc": {
1091                        "start": {
1092                          "line": 16,
1093                          "column": 25
1094                        },
1095                        "end": {
1096                          "line": 16,
1097                          "column": 51
1098                        }
1099                      }
1100                    },
1101                    "loc": {
1102                      "start": {
1103                        "line": 16,
1104                        "column": 25
1105                      },
1106                      "end": {
1107                        "line": 16,
1108                        "column": 51
1109                      }
1110                    }
1111                  }
1112                ],
1113                "body": {
1114                  "type": "BlockStatement",
1115                  "statements": [
1116                    {
1117                      "type": "VariableDeclaration",
1118                      "declarations": [
1119                        {
1120                          "type": "VariableDeclarator",
1121                          "id": {
1122                            "type": "Identifier",
1123                            "name": "length",
1124                            "typeAnnotation": {
1125                              "type": "ETSTypeReference",
1126                              "part": {
1127                                "type": "ETSTypeReferencePart",
1128                                "name": {
1129                                  "type": "Identifier",
1130                                  "name": "number",
1131                                  "decorators": [],
1132                                  "loc": {
1133                                    "start": {
1134                                      "line": 17,
1135                                      "column": 17
1136                                    },
1137                                    "end": {
1138                                      "line": 17,
1139                                      "column": 23
1140                                    }
1141                                  }
1142                                },
1143                                "loc": {
1144                                  "start": {
1145                                    "line": 17,
1146                                    "column": 17
1147                                  },
1148                                  "end": {
1149                                    "line": 17,
1150                                    "column": 25
1151                                  }
1152                                }
1153                              },
1154                              "loc": {
1155                                "start": {
1156                                  "line": 17,
1157                                  "column": 17
1158                                },
1159                                "end": {
1160                                  "line": 17,
1161                                  "column": 25
1162                                }
1163                              }
1164                            },
1165                            "decorators": [],
1166                            "loc": {
1167                              "start": {
1168                                "line": 17,
1169                                "column": 9
1170                              },
1171                              "end": {
1172                                "line": 17,
1173                                "column": 15
1174                              }
1175                            }
1176                          },
1177                          "init": {
1178                            "type": "NumberLiteral",
1179                            "value": 0,
1180                            "loc": {
1181                              "start": {
1182                                "line": 17,
1183                                "column": 26
1184                              },
1185                              "end": {
1186                                "line": 17,
1187                                "column": 27
1188                              }
1189                            }
1190                          },
1191                          "loc": {
1192                            "start": {
1193                              "line": 17,
1194                              "column": 9
1195                            },
1196                            "end": {
1197                              "line": 17,
1198                              "column": 27
1199                            }
1200                          }
1201                        }
1202                      ],
1203                      "kind": "let",
1204                      "loc": {
1205                        "start": {
1206                          "line": 17,
1207                          "column": 5
1208                        },
1209                        "end": {
1210                          "line": 17,
1211                          "column": 28
1212                        }
1213                      }
1214                    },
1215                    {
1216                      "type": "ExpressionStatement",
1217                      "expression": {
1218                        "type": "CallExpression",
1219                        "callee": {
1220                          "type": "Identifier",
1221                          "name": "exec",
1222                          "decorators": [],
1223                          "loc": {
1224                            "start": {
1225                              "line": 18,
1226                              "column": 5
1227                            },
1228                            "end": {
1229                              "line": 18,
1230                              "column": 9
1231                            }
1232                          }
1233                        },
1234                        "arguments": [
1235                          {
1236                            "type": "Identifier",
1237                            "name": "length",
1238                            "decorators": [],
1239                            "loc": {
1240                              "start": {
1241                                "line": 18,
1242                                "column": 10
1243                              },
1244                              "end": {
1245                                "line": 18,
1246                                "column": 16
1247                              }
1248                            }
1249                          }
1250                        ],
1251                        "optional": false,
1252                        "loc": {
1253                          "start": {
1254                            "line": 18,
1255                            "column": 5
1256                          },
1257                          "end": {
1258                            "line": 18,
1259                            "column": 17
1260                          }
1261                        }
1262                      },
1263                      "loc": {
1264                        "start": {
1265                          "line": 18,
1266                          "column": 5
1267                        },
1268                        "end": {
1269                          "line": 18,
1270                          "column": 18
1271                        }
1272                      }
1273                    }
1274                  ],
1275                  "loc": {
1276                    "start": {
1277                      "line": 16,
1278                      "column": 52
1279                    },
1280                    "end": {
1281                      "line": 19,
1282                      "column": 2
1283                    }
1284                  }
1285                },
1286                "loc": {
1287                  "start": {
1288                    "line": 16,
1289                    "column": 24
1290                  },
1291                  "end": {
1292                    "line": 19,
1293                    "column": 2
1294                  }
1295                }
1296              },
1297              "loc": {
1298                "start": {
1299                  "line": 16,
1300                  "column": 24
1301                },
1302                "end": {
1303                  "line": 19,
1304                  "column": 2
1305                }
1306              }
1307            },
1308            "overloads": [],
1309            "decorators": [],
1310            "loc": {
1311              "start": {
1312                "line": 16,
1313                "column": 1
1314              },
1315              "end": {
1316                "line": 19,
1317                "column": 2
1318              }
1319            }
1320          },
1321          {
1322            "type": "MethodDefinition",
1323            "key": {
1324              "type": "Identifier",
1325              "name": "nativeModule",
1326              "decorators": [],
1327              "loc": {
1328                "start": {
1329                  "line": 25,
1330                  "column": 10
1331                },
1332                "end": {
1333                  "line": 25,
1334                  "column": 22
1335                }
1336              }
1337            },
1338            "kind": "method",
1339            "accessibility": "public",
1340            "static": true,
1341            "optional": false,
1342            "computed": false,
1343            "value": {
1344              "type": "FunctionExpression",
1345              "function": {
1346                "type": "ScriptFunction",
1347                "id": {
1348                  "type": "Identifier",
1349                  "name": "nativeModule",
1350                  "decorators": [],
1351                  "loc": {
1352                    "start": {
1353                      "line": 25,
1354                      "column": 10
1355                    },
1356                    "end": {
1357                      "line": 25,
1358                      "column": 22
1359                    }
1360                  }
1361                },
1362                "generator": false,
1363                "async": false,
1364                "expression": false,
1365                "params": [],
1366                "returnType": {
1367                  "type": "ETSTypeReference",
1368                  "part": {
1369                    "type": "ETSTypeReferencePart",
1370                    "name": {
1371                      "type": "Identifier",
1372                      "name": "NativeModule",
1373                      "decorators": [],
1374                      "loc": {
1375                        "start": {
1376                          "line": 25,
1377                          "column": 26
1378                        },
1379                        "end": {
1380                          "line": 25,
1381                          "column": 38
1382                        }
1383                      }
1384                    },
1385                    "loc": {
1386                      "start": {
1387                        "line": 25,
1388                        "column": 26
1389                      },
1390                      "end": {
1391                        "line": 25,
1392                        "column": 40
1393                      }
1394                    }
1395                  },
1396                  "loc": {
1397                    "start": {
1398                      "line": 25,
1399                      "column": 26
1400                    },
1401                    "end": {
1402                      "line": 25,
1403                      "column": 40
1404                    }
1405                  }
1406                },
1407                "body": {
1408                  "type": "BlockStatement",
1409                  "statements": [
1410                    {
1411                      "type": "ReturnStatement",
1412                      "argument": {
1413                        "type": "ETSNewClassInstanceExpression",
1414                        "typeReference": {
1415                          "type": "ETSTypeReference",
1416                          "part": {
1417                            "type": "ETSTypeReferencePart",
1418                            "name": {
1419                              "type": "Identifier",
1420                              "name": "NativeModule",
1421                              "decorators": [],
1422                              "loc": {
1423                                "start": {
1424                                  "line": 26,
1425                                  "column": 16
1426                                },
1427                                "end": {
1428                                  "line": 26,
1429                                  "column": 28
1430                                }
1431                              }
1432                            },
1433                            "loc": {
1434                              "start": {
1435                                "line": 26,
1436                                "column": 16
1437                              },
1438                              "end": {
1439                                "line": 26,
1440                                "column": 29
1441                              }
1442                            }
1443                          },
1444                          "loc": {
1445                            "start": {
1446                              "line": 26,
1447                              "column": 16
1448                            },
1449                            "end": {
1450                              "line": 26,
1451                              "column": 29
1452                            }
1453                          }
1454                        },
1455                        "arguments": [],
1456                        "loc": {
1457                          "start": {
1458                            "line": 26,
1459                            "column": 12
1460                          },
1461                          "end": {
1462                            "line": 26,
1463                            "column": 31
1464                          }
1465                        }
1466                      },
1467                      "loc": {
1468                        "start": {
1469                          "line": 26,
1470                          "column": 5
1471                        },
1472                        "end": {
1473                          "line": 26,
1474                          "column": 31
1475                        }
1476                      }
1477                    }
1478                  ],
1479                  "loc": {
1480                    "start": {
1481                      "line": 25,
1482                      "column": 39
1483                    },
1484                    "end": {
1485                      "line": 27,
1486                      "column": 2
1487                    }
1488                  }
1489                },
1490                "loc": {
1491                  "start": {
1492                    "line": 25,
1493                    "column": 22
1494                  },
1495                  "end": {
1496                    "line": 27,
1497                    "column": 2
1498                  }
1499                }
1500              },
1501              "loc": {
1502                "start": {
1503                  "line": 25,
1504                  "column": 22
1505                },
1506                "end": {
1507                  "line": 27,
1508                  "column": 2
1509                }
1510              }
1511            },
1512            "overloads": [],
1513            "decorators": [],
1514            "loc": {
1515              "start": {
1516                "line": 25,
1517                "column": 1
1518              },
1519              "end": {
1520                "line": 27,
1521                "column": 2
1522              }
1523            }
1524          }
1525        ],
1526        "loc": {
1527          "start": {
1528            "line": 1,
1529            "column": 1
1530          },
1531          "end": {
1532            "line": 1,
1533            "column": 1
1534          }
1535        }
1536      },
1537      "loc": {
1538        "start": {
1539          "line": 1,
1540          "column": 1
1541        },
1542        "end": {
1543          "line": 1,
1544          "column": 1
1545        }
1546      }
1547    }
1548  ],
1549  "loc": {
1550    "start": {
1551      "line": 1,
1552      "column": 1
1553    },
1554    "end": {
1555      "line": 36,
1556      "column": 1
1557    }
1558  }
1559}
1560