• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1{
2  "type": "Program",
3  "statements": [
4    {
5      "type": "TSInterfaceDeclaration",
6      "body": {
7        "type": "TSInterfaceBody",
8        "body": [
9          {
10            "type": "MethodDefinition",
11            "key": {
12              "type": "Identifier",
13              "name": "pushFront",
14              "decorators": [],
15              "loc": {
16                "start": {
17                  "line": 20,
18                  "column": 5,
19                  "program": "generic_arrayaslist.ets"
20                },
21                "end": {
22                  "line": 20,
23                  "column": 14,
24                  "program": "generic_arrayaslist.ets"
25                }
26              }
27            },
28            "kind": "method",
29            "accessibility": "public",
30            "static": false,
31            "optional": false,
32            "computed": false,
33            "value": {
34              "type": "FunctionExpression",
35              "function": {
36                "type": "ScriptFunction",
37                "id": {
38                  "type": "Identifier",
39                  "name": "pushFront",
40                  "decorators": [],
41                  "loc": {
42                    "start": {
43                      "line": 20,
44                      "column": 5,
45                      "program": "generic_arrayaslist.ets"
46                    },
47                    "end": {
48                      "line": 20,
49                      "column": 14,
50                      "program": "generic_arrayaslist.ets"
51                    }
52                  }
53                },
54                "generator": false,
55                "async": false,
56                "expression": false,
57                "params": [
58                  {
59                    "type": "ETSParameterExpression",
60                    "name": {
61                      "type": "Identifier",
62                      "name": "e",
63                      "typeAnnotation": {
64                        "type": "ETSTypeReference",
65                        "part": {
66                          "type": "ETSTypeReferencePart",
67                          "name": {
68                            "type": "Identifier",
69                            "name": "T",
70                            "decorators": [],
71                            "loc": {
72                              "start": {
73                                "line": 20,
74                                "column": 18,
75                                "program": "generic_arrayaslist.ets"
76                              },
77                              "end": {
78                                "line": 20,
79                                "column": 19,
80                                "program": "generic_arrayaslist.ets"
81                              }
82                            }
83                          },
84                          "loc": {
85                            "start": {
86                              "line": 20,
87                              "column": 18,
88                              "program": "generic_arrayaslist.ets"
89                            },
90                            "end": {
91                              "line": 20,
92                              "column": 20,
93                              "program": "generic_arrayaslist.ets"
94                            }
95                          }
96                        },
97                        "loc": {
98                          "start": {
99                            "line": 20,
100                            "column": 18,
101                            "program": "generic_arrayaslist.ets"
102                          },
103                          "end": {
104                            "line": 20,
105                            "column": 20,
106                            "program": "generic_arrayaslist.ets"
107                          }
108                        }
109                      },
110                      "decorators": [],
111                      "loc": {
112                        "start": {
113                          "line": 20,
114                          "column": 15,
115                          "program": "generic_arrayaslist.ets"
116                        },
117                        "end": {
118                          "line": 20,
119                          "column": 20,
120                          "program": "generic_arrayaslist.ets"
121                        }
122                      }
123                    },
124                    "loc": {
125                      "start": {
126                        "line": 20,
127                        "column": 15,
128                        "program": "generic_arrayaslist.ets"
129                      },
130                      "end": {
131                        "line": 20,
132                        "column": 20,
133                        "program": "generic_arrayaslist.ets"
134                      }
135                    }
136                  }
137                ],
138                "returnType": {
139                  "type": "ETSPrimitiveType",
140                  "loc": {
141                    "start": {
142                      "line": 20,
143                      "column": 22,
144                      "program": "generic_arrayaslist.ets"
145                    },
146                    "end": {
147                      "line": 20,
148                      "column": 26,
149                      "program": "generic_arrayaslist.ets"
150                    }
151                  }
152                },
153                "loc": {
154                  "start": {
155                    "line": 20,
156                    "column": 14,
157                    "program": "generic_arrayaslist.ets"
158                  },
159                  "end": {
160                    "line": 20,
161                    "column": 26,
162                    "program": "generic_arrayaslist.ets"
163                  }
164                }
165              },
166              "loc": {
167                "start": {
168                  "line": 20,
169                  "column": 14,
170                  "program": "generic_arrayaslist.ets"
171                },
172                "end": {
173                  "line": 20,
174                  "column": 26,
175                  "program": "generic_arrayaslist.ets"
176                }
177              }
178            },
179            "overloads": [],
180            "decorators": [],
181            "loc": {
182              "start": {
183                "line": 20,
184                "column": 5,
185                "program": "generic_arrayaslist.ets"
186              },
187              "end": {
188                "line": 20,
189                "column": 27,
190                "program": "generic_arrayaslist.ets"
191              }
192            }
193          },
194          {
195            "type": "MethodDefinition",
196            "key": {
197              "type": "Identifier",
198              "name": "popFront",
199              "decorators": [],
200              "loc": {
201                "start": {
202                  "line": 21,
203                  "column": 5,
204                  "program": "generic_arrayaslist.ets"
205                },
206                "end": {
207                  "line": 21,
208                  "column": 13,
209                  "program": "generic_arrayaslist.ets"
210                }
211              }
212            },
213            "kind": "method",
214            "accessibility": "public",
215            "static": false,
216            "optional": false,
217            "computed": false,
218            "value": {
219              "type": "FunctionExpression",
220              "function": {
221                "type": "ScriptFunction",
222                "id": {
223                  "type": "Identifier",
224                  "name": "popFront",
225                  "decorators": [],
226                  "loc": {
227                    "start": {
228                      "line": 21,
229                      "column": 5,
230                      "program": "generic_arrayaslist.ets"
231                    },
232                    "end": {
233                      "line": 21,
234                      "column": 13,
235                      "program": "generic_arrayaslist.ets"
236                    }
237                  }
238                },
239                "generator": false,
240                "async": false,
241                "expression": false,
242                "params": [],
243                "returnType": {
244                  "type": "ETSTypeReference",
245                  "part": {
246                    "type": "ETSTypeReferencePart",
247                    "name": {
248                      "type": "Identifier",
249                      "name": "T",
250                      "decorators": [],
251                      "loc": {
252                        "start": {
253                          "line": 21,
254                          "column": 17,
255                          "program": "generic_arrayaslist.ets"
256                        },
257                        "end": {
258                          "line": 21,
259                          "column": 18,
260                          "program": "generic_arrayaslist.ets"
261                        }
262                      }
263                    },
264                    "loc": {
265                      "start": {
266                        "line": 21,
267                        "column": 17,
268                        "program": "generic_arrayaslist.ets"
269                      },
270                      "end": {
271                        "line": 21,
272                        "column": 19,
273                        "program": "generic_arrayaslist.ets"
274                      }
275                    }
276                  },
277                  "loc": {
278                    "start": {
279                      "line": 21,
280                      "column": 17,
281                      "program": "generic_arrayaslist.ets"
282                    },
283                    "end": {
284                      "line": 21,
285                      "column": 19,
286                      "program": "generic_arrayaslist.ets"
287                    }
288                  }
289                },
290                "loc": {
291                  "start": {
292                    "line": 21,
293                    "column": 13,
294                    "program": "generic_arrayaslist.ets"
295                  },
296                  "end": {
297                    "line": 21,
298                    "column": 19,
299                    "program": "generic_arrayaslist.ets"
300                  }
301                }
302              },
303              "loc": {
304                "start": {
305                  "line": 21,
306                  "column": 13,
307                  "program": "generic_arrayaslist.ets"
308                },
309                "end": {
310                  "line": 21,
311                  "column": 19,
312                  "program": "generic_arrayaslist.ets"
313                }
314              }
315            },
316            "overloads": [],
317            "decorators": [],
318            "loc": {
319              "start": {
320                "line": 21,
321                "column": 5,
322                "program": "generic_arrayaslist.ets"
323              },
324              "end": {
325                "line": 21,
326                "column": 19,
327                "program": "generic_arrayaslist.ets"
328              }
329            }
330          },
331          {
332            "type": "MethodDefinition",
333            "key": {
334              "type": "Identifier",
335              "name": "pushBack",
336              "decorators": [],
337              "loc": {
338                "start": {
339                  "line": 22,
340                  "column": 5,
341                  "program": "generic_arrayaslist.ets"
342                },
343                "end": {
344                  "line": 22,
345                  "column": 13,
346                  "program": "generic_arrayaslist.ets"
347                }
348              }
349            },
350            "kind": "method",
351            "accessibility": "public",
352            "static": false,
353            "optional": false,
354            "computed": false,
355            "value": {
356              "type": "FunctionExpression",
357              "function": {
358                "type": "ScriptFunction",
359                "id": {
360                  "type": "Identifier",
361                  "name": "pushBack",
362                  "decorators": [],
363                  "loc": {
364                    "start": {
365                      "line": 22,
366                      "column": 5,
367                      "program": "generic_arrayaslist.ets"
368                    },
369                    "end": {
370                      "line": 22,
371                      "column": 13,
372                      "program": "generic_arrayaslist.ets"
373                    }
374                  }
375                },
376                "generator": false,
377                "async": false,
378                "expression": false,
379                "params": [
380                  {
381                    "type": "ETSParameterExpression",
382                    "name": {
383                      "type": "Identifier",
384                      "name": "e",
385                      "typeAnnotation": {
386                        "type": "ETSTypeReference",
387                        "part": {
388                          "type": "ETSTypeReferencePart",
389                          "name": {
390                            "type": "Identifier",
391                            "name": "T",
392                            "decorators": [],
393                            "loc": {
394                              "start": {
395                                "line": 22,
396                                "column": 17,
397                                "program": "generic_arrayaslist.ets"
398                              },
399                              "end": {
400                                "line": 22,
401                                "column": 18,
402                                "program": "generic_arrayaslist.ets"
403                              }
404                            }
405                          },
406                          "loc": {
407                            "start": {
408                              "line": 22,
409                              "column": 17,
410                              "program": "generic_arrayaslist.ets"
411                            },
412                            "end": {
413                              "line": 22,
414                              "column": 19,
415                              "program": "generic_arrayaslist.ets"
416                            }
417                          }
418                        },
419                        "loc": {
420                          "start": {
421                            "line": 22,
422                            "column": 17,
423                            "program": "generic_arrayaslist.ets"
424                          },
425                          "end": {
426                            "line": 22,
427                            "column": 19,
428                            "program": "generic_arrayaslist.ets"
429                          }
430                        }
431                      },
432                      "decorators": [],
433                      "loc": {
434                        "start": {
435                          "line": 22,
436                          "column": 14,
437                          "program": "generic_arrayaslist.ets"
438                        },
439                        "end": {
440                          "line": 22,
441                          "column": 19,
442                          "program": "generic_arrayaslist.ets"
443                        }
444                      }
445                    },
446                    "loc": {
447                      "start": {
448                        "line": 22,
449                        "column": 14,
450                        "program": "generic_arrayaslist.ets"
451                      },
452                      "end": {
453                        "line": 22,
454                        "column": 19,
455                        "program": "generic_arrayaslist.ets"
456                      }
457                    }
458                  }
459                ],
460                "returnType": {
461                  "type": "ETSPrimitiveType",
462                  "loc": {
463                    "start": {
464                      "line": 22,
465                      "column": 21,
466                      "program": "generic_arrayaslist.ets"
467                    },
468                    "end": {
469                      "line": 22,
470                      "column": 25,
471                      "program": "generic_arrayaslist.ets"
472                    }
473                  }
474                },
475                "loc": {
476                  "start": {
477                    "line": 22,
478                    "column": 13,
479                    "program": "generic_arrayaslist.ets"
480                  },
481                  "end": {
482                    "line": 22,
483                    "column": 25,
484                    "program": "generic_arrayaslist.ets"
485                  }
486                }
487              },
488              "loc": {
489                "start": {
490                  "line": 22,
491                  "column": 13,
492                  "program": "generic_arrayaslist.ets"
493                },
494                "end": {
495                  "line": 22,
496                  "column": 25,
497                  "program": "generic_arrayaslist.ets"
498                }
499              }
500            },
501            "overloads": [],
502            "decorators": [],
503            "loc": {
504              "start": {
505                "line": 22,
506                "column": 5,
507                "program": "generic_arrayaslist.ets"
508              },
509              "end": {
510                "line": 22,
511                "column": 26,
512                "program": "generic_arrayaslist.ets"
513              }
514            }
515          },
516          {
517            "type": "MethodDefinition",
518            "key": {
519              "type": "Identifier",
520              "name": "popBack",
521              "decorators": [],
522              "loc": {
523                "start": {
524                  "line": 23,
525                  "column": 5,
526                  "program": "generic_arrayaslist.ets"
527                },
528                "end": {
529                  "line": 23,
530                  "column": 12,
531                  "program": "generic_arrayaslist.ets"
532                }
533              }
534            },
535            "kind": "method",
536            "accessibility": "public",
537            "static": false,
538            "optional": false,
539            "computed": false,
540            "value": {
541              "type": "FunctionExpression",
542              "function": {
543                "type": "ScriptFunction",
544                "id": {
545                  "type": "Identifier",
546                  "name": "popBack",
547                  "decorators": [],
548                  "loc": {
549                    "start": {
550                      "line": 23,
551                      "column": 5,
552                      "program": "generic_arrayaslist.ets"
553                    },
554                    "end": {
555                      "line": 23,
556                      "column": 12,
557                      "program": "generic_arrayaslist.ets"
558                    }
559                  }
560                },
561                "generator": false,
562                "async": false,
563                "expression": false,
564                "params": [],
565                "returnType": {
566                  "type": "ETSTypeReference",
567                  "part": {
568                    "type": "ETSTypeReferencePart",
569                    "name": {
570                      "type": "Identifier",
571                      "name": "T",
572                      "decorators": [],
573                      "loc": {
574                        "start": {
575                          "line": 23,
576                          "column": 16,
577                          "program": "generic_arrayaslist.ets"
578                        },
579                        "end": {
580                          "line": 23,
581                          "column": 17,
582                          "program": "generic_arrayaslist.ets"
583                        }
584                      }
585                    },
586                    "loc": {
587                      "start": {
588                        "line": 23,
589                        "column": 16,
590                        "program": "generic_arrayaslist.ets"
591                      },
592                      "end": {
593                        "line": 23,
594                        "column": 18,
595                        "program": "generic_arrayaslist.ets"
596                      }
597                    }
598                  },
599                  "loc": {
600                    "start": {
601                      "line": 23,
602                      "column": 16,
603                      "program": "generic_arrayaslist.ets"
604                    },
605                    "end": {
606                      "line": 23,
607                      "column": 18,
608                      "program": "generic_arrayaslist.ets"
609                    }
610                  }
611                },
612                "loc": {
613                  "start": {
614                    "line": 23,
615                    "column": 12,
616                    "program": "generic_arrayaslist.ets"
617                  },
618                  "end": {
619                    "line": 23,
620                    "column": 18,
621                    "program": "generic_arrayaslist.ets"
622                  }
623                }
624              },
625              "loc": {
626                "start": {
627                  "line": 23,
628                  "column": 12,
629                  "program": "generic_arrayaslist.ets"
630                },
631                "end": {
632                  "line": 23,
633                  "column": 18,
634                  "program": "generic_arrayaslist.ets"
635                }
636              }
637            },
638            "overloads": [],
639            "decorators": [],
640            "loc": {
641              "start": {
642                "line": 23,
643                "column": 5,
644                "program": "generic_arrayaslist.ets"
645              },
646              "end": {
647                "line": 23,
648                "column": 18,
649                "program": "generic_arrayaslist.ets"
650              }
651            }
652          },
653          {
654            "type": "MethodDefinition",
655            "key": {
656              "type": "Identifier",
657              "name": "size",
658              "decorators": [],
659              "loc": {
660                "start": {
661                  "line": 25,
662                  "column": 5,
663                  "program": "generic_arrayaslist.ets"
664                },
665                "end": {
666                  "line": 25,
667                  "column": 9,
668                  "program": "generic_arrayaslist.ets"
669                }
670              }
671            },
672            "kind": "method",
673            "accessibility": "public",
674            "static": false,
675            "optional": false,
676            "computed": false,
677            "value": {
678              "type": "FunctionExpression",
679              "function": {
680                "type": "ScriptFunction",
681                "id": {
682                  "type": "Identifier",
683                  "name": "size",
684                  "decorators": [],
685                  "loc": {
686                    "start": {
687                      "line": 25,
688                      "column": 5,
689                      "program": "generic_arrayaslist.ets"
690                    },
691                    "end": {
692                      "line": 25,
693                      "column": 9,
694                      "program": "generic_arrayaslist.ets"
695                    }
696                  }
697                },
698                "generator": false,
699                "async": false,
700                "expression": false,
701                "params": [],
702                "returnType": {
703                  "type": "ETSPrimitiveType",
704                  "loc": {
705                    "start": {
706                      "line": 25,
707                      "column": 13,
708                      "program": "generic_arrayaslist.ets"
709                    },
710                    "end": {
711                      "line": 25,
712                      "column": 16,
713                      "program": "generic_arrayaslist.ets"
714                    }
715                  }
716                },
717                "loc": {
718                  "start": {
719                    "line": 25,
720                    "column": 9,
721                    "program": "generic_arrayaslist.ets"
722                  },
723                  "end": {
724                    "line": 25,
725                    "column": 16,
726                    "program": "generic_arrayaslist.ets"
727                  }
728                }
729              },
730              "loc": {
731                "start": {
732                  "line": 25,
733                  "column": 9,
734                  "program": "generic_arrayaslist.ets"
735                },
736                "end": {
737                  "line": 25,
738                  "column": 16,
739                  "program": "generic_arrayaslist.ets"
740                }
741              }
742            },
743            "overloads": [],
744            "decorators": [],
745            "loc": {
746              "start": {
747                "line": 25,
748                "column": 5,
749                "program": "generic_arrayaslist.ets"
750              },
751              "end": {
752                "line": 25,
753                "column": 17,
754                "program": "generic_arrayaslist.ets"
755              }
756            }
757          },
758          {
759            "type": "MethodDefinition",
760            "key": {
761              "type": "Identifier",
762              "name": "at",
763              "decorators": [],
764              "loc": {
765                "start": {
766                  "line": 26,
767                  "column": 5,
768                  "program": "generic_arrayaslist.ets"
769                },
770                "end": {
771                  "line": 26,
772                  "column": 7,
773                  "program": "generic_arrayaslist.ets"
774                }
775              }
776            },
777            "kind": "method",
778            "accessibility": "public",
779            "static": false,
780            "optional": false,
781            "computed": false,
782            "value": {
783              "type": "FunctionExpression",
784              "function": {
785                "type": "ScriptFunction",
786                "id": {
787                  "type": "Identifier",
788                  "name": "at",
789                  "decorators": [],
790                  "loc": {
791                    "start": {
792                      "line": 26,
793                      "column": 5,
794                      "program": "generic_arrayaslist.ets"
795                    },
796                    "end": {
797                      "line": 26,
798                      "column": 7,
799                      "program": "generic_arrayaslist.ets"
800                    }
801                  }
802                },
803                "generator": false,
804                "async": false,
805                "expression": false,
806                "params": [
807                  {
808                    "type": "ETSParameterExpression",
809                    "name": {
810                      "type": "Identifier",
811                      "name": "index",
812                      "typeAnnotation": {
813                        "type": "ETSPrimitiveType",
814                        "loc": {
815                          "start": {
816                            "line": 26,
817                            "column": 15,
818                            "program": "generic_arrayaslist.ets"
819                          },
820                          "end": {
821                            "line": 26,
822                            "column": 18,
823                            "program": "generic_arrayaslist.ets"
824                          }
825                        }
826                      },
827                      "decorators": [],
828                      "loc": {
829                        "start": {
830                          "line": 26,
831                          "column": 8,
832                          "program": "generic_arrayaslist.ets"
833                        },
834                        "end": {
835                          "line": 26,
836                          "column": 18,
837                          "program": "generic_arrayaslist.ets"
838                        }
839                      }
840                    },
841                    "loc": {
842                      "start": {
843                        "line": 26,
844                        "column": 8,
845                        "program": "generic_arrayaslist.ets"
846                      },
847                      "end": {
848                        "line": 26,
849                        "column": 18,
850                        "program": "generic_arrayaslist.ets"
851                      }
852                    }
853                  }
854                ],
855                "returnType": {
856                  "type": "ETSTypeReference",
857                  "part": {
858                    "type": "ETSTypeReferencePart",
859                    "name": {
860                      "type": "Identifier",
861                      "name": "T",
862                      "decorators": [],
863                      "loc": {
864                        "start": {
865                          "line": 26,
866                          "column": 21,
867                          "program": "generic_arrayaslist.ets"
868                        },
869                        "end": {
870                          "line": 26,
871                          "column": 22,
872                          "program": "generic_arrayaslist.ets"
873                        }
874                      }
875                    },
876                    "loc": {
877                      "start": {
878                        "line": 26,
879                        "column": 21,
880                        "program": "generic_arrayaslist.ets"
881                      },
882                      "end": {
883                        "line": 26,
884                        "column": 23,
885                        "program": "generic_arrayaslist.ets"
886                      }
887                    }
888                  },
889                  "loc": {
890                    "start": {
891                      "line": 26,
892                      "column": 21,
893                      "program": "generic_arrayaslist.ets"
894                    },
895                    "end": {
896                      "line": 26,
897                      "column": 23,
898                      "program": "generic_arrayaslist.ets"
899                    }
900                  }
901                },
902                "loc": {
903                  "start": {
904                    "line": 26,
905                    "column": 7,
906                    "program": "generic_arrayaslist.ets"
907                  },
908                  "end": {
909                    "line": 26,
910                    "column": 23,
911                    "program": "generic_arrayaslist.ets"
912                  }
913                }
914              },
915              "loc": {
916                "start": {
917                  "line": 26,
918                  "column": 7,
919                  "program": "generic_arrayaslist.ets"
920                },
921                "end": {
922                  "line": 26,
923                  "column": 23,
924                  "program": "generic_arrayaslist.ets"
925                }
926              }
927            },
928            "overloads": [],
929            "decorators": [],
930            "loc": {
931              "start": {
932                "line": 26,
933                "column": 5,
934                "program": "generic_arrayaslist.ets"
935              },
936              "end": {
937                "line": 26,
938                "column": 23,
939                "program": "generic_arrayaslist.ets"
940              }
941            }
942          },
943          {
944            "type": "MethodDefinition",
945            "key": {
946              "type": "Identifier",
947              "name": "has",
948              "decorators": [],
949              "loc": {
950                "start": {
951                  "line": 27,
952                  "column": 5,
953                  "program": "generic_arrayaslist.ets"
954                },
955                "end": {
956                  "line": 27,
957                  "column": 8,
958                  "program": "generic_arrayaslist.ets"
959                }
960              }
961            },
962            "kind": "method",
963            "accessibility": "public",
964            "static": false,
965            "optional": false,
966            "computed": false,
967            "value": {
968              "type": "FunctionExpression",
969              "function": {
970                "type": "ScriptFunction",
971                "id": {
972                  "type": "Identifier",
973                  "name": "has",
974                  "decorators": [],
975                  "loc": {
976                    "start": {
977                      "line": 27,
978                      "column": 5,
979                      "program": "generic_arrayaslist.ets"
980                    },
981                    "end": {
982                      "line": 27,
983                      "column": 8,
984                      "program": "generic_arrayaslist.ets"
985                    }
986                  }
987                },
988                "generator": false,
989                "async": false,
990                "expression": false,
991                "params": [
992                  {
993                    "type": "ETSParameterExpression",
994                    "name": {
995                      "type": "Identifier",
996                      "name": "e",
997                      "typeAnnotation": {
998                        "type": "ETSTypeReference",
999                        "part": {
1000                          "type": "ETSTypeReferencePart",
1001                          "name": {
1002                            "type": "Identifier",
1003                            "name": "T",
1004                            "decorators": [],
1005                            "loc": {
1006                              "start": {
1007                                "line": 27,
1008                                "column": 12,
1009                                "program": "generic_arrayaslist.ets"
1010                              },
1011                              "end": {
1012                                "line": 27,
1013                                "column": 13,
1014                                "program": "generic_arrayaslist.ets"
1015                              }
1016                            }
1017                          },
1018                          "loc": {
1019                            "start": {
1020                              "line": 27,
1021                              "column": 12,
1022                              "program": "generic_arrayaslist.ets"
1023                            },
1024                            "end": {
1025                              "line": 27,
1026                              "column": 14,
1027                              "program": "generic_arrayaslist.ets"
1028                            }
1029                          }
1030                        },
1031                        "loc": {
1032                          "start": {
1033                            "line": 27,
1034                            "column": 12,
1035                            "program": "generic_arrayaslist.ets"
1036                          },
1037                          "end": {
1038                            "line": 27,
1039                            "column": 14,
1040                            "program": "generic_arrayaslist.ets"
1041                          }
1042                        }
1043                      },
1044                      "decorators": [],
1045                      "loc": {
1046                        "start": {
1047                          "line": 27,
1048                          "column": 9,
1049                          "program": "generic_arrayaslist.ets"
1050                        },
1051                        "end": {
1052                          "line": 27,
1053                          "column": 14,
1054                          "program": "generic_arrayaslist.ets"
1055                        }
1056                      }
1057                    },
1058                    "loc": {
1059                      "start": {
1060                        "line": 27,
1061                        "column": 9,
1062                        "program": "generic_arrayaslist.ets"
1063                      },
1064                      "end": {
1065                        "line": 27,
1066                        "column": 14,
1067                        "program": "generic_arrayaslist.ets"
1068                      }
1069                    }
1070                  }
1071                ],
1072                "returnType": {
1073                  "type": "ETSPrimitiveType",
1074                  "loc": {
1075                    "start": {
1076                      "line": 27,
1077                      "column": 16,
1078                      "program": "generic_arrayaslist.ets"
1079                    },
1080                    "end": {
1081                      "line": 27,
1082                      "column": 23,
1083                      "program": "generic_arrayaslist.ets"
1084                    }
1085                  }
1086                },
1087                "loc": {
1088                  "start": {
1089                    "line": 27,
1090                    "column": 8,
1091                    "program": "generic_arrayaslist.ets"
1092                  },
1093                  "end": {
1094                    "line": 27,
1095                    "column": 23,
1096                    "program": "generic_arrayaslist.ets"
1097                  }
1098                }
1099              },
1100              "loc": {
1101                "start": {
1102                  "line": 27,
1103                  "column": 8,
1104                  "program": "generic_arrayaslist.ets"
1105                },
1106                "end": {
1107                  "line": 27,
1108                  "column": 23,
1109                  "program": "generic_arrayaslist.ets"
1110                }
1111              }
1112            },
1113            "overloads": [],
1114            "decorators": [],
1115            "loc": {
1116              "start": {
1117                "line": 27,
1118                "column": 5,
1119                "program": "generic_arrayaslist.ets"
1120              },
1121              "end": {
1122                "line": 27,
1123                "column": 24,
1124                "program": "generic_arrayaslist.ets"
1125              }
1126            }
1127          },
1128          {
1129            "type": "MethodDefinition",
1130            "key": {
1131              "type": "Identifier",
1132              "name": "forEach",
1133              "decorators": [],
1134              "loc": {
1135                "start": {
1136                  "line": 29,
1137                  "column": 5,
1138                  "program": "generic_arrayaslist.ets"
1139                },
1140                "end": {
1141                  "line": 29,
1142                  "column": 12,
1143                  "program": "generic_arrayaslist.ets"
1144                }
1145              }
1146            },
1147            "kind": "method",
1148            "accessibility": "public",
1149            "static": false,
1150            "optional": false,
1151            "computed": false,
1152            "value": {
1153              "type": "FunctionExpression",
1154              "function": {
1155                "type": "ScriptFunction",
1156                "id": {
1157                  "type": "Identifier",
1158                  "name": "forEach",
1159                  "decorators": [],
1160                  "loc": {
1161                    "start": {
1162                      "line": 29,
1163                      "column": 5,
1164                      "program": "generic_arrayaslist.ets"
1165                    },
1166                    "end": {
1167                      "line": 29,
1168                      "column": 12,
1169                      "program": "generic_arrayaslist.ets"
1170                    }
1171                  }
1172                },
1173                "generator": false,
1174                "async": false,
1175                "expression": false,
1176                "params": [
1177                  {
1178                    "type": "ETSParameterExpression",
1179                    "name": {
1180                      "type": "Identifier",
1181                      "name": "fn",
1182                      "typeAnnotation": {
1183                        "type": "ETSFunctionType",
1184                        "params": [
1185                          {
1186                            "type": "ETSParameterExpression",
1187                            "name": {
1188                              "type": "Identifier",
1189                              "name": "e",
1190                              "typeAnnotation": {
1191                                "type": "ETSTypeReference",
1192                                "part": {
1193                                  "type": "ETSTypeReferencePart",
1194                                  "name": {
1195                                    "type": "Identifier",
1196                                    "name": "T",
1197                                    "decorators": [],
1198                                    "loc": {
1199                                      "start": {
1200                                        "line": 29,
1201                                        "column": 21,
1202                                        "program": "generic_arrayaslist.ets"
1203                                      },
1204                                      "end": {
1205                                        "line": 29,
1206                                        "column": 22,
1207                                        "program": "generic_arrayaslist.ets"
1208                                      }
1209                                    }
1210                                  },
1211                                  "loc": {
1212                                    "start": {
1213                                      "line": 29,
1214                                      "column": 21,
1215                                      "program": "generic_arrayaslist.ets"
1216                                    },
1217                                    "end": {
1218                                      "line": 29,
1219                                      "column": 23,
1220                                      "program": "generic_arrayaslist.ets"
1221                                    }
1222                                  }
1223                                },
1224                                "loc": {
1225                                  "start": {
1226                                    "line": 29,
1227                                    "column": 21,
1228                                    "program": "generic_arrayaslist.ets"
1229                                  },
1230                                  "end": {
1231                                    "line": 29,
1232                                    "column": 23,
1233                                    "program": "generic_arrayaslist.ets"
1234                                  }
1235                                }
1236                              },
1237                              "decorators": [],
1238                              "loc": {
1239                                "start": {
1240                                  "line": 29,
1241                                  "column": 18,
1242                                  "program": "generic_arrayaslist.ets"
1243                                },
1244                                "end": {
1245                                  "line": 29,
1246                                  "column": 23,
1247                                  "program": "generic_arrayaslist.ets"
1248                                }
1249                              }
1250                            },
1251                            "loc": {
1252                              "start": {
1253                                "line": 29,
1254                                "column": 18,
1255                                "program": "generic_arrayaslist.ets"
1256                              },
1257                              "end": {
1258                                "line": 29,
1259                                "column": 23,
1260                                "program": "generic_arrayaslist.ets"
1261                              }
1262                            }
1263                          }
1264                        ],
1265                        "returnType": {
1266                          "type": "ETSTypeReference",
1267                          "part": {
1268                            "type": "ETSTypeReferencePart",
1269                            "name": {
1270                              "type": "Identifier",
1271                              "name": "T",
1272                              "decorators": [],
1273                              "loc": {
1274                                "start": {
1275                                  "line": 29,
1276                                  "column": 27,
1277                                  "program": "generic_arrayaslist.ets"
1278                                },
1279                                "end": {
1280                                  "line": 29,
1281                                  "column": 28,
1282                                  "program": "generic_arrayaslist.ets"
1283                                }
1284                              }
1285                            },
1286                            "loc": {
1287                              "start": {
1288                                "line": 29,
1289                                "column": 27,
1290                                "program": "generic_arrayaslist.ets"
1291                              },
1292                              "end": {
1293                                "line": 29,
1294                                "column": 29,
1295                                "program": "generic_arrayaslist.ets"
1296                              }
1297                            }
1298                          },
1299                          "loc": {
1300                            "start": {
1301                              "line": 29,
1302                              "column": 27,
1303                              "program": "generic_arrayaslist.ets"
1304                            },
1305                            "end": {
1306                              "line": 29,
1307                              "column": 29,
1308                              "program": "generic_arrayaslist.ets"
1309                            }
1310                          }
1311                        },
1312                        "loc": {
1313                          "start": {
1314                            "line": 29,
1315                            "column": 17,
1316                            "program": "generic_arrayaslist.ets"
1317                          },
1318                          "end": {
1319                            "line": 29,
1320                            "column": 29,
1321                            "program": "generic_arrayaslist.ets"
1322                          }
1323                        }
1324                      },
1325                      "decorators": [],
1326                      "loc": {
1327                        "start": {
1328                          "line": 29,
1329                          "column": 13,
1330                          "program": "generic_arrayaslist.ets"
1331                        },
1332                        "end": {
1333                          "line": 29,
1334                          "column": 29,
1335                          "program": "generic_arrayaslist.ets"
1336                        }
1337                      }
1338                    },
1339                    "loc": {
1340                      "start": {
1341                        "line": 29,
1342                        "column": 13,
1343                        "program": "generic_arrayaslist.ets"
1344                      },
1345                      "end": {
1346                        "line": 29,
1347                        "column": 29,
1348                        "program": "generic_arrayaslist.ets"
1349                      }
1350                    }
1351                  }
1352                ],
1353                "returnType": {
1354                  "type": "ETSUnionType",
1355                  "types": [
1356                    {
1357                      "type": "ETSTypeReference",
1358                      "part": {
1359                        "type": "ETSTypeReferencePart",
1360                        "name": {
1361                          "type": "Identifier",
1362                          "name": "Listt",
1363                          "decorators": [],
1364                          "loc": {
1365                            "start": {
1366                              "line": 29,
1367                              "column": 31,
1368                              "program": "generic_arrayaslist.ets"
1369                            },
1370                            "end": {
1371                              "line": 29,
1372                              "column": 36,
1373                              "program": "generic_arrayaslist.ets"
1374                            }
1375                          }
1376                        },
1377                        "typeParams": {
1378                          "type": "TSTypeParameterInstantiation",
1379                          "params": [
1380                            {
1381                              "type": "ETSTypeReference",
1382                              "part": {
1383                                "type": "ETSTypeReferencePart",
1384                                "name": {
1385                                  "type": "Identifier",
1386                                  "name": "T",
1387                                  "decorators": [],
1388                                  "loc": {
1389                                    "start": {
1390                                      "line": 29,
1391                                      "column": 37,
1392                                      "program": "generic_arrayaslist.ets"
1393                                    },
1394                                    "end": {
1395                                      "line": 29,
1396                                      "column": 38,
1397                                      "program": "generic_arrayaslist.ets"
1398                                    }
1399                                  }
1400                                },
1401                                "loc": {
1402                                  "start": {
1403                                    "line": 29,
1404                                    "column": 37,
1405                                    "program": "generic_arrayaslist.ets"
1406                                  },
1407                                  "end": {
1408                                    "line": 29,
1409                                    "column": 39,
1410                                    "program": "generic_arrayaslist.ets"
1411                                  }
1412                                }
1413                              },
1414                              "loc": {
1415                                "start": {
1416                                  "line": 29,
1417                                  "column": 37,
1418                                  "program": "generic_arrayaslist.ets"
1419                                },
1420                                "end": {
1421                                  "line": 29,
1422                                  "column": 39,
1423                                  "program": "generic_arrayaslist.ets"
1424                                }
1425                              }
1426                            }
1427                          ],
1428                          "loc": {
1429                            "start": {
1430                              "line": 29,
1431                              "column": 36,
1432                              "program": "generic_arrayaslist.ets"
1433                            },
1434                            "end": {
1435                              "line": 29,
1436                              "column": 39,
1437                              "program": "generic_arrayaslist.ets"
1438                            }
1439                          }
1440                        },
1441                        "loc": {
1442                          "start": {
1443                            "line": 29,
1444                            "column": 31,
1445                            "program": "generic_arrayaslist.ets"
1446                          },
1447                          "end": {
1448                            "line": 29,
1449                            "column": 41,
1450                            "program": "generic_arrayaslist.ets"
1451                          }
1452                        }
1453                      },
1454                      "loc": {
1455                        "start": {
1456                          "line": 29,
1457                          "column": 31,
1458                          "program": "generic_arrayaslist.ets"
1459                        },
1460                        "end": {
1461                          "line": 29,
1462                          "column": 41,
1463                          "program": "generic_arrayaslist.ets"
1464                        }
1465                      }
1466                    },
1467                    {
1468                      "type": "ETSNullType",
1469                      "loc": {
1470                        "start": {
1471                          "line": 29,
1472                          "column": 42,
1473                          "program": "generic_arrayaslist.ets"
1474                        },
1475                        "end": {
1476                          "line": 29,
1477                          "column": 46,
1478                          "program": "generic_arrayaslist.ets"
1479                        }
1480                      }
1481                    }
1482                  ],
1483                  "loc": {
1484                    "start": {
1485                      "line": 29,
1486                      "column": 31,
1487                      "program": "generic_arrayaslist.ets"
1488                    },
1489                    "end": {
1490                      "line": 29,
1491                      "column": 46,
1492                      "program": "generic_arrayaslist.ets"
1493                    }
1494                  }
1495                },
1496                "loc": {
1497                  "start": {
1498                    "line": 29,
1499                    "column": 12,
1500                    "program": "generic_arrayaslist.ets"
1501                  },
1502                  "end": {
1503                    "line": 29,
1504                    "column": 46,
1505                    "program": "generic_arrayaslist.ets"
1506                  }
1507                }
1508              },
1509              "loc": {
1510                "start": {
1511                  "line": 29,
1512                  "column": 12,
1513                  "program": "generic_arrayaslist.ets"
1514                },
1515                "end": {
1516                  "line": 29,
1517                  "column": 46,
1518                  "program": "generic_arrayaslist.ets"
1519                }
1520              }
1521            },
1522            "overloads": [],
1523            "decorators": [],
1524            "loc": {
1525              "start": {
1526                "line": 29,
1527                "column": 5,
1528                "program": "generic_arrayaslist.ets"
1529              },
1530              "end": {
1531                "line": 29,
1532                "column": 47,
1533                "program": "generic_arrayaslist.ets"
1534              }
1535            }
1536          },
1537          {
1538            "type": "MethodDefinition",
1539            "key": {
1540              "type": "Identifier",
1541              "name": "map",
1542              "decorators": [],
1543              "loc": {
1544                "start": {
1545                  "line": 30,
1546                  "column": 5,
1547                  "program": "generic_arrayaslist.ets"
1548                },
1549                "end": {
1550                  "line": 30,
1551                  "column": 8,
1552                  "program": "generic_arrayaslist.ets"
1553                }
1554              }
1555            },
1556            "kind": "method",
1557            "accessibility": "public",
1558            "static": false,
1559            "optional": false,
1560            "computed": false,
1561            "value": {
1562              "type": "FunctionExpression",
1563              "function": {
1564                "type": "ScriptFunction",
1565                "id": {
1566                  "type": "Identifier",
1567                  "name": "map",
1568                  "decorators": [],
1569                  "loc": {
1570                    "start": {
1571                      "line": 30,
1572                      "column": 5,
1573                      "program": "generic_arrayaslist.ets"
1574                    },
1575                    "end": {
1576                      "line": 30,
1577                      "column": 8,
1578                      "program": "generic_arrayaslist.ets"
1579                    }
1580                  }
1581                },
1582                "generator": false,
1583                "async": false,
1584                "expression": false,
1585                "params": [
1586                  {
1587                    "type": "ETSParameterExpression",
1588                    "name": {
1589                      "type": "Identifier",
1590                      "name": "fn",
1591                      "typeAnnotation": {
1592                        "type": "ETSFunctionType",
1593                        "params": [
1594                          {
1595                            "type": "ETSParameterExpression",
1596                            "name": {
1597                              "type": "Identifier",
1598                              "name": "e",
1599                              "typeAnnotation": {
1600                                "type": "ETSTypeReference",
1601                                "part": {
1602                                  "type": "ETSTypeReferencePart",
1603                                  "name": {
1604                                    "type": "Identifier",
1605                                    "name": "T",
1606                                    "decorators": [],
1607                                    "loc": {
1608                                      "start": {
1609                                        "line": 30,
1610                                        "column": 20,
1611                                        "program": "generic_arrayaslist.ets"
1612                                      },
1613                                      "end": {
1614                                        "line": 30,
1615                                        "column": 21,
1616                                        "program": "generic_arrayaslist.ets"
1617                                      }
1618                                    }
1619                                  },
1620                                  "loc": {
1621                                    "start": {
1622                                      "line": 30,
1623                                      "column": 20,
1624                                      "program": "generic_arrayaslist.ets"
1625                                    },
1626                                    "end": {
1627                                      "line": 30,
1628                                      "column": 22,
1629                                      "program": "generic_arrayaslist.ets"
1630                                    }
1631                                  }
1632                                },
1633                                "loc": {
1634                                  "start": {
1635                                    "line": 30,
1636                                    "column": 20,
1637                                    "program": "generic_arrayaslist.ets"
1638                                  },
1639                                  "end": {
1640                                    "line": 30,
1641                                    "column": 22,
1642                                    "program": "generic_arrayaslist.ets"
1643                                  }
1644                                }
1645                              },
1646                              "decorators": [],
1647                              "loc": {
1648                                "start": {
1649                                  "line": 30,
1650                                  "column": 17,
1651                                  "program": "generic_arrayaslist.ets"
1652                                },
1653                                "end": {
1654                                  "line": 30,
1655                                  "column": 22,
1656                                  "program": "generic_arrayaslist.ets"
1657                                }
1658                              }
1659                            },
1660                            "loc": {
1661                              "start": {
1662                                "line": 30,
1663                                "column": 17,
1664                                "program": "generic_arrayaslist.ets"
1665                              },
1666                              "end": {
1667                                "line": 30,
1668                                "column": 22,
1669                                "program": "generic_arrayaslist.ets"
1670                              }
1671                            }
1672                          }
1673                        ],
1674                        "returnType": {
1675                          "type": "ETSTypeReference",
1676                          "part": {
1677                            "type": "ETSTypeReferencePart",
1678                            "name": {
1679                              "type": "Identifier",
1680                              "name": "U",
1681                              "decorators": [],
1682                              "loc": {
1683                                "start": {
1684                                  "line": 30,
1685                                  "column": 26,
1686                                  "program": "generic_arrayaslist.ets"
1687                                },
1688                                "end": {
1689                                  "line": 30,
1690                                  "column": 27,
1691                                  "program": "generic_arrayaslist.ets"
1692                                }
1693                              }
1694                            },
1695                            "loc": {
1696                              "start": {
1697                                "line": 30,
1698                                "column": 26,
1699                                "program": "generic_arrayaslist.ets"
1700                              },
1701                              "end": {
1702                                "line": 30,
1703                                "column": 28,
1704                                "program": "generic_arrayaslist.ets"
1705                              }
1706                            }
1707                          },
1708                          "loc": {
1709                            "start": {
1710                              "line": 30,
1711                              "column": 26,
1712                              "program": "generic_arrayaslist.ets"
1713                            },
1714                            "end": {
1715                              "line": 30,
1716                              "column": 28,
1717                              "program": "generic_arrayaslist.ets"
1718                            }
1719                          }
1720                        },
1721                        "loc": {
1722                          "start": {
1723                            "line": 30,
1724                            "column": 16,
1725                            "program": "generic_arrayaslist.ets"
1726                          },
1727                          "end": {
1728                            "line": 30,
1729                            "column": 28,
1730                            "program": "generic_arrayaslist.ets"
1731                          }
1732                        }
1733                      },
1734                      "decorators": [],
1735                      "loc": {
1736                        "start": {
1737                          "line": 30,
1738                          "column": 12,
1739                          "program": "generic_arrayaslist.ets"
1740                        },
1741                        "end": {
1742                          "line": 30,
1743                          "column": 28,
1744                          "program": "generic_arrayaslist.ets"
1745                        }
1746                      }
1747                    },
1748                    "loc": {
1749                      "start": {
1750                        "line": 30,
1751                        "column": 12,
1752                        "program": "generic_arrayaslist.ets"
1753                      },
1754                      "end": {
1755                        "line": 30,
1756                        "column": 28,
1757                        "program": "generic_arrayaslist.ets"
1758                      }
1759                    }
1760                  }
1761                ],
1762                "returnType": {
1763                  "type": "ETSTypeReference",
1764                  "part": {
1765                    "type": "ETSTypeReferencePart",
1766                    "name": {
1767                      "type": "Identifier",
1768                      "name": "Listt",
1769                      "decorators": [],
1770                      "loc": {
1771                        "start": {
1772                          "line": 30,
1773                          "column": 30,
1774                          "program": "generic_arrayaslist.ets"
1775                        },
1776                        "end": {
1777                          "line": 30,
1778                          "column": 35,
1779                          "program": "generic_arrayaslist.ets"
1780                        }
1781                      }
1782                    },
1783                    "typeParams": {
1784                      "type": "TSTypeParameterInstantiation",
1785                      "params": [
1786                        {
1787                          "type": "ETSTypeReference",
1788                          "part": {
1789                            "type": "ETSTypeReferencePart",
1790                            "name": {
1791                              "type": "Identifier",
1792                              "name": "U",
1793                              "decorators": [],
1794                              "loc": {
1795                                "start": {
1796                                  "line": 30,
1797                                  "column": 36,
1798                                  "program": "generic_arrayaslist.ets"
1799                                },
1800                                "end": {
1801                                  "line": 30,
1802                                  "column": 37,
1803                                  "program": "generic_arrayaslist.ets"
1804                                }
1805                              }
1806                            },
1807                            "loc": {
1808                              "start": {
1809                                "line": 30,
1810                                "column": 36,
1811                                "program": "generic_arrayaslist.ets"
1812                              },
1813                              "end": {
1814                                "line": 30,
1815                                "column": 38,
1816                                "program": "generic_arrayaslist.ets"
1817                              }
1818                            }
1819                          },
1820                          "loc": {
1821                            "start": {
1822                              "line": 30,
1823                              "column": 36,
1824                              "program": "generic_arrayaslist.ets"
1825                            },
1826                            "end": {
1827                              "line": 30,
1828                              "column": 38,
1829                              "program": "generic_arrayaslist.ets"
1830                            }
1831                          }
1832                        }
1833                      ],
1834                      "loc": {
1835                        "start": {
1836                          "line": 30,
1837                          "column": 35,
1838                          "program": "generic_arrayaslist.ets"
1839                        },
1840                        "end": {
1841                          "line": 30,
1842                          "column": 38,
1843                          "program": "generic_arrayaslist.ets"
1844                        }
1845                      }
1846                    },
1847                    "loc": {
1848                      "start": {
1849                        "line": 30,
1850                        "column": 30,
1851                        "program": "generic_arrayaslist.ets"
1852                      },
1853                      "end": {
1854                        "line": 30,
1855                        "column": 39,
1856                        "program": "generic_arrayaslist.ets"
1857                      }
1858                    }
1859                  },
1860                  "loc": {
1861                    "start": {
1862                      "line": 30,
1863                      "column": 30,
1864                      "program": "generic_arrayaslist.ets"
1865                    },
1866                    "end": {
1867                      "line": 30,
1868                      "column": 39,
1869                      "program": "generic_arrayaslist.ets"
1870                    }
1871                  }
1872                },
1873                "typeParameters": {
1874                  "type": "TSTypeParameterDeclaration",
1875                  "params": [
1876                    {
1877                      "type": "TSTypeParameter",
1878                      "name": {
1879                        "type": "Identifier",
1880                        "name": "U",
1881                        "decorators": [],
1882                        "loc": {
1883                          "start": {
1884                            "line": 30,
1885                            "column": 9,
1886                            "program": "generic_arrayaslist.ets"
1887                          },
1888                          "end": {
1889                            "line": 30,
1890                            "column": 10,
1891                            "program": "generic_arrayaslist.ets"
1892                          }
1893                        }
1894                      },
1895                      "loc": {
1896                        "start": {
1897                          "line": 30,
1898                          "column": 9,
1899                          "program": "generic_arrayaslist.ets"
1900                        },
1901                        "end": {
1902                          "line": 30,
1903                          "column": 11,
1904                          "program": "generic_arrayaslist.ets"
1905                        }
1906                      }
1907                    }
1908                  ],
1909                  "loc": {
1910                    "start": {
1911                      "line": 30,
1912                      "column": 8,
1913                      "program": "generic_arrayaslist.ets"
1914                    },
1915                    "end": {
1916                      "line": 30,
1917                      "column": 11,
1918                      "program": "generic_arrayaslist.ets"
1919                    }
1920                  }
1921                },
1922                "loc": {
1923                  "start": {
1924                    "line": 30,
1925                    "column": 8,
1926                    "program": "generic_arrayaslist.ets"
1927                  },
1928                  "end": {
1929                    "line": 30,
1930                    "column": 39,
1931                    "program": "generic_arrayaslist.ets"
1932                  }
1933                }
1934              },
1935              "loc": {
1936                "start": {
1937                  "line": 30,
1938                  "column": 8,
1939                  "program": "generic_arrayaslist.ets"
1940                },
1941                "end": {
1942                  "line": 30,
1943                  "column": 39,
1944                  "program": "generic_arrayaslist.ets"
1945                }
1946              }
1947            },
1948            "overloads": [],
1949            "decorators": [],
1950            "loc": {
1951              "start": {
1952                "line": 30,
1953                "column": 5,
1954                "program": "generic_arrayaslist.ets"
1955              },
1956              "end": {
1957                "line": 30,
1958                "column": 39,
1959                "program": "generic_arrayaslist.ets"
1960              }
1961            }
1962          },
1963          {
1964            "type": "MethodDefinition",
1965            "key": {
1966              "type": "Identifier",
1967              "name": "fold",
1968              "decorators": [],
1969              "loc": {
1970                "start": {
1971                  "line": 31,
1972                  "column": 5,
1973                  "program": "generic_arrayaslist.ets"
1974                },
1975                "end": {
1976                  "line": 31,
1977                  "column": 9,
1978                  "program": "generic_arrayaslist.ets"
1979                }
1980              }
1981            },
1982            "kind": "method",
1983            "accessibility": "public",
1984            "static": false,
1985            "optional": false,
1986            "computed": false,
1987            "value": {
1988              "type": "FunctionExpression",
1989              "function": {
1990                "type": "ScriptFunction",
1991                "id": {
1992                  "type": "Identifier",
1993                  "name": "fold",
1994                  "decorators": [],
1995                  "loc": {
1996                    "start": {
1997                      "line": 31,
1998                      "column": 5,
1999                      "program": "generic_arrayaslist.ets"
2000                    },
2001                    "end": {
2002                      "line": 31,
2003                      "column": 9,
2004                      "program": "generic_arrayaslist.ets"
2005                    }
2006                  }
2007                },
2008                "generator": false,
2009                "async": false,
2010                "expression": false,
2011                "params": [
2012                  {
2013                    "type": "ETSParameterExpression",
2014                    "name": {
2015                      "type": "Identifier",
2016                      "name": "combine",
2017                      "typeAnnotation": {
2018                        "type": "ETSFunctionType",
2019                        "params": [
2020                          {
2021                            "type": "ETSParameterExpression",
2022                            "name": {
2023                              "type": "Identifier",
2024                              "name": "lhs",
2025                              "typeAnnotation": {
2026                                "type": "ETSTypeReference",
2027                                "part": {
2028                                  "type": "ETSTypeReferencePart",
2029                                  "name": {
2030                                    "type": "Identifier",
2031                                    "name": "T",
2032                                    "decorators": [],
2033                                    "loc": {
2034                                      "start": {
2035                                        "line": 31,
2036                                        "column": 25,
2037                                        "program": "generic_arrayaslist.ets"
2038                                      },
2039                                      "end": {
2040                                        "line": 31,
2041                                        "column": 26,
2042                                        "program": "generic_arrayaslist.ets"
2043                                      }
2044                                    }
2045                                  },
2046                                  "loc": {
2047                                    "start": {
2048                                      "line": 31,
2049                                      "column": 25,
2050                                      "program": "generic_arrayaslist.ets"
2051                                    },
2052                                    "end": {
2053                                      "line": 31,
2054                                      "column": 27,
2055                                      "program": "generic_arrayaslist.ets"
2056                                    }
2057                                  }
2058                                },
2059                                "loc": {
2060                                  "start": {
2061                                    "line": 31,
2062                                    "column": 25,
2063                                    "program": "generic_arrayaslist.ets"
2064                                  },
2065                                  "end": {
2066                                    "line": 31,
2067                                    "column": 27,
2068                                    "program": "generic_arrayaslist.ets"
2069                                  }
2070                                }
2071                              },
2072                              "decorators": [],
2073                              "loc": {
2074                                "start": {
2075                                  "line": 31,
2076                                  "column": 20,
2077                                  "program": "generic_arrayaslist.ets"
2078                                },
2079                                "end": {
2080                                  "line": 31,
2081                                  "column": 27,
2082                                  "program": "generic_arrayaslist.ets"
2083                                }
2084                              }
2085                            },
2086                            "loc": {
2087                              "start": {
2088                                "line": 31,
2089                                "column": 20,
2090                                "program": "generic_arrayaslist.ets"
2091                              },
2092                              "end": {
2093                                "line": 31,
2094                                "column": 27,
2095                                "program": "generic_arrayaslist.ets"
2096                              }
2097                            }
2098                          },
2099                          {
2100                            "type": "ETSParameterExpression",
2101                            "name": {
2102                              "type": "Identifier",
2103                              "name": "rhs",
2104                              "typeAnnotation": {
2105                                "type": "ETSTypeReference",
2106                                "part": {
2107                                  "type": "ETSTypeReferencePart",
2108                                  "name": {
2109                                    "type": "Identifier",
2110                                    "name": "T",
2111                                    "decorators": [],
2112                                    "loc": {
2113                                      "start": {
2114                                        "line": 31,
2115                                        "column": 33,
2116                                        "program": "generic_arrayaslist.ets"
2117                                      },
2118                                      "end": {
2119                                        "line": 31,
2120                                        "column": 34,
2121                                        "program": "generic_arrayaslist.ets"
2122                                      }
2123                                    }
2124                                  },
2125                                  "loc": {
2126                                    "start": {
2127                                      "line": 31,
2128                                      "column": 33,
2129                                      "program": "generic_arrayaslist.ets"
2130                                    },
2131                                    "end": {
2132                                      "line": 31,
2133                                      "column": 35,
2134                                      "program": "generic_arrayaslist.ets"
2135                                    }
2136                                  }
2137                                },
2138                                "loc": {
2139                                  "start": {
2140                                    "line": 31,
2141                                    "column": 33,
2142                                    "program": "generic_arrayaslist.ets"
2143                                  },
2144                                  "end": {
2145                                    "line": 31,
2146                                    "column": 35,
2147                                    "program": "generic_arrayaslist.ets"
2148                                  }
2149                                }
2150                              },
2151                              "decorators": [],
2152                              "loc": {
2153                                "start": {
2154                                  "line": 31,
2155                                  "column": 28,
2156                                  "program": "generic_arrayaslist.ets"
2157                                },
2158                                "end": {
2159                                  "line": 31,
2160                                  "column": 35,
2161                                  "program": "generic_arrayaslist.ets"
2162                                }
2163                              }
2164                            },
2165                            "loc": {
2166                              "start": {
2167                                "line": 31,
2168                                "column": 28,
2169                                "program": "generic_arrayaslist.ets"
2170                              },
2171                              "end": {
2172                                "line": 31,
2173                                "column": 35,
2174                                "program": "generic_arrayaslist.ets"
2175                              }
2176                            }
2177                          }
2178                        ],
2179                        "returnType": {
2180                          "type": "ETSTypeReference",
2181                          "part": {
2182                            "type": "ETSTypeReferencePart",
2183                            "name": {
2184                              "type": "Identifier",
2185                              "name": "T",
2186                              "decorators": [],
2187                              "loc": {
2188                                "start": {
2189                                  "line": 31,
2190                                  "column": 39,
2191                                  "program": "generic_arrayaslist.ets"
2192                                },
2193                                "end": {
2194                                  "line": 31,
2195                                  "column": 40,
2196                                  "program": "generic_arrayaslist.ets"
2197                                }
2198                              }
2199                            },
2200                            "loc": {
2201                              "start": {
2202                                "line": 31,
2203                                "column": 39,
2204                                "program": "generic_arrayaslist.ets"
2205                              },
2206                              "end": {
2207                                "line": 31,
2208                                "column": 41,
2209                                "program": "generic_arrayaslist.ets"
2210                              }
2211                            }
2212                          },
2213                          "loc": {
2214                            "start": {
2215                              "line": 31,
2216                              "column": 39,
2217                              "program": "generic_arrayaslist.ets"
2218                            },
2219                            "end": {
2220                              "line": 31,
2221                              "column": 41,
2222                              "program": "generic_arrayaslist.ets"
2223                            }
2224                          }
2225                        },
2226                        "loc": {
2227                          "start": {
2228                            "line": 31,
2229                            "column": 19,
2230                            "program": "generic_arrayaslist.ets"
2231                          },
2232                          "end": {
2233                            "line": 31,
2234                            "column": 41,
2235                            "program": "generic_arrayaslist.ets"
2236                          }
2237                        }
2238                      },
2239                      "decorators": [],
2240                      "loc": {
2241                        "start": {
2242                          "line": 31,
2243                          "column": 10,
2244                          "program": "generic_arrayaslist.ets"
2245                        },
2246                        "end": {
2247                          "line": 31,
2248                          "column": 41,
2249                          "program": "generic_arrayaslist.ets"
2250                        }
2251                      }
2252                    },
2253                    "loc": {
2254                      "start": {
2255                        "line": 31,
2256                        "column": 10,
2257                        "program": "generic_arrayaslist.ets"
2258                      },
2259                      "end": {
2260                        "line": 31,
2261                        "column": 41,
2262                        "program": "generic_arrayaslist.ets"
2263                      }
2264                    }
2265                  }
2266                ],
2267                "returnType": {
2268                  "type": "ETSUnionType",
2269                  "types": [
2270                    {
2271                      "type": "ETSTypeReference",
2272                      "part": {
2273                        "type": "ETSTypeReferencePart",
2274                        "name": {
2275                          "type": "Identifier",
2276                          "name": "T",
2277                          "decorators": [],
2278                          "loc": {
2279                            "start": {
2280                              "line": 31,
2281                              "column": 43,
2282                              "program": "generic_arrayaslist.ets"
2283                            },
2284                            "end": {
2285                              "line": 31,
2286                              "column": 44,
2287                              "program": "generic_arrayaslist.ets"
2288                            }
2289                          }
2290                        },
2291                        "loc": {
2292                          "start": {
2293                            "line": 31,
2294                            "column": 43,
2295                            "program": "generic_arrayaslist.ets"
2296                          },
2297                          "end": {
2298                            "line": 31,
2299                            "column": 46,
2300                            "program": "generic_arrayaslist.ets"
2301                          }
2302                        }
2303                      },
2304                      "loc": {
2305                        "start": {
2306                          "line": 31,
2307                          "column": 43,
2308                          "program": "generic_arrayaslist.ets"
2309                        },
2310                        "end": {
2311                          "line": 31,
2312                          "column": 46,
2313                          "program": "generic_arrayaslist.ets"
2314                        }
2315                      }
2316                    },
2317                    {
2318                      "type": "ETSNullType",
2319                      "loc": {
2320                        "start": {
2321                          "line": 31,
2322                          "column": 47,
2323                          "program": "generic_arrayaslist.ets"
2324                        },
2325                        "end": {
2326                          "line": 31,
2327                          "column": 51,
2328                          "program": "generic_arrayaslist.ets"
2329                        }
2330                      }
2331                    }
2332                  ],
2333                  "loc": {
2334                    "start": {
2335                      "line": 31,
2336                      "column": 43,
2337                      "program": "generic_arrayaslist.ets"
2338                    },
2339                    "end": {
2340                      "line": 31,
2341                      "column": 51,
2342                      "program": "generic_arrayaslist.ets"
2343                    }
2344                  }
2345                },
2346                "loc": {
2347                  "start": {
2348                    "line": 31,
2349                    "column": 9,
2350                    "program": "generic_arrayaslist.ets"
2351                  },
2352                  "end": {
2353                    "line": 31,
2354                    "column": 51,
2355                    "program": "generic_arrayaslist.ets"
2356                  }
2357                }
2358              },
2359              "loc": {
2360                "start": {
2361                  "line": 31,
2362                  "column": 9,
2363                  "program": "generic_arrayaslist.ets"
2364                },
2365                "end": {
2366                  "line": 31,
2367                  "column": 51,
2368                  "program": "generic_arrayaslist.ets"
2369                }
2370              }
2371            },
2372            "overloads": [],
2373            "decorators": [],
2374            "loc": {
2375              "start": {
2376                "line": 31,
2377                "column": 5,
2378                "program": "generic_arrayaslist.ets"
2379              },
2380              "end": {
2381                "line": 31,
2382                "column": 52,
2383                "program": "generic_arrayaslist.ets"
2384              }
2385            }
2386          },
2387          {
2388            "type": "MethodDefinition",
2389            "key": {
2390              "type": "Identifier",
2391              "name": "foldWith",
2392              "decorators": [],
2393              "loc": {
2394                "start": {
2395                  "line": 32,
2396                  "column": 5,
2397                  "program": "generic_arrayaslist.ets"
2398                },
2399                "end": {
2400                  "line": 32,
2401                  "column": 13,
2402                  "program": "generic_arrayaslist.ets"
2403                }
2404              }
2405            },
2406            "kind": "method",
2407            "accessibility": "public",
2408            "static": false,
2409            "optional": false,
2410            "computed": false,
2411            "value": {
2412              "type": "FunctionExpression",
2413              "function": {
2414                "type": "ScriptFunction",
2415                "id": {
2416                  "type": "Identifier",
2417                  "name": "foldWith",
2418                  "decorators": [],
2419                  "loc": {
2420                    "start": {
2421                      "line": 32,
2422                      "column": 5,
2423                      "program": "generic_arrayaslist.ets"
2424                    },
2425                    "end": {
2426                      "line": 32,
2427                      "column": 13,
2428                      "program": "generic_arrayaslist.ets"
2429                    }
2430                  }
2431                },
2432                "generator": false,
2433                "async": false,
2434                "expression": false,
2435                "params": [
2436                  {
2437                    "type": "ETSParameterExpression",
2438                    "name": {
2439                      "type": "Identifier",
2440                      "name": "combine",
2441                      "typeAnnotation": {
2442                        "type": "ETSFunctionType",
2443                        "params": [
2444                          {
2445                            "type": "ETSParameterExpression",
2446                            "name": {
2447                              "type": "Identifier",
2448                              "name": "lhs",
2449                              "typeAnnotation": {
2450                                "type": "ETSTypeReference",
2451                                "part": {
2452                                  "type": "ETSTypeReferencePart",
2453                                  "name": {
2454                                    "type": "Identifier",
2455                                    "name": "U",
2456                                    "decorators": [],
2457                                    "loc": {
2458                                      "start": {
2459                                        "line": 32,
2460                                        "column": 32,
2461                                        "program": "generic_arrayaslist.ets"
2462                                      },
2463                                      "end": {
2464                                        "line": 32,
2465                                        "column": 33,
2466                                        "program": "generic_arrayaslist.ets"
2467                                      }
2468                                    }
2469                                  },
2470                                  "loc": {
2471                                    "start": {
2472                                      "line": 32,
2473                                      "column": 32,
2474                                      "program": "generic_arrayaslist.ets"
2475                                    },
2476                                    "end": {
2477                                      "line": 32,
2478                                      "column": 34,
2479                                      "program": "generic_arrayaslist.ets"
2480                                    }
2481                                  }
2482                                },
2483                                "loc": {
2484                                  "start": {
2485                                    "line": 32,
2486                                    "column": 32,
2487                                    "program": "generic_arrayaslist.ets"
2488                                  },
2489                                  "end": {
2490                                    "line": 32,
2491                                    "column": 34,
2492                                    "program": "generic_arrayaslist.ets"
2493                                  }
2494                                }
2495                              },
2496                              "decorators": [],
2497                              "loc": {
2498                                "start": {
2499                                  "line": 32,
2500                                  "column": 27,
2501                                  "program": "generic_arrayaslist.ets"
2502                                },
2503                                "end": {
2504                                  "line": 32,
2505                                  "column": 34,
2506                                  "program": "generic_arrayaslist.ets"
2507                                }
2508                              }
2509                            },
2510                            "loc": {
2511                              "start": {
2512                                "line": 32,
2513                                "column": 27,
2514                                "program": "generic_arrayaslist.ets"
2515                              },
2516                              "end": {
2517                                "line": 32,
2518                                "column": 34,
2519                                "program": "generic_arrayaslist.ets"
2520                              }
2521                            }
2522                          },
2523                          {
2524                            "type": "ETSParameterExpression",
2525                            "name": {
2526                              "type": "Identifier",
2527                              "name": "rhs",
2528                              "typeAnnotation": {
2529                                "type": "ETSTypeReference",
2530                                "part": {
2531                                  "type": "ETSTypeReferencePart",
2532                                  "name": {
2533                                    "type": "Identifier",
2534                                    "name": "T",
2535                                    "decorators": [],
2536                                    "loc": {
2537                                      "start": {
2538                                        "line": 32,
2539                                        "column": 40,
2540                                        "program": "generic_arrayaslist.ets"
2541                                      },
2542                                      "end": {
2543                                        "line": 32,
2544                                        "column": 41,
2545                                        "program": "generic_arrayaslist.ets"
2546                                      }
2547                                    }
2548                                  },
2549                                  "loc": {
2550                                    "start": {
2551                                      "line": 32,
2552                                      "column": 40,
2553                                      "program": "generic_arrayaslist.ets"
2554                                    },
2555                                    "end": {
2556                                      "line": 32,
2557                                      "column": 42,
2558                                      "program": "generic_arrayaslist.ets"
2559                                    }
2560                                  }
2561                                },
2562                                "loc": {
2563                                  "start": {
2564                                    "line": 32,
2565                                    "column": 40,
2566                                    "program": "generic_arrayaslist.ets"
2567                                  },
2568                                  "end": {
2569                                    "line": 32,
2570                                    "column": 42,
2571                                    "program": "generic_arrayaslist.ets"
2572                                  }
2573                                }
2574                              },
2575                              "decorators": [],
2576                              "loc": {
2577                                "start": {
2578                                  "line": 32,
2579                                  "column": 35,
2580                                  "program": "generic_arrayaslist.ets"
2581                                },
2582                                "end": {
2583                                  "line": 32,
2584                                  "column": 42,
2585                                  "program": "generic_arrayaslist.ets"
2586                                }
2587                              }
2588                            },
2589                            "loc": {
2590                              "start": {
2591                                "line": 32,
2592                                "column": 35,
2593                                "program": "generic_arrayaslist.ets"
2594                              },
2595                              "end": {
2596                                "line": 32,
2597                                "column": 42,
2598                                "program": "generic_arrayaslist.ets"
2599                              }
2600                            }
2601                          }
2602                        ],
2603                        "returnType": {
2604                          "type": "ETSTypeReference",
2605                          "part": {
2606                            "type": "ETSTypeReferencePart",
2607                            "name": {
2608                              "type": "Identifier",
2609                              "name": "U",
2610                              "decorators": [],
2611                              "loc": {
2612                                "start": {
2613                                  "line": 32,
2614                                  "column": 46,
2615                                  "program": "generic_arrayaslist.ets"
2616                                },
2617                                "end": {
2618                                  "line": 32,
2619                                  "column": 47,
2620                                  "program": "generic_arrayaslist.ets"
2621                                }
2622                              }
2623                            },
2624                            "loc": {
2625                              "start": {
2626                                "line": 32,
2627                                "column": 46,
2628                                "program": "generic_arrayaslist.ets"
2629                              },
2630                              "end": {
2631                                "line": 32,
2632                                "column": 48,
2633                                "program": "generic_arrayaslist.ets"
2634                              }
2635                            }
2636                          },
2637                          "loc": {
2638                            "start": {
2639                              "line": 32,
2640                              "column": 46,
2641                              "program": "generic_arrayaslist.ets"
2642                            },
2643                            "end": {
2644                              "line": 32,
2645                              "column": 48,
2646                              "program": "generic_arrayaslist.ets"
2647                            }
2648                          }
2649                        },
2650                        "loc": {
2651                          "start": {
2652                            "line": 32,
2653                            "column": 26,
2654                            "program": "generic_arrayaslist.ets"
2655                          },
2656                          "end": {
2657                            "line": 32,
2658                            "column": 48,
2659                            "program": "generic_arrayaslist.ets"
2660                          }
2661                        }
2662                      },
2663                      "decorators": [],
2664                      "loc": {
2665                        "start": {
2666                          "line": 32,
2667                          "column": 17,
2668                          "program": "generic_arrayaslist.ets"
2669                        },
2670                        "end": {
2671                          "line": 32,
2672                          "column": 48,
2673                          "program": "generic_arrayaslist.ets"
2674                        }
2675                      }
2676                    },
2677                    "loc": {
2678                      "start": {
2679                        "line": 32,
2680                        "column": 17,
2681                        "program": "generic_arrayaslist.ets"
2682                      },
2683                      "end": {
2684                        "line": 32,
2685                        "column": 48,
2686                        "program": "generic_arrayaslist.ets"
2687                      }
2688                    }
2689                  },
2690                  {
2691                    "type": "ETSParameterExpression",
2692                    "name": {
2693                      "type": "Identifier",
2694                      "name": "initVal",
2695                      "typeAnnotation": {
2696                        "type": "ETSTypeReference",
2697                        "part": {
2698                          "type": "ETSTypeReferencePart",
2699                          "name": {
2700                            "type": "Identifier",
2701                            "name": "U",
2702                            "decorators": [],
2703                            "loc": {
2704                              "start": {
2705                                "line": 32,
2706                                "column": 58,
2707                                "program": "generic_arrayaslist.ets"
2708                              },
2709                              "end": {
2710                                "line": 32,
2711                                "column": 59,
2712                                "program": "generic_arrayaslist.ets"
2713                              }
2714                            }
2715                          },
2716                          "loc": {
2717                            "start": {
2718                              "line": 32,
2719                              "column": 58,
2720                              "program": "generic_arrayaslist.ets"
2721                            },
2722                            "end": {
2723                              "line": 32,
2724                              "column": 60,
2725                              "program": "generic_arrayaslist.ets"
2726                            }
2727                          }
2728                        },
2729                        "loc": {
2730                          "start": {
2731                            "line": 32,
2732                            "column": 58,
2733                            "program": "generic_arrayaslist.ets"
2734                          },
2735                          "end": {
2736                            "line": 32,
2737                            "column": 60,
2738                            "program": "generic_arrayaslist.ets"
2739                          }
2740                        }
2741                      },
2742                      "decorators": [],
2743                      "loc": {
2744                        "start": {
2745                          "line": 32,
2746                          "column": 49,
2747                          "program": "generic_arrayaslist.ets"
2748                        },
2749                        "end": {
2750                          "line": 32,
2751                          "column": 60,
2752                          "program": "generic_arrayaslist.ets"
2753                        }
2754                      }
2755                    },
2756                    "loc": {
2757                      "start": {
2758                        "line": 32,
2759                        "column": 49,
2760                        "program": "generic_arrayaslist.ets"
2761                      },
2762                      "end": {
2763                        "line": 32,
2764                        "column": 60,
2765                        "program": "generic_arrayaslist.ets"
2766                      }
2767                    }
2768                  }
2769                ],
2770                "returnType": {
2771                  "type": "ETSTypeReference",
2772                  "part": {
2773                    "type": "ETSTypeReferencePart",
2774                    "name": {
2775                      "type": "Identifier",
2776                      "name": "U",
2777                      "decorators": [],
2778                      "loc": {
2779                        "start": {
2780                          "line": 32,
2781                          "column": 62,
2782                          "program": "generic_arrayaslist.ets"
2783                        },
2784                        "end": {
2785                          "line": 32,
2786                          "column": 63,
2787                          "program": "generic_arrayaslist.ets"
2788                        }
2789                      }
2790                    },
2791                    "loc": {
2792                      "start": {
2793                        "line": 32,
2794                        "column": 62,
2795                        "program": "generic_arrayaslist.ets"
2796                      },
2797                      "end": {
2798                        "line": 32,
2799                        "column": 64,
2800                        "program": "generic_arrayaslist.ets"
2801                      }
2802                    }
2803                  },
2804                  "loc": {
2805                    "start": {
2806                      "line": 32,
2807                      "column": 62,
2808                      "program": "generic_arrayaslist.ets"
2809                    },
2810                    "end": {
2811                      "line": 32,
2812                      "column": 64,
2813                      "program": "generic_arrayaslist.ets"
2814                    }
2815                  }
2816                },
2817                "typeParameters": {
2818                  "type": "TSTypeParameterDeclaration",
2819                  "params": [
2820                    {
2821                      "type": "TSTypeParameter",
2822                      "name": {
2823                        "type": "Identifier",
2824                        "name": "U",
2825                        "decorators": [],
2826                        "loc": {
2827                          "start": {
2828                            "line": 32,
2829                            "column": 14,
2830                            "program": "generic_arrayaslist.ets"
2831                          },
2832                          "end": {
2833                            "line": 32,
2834                            "column": 15,
2835                            "program": "generic_arrayaslist.ets"
2836                          }
2837                        }
2838                      },
2839                      "loc": {
2840                        "start": {
2841                          "line": 32,
2842                          "column": 14,
2843                          "program": "generic_arrayaslist.ets"
2844                        },
2845                        "end": {
2846                          "line": 32,
2847                          "column": 16,
2848                          "program": "generic_arrayaslist.ets"
2849                        }
2850                      }
2851                    }
2852                  ],
2853                  "loc": {
2854                    "start": {
2855                      "line": 32,
2856                      "column": 13,
2857                      "program": "generic_arrayaslist.ets"
2858                    },
2859                    "end": {
2860                      "line": 32,
2861                      "column": 16,
2862                      "program": "generic_arrayaslist.ets"
2863                    }
2864                  }
2865                },
2866                "loc": {
2867                  "start": {
2868                    "line": 32,
2869                    "column": 13,
2870                    "program": "generic_arrayaslist.ets"
2871                  },
2872                  "end": {
2873                    "line": 32,
2874                    "column": 64,
2875                    "program": "generic_arrayaslist.ets"
2876                  }
2877                }
2878              },
2879              "loc": {
2880                "start": {
2881                  "line": 32,
2882                  "column": 13,
2883                  "program": "generic_arrayaslist.ets"
2884                },
2885                "end": {
2886                  "line": 32,
2887                  "column": 64,
2888                  "program": "generic_arrayaslist.ets"
2889                }
2890              }
2891            },
2892            "overloads": [],
2893            "decorators": [],
2894            "loc": {
2895              "start": {
2896                "line": 32,
2897                "column": 5,
2898                "program": "generic_arrayaslist.ets"
2899              },
2900              "end": {
2901                "line": 32,
2902                "column": 64,
2903                "program": "generic_arrayaslist.ets"
2904              }
2905            }
2906          },
2907          {
2908            "type": "MethodDefinition",
2909            "key": {
2910              "type": "Identifier",
2911              "name": "filter",
2912              "decorators": [],
2913              "loc": {
2914                "start": {
2915                  "line": 33,
2916                  "column": 5,
2917                  "program": "generic_arrayaslist.ets"
2918                },
2919                "end": {
2920                  "line": 33,
2921                  "column": 11,
2922                  "program": "generic_arrayaslist.ets"
2923                }
2924              }
2925            },
2926            "kind": "method",
2927            "accessibility": "public",
2928            "static": false,
2929            "optional": false,
2930            "computed": false,
2931            "value": {
2932              "type": "FunctionExpression",
2933              "function": {
2934                "type": "ScriptFunction",
2935                "id": {
2936                  "type": "Identifier",
2937                  "name": "filter",
2938                  "decorators": [],
2939                  "loc": {
2940                    "start": {
2941                      "line": 33,
2942                      "column": 5,
2943                      "program": "generic_arrayaslist.ets"
2944                    },
2945                    "end": {
2946                      "line": 33,
2947                      "column": 11,
2948                      "program": "generic_arrayaslist.ets"
2949                    }
2950                  }
2951                },
2952                "generator": false,
2953                "async": false,
2954                "expression": false,
2955                "params": [
2956                  {
2957                    "type": "ETSParameterExpression",
2958                    "name": {
2959                      "type": "Identifier",
2960                      "name": "filterCond",
2961                      "typeAnnotation": {
2962                        "type": "ETSFunctionType",
2963                        "params": [
2964                          {
2965                            "type": "ETSParameterExpression",
2966                            "name": {
2967                              "type": "Identifier",
2968                              "name": "e",
2969                              "typeAnnotation": {
2970                                "type": "ETSTypeReference",
2971                                "part": {
2972                                  "type": "ETSTypeReferencePart",
2973                                  "name": {
2974                                    "type": "Identifier",
2975                                    "name": "T",
2976                                    "decorators": [],
2977                                    "loc": {
2978                                      "start": {
2979                                        "line": 33,
2980                                        "column": 28,
2981                                        "program": "generic_arrayaslist.ets"
2982                                      },
2983                                      "end": {
2984                                        "line": 33,
2985                                        "column": 29,
2986                                        "program": "generic_arrayaslist.ets"
2987                                      }
2988                                    }
2989                                  },
2990                                  "loc": {
2991                                    "start": {
2992                                      "line": 33,
2993                                      "column": 28,
2994                                      "program": "generic_arrayaslist.ets"
2995                                    },
2996                                    "end": {
2997                                      "line": 33,
2998                                      "column": 30,
2999                                      "program": "generic_arrayaslist.ets"
3000                                    }
3001                                  }
3002                                },
3003                                "loc": {
3004                                  "start": {
3005                                    "line": 33,
3006                                    "column": 28,
3007                                    "program": "generic_arrayaslist.ets"
3008                                  },
3009                                  "end": {
3010                                    "line": 33,
3011                                    "column": 30,
3012                                    "program": "generic_arrayaslist.ets"
3013                                  }
3014                                }
3015                              },
3016                              "decorators": [],
3017                              "loc": {
3018                                "start": {
3019                                  "line": 33,
3020                                  "column": 25,
3021                                  "program": "generic_arrayaslist.ets"
3022                                },
3023                                "end": {
3024                                  "line": 33,
3025                                  "column": 30,
3026                                  "program": "generic_arrayaslist.ets"
3027                                }
3028                              }
3029                            },
3030                            "loc": {
3031                              "start": {
3032                                "line": 33,
3033                                "column": 25,
3034                                "program": "generic_arrayaslist.ets"
3035                              },
3036                              "end": {
3037                                "line": 33,
3038                                "column": 30,
3039                                "program": "generic_arrayaslist.ets"
3040                              }
3041                            }
3042                          }
3043                        ],
3044                        "returnType": {
3045                          "type": "ETSPrimitiveType",
3046                          "loc": {
3047                            "start": {
3048                              "line": 33,
3049                              "column": 34,
3050                              "program": "generic_arrayaslist.ets"
3051                            },
3052                            "end": {
3053                              "line": 33,
3054                              "column": 41,
3055                              "program": "generic_arrayaslist.ets"
3056                            }
3057                          }
3058                        },
3059                        "loc": {
3060                          "start": {
3061                            "line": 33,
3062                            "column": 24,
3063                            "program": "generic_arrayaslist.ets"
3064                          },
3065                          "end": {
3066                            "line": 33,
3067                            "column": 41,
3068                            "program": "generic_arrayaslist.ets"
3069                          }
3070                        }
3071                      },
3072                      "decorators": [],
3073                      "loc": {
3074                        "start": {
3075                          "line": 33,
3076                          "column": 12,
3077                          "program": "generic_arrayaslist.ets"
3078                        },
3079                        "end": {
3080                          "line": 33,
3081                          "column": 41,
3082                          "program": "generic_arrayaslist.ets"
3083                        }
3084                      }
3085                    },
3086                    "loc": {
3087                      "start": {
3088                        "line": 33,
3089                        "column": 12,
3090                        "program": "generic_arrayaslist.ets"
3091                      },
3092                      "end": {
3093                        "line": 33,
3094                        "column": 41,
3095                        "program": "generic_arrayaslist.ets"
3096                      }
3097                    }
3098                  }
3099                ],
3100                "returnType": {
3101                  "type": "ETSUnionType",
3102                  "types": [
3103                    {
3104                      "type": "ETSTypeReference",
3105                      "part": {
3106                        "type": "ETSTypeReferencePart",
3107                        "name": {
3108                          "type": "Identifier",
3109                          "name": "Listt",
3110                          "decorators": [],
3111                          "loc": {
3112                            "start": {
3113                              "line": 33,
3114                              "column": 45,
3115                              "program": "generic_arrayaslist.ets"
3116                            },
3117                            "end": {
3118                              "line": 33,
3119                              "column": 50,
3120                              "program": "generic_arrayaslist.ets"
3121                            }
3122                          }
3123                        },
3124                        "typeParams": {
3125                          "type": "TSTypeParameterInstantiation",
3126                          "params": [
3127                            {
3128                              "type": "ETSTypeReference",
3129                              "part": {
3130                                "type": "ETSTypeReferencePart",
3131                                "name": {
3132                                  "type": "Identifier",
3133                                  "name": "T",
3134                                  "decorators": [],
3135                                  "loc": {
3136                                    "start": {
3137                                      "line": 33,
3138                                      "column": 51,
3139                                      "program": "generic_arrayaslist.ets"
3140                                    },
3141                                    "end": {
3142                                      "line": 33,
3143                                      "column": 52,
3144                                      "program": "generic_arrayaslist.ets"
3145                                    }
3146                                  }
3147                                },
3148                                "loc": {
3149                                  "start": {
3150                                    "line": 33,
3151                                    "column": 51,
3152                                    "program": "generic_arrayaslist.ets"
3153                                  },
3154                                  "end": {
3155                                    "line": 33,
3156                                    "column": 53,
3157                                    "program": "generic_arrayaslist.ets"
3158                                  }
3159                                }
3160                              },
3161                              "loc": {
3162                                "start": {
3163                                  "line": 33,
3164                                  "column": 51,
3165                                  "program": "generic_arrayaslist.ets"
3166                                },
3167                                "end": {
3168                                  "line": 33,
3169                                  "column": 53,
3170                                  "program": "generic_arrayaslist.ets"
3171                                }
3172                              }
3173                            }
3174                          ],
3175                          "loc": {
3176                            "start": {
3177                              "line": 33,
3178                              "column": 50,
3179                              "program": "generic_arrayaslist.ets"
3180                            },
3181                            "end": {
3182                              "line": 33,
3183                              "column": 53,
3184                              "program": "generic_arrayaslist.ets"
3185                            }
3186                          }
3187                        },
3188                        "loc": {
3189                          "start": {
3190                            "line": 33,
3191                            "column": 45,
3192                            "program": "generic_arrayaslist.ets"
3193                          },
3194                          "end": {
3195                            "line": 33,
3196                            "column": 55,
3197                            "program": "generic_arrayaslist.ets"
3198                          }
3199                        }
3200                      },
3201                      "loc": {
3202                        "start": {
3203                          "line": 33,
3204                          "column": 45,
3205                          "program": "generic_arrayaslist.ets"
3206                        },
3207                        "end": {
3208                          "line": 33,
3209                          "column": 55,
3210                          "program": "generic_arrayaslist.ets"
3211                        }
3212                      }
3213                    },
3214                    {
3215                      "type": "ETSNullType",
3216                      "loc": {
3217                        "start": {
3218                          "line": 33,
3219                          "column": 56,
3220                          "program": "generic_arrayaslist.ets"
3221                        },
3222                        "end": {
3223                          "line": 33,
3224                          "column": 60,
3225                          "program": "generic_arrayaslist.ets"
3226                        }
3227                      }
3228                    }
3229                  ],
3230                  "loc": {
3231                    "start": {
3232                      "line": 33,
3233                      "column": 45,
3234                      "program": "generic_arrayaslist.ets"
3235                    },
3236                    "end": {
3237                      "line": 33,
3238                      "column": 60,
3239                      "program": "generic_arrayaslist.ets"
3240                    }
3241                  }
3242                },
3243                "loc": {
3244                  "start": {
3245                    "line": 33,
3246                    "column": 11,
3247                    "program": "generic_arrayaslist.ets"
3248                  },
3249                  "end": {
3250                    "line": 33,
3251                    "column": 60,
3252                    "program": "generic_arrayaslist.ets"
3253                  }
3254                }
3255              },
3256              "loc": {
3257                "start": {
3258                  "line": 33,
3259                  "column": 11,
3260                  "program": "generic_arrayaslist.ets"
3261                },
3262                "end": {
3263                  "line": 33,
3264                  "column": 60,
3265                  "program": "generic_arrayaslist.ets"
3266                }
3267              }
3268            },
3269            "overloads": [],
3270            "decorators": [],
3271            "loc": {
3272              "start": {
3273                "line": 33,
3274                "column": 5,
3275                "program": "generic_arrayaslist.ets"
3276              },
3277              "end": {
3278                "line": 33,
3279                "column": 61,
3280                "program": "generic_arrayaslist.ets"
3281              }
3282            }
3283          },
3284          {
3285            "type": "MethodDefinition",
3286            "key": {
3287              "type": "Identifier",
3288              "name": "sort",
3289              "decorators": [],
3290              "loc": {
3291                "start": {
3292                  "line": 34,
3293                  "column": 5,
3294                  "program": "generic_arrayaslist.ets"
3295                },
3296                "end": {
3297                  "line": 34,
3298                  "column": 9,
3299                  "program": "generic_arrayaslist.ets"
3300                }
3301              }
3302            },
3303            "kind": "method",
3304            "accessibility": "public",
3305            "static": false,
3306            "optional": false,
3307            "computed": false,
3308            "value": {
3309              "type": "FunctionExpression",
3310              "function": {
3311                "type": "ScriptFunction",
3312                "id": {
3313                  "type": "Identifier",
3314                  "name": "sort",
3315                  "decorators": [],
3316                  "loc": {
3317                    "start": {
3318                      "line": 34,
3319                      "column": 5,
3320                      "program": "generic_arrayaslist.ets"
3321                    },
3322                    "end": {
3323                      "line": 34,
3324                      "column": 9,
3325                      "program": "generic_arrayaslist.ets"
3326                    }
3327                  }
3328                },
3329                "generator": false,
3330                "async": false,
3331                "expression": false,
3332                "params": [
3333                  {
3334                    "type": "ETSParameterExpression",
3335                    "name": {
3336                      "type": "Identifier",
3337                      "name": "comparator",
3338                      "typeAnnotation": {
3339                        "type": "ETSFunctionType",
3340                        "params": [
3341                          {
3342                            "type": "ETSParameterExpression",
3343                            "name": {
3344                              "type": "Identifier",
3345                              "name": "lhs",
3346                              "typeAnnotation": {
3347                                "type": "ETSTypeReference",
3348                                "part": {
3349                                  "type": "ETSTypeReferencePart",
3350                                  "name": {
3351                                    "type": "Identifier",
3352                                    "name": "T",
3353                                    "decorators": [],
3354                                    "loc": {
3355                                      "start": {
3356                                        "line": 34,
3357                                        "column": 28,
3358                                        "program": "generic_arrayaslist.ets"
3359                                      },
3360                                      "end": {
3361                                        "line": 34,
3362                                        "column": 29,
3363                                        "program": "generic_arrayaslist.ets"
3364                                      }
3365                                    }
3366                                  },
3367                                  "loc": {
3368                                    "start": {
3369                                      "line": 34,
3370                                      "column": 28,
3371                                      "program": "generic_arrayaslist.ets"
3372                                    },
3373                                    "end": {
3374                                      "line": 34,
3375                                      "column": 30,
3376                                      "program": "generic_arrayaslist.ets"
3377                                    }
3378                                  }
3379                                },
3380                                "loc": {
3381                                  "start": {
3382                                    "line": 34,
3383                                    "column": 28,
3384                                    "program": "generic_arrayaslist.ets"
3385                                  },
3386                                  "end": {
3387                                    "line": 34,
3388                                    "column": 30,
3389                                    "program": "generic_arrayaslist.ets"
3390                                  }
3391                                }
3392                              },
3393                              "decorators": [],
3394                              "loc": {
3395                                "start": {
3396                                  "line": 34,
3397                                  "column": 23,
3398                                  "program": "generic_arrayaslist.ets"
3399                                },
3400                                "end": {
3401                                  "line": 34,
3402                                  "column": 30,
3403                                  "program": "generic_arrayaslist.ets"
3404                                }
3405                              }
3406                            },
3407                            "loc": {
3408                              "start": {
3409                                "line": 34,
3410                                "column": 23,
3411                                "program": "generic_arrayaslist.ets"
3412                              },
3413                              "end": {
3414                                "line": 34,
3415                                "column": 30,
3416                                "program": "generic_arrayaslist.ets"
3417                              }
3418                            }
3419                          },
3420                          {
3421                            "type": "ETSParameterExpression",
3422                            "name": {
3423                              "type": "Identifier",
3424                              "name": "rhs",
3425                              "typeAnnotation": {
3426                                "type": "ETSTypeReference",
3427                                "part": {
3428                                  "type": "ETSTypeReferencePart",
3429                                  "name": {
3430                                    "type": "Identifier",
3431                                    "name": "T",
3432                                    "decorators": [],
3433                                    "loc": {
3434                                      "start": {
3435                                        "line": 34,
3436                                        "column": 36,
3437                                        "program": "generic_arrayaslist.ets"
3438                                      },
3439                                      "end": {
3440                                        "line": 34,
3441                                        "column": 37,
3442                                        "program": "generic_arrayaslist.ets"
3443                                      }
3444                                    }
3445                                  },
3446                                  "loc": {
3447                                    "start": {
3448                                      "line": 34,
3449                                      "column": 36,
3450                                      "program": "generic_arrayaslist.ets"
3451                                    },
3452                                    "end": {
3453                                      "line": 34,
3454                                      "column": 38,
3455                                      "program": "generic_arrayaslist.ets"
3456                                    }
3457                                  }
3458                                },
3459                                "loc": {
3460                                  "start": {
3461                                    "line": 34,
3462                                    "column": 36,
3463                                    "program": "generic_arrayaslist.ets"
3464                                  },
3465                                  "end": {
3466                                    "line": 34,
3467                                    "column": 38,
3468                                    "program": "generic_arrayaslist.ets"
3469                                  }
3470                                }
3471                              },
3472                              "decorators": [],
3473                              "loc": {
3474                                "start": {
3475                                  "line": 34,
3476                                  "column": 31,
3477                                  "program": "generic_arrayaslist.ets"
3478                                },
3479                                "end": {
3480                                  "line": 34,
3481                                  "column": 38,
3482                                  "program": "generic_arrayaslist.ets"
3483                                }
3484                              }
3485                            },
3486                            "loc": {
3487                              "start": {
3488                                "line": 34,
3489                                "column": 31,
3490                                "program": "generic_arrayaslist.ets"
3491                              },
3492                              "end": {
3493                                "line": 34,
3494                                "column": 38,
3495                                "program": "generic_arrayaslist.ets"
3496                              }
3497                            }
3498                          }
3499                        ],
3500                        "returnType": {
3501                          "type": "ETSPrimitiveType",
3502                          "loc": {
3503                            "start": {
3504                              "line": 34,
3505                              "column": 42,
3506                              "program": "generic_arrayaslist.ets"
3507                            },
3508                            "end": {
3509                              "line": 34,
3510                              "column": 49,
3511                              "program": "generic_arrayaslist.ets"
3512                            }
3513                          }
3514                        },
3515                        "loc": {
3516                          "start": {
3517                            "line": 34,
3518                            "column": 22,
3519                            "program": "generic_arrayaslist.ets"
3520                          },
3521                          "end": {
3522                            "line": 34,
3523                            "column": 49,
3524                            "program": "generic_arrayaslist.ets"
3525                          }
3526                        }
3527                      },
3528                      "decorators": [],
3529                      "loc": {
3530                        "start": {
3531                          "line": 34,
3532                          "column": 10,
3533                          "program": "generic_arrayaslist.ets"
3534                        },
3535                        "end": {
3536                          "line": 34,
3537                          "column": 49,
3538                          "program": "generic_arrayaslist.ets"
3539                        }
3540                      }
3541                    },
3542                    "loc": {
3543                      "start": {
3544                        "line": 34,
3545                        "column": 10,
3546                        "program": "generic_arrayaslist.ets"
3547                      },
3548                      "end": {
3549                        "line": 34,
3550                        "column": 49,
3551                        "program": "generic_arrayaslist.ets"
3552                      }
3553                    }
3554                  }
3555                ],
3556                "returnType": {
3557                  "type": "ETSUnionType",
3558                  "types": [
3559                    {
3560                      "type": "ETSTypeReference",
3561                      "part": {
3562                        "type": "ETSTypeReferencePart",
3563                        "name": {
3564                          "type": "Identifier",
3565                          "name": "Listt",
3566                          "decorators": [],
3567                          "loc": {
3568                            "start": {
3569                              "line": 34,
3570                              "column": 53,
3571                              "program": "generic_arrayaslist.ets"
3572                            },
3573                            "end": {
3574                              "line": 34,
3575                              "column": 58,
3576                              "program": "generic_arrayaslist.ets"
3577                            }
3578                          }
3579                        },
3580                        "typeParams": {
3581                          "type": "TSTypeParameterInstantiation",
3582                          "params": [
3583                            {
3584                              "type": "ETSTypeReference",
3585                              "part": {
3586                                "type": "ETSTypeReferencePart",
3587                                "name": {
3588                                  "type": "Identifier",
3589                                  "name": "T",
3590                                  "decorators": [],
3591                                  "loc": {
3592                                    "start": {
3593                                      "line": 34,
3594                                      "column": 59,
3595                                      "program": "generic_arrayaslist.ets"
3596                                    },
3597                                    "end": {
3598                                      "line": 34,
3599                                      "column": 60,
3600                                      "program": "generic_arrayaslist.ets"
3601                                    }
3602                                  }
3603                                },
3604                                "loc": {
3605                                  "start": {
3606                                    "line": 34,
3607                                    "column": 59,
3608                                    "program": "generic_arrayaslist.ets"
3609                                  },
3610                                  "end": {
3611                                    "line": 34,
3612                                    "column": 61,
3613                                    "program": "generic_arrayaslist.ets"
3614                                  }
3615                                }
3616                              },
3617                              "loc": {
3618                                "start": {
3619                                  "line": 34,
3620                                  "column": 59,
3621                                  "program": "generic_arrayaslist.ets"
3622                                },
3623                                "end": {
3624                                  "line": 34,
3625                                  "column": 61,
3626                                  "program": "generic_arrayaslist.ets"
3627                                }
3628                              }
3629                            }
3630                          ],
3631                          "loc": {
3632                            "start": {
3633                              "line": 34,
3634                              "column": 58,
3635                              "program": "generic_arrayaslist.ets"
3636                            },
3637                            "end": {
3638                              "line": 34,
3639                              "column": 61,
3640                              "program": "generic_arrayaslist.ets"
3641                            }
3642                          }
3643                        },
3644                        "loc": {
3645                          "start": {
3646                            "line": 34,
3647                            "column": 53,
3648                            "program": "generic_arrayaslist.ets"
3649                          },
3650                          "end": {
3651                            "line": 34,
3652                            "column": 63,
3653                            "program": "generic_arrayaslist.ets"
3654                          }
3655                        }
3656                      },
3657                      "loc": {
3658                        "start": {
3659                          "line": 34,
3660                          "column": 53,
3661                          "program": "generic_arrayaslist.ets"
3662                        },
3663                        "end": {
3664                          "line": 34,
3665                          "column": 63,
3666                          "program": "generic_arrayaslist.ets"
3667                        }
3668                      }
3669                    },
3670                    {
3671                      "type": "ETSNullType",
3672                      "loc": {
3673                        "start": {
3674                          "line": 34,
3675                          "column": 64,
3676                          "program": "generic_arrayaslist.ets"
3677                        },
3678                        "end": {
3679                          "line": 34,
3680                          "column": 68,
3681                          "program": "generic_arrayaslist.ets"
3682                        }
3683                      }
3684                    }
3685                  ],
3686                  "loc": {
3687                    "start": {
3688                      "line": 34,
3689                      "column": 53,
3690                      "program": "generic_arrayaslist.ets"
3691                    },
3692                    "end": {
3693                      "line": 34,
3694                      "column": 68,
3695                      "program": "generic_arrayaslist.ets"
3696                    }
3697                  }
3698                },
3699                "loc": {
3700                  "start": {
3701                    "line": 34,
3702                    "column": 9,
3703                    "program": "generic_arrayaslist.ets"
3704                  },
3705                  "end": {
3706                    "line": 34,
3707                    "column": 68,
3708                    "program": "generic_arrayaslist.ets"
3709                  }
3710                }
3711              },
3712              "loc": {
3713                "start": {
3714                  "line": 34,
3715                  "column": 9,
3716                  "program": "generic_arrayaslist.ets"
3717                },
3718                "end": {
3719                  "line": 34,
3720                  "column": 68,
3721                  "program": "generic_arrayaslist.ets"
3722                }
3723              }
3724            },
3725            "overloads": [],
3726            "decorators": [],
3727            "loc": {
3728              "start": {
3729                "line": 34,
3730                "column": 5,
3731                "program": "generic_arrayaslist.ets"
3732              },
3733              "end": {
3734                "line": 34,
3735                "column": 69,
3736                "program": "generic_arrayaslist.ets"
3737              }
3738            }
3739          }
3740        ],
3741        "loc": {
3742          "start": {
3743            "line": 19,
3744            "column": 22,
3745            "program": "generic_arrayaslist.ets"
3746          },
3747          "end": {
3748            "line": 35,
3749            "column": 2,
3750            "program": "generic_arrayaslist.ets"
3751          }
3752        }
3753      },
3754      "id": {
3755        "type": "Identifier",
3756        "name": "Listt",
3757        "decorators": [],
3758        "loc": {
3759          "start": {
3760            "line": 19,
3761            "column": 11,
3762            "program": "generic_arrayaslist.ets"
3763          },
3764          "end": {
3765            "line": 19,
3766            "column": 16,
3767            "program": "generic_arrayaslist.ets"
3768          }
3769        }
3770      },
3771      "extends": [],
3772      "typeParameters": {
3773        "type": "TSTypeParameterDeclaration",
3774        "params": [
3775          {
3776            "type": "TSTypeParameter",
3777            "name": {
3778              "type": "Identifier",
3779              "name": "T",
3780              "decorators": [],
3781              "loc": {
3782                "start": {
3783                  "line": 19,
3784                  "column": 18,
3785                  "program": "generic_arrayaslist.ets"
3786                },
3787                "end": {
3788                  "line": 19,
3789                  "column": 19,
3790                  "program": "generic_arrayaslist.ets"
3791                }
3792              }
3793            },
3794            "loc": {
3795              "start": {
3796                "line": 19,
3797                "column": 18,
3798                "program": "generic_arrayaslist.ets"
3799              },
3800              "end": {
3801                "line": 19,
3802                "column": 20,
3803                "program": "generic_arrayaslist.ets"
3804              }
3805            }
3806          }
3807        ],
3808        "loc": {
3809          "start": {
3810            "line": 19,
3811            "column": 17,
3812            "program": "generic_arrayaslist.ets"
3813          },
3814          "end": {
3815            "line": 19,
3816            "column": 20,
3817            "program": "generic_arrayaslist.ets"
3818          }
3819        }
3820      },
3821      "loc": {
3822        "start": {
3823          "line": 19,
3824          "column": 1,
3825          "program": "generic_arrayaslist.ets"
3826        },
3827        "end": {
3828          "line": 37,
3829          "column": 6,
3830          "program": "generic_arrayaslist.ets"
3831        }
3832      }
3833    },
3834    {
3835      "type": "ClassDeclaration",
3836      "definition": {
3837        "id": {
3838          "type": "Identifier",
3839          "name": "ArrayAsListt",
3840          "decorators": [],
3841          "loc": {
3842            "start": {
3843              "line": 37,
3844              "column": 7,
3845              "program": "generic_arrayaslist.ets"
3846            },
3847            "end": {
3848              "line": 37,
3849              "column": 19,
3850              "program": "generic_arrayaslist.ets"
3851            }
3852          }
3853        },
3854        "typeParameters": {
3855          "type": "TSTypeParameterDeclaration",
3856          "params": [
3857            {
3858              "type": "TSTypeParameter",
3859              "name": {
3860                "type": "Identifier",
3861                "name": "T",
3862                "decorators": [],
3863                "loc": {
3864                  "start": {
3865                    "line": 37,
3866                    "column": 20,
3867                    "program": "generic_arrayaslist.ets"
3868                  },
3869                  "end": {
3870                    "line": 37,
3871                    "column": 21,
3872                    "program": "generic_arrayaslist.ets"
3873                  }
3874                }
3875              },
3876              "loc": {
3877                "start": {
3878                  "line": 37,
3879                  "column": 20,
3880                  "program": "generic_arrayaslist.ets"
3881                },
3882                "end": {
3883                  "line": 37,
3884                  "column": 22,
3885                  "program": "generic_arrayaslist.ets"
3886                }
3887              }
3888            }
3889          ],
3890          "loc": {
3891            "start": {
3892              "line": 37,
3893              "column": 19,
3894              "program": "generic_arrayaslist.ets"
3895            },
3896            "end": {
3897              "line": 37,
3898              "column": 22,
3899              "program": "generic_arrayaslist.ets"
3900            }
3901          }
3902        },
3903        "superClass": null,
3904        "implements": [
3905          {
3906            "type": "TSClassImplements",
3907            "expression": {
3908              "type": "ETSTypeReference",
3909              "part": {
3910                "type": "ETSTypeReferencePart",
3911                "name": {
3912                  "type": "Identifier",
3913                  "name": "Listt",
3914                  "decorators": [],
3915                  "loc": {
3916                    "start": {
3917                      "line": 37,
3918                      "column": 34,
3919                      "program": "generic_arrayaslist.ets"
3920                    },
3921                    "end": {
3922                      "line": 37,
3923                      "column": 39,
3924                      "program": "generic_arrayaslist.ets"
3925                    }
3926                  }
3927                },
3928                "typeParams": {
3929                  "type": "TSTypeParameterInstantiation",
3930                  "params": [
3931                    {
3932                      "type": "ETSTypeReference",
3933                      "part": {
3934                        "type": "ETSTypeReferencePart",
3935                        "name": {
3936                          "type": "Identifier",
3937                          "name": "T",
3938                          "decorators": [],
3939                          "loc": {
3940                            "start": {
3941                              "line": 37,
3942                              "column": 40,
3943                              "program": "generic_arrayaslist.ets"
3944                            },
3945                            "end": {
3946                              "line": 37,
3947                              "column": 41,
3948                              "program": "generic_arrayaslist.ets"
3949                            }
3950                          }
3951                        },
3952                        "loc": {
3953                          "start": {
3954                            "line": 37,
3955                            "column": 40,
3956                            "program": "generic_arrayaslist.ets"
3957                          },
3958                          "end": {
3959                            "line": 37,
3960                            "column": 42,
3961                            "program": "generic_arrayaslist.ets"
3962                          }
3963                        }
3964                      },
3965                      "loc": {
3966                        "start": {
3967                          "line": 37,
3968                          "column": 40,
3969                          "program": "generic_arrayaslist.ets"
3970                        },
3971                        "end": {
3972                          "line": 37,
3973                          "column": 42,
3974                          "program": "generic_arrayaslist.ets"
3975                        }
3976                      }
3977                    }
3978                  ],
3979                  "loc": {
3980                    "start": {
3981                      "line": 37,
3982                      "column": 39,
3983                      "program": "generic_arrayaslist.ets"
3984                    },
3985                    "end": {
3986                      "line": 37,
3987                      "column": 42,
3988                      "program": "generic_arrayaslist.ets"
3989                    }
3990                  }
3991                },
3992                "loc": {
3993                  "start": {
3994                    "line": 37,
3995                    "column": 34,
3996                    "program": "generic_arrayaslist.ets"
3997                  },
3998                  "end": {
3999                    "line": 37,
4000                    "column": 44,
4001                    "program": "generic_arrayaslist.ets"
4002                  }
4003                }
4004              },
4005              "loc": {
4006                "start": {
4007                  "line": 37,
4008                  "column": 34,
4009                  "program": "generic_arrayaslist.ets"
4010                },
4011                "end": {
4012                  "line": 37,
4013                  "column": 44,
4014                  "program": "generic_arrayaslist.ets"
4015                }
4016              }
4017            },
4018            "loc": {
4019              "start": {
4020                "line": 37,
4021                "column": 34,
4022                "program": "generic_arrayaslist.ets"
4023              },
4024              "end": {
4025                "line": 37,
4026                "column": 44,
4027                "program": "generic_arrayaslist.ets"
4028              }
4029            }
4030          }
4031        ],
4032        "body": [
4033          {
4034            "type": "MethodDefinition",
4035            "key": {
4036              "type": "Identifier",
4037              "name": "init",
4038              "decorators": [],
4039              "loc": {
4040                "start": {
4041                  "line": 39,
4042                  "column": 13,
4043                  "program": "generic_arrayaslist.ets"
4044                },
4045                "end": {
4046                  "line": 39,
4047                  "column": 17,
4048                  "program": "generic_arrayaslist.ets"
4049                }
4050              }
4051            },
4052            "kind": "method",
4053            "accessibility": "private",
4054            "static": false,
4055            "optional": false,
4056            "computed": false,
4057            "value": {
4058              "type": "FunctionExpression",
4059              "function": {
4060                "type": "ScriptFunction",
4061                "id": {
4062                  "type": "Identifier",
4063                  "name": "init",
4064                  "decorators": [],
4065                  "loc": {
4066                    "start": {
4067                      "line": 39,
4068                      "column": 13,
4069                      "program": "generic_arrayaslist.ets"
4070                    },
4071                    "end": {
4072                      "line": 39,
4073                      "column": 17,
4074                      "program": "generic_arrayaslist.ets"
4075                    }
4076                  }
4077                },
4078                "generator": false,
4079                "async": false,
4080                "expression": false,
4081                "params": [
4082                  {
4083                    "type": "ETSParameterExpression",
4084                    "name": {
4085                      "type": "Identifier",
4086                      "name": "capacity",
4087                      "typeAnnotation": {
4088                        "type": "ETSPrimitiveType",
4089                        "loc": {
4090                          "start": {
4091                            "line": 39,
4092                            "column": 28,
4093                            "program": "generic_arrayaslist.ets"
4094                          },
4095                          "end": {
4096                            "line": 39,
4097                            "column": 31,
4098                            "program": "generic_arrayaslist.ets"
4099                          }
4100                        }
4101                      },
4102                      "decorators": [],
4103                      "loc": {
4104                        "start": {
4105                          "line": 39,
4106                          "column": 18,
4107                          "program": "generic_arrayaslist.ets"
4108                        },
4109                        "end": {
4110                          "line": 39,
4111                          "column": 31,
4112                          "program": "generic_arrayaslist.ets"
4113                        }
4114                      }
4115                    },
4116                    "loc": {
4117                      "start": {
4118                        "line": 39,
4119                        "column": 18,
4120                        "program": "generic_arrayaslist.ets"
4121                      },
4122                      "end": {
4123                        "line": 39,
4124                        "column": 31,
4125                        "program": "generic_arrayaslist.ets"
4126                      }
4127                    }
4128                  },
4129                  {
4130                    "type": "ETSParameterExpression",
4131                    "name": {
4132                      "type": "Identifier",
4133                      "name": "val",
4134                      "typeAnnotation": {
4135                        "type": "ETSUnionType",
4136                        "types": [
4137                          {
4138                            "type": "ETSTypeReference",
4139                            "part": {
4140                              "type": "ETSTypeReferencePart",
4141                              "name": {
4142                                "type": "Identifier",
4143                                "name": "T",
4144                                "decorators": [],
4145                                "loc": {
4146                                  "start": {
4147                                    "line": 39,
4148                                    "column": 38,
4149                                    "program": "generic_arrayaslist.ets"
4150                                  },
4151                                  "end": {
4152                                    "line": 39,
4153                                    "column": 39,
4154                                    "program": "generic_arrayaslist.ets"
4155                                  }
4156                                }
4157                              },
4158                              "loc": {
4159                                "start": {
4160                                  "line": 39,
4161                                  "column": 38,
4162                                  "program": "generic_arrayaslist.ets"
4163                                },
4164                                "end": {
4165                                  "line": 39,
4166                                  "column": 41,
4167                                  "program": "generic_arrayaslist.ets"
4168                                }
4169                              }
4170                            },
4171                            "loc": {
4172                              "start": {
4173                                "line": 39,
4174                                "column": 38,
4175                                "program": "generic_arrayaslist.ets"
4176                              },
4177                              "end": {
4178                                "line": 39,
4179                                "column": 41,
4180                                "program": "generic_arrayaslist.ets"
4181                              }
4182                            }
4183                          },
4184                          {
4185                            "type": "ETSNullType",
4186                            "loc": {
4187                              "start": {
4188                                "line": 39,
4189                                "column": 42,
4190                                "program": "generic_arrayaslist.ets"
4191                              },
4192                              "end": {
4193                                "line": 39,
4194                                "column": 46,
4195                                "program": "generic_arrayaslist.ets"
4196                              }
4197                            }
4198                          }
4199                        ],
4200                        "loc": {
4201                          "start": {
4202                            "line": 39,
4203                            "column": 38,
4204                            "program": "generic_arrayaslist.ets"
4205                          },
4206                          "end": {
4207                            "line": 39,
4208                            "column": 46,
4209                            "program": "generic_arrayaslist.ets"
4210                          }
4211                        }
4212                      },
4213                      "decorators": [],
4214                      "loc": {
4215                        "start": {
4216                          "line": 39,
4217                          "column": 33,
4218                          "program": "generic_arrayaslist.ets"
4219                        },
4220                        "end": {
4221                          "line": 39,
4222                          "column": 46,
4223                          "program": "generic_arrayaslist.ets"
4224                        }
4225                      }
4226                    },
4227                    "loc": {
4228                      "start": {
4229                        "line": 39,
4230                        "column": 33,
4231                        "program": "generic_arrayaslist.ets"
4232                      },
4233                      "end": {
4234                        "line": 39,
4235                        "column": 46,
4236                        "program": "generic_arrayaslist.ets"
4237                      }
4238                    }
4239                  }
4240                ],
4241                "returnType": {
4242                  "type": "ETSPrimitiveType",
4243                  "loc": {
4244                    "start": {
4245                      "line": 39,
4246                      "column": 49,
4247                      "program": "generic_arrayaslist.ets"
4248                    },
4249                    "end": {
4250                      "line": 39,
4251                      "column": 53,
4252                      "program": "generic_arrayaslist.ets"
4253                    }
4254                  }
4255                },
4256                "body": {
4257                  "type": "BlockStatement",
4258                  "statements": [
4259                    {
4260                      "type": "ExpressionStatement",
4261                      "expression": {
4262                        "type": "AssignmentExpression",
4263                        "operator": "=",
4264                        "left": {
4265                          "type": "MemberExpression",
4266                          "object": {
4267                            "type": "ThisExpression",
4268                            "loc": {
4269                              "start": {
4270                                "line": 40,
4271                                "column": 9,
4272                                "program": "generic_arrayaslist.ets"
4273                              },
4274                              "end": {
4275                                "line": 40,
4276                                "column": 13,
4277                                "program": "generic_arrayaslist.ets"
4278                              }
4279                            }
4280                          },
4281                          "property": {
4282                            "type": "Identifier",
4283                            "name": "data",
4284                            "decorators": [],
4285                            "loc": {
4286                              "start": {
4287                                "line": 40,
4288                                "column": 14,
4289                                "program": "generic_arrayaslist.ets"
4290                              },
4291                              "end": {
4292                                "line": 40,
4293                                "column": 18,
4294                                "program": "generic_arrayaslist.ets"
4295                              }
4296                            }
4297                          },
4298                          "computed": false,
4299                          "optional": false,
4300                          "loc": {
4301                            "start": {
4302                              "line": 40,
4303                              "column": 9,
4304                              "program": "generic_arrayaslist.ets"
4305                            },
4306                            "end": {
4307                              "line": 40,
4308                              "column": 18,
4309                              "program": "generic_arrayaslist.ets"
4310                            }
4311                          }
4312                        },
4313                        "right": {
4314                          "type": "ETSNewArrayInstanceExpression",
4315                          "typeReference": {
4316                            "type": "ETSUnionType",
4317                            "types": [
4318                              {
4319                                "type": "ETSTypeReference",
4320                                "part": {
4321                                  "type": "ETSTypeReferencePart",
4322                                  "name": {
4323                                    "type": "Identifier",
4324                                    "name": "T",
4325                                    "decorators": [],
4326                                    "loc": {
4327                                      "start": {
4328                                        "line": 40,
4329                                        "column": 26,
4330                                        "program": "generic_arrayaslist.ets"
4331                                      },
4332                                      "end": {
4333                                        "line": 40,
4334                                        "column": 27,
4335                                        "program": "generic_arrayaslist.ets"
4336                                      }
4337                                    }
4338                                  },
4339                                  "loc": {
4340                                    "start": {
4341                                      "line": 40,
4342                                      "column": 26,
4343                                      "program": "generic_arrayaslist.ets"
4344                                    },
4345                                    "end": {
4346                                      "line": 40,
4347                                      "column": 29,
4348                                      "program": "generic_arrayaslist.ets"
4349                                    }
4350                                  }
4351                                },
4352                                "loc": {
4353                                  "start": {
4354                                    "line": 40,
4355                                    "column": 26,
4356                                    "program": "generic_arrayaslist.ets"
4357                                  },
4358                                  "end": {
4359                                    "line": 40,
4360                                    "column": 29,
4361                                    "program": "generic_arrayaslist.ets"
4362                                  }
4363                                }
4364                              },
4365                              {
4366                                "type": "ETSUndefinedType",
4367                                "loc": {
4368                                  "start": {
4369                                    "line": 40,
4370                                    "column": 30,
4371                                    "program": "generic_arrayaslist.ets"
4372                                  },
4373                                  "end": {
4374                                    "line": 40,
4375                                    "column": 39,
4376                                    "program": "generic_arrayaslist.ets"
4377                                  }
4378                                }
4379                              }
4380                            ],
4381                            "loc": {
4382                              "start": {
4383                                "line": 40,
4384                                "column": 25,
4385                                "program": "generic_arrayaslist.ets"
4386                              },
4387                              "end": {
4388                                "line": 40,
4389                                "column": 39,
4390                                "program": "generic_arrayaslist.ets"
4391                              }
4392                            }
4393                          },
4394                          "dimension": {
4395                            "type": "Identifier",
4396                            "name": "capacity",
4397                            "decorators": [],
4398                            "loc": {
4399                              "start": {
4400                                "line": 40,
4401                                "column": 41,
4402                                "program": "generic_arrayaslist.ets"
4403                              },
4404                              "end": {
4405                                "line": 40,
4406                                "column": 49,
4407                                "program": "generic_arrayaslist.ets"
4408                              }
4409                            }
4410                          },
4411                          "loc": {
4412                            "start": {
4413                              "line": 40,
4414                              "column": 21,
4415                              "program": "generic_arrayaslist.ets"
4416                            },
4417                            "end": {
4418                              "line": 40,
4419                              "column": 50,
4420                              "program": "generic_arrayaslist.ets"
4421                            }
4422                          }
4423                        },
4424                        "loc": {
4425                          "start": {
4426                            "line": 40,
4427                            "column": 9,
4428                            "program": "generic_arrayaslist.ets"
4429                          },
4430                          "end": {
4431                            "line": 40,
4432                            "column": 50,
4433                            "program": "generic_arrayaslist.ets"
4434                          }
4435                        }
4436                      },
4437                      "loc": {
4438                        "start": {
4439                          "line": 40,
4440                          "column": 9,
4441                          "program": "generic_arrayaslist.ets"
4442                        },
4443                        "end": {
4444                          "line": 40,
4445                          "column": 51,
4446                          "program": "generic_arrayaslist.ets"
4447                        }
4448                      }
4449                    },
4450                    {
4451                      "type": "ForUpdateStatement",
4452                      "init": {
4453                        "type": "VariableDeclaration",
4454                        "declarations": [
4455                          {
4456                            "type": "VariableDeclarator",
4457                            "id": {
4458                              "type": "Identifier",
4459                              "name": "i",
4460                              "decorators": [],
4461                              "loc": {
4462                                "start": {
4463                                  "line": 41,
4464                                  "column": 18,
4465                                  "program": "generic_arrayaslist.ets"
4466                                },
4467                                "end": {
4468                                  "line": 41,
4469                                  "column": 19,
4470                                  "program": "generic_arrayaslist.ets"
4471                                }
4472                              }
4473                            },
4474                            "init": {
4475                              "type": "NumberLiteral",
4476                              "value": 0,
4477                              "loc": {
4478                                "start": {
4479                                  "line": 41,
4480                                  "column": 22,
4481                                  "program": "generic_arrayaslist.ets"
4482                                },
4483                                "end": {
4484                                  "line": 41,
4485                                  "column": 23,
4486                                  "program": "generic_arrayaslist.ets"
4487                                }
4488                              }
4489                            },
4490                            "loc": {
4491                              "start": {
4492                                "line": 41,
4493                                "column": 18,
4494                                "program": "generic_arrayaslist.ets"
4495                              },
4496                              "end": {
4497                                "line": 41,
4498                                "column": 23,
4499                                "program": "generic_arrayaslist.ets"
4500                              }
4501                            }
4502                          }
4503                        ],
4504                        "kind": "let",
4505                        "loc": {
4506                          "start": {
4507                            "line": 41,
4508                            "column": 14,
4509                            "program": "generic_arrayaslist.ets"
4510                          },
4511                          "end": {
4512                            "line": 41,
4513                            "column": 23,
4514                            "program": "generic_arrayaslist.ets"
4515                          }
4516                        }
4517                      },
4518                      "test": {
4519                        "type": "BinaryExpression",
4520                        "operator": "<",
4521                        "left": {
4522                          "type": "Identifier",
4523                          "name": "i",
4524                          "decorators": [],
4525                          "loc": {
4526                            "start": {
4527                              "line": 41,
4528                              "column": 25,
4529                              "program": "generic_arrayaslist.ets"
4530                            },
4531                            "end": {
4532                              "line": 41,
4533                              "column": 26,
4534                              "program": "generic_arrayaslist.ets"
4535                            }
4536                          }
4537                        },
4538                        "right": {
4539                          "type": "MemberExpression",
4540                          "object": {
4541                            "type": "MemberExpression",
4542                            "object": {
4543                              "type": "ThisExpression",
4544                              "loc": {
4545                                "start": {
4546                                  "line": 41,
4547                                  "column": 29,
4548                                  "program": "generic_arrayaslist.ets"
4549                                },
4550                                "end": {
4551                                  "line": 41,
4552                                  "column": 33,
4553                                  "program": "generic_arrayaslist.ets"
4554                                }
4555                              }
4556                            },
4557                            "property": {
4558                              "type": "Identifier",
4559                              "name": "data",
4560                              "decorators": [],
4561                              "loc": {
4562                                "start": {
4563                                  "line": 41,
4564                                  "column": 34,
4565                                  "program": "generic_arrayaslist.ets"
4566                                },
4567                                "end": {
4568                                  "line": 41,
4569                                  "column": 38,
4570                                  "program": "generic_arrayaslist.ets"
4571                                }
4572                              }
4573                            },
4574                            "computed": false,
4575                            "optional": false,
4576                            "loc": {
4577                              "start": {
4578                                "line": 41,
4579                                "column": 29,
4580                                "program": "generic_arrayaslist.ets"
4581                              },
4582                              "end": {
4583                                "line": 41,
4584                                "column": 38,
4585                                "program": "generic_arrayaslist.ets"
4586                              }
4587                            }
4588                          },
4589                          "property": {
4590                            "type": "Identifier",
4591                            "name": "length",
4592                            "decorators": [],
4593                            "loc": {
4594                              "start": {
4595                                "line": 41,
4596                                "column": 39,
4597                                "program": "generic_arrayaslist.ets"
4598                              },
4599                              "end": {
4600                                "line": 41,
4601                                "column": 45,
4602                                "program": "generic_arrayaslist.ets"
4603                              }
4604                            }
4605                          },
4606                          "computed": false,
4607                          "optional": false,
4608                          "loc": {
4609                            "start": {
4610                              "line": 41,
4611                              "column": 29,
4612                              "program": "generic_arrayaslist.ets"
4613                            },
4614                            "end": {
4615                              "line": 41,
4616                              "column": 45,
4617                              "program": "generic_arrayaslist.ets"
4618                            }
4619                          }
4620                        },
4621                        "loc": {
4622                          "start": {
4623                            "line": 41,
4624                            "column": 25,
4625                            "program": "generic_arrayaslist.ets"
4626                          },
4627                          "end": {
4628                            "line": 41,
4629                            "column": 45,
4630                            "program": "generic_arrayaslist.ets"
4631                          }
4632                        }
4633                      },
4634                      "update": {
4635                        "type": "UpdateExpression",
4636                        "operator": "++",
4637                        "prefix": true,
4638                        "argument": {
4639                          "type": "Identifier",
4640                          "name": "i",
4641                          "decorators": [],
4642                          "loc": {
4643                            "start": {
4644                              "line": 41,
4645                              "column": 49,
4646                              "program": "generic_arrayaslist.ets"
4647                            },
4648                            "end": {
4649                              "line": 41,
4650                              "column": 50,
4651                              "program": "generic_arrayaslist.ets"
4652                            }
4653                          }
4654                        },
4655                        "loc": {
4656                          "start": {
4657                            "line": 41,
4658                            "column": 47,
4659                            "program": "generic_arrayaslist.ets"
4660                          },
4661                          "end": {
4662                            "line": 41,
4663                            "column": 50,
4664                            "program": "generic_arrayaslist.ets"
4665                          }
4666                        }
4667                      },
4668                      "body": {
4669                        "type": "BlockStatement",
4670                        "statements": [],
4671                        "loc": {
4672                          "start": {
4673                            "line": 41,
4674                            "column": 52,
4675                            "program": "generic_arrayaslist.ets"
4676                          },
4677                          "end": {
4678                            "line": 42,
4679                            "column": 10,
4680                            "program": "generic_arrayaslist.ets"
4681                          }
4682                        }
4683                      },
4684                      "loc": {
4685                        "start": {
4686                          "line": 41,
4687                          "column": 9,
4688                          "program": "generic_arrayaslist.ets"
4689                        },
4690                        "end": {
4691                          "line": 42,
4692                          "column": 10,
4693                          "program": "generic_arrayaslist.ets"
4694                        }
4695                      }
4696                    },
4697                    {
4698                      "type": "ExpressionStatement",
4699                      "expression": {
4700                        "type": "AssignmentExpression",
4701                        "operator": "=",
4702                        "left": {
4703                          "type": "MemberExpression",
4704                          "object": {
4705                            "type": "ThisExpression",
4706                            "loc": {
4707                              "start": {
4708                                "line": 43,
4709                                "column": 9,
4710                                "program": "generic_arrayaslist.ets"
4711                              },
4712                              "end": {
4713                                "line": 43,
4714                                "column": 13,
4715                                "program": "generic_arrayaslist.ets"
4716                              }
4717                            }
4718                          },
4719                          "property": {
4720                            "type": "Identifier",
4721                            "name": "curSize",
4722                            "decorators": [],
4723                            "loc": {
4724                              "start": {
4725                                "line": 43,
4726                                "column": 14,
4727                                "program": "generic_arrayaslist.ets"
4728                              },
4729                              "end": {
4730                                "line": 43,
4731                                "column": 21,
4732                                "program": "generic_arrayaslist.ets"
4733                              }
4734                            }
4735                          },
4736                          "computed": false,
4737                          "optional": false,
4738                          "loc": {
4739                            "start": {
4740                              "line": 43,
4741                              "column": 9,
4742                              "program": "generic_arrayaslist.ets"
4743                            },
4744                            "end": {
4745                              "line": 43,
4746                              "column": 21,
4747                              "program": "generic_arrayaslist.ets"
4748                            }
4749                          }
4750                        },
4751                        "right": {
4752                          "type": "Identifier",
4753                          "name": "capacity",
4754                          "decorators": [],
4755                          "loc": {
4756                            "start": {
4757                              "line": 43,
4758                              "column": 24,
4759                              "program": "generic_arrayaslist.ets"
4760                            },
4761                            "end": {
4762                              "line": 43,
4763                              "column": 32,
4764                              "program": "generic_arrayaslist.ets"
4765                            }
4766                          }
4767                        },
4768                        "loc": {
4769                          "start": {
4770                            "line": 43,
4771                            "column": 9,
4772                            "program": "generic_arrayaslist.ets"
4773                          },
4774                          "end": {
4775                            "line": 43,
4776                            "column": 32,
4777                            "program": "generic_arrayaslist.ets"
4778                          }
4779                        }
4780                      },
4781                      "loc": {
4782                        "start": {
4783                          "line": 43,
4784                          "column": 9,
4785                          "program": "generic_arrayaslist.ets"
4786                        },
4787                        "end": {
4788                          "line": 43,
4789                          "column": 33,
4790                          "program": "generic_arrayaslist.ets"
4791                        }
4792                      }
4793                    }
4794                  ],
4795                  "loc": {
4796                    "start": {
4797                      "line": 39,
4798                      "column": 54,
4799                      "program": "generic_arrayaslist.ets"
4800                    },
4801                    "end": {
4802                      "line": 44,
4803                      "column": 6,
4804                      "program": "generic_arrayaslist.ets"
4805                    }
4806                  }
4807                },
4808                "loc": {
4809                  "start": {
4810                    "line": 39,
4811                    "column": 17,
4812                    "program": "generic_arrayaslist.ets"
4813                  },
4814                  "end": {
4815                    "line": 44,
4816                    "column": 6,
4817                    "program": "generic_arrayaslist.ets"
4818                  }
4819                }
4820              },
4821              "loc": {
4822                "start": {
4823                  "line": 39,
4824                  "column": 17,
4825                  "program": "generic_arrayaslist.ets"
4826                },
4827                "end": {
4828                  "line": 44,
4829                  "column": 6,
4830                  "program": "generic_arrayaslist.ets"
4831                }
4832              }
4833            },
4834            "overloads": [],
4835            "decorators": [],
4836            "loc": {
4837              "start": {
4838                "line": 39,
4839                "column": 5,
4840                "program": "generic_arrayaslist.ets"
4841              },
4842              "end": {
4843                "line": 44,
4844                "column": 6,
4845                "program": "generic_arrayaslist.ets"
4846              }
4847            }
4848          },
4849          {
4850            "type": "MethodDefinition",
4851            "key": {
4852              "type": "Identifier",
4853              "name": "constructor",
4854              "decorators": [],
4855              "loc": {
4856                "start": {
4857                  "line": 1,
4858                  "column": 1,
4859                  "program": null
4860                },
4861                "end": {
4862                  "line": 1,
4863                  "column": 1,
4864                  "program": null
4865                }
4866              }
4867            },
4868            "kind": "constructor",
4869            "accessibility": "public",
4870            "static": false,
4871            "optional": false,
4872            "computed": false,
4873            "value": {
4874              "type": "FunctionExpression",
4875              "function": {
4876                "type": "ScriptFunction",
4877                "id": {
4878                  "type": "Identifier",
4879                  "name": "constructor",
4880                  "decorators": [],
4881                  "loc": {
4882                    "start": {
4883                      "line": 1,
4884                      "column": 1,
4885                      "program": null
4886                    },
4887                    "end": {
4888                      "line": 1,
4889                      "column": 1,
4890                      "program": null
4891                    }
4892                  }
4893                },
4894                "generator": false,
4895                "async": false,
4896                "expression": false,
4897                "params": [
4898                  {
4899                    "type": "ETSParameterExpression",
4900                    "name": {
4901                      "type": "Identifier",
4902                      "name": "capacity",
4903                      "typeAnnotation": {
4904                        "type": "ETSPrimitiveType",
4905                        "loc": {
4906                          "start": {
4907                            "line": 46,
4908                            "column": 27,
4909                            "program": "generic_arrayaslist.ets"
4910                          },
4911                          "end": {
4912                            "line": 46,
4913                            "column": 30,
4914                            "program": "generic_arrayaslist.ets"
4915                          }
4916                        }
4917                      },
4918                      "decorators": [],
4919                      "loc": {
4920                        "start": {
4921                          "line": 46,
4922                          "column": 17,
4923                          "program": "generic_arrayaslist.ets"
4924                        },
4925                        "end": {
4926                          "line": 46,
4927                          "column": 30,
4928                          "program": "generic_arrayaslist.ets"
4929                        }
4930                      }
4931                    },
4932                    "loc": {
4933                      "start": {
4934                        "line": 46,
4935                        "column": 17,
4936                        "program": "generic_arrayaslist.ets"
4937                      },
4938                      "end": {
4939                        "line": 46,
4940                        "column": 30,
4941                        "program": "generic_arrayaslist.ets"
4942                      }
4943                    }
4944                  },
4945                  {
4946                    "type": "ETSParameterExpression",
4947                    "name": {
4948                      "type": "Identifier",
4949                      "name": "val",
4950                      "typeAnnotation": {
4951                        "type": "ETSTypeReference",
4952                        "part": {
4953                          "type": "ETSTypeReferencePart",
4954                          "name": {
4955                            "type": "Identifier",
4956                            "name": "T",
4957                            "decorators": [],
4958                            "loc": {
4959                              "start": {
4960                                "line": 46,
4961                                "column": 37,
4962                                "program": "generic_arrayaslist.ets"
4963                              },
4964                              "end": {
4965                                "line": 46,
4966                                "column": 38,
4967                                "program": "generic_arrayaslist.ets"
4968                              }
4969                            }
4970                          },
4971                          "loc": {
4972                            "start": {
4973                              "line": 46,
4974                              "column": 37,
4975                              "program": "generic_arrayaslist.ets"
4976                            },
4977                            "end": {
4978                              "line": 46,
4979                              "column": 39,
4980                              "program": "generic_arrayaslist.ets"
4981                            }
4982                          }
4983                        },
4984                        "loc": {
4985                          "start": {
4986                            "line": 46,
4987                            "column": 37,
4988                            "program": "generic_arrayaslist.ets"
4989                          },
4990                          "end": {
4991                            "line": 46,
4992                            "column": 39,
4993                            "program": "generic_arrayaslist.ets"
4994                          }
4995                        }
4996                      },
4997                      "decorators": [],
4998                      "loc": {
4999                        "start": {
5000                          "line": 46,
5001                          "column": 32,
5002                          "program": "generic_arrayaslist.ets"
5003                        },
5004                        "end": {
5005                          "line": 46,
5006                          "column": 39,
5007                          "program": "generic_arrayaslist.ets"
5008                        }
5009                      }
5010                    },
5011                    "loc": {
5012                      "start": {
5013                        "line": 46,
5014                        "column": 32,
5015                        "program": "generic_arrayaslist.ets"
5016                      },
5017                      "end": {
5018                        "line": 46,
5019                        "column": 39,
5020                        "program": "generic_arrayaslist.ets"
5021                      }
5022                    }
5023                  }
5024                ],
5025                "body": {
5026                  "type": "BlockStatement",
5027                  "statements": [
5028                    {
5029                      "type": "ExpressionStatement",
5030                      "expression": {
5031                        "type": "CallExpression",
5032                        "callee": {
5033                          "type": "MemberExpression",
5034                          "object": {
5035                            "type": "ThisExpression",
5036                            "loc": {
5037                              "start": {
5038                                "line": 47,
5039                                "column": 9,
5040                                "program": "generic_arrayaslist.ets"
5041                              },
5042                              "end": {
5043                                "line": 47,
5044                                "column": 13,
5045                                "program": "generic_arrayaslist.ets"
5046                              }
5047                            }
5048                          },
5049                          "property": {
5050                            "type": "Identifier",
5051                            "name": "init",
5052                            "decorators": [],
5053                            "loc": {
5054                              "start": {
5055                                "line": 47,
5056                                "column": 14,
5057                                "program": "generic_arrayaslist.ets"
5058                              },
5059                              "end": {
5060                                "line": 47,
5061                                "column": 18,
5062                                "program": "generic_arrayaslist.ets"
5063                              }
5064                            }
5065                          },
5066                          "computed": false,
5067                          "optional": false,
5068                          "loc": {
5069                            "start": {
5070                              "line": 47,
5071                              "column": 9,
5072                              "program": "generic_arrayaslist.ets"
5073                            },
5074                            "end": {
5075                              "line": 47,
5076                              "column": 18,
5077                              "program": "generic_arrayaslist.ets"
5078                            }
5079                          }
5080                        },
5081                        "arguments": [
5082                          {
5083                            "type": "Identifier",
5084                            "name": "capacity",
5085                            "decorators": [],
5086                            "loc": {
5087                              "start": {
5088                                "line": 47,
5089                                "column": 19,
5090                                "program": "generic_arrayaslist.ets"
5091                              },
5092                              "end": {
5093                                "line": 47,
5094                                "column": 27,
5095                                "program": "generic_arrayaslist.ets"
5096                              }
5097                            }
5098                          },
5099                          {
5100                            "type": "Identifier",
5101                            "name": "val",
5102                            "decorators": [],
5103                            "loc": {
5104                              "start": {
5105                                "line": 47,
5106                                "column": 29,
5107                                "program": "generic_arrayaslist.ets"
5108                              },
5109                              "end": {
5110                                "line": 47,
5111                                "column": 32,
5112                                "program": "generic_arrayaslist.ets"
5113                              }
5114                            }
5115                          }
5116                        ],
5117                        "optional": false,
5118                        "loc": {
5119                          "start": {
5120                            "line": 47,
5121                            "column": 9,
5122                            "program": "generic_arrayaslist.ets"
5123                          },
5124                          "end": {
5125                            "line": 47,
5126                            "column": 33,
5127                            "program": "generic_arrayaslist.ets"
5128                          }
5129                        }
5130                      },
5131                      "loc": {
5132                        "start": {
5133                          "line": 47,
5134                          "column": 9,
5135                          "program": "generic_arrayaslist.ets"
5136                        },
5137                        "end": {
5138                          "line": 47,
5139                          "column": 34,
5140                          "program": "generic_arrayaslist.ets"
5141                        }
5142                      }
5143                    }
5144                  ],
5145                  "loc": {
5146                    "start": {
5147                      "line": 46,
5148                      "column": 40,
5149                      "program": "generic_arrayaslist.ets"
5150                    },
5151                    "end": {
5152                      "line": 48,
5153                      "column": 6,
5154                      "program": "generic_arrayaslist.ets"
5155                    }
5156                  }
5157                },
5158                "loc": {
5159                  "start": {
5160                    "line": 46,
5161                    "column": 16,
5162                    "program": "generic_arrayaslist.ets"
5163                  },
5164                  "end": {
5165                    "line": 48,
5166                    "column": 6,
5167                    "program": "generic_arrayaslist.ets"
5168                  }
5169                }
5170              },
5171              "loc": {
5172                "start": {
5173                  "line": 46,
5174                  "column": 16,
5175                  "program": "generic_arrayaslist.ets"
5176                },
5177                "end": {
5178                  "line": 48,
5179                  "column": 6,
5180                  "program": "generic_arrayaslist.ets"
5181                }
5182              }
5183            },
5184            "overloads": [
5185              {
5186                "type": "MethodDefinition",
5187                "key": {
5188                  "type": "Identifier",
5189                  "name": "constructor",
5190                  "decorators": [],
5191                  "loc": {
5192                    "start": {
5193                      "line": 1,
5194                      "column": 1,
5195                      "program": null
5196                    },
5197                    "end": {
5198                      "line": 1,
5199                      "column": 1,
5200                      "program": null
5201                    }
5202                  }
5203                },
5204                "kind": "constructor",
5205                "accessibility": "public",
5206                "static": false,
5207                "optional": false,
5208                "computed": false,
5209                "value": {
5210                  "type": "FunctionExpression",
5211                  "function": {
5212                    "type": "ScriptFunction",
5213                    "id": {
5214                      "type": "Identifier",
5215                      "name": "constructor",
5216                      "decorators": [],
5217                      "loc": {
5218                        "start": {
5219                          "line": 1,
5220                          "column": 1,
5221                          "program": null
5222                        },
5223                        "end": {
5224                          "line": 1,
5225                          "column": 1,
5226                          "program": null
5227                        }
5228                      }
5229                    },
5230                    "generator": false,
5231                    "async": false,
5232                    "expression": false,
5233                    "params": [],
5234                    "body": {
5235                      "type": "BlockStatement",
5236                      "statements": [
5237                        {
5238                          "type": "ExpressionStatement",
5239                          "expression": {
5240                            "type": "CallExpression",
5241                            "callee": {
5242                              "type": "MemberExpression",
5243                              "object": {
5244                                "type": "ThisExpression",
5245                                "loc": {
5246                                  "start": {
5247                                    "line": 51,
5248                                    "column": 9,
5249                                    "program": "generic_arrayaslist.ets"
5250                                  },
5251                                  "end": {
5252                                    "line": 51,
5253                                    "column": 13,
5254                                    "program": "generic_arrayaslist.ets"
5255                                  }
5256                                }
5257                              },
5258                              "property": {
5259                                "type": "Identifier",
5260                                "name": "init",
5261                                "decorators": [],
5262                                "loc": {
5263                                  "start": {
5264                                    "line": 51,
5265                                    "column": 14,
5266                                    "program": "generic_arrayaslist.ets"
5267                                  },
5268                                  "end": {
5269                                    "line": 51,
5270                                    "column": 18,
5271                                    "program": "generic_arrayaslist.ets"
5272                                  }
5273                                }
5274                              },
5275                              "computed": false,
5276                              "optional": false,
5277                              "loc": {
5278                                "start": {
5279                                  "line": 51,
5280                                  "column": 9,
5281                                  "program": "generic_arrayaslist.ets"
5282                                },
5283                                "end": {
5284                                  "line": 51,
5285                                  "column": 18,
5286                                  "program": "generic_arrayaslist.ets"
5287                                }
5288                              }
5289                            },
5290                            "arguments": [
5291                              {
5292                                "type": "NumberLiteral",
5293                                "value": 0,
5294                                "loc": {
5295                                  "start": {
5296                                    "line": 51,
5297                                    "column": 19,
5298                                    "program": "generic_arrayaslist.ets"
5299                                  },
5300                                  "end": {
5301                                    "line": 51,
5302                                    "column": 20,
5303                                    "program": "generic_arrayaslist.ets"
5304                                  }
5305                                }
5306                              },
5307                              {
5308                                "type": "NullLiteral",
5309                                "value": null,
5310                                "loc": {
5311                                  "start": {
5312                                    "line": 51,
5313                                    "column": 22,
5314                                    "program": "generic_arrayaslist.ets"
5315                                  },
5316                                  "end": {
5317                                    "line": 51,
5318                                    "column": 26,
5319                                    "program": "generic_arrayaslist.ets"
5320                                  }
5321                                }
5322                              }
5323                            ],
5324                            "optional": false,
5325                            "loc": {
5326                              "start": {
5327                                "line": 51,
5328                                "column": 9,
5329                                "program": "generic_arrayaslist.ets"
5330                              },
5331                              "end": {
5332                                "line": 51,
5333                                "column": 27,
5334                                "program": "generic_arrayaslist.ets"
5335                              }
5336                            }
5337                          },
5338                          "loc": {
5339                            "start": {
5340                              "line": 51,
5341                              "column": 9,
5342                              "program": "generic_arrayaslist.ets"
5343                            },
5344                            "end": {
5345                              "line": 51,
5346                              "column": 28,
5347                              "program": "generic_arrayaslist.ets"
5348                            }
5349                          }
5350                        }
5351                      ],
5352                      "loc": {
5353                        "start": {
5354                          "line": 50,
5355                          "column": 19,
5356                          "program": "generic_arrayaslist.ets"
5357                        },
5358                        "end": {
5359                          "line": 52,
5360                          "column": 6,
5361                          "program": "generic_arrayaslist.ets"
5362                        }
5363                      }
5364                    },
5365                    "loc": {
5366                      "start": {
5367                        "line": 50,
5368                        "column": 16,
5369                        "program": "generic_arrayaslist.ets"
5370                      },
5371                      "end": {
5372                        "line": 52,
5373                        "column": 6,
5374                        "program": "generic_arrayaslist.ets"
5375                      }
5376                    }
5377                  },
5378                  "loc": {
5379                    "start": {
5380                      "line": 50,
5381                      "column": 16,
5382                      "program": "generic_arrayaslist.ets"
5383                    },
5384                    "end": {
5385                      "line": 52,
5386                      "column": 6,
5387                      "program": "generic_arrayaslist.ets"
5388                    }
5389                  }
5390                },
5391                "overloads": [],
5392                "decorators": [],
5393                "loc": {
5394                  "start": {
5395                    "line": 50,
5396                    "column": 5,
5397                    "program": "generic_arrayaslist.ets"
5398                  },
5399                  "end": {
5400                    "line": 52,
5401                    "column": 6,
5402                    "program": "generic_arrayaslist.ets"
5403                  }
5404                }
5405              },
5406              {
5407                "type": "MethodDefinition",
5408                "key": {
5409                  "type": "Identifier",
5410                  "name": "constructor",
5411                  "decorators": [],
5412                  "loc": {
5413                    "start": {
5414                      "line": 1,
5415                      "column": 1,
5416                      "program": null
5417                    },
5418                    "end": {
5419                      "line": 1,
5420                      "column": 1,
5421                      "program": null
5422                    }
5423                  }
5424                },
5425                "kind": "constructor",
5426                "accessibility": "public",
5427                "static": false,
5428                "optional": false,
5429                "computed": false,
5430                "value": {
5431                  "type": "FunctionExpression",
5432                  "function": {
5433                    "type": "ScriptFunction",
5434                    "id": {
5435                      "type": "Identifier",
5436                      "name": "constructor",
5437                      "decorators": [],
5438                      "loc": {
5439                        "start": {
5440                          "line": 1,
5441                          "column": 1,
5442                          "program": null
5443                        },
5444                        "end": {
5445                          "line": 1,
5446                          "column": 1,
5447                          "program": null
5448                        }
5449                      }
5450                    },
5451                    "generator": false,
5452                    "async": false,
5453                    "expression": false,
5454                    "params": [
5455                      {
5456                        "type": "ETSParameterExpression",
5457                        "name": {
5458                          "type": "Identifier",
5459                          "name": "capacity",
5460                          "typeAnnotation": {
5461                            "type": "ETSPrimitiveType",
5462                            "loc": {
5463                              "start": {
5464                                "line": 54,
5465                                "column": 27,
5466                                "program": "generic_arrayaslist.ets"
5467                              },
5468                              "end": {
5469                                "line": 54,
5470                                "column": 30,
5471                                "program": "generic_arrayaslist.ets"
5472                              }
5473                            }
5474                          },
5475                          "decorators": [],
5476                          "loc": {
5477                            "start": {
5478                              "line": 54,
5479                              "column": 17,
5480                              "program": "generic_arrayaslist.ets"
5481                            },
5482                            "end": {
5483                              "line": 54,
5484                              "column": 30,
5485                              "program": "generic_arrayaslist.ets"
5486                            }
5487                          }
5488                        },
5489                        "loc": {
5490                          "start": {
5491                            "line": 54,
5492                            "column": 17,
5493                            "program": "generic_arrayaslist.ets"
5494                          },
5495                          "end": {
5496                            "line": 54,
5497                            "column": 30,
5498                            "program": "generic_arrayaslist.ets"
5499                          }
5500                        }
5501                      }
5502                    ],
5503                    "body": {
5504                      "type": "BlockStatement",
5505                      "statements": [
5506                        {
5507                          "type": "ExpressionStatement",
5508                          "expression": {
5509                            "type": "CallExpression",
5510                            "callee": {
5511                              "type": "MemberExpression",
5512                              "object": {
5513                                "type": "ThisExpression",
5514                                "loc": {
5515                                  "start": {
5516                                    "line": 55,
5517                                    "column": 9,
5518                                    "program": "generic_arrayaslist.ets"
5519                                  },
5520                                  "end": {
5521                                    "line": 55,
5522                                    "column": 13,
5523                                    "program": "generic_arrayaslist.ets"
5524                                  }
5525                                }
5526                              },
5527                              "property": {
5528                                "type": "Identifier",
5529                                "name": "init",
5530                                "decorators": [],
5531                                "loc": {
5532                                  "start": {
5533                                    "line": 55,
5534                                    "column": 14,
5535                                    "program": "generic_arrayaslist.ets"
5536                                  },
5537                                  "end": {
5538                                    "line": 55,
5539                                    "column": 18,
5540                                    "program": "generic_arrayaslist.ets"
5541                                  }
5542                                }
5543                              },
5544                              "computed": false,
5545                              "optional": false,
5546                              "loc": {
5547                                "start": {
5548                                  "line": 55,
5549                                  "column": 9,
5550                                  "program": "generic_arrayaslist.ets"
5551                                },
5552                                "end": {
5553                                  "line": 55,
5554                                  "column": 18,
5555                                  "program": "generic_arrayaslist.ets"
5556                                }
5557                              }
5558                            },
5559                            "arguments": [
5560                              {
5561                                "type": "Identifier",
5562                                "name": "capacity",
5563                                "decorators": [],
5564                                "loc": {
5565                                  "start": {
5566                                    "line": 55,
5567                                    "column": 19,
5568                                    "program": "generic_arrayaslist.ets"
5569                                  },
5570                                  "end": {
5571                                    "line": 55,
5572                                    "column": 27,
5573                                    "program": "generic_arrayaslist.ets"
5574                                  }
5575                                }
5576                              },
5577                              {
5578                                "type": "NullLiteral",
5579                                "value": null,
5580                                "loc": {
5581                                  "start": {
5582                                    "line": 55,
5583                                    "column": 29,
5584                                    "program": "generic_arrayaslist.ets"
5585                                  },
5586                                  "end": {
5587                                    "line": 55,
5588                                    "column": 33,
5589                                    "program": "generic_arrayaslist.ets"
5590                                  }
5591                                }
5592                              }
5593                            ],
5594                            "optional": false,
5595                            "loc": {
5596                              "start": {
5597                                "line": 55,
5598                                "column": 9,
5599                                "program": "generic_arrayaslist.ets"
5600                              },
5601                              "end": {
5602                                "line": 55,
5603                                "column": 34,
5604                                "program": "generic_arrayaslist.ets"
5605                              }
5606                            }
5607                          },
5608                          "loc": {
5609                            "start": {
5610                              "line": 55,
5611                              "column": 9,
5612                              "program": "generic_arrayaslist.ets"
5613                            },
5614                            "end": {
5615                              "line": 55,
5616                              "column": 35,
5617                              "program": "generic_arrayaslist.ets"
5618                            }
5619                          }
5620                        }
5621                      ],
5622                      "loc": {
5623                        "start": {
5624                          "line": 54,
5625                          "column": 32,
5626                          "program": "generic_arrayaslist.ets"
5627                        },
5628                        "end": {
5629                          "line": 56,
5630                          "column": 6,
5631                          "program": "generic_arrayaslist.ets"
5632                        }
5633                      }
5634                    },
5635                    "loc": {
5636                      "start": {
5637                        "line": 54,
5638                        "column": 16,
5639                        "program": "generic_arrayaslist.ets"
5640                      },
5641                      "end": {
5642                        "line": 56,
5643                        "column": 6,
5644                        "program": "generic_arrayaslist.ets"
5645                      }
5646                    }
5647                  },
5648                  "loc": {
5649                    "start": {
5650                      "line": 54,
5651                      "column": 16,
5652                      "program": "generic_arrayaslist.ets"
5653                    },
5654                    "end": {
5655                      "line": 56,
5656                      "column": 6,
5657                      "program": "generic_arrayaslist.ets"
5658                    }
5659                  }
5660                },
5661                "overloads": [],
5662                "decorators": [],
5663                "loc": {
5664                  "start": {
5665                    "line": 54,
5666                    "column": 5,
5667                    "program": "generic_arrayaslist.ets"
5668                  },
5669                  "end": {
5670                    "line": 56,
5671                    "column": 6,
5672                    "program": "generic_arrayaslist.ets"
5673                  }
5674                }
5675              }
5676            ],
5677            "decorators": [],
5678            "loc": {
5679              "start": {
5680                "line": 46,
5681                "column": 5,
5682                "program": "generic_arrayaslist.ets"
5683              },
5684              "end": {
5685                "line": 48,
5686                "column": 6,
5687                "program": "generic_arrayaslist.ets"
5688              }
5689            }
5690          },
5691          {
5692            "type": "MethodDefinition",
5693            "key": {
5694              "type": "Identifier",
5695              "name": "reserve",
5696              "decorators": [],
5697              "loc": {
5698                "start": {
5699                  "line": 58,
5700                  "column": 12,
5701                  "program": "generic_arrayaslist.ets"
5702                },
5703                "end": {
5704                  "line": 58,
5705                  "column": 19,
5706                  "program": "generic_arrayaslist.ets"
5707                }
5708              }
5709            },
5710            "kind": "method",
5711            "accessibility": "public",
5712            "static": false,
5713            "optional": false,
5714            "computed": false,
5715            "value": {
5716              "type": "FunctionExpression",
5717              "function": {
5718                "type": "ScriptFunction",
5719                "id": {
5720                  "type": "Identifier",
5721                  "name": "reserve",
5722                  "decorators": [],
5723                  "loc": {
5724                    "start": {
5725                      "line": 58,
5726                      "column": 12,
5727                      "program": "generic_arrayaslist.ets"
5728                    },
5729                    "end": {
5730                      "line": 58,
5731                      "column": 19,
5732                      "program": "generic_arrayaslist.ets"
5733                    }
5734                  }
5735                },
5736                "generator": false,
5737                "async": false,
5738                "expression": false,
5739                "params": [
5740                  {
5741                    "type": "ETSParameterExpression",
5742                    "name": {
5743                      "type": "Identifier",
5744                      "name": "capacity",
5745                      "typeAnnotation": {
5746                        "type": "ETSPrimitiveType",
5747                        "loc": {
5748                          "start": {
5749                            "line": 58,
5750                            "column": 30,
5751                            "program": "generic_arrayaslist.ets"
5752                          },
5753                          "end": {
5754                            "line": 58,
5755                            "column": 33,
5756                            "program": "generic_arrayaslist.ets"
5757                          }
5758                        }
5759                      },
5760                      "decorators": [],
5761                      "loc": {
5762                        "start": {
5763                          "line": 58,
5764                          "column": 20,
5765                          "program": "generic_arrayaslist.ets"
5766                        },
5767                        "end": {
5768                          "line": 58,
5769                          "column": 33,
5770                          "program": "generic_arrayaslist.ets"
5771                        }
5772                      }
5773                    },
5774                    "loc": {
5775                      "start": {
5776                        "line": 58,
5777                        "column": 20,
5778                        "program": "generic_arrayaslist.ets"
5779                      },
5780                      "end": {
5781                        "line": 58,
5782                        "column": 33,
5783                        "program": "generic_arrayaslist.ets"
5784                      }
5785                    }
5786                  }
5787                ],
5788                "returnType": {
5789                  "type": "ETSPrimitiveType",
5790                  "loc": {
5791                    "start": {
5792                      "line": 58,
5793                      "column": 36,
5794                      "program": "generic_arrayaslist.ets"
5795                    },
5796                    "end": {
5797                      "line": 58,
5798                      "column": 40,
5799                      "program": "generic_arrayaslist.ets"
5800                    }
5801                  }
5802                },
5803                "body": {
5804                  "type": "BlockStatement",
5805                  "statements": [
5806                    {
5807                      "type": "IfStatement",
5808                      "test": {
5809                        "type": "BinaryExpression",
5810                        "operator": "<",
5811                        "left": {
5812                          "type": "MemberExpression",
5813                          "object": {
5814                            "type": "MemberExpression",
5815                            "object": {
5816                              "type": "ThisExpression",
5817                              "loc": {
5818                                "start": {
5819                                  "line": 59,
5820                                  "column": 13,
5821                                  "program": "generic_arrayaslist.ets"
5822                                },
5823                                "end": {
5824                                  "line": 59,
5825                                  "column": 17,
5826                                  "program": "generic_arrayaslist.ets"
5827                                }
5828                              }
5829                            },
5830                            "property": {
5831                              "type": "Identifier",
5832                              "name": "data",
5833                              "decorators": [],
5834                              "loc": {
5835                                "start": {
5836                                  "line": 59,
5837                                  "column": 18,
5838                                  "program": "generic_arrayaslist.ets"
5839                                },
5840                                "end": {
5841                                  "line": 59,
5842                                  "column": 22,
5843                                  "program": "generic_arrayaslist.ets"
5844                                }
5845                              }
5846                            },
5847                            "computed": false,
5848                            "optional": false,
5849                            "loc": {
5850                              "start": {
5851                                "line": 59,
5852                                "column": 13,
5853                                "program": "generic_arrayaslist.ets"
5854                              },
5855                              "end": {
5856                                "line": 59,
5857                                "column": 22,
5858                                "program": "generic_arrayaslist.ets"
5859                              }
5860                            }
5861                          },
5862                          "property": {
5863                            "type": "Identifier",
5864                            "name": "length",
5865                            "decorators": [],
5866                            "loc": {
5867                              "start": {
5868                                "line": 59,
5869                                "column": 23,
5870                                "program": "generic_arrayaslist.ets"
5871                              },
5872                              "end": {
5873                                "line": 59,
5874                                "column": 29,
5875                                "program": "generic_arrayaslist.ets"
5876                              }
5877                            }
5878                          },
5879                          "computed": false,
5880                          "optional": false,
5881                          "loc": {
5882                            "start": {
5883                              "line": 59,
5884                              "column": 13,
5885                              "program": "generic_arrayaslist.ets"
5886                            },
5887                            "end": {
5888                              "line": 59,
5889                              "column": 29,
5890                              "program": "generic_arrayaslist.ets"
5891                            }
5892                          }
5893                        },
5894                        "right": {
5895                          "type": "Identifier",
5896                          "name": "capacity",
5897                          "decorators": [],
5898                          "loc": {
5899                            "start": {
5900                              "line": 59,
5901                              "column": 32,
5902                              "program": "generic_arrayaslist.ets"
5903                            },
5904                            "end": {
5905                              "line": 59,
5906                              "column": 40,
5907                              "program": "generic_arrayaslist.ets"
5908                            }
5909                          }
5910                        },
5911                        "loc": {
5912                          "start": {
5913                            "line": 59,
5914                            "column": 13,
5915                            "program": "generic_arrayaslist.ets"
5916                          },
5917                          "end": {
5918                            "line": 59,
5919                            "column": 40,
5920                            "program": "generic_arrayaslist.ets"
5921                          }
5922                        }
5923                      },
5924                      "consequent": {
5925                        "type": "BlockStatement",
5926                        "statements": [
5927                          {
5928                            "type": "VariableDeclaration",
5929                            "declarations": [
5930                              {
5931                                "type": "VariableDeclarator",
5932                                "id": {
5933                                  "type": "Identifier",
5934                                  "name": "newData",
5935                                  "decorators": [],
5936                                  "loc": {
5937                                    "start": {
5938                                      "line": 60,
5939                                      "column": 17,
5940                                      "program": "generic_arrayaslist.ets"
5941                                    },
5942                                    "end": {
5943                                      "line": 60,
5944                                      "column": 24,
5945                                      "program": "generic_arrayaslist.ets"
5946                                    }
5947                                  }
5948                                },
5949                                "init": {
5950                                  "type": "ETSNewArrayInstanceExpression",
5951                                  "typeReference": {
5952                                    "type": "ETSUnionType",
5953                                    "types": [
5954                                      {
5955                                        "type": "ETSTypeReference",
5956                                        "part": {
5957                                          "type": "ETSTypeReferencePart",
5958                                          "name": {
5959                                            "type": "Identifier",
5960                                            "name": "T",
5961                                            "decorators": [],
5962                                            "loc": {
5963                                              "start": {
5964                                                "line": 60,
5965                                                "column": 32,
5966                                                "program": "generic_arrayaslist.ets"
5967                                              },
5968                                              "end": {
5969                                                "line": 60,
5970                                                "column": 33,
5971                                                "program": "generic_arrayaslist.ets"
5972                                              }
5973                                            }
5974                                          },
5975                                          "loc": {
5976                                            "start": {
5977                                              "line": 60,
5978                                              "column": 32,
5979                                              "program": "generic_arrayaslist.ets"
5980                                            },
5981                                            "end": {
5982                                              "line": 60,
5983                                              "column": 35,
5984                                              "program": "generic_arrayaslist.ets"
5985                                            }
5986                                          }
5987                                        },
5988                                        "loc": {
5989                                          "start": {
5990                                            "line": 60,
5991                                            "column": 32,
5992                                            "program": "generic_arrayaslist.ets"
5993                                          },
5994                                          "end": {
5995                                            "line": 60,
5996                                            "column": 35,
5997                                            "program": "generic_arrayaslist.ets"
5998                                          }
5999                                        }
6000                                      },
6001                                      {
6002                                        "type": "ETSUndefinedType",
6003                                        "loc": {
6004                                          "start": {
6005                                            "line": 60,
6006                                            "column": 36,
6007                                            "program": "generic_arrayaslist.ets"
6008                                          },
6009                                          "end": {
6010                                            "line": 60,
6011                                            "column": 45,
6012                                            "program": "generic_arrayaslist.ets"
6013                                          }
6014                                        }
6015                                      }
6016                                    ],
6017                                    "loc": {
6018                                      "start": {
6019                                        "line": 60,
6020                                        "column": 31,
6021                                        "program": "generic_arrayaslist.ets"
6022                                      },
6023                                      "end": {
6024                                        "line": 60,
6025                                        "column": 45,
6026                                        "program": "generic_arrayaslist.ets"
6027                                      }
6028                                    }
6029                                  },
6030                                  "dimension": {
6031                                    "type": "Identifier",
6032                                    "name": "capacity",
6033                                    "decorators": [],
6034                                    "loc": {
6035                                      "start": {
6036                                        "line": 60,
6037                                        "column": 47,
6038                                        "program": "generic_arrayaslist.ets"
6039                                      },
6040                                      "end": {
6041                                        "line": 60,
6042                                        "column": 55,
6043                                        "program": "generic_arrayaslist.ets"
6044                                      }
6045                                    }
6046                                  },
6047                                  "loc": {
6048                                    "start": {
6049                                      "line": 60,
6050                                      "column": 27,
6051                                      "program": "generic_arrayaslist.ets"
6052                                    },
6053                                    "end": {
6054                                      "line": 60,
6055                                      "column": 56,
6056                                      "program": "generic_arrayaslist.ets"
6057                                    }
6058                                  }
6059                                },
6060                                "loc": {
6061                                  "start": {
6062                                    "line": 60,
6063                                    "column": 17,
6064                                    "program": "generic_arrayaslist.ets"
6065                                  },
6066                                  "end": {
6067                                    "line": 60,
6068                                    "column": 56,
6069                                    "program": "generic_arrayaslist.ets"
6070                                  }
6071                                }
6072                              }
6073                            ],
6074                            "kind": "let",
6075                            "loc": {
6076                              "start": {
6077                                "line": 60,
6078                                "column": 13,
6079                                "program": "generic_arrayaslist.ets"
6080                              },
6081                              "end": {
6082                                "line": 60,
6083                                "column": 57,
6084                                "program": "generic_arrayaslist.ets"
6085                              }
6086                            }
6087                          },
6088                          {
6089                            "type": "ForUpdateStatement",
6090                            "init": {
6091                              "type": "VariableDeclaration",
6092                              "declarations": [
6093                                {
6094                                  "type": "VariableDeclarator",
6095                                  "id": {
6096                                    "type": "Identifier",
6097                                    "name": "i",
6098                                    "decorators": [],
6099                                    "loc": {
6100                                      "start": {
6101                                        "line": 61,
6102                                        "column": 22,
6103                                        "program": "generic_arrayaslist.ets"
6104                                      },
6105                                      "end": {
6106                                        "line": 61,
6107                                        "column": 23,
6108                                        "program": "generic_arrayaslist.ets"
6109                                      }
6110                                    }
6111                                  },
6112                                  "init": {
6113                                    "type": "NumberLiteral",
6114                                    "value": 0,
6115                                    "loc": {
6116                                      "start": {
6117                                        "line": 61,
6118                                        "column": 26,
6119                                        "program": "generic_arrayaslist.ets"
6120                                      },
6121                                      "end": {
6122                                        "line": 61,
6123                                        "column": 27,
6124                                        "program": "generic_arrayaslist.ets"
6125                                      }
6126                                    }
6127                                  },
6128                                  "loc": {
6129                                    "start": {
6130                                      "line": 61,
6131                                      "column": 22,
6132                                      "program": "generic_arrayaslist.ets"
6133                                    },
6134                                    "end": {
6135                                      "line": 61,
6136                                      "column": 27,
6137                                      "program": "generic_arrayaslist.ets"
6138                                    }
6139                                  }
6140                                }
6141                              ],
6142                              "kind": "let",
6143                              "loc": {
6144                                "start": {
6145                                  "line": 61,
6146                                  "column": 18,
6147                                  "program": "generic_arrayaslist.ets"
6148                                },
6149                                "end": {
6150                                  "line": 61,
6151                                  "column": 27,
6152                                  "program": "generic_arrayaslist.ets"
6153                                }
6154                              }
6155                            },
6156                            "test": {
6157                              "type": "BinaryExpression",
6158                              "operator": "<",
6159                              "left": {
6160                                "type": "Identifier",
6161                                "name": "i",
6162                                "decorators": [],
6163                                "loc": {
6164                                  "start": {
6165                                    "line": 61,
6166                                    "column": 29,
6167                                    "program": "generic_arrayaslist.ets"
6168                                  },
6169                                  "end": {
6170                                    "line": 61,
6171                                    "column": 30,
6172                                    "program": "generic_arrayaslist.ets"
6173                                  }
6174                                }
6175                              },
6176                              "right": {
6177                                "type": "MemberExpression",
6178                                "object": {
6179                                  "type": "ThisExpression",
6180                                  "loc": {
6181                                    "start": {
6182                                      "line": 61,
6183                                      "column": 33,
6184                                      "program": "generic_arrayaslist.ets"
6185                                    },
6186                                    "end": {
6187                                      "line": 61,
6188                                      "column": 37,
6189                                      "program": "generic_arrayaslist.ets"
6190                                    }
6191                                  }
6192                                },
6193                                "property": {
6194                                  "type": "Identifier",
6195                                  "name": "curSize",
6196                                  "decorators": [],
6197                                  "loc": {
6198                                    "start": {
6199                                      "line": 61,
6200                                      "column": 38,
6201                                      "program": "generic_arrayaslist.ets"
6202                                    },
6203                                    "end": {
6204                                      "line": 61,
6205                                      "column": 45,
6206                                      "program": "generic_arrayaslist.ets"
6207                                    }
6208                                  }
6209                                },
6210                                "computed": false,
6211                                "optional": false,
6212                                "loc": {
6213                                  "start": {
6214                                    "line": 61,
6215                                    "column": 33,
6216                                    "program": "generic_arrayaslist.ets"
6217                                  },
6218                                  "end": {
6219                                    "line": 61,
6220                                    "column": 45,
6221                                    "program": "generic_arrayaslist.ets"
6222                                  }
6223                                }
6224                              },
6225                              "loc": {
6226                                "start": {
6227                                  "line": 61,
6228                                  "column": 29,
6229                                  "program": "generic_arrayaslist.ets"
6230                                },
6231                                "end": {
6232                                  "line": 61,
6233                                  "column": 45,
6234                                  "program": "generic_arrayaslist.ets"
6235                                }
6236                              }
6237                            },
6238                            "update": {
6239                              "type": "UpdateExpression",
6240                              "operator": "++",
6241                              "prefix": true,
6242                              "argument": {
6243                                "type": "Identifier",
6244                                "name": "i",
6245                                "decorators": [],
6246                                "loc": {
6247                                  "start": {
6248                                    "line": 61,
6249                                    "column": 49,
6250                                    "program": "generic_arrayaslist.ets"
6251                                  },
6252                                  "end": {
6253                                    "line": 61,
6254                                    "column": 50,
6255                                    "program": "generic_arrayaslist.ets"
6256                                  }
6257                                }
6258                              },
6259                              "loc": {
6260                                "start": {
6261                                  "line": 61,
6262                                  "column": 47,
6263                                  "program": "generic_arrayaslist.ets"
6264                                },
6265                                "end": {
6266                                  "line": 61,
6267                                  "column": 50,
6268                                  "program": "generic_arrayaslist.ets"
6269                                }
6270                              }
6271                            },
6272                            "body": {
6273                              "type": "BlockStatement",
6274                              "statements": [
6275                                {
6276                                  "type": "ExpressionStatement",
6277                                  "expression": {
6278                                    "type": "AssignmentExpression",
6279                                    "operator": "=",
6280                                    "left": {
6281                                      "type": "MemberExpression",
6282                                      "object": {
6283                                        "type": "Identifier",
6284                                        "name": "newData",
6285                                        "decorators": [],
6286                                        "loc": {
6287                                          "start": {
6288                                            "line": 62,
6289                                            "column": 16,
6290                                            "program": "generic_arrayaslist.ets"
6291                                          },
6292                                          "end": {
6293                                            "line": 62,
6294                                            "column": 23,
6295                                            "program": "generic_arrayaslist.ets"
6296                                          }
6297                                        }
6298                                      },
6299                                      "property": {
6300                                        "type": "Identifier",
6301                                        "name": "i",
6302                                        "decorators": [],
6303                                        "loc": {
6304                                          "start": {
6305                                            "line": 62,
6306                                            "column": 24,
6307                                            "program": "generic_arrayaslist.ets"
6308                                          },
6309                                          "end": {
6310                                            "line": 62,
6311                                            "column": 25,
6312                                            "program": "generic_arrayaslist.ets"
6313                                          }
6314                                        }
6315                                      },
6316                                      "computed": true,
6317                                      "optional": false,
6318                                      "loc": {
6319                                        "start": {
6320                                          "line": 62,
6321                                          "column": 16,
6322                                          "program": "generic_arrayaslist.ets"
6323                                        },
6324                                        "end": {
6325                                          "line": 62,
6326                                          "column": 26,
6327                                          "program": "generic_arrayaslist.ets"
6328                                        }
6329                                      }
6330                                    },
6331                                    "right": {
6332                                      "type": "MemberExpression",
6333                                      "object": {
6334                                        "type": "MemberExpression",
6335                                        "object": {
6336                                          "type": "ThisExpression",
6337                                          "loc": {
6338                                            "start": {
6339                                              "line": 62,
6340                                              "column": 29,
6341                                              "program": "generic_arrayaslist.ets"
6342                                            },
6343                                            "end": {
6344                                              "line": 62,
6345                                              "column": 33,
6346                                              "program": "generic_arrayaslist.ets"
6347                                            }
6348                                          }
6349                                        },
6350                                        "property": {
6351                                          "type": "Identifier",
6352                                          "name": "data",
6353                                          "decorators": [],
6354                                          "loc": {
6355                                            "start": {
6356                                              "line": 62,
6357                                              "column": 34,
6358                                              "program": "generic_arrayaslist.ets"
6359                                            },
6360                                            "end": {
6361                                              "line": 62,
6362                                              "column": 38,
6363                                              "program": "generic_arrayaslist.ets"
6364                                            }
6365                                          }
6366                                        },
6367                                        "computed": false,
6368                                        "optional": false,
6369                                        "loc": {
6370                                          "start": {
6371                                            "line": 62,
6372                                            "column": 29,
6373                                            "program": "generic_arrayaslist.ets"
6374                                          },
6375                                          "end": {
6376                                            "line": 62,
6377                                            "column": 38,
6378                                            "program": "generic_arrayaslist.ets"
6379                                          }
6380                                        }
6381                                      },
6382                                      "property": {
6383                                        "type": "Identifier",
6384                                        "name": "i",
6385                                        "decorators": [],
6386                                        "loc": {
6387                                          "start": {
6388                                            "line": 62,
6389                                            "column": 39,
6390                                            "program": "generic_arrayaslist.ets"
6391                                          },
6392                                          "end": {
6393                                            "line": 62,
6394                                            "column": 40,
6395                                            "program": "generic_arrayaslist.ets"
6396                                          }
6397                                        }
6398                                      },
6399                                      "computed": true,
6400                                      "optional": false,
6401                                      "loc": {
6402                                        "start": {
6403                                          "line": 62,
6404                                          "column": 29,
6405                                          "program": "generic_arrayaslist.ets"
6406                                        },
6407                                        "end": {
6408                                          "line": 62,
6409                                          "column": 41,
6410                                          "program": "generic_arrayaslist.ets"
6411                                        }
6412                                      }
6413                                    },
6414                                    "loc": {
6415                                      "start": {
6416                                        "line": 62,
6417                                        "column": 16,
6418                                        "program": "generic_arrayaslist.ets"
6419                                      },
6420                                      "end": {
6421                                        "line": 62,
6422                                        "column": 41,
6423                                        "program": "generic_arrayaslist.ets"
6424                                      }
6425                                    }
6426                                  },
6427                                  "loc": {
6428                                    "start": {
6429                                      "line": 62,
6430                                      "column": 16,
6431                                      "program": "generic_arrayaslist.ets"
6432                                    },
6433                                    "end": {
6434                                      "line": 62,
6435                                      "column": 42,
6436                                      "program": "generic_arrayaslist.ets"
6437                                    }
6438                                  }
6439                                }
6440                              ],
6441                              "loc": {
6442                                "start": {
6443                                  "line": 61,
6444                                  "column": 52,
6445                                  "program": "generic_arrayaslist.ets"
6446                                },
6447                                "end": {
6448                                  "line": 63,
6449                                  "column": 14,
6450                                  "program": "generic_arrayaslist.ets"
6451                                }
6452                              }
6453                            },
6454                            "loc": {
6455                              "start": {
6456                                "line": 61,
6457                                "column": 13,
6458                                "program": "generic_arrayaslist.ets"
6459                              },
6460                              "end": {
6461                                "line": 63,
6462                                "column": 14,
6463                                "program": "generic_arrayaslist.ets"
6464                              }
6465                            }
6466                          },
6467                          {
6468                            "type": "ExpressionStatement",
6469                            "expression": {
6470                              "type": "AssignmentExpression",
6471                              "operator": "=",
6472                              "left": {
6473                                "type": "MemberExpression",
6474                                "object": {
6475                                  "type": "ThisExpression",
6476                                  "loc": {
6477                                    "start": {
6478                                      "line": 64,
6479                                      "column": 13,
6480                                      "program": "generic_arrayaslist.ets"
6481                                    },
6482                                    "end": {
6483                                      "line": 64,
6484                                      "column": 17,
6485                                      "program": "generic_arrayaslist.ets"
6486                                    }
6487                                  }
6488                                },
6489                                "property": {
6490                                  "type": "Identifier",
6491                                  "name": "data",
6492                                  "decorators": [],
6493                                  "loc": {
6494                                    "start": {
6495                                      "line": 64,
6496                                      "column": 18,
6497                                      "program": "generic_arrayaslist.ets"
6498                                    },
6499                                    "end": {
6500                                      "line": 64,
6501                                      "column": 22,
6502                                      "program": "generic_arrayaslist.ets"
6503                                    }
6504                                  }
6505                                },
6506                                "computed": false,
6507                                "optional": false,
6508                                "loc": {
6509                                  "start": {
6510                                    "line": 64,
6511                                    "column": 13,
6512                                    "program": "generic_arrayaslist.ets"
6513                                  },
6514                                  "end": {
6515                                    "line": 64,
6516                                    "column": 22,
6517                                    "program": "generic_arrayaslist.ets"
6518                                  }
6519                                }
6520                              },
6521                              "right": {
6522                                "type": "Identifier",
6523                                "name": "newData",
6524                                "decorators": [],
6525                                "loc": {
6526                                  "start": {
6527                                    "line": 64,
6528                                    "column": 25,
6529                                    "program": "generic_arrayaslist.ets"
6530                                  },
6531                                  "end": {
6532                                    "line": 64,
6533                                    "column": 32,
6534                                    "program": "generic_arrayaslist.ets"
6535                                  }
6536                                }
6537                              },
6538                              "loc": {
6539                                "start": {
6540                                  "line": 64,
6541                                  "column": 13,
6542                                  "program": "generic_arrayaslist.ets"
6543                                },
6544                                "end": {
6545                                  "line": 64,
6546                                  "column": 32,
6547                                  "program": "generic_arrayaslist.ets"
6548                                }
6549                              }
6550                            },
6551                            "loc": {
6552                              "start": {
6553                                "line": 64,
6554                                "column": 13,
6555                                "program": "generic_arrayaslist.ets"
6556                              },
6557                              "end": {
6558                                "line": 64,
6559                                "column": 33,
6560                                "program": "generic_arrayaslist.ets"
6561                              }
6562                            }
6563                          }
6564                        ],
6565                        "loc": {
6566                          "start": {
6567                            "line": 59,
6568                            "column": 42,
6569                            "program": "generic_arrayaslist.ets"
6570                          },
6571                          "end": {
6572                            "line": 65,
6573                            "column": 10,
6574                            "program": "generic_arrayaslist.ets"
6575                          }
6576                        }
6577                      },
6578                      "alternate": null,
6579                      "loc": {
6580                        "start": {
6581                          "line": 59,
6582                          "column": 9,
6583                          "program": "generic_arrayaslist.ets"
6584                        },
6585                        "end": {
6586                          "line": 65,
6587                          "column": 10,
6588                          "program": "generic_arrayaslist.ets"
6589                        }
6590                      }
6591                    }
6592                  ],
6593                  "loc": {
6594                    "start": {
6595                      "line": 58,
6596                      "column": 41,
6597                      "program": "generic_arrayaslist.ets"
6598                    },
6599                    "end": {
6600                      "line": 66,
6601                      "column": 6,
6602                      "program": "generic_arrayaslist.ets"
6603                    }
6604                  }
6605                },
6606                "loc": {
6607                  "start": {
6608                    "line": 58,
6609                    "column": 19,
6610                    "program": "generic_arrayaslist.ets"
6611                  },
6612                  "end": {
6613                    "line": 66,
6614                    "column": 6,
6615                    "program": "generic_arrayaslist.ets"
6616                  }
6617                }
6618              },
6619              "loc": {
6620                "start": {
6621                  "line": 58,
6622                  "column": 19,
6623                  "program": "generic_arrayaslist.ets"
6624                },
6625                "end": {
6626                  "line": 66,
6627                  "column": 6,
6628                  "program": "generic_arrayaslist.ets"
6629                }
6630              }
6631            },
6632            "overloads": [],
6633            "decorators": [],
6634            "loc": {
6635              "start": {
6636                "line": 58,
6637                "column": 5,
6638                "program": "generic_arrayaslist.ets"
6639              },
6640              "end": {
6641                "line": 66,
6642                "column": 6,
6643                "program": "generic_arrayaslist.ets"
6644              }
6645            }
6646          },
6647          {
6648            "type": "MethodDefinition",
6649            "key": {
6650              "type": "Identifier",
6651              "name": "getNewCapacity",
6652              "decorators": [],
6653              "loc": {
6654                "start": {
6655                  "line": 68,
6656                  "column": 13,
6657                  "program": "generic_arrayaslist.ets"
6658                },
6659                "end": {
6660                  "line": 68,
6661                  "column": 27,
6662                  "program": "generic_arrayaslist.ets"
6663                }
6664              }
6665            },
6666            "kind": "method",
6667            "accessibility": "private",
6668            "static": false,
6669            "optional": false,
6670            "computed": false,
6671            "value": {
6672              "type": "FunctionExpression",
6673              "function": {
6674                "type": "ScriptFunction",
6675                "id": {
6676                  "type": "Identifier",
6677                  "name": "getNewCapacity",
6678                  "decorators": [],
6679                  "loc": {
6680                    "start": {
6681                      "line": 68,
6682                      "column": 13,
6683                      "program": "generic_arrayaslist.ets"
6684                    },
6685                    "end": {
6686                      "line": 68,
6687                      "column": 27,
6688                      "program": "generic_arrayaslist.ets"
6689                    }
6690                  }
6691                },
6692                "generator": false,
6693                "async": false,
6694                "expression": false,
6695                "params": [
6696                  {
6697                    "type": "ETSParameterExpression",
6698                    "name": {
6699                      "type": "Identifier",
6700                      "name": "currentCapacity",
6701                      "typeAnnotation": {
6702                        "type": "ETSPrimitiveType",
6703                        "loc": {
6704                          "start": {
6705                            "line": 68,
6706                            "column": 45,
6707                            "program": "generic_arrayaslist.ets"
6708                          },
6709                          "end": {
6710                            "line": 68,
6711                            "column": 48,
6712                            "program": "generic_arrayaslist.ets"
6713                          }
6714                        }
6715                      },
6716                      "decorators": [],
6717                      "loc": {
6718                        "start": {
6719                          "line": 68,
6720                          "column": 28,
6721                          "program": "generic_arrayaslist.ets"
6722                        },
6723                        "end": {
6724                          "line": 68,
6725                          "column": 48,
6726                          "program": "generic_arrayaslist.ets"
6727                        }
6728                      }
6729                    },
6730                    "loc": {
6731                      "start": {
6732                        "line": 68,
6733                        "column": 28,
6734                        "program": "generic_arrayaslist.ets"
6735                      },
6736                      "end": {
6737                        "line": 68,
6738                        "column": 48,
6739                        "program": "generic_arrayaslist.ets"
6740                      }
6741                    }
6742                  }
6743                ],
6744                "returnType": {
6745                  "type": "ETSPrimitiveType",
6746                  "loc": {
6747                    "start": {
6748                      "line": 68,
6749                      "column": 51,
6750                      "program": "generic_arrayaslist.ets"
6751                    },
6752                    "end": {
6753                      "line": 68,
6754                      "column": 54,
6755                      "program": "generic_arrayaslist.ets"
6756                    }
6757                  }
6758                },
6759                "body": {
6760                  "type": "BlockStatement",
6761                  "statements": [
6762                    {
6763                      "type": "VariableDeclaration",
6764                      "declarations": [
6765                        {
6766                          "type": "VariableDeclarator",
6767                          "id": {
6768                            "type": "Identifier",
6769                            "name": "fastGrowThreshold",
6770                            "decorators": [],
6771                            "loc": {
6772                              "start": {
6773                                "line": 69,
6774                                "column": 15,
6775                                "program": "generic_arrayaslist.ets"
6776                              },
6777                              "end": {
6778                                "line": 69,
6779                                "column": 32,
6780                                "program": "generic_arrayaslist.ets"
6781                              }
6782                            }
6783                          },
6784                          "init": {
6785                            "type": "NumberLiteral",
6786                            "value": 8192,
6787                            "loc": {
6788                              "start": {
6789                                "line": 69,
6790                                "column": 35,
6791                                "program": "generic_arrayaslist.ets"
6792                              },
6793                              "end": {
6794                                "line": 69,
6795                                "column": 39,
6796                                "program": "generic_arrayaslist.ets"
6797                              }
6798                            }
6799                          },
6800                          "loc": {
6801                            "start": {
6802                              "line": 69,
6803                              "column": 15,
6804                              "program": "generic_arrayaslist.ets"
6805                            },
6806                            "end": {
6807                              "line": 69,
6808                              "column": 39,
6809                              "program": "generic_arrayaslist.ets"
6810                            }
6811                          }
6812                        }
6813                      ],
6814                      "kind": "const",
6815                      "loc": {
6816                        "start": {
6817                          "line": 69,
6818                          "column": 9,
6819                          "program": "generic_arrayaslist.ets"
6820                        },
6821                        "end": {
6822                          "line": 69,
6823                          "column": 40,
6824                          "program": "generic_arrayaslist.ets"
6825                        }
6826                      }
6827                    },
6828                    {
6829                      "type": "VariableDeclaration",
6830                      "declarations": [
6831                        {
6832                          "type": "VariableDeclarator",
6833                          "id": {
6834                            "type": "Identifier",
6835                            "name": "multiplier",
6836                            "decorators": [],
6837                            "loc": {
6838                              "start": {
6839                                "line": 70,
6840                                "column": 15,
6841                                "program": "generic_arrayaslist.ets"
6842                              },
6843                              "end": {
6844                                "line": 70,
6845                                "column": 25,
6846                                "program": "generic_arrayaslist.ets"
6847                              }
6848                            }
6849                          },
6850                          "init": {
6851                            "type": "NumberLiteral",
6852                            "value": 2,
6853                            "loc": {
6854                              "start": {
6855                                "line": 70,
6856                                "column": 28,
6857                                "program": "generic_arrayaslist.ets"
6858                              },
6859                              "end": {
6860                                "line": 70,
6861                                "column": 29,
6862                                "program": "generic_arrayaslist.ets"
6863                              }
6864                            }
6865                          },
6866                          "loc": {
6867                            "start": {
6868                              "line": 70,
6869                              "column": 15,
6870                              "program": "generic_arrayaslist.ets"
6871                            },
6872                            "end": {
6873                              "line": 70,
6874                              "column": 29,
6875                              "program": "generic_arrayaslist.ets"
6876                            }
6877                          }
6878                        }
6879                      ],
6880                      "kind": "const",
6881                      "loc": {
6882                        "start": {
6883                          "line": 70,
6884                          "column": 9,
6885                          "program": "generic_arrayaslist.ets"
6886                        },
6887                        "end": {
6888                          "line": 70,
6889                          "column": 30,
6890                          "program": "generic_arrayaslist.ets"
6891                        }
6892                      }
6893                    },
6894                    {
6895                      "type": "IfStatement",
6896                      "test": {
6897                        "type": "BinaryExpression",
6898                        "operator": "<",
6899                        "left": {
6900                          "type": "Identifier",
6901                          "name": "currentCapacity",
6902                          "decorators": [],
6903                          "loc": {
6904                            "start": {
6905                              "line": 71,
6906                              "column": 13,
6907                              "program": "generic_arrayaslist.ets"
6908                            },
6909                            "end": {
6910                              "line": 71,
6911                              "column": 28,
6912                              "program": "generic_arrayaslist.ets"
6913                            }
6914                          }
6915                        },
6916                        "right": {
6917                          "type": "Identifier",
6918                          "name": "fastGrowThreshold",
6919                          "decorators": [],
6920                          "loc": {
6921                            "start": {
6922                              "line": 71,
6923                              "column": 31,
6924                              "program": "generic_arrayaslist.ets"
6925                            },
6926                            "end": {
6927                              "line": 71,
6928                              "column": 48,
6929                              "program": "generic_arrayaslist.ets"
6930                            }
6931                          }
6932                        },
6933                        "loc": {
6934                          "start": {
6935                            "line": 71,
6936                            "column": 13,
6937                            "program": "generic_arrayaslist.ets"
6938                          },
6939                          "end": {
6940                            "line": 71,
6941                            "column": 48,
6942                            "program": "generic_arrayaslist.ets"
6943                          }
6944                        }
6945                      },
6946                      "consequent": {
6947                        "type": "BlockStatement",
6948                        "statements": [
6949                          {
6950                            "type": "ReturnStatement",
6951                            "argument": {
6952                              "type": "BinaryExpression",
6953                              "operator": "*",
6954                              "left": {
6955                                "type": "BinaryExpression",
6956                                "operator": "*",
6957                                "left": {
6958                                  "type": "BinaryExpression",
6959                                  "operator": "+",
6960                                  "left": {
6961                                    "type": "Identifier",
6962                                    "name": "currentCapacity",
6963                                    "decorators": [],
6964                                    "loc": {
6965                                      "start": {
6966                                        "line": 73,
6967                                        "column": 21,
6968                                        "program": "generic_arrayaslist.ets"
6969                                      },
6970                                      "end": {
6971                                        "line": 73,
6972                                        "column": 36,
6973                                        "program": "generic_arrayaslist.ets"
6974                                      }
6975                                    }
6976                                  },
6977                                  "right": {
6978                                    "type": "NumberLiteral",
6979                                    "value": 4,
6980                                    "loc": {
6981                                      "start": {
6982                                        "line": 73,
6983                                        "column": 39,
6984                                        "program": "generic_arrayaslist.ets"
6985                                      },
6986                                      "end": {
6987                                        "line": 73,
6988                                        "column": 40,
6989                                        "program": "generic_arrayaslist.ets"
6990                                      }
6991                                    }
6992                                  },
6993                                  "loc": {
6994                                    "start": {
6995                                      "line": 73,
6996                                      "column": 20,
6997                                      "program": "generic_arrayaslist.ets"
6998                                    },
6999                                    "end": {
7000                                      "line": 73,
7001                                      "column": 41,
7002                                      "program": "generic_arrayaslist.ets"
7003                                    }
7004                                  }
7005                                },
7006                                "right": {
7007                                  "type": "Identifier",
7008                                  "name": "multiplier",
7009                                  "decorators": [],
7010                                  "loc": {
7011                                    "start": {
7012                                      "line": 73,
7013                                      "column": 44,
7014                                      "program": "generic_arrayaslist.ets"
7015                                    },
7016                                    "end": {
7017                                      "line": 73,
7018                                      "column": 54,
7019                                      "program": "generic_arrayaslist.ets"
7020                                    }
7021                                  }
7022                                },
7023                                "loc": {
7024                                  "start": {
7025                                    "line": 73,
7026                                    "column": 20,
7027                                    "program": "generic_arrayaslist.ets"
7028                                  },
7029                                  "end": {
7030                                    "line": 73,
7031                                    "column": 54,
7032                                    "program": "generic_arrayaslist.ets"
7033                                  }
7034                                }
7035                              },
7036                              "right": {
7037                                "type": "NumberLiteral",
7038                                "value": 2,
7039                                "loc": {
7040                                  "start": {
7041                                    "line": 73,
7042                                    "column": 57,
7043                                    "program": "generic_arrayaslist.ets"
7044                                  },
7045                                  "end": {
7046                                    "line": 73,
7047                                    "column": 58,
7048                                    "program": "generic_arrayaslist.ets"
7049                                  }
7050                                }
7051                              },
7052                              "loc": {
7053                                "start": {
7054                                  "line": 73,
7055                                  "column": 20,
7056                                  "program": "generic_arrayaslist.ets"
7057                                },
7058                                "end": {
7059                                  "line": 73,
7060                                  "column": 58,
7061                                  "program": "generic_arrayaslist.ets"
7062                                }
7063                              }
7064                            },
7065                            "loc": {
7066                              "start": {
7067                                "line": 73,
7068                                "column": 13,
7069                                "program": "generic_arrayaslist.ets"
7070                              },
7071                              "end": {
7072                                "line": 73,
7073                                "column": 59,
7074                                "program": "generic_arrayaslist.ets"
7075                              }
7076                            }
7077                          }
7078                        ],
7079                        "loc": {
7080                          "start": {
7081                            "line": 71,
7082                            "column": 50,
7083                            "program": "generic_arrayaslist.ets"
7084                          },
7085                          "end": {
7086                            "line": 74,
7087                            "column": 10,
7088                            "program": "generic_arrayaslist.ets"
7089                          }
7090                        }
7091                      },
7092                      "alternate": {
7093                        "type": "BlockStatement",
7094                        "statements": [
7095                          {
7096                            "type": "ReturnStatement",
7097                            "argument": {
7098                              "type": "BinaryExpression",
7099                              "operator": "*",
7100                              "left": {
7101                                "type": "Identifier",
7102                                "name": "currentCapacity",
7103                                "decorators": [],
7104                                "loc": {
7105                                  "start": {
7106                                    "line": 75,
7107                                    "column": 20,
7108                                    "program": "generic_arrayaslist.ets"
7109                                  },
7110                                  "end": {
7111                                    "line": 75,
7112                                    "column": 35,
7113                                    "program": "generic_arrayaslist.ets"
7114                                  }
7115                                }
7116                              },
7117                              "right": {
7118                                "type": "Identifier",
7119                                "name": "multiplier",
7120                                "decorators": [],
7121                                "loc": {
7122                                  "start": {
7123                                    "line": 75,
7124                                    "column": 38,
7125                                    "program": "generic_arrayaslist.ets"
7126                                  },
7127                                  "end": {
7128                                    "line": 75,
7129                                    "column": 48,
7130                                    "program": "generic_arrayaslist.ets"
7131                                  }
7132                                }
7133                              },
7134                              "loc": {
7135                                "start": {
7136                                  "line": 75,
7137                                  "column": 20,
7138                                  "program": "generic_arrayaslist.ets"
7139                                },
7140                                "end": {
7141                                  "line": 75,
7142                                  "column": 48,
7143                                  "program": "generic_arrayaslist.ets"
7144                                }
7145                              }
7146                            },
7147                            "loc": {
7148                              "start": {
7149                                "line": 75,
7150                                "column": 13,
7151                                "program": "generic_arrayaslist.ets"
7152                              },
7153                              "end": {
7154                                "line": 75,
7155                                "column": 49,
7156                                "program": "generic_arrayaslist.ets"
7157                              }
7158                            }
7159                          }
7160                        ],
7161                        "loc": {
7162                          "start": {
7163                            "line": 74,
7164                            "column": 16,
7165                            "program": "generic_arrayaslist.ets"
7166                          },
7167                          "end": {
7168                            "line": 76,
7169                            "column": 10,
7170                            "program": "generic_arrayaslist.ets"
7171                          }
7172                        }
7173                      },
7174                      "loc": {
7175                        "start": {
7176                          "line": 71,
7177                          "column": 9,
7178                          "program": "generic_arrayaslist.ets"
7179                        },
7180                        "end": {
7181                          "line": 76,
7182                          "column": 10,
7183                          "program": "generic_arrayaslist.ets"
7184                        }
7185                      }
7186                    }
7187                  ],
7188                  "loc": {
7189                    "start": {
7190                      "line": 68,
7191                      "column": 55,
7192                      "program": "generic_arrayaslist.ets"
7193                    },
7194                    "end": {
7195                      "line": 77,
7196                      "column": 6,
7197                      "program": "generic_arrayaslist.ets"
7198                    }
7199                  }
7200                },
7201                "loc": {
7202                  "start": {
7203                    "line": 68,
7204                    "column": 27,
7205                    "program": "generic_arrayaslist.ets"
7206                  },
7207                  "end": {
7208                    "line": 77,
7209                    "column": 6,
7210                    "program": "generic_arrayaslist.ets"
7211                  }
7212                }
7213              },
7214              "loc": {
7215                "start": {
7216                  "line": 68,
7217                  "column": 27,
7218                  "program": "generic_arrayaslist.ets"
7219                },
7220                "end": {
7221                  "line": 77,
7222                  "column": 6,
7223                  "program": "generic_arrayaslist.ets"
7224                }
7225              }
7226            },
7227            "overloads": [],
7228            "decorators": [],
7229            "loc": {
7230              "start": {
7231                "line": 68,
7232                "column": 5,
7233                "program": "generic_arrayaslist.ets"
7234              },
7235              "end": {
7236                "line": 77,
7237                "column": 6,
7238                "program": "generic_arrayaslist.ets"
7239              }
7240            }
7241          },
7242          {
7243            "type": "MethodDefinition",
7244            "key": {
7245              "type": "Identifier",
7246              "name": "pushFront",
7247              "decorators": [],
7248              "loc": {
7249                "start": {
7250                  "line": 79,
7251                  "column": 21,
7252                  "program": "generic_arrayaslist.ets"
7253                },
7254                "end": {
7255                  "line": 79,
7256                  "column": 30,
7257                  "program": "generic_arrayaslist.ets"
7258                }
7259              }
7260            },
7261            "kind": "method",
7262            "accessibility": "public",
7263            "static": false,
7264            "optional": false,
7265            "computed": false,
7266            "value": {
7267              "type": "FunctionExpression",
7268              "function": {
7269                "type": "ScriptFunction",
7270                "id": {
7271                  "type": "Identifier",
7272                  "name": "pushFront",
7273                  "decorators": [],
7274                  "loc": {
7275                    "start": {
7276                      "line": 79,
7277                      "column": 21,
7278                      "program": "generic_arrayaslist.ets"
7279                    },
7280                    "end": {
7281                      "line": 79,
7282                      "column": 30,
7283                      "program": "generic_arrayaslist.ets"
7284                    }
7285                  }
7286                },
7287                "generator": false,
7288                "async": false,
7289                "expression": false,
7290                "params": [
7291                  {
7292                    "type": "ETSParameterExpression",
7293                    "name": {
7294                      "type": "Identifier",
7295                      "name": "e",
7296                      "typeAnnotation": {
7297                        "type": "ETSTypeReference",
7298                        "part": {
7299                          "type": "ETSTypeReferencePart",
7300                          "name": {
7301                            "type": "Identifier",
7302                            "name": "T",
7303                            "decorators": [],
7304                            "loc": {
7305                              "start": {
7306                                "line": 79,
7307                                "column": 34,
7308                                "program": "generic_arrayaslist.ets"
7309                              },
7310                              "end": {
7311                                "line": 79,
7312                                "column": 35,
7313                                "program": "generic_arrayaslist.ets"
7314                              }
7315                            }
7316                          },
7317                          "loc": {
7318                            "start": {
7319                              "line": 79,
7320                              "column": 34,
7321                              "program": "generic_arrayaslist.ets"
7322                            },
7323                            "end": {
7324                              "line": 79,
7325                              "column": 36,
7326                              "program": "generic_arrayaslist.ets"
7327                            }
7328                          }
7329                        },
7330                        "loc": {
7331                          "start": {
7332                            "line": 79,
7333                            "column": 34,
7334                            "program": "generic_arrayaslist.ets"
7335                          },
7336                          "end": {
7337                            "line": 79,
7338                            "column": 36,
7339                            "program": "generic_arrayaslist.ets"
7340                          }
7341                        }
7342                      },
7343                      "decorators": [],
7344                      "loc": {
7345                        "start": {
7346                          "line": 79,
7347                          "column": 31,
7348                          "program": "generic_arrayaslist.ets"
7349                        },
7350                        "end": {
7351                          "line": 79,
7352                          "column": 36,
7353                          "program": "generic_arrayaslist.ets"
7354                        }
7355                      }
7356                    },
7357                    "loc": {
7358                      "start": {
7359                        "line": 79,
7360                        "column": 31,
7361                        "program": "generic_arrayaslist.ets"
7362                      },
7363                      "end": {
7364                        "line": 79,
7365                        "column": 36,
7366                        "program": "generic_arrayaslist.ets"
7367                      }
7368                    }
7369                  }
7370                ],
7371                "returnType": {
7372                  "type": "ETSPrimitiveType",
7373                  "loc": {
7374                    "start": {
7375                      "line": 79,
7376                      "column": 38,
7377                      "program": "generic_arrayaslist.ets"
7378                    },
7379                    "end": {
7380                      "line": 79,
7381                      "column": 42,
7382                      "program": "generic_arrayaslist.ets"
7383                    }
7384                  }
7385                },
7386                "body": {
7387                  "type": "BlockStatement",
7388                  "statements": [
7389                    {
7390                      "type": "VariableDeclaration",
7391                      "declarations": [
7392                        {
7393                          "type": "VariableDeclarator",
7394                          "id": {
7395                            "type": "Identifier",
7396                            "name": "dst",
7397                            "decorators": [],
7398                            "loc": {
7399                              "start": {
7400                                "line": 80,
7401                                "column": 13,
7402                                "program": "generic_arrayaslist.ets"
7403                              },
7404                              "end": {
7405                                "line": 80,
7406                                "column": 16,
7407                                "program": "generic_arrayaslist.ets"
7408                              }
7409                            }
7410                          },
7411                          "init": {
7412                            "type": "MemberExpression",
7413                            "object": {
7414                              "type": "ThisExpression",
7415                              "loc": {
7416                                "start": {
7417                                  "line": 80,
7418                                  "column": 19,
7419                                  "program": "generic_arrayaslist.ets"
7420                                },
7421                                "end": {
7422                                  "line": 80,
7423                                  "column": 23,
7424                                  "program": "generic_arrayaslist.ets"
7425                                }
7426                              }
7427                            },
7428                            "property": {
7429                              "type": "Identifier",
7430                              "name": "data",
7431                              "decorators": [],
7432                              "loc": {
7433                                "start": {
7434                                  "line": 80,
7435                                  "column": 24,
7436                                  "program": "generic_arrayaslist.ets"
7437                                },
7438                                "end": {
7439                                  "line": 80,
7440                                  "column": 28,
7441                                  "program": "generic_arrayaslist.ets"
7442                                }
7443                              }
7444                            },
7445                            "computed": false,
7446                            "optional": false,
7447                            "loc": {
7448                              "start": {
7449                                "line": 80,
7450                                "column": 19,
7451                                "program": "generic_arrayaslist.ets"
7452                              },
7453                              "end": {
7454                                "line": 80,
7455                                "column": 28,
7456                                "program": "generic_arrayaslist.ets"
7457                              }
7458                            }
7459                          },
7460                          "loc": {
7461                            "start": {
7462                              "line": 80,
7463                              "column": 13,
7464                              "program": "generic_arrayaslist.ets"
7465                            },
7466                            "end": {
7467                              "line": 80,
7468                              "column": 28,
7469                              "program": "generic_arrayaslist.ets"
7470                            }
7471                          }
7472                        }
7473                      ],
7474                      "kind": "let",
7475                      "loc": {
7476                        "start": {
7477                          "line": 80,
7478                          "column": 9,
7479                          "program": "generic_arrayaslist.ets"
7480                        },
7481                        "end": {
7482                          "line": 80,
7483                          "column": 29,
7484                          "program": "generic_arrayaslist.ets"
7485                        }
7486                      }
7487                    },
7488                    {
7489                      "type": "IfStatement",
7490                      "test": {
7491                        "type": "BinaryExpression",
7492                        "operator": "==",
7493                        "left": {
7494                          "type": "MemberExpression",
7495                          "object": {
7496                            "type": "ThisExpression",
7497                            "loc": {
7498                              "start": {
7499                                "line": 81,
7500                                "column": 13,
7501                                "program": "generic_arrayaslist.ets"
7502                              },
7503                              "end": {
7504                                "line": 81,
7505                                "column": 17,
7506                                "program": "generic_arrayaslist.ets"
7507                              }
7508                            }
7509                          },
7510                          "property": {
7511                            "type": "Identifier",
7512                            "name": "curSize",
7513                            "decorators": [],
7514                            "loc": {
7515                              "start": {
7516                                "line": 81,
7517                                "column": 18,
7518                                "program": "generic_arrayaslist.ets"
7519                              },
7520                              "end": {
7521                                "line": 81,
7522                                "column": 25,
7523                                "program": "generic_arrayaslist.ets"
7524                              }
7525                            }
7526                          },
7527                          "computed": false,
7528                          "optional": false,
7529                          "loc": {
7530                            "start": {
7531                              "line": 81,
7532                              "column": 13,
7533                              "program": "generic_arrayaslist.ets"
7534                            },
7535                            "end": {
7536                              "line": 81,
7537                              "column": 25,
7538                              "program": "generic_arrayaslist.ets"
7539                            }
7540                          }
7541                        },
7542                        "right": {
7543                          "type": "MemberExpression",
7544                          "object": {
7545                            "type": "MemberExpression",
7546                            "object": {
7547                              "type": "ThisExpression",
7548                              "loc": {
7549                                "start": {
7550                                  "line": 81,
7551                                  "column": 29,
7552                                  "program": "generic_arrayaslist.ets"
7553                                },
7554                                "end": {
7555                                  "line": 81,
7556                                  "column": 33,
7557                                  "program": "generic_arrayaslist.ets"
7558                                }
7559                              }
7560                            },
7561                            "property": {
7562                              "type": "Identifier",
7563                              "name": "data",
7564                              "decorators": [],
7565                              "loc": {
7566                                "start": {
7567                                  "line": 81,
7568                                  "column": 34,
7569                                  "program": "generic_arrayaslist.ets"
7570                                },
7571                                "end": {
7572                                  "line": 81,
7573                                  "column": 38,
7574                                  "program": "generic_arrayaslist.ets"
7575                                }
7576                              }
7577                            },
7578                            "computed": false,
7579                            "optional": false,
7580                            "loc": {
7581                              "start": {
7582                                "line": 81,
7583                                "column": 29,
7584                                "program": "generic_arrayaslist.ets"
7585                              },
7586                              "end": {
7587                                "line": 81,
7588                                "column": 38,
7589                                "program": "generic_arrayaslist.ets"
7590                              }
7591                            }
7592                          },
7593                          "property": {
7594                            "type": "Identifier",
7595                            "name": "length",
7596                            "decorators": [],
7597                            "loc": {
7598                              "start": {
7599                                "line": 81,
7600                                "column": 39,
7601                                "program": "generic_arrayaslist.ets"
7602                              },
7603                              "end": {
7604                                "line": 81,
7605                                "column": 45,
7606                                "program": "generic_arrayaslist.ets"
7607                              }
7608                            }
7609                          },
7610                          "computed": false,
7611                          "optional": false,
7612                          "loc": {
7613                            "start": {
7614                              "line": 81,
7615                              "column": 29,
7616                              "program": "generic_arrayaslist.ets"
7617                            },
7618                            "end": {
7619                              "line": 81,
7620                              "column": 45,
7621                              "program": "generic_arrayaslist.ets"
7622                            }
7623                          }
7624                        },
7625                        "loc": {
7626                          "start": {
7627                            "line": 81,
7628                            "column": 13,
7629                            "program": "generic_arrayaslist.ets"
7630                          },
7631                          "end": {
7632                            "line": 81,
7633                            "column": 45,
7634                            "program": "generic_arrayaslist.ets"
7635                          }
7636                        }
7637                      },
7638                      "consequent": {
7639                        "type": "BlockStatement",
7640                        "statements": [
7641                          {
7642                            "type": "ExpressionStatement",
7643                            "expression": {
7644                              "type": "AssignmentExpression",
7645                              "operator": "=",
7646                              "left": {
7647                                "type": "Identifier",
7648                                "name": "dst",
7649                                "decorators": [],
7650                                "loc": {
7651                                  "start": {
7652                                    "line": 82,
7653                                    "column": 13,
7654                                    "program": "generic_arrayaslist.ets"
7655                                  },
7656                                  "end": {
7657                                    "line": 82,
7658                                    "column": 16,
7659                                    "program": "generic_arrayaslist.ets"
7660                                  }
7661                                }
7662                              },
7663                              "right": {
7664                                "type": "ETSNewArrayInstanceExpression",
7665                                "typeReference": {
7666                                  "type": "ETSUnionType",
7667                                  "types": [
7668                                    {
7669                                      "type": "ETSTypeReference",
7670                                      "part": {
7671                                        "type": "ETSTypeReferencePart",
7672                                        "name": {
7673                                          "type": "Identifier",
7674                                          "name": "T",
7675                                          "decorators": [],
7676                                          "loc": {
7677                                            "start": {
7678                                              "line": 82,
7679                                              "column": 24,
7680                                              "program": "generic_arrayaslist.ets"
7681                                            },
7682                                            "end": {
7683                                              "line": 82,
7684                                              "column": 25,
7685                                              "program": "generic_arrayaslist.ets"
7686                                            }
7687                                          }
7688                                        },
7689                                        "loc": {
7690                                          "start": {
7691                                            "line": 82,
7692                                            "column": 24,
7693                                            "program": "generic_arrayaslist.ets"
7694                                          },
7695                                          "end": {
7696                                            "line": 82,
7697                                            "column": 27,
7698                                            "program": "generic_arrayaslist.ets"
7699                                          }
7700                                        }
7701                                      },
7702                                      "loc": {
7703                                        "start": {
7704                                          "line": 82,
7705                                          "column": 24,
7706                                          "program": "generic_arrayaslist.ets"
7707                                        },
7708                                        "end": {
7709                                          "line": 82,
7710                                          "column": 27,
7711                                          "program": "generic_arrayaslist.ets"
7712                                        }
7713                                      }
7714                                    },
7715                                    {
7716                                      "type": "ETSUndefinedType",
7717                                      "loc": {
7718                                        "start": {
7719                                          "line": 82,
7720                                          "column": 28,
7721                                          "program": "generic_arrayaslist.ets"
7722                                        },
7723                                        "end": {
7724                                          "line": 82,
7725                                          "column": 37,
7726                                          "program": "generic_arrayaslist.ets"
7727                                        }
7728                                      }
7729                                    }
7730                                  ],
7731                                  "loc": {
7732                                    "start": {
7733                                      "line": 82,
7734                                      "column": 23,
7735                                      "program": "generic_arrayaslist.ets"
7736                                    },
7737                                    "end": {
7738                                      "line": 82,
7739                                      "column": 37,
7740                                      "program": "generic_arrayaslist.ets"
7741                                    }
7742                                  }
7743                                },
7744                                "dimension": {
7745                                  "type": "CallExpression",
7746                                  "callee": {
7747                                    "type": "MemberExpression",
7748                                    "object": {
7749                                      "type": "ThisExpression",
7750                                      "loc": {
7751                                        "start": {
7752                                          "line": 82,
7753                                          "column": 39,
7754                                          "program": "generic_arrayaslist.ets"
7755                                        },
7756                                        "end": {
7757                                          "line": 82,
7758                                          "column": 43,
7759                                          "program": "generic_arrayaslist.ets"
7760                                        }
7761                                      }
7762                                    },
7763                                    "property": {
7764                                      "type": "Identifier",
7765                                      "name": "getNewCapacity",
7766                                      "decorators": [],
7767                                      "loc": {
7768                                        "start": {
7769                                          "line": 82,
7770                                          "column": 44,
7771                                          "program": "generic_arrayaslist.ets"
7772                                        },
7773                                        "end": {
7774                                          "line": 82,
7775                                          "column": 58,
7776                                          "program": "generic_arrayaslist.ets"
7777                                        }
7778                                      }
7779                                    },
7780                                    "computed": false,
7781                                    "optional": false,
7782                                    "loc": {
7783                                      "start": {
7784                                        "line": 82,
7785                                        "column": 39,
7786                                        "program": "generic_arrayaslist.ets"
7787                                      },
7788                                      "end": {
7789                                        "line": 82,
7790                                        "column": 58,
7791                                        "program": "generic_arrayaslist.ets"
7792                                      }
7793                                    }
7794                                  },
7795                                  "arguments": [
7796                                    {
7797                                      "type": "TSAsExpression",
7798                                      "expression": {
7799                                        "type": "MemberExpression",
7800                                        "object": {
7801                                          "type": "MemberExpression",
7802                                          "object": {
7803                                            "type": "ThisExpression",
7804                                            "loc": {
7805                                              "start": {
7806                                                "line": 82,
7807                                                "column": 59,
7808                                                "program": "generic_arrayaslist.ets"
7809                                              },
7810                                              "end": {
7811                                                "line": 82,
7812                                                "column": 63,
7813                                                "program": "generic_arrayaslist.ets"
7814                                              }
7815                                            }
7816                                          },
7817                                          "property": {
7818                                            "type": "Identifier",
7819                                            "name": "data",
7820                                            "decorators": [],
7821                                            "loc": {
7822                                              "start": {
7823                                                "line": 82,
7824                                                "column": 64,
7825                                                "program": "generic_arrayaslist.ets"
7826                                              },
7827                                              "end": {
7828                                                "line": 82,
7829                                                "column": 68,
7830                                                "program": "generic_arrayaslist.ets"
7831                                              }
7832                                            }
7833                                          },
7834                                          "computed": false,
7835                                          "optional": false,
7836                                          "loc": {
7837                                            "start": {
7838                                              "line": 82,
7839                                              "column": 59,
7840                                              "program": "generic_arrayaslist.ets"
7841                                            },
7842                                            "end": {
7843                                              "line": 82,
7844                                              "column": 68,
7845                                              "program": "generic_arrayaslist.ets"
7846                                            }
7847                                          }
7848                                        },
7849                                        "property": {
7850                                          "type": "Identifier",
7851                                          "name": "length",
7852                                          "decorators": [],
7853                                          "loc": {
7854                                            "start": {
7855                                              "line": 82,
7856                                              "column": 69,
7857                                              "program": "generic_arrayaslist.ets"
7858                                            },
7859                                            "end": {
7860                                              "line": 82,
7861                                              "column": 75,
7862                                              "program": "generic_arrayaslist.ets"
7863                                            }
7864                                          }
7865                                        },
7866                                        "computed": false,
7867                                        "optional": false,
7868                                        "loc": {
7869                                          "start": {
7870                                            "line": 82,
7871                                            "column": 59,
7872                                            "program": "generic_arrayaslist.ets"
7873                                          },
7874                                          "end": {
7875                                            "line": 82,
7876                                            "column": 75,
7877                                            "program": "generic_arrayaslist.ets"
7878                                          }
7879                                        }
7880                                      },
7881                                      "typeAnnotation": {
7882                                        "type": "ETSPrimitiveType",
7883                                        "loc": {
7884                                          "start": {
7885                                            "line": 82,
7886                                            "column": 79,
7887                                            "program": "generic_arrayaslist.ets"
7888                                          },
7889                                          "end": {
7890                                            "line": 82,
7891                                            "column": 82,
7892                                            "program": "generic_arrayaslist.ets"
7893                                          }
7894                                        }
7895                                      },
7896                                      "loc": {
7897                                        "start": {
7898                                          "line": 82,
7899                                          "column": 59,
7900                                          "program": "generic_arrayaslist.ets"
7901                                        },
7902                                        "end": {
7903                                          "line": 82,
7904                                          "column": 75,
7905                                          "program": "generic_arrayaslist.ets"
7906                                        }
7907                                      }
7908                                    }
7909                                  ],
7910                                  "optional": false,
7911                                  "loc": {
7912                                    "start": {
7913                                      "line": 82,
7914                                      "column": 39,
7915                                      "program": "generic_arrayaslist.ets"
7916                                    },
7917                                    "end": {
7918                                      "line": 82,
7919                                      "column": 83,
7920                                      "program": "generic_arrayaslist.ets"
7921                                    }
7922                                  }
7923                                },
7924                                "loc": {
7925                                  "start": {
7926                                    "line": 82,
7927                                    "column": 19,
7928                                    "program": "generic_arrayaslist.ets"
7929                                  },
7930                                  "end": {
7931                                    "line": 82,
7932                                    "column": 84,
7933                                    "program": "generic_arrayaslist.ets"
7934                                  }
7935                                }
7936                              },
7937                              "loc": {
7938                                "start": {
7939                                  "line": 82,
7940                                  "column": 13,
7941                                  "program": "generic_arrayaslist.ets"
7942                                },
7943                                "end": {
7944                                  "line": 82,
7945                                  "column": 84,
7946                                  "program": "generic_arrayaslist.ets"
7947                                }
7948                              }
7949                            },
7950                            "loc": {
7951                              "start": {
7952                                "line": 82,
7953                                "column": 13,
7954                                "program": "generic_arrayaslist.ets"
7955                              },
7956                              "end": {
7957                                "line": 82,
7958                                "column": 85,
7959                                "program": "generic_arrayaslist.ets"
7960                              }
7961                            }
7962                          }
7963                        ],
7964                        "loc": {
7965                          "start": {
7966                            "line": 81,
7967                            "column": 47,
7968                            "program": "generic_arrayaslist.ets"
7969                          },
7970                          "end": {
7971                            "line": 83,
7972                            "column": 10,
7973                            "program": "generic_arrayaslist.ets"
7974                          }
7975                        }
7976                      },
7977                      "alternate": null,
7978                      "loc": {
7979                        "start": {
7980                          "line": 81,
7981                          "column": 9,
7982                          "program": "generic_arrayaslist.ets"
7983                        },
7984                        "end": {
7985                          "line": 83,
7986                          "column": 10,
7987                          "program": "generic_arrayaslist.ets"
7988                        }
7989                      }
7990                    },
7991                    {
7992                      "type": "ForUpdateStatement",
7993                      "init": {
7994                        "type": "VariableDeclaration",
7995                        "declarations": [
7996                          {
7997                            "type": "VariableDeclarator",
7998                            "id": {
7999                              "type": "Identifier",
8000                              "name": "i",
8001                              "decorators": [],
8002                              "loc": {
8003                                "start": {
8004                                  "line": 84,
8005                                  "column": 18,
8006                                  "program": "generic_arrayaslist.ets"
8007                                },
8008                                "end": {
8009                                  "line": 84,
8010                                  "column": 19,
8011                                  "program": "generic_arrayaslist.ets"
8012                                }
8013                              }
8014                            },
8015                            "init": {
8016                              "type": "MemberExpression",
8017                              "object": {
8018                                "type": "ThisExpression",
8019                                "loc": {
8020                                  "start": {
8021                                    "line": 84,
8022                                    "column": 22,
8023                                    "program": "generic_arrayaslist.ets"
8024                                  },
8025                                  "end": {
8026                                    "line": 84,
8027                                    "column": 26,
8028                                    "program": "generic_arrayaslist.ets"
8029                                  }
8030                                }
8031                              },
8032                              "property": {
8033                                "type": "Identifier",
8034                                "name": "curSize",
8035                                "decorators": [],
8036                                "loc": {
8037                                  "start": {
8038                                    "line": 84,
8039                                    "column": 27,
8040                                    "program": "generic_arrayaslist.ets"
8041                                  },
8042                                  "end": {
8043                                    "line": 84,
8044                                    "column": 34,
8045                                    "program": "generic_arrayaslist.ets"
8046                                  }
8047                                }
8048                              },
8049                              "computed": false,
8050                              "optional": false,
8051                              "loc": {
8052                                "start": {
8053                                  "line": 84,
8054                                  "column": 22,
8055                                  "program": "generic_arrayaslist.ets"
8056                                },
8057                                "end": {
8058                                  "line": 84,
8059                                  "column": 34,
8060                                  "program": "generic_arrayaslist.ets"
8061                                }
8062                              }
8063                            },
8064                            "loc": {
8065                              "start": {
8066                                "line": 84,
8067                                "column": 18,
8068                                "program": "generic_arrayaslist.ets"
8069                              },
8070                              "end": {
8071                                "line": 84,
8072                                "column": 34,
8073                                "program": "generic_arrayaslist.ets"
8074                              }
8075                            }
8076                          }
8077                        ],
8078                        "kind": "let",
8079                        "loc": {
8080                          "start": {
8081                            "line": 84,
8082                            "column": 14,
8083                            "program": "generic_arrayaslist.ets"
8084                          },
8085                          "end": {
8086                            "line": 84,
8087                            "column": 34,
8088                            "program": "generic_arrayaslist.ets"
8089                          }
8090                        }
8091                      },
8092                      "test": {
8093                        "type": "BinaryExpression",
8094                        "operator": "!=",
8095                        "left": {
8096                          "type": "Identifier",
8097                          "name": "i",
8098                          "decorators": [],
8099                          "loc": {
8100                            "start": {
8101                              "line": 84,
8102                              "column": 36,
8103                              "program": "generic_arrayaslist.ets"
8104                            },
8105                            "end": {
8106                              "line": 84,
8107                              "column": 37,
8108                              "program": "generic_arrayaslist.ets"
8109                            }
8110                          }
8111                        },
8112                        "right": {
8113                          "type": "NumberLiteral",
8114                          "value": 0,
8115                          "loc": {
8116                            "start": {
8117                              "line": 84,
8118                              "column": 41,
8119                              "program": "generic_arrayaslist.ets"
8120                            },
8121                            "end": {
8122                              "line": 84,
8123                              "column": 42,
8124                              "program": "generic_arrayaslist.ets"
8125                            }
8126                          }
8127                        },
8128                        "loc": {
8129                          "start": {
8130                            "line": 84,
8131                            "column": 36,
8132                            "program": "generic_arrayaslist.ets"
8133                          },
8134                          "end": {
8135                            "line": 84,
8136                            "column": 42,
8137                            "program": "generic_arrayaslist.ets"
8138                          }
8139                        }
8140                      },
8141                      "update": {
8142                        "type": "UpdateExpression",
8143                        "operator": "--",
8144                        "prefix": true,
8145                        "argument": {
8146                          "type": "Identifier",
8147                          "name": "i",
8148                          "decorators": [],
8149                          "loc": {
8150                            "start": {
8151                              "line": 84,
8152                              "column": 46,
8153                              "program": "generic_arrayaslist.ets"
8154                            },
8155                            "end": {
8156                              "line": 84,
8157                              "column": 47,
8158                              "program": "generic_arrayaslist.ets"
8159                            }
8160                          }
8161                        },
8162                        "loc": {
8163                          "start": {
8164                            "line": 84,
8165                            "column": 44,
8166                            "program": "generic_arrayaslist.ets"
8167                          },
8168                          "end": {
8169                            "line": 84,
8170                            "column": 47,
8171                            "program": "generic_arrayaslist.ets"
8172                          }
8173                        }
8174                      },
8175                      "body": {
8176                        "type": "BlockStatement",
8177                        "statements": [
8178                          {
8179                            "type": "ExpressionStatement",
8180                            "expression": {
8181                              "type": "AssignmentExpression",
8182                              "operator": "=",
8183                              "left": {
8184                                "type": "MemberExpression",
8185                                "object": {
8186                                  "type": "Identifier",
8187                                  "name": "dst",
8188                                  "decorators": [],
8189                                  "loc": {
8190                                    "start": {
8191                                      "line": 85,
8192                                      "column": 13,
8193                                      "program": "generic_arrayaslist.ets"
8194                                    },
8195                                    "end": {
8196                                      "line": 85,
8197                                      "column": 16,
8198                                      "program": "generic_arrayaslist.ets"
8199                                    }
8200                                  }
8201                                },
8202                                "property": {
8203                                  "type": "Identifier",
8204                                  "name": "i",
8205                                  "decorators": [],
8206                                  "loc": {
8207                                    "start": {
8208                                      "line": 85,
8209                                      "column": 17,
8210                                      "program": "generic_arrayaslist.ets"
8211                                    },
8212                                    "end": {
8213                                      "line": 85,
8214                                      "column": 18,
8215                                      "program": "generic_arrayaslist.ets"
8216                                    }
8217                                  }
8218                                },
8219                                "computed": true,
8220                                "optional": false,
8221                                "loc": {
8222                                  "start": {
8223                                    "line": 85,
8224                                    "column": 13,
8225                                    "program": "generic_arrayaslist.ets"
8226                                  },
8227                                  "end": {
8228                                    "line": 85,
8229                                    "column": 19,
8230                                    "program": "generic_arrayaslist.ets"
8231                                  }
8232                                }
8233                              },
8234                              "right": {
8235                                "type": "MemberExpression",
8236                                "object": {
8237                                  "type": "MemberExpression",
8238                                  "object": {
8239                                    "type": "ThisExpression",
8240                                    "loc": {
8241                                      "start": {
8242                                        "line": 85,
8243                                        "column": 22,
8244                                        "program": "generic_arrayaslist.ets"
8245                                      },
8246                                      "end": {
8247                                        "line": 85,
8248                                        "column": 26,
8249                                        "program": "generic_arrayaslist.ets"
8250                                      }
8251                                    }
8252                                  },
8253                                  "property": {
8254                                    "type": "Identifier",
8255                                    "name": "data",
8256                                    "decorators": [],
8257                                    "loc": {
8258                                      "start": {
8259                                        "line": 85,
8260                                        "column": 27,
8261                                        "program": "generic_arrayaslist.ets"
8262                                      },
8263                                      "end": {
8264                                        "line": 85,
8265                                        "column": 31,
8266                                        "program": "generic_arrayaslist.ets"
8267                                      }
8268                                    }
8269                                  },
8270                                  "computed": false,
8271                                  "optional": false,
8272                                  "loc": {
8273                                    "start": {
8274                                      "line": 85,
8275                                      "column": 22,
8276                                      "program": "generic_arrayaslist.ets"
8277                                    },
8278                                    "end": {
8279                                      "line": 85,
8280                                      "column": 31,
8281                                      "program": "generic_arrayaslist.ets"
8282                                    }
8283                                  }
8284                                },
8285                                "property": {
8286                                  "type": "BinaryExpression",
8287                                  "operator": "-",
8288                                  "left": {
8289                                    "type": "Identifier",
8290                                    "name": "i",
8291                                    "decorators": [],
8292                                    "loc": {
8293                                      "start": {
8294                                        "line": 85,
8295                                        "column": 32,
8296                                        "program": "generic_arrayaslist.ets"
8297                                      },
8298                                      "end": {
8299                                        "line": 85,
8300                                        "column": 33,
8301                                        "program": "generic_arrayaslist.ets"
8302                                      }
8303                                    }
8304                                  },
8305                                  "right": {
8306                                    "type": "NumberLiteral",
8307                                    "value": 1,
8308                                    "loc": {
8309                                      "start": {
8310                                        "line": 85,
8311                                        "column": 34,
8312                                        "program": "generic_arrayaslist.ets"
8313                                      },
8314                                      "end": {
8315                                        "line": 85,
8316                                        "column": 35,
8317                                        "program": "generic_arrayaslist.ets"
8318                                      }
8319                                    }
8320                                  },
8321                                  "loc": {
8322                                    "start": {
8323                                      "line": 85,
8324                                      "column": 32,
8325                                      "program": "generic_arrayaslist.ets"
8326                                    },
8327                                    "end": {
8328                                      "line": 85,
8329                                      "column": 35,
8330                                      "program": "generic_arrayaslist.ets"
8331                                    }
8332                                  }
8333                                },
8334                                "computed": true,
8335                                "optional": false,
8336                                "loc": {
8337                                  "start": {
8338                                    "line": 85,
8339                                    "column": 22,
8340                                    "program": "generic_arrayaslist.ets"
8341                                  },
8342                                  "end": {
8343                                    "line": 85,
8344                                    "column": 36,
8345                                    "program": "generic_arrayaslist.ets"
8346                                  }
8347                                }
8348                              },
8349                              "loc": {
8350                                "start": {
8351                                  "line": 85,
8352                                  "column": 13,
8353                                  "program": "generic_arrayaslist.ets"
8354                                },
8355                                "end": {
8356                                  "line": 85,
8357                                  "column": 36,
8358                                  "program": "generic_arrayaslist.ets"
8359                                }
8360                              }
8361                            },
8362                            "loc": {
8363                              "start": {
8364                                "line": 85,
8365                                "column": 13,
8366                                "program": "generic_arrayaslist.ets"
8367                              },
8368                              "end": {
8369                                "line": 85,
8370                                "column": 37,
8371                                "program": "generic_arrayaslist.ets"
8372                              }
8373                            }
8374                          }
8375                        ],
8376                        "loc": {
8377                          "start": {
8378                            "line": 84,
8379                            "column": 49,
8380                            "program": "generic_arrayaslist.ets"
8381                          },
8382                          "end": {
8383                            "line": 86,
8384                            "column": 10,
8385                            "program": "generic_arrayaslist.ets"
8386                          }
8387                        }
8388                      },
8389                      "loc": {
8390                        "start": {
8391                          "line": 84,
8392                          "column": 9,
8393                          "program": "generic_arrayaslist.ets"
8394                        },
8395                        "end": {
8396                          "line": 86,
8397                          "column": 10,
8398                          "program": "generic_arrayaslist.ets"
8399                        }
8400                      }
8401                    },
8402                    {
8403                      "type": "ExpressionStatement",
8404                      "expression": {
8405                        "type": "AssignmentExpression",
8406                        "operator": "=",
8407                        "left": {
8408                          "type": "MemberExpression",
8409                          "object": {
8410                            "type": "ThisExpression",
8411                            "loc": {
8412                              "start": {
8413                                "line": 87,
8414                                "column": 9,
8415                                "program": "generic_arrayaslist.ets"
8416                              },
8417                              "end": {
8418                                "line": 87,
8419                                "column": 13,
8420                                "program": "generic_arrayaslist.ets"
8421                              }
8422                            }
8423                          },
8424                          "property": {
8425                            "type": "Identifier",
8426                            "name": "data",
8427                            "decorators": [],
8428                            "loc": {
8429                              "start": {
8430                                "line": 87,
8431                                "column": 14,
8432                                "program": "generic_arrayaslist.ets"
8433                              },
8434                              "end": {
8435                                "line": 87,
8436                                "column": 18,
8437                                "program": "generic_arrayaslist.ets"
8438                              }
8439                            }
8440                          },
8441                          "computed": false,
8442                          "optional": false,
8443                          "loc": {
8444                            "start": {
8445                              "line": 87,
8446                              "column": 9,
8447                              "program": "generic_arrayaslist.ets"
8448                            },
8449                            "end": {
8450                              "line": 87,
8451                              "column": 18,
8452                              "program": "generic_arrayaslist.ets"
8453                            }
8454                          }
8455                        },
8456                        "right": {
8457                          "type": "Identifier",
8458                          "name": "dst",
8459                          "decorators": [],
8460                          "loc": {
8461                            "start": {
8462                              "line": 87,
8463                              "column": 21,
8464                              "program": "generic_arrayaslist.ets"
8465                            },
8466                            "end": {
8467                              "line": 87,
8468                              "column": 24,
8469                              "program": "generic_arrayaslist.ets"
8470                            }
8471                          }
8472                        },
8473                        "loc": {
8474                          "start": {
8475                            "line": 87,
8476                            "column": 9,
8477                            "program": "generic_arrayaslist.ets"
8478                          },
8479                          "end": {
8480                            "line": 87,
8481                            "column": 24,
8482                            "program": "generic_arrayaslist.ets"
8483                          }
8484                        }
8485                      },
8486                      "loc": {
8487                        "start": {
8488                          "line": 87,
8489                          "column": 9,
8490                          "program": "generic_arrayaslist.ets"
8491                        },
8492                        "end": {
8493                          "line": 87,
8494                          "column": 25,
8495                          "program": "generic_arrayaslist.ets"
8496                        }
8497                      }
8498                    },
8499                    {
8500                      "type": "ExpressionStatement",
8501                      "expression": {
8502                        "type": "AssignmentExpression",
8503                        "operator": "=",
8504                        "left": {
8505                          "type": "MemberExpression",
8506                          "object": {
8507                            "type": "MemberExpression",
8508                            "object": {
8509                              "type": "ThisExpression",
8510                              "loc": {
8511                                "start": {
8512                                  "line": 88,
8513                                  "column": 9,
8514                                  "program": "generic_arrayaslist.ets"
8515                                },
8516                                "end": {
8517                                  "line": 88,
8518                                  "column": 13,
8519                                  "program": "generic_arrayaslist.ets"
8520                                }
8521                              }
8522                            },
8523                            "property": {
8524                              "type": "Identifier",
8525                              "name": "data",
8526                              "decorators": [],
8527                              "loc": {
8528                                "start": {
8529                                  "line": 88,
8530                                  "column": 14,
8531                                  "program": "generic_arrayaslist.ets"
8532                                },
8533                                "end": {
8534                                  "line": 88,
8535                                  "column": 18,
8536                                  "program": "generic_arrayaslist.ets"
8537                                }
8538                              }
8539                            },
8540                            "computed": false,
8541                            "optional": false,
8542                            "loc": {
8543                              "start": {
8544                                "line": 88,
8545                                "column": 9,
8546                                "program": "generic_arrayaslist.ets"
8547                              },
8548                              "end": {
8549                                "line": 88,
8550                                "column": 18,
8551                                "program": "generic_arrayaslist.ets"
8552                              }
8553                            }
8554                          },
8555                          "property": {
8556                            "type": "NumberLiteral",
8557                            "value": 0,
8558                            "loc": {
8559                              "start": {
8560                                "line": 88,
8561                                "column": 19,
8562                                "program": "generic_arrayaslist.ets"
8563                              },
8564                              "end": {
8565                                "line": 88,
8566                                "column": 20,
8567                                "program": "generic_arrayaslist.ets"
8568                              }
8569                            }
8570                          },
8571                          "computed": true,
8572                          "optional": false,
8573                          "loc": {
8574                            "start": {
8575                              "line": 88,
8576                              "column": 9,
8577                              "program": "generic_arrayaslist.ets"
8578                            },
8579                            "end": {
8580                              "line": 88,
8581                              "column": 21,
8582                              "program": "generic_arrayaslist.ets"
8583                            }
8584                          }
8585                        },
8586                        "right": {
8587                          "type": "Identifier",
8588                          "name": "e",
8589                          "decorators": [],
8590                          "loc": {
8591                            "start": {
8592                              "line": 88,
8593                              "column": 24,
8594                              "program": "generic_arrayaslist.ets"
8595                            },
8596                            "end": {
8597                              "line": 88,
8598                              "column": 25,
8599                              "program": "generic_arrayaslist.ets"
8600                            }
8601                          }
8602                        },
8603                        "loc": {
8604                          "start": {
8605                            "line": 88,
8606                            "column": 9,
8607                            "program": "generic_arrayaslist.ets"
8608                          },
8609                          "end": {
8610                            "line": 88,
8611                            "column": 25,
8612                            "program": "generic_arrayaslist.ets"
8613                          }
8614                        }
8615                      },
8616                      "loc": {
8617                        "start": {
8618                          "line": 88,
8619                          "column": 9,
8620                          "program": "generic_arrayaslist.ets"
8621                        },
8622                        "end": {
8623                          "line": 88,
8624                          "column": 26,
8625                          "program": "generic_arrayaslist.ets"
8626                        }
8627                      }
8628                    },
8629                    {
8630                      "type": "ExpressionStatement",
8631                      "expression": {
8632                        "type": "UpdateExpression",
8633                        "operator": "++",
8634                        "prefix": true,
8635                        "argument": {
8636                          "type": "MemberExpression",
8637                          "object": {
8638                            "type": "ThisExpression",
8639                            "loc": {
8640                              "start": {
8641                                "line": 89,
8642                                "column": 11,
8643                                "program": "generic_arrayaslist.ets"
8644                              },
8645                              "end": {
8646                                "line": 89,
8647                                "column": 15,
8648                                "program": "generic_arrayaslist.ets"
8649                              }
8650                            }
8651                          },
8652                          "property": {
8653                            "type": "Identifier",
8654                            "name": "curSize",
8655                            "decorators": [],
8656                            "loc": {
8657                              "start": {
8658                                "line": 89,
8659                                "column": 16,
8660                                "program": "generic_arrayaslist.ets"
8661                              },
8662                              "end": {
8663                                "line": 89,
8664                                "column": 23,
8665                                "program": "generic_arrayaslist.ets"
8666                              }
8667                            }
8668                          },
8669                          "computed": false,
8670                          "optional": false,
8671                          "loc": {
8672                            "start": {
8673                              "line": 89,
8674                              "column": 11,
8675                              "program": "generic_arrayaslist.ets"
8676                            },
8677                            "end": {
8678                              "line": 89,
8679                              "column": 23,
8680                              "program": "generic_arrayaslist.ets"
8681                            }
8682                          }
8683                        },
8684                        "loc": {
8685                          "start": {
8686                            "line": 89,
8687                            "column": 9,
8688                            "program": "generic_arrayaslist.ets"
8689                          },
8690                          "end": {
8691                            "line": 89,
8692                            "column": 23,
8693                            "program": "generic_arrayaslist.ets"
8694                          }
8695                        }
8696                      },
8697                      "loc": {
8698                        "start": {
8699                          "line": 89,
8700                          "column": 9,
8701                          "program": "generic_arrayaslist.ets"
8702                        },
8703                        "end": {
8704                          "line": 89,
8705                          "column": 24,
8706                          "program": "generic_arrayaslist.ets"
8707                        }
8708                      }
8709                    }
8710                  ],
8711                  "loc": {
8712                    "start": {
8713                      "line": 79,
8714                      "column": 43,
8715                      "program": "generic_arrayaslist.ets"
8716                    },
8717                    "end": {
8718                      "line": 90,
8719                      "column": 6,
8720                      "program": "generic_arrayaslist.ets"
8721                    }
8722                  }
8723                },
8724                "loc": {
8725                  "start": {
8726                    "line": 79,
8727                    "column": 30,
8728                    "program": "generic_arrayaslist.ets"
8729                  },
8730                  "end": {
8731                    "line": 90,
8732                    "column": 6,
8733                    "program": "generic_arrayaslist.ets"
8734                  }
8735                }
8736              },
8737              "loc": {
8738                "start": {
8739                  "line": 79,
8740                  "column": 30,
8741                  "program": "generic_arrayaslist.ets"
8742                },
8743                "end": {
8744                  "line": 90,
8745                  "column": 6,
8746                  "program": "generic_arrayaslist.ets"
8747                }
8748              }
8749            },
8750            "overloads": [],
8751            "decorators": [],
8752            "loc": {
8753              "start": {
8754                "line": 79,
8755                "column": 5,
8756                "program": "generic_arrayaslist.ets"
8757              },
8758              "end": {
8759                "line": 90,
8760                "column": 6,
8761                "program": "generic_arrayaslist.ets"
8762              }
8763            }
8764          },
8765          {
8766            "type": "MethodDefinition",
8767            "key": {
8768              "type": "Identifier",
8769              "name": "popFront",
8770              "decorators": [],
8771              "loc": {
8772                "start": {
8773                  "line": 92,
8774                  "column": 21,
8775                  "program": "generic_arrayaslist.ets"
8776                },
8777                "end": {
8778                  "line": 92,
8779                  "column": 29,
8780                  "program": "generic_arrayaslist.ets"
8781                }
8782              }
8783            },
8784            "kind": "method",
8785            "accessibility": "public",
8786            "static": false,
8787            "optional": false,
8788            "computed": false,
8789            "value": {
8790              "type": "FunctionExpression",
8791              "function": {
8792                "type": "ScriptFunction",
8793                "id": {
8794                  "type": "Identifier",
8795                  "name": "popFront",
8796                  "decorators": [],
8797                  "loc": {
8798                    "start": {
8799                      "line": 92,
8800                      "column": 21,
8801                      "program": "generic_arrayaslist.ets"
8802                    },
8803                    "end": {
8804                      "line": 92,
8805                      "column": 29,
8806                      "program": "generic_arrayaslist.ets"
8807                    }
8808                  }
8809                },
8810                "generator": false,
8811                "async": false,
8812                "expression": false,
8813                "params": [],
8814                "returnType": {
8815                  "type": "ETSTypeReference",
8816                  "part": {
8817                    "type": "ETSTypeReferencePart",
8818                    "name": {
8819                      "type": "Identifier",
8820                      "name": "T",
8821                      "decorators": [],
8822                      "loc": {
8823                        "start": {
8824                          "line": 92,
8825                          "column": 33,
8826                          "program": "generic_arrayaslist.ets"
8827                        },
8828                        "end": {
8829                          "line": 92,
8830                          "column": 34,
8831                          "program": "generic_arrayaslist.ets"
8832                        }
8833                      }
8834                    },
8835                    "loc": {
8836                      "start": {
8837                        "line": 92,
8838                        "column": 33,
8839                        "program": "generic_arrayaslist.ets"
8840                      },
8841                      "end": {
8842                        "line": 92,
8843                        "column": 36,
8844                        "program": "generic_arrayaslist.ets"
8845                      }
8846                    }
8847                  },
8848                  "loc": {
8849                    "start": {
8850                      "line": 92,
8851                      "column": 33,
8852                      "program": "generic_arrayaslist.ets"
8853                    },
8854                    "end": {
8855                      "line": 92,
8856                      "column": 36,
8857                      "program": "generic_arrayaslist.ets"
8858                    }
8859                  }
8860                },
8861                "body": {
8862                  "type": "BlockStatement",
8863                  "statements": [
8864                    {
8865                      "type": "ExpressionStatement",
8866                      "expression": {
8867                        "type": "CallExpression",
8868                        "callee": {
8869                          "type": "Identifier",
8870                          "name": "assertLT",
8871                          "decorators": [],
8872                          "loc": {
8873                            "start": {
8874                              "line": 93,
8875                              "column": 9,
8876                              "program": "generic_arrayaslist.ets"
8877                            },
8878                            "end": {
8879                              "line": 93,
8880                              "column": 17,
8881                              "program": "generic_arrayaslist.ets"
8882                            }
8883                          }
8884                        },
8885                        "arguments": [
8886                          {
8887                            "type": "NumberLiteral",
8888                            "value": 0,
8889                            "loc": {
8890                              "start": {
8891                                "line": 93,
8892                                "column": 18,
8893                                "program": "generic_arrayaslist.ets"
8894                              },
8895                              "end": {
8896                                "line": 93,
8897                                "column": 19,
8898                                "program": "generic_arrayaslist.ets"
8899                              }
8900                            }
8901                          },
8902                          {
8903                            "type": "MemberExpression",
8904                            "object": {
8905                              "type": "ThisExpression",
8906                              "loc": {
8907                                "start": {
8908                                  "line": 93,
8909                                  "column": 21,
8910                                  "program": "generic_arrayaslist.ets"
8911                                },
8912                                "end": {
8913                                  "line": 93,
8914                                  "column": 25,
8915                                  "program": "generic_arrayaslist.ets"
8916                                }
8917                              }
8918                            },
8919                            "property": {
8920                              "type": "Identifier",
8921                              "name": "curSize",
8922                              "decorators": [],
8923                              "loc": {
8924                                "start": {
8925                                  "line": 93,
8926                                  "column": 26,
8927                                  "program": "generic_arrayaslist.ets"
8928                                },
8929                                "end": {
8930                                  "line": 93,
8931                                  "column": 33,
8932                                  "program": "generic_arrayaslist.ets"
8933                                }
8934                              }
8935                            },
8936                            "computed": false,
8937                            "optional": false,
8938                            "loc": {
8939                              "start": {
8940                                "line": 93,
8941                                "column": 21,
8942                                "program": "generic_arrayaslist.ets"
8943                              },
8944                              "end": {
8945                                "line": 93,
8946                                "column": 33,
8947                                "program": "generic_arrayaslist.ets"
8948                              }
8949                            }
8950                          },
8951                          {
8952                            "type": "StringLiteral",
8953                            "value": "No data to popFront from ArrayAsList!",
8954                            "loc": {
8955                              "start": {
8956                                "line": 93,
8957                                "column": 35,
8958                                "program": "generic_arrayaslist.ets"
8959                              },
8960                              "end": {
8961                                "line": 93,
8962                                "column": 74,
8963                                "program": "generic_arrayaslist.ets"
8964                              }
8965                            }
8966                          }
8967                        ],
8968                        "optional": false,
8969                        "loc": {
8970                          "start": {
8971                            "line": 93,
8972                            "column": 9,
8973                            "program": "generic_arrayaslist.ets"
8974                          },
8975                          "end": {
8976                            "line": 93,
8977                            "column": 75,
8978                            "program": "generic_arrayaslist.ets"
8979                          }
8980                        }
8981                      },
8982                      "loc": {
8983                        "start": {
8984                          "line": 93,
8985                          "column": 9,
8986                          "program": "generic_arrayaslist.ets"
8987                        },
8988                        "end": {
8989                          "line": 93,
8990                          "column": 76,
8991                          "program": "generic_arrayaslist.ets"
8992                        }
8993                      }
8994                    },
8995                    {
8996                      "type": "VariableDeclaration",
8997                      "declarations": [
8998                        {
8999                          "type": "VariableDeclarator",
9000                          "id": {
9001                            "type": "Identifier",
9002                            "name": "res",
9003                            "typeAnnotation": {
9004                              "type": "ETSTypeReference",
9005                              "part": {
9006                                "type": "ETSTypeReferencePart",
9007                                "name": {
9008                                  "type": "Identifier",
9009                                  "name": "T",
9010                                  "decorators": [],
9011                                  "loc": {
9012                                    "start": {
9013                                      "line": 94,
9014                                      "column": 18,
9015                                      "program": "generic_arrayaslist.ets"
9016                                    },
9017                                    "end": {
9018                                      "line": 94,
9019                                      "column": 19,
9020                                      "program": "generic_arrayaslist.ets"
9021                                    }
9022                                  }
9023                                },
9024                                "loc": {
9025                                  "start": {
9026                                    "line": 94,
9027                                    "column": 18,
9028                                    "program": "generic_arrayaslist.ets"
9029                                  },
9030                                  "end": {
9031                                    "line": 94,
9032                                    "column": 21,
9033                                    "program": "generic_arrayaslist.ets"
9034                                  }
9035                                }
9036                              },
9037                              "loc": {
9038                                "start": {
9039                                  "line": 94,
9040                                  "column": 18,
9041                                  "program": "generic_arrayaslist.ets"
9042                                },
9043                                "end": {
9044                                  "line": 94,
9045                                  "column": 21,
9046                                  "program": "generic_arrayaslist.ets"
9047                                }
9048                              }
9049                            },
9050                            "decorators": [],
9051                            "loc": {
9052                              "start": {
9053                                "line": 94,
9054                                "column": 13,
9055                                "program": "generic_arrayaslist.ets"
9056                              },
9057                              "end": {
9058                                "line": 94,
9059                                "column": 16,
9060                                "program": "generic_arrayaslist.ets"
9061                              }
9062                            }
9063                          },
9064                          "init": {
9065                            "type": "TSAsExpression",
9066                            "expression": {
9067                              "type": "MemberExpression",
9068                              "object": {
9069                                "type": "MemberExpression",
9070                                "object": {
9071                                  "type": "ThisExpression",
9072                                  "loc": {
9073                                    "start": {
9074                                      "line": 94,
9075                                      "column": 22,
9076                                      "program": "generic_arrayaslist.ets"
9077                                    },
9078                                    "end": {
9079                                      "line": 94,
9080                                      "column": 26,
9081                                      "program": "generic_arrayaslist.ets"
9082                                    }
9083                                  }
9084                                },
9085                                "property": {
9086                                  "type": "Identifier",
9087                                  "name": "data",
9088                                  "decorators": [],
9089                                  "loc": {
9090                                    "start": {
9091                                      "line": 94,
9092                                      "column": 27,
9093                                      "program": "generic_arrayaslist.ets"
9094                                    },
9095                                    "end": {
9096                                      "line": 94,
9097                                      "column": 31,
9098                                      "program": "generic_arrayaslist.ets"
9099                                    }
9100                                  }
9101                                },
9102                                "computed": false,
9103                                "optional": false,
9104                                "loc": {
9105                                  "start": {
9106                                    "line": 94,
9107                                    "column": 22,
9108                                    "program": "generic_arrayaslist.ets"
9109                                  },
9110                                  "end": {
9111                                    "line": 94,
9112                                    "column": 31,
9113                                    "program": "generic_arrayaslist.ets"
9114                                  }
9115                                }
9116                              },
9117                              "property": {
9118                                "type": "NumberLiteral",
9119                                "value": 0,
9120                                "loc": {
9121                                  "start": {
9122                                    "line": 94,
9123                                    "column": 32,
9124                                    "program": "generic_arrayaslist.ets"
9125                                  },
9126                                  "end": {
9127                                    "line": 94,
9128                                    "column": 33,
9129                                    "program": "generic_arrayaslist.ets"
9130                                  }
9131                                }
9132                              },
9133                              "computed": true,
9134                              "optional": false,
9135                              "loc": {
9136                                "start": {
9137                                  "line": 94,
9138                                  "column": 22,
9139                                  "program": "generic_arrayaslist.ets"
9140                                },
9141                                "end": {
9142                                  "line": 94,
9143                                  "column": 34,
9144                                  "program": "generic_arrayaslist.ets"
9145                                }
9146                              }
9147                            },
9148                            "typeAnnotation": {
9149                              "type": "ETSTypeReference",
9150                              "part": {
9151                                "type": "ETSTypeReferencePart",
9152                                "name": {
9153                                  "type": "Identifier",
9154                                  "name": "T",
9155                                  "decorators": [],
9156                                  "loc": {
9157                                    "start": {
9158                                      "line": 94,
9159                                      "column": 38,
9160                                      "program": "generic_arrayaslist.ets"
9161                                    },
9162                                    "end": {
9163                                      "line": 94,
9164                                      "column": 39,
9165                                      "program": "generic_arrayaslist.ets"
9166                                    }
9167                                  }
9168                                },
9169                                "loc": {
9170                                  "start": {
9171                                    "line": 94,
9172                                    "column": 38,
9173                                    "program": "generic_arrayaslist.ets"
9174                                  },
9175                                  "end": {
9176                                    "line": 94,
9177                                    "column": 40,
9178                                    "program": "generic_arrayaslist.ets"
9179                                  }
9180                                }
9181                              },
9182                              "loc": {
9183                                "start": {
9184                                  "line": 94,
9185                                  "column": 38,
9186                                  "program": "generic_arrayaslist.ets"
9187                                },
9188                                "end": {
9189                                  "line": 94,
9190                                  "column": 40,
9191                                  "program": "generic_arrayaslist.ets"
9192                                }
9193                              }
9194                            },
9195                            "loc": {
9196                              "start": {
9197                                "line": 94,
9198                                "column": 22,
9199                                "program": "generic_arrayaslist.ets"
9200                              },
9201                              "end": {
9202                                "line": 94,
9203                                "column": 34,
9204                                "program": "generic_arrayaslist.ets"
9205                              }
9206                            }
9207                          },
9208                          "loc": {
9209                            "start": {
9210                              "line": 94,
9211                              "column": 13,
9212                              "program": "generic_arrayaslist.ets"
9213                            },
9214                            "end": {
9215                              "line": 94,
9216                              "column": 34,
9217                              "program": "generic_arrayaslist.ets"
9218                            }
9219                          }
9220                        }
9221                      ],
9222                      "kind": "let",
9223                      "loc": {
9224                        "start": {
9225                          "line": 94,
9226                          "column": 9,
9227                          "program": "generic_arrayaslist.ets"
9228                        },
9229                        "end": {
9230                          "line": 94,
9231                          "column": 40,
9232                          "program": "generic_arrayaslist.ets"
9233                        }
9234                      }
9235                    },
9236                    {
9237                      "type": "ForUpdateStatement",
9238                      "init": {
9239                        "type": "VariableDeclaration",
9240                        "declarations": [
9241                          {
9242                            "type": "VariableDeclarator",
9243                            "id": {
9244                              "type": "Identifier",
9245                              "name": "i",
9246                              "decorators": [],
9247                              "loc": {
9248                                "start": {
9249                                  "line": 95,
9250                                  "column": 18,
9251                                  "program": "generic_arrayaslist.ets"
9252                                },
9253                                "end": {
9254                                  "line": 95,
9255                                  "column": 19,
9256                                  "program": "generic_arrayaslist.ets"
9257                                }
9258                              }
9259                            },
9260                            "init": {
9261                              "type": "NumberLiteral",
9262                              "value": 1,
9263                              "loc": {
9264                                "start": {
9265                                  "line": 95,
9266                                  "column": 22,
9267                                  "program": "generic_arrayaslist.ets"
9268                                },
9269                                "end": {
9270                                  "line": 95,
9271                                  "column": 23,
9272                                  "program": "generic_arrayaslist.ets"
9273                                }
9274                              }
9275                            },
9276                            "loc": {
9277                              "start": {
9278                                "line": 95,
9279                                "column": 18,
9280                                "program": "generic_arrayaslist.ets"
9281                              },
9282                              "end": {
9283                                "line": 95,
9284                                "column": 23,
9285                                "program": "generic_arrayaslist.ets"
9286                              }
9287                            }
9288                          }
9289                        ],
9290                        "kind": "let",
9291                        "loc": {
9292                          "start": {
9293                            "line": 95,
9294                            "column": 14,
9295                            "program": "generic_arrayaslist.ets"
9296                          },
9297                          "end": {
9298                            "line": 95,
9299                            "column": 23,
9300                            "program": "generic_arrayaslist.ets"
9301                          }
9302                        }
9303                      },
9304                      "test": {
9305                        "type": "BinaryExpression",
9306                        "operator": "<",
9307                        "left": {
9308                          "type": "Identifier",
9309                          "name": "i",
9310                          "decorators": [],
9311                          "loc": {
9312                            "start": {
9313                              "line": 95,
9314                              "column": 25,
9315                              "program": "generic_arrayaslist.ets"
9316                            },
9317                            "end": {
9318                              "line": 95,
9319                              "column": 26,
9320                              "program": "generic_arrayaslist.ets"
9321                            }
9322                          }
9323                        },
9324                        "right": {
9325                          "type": "MemberExpression",
9326                          "object": {
9327                            "type": "ThisExpression",
9328                            "loc": {
9329                              "start": {
9330                                "line": 95,
9331                                "column": 29,
9332                                "program": "generic_arrayaslist.ets"
9333                              },
9334                              "end": {
9335                                "line": 95,
9336                                "column": 33,
9337                                "program": "generic_arrayaslist.ets"
9338                              }
9339                            }
9340                          },
9341                          "property": {
9342                            "type": "Identifier",
9343                            "name": "curSize",
9344                            "decorators": [],
9345                            "loc": {
9346                              "start": {
9347                                "line": 95,
9348                                "column": 34,
9349                                "program": "generic_arrayaslist.ets"
9350                              },
9351                              "end": {
9352                                "line": 95,
9353                                "column": 41,
9354                                "program": "generic_arrayaslist.ets"
9355                              }
9356                            }
9357                          },
9358                          "computed": false,
9359                          "optional": false,
9360                          "loc": {
9361                            "start": {
9362                              "line": 95,
9363                              "column": 29,
9364                              "program": "generic_arrayaslist.ets"
9365                            },
9366                            "end": {
9367                              "line": 95,
9368                              "column": 41,
9369                              "program": "generic_arrayaslist.ets"
9370                            }
9371                          }
9372                        },
9373                        "loc": {
9374                          "start": {
9375                            "line": 95,
9376                            "column": 25,
9377                            "program": "generic_arrayaslist.ets"
9378                          },
9379                          "end": {
9380                            "line": 95,
9381                            "column": 41,
9382                            "program": "generic_arrayaslist.ets"
9383                          }
9384                        }
9385                      },
9386                      "update": {
9387                        "type": "UpdateExpression",
9388                        "operator": "++",
9389                        "prefix": true,
9390                        "argument": {
9391                          "type": "Identifier",
9392                          "name": "i",
9393                          "decorators": [],
9394                          "loc": {
9395                            "start": {
9396                              "line": 95,
9397                              "column": 45,
9398                              "program": "generic_arrayaslist.ets"
9399                            },
9400                            "end": {
9401                              "line": 95,
9402                              "column": 46,
9403                              "program": "generic_arrayaslist.ets"
9404                            }
9405                          }
9406                        },
9407                        "loc": {
9408                          "start": {
9409                            "line": 95,
9410                            "column": 43,
9411                            "program": "generic_arrayaslist.ets"
9412                          },
9413                          "end": {
9414                            "line": 95,
9415                            "column": 46,
9416                            "program": "generic_arrayaslist.ets"
9417                          }
9418                        }
9419                      },
9420                      "body": {
9421                        "type": "BlockStatement",
9422                        "statements": [
9423                          {
9424                            "type": "ExpressionStatement",
9425                            "expression": {
9426                              "type": "AssignmentExpression",
9427                              "operator": "=",
9428                              "left": {
9429                                "type": "MemberExpression",
9430                                "object": {
9431                                  "type": "MemberExpression",
9432                                  "object": {
9433                                    "type": "ThisExpression",
9434                                    "loc": {
9435                                      "start": {
9436                                        "line": 96,
9437                                        "column": 13,
9438                                        "program": "generic_arrayaslist.ets"
9439                                      },
9440                                      "end": {
9441                                        "line": 96,
9442                                        "column": 17,
9443                                        "program": "generic_arrayaslist.ets"
9444                                      }
9445                                    }
9446                                  },
9447                                  "property": {
9448                                    "type": "Identifier",
9449                                    "name": "data",
9450                                    "decorators": [],
9451                                    "loc": {
9452                                      "start": {
9453                                        "line": 96,
9454                                        "column": 18,
9455                                        "program": "generic_arrayaslist.ets"
9456                                      },
9457                                      "end": {
9458                                        "line": 96,
9459                                        "column": 22,
9460                                        "program": "generic_arrayaslist.ets"
9461                                      }
9462                                    }
9463                                  },
9464                                  "computed": false,
9465                                  "optional": false,
9466                                  "loc": {
9467                                    "start": {
9468                                      "line": 96,
9469                                      "column": 13,
9470                                      "program": "generic_arrayaslist.ets"
9471                                    },
9472                                    "end": {
9473                                      "line": 96,
9474                                      "column": 22,
9475                                      "program": "generic_arrayaslist.ets"
9476                                    }
9477                                  }
9478                                },
9479                                "property": {
9480                                  "type": "BinaryExpression",
9481                                  "operator": "-",
9482                                  "left": {
9483                                    "type": "Identifier",
9484                                    "name": "i",
9485                                    "decorators": [],
9486                                    "loc": {
9487                                      "start": {
9488                                        "line": 96,
9489                                        "column": 23,
9490                                        "program": "generic_arrayaslist.ets"
9491                                      },
9492                                      "end": {
9493                                        "line": 96,
9494                                        "column": 24,
9495                                        "program": "generic_arrayaslist.ets"
9496                                      }
9497                                    }
9498                                  },
9499                                  "right": {
9500                                    "type": "NumberLiteral",
9501                                    "value": 1,
9502                                    "loc": {
9503                                      "start": {
9504                                        "line": 96,
9505                                        "column": 25,
9506                                        "program": "generic_arrayaslist.ets"
9507                                      },
9508                                      "end": {
9509                                        "line": 96,
9510                                        "column": 26,
9511                                        "program": "generic_arrayaslist.ets"
9512                                      }
9513                                    }
9514                                  },
9515                                  "loc": {
9516                                    "start": {
9517                                      "line": 96,
9518                                      "column": 23,
9519                                      "program": "generic_arrayaslist.ets"
9520                                    },
9521                                    "end": {
9522                                      "line": 96,
9523                                      "column": 26,
9524                                      "program": "generic_arrayaslist.ets"
9525                                    }
9526                                  }
9527                                },
9528                                "computed": true,
9529                                "optional": false,
9530                                "loc": {
9531                                  "start": {
9532                                    "line": 96,
9533                                    "column": 13,
9534                                    "program": "generic_arrayaslist.ets"
9535                                  },
9536                                  "end": {
9537                                    "line": 96,
9538                                    "column": 27,
9539                                    "program": "generic_arrayaslist.ets"
9540                                  }
9541                                }
9542                              },
9543                              "right": {
9544                                "type": "MemberExpression",
9545                                "object": {
9546                                  "type": "MemberExpression",
9547                                  "object": {
9548                                    "type": "ThisExpression",
9549                                    "loc": {
9550                                      "start": {
9551                                        "line": 96,
9552                                        "column": 30,
9553                                        "program": "generic_arrayaslist.ets"
9554                                      },
9555                                      "end": {
9556                                        "line": 96,
9557                                        "column": 34,
9558                                        "program": "generic_arrayaslist.ets"
9559                                      }
9560                                    }
9561                                  },
9562                                  "property": {
9563                                    "type": "Identifier",
9564                                    "name": "data",
9565                                    "decorators": [],
9566                                    "loc": {
9567                                      "start": {
9568                                        "line": 96,
9569                                        "column": 35,
9570                                        "program": "generic_arrayaslist.ets"
9571                                      },
9572                                      "end": {
9573                                        "line": 96,
9574                                        "column": 39,
9575                                        "program": "generic_arrayaslist.ets"
9576                                      }
9577                                    }
9578                                  },
9579                                  "computed": false,
9580                                  "optional": false,
9581                                  "loc": {
9582                                    "start": {
9583                                      "line": 96,
9584                                      "column": 30,
9585                                      "program": "generic_arrayaslist.ets"
9586                                    },
9587                                    "end": {
9588                                      "line": 96,
9589                                      "column": 39,
9590                                      "program": "generic_arrayaslist.ets"
9591                                    }
9592                                  }
9593                                },
9594                                "property": {
9595                                  "type": "Identifier",
9596                                  "name": "i",
9597                                  "decorators": [],
9598                                  "loc": {
9599                                    "start": {
9600                                      "line": 96,
9601                                      "column": 40,
9602                                      "program": "generic_arrayaslist.ets"
9603                                    },
9604                                    "end": {
9605                                      "line": 96,
9606                                      "column": 41,
9607                                      "program": "generic_arrayaslist.ets"
9608                                    }
9609                                  }
9610                                },
9611                                "computed": true,
9612                                "optional": false,
9613                                "loc": {
9614                                  "start": {
9615                                    "line": 96,
9616                                    "column": 30,
9617                                    "program": "generic_arrayaslist.ets"
9618                                  },
9619                                  "end": {
9620                                    "line": 96,
9621                                    "column": 42,
9622                                    "program": "generic_arrayaslist.ets"
9623                                  }
9624                                }
9625                              },
9626                              "loc": {
9627                                "start": {
9628                                  "line": 96,
9629                                  "column": 13,
9630                                  "program": "generic_arrayaslist.ets"
9631                                },
9632                                "end": {
9633                                  "line": 96,
9634                                  "column": 42,
9635                                  "program": "generic_arrayaslist.ets"
9636                                }
9637                              }
9638                            },
9639                            "loc": {
9640                              "start": {
9641                                "line": 96,
9642                                "column": 13,
9643                                "program": "generic_arrayaslist.ets"
9644                              },
9645                              "end": {
9646                                "line": 96,
9647                                "column": 43,
9648                                "program": "generic_arrayaslist.ets"
9649                              }
9650                            }
9651                          }
9652                        ],
9653                        "loc": {
9654                          "start": {
9655                            "line": 95,
9656                            "column": 48,
9657                            "program": "generic_arrayaslist.ets"
9658                          },
9659                          "end": {
9660                            "line": 97,
9661                            "column": 10,
9662                            "program": "generic_arrayaslist.ets"
9663                          }
9664                        }
9665                      },
9666                      "loc": {
9667                        "start": {
9668                          "line": 95,
9669                          "column": 9,
9670                          "program": "generic_arrayaslist.ets"
9671                        },
9672                        "end": {
9673                          "line": 97,
9674                          "column": 10,
9675                          "program": "generic_arrayaslist.ets"
9676                        }
9677                      }
9678                    },
9679                    {
9680                      "type": "ExpressionStatement",
9681                      "expression": {
9682                        "type": "UpdateExpression",
9683                        "operator": "--",
9684                        "prefix": true,
9685                        "argument": {
9686                          "type": "MemberExpression",
9687                          "object": {
9688                            "type": "ThisExpression",
9689                            "loc": {
9690                              "start": {
9691                                "line": 98,
9692                                "column": 11,
9693                                "program": "generic_arrayaslist.ets"
9694                              },
9695                              "end": {
9696                                "line": 98,
9697                                "column": 15,
9698                                "program": "generic_arrayaslist.ets"
9699                              }
9700                            }
9701                          },
9702                          "property": {
9703                            "type": "Identifier",
9704                            "name": "curSize",
9705                            "decorators": [],
9706                            "loc": {
9707                              "start": {
9708                                "line": 98,
9709                                "column": 16,
9710                                "program": "generic_arrayaslist.ets"
9711                              },
9712                              "end": {
9713                                "line": 98,
9714                                "column": 23,
9715                                "program": "generic_arrayaslist.ets"
9716                              }
9717                            }
9718                          },
9719                          "computed": false,
9720                          "optional": false,
9721                          "loc": {
9722                            "start": {
9723                              "line": 98,
9724                              "column": 11,
9725                              "program": "generic_arrayaslist.ets"
9726                            },
9727                            "end": {
9728                              "line": 98,
9729                              "column": 23,
9730                              "program": "generic_arrayaslist.ets"
9731                            }
9732                          }
9733                        },
9734                        "loc": {
9735                          "start": {
9736                            "line": 98,
9737                            "column": 9,
9738                            "program": "generic_arrayaslist.ets"
9739                          },
9740                          "end": {
9741                            "line": 98,
9742                            "column": 23,
9743                            "program": "generic_arrayaslist.ets"
9744                          }
9745                        }
9746                      },
9747                      "loc": {
9748                        "start": {
9749                          "line": 98,
9750                          "column": 9,
9751                          "program": "generic_arrayaslist.ets"
9752                        },
9753                        "end": {
9754                          "line": 98,
9755                          "column": 24,
9756                          "program": "generic_arrayaslist.ets"
9757                        }
9758                      }
9759                    },
9760                    {
9761                      "type": "ReturnStatement",
9762                      "argument": {
9763                        "type": "Identifier",
9764                        "name": "res",
9765                        "decorators": [],
9766                        "loc": {
9767                          "start": {
9768                            "line": 99,
9769                            "column": 16,
9770                            "program": "generic_arrayaslist.ets"
9771                          },
9772                          "end": {
9773                            "line": 99,
9774                            "column": 19,
9775                            "program": "generic_arrayaslist.ets"
9776                          }
9777                        }
9778                      },
9779                      "loc": {
9780                        "start": {
9781                          "line": 99,
9782                          "column": 9,
9783                          "program": "generic_arrayaslist.ets"
9784                        },
9785                        "end": {
9786                          "line": 99,
9787                          "column": 20,
9788                          "program": "generic_arrayaslist.ets"
9789                        }
9790                      }
9791                    }
9792                  ],
9793                  "loc": {
9794                    "start": {
9795                      "line": 92,
9796                      "column": 35,
9797                      "program": "generic_arrayaslist.ets"
9798                    },
9799                    "end": {
9800                      "line": 100,
9801                      "column": 6,
9802                      "program": "generic_arrayaslist.ets"
9803                    }
9804                  }
9805                },
9806                "loc": {
9807                  "start": {
9808                    "line": 92,
9809                    "column": 29,
9810                    "program": "generic_arrayaslist.ets"
9811                  },
9812                  "end": {
9813                    "line": 100,
9814                    "column": 6,
9815                    "program": "generic_arrayaslist.ets"
9816                  }
9817                }
9818              },
9819              "loc": {
9820                "start": {
9821                  "line": 92,
9822                  "column": 29,
9823                  "program": "generic_arrayaslist.ets"
9824                },
9825                "end": {
9826                  "line": 100,
9827                  "column": 6,
9828                  "program": "generic_arrayaslist.ets"
9829                }
9830              }
9831            },
9832            "overloads": [],
9833            "decorators": [],
9834            "loc": {
9835              "start": {
9836                "line": 92,
9837                "column": 5,
9838                "program": "generic_arrayaslist.ets"
9839              },
9840              "end": {
9841                "line": 100,
9842                "column": 6,
9843                "program": "generic_arrayaslist.ets"
9844              }
9845            }
9846          },
9847          {
9848            "type": "MethodDefinition",
9849            "key": {
9850              "type": "Identifier",
9851              "name": "pushBack",
9852              "decorators": [],
9853              "loc": {
9854                "start": {
9855                  "line": 102,
9856                  "column": 21,
9857                  "program": "generic_arrayaslist.ets"
9858                },
9859                "end": {
9860                  "line": 102,
9861                  "column": 29,
9862                  "program": "generic_arrayaslist.ets"
9863                }
9864              }
9865            },
9866            "kind": "method",
9867            "accessibility": "public",
9868            "static": false,
9869            "optional": false,
9870            "computed": false,
9871            "value": {
9872              "type": "FunctionExpression",
9873              "function": {
9874                "type": "ScriptFunction",
9875                "id": {
9876                  "type": "Identifier",
9877                  "name": "pushBack",
9878                  "decorators": [],
9879                  "loc": {
9880                    "start": {
9881                      "line": 102,
9882                      "column": 21,
9883                      "program": "generic_arrayaslist.ets"
9884                    },
9885                    "end": {
9886                      "line": 102,
9887                      "column": 29,
9888                      "program": "generic_arrayaslist.ets"
9889                    }
9890                  }
9891                },
9892                "generator": false,
9893                "async": false,
9894                "expression": false,
9895                "params": [
9896                  {
9897                    "type": "ETSParameterExpression",
9898                    "name": {
9899                      "type": "Identifier",
9900                      "name": "e",
9901                      "typeAnnotation": {
9902                        "type": "ETSTypeReference",
9903                        "part": {
9904                          "type": "ETSTypeReferencePart",
9905                          "name": {
9906                            "type": "Identifier",
9907                            "name": "T",
9908                            "decorators": [],
9909                            "loc": {
9910                              "start": {
9911                                "line": 102,
9912                                "column": 33,
9913                                "program": "generic_arrayaslist.ets"
9914                              },
9915                              "end": {
9916                                "line": 102,
9917                                "column": 34,
9918                                "program": "generic_arrayaslist.ets"
9919                              }
9920                            }
9921                          },
9922                          "loc": {
9923                            "start": {
9924                              "line": 102,
9925                              "column": 33,
9926                              "program": "generic_arrayaslist.ets"
9927                            },
9928                            "end": {
9929                              "line": 102,
9930                              "column": 35,
9931                              "program": "generic_arrayaslist.ets"
9932                            }
9933                          }
9934                        },
9935                        "loc": {
9936                          "start": {
9937                            "line": 102,
9938                            "column": 33,
9939                            "program": "generic_arrayaslist.ets"
9940                          },
9941                          "end": {
9942                            "line": 102,
9943                            "column": 35,
9944                            "program": "generic_arrayaslist.ets"
9945                          }
9946                        }
9947                      },
9948                      "decorators": [],
9949                      "loc": {
9950                        "start": {
9951                          "line": 102,
9952                          "column": 30,
9953                          "program": "generic_arrayaslist.ets"
9954                        },
9955                        "end": {
9956                          "line": 102,
9957                          "column": 35,
9958                          "program": "generic_arrayaslist.ets"
9959                        }
9960                      }
9961                    },
9962                    "loc": {
9963                      "start": {
9964                        "line": 102,
9965                        "column": 30,
9966                        "program": "generic_arrayaslist.ets"
9967                      },
9968                      "end": {
9969                        "line": 102,
9970                        "column": 35,
9971                        "program": "generic_arrayaslist.ets"
9972                      }
9973                    }
9974                  }
9975                ],
9976                "returnType": {
9977                  "type": "ETSPrimitiveType",
9978                  "loc": {
9979                    "start": {
9980                      "line": 102,
9981                      "column": 37,
9982                      "program": "generic_arrayaslist.ets"
9983                    },
9984                    "end": {
9985                      "line": 102,
9986                      "column": 41,
9987                      "program": "generic_arrayaslist.ets"
9988                    }
9989                  }
9990                },
9991                "body": {
9992                  "type": "BlockStatement",
9993                  "statements": [
9994                    {
9995                      "type": "IfStatement",
9996                      "test": {
9997                        "type": "BinaryExpression",
9998                        "operator": "==",
9999                        "left": {
10000                          "type": "MemberExpression",
10001                          "object": {
10002                            "type": "ThisExpression",
10003                            "loc": {
10004                              "start": {
10005                                "line": 103,
10006                                "column": 13,
10007                                "program": "generic_arrayaslist.ets"
10008                              },
10009                              "end": {
10010                                "line": 103,
10011                                "column": 17,
10012                                "program": "generic_arrayaslist.ets"
10013                              }
10014                            }
10015                          },
10016                          "property": {
10017                            "type": "Identifier",
10018                            "name": "curSize",
10019                            "decorators": [],
10020                            "loc": {
10021                              "start": {
10022                                "line": 103,
10023                                "column": 18,
10024                                "program": "generic_arrayaslist.ets"
10025                              },
10026                              "end": {
10027                                "line": 103,
10028                                "column": 25,
10029                                "program": "generic_arrayaslist.ets"
10030                              }
10031                            }
10032                          },
10033                          "computed": false,
10034                          "optional": false,
10035                          "loc": {
10036                            "start": {
10037                              "line": 103,
10038                              "column": 13,
10039                              "program": "generic_arrayaslist.ets"
10040                            },
10041                            "end": {
10042                              "line": 103,
10043                              "column": 25,
10044                              "program": "generic_arrayaslist.ets"
10045                            }
10046                          }
10047                        },
10048                        "right": {
10049                          "type": "MemberExpression",
10050                          "object": {
10051                            "type": "MemberExpression",
10052                            "object": {
10053                              "type": "ThisExpression",
10054                              "loc": {
10055                                "start": {
10056                                  "line": 103,
10057                                  "column": 29,
10058                                  "program": "generic_arrayaslist.ets"
10059                                },
10060                                "end": {
10061                                  "line": 103,
10062                                  "column": 33,
10063                                  "program": "generic_arrayaslist.ets"
10064                                }
10065                              }
10066                            },
10067                            "property": {
10068                              "type": "Identifier",
10069                              "name": "data",
10070                              "decorators": [],
10071                              "loc": {
10072                                "start": {
10073                                  "line": 103,
10074                                  "column": 34,
10075                                  "program": "generic_arrayaslist.ets"
10076                                },
10077                                "end": {
10078                                  "line": 103,
10079                                  "column": 38,
10080                                  "program": "generic_arrayaslist.ets"
10081                                }
10082                              }
10083                            },
10084                            "computed": false,
10085                            "optional": false,
10086                            "loc": {
10087                              "start": {
10088                                "line": 103,
10089                                "column": 29,
10090                                "program": "generic_arrayaslist.ets"
10091                              },
10092                              "end": {
10093                                "line": 103,
10094                                "column": 38,
10095                                "program": "generic_arrayaslist.ets"
10096                              }
10097                            }
10098                          },
10099                          "property": {
10100                            "type": "Identifier",
10101                            "name": "length",
10102                            "decorators": [],
10103                            "loc": {
10104                              "start": {
10105                                "line": 103,
10106                                "column": 39,
10107                                "program": "generic_arrayaslist.ets"
10108                              },
10109                              "end": {
10110                                "line": 103,
10111                                "column": 45,
10112                                "program": "generic_arrayaslist.ets"
10113                              }
10114                            }
10115                          },
10116                          "computed": false,
10117                          "optional": false,
10118                          "loc": {
10119                            "start": {
10120                              "line": 103,
10121                              "column": 29,
10122                              "program": "generic_arrayaslist.ets"
10123                            },
10124                            "end": {
10125                              "line": 103,
10126                              "column": 45,
10127                              "program": "generic_arrayaslist.ets"
10128                            }
10129                          }
10130                        },
10131                        "loc": {
10132                          "start": {
10133                            "line": 103,
10134                            "column": 13,
10135                            "program": "generic_arrayaslist.ets"
10136                          },
10137                          "end": {
10138                            "line": 103,
10139                            "column": 45,
10140                            "program": "generic_arrayaslist.ets"
10141                          }
10142                        }
10143                      },
10144                      "consequent": {
10145                        "type": "BlockStatement",
10146                        "statements": [
10147                          {
10148                            "type": "VariableDeclaration",
10149                            "declarations": [
10150                              {
10151                                "type": "VariableDeclarator",
10152                                "id": {
10153                                  "type": "Identifier",
10154                                  "name": "newData",
10155                                  "decorators": [],
10156                                  "loc": {
10157                                    "start": {
10158                                      "line": 104,
10159                                      "column": 17,
10160                                      "program": "generic_arrayaslist.ets"
10161                                    },
10162                                    "end": {
10163                                      "line": 104,
10164                                      "column": 24,
10165                                      "program": "generic_arrayaslist.ets"
10166                                    }
10167                                  }
10168                                },
10169                                "init": {
10170                                  "type": "ETSNewArrayInstanceExpression",
10171                                  "typeReference": {
10172                                    "type": "ETSUnionType",
10173                                    "types": [
10174                                      {
10175                                        "type": "ETSTypeReference",
10176                                        "part": {
10177                                          "type": "ETSTypeReferencePart",
10178                                          "name": {
10179                                            "type": "Identifier",
10180                                            "name": "T",
10181                                            "decorators": [],
10182                                            "loc": {
10183                                              "start": {
10184                                                "line": 104,
10185                                                "column": 32,
10186                                                "program": "generic_arrayaslist.ets"
10187                                              },
10188                                              "end": {
10189                                                "line": 104,
10190                                                "column": 33,
10191                                                "program": "generic_arrayaslist.ets"
10192                                              }
10193                                            }
10194                                          },
10195                                          "loc": {
10196                                            "start": {
10197                                              "line": 104,
10198                                              "column": 32,
10199                                              "program": "generic_arrayaslist.ets"
10200                                            },
10201                                            "end": {
10202                                              "line": 104,
10203                                              "column": 35,
10204                                              "program": "generic_arrayaslist.ets"
10205                                            }
10206                                          }
10207                                        },
10208                                        "loc": {
10209                                          "start": {
10210                                            "line": 104,
10211                                            "column": 32,
10212                                            "program": "generic_arrayaslist.ets"
10213                                          },
10214                                          "end": {
10215                                            "line": 104,
10216                                            "column": 35,
10217                                            "program": "generic_arrayaslist.ets"
10218                                          }
10219                                        }
10220                                      },
10221                                      {
10222                                        "type": "ETSUndefinedType",
10223                                        "loc": {
10224                                          "start": {
10225                                            "line": 104,
10226                                            "column": 36,
10227                                            "program": "generic_arrayaslist.ets"
10228                                          },
10229                                          "end": {
10230                                            "line": 104,
10231                                            "column": 45,
10232                                            "program": "generic_arrayaslist.ets"
10233                                          }
10234                                        }
10235                                      }
10236                                    ],
10237                                    "loc": {
10238                                      "start": {
10239                                        "line": 104,
10240                                        "column": 31,
10241                                        "program": "generic_arrayaslist.ets"
10242                                      },
10243                                      "end": {
10244                                        "line": 104,
10245                                        "column": 45,
10246                                        "program": "generic_arrayaslist.ets"
10247                                      }
10248                                    }
10249                                  },
10250                                  "dimension": {
10251                                    "type": "CallExpression",
10252                                    "callee": {
10253                                      "type": "MemberExpression",
10254                                      "object": {
10255                                        "type": "ThisExpression",
10256                                        "loc": {
10257                                          "start": {
10258                                            "line": 104,
10259                                            "column": 47,
10260                                            "program": "generic_arrayaslist.ets"
10261                                          },
10262                                          "end": {
10263                                            "line": 104,
10264                                            "column": 51,
10265                                            "program": "generic_arrayaslist.ets"
10266                                          }
10267                                        }
10268                                      },
10269                                      "property": {
10270                                        "type": "Identifier",
10271                                        "name": "getNewCapacity",
10272                                        "decorators": [],
10273                                        "loc": {
10274                                          "start": {
10275                                            "line": 104,
10276                                            "column": 52,
10277                                            "program": "generic_arrayaslist.ets"
10278                                          },
10279                                          "end": {
10280                                            "line": 104,
10281                                            "column": 66,
10282                                            "program": "generic_arrayaslist.ets"
10283                                          }
10284                                        }
10285                                      },
10286                                      "computed": false,
10287                                      "optional": false,
10288                                      "loc": {
10289                                        "start": {
10290                                          "line": 104,
10291                                          "column": 47,
10292                                          "program": "generic_arrayaslist.ets"
10293                                        },
10294                                        "end": {
10295                                          "line": 104,
10296                                          "column": 66,
10297                                          "program": "generic_arrayaslist.ets"
10298                                        }
10299                                      }
10300                                    },
10301                                    "arguments": [
10302                                      {
10303                                        "type": "TSAsExpression",
10304                                        "expression": {
10305                                          "type": "MemberExpression",
10306                                          "object": {
10307                                            "type": "MemberExpression",
10308                                            "object": {
10309                                              "type": "ThisExpression",
10310                                              "loc": {
10311                                                "start": {
10312                                                  "line": 104,
10313                                                  "column": 67,
10314                                                  "program": "generic_arrayaslist.ets"
10315                                                },
10316                                                "end": {
10317                                                  "line": 104,
10318                                                  "column": 71,
10319                                                  "program": "generic_arrayaslist.ets"
10320                                                }
10321                                              }
10322                                            },
10323                                            "property": {
10324                                              "type": "Identifier",
10325                                              "name": "data",
10326                                              "decorators": [],
10327                                              "loc": {
10328                                                "start": {
10329                                                  "line": 104,
10330                                                  "column": 72,
10331                                                  "program": "generic_arrayaslist.ets"
10332                                                },
10333                                                "end": {
10334                                                  "line": 104,
10335                                                  "column": 76,
10336                                                  "program": "generic_arrayaslist.ets"
10337                                                }
10338                                              }
10339                                            },
10340                                            "computed": false,
10341                                            "optional": false,
10342                                            "loc": {
10343                                              "start": {
10344                                                "line": 104,
10345                                                "column": 67,
10346                                                "program": "generic_arrayaslist.ets"
10347                                              },
10348                                              "end": {
10349                                                "line": 104,
10350                                                "column": 76,
10351                                                "program": "generic_arrayaslist.ets"
10352                                              }
10353                                            }
10354                                          },
10355                                          "property": {
10356                                            "type": "Identifier",
10357                                            "name": "length",
10358                                            "decorators": [],
10359                                            "loc": {
10360                                              "start": {
10361                                                "line": 104,
10362                                                "column": 77,
10363                                                "program": "generic_arrayaslist.ets"
10364                                              },
10365                                              "end": {
10366                                                "line": 104,
10367                                                "column": 83,
10368                                                "program": "generic_arrayaslist.ets"
10369                                              }
10370                                            }
10371                                          },
10372                                          "computed": false,
10373                                          "optional": false,
10374                                          "loc": {
10375                                            "start": {
10376                                              "line": 104,
10377                                              "column": 67,
10378                                              "program": "generic_arrayaslist.ets"
10379                                            },
10380                                            "end": {
10381                                              "line": 104,
10382                                              "column": 83,
10383                                              "program": "generic_arrayaslist.ets"
10384                                            }
10385                                          }
10386                                        },
10387                                        "typeAnnotation": {
10388                                          "type": "ETSPrimitiveType",
10389                                          "loc": {
10390                                            "start": {
10391                                              "line": 104,
10392                                              "column": 87,
10393                                              "program": "generic_arrayaslist.ets"
10394                                            },
10395                                            "end": {
10396                                              "line": 104,
10397                                              "column": 90,
10398                                              "program": "generic_arrayaslist.ets"
10399                                            }
10400                                          }
10401                                        },
10402                                        "loc": {
10403                                          "start": {
10404                                            "line": 104,
10405                                            "column": 67,
10406                                            "program": "generic_arrayaslist.ets"
10407                                          },
10408                                          "end": {
10409                                            "line": 104,
10410                                            "column": 83,
10411                                            "program": "generic_arrayaslist.ets"
10412                                          }
10413                                        }
10414                                      }
10415                                    ],
10416                                    "optional": false,
10417                                    "loc": {
10418                                      "start": {
10419                                        "line": 104,
10420                                        "column": 47,
10421                                        "program": "generic_arrayaslist.ets"
10422                                      },
10423                                      "end": {
10424                                        "line": 104,
10425                                        "column": 91,
10426                                        "program": "generic_arrayaslist.ets"
10427                                      }
10428                                    }
10429                                  },
10430                                  "loc": {
10431                                    "start": {
10432                                      "line": 104,
10433                                      "column": 27,
10434                                      "program": "generic_arrayaslist.ets"
10435                                    },
10436                                    "end": {
10437                                      "line": 104,
10438                                      "column": 92,
10439                                      "program": "generic_arrayaslist.ets"
10440                                    }
10441                                  }
10442                                },
10443                                "loc": {
10444                                  "start": {
10445                                    "line": 104,
10446                                    "column": 17,
10447                                    "program": "generic_arrayaslist.ets"
10448                                  },
10449                                  "end": {
10450                                    "line": 104,
10451                                    "column": 92,
10452                                    "program": "generic_arrayaslist.ets"
10453                                  }
10454                                }
10455                              }
10456                            ],
10457                            "kind": "let",
10458                            "loc": {
10459                              "start": {
10460                                "line": 104,
10461                                "column": 13,
10462                                "program": "generic_arrayaslist.ets"
10463                              },
10464                              "end": {
10465                                "line": 104,
10466                                "column": 93,
10467                                "program": "generic_arrayaslist.ets"
10468                              }
10469                            }
10470                          },
10471                          {
10472                            "type": "ForUpdateStatement",
10473                            "init": {
10474                              "type": "VariableDeclaration",
10475                              "declarations": [
10476                                {
10477                                  "type": "VariableDeclarator",
10478                                  "id": {
10479                                    "type": "Identifier",
10480                                    "name": "i",
10481                                    "decorators": [],
10482                                    "loc": {
10483                                      "start": {
10484                                        "line": 105,
10485                                        "column": 22,
10486                                        "program": "generic_arrayaslist.ets"
10487                                      },
10488                                      "end": {
10489                                        "line": 105,
10490                                        "column": 23,
10491                                        "program": "generic_arrayaslist.ets"
10492                                      }
10493                                    }
10494                                  },
10495                                  "init": {
10496                                    "type": "NumberLiteral",
10497                                    "value": 0,
10498                                    "loc": {
10499                                      "start": {
10500                                        "line": 105,
10501                                        "column": 26,
10502                                        "program": "generic_arrayaslist.ets"
10503                                      },
10504                                      "end": {
10505                                        "line": 105,
10506                                        "column": 27,
10507                                        "program": "generic_arrayaslist.ets"
10508                                      }
10509                                    }
10510                                  },
10511                                  "loc": {
10512                                    "start": {
10513                                      "line": 105,
10514                                      "column": 22,
10515                                      "program": "generic_arrayaslist.ets"
10516                                    },
10517                                    "end": {
10518                                      "line": 105,
10519                                      "column": 27,
10520                                      "program": "generic_arrayaslist.ets"
10521                                    }
10522                                  }
10523                                }
10524                              ],
10525                              "kind": "let",
10526                              "loc": {
10527                                "start": {
10528                                  "line": 105,
10529                                  "column": 18,
10530                                  "program": "generic_arrayaslist.ets"
10531                                },
10532                                "end": {
10533                                  "line": 105,
10534                                  "column": 27,
10535                                  "program": "generic_arrayaslist.ets"
10536                                }
10537                              }
10538                            },
10539                            "test": {
10540                              "type": "BinaryExpression",
10541                              "operator": "<",
10542                              "left": {
10543                                "type": "Identifier",
10544                                "name": "i",
10545                                "decorators": [],
10546                                "loc": {
10547                                  "start": {
10548                                    "line": 105,
10549                                    "column": 29,
10550                                    "program": "generic_arrayaslist.ets"
10551                                  },
10552                                  "end": {
10553                                    "line": 105,
10554                                    "column": 30,
10555                                    "program": "generic_arrayaslist.ets"
10556                                  }
10557                                }
10558                              },
10559                              "right": {
10560                                "type": "MemberExpression",
10561                                "object": {
10562                                  "type": "ThisExpression",
10563                                  "loc": {
10564                                    "start": {
10565                                      "line": 105,
10566                                      "column": 33,
10567                                      "program": "generic_arrayaslist.ets"
10568                                    },
10569                                    "end": {
10570                                      "line": 105,
10571                                      "column": 37,
10572                                      "program": "generic_arrayaslist.ets"
10573                                    }
10574                                  }
10575                                },
10576                                "property": {
10577                                  "type": "Identifier",
10578                                  "name": "curSize",
10579                                  "decorators": [],
10580                                  "loc": {
10581                                    "start": {
10582                                      "line": 105,
10583                                      "column": 38,
10584                                      "program": "generic_arrayaslist.ets"
10585                                    },
10586                                    "end": {
10587                                      "line": 105,
10588                                      "column": 45,
10589                                      "program": "generic_arrayaslist.ets"
10590                                    }
10591                                  }
10592                                },
10593                                "computed": false,
10594                                "optional": false,
10595                                "loc": {
10596                                  "start": {
10597                                    "line": 105,
10598                                    "column": 33,
10599                                    "program": "generic_arrayaslist.ets"
10600                                  },
10601                                  "end": {
10602                                    "line": 105,
10603                                    "column": 45,
10604                                    "program": "generic_arrayaslist.ets"
10605                                  }
10606                                }
10607                              },
10608                              "loc": {
10609                                "start": {
10610                                  "line": 105,
10611                                  "column": 29,
10612                                  "program": "generic_arrayaslist.ets"
10613                                },
10614                                "end": {
10615                                  "line": 105,
10616                                  "column": 45,
10617                                  "program": "generic_arrayaslist.ets"
10618                                }
10619                              }
10620                            },
10621                            "update": {
10622                              "type": "UpdateExpression",
10623                              "operator": "++",
10624                              "prefix": true,
10625                              "argument": {
10626                                "type": "Identifier",
10627                                "name": "i",
10628                                "decorators": [],
10629                                "loc": {
10630                                  "start": {
10631                                    "line": 105,
10632                                    "column": 49,
10633                                    "program": "generic_arrayaslist.ets"
10634                                  },
10635                                  "end": {
10636                                    "line": 105,
10637                                    "column": 50,
10638                                    "program": "generic_arrayaslist.ets"
10639                                  }
10640                                }
10641                              },
10642                              "loc": {
10643                                "start": {
10644                                  "line": 105,
10645                                  "column": 47,
10646                                  "program": "generic_arrayaslist.ets"
10647                                },
10648                                "end": {
10649                                  "line": 105,
10650                                  "column": 50,
10651                                  "program": "generic_arrayaslist.ets"
10652                                }
10653                              }
10654                            },
10655                            "body": {
10656                              "type": "BlockStatement",
10657                              "statements": [
10658                                {
10659                                  "type": "ExpressionStatement",
10660                                  "expression": {
10661                                    "type": "AssignmentExpression",
10662                                    "operator": "=",
10663                                    "left": {
10664                                      "type": "MemberExpression",
10665                                      "object": {
10666                                        "type": "Identifier",
10667                                        "name": "newData",
10668                                        "decorators": [],
10669                                        "loc": {
10670                                          "start": {
10671                                            "line": 106,
10672                                            "column": 17,
10673                                            "program": "generic_arrayaslist.ets"
10674                                          },
10675                                          "end": {
10676                                            "line": 106,
10677                                            "column": 24,
10678                                            "program": "generic_arrayaslist.ets"
10679                                          }
10680                                        }
10681                                      },
10682                                      "property": {
10683                                        "type": "Identifier",
10684                                        "name": "i",
10685                                        "decorators": [],
10686                                        "loc": {
10687                                          "start": {
10688                                            "line": 106,
10689                                            "column": 25,
10690                                            "program": "generic_arrayaslist.ets"
10691                                          },
10692                                          "end": {
10693                                            "line": 106,
10694                                            "column": 26,
10695                                            "program": "generic_arrayaslist.ets"
10696                                          }
10697                                        }
10698                                      },
10699                                      "computed": true,
10700                                      "optional": false,
10701                                      "loc": {
10702                                        "start": {
10703                                          "line": 106,
10704                                          "column": 17,
10705                                          "program": "generic_arrayaslist.ets"
10706                                        },
10707                                        "end": {
10708                                          "line": 106,
10709                                          "column": 27,
10710                                          "program": "generic_arrayaslist.ets"
10711                                        }
10712                                      }
10713                                    },
10714                                    "right": {
10715                                      "type": "MemberExpression",
10716                                      "object": {
10717                                        "type": "MemberExpression",
10718                                        "object": {
10719                                          "type": "ThisExpression",
10720                                          "loc": {
10721                                            "start": {
10722                                              "line": 106,
10723                                              "column": 30,
10724                                              "program": "generic_arrayaslist.ets"
10725                                            },
10726                                            "end": {
10727                                              "line": 106,
10728                                              "column": 34,
10729                                              "program": "generic_arrayaslist.ets"
10730                                            }
10731                                          }
10732                                        },
10733                                        "property": {
10734                                          "type": "Identifier",
10735                                          "name": "data",
10736                                          "decorators": [],
10737                                          "loc": {
10738                                            "start": {
10739                                              "line": 106,
10740                                              "column": 35,
10741                                              "program": "generic_arrayaslist.ets"
10742                                            },
10743                                            "end": {
10744                                              "line": 106,
10745                                              "column": 39,
10746                                              "program": "generic_arrayaslist.ets"
10747                                            }
10748                                          }
10749                                        },
10750                                        "computed": false,
10751                                        "optional": false,
10752                                        "loc": {
10753                                          "start": {
10754                                            "line": 106,
10755                                            "column": 30,
10756                                            "program": "generic_arrayaslist.ets"
10757                                          },
10758                                          "end": {
10759                                            "line": 106,
10760                                            "column": 39,
10761                                            "program": "generic_arrayaslist.ets"
10762                                          }
10763                                        }
10764                                      },
10765                                      "property": {
10766                                        "type": "Identifier",
10767                                        "name": "i",
10768                                        "decorators": [],
10769                                        "loc": {
10770                                          "start": {
10771                                            "line": 106,
10772                                            "column": 40,
10773                                            "program": "generic_arrayaslist.ets"
10774                                          },
10775                                          "end": {
10776                                            "line": 106,
10777                                            "column": 41,
10778                                            "program": "generic_arrayaslist.ets"
10779                                          }
10780                                        }
10781                                      },
10782                                      "computed": true,
10783                                      "optional": false,
10784                                      "loc": {
10785                                        "start": {
10786                                          "line": 106,
10787                                          "column": 30,
10788                                          "program": "generic_arrayaslist.ets"
10789                                        },
10790                                        "end": {
10791                                          "line": 106,
10792                                          "column": 42,
10793                                          "program": "generic_arrayaslist.ets"
10794                                        }
10795                                      }
10796                                    },
10797                                    "loc": {
10798                                      "start": {
10799                                        "line": 106,
10800                                        "column": 17,
10801                                        "program": "generic_arrayaslist.ets"
10802                                      },
10803                                      "end": {
10804                                        "line": 106,
10805                                        "column": 42,
10806                                        "program": "generic_arrayaslist.ets"
10807                                      }
10808                                    }
10809                                  },
10810                                  "loc": {
10811                                    "start": {
10812                                      "line": 106,
10813                                      "column": 17,
10814                                      "program": "generic_arrayaslist.ets"
10815                                    },
10816                                    "end": {
10817                                      "line": 106,
10818                                      "column": 43,
10819                                      "program": "generic_arrayaslist.ets"
10820                                    }
10821                                  }
10822                                }
10823                              ],
10824                              "loc": {
10825                                "start": {
10826                                  "line": 105,
10827                                  "column": 52,
10828                                  "program": "generic_arrayaslist.ets"
10829                                },
10830                                "end": {
10831                                  "line": 107,
10832                                  "column": 14,
10833                                  "program": "generic_arrayaslist.ets"
10834                                }
10835                              }
10836                            },
10837                            "loc": {
10838                              "start": {
10839                                "line": 105,
10840                                "column": 13,
10841                                "program": "generic_arrayaslist.ets"
10842                              },
10843                              "end": {
10844                                "line": 107,
10845                                "column": 14,
10846                                "program": "generic_arrayaslist.ets"
10847                              }
10848                            }
10849                          },
10850                          {
10851                            "type": "ExpressionStatement",
10852                            "expression": {
10853                              "type": "AssignmentExpression",
10854                              "operator": "=",
10855                              "left": {
10856                                "type": "MemberExpression",
10857                                "object": {
10858                                  "type": "ThisExpression",
10859                                  "loc": {
10860                                    "start": {
10861                                      "line": 108,
10862                                      "column": 13,
10863                                      "program": "generic_arrayaslist.ets"
10864                                    },
10865                                    "end": {
10866                                      "line": 108,
10867                                      "column": 17,
10868                                      "program": "generic_arrayaslist.ets"
10869                                    }
10870                                  }
10871                                },
10872                                "property": {
10873                                  "type": "Identifier",
10874                                  "name": "data",
10875                                  "decorators": [],
10876                                  "loc": {
10877                                    "start": {
10878                                      "line": 108,
10879                                      "column": 18,
10880                                      "program": "generic_arrayaslist.ets"
10881                                    },
10882                                    "end": {
10883                                      "line": 108,
10884                                      "column": 22,
10885                                      "program": "generic_arrayaslist.ets"
10886                                    }
10887                                  }
10888                                },
10889                                "computed": false,
10890                                "optional": false,
10891                                "loc": {
10892                                  "start": {
10893                                    "line": 108,
10894                                    "column": 13,
10895                                    "program": "generic_arrayaslist.ets"
10896                                  },
10897                                  "end": {
10898                                    "line": 108,
10899                                    "column": 22,
10900                                    "program": "generic_arrayaslist.ets"
10901                                  }
10902                                }
10903                              },
10904                              "right": {
10905                                "type": "Identifier",
10906                                "name": "newData",
10907                                "decorators": [],
10908                                "loc": {
10909                                  "start": {
10910                                    "line": 108,
10911                                    "column": 25,
10912                                    "program": "generic_arrayaslist.ets"
10913                                  },
10914                                  "end": {
10915                                    "line": 108,
10916                                    "column": 32,
10917                                    "program": "generic_arrayaslist.ets"
10918                                  }
10919                                }
10920                              },
10921                              "loc": {
10922                                "start": {
10923                                  "line": 108,
10924                                  "column": 13,
10925                                  "program": "generic_arrayaslist.ets"
10926                                },
10927                                "end": {
10928                                  "line": 108,
10929                                  "column": 32,
10930                                  "program": "generic_arrayaslist.ets"
10931                                }
10932                              }
10933                            },
10934                            "loc": {
10935                              "start": {
10936                                "line": 108,
10937                                "column": 13,
10938                                "program": "generic_arrayaslist.ets"
10939                              },
10940                              "end": {
10941                                "line": 108,
10942                                "column": 33,
10943                                "program": "generic_arrayaslist.ets"
10944                              }
10945                            }
10946                          }
10947                        ],
10948                        "loc": {
10949                          "start": {
10950                            "line": 103,
10951                            "column": 47,
10952                            "program": "generic_arrayaslist.ets"
10953                          },
10954                          "end": {
10955                            "line": 109,
10956                            "column": 10,
10957                            "program": "generic_arrayaslist.ets"
10958                          }
10959                        }
10960                      },
10961                      "alternate": null,
10962                      "loc": {
10963                        "start": {
10964                          "line": 103,
10965                          "column": 9,
10966                          "program": "generic_arrayaslist.ets"
10967                        },
10968                        "end": {
10969                          "line": 109,
10970                          "column": 10,
10971                          "program": "generic_arrayaslist.ets"
10972                        }
10973                      }
10974                    },
10975                    {
10976                      "type": "ExpressionStatement",
10977                      "expression": {
10978                        "type": "AssignmentExpression",
10979                        "operator": "=",
10980                        "left": {
10981                          "type": "MemberExpression",
10982                          "object": {
10983                            "type": "MemberExpression",
10984                            "object": {
10985                              "type": "ThisExpression",
10986                              "loc": {
10987                                "start": {
10988                                  "line": 110,
10989                                  "column": 9,
10990                                  "program": "generic_arrayaslist.ets"
10991                                },
10992                                "end": {
10993                                  "line": 110,
10994                                  "column": 13,
10995                                  "program": "generic_arrayaslist.ets"
10996                                }
10997                              }
10998                            },
10999                            "property": {
11000                              "type": "Identifier",
11001                              "name": "data",
11002                              "decorators": [],
11003                              "loc": {
11004                                "start": {
11005                                  "line": 110,
11006                                  "column": 14,
11007                                  "program": "generic_arrayaslist.ets"
11008                                },
11009                                "end": {
11010                                  "line": 110,
11011                                  "column": 18,
11012                                  "program": "generic_arrayaslist.ets"
11013                                }
11014                              }
11015                            },
11016                            "computed": false,
11017                            "optional": false,
11018                            "loc": {
11019                              "start": {
11020                                "line": 110,
11021                                "column": 9,
11022                                "program": "generic_arrayaslist.ets"
11023                              },
11024                              "end": {
11025                                "line": 110,
11026                                "column": 18,
11027                                "program": "generic_arrayaslist.ets"
11028                              }
11029                            }
11030                          },
11031                          "property": {
11032                            "type": "MemberExpression",
11033                            "object": {
11034                              "type": "ThisExpression",
11035                              "loc": {
11036                                "start": {
11037                                  "line": 110,
11038                                  "column": 19,
11039                                  "program": "generic_arrayaslist.ets"
11040                                },
11041                                "end": {
11042                                  "line": 110,
11043                                  "column": 23,
11044                                  "program": "generic_arrayaslist.ets"
11045                                }
11046                              }
11047                            },
11048                            "property": {
11049                              "type": "Identifier",
11050                              "name": "curSize",
11051                              "decorators": [],
11052                              "loc": {
11053                                "start": {
11054                                  "line": 110,
11055                                  "column": 24,
11056                                  "program": "generic_arrayaslist.ets"
11057                                },
11058                                "end": {
11059                                  "line": 110,
11060                                  "column": 31,
11061                                  "program": "generic_arrayaslist.ets"
11062                                }
11063                              }
11064                            },
11065                            "computed": false,
11066                            "optional": false,
11067                            "loc": {
11068                              "start": {
11069                                "line": 110,
11070                                "column": 19,
11071                                "program": "generic_arrayaslist.ets"
11072                              },
11073                              "end": {
11074                                "line": 110,
11075                                "column": 31,
11076                                "program": "generic_arrayaslist.ets"
11077                              }
11078                            }
11079                          },
11080                          "computed": true,
11081                          "optional": false,
11082                          "loc": {
11083                            "start": {
11084                              "line": 110,
11085                              "column": 9,
11086                              "program": "generic_arrayaslist.ets"
11087                            },
11088                            "end": {
11089                              "line": 110,
11090                              "column": 32,
11091                              "program": "generic_arrayaslist.ets"
11092                            }
11093                          }
11094                        },
11095                        "right": {
11096                          "type": "Identifier",
11097                          "name": "e",
11098                          "decorators": [],
11099                          "loc": {
11100                            "start": {
11101                              "line": 110,
11102                              "column": 35,
11103                              "program": "generic_arrayaslist.ets"
11104                            },
11105                            "end": {
11106                              "line": 110,
11107                              "column": 36,
11108                              "program": "generic_arrayaslist.ets"
11109                            }
11110                          }
11111                        },
11112                        "loc": {
11113                          "start": {
11114                            "line": 110,
11115                            "column": 9,
11116                            "program": "generic_arrayaslist.ets"
11117                          },
11118                          "end": {
11119                            "line": 110,
11120                            "column": 36,
11121                            "program": "generic_arrayaslist.ets"
11122                          }
11123                        }
11124                      },
11125                      "loc": {
11126                        "start": {
11127                          "line": 110,
11128                          "column": 9,
11129                          "program": "generic_arrayaslist.ets"
11130                        },
11131                        "end": {
11132                          "line": 110,
11133                          "column": 37,
11134                          "program": "generic_arrayaslist.ets"
11135                        }
11136                      }
11137                    },
11138                    {
11139                      "type": "ExpressionStatement",
11140                      "expression": {
11141                        "type": "UpdateExpression",
11142                        "operator": "++",
11143                        "prefix": true,
11144                        "argument": {
11145                          "type": "MemberExpression",
11146                          "object": {
11147                            "type": "ThisExpression",
11148                            "loc": {
11149                              "start": {
11150                                "line": 111,
11151                                "column": 11,
11152                                "program": "generic_arrayaslist.ets"
11153                              },
11154                              "end": {
11155                                "line": 111,
11156                                "column": 15,
11157                                "program": "generic_arrayaslist.ets"
11158                              }
11159                            }
11160                          },
11161                          "property": {
11162                            "type": "Identifier",
11163                            "name": "curSize",
11164                            "decorators": [],
11165                            "loc": {
11166                              "start": {
11167                                "line": 111,
11168                                "column": 16,
11169                                "program": "generic_arrayaslist.ets"
11170                              },
11171                              "end": {
11172                                "line": 111,
11173                                "column": 23,
11174                                "program": "generic_arrayaslist.ets"
11175                              }
11176                            }
11177                          },
11178                          "computed": false,
11179                          "optional": false,
11180                          "loc": {
11181                            "start": {
11182                              "line": 111,
11183                              "column": 11,
11184                              "program": "generic_arrayaslist.ets"
11185                            },
11186                            "end": {
11187                              "line": 111,
11188                              "column": 23,
11189                              "program": "generic_arrayaslist.ets"
11190                            }
11191                          }
11192                        },
11193                        "loc": {
11194                          "start": {
11195                            "line": 111,
11196                            "column": 9,
11197                            "program": "generic_arrayaslist.ets"
11198                          },
11199                          "end": {
11200                            "line": 111,
11201                            "column": 23,
11202                            "program": "generic_arrayaslist.ets"
11203                          }
11204                        }
11205                      },
11206                      "loc": {
11207                        "start": {
11208                          "line": 111,
11209                          "column": 9,
11210                          "program": "generic_arrayaslist.ets"
11211                        },
11212                        "end": {
11213                          "line": 111,
11214                          "column": 24,
11215                          "program": "generic_arrayaslist.ets"
11216                        }
11217                      }
11218                    }
11219                  ],
11220                  "loc": {
11221                    "start": {
11222                      "line": 102,
11223                      "column": 42,
11224                      "program": "generic_arrayaslist.ets"
11225                    },
11226                    "end": {
11227                      "line": 112,
11228                      "column": 6,
11229                      "program": "generic_arrayaslist.ets"
11230                    }
11231                  }
11232                },
11233                "loc": {
11234                  "start": {
11235                    "line": 102,
11236                    "column": 29,
11237                    "program": "generic_arrayaslist.ets"
11238                  },
11239                  "end": {
11240                    "line": 112,
11241                    "column": 6,
11242                    "program": "generic_arrayaslist.ets"
11243                  }
11244                }
11245              },
11246              "loc": {
11247                "start": {
11248                  "line": 102,
11249                  "column": 29,
11250                  "program": "generic_arrayaslist.ets"
11251                },
11252                "end": {
11253                  "line": 112,
11254                  "column": 6,
11255                  "program": "generic_arrayaslist.ets"
11256                }
11257              }
11258            },
11259            "overloads": [],
11260            "decorators": [],
11261            "loc": {
11262              "start": {
11263                "line": 102,
11264                "column": 5,
11265                "program": "generic_arrayaslist.ets"
11266              },
11267              "end": {
11268                "line": 112,
11269                "column": 6,
11270                "program": "generic_arrayaslist.ets"
11271              }
11272            }
11273          },
11274          {
11275            "type": "MethodDefinition",
11276            "key": {
11277              "type": "Identifier",
11278              "name": "popBack",
11279              "decorators": [],
11280              "loc": {
11281                "start": {
11282                  "line": 114,
11283                  "column": 21,
11284                  "program": "generic_arrayaslist.ets"
11285                },
11286                "end": {
11287                  "line": 114,
11288                  "column": 28,
11289                  "program": "generic_arrayaslist.ets"
11290                }
11291              }
11292            },
11293            "kind": "method",
11294            "accessibility": "public",
11295            "static": false,
11296            "optional": false,
11297            "computed": false,
11298            "value": {
11299              "type": "FunctionExpression",
11300              "function": {
11301                "type": "ScriptFunction",
11302                "id": {
11303                  "type": "Identifier",
11304                  "name": "popBack",
11305                  "decorators": [],
11306                  "loc": {
11307                    "start": {
11308                      "line": 114,
11309                      "column": 21,
11310                      "program": "generic_arrayaslist.ets"
11311                    },
11312                    "end": {
11313                      "line": 114,
11314                      "column": 28,
11315                      "program": "generic_arrayaslist.ets"
11316                    }
11317                  }
11318                },
11319                "generator": false,
11320                "async": false,
11321                "expression": false,
11322                "params": [],
11323                "returnType": {
11324                  "type": "ETSTypeReference",
11325                  "part": {
11326                    "type": "ETSTypeReferencePart",
11327                    "name": {
11328                      "type": "Identifier",
11329                      "name": "T",
11330                      "decorators": [],
11331                      "loc": {
11332                        "start": {
11333                          "line": 114,
11334                          "column": 32,
11335                          "program": "generic_arrayaslist.ets"
11336                        },
11337                        "end": {
11338                          "line": 114,
11339                          "column": 33,
11340                          "program": "generic_arrayaslist.ets"
11341                        }
11342                      }
11343                    },
11344                    "loc": {
11345                      "start": {
11346                        "line": 114,
11347                        "column": 32,
11348                        "program": "generic_arrayaslist.ets"
11349                      },
11350                      "end": {
11351                        "line": 114,
11352                        "column": 35,
11353                        "program": "generic_arrayaslist.ets"
11354                      }
11355                    }
11356                  },
11357                  "loc": {
11358                    "start": {
11359                      "line": 114,
11360                      "column": 32,
11361                      "program": "generic_arrayaslist.ets"
11362                    },
11363                    "end": {
11364                      "line": 114,
11365                      "column": 35,
11366                      "program": "generic_arrayaslist.ets"
11367                    }
11368                  }
11369                },
11370                "body": {
11371                  "type": "BlockStatement",
11372                  "statements": [
11373                    {
11374                      "type": "ExpressionStatement",
11375                      "expression": {
11376                        "type": "CallExpression",
11377                        "callee": {
11378                          "type": "Identifier",
11379                          "name": "assertTrue",
11380                          "decorators": [],
11381                          "loc": {
11382                            "start": {
11383                              "line": 115,
11384                              "column": 9,
11385                              "program": "generic_arrayaslist.ets"
11386                            },
11387                            "end": {
11388                              "line": 115,
11389                              "column": 19,
11390                              "program": "generic_arrayaslist.ets"
11391                            }
11392                          }
11393                        },
11394                        "arguments": [
11395                          {
11396                            "type": "NumberLiteral",
11397                            "value": 0,
11398                            "loc": {
11399                              "start": {
11400                                "line": 115,
11401                                "column": 20,
11402                                "program": "generic_arrayaslist.ets"
11403                              },
11404                              "end": {
11405                                "line": 115,
11406                                "column": 21,
11407                                "program": "generic_arrayaslist.ets"
11408                              }
11409                            }
11410                          },
11411                          {
11412                            "type": "MemberExpression",
11413                            "object": {
11414                              "type": "ThisExpression",
11415                              "loc": {
11416                                "start": {
11417                                  "line": 115,
11418                                  "column": 23,
11419                                  "program": "generic_arrayaslist.ets"
11420                                },
11421                                "end": {
11422                                  "line": 115,
11423                                  "column": 27,
11424                                  "program": "generic_arrayaslist.ets"
11425                                }
11426                              }
11427                            },
11428                            "property": {
11429                              "type": "Identifier",
11430                              "name": "curSize",
11431                              "decorators": [],
11432                              "loc": {
11433                                "start": {
11434                                  "line": 115,
11435                                  "column": 28,
11436                                  "program": "generic_arrayaslist.ets"
11437                                },
11438                                "end": {
11439                                  "line": 115,
11440                                  "column": 35,
11441                                  "program": "generic_arrayaslist.ets"
11442                                }
11443                              }
11444                            },
11445                            "computed": false,
11446                            "optional": false,
11447                            "loc": {
11448                              "start": {
11449                                "line": 115,
11450                                "column": 23,
11451                                "program": "generic_arrayaslist.ets"
11452                              },
11453                              "end": {
11454                                "line": 115,
11455                                "column": 35,
11456                                "program": "generic_arrayaslist.ets"
11457                              }
11458                            }
11459                          },
11460                          {
11461                            "type": "StringLiteral",
11462                            "value": "No data to popBack in ArrayAsList!",
11463                            "loc": {
11464                              "start": {
11465                                "line": 115,
11466                                "column": 37,
11467                                "program": "generic_arrayaslist.ets"
11468                              },
11469                              "end": {
11470                                "line": 115,
11471                                "column": 73,
11472                                "program": "generic_arrayaslist.ets"
11473                              }
11474                            }
11475                          }
11476                        ],
11477                        "optional": false,
11478                        "loc": {
11479                          "start": {
11480                            "line": 115,
11481                            "column": 9,
11482                            "program": "generic_arrayaslist.ets"
11483                          },
11484                          "end": {
11485                            "line": 115,
11486                            "column": 74,
11487                            "program": "generic_arrayaslist.ets"
11488                          }
11489                        }
11490                      },
11491                      "loc": {
11492                        "start": {
11493                          "line": 115,
11494                          "column": 9,
11495                          "program": "generic_arrayaslist.ets"
11496                        },
11497                        "end": {
11498                          "line": 115,
11499                          "column": 75,
11500                          "program": "generic_arrayaslist.ets"
11501                        }
11502                      }
11503                    },
11504                    {
11505                      "type": "ExpressionStatement",
11506                      "expression": {
11507                        "type": "UpdateExpression",
11508                        "operator": "--",
11509                        "prefix": true,
11510                        "argument": {
11511                          "type": "MemberExpression",
11512                          "object": {
11513                            "type": "ThisExpression",
11514                            "loc": {
11515                              "start": {
11516                                "line": 116,
11517                                "column": 11,
11518                                "program": "generic_arrayaslist.ets"
11519                              },
11520                              "end": {
11521                                "line": 116,
11522                                "column": 15,
11523                                "program": "generic_arrayaslist.ets"
11524                              }
11525                            }
11526                          },
11527                          "property": {
11528                            "type": "Identifier",
11529                            "name": "curSize",
11530                            "decorators": [],
11531                            "loc": {
11532                              "start": {
11533                                "line": 116,
11534                                "column": 16,
11535                                "program": "generic_arrayaslist.ets"
11536                              },
11537                              "end": {
11538                                "line": 116,
11539                                "column": 23,
11540                                "program": "generic_arrayaslist.ets"
11541                              }
11542                            }
11543                          },
11544                          "computed": false,
11545                          "optional": false,
11546                          "loc": {
11547                            "start": {
11548                              "line": 116,
11549                              "column": 11,
11550                              "program": "generic_arrayaslist.ets"
11551                            },
11552                            "end": {
11553                              "line": 116,
11554                              "column": 23,
11555                              "program": "generic_arrayaslist.ets"
11556                            }
11557                          }
11558                        },
11559                        "loc": {
11560                          "start": {
11561                            "line": 116,
11562                            "column": 9,
11563                            "program": "generic_arrayaslist.ets"
11564                          },
11565                          "end": {
11566                            "line": 116,
11567                            "column": 23,
11568                            "program": "generic_arrayaslist.ets"
11569                          }
11570                        }
11571                      },
11572                      "loc": {
11573                        "start": {
11574                          "line": 116,
11575                          "column": 9,
11576                          "program": "generic_arrayaslist.ets"
11577                        },
11578                        "end": {
11579                          "line": 116,
11580                          "column": 24,
11581                          "program": "generic_arrayaslist.ets"
11582                        }
11583                      }
11584                    },
11585                    {
11586                      "type": "ReturnStatement",
11587                      "argument": {
11588                        "type": "TSAsExpression",
11589                        "expression": {
11590                          "type": "MemberExpression",
11591                          "object": {
11592                            "type": "MemberExpression",
11593                            "object": {
11594                              "type": "ThisExpression",
11595                              "loc": {
11596                                "start": {
11597                                  "line": 117,
11598                                  "column": 16,
11599                                  "program": "generic_arrayaslist.ets"
11600                                },
11601                                "end": {
11602                                  "line": 117,
11603                                  "column": 20,
11604                                  "program": "generic_arrayaslist.ets"
11605                                }
11606                              }
11607                            },
11608                            "property": {
11609                              "type": "Identifier",
11610                              "name": "data",
11611                              "decorators": [],
11612                              "loc": {
11613                                "start": {
11614                                  "line": 117,
11615                                  "column": 21,
11616                                  "program": "generic_arrayaslist.ets"
11617                                },
11618                                "end": {
11619                                  "line": 117,
11620                                  "column": 25,
11621                                  "program": "generic_arrayaslist.ets"
11622                                }
11623                              }
11624                            },
11625                            "computed": false,
11626                            "optional": false,
11627                            "loc": {
11628                              "start": {
11629                                "line": 117,
11630                                "column": 16,
11631                                "program": "generic_arrayaslist.ets"
11632                              },
11633                              "end": {
11634                                "line": 117,
11635                                "column": 25,
11636                                "program": "generic_arrayaslist.ets"
11637                              }
11638                            }
11639                          },
11640                          "property": {
11641                            "type": "MemberExpression",
11642                            "object": {
11643                              "type": "ThisExpression",
11644                              "loc": {
11645                                "start": {
11646                                  "line": 117,
11647                                  "column": 26,
11648                                  "program": "generic_arrayaslist.ets"
11649                                },
11650                                "end": {
11651                                  "line": 117,
11652                                  "column": 30,
11653                                  "program": "generic_arrayaslist.ets"
11654                                }
11655                              }
11656                            },
11657                            "property": {
11658                              "type": "Identifier",
11659                              "name": "curSize",
11660                              "decorators": [],
11661                              "loc": {
11662                                "start": {
11663                                  "line": 117,
11664                                  "column": 31,
11665                                  "program": "generic_arrayaslist.ets"
11666                                },
11667                                "end": {
11668                                  "line": 117,
11669                                  "column": 38,
11670                                  "program": "generic_arrayaslist.ets"
11671                                }
11672                              }
11673                            },
11674                            "computed": false,
11675                            "optional": false,
11676                            "loc": {
11677                              "start": {
11678                                "line": 117,
11679                                "column": 26,
11680                                "program": "generic_arrayaslist.ets"
11681                              },
11682                              "end": {
11683                                "line": 117,
11684                                "column": 38,
11685                                "program": "generic_arrayaslist.ets"
11686                              }
11687                            }
11688                          },
11689                          "computed": true,
11690                          "optional": false,
11691                          "loc": {
11692                            "start": {
11693                              "line": 117,
11694                              "column": 16,
11695                              "program": "generic_arrayaslist.ets"
11696                            },
11697                            "end": {
11698                              "line": 117,
11699                              "column": 39,
11700                              "program": "generic_arrayaslist.ets"
11701                            }
11702                          }
11703                        },
11704                        "typeAnnotation": {
11705                          "type": "ETSTypeReference",
11706                          "part": {
11707                            "type": "ETSTypeReferencePart",
11708                            "name": {
11709                              "type": "Identifier",
11710                              "name": "T",
11711                              "decorators": [],
11712                              "loc": {
11713                                "start": {
11714                                  "line": 117,
11715                                  "column": 43,
11716                                  "program": "generic_arrayaslist.ets"
11717                                },
11718                                "end": {
11719                                  "line": 117,
11720                                  "column": 44,
11721                                  "program": "generic_arrayaslist.ets"
11722                                }
11723                              }
11724                            },
11725                            "loc": {
11726                              "start": {
11727                                "line": 117,
11728                                "column": 43,
11729                                "program": "generic_arrayaslist.ets"
11730                              },
11731                              "end": {
11732                                "line": 117,
11733                                "column": 45,
11734                                "program": "generic_arrayaslist.ets"
11735                              }
11736                            }
11737                          },
11738                          "loc": {
11739                            "start": {
11740                              "line": 117,
11741                              "column": 43,
11742                              "program": "generic_arrayaslist.ets"
11743                            },
11744                            "end": {
11745                              "line": 117,
11746                              "column": 45,
11747                              "program": "generic_arrayaslist.ets"
11748                            }
11749                          }
11750                        },
11751                        "loc": {
11752                          "start": {
11753                            "line": 117,
11754                            "column": 16,
11755                            "program": "generic_arrayaslist.ets"
11756                          },
11757                          "end": {
11758                            "line": 117,
11759                            "column": 39,
11760                            "program": "generic_arrayaslist.ets"
11761                          }
11762                        }
11763                      },
11764                      "loc": {
11765                        "start": {
11766                          "line": 117,
11767                          "column": 9,
11768                          "program": "generic_arrayaslist.ets"
11769                        },
11770                        "end": {
11771                          "line": 117,
11772                          "column": 45,
11773                          "program": "generic_arrayaslist.ets"
11774                        }
11775                      }
11776                    }
11777                  ],
11778                  "loc": {
11779                    "start": {
11780                      "line": 114,
11781                      "column": 34,
11782                      "program": "generic_arrayaslist.ets"
11783                    },
11784                    "end": {
11785                      "line": 118,
11786                      "column": 6,
11787                      "program": "generic_arrayaslist.ets"
11788                    }
11789                  }
11790                },
11791                "loc": {
11792                  "start": {
11793                    "line": 114,
11794                    "column": 28,
11795                    "program": "generic_arrayaslist.ets"
11796                  },
11797                  "end": {
11798                    "line": 118,
11799                    "column": 6,
11800                    "program": "generic_arrayaslist.ets"
11801                  }
11802                }
11803              },
11804              "loc": {
11805                "start": {
11806                  "line": 114,
11807                  "column": 28,
11808                  "program": "generic_arrayaslist.ets"
11809                },
11810                "end": {
11811                  "line": 118,
11812                  "column": 6,
11813                  "program": "generic_arrayaslist.ets"
11814                }
11815              }
11816            },
11817            "overloads": [],
11818            "decorators": [],
11819            "loc": {
11820              "start": {
11821                "line": 114,
11822                "column": 5,
11823                "program": "generic_arrayaslist.ets"
11824              },
11825              "end": {
11826                "line": 118,
11827                "column": 6,
11828                "program": "generic_arrayaslist.ets"
11829              }
11830            }
11831          },
11832          {
11833            "type": "MethodDefinition",
11834            "key": {
11835              "type": "Identifier",
11836              "name": "size",
11837              "decorators": [],
11838              "loc": {
11839                "start": {
11840                  "line": 120,
11841                  "column": 21,
11842                  "program": "generic_arrayaslist.ets"
11843                },
11844                "end": {
11845                  "line": 120,
11846                  "column": 25,
11847                  "program": "generic_arrayaslist.ets"
11848                }
11849              }
11850            },
11851            "kind": "method",
11852            "accessibility": "public",
11853            "static": false,
11854            "optional": false,
11855            "computed": false,
11856            "value": {
11857              "type": "FunctionExpression",
11858              "function": {
11859                "type": "ScriptFunction",
11860                "id": {
11861                  "type": "Identifier",
11862                  "name": "size",
11863                  "decorators": [],
11864                  "loc": {
11865                    "start": {
11866                      "line": 120,
11867                      "column": 21,
11868                      "program": "generic_arrayaslist.ets"
11869                    },
11870                    "end": {
11871                      "line": 120,
11872                      "column": 25,
11873                      "program": "generic_arrayaslist.ets"
11874                    }
11875                  }
11876                },
11877                "generator": false,
11878                "async": false,
11879                "expression": false,
11880                "params": [],
11881                "returnType": {
11882                  "type": "ETSPrimitiveType",
11883                  "loc": {
11884                    "start": {
11885                      "line": 120,
11886                      "column": 29,
11887                      "program": "generic_arrayaslist.ets"
11888                    },
11889                    "end": {
11890                      "line": 120,
11891                      "column": 32,
11892                      "program": "generic_arrayaslist.ets"
11893                    }
11894                  }
11895                },
11896                "body": {
11897                  "type": "BlockStatement",
11898                  "statements": [
11899                    {
11900                      "type": "ReturnStatement",
11901                      "argument": {
11902                        "type": "MemberExpression",
11903                        "object": {
11904                          "type": "ThisExpression",
11905                          "loc": {
11906                            "start": {
11907                              "line": 121,
11908                              "column": 16,
11909                              "program": "generic_arrayaslist.ets"
11910                            },
11911                            "end": {
11912                              "line": 121,
11913                              "column": 20,
11914                              "program": "generic_arrayaslist.ets"
11915                            }
11916                          }
11917                        },
11918                        "property": {
11919                          "type": "Identifier",
11920                          "name": "curSize",
11921                          "decorators": [],
11922                          "loc": {
11923                            "start": {
11924                              "line": 121,
11925                              "column": 21,
11926                              "program": "generic_arrayaslist.ets"
11927                            },
11928                            "end": {
11929                              "line": 121,
11930                              "column": 28,
11931                              "program": "generic_arrayaslist.ets"
11932                            }
11933                          }
11934                        },
11935                        "computed": false,
11936                        "optional": false,
11937                        "loc": {
11938                          "start": {
11939                            "line": 121,
11940                            "column": 16,
11941                            "program": "generic_arrayaslist.ets"
11942                          },
11943                          "end": {
11944                            "line": 121,
11945                            "column": 28,
11946                            "program": "generic_arrayaslist.ets"
11947                          }
11948                        }
11949                      },
11950                      "loc": {
11951                        "start": {
11952                          "line": 121,
11953                          "column": 9,
11954                          "program": "generic_arrayaslist.ets"
11955                        },
11956                        "end": {
11957                          "line": 121,
11958                          "column": 29,
11959                          "program": "generic_arrayaslist.ets"
11960                        }
11961                      }
11962                    }
11963                  ],
11964                  "loc": {
11965                    "start": {
11966                      "line": 120,
11967                      "column": 33,
11968                      "program": "generic_arrayaslist.ets"
11969                    },
11970                    "end": {
11971                      "line": 122,
11972                      "column": 6,
11973                      "program": "generic_arrayaslist.ets"
11974                    }
11975                  }
11976                },
11977                "loc": {
11978                  "start": {
11979                    "line": 120,
11980                    "column": 25,
11981                    "program": "generic_arrayaslist.ets"
11982                  },
11983                  "end": {
11984                    "line": 122,
11985                    "column": 6,
11986                    "program": "generic_arrayaslist.ets"
11987                  }
11988                }
11989              },
11990              "loc": {
11991                "start": {
11992                  "line": 120,
11993                  "column": 25,
11994                  "program": "generic_arrayaslist.ets"
11995                },
11996                "end": {
11997                  "line": 122,
11998                  "column": 6,
11999                  "program": "generic_arrayaslist.ets"
12000                }
12001              }
12002            },
12003            "overloads": [],
12004            "decorators": [],
12005            "loc": {
12006              "start": {
12007                "line": 120,
12008                "column": 5,
12009                "program": "generic_arrayaslist.ets"
12010              },
12011              "end": {
12012                "line": 122,
12013                "column": 6,
12014                "program": "generic_arrayaslist.ets"
12015              }
12016            }
12017          },
12018          {
12019            "type": "MethodDefinition",
12020            "key": {
12021              "type": "Identifier",
12022              "name": "at",
12023              "decorators": [],
12024              "loc": {
12025                "start": {
12026                  "line": 124,
12027                  "column": 21,
12028                  "program": "generic_arrayaslist.ets"
12029                },
12030                "end": {
12031                  "line": 124,
12032                  "column": 23,
12033                  "program": "generic_arrayaslist.ets"
12034                }
12035              }
12036            },
12037            "kind": "method",
12038            "accessibility": "public",
12039            "static": false,
12040            "optional": false,
12041            "computed": false,
12042            "value": {
12043              "type": "FunctionExpression",
12044              "function": {
12045                "type": "ScriptFunction",
12046                "id": {
12047                  "type": "Identifier",
12048                  "name": "at",
12049                  "decorators": [],
12050                  "loc": {
12051                    "start": {
12052                      "line": 124,
12053                      "column": 21,
12054                      "program": "generic_arrayaslist.ets"
12055                    },
12056                    "end": {
12057                      "line": 124,
12058                      "column": 23,
12059                      "program": "generic_arrayaslist.ets"
12060                    }
12061                  }
12062                },
12063                "generator": false,
12064                "async": false,
12065                "expression": false,
12066                "params": [
12067                  {
12068                    "type": "ETSParameterExpression",
12069                    "name": {
12070                      "type": "Identifier",
12071                      "name": "index",
12072                      "typeAnnotation": {
12073                        "type": "ETSPrimitiveType",
12074                        "loc": {
12075                          "start": {
12076                            "line": 124,
12077                            "column": 31,
12078                            "program": "generic_arrayaslist.ets"
12079                          },
12080                          "end": {
12081                            "line": 124,
12082                            "column": 34,
12083                            "program": "generic_arrayaslist.ets"
12084                          }
12085                        }
12086                      },
12087                      "decorators": [],
12088                      "loc": {
12089                        "start": {
12090                          "line": 124,
12091                          "column": 24,
12092                          "program": "generic_arrayaslist.ets"
12093                        },
12094                        "end": {
12095                          "line": 124,
12096                          "column": 34,
12097                          "program": "generic_arrayaslist.ets"
12098                        }
12099                      }
12100                    },
12101                    "loc": {
12102                      "start": {
12103                        "line": 124,
12104                        "column": 24,
12105                        "program": "generic_arrayaslist.ets"
12106                      },
12107                      "end": {
12108                        "line": 124,
12109                        "column": 34,
12110                        "program": "generic_arrayaslist.ets"
12111                      }
12112                    }
12113                  }
12114                ],
12115                "returnType": {
12116                  "type": "ETSTypeReference",
12117                  "part": {
12118                    "type": "ETSTypeReferencePart",
12119                    "name": {
12120                      "type": "Identifier",
12121                      "name": "T",
12122                      "decorators": [],
12123                      "loc": {
12124                        "start": {
12125                          "line": 124,
12126                          "column": 37,
12127                          "program": "generic_arrayaslist.ets"
12128                        },
12129                        "end": {
12130                          "line": 124,
12131                          "column": 38,
12132                          "program": "generic_arrayaslist.ets"
12133                        }
12134                      }
12135                    },
12136                    "loc": {
12137                      "start": {
12138                        "line": 124,
12139                        "column": 37,
12140                        "program": "generic_arrayaslist.ets"
12141                      },
12142                      "end": {
12143                        "line": 124,
12144                        "column": 40,
12145                        "program": "generic_arrayaslist.ets"
12146                      }
12147                    }
12148                  },
12149                  "loc": {
12150                    "start": {
12151                      "line": 124,
12152                      "column": 37,
12153                      "program": "generic_arrayaslist.ets"
12154                    },
12155                    "end": {
12156                      "line": 124,
12157                      "column": 40,
12158                      "program": "generic_arrayaslist.ets"
12159                    }
12160                  }
12161                },
12162                "body": {
12163                  "type": "BlockStatement",
12164                  "statements": [
12165                    {
12166                      "type": "ReturnStatement",
12167                      "argument": {
12168                        "type": "TSAsExpression",
12169                        "expression": {
12170                          "type": "MemberExpression",
12171                          "object": {
12172                            "type": "MemberExpression",
12173                            "object": {
12174                              "type": "ThisExpression",
12175                              "loc": {
12176                                "start": {
12177                                  "line": 125,
12178                                  "column": 16,
12179                                  "program": "generic_arrayaslist.ets"
12180                                },
12181                                "end": {
12182                                  "line": 125,
12183                                  "column": 20,
12184                                  "program": "generic_arrayaslist.ets"
12185                                }
12186                              }
12187                            },
12188                            "property": {
12189                              "type": "Identifier",
12190                              "name": "data",
12191                              "decorators": [],
12192                              "loc": {
12193                                "start": {
12194                                  "line": 125,
12195                                  "column": 21,
12196                                  "program": "generic_arrayaslist.ets"
12197                                },
12198                                "end": {
12199                                  "line": 125,
12200                                  "column": 25,
12201                                  "program": "generic_arrayaslist.ets"
12202                                }
12203                              }
12204                            },
12205                            "computed": false,
12206                            "optional": false,
12207                            "loc": {
12208                              "start": {
12209                                "line": 125,
12210                                "column": 16,
12211                                "program": "generic_arrayaslist.ets"
12212                              },
12213                              "end": {
12214                                "line": 125,
12215                                "column": 25,
12216                                "program": "generic_arrayaslist.ets"
12217                              }
12218                            }
12219                          },
12220                          "property": {
12221                            "type": "Identifier",
12222                            "name": "index",
12223                            "decorators": [],
12224                            "loc": {
12225                              "start": {
12226                                "line": 125,
12227                                "column": 26,
12228                                "program": "generic_arrayaslist.ets"
12229                              },
12230                              "end": {
12231                                "line": 125,
12232                                "column": 31,
12233                                "program": "generic_arrayaslist.ets"
12234                              }
12235                            }
12236                          },
12237                          "computed": true,
12238                          "optional": false,
12239                          "loc": {
12240                            "start": {
12241                              "line": 125,
12242                              "column": 16,
12243                              "program": "generic_arrayaslist.ets"
12244                            },
12245                            "end": {
12246                              "line": 125,
12247                              "column": 32,
12248                              "program": "generic_arrayaslist.ets"
12249                            }
12250                          }
12251                        },
12252                        "typeAnnotation": {
12253                          "type": "ETSTypeReference",
12254                          "part": {
12255                            "type": "ETSTypeReferencePart",
12256                            "name": {
12257                              "type": "Identifier",
12258                              "name": "T",
12259                              "decorators": [],
12260                              "loc": {
12261                                "start": {
12262                                  "line": 125,
12263                                  "column": 36,
12264                                  "program": "generic_arrayaslist.ets"
12265                                },
12266                                "end": {
12267                                  "line": 125,
12268                                  "column": 37,
12269                                  "program": "generic_arrayaslist.ets"
12270                                }
12271                              }
12272                            },
12273                            "loc": {
12274                              "start": {
12275                                "line": 125,
12276                                "column": 36,
12277                                "program": "generic_arrayaslist.ets"
12278                              },
12279                              "end": {
12280                                "line": 125,
12281                                "column": 38,
12282                                "program": "generic_arrayaslist.ets"
12283                              }
12284                            }
12285                          },
12286                          "loc": {
12287                            "start": {
12288                              "line": 125,
12289                              "column": 36,
12290                              "program": "generic_arrayaslist.ets"
12291                            },
12292                            "end": {
12293                              "line": 125,
12294                              "column": 38,
12295                              "program": "generic_arrayaslist.ets"
12296                            }
12297                          }
12298                        },
12299                        "loc": {
12300                          "start": {
12301                            "line": 125,
12302                            "column": 16,
12303                            "program": "generic_arrayaslist.ets"
12304                          },
12305                          "end": {
12306                            "line": 125,
12307                            "column": 32,
12308                            "program": "generic_arrayaslist.ets"
12309                          }
12310                        }
12311                      },
12312                      "loc": {
12313                        "start": {
12314                          "line": 125,
12315                          "column": 9,
12316                          "program": "generic_arrayaslist.ets"
12317                        },
12318                        "end": {
12319                          "line": 125,
12320                          "column": 38,
12321                          "program": "generic_arrayaslist.ets"
12322                        }
12323                      }
12324                    }
12325                  ],
12326                  "loc": {
12327                    "start": {
12328                      "line": 124,
12329                      "column": 39,
12330                      "program": "generic_arrayaslist.ets"
12331                    },
12332                    "end": {
12333                      "line": 126,
12334                      "column": 6,
12335                      "program": "generic_arrayaslist.ets"
12336                    }
12337                  }
12338                },
12339                "loc": {
12340                  "start": {
12341                    "line": 124,
12342                    "column": 23,
12343                    "program": "generic_arrayaslist.ets"
12344                  },
12345                  "end": {
12346                    "line": 126,
12347                    "column": 6,
12348                    "program": "generic_arrayaslist.ets"
12349                  }
12350                }
12351              },
12352              "loc": {
12353                "start": {
12354                  "line": 124,
12355                  "column": 23,
12356                  "program": "generic_arrayaslist.ets"
12357                },
12358                "end": {
12359                  "line": 126,
12360                  "column": 6,
12361                  "program": "generic_arrayaslist.ets"
12362                }
12363              }
12364            },
12365            "overloads": [],
12366            "decorators": [],
12367            "loc": {
12368              "start": {
12369                "line": 124,
12370                "column": 5,
12371                "program": "generic_arrayaslist.ets"
12372              },
12373              "end": {
12374                "line": 126,
12375                "column": 6,
12376                "program": "generic_arrayaslist.ets"
12377              }
12378            }
12379          },
12380          {
12381            "type": "MethodDefinition",
12382            "key": {
12383              "type": "Identifier",
12384              "name": "has",
12385              "decorators": [],
12386              "loc": {
12387                "start": {
12388                  "line": 128,
12389                  "column": 21,
12390                  "program": "generic_arrayaslist.ets"
12391                },
12392                "end": {
12393                  "line": 128,
12394                  "column": 24,
12395                  "program": "generic_arrayaslist.ets"
12396                }
12397              }
12398            },
12399            "kind": "method",
12400            "accessibility": "public",
12401            "static": false,
12402            "optional": false,
12403            "computed": false,
12404            "value": {
12405              "type": "FunctionExpression",
12406              "function": {
12407                "type": "ScriptFunction",
12408                "id": {
12409                  "type": "Identifier",
12410                  "name": "has",
12411                  "decorators": [],
12412                  "loc": {
12413                    "start": {
12414                      "line": 128,
12415                      "column": 21,
12416                      "program": "generic_arrayaslist.ets"
12417                    },
12418                    "end": {
12419                      "line": 128,
12420                      "column": 24,
12421                      "program": "generic_arrayaslist.ets"
12422                    }
12423                  }
12424                },
12425                "generator": false,
12426                "async": false,
12427                "expression": false,
12428                "params": [
12429                  {
12430                    "type": "ETSParameterExpression",
12431                    "name": {
12432                      "type": "Identifier",
12433                      "name": "e",
12434                      "typeAnnotation": {
12435                        "type": "ETSTypeReference",
12436                        "part": {
12437                          "type": "ETSTypeReferencePart",
12438                          "name": {
12439                            "type": "Identifier",
12440                            "name": "T",
12441                            "decorators": [],
12442                            "loc": {
12443                              "start": {
12444                                "line": 128,
12445                                "column": 28,
12446                                "program": "generic_arrayaslist.ets"
12447                              },
12448                              "end": {
12449                                "line": 128,
12450                                "column": 29,
12451                                "program": "generic_arrayaslist.ets"
12452                              }
12453                            }
12454                          },
12455                          "loc": {
12456                            "start": {
12457                              "line": 128,
12458                              "column": 28,
12459                              "program": "generic_arrayaslist.ets"
12460                            },
12461                            "end": {
12462                              "line": 128,
12463                              "column": 30,
12464                              "program": "generic_arrayaslist.ets"
12465                            }
12466                          }
12467                        },
12468                        "loc": {
12469                          "start": {
12470                            "line": 128,
12471                            "column": 28,
12472                            "program": "generic_arrayaslist.ets"
12473                          },
12474                          "end": {
12475                            "line": 128,
12476                            "column": 30,
12477                            "program": "generic_arrayaslist.ets"
12478                          }
12479                        }
12480                      },
12481                      "decorators": [],
12482                      "loc": {
12483                        "start": {
12484                          "line": 128,
12485                          "column": 25,
12486                          "program": "generic_arrayaslist.ets"
12487                        },
12488                        "end": {
12489                          "line": 128,
12490                          "column": 30,
12491                          "program": "generic_arrayaslist.ets"
12492                        }
12493                      }
12494                    },
12495                    "loc": {
12496                      "start": {
12497                        "line": 128,
12498                        "column": 25,
12499                        "program": "generic_arrayaslist.ets"
12500                      },
12501                      "end": {
12502                        "line": 128,
12503                        "column": 30,
12504                        "program": "generic_arrayaslist.ets"
12505                      }
12506                    }
12507                  }
12508                ],
12509                "returnType": {
12510                  "type": "ETSPrimitiveType",
12511                  "loc": {
12512                    "start": {
12513                      "line": 128,
12514                      "column": 32,
12515                      "program": "generic_arrayaslist.ets"
12516                    },
12517                    "end": {
12518                      "line": 128,
12519                      "column": 39,
12520                      "program": "generic_arrayaslist.ets"
12521                    }
12522                  }
12523                },
12524                "body": {
12525                  "type": "BlockStatement",
12526                  "statements": [
12527                    {
12528                      "type": "ExpressionStatement",
12529                      "expression": {
12530                        "type": "CallExpression",
12531                        "callee": {
12532                          "type": "Identifier",
12533                          "name": "assertTrue",
12534                          "decorators": [],
12535                          "loc": {
12536                            "start": {
12537                              "line": 129,
12538                              "column": 9,
12539                              "program": "generic_arrayaslist.ets"
12540                            },
12541                            "end": {
12542                              "line": 129,
12543                              "column": 19,
12544                              "program": "generic_arrayaslist.ets"
12545                            }
12546                          }
12547                        },
12548                        "arguments": [
12549                          {
12550                            "type": "BooleanLiteral",
12551                            "value": false,
12552                            "loc": {
12553                              "start": {
12554                                "line": 129,
12555                                "column": 20,
12556                                "program": "generic_arrayaslist.ets"
12557                              },
12558                              "end": {
12559                                "line": 129,
12560                                "column": 25,
12561                                "program": "generic_arrayaslist.ets"
12562                              }
12563                            }
12564                          }
12565                        ],
12566                        "optional": false,
12567                        "loc": {
12568                          "start": {
12569                            "line": 129,
12570                            "column": 9,
12571                            "program": "generic_arrayaslist.ets"
12572                          },
12573                          "end": {
12574                            "line": 129,
12575                            "column": 26,
12576                            "program": "generic_arrayaslist.ets"
12577                          }
12578                        }
12579                      },
12580                      "loc": {
12581                        "start": {
12582                          "line": 129,
12583                          "column": 9,
12584                          "program": "generic_arrayaslist.ets"
12585                        },
12586                        "end": {
12587                          "line": 129,
12588                          "column": 26,
12589                          "program": "generic_arrayaslist.ets"
12590                        }
12591                      }
12592                    },
12593                    {
12594                      "type": "ForUpdateStatement",
12595                      "init": {
12596                        "type": "VariableDeclaration",
12597                        "declarations": [
12598                          {
12599                            "type": "VariableDeclarator",
12600                            "id": {
12601                              "type": "Identifier",
12602                              "name": "i",
12603                              "decorators": [],
12604                              "loc": {
12605                                "start": {
12606                                  "line": 131,
12607                                  "column": 18,
12608                                  "program": "generic_arrayaslist.ets"
12609                                },
12610                                "end": {
12611                                  "line": 131,
12612                                  "column": 19,
12613                                  "program": "generic_arrayaslist.ets"
12614                                }
12615                              }
12616                            },
12617                            "init": {
12618                              "type": "NumberLiteral",
12619                              "value": 0,
12620                              "loc": {
12621                                "start": {
12622                                  "line": 131,
12623                                  "column": 22,
12624                                  "program": "generic_arrayaslist.ets"
12625                                },
12626                                "end": {
12627                                  "line": 131,
12628                                  "column": 23,
12629                                  "program": "generic_arrayaslist.ets"
12630                                }
12631                              }
12632                            },
12633                            "loc": {
12634                              "start": {
12635                                "line": 131,
12636                                "column": 18,
12637                                "program": "generic_arrayaslist.ets"
12638                              },
12639                              "end": {
12640                                "line": 131,
12641                                "column": 23,
12642                                "program": "generic_arrayaslist.ets"
12643                              }
12644                            }
12645                          }
12646                        ],
12647                        "kind": "let",
12648                        "loc": {
12649                          "start": {
12650                            "line": 131,
12651                            "column": 14,
12652                            "program": "generic_arrayaslist.ets"
12653                          },
12654                          "end": {
12655                            "line": 131,
12656                            "column": 23,
12657                            "program": "generic_arrayaslist.ets"
12658                          }
12659                        }
12660                      },
12661                      "test": {
12662                        "type": "BinaryExpression",
12663                        "operator": "<",
12664                        "left": {
12665                          "type": "Identifier",
12666                          "name": "i",
12667                          "decorators": [],
12668                          "loc": {
12669                            "start": {
12670                              "line": 131,
12671                              "column": 25,
12672                              "program": "generic_arrayaslist.ets"
12673                            },
12674                            "end": {
12675                              "line": 131,
12676                              "column": 26,
12677                              "program": "generic_arrayaslist.ets"
12678                            }
12679                          }
12680                        },
12681                        "right": {
12682                          "type": "MemberExpression",
12683                          "object": {
12684                            "type": "ThisExpression",
12685                            "loc": {
12686                              "start": {
12687                                "line": 131,
12688                                "column": 29,
12689                                "program": "generic_arrayaslist.ets"
12690                              },
12691                              "end": {
12692                                "line": 131,
12693                                "column": 33,
12694                                "program": "generic_arrayaslist.ets"
12695                              }
12696                            }
12697                          },
12698                          "property": {
12699                            "type": "Identifier",
12700                            "name": "curSize",
12701                            "decorators": [],
12702                            "loc": {
12703                              "start": {
12704                                "line": 131,
12705                                "column": 34,
12706                                "program": "generic_arrayaslist.ets"
12707                              },
12708                              "end": {
12709                                "line": 131,
12710                                "column": 41,
12711                                "program": "generic_arrayaslist.ets"
12712                              }
12713                            }
12714                          },
12715                          "computed": false,
12716                          "optional": false,
12717                          "loc": {
12718                            "start": {
12719                              "line": 131,
12720                              "column": 29,
12721                              "program": "generic_arrayaslist.ets"
12722                            },
12723                            "end": {
12724                              "line": 131,
12725                              "column": 41,
12726                              "program": "generic_arrayaslist.ets"
12727                            }
12728                          }
12729                        },
12730                        "loc": {
12731                          "start": {
12732                            "line": 131,
12733                            "column": 25,
12734                            "program": "generic_arrayaslist.ets"
12735                          },
12736                          "end": {
12737                            "line": 131,
12738                            "column": 41,
12739                            "program": "generic_arrayaslist.ets"
12740                          }
12741                        }
12742                      },
12743                      "update": {
12744                        "type": "UpdateExpression",
12745                        "operator": "++",
12746                        "prefix": true,
12747                        "argument": {
12748                          "type": "Identifier",
12749                          "name": "i",
12750                          "decorators": [],
12751                          "loc": {
12752                            "start": {
12753                              "line": 131,
12754                              "column": 45,
12755                              "program": "generic_arrayaslist.ets"
12756                            },
12757                            "end": {
12758                              "line": 131,
12759                              "column": 46,
12760                              "program": "generic_arrayaslist.ets"
12761                            }
12762                          }
12763                        },
12764                        "loc": {
12765                          "start": {
12766                            "line": 131,
12767                            "column": 43,
12768                            "program": "generic_arrayaslist.ets"
12769                          },
12770                          "end": {
12771                            "line": 131,
12772                            "column": 46,
12773                            "program": "generic_arrayaslist.ets"
12774                          }
12775                        }
12776                      },
12777                      "body": {
12778                        "type": "BlockStatement",
12779                        "statements": [
12780                          {
12781                            "type": "IfStatement",
12782                            "test": {
12783                              "type": "CallExpression",
12784                              "callee": {
12785                                "type": "Identifier",
12786                                "name": "__runtimeEquals",
12787                                "decorators": [],
12788                                "loc": {
12789                                  "start": {
12790                                    "line": 132,
12791                                    "column": 17,
12792                                    "program": "generic_arrayaslist.ets"
12793                                  },
12794                                  "end": {
12795                                    "line": 132,
12796                                    "column": 32,
12797                                    "program": "generic_arrayaslist.ets"
12798                                  }
12799                                }
12800                              },
12801                              "arguments": [
12802                                {
12803                                  "type": "MemberExpression",
12804                                  "object": {
12805                                    "type": "MemberExpression",
12806                                    "object": {
12807                                      "type": "ThisExpression",
12808                                      "loc": {
12809                                        "start": {
12810                                          "line": 132,
12811                                          "column": 33,
12812                                          "program": "generic_arrayaslist.ets"
12813                                        },
12814                                        "end": {
12815                                          "line": 132,
12816                                          "column": 37,
12817                                          "program": "generic_arrayaslist.ets"
12818                                        }
12819                                      }
12820                                    },
12821                                    "property": {
12822                                      "type": "Identifier",
12823                                      "name": "data",
12824                                      "decorators": [],
12825                                      "loc": {
12826                                        "start": {
12827                                          "line": 132,
12828                                          "column": 38,
12829                                          "program": "generic_arrayaslist.ets"
12830                                        },
12831                                        "end": {
12832                                          "line": 132,
12833                                          "column": 42,
12834                                          "program": "generic_arrayaslist.ets"
12835                                        }
12836                                      }
12837                                    },
12838                                    "computed": false,
12839                                    "optional": false,
12840                                    "loc": {
12841                                      "start": {
12842                                        "line": 132,
12843                                        "column": 33,
12844                                        "program": "generic_arrayaslist.ets"
12845                                      },
12846                                      "end": {
12847                                        "line": 132,
12848                                        "column": 42,
12849                                        "program": "generic_arrayaslist.ets"
12850                                      }
12851                                    }
12852                                  },
12853                                  "property": {
12854                                    "type": "Identifier",
12855                                    "name": "i",
12856                                    "decorators": [],
12857                                    "loc": {
12858                                      "start": {
12859                                        "line": 132,
12860                                        "column": 43,
12861                                        "program": "generic_arrayaslist.ets"
12862                                      },
12863                                      "end": {
12864                                        "line": 132,
12865                                        "column": 44,
12866                                        "program": "generic_arrayaslist.ets"
12867                                      }
12868                                    }
12869                                  },
12870                                  "computed": true,
12871                                  "optional": false,
12872                                  "loc": {
12873                                    "start": {
12874                                      "line": 132,
12875                                      "column": 33,
12876                                      "program": "generic_arrayaslist.ets"
12877                                    },
12878                                    "end": {
12879                                      "line": 132,
12880                                      "column": 45,
12881                                      "program": "generic_arrayaslist.ets"
12882                                    }
12883                                  }
12884                                },
12885                                {
12886                                  "type": "Identifier",
12887                                  "name": "e",
12888                                  "decorators": [],
12889                                  "loc": {
12890                                    "start": {
12891                                      "line": 132,
12892                                      "column": 47,
12893                                      "program": "generic_arrayaslist.ets"
12894                                    },
12895                                    "end": {
12896                                      "line": 132,
12897                                      "column": 48,
12898                                      "program": "generic_arrayaslist.ets"
12899                                    }
12900                                  }
12901                                }
12902                              ],
12903                              "optional": false,
12904                              "loc": {
12905                                "start": {
12906                                  "line": 132,
12907                                  "column": 17,
12908                                  "program": "generic_arrayaslist.ets"
12909                                },
12910                                "end": {
12911                                  "line": 132,
12912                                  "column": 49,
12913                                  "program": "generic_arrayaslist.ets"
12914                                }
12915                              }
12916                            },
12917                            "consequent": {
12918                              "type": "BlockStatement",
12919                              "statements": [
12920                                {
12921                                  "type": "ReturnStatement",
12922                                  "argument": {
12923                                    "type": "BooleanLiteral",
12924                                    "value": true,
12925                                    "loc": {
12926                                      "start": {
12927                                        "line": 133,
12928                                        "column": 24,
12929                                        "program": "generic_arrayaslist.ets"
12930                                      },
12931                                      "end": {
12932                                        "line": 133,
12933                                        "column": 28,
12934                                        "program": "generic_arrayaslist.ets"
12935                                      }
12936                                    }
12937                                  },
12938                                  "loc": {
12939                                    "start": {
12940                                      "line": 133,
12941                                      "column": 17,
12942                                      "program": "generic_arrayaslist.ets"
12943                                    },
12944                                    "end": {
12945                                      "line": 133,
12946                                      "column": 29,
12947                                      "program": "generic_arrayaslist.ets"
12948                                    }
12949                                  }
12950                                }
12951                              ],
12952                              "loc": {
12953                                "start": {
12954                                  "line": 132,
12955                                  "column": 51,
12956                                  "program": "generic_arrayaslist.ets"
12957                                },
12958                                "end": {
12959                                  "line": 134,
12960                                  "column": 14,
12961                                  "program": "generic_arrayaslist.ets"
12962                                }
12963                              }
12964                            },
12965                            "alternate": null,
12966                            "loc": {
12967                              "start": {
12968                                "line": 132,
12969                                "column": 13,
12970                                "program": "generic_arrayaslist.ets"
12971                              },
12972                              "end": {
12973                                "line": 134,
12974                                "column": 14,
12975                                "program": "generic_arrayaslist.ets"
12976                              }
12977                            }
12978                          }
12979                        ],
12980                        "loc": {
12981                          "start": {
12982                            "line": 131,
12983                            "column": 48,
12984                            "program": "generic_arrayaslist.ets"
12985                          },
12986                          "end": {
12987                            "line": 135,
12988                            "column": 10,
12989                            "program": "generic_arrayaslist.ets"
12990                          }
12991                        }
12992                      },
12993                      "loc": {
12994                        "start": {
12995                          "line": 131,
12996                          "column": 9,
12997                          "program": "generic_arrayaslist.ets"
12998                        },
12999                        "end": {
13000                          "line": 135,
13001                          "column": 10,
13002                          "program": "generic_arrayaslist.ets"
13003                        }
13004                      }
13005                    },
13006                    {
13007                      "type": "ReturnStatement",
13008                      "argument": {
13009                        "type": "BooleanLiteral",
13010                        "value": false,
13011                        "loc": {
13012                          "start": {
13013                            "line": 137,
13014                            "column": 16,
13015                            "program": "generic_arrayaslist.ets"
13016                          },
13017                          "end": {
13018                            "line": 137,
13019                            "column": 21,
13020                            "program": "generic_arrayaslist.ets"
13021                          }
13022                        }
13023                      },
13024                      "loc": {
13025                        "start": {
13026                          "line": 137,
13027                          "column": 9,
13028                          "program": "generic_arrayaslist.ets"
13029                        },
13030                        "end": {
13031                          "line": 137,
13032                          "column": 22,
13033                          "program": "generic_arrayaslist.ets"
13034                        }
13035                      }
13036                    }
13037                  ],
13038                  "loc": {
13039                    "start": {
13040                      "line": 128,
13041                      "column": 40,
13042                      "program": "generic_arrayaslist.ets"
13043                    },
13044                    "end": {
13045                      "line": 138,
13046                      "column": 6,
13047                      "program": "generic_arrayaslist.ets"
13048                    }
13049                  }
13050                },
13051                "loc": {
13052                  "start": {
13053                    "line": 128,
13054                    "column": 24,
13055                    "program": "generic_arrayaslist.ets"
13056                  },
13057                  "end": {
13058                    "line": 138,
13059                    "column": 6,
13060                    "program": "generic_arrayaslist.ets"
13061                  }
13062                }
13063              },
13064              "loc": {
13065                "start": {
13066                  "line": 128,
13067                  "column": 24,
13068                  "program": "generic_arrayaslist.ets"
13069                },
13070                "end": {
13071                  "line": 138,
13072                  "column": 6,
13073                  "program": "generic_arrayaslist.ets"
13074                }
13075              }
13076            },
13077            "overloads": [],
13078            "decorators": [],
13079            "loc": {
13080              "start": {
13081                "line": 128,
13082                "column": 5,
13083                "program": "generic_arrayaslist.ets"
13084              },
13085              "end": {
13086                "line": 138,
13087                "column": 6,
13088                "program": "generic_arrayaslist.ets"
13089              }
13090            }
13091          },
13092          {
13093            "type": "MethodDefinition",
13094            "key": {
13095              "type": "Identifier",
13096              "name": "forEach",
13097              "decorators": [],
13098              "loc": {
13099                "start": {
13100                  "line": 141,
13101                  "column": 21,
13102                  "program": "generic_arrayaslist.ets"
13103                },
13104                "end": {
13105                  "line": 141,
13106                  "column": 28,
13107                  "program": "generic_arrayaslist.ets"
13108                }
13109              }
13110            },
13111            "kind": "method",
13112            "accessibility": "public",
13113            "static": false,
13114            "optional": false,
13115            "computed": false,
13116            "value": {
13117              "type": "FunctionExpression",
13118              "function": {
13119                "type": "ScriptFunction",
13120                "id": {
13121                  "type": "Identifier",
13122                  "name": "forEach",
13123                  "decorators": [],
13124                  "loc": {
13125                    "start": {
13126                      "line": 141,
13127                      "column": 21,
13128                      "program": "generic_arrayaslist.ets"
13129                    },
13130                    "end": {
13131                      "line": 141,
13132                      "column": 28,
13133                      "program": "generic_arrayaslist.ets"
13134                    }
13135                  }
13136                },
13137                "generator": false,
13138                "async": false,
13139                "expression": false,
13140                "params": [
13141                  {
13142                    "type": "ETSParameterExpression",
13143                    "name": {
13144                      "type": "Identifier",
13145                      "name": "fn",
13146                      "typeAnnotation": {
13147                        "type": "ETSFunctionType",
13148                        "params": [
13149                          {
13150                            "type": "ETSParameterExpression",
13151                            "name": {
13152                              "type": "Identifier",
13153                              "name": "e",
13154                              "typeAnnotation": {
13155                                "type": "ETSTypeReference",
13156                                "part": {
13157                                  "type": "ETSTypeReferencePart",
13158                                  "name": {
13159                                    "type": "Identifier",
13160                                    "name": "T",
13161                                    "decorators": [],
13162                                    "loc": {
13163                                      "start": {
13164                                        "line": 141,
13165                                        "column": 37,
13166                                        "program": "generic_arrayaslist.ets"
13167                                      },
13168                                      "end": {
13169                                        "line": 141,
13170                                        "column": 38,
13171                                        "program": "generic_arrayaslist.ets"
13172                                      }
13173                                    }
13174                                  },
13175                                  "loc": {
13176                                    "start": {
13177                                      "line": 141,
13178                                      "column": 37,
13179                                      "program": "generic_arrayaslist.ets"
13180                                    },
13181                                    "end": {
13182                                      "line": 141,
13183                                      "column": 39,
13184                                      "program": "generic_arrayaslist.ets"
13185                                    }
13186                                  }
13187                                },
13188                                "loc": {
13189                                  "start": {
13190                                    "line": 141,
13191                                    "column": 37,
13192                                    "program": "generic_arrayaslist.ets"
13193                                  },
13194                                  "end": {
13195                                    "line": 141,
13196                                    "column": 39,
13197                                    "program": "generic_arrayaslist.ets"
13198                                  }
13199                                }
13200                              },
13201                              "decorators": [],
13202                              "loc": {
13203                                "start": {
13204                                  "line": 141,
13205                                  "column": 34,
13206                                  "program": "generic_arrayaslist.ets"
13207                                },
13208                                "end": {
13209                                  "line": 141,
13210                                  "column": 39,
13211                                  "program": "generic_arrayaslist.ets"
13212                                }
13213                              }
13214                            },
13215                            "loc": {
13216                              "start": {
13217                                "line": 141,
13218                                "column": 34,
13219                                "program": "generic_arrayaslist.ets"
13220                              },
13221                              "end": {
13222                                "line": 141,
13223                                "column": 39,
13224                                "program": "generic_arrayaslist.ets"
13225                              }
13226                            }
13227                          }
13228                        ],
13229                        "returnType": {
13230                          "type": "ETSTypeReference",
13231                          "part": {
13232                            "type": "ETSTypeReferencePart",
13233                            "name": {
13234                              "type": "Identifier",
13235                              "name": "T",
13236                              "decorators": [],
13237                              "loc": {
13238                                "start": {
13239                                  "line": 141,
13240                                  "column": 43,
13241                                  "program": "generic_arrayaslist.ets"
13242                                },
13243                                "end": {
13244                                  "line": 141,
13245                                  "column": 44,
13246                                  "program": "generic_arrayaslist.ets"
13247                                }
13248                              }
13249                            },
13250                            "loc": {
13251                              "start": {
13252                                "line": 141,
13253                                "column": 43,
13254                                "program": "generic_arrayaslist.ets"
13255                              },
13256                              "end": {
13257                                "line": 141,
13258                                "column": 45,
13259                                "program": "generic_arrayaslist.ets"
13260                              }
13261                            }
13262                          },
13263                          "loc": {
13264                            "start": {
13265                              "line": 141,
13266                              "column": 43,
13267                              "program": "generic_arrayaslist.ets"
13268                            },
13269                            "end": {
13270                              "line": 141,
13271                              "column": 45,
13272                              "program": "generic_arrayaslist.ets"
13273                            }
13274                          }
13275                        },
13276                        "loc": {
13277                          "start": {
13278                            "line": 141,
13279                            "column": 33,
13280                            "program": "generic_arrayaslist.ets"
13281                          },
13282                          "end": {
13283                            "line": 141,
13284                            "column": 45,
13285                            "program": "generic_arrayaslist.ets"
13286                          }
13287                        }
13288                      },
13289                      "decorators": [],
13290                      "loc": {
13291                        "start": {
13292                          "line": 141,
13293                          "column": 29,
13294                          "program": "generic_arrayaslist.ets"
13295                        },
13296                        "end": {
13297                          "line": 141,
13298                          "column": 45,
13299                          "program": "generic_arrayaslist.ets"
13300                        }
13301                      }
13302                    },
13303                    "loc": {
13304                      "start": {
13305                        "line": 141,
13306                        "column": 29,
13307                        "program": "generic_arrayaslist.ets"
13308                      },
13309                      "end": {
13310                        "line": 141,
13311                        "column": 45,
13312                        "program": "generic_arrayaslist.ets"
13313                      }
13314                    }
13315                  }
13316                ],
13317                "returnType": {
13318                  "type": "ETSUnionType",
13319                  "types": [
13320                    {
13321                      "type": "ETSTypeReference",
13322                      "part": {
13323                        "type": "ETSTypeReferencePart",
13324                        "name": {
13325                          "type": "Identifier",
13326                          "name": "Listt",
13327                          "decorators": [],
13328                          "loc": {
13329                            "start": {
13330                              "line": 141,
13331                              "column": 47,
13332                              "program": "generic_arrayaslist.ets"
13333                            },
13334                            "end": {
13335                              "line": 141,
13336                              "column": 52,
13337                              "program": "generic_arrayaslist.ets"
13338                            }
13339                          }
13340                        },
13341                        "typeParams": {
13342                          "type": "TSTypeParameterInstantiation",
13343                          "params": [
13344                            {
13345                              "type": "ETSTypeReference",
13346                              "part": {
13347                                "type": "ETSTypeReferencePart",
13348                                "name": {
13349                                  "type": "Identifier",
13350                                  "name": "T",
13351                                  "decorators": [],
13352                                  "loc": {
13353                                    "start": {
13354                                      "line": 141,
13355                                      "column": 53,
13356                                      "program": "generic_arrayaslist.ets"
13357                                    },
13358                                    "end": {
13359                                      "line": 141,
13360                                      "column": 54,
13361                                      "program": "generic_arrayaslist.ets"
13362                                    }
13363                                  }
13364                                },
13365                                "loc": {
13366                                  "start": {
13367                                    "line": 141,
13368                                    "column": 53,
13369                                    "program": "generic_arrayaslist.ets"
13370                                  },
13371                                  "end": {
13372                                    "line": 141,
13373                                    "column": 55,
13374                                    "program": "generic_arrayaslist.ets"
13375                                  }
13376                                }
13377                              },
13378                              "loc": {
13379                                "start": {
13380                                  "line": 141,
13381                                  "column": 53,
13382                                  "program": "generic_arrayaslist.ets"
13383                                },
13384                                "end": {
13385                                  "line": 141,
13386                                  "column": 55,
13387                                  "program": "generic_arrayaslist.ets"
13388                                }
13389                              }
13390                            }
13391                          ],
13392                          "loc": {
13393                            "start": {
13394                              "line": 141,
13395                              "column": 52,
13396                              "program": "generic_arrayaslist.ets"
13397                            },
13398                            "end": {
13399                              "line": 141,
13400                              "column": 55,
13401                              "program": "generic_arrayaslist.ets"
13402                            }
13403                          }
13404                        },
13405                        "loc": {
13406                          "start": {
13407                            "line": 141,
13408                            "column": 47,
13409                            "program": "generic_arrayaslist.ets"
13410                          },
13411                          "end": {
13412                            "line": 141,
13413                            "column": 57,
13414                            "program": "generic_arrayaslist.ets"
13415                          }
13416                        }
13417                      },
13418                      "loc": {
13419                        "start": {
13420                          "line": 141,
13421                          "column": 47,
13422                          "program": "generic_arrayaslist.ets"
13423                        },
13424                        "end": {
13425                          "line": 141,
13426                          "column": 57,
13427                          "program": "generic_arrayaslist.ets"
13428                        }
13429                      }
13430                    },
13431                    {
13432                      "type": "ETSNullType",
13433                      "loc": {
13434                        "start": {
13435                          "line": 141,
13436                          "column": 58,
13437                          "program": "generic_arrayaslist.ets"
13438                        },
13439                        "end": {
13440                          "line": 141,
13441                          "column": 62,
13442                          "program": "generic_arrayaslist.ets"
13443                        }
13444                      }
13445                    }
13446                  ],
13447                  "loc": {
13448                    "start": {
13449                      "line": 141,
13450                      "column": 47,
13451                      "program": "generic_arrayaslist.ets"
13452                    },
13453                    "end": {
13454                      "line": 141,
13455                      "column": 62,
13456                      "program": "generic_arrayaslist.ets"
13457                    }
13458                  }
13459                },
13460                "body": {
13461                  "type": "BlockStatement",
13462                  "statements": [
13463                    {
13464                      "type": "ForUpdateStatement",
13465                      "init": {
13466                        "type": "VariableDeclaration",
13467                        "declarations": [
13468                          {
13469                            "type": "VariableDeclarator",
13470                            "id": {
13471                              "type": "Identifier",
13472                              "name": "i",
13473                              "decorators": [],
13474                              "loc": {
13475                                "start": {
13476                                  "line": 142,
13477                                  "column": 18,
13478                                  "program": "generic_arrayaslist.ets"
13479                                },
13480                                "end": {
13481                                  "line": 142,
13482                                  "column": 19,
13483                                  "program": "generic_arrayaslist.ets"
13484                                }
13485                              }
13486                            },
13487                            "init": {
13488                              "type": "NumberLiteral",
13489                              "value": 0,
13490                              "loc": {
13491                                "start": {
13492                                  "line": 142,
13493                                  "column": 22,
13494                                  "program": "generic_arrayaslist.ets"
13495                                },
13496                                "end": {
13497                                  "line": 142,
13498                                  "column": 23,
13499                                  "program": "generic_arrayaslist.ets"
13500                                }
13501                              }
13502                            },
13503                            "loc": {
13504                              "start": {
13505                                "line": 142,
13506                                "column": 18,
13507                                "program": "generic_arrayaslist.ets"
13508                              },
13509                              "end": {
13510                                "line": 142,
13511                                "column": 23,
13512                                "program": "generic_arrayaslist.ets"
13513                              }
13514                            }
13515                          }
13516                        ],
13517                        "kind": "let",
13518                        "loc": {
13519                          "start": {
13520                            "line": 142,
13521                            "column": 14,
13522                            "program": "generic_arrayaslist.ets"
13523                          },
13524                          "end": {
13525                            "line": 142,
13526                            "column": 23,
13527                            "program": "generic_arrayaslist.ets"
13528                          }
13529                        }
13530                      },
13531                      "test": {
13532                        "type": "BinaryExpression",
13533                        "operator": "<",
13534                        "left": {
13535                          "type": "Identifier",
13536                          "name": "i",
13537                          "decorators": [],
13538                          "loc": {
13539                            "start": {
13540                              "line": 142,
13541                              "column": 25,
13542                              "program": "generic_arrayaslist.ets"
13543                            },
13544                            "end": {
13545                              "line": 142,
13546                              "column": 26,
13547                              "program": "generic_arrayaslist.ets"
13548                            }
13549                          }
13550                        },
13551                        "right": {
13552                          "type": "MemberExpression",
13553                          "object": {
13554                            "type": "ThisExpression",
13555                            "loc": {
13556                              "start": {
13557                                "line": 142,
13558                                "column": 29,
13559                                "program": "generic_arrayaslist.ets"
13560                              },
13561                              "end": {
13562                                "line": 142,
13563                                "column": 33,
13564                                "program": "generic_arrayaslist.ets"
13565                              }
13566                            }
13567                          },
13568                          "property": {
13569                            "type": "Identifier",
13570                            "name": "curSize",
13571                            "decorators": [],
13572                            "loc": {
13573                              "start": {
13574                                "line": 142,
13575                                "column": 34,
13576                                "program": "generic_arrayaslist.ets"
13577                              },
13578                              "end": {
13579                                "line": 142,
13580                                "column": 41,
13581                                "program": "generic_arrayaslist.ets"
13582                              }
13583                            }
13584                          },
13585                          "computed": false,
13586                          "optional": false,
13587                          "loc": {
13588                            "start": {
13589                              "line": 142,
13590                              "column": 29,
13591                              "program": "generic_arrayaslist.ets"
13592                            },
13593                            "end": {
13594                              "line": 142,
13595                              "column": 41,
13596                              "program": "generic_arrayaslist.ets"
13597                            }
13598                          }
13599                        },
13600                        "loc": {
13601                          "start": {
13602                            "line": 142,
13603                            "column": 25,
13604                            "program": "generic_arrayaslist.ets"
13605                          },
13606                          "end": {
13607                            "line": 142,
13608                            "column": 41,
13609                            "program": "generic_arrayaslist.ets"
13610                          }
13611                        }
13612                      },
13613                      "update": {
13614                        "type": "UpdateExpression",
13615                        "operator": "++",
13616                        "prefix": true,
13617                        "argument": {
13618                          "type": "Identifier",
13619                          "name": "i",
13620                          "decorators": [],
13621                          "loc": {
13622                            "start": {
13623                              "line": 142,
13624                              "column": 45,
13625                              "program": "generic_arrayaslist.ets"
13626                            },
13627                            "end": {
13628                              "line": 142,
13629                              "column": 46,
13630                              "program": "generic_arrayaslist.ets"
13631                            }
13632                          }
13633                        },
13634                        "loc": {
13635                          "start": {
13636                            "line": 142,
13637                            "column": 43,
13638                            "program": "generic_arrayaslist.ets"
13639                          },
13640                          "end": {
13641                            "line": 142,
13642                            "column": 46,
13643                            "program": "generic_arrayaslist.ets"
13644                          }
13645                        }
13646                      },
13647                      "body": {
13648                        "type": "BlockStatement",
13649                        "statements": [
13650                          {
13651                            "type": "ExpressionStatement",
13652                            "expression": {
13653                              "type": "AssignmentExpression",
13654                              "operator": "=",
13655                              "left": {
13656                                "type": "MemberExpression",
13657                                "object": {
13658                                  "type": "MemberExpression",
13659                                  "object": {
13660                                    "type": "ThisExpression",
13661                                    "loc": {
13662                                      "start": {
13663                                        "line": 143,
13664                                        "column": 13,
13665                                        "program": "generic_arrayaslist.ets"
13666                                      },
13667                                      "end": {
13668                                        "line": 143,
13669                                        "column": 17,
13670                                        "program": "generic_arrayaslist.ets"
13671                                      }
13672                                    }
13673                                  },
13674                                  "property": {
13675                                    "type": "Identifier",
13676                                    "name": "data",
13677                                    "decorators": [],
13678                                    "loc": {
13679                                      "start": {
13680                                        "line": 143,
13681                                        "column": 18,
13682                                        "program": "generic_arrayaslist.ets"
13683                                      },
13684                                      "end": {
13685                                        "line": 143,
13686                                        "column": 22,
13687                                        "program": "generic_arrayaslist.ets"
13688                                      }
13689                                    }
13690                                  },
13691                                  "computed": false,
13692                                  "optional": false,
13693                                  "loc": {
13694                                    "start": {
13695                                      "line": 143,
13696                                      "column": 13,
13697                                      "program": "generic_arrayaslist.ets"
13698                                    },
13699                                    "end": {
13700                                      "line": 143,
13701                                      "column": 22,
13702                                      "program": "generic_arrayaslist.ets"
13703                                    }
13704                                  }
13705                                },
13706                                "property": {
13707                                  "type": "Identifier",
13708                                  "name": "i",
13709                                  "decorators": [],
13710                                  "loc": {
13711                                    "start": {
13712                                      "line": 143,
13713                                      "column": 23,
13714                                      "program": "generic_arrayaslist.ets"
13715                                    },
13716                                    "end": {
13717                                      "line": 143,
13718                                      "column": 24,
13719                                      "program": "generic_arrayaslist.ets"
13720                                    }
13721                                  }
13722                                },
13723                                "computed": true,
13724                                "optional": false,
13725                                "loc": {
13726                                  "start": {
13727                                    "line": 143,
13728                                    "column": 13,
13729                                    "program": "generic_arrayaslist.ets"
13730                                  },
13731                                  "end": {
13732                                    "line": 143,
13733                                    "column": 25,
13734                                    "program": "generic_arrayaslist.ets"
13735                                  }
13736                                }
13737                              },
13738                              "right": {
13739                                "type": "CallExpression",
13740                                "callee": {
13741                                  "type": "Identifier",
13742                                  "name": "fn",
13743                                  "decorators": [],
13744                                  "loc": {
13745                                    "start": {
13746                                      "line": 143,
13747                                      "column": 28,
13748                                      "program": "generic_arrayaslist.ets"
13749                                    },
13750                                    "end": {
13751                                      "line": 143,
13752                                      "column": 30,
13753                                      "program": "generic_arrayaslist.ets"
13754                                    }
13755                                  }
13756                                },
13757                                "arguments": [
13758                                  {
13759                                    "type": "TSAsExpression",
13760                                    "expression": {
13761                                      "type": "MemberExpression",
13762                                      "object": {
13763                                        "type": "MemberExpression",
13764                                        "object": {
13765                                          "type": "ThisExpression",
13766                                          "loc": {
13767                                            "start": {
13768                                              "line": 143,
13769                                              "column": 31,
13770                                              "program": "generic_arrayaslist.ets"
13771                                            },
13772                                            "end": {
13773                                              "line": 143,
13774                                              "column": 35,
13775                                              "program": "generic_arrayaslist.ets"
13776                                            }
13777                                          }
13778                                        },
13779                                        "property": {
13780                                          "type": "Identifier",
13781                                          "name": "data",
13782                                          "decorators": [],
13783                                          "loc": {
13784                                            "start": {
13785                                              "line": 143,
13786                                              "column": 36,
13787                                              "program": "generic_arrayaslist.ets"
13788                                            },
13789                                            "end": {
13790                                              "line": 143,
13791                                              "column": 40,
13792                                              "program": "generic_arrayaslist.ets"
13793                                            }
13794                                          }
13795                                        },
13796                                        "computed": false,
13797                                        "optional": false,
13798                                        "loc": {
13799                                          "start": {
13800                                            "line": 143,
13801                                            "column": 31,
13802                                            "program": "generic_arrayaslist.ets"
13803                                          },
13804                                          "end": {
13805                                            "line": 143,
13806                                            "column": 40,
13807                                            "program": "generic_arrayaslist.ets"
13808                                          }
13809                                        }
13810                                      },
13811                                      "property": {
13812                                        "type": "Identifier",
13813                                        "name": "i",
13814                                        "decorators": [],
13815                                        "loc": {
13816                                          "start": {
13817                                            "line": 143,
13818                                            "column": 41,
13819                                            "program": "generic_arrayaslist.ets"
13820                                          },
13821                                          "end": {
13822                                            "line": 143,
13823                                            "column": 42,
13824                                            "program": "generic_arrayaslist.ets"
13825                                          }
13826                                        }
13827                                      },
13828                                      "computed": true,
13829                                      "optional": false,
13830                                      "loc": {
13831                                        "start": {
13832                                          "line": 143,
13833                                          "column": 31,
13834                                          "program": "generic_arrayaslist.ets"
13835                                        },
13836                                        "end": {
13837                                          "line": 143,
13838                                          "column": 43,
13839                                          "program": "generic_arrayaslist.ets"
13840                                        }
13841                                      }
13842                                    },
13843                                    "typeAnnotation": {
13844                                      "type": "ETSTypeReference",
13845                                      "part": {
13846                                        "type": "ETSTypeReferencePart",
13847                                        "name": {
13848                                          "type": "Identifier",
13849                                          "name": "T",
13850                                          "decorators": [],
13851                                          "loc": {
13852                                            "start": {
13853                                              "line": 143,
13854                                              "column": 47,
13855                                              "program": "generic_arrayaslist.ets"
13856                                            },
13857                                            "end": {
13858                                              "line": 143,
13859                                              "column": 48,
13860                                              "program": "generic_arrayaslist.ets"
13861                                            }
13862                                          }
13863                                        },
13864                                        "loc": {
13865                                          "start": {
13866                                            "line": 143,
13867                                            "column": 47,
13868                                            "program": "generic_arrayaslist.ets"
13869                                          },
13870                                          "end": {
13871                                            "line": 143,
13872                                            "column": 49,
13873                                            "program": "generic_arrayaslist.ets"
13874                                          }
13875                                        }
13876                                      },
13877                                      "loc": {
13878                                        "start": {
13879                                          "line": 143,
13880                                          "column": 47,
13881                                          "program": "generic_arrayaslist.ets"
13882                                        },
13883                                        "end": {
13884                                          "line": 143,
13885                                          "column": 49,
13886                                          "program": "generic_arrayaslist.ets"
13887                                        }
13888                                      }
13889                                    },
13890                                    "loc": {
13891                                      "start": {
13892                                        "line": 143,
13893                                        "column": 31,
13894                                        "program": "generic_arrayaslist.ets"
13895                                      },
13896                                      "end": {
13897                                        "line": 143,
13898                                        "column": 43,
13899                                        "program": "generic_arrayaslist.ets"
13900                                      }
13901                                    }
13902                                  }
13903                                ],
13904                                "optional": false,
13905                                "loc": {
13906                                  "start": {
13907                                    "line": 143,
13908                                    "column": 28,
13909                                    "program": "generic_arrayaslist.ets"
13910                                  },
13911                                  "end": {
13912                                    "line": 143,
13913                                    "column": 49,
13914                                    "program": "generic_arrayaslist.ets"
13915                                  }
13916                                }
13917                              },
13918                              "loc": {
13919                                "start": {
13920                                  "line": 143,
13921                                  "column": 13,
13922                                  "program": "generic_arrayaslist.ets"
13923                                },
13924                                "end": {
13925                                  "line": 143,
13926                                  "column": 49,
13927                                  "program": "generic_arrayaslist.ets"
13928                                }
13929                              }
13930                            },
13931                            "loc": {
13932                              "start": {
13933                                "line": 143,
13934                                "column": 13,
13935                                "program": "generic_arrayaslist.ets"
13936                              },
13937                              "end": {
13938                                "line": 143,
13939                                "column": 50,
13940                                "program": "generic_arrayaslist.ets"
13941                              }
13942                            }
13943                          }
13944                        ],
13945                        "loc": {
13946                          "start": {
13947                            "line": 142,
13948                            "column": 48,
13949                            "program": "generic_arrayaslist.ets"
13950                          },
13951                          "end": {
13952                            "line": 144,
13953                            "column": 10,
13954                            "program": "generic_arrayaslist.ets"
13955                          }
13956                        }
13957                      },
13958                      "loc": {
13959                        "start": {
13960                          "line": 142,
13961                          "column": 9,
13962                          "program": "generic_arrayaslist.ets"
13963                        },
13964                        "end": {
13965                          "line": 144,
13966                          "column": 10,
13967                          "program": "generic_arrayaslist.ets"
13968                        }
13969                      }
13970                    },
13971                    {
13972                      "type": "ReturnStatement",
13973                      "argument": {
13974                        "type": "NullLiteral",
13975                        "value": null,
13976                        "loc": {
13977                          "start": {
13978                            "line": 145,
13979                            "column": 16,
13980                            "program": "generic_arrayaslist.ets"
13981                          },
13982                          "end": {
13983                            "line": 145,
13984                            "column": 20,
13985                            "program": "generic_arrayaslist.ets"
13986                          }
13987                        }
13988                      },
13989                      "loc": {
13990                        "start": {
13991                          "line": 145,
13992                          "column": 9,
13993                          "program": "generic_arrayaslist.ets"
13994                        },
13995                        "end": {
13996                          "line": 145,
13997                          "column": 21,
13998                          "program": "generic_arrayaslist.ets"
13999                        }
14000                      }
14001                    }
14002                  ],
14003                  "loc": {
14004                    "start": {
14005                      "line": 141,
14006                      "column": 63,
14007                      "program": "generic_arrayaslist.ets"
14008                    },
14009                    "end": {
14010                      "line": 146,
14011                      "column": 6,
14012                      "program": "generic_arrayaslist.ets"
14013                    }
14014                  }
14015                },
14016                "loc": {
14017                  "start": {
14018                    "line": 141,
14019                    "column": 28,
14020                    "program": "generic_arrayaslist.ets"
14021                  },
14022                  "end": {
14023                    "line": 146,
14024                    "column": 6,
14025                    "program": "generic_arrayaslist.ets"
14026                  }
14027                }
14028              },
14029              "loc": {
14030                "start": {
14031                  "line": 141,
14032                  "column": 28,
14033                  "program": "generic_arrayaslist.ets"
14034                },
14035                "end": {
14036                  "line": 146,
14037                  "column": 6,
14038                  "program": "generic_arrayaslist.ets"
14039                }
14040              }
14041            },
14042            "overloads": [],
14043            "decorators": [],
14044            "loc": {
14045              "start": {
14046                "line": 141,
14047                "column": 5,
14048                "program": "generic_arrayaslist.ets"
14049              },
14050              "end": {
14051                "line": 146,
14052                "column": 6,
14053                "program": "generic_arrayaslist.ets"
14054              }
14055            }
14056          },
14057          {
14058            "type": "MethodDefinition",
14059            "key": {
14060              "type": "Identifier",
14061              "name": "map",
14062              "decorators": [],
14063              "loc": {
14064                "start": {
14065                  "line": 148,
14066                  "column": 21,
14067                  "program": "generic_arrayaslist.ets"
14068                },
14069                "end": {
14070                  "line": 148,
14071                  "column": 24,
14072                  "program": "generic_arrayaslist.ets"
14073                }
14074              }
14075            },
14076            "kind": "method",
14077            "accessibility": "public",
14078            "static": false,
14079            "optional": false,
14080            "computed": false,
14081            "value": {
14082              "type": "FunctionExpression",
14083              "function": {
14084                "type": "ScriptFunction",
14085                "id": {
14086                  "type": "Identifier",
14087                  "name": "map",
14088                  "decorators": [],
14089                  "loc": {
14090                    "start": {
14091                      "line": 148,
14092                      "column": 21,
14093                      "program": "generic_arrayaslist.ets"
14094                    },
14095                    "end": {
14096                      "line": 148,
14097                      "column": 24,
14098                      "program": "generic_arrayaslist.ets"
14099                    }
14100                  }
14101                },
14102                "generator": false,
14103                "async": false,
14104                "expression": false,
14105                "params": [
14106                  {
14107                    "type": "ETSParameterExpression",
14108                    "name": {
14109                      "type": "Identifier",
14110                      "name": "fn",
14111                      "typeAnnotation": {
14112                        "type": "ETSFunctionType",
14113                        "params": [
14114                          {
14115                            "type": "ETSParameterExpression",
14116                            "name": {
14117                              "type": "Identifier",
14118                              "name": "e",
14119                              "typeAnnotation": {
14120                                "type": "ETSTypeReference",
14121                                "part": {
14122                                  "type": "ETSTypeReferencePart",
14123                                  "name": {
14124                                    "type": "Identifier",
14125                                    "name": "T",
14126                                    "decorators": [],
14127                                    "loc": {
14128                                      "start": {
14129                                        "line": 148,
14130                                        "column": 36,
14131                                        "program": "generic_arrayaslist.ets"
14132                                      },
14133                                      "end": {
14134                                        "line": 148,
14135                                        "column": 37,
14136                                        "program": "generic_arrayaslist.ets"
14137                                      }
14138                                    }
14139                                  },
14140                                  "loc": {
14141                                    "start": {
14142                                      "line": 148,
14143                                      "column": 36,
14144                                      "program": "generic_arrayaslist.ets"
14145                                    },
14146                                    "end": {
14147                                      "line": 148,
14148                                      "column": 38,
14149                                      "program": "generic_arrayaslist.ets"
14150                                    }
14151                                  }
14152                                },
14153                                "loc": {
14154                                  "start": {
14155                                    "line": 148,
14156                                    "column": 36,
14157                                    "program": "generic_arrayaslist.ets"
14158                                  },
14159                                  "end": {
14160                                    "line": 148,
14161                                    "column": 38,
14162                                    "program": "generic_arrayaslist.ets"
14163                                  }
14164                                }
14165                              },
14166                              "decorators": [],
14167                              "loc": {
14168                                "start": {
14169                                  "line": 148,
14170                                  "column": 33,
14171                                  "program": "generic_arrayaslist.ets"
14172                                },
14173                                "end": {
14174                                  "line": 148,
14175                                  "column": 38,
14176                                  "program": "generic_arrayaslist.ets"
14177                                }
14178                              }
14179                            },
14180                            "loc": {
14181                              "start": {
14182                                "line": 148,
14183                                "column": 33,
14184                                "program": "generic_arrayaslist.ets"
14185                              },
14186                              "end": {
14187                                "line": 148,
14188                                "column": 38,
14189                                "program": "generic_arrayaslist.ets"
14190                              }
14191                            }
14192                          }
14193                        ],
14194                        "returnType": {
14195                          "type": "ETSTypeReference",
14196                          "part": {
14197                            "type": "ETSTypeReferencePart",
14198                            "name": {
14199                              "type": "Identifier",
14200                              "name": "U",
14201                              "decorators": [],
14202                              "loc": {
14203                                "start": {
14204                                  "line": 148,
14205                                  "column": 42,
14206                                  "program": "generic_arrayaslist.ets"
14207                                },
14208                                "end": {
14209                                  "line": 148,
14210                                  "column": 43,
14211                                  "program": "generic_arrayaslist.ets"
14212                                }
14213                              }
14214                            },
14215                            "loc": {
14216                              "start": {
14217                                "line": 148,
14218                                "column": 42,
14219                                "program": "generic_arrayaslist.ets"
14220                              },
14221                              "end": {
14222                                "line": 148,
14223                                "column": 44,
14224                                "program": "generic_arrayaslist.ets"
14225                              }
14226                            }
14227                          },
14228                          "loc": {
14229                            "start": {
14230                              "line": 148,
14231                              "column": 42,
14232                              "program": "generic_arrayaslist.ets"
14233                            },
14234                            "end": {
14235                              "line": 148,
14236                              "column": 44,
14237                              "program": "generic_arrayaslist.ets"
14238                            }
14239                          }
14240                        },
14241                        "loc": {
14242                          "start": {
14243                            "line": 148,
14244                            "column": 32,
14245                            "program": "generic_arrayaslist.ets"
14246                          },
14247                          "end": {
14248                            "line": 148,
14249                            "column": 44,
14250                            "program": "generic_arrayaslist.ets"
14251                          }
14252                        }
14253                      },
14254                      "decorators": [],
14255                      "loc": {
14256                        "start": {
14257                          "line": 148,
14258                          "column": 28,
14259                          "program": "generic_arrayaslist.ets"
14260                        },
14261                        "end": {
14262                          "line": 148,
14263                          "column": 44,
14264                          "program": "generic_arrayaslist.ets"
14265                        }
14266                      }
14267                    },
14268                    "loc": {
14269                      "start": {
14270                        "line": 148,
14271                        "column": 28,
14272                        "program": "generic_arrayaslist.ets"
14273                      },
14274                      "end": {
14275                        "line": 148,
14276                        "column": 44,
14277                        "program": "generic_arrayaslist.ets"
14278                      }
14279                    }
14280                  }
14281                ],
14282                "returnType": {
14283                  "type": "ETSTypeReference",
14284                  "part": {
14285                    "type": "ETSTypeReferencePart",
14286                    "name": {
14287                      "type": "Identifier",
14288                      "name": "Listt",
14289                      "decorators": [],
14290                      "loc": {
14291                        "start": {
14292                          "line": 148,
14293                          "column": 46,
14294                          "program": "generic_arrayaslist.ets"
14295                        },
14296                        "end": {
14297                          "line": 148,
14298                          "column": 51,
14299                          "program": "generic_arrayaslist.ets"
14300                        }
14301                      }
14302                    },
14303                    "typeParams": {
14304                      "type": "TSTypeParameterInstantiation",
14305                      "params": [
14306                        {
14307                          "type": "ETSTypeReference",
14308                          "part": {
14309                            "type": "ETSTypeReferencePart",
14310                            "name": {
14311                              "type": "Identifier",
14312                              "name": "U",
14313                              "decorators": [],
14314                              "loc": {
14315                                "start": {
14316                                  "line": 148,
14317                                  "column": 52,
14318                                  "program": "generic_arrayaslist.ets"
14319                                },
14320                                "end": {
14321                                  "line": 148,
14322                                  "column": 53,
14323                                  "program": "generic_arrayaslist.ets"
14324                                }
14325                              }
14326                            },
14327                            "loc": {
14328                              "start": {
14329                                "line": 148,
14330                                "column": 52,
14331                                "program": "generic_arrayaslist.ets"
14332                              },
14333                              "end": {
14334                                "line": 148,
14335                                "column": 54,
14336                                "program": "generic_arrayaslist.ets"
14337                              }
14338                            }
14339                          },
14340                          "loc": {
14341                            "start": {
14342                              "line": 148,
14343                              "column": 52,
14344                              "program": "generic_arrayaslist.ets"
14345                            },
14346                            "end": {
14347                              "line": 148,
14348                              "column": 54,
14349                              "program": "generic_arrayaslist.ets"
14350                            }
14351                          }
14352                        }
14353                      ],
14354                      "loc": {
14355                        "start": {
14356                          "line": 148,
14357                          "column": 51,
14358                          "program": "generic_arrayaslist.ets"
14359                        },
14360                        "end": {
14361                          "line": 148,
14362                          "column": 54,
14363                          "program": "generic_arrayaslist.ets"
14364                        }
14365                      }
14366                    },
14367                    "loc": {
14368                      "start": {
14369                        "line": 148,
14370                        "column": 46,
14371                        "program": "generic_arrayaslist.ets"
14372                      },
14373                      "end": {
14374                        "line": 148,
14375                        "column": 56,
14376                        "program": "generic_arrayaslist.ets"
14377                      }
14378                    }
14379                  },
14380                  "loc": {
14381                    "start": {
14382                      "line": 148,
14383                      "column": 46,
14384                      "program": "generic_arrayaslist.ets"
14385                    },
14386                    "end": {
14387                      "line": 148,
14388                      "column": 56,
14389                      "program": "generic_arrayaslist.ets"
14390                    }
14391                  }
14392                },
14393                "typeParameters": {
14394                  "type": "TSTypeParameterDeclaration",
14395                  "params": [
14396                    {
14397                      "type": "TSTypeParameter",
14398                      "name": {
14399                        "type": "Identifier",
14400                        "name": "U",
14401                        "decorators": [],
14402                        "loc": {
14403                          "start": {
14404                            "line": 148,
14405                            "column": 25,
14406                            "program": "generic_arrayaslist.ets"
14407                          },
14408                          "end": {
14409                            "line": 148,
14410                            "column": 26,
14411                            "program": "generic_arrayaslist.ets"
14412                          }
14413                        }
14414                      },
14415                      "loc": {
14416                        "start": {
14417                          "line": 148,
14418                          "column": 25,
14419                          "program": "generic_arrayaslist.ets"
14420                        },
14421                        "end": {
14422                          "line": 148,
14423                          "column": 27,
14424                          "program": "generic_arrayaslist.ets"
14425                        }
14426                      }
14427                    }
14428                  ],
14429                  "loc": {
14430                    "start": {
14431                      "line": 148,
14432                      "column": 24,
14433                      "program": "generic_arrayaslist.ets"
14434                    },
14435                    "end": {
14436                      "line": 148,
14437                      "column": 27,
14438                      "program": "generic_arrayaslist.ets"
14439                    }
14440                  }
14441                },
14442                "body": {
14443                  "type": "BlockStatement",
14444                  "statements": [
14445                    {
14446                      "type": "VariableDeclaration",
14447                      "declarations": [
14448                        {
14449                          "type": "VariableDeclarator",
14450                          "id": {
14451                            "type": "Identifier",
14452                            "name": "res",
14453                            "decorators": [],
14454                            "loc": {
14455                              "start": {
14456                                "line": 149,
14457                                "column": 13,
14458                                "program": "generic_arrayaslist.ets"
14459                              },
14460                              "end": {
14461                                "line": 149,
14462                                "column": 16,
14463                                "program": "generic_arrayaslist.ets"
14464                              }
14465                            }
14466                          },
14467                          "init": {
14468                            "type": "ETSNewClassInstanceExpression",
14469                            "typeReference": {
14470                              "type": "ETSTypeReference",
14471                              "part": {
14472                                "type": "ETSTypeReferencePart",
14473                                "name": {
14474                                  "type": "Identifier",
14475                                  "name": "ArrayAsListt",
14476                                  "decorators": [],
14477                                  "loc": {
14478                                    "start": {
14479                                      "line": 149,
14480                                      "column": 23,
14481                                      "program": "generic_arrayaslist.ets"
14482                                    },
14483                                    "end": {
14484                                      "line": 149,
14485                                      "column": 35,
14486                                      "program": "generic_arrayaslist.ets"
14487                                    }
14488                                  }
14489                                },
14490                                "typeParams": {
14491                                  "type": "TSTypeParameterInstantiation",
14492                                  "params": [
14493                                    {
14494                                      "type": "ETSTypeReference",
14495                                      "part": {
14496                                        "type": "ETSTypeReferencePart",
14497                                        "name": {
14498                                          "type": "Identifier",
14499                                          "name": "U",
14500                                          "decorators": [],
14501                                          "loc": {
14502                                            "start": {
14503                                              "line": 149,
14504                                              "column": 36,
14505                                              "program": "generic_arrayaslist.ets"
14506                                            },
14507                                            "end": {
14508                                              "line": 149,
14509                                              "column": 37,
14510                                              "program": "generic_arrayaslist.ets"
14511                                            }
14512                                          }
14513                                        },
14514                                        "loc": {
14515                                          "start": {
14516                                            "line": 149,
14517                                            "column": 36,
14518                                            "program": "generic_arrayaslist.ets"
14519                                          },
14520                                          "end": {
14521                                            "line": 149,
14522                                            "column": 38,
14523                                            "program": "generic_arrayaslist.ets"
14524                                          }
14525                                        }
14526                                      },
14527                                      "loc": {
14528                                        "start": {
14529                                          "line": 149,
14530                                          "column": 36,
14531                                          "program": "generic_arrayaslist.ets"
14532                                        },
14533                                        "end": {
14534                                          "line": 149,
14535                                          "column": 38,
14536                                          "program": "generic_arrayaslist.ets"
14537                                        }
14538                                      }
14539                                    }
14540                                  ],
14541                                  "loc": {
14542                                    "start": {
14543                                      "line": 149,
14544                                      "column": 35,
14545                                      "program": "generic_arrayaslist.ets"
14546                                    },
14547                                    "end": {
14548                                      "line": 149,
14549                                      "column": 38,
14550                                      "program": "generic_arrayaslist.ets"
14551                                    }
14552                                  }
14553                                },
14554                                "loc": {
14555                                  "start": {
14556                                    "line": 149,
14557                                    "column": 23,
14558                                    "program": "generic_arrayaslist.ets"
14559                                  },
14560                                  "end": {
14561                                    "line": 149,
14562                                    "column": 39,
14563                                    "program": "generic_arrayaslist.ets"
14564                                  }
14565                                }
14566                              },
14567                              "loc": {
14568                                "start": {
14569                                  "line": 149,
14570                                  "column": 23,
14571                                  "program": "generic_arrayaslist.ets"
14572                                },
14573                                "end": {
14574                                  "line": 149,
14575                                  "column": 39,
14576                                  "program": "generic_arrayaslist.ets"
14577                                }
14578                              }
14579                            },
14580                            "arguments": [],
14581                            "loc": {
14582                              "start": {
14583                                "line": 149,
14584                                "column": 19,
14585                                "program": "generic_arrayaslist.ets"
14586                              },
14587                              "end": {
14588                                "line": 149,
14589                                "column": 41,
14590                                "program": "generic_arrayaslist.ets"
14591                              }
14592                            }
14593                          },
14594                          "loc": {
14595                            "start": {
14596                              "line": 149,
14597                              "column": 13,
14598                              "program": "generic_arrayaslist.ets"
14599                            },
14600                            "end": {
14601                              "line": 149,
14602                              "column": 41,
14603                              "program": "generic_arrayaslist.ets"
14604                            }
14605                          }
14606                        }
14607                      ],
14608                      "kind": "let",
14609                      "loc": {
14610                        "start": {
14611                          "line": 149,
14612                          "column": 9,
14613                          "program": "generic_arrayaslist.ets"
14614                        },
14615                        "end": {
14616                          "line": 149,
14617                          "column": 41,
14618                          "program": "generic_arrayaslist.ets"
14619                        }
14620                      }
14621                    },
14622                    {
14623                      "type": "ForUpdateStatement",
14624                      "init": {
14625                        "type": "VariableDeclaration",
14626                        "declarations": [
14627                          {
14628                            "type": "VariableDeclarator",
14629                            "id": {
14630                              "type": "Identifier",
14631                              "name": "i",
14632                              "decorators": [],
14633                              "loc": {
14634                                "start": {
14635                                  "line": 150,
14636                                  "column": 18,
14637                                  "program": "generic_arrayaslist.ets"
14638                                },
14639                                "end": {
14640                                  "line": 150,
14641                                  "column": 19,
14642                                  "program": "generic_arrayaslist.ets"
14643                                }
14644                              }
14645                            },
14646                            "init": {
14647                              "type": "NumberLiteral",
14648                              "value": 0,
14649                              "loc": {
14650                                "start": {
14651                                  "line": 150,
14652                                  "column": 22,
14653                                  "program": "generic_arrayaslist.ets"
14654                                },
14655                                "end": {
14656                                  "line": 150,
14657                                  "column": 23,
14658                                  "program": "generic_arrayaslist.ets"
14659                                }
14660                              }
14661                            },
14662                            "loc": {
14663                              "start": {
14664                                "line": 150,
14665                                "column": 18,
14666                                "program": "generic_arrayaslist.ets"
14667                              },
14668                              "end": {
14669                                "line": 150,
14670                                "column": 23,
14671                                "program": "generic_arrayaslist.ets"
14672                              }
14673                            }
14674                          }
14675                        ],
14676                        "kind": "let",
14677                        "loc": {
14678                          "start": {
14679                            "line": 150,
14680                            "column": 14,
14681                            "program": "generic_arrayaslist.ets"
14682                          },
14683                          "end": {
14684                            "line": 150,
14685                            "column": 23,
14686                            "program": "generic_arrayaslist.ets"
14687                          }
14688                        }
14689                      },
14690                      "test": {
14691                        "type": "BinaryExpression",
14692                        "operator": "<",
14693                        "left": {
14694                          "type": "Identifier",
14695                          "name": "i",
14696                          "decorators": [],
14697                          "loc": {
14698                            "start": {
14699                              "line": 150,
14700                              "column": 25,
14701                              "program": "generic_arrayaslist.ets"
14702                            },
14703                            "end": {
14704                              "line": 150,
14705                              "column": 26,
14706                              "program": "generic_arrayaslist.ets"
14707                            }
14708                          }
14709                        },
14710                        "right": {
14711                          "type": "MemberExpression",
14712                          "object": {
14713                            "type": "ThisExpression",
14714                            "loc": {
14715                              "start": {
14716                                "line": 150,
14717                                "column": 29,
14718                                "program": "generic_arrayaslist.ets"
14719                              },
14720                              "end": {
14721                                "line": 150,
14722                                "column": 33,
14723                                "program": "generic_arrayaslist.ets"
14724                              }
14725                            }
14726                          },
14727                          "property": {
14728                            "type": "Identifier",
14729                            "name": "curSize",
14730                            "decorators": [],
14731                            "loc": {
14732                              "start": {
14733                                "line": 150,
14734                                "column": 34,
14735                                "program": "generic_arrayaslist.ets"
14736                              },
14737                              "end": {
14738                                "line": 150,
14739                                "column": 41,
14740                                "program": "generic_arrayaslist.ets"
14741                              }
14742                            }
14743                          },
14744                          "computed": false,
14745                          "optional": false,
14746                          "loc": {
14747                            "start": {
14748                              "line": 150,
14749                              "column": 29,
14750                              "program": "generic_arrayaslist.ets"
14751                            },
14752                            "end": {
14753                              "line": 150,
14754                              "column": 41,
14755                              "program": "generic_arrayaslist.ets"
14756                            }
14757                          }
14758                        },
14759                        "loc": {
14760                          "start": {
14761                            "line": 150,
14762                            "column": 25,
14763                            "program": "generic_arrayaslist.ets"
14764                          },
14765                          "end": {
14766                            "line": 150,
14767                            "column": 41,
14768                            "program": "generic_arrayaslist.ets"
14769                          }
14770                        }
14771                      },
14772                      "update": {
14773                        "type": "UpdateExpression",
14774                        "operator": "++",
14775                        "prefix": true,
14776                        "argument": {
14777                          "type": "Identifier",
14778                          "name": "i",
14779                          "decorators": [],
14780                          "loc": {
14781                            "start": {
14782                              "line": 150,
14783                              "column": 45,
14784                              "program": "generic_arrayaslist.ets"
14785                            },
14786                            "end": {
14787                              "line": 150,
14788                              "column": 46,
14789                              "program": "generic_arrayaslist.ets"
14790                            }
14791                          }
14792                        },
14793                        "loc": {
14794                          "start": {
14795                            "line": 150,
14796                            "column": 43,
14797                            "program": "generic_arrayaslist.ets"
14798                          },
14799                          "end": {
14800                            "line": 150,
14801                            "column": 46,
14802                            "program": "generic_arrayaslist.ets"
14803                          }
14804                        }
14805                      },
14806                      "body": {
14807                        "type": "BlockStatement",
14808                        "statements": [
14809                          {
14810                            "type": "ExpressionStatement",
14811                            "expression": {
14812                              "type": "CallExpression",
14813                              "callee": {
14814                                "type": "MemberExpression",
14815                                "object": {
14816                                  "type": "Identifier",
14817                                  "name": "res",
14818                                  "decorators": [],
14819                                  "loc": {
14820                                    "start": {
14821                                      "line": 151,
14822                                      "column": 13,
14823                                      "program": "generic_arrayaslist.ets"
14824                                    },
14825                                    "end": {
14826                                      "line": 151,
14827                                      "column": 16,
14828                                      "program": "generic_arrayaslist.ets"
14829                                    }
14830                                  }
14831                                },
14832                                "property": {
14833                                  "type": "Identifier",
14834                                  "name": "pushBack",
14835                                  "decorators": [],
14836                                  "loc": {
14837                                    "start": {
14838                                      "line": 151,
14839                                      "column": 17,
14840                                      "program": "generic_arrayaslist.ets"
14841                                    },
14842                                    "end": {
14843                                      "line": 151,
14844                                      "column": 25,
14845                                      "program": "generic_arrayaslist.ets"
14846                                    }
14847                                  }
14848                                },
14849                                "computed": false,
14850                                "optional": false,
14851                                "loc": {
14852                                  "start": {
14853                                    "line": 151,
14854                                    "column": 13,
14855                                    "program": "generic_arrayaslist.ets"
14856                                  },
14857                                  "end": {
14858                                    "line": 151,
14859                                    "column": 25,
14860                                    "program": "generic_arrayaslist.ets"
14861                                  }
14862                                }
14863                              },
14864                              "arguments": [
14865                                {
14866                                  "type": "CallExpression",
14867                                  "callee": {
14868                                    "type": "Identifier",
14869                                    "name": "fn",
14870                                    "decorators": [],
14871                                    "loc": {
14872                                      "start": {
14873                                        "line": 151,
14874                                        "column": 26,
14875                                        "program": "generic_arrayaslist.ets"
14876                                      },
14877                                      "end": {
14878                                        "line": 151,
14879                                        "column": 28,
14880                                        "program": "generic_arrayaslist.ets"
14881                                      }
14882                                    }
14883                                  },
14884                                  "arguments": [
14885                                    {
14886                                      "type": "TSAsExpression",
14887                                      "expression": {
14888                                        "type": "MemberExpression",
14889                                        "object": {
14890                                          "type": "MemberExpression",
14891                                          "object": {
14892                                            "type": "ThisExpression",
14893                                            "loc": {
14894                                              "start": {
14895                                                "line": 151,
14896                                                "column": 29,
14897                                                "program": "generic_arrayaslist.ets"
14898                                              },
14899                                              "end": {
14900                                                "line": 151,
14901                                                "column": 33,
14902                                                "program": "generic_arrayaslist.ets"
14903                                              }
14904                                            }
14905                                          },
14906                                          "property": {
14907                                            "type": "Identifier",
14908                                            "name": "data",
14909                                            "decorators": [],
14910                                            "loc": {
14911                                              "start": {
14912                                                "line": 151,
14913                                                "column": 34,
14914                                                "program": "generic_arrayaslist.ets"
14915                                              },
14916                                              "end": {
14917                                                "line": 151,
14918                                                "column": 38,
14919                                                "program": "generic_arrayaslist.ets"
14920                                              }
14921                                            }
14922                                          },
14923                                          "computed": false,
14924                                          "optional": false,
14925                                          "loc": {
14926                                            "start": {
14927                                              "line": 151,
14928                                              "column": 29,
14929                                              "program": "generic_arrayaslist.ets"
14930                                            },
14931                                            "end": {
14932                                              "line": 151,
14933                                              "column": 38,
14934                                              "program": "generic_arrayaslist.ets"
14935                                            }
14936                                          }
14937                                        },
14938                                        "property": {
14939                                          "type": "Identifier",
14940                                          "name": "i",
14941                                          "decorators": [],
14942                                          "loc": {
14943                                            "start": {
14944                                              "line": 151,
14945                                              "column": 39,
14946                                              "program": "generic_arrayaslist.ets"
14947                                            },
14948                                            "end": {
14949                                              "line": 151,
14950                                              "column": 40,
14951                                              "program": "generic_arrayaslist.ets"
14952                                            }
14953                                          }
14954                                        },
14955                                        "computed": true,
14956                                        "optional": false,
14957                                        "loc": {
14958                                          "start": {
14959                                            "line": 151,
14960                                            "column": 29,
14961                                            "program": "generic_arrayaslist.ets"
14962                                          },
14963                                          "end": {
14964                                            "line": 151,
14965                                            "column": 41,
14966                                            "program": "generic_arrayaslist.ets"
14967                                          }
14968                                        }
14969                                      },
14970                                      "typeAnnotation": {
14971                                        "type": "ETSTypeReference",
14972                                        "part": {
14973                                          "type": "ETSTypeReferencePart",
14974                                          "name": {
14975                                            "type": "Identifier",
14976                                            "name": "T",
14977                                            "decorators": [],
14978                                            "loc": {
14979                                              "start": {
14980                                                "line": 151,
14981                                                "column": 45,
14982                                                "program": "generic_arrayaslist.ets"
14983                                              },
14984                                              "end": {
14985                                                "line": 151,
14986                                                "column": 46,
14987                                                "program": "generic_arrayaslist.ets"
14988                                              }
14989                                            }
14990                                          },
14991                                          "loc": {
14992                                            "start": {
14993                                              "line": 151,
14994                                              "column": 45,
14995                                              "program": "generic_arrayaslist.ets"
14996                                            },
14997                                            "end": {
14998                                              "line": 151,
14999                                              "column": 47,
15000                                              "program": "generic_arrayaslist.ets"
15001                                            }
15002                                          }
15003                                        },
15004                                        "loc": {
15005                                          "start": {
15006                                            "line": 151,
15007                                            "column": 45,
15008                                            "program": "generic_arrayaslist.ets"
15009                                          },
15010                                          "end": {
15011                                            "line": 151,
15012                                            "column": 47,
15013                                            "program": "generic_arrayaslist.ets"
15014                                          }
15015                                        }
15016                                      },
15017                                      "loc": {
15018                                        "start": {
15019                                          "line": 151,
15020                                          "column": 29,
15021                                          "program": "generic_arrayaslist.ets"
15022                                        },
15023                                        "end": {
15024                                          "line": 151,
15025                                          "column": 41,
15026                                          "program": "generic_arrayaslist.ets"
15027                                        }
15028                                      }
15029                                    }
15030                                  ],
15031                                  "optional": false,
15032                                  "loc": {
15033                                    "start": {
15034                                      "line": 151,
15035                                      "column": 26,
15036                                      "program": "generic_arrayaslist.ets"
15037                                    },
15038                                    "end": {
15039                                      "line": 151,
15040                                      "column": 47,
15041                                      "program": "generic_arrayaslist.ets"
15042                                    }
15043                                  }
15044                                }
15045                              ],
15046                              "optional": false,
15047                              "loc": {
15048                                "start": {
15049                                  "line": 151,
15050                                  "column": 13,
15051                                  "program": "generic_arrayaslist.ets"
15052                                },
15053                                "end": {
15054                                  "line": 151,
15055                                  "column": 48,
15056                                  "program": "generic_arrayaslist.ets"
15057                                }
15058                              }
15059                            },
15060                            "loc": {
15061                              "start": {
15062                                "line": 151,
15063                                "column": 13,
15064                                "program": "generic_arrayaslist.ets"
15065                              },
15066                              "end": {
15067                                "line": 151,
15068                                "column": 49,
15069                                "program": "generic_arrayaslist.ets"
15070                              }
15071                            }
15072                          }
15073                        ],
15074                        "loc": {
15075                          "start": {
15076                            "line": 150,
15077                            "column": 48,
15078                            "program": "generic_arrayaslist.ets"
15079                          },
15080                          "end": {
15081                            "line": 152,
15082                            "column": 10,
15083                            "program": "generic_arrayaslist.ets"
15084                          }
15085                        }
15086                      },
15087                      "loc": {
15088                        "start": {
15089                          "line": 150,
15090                          "column": 9,
15091                          "program": "generic_arrayaslist.ets"
15092                        },
15093                        "end": {
15094                          "line": 152,
15095                          "column": 10,
15096                          "program": "generic_arrayaslist.ets"
15097                        }
15098                      }
15099                    },
15100                    {
15101                      "type": "ReturnStatement",
15102                      "argument": {
15103                        "type": "Identifier",
15104                        "name": "res",
15105                        "decorators": [],
15106                        "loc": {
15107                          "start": {
15108                            "line": 153,
15109                            "column": 16,
15110                            "program": "generic_arrayaslist.ets"
15111                          },
15112                          "end": {
15113                            "line": 153,
15114                            "column": 19,
15115                            "program": "generic_arrayaslist.ets"
15116                          }
15117                        }
15118                      },
15119                      "loc": {
15120                        "start": {
15121                          "line": 153,
15122                          "column": 9,
15123                          "program": "generic_arrayaslist.ets"
15124                        },
15125                        "end": {
15126                          "line": 153,
15127                          "column": 20,
15128                          "program": "generic_arrayaslist.ets"
15129                        }
15130                      }
15131                    }
15132                  ],
15133                  "loc": {
15134                    "start": {
15135                      "line": 148,
15136                      "column": 55,
15137                      "program": "generic_arrayaslist.ets"
15138                    },
15139                    "end": {
15140                      "line": 154,
15141                      "column": 6,
15142                      "program": "generic_arrayaslist.ets"
15143                    }
15144                  }
15145                },
15146                "loc": {
15147                  "start": {
15148                    "line": 148,
15149                    "column": 24,
15150                    "program": "generic_arrayaslist.ets"
15151                  },
15152                  "end": {
15153                    "line": 154,
15154                    "column": 6,
15155                    "program": "generic_arrayaslist.ets"
15156                  }
15157                }
15158              },
15159              "loc": {
15160                "start": {
15161                  "line": 148,
15162                  "column": 24,
15163                  "program": "generic_arrayaslist.ets"
15164                },
15165                "end": {
15166                  "line": 154,
15167                  "column": 6,
15168                  "program": "generic_arrayaslist.ets"
15169                }
15170              }
15171            },
15172            "overloads": [],
15173            "decorators": [],
15174            "loc": {
15175              "start": {
15176                "line": 148,
15177                "column": 5,
15178                "program": "generic_arrayaslist.ets"
15179              },
15180              "end": {
15181                "line": 154,
15182                "column": 6,
15183                "program": "generic_arrayaslist.ets"
15184              }
15185            }
15186          },
15187          {
15188            "type": "MethodDefinition",
15189            "key": {
15190              "type": "Identifier",
15191              "name": "fold",
15192              "decorators": [],
15193              "loc": {
15194                "start": {
15195                  "line": 156,
15196                  "column": 21,
15197                  "program": "generic_arrayaslist.ets"
15198                },
15199                "end": {
15200                  "line": 156,
15201                  "column": 25,
15202                  "program": "generic_arrayaslist.ets"
15203                }
15204              }
15205            },
15206            "kind": "method",
15207            "accessibility": "public",
15208            "static": false,
15209            "optional": false,
15210            "computed": false,
15211            "value": {
15212              "type": "FunctionExpression",
15213              "function": {
15214                "type": "ScriptFunction",
15215                "id": {
15216                  "type": "Identifier",
15217                  "name": "fold",
15218                  "decorators": [],
15219                  "loc": {
15220                    "start": {
15221                      "line": 156,
15222                      "column": 21,
15223                      "program": "generic_arrayaslist.ets"
15224                    },
15225                    "end": {
15226                      "line": 156,
15227                      "column": 25,
15228                      "program": "generic_arrayaslist.ets"
15229                    }
15230                  }
15231                },
15232                "generator": false,
15233                "async": false,
15234                "expression": false,
15235                "params": [
15236                  {
15237                    "type": "ETSParameterExpression",
15238                    "name": {
15239                      "type": "Identifier",
15240                      "name": "combine",
15241                      "typeAnnotation": {
15242                        "type": "ETSFunctionType",
15243                        "params": [
15244                          {
15245                            "type": "ETSParameterExpression",
15246                            "name": {
15247                              "type": "Identifier",
15248                              "name": "lhs",
15249                              "typeAnnotation": {
15250                                "type": "ETSTypeReference",
15251                                "part": {
15252                                  "type": "ETSTypeReferencePart",
15253                                  "name": {
15254                                    "type": "Identifier",
15255                                    "name": "T",
15256                                    "decorators": [],
15257                                    "loc": {
15258                                      "start": {
15259                                        "line": 156,
15260                                        "column": 41,
15261                                        "program": "generic_arrayaslist.ets"
15262                                      },
15263                                      "end": {
15264                                        "line": 156,
15265                                        "column": 42,
15266                                        "program": "generic_arrayaslist.ets"
15267                                      }
15268                                    }
15269                                  },
15270                                  "loc": {
15271                                    "start": {
15272                                      "line": 156,
15273                                      "column": 41,
15274                                      "program": "generic_arrayaslist.ets"
15275                                    },
15276                                    "end": {
15277                                      "line": 156,
15278                                      "column": 43,
15279                                      "program": "generic_arrayaslist.ets"
15280                                    }
15281                                  }
15282                                },
15283                                "loc": {
15284                                  "start": {
15285                                    "line": 156,
15286                                    "column": 41,
15287                                    "program": "generic_arrayaslist.ets"
15288                                  },
15289                                  "end": {
15290                                    "line": 156,
15291                                    "column": 43,
15292                                    "program": "generic_arrayaslist.ets"
15293                                  }
15294                                }
15295                              },
15296                              "decorators": [],
15297                              "loc": {
15298                                "start": {
15299                                  "line": 156,
15300                                  "column": 36,
15301                                  "program": "generic_arrayaslist.ets"
15302                                },
15303                                "end": {
15304                                  "line": 156,
15305                                  "column": 43,
15306                                  "program": "generic_arrayaslist.ets"
15307                                }
15308                              }
15309                            },
15310                            "loc": {
15311                              "start": {
15312                                "line": 156,
15313                                "column": 36,
15314                                "program": "generic_arrayaslist.ets"
15315                              },
15316                              "end": {
15317                                "line": 156,
15318                                "column": 43,
15319                                "program": "generic_arrayaslist.ets"
15320                              }
15321                            }
15322                          },
15323                          {
15324                            "type": "ETSParameterExpression",
15325                            "name": {
15326                              "type": "Identifier",
15327                              "name": "rhs",
15328                              "typeAnnotation": {
15329                                "type": "ETSTypeReference",
15330                                "part": {
15331                                  "type": "ETSTypeReferencePart",
15332                                  "name": {
15333                                    "type": "Identifier",
15334                                    "name": "T",
15335                                    "decorators": [],
15336                                    "loc": {
15337                                      "start": {
15338                                        "line": 156,
15339                                        "column": 49,
15340                                        "program": "generic_arrayaslist.ets"
15341                                      },
15342                                      "end": {
15343                                        "line": 156,
15344                                        "column": 50,
15345                                        "program": "generic_arrayaslist.ets"
15346                                      }
15347                                    }
15348                                  },
15349                                  "loc": {
15350                                    "start": {
15351                                      "line": 156,
15352                                      "column": 49,
15353                                      "program": "generic_arrayaslist.ets"
15354                                    },
15355                                    "end": {
15356                                      "line": 156,
15357                                      "column": 51,
15358                                      "program": "generic_arrayaslist.ets"
15359                                    }
15360                                  }
15361                                },
15362                                "loc": {
15363                                  "start": {
15364                                    "line": 156,
15365                                    "column": 49,
15366                                    "program": "generic_arrayaslist.ets"
15367                                  },
15368                                  "end": {
15369                                    "line": 156,
15370                                    "column": 51,
15371                                    "program": "generic_arrayaslist.ets"
15372                                  }
15373                                }
15374                              },
15375                              "decorators": [],
15376                              "loc": {
15377                                "start": {
15378                                  "line": 156,
15379                                  "column": 44,
15380                                  "program": "generic_arrayaslist.ets"
15381                                },
15382                                "end": {
15383                                  "line": 156,
15384                                  "column": 51,
15385                                  "program": "generic_arrayaslist.ets"
15386                                }
15387                              }
15388                            },
15389                            "loc": {
15390                              "start": {
15391                                "line": 156,
15392                                "column": 44,
15393                                "program": "generic_arrayaslist.ets"
15394                              },
15395                              "end": {
15396                                "line": 156,
15397                                "column": 51,
15398                                "program": "generic_arrayaslist.ets"
15399                              }
15400                            }
15401                          }
15402                        ],
15403                        "returnType": {
15404                          "type": "ETSTypeReference",
15405                          "part": {
15406                            "type": "ETSTypeReferencePart",
15407                            "name": {
15408                              "type": "Identifier",
15409                              "name": "T",
15410                              "decorators": [],
15411                              "loc": {
15412                                "start": {
15413                                  "line": 156,
15414                                  "column": 55,
15415                                  "program": "generic_arrayaslist.ets"
15416                                },
15417                                "end": {
15418                                  "line": 156,
15419                                  "column": 56,
15420                                  "program": "generic_arrayaslist.ets"
15421                                }
15422                              }
15423                            },
15424                            "loc": {
15425                              "start": {
15426                                "line": 156,
15427                                "column": 55,
15428                                "program": "generic_arrayaslist.ets"
15429                              },
15430                              "end": {
15431                                "line": 156,
15432                                "column": 57,
15433                                "program": "generic_arrayaslist.ets"
15434                              }
15435                            }
15436                          },
15437                          "loc": {
15438                            "start": {
15439                              "line": 156,
15440                              "column": 55,
15441                              "program": "generic_arrayaslist.ets"
15442                            },
15443                            "end": {
15444                              "line": 156,
15445                              "column": 57,
15446                              "program": "generic_arrayaslist.ets"
15447                            }
15448                          }
15449                        },
15450                        "loc": {
15451                          "start": {
15452                            "line": 156,
15453                            "column": 35,
15454                            "program": "generic_arrayaslist.ets"
15455                          },
15456                          "end": {
15457                            "line": 156,
15458                            "column": 57,
15459                            "program": "generic_arrayaslist.ets"
15460                          }
15461                        }
15462                      },
15463                      "decorators": [],
15464                      "loc": {
15465                        "start": {
15466                          "line": 156,
15467                          "column": 26,
15468                          "program": "generic_arrayaslist.ets"
15469                        },
15470                        "end": {
15471                          "line": 156,
15472                          "column": 57,
15473                          "program": "generic_arrayaslist.ets"
15474                        }
15475                      }
15476                    },
15477                    "loc": {
15478                      "start": {
15479                        "line": 156,
15480                        "column": 26,
15481                        "program": "generic_arrayaslist.ets"
15482                      },
15483                      "end": {
15484                        "line": 156,
15485                        "column": 57,
15486                        "program": "generic_arrayaslist.ets"
15487                      }
15488                    }
15489                  }
15490                ],
15491                "returnType": {
15492                  "type": "ETSUnionType",
15493                  "types": [
15494                    {
15495                      "type": "ETSTypeReference",
15496                      "part": {
15497                        "type": "ETSTypeReferencePart",
15498                        "name": {
15499                          "type": "Identifier",
15500                          "name": "T",
15501                          "decorators": [],
15502                          "loc": {
15503                            "start": {
15504                              "line": 156,
15505                              "column": 59,
15506                              "program": "generic_arrayaslist.ets"
15507                            },
15508                            "end": {
15509                              "line": 156,
15510                              "column": 60,
15511                              "program": "generic_arrayaslist.ets"
15512                            }
15513                          }
15514                        },
15515                        "loc": {
15516                          "start": {
15517                            "line": 156,
15518                            "column": 59,
15519                            "program": "generic_arrayaslist.ets"
15520                          },
15521                          "end": {
15522                            "line": 156,
15523                            "column": 62,
15524                            "program": "generic_arrayaslist.ets"
15525                          }
15526                        }
15527                      },
15528                      "loc": {
15529                        "start": {
15530                          "line": 156,
15531                          "column": 59,
15532                          "program": "generic_arrayaslist.ets"
15533                        },
15534                        "end": {
15535                          "line": 156,
15536                          "column": 62,
15537                          "program": "generic_arrayaslist.ets"
15538                        }
15539                      }
15540                    },
15541                    {
15542                      "type": "ETSNullType",
15543                      "loc": {
15544                        "start": {
15545                          "line": 156,
15546                          "column": 63,
15547                          "program": "generic_arrayaslist.ets"
15548                        },
15549                        "end": {
15550                          "line": 156,
15551                          "column": 67,
15552                          "program": "generic_arrayaslist.ets"
15553                        }
15554                      }
15555                    }
15556                  ],
15557                  "loc": {
15558                    "start": {
15559                      "line": 156,
15560                      "column": 59,
15561                      "program": "generic_arrayaslist.ets"
15562                    },
15563                    "end": {
15564                      "line": 156,
15565                      "column": 67,
15566                      "program": "generic_arrayaslist.ets"
15567                    }
15568                  }
15569                },
15570                "body": {
15571                  "type": "BlockStatement",
15572                  "statements": [
15573                    {
15574                      "type": "IfStatement",
15575                      "test": {
15576                        "type": "BinaryExpression",
15577                        "operator": ">",
15578                        "left": {
15579                          "type": "MemberExpression",
15580                          "object": {
15581                            "type": "ThisExpression",
15582                            "loc": {
15583                              "start": {
15584                                "line": 157,
15585                                "column": 13,
15586                                "program": "generic_arrayaslist.ets"
15587                              },
15588                              "end": {
15589                                "line": 157,
15590                                "column": 17,
15591                                "program": "generic_arrayaslist.ets"
15592                              }
15593                            }
15594                          },
15595                          "property": {
15596                            "type": "Identifier",
15597                            "name": "curSize",
15598                            "decorators": [],
15599                            "loc": {
15600                              "start": {
15601                                "line": 157,
15602                                "column": 18,
15603                                "program": "generic_arrayaslist.ets"
15604                              },
15605                              "end": {
15606                                "line": 157,
15607                                "column": 25,
15608                                "program": "generic_arrayaslist.ets"
15609                              }
15610                            }
15611                          },
15612                          "computed": false,
15613                          "optional": false,
15614                          "loc": {
15615                            "start": {
15616                              "line": 157,
15617                              "column": 13,
15618                              "program": "generic_arrayaslist.ets"
15619                            },
15620                            "end": {
15621                              "line": 157,
15622                              "column": 25,
15623                              "program": "generic_arrayaslist.ets"
15624                            }
15625                          }
15626                        },
15627                        "right": {
15628                          "type": "NumberLiteral",
15629                          "value": 0,
15630                          "loc": {
15631                            "start": {
15632                              "line": 157,
15633                              "column": 28,
15634                              "program": "generic_arrayaslist.ets"
15635                            },
15636                            "end": {
15637                              "line": 157,
15638                              "column": 29,
15639                              "program": "generic_arrayaslist.ets"
15640                            }
15641                          }
15642                        },
15643                        "loc": {
15644                          "start": {
15645                            "line": 157,
15646                            "column": 13,
15647                            "program": "generic_arrayaslist.ets"
15648                          },
15649                          "end": {
15650                            "line": 157,
15651                            "column": 29,
15652                            "program": "generic_arrayaslist.ets"
15653                          }
15654                        }
15655                      },
15656                      "consequent": {
15657                        "type": "BlockStatement",
15658                        "statements": [
15659                          {
15660                            "type": "VariableDeclaration",
15661                            "declarations": [
15662                              {
15663                                "type": "VariableDeclarator",
15664                                "id": {
15665                                  "type": "Identifier",
15666                                  "name": "res",
15667                                  "decorators": [],
15668                                  "loc": {
15669                                    "start": {
15670                                      "line": 158,
15671                                      "column": 17,
15672                                      "program": "generic_arrayaslist.ets"
15673                                    },
15674                                    "end": {
15675                                      "line": 158,
15676                                      "column": 20,
15677                                      "program": "generic_arrayaslist.ets"
15678                                    }
15679                                  }
15680                                },
15681                                "init": {
15682                                  "type": "TSAsExpression",
15683                                  "expression": {
15684                                    "type": "MemberExpression",
15685                                    "object": {
15686                                      "type": "MemberExpression",
15687                                      "object": {
15688                                        "type": "ThisExpression",
15689                                        "loc": {
15690                                          "start": {
15691                                            "line": 158,
15692                                            "column": 23,
15693                                            "program": "generic_arrayaslist.ets"
15694                                          },
15695                                          "end": {
15696                                            "line": 158,
15697                                            "column": 27,
15698                                            "program": "generic_arrayaslist.ets"
15699                                          }
15700                                        }
15701                                      },
15702                                      "property": {
15703                                        "type": "Identifier",
15704                                        "name": "data",
15705                                        "decorators": [],
15706                                        "loc": {
15707                                          "start": {
15708                                            "line": 158,
15709                                            "column": 28,
15710                                            "program": "generic_arrayaslist.ets"
15711                                          },
15712                                          "end": {
15713                                            "line": 158,
15714                                            "column": 32,
15715                                            "program": "generic_arrayaslist.ets"
15716                                          }
15717                                        }
15718                                      },
15719                                      "computed": false,
15720                                      "optional": false,
15721                                      "loc": {
15722                                        "start": {
15723                                          "line": 158,
15724                                          "column": 23,
15725                                          "program": "generic_arrayaslist.ets"
15726                                        },
15727                                        "end": {
15728                                          "line": 158,
15729                                          "column": 32,
15730                                          "program": "generic_arrayaslist.ets"
15731                                        }
15732                                      }
15733                                    },
15734                                    "property": {
15735                                      "type": "NumberLiteral",
15736                                      "value": 0,
15737                                      "loc": {
15738                                        "start": {
15739                                          "line": 158,
15740                                          "column": 33,
15741                                          "program": "generic_arrayaslist.ets"
15742                                        },
15743                                        "end": {
15744                                          "line": 158,
15745                                          "column": 34,
15746                                          "program": "generic_arrayaslist.ets"
15747                                        }
15748                                      }
15749                                    },
15750                                    "computed": true,
15751                                    "optional": false,
15752                                    "loc": {
15753                                      "start": {
15754                                        "line": 158,
15755                                        "column": 23,
15756                                        "program": "generic_arrayaslist.ets"
15757                                      },
15758                                      "end": {
15759                                        "line": 158,
15760                                        "column": 35,
15761                                        "program": "generic_arrayaslist.ets"
15762                                      }
15763                                    }
15764                                  },
15765                                  "typeAnnotation": {
15766                                    "type": "ETSTypeReference",
15767                                    "part": {
15768                                      "type": "ETSTypeReferencePart",
15769                                      "name": {
15770                                        "type": "Identifier",
15771                                        "name": "T",
15772                                        "decorators": [],
15773                                        "loc": {
15774                                          "start": {
15775                                            "line": 158,
15776                                            "column": 39,
15777                                            "program": "generic_arrayaslist.ets"
15778                                          },
15779                                          "end": {
15780                                            "line": 158,
15781                                            "column": 40,
15782                                            "program": "generic_arrayaslist.ets"
15783                                          }
15784                                        }
15785                                      },
15786                                      "loc": {
15787                                        "start": {
15788                                          "line": 158,
15789                                          "column": 39,
15790                                          "program": "generic_arrayaslist.ets"
15791                                        },
15792                                        "end": {
15793                                          "line": 158,
15794                                          "column": 41,
15795                                          "program": "generic_arrayaslist.ets"
15796                                        }
15797                                      }
15798                                    },
15799                                    "loc": {
15800                                      "start": {
15801                                        "line": 158,
15802                                        "column": 39,
15803                                        "program": "generic_arrayaslist.ets"
15804                                      },
15805                                      "end": {
15806                                        "line": 158,
15807                                        "column": 41,
15808                                        "program": "generic_arrayaslist.ets"
15809                                      }
15810                                    }
15811                                  },
15812                                  "loc": {
15813                                    "start": {
15814                                      "line": 158,
15815                                      "column": 23,
15816                                      "program": "generic_arrayaslist.ets"
15817                                    },
15818                                    "end": {
15819                                      "line": 158,
15820                                      "column": 35,
15821                                      "program": "generic_arrayaslist.ets"
15822                                    }
15823                                  }
15824                                },
15825                                "loc": {
15826                                  "start": {
15827                                    "line": 158,
15828                                    "column": 17,
15829                                    "program": "generic_arrayaslist.ets"
15830                                  },
15831                                  "end": {
15832                                    "line": 158,
15833                                    "column": 35,
15834                                    "program": "generic_arrayaslist.ets"
15835                                  }
15836                                }
15837                              }
15838                            ],
15839                            "kind": "let",
15840                            "loc": {
15841                              "start": {
15842                                "line": 158,
15843                                "column": 13,
15844                                "program": "generic_arrayaslist.ets"
15845                              },
15846                              "end": {
15847                                "line": 158,
15848                                "column": 41,
15849                                "program": "generic_arrayaslist.ets"
15850                              }
15851                            }
15852                          },
15853                          {
15854                            "type": "ForUpdateStatement",
15855                            "init": {
15856                              "type": "VariableDeclaration",
15857                              "declarations": [
15858                                {
15859                                  "type": "VariableDeclarator",
15860                                  "id": {
15861                                    "type": "Identifier",
15862                                    "name": "i",
15863                                    "decorators": [],
15864                                    "loc": {
15865                                      "start": {
15866                                        "line": 159,
15867                                        "column": 22,
15868                                        "program": "generic_arrayaslist.ets"
15869                                      },
15870                                      "end": {
15871                                        "line": 159,
15872                                        "column": 23,
15873                                        "program": "generic_arrayaslist.ets"
15874                                      }
15875                                    }
15876                                  },
15877                                  "init": {
15878                                    "type": "NumberLiteral",
15879                                    "value": 1,
15880                                    "loc": {
15881                                      "start": {
15882                                        "line": 159,
15883                                        "column": 26,
15884                                        "program": "generic_arrayaslist.ets"
15885                                      },
15886                                      "end": {
15887                                        "line": 159,
15888                                        "column": 27,
15889                                        "program": "generic_arrayaslist.ets"
15890                                      }
15891                                    }
15892                                  },
15893                                  "loc": {
15894                                    "start": {
15895                                      "line": 159,
15896                                      "column": 22,
15897                                      "program": "generic_arrayaslist.ets"
15898                                    },
15899                                    "end": {
15900                                      "line": 159,
15901                                      "column": 27,
15902                                      "program": "generic_arrayaslist.ets"
15903                                    }
15904                                  }
15905                                }
15906                              ],
15907                              "kind": "let",
15908                              "loc": {
15909                                "start": {
15910                                  "line": 159,
15911                                  "column": 18,
15912                                  "program": "generic_arrayaslist.ets"
15913                                },
15914                                "end": {
15915                                  "line": 159,
15916                                  "column": 27,
15917                                  "program": "generic_arrayaslist.ets"
15918                                }
15919                              }
15920                            },
15921                            "test": {
15922                              "type": "BinaryExpression",
15923                              "operator": "<",
15924                              "left": {
15925                                "type": "Identifier",
15926                                "name": "i",
15927                                "decorators": [],
15928                                "loc": {
15929                                  "start": {
15930                                    "line": 159,
15931                                    "column": 29,
15932                                    "program": "generic_arrayaslist.ets"
15933                                  },
15934                                  "end": {
15935                                    "line": 159,
15936                                    "column": 30,
15937                                    "program": "generic_arrayaslist.ets"
15938                                  }
15939                                }
15940                              },
15941                              "right": {
15942                                "type": "MemberExpression",
15943                                "object": {
15944                                  "type": "ThisExpression",
15945                                  "loc": {
15946                                    "start": {
15947                                      "line": 159,
15948                                      "column": 33,
15949                                      "program": "generic_arrayaslist.ets"
15950                                    },
15951                                    "end": {
15952                                      "line": 159,
15953                                      "column": 37,
15954                                      "program": "generic_arrayaslist.ets"
15955                                    }
15956                                  }
15957                                },
15958                                "property": {
15959                                  "type": "Identifier",
15960                                  "name": "curSize",
15961                                  "decorators": [],
15962                                  "loc": {
15963                                    "start": {
15964                                      "line": 159,
15965                                      "column": 38,
15966                                      "program": "generic_arrayaslist.ets"
15967                                    },
15968                                    "end": {
15969                                      "line": 159,
15970                                      "column": 45,
15971                                      "program": "generic_arrayaslist.ets"
15972                                    }
15973                                  }
15974                                },
15975                                "computed": false,
15976                                "optional": false,
15977                                "loc": {
15978                                  "start": {
15979                                    "line": 159,
15980                                    "column": 33,
15981                                    "program": "generic_arrayaslist.ets"
15982                                  },
15983                                  "end": {
15984                                    "line": 159,
15985                                    "column": 45,
15986                                    "program": "generic_arrayaslist.ets"
15987                                  }
15988                                }
15989                              },
15990                              "loc": {
15991                                "start": {
15992                                  "line": 159,
15993                                  "column": 29,
15994                                  "program": "generic_arrayaslist.ets"
15995                                },
15996                                "end": {
15997                                  "line": 159,
15998                                  "column": 45,
15999                                  "program": "generic_arrayaslist.ets"
16000                                }
16001                              }
16002                            },
16003                            "update": {
16004                              "type": "UpdateExpression",
16005                              "operator": "++",
16006                              "prefix": true,
16007                              "argument": {
16008                                "type": "Identifier",
16009                                "name": "i",
16010                                "decorators": [],
16011                                "loc": {
16012                                  "start": {
16013                                    "line": 159,
16014                                    "column": 49,
16015                                    "program": "generic_arrayaslist.ets"
16016                                  },
16017                                  "end": {
16018                                    "line": 159,
16019                                    "column": 50,
16020                                    "program": "generic_arrayaslist.ets"
16021                                  }
16022                                }
16023                              },
16024                              "loc": {
16025                                "start": {
16026                                  "line": 159,
16027                                  "column": 47,
16028                                  "program": "generic_arrayaslist.ets"
16029                                },
16030                                "end": {
16031                                  "line": 159,
16032                                  "column": 50,
16033                                  "program": "generic_arrayaslist.ets"
16034                                }
16035                              }
16036                            },
16037                            "body": {
16038                              "type": "BlockStatement",
16039                              "statements": [
16040                                {
16041                                  "type": "ExpressionStatement",
16042                                  "expression": {
16043                                    "type": "AssignmentExpression",
16044                                    "operator": "=",
16045                                    "left": {
16046                                      "type": "Identifier",
16047                                      "name": "res",
16048                                      "decorators": [],
16049                                      "loc": {
16050                                        "start": {
16051                                          "line": 160,
16052                                          "column": 17,
16053                                          "program": "generic_arrayaslist.ets"
16054                                        },
16055                                        "end": {
16056                                          "line": 160,
16057                                          "column": 20,
16058                                          "program": "generic_arrayaslist.ets"
16059                                        }
16060                                      }
16061                                    },
16062                                    "right": {
16063                                      "type": "CallExpression",
16064                                      "callee": {
16065                                        "type": "Identifier",
16066                                        "name": "combine",
16067                                        "decorators": [],
16068                                        "loc": {
16069                                          "start": {
16070                                            "line": 160,
16071                                            "column": 23,
16072                                            "program": "generic_arrayaslist.ets"
16073                                          },
16074                                          "end": {
16075                                            "line": 160,
16076                                            "column": 30,
16077                                            "program": "generic_arrayaslist.ets"
16078                                          }
16079                                        }
16080                                      },
16081                                      "arguments": [
16082                                        {
16083                                          "type": "Identifier",
16084                                          "name": "res",
16085                                          "decorators": [],
16086                                          "loc": {
16087                                            "start": {
16088                                              "line": 160,
16089                                              "column": 31,
16090                                              "program": "generic_arrayaslist.ets"
16091                                            },
16092                                            "end": {
16093                                              "line": 160,
16094                                              "column": 34,
16095                                              "program": "generic_arrayaslist.ets"
16096                                            }
16097                                          }
16098                                        },
16099                                        {
16100                                          "type": "TSAsExpression",
16101                                          "expression": {
16102                                            "type": "MemberExpression",
16103                                            "object": {
16104                                              "type": "MemberExpression",
16105                                              "object": {
16106                                                "type": "ThisExpression",
16107                                                "loc": {
16108                                                  "start": {
16109                                                    "line": 160,
16110                                                    "column": 36,
16111                                                    "program": "generic_arrayaslist.ets"
16112                                                  },
16113                                                  "end": {
16114                                                    "line": 160,
16115                                                    "column": 40,
16116                                                    "program": "generic_arrayaslist.ets"
16117                                                  }
16118                                                }
16119                                              },
16120                                              "property": {
16121                                                "type": "Identifier",
16122                                                "name": "data",
16123                                                "decorators": [],
16124                                                "loc": {
16125                                                  "start": {
16126                                                    "line": 160,
16127                                                    "column": 41,
16128                                                    "program": "generic_arrayaslist.ets"
16129                                                  },
16130                                                  "end": {
16131                                                    "line": 160,
16132                                                    "column": 45,
16133                                                    "program": "generic_arrayaslist.ets"
16134                                                  }
16135                                                }
16136                                              },
16137                                              "computed": false,
16138                                              "optional": false,
16139                                              "loc": {
16140                                                "start": {
16141                                                  "line": 160,
16142                                                  "column": 36,
16143                                                  "program": "generic_arrayaslist.ets"
16144                                                },
16145                                                "end": {
16146                                                  "line": 160,
16147                                                  "column": 45,
16148                                                  "program": "generic_arrayaslist.ets"
16149                                                }
16150                                              }
16151                                            },
16152                                            "property": {
16153                                              "type": "Identifier",
16154                                              "name": "i",
16155                                              "decorators": [],
16156                                              "loc": {
16157                                                "start": {
16158                                                  "line": 160,
16159                                                  "column": 46,
16160                                                  "program": "generic_arrayaslist.ets"
16161                                                },
16162                                                "end": {
16163                                                  "line": 160,
16164                                                  "column": 47,
16165                                                  "program": "generic_arrayaslist.ets"
16166                                                }
16167                                              }
16168                                            },
16169                                            "computed": true,
16170                                            "optional": false,
16171                                            "loc": {
16172                                              "start": {
16173                                                "line": 160,
16174                                                "column": 36,
16175                                                "program": "generic_arrayaslist.ets"
16176                                              },
16177                                              "end": {
16178                                                "line": 160,
16179                                                "column": 48,
16180                                                "program": "generic_arrayaslist.ets"
16181                                              }
16182                                            }
16183                                          },
16184                                          "typeAnnotation": {
16185                                            "type": "ETSTypeReference",
16186                                            "part": {
16187                                              "type": "ETSTypeReferencePart",
16188                                              "name": {
16189                                                "type": "Identifier",
16190                                                "name": "T",
16191                                                "decorators": [],
16192                                                "loc": {
16193                                                  "start": {
16194                                                    "line": 160,
16195                                                    "column": 52,
16196                                                    "program": "generic_arrayaslist.ets"
16197                                                  },
16198                                                  "end": {
16199                                                    "line": 160,
16200                                                    "column": 53,
16201                                                    "program": "generic_arrayaslist.ets"
16202                                                  }
16203                                                }
16204                                              },
16205                                              "loc": {
16206                                                "start": {
16207                                                  "line": 160,
16208                                                  "column": 52,
16209                                                  "program": "generic_arrayaslist.ets"
16210                                                },
16211                                                "end": {
16212                                                  "line": 160,
16213                                                  "column": 54,
16214                                                  "program": "generic_arrayaslist.ets"
16215                                                }
16216                                              }
16217                                            },
16218                                            "loc": {
16219                                              "start": {
16220                                                "line": 160,
16221                                                "column": 52,
16222                                                "program": "generic_arrayaslist.ets"
16223                                              },
16224                                              "end": {
16225                                                "line": 160,
16226                                                "column": 54,
16227                                                "program": "generic_arrayaslist.ets"
16228                                              }
16229                                            }
16230                                          },
16231                                          "loc": {
16232                                            "start": {
16233                                              "line": 160,
16234                                              "column": 36,
16235                                              "program": "generic_arrayaslist.ets"
16236                                            },
16237                                            "end": {
16238                                              "line": 160,
16239                                              "column": 48,
16240                                              "program": "generic_arrayaslist.ets"
16241                                            }
16242                                          }
16243                                        }
16244                                      ],
16245                                      "optional": false,
16246                                      "loc": {
16247                                        "start": {
16248                                          "line": 160,
16249                                          "column": 23,
16250                                          "program": "generic_arrayaslist.ets"
16251                                        },
16252                                        "end": {
16253                                          "line": 160,
16254                                          "column": 54,
16255                                          "program": "generic_arrayaslist.ets"
16256                                        }
16257                                      }
16258                                    },
16259                                    "loc": {
16260                                      "start": {
16261                                        "line": 160,
16262                                        "column": 17,
16263                                        "program": "generic_arrayaslist.ets"
16264                                      },
16265                                      "end": {
16266                                        "line": 160,
16267                                        "column": 54,
16268                                        "program": "generic_arrayaslist.ets"
16269                                      }
16270                                    }
16271                                  },
16272                                  "loc": {
16273                                    "start": {
16274                                      "line": 160,
16275                                      "column": 17,
16276                                      "program": "generic_arrayaslist.ets"
16277                                    },
16278                                    "end": {
16279                                      "line": 160,
16280                                      "column": 55,
16281                                      "program": "generic_arrayaslist.ets"
16282                                    }
16283                                  }
16284                                }
16285                              ],
16286                              "loc": {
16287                                "start": {
16288                                  "line": 159,
16289                                  "column": 52,
16290                                  "program": "generic_arrayaslist.ets"
16291                                },
16292                                "end": {
16293                                  "line": 161,
16294                                  "column": 14,
16295                                  "program": "generic_arrayaslist.ets"
16296                                }
16297                              }
16298                            },
16299                            "loc": {
16300                              "start": {
16301                                "line": 159,
16302                                "column": 13,
16303                                "program": "generic_arrayaslist.ets"
16304                              },
16305                              "end": {
16306                                "line": 161,
16307                                "column": 14,
16308                                "program": "generic_arrayaslist.ets"
16309                              }
16310                            }
16311                          },
16312                          {
16313                            "type": "ReturnStatement",
16314                            "argument": {
16315                              "type": "Identifier",
16316                              "name": "res",
16317                              "decorators": [],
16318                              "loc": {
16319                                "start": {
16320                                  "line": 162,
16321                                  "column": 20,
16322                                  "program": "generic_arrayaslist.ets"
16323                                },
16324                                "end": {
16325                                  "line": 162,
16326                                  "column": 23,
16327                                  "program": "generic_arrayaslist.ets"
16328                                }
16329                              }
16330                            },
16331                            "loc": {
16332                              "start": {
16333                                "line": 162,
16334                                "column": 13,
16335                                "program": "generic_arrayaslist.ets"
16336                              },
16337                              "end": {
16338                                "line": 162,
16339                                "column": 24,
16340                                "program": "generic_arrayaslist.ets"
16341                              }
16342                            }
16343                          }
16344                        ],
16345                        "loc": {
16346                          "start": {
16347                            "line": 157,
16348                            "column": 31,
16349                            "program": "generic_arrayaslist.ets"
16350                          },
16351                          "end": {
16352                            "line": 163,
16353                            "column": 10,
16354                            "program": "generic_arrayaslist.ets"
16355                          }
16356                        }
16357                      },
16358                      "alternate": null,
16359                      "loc": {
16360                        "start": {
16361                          "line": 157,
16362                          "column": 9,
16363                          "program": "generic_arrayaslist.ets"
16364                        },
16365                        "end": {
16366                          "line": 163,
16367                          "column": 10,
16368                          "program": "generic_arrayaslist.ets"
16369                        }
16370                      }
16371                    },
16372                    {
16373                      "type": "TryStatement",
16374                      "block": {
16375                        "type": "BlockStatement",
16376                        "statements": [
16377                          {
16378                            "type": "ThrowStatement",
16379                            "argument": {
16380                              "type": "ETSNewClassInstanceExpression",
16381                              "typeReference": {
16382                                "type": "ETSTypeReference",
16383                                "part": {
16384                                  "type": "ETSTypeReferencePart",
16385                                  "name": {
16386                                    "type": "Identifier",
16387                                    "name": "NoDataException",
16388                                    "decorators": [],
16389                                    "loc": {
16390                                      "start": {
16391                                        "line": 165,
16392                                        "column": 19,
16393                                        "program": "generic_arrayaslist.ets"
16394                                      },
16395                                      "end": {
16396                                        "line": 165,
16397                                        "column": 34,
16398                                        "program": "generic_arrayaslist.ets"
16399                                      }
16400                                    }
16401                                  },
16402                                  "loc": {
16403                                    "start": {
16404                                      "line": 165,
16405                                      "column": 19,
16406                                      "program": "generic_arrayaslist.ets"
16407                                    },
16408                                    "end": {
16409                                      "line": 165,
16410                                      "column": 35,
16411                                      "program": "generic_arrayaslist.ets"
16412                                    }
16413                                  }
16414                                },
16415                                "loc": {
16416                                  "start": {
16417                                    "line": 165,
16418                                    "column": 19,
16419                                    "program": "generic_arrayaslist.ets"
16420                                  },
16421                                  "end": {
16422                                    "line": 165,
16423                                    "column": 35,
16424                                    "program": "generic_arrayaslist.ets"
16425                                  }
16426                                }
16427                              },
16428                              "arguments": [],
16429                              "loc": {
16430                                "start": {
16431                                  "line": 165,
16432                                  "column": 15,
16433                                  "program": "generic_arrayaslist.ets"
16434                                },
16435                                "end": {
16436                                  "line": 165,
16437                                  "column": 37,
16438                                  "program": "generic_arrayaslist.ets"
16439                                }
16440                              }
16441                            },
16442                            "loc": {
16443                              "start": {
16444                                "line": 165,
16445                                "column": 9,
16446                                "program": "generic_arrayaslist.ets"
16447                              },
16448                              "end": {
16449                                "line": 165,
16450                                "column": 37,
16451                                "program": "generic_arrayaslist.ets"
16452                              }
16453                            }
16454                          }
16455                        ],
16456                        "loc": {
16457                          "start": {
16458                            "line": 164,
16459                            "column": 12,
16460                            "program": "generic_arrayaslist.ets"
16461                          },
16462                          "end": {
16463                            "line": 166,
16464                            "column": 10,
16465                            "program": "generic_arrayaslist.ets"
16466                          }
16467                        }
16468                      },
16469                      "handler": [
16470                        {
16471                          "type": "CatchClause",
16472                          "body": {
16473                            "type": "BlockStatement",
16474                            "statements": [],
16475                            "loc": {
16476                              "start": {
16477                                "line": 166,
16478                                "column": 20,
16479                                "program": "generic_arrayaslist.ets"
16480                              },
16481                              "end": {
16482                                "line": 166,
16483                                "column": 22,
16484                                "program": "generic_arrayaslist.ets"
16485                              }
16486                            }
16487                          },
16488                          "param": {
16489                            "type": "Identifier",
16490                            "name": "a",
16491                            "decorators": [],
16492                            "loc": {
16493                              "start": {
16494                                "line": 166,
16495                                "column": 18,
16496                                "program": "generic_arrayaslist.ets"
16497                              },
16498                              "end": {
16499                                "line": 166,
16500                                "column": 19,
16501                                "program": "generic_arrayaslist.ets"
16502                              }
16503                            }
16504                          },
16505                          "loc": {
16506                            "start": {
16507                              "line": 166,
16508                              "column": 11,
16509                              "program": "generic_arrayaslist.ets"
16510                            },
16511                            "end": {
16512                              "line": 166,
16513                              "column": 22,
16514                              "program": "generic_arrayaslist.ets"
16515                            }
16516                          }
16517                        }
16518                      ],
16519                      "finalizer": null,
16520                      "loc": {
16521                        "start": {
16522                          "line": 164,
16523                          "column": 9,
16524                          "program": "generic_arrayaslist.ets"
16525                        },
16526                        "end": {
16527                          "line": 166,
16528                          "column": 22,
16529                          "program": "generic_arrayaslist.ets"
16530                        }
16531                      }
16532                    },
16533                    {
16534                      "type": "ReturnStatement",
16535                      "argument": {
16536                        "type": "NullLiteral",
16537                        "value": null,
16538                        "loc": {
16539                          "start": {
16540                            "line": 167,
16541                            "column": 16,
16542                            "program": "generic_arrayaslist.ets"
16543                          },
16544                          "end": {
16545                            "line": 167,
16546                            "column": 20,
16547                            "program": "generic_arrayaslist.ets"
16548                          }
16549                        }
16550                      },
16551                      "loc": {
16552                        "start": {
16553                          "line": 167,
16554                          "column": 9,
16555                          "program": "generic_arrayaslist.ets"
16556                        },
16557                        "end": {
16558                          "line": 167,
16559                          "column": 21,
16560                          "program": "generic_arrayaslist.ets"
16561                        }
16562                      }
16563                    }
16564                  ],
16565                  "loc": {
16566                    "start": {
16567                      "line": 156,
16568                      "column": 68,
16569                      "program": "generic_arrayaslist.ets"
16570                    },
16571                    "end": {
16572                      "line": 168,
16573                      "column": 6,
16574                      "program": "generic_arrayaslist.ets"
16575                    }
16576                  }
16577                },
16578                "loc": {
16579                  "start": {
16580                    "line": 156,
16581                    "column": 25,
16582                    "program": "generic_arrayaslist.ets"
16583                  },
16584                  "end": {
16585                    "line": 168,
16586                    "column": 6,
16587                    "program": "generic_arrayaslist.ets"
16588                  }
16589                }
16590              },
16591              "loc": {
16592                "start": {
16593                  "line": 156,
16594                  "column": 25,
16595                  "program": "generic_arrayaslist.ets"
16596                },
16597                "end": {
16598                  "line": 168,
16599                  "column": 6,
16600                  "program": "generic_arrayaslist.ets"
16601                }
16602              }
16603            },
16604            "overloads": [],
16605            "decorators": [],
16606            "loc": {
16607              "start": {
16608                "line": 156,
16609                "column": 5,
16610                "program": "generic_arrayaslist.ets"
16611              },
16612              "end": {
16613                "line": 168,
16614                "column": 6,
16615                "program": "generic_arrayaslist.ets"
16616              }
16617            }
16618          },
16619          {
16620            "type": "MethodDefinition",
16621            "key": {
16622              "type": "Identifier",
16623              "name": "foldWith",
16624              "decorators": [],
16625              "loc": {
16626                "start": {
16627                  "line": 170,
16628                  "column": 21,
16629                  "program": "generic_arrayaslist.ets"
16630                },
16631                "end": {
16632                  "line": 170,
16633                  "column": 29,
16634                  "program": "generic_arrayaslist.ets"
16635                }
16636              }
16637            },
16638            "kind": "method",
16639            "accessibility": "public",
16640            "static": false,
16641            "optional": false,
16642            "computed": false,
16643            "value": {
16644              "type": "FunctionExpression",
16645              "function": {
16646                "type": "ScriptFunction",
16647                "id": {
16648                  "type": "Identifier",
16649                  "name": "foldWith",
16650                  "decorators": [],
16651                  "loc": {
16652                    "start": {
16653                      "line": 170,
16654                      "column": 21,
16655                      "program": "generic_arrayaslist.ets"
16656                    },
16657                    "end": {
16658                      "line": 170,
16659                      "column": 29,
16660                      "program": "generic_arrayaslist.ets"
16661                    }
16662                  }
16663                },
16664                "generator": false,
16665                "async": false,
16666                "expression": false,
16667                "params": [
16668                  {
16669                    "type": "ETSParameterExpression",
16670                    "name": {
16671                      "type": "Identifier",
16672                      "name": "combine",
16673                      "typeAnnotation": {
16674                        "type": "ETSFunctionType",
16675                        "params": [
16676                          {
16677                            "type": "ETSParameterExpression",
16678                            "name": {
16679                              "type": "Identifier",
16680                              "name": "lhs",
16681                              "typeAnnotation": {
16682                                "type": "ETSTypeReference",
16683                                "part": {
16684                                  "type": "ETSTypeReferencePart",
16685                                  "name": {
16686                                    "type": "Identifier",
16687                                    "name": "U",
16688                                    "decorators": [],
16689                                    "loc": {
16690                                      "start": {
16691                                        "line": 170,
16692                                        "column": 48,
16693                                        "program": "generic_arrayaslist.ets"
16694                                      },
16695                                      "end": {
16696                                        "line": 170,
16697                                        "column": 49,
16698                                        "program": "generic_arrayaslist.ets"
16699                                      }
16700                                    }
16701                                  },
16702                                  "loc": {
16703                                    "start": {
16704                                      "line": 170,
16705                                      "column": 48,
16706                                      "program": "generic_arrayaslist.ets"
16707                                    },
16708                                    "end": {
16709                                      "line": 170,
16710                                      "column": 50,
16711                                      "program": "generic_arrayaslist.ets"
16712                                    }
16713                                  }
16714                                },
16715                                "loc": {
16716                                  "start": {
16717                                    "line": 170,
16718                                    "column": 48,
16719                                    "program": "generic_arrayaslist.ets"
16720                                  },
16721                                  "end": {
16722                                    "line": 170,
16723                                    "column": 50,
16724                                    "program": "generic_arrayaslist.ets"
16725                                  }
16726                                }
16727                              },
16728                              "decorators": [],
16729                              "loc": {
16730                                "start": {
16731                                  "line": 170,
16732                                  "column": 43,
16733                                  "program": "generic_arrayaslist.ets"
16734                                },
16735                                "end": {
16736                                  "line": 170,
16737                                  "column": 50,
16738                                  "program": "generic_arrayaslist.ets"
16739                                }
16740                              }
16741                            },
16742                            "loc": {
16743                              "start": {
16744                                "line": 170,
16745                                "column": 43,
16746                                "program": "generic_arrayaslist.ets"
16747                              },
16748                              "end": {
16749                                "line": 170,
16750                                "column": 50,
16751                                "program": "generic_arrayaslist.ets"
16752                              }
16753                            }
16754                          },
16755                          {
16756                            "type": "ETSParameterExpression",
16757                            "name": {
16758                              "type": "Identifier",
16759                              "name": "rhs",
16760                              "typeAnnotation": {
16761                                "type": "ETSTypeReference",
16762                                "part": {
16763                                  "type": "ETSTypeReferencePart",
16764                                  "name": {
16765                                    "type": "Identifier",
16766                                    "name": "T",
16767                                    "decorators": [],
16768                                    "loc": {
16769                                      "start": {
16770                                        "line": 170,
16771                                        "column": 56,
16772                                        "program": "generic_arrayaslist.ets"
16773                                      },
16774                                      "end": {
16775                                        "line": 170,
16776                                        "column": 57,
16777                                        "program": "generic_arrayaslist.ets"
16778                                      }
16779                                    }
16780                                  },
16781                                  "loc": {
16782                                    "start": {
16783                                      "line": 170,
16784                                      "column": 56,
16785                                      "program": "generic_arrayaslist.ets"
16786                                    },
16787                                    "end": {
16788                                      "line": 170,
16789                                      "column": 58,
16790                                      "program": "generic_arrayaslist.ets"
16791                                    }
16792                                  }
16793                                },
16794                                "loc": {
16795                                  "start": {
16796                                    "line": 170,
16797                                    "column": 56,
16798                                    "program": "generic_arrayaslist.ets"
16799                                  },
16800                                  "end": {
16801                                    "line": 170,
16802                                    "column": 58,
16803                                    "program": "generic_arrayaslist.ets"
16804                                  }
16805                                }
16806                              },
16807                              "decorators": [],
16808                              "loc": {
16809                                "start": {
16810                                  "line": 170,
16811                                  "column": 51,
16812                                  "program": "generic_arrayaslist.ets"
16813                                },
16814                                "end": {
16815                                  "line": 170,
16816                                  "column": 58,
16817                                  "program": "generic_arrayaslist.ets"
16818                                }
16819                              }
16820                            },
16821                            "loc": {
16822                              "start": {
16823                                "line": 170,
16824                                "column": 51,
16825                                "program": "generic_arrayaslist.ets"
16826                              },
16827                              "end": {
16828                                "line": 170,
16829                                "column": 58,
16830                                "program": "generic_arrayaslist.ets"
16831                              }
16832                            }
16833                          }
16834                        ],
16835                        "returnType": {
16836                          "type": "ETSTypeReference",
16837                          "part": {
16838                            "type": "ETSTypeReferencePart",
16839                            "name": {
16840                              "type": "Identifier",
16841                              "name": "U",
16842                              "decorators": [],
16843                              "loc": {
16844                                "start": {
16845                                  "line": 170,
16846                                  "column": 62,
16847                                  "program": "generic_arrayaslist.ets"
16848                                },
16849                                "end": {
16850                                  "line": 170,
16851                                  "column": 63,
16852                                  "program": "generic_arrayaslist.ets"
16853                                }
16854                              }
16855                            },
16856                            "loc": {
16857                              "start": {
16858                                "line": 170,
16859                                "column": 62,
16860                                "program": "generic_arrayaslist.ets"
16861                              },
16862                              "end": {
16863                                "line": 170,
16864                                "column": 64,
16865                                "program": "generic_arrayaslist.ets"
16866                              }
16867                            }
16868                          },
16869                          "loc": {
16870                            "start": {
16871                              "line": 170,
16872                              "column": 62,
16873                              "program": "generic_arrayaslist.ets"
16874                            },
16875                            "end": {
16876                              "line": 170,
16877                              "column": 64,
16878                              "program": "generic_arrayaslist.ets"
16879                            }
16880                          }
16881                        },
16882                        "loc": {
16883                          "start": {
16884                            "line": 170,
16885                            "column": 42,
16886                            "program": "generic_arrayaslist.ets"
16887                          },
16888                          "end": {
16889                            "line": 170,
16890                            "column": 64,
16891                            "program": "generic_arrayaslist.ets"
16892                          }
16893                        }
16894                      },
16895                      "decorators": [],
16896                      "loc": {
16897                        "start": {
16898                          "line": 170,
16899                          "column": 33,
16900                          "program": "generic_arrayaslist.ets"
16901                        },
16902                        "end": {
16903                          "line": 170,
16904                          "column": 64,
16905                          "program": "generic_arrayaslist.ets"
16906                        }
16907                      }
16908                    },
16909                    "loc": {
16910                      "start": {
16911                        "line": 170,
16912                        "column": 33,
16913                        "program": "generic_arrayaslist.ets"
16914                      },
16915                      "end": {
16916                        "line": 170,
16917                        "column": 64,
16918                        "program": "generic_arrayaslist.ets"
16919                      }
16920                    }
16921                  },
16922                  {
16923                    "type": "ETSParameterExpression",
16924                    "name": {
16925                      "type": "Identifier",
16926                      "name": "initVal",
16927                      "typeAnnotation": {
16928                        "type": "ETSTypeReference",
16929                        "part": {
16930                          "type": "ETSTypeReferencePart",
16931                          "name": {
16932                            "type": "Identifier",
16933                            "name": "U",
16934                            "decorators": [],
16935                            "loc": {
16936                              "start": {
16937                                "line": 170,
16938                                "column": 74,
16939                                "program": "generic_arrayaslist.ets"
16940                              },
16941                              "end": {
16942                                "line": 170,
16943                                "column": 75,
16944                                "program": "generic_arrayaslist.ets"
16945                              }
16946                            }
16947                          },
16948                          "loc": {
16949                            "start": {
16950                              "line": 170,
16951                              "column": 74,
16952                              "program": "generic_arrayaslist.ets"
16953                            },
16954                            "end": {
16955                              "line": 170,
16956                              "column": 76,
16957                              "program": "generic_arrayaslist.ets"
16958                            }
16959                          }
16960                        },
16961                        "loc": {
16962                          "start": {
16963                            "line": 170,
16964                            "column": 74,
16965                            "program": "generic_arrayaslist.ets"
16966                          },
16967                          "end": {
16968                            "line": 170,
16969                            "column": 76,
16970                            "program": "generic_arrayaslist.ets"
16971                          }
16972                        }
16973                      },
16974                      "decorators": [],
16975                      "loc": {
16976                        "start": {
16977                          "line": 170,
16978                          "column": 65,
16979                          "program": "generic_arrayaslist.ets"
16980                        },
16981                        "end": {
16982                          "line": 170,
16983                          "column": 76,
16984                          "program": "generic_arrayaslist.ets"
16985                        }
16986                      }
16987                    },
16988                    "loc": {
16989                      "start": {
16990                        "line": 170,
16991                        "column": 65,
16992                        "program": "generic_arrayaslist.ets"
16993                      },
16994                      "end": {
16995                        "line": 170,
16996                        "column": 76,
16997                        "program": "generic_arrayaslist.ets"
16998                      }
16999                    }
17000                  }
17001                ],
17002                "returnType": {
17003                  "type": "ETSTypeReference",
17004                  "part": {
17005                    "type": "ETSTypeReferencePart",
17006                    "name": {
17007                      "type": "Identifier",
17008                      "name": "U",
17009                      "decorators": [],
17010                      "loc": {
17011                        "start": {
17012                          "line": 170,
17013                          "column": 78,
17014                          "program": "generic_arrayaslist.ets"
17015                        },
17016                        "end": {
17017                          "line": 170,
17018                          "column": 79,
17019                          "program": "generic_arrayaslist.ets"
17020                        }
17021                      }
17022                    },
17023                    "loc": {
17024                      "start": {
17025                        "line": 170,
17026                        "column": 78,
17027                        "program": "generic_arrayaslist.ets"
17028                      },
17029                      "end": {
17030                        "line": 170,
17031                        "column": 81,
17032                        "program": "generic_arrayaslist.ets"
17033                      }
17034                    }
17035                  },
17036                  "loc": {
17037                    "start": {
17038                      "line": 170,
17039                      "column": 78,
17040                      "program": "generic_arrayaslist.ets"
17041                    },
17042                    "end": {
17043                      "line": 170,
17044                      "column": 81,
17045                      "program": "generic_arrayaslist.ets"
17046                    }
17047                  }
17048                },
17049                "typeParameters": {
17050                  "type": "TSTypeParameterDeclaration",
17051                  "params": [
17052                    {
17053                      "type": "TSTypeParameter",
17054                      "name": {
17055                        "type": "Identifier",
17056                        "name": "U",
17057                        "decorators": [],
17058                        "loc": {
17059                          "start": {
17060                            "line": 170,
17061                            "column": 30,
17062                            "program": "generic_arrayaslist.ets"
17063                          },
17064                          "end": {
17065                            "line": 170,
17066                            "column": 31,
17067                            "program": "generic_arrayaslist.ets"
17068                          }
17069                        }
17070                      },
17071                      "loc": {
17072                        "start": {
17073                          "line": 170,
17074                          "column": 30,
17075                          "program": "generic_arrayaslist.ets"
17076                        },
17077                        "end": {
17078                          "line": 170,
17079                          "column": 32,
17080                          "program": "generic_arrayaslist.ets"
17081                        }
17082                      }
17083                    }
17084                  ],
17085                  "loc": {
17086                    "start": {
17087                      "line": 170,
17088                      "column": 29,
17089                      "program": "generic_arrayaslist.ets"
17090                    },
17091                    "end": {
17092                      "line": 170,
17093                      "column": 32,
17094                      "program": "generic_arrayaslist.ets"
17095                    }
17096                  }
17097                },
17098                "body": {
17099                  "type": "BlockStatement",
17100                  "statements": [
17101                    {
17102                      "type": "VariableDeclaration",
17103                      "declarations": [
17104                        {
17105                          "type": "VariableDeclarator",
17106                          "id": {
17107                            "type": "Identifier",
17108                            "name": "res",
17109                            "decorators": [],
17110                            "loc": {
17111                              "start": {
17112                                "line": 171,
17113                                "column": 13,
17114                                "program": "generic_arrayaslist.ets"
17115                              },
17116                              "end": {
17117                                "line": 171,
17118                                "column": 16,
17119                                "program": "generic_arrayaslist.ets"
17120                              }
17121                            }
17122                          },
17123                          "init": {
17124                            "type": "Identifier",
17125                            "name": "initVal",
17126                            "decorators": [],
17127                            "loc": {
17128                              "start": {
17129                                "line": 171,
17130                                "column": 19,
17131                                "program": "generic_arrayaslist.ets"
17132                              },
17133                              "end": {
17134                                "line": 171,
17135                                "column": 26,
17136                                "program": "generic_arrayaslist.ets"
17137                              }
17138                            }
17139                          },
17140                          "loc": {
17141                            "start": {
17142                              "line": 171,
17143                              "column": 13,
17144                              "program": "generic_arrayaslist.ets"
17145                            },
17146                            "end": {
17147                              "line": 171,
17148                              "column": 26,
17149                              "program": "generic_arrayaslist.ets"
17150                            }
17151                          }
17152                        }
17153                      ],
17154                      "kind": "let",
17155                      "loc": {
17156                        "start": {
17157                          "line": 171,
17158                          "column": 9,
17159                          "program": "generic_arrayaslist.ets"
17160                        },
17161                        "end": {
17162                          "line": 171,
17163                          "column": 27,
17164                          "program": "generic_arrayaslist.ets"
17165                        }
17166                      }
17167                    },
17168                    {
17169                      "type": "ForUpdateStatement",
17170                      "init": {
17171                        "type": "VariableDeclaration",
17172                        "declarations": [
17173                          {
17174                            "type": "VariableDeclarator",
17175                            "id": {
17176                              "type": "Identifier",
17177                              "name": "i",
17178                              "decorators": [],
17179                              "loc": {
17180                                "start": {
17181                                  "line": 172,
17182                                  "column": 18,
17183                                  "program": "generic_arrayaslist.ets"
17184                                },
17185                                "end": {
17186                                  "line": 172,
17187                                  "column": 19,
17188                                  "program": "generic_arrayaslist.ets"
17189                                }
17190                              }
17191                            },
17192                            "init": {
17193                              "type": "NumberLiteral",
17194                              "value": 0,
17195                              "loc": {
17196                                "start": {
17197                                  "line": 172,
17198                                  "column": 22,
17199                                  "program": "generic_arrayaslist.ets"
17200                                },
17201                                "end": {
17202                                  "line": 172,
17203                                  "column": 23,
17204                                  "program": "generic_arrayaslist.ets"
17205                                }
17206                              }
17207                            },
17208                            "loc": {
17209                              "start": {
17210                                "line": 172,
17211                                "column": 18,
17212                                "program": "generic_arrayaslist.ets"
17213                              },
17214                              "end": {
17215                                "line": 172,
17216                                "column": 23,
17217                                "program": "generic_arrayaslist.ets"
17218                              }
17219                            }
17220                          }
17221                        ],
17222                        "kind": "let",
17223                        "loc": {
17224                          "start": {
17225                            "line": 172,
17226                            "column": 14,
17227                            "program": "generic_arrayaslist.ets"
17228                          },
17229                          "end": {
17230                            "line": 172,
17231                            "column": 23,
17232                            "program": "generic_arrayaslist.ets"
17233                          }
17234                        }
17235                      },
17236                      "test": {
17237                        "type": "BinaryExpression",
17238                        "operator": "<",
17239                        "left": {
17240                          "type": "Identifier",
17241                          "name": "i",
17242                          "decorators": [],
17243                          "loc": {
17244                            "start": {
17245                              "line": 172,
17246                              "column": 25,
17247                              "program": "generic_arrayaslist.ets"
17248                            },
17249                            "end": {
17250                              "line": 172,
17251                              "column": 26,
17252                              "program": "generic_arrayaslist.ets"
17253                            }
17254                          }
17255                        },
17256                        "right": {
17257                          "type": "MemberExpression",
17258                          "object": {
17259                            "type": "ThisExpression",
17260                            "loc": {
17261                              "start": {
17262                                "line": 172,
17263                                "column": 29,
17264                                "program": "generic_arrayaslist.ets"
17265                              },
17266                              "end": {
17267                                "line": 172,
17268                                "column": 33,
17269                                "program": "generic_arrayaslist.ets"
17270                              }
17271                            }
17272                          },
17273                          "property": {
17274                            "type": "Identifier",
17275                            "name": "curSize",
17276                            "decorators": [],
17277                            "loc": {
17278                              "start": {
17279                                "line": 172,
17280                                "column": 34,
17281                                "program": "generic_arrayaslist.ets"
17282                              },
17283                              "end": {
17284                                "line": 172,
17285                                "column": 41,
17286                                "program": "generic_arrayaslist.ets"
17287                              }
17288                            }
17289                          },
17290                          "computed": false,
17291                          "optional": false,
17292                          "loc": {
17293                            "start": {
17294                              "line": 172,
17295                              "column": 29,
17296                              "program": "generic_arrayaslist.ets"
17297                            },
17298                            "end": {
17299                              "line": 172,
17300                              "column": 41,
17301                              "program": "generic_arrayaslist.ets"
17302                            }
17303                          }
17304                        },
17305                        "loc": {
17306                          "start": {
17307                            "line": 172,
17308                            "column": 25,
17309                            "program": "generic_arrayaslist.ets"
17310                          },
17311                          "end": {
17312                            "line": 172,
17313                            "column": 41,
17314                            "program": "generic_arrayaslist.ets"
17315                          }
17316                        }
17317                      },
17318                      "update": {
17319                        "type": "UpdateExpression",
17320                        "operator": "++",
17321                        "prefix": true,
17322                        "argument": {
17323                          "type": "Identifier",
17324                          "name": "i",
17325                          "decorators": [],
17326                          "loc": {
17327                            "start": {
17328                              "line": 172,
17329                              "column": 45,
17330                              "program": "generic_arrayaslist.ets"
17331                            },
17332                            "end": {
17333                              "line": 172,
17334                              "column": 46,
17335                              "program": "generic_arrayaslist.ets"
17336                            }
17337                          }
17338                        },
17339                        "loc": {
17340                          "start": {
17341                            "line": 172,
17342                            "column": 43,
17343                            "program": "generic_arrayaslist.ets"
17344                          },
17345                          "end": {
17346                            "line": 172,
17347                            "column": 46,
17348                            "program": "generic_arrayaslist.ets"
17349                          }
17350                        }
17351                      },
17352                      "body": {
17353                        "type": "BlockStatement",
17354                        "statements": [
17355                          {
17356                            "type": "ExpressionStatement",
17357                            "expression": {
17358                              "type": "AssignmentExpression",
17359                              "operator": "=",
17360                              "left": {
17361                                "type": "Identifier",
17362                                "name": "res",
17363                                "decorators": [],
17364                                "loc": {
17365                                  "start": {
17366                                    "line": 173,
17367                                    "column": 13,
17368                                    "program": "generic_arrayaslist.ets"
17369                                  },
17370                                  "end": {
17371                                    "line": 173,
17372                                    "column": 16,
17373                                    "program": "generic_arrayaslist.ets"
17374                                  }
17375                                }
17376                              },
17377                              "right": {
17378                                "type": "CallExpression",
17379                                "callee": {
17380                                  "type": "Identifier",
17381                                  "name": "combine",
17382                                  "decorators": [],
17383                                  "loc": {
17384                                    "start": {
17385                                      "line": 173,
17386                                      "column": 19,
17387                                      "program": "generic_arrayaslist.ets"
17388                                    },
17389                                    "end": {
17390                                      "line": 173,
17391                                      "column": 26,
17392                                      "program": "generic_arrayaslist.ets"
17393                                    }
17394                                  }
17395                                },
17396                                "arguments": [
17397                                  {
17398                                    "type": "Identifier",
17399                                    "name": "res",
17400                                    "decorators": [],
17401                                    "loc": {
17402                                      "start": {
17403                                        "line": 173,
17404                                        "column": 27,
17405                                        "program": "generic_arrayaslist.ets"
17406                                      },
17407                                      "end": {
17408                                        "line": 173,
17409                                        "column": 30,
17410                                        "program": "generic_arrayaslist.ets"
17411                                      }
17412                                    }
17413                                  },
17414                                  {
17415                                    "type": "TSAsExpression",
17416                                    "expression": {
17417                                      "type": "MemberExpression",
17418                                      "object": {
17419                                        "type": "MemberExpression",
17420                                        "object": {
17421                                          "type": "ThisExpression",
17422                                          "loc": {
17423                                            "start": {
17424                                              "line": 173,
17425                                              "column": 32,
17426                                              "program": "generic_arrayaslist.ets"
17427                                            },
17428                                            "end": {
17429                                              "line": 173,
17430                                              "column": 36,
17431                                              "program": "generic_arrayaslist.ets"
17432                                            }
17433                                          }
17434                                        },
17435                                        "property": {
17436                                          "type": "Identifier",
17437                                          "name": "data",
17438                                          "decorators": [],
17439                                          "loc": {
17440                                            "start": {
17441                                              "line": 173,
17442                                              "column": 37,
17443                                              "program": "generic_arrayaslist.ets"
17444                                            },
17445                                            "end": {
17446                                              "line": 173,
17447                                              "column": 41,
17448                                              "program": "generic_arrayaslist.ets"
17449                                            }
17450                                          }
17451                                        },
17452                                        "computed": false,
17453                                        "optional": false,
17454                                        "loc": {
17455                                          "start": {
17456                                            "line": 173,
17457                                            "column": 32,
17458                                            "program": "generic_arrayaslist.ets"
17459                                          },
17460                                          "end": {
17461                                            "line": 173,
17462                                            "column": 41,
17463                                            "program": "generic_arrayaslist.ets"
17464                                          }
17465                                        }
17466                                      },
17467                                      "property": {
17468                                        "type": "Identifier",
17469                                        "name": "i",
17470                                        "decorators": [],
17471                                        "loc": {
17472                                          "start": {
17473                                            "line": 173,
17474                                            "column": 42,
17475                                            "program": "generic_arrayaslist.ets"
17476                                          },
17477                                          "end": {
17478                                            "line": 173,
17479                                            "column": 43,
17480                                            "program": "generic_arrayaslist.ets"
17481                                          }
17482                                        }
17483                                      },
17484                                      "computed": true,
17485                                      "optional": false,
17486                                      "loc": {
17487                                        "start": {
17488                                          "line": 173,
17489                                          "column": 32,
17490                                          "program": "generic_arrayaslist.ets"
17491                                        },
17492                                        "end": {
17493                                          "line": 173,
17494                                          "column": 44,
17495                                          "program": "generic_arrayaslist.ets"
17496                                        }
17497                                      }
17498                                    },
17499                                    "typeAnnotation": {
17500                                      "type": "ETSTypeReference",
17501                                      "part": {
17502                                        "type": "ETSTypeReferencePart",
17503                                        "name": {
17504                                          "type": "Identifier",
17505                                          "name": "T",
17506                                          "decorators": [],
17507                                          "loc": {
17508                                            "start": {
17509                                              "line": 173,
17510                                              "column": 48,
17511                                              "program": "generic_arrayaslist.ets"
17512                                            },
17513                                            "end": {
17514                                              "line": 173,
17515                                              "column": 49,
17516                                              "program": "generic_arrayaslist.ets"
17517                                            }
17518                                          }
17519                                        },
17520                                        "loc": {
17521                                          "start": {
17522                                            "line": 173,
17523                                            "column": 48,
17524                                            "program": "generic_arrayaslist.ets"
17525                                          },
17526                                          "end": {
17527                                            "line": 173,
17528                                            "column": 50,
17529                                            "program": "generic_arrayaslist.ets"
17530                                          }
17531                                        }
17532                                      },
17533                                      "loc": {
17534                                        "start": {
17535                                          "line": 173,
17536                                          "column": 48,
17537                                          "program": "generic_arrayaslist.ets"
17538                                        },
17539                                        "end": {
17540                                          "line": 173,
17541                                          "column": 50,
17542                                          "program": "generic_arrayaslist.ets"
17543                                        }
17544                                      }
17545                                    },
17546                                    "loc": {
17547                                      "start": {
17548                                        "line": 173,
17549                                        "column": 32,
17550                                        "program": "generic_arrayaslist.ets"
17551                                      },
17552                                      "end": {
17553                                        "line": 173,
17554                                        "column": 44,
17555                                        "program": "generic_arrayaslist.ets"
17556                                      }
17557                                    }
17558                                  }
17559                                ],
17560                                "optional": false,
17561                                "loc": {
17562                                  "start": {
17563                                    "line": 173,
17564                                    "column": 19,
17565                                    "program": "generic_arrayaslist.ets"
17566                                  },
17567                                  "end": {
17568                                    "line": 173,
17569                                    "column": 50,
17570                                    "program": "generic_arrayaslist.ets"
17571                                  }
17572                                }
17573                              },
17574                              "loc": {
17575                                "start": {
17576                                  "line": 173,
17577                                  "column": 13,
17578                                  "program": "generic_arrayaslist.ets"
17579                                },
17580                                "end": {
17581                                  "line": 173,
17582                                  "column": 50,
17583                                  "program": "generic_arrayaslist.ets"
17584                                }
17585                              }
17586                            },
17587                            "loc": {
17588                              "start": {
17589                                "line": 173,
17590                                "column": 13,
17591                                "program": "generic_arrayaslist.ets"
17592                              },
17593                              "end": {
17594                                "line": 173,
17595                                "column": 51,
17596                                "program": "generic_arrayaslist.ets"
17597                              }
17598                            }
17599                          }
17600                        ],
17601                        "loc": {
17602                          "start": {
17603                            "line": 172,
17604                            "column": 48,
17605                            "program": "generic_arrayaslist.ets"
17606                          },
17607                          "end": {
17608                            "line": 174,
17609                            "column": 10,
17610                            "program": "generic_arrayaslist.ets"
17611                          }
17612                        }
17613                      },
17614                      "loc": {
17615                        "start": {
17616                          "line": 172,
17617                          "column": 9,
17618                          "program": "generic_arrayaslist.ets"
17619                        },
17620                        "end": {
17621                          "line": 174,
17622                          "column": 10,
17623                          "program": "generic_arrayaslist.ets"
17624                        }
17625                      }
17626                    },
17627                    {
17628                      "type": "ReturnStatement",
17629                      "argument": {
17630                        "type": "Identifier",
17631                        "name": "res",
17632                        "decorators": [],
17633                        "loc": {
17634                          "start": {
17635                            "line": 175,
17636                            "column": 16,
17637                            "program": "generic_arrayaslist.ets"
17638                          },
17639                          "end": {
17640                            "line": 175,
17641                            "column": 19,
17642                            "program": "generic_arrayaslist.ets"
17643                          }
17644                        }
17645                      },
17646                      "loc": {
17647                        "start": {
17648                          "line": 175,
17649                          "column": 9,
17650                          "program": "generic_arrayaslist.ets"
17651                        },
17652                        "end": {
17653                          "line": 175,
17654                          "column": 20,
17655                          "program": "generic_arrayaslist.ets"
17656                        }
17657                      }
17658                    }
17659                  ],
17660                  "loc": {
17661                    "start": {
17662                      "line": 170,
17663                      "column": 80,
17664                      "program": "generic_arrayaslist.ets"
17665                    },
17666                    "end": {
17667                      "line": 176,
17668                      "column": 6,
17669                      "program": "generic_arrayaslist.ets"
17670                    }
17671                  }
17672                },
17673                "loc": {
17674                  "start": {
17675                    "line": 170,
17676                    "column": 29,
17677                    "program": "generic_arrayaslist.ets"
17678                  },
17679                  "end": {
17680                    "line": 176,
17681                    "column": 6,
17682                    "program": "generic_arrayaslist.ets"
17683                  }
17684                }
17685              },
17686              "loc": {
17687                "start": {
17688                  "line": 170,
17689                  "column": 29,
17690                  "program": "generic_arrayaslist.ets"
17691                },
17692                "end": {
17693                  "line": 176,
17694                  "column": 6,
17695                  "program": "generic_arrayaslist.ets"
17696                }
17697              }
17698            },
17699            "overloads": [],
17700            "decorators": [],
17701            "loc": {
17702              "start": {
17703                "line": 170,
17704                "column": 5,
17705                "program": "generic_arrayaslist.ets"
17706              },
17707              "end": {
17708                "line": 176,
17709                "column": 6,
17710                "program": "generic_arrayaslist.ets"
17711              }
17712            }
17713          },
17714          {
17715            "type": "MethodDefinition",
17716            "key": {
17717              "type": "Identifier",
17718              "name": "filter",
17719              "decorators": [],
17720              "loc": {
17721                "start": {
17722                  "line": 178,
17723                  "column": 21,
17724                  "program": "generic_arrayaslist.ets"
17725                },
17726                "end": {
17727                  "line": 178,
17728                  "column": 27,
17729                  "program": "generic_arrayaslist.ets"
17730                }
17731              }
17732            },
17733            "kind": "method",
17734            "accessibility": "public",
17735            "static": false,
17736            "optional": false,
17737            "computed": false,
17738            "value": {
17739              "type": "FunctionExpression",
17740              "function": {
17741                "type": "ScriptFunction",
17742                "id": {
17743                  "type": "Identifier",
17744                  "name": "filter",
17745                  "decorators": [],
17746                  "loc": {
17747                    "start": {
17748                      "line": 178,
17749                      "column": 21,
17750                      "program": "generic_arrayaslist.ets"
17751                    },
17752                    "end": {
17753                      "line": 178,
17754                      "column": 27,
17755                      "program": "generic_arrayaslist.ets"
17756                    }
17757                  }
17758                },
17759                "generator": false,
17760                "async": false,
17761                "expression": false,
17762                "params": [
17763                  {
17764                    "type": "ETSParameterExpression",
17765                    "name": {
17766                      "type": "Identifier",
17767                      "name": "filterCond",
17768                      "typeAnnotation": {
17769                        "type": "ETSFunctionType",
17770                        "params": [
17771                          {
17772                            "type": "ETSParameterExpression",
17773                            "name": {
17774                              "type": "Identifier",
17775                              "name": "e",
17776                              "typeAnnotation": {
17777                                "type": "ETSTypeReference",
17778                                "part": {
17779                                  "type": "ETSTypeReferencePart",
17780                                  "name": {
17781                                    "type": "Identifier",
17782                                    "name": "T",
17783                                    "decorators": [],
17784                                    "loc": {
17785                                      "start": {
17786                                        "line": 178,
17787                                        "column": 44,
17788                                        "program": "generic_arrayaslist.ets"
17789                                      },
17790                                      "end": {
17791                                        "line": 178,
17792                                        "column": 45,
17793                                        "program": "generic_arrayaslist.ets"
17794                                      }
17795                                    }
17796                                  },
17797                                  "loc": {
17798                                    "start": {
17799                                      "line": 178,
17800                                      "column": 44,
17801                                      "program": "generic_arrayaslist.ets"
17802                                    },
17803                                    "end": {
17804                                      "line": 178,
17805                                      "column": 46,
17806                                      "program": "generic_arrayaslist.ets"
17807                                    }
17808                                  }
17809                                },
17810                                "loc": {
17811                                  "start": {
17812                                    "line": 178,
17813                                    "column": 44,
17814                                    "program": "generic_arrayaslist.ets"
17815                                  },
17816                                  "end": {
17817                                    "line": 178,
17818                                    "column": 46,
17819                                    "program": "generic_arrayaslist.ets"
17820                                  }
17821                                }
17822                              },
17823                              "decorators": [],
17824                              "loc": {
17825                                "start": {
17826                                  "line": 178,
17827                                  "column": 41,
17828                                  "program": "generic_arrayaslist.ets"
17829                                },
17830                                "end": {
17831                                  "line": 178,
17832                                  "column": 46,
17833                                  "program": "generic_arrayaslist.ets"
17834                                }
17835                              }
17836                            },
17837                            "loc": {
17838                              "start": {
17839                                "line": 178,
17840                                "column": 41,
17841                                "program": "generic_arrayaslist.ets"
17842                              },
17843                              "end": {
17844                                "line": 178,
17845                                "column": 46,
17846                                "program": "generic_arrayaslist.ets"
17847                              }
17848                            }
17849                          }
17850                        ],
17851                        "returnType": {
17852                          "type": "ETSPrimitiveType",
17853                          "loc": {
17854                            "start": {
17855                              "line": 178,
17856                              "column": 50,
17857                              "program": "generic_arrayaslist.ets"
17858                            },
17859                            "end": {
17860                              "line": 178,
17861                              "column": 57,
17862                              "program": "generic_arrayaslist.ets"
17863                            }
17864                          }
17865                        },
17866                        "loc": {
17867                          "start": {
17868                            "line": 178,
17869                            "column": 40,
17870                            "program": "generic_arrayaslist.ets"
17871                          },
17872                          "end": {
17873                            "line": 178,
17874                            "column": 57,
17875                            "program": "generic_arrayaslist.ets"
17876                          }
17877                        }
17878                      },
17879                      "decorators": [],
17880                      "loc": {
17881                        "start": {
17882                          "line": 178,
17883                          "column": 28,
17884                          "program": "generic_arrayaslist.ets"
17885                        },
17886                        "end": {
17887                          "line": 178,
17888                          "column": 57,
17889                          "program": "generic_arrayaslist.ets"
17890                        }
17891                      }
17892                    },
17893                    "loc": {
17894                      "start": {
17895                        "line": 178,
17896                        "column": 28,
17897                        "program": "generic_arrayaslist.ets"
17898                      },
17899                      "end": {
17900                        "line": 178,
17901                        "column": 57,
17902                        "program": "generic_arrayaslist.ets"
17903                      }
17904                    }
17905                  }
17906                ],
17907                "returnType": {
17908                  "type": "ETSUnionType",
17909                  "types": [
17910                    {
17911                      "type": "ETSTypeReference",
17912                      "part": {
17913                        "type": "ETSTypeReferencePart",
17914                        "name": {
17915                          "type": "Identifier",
17916                          "name": "ArrayAsListt",
17917                          "decorators": [],
17918                          "loc": {
17919                            "start": {
17920                              "line": 178,
17921                              "column": 60,
17922                              "program": "generic_arrayaslist.ets"
17923                            },
17924                            "end": {
17925                              "line": 178,
17926                              "column": 72,
17927                              "program": "generic_arrayaslist.ets"
17928                            }
17929                          }
17930                        },
17931                        "typeParams": {
17932                          "type": "TSTypeParameterInstantiation",
17933                          "params": [
17934                            {
17935                              "type": "ETSTypeReference",
17936                              "part": {
17937                                "type": "ETSTypeReferencePart",
17938                                "name": {
17939                                  "type": "Identifier",
17940                                  "name": "T",
17941                                  "decorators": [],
17942                                  "loc": {
17943                                    "start": {
17944                                      "line": 178,
17945                                      "column": 73,
17946                                      "program": "generic_arrayaslist.ets"
17947                                    },
17948                                    "end": {
17949                                      "line": 178,
17950                                      "column": 74,
17951                                      "program": "generic_arrayaslist.ets"
17952                                    }
17953                                  }
17954                                },
17955                                "loc": {
17956                                  "start": {
17957                                    "line": 178,
17958                                    "column": 73,
17959                                    "program": "generic_arrayaslist.ets"
17960                                  },
17961                                  "end": {
17962                                    "line": 178,
17963                                    "column": 75,
17964                                    "program": "generic_arrayaslist.ets"
17965                                  }
17966                                }
17967                              },
17968                              "loc": {
17969                                "start": {
17970                                  "line": 178,
17971                                  "column": 73,
17972                                  "program": "generic_arrayaslist.ets"
17973                                },
17974                                "end": {
17975                                  "line": 178,
17976                                  "column": 75,
17977                                  "program": "generic_arrayaslist.ets"
17978                                }
17979                              }
17980                            }
17981                          ],
17982                          "loc": {
17983                            "start": {
17984                              "line": 178,
17985                              "column": 72,
17986                              "program": "generic_arrayaslist.ets"
17987                            },
17988                            "end": {
17989                              "line": 178,
17990                              "column": 75,
17991                              "program": "generic_arrayaslist.ets"
17992                            }
17993                          }
17994                        },
17995                        "loc": {
17996                          "start": {
17997                            "line": 178,
17998                            "column": 60,
17999                            "program": "generic_arrayaslist.ets"
18000                          },
18001                          "end": {
18002                            "line": 178,
18003                            "column": 77,
18004                            "program": "generic_arrayaslist.ets"
18005                          }
18006                        }
18007                      },
18008                      "loc": {
18009                        "start": {
18010                          "line": 178,
18011                          "column": 60,
18012                          "program": "generic_arrayaslist.ets"
18013                        },
18014                        "end": {
18015                          "line": 178,
18016                          "column": 77,
18017                          "program": "generic_arrayaslist.ets"
18018                        }
18019                      }
18020                    },
18021                    {
18022                      "type": "ETSNullType",
18023                      "loc": {
18024                        "start": {
18025                          "line": 178,
18026                          "column": 78,
18027                          "program": "generic_arrayaslist.ets"
18028                        },
18029                        "end": {
18030                          "line": 178,
18031                          "column": 82,
18032                          "program": "generic_arrayaslist.ets"
18033                        }
18034                      }
18035                    }
18036                  ],
18037                  "loc": {
18038                    "start": {
18039                      "line": 178,
18040                      "column": 60,
18041                      "program": "generic_arrayaslist.ets"
18042                    },
18043                    "end": {
18044                      "line": 178,
18045                      "column": 82,
18046                      "program": "generic_arrayaslist.ets"
18047                    }
18048                  }
18049                },
18050                "body": {
18051                  "type": "BlockStatement",
18052                  "statements": [
18053                    {
18054                      "type": "VariableDeclaration",
18055                      "declarations": [
18056                        {
18057                          "type": "VariableDeclarator",
18058                          "id": {
18059                            "type": "Identifier",
18060                            "name": "indicators",
18061                            "decorators": [],
18062                            "loc": {
18063                              "start": {
18064                                "line": 179,
18065                                "column": 13,
18066                                "program": "generic_arrayaslist.ets"
18067                              },
18068                              "end": {
18069                                "line": 179,
18070                                "column": 23,
18071                                "program": "generic_arrayaslist.ets"
18072                              }
18073                            }
18074                          },
18075                          "init": {
18076                            "type": "ETSNewArrayInstanceExpression",
18077                            "typeReference": {
18078                              "type": "ETSPrimitiveType",
18079                              "loc": {
18080                                "start": {
18081                                  "line": 179,
18082                                  "column": 30,
18083                                  "program": "generic_arrayaslist.ets"
18084                                },
18085                                "end": {
18086                                  "line": 179,
18087                                  "column": 37,
18088                                  "program": "generic_arrayaslist.ets"
18089                                }
18090                              }
18091                            },
18092                            "dimension": {
18093                              "type": "MemberExpression",
18094                              "object": {
18095                                "type": "MemberExpression",
18096                                "object": {
18097                                  "type": "ThisExpression",
18098                                  "loc": {
18099                                    "start": {
18100                                      "line": 179,
18101                                      "column": 38,
18102                                      "program": "generic_arrayaslist.ets"
18103                                    },
18104                                    "end": {
18105                                      "line": 179,
18106                                      "column": 42,
18107                                      "program": "generic_arrayaslist.ets"
18108                                    }
18109                                  }
18110                                },
18111                                "property": {
18112                                  "type": "Identifier",
18113                                  "name": "data",
18114                                  "decorators": [],
18115                                  "loc": {
18116                                    "start": {
18117                                      "line": 179,
18118                                      "column": 43,
18119                                      "program": "generic_arrayaslist.ets"
18120                                    },
18121                                    "end": {
18122                                      "line": 179,
18123                                      "column": 47,
18124                                      "program": "generic_arrayaslist.ets"
18125                                    }
18126                                  }
18127                                },
18128                                "computed": false,
18129                                "optional": false,
18130                                "loc": {
18131                                  "start": {
18132                                    "line": 179,
18133                                    "column": 38,
18134                                    "program": "generic_arrayaslist.ets"
18135                                  },
18136                                  "end": {
18137                                    "line": 179,
18138                                    "column": 47,
18139                                    "program": "generic_arrayaslist.ets"
18140                                  }
18141                                }
18142                              },
18143                              "property": {
18144                                "type": "Identifier",
18145                                "name": "length",
18146                                "decorators": [],
18147                                "loc": {
18148                                  "start": {
18149                                    "line": 179,
18150                                    "column": 48,
18151                                    "program": "generic_arrayaslist.ets"
18152                                  },
18153                                  "end": {
18154                                    "line": 179,
18155                                    "column": 54,
18156                                    "program": "generic_arrayaslist.ets"
18157                                  }
18158                                }
18159                              },
18160                              "computed": false,
18161                              "optional": false,
18162                              "loc": {
18163                                "start": {
18164                                  "line": 179,
18165                                  "column": 38,
18166                                  "program": "generic_arrayaslist.ets"
18167                                },
18168                                "end": {
18169                                  "line": 179,
18170                                  "column": 54,
18171                                  "program": "generic_arrayaslist.ets"
18172                                }
18173                              }
18174                            },
18175                            "loc": {
18176                              "start": {
18177                                "line": 179,
18178                                "column": 26,
18179                                "program": "generic_arrayaslist.ets"
18180                              },
18181                              "end": {
18182                                "line": 179,
18183                                "column": 55,
18184                                "program": "generic_arrayaslist.ets"
18185                              }
18186                            }
18187                          },
18188                          "loc": {
18189                            "start": {
18190                              "line": 179,
18191                              "column": 13,
18192                              "program": "generic_arrayaslist.ets"
18193                            },
18194                            "end": {
18195                              "line": 179,
18196                              "column": 55,
18197                              "program": "generic_arrayaslist.ets"
18198                            }
18199                          }
18200                        }
18201                      ],
18202                      "kind": "let",
18203                      "loc": {
18204                        "start": {
18205                          "line": 179,
18206                          "column": 9,
18207                          "program": "generic_arrayaslist.ets"
18208                        },
18209                        "end": {
18210                          "line": 179,
18211                          "column": 56,
18212                          "program": "generic_arrayaslist.ets"
18213                        }
18214                      }
18215                    },
18216                    {
18217                      "type": "VariableDeclaration",
18218                      "declarations": [
18219                        {
18220                          "type": "VariableDeclarator",
18221                          "id": {
18222                            "type": "Identifier",
18223                            "name": "resAmount",
18224                            "decorators": [],
18225                            "loc": {
18226                              "start": {
18227                                "line": 180,
18228                                "column": 13,
18229                                "program": "generic_arrayaslist.ets"
18230                              },
18231                              "end": {
18232                                "line": 180,
18233                                "column": 22,
18234                                "program": "generic_arrayaslist.ets"
18235                              }
18236                            }
18237                          },
18238                          "init": {
18239                            "type": "NumberLiteral",
18240                            "value": 0,
18241                            "loc": {
18242                              "start": {
18243                                "line": 180,
18244                                "column": 25,
18245                                "program": "generic_arrayaslist.ets"
18246                              },
18247                              "end": {
18248                                "line": 180,
18249                                "column": 26,
18250                                "program": "generic_arrayaslist.ets"
18251                              }
18252                            }
18253                          },
18254                          "loc": {
18255                            "start": {
18256                              "line": 180,
18257                              "column": 13,
18258                              "program": "generic_arrayaslist.ets"
18259                            },
18260                            "end": {
18261                              "line": 180,
18262                              "column": 26,
18263                              "program": "generic_arrayaslist.ets"
18264                            }
18265                          }
18266                        }
18267                      ],
18268                      "kind": "let",
18269                      "loc": {
18270                        "start": {
18271                          "line": 180,
18272                          "column": 9,
18273                          "program": "generic_arrayaslist.ets"
18274                        },
18275                        "end": {
18276                          "line": 180,
18277                          "column": 27,
18278                          "program": "generic_arrayaslist.ets"
18279                        }
18280                      }
18281                    },
18282                    {
18283                      "type": "ForUpdateStatement",
18284                      "init": {
18285                        "type": "VariableDeclaration",
18286                        "declarations": [
18287                          {
18288                            "type": "VariableDeclarator",
18289                            "id": {
18290                              "type": "Identifier",
18291                              "name": "i",
18292                              "decorators": [],
18293                              "loc": {
18294                                "start": {
18295                                  "line": 181,
18296                                  "column": 18,
18297                                  "program": "generic_arrayaslist.ets"
18298                                },
18299                                "end": {
18300                                  "line": 181,
18301                                  "column": 19,
18302                                  "program": "generic_arrayaslist.ets"
18303                                }
18304                              }
18305                            },
18306                            "init": {
18307                              "type": "NumberLiteral",
18308                              "value": 0,
18309                              "loc": {
18310                                "start": {
18311                                  "line": 181,
18312                                  "column": 22,
18313                                  "program": "generic_arrayaslist.ets"
18314                                },
18315                                "end": {
18316                                  "line": 181,
18317                                  "column": 23,
18318                                  "program": "generic_arrayaslist.ets"
18319                                }
18320                              }
18321                            },
18322                            "loc": {
18323                              "start": {
18324                                "line": 181,
18325                                "column": 18,
18326                                "program": "generic_arrayaslist.ets"
18327                              },
18328                              "end": {
18329                                "line": 181,
18330                                "column": 23,
18331                                "program": "generic_arrayaslist.ets"
18332                              }
18333                            }
18334                          }
18335                        ],
18336                        "kind": "let",
18337                        "loc": {
18338                          "start": {
18339                            "line": 181,
18340                            "column": 14,
18341                            "program": "generic_arrayaslist.ets"
18342                          },
18343                          "end": {
18344                            "line": 181,
18345                            "column": 23,
18346                            "program": "generic_arrayaslist.ets"
18347                          }
18348                        }
18349                      },
18350                      "test": {
18351                        "type": "BinaryExpression",
18352                        "operator": "<",
18353                        "left": {
18354                          "type": "Identifier",
18355                          "name": "i",
18356                          "decorators": [],
18357                          "loc": {
18358                            "start": {
18359                              "line": 181,
18360                              "column": 25,
18361                              "program": "generic_arrayaslist.ets"
18362                            },
18363                            "end": {
18364                              "line": 181,
18365                              "column": 26,
18366                              "program": "generic_arrayaslist.ets"
18367                            }
18368                          }
18369                        },
18370                        "right": {
18371                          "type": "MemberExpression",
18372                          "object": {
18373                            "type": "ThisExpression",
18374                            "loc": {
18375                              "start": {
18376                                "line": 181,
18377                                "column": 29,
18378                                "program": "generic_arrayaslist.ets"
18379                              },
18380                              "end": {
18381                                "line": 181,
18382                                "column": 33,
18383                                "program": "generic_arrayaslist.ets"
18384                              }
18385                            }
18386                          },
18387                          "property": {
18388                            "type": "Identifier",
18389                            "name": "curSize",
18390                            "decorators": [],
18391                            "loc": {
18392                              "start": {
18393                                "line": 181,
18394                                "column": 34,
18395                                "program": "generic_arrayaslist.ets"
18396                              },
18397                              "end": {
18398                                "line": 181,
18399                                "column": 41,
18400                                "program": "generic_arrayaslist.ets"
18401                              }
18402                            }
18403                          },
18404                          "computed": false,
18405                          "optional": false,
18406                          "loc": {
18407                            "start": {
18408                              "line": 181,
18409                              "column": 29,
18410                              "program": "generic_arrayaslist.ets"
18411                            },
18412                            "end": {
18413                              "line": 181,
18414                              "column": 41,
18415                              "program": "generic_arrayaslist.ets"
18416                            }
18417                          }
18418                        },
18419                        "loc": {
18420                          "start": {
18421                            "line": 181,
18422                            "column": 25,
18423                            "program": "generic_arrayaslist.ets"
18424                          },
18425                          "end": {
18426                            "line": 181,
18427                            "column": 41,
18428                            "program": "generic_arrayaslist.ets"
18429                          }
18430                        }
18431                      },
18432                      "update": {
18433                        "type": "UpdateExpression",
18434                        "operator": "++",
18435                        "prefix": true,
18436                        "argument": {
18437                          "type": "Identifier",
18438                          "name": "i",
18439                          "decorators": [],
18440                          "loc": {
18441                            "start": {
18442                              "line": 181,
18443                              "column": 45,
18444                              "program": "generic_arrayaslist.ets"
18445                            },
18446                            "end": {
18447                              "line": 181,
18448                              "column": 46,
18449                              "program": "generic_arrayaslist.ets"
18450                            }
18451                          }
18452                        },
18453                        "loc": {
18454                          "start": {
18455                            "line": 181,
18456                            "column": 43,
18457                            "program": "generic_arrayaslist.ets"
18458                          },
18459                          "end": {
18460                            "line": 181,
18461                            "column": 46,
18462                            "program": "generic_arrayaslist.ets"
18463                          }
18464                        }
18465                      },
18466                      "body": {
18467                        "type": "BlockStatement",
18468                        "statements": [
18469                          {
18470                            "type": "ExpressionStatement",
18471                            "expression": {
18472                              "type": "AssignmentExpression",
18473                              "operator": "=",
18474                              "left": {
18475                                "type": "MemberExpression",
18476                                "object": {
18477                                  "type": "Identifier",
18478                                  "name": "indicators",
18479                                  "decorators": [],
18480                                  "loc": {
18481                                    "start": {
18482                                      "line": 182,
18483                                      "column": 13,
18484                                      "program": "generic_arrayaslist.ets"
18485                                    },
18486                                    "end": {
18487                                      "line": 182,
18488                                      "column": 23,
18489                                      "program": "generic_arrayaslist.ets"
18490                                    }
18491                                  }
18492                                },
18493                                "property": {
18494                                  "type": "Identifier",
18495                                  "name": "i",
18496                                  "decorators": [],
18497                                  "loc": {
18498                                    "start": {
18499                                      "line": 182,
18500                                      "column": 24,
18501                                      "program": "generic_arrayaslist.ets"
18502                                    },
18503                                    "end": {
18504                                      "line": 182,
18505                                      "column": 25,
18506                                      "program": "generic_arrayaslist.ets"
18507                                    }
18508                                  }
18509                                },
18510                                "computed": true,
18511                                "optional": false,
18512                                "loc": {
18513                                  "start": {
18514                                    "line": 182,
18515                                    "column": 13,
18516                                    "program": "generic_arrayaslist.ets"
18517                                  },
18518                                  "end": {
18519                                    "line": 182,
18520                                    "column": 26,
18521                                    "program": "generic_arrayaslist.ets"
18522                                  }
18523                                }
18524                              },
18525                              "right": {
18526                                "type": "CallExpression",
18527                                "callee": {
18528                                  "type": "Identifier",
18529                                  "name": "filterCond",
18530                                  "decorators": [],
18531                                  "loc": {
18532                                    "start": {
18533                                      "line": 182,
18534                                      "column": 29,
18535                                      "program": "generic_arrayaslist.ets"
18536                                    },
18537                                    "end": {
18538                                      "line": 182,
18539                                      "column": 39,
18540                                      "program": "generic_arrayaslist.ets"
18541                                    }
18542                                  }
18543                                },
18544                                "arguments": [
18545                                  {
18546                                    "type": "TSAsExpression",
18547                                    "expression": {
18548                                      "type": "MemberExpression",
18549                                      "object": {
18550                                        "type": "MemberExpression",
18551                                        "object": {
18552                                          "type": "ThisExpression",
18553                                          "loc": {
18554                                            "start": {
18555                                              "line": 182,
18556                                              "column": 40,
18557                                              "program": "generic_arrayaslist.ets"
18558                                            },
18559                                            "end": {
18560                                              "line": 182,
18561                                              "column": 44,
18562                                              "program": "generic_arrayaslist.ets"
18563                                            }
18564                                          }
18565                                        },
18566                                        "property": {
18567                                          "type": "Identifier",
18568                                          "name": "data",
18569                                          "decorators": [],
18570                                          "loc": {
18571                                            "start": {
18572                                              "line": 182,
18573                                              "column": 45,
18574                                              "program": "generic_arrayaslist.ets"
18575                                            },
18576                                            "end": {
18577                                              "line": 182,
18578                                              "column": 49,
18579                                              "program": "generic_arrayaslist.ets"
18580                                            }
18581                                          }
18582                                        },
18583                                        "computed": false,
18584                                        "optional": false,
18585                                        "loc": {
18586                                          "start": {
18587                                            "line": 182,
18588                                            "column": 40,
18589                                            "program": "generic_arrayaslist.ets"
18590                                          },
18591                                          "end": {
18592                                            "line": 182,
18593                                            "column": 49,
18594                                            "program": "generic_arrayaslist.ets"
18595                                          }
18596                                        }
18597                                      },
18598                                      "property": {
18599                                        "type": "Identifier",
18600                                        "name": "i",
18601                                        "decorators": [],
18602                                        "loc": {
18603                                          "start": {
18604                                            "line": 182,
18605                                            "column": 50,
18606                                            "program": "generic_arrayaslist.ets"
18607                                          },
18608                                          "end": {
18609                                            "line": 182,
18610                                            "column": 51,
18611                                            "program": "generic_arrayaslist.ets"
18612                                          }
18613                                        }
18614                                      },
18615                                      "computed": true,
18616                                      "optional": false,
18617                                      "loc": {
18618                                        "start": {
18619                                          "line": 182,
18620                                          "column": 40,
18621                                          "program": "generic_arrayaslist.ets"
18622                                        },
18623                                        "end": {
18624                                          "line": 182,
18625                                          "column": 52,
18626                                          "program": "generic_arrayaslist.ets"
18627                                        }
18628                                      }
18629                                    },
18630                                    "typeAnnotation": {
18631                                      "type": "ETSTypeReference",
18632                                      "part": {
18633                                        "type": "ETSTypeReferencePart",
18634                                        "name": {
18635                                          "type": "Identifier",
18636                                          "name": "T",
18637                                          "decorators": [],
18638                                          "loc": {
18639                                            "start": {
18640                                              "line": 182,
18641                                              "column": 56,
18642                                              "program": "generic_arrayaslist.ets"
18643                                            },
18644                                            "end": {
18645                                              "line": 182,
18646                                              "column": 57,
18647                                              "program": "generic_arrayaslist.ets"
18648                                            }
18649                                          }
18650                                        },
18651                                        "loc": {
18652                                          "start": {
18653                                            "line": 182,
18654                                            "column": 56,
18655                                            "program": "generic_arrayaslist.ets"
18656                                          },
18657                                          "end": {
18658                                            "line": 182,
18659                                            "column": 58,
18660                                            "program": "generic_arrayaslist.ets"
18661                                          }
18662                                        }
18663                                      },
18664                                      "loc": {
18665                                        "start": {
18666                                          "line": 182,
18667                                          "column": 56,
18668                                          "program": "generic_arrayaslist.ets"
18669                                        },
18670                                        "end": {
18671                                          "line": 182,
18672                                          "column": 58,
18673                                          "program": "generic_arrayaslist.ets"
18674                                        }
18675                                      }
18676                                    },
18677                                    "loc": {
18678                                      "start": {
18679                                        "line": 182,
18680                                        "column": 40,
18681                                        "program": "generic_arrayaslist.ets"
18682                                      },
18683                                      "end": {
18684                                        "line": 182,
18685                                        "column": 52,
18686                                        "program": "generic_arrayaslist.ets"
18687                                      }
18688                                    }
18689                                  }
18690                                ],
18691                                "optional": false,
18692                                "loc": {
18693                                  "start": {
18694                                    "line": 182,
18695                                    "column": 29,
18696                                    "program": "generic_arrayaslist.ets"
18697                                  },
18698                                  "end": {
18699                                    "line": 182,
18700                                    "column": 58,
18701                                    "program": "generic_arrayaslist.ets"
18702                                  }
18703                                }
18704                              },
18705                              "loc": {
18706                                "start": {
18707                                  "line": 182,
18708                                  "column": 13,
18709                                  "program": "generic_arrayaslist.ets"
18710                                },
18711                                "end": {
18712                                  "line": 182,
18713                                  "column": 58,
18714                                  "program": "generic_arrayaslist.ets"
18715                                }
18716                              }
18717                            },
18718                            "loc": {
18719                              "start": {
18720                                "line": 182,
18721                                "column": 13,
18722                                "program": "generic_arrayaslist.ets"
18723                              },
18724                              "end": {
18725                                "line": 182,
18726                                "column": 59,
18727                                "program": "generic_arrayaslist.ets"
18728                              }
18729                            }
18730                          },
18731                          {
18732                            "type": "IfStatement",
18733                            "test": {
18734                              "type": "MemberExpression",
18735                              "object": {
18736                                "type": "Identifier",
18737                                "name": "indicators",
18738                                "decorators": [],
18739                                "loc": {
18740                                  "start": {
18741                                    "line": 183,
18742                                    "column": 17,
18743                                    "program": "generic_arrayaslist.ets"
18744                                  },
18745                                  "end": {
18746                                    "line": 183,
18747                                    "column": 27,
18748                                    "program": "generic_arrayaslist.ets"
18749                                  }
18750                                }
18751                              },
18752                              "property": {
18753                                "type": "Identifier",
18754                                "name": "i",
18755                                "decorators": [],
18756                                "loc": {
18757                                  "start": {
18758                                    "line": 183,
18759                                    "column": 28,
18760                                    "program": "generic_arrayaslist.ets"
18761                                  },
18762                                  "end": {
18763                                    "line": 183,
18764                                    "column": 29,
18765                                    "program": "generic_arrayaslist.ets"
18766                                  }
18767                                }
18768                              },
18769                              "computed": true,
18770                              "optional": false,
18771                              "loc": {
18772                                "start": {
18773                                  "line": 183,
18774                                  "column": 17,
18775                                  "program": "generic_arrayaslist.ets"
18776                                },
18777                                "end": {
18778                                  "line": 183,
18779                                  "column": 30,
18780                                  "program": "generic_arrayaslist.ets"
18781                                }
18782                              }
18783                            },
18784                            "consequent": {
18785                              "type": "BlockStatement",
18786                              "statements": [
18787                                {
18788                                  "type": "ExpressionStatement",
18789                                  "expression": {
18790                                    "type": "UpdateExpression",
18791                                    "operator": "++",
18792                                    "prefix": true,
18793                                    "argument": {
18794                                      "type": "Identifier",
18795                                      "name": "resAmount",
18796                                      "decorators": [],
18797                                      "loc": {
18798                                        "start": {
18799                                          "line": 184,
18800                                          "column": 19,
18801                                          "program": "generic_arrayaslist.ets"
18802                                        },
18803                                        "end": {
18804                                          "line": 184,
18805                                          "column": 28,
18806                                          "program": "generic_arrayaslist.ets"
18807                                        }
18808                                      }
18809                                    },
18810                                    "loc": {
18811                                      "start": {
18812                                        "line": 184,
18813                                        "column": 17,
18814                                        "program": "generic_arrayaslist.ets"
18815                                      },
18816                                      "end": {
18817                                        "line": 184,
18818                                        "column": 28,
18819                                        "program": "generic_arrayaslist.ets"
18820                                      }
18821                                    }
18822                                  },
18823                                  "loc": {
18824                                    "start": {
18825                                      "line": 184,
18826                                      "column": 17,
18827                                      "program": "generic_arrayaslist.ets"
18828                                    },
18829                                    "end": {
18830                                      "line": 184,
18831                                      "column": 29,
18832                                      "program": "generic_arrayaslist.ets"
18833                                    }
18834                                  }
18835                                }
18836                              ],
18837                              "loc": {
18838                                "start": {
18839                                  "line": 183,
18840                                  "column": 32,
18841                                  "program": "generic_arrayaslist.ets"
18842                                },
18843                                "end": {
18844                                  "line": 185,
18845                                  "column": 14,
18846                                  "program": "generic_arrayaslist.ets"
18847                                }
18848                              }
18849                            },
18850                            "alternate": null,
18851                            "loc": {
18852                              "start": {
18853                                "line": 183,
18854                                "column": 13,
18855                                "program": "generic_arrayaslist.ets"
18856                              },
18857                              "end": {
18858                                "line": 185,
18859                                "column": 14,
18860                                "program": "generic_arrayaslist.ets"
18861                              }
18862                            }
18863                          }
18864                        ],
18865                        "loc": {
18866                          "start": {
18867                            "line": 181,
18868                            "column": 48,
18869                            "program": "generic_arrayaslist.ets"
18870                          },
18871                          "end": {
18872                            "line": 186,
18873                            "column": 10,
18874                            "program": "generic_arrayaslist.ets"
18875                          }
18876                        }
18877                      },
18878                      "loc": {
18879                        "start": {
18880                          "line": 181,
18881                          "column": 9,
18882                          "program": "generic_arrayaslist.ets"
18883                        },
18884                        "end": {
18885                          "line": 186,
18886                          "column": 10,
18887                          "program": "generic_arrayaslist.ets"
18888                        }
18889                      }
18890                    },
18891                    {
18892                      "type": "VariableDeclaration",
18893                      "declarations": [
18894                        {
18895                          "type": "VariableDeclarator",
18896                          "id": {
18897                            "type": "Identifier",
18898                            "name": "res",
18899                            "decorators": [],
18900                            "loc": {
18901                              "start": {
18902                                "line": 187,
18903                                "column": 13,
18904                                "program": "generic_arrayaslist.ets"
18905                              },
18906                              "end": {
18907                                "line": 187,
18908                                "column": 16,
18909                                "program": "generic_arrayaslist.ets"
18910                              }
18911                            }
18912                          },
18913                          "init": {
18914                            "type": "ETSNewArrayInstanceExpression",
18915                            "typeReference": {
18916                              "type": "ETSUnionType",
18917                              "types": [
18918                                {
18919                                  "type": "ETSTypeReference",
18920                                  "part": {
18921                                    "type": "ETSTypeReferencePart",
18922                                    "name": {
18923                                      "type": "Identifier",
18924                                      "name": "T",
18925                                      "decorators": [],
18926                                      "loc": {
18927                                        "start": {
18928                                          "line": 187,
18929                                          "column": 24,
18930                                          "program": "generic_arrayaslist.ets"
18931                                        },
18932                                        "end": {
18933                                          "line": 187,
18934                                          "column": 25,
18935                                          "program": "generic_arrayaslist.ets"
18936                                        }
18937                                      }
18938                                    },
18939                                    "loc": {
18940                                      "start": {
18941                                        "line": 187,
18942                                        "column": 24,
18943                                        "program": "generic_arrayaslist.ets"
18944                                      },
18945                                      "end": {
18946                                        "line": 187,
18947                                        "column": 27,
18948                                        "program": "generic_arrayaslist.ets"
18949                                      }
18950                                    }
18951                                  },
18952                                  "loc": {
18953                                    "start": {
18954                                      "line": 187,
18955                                      "column": 24,
18956                                      "program": "generic_arrayaslist.ets"
18957                                    },
18958                                    "end": {
18959                                      "line": 187,
18960                                      "column": 27,
18961                                      "program": "generic_arrayaslist.ets"
18962                                    }
18963                                  }
18964                                },
18965                                {
18966                                  "type": "ETSUndefinedType",
18967                                  "loc": {
18968                                    "start": {
18969                                      "line": 187,
18970                                      "column": 28,
18971                                      "program": "generic_arrayaslist.ets"
18972                                    },
18973                                    "end": {
18974                                      "line": 187,
18975                                      "column": 37,
18976                                      "program": "generic_arrayaslist.ets"
18977                                    }
18978                                  }
18979                                }
18980                              ],
18981                              "loc": {
18982                                "start": {
18983                                  "line": 187,
18984                                  "column": 23,
18985                                  "program": "generic_arrayaslist.ets"
18986                                },
18987                                "end": {
18988                                  "line": 187,
18989                                  "column": 37,
18990                                  "program": "generic_arrayaslist.ets"
18991                                }
18992                              }
18993                            },
18994                            "dimension": {
18995                              "type": "Identifier",
18996                              "name": "resAmount",
18997                              "decorators": [],
18998                              "loc": {
18999                                "start": {
19000                                  "line": 187,
19001                                  "column": 39,
19002                                  "program": "generic_arrayaslist.ets"
19003                                },
19004                                "end": {
19005                                  "line": 187,
19006                                  "column": 48,
19007                                  "program": "generic_arrayaslist.ets"
19008                                }
19009                              }
19010                            },
19011                            "loc": {
19012                              "start": {
19013                                "line": 187,
19014                                "column": 19,
19015                                "program": "generic_arrayaslist.ets"
19016                              },
19017                              "end": {
19018                                "line": 187,
19019                                "column": 49,
19020                                "program": "generic_arrayaslist.ets"
19021                              }
19022                            }
19023                          },
19024                          "loc": {
19025                            "start": {
19026                              "line": 187,
19027                              "column": 13,
19028                              "program": "generic_arrayaslist.ets"
19029                            },
19030                            "end": {
19031                              "line": 187,
19032                              "column": 49,
19033                              "program": "generic_arrayaslist.ets"
19034                            }
19035                          }
19036                        }
19037                      ],
19038                      "kind": "let",
19039                      "loc": {
19040                        "start": {
19041                          "line": 187,
19042                          "column": 9,
19043                          "program": "generic_arrayaslist.ets"
19044                        },
19045                        "end": {
19046                          "line": 187,
19047                          "column": 50,
19048                          "program": "generic_arrayaslist.ets"
19049                        }
19050                      }
19051                    },
19052                    {
19053                      "type": "ForUpdateStatement",
19054                      "init": {
19055                        "type": "VariableDeclaration",
19056                        "declarations": [
19057                          {
19058                            "type": "VariableDeclarator",
19059                            "id": {
19060                              "type": "Identifier",
19061                              "name": "i",
19062                              "decorators": [],
19063                              "loc": {
19064                                "start": {
19065                                  "line": 188,
19066                                  "column": 18,
19067                                  "program": "generic_arrayaslist.ets"
19068                                },
19069                                "end": {
19070                                  "line": 188,
19071                                  "column": 19,
19072                                  "program": "generic_arrayaslist.ets"
19073                                }
19074                              }
19075                            },
19076                            "init": {
19077                              "type": "NumberLiteral",
19078                              "value": 0,
19079                              "loc": {
19080                                "start": {
19081                                  "line": 188,
19082                                  "column": 22,
19083                                  "program": "generic_arrayaslist.ets"
19084                                },
19085                                "end": {
19086                                  "line": 188,
19087                                  "column": 23,
19088                                  "program": "generic_arrayaslist.ets"
19089                                }
19090                              }
19091                            },
19092                            "loc": {
19093                              "start": {
19094                                "line": 188,
19095                                "column": 18,
19096                                "program": "generic_arrayaslist.ets"
19097                              },
19098                              "end": {
19099                                "line": 188,
19100                                "column": 23,
19101                                "program": "generic_arrayaslist.ets"
19102                              }
19103                            }
19104                          },
19105                          {
19106                            "type": "VariableDeclarator",
19107                            "id": {
19108                              "type": "Identifier",
19109                              "name": "j",
19110                              "decorators": [],
19111                              "loc": {
19112                                "start": {
19113                                  "line": 188,
19114                                  "column": 25,
19115                                  "program": "generic_arrayaslist.ets"
19116                                },
19117                                "end": {
19118                                  "line": 188,
19119                                  "column": 26,
19120                                  "program": "generic_arrayaslist.ets"
19121                                }
19122                              }
19123                            },
19124                            "init": {
19125                              "type": "NumberLiteral",
19126                              "value": 0,
19127                              "loc": {
19128                                "start": {
19129                                  "line": 188,
19130                                  "column": 29,
19131                                  "program": "generic_arrayaslist.ets"
19132                                },
19133                                "end": {
19134                                  "line": 188,
19135                                  "column": 30,
19136                                  "program": "generic_arrayaslist.ets"
19137                                }
19138                              }
19139                            },
19140                            "loc": {
19141                              "start": {
19142                                "line": 188,
19143                                "column": 25,
19144                                "program": "generic_arrayaslist.ets"
19145                              },
19146                              "end": {
19147                                "line": 188,
19148                                "column": 30,
19149                                "program": "generic_arrayaslist.ets"
19150                              }
19151                            }
19152                          }
19153                        ],
19154                        "kind": "let",
19155                        "loc": {
19156                          "start": {
19157                            "line": 188,
19158                            "column": 14,
19159                            "program": "generic_arrayaslist.ets"
19160                          },
19161                          "end": {
19162                            "line": 188,
19163                            "column": 30,
19164                            "program": "generic_arrayaslist.ets"
19165                          }
19166                        }
19167                      },
19168                      "test": {
19169                        "type": "BinaryExpression",
19170                        "operator": "<",
19171                        "left": {
19172                          "type": "Identifier",
19173                          "name": "i",
19174                          "decorators": [],
19175                          "loc": {
19176                            "start": {
19177                              "line": 188,
19178                              "column": 32,
19179                              "program": "generic_arrayaslist.ets"
19180                            },
19181                            "end": {
19182                              "line": 188,
19183                              "column": 33,
19184                              "program": "generic_arrayaslist.ets"
19185                            }
19186                          }
19187                        },
19188                        "right": {
19189                          "type": "MemberExpression",
19190                          "object": {
19191                            "type": "ThisExpression",
19192                            "loc": {
19193                              "start": {
19194                                "line": 188,
19195                                "column": 36,
19196                                "program": "generic_arrayaslist.ets"
19197                              },
19198                              "end": {
19199                                "line": 188,
19200                                "column": 40,
19201                                "program": "generic_arrayaslist.ets"
19202                              }
19203                            }
19204                          },
19205                          "property": {
19206                            "type": "Identifier",
19207                            "name": "curSize",
19208                            "decorators": [],
19209                            "loc": {
19210                              "start": {
19211                                "line": 188,
19212                                "column": 41,
19213                                "program": "generic_arrayaslist.ets"
19214                              },
19215                              "end": {
19216                                "line": 188,
19217                                "column": 48,
19218                                "program": "generic_arrayaslist.ets"
19219                              }
19220                            }
19221                          },
19222                          "computed": false,
19223                          "optional": false,
19224                          "loc": {
19225                            "start": {
19226                              "line": 188,
19227                              "column": 36,
19228                              "program": "generic_arrayaslist.ets"
19229                            },
19230                            "end": {
19231                              "line": 188,
19232                              "column": 48,
19233                              "program": "generic_arrayaslist.ets"
19234                            }
19235                          }
19236                        },
19237                        "loc": {
19238                          "start": {
19239                            "line": 188,
19240                            "column": 32,
19241                            "program": "generic_arrayaslist.ets"
19242                          },
19243                          "end": {
19244                            "line": 188,
19245                            "column": 48,
19246                            "program": "generic_arrayaslist.ets"
19247                          }
19248                        }
19249                      },
19250                      "update": {
19251                        "type": "UpdateExpression",
19252                        "operator": "++",
19253                        "prefix": true,
19254                        "argument": {
19255                          "type": "Identifier",
19256                          "name": "i",
19257                          "decorators": [],
19258                          "loc": {
19259                            "start": {
19260                              "line": 188,
19261                              "column": 52,
19262                              "program": "generic_arrayaslist.ets"
19263                            },
19264                            "end": {
19265                              "line": 188,
19266                              "column": 53,
19267                              "program": "generic_arrayaslist.ets"
19268                            }
19269                          }
19270                        },
19271                        "loc": {
19272                          "start": {
19273                            "line": 188,
19274                            "column": 50,
19275                            "program": "generic_arrayaslist.ets"
19276                          },
19277                          "end": {
19278                            "line": 188,
19279                            "column": 53,
19280                            "program": "generic_arrayaslist.ets"
19281                          }
19282                        }
19283                      },
19284                      "body": {
19285                        "type": "BlockStatement",
19286                        "statements": [
19287                          {
19288                            "type": "IfStatement",
19289                            "test": {
19290                              "type": "MemberExpression",
19291                              "object": {
19292                                "type": "Identifier",
19293                                "name": "indicators",
19294                                "decorators": [],
19295                                "loc": {
19296                                  "start": {
19297                                    "line": 189,
19298                                    "column": 17,
19299                                    "program": "generic_arrayaslist.ets"
19300                                  },
19301                                  "end": {
19302                                    "line": 189,
19303                                    "column": 27,
19304                                    "program": "generic_arrayaslist.ets"
19305                                  }
19306                                }
19307                              },
19308                              "property": {
19309                                "type": "Identifier",
19310                                "name": "i",
19311                                "decorators": [],
19312                                "loc": {
19313                                  "start": {
19314                                    "line": 189,
19315                                    "column": 28,
19316                                    "program": "generic_arrayaslist.ets"
19317                                  },
19318                                  "end": {
19319                                    "line": 189,
19320                                    "column": 29,
19321                                    "program": "generic_arrayaslist.ets"
19322                                  }
19323                                }
19324                              },
19325                              "computed": true,
19326                              "optional": false,
19327                              "loc": {
19328                                "start": {
19329                                  "line": 189,
19330                                  "column": 17,
19331                                  "program": "generic_arrayaslist.ets"
19332                                },
19333                                "end": {
19334                                  "line": 189,
19335                                  "column": 30,
19336                                  "program": "generic_arrayaslist.ets"
19337                                }
19338                              }
19339                            },
19340                            "consequent": {
19341                              "type": "BlockStatement",
19342                              "statements": [
19343                                {
19344                                  "type": "ExpressionStatement",
19345                                  "expression": {
19346                                    "type": "AssignmentExpression",
19347                                    "operator": "=",
19348                                    "left": {
19349                                      "type": "MemberExpression",
19350                                      "object": {
19351                                        "type": "Identifier",
19352                                        "name": "res",
19353                                        "decorators": [],
19354                                        "loc": {
19355                                          "start": {
19356                                            "line": 190,
19357                                            "column": 17,
19358                                            "program": "generic_arrayaslist.ets"
19359                                          },
19360                                          "end": {
19361                                            "line": 190,
19362                                            "column": 20,
19363                                            "program": "generic_arrayaslist.ets"
19364                                          }
19365                                        }
19366                                      },
19367                                      "property": {
19368                                        "type": "Identifier",
19369                                        "name": "j",
19370                                        "decorators": [],
19371                                        "loc": {
19372                                          "start": {
19373                                            "line": 190,
19374                                            "column": 21,
19375                                            "program": "generic_arrayaslist.ets"
19376                                          },
19377                                          "end": {
19378                                            "line": 190,
19379                                            "column": 22,
19380                                            "program": "generic_arrayaslist.ets"
19381                                          }
19382                                        }
19383                                      },
19384                                      "computed": true,
19385                                      "optional": false,
19386                                      "loc": {
19387                                        "start": {
19388                                          "line": 190,
19389                                          "column": 17,
19390                                          "program": "generic_arrayaslist.ets"
19391                                        },
19392                                        "end": {
19393                                          "line": 190,
19394                                          "column": 23,
19395                                          "program": "generic_arrayaslist.ets"
19396                                        }
19397                                      }
19398                                    },
19399                                    "right": {
19400                                      "type": "MemberExpression",
19401                                      "object": {
19402                                        "type": "MemberExpression",
19403                                        "object": {
19404                                          "type": "ThisExpression",
19405                                          "loc": {
19406                                            "start": {
19407                                              "line": 190,
19408                                              "column": 26,
19409                                              "program": "generic_arrayaslist.ets"
19410                                            },
19411                                            "end": {
19412                                              "line": 190,
19413                                              "column": 30,
19414                                              "program": "generic_arrayaslist.ets"
19415                                            }
19416                                          }
19417                                        },
19418                                        "property": {
19419                                          "type": "Identifier",
19420                                          "name": "data",
19421                                          "decorators": [],
19422                                          "loc": {
19423                                            "start": {
19424                                              "line": 190,
19425                                              "column": 31,
19426                                              "program": "generic_arrayaslist.ets"
19427                                            },
19428                                            "end": {
19429                                              "line": 190,
19430                                              "column": 35,
19431                                              "program": "generic_arrayaslist.ets"
19432                                            }
19433                                          }
19434                                        },
19435                                        "computed": false,
19436                                        "optional": false,
19437                                        "loc": {
19438                                          "start": {
19439                                            "line": 190,
19440                                            "column": 26,
19441                                            "program": "generic_arrayaslist.ets"
19442                                          },
19443                                          "end": {
19444                                            "line": 190,
19445                                            "column": 35,
19446                                            "program": "generic_arrayaslist.ets"
19447                                          }
19448                                        }
19449                                      },
19450                                      "property": {
19451                                        "type": "Identifier",
19452                                        "name": "i",
19453                                        "decorators": [],
19454                                        "loc": {
19455                                          "start": {
19456                                            "line": 190,
19457                                            "column": 36,
19458                                            "program": "generic_arrayaslist.ets"
19459                                          },
19460                                          "end": {
19461                                            "line": 190,
19462                                            "column": 37,
19463                                            "program": "generic_arrayaslist.ets"
19464                                          }
19465                                        }
19466                                      },
19467                                      "computed": true,
19468                                      "optional": false,
19469                                      "loc": {
19470                                        "start": {
19471                                          "line": 190,
19472                                          "column": 26,
19473                                          "program": "generic_arrayaslist.ets"
19474                                        },
19475                                        "end": {
19476                                          "line": 190,
19477                                          "column": 38,
19478                                          "program": "generic_arrayaslist.ets"
19479                                        }
19480                                      }
19481                                    },
19482                                    "loc": {
19483                                      "start": {
19484                                        "line": 190,
19485                                        "column": 17,
19486                                        "program": "generic_arrayaslist.ets"
19487                                      },
19488                                      "end": {
19489                                        "line": 190,
19490                                        "column": 38,
19491                                        "program": "generic_arrayaslist.ets"
19492                                      }
19493                                    }
19494                                  },
19495                                  "loc": {
19496                                    "start": {
19497                                      "line": 190,
19498                                      "column": 17,
19499                                      "program": "generic_arrayaslist.ets"
19500                                    },
19501                                    "end": {
19502                                      "line": 190,
19503                                      "column": 39,
19504                                      "program": "generic_arrayaslist.ets"
19505                                    }
19506                                  }
19507                                },
19508                                {
19509                                  "type": "ExpressionStatement",
19510                                  "expression": {
19511                                    "type": "UpdateExpression",
19512                                    "operator": "++",
19513                                    "prefix": true,
19514                                    "argument": {
19515                                      "type": "Identifier",
19516                                      "name": "j",
19517                                      "decorators": [],
19518                                      "loc": {
19519                                        "start": {
19520                                          "line": 191,
19521                                          "column": 19,
19522                                          "program": "generic_arrayaslist.ets"
19523                                        },
19524                                        "end": {
19525                                          "line": 191,
19526                                          "column": 20,
19527                                          "program": "generic_arrayaslist.ets"
19528                                        }
19529                                      }
19530                                    },
19531                                    "loc": {
19532                                      "start": {
19533                                        "line": 191,
19534                                        "column": 17,
19535                                        "program": "generic_arrayaslist.ets"
19536                                      },
19537                                      "end": {
19538                                        "line": 191,
19539                                        "column": 20,
19540                                        "program": "generic_arrayaslist.ets"
19541                                      }
19542                                    }
19543                                  },
19544                                  "loc": {
19545                                    "start": {
19546                                      "line": 191,
19547                                      "column": 17,
19548                                      "program": "generic_arrayaslist.ets"
19549                                    },
19550                                    "end": {
19551                                      "line": 191,
19552                                      "column": 21,
19553                                      "program": "generic_arrayaslist.ets"
19554                                    }
19555                                  }
19556                                }
19557                              ],
19558                              "loc": {
19559                                "start": {
19560                                  "line": 189,
19561                                  "column": 32,
19562                                  "program": "generic_arrayaslist.ets"
19563                                },
19564                                "end": {
19565                                  "line": 192,
19566                                  "column": 14,
19567                                  "program": "generic_arrayaslist.ets"
19568                                }
19569                              }
19570                            },
19571                            "alternate": null,
19572                            "loc": {
19573                              "start": {
19574                                "line": 189,
19575                                "column": 13,
19576                                "program": "generic_arrayaslist.ets"
19577                              },
19578                              "end": {
19579                                "line": 192,
19580                                "column": 14,
19581                                "program": "generic_arrayaslist.ets"
19582                              }
19583                            }
19584                          }
19585                        ],
19586                        "loc": {
19587                          "start": {
19588                            "line": 188,
19589                            "column": 55,
19590                            "program": "generic_arrayaslist.ets"
19591                          },
19592                          "end": {
19593                            "line": 193,
19594                            "column": 10,
19595                            "program": "generic_arrayaslist.ets"
19596                          }
19597                        }
19598                      },
19599                      "loc": {
19600                        "start": {
19601                          "line": 188,
19602                          "column": 9,
19603                          "program": "generic_arrayaslist.ets"
19604                        },
19605                        "end": {
19606                          "line": 193,
19607                          "column": 10,
19608                          "program": "generic_arrayaslist.ets"
19609                        }
19610                      }
19611                    },
19612                    {
19613                      "type": "ExpressionStatement",
19614                      "expression": {
19615                        "type": "AssignmentExpression",
19616                        "operator": "=",
19617                        "left": {
19618                          "type": "MemberExpression",
19619                          "object": {
19620                            "type": "ThisExpression",
19621                            "loc": {
19622                              "start": {
19623                                "line": 194,
19624                                "column": 9,
19625                                "program": "generic_arrayaslist.ets"
19626                              },
19627                              "end": {
19628                                "line": 194,
19629                                "column": 13,
19630                                "program": "generic_arrayaslist.ets"
19631                              }
19632                            }
19633                          },
19634                          "property": {
19635                            "type": "Identifier",
19636                            "name": "data",
19637                            "decorators": [],
19638                            "loc": {
19639                              "start": {
19640                                "line": 194,
19641                                "column": 14,
19642                                "program": "generic_arrayaslist.ets"
19643                              },
19644                              "end": {
19645                                "line": 194,
19646                                "column": 18,
19647                                "program": "generic_arrayaslist.ets"
19648                              }
19649                            }
19650                          },
19651                          "computed": false,
19652                          "optional": false,
19653                          "loc": {
19654                            "start": {
19655                              "line": 194,
19656                              "column": 9,
19657                              "program": "generic_arrayaslist.ets"
19658                            },
19659                            "end": {
19660                              "line": 194,
19661                              "column": 18,
19662                              "program": "generic_arrayaslist.ets"
19663                            }
19664                          }
19665                        },
19666                        "right": {
19667                          "type": "Identifier",
19668                          "name": "res",
19669                          "decorators": [],
19670                          "loc": {
19671                            "start": {
19672                              "line": 194,
19673                              "column": 21,
19674                              "program": "generic_arrayaslist.ets"
19675                            },
19676                            "end": {
19677                              "line": 194,
19678                              "column": 24,
19679                              "program": "generic_arrayaslist.ets"
19680                            }
19681                          }
19682                        },
19683                        "loc": {
19684                          "start": {
19685                            "line": 194,
19686                            "column": 9,
19687                            "program": "generic_arrayaslist.ets"
19688                          },
19689                          "end": {
19690                            "line": 194,
19691                            "column": 24,
19692                            "program": "generic_arrayaslist.ets"
19693                          }
19694                        }
19695                      },
19696                      "loc": {
19697                        "start": {
19698                          "line": 194,
19699                          "column": 9,
19700                          "program": "generic_arrayaslist.ets"
19701                        },
19702                        "end": {
19703                          "line": 194,
19704                          "column": 25,
19705                          "program": "generic_arrayaslist.ets"
19706                        }
19707                      }
19708                    },
19709                    {
19710                      "type": "ReturnStatement",
19711                      "argument": {
19712                        "type": "NullLiteral",
19713                        "value": null,
19714                        "loc": {
19715                          "start": {
19716                            "line": 195,
19717                            "column": 16,
19718                            "program": "generic_arrayaslist.ets"
19719                          },
19720                          "end": {
19721                            "line": 195,
19722                            "column": 20,
19723                            "program": "generic_arrayaslist.ets"
19724                          }
19725                        }
19726                      },
19727                      "loc": {
19728                        "start": {
19729                          "line": 195,
19730                          "column": 9,
19731                          "program": "generic_arrayaslist.ets"
19732                        },
19733                        "end": {
19734                          "line": 195,
19735                          "column": 21,
19736                          "program": "generic_arrayaslist.ets"
19737                        }
19738                      }
19739                    }
19740                  ],
19741                  "loc": {
19742                    "start": {
19743                      "line": 178,
19744                      "column": 83,
19745                      "program": "generic_arrayaslist.ets"
19746                    },
19747                    "end": {
19748                      "line": 196,
19749                      "column": 6,
19750                      "program": "generic_arrayaslist.ets"
19751                    }
19752                  }
19753                },
19754                "loc": {
19755                  "start": {
19756                    "line": 178,
19757                    "column": 27,
19758                    "program": "generic_arrayaslist.ets"
19759                  },
19760                  "end": {
19761                    "line": 196,
19762                    "column": 6,
19763                    "program": "generic_arrayaslist.ets"
19764                  }
19765                }
19766              },
19767              "loc": {
19768                "start": {
19769                  "line": 178,
19770                  "column": 27,
19771                  "program": "generic_arrayaslist.ets"
19772                },
19773                "end": {
19774                  "line": 196,
19775                  "column": 6,
19776                  "program": "generic_arrayaslist.ets"
19777                }
19778              }
19779            },
19780            "overloads": [],
19781            "decorators": [],
19782            "loc": {
19783              "start": {
19784                "line": 178,
19785                "column": 5,
19786                "program": "generic_arrayaslist.ets"
19787              },
19788              "end": {
19789                "line": 196,
19790                "column": 6,
19791                "program": "generic_arrayaslist.ets"
19792              }
19793            }
19794          },
19795          {
19796            "type": "MethodDefinition",
19797            "key": {
19798              "type": "Identifier",
19799              "name": "sort",
19800              "decorators": [],
19801              "loc": {
19802                "start": {
19803                  "line": 198,
19804                  "column": 21,
19805                  "program": "generic_arrayaslist.ets"
19806                },
19807                "end": {
19808                  "line": 198,
19809                  "column": 25,
19810                  "program": "generic_arrayaslist.ets"
19811                }
19812              }
19813            },
19814            "kind": "method",
19815            "accessibility": "public",
19816            "static": false,
19817            "optional": false,
19818            "computed": false,
19819            "value": {
19820              "type": "FunctionExpression",
19821              "function": {
19822                "type": "ScriptFunction",
19823                "id": {
19824                  "type": "Identifier",
19825                  "name": "sort",
19826                  "decorators": [],
19827                  "loc": {
19828                    "start": {
19829                      "line": 198,
19830                      "column": 21,
19831                      "program": "generic_arrayaslist.ets"
19832                    },
19833                    "end": {
19834                      "line": 198,
19835                      "column": 25,
19836                      "program": "generic_arrayaslist.ets"
19837                    }
19838                  }
19839                },
19840                "generator": false,
19841                "async": false,
19842                "expression": false,
19843                "params": [
19844                  {
19845                    "type": "ETSParameterExpression",
19846                    "name": {
19847                      "type": "Identifier",
19848                      "name": "comparator",
19849                      "typeAnnotation": {
19850                        "type": "ETSFunctionType",
19851                        "params": [
19852                          {
19853                            "type": "ETSParameterExpression",
19854                            "name": {
19855                              "type": "Identifier",
19856                              "name": "lhs",
19857                              "typeAnnotation": {
19858                                "type": "ETSTypeReference",
19859                                "part": {
19860                                  "type": "ETSTypeReferencePart",
19861                                  "name": {
19862                                    "type": "Identifier",
19863                                    "name": "T",
19864                                    "decorators": [],
19865                                    "loc": {
19866                                      "start": {
19867                                        "line": 198,
19868                                        "column": 44,
19869                                        "program": "generic_arrayaslist.ets"
19870                                      },
19871                                      "end": {
19872                                        "line": 198,
19873                                        "column": 45,
19874                                        "program": "generic_arrayaslist.ets"
19875                                      }
19876                                    }
19877                                  },
19878                                  "loc": {
19879                                    "start": {
19880                                      "line": 198,
19881                                      "column": 44,
19882                                      "program": "generic_arrayaslist.ets"
19883                                    },
19884                                    "end": {
19885                                      "line": 198,
19886                                      "column": 46,
19887                                      "program": "generic_arrayaslist.ets"
19888                                    }
19889                                  }
19890                                },
19891                                "loc": {
19892                                  "start": {
19893                                    "line": 198,
19894                                    "column": 44,
19895                                    "program": "generic_arrayaslist.ets"
19896                                  },
19897                                  "end": {
19898                                    "line": 198,
19899                                    "column": 46,
19900                                    "program": "generic_arrayaslist.ets"
19901                                  }
19902                                }
19903                              },
19904                              "decorators": [],
19905                              "loc": {
19906                                "start": {
19907                                  "line": 198,
19908                                  "column": 39,
19909                                  "program": "generic_arrayaslist.ets"
19910                                },
19911                                "end": {
19912                                  "line": 198,
19913                                  "column": 46,
19914                                  "program": "generic_arrayaslist.ets"
19915                                }
19916                              }
19917                            },
19918                            "loc": {
19919                              "start": {
19920                                "line": 198,
19921                                "column": 39,
19922                                "program": "generic_arrayaslist.ets"
19923                              },
19924                              "end": {
19925                                "line": 198,
19926                                "column": 46,
19927                                "program": "generic_arrayaslist.ets"
19928                              }
19929                            }
19930                          },
19931                          {
19932                            "type": "ETSParameterExpression",
19933                            "name": {
19934                              "type": "Identifier",
19935                              "name": "rhs",
19936                              "typeAnnotation": {
19937                                "type": "ETSTypeReference",
19938                                "part": {
19939                                  "type": "ETSTypeReferencePart",
19940                                  "name": {
19941                                    "type": "Identifier",
19942                                    "name": "T",
19943                                    "decorators": [],
19944                                    "loc": {
19945                                      "start": {
19946                                        "line": 198,
19947                                        "column": 52,
19948                                        "program": "generic_arrayaslist.ets"
19949                                      },
19950                                      "end": {
19951                                        "line": 198,
19952                                        "column": 53,
19953                                        "program": "generic_arrayaslist.ets"
19954                                      }
19955                                    }
19956                                  },
19957                                  "loc": {
19958                                    "start": {
19959                                      "line": 198,
19960                                      "column": 52,
19961                                      "program": "generic_arrayaslist.ets"
19962                                    },
19963                                    "end": {
19964                                      "line": 198,
19965                                      "column": 54,
19966                                      "program": "generic_arrayaslist.ets"
19967                                    }
19968                                  }
19969                                },
19970                                "loc": {
19971                                  "start": {
19972                                    "line": 198,
19973                                    "column": 52,
19974                                    "program": "generic_arrayaslist.ets"
19975                                  },
19976                                  "end": {
19977                                    "line": 198,
19978                                    "column": 54,
19979                                    "program": "generic_arrayaslist.ets"
19980                                  }
19981                                }
19982                              },
19983                              "decorators": [],
19984                              "loc": {
19985                                "start": {
19986                                  "line": 198,
19987                                  "column": 47,
19988                                  "program": "generic_arrayaslist.ets"
19989                                },
19990                                "end": {
19991                                  "line": 198,
19992                                  "column": 54,
19993                                  "program": "generic_arrayaslist.ets"
19994                                }
19995                              }
19996                            },
19997                            "loc": {
19998                              "start": {
19999                                "line": 198,
20000                                "column": 47,
20001                                "program": "generic_arrayaslist.ets"
20002                              },
20003                              "end": {
20004                                "line": 198,
20005                                "column": 54,
20006                                "program": "generic_arrayaslist.ets"
20007                              }
20008                            }
20009                          }
20010                        ],
20011                        "returnType": {
20012                          "type": "ETSPrimitiveType",
20013                          "loc": {
20014                            "start": {
20015                              "line": 198,
20016                              "column": 58,
20017                              "program": "generic_arrayaslist.ets"
20018                            },
20019                            "end": {
20020                              "line": 198,
20021                              "column": 65,
20022                              "program": "generic_arrayaslist.ets"
20023                            }
20024                          }
20025                        },
20026                        "loc": {
20027                          "start": {
20028                            "line": 198,
20029                            "column": 38,
20030                            "program": "generic_arrayaslist.ets"
20031                          },
20032                          "end": {
20033                            "line": 198,
20034                            "column": 65,
20035                            "program": "generic_arrayaslist.ets"
20036                          }
20037                        }
20038                      },
20039                      "decorators": [],
20040                      "loc": {
20041                        "start": {
20042                          "line": 198,
20043                          "column": 26,
20044                          "program": "generic_arrayaslist.ets"
20045                        },
20046                        "end": {
20047                          "line": 198,
20048                          "column": 65,
20049                          "program": "generic_arrayaslist.ets"
20050                        }
20051                      }
20052                    },
20053                    "loc": {
20054                      "start": {
20055                        "line": 198,
20056                        "column": 26,
20057                        "program": "generic_arrayaslist.ets"
20058                      },
20059                      "end": {
20060                        "line": 198,
20061                        "column": 65,
20062                        "program": "generic_arrayaslist.ets"
20063                      }
20064                    }
20065                  }
20066                ],
20067                "returnType": {
20068                  "type": "ETSUnionType",
20069                  "types": [
20070                    {
20071                      "type": "ETSTypeReference",
20072                      "part": {
20073                        "type": "ETSTypeReferencePart",
20074                        "name": {
20075                          "type": "Identifier",
20076                          "name": "ArrayAsListt",
20077                          "decorators": [],
20078                          "loc": {
20079                            "start": {
20080                              "line": 198,
20081                              "column": 68,
20082                              "program": "generic_arrayaslist.ets"
20083                            },
20084                            "end": {
20085                              "line": 198,
20086                              "column": 80,
20087                              "program": "generic_arrayaslist.ets"
20088                            }
20089                          }
20090                        },
20091                        "typeParams": {
20092                          "type": "TSTypeParameterInstantiation",
20093                          "params": [
20094                            {
20095                              "type": "ETSTypeReference",
20096                              "part": {
20097                                "type": "ETSTypeReferencePart",
20098                                "name": {
20099                                  "type": "Identifier",
20100                                  "name": "T",
20101                                  "decorators": [],
20102                                  "loc": {
20103                                    "start": {
20104                                      "line": 198,
20105                                      "column": 81,
20106                                      "program": "generic_arrayaslist.ets"
20107                                    },
20108                                    "end": {
20109                                      "line": 198,
20110                                      "column": 82,
20111                                      "program": "generic_arrayaslist.ets"
20112                                    }
20113                                  }
20114                                },
20115                                "loc": {
20116                                  "start": {
20117                                    "line": 198,
20118                                    "column": 81,
20119                                    "program": "generic_arrayaslist.ets"
20120                                  },
20121                                  "end": {
20122                                    "line": 198,
20123                                    "column": 83,
20124                                    "program": "generic_arrayaslist.ets"
20125                                  }
20126                                }
20127                              },
20128                              "loc": {
20129                                "start": {
20130                                  "line": 198,
20131                                  "column": 81,
20132                                  "program": "generic_arrayaslist.ets"
20133                                },
20134                                "end": {
20135                                  "line": 198,
20136                                  "column": 83,
20137                                  "program": "generic_arrayaslist.ets"
20138                                }
20139                              }
20140                            }
20141                          ],
20142                          "loc": {
20143                            "start": {
20144                              "line": 198,
20145                              "column": 80,
20146                              "program": "generic_arrayaslist.ets"
20147                            },
20148                            "end": {
20149                              "line": 198,
20150                              "column": 83,
20151                              "program": "generic_arrayaslist.ets"
20152                            }
20153                          }
20154                        },
20155                        "loc": {
20156                          "start": {
20157                            "line": 198,
20158                            "column": 68,
20159                            "program": "generic_arrayaslist.ets"
20160                          },
20161                          "end": {
20162                            "line": 198,
20163                            "column": 85,
20164                            "program": "generic_arrayaslist.ets"
20165                          }
20166                        }
20167                      },
20168                      "loc": {
20169                        "start": {
20170                          "line": 198,
20171                          "column": 68,
20172                          "program": "generic_arrayaslist.ets"
20173                        },
20174                        "end": {
20175                          "line": 198,
20176                          "column": 85,
20177                          "program": "generic_arrayaslist.ets"
20178                        }
20179                      }
20180                    },
20181                    {
20182                      "type": "ETSNullType",
20183                      "loc": {
20184                        "start": {
20185                          "line": 198,
20186                          "column": 86,
20187                          "program": "generic_arrayaslist.ets"
20188                        },
20189                        "end": {
20190                          "line": 198,
20191                          "column": 90,
20192                          "program": "generic_arrayaslist.ets"
20193                        }
20194                      }
20195                    }
20196                  ],
20197                  "loc": {
20198                    "start": {
20199                      "line": 198,
20200                      "column": 68,
20201                      "program": "generic_arrayaslist.ets"
20202                    },
20203                    "end": {
20204                      "line": 198,
20205                      "column": 90,
20206                      "program": "generic_arrayaslist.ets"
20207                    }
20208                  }
20209                },
20210                "body": {
20211                  "type": "BlockStatement",
20212                  "statements": [
20213                    {
20214                      "type": "ExpressionStatement",
20215                      "expression": {
20216                        "type": "CallExpression",
20217                        "callee": {
20218                          "type": "MemberExpression",
20219                          "object": {
20220                            "type": "ThisExpression",
20221                            "loc": {
20222                              "start": {
20223                                "line": 199,
20224                                "column": 9,
20225                                "program": "generic_arrayaslist.ets"
20226                              },
20227                              "end": {
20228                                "line": 199,
20229                                "column": 13,
20230                                "program": "generic_arrayaslist.ets"
20231                              }
20232                            }
20233                          },
20234                          "property": {
20235                            "type": "Identifier",
20236                            "name": "sortPart",
20237                            "decorators": [],
20238                            "loc": {
20239                              "start": {
20240                                "line": 199,
20241                                "column": 14,
20242                                "program": "generic_arrayaslist.ets"
20243                              },
20244                              "end": {
20245                                "line": 199,
20246                                "column": 22,
20247                                "program": "generic_arrayaslist.ets"
20248                              }
20249                            }
20250                          },
20251                          "computed": false,
20252                          "optional": false,
20253                          "loc": {
20254                            "start": {
20255                              "line": 199,
20256                              "column": 9,
20257                              "program": "generic_arrayaslist.ets"
20258                            },
20259                            "end": {
20260                              "line": 199,
20261                              "column": 22,
20262                              "program": "generic_arrayaslist.ets"
20263                            }
20264                          }
20265                        },
20266                        "arguments": [
20267                          {
20268                            "type": "MemberExpression",
20269                            "object": {
20270                              "type": "ThisExpression",
20271                              "loc": {
20272                                "start": {
20273                                  "line": 199,
20274                                  "column": 23,
20275                                  "program": "generic_arrayaslist.ets"
20276                                },
20277                                "end": {
20278                                  "line": 199,
20279                                  "column": 27,
20280                                  "program": "generic_arrayaslist.ets"
20281                                }
20282                              }
20283                            },
20284                            "property": {
20285                              "type": "Identifier",
20286                              "name": "data",
20287                              "decorators": [],
20288                              "loc": {
20289                                "start": {
20290                                  "line": 199,
20291                                  "column": 28,
20292                                  "program": "generic_arrayaslist.ets"
20293                                },
20294                                "end": {
20295                                  "line": 199,
20296                                  "column": 32,
20297                                  "program": "generic_arrayaslist.ets"
20298                                }
20299                              }
20300                            },
20301                            "computed": false,
20302                            "optional": false,
20303                            "loc": {
20304                              "start": {
20305                                "line": 199,
20306                                "column": 23,
20307                                "program": "generic_arrayaslist.ets"
20308                              },
20309                              "end": {
20310                                "line": 199,
20311                                "column": 32,
20312                                "program": "generic_arrayaslist.ets"
20313                              }
20314                            }
20315                          },
20316                          {
20317                            "type": "NumberLiteral",
20318                            "value": 0,
20319                            "loc": {
20320                              "start": {
20321                                "line": 199,
20322                                "column": 34,
20323                                "program": "generic_arrayaslist.ets"
20324                              },
20325                              "end": {
20326                                "line": 199,
20327                                "column": 35,
20328                                "program": "generic_arrayaslist.ets"
20329                              }
20330                            }
20331                          },
20332                          {
20333                            "type": "MemberExpression",
20334                            "object": {
20335                              "type": "ThisExpression",
20336                              "loc": {
20337                                "start": {
20338                                  "line": 199,
20339                                  "column": 37,
20340                                  "program": "generic_arrayaslist.ets"
20341                                },
20342                                "end": {
20343                                  "line": 199,
20344                                  "column": 41,
20345                                  "program": "generic_arrayaslist.ets"
20346                                }
20347                              }
20348                            },
20349                            "property": {
20350                              "type": "Identifier",
20351                              "name": "curSize",
20352                              "decorators": [],
20353                              "loc": {
20354                                "start": {
20355                                  "line": 199,
20356                                  "column": 42,
20357                                  "program": "generic_arrayaslist.ets"
20358                                },
20359                                "end": {
20360                                  "line": 199,
20361                                  "column": 49,
20362                                  "program": "generic_arrayaslist.ets"
20363                                }
20364                              }
20365                            },
20366                            "computed": false,
20367                            "optional": false,
20368                            "loc": {
20369                              "start": {
20370                                "line": 199,
20371                                "column": 37,
20372                                "program": "generic_arrayaslist.ets"
20373                              },
20374                              "end": {
20375                                "line": 199,
20376                                "column": 49,
20377                                "program": "generic_arrayaslist.ets"
20378                              }
20379                            }
20380                          },
20381                          {
20382                            "type": "Identifier",
20383                            "name": "comparator",
20384                            "decorators": [],
20385                            "loc": {
20386                              "start": {
20387                                "line": 199,
20388                                "column": 51,
20389                                "program": "generic_arrayaslist.ets"
20390                              },
20391                              "end": {
20392                                "line": 199,
20393                                "column": 61,
20394                                "program": "generic_arrayaslist.ets"
20395                              }
20396                            }
20397                          }
20398                        ],
20399                        "optional": false,
20400                        "loc": {
20401                          "start": {
20402                            "line": 199,
20403                            "column": 9,
20404                            "program": "generic_arrayaslist.ets"
20405                          },
20406                          "end": {
20407                            "line": 199,
20408                            "column": 62,
20409                            "program": "generic_arrayaslist.ets"
20410                          }
20411                        }
20412                      },
20413                      "loc": {
20414                        "start": {
20415                          "line": 199,
20416                          "column": 9,
20417                          "program": "generic_arrayaslist.ets"
20418                        },
20419                        "end": {
20420                          "line": 199,
20421                          "column": 63,
20422                          "program": "generic_arrayaslist.ets"
20423                        }
20424                      }
20425                    },
20426                    {
20427                      "type": "ReturnStatement",
20428                      "argument": {
20429                        "type": "NullLiteral",
20430                        "value": null,
20431                        "loc": {
20432                          "start": {
20433                            "line": 200,
20434                            "column": 16,
20435                            "program": "generic_arrayaslist.ets"
20436                          },
20437                          "end": {
20438                            "line": 200,
20439                            "column": 20,
20440                            "program": "generic_arrayaslist.ets"
20441                          }
20442                        }
20443                      },
20444                      "loc": {
20445                        "start": {
20446                          "line": 200,
20447                          "column": 9,
20448                          "program": "generic_arrayaslist.ets"
20449                        },
20450                        "end": {
20451                          "line": 200,
20452                          "column": 21,
20453                          "program": "generic_arrayaslist.ets"
20454                        }
20455                      }
20456                    }
20457                  ],
20458                  "loc": {
20459                    "start": {
20460                      "line": 198,
20461                      "column": 91,
20462                      "program": "generic_arrayaslist.ets"
20463                    },
20464                    "end": {
20465                      "line": 201,
20466                      "column": 6,
20467                      "program": "generic_arrayaslist.ets"
20468                    }
20469                  }
20470                },
20471                "loc": {
20472                  "start": {
20473                    "line": 198,
20474                    "column": 25,
20475                    "program": "generic_arrayaslist.ets"
20476                  },
20477                  "end": {
20478                    "line": 201,
20479                    "column": 6,
20480                    "program": "generic_arrayaslist.ets"
20481                  }
20482                }
20483              },
20484              "loc": {
20485                "start": {
20486                  "line": 198,
20487                  "column": 25,
20488                  "program": "generic_arrayaslist.ets"
20489                },
20490                "end": {
20491                  "line": 201,
20492                  "column": 6,
20493                  "program": "generic_arrayaslist.ets"
20494                }
20495              }
20496            },
20497            "overloads": [],
20498            "decorators": [],
20499            "loc": {
20500              "start": {
20501                "line": 198,
20502                "column": 5,
20503                "program": "generic_arrayaslist.ets"
20504              },
20505              "end": {
20506                "line": 201,
20507                "column": 6,
20508                "program": "generic_arrayaslist.ets"
20509              }
20510            }
20511          },
20512          {
20513            "type": "MethodDefinition",
20514            "key": {
20515              "type": "Identifier",
20516              "name": "sortPart",
20517              "decorators": [],
20518              "loc": {
20519                "start": {
20520                  "line": 203,
20521                  "column": 13,
20522                  "program": "generic_arrayaslist.ets"
20523                },
20524                "end": {
20525                  "line": 203,
20526                  "column": 21,
20527                  "program": "generic_arrayaslist.ets"
20528                }
20529              }
20530            },
20531            "kind": "method",
20532            "accessibility": "private",
20533            "static": false,
20534            "optional": false,
20535            "computed": false,
20536            "value": {
20537              "type": "FunctionExpression",
20538              "function": {
20539                "type": "ScriptFunction",
20540                "id": {
20541                  "type": "Identifier",
20542                  "name": "sortPart",
20543                  "decorators": [],
20544                  "loc": {
20545                    "start": {
20546                      "line": 203,
20547                      "column": 13,
20548                      "program": "generic_arrayaslist.ets"
20549                    },
20550                    "end": {
20551                      "line": 203,
20552                      "column": 21,
20553                      "program": "generic_arrayaslist.ets"
20554                    }
20555                  }
20556                },
20557                "generator": false,
20558                "async": false,
20559                "expression": false,
20560                "params": [
20561                  {
20562                    "type": "ETSParameterExpression",
20563                    "name": {
20564                      "type": "Identifier",
20565                      "name": "arr",
20566                      "typeAnnotation": {
20567                        "type": "ETSTypeReference",
20568                        "part": {
20569                          "type": "ETSTypeReferencePart",
20570                          "name": {
20571                            "type": "Identifier",
20572                            "name": "Array",
20573                            "decorators": [],
20574                            "loc": {
20575                              "start": {
20576                                "line": 1,
20577                                "column": 1,
20578                                "program": "generic_arrayaslist.ets"
20579                              },
20580                              "end": {
20581                                "line": 1,
20582                                "column": 3,
20583                                "program": "generic_arrayaslist.ets"
20584                              }
20585                            }
20586                          },
20587                          "typeParams": {
20588                            "type": "TSTypeParameterInstantiation",
20589                            "params": [
20590                              {
20591                                "type": "ETSUnionType",
20592                                "types": [
20593                                  {
20594                                    "type": "ETSTypeReference",
20595                                    "part": {
20596                                      "type": "ETSTypeReferencePart",
20597                                      "name": {
20598                                        "type": "Identifier",
20599                                        "name": "T",
20600                                        "decorators": [],
20601                                        "loc": {
20602                                          "start": {
20603                                            "line": 1,
20604                                            "column": 3,
20605                                            "program": "generic_arrayaslist.ets"
20606                                          },
20607                                          "end": {
20608                                            "line": 1,
20609                                            "column": 3,
20610                                            "program": "generic_arrayaslist.ets"
20611                                          }
20612                                        }
20613                                      },
20614                                      "loc": {
20615                                        "start": {
20616                                          "line": 1,
20617                                          "column": 3,
20618                                          "program": "generic_arrayaslist.ets"
20619                                        },
20620                                        "end": {
20621                                          "line": 1,
20622                                          "column": 3,
20623                                          "program": "generic_arrayaslist.ets"
20624                                        }
20625                                      }
20626                                    },
20627                                    "loc": {
20628                                      "start": {
20629                                        "line": 1,
20630                                        "column": 3,
20631                                        "program": "generic_arrayaslist.ets"
20632                                      },
20633                                      "end": {
20634                                        "line": 1,
20635                                        "column": 3,
20636                                        "program": "generic_arrayaslist.ets"
20637                                      }
20638                                    }
20639                                  },
20640                                  {
20641                                    "type": "ETSUndefinedType",
20642                                    "loc": {
20643                                      "start": {
20644                                        "line": 1,
20645                                        "column": 3,
20646                                        "program": "generic_arrayaslist.ets"
20647                                      },
20648                                      "end": {
20649                                        "line": 1,
20650                                        "column": 3,
20651                                        "program": "generic_arrayaslist.ets"
20652                                      }
20653                                    }
20654                                  }
20655                                ],
20656                                "loc": {
20657                                  "start": {
20658                                    "line": 1,
20659                                    "column": 3,
20660                                    "program": "generic_arrayaslist.ets"
20661                                  },
20662                                  "end": {
20663                                    "line": 1,
20664                                    "column": 3,
20665                                    "program": "generic_arrayaslist.ets"
20666                                  }
20667                                }
20668                              }
20669                            ],
20670                            "loc": {
20671                              "start": {
20672                                "line": 1,
20673                                "column": 3,
20674                                "program": "generic_arrayaslist.ets"
20675                              },
20676                              "end": {
20677                                "line": 1,
20678                                "column": 3,
20679                                "program": "generic_arrayaslist.ets"
20680                              }
20681                            }
20682                          },
20683                          "loc": {
20684                            "start": {
20685                              "line": 1,
20686                              "column": 1,
20687                              "program": "generic_arrayaslist.ets"
20688                            },
20689                            "end": {
20690                              "line": 1,
20691                              "column": 3,
20692                              "program": "generic_arrayaslist.ets"
20693                            }
20694                          }
20695                        },
20696                        "loc": {
20697                          "start": {
20698                            "line": 203,
20699                            "column": 42,
20700                            "program": "generic_arrayaslist.ets"
20701                          },
20702                          "end": {
20703                            "line": 203,
20704                            "column": 44,
20705                            "program": "generic_arrayaslist.ets"
20706                          }
20707                        }
20708                      },
20709                      "decorators": [],
20710                      "loc": {
20711                        "start": {
20712                          "line": 203,
20713                          "column": 22,
20714                          "program": "generic_arrayaslist.ets"
20715                        },
20716                        "end": {
20717                          "line": 203,
20718                          "column": 44,
20719                          "program": "generic_arrayaslist.ets"
20720                        }
20721                      }
20722                    },
20723                    "loc": {
20724                      "start": {
20725                        "line": 203,
20726                        "column": 22,
20727                        "program": "generic_arrayaslist.ets"
20728                      },
20729                      "end": {
20730                        "line": 203,
20731                        "column": 44,
20732                        "program": "generic_arrayaslist.ets"
20733                      }
20734                    }
20735                  },
20736                  {
20737                    "type": "ETSParameterExpression",
20738                    "name": {
20739                      "type": "Identifier",
20740                      "name": "l",
20741                      "typeAnnotation": {
20742                        "type": "ETSPrimitiveType",
20743                        "loc": {
20744                          "start": {
20745                            "line": 203,
20746                            "column": 49,
20747                            "program": "generic_arrayaslist.ets"
20748                          },
20749                          "end": {
20750                            "line": 203,
20751                            "column": 52,
20752                            "program": "generic_arrayaslist.ets"
20753                          }
20754                        }
20755                      },
20756                      "decorators": [],
20757                      "loc": {
20758                        "start": {
20759                          "line": 203,
20760                          "column": 46,
20761                          "program": "generic_arrayaslist.ets"
20762                        },
20763                        "end": {
20764                          "line": 203,
20765                          "column": 52,
20766                          "program": "generic_arrayaslist.ets"
20767                        }
20768                      }
20769                    },
20770                    "loc": {
20771                      "start": {
20772                        "line": 203,
20773                        "column": 46,
20774                        "program": "generic_arrayaslist.ets"
20775                      },
20776                      "end": {
20777                        "line": 203,
20778                        "column": 52,
20779                        "program": "generic_arrayaslist.ets"
20780                      }
20781                    }
20782                  },
20783                  {
20784                    "type": "ETSParameterExpression",
20785                    "name": {
20786                      "type": "Identifier",
20787                      "name": "r",
20788                      "typeAnnotation": {
20789                        "type": "ETSPrimitiveType",
20790                        "loc": {
20791                          "start": {
20792                            "line": 203,
20793                            "column": 57,
20794                            "program": "generic_arrayaslist.ets"
20795                          },
20796                          "end": {
20797                            "line": 203,
20798                            "column": 60,
20799                            "program": "generic_arrayaslist.ets"
20800                          }
20801                        }
20802                      },
20803                      "decorators": [],
20804                      "loc": {
20805                        "start": {
20806                          "line": 203,
20807                          "column": 54,
20808                          "program": "generic_arrayaslist.ets"
20809                        },
20810                        "end": {
20811                          "line": 203,
20812                          "column": 60,
20813                          "program": "generic_arrayaslist.ets"
20814                        }
20815                      }
20816                    },
20817                    "loc": {
20818                      "start": {
20819                        "line": 203,
20820                        "column": 54,
20821                        "program": "generic_arrayaslist.ets"
20822                      },
20823                      "end": {
20824                        "line": 203,
20825                        "column": 60,
20826                        "program": "generic_arrayaslist.ets"
20827                      }
20828                    }
20829                  },
20830                  {
20831                    "type": "ETSParameterExpression",
20832                    "name": {
20833                      "type": "Identifier",
20834                      "name": "comparator",
20835                      "typeAnnotation": {
20836                        "type": "ETSFunctionType",
20837                        "params": [
20838                          {
20839                            "type": "ETSParameterExpression",
20840                            "name": {
20841                              "type": "Identifier",
20842                              "name": "lhs",
20843                              "typeAnnotation": {
20844                                "type": "ETSTypeReference",
20845                                "part": {
20846                                  "type": "ETSTypeReferencePart",
20847                                  "name": {
20848                                    "type": "Identifier",
20849                                    "name": "T",
20850                                    "decorators": [],
20851                                    "loc": {
20852                                      "start": {
20853                                        "line": 203,
20854                                        "column": 80,
20855                                        "program": "generic_arrayaslist.ets"
20856                                      },
20857                                      "end": {
20858                                        "line": 203,
20859                                        "column": 81,
20860                                        "program": "generic_arrayaslist.ets"
20861                                      }
20862                                    }
20863                                  },
20864                                  "loc": {
20865                                    "start": {
20866                                      "line": 203,
20867                                      "column": 80,
20868                                      "program": "generic_arrayaslist.ets"
20869                                    },
20870                                    "end": {
20871                                      "line": 203,
20872                                      "column": 82,
20873                                      "program": "generic_arrayaslist.ets"
20874                                    }
20875                                  }
20876                                },
20877                                "loc": {
20878                                  "start": {
20879                                    "line": 203,
20880                                    "column": 80,
20881                                    "program": "generic_arrayaslist.ets"
20882                                  },
20883                                  "end": {
20884                                    "line": 203,
20885                                    "column": 82,
20886                                    "program": "generic_arrayaslist.ets"
20887                                  }
20888                                }
20889                              },
20890                              "decorators": [],
20891                              "loc": {
20892                                "start": {
20893                                  "line": 203,
20894                                  "column": 75,
20895                                  "program": "generic_arrayaslist.ets"
20896                                },
20897                                "end": {
20898                                  "line": 203,
20899                                  "column": 82,
20900                                  "program": "generic_arrayaslist.ets"
20901                                }
20902                              }
20903                            },
20904                            "loc": {
20905                              "start": {
20906                                "line": 203,
20907                                "column": 75,
20908                                "program": "generic_arrayaslist.ets"
20909                              },
20910                              "end": {
20911                                "line": 203,
20912                                "column": 82,
20913                                "program": "generic_arrayaslist.ets"
20914                              }
20915                            }
20916                          },
20917                          {
20918                            "type": "ETSParameterExpression",
20919                            "name": {
20920                              "type": "Identifier",
20921                              "name": "rhs",
20922                              "typeAnnotation": {
20923                                "type": "ETSTypeReference",
20924                                "part": {
20925                                  "type": "ETSTypeReferencePart",
20926                                  "name": {
20927                                    "type": "Identifier",
20928                                    "name": "T",
20929                                    "decorators": [],
20930                                    "loc": {
20931                                      "start": {
20932                                        "line": 203,
20933                                        "column": 88,
20934                                        "program": "generic_arrayaslist.ets"
20935                                      },
20936                                      "end": {
20937                                        "line": 203,
20938                                        "column": 89,
20939                                        "program": "generic_arrayaslist.ets"
20940                                      }
20941                                    }
20942                                  },
20943                                  "loc": {
20944                                    "start": {
20945                                      "line": 203,
20946                                      "column": 88,
20947                                      "program": "generic_arrayaslist.ets"
20948                                    },
20949                                    "end": {
20950                                      "line": 203,
20951                                      "column": 90,
20952                                      "program": "generic_arrayaslist.ets"
20953                                    }
20954                                  }
20955                                },
20956                                "loc": {
20957                                  "start": {
20958                                    "line": 203,
20959                                    "column": 88,
20960                                    "program": "generic_arrayaslist.ets"
20961                                  },
20962                                  "end": {
20963                                    "line": 203,
20964                                    "column": 90,
20965                                    "program": "generic_arrayaslist.ets"
20966                                  }
20967                                }
20968                              },
20969                              "decorators": [],
20970                              "loc": {
20971                                "start": {
20972                                  "line": 203,
20973                                  "column": 83,
20974                                  "program": "generic_arrayaslist.ets"
20975                                },
20976                                "end": {
20977                                  "line": 203,
20978                                  "column": 90,
20979                                  "program": "generic_arrayaslist.ets"
20980                                }
20981                              }
20982                            },
20983                            "loc": {
20984                              "start": {
20985                                "line": 203,
20986                                "column": 83,
20987                                "program": "generic_arrayaslist.ets"
20988                              },
20989                              "end": {
20990                                "line": 203,
20991                                "column": 90,
20992                                "program": "generic_arrayaslist.ets"
20993                              }
20994                            }
20995                          }
20996                        ],
20997                        "returnType": {
20998                          "type": "ETSPrimitiveType",
20999                          "loc": {
21000                            "start": {
21001                              "line": 203,
21002                              "column": 94,
21003                              "program": "generic_arrayaslist.ets"
21004                            },
21005                            "end": {
21006                              "line": 203,
21007                              "column": 101,
21008                              "program": "generic_arrayaslist.ets"
21009                            }
21010                          }
21011                        },
21012                        "loc": {
21013                          "start": {
21014                            "line": 203,
21015                            "column": 74,
21016                            "program": "generic_arrayaslist.ets"
21017                          },
21018                          "end": {
21019                            "line": 203,
21020                            "column": 101,
21021                            "program": "generic_arrayaslist.ets"
21022                          }
21023                        }
21024                      },
21025                      "decorators": [],
21026                      "loc": {
21027                        "start": {
21028                          "line": 203,
21029                          "column": 62,
21030                          "program": "generic_arrayaslist.ets"
21031                        },
21032                        "end": {
21033                          "line": 203,
21034                          "column": 101,
21035                          "program": "generic_arrayaslist.ets"
21036                        }
21037                      }
21038                    },
21039                    "loc": {
21040                      "start": {
21041                        "line": 203,
21042                        "column": 62,
21043                        "program": "generic_arrayaslist.ets"
21044                      },
21045                      "end": {
21046                        "line": 203,
21047                        "column": 101,
21048                        "program": "generic_arrayaslist.ets"
21049                      }
21050                    }
21051                  }
21052                ],
21053                "returnType": {
21054                  "type": "ETSPrimitiveType",
21055                  "loc": {
21056                    "start": {
21057                      "line": 203,
21058                      "column": 104,
21059                      "program": "generic_arrayaslist.ets"
21060                    },
21061                    "end": {
21062                      "line": 203,
21063                      "column": 108,
21064                      "program": "generic_arrayaslist.ets"
21065                    }
21066                  }
21067                },
21068                "body": {
21069                  "type": "BlockStatement",
21070                  "statements": [],
21071                  "loc": {
21072                    "start": {
21073                      "line": 203,
21074                      "column": 109,
21075                      "program": "generic_arrayaslist.ets"
21076                    },
21077                    "end": {
21078                      "line": 205,
21079                      "column": 6,
21080                      "program": "generic_arrayaslist.ets"
21081                    }
21082                  }
21083                },
21084                "loc": {
21085                  "start": {
21086                    "line": 203,
21087                    "column": 21,
21088                    "program": "generic_arrayaslist.ets"
21089                  },
21090                  "end": {
21091                    "line": 205,
21092                    "column": 6,
21093                    "program": "generic_arrayaslist.ets"
21094                  }
21095                }
21096              },
21097              "loc": {
21098                "start": {
21099                  "line": 203,
21100                  "column": 21,
21101                  "program": "generic_arrayaslist.ets"
21102                },
21103                "end": {
21104                  "line": 205,
21105                  "column": 6,
21106                  "program": "generic_arrayaslist.ets"
21107                }
21108              }
21109            },
21110            "overloads": [],
21111            "decorators": [],
21112            "loc": {
21113              "start": {
21114                "line": 203,
21115                "column": 5,
21116                "program": "generic_arrayaslist.ets"
21117              },
21118              "end": {
21119                "line": 205,
21120                "column": 6,
21121                "program": "generic_arrayaslist.ets"
21122              }
21123            }
21124          },
21125          {
21126            "type": "MethodDefinition",
21127            "key": {
21128              "type": "Identifier",
21129              "name": "partition",
21130              "decorators": [],
21131              "loc": {
21132                "start": {
21133                  "line": 207,
21134                  "column": 20,
21135                  "program": "generic_arrayaslist.ets"
21136                },
21137                "end": {
21138                  "line": 207,
21139                  "column": 29,
21140                  "program": "generic_arrayaslist.ets"
21141                }
21142              }
21143            },
21144            "kind": "method",
21145            "accessibility": "private",
21146            "static": true,
21147            "optional": false,
21148            "computed": false,
21149            "value": {
21150              "type": "FunctionExpression",
21151              "function": {
21152                "type": "ScriptFunction",
21153                "id": {
21154                  "type": "Identifier",
21155                  "name": "partition",
21156                  "decorators": [],
21157                  "loc": {
21158                    "start": {
21159                      "line": 207,
21160                      "column": 20,
21161                      "program": "generic_arrayaslist.ets"
21162                    },
21163                    "end": {
21164                      "line": 207,
21165                      "column": 29,
21166                      "program": "generic_arrayaslist.ets"
21167                    }
21168                  }
21169                },
21170                "generator": false,
21171                "async": false,
21172                "expression": false,
21173                "params": [
21174                  {
21175                    "type": "ETSParameterExpression",
21176                    "name": {
21177                      "type": "Identifier",
21178                      "name": "arr",
21179                      "typeAnnotation": {
21180                        "type": "ETSTypeReference",
21181                        "part": {
21182                          "type": "ETSTypeReferencePart",
21183                          "name": {
21184                            "type": "Identifier",
21185                            "name": "Array",
21186                            "decorators": [],
21187                            "loc": {
21188                              "start": {
21189                                "line": 1,
21190                                "column": 1,
21191                                "program": "generic_arrayaslist.ets"
21192                              },
21193                              "end": {
21194                                "line": 1,
21195                                "column": 3,
21196                                "program": "generic_arrayaslist.ets"
21197                              }
21198                            }
21199                          },
21200                          "typeParams": {
21201                            "type": "TSTypeParameterInstantiation",
21202                            "params": [
21203                              {
21204                                "type": "ETSTypeReference",
21205                                "part": {
21206                                  "type": "ETSTypeReferencePart",
21207                                  "name": {
21208                                    "type": "Identifier",
21209                                    "name": "T",
21210                                    "decorators": [],
21211                                    "loc": {
21212                                      "start": {
21213                                        "line": 1,
21214                                        "column": 3,
21215                                        "program": "generic_arrayaslist.ets"
21216                                      },
21217                                      "end": {
21218                                        "line": 1,
21219                                        "column": 3,
21220                                        "program": "generic_arrayaslist.ets"
21221                                      }
21222                                    }
21223                                  },
21224                                  "loc": {
21225                                    "start": {
21226                                      "line": 1,
21227                                      "column": 3,
21228                                      "program": "generic_arrayaslist.ets"
21229                                    },
21230                                    "end": {
21231                                      "line": 1,
21232                                      "column": 3,
21233                                      "program": "generic_arrayaslist.ets"
21234                                    }
21235                                  }
21236                                },
21237                                "loc": {
21238                                  "start": {
21239                                    "line": 1,
21240                                    "column": 3,
21241                                    "program": "generic_arrayaslist.ets"
21242                                  },
21243                                  "end": {
21244                                    "line": 1,
21245                                    "column": 3,
21246                                    "program": "generic_arrayaslist.ets"
21247                                  }
21248                                }
21249                              }
21250                            ],
21251                            "loc": {
21252                              "start": {
21253                                "line": 1,
21254                                "column": 3,
21255                                "program": "generic_arrayaslist.ets"
21256                              },
21257                              "end": {
21258                                "line": 1,
21259                                "column": 3,
21260                                "program": "generic_arrayaslist.ets"
21261                              }
21262                            }
21263                          },
21264                          "loc": {
21265                            "start": {
21266                              "line": 1,
21267                              "column": 1,
21268                              "program": "generic_arrayaslist.ets"
21269                            },
21270                            "end": {
21271                              "line": 1,
21272                              "column": 3,
21273                              "program": "generic_arrayaslist.ets"
21274                            }
21275                          }
21276                        },
21277                        "loc": {
21278                          "start": {
21279                            "line": 207,
21280                            "column": 36,
21281                            "program": "generic_arrayaslist.ets"
21282                          },
21283                          "end": {
21284                            "line": 207,
21285                            "column": 38,
21286                            "program": "generic_arrayaslist.ets"
21287                          }
21288                        }
21289                      },
21290                      "decorators": [],
21291                      "loc": {
21292                        "start": {
21293                          "line": 207,
21294                          "column": 30,
21295                          "program": "generic_arrayaslist.ets"
21296                        },
21297                        "end": {
21298                          "line": 207,
21299                          "column": 38,
21300                          "program": "generic_arrayaslist.ets"
21301                        }
21302                      }
21303                    },
21304                    "loc": {
21305                      "start": {
21306                        "line": 207,
21307                        "column": 30,
21308                        "program": "generic_arrayaslist.ets"
21309                      },
21310                      "end": {
21311                        "line": 207,
21312                        "column": 38,
21313                        "program": "generic_arrayaslist.ets"
21314                      }
21315                    }
21316                  },
21317                  {
21318                    "type": "ETSParameterExpression",
21319                    "name": {
21320                      "type": "Identifier",
21321                      "name": "l",
21322                      "typeAnnotation": {
21323                        "type": "ETSPrimitiveType",
21324                        "loc": {
21325                          "start": {
21326                            "line": 207,
21327                            "column": 43,
21328                            "program": "generic_arrayaslist.ets"
21329                          },
21330                          "end": {
21331                            "line": 207,
21332                            "column": 46,
21333                            "program": "generic_arrayaslist.ets"
21334                          }
21335                        }
21336                      },
21337                      "decorators": [],
21338                      "loc": {
21339                        "start": {
21340                          "line": 207,
21341                          "column": 40,
21342                          "program": "generic_arrayaslist.ets"
21343                        },
21344                        "end": {
21345                          "line": 207,
21346                          "column": 46,
21347                          "program": "generic_arrayaslist.ets"
21348                        }
21349                      }
21350                    },
21351                    "loc": {
21352                      "start": {
21353                        "line": 207,
21354                        "column": 40,
21355                        "program": "generic_arrayaslist.ets"
21356                      },
21357                      "end": {
21358                        "line": 207,
21359                        "column": 46,
21360                        "program": "generic_arrayaslist.ets"
21361                      }
21362                    }
21363                  },
21364                  {
21365                    "type": "ETSParameterExpression",
21366                    "name": {
21367                      "type": "Identifier",
21368                      "name": "r",
21369                      "typeAnnotation": {
21370                        "type": "ETSPrimitiveType",
21371                        "loc": {
21372                          "start": {
21373                            "line": 207,
21374                            "column": 51,
21375                            "program": "generic_arrayaslist.ets"
21376                          },
21377                          "end": {
21378                            "line": 207,
21379                            "column": 54,
21380                            "program": "generic_arrayaslist.ets"
21381                          }
21382                        }
21383                      },
21384                      "decorators": [],
21385                      "loc": {
21386                        "start": {
21387                          "line": 207,
21388                          "column": 48,
21389                          "program": "generic_arrayaslist.ets"
21390                        },
21391                        "end": {
21392                          "line": 207,
21393                          "column": 54,
21394                          "program": "generic_arrayaslist.ets"
21395                        }
21396                      }
21397                    },
21398                    "loc": {
21399                      "start": {
21400                        "line": 207,
21401                        "column": 48,
21402                        "program": "generic_arrayaslist.ets"
21403                      },
21404                      "end": {
21405                        "line": 207,
21406                        "column": 54,
21407                        "program": "generic_arrayaslist.ets"
21408                      }
21409                    }
21410                  },
21411                  {
21412                    "type": "ETSParameterExpression",
21413                    "name": {
21414                      "type": "Identifier",
21415                      "name": "comparator",
21416                      "typeAnnotation": {
21417                        "type": "ETSFunctionType",
21418                        "params": [
21419                          {
21420                            "type": "ETSParameterExpression",
21421                            "name": {
21422                              "type": "Identifier",
21423                              "name": "lhs",
21424                              "typeAnnotation": {
21425                                "type": "ETSTypeReference",
21426                                "part": {
21427                                  "type": "ETSTypeReferencePart",
21428                                  "name": {
21429                                    "type": "Identifier",
21430                                    "name": "T",
21431                                    "decorators": [],
21432                                    "loc": {
21433                                      "start": {
21434                                        "line": 207,
21435                                        "column": 74,
21436                                        "program": "generic_arrayaslist.ets"
21437                                      },
21438                                      "end": {
21439                                        "line": 207,
21440                                        "column": 75,
21441                                        "program": "generic_arrayaslist.ets"
21442                                      }
21443                                    }
21444                                  },
21445                                  "loc": {
21446                                    "start": {
21447                                      "line": 207,
21448                                      "column": 74,
21449                                      "program": "generic_arrayaslist.ets"
21450                                    },
21451                                    "end": {
21452                                      "line": 207,
21453                                      "column": 76,
21454                                      "program": "generic_arrayaslist.ets"
21455                                    }
21456                                  }
21457                                },
21458                                "loc": {
21459                                  "start": {
21460                                    "line": 207,
21461                                    "column": 74,
21462                                    "program": "generic_arrayaslist.ets"
21463                                  },
21464                                  "end": {
21465                                    "line": 207,
21466                                    "column": 76,
21467                                    "program": "generic_arrayaslist.ets"
21468                                  }
21469                                }
21470                              },
21471                              "decorators": [],
21472                              "loc": {
21473                                "start": {
21474                                  "line": 207,
21475                                  "column": 69,
21476                                  "program": "generic_arrayaslist.ets"
21477                                },
21478                                "end": {
21479                                  "line": 207,
21480                                  "column": 76,
21481                                  "program": "generic_arrayaslist.ets"
21482                                }
21483                              }
21484                            },
21485                            "loc": {
21486                              "start": {
21487                                "line": 207,
21488                                "column": 69,
21489                                "program": "generic_arrayaslist.ets"
21490                              },
21491                              "end": {
21492                                "line": 207,
21493                                "column": 76,
21494                                "program": "generic_arrayaslist.ets"
21495                              }
21496                            }
21497                          },
21498                          {
21499                            "type": "ETSParameterExpression",
21500                            "name": {
21501                              "type": "Identifier",
21502                              "name": "rhs",
21503                              "typeAnnotation": {
21504                                "type": "ETSTypeReference",
21505                                "part": {
21506                                  "type": "ETSTypeReferencePart",
21507                                  "name": {
21508                                    "type": "Identifier",
21509                                    "name": "T",
21510                                    "decorators": [],
21511                                    "loc": {
21512                                      "start": {
21513                                        "line": 207,
21514                                        "column": 82,
21515                                        "program": "generic_arrayaslist.ets"
21516                                      },
21517                                      "end": {
21518                                        "line": 207,
21519                                        "column": 83,
21520                                        "program": "generic_arrayaslist.ets"
21521                                      }
21522                                    }
21523                                  },
21524                                  "loc": {
21525                                    "start": {
21526                                      "line": 207,
21527                                      "column": 82,
21528                                      "program": "generic_arrayaslist.ets"
21529                                    },
21530                                    "end": {
21531                                      "line": 207,
21532                                      "column": 84,
21533                                      "program": "generic_arrayaslist.ets"
21534                                    }
21535                                  }
21536                                },
21537                                "loc": {
21538                                  "start": {
21539                                    "line": 207,
21540                                    "column": 82,
21541                                    "program": "generic_arrayaslist.ets"
21542                                  },
21543                                  "end": {
21544                                    "line": 207,
21545                                    "column": 84,
21546                                    "program": "generic_arrayaslist.ets"
21547                                  }
21548                                }
21549                              },
21550                              "decorators": [],
21551                              "loc": {
21552                                "start": {
21553                                  "line": 207,
21554                                  "column": 77,
21555                                  "program": "generic_arrayaslist.ets"
21556                                },
21557                                "end": {
21558                                  "line": 207,
21559                                  "column": 84,
21560                                  "program": "generic_arrayaslist.ets"
21561                                }
21562                              }
21563                            },
21564                            "loc": {
21565                              "start": {
21566                                "line": 207,
21567                                "column": 77,
21568                                "program": "generic_arrayaslist.ets"
21569                              },
21570                              "end": {
21571                                "line": 207,
21572                                "column": 84,
21573                                "program": "generic_arrayaslist.ets"
21574                              }
21575                            }
21576                          }
21577                        ],
21578                        "returnType": {
21579                          "type": "ETSPrimitiveType",
21580                          "loc": {
21581                            "start": {
21582                              "line": 207,
21583                              "column": 88,
21584                              "program": "generic_arrayaslist.ets"
21585                            },
21586                            "end": {
21587                              "line": 207,
21588                              "column": 95,
21589                              "program": "generic_arrayaslist.ets"
21590                            }
21591                          }
21592                        },
21593                        "loc": {
21594                          "start": {
21595                            "line": 207,
21596                            "column": 68,
21597                            "program": "generic_arrayaslist.ets"
21598                          },
21599                          "end": {
21600                            "line": 207,
21601                            "column": 95,
21602                            "program": "generic_arrayaslist.ets"
21603                          }
21604                        }
21605                      },
21606                      "decorators": [],
21607                      "loc": {
21608                        "start": {
21609                          "line": 207,
21610                          "column": 56,
21611                          "program": "generic_arrayaslist.ets"
21612                        },
21613                        "end": {
21614                          "line": 207,
21615                          "column": 95,
21616                          "program": "generic_arrayaslist.ets"
21617                        }
21618                      }
21619                    },
21620                    "loc": {
21621                      "start": {
21622                        "line": 207,
21623                        "column": 56,
21624                        "program": "generic_arrayaslist.ets"
21625                      },
21626                      "end": {
21627                        "line": 207,
21628                        "column": 95,
21629                        "program": "generic_arrayaslist.ets"
21630                      }
21631                    }
21632                  }
21633                ],
21634                "returnType": {
21635                  "type": "ETSPrimitiveType",
21636                  "loc": {
21637                    "start": {
21638                      "line": 207,
21639                      "column": 98,
21640                      "program": "generic_arrayaslist.ets"
21641                    },
21642                    "end": {
21643                      "line": 207,
21644                      "column": 101,
21645                      "program": "generic_arrayaslist.ets"
21646                    }
21647                  }
21648                },
21649                "body": {
21650                  "type": "BlockStatement",
21651                  "statements": [
21652                    {
21653                      "type": "VariableDeclaration",
21654                      "declarations": [
21655                        {
21656                          "type": "VariableDeclarator",
21657                          "id": {
21658                            "type": "Identifier",
21659                            "name": "last",
21660                            "decorators": [],
21661                            "loc": {
21662                              "start": {
21663                                "line": 208,
21664                                "column": 13,
21665                                "program": "generic_arrayaslist.ets"
21666                              },
21667                              "end": {
21668                                "line": 208,
21669                                "column": 17,
21670                                "program": "generic_arrayaslist.ets"
21671                              }
21672                            }
21673                          },
21674                          "init": {
21675                            "type": "BinaryExpression",
21676                            "operator": "-",
21677                            "left": {
21678                              "type": "Identifier",
21679                              "name": "r",
21680                              "decorators": [],
21681                              "loc": {
21682                                "start": {
21683                                  "line": 208,
21684                                  "column": 20,
21685                                  "program": "generic_arrayaslist.ets"
21686                                },
21687                                "end": {
21688                                  "line": 208,
21689                                  "column": 21,
21690                                  "program": "generic_arrayaslist.ets"
21691                                }
21692                              }
21693                            },
21694                            "right": {
21695                              "type": "NumberLiteral",
21696                              "value": 1,
21697                              "loc": {
21698                                "start": {
21699                                  "line": 208,
21700                                  "column": 24,
21701                                  "program": "generic_arrayaslist.ets"
21702                                },
21703                                "end": {
21704                                  "line": 208,
21705                                  "column": 25,
21706                                  "program": "generic_arrayaslist.ets"
21707                                }
21708                              }
21709                            },
21710                            "loc": {
21711                              "start": {
21712                                "line": 208,
21713                                "column": 20,
21714                                "program": "generic_arrayaslist.ets"
21715                              },
21716                              "end": {
21717                                "line": 208,
21718                                "column": 25,
21719                                "program": "generic_arrayaslist.ets"
21720                              }
21721                            }
21722                          },
21723                          "loc": {
21724                            "start": {
21725                              "line": 208,
21726                              "column": 13,
21727                              "program": "generic_arrayaslist.ets"
21728                            },
21729                            "end": {
21730                              "line": 208,
21731                              "column": 25,
21732                              "program": "generic_arrayaslist.ets"
21733                            }
21734                          }
21735                        }
21736                      ],
21737                      "kind": "let",
21738                      "loc": {
21739                        "start": {
21740                          "line": 208,
21741                          "column": 9,
21742                          "program": "generic_arrayaslist.ets"
21743                        },
21744                        "end": {
21745                          "line": 208,
21746                          "column": 26,
21747                          "program": "generic_arrayaslist.ets"
21748                        }
21749                      }
21750                    },
21751                    {
21752                      "type": "VariableDeclaration",
21753                      "declarations": [
21754                        {
21755                          "type": "VariableDeclarator",
21756                          "id": {
21757                            "type": "Identifier",
21758                            "name": "pivot",
21759                            "decorators": [],
21760                            "loc": {
21761                              "start": {
21762                                "line": 209,
21763                                "column": 13,
21764                                "program": "generic_arrayaslist.ets"
21765                              },
21766                              "end": {
21767                                "line": 209,
21768                                "column": 18,
21769                                "program": "generic_arrayaslist.ets"
21770                              }
21771                            }
21772                          },
21773                          "init": {
21774                            "type": "MemberExpression",
21775                            "object": {
21776                              "type": "Identifier",
21777                              "name": "arr",
21778                              "decorators": [],
21779                              "loc": {
21780                                "start": {
21781                                  "line": 209,
21782                                  "column": 21,
21783                                  "program": "generic_arrayaslist.ets"
21784                                },
21785                                "end": {
21786                                  "line": 209,
21787                                  "column": 24,
21788                                  "program": "generic_arrayaslist.ets"
21789                                }
21790                              }
21791                            },
21792                            "property": {
21793                              "type": "Identifier",
21794                              "name": "last",
21795                              "decorators": [],
21796                              "loc": {
21797                                "start": {
21798                                  "line": 209,
21799                                  "column": 25,
21800                                  "program": "generic_arrayaslist.ets"
21801                                },
21802                                "end": {
21803                                  "line": 209,
21804                                  "column": 29,
21805                                  "program": "generic_arrayaslist.ets"
21806                                }
21807                              }
21808                            },
21809                            "computed": true,
21810                            "optional": false,
21811                            "loc": {
21812                              "start": {
21813                                "line": 209,
21814                                "column": 21,
21815                                "program": "generic_arrayaslist.ets"
21816                              },
21817                              "end": {
21818                                "line": 209,
21819                                "column": 30,
21820                                "program": "generic_arrayaslist.ets"
21821                              }
21822                            }
21823                          },
21824                          "loc": {
21825                            "start": {
21826                              "line": 209,
21827                              "column": 13,
21828                              "program": "generic_arrayaslist.ets"
21829                            },
21830                            "end": {
21831                              "line": 209,
21832                              "column": 30,
21833                              "program": "generic_arrayaslist.ets"
21834                            }
21835                          }
21836                        }
21837                      ],
21838                      "kind": "let",
21839                      "loc": {
21840                        "start": {
21841                          "line": 209,
21842                          "column": 9,
21843                          "program": "generic_arrayaslist.ets"
21844                        },
21845                        "end": {
21846                          "line": 209,
21847                          "column": 31,
21848                          "program": "generic_arrayaslist.ets"
21849                        }
21850                      }
21851                    },
21852                    {
21853                      "type": "VariableDeclaration",
21854                      "declarations": [
21855                        {
21856                          "type": "VariableDeclarator",
21857                          "id": {
21858                            "type": "Identifier",
21859                            "name": "lessInd",
21860                            "decorators": [],
21861                            "loc": {
21862                              "start": {
21863                                "line": 210,
21864                                "column": 13,
21865                                "program": "generic_arrayaslist.ets"
21866                              },
21867                              "end": {
21868                                "line": 210,
21869                                "column": 20,
21870                                "program": "generic_arrayaslist.ets"
21871                              }
21872                            }
21873                          },
21874                          "init": {
21875                            "type": "BinaryExpression",
21876                            "operator": "-",
21877                            "left": {
21878                              "type": "Identifier",
21879                              "name": "l",
21880                              "decorators": [],
21881                              "loc": {
21882                                "start": {
21883                                  "line": 210,
21884                                  "column": 23,
21885                                  "program": "generic_arrayaslist.ets"
21886                                },
21887                                "end": {
21888                                  "line": 210,
21889                                  "column": 24,
21890                                  "program": "generic_arrayaslist.ets"
21891                                }
21892                              }
21893                            },
21894                            "right": {
21895                              "type": "NumberLiteral",
21896                              "value": 1,
21897                              "loc": {
21898                                "start": {
21899                                  "line": 210,
21900                                  "column": 27,
21901                                  "program": "generic_arrayaslist.ets"
21902                                },
21903                                "end": {
21904                                  "line": 210,
21905                                  "column": 28,
21906                                  "program": "generic_arrayaslist.ets"
21907                                }
21908                              }
21909                            },
21910                            "loc": {
21911                              "start": {
21912                                "line": 210,
21913                                "column": 23,
21914                                "program": "generic_arrayaslist.ets"
21915                              },
21916                              "end": {
21917                                "line": 210,
21918                                "column": 28,
21919                                "program": "generic_arrayaslist.ets"
21920                              }
21921                            }
21922                          },
21923                          "loc": {
21924                            "start": {
21925                              "line": 210,
21926                              "column": 13,
21927                              "program": "generic_arrayaslist.ets"
21928                            },
21929                            "end": {
21930                              "line": 210,
21931                              "column": 28,
21932                              "program": "generic_arrayaslist.ets"
21933                            }
21934                          }
21935                        }
21936                      ],
21937                      "kind": "let",
21938                      "loc": {
21939                        "start": {
21940                          "line": 210,
21941                          "column": 9,
21942                          "program": "generic_arrayaslist.ets"
21943                        },
21944                        "end": {
21945                          "line": 210,
21946                          "column": 29,
21947                          "program": "generic_arrayaslist.ets"
21948                        }
21949                      }
21950                    },
21951                    {
21952                      "type": "ForUpdateStatement",
21953                      "init": {
21954                        "type": "VariableDeclaration",
21955                        "declarations": [
21956                          {
21957                            "type": "VariableDeclarator",
21958                            "id": {
21959                              "type": "Identifier",
21960                              "name": "i",
21961                              "decorators": [],
21962                              "loc": {
21963                                "start": {
21964                                  "line": 211,
21965                                  "column": 18,
21966                                  "program": "generic_arrayaslist.ets"
21967                                },
21968                                "end": {
21969                                  "line": 211,
21970                                  "column": 19,
21971                                  "program": "generic_arrayaslist.ets"
21972                                }
21973                              }
21974                            },
21975                            "init": {
21976                              "type": "Identifier",
21977                              "name": "l",
21978                              "decorators": [],
21979                              "loc": {
21980                                "start": {
21981                                  "line": 211,
21982                                  "column": 22,
21983                                  "program": "generic_arrayaslist.ets"
21984                                },
21985                                "end": {
21986                                  "line": 211,
21987                                  "column": 23,
21988                                  "program": "generic_arrayaslist.ets"
21989                                }
21990                              }
21991                            },
21992                            "loc": {
21993                              "start": {
21994                                "line": 211,
21995                                "column": 18,
21996                                "program": "generic_arrayaslist.ets"
21997                              },
21998                              "end": {
21999                                "line": 211,
22000                                "column": 23,
22001                                "program": "generic_arrayaslist.ets"
22002                              }
22003                            }
22004                          }
22005                        ],
22006                        "kind": "let",
22007                        "loc": {
22008                          "start": {
22009                            "line": 211,
22010                            "column": 14,
22011                            "program": "generic_arrayaslist.ets"
22012                          },
22013                          "end": {
22014                            "line": 211,
22015                            "column": 23,
22016                            "program": "generic_arrayaslist.ets"
22017                          }
22018                        }
22019                      },
22020                      "test": {
22021                        "type": "BinaryExpression",
22022                        "operator": "<",
22023                        "left": {
22024                          "type": "Identifier",
22025                          "name": "i",
22026                          "decorators": [],
22027                          "loc": {
22028                            "start": {
22029                              "line": 211,
22030                              "column": 25,
22031                              "program": "generic_arrayaslist.ets"
22032                            },
22033                            "end": {
22034                              "line": 211,
22035                              "column": 26,
22036                              "program": "generic_arrayaslist.ets"
22037                            }
22038                          }
22039                        },
22040                        "right": {
22041                          "type": "Identifier",
22042                          "name": "last",
22043                          "decorators": [],
22044                          "loc": {
22045                            "start": {
22046                              "line": 211,
22047                              "column": 29,
22048                              "program": "generic_arrayaslist.ets"
22049                            },
22050                            "end": {
22051                              "line": 211,
22052                              "column": 33,
22053                              "program": "generic_arrayaslist.ets"
22054                            }
22055                          }
22056                        },
22057                        "loc": {
22058                          "start": {
22059                            "line": 211,
22060                            "column": 25,
22061                            "program": "generic_arrayaslist.ets"
22062                          },
22063                          "end": {
22064                            "line": 211,
22065                            "column": 33,
22066                            "program": "generic_arrayaslist.ets"
22067                          }
22068                        }
22069                      },
22070                      "update": {
22071                        "type": "UpdateExpression",
22072                        "operator": "++",
22073                        "prefix": true,
22074                        "argument": {
22075                          "type": "Identifier",
22076                          "name": "i",
22077                          "decorators": [],
22078                          "loc": {
22079                            "start": {
22080                              "line": 211,
22081                              "column": 37,
22082                              "program": "generic_arrayaslist.ets"
22083                            },
22084                            "end": {
22085                              "line": 211,
22086                              "column": 38,
22087                              "program": "generic_arrayaslist.ets"
22088                            }
22089                          }
22090                        },
22091                        "loc": {
22092                          "start": {
22093                            "line": 211,
22094                            "column": 35,
22095                            "program": "generic_arrayaslist.ets"
22096                          },
22097                          "end": {
22098                            "line": 211,
22099                            "column": 38,
22100                            "program": "generic_arrayaslist.ets"
22101                          }
22102                        }
22103                      },
22104                      "body": {
22105                        "type": "BlockStatement",
22106                        "statements": [
22107                          {
22108                            "type": "IfStatement",
22109                            "test": {
22110                              "type": "CallExpression",
22111                              "callee": {
22112                                "type": "Identifier",
22113                                "name": "comparator",
22114                                "decorators": [],
22115                                "loc": {
22116                                  "start": {
22117                                    "line": 212,
22118                                    "column": 17,
22119                                    "program": "generic_arrayaslist.ets"
22120                                  },
22121                                  "end": {
22122                                    "line": 212,
22123                                    "column": 27,
22124                                    "program": "generic_arrayaslist.ets"
22125                                  }
22126                                }
22127                              },
22128                              "arguments": [
22129                                {
22130                                  "type": "MemberExpression",
22131                                  "object": {
22132                                    "type": "Identifier",
22133                                    "name": "arr",
22134                                    "decorators": [],
22135                                    "loc": {
22136                                      "start": {
22137                                        "line": 212,
22138                                        "column": 28,
22139                                        "program": "generic_arrayaslist.ets"
22140                                      },
22141                                      "end": {
22142                                        "line": 212,
22143                                        "column": 31,
22144                                        "program": "generic_arrayaslist.ets"
22145                                      }
22146                                    }
22147                                  },
22148                                  "property": {
22149                                    "type": "Identifier",
22150                                    "name": "i",
22151                                    "decorators": [],
22152                                    "loc": {
22153                                      "start": {
22154                                        "line": 212,
22155                                        "column": 32,
22156                                        "program": "generic_arrayaslist.ets"
22157                                      },
22158                                      "end": {
22159                                        "line": 212,
22160                                        "column": 33,
22161                                        "program": "generic_arrayaslist.ets"
22162                                      }
22163                                    }
22164                                  },
22165                                  "computed": true,
22166                                  "optional": false,
22167                                  "loc": {
22168                                    "start": {
22169                                      "line": 212,
22170                                      "column": 28,
22171                                      "program": "generic_arrayaslist.ets"
22172                                    },
22173                                    "end": {
22174                                      "line": 212,
22175                                      "column": 34,
22176                                      "program": "generic_arrayaslist.ets"
22177                                    }
22178                                  }
22179                                },
22180                                {
22181                                  "type": "Identifier",
22182                                  "name": "pivot",
22183                                  "decorators": [],
22184                                  "loc": {
22185                                    "start": {
22186                                      "line": 212,
22187                                      "column": 36,
22188                                      "program": "generic_arrayaslist.ets"
22189                                    },
22190                                    "end": {
22191                                      "line": 212,
22192                                      "column": 41,
22193                                      "program": "generic_arrayaslist.ets"
22194                                    }
22195                                  }
22196                                }
22197                              ],
22198                              "optional": false,
22199                              "loc": {
22200                                "start": {
22201                                  "line": 212,
22202                                  "column": 17,
22203                                  "program": "generic_arrayaslist.ets"
22204                                },
22205                                "end": {
22206                                  "line": 212,
22207                                  "column": 42,
22208                                  "program": "generic_arrayaslist.ets"
22209                                }
22210                              }
22211                            },
22212                            "consequent": {
22213                              "type": "BlockStatement",
22214                              "statements": [
22215                                {
22216                                  "type": "ExpressionStatement",
22217                                  "expression": {
22218                                    "type": "UpdateExpression",
22219                                    "operator": "++",
22220                                    "prefix": true,
22221                                    "argument": {
22222                                      "type": "Identifier",
22223                                      "name": "lessInd",
22224                                      "decorators": [],
22225                                      "loc": {
22226                                        "start": {
22227                                          "line": 213,
22228                                          "column": 19,
22229                                          "program": "generic_arrayaslist.ets"
22230                                        },
22231                                        "end": {
22232                                          "line": 213,
22233                                          "column": 26,
22234                                          "program": "generic_arrayaslist.ets"
22235                                        }
22236                                      }
22237                                    },
22238                                    "loc": {
22239                                      "start": {
22240                                        "line": 213,
22241                                        "column": 17,
22242                                        "program": "generic_arrayaslist.ets"
22243                                      },
22244                                      "end": {
22245                                        "line": 213,
22246                                        "column": 26,
22247                                        "program": "generic_arrayaslist.ets"
22248                                      }
22249                                    }
22250                                  },
22251                                  "loc": {
22252                                    "start": {
22253                                      "line": 213,
22254                                      "column": 17,
22255                                      "program": "generic_arrayaslist.ets"
22256                                    },
22257                                    "end": {
22258                                      "line": 213,
22259                                      "column": 27,
22260                                      "program": "generic_arrayaslist.ets"
22261                                    }
22262                                  }
22263                                },
22264                                {
22265                                  "type": "VariableDeclaration",
22266                                  "declarations": [
22267                                    {
22268                                      "type": "VariableDeclarator",
22269                                      "id": {
22270                                        "type": "Identifier",
22271                                        "name": "tmp",
22272                                        "decorators": [],
22273                                        "loc": {
22274                                          "start": {
22275                                            "line": 214,
22276                                            "column": 21,
22277                                            "program": "generic_arrayaslist.ets"
22278                                          },
22279                                          "end": {
22280                                            "line": 214,
22281                                            "column": 24,
22282                                            "program": "generic_arrayaslist.ets"
22283                                          }
22284                                        }
22285                                      },
22286                                      "init": {
22287                                        "type": "MemberExpression",
22288                                        "object": {
22289                                          "type": "Identifier",
22290                                          "name": "arr",
22291                                          "decorators": [],
22292                                          "loc": {
22293                                            "start": {
22294                                              "line": 214,
22295                                              "column": 27,
22296                                              "program": "generic_arrayaslist.ets"
22297                                            },
22298                                            "end": {
22299                                              "line": 214,
22300                                              "column": 30,
22301                                              "program": "generic_arrayaslist.ets"
22302                                            }
22303                                          }
22304                                        },
22305                                        "property": {
22306                                          "type": "Identifier",
22307                                          "name": "i",
22308                                          "decorators": [],
22309                                          "loc": {
22310                                            "start": {
22311                                              "line": 214,
22312                                              "column": 31,
22313                                              "program": "generic_arrayaslist.ets"
22314                                            },
22315                                            "end": {
22316                                              "line": 214,
22317                                              "column": 32,
22318                                              "program": "generic_arrayaslist.ets"
22319                                            }
22320                                          }
22321                                        },
22322                                        "computed": true,
22323                                        "optional": false,
22324                                        "loc": {
22325                                          "start": {
22326                                            "line": 214,
22327                                            "column": 27,
22328                                            "program": "generic_arrayaslist.ets"
22329                                          },
22330                                          "end": {
22331                                            "line": 214,
22332                                            "column": 33,
22333                                            "program": "generic_arrayaslist.ets"
22334                                          }
22335                                        }
22336                                      },
22337                                      "loc": {
22338                                        "start": {
22339                                          "line": 214,
22340                                          "column": 21,
22341                                          "program": "generic_arrayaslist.ets"
22342                                        },
22343                                        "end": {
22344                                          "line": 214,
22345                                          "column": 33,
22346                                          "program": "generic_arrayaslist.ets"
22347                                        }
22348                                      }
22349                                    }
22350                                  ],
22351                                  "kind": "let",
22352                                  "loc": {
22353                                    "start": {
22354                                      "line": 214,
22355                                      "column": 17,
22356                                      "program": "generic_arrayaslist.ets"
22357                                    },
22358                                    "end": {
22359                                      "line": 214,
22360                                      "column": 34,
22361                                      "program": "generic_arrayaslist.ets"
22362                                    }
22363                                  }
22364                                },
22365                                {
22366                                  "type": "ExpressionStatement",
22367                                  "expression": {
22368                                    "type": "AssignmentExpression",
22369                                    "operator": "=",
22370                                    "left": {
22371                                      "type": "MemberExpression",
22372                                      "object": {
22373                                        "type": "Identifier",
22374                                        "name": "arr",
22375                                        "decorators": [],
22376                                        "loc": {
22377                                          "start": {
22378                                            "line": 215,
22379                                            "column": 17,
22380                                            "program": "generic_arrayaslist.ets"
22381                                          },
22382                                          "end": {
22383                                            "line": 215,
22384                                            "column": 20,
22385                                            "program": "generic_arrayaslist.ets"
22386                                          }
22387                                        }
22388                                      },
22389                                      "property": {
22390                                        "type": "Identifier",
22391                                        "name": "i",
22392                                        "decorators": [],
22393                                        "loc": {
22394                                          "start": {
22395                                            "line": 215,
22396                                            "column": 21,
22397                                            "program": "generic_arrayaslist.ets"
22398                                          },
22399                                          "end": {
22400                                            "line": 215,
22401                                            "column": 22,
22402                                            "program": "generic_arrayaslist.ets"
22403                                          }
22404                                        }
22405                                      },
22406                                      "computed": true,
22407                                      "optional": false,
22408                                      "loc": {
22409                                        "start": {
22410                                          "line": 215,
22411                                          "column": 17,
22412                                          "program": "generic_arrayaslist.ets"
22413                                        },
22414                                        "end": {
22415                                          "line": 215,
22416                                          "column": 23,
22417                                          "program": "generic_arrayaslist.ets"
22418                                        }
22419                                      }
22420                                    },
22421                                    "right": {
22422                                      "type": "MemberExpression",
22423                                      "object": {
22424                                        "type": "Identifier",
22425                                        "name": "arr",
22426                                        "decorators": [],
22427                                        "loc": {
22428                                          "start": {
22429                                            "line": 215,
22430                                            "column": 26,
22431                                            "program": "generic_arrayaslist.ets"
22432                                          },
22433                                          "end": {
22434                                            "line": 215,
22435                                            "column": 29,
22436                                            "program": "generic_arrayaslist.ets"
22437                                          }
22438                                        }
22439                                      },
22440                                      "property": {
22441                                        "type": "Identifier",
22442                                        "name": "lessInd",
22443                                        "decorators": [],
22444                                        "loc": {
22445                                          "start": {
22446                                            "line": 215,
22447                                            "column": 30,
22448                                            "program": "generic_arrayaslist.ets"
22449                                          },
22450                                          "end": {
22451                                            "line": 215,
22452                                            "column": 37,
22453                                            "program": "generic_arrayaslist.ets"
22454                                          }
22455                                        }
22456                                      },
22457                                      "computed": true,
22458                                      "optional": false,
22459                                      "loc": {
22460                                        "start": {
22461                                          "line": 215,
22462                                          "column": 26,
22463                                          "program": "generic_arrayaslist.ets"
22464                                        },
22465                                        "end": {
22466                                          "line": 215,
22467                                          "column": 38,
22468                                          "program": "generic_arrayaslist.ets"
22469                                        }
22470                                      }
22471                                    },
22472                                    "loc": {
22473                                      "start": {
22474                                        "line": 215,
22475                                        "column": 17,
22476                                        "program": "generic_arrayaslist.ets"
22477                                      },
22478                                      "end": {
22479                                        "line": 215,
22480                                        "column": 38,
22481                                        "program": "generic_arrayaslist.ets"
22482                                      }
22483                                    }
22484                                  },
22485                                  "loc": {
22486                                    "start": {
22487                                      "line": 215,
22488                                      "column": 17,
22489                                      "program": "generic_arrayaslist.ets"
22490                                    },
22491                                    "end": {
22492                                      "line": 215,
22493                                      "column": 39,
22494                                      "program": "generic_arrayaslist.ets"
22495                                    }
22496                                  }
22497                                },
22498                                {
22499                                  "type": "ExpressionStatement",
22500                                  "expression": {
22501                                    "type": "AssignmentExpression",
22502                                    "operator": "=",
22503                                    "left": {
22504                                      "type": "MemberExpression",
22505                                      "object": {
22506                                        "type": "Identifier",
22507                                        "name": "arr",
22508                                        "decorators": [],
22509                                        "loc": {
22510                                          "start": {
22511                                            "line": 216,
22512                                            "column": 17,
22513                                            "program": "generic_arrayaslist.ets"
22514                                          },
22515                                          "end": {
22516                                            "line": 216,
22517                                            "column": 20,
22518                                            "program": "generic_arrayaslist.ets"
22519                                          }
22520                                        }
22521                                      },
22522                                      "property": {
22523                                        "type": "Identifier",
22524                                        "name": "lessInd",
22525                                        "decorators": [],
22526                                        "loc": {
22527                                          "start": {
22528                                            "line": 216,
22529                                            "column": 21,
22530                                            "program": "generic_arrayaslist.ets"
22531                                          },
22532                                          "end": {
22533                                            "line": 216,
22534                                            "column": 28,
22535                                            "program": "generic_arrayaslist.ets"
22536                                          }
22537                                        }
22538                                      },
22539                                      "computed": true,
22540                                      "optional": false,
22541                                      "loc": {
22542                                        "start": {
22543                                          "line": 216,
22544                                          "column": 17,
22545                                          "program": "generic_arrayaslist.ets"
22546                                        },
22547                                        "end": {
22548                                          "line": 216,
22549                                          "column": 29,
22550                                          "program": "generic_arrayaslist.ets"
22551                                        }
22552                                      }
22553                                    },
22554                                    "right": {
22555                                      "type": "Identifier",
22556                                      "name": "tmp",
22557                                      "decorators": [],
22558                                      "loc": {
22559                                        "start": {
22560                                          "line": 216,
22561                                          "column": 32,
22562                                          "program": "generic_arrayaslist.ets"
22563                                        },
22564                                        "end": {
22565                                          "line": 216,
22566                                          "column": 35,
22567                                          "program": "generic_arrayaslist.ets"
22568                                        }
22569                                      }
22570                                    },
22571                                    "loc": {
22572                                      "start": {
22573                                        "line": 216,
22574                                        "column": 17,
22575                                        "program": "generic_arrayaslist.ets"
22576                                      },
22577                                      "end": {
22578                                        "line": 216,
22579                                        "column": 35,
22580                                        "program": "generic_arrayaslist.ets"
22581                                      }
22582                                    }
22583                                  },
22584                                  "loc": {
22585                                    "start": {
22586                                      "line": 216,
22587                                      "column": 17,
22588                                      "program": "generic_arrayaslist.ets"
22589                                    },
22590                                    "end": {
22591                                      "line": 216,
22592                                      "column": 36,
22593                                      "program": "generic_arrayaslist.ets"
22594                                    }
22595                                  }
22596                                }
22597                              ],
22598                              "loc": {
22599                                "start": {
22600                                  "line": 212,
22601                                  "column": 44,
22602                                  "program": "generic_arrayaslist.ets"
22603                                },
22604                                "end": {
22605                                  "line": 217,
22606                                  "column": 14,
22607                                  "program": "generic_arrayaslist.ets"
22608                                }
22609                              }
22610                            },
22611                            "alternate": null,
22612                            "loc": {
22613                              "start": {
22614                                "line": 212,
22615                                "column": 13,
22616                                "program": "generic_arrayaslist.ets"
22617                              },
22618                              "end": {
22619                                "line": 217,
22620                                "column": 14,
22621                                "program": "generic_arrayaslist.ets"
22622                              }
22623                            }
22624                          }
22625                        ],
22626                        "loc": {
22627                          "start": {
22628                            "line": 211,
22629                            "column": 40,
22630                            "program": "generic_arrayaslist.ets"
22631                          },
22632                          "end": {
22633                            "line": 218,
22634                            "column": 10,
22635                            "program": "generic_arrayaslist.ets"
22636                          }
22637                        }
22638                      },
22639                      "loc": {
22640                        "start": {
22641                          "line": 211,
22642                          "column": 9,
22643                          "program": "generic_arrayaslist.ets"
22644                        },
22645                        "end": {
22646                          "line": 218,
22647                          "column": 10,
22648                          "program": "generic_arrayaslist.ets"
22649                        }
22650                      }
22651                    },
22652                    {
22653                      "type": "VariableDeclaration",
22654                      "declarations": [
22655                        {
22656                          "type": "VariableDeclarator",
22657                          "id": {
22658                            "type": "Identifier",
22659                            "name": "tmp",
22660                            "decorators": [],
22661                            "loc": {
22662                              "start": {
22663                                "line": 219,
22664                                "column": 13,
22665                                "program": "generic_arrayaslist.ets"
22666                              },
22667                              "end": {
22668                                "line": 219,
22669                                "column": 16,
22670                                "program": "generic_arrayaslist.ets"
22671                              }
22672                            }
22673                          },
22674                          "init": {
22675                            "type": "MemberExpression",
22676                            "object": {
22677                              "type": "Identifier",
22678                              "name": "arr",
22679                              "decorators": [],
22680                              "loc": {
22681                                "start": {
22682                                  "line": 219,
22683                                  "column": 19,
22684                                  "program": "generic_arrayaslist.ets"
22685                                },
22686                                "end": {
22687                                  "line": 219,
22688                                  "column": 22,
22689                                  "program": "generic_arrayaslist.ets"
22690                                }
22691                              }
22692                            },
22693                            "property": {
22694                              "type": "BinaryExpression",
22695                              "operator": "+",
22696                              "left": {
22697                                "type": "Identifier",
22698                                "name": "lessInd",
22699                                "decorators": [],
22700                                "loc": {
22701                                  "start": {
22702                                    "line": 219,
22703                                    "column": 23,
22704                                    "program": "generic_arrayaslist.ets"
22705                                  },
22706                                  "end": {
22707                                    "line": 219,
22708                                    "column": 30,
22709                                    "program": "generic_arrayaslist.ets"
22710                                  }
22711                                }
22712                              },
22713                              "right": {
22714                                "type": "NumberLiteral",
22715                                "value": 1,
22716                                "loc": {
22717                                  "start": {
22718                                    "line": 219,
22719                                    "column": 33,
22720                                    "program": "generic_arrayaslist.ets"
22721                                  },
22722                                  "end": {
22723                                    "line": 219,
22724                                    "column": 34,
22725                                    "program": "generic_arrayaslist.ets"
22726                                  }
22727                                }
22728                              },
22729                              "loc": {
22730                                "start": {
22731                                  "line": 219,
22732                                  "column": 23,
22733                                  "program": "generic_arrayaslist.ets"
22734                                },
22735                                "end": {
22736                                  "line": 219,
22737                                  "column": 34,
22738                                  "program": "generic_arrayaslist.ets"
22739                                }
22740                              }
22741                            },
22742                            "computed": true,
22743                            "optional": false,
22744                            "loc": {
22745                              "start": {
22746                                "line": 219,
22747                                "column": 19,
22748                                "program": "generic_arrayaslist.ets"
22749                              },
22750                              "end": {
22751                                "line": 219,
22752                                "column": 35,
22753                                "program": "generic_arrayaslist.ets"
22754                              }
22755                            }
22756                          },
22757                          "loc": {
22758                            "start": {
22759                              "line": 219,
22760                              "column": 13,
22761                              "program": "generic_arrayaslist.ets"
22762                            },
22763                            "end": {
22764                              "line": 219,
22765                              "column": 35,
22766                              "program": "generic_arrayaslist.ets"
22767                            }
22768                          }
22769                        }
22770                      ],
22771                      "kind": "let",
22772                      "loc": {
22773                        "start": {
22774                          "line": 219,
22775                          "column": 9,
22776                          "program": "generic_arrayaslist.ets"
22777                        },
22778                        "end": {
22779                          "line": 219,
22780                          "column": 36,
22781                          "program": "generic_arrayaslist.ets"
22782                        }
22783                      }
22784                    },
22785                    {
22786                      "type": "ExpressionStatement",
22787                      "expression": {
22788                        "type": "AssignmentExpression",
22789                        "operator": "=",
22790                        "left": {
22791                          "type": "MemberExpression",
22792                          "object": {
22793                            "type": "Identifier",
22794                            "name": "arr",
22795                            "decorators": [],
22796                            "loc": {
22797                              "start": {
22798                                "line": 220,
22799                                "column": 9,
22800                                "program": "generic_arrayaslist.ets"
22801                              },
22802                              "end": {
22803                                "line": 220,
22804                                "column": 12,
22805                                "program": "generic_arrayaslist.ets"
22806                              }
22807                            }
22808                          },
22809                          "property": {
22810                            "type": "BinaryExpression",
22811                            "operator": "+",
22812                            "left": {
22813                              "type": "Identifier",
22814                              "name": "lessInd",
22815                              "decorators": [],
22816                              "loc": {
22817                                "start": {
22818                                  "line": 220,
22819                                  "column": 13,
22820                                  "program": "generic_arrayaslist.ets"
22821                                },
22822                                "end": {
22823                                  "line": 220,
22824                                  "column": 20,
22825                                  "program": "generic_arrayaslist.ets"
22826                                }
22827                              }
22828                            },
22829                            "right": {
22830                              "type": "NumberLiteral",
22831                              "value": 1,
22832                              "loc": {
22833                                "start": {
22834                                  "line": 220,
22835                                  "column": 23,
22836                                  "program": "generic_arrayaslist.ets"
22837                                },
22838                                "end": {
22839                                  "line": 220,
22840                                  "column": 24,
22841                                  "program": "generic_arrayaslist.ets"
22842                                }
22843                              }
22844                            },
22845                            "loc": {
22846                              "start": {
22847                                "line": 220,
22848                                "column": 13,
22849                                "program": "generic_arrayaslist.ets"
22850                              },
22851                              "end": {
22852                                "line": 220,
22853                                "column": 24,
22854                                "program": "generic_arrayaslist.ets"
22855                              }
22856                            }
22857                          },
22858                          "computed": true,
22859                          "optional": false,
22860                          "loc": {
22861                            "start": {
22862                              "line": 220,
22863                              "column": 9,
22864                              "program": "generic_arrayaslist.ets"
22865                            },
22866                            "end": {
22867                              "line": 220,
22868                              "column": 25,
22869                              "program": "generic_arrayaslist.ets"
22870                            }
22871                          }
22872                        },
22873                        "right": {
22874                          "type": "MemberExpression",
22875                          "object": {
22876                            "type": "Identifier",
22877                            "name": "arr",
22878                            "decorators": [],
22879                            "loc": {
22880                              "start": {
22881                                "line": 220,
22882                                "column": 28,
22883                                "program": "generic_arrayaslist.ets"
22884                              },
22885                              "end": {
22886                                "line": 220,
22887                                "column": 31,
22888                                "program": "generic_arrayaslist.ets"
22889                              }
22890                            }
22891                          },
22892                          "property": {
22893                            "type": "Identifier",
22894                            "name": "last",
22895                            "decorators": [],
22896                            "loc": {
22897                              "start": {
22898                                "line": 220,
22899                                "column": 32,
22900                                "program": "generic_arrayaslist.ets"
22901                              },
22902                              "end": {
22903                                "line": 220,
22904                                "column": 36,
22905                                "program": "generic_arrayaslist.ets"
22906                              }
22907                            }
22908                          },
22909                          "computed": true,
22910                          "optional": false,
22911                          "loc": {
22912                            "start": {
22913                              "line": 220,
22914                              "column": 28,
22915                              "program": "generic_arrayaslist.ets"
22916                            },
22917                            "end": {
22918                              "line": 220,
22919                              "column": 37,
22920                              "program": "generic_arrayaslist.ets"
22921                            }
22922                          }
22923                        },
22924                        "loc": {
22925                          "start": {
22926                            "line": 220,
22927                            "column": 9,
22928                            "program": "generic_arrayaslist.ets"
22929                          },
22930                          "end": {
22931                            "line": 220,
22932                            "column": 37,
22933                            "program": "generic_arrayaslist.ets"
22934                          }
22935                        }
22936                      },
22937                      "loc": {
22938                        "start": {
22939                          "line": 220,
22940                          "column": 9,
22941                          "program": "generic_arrayaslist.ets"
22942                        },
22943                        "end": {
22944                          "line": 220,
22945                          "column": 38,
22946                          "program": "generic_arrayaslist.ets"
22947                        }
22948                      }
22949                    },
22950                    {
22951                      "type": "ExpressionStatement",
22952                      "expression": {
22953                        "type": "AssignmentExpression",
22954                        "operator": "=",
22955                        "left": {
22956                          "type": "MemberExpression",
22957                          "object": {
22958                            "type": "Identifier",
22959                            "name": "arr",
22960                            "decorators": [],
22961                            "loc": {
22962                              "start": {
22963                                "line": 221,
22964                                "column": 9,
22965                                "program": "generic_arrayaslist.ets"
22966                              },
22967                              "end": {
22968                                "line": 221,
22969                                "column": 12,
22970                                "program": "generic_arrayaslist.ets"
22971                              }
22972                            }
22973                          },
22974                          "property": {
22975                            "type": "Identifier",
22976                            "name": "last",
22977                            "decorators": [],
22978                            "loc": {
22979                              "start": {
22980                                "line": 221,
22981                                "column": 13,
22982                                "program": "generic_arrayaslist.ets"
22983                              },
22984                              "end": {
22985                                "line": 221,
22986                                "column": 17,
22987                                "program": "generic_arrayaslist.ets"
22988                              }
22989                            }
22990                          },
22991                          "computed": true,
22992                          "optional": false,
22993                          "loc": {
22994                            "start": {
22995                              "line": 221,
22996                              "column": 9,
22997                              "program": "generic_arrayaslist.ets"
22998                            },
22999                            "end": {
23000                              "line": 221,
23001                              "column": 18,
23002                              "program": "generic_arrayaslist.ets"
23003                            }
23004                          }
23005                        },
23006                        "right": {
23007                          "type": "Identifier",
23008                          "name": "tmp",
23009                          "decorators": [],
23010                          "loc": {
23011                            "start": {
23012                              "line": 221,
23013                              "column": 21,
23014                              "program": "generic_arrayaslist.ets"
23015                            },
23016                            "end": {
23017                              "line": 221,
23018                              "column": 24,
23019                              "program": "generic_arrayaslist.ets"
23020                            }
23021                          }
23022                        },
23023                        "loc": {
23024                          "start": {
23025                            "line": 221,
23026                            "column": 9,
23027                            "program": "generic_arrayaslist.ets"
23028                          },
23029                          "end": {
23030                            "line": 221,
23031                            "column": 24,
23032                            "program": "generic_arrayaslist.ets"
23033                          }
23034                        }
23035                      },
23036                      "loc": {
23037                        "start": {
23038                          "line": 221,
23039                          "column": 9,
23040                          "program": "generic_arrayaslist.ets"
23041                        },
23042                        "end": {
23043                          "line": 221,
23044                          "column": 25,
23045                          "program": "generic_arrayaslist.ets"
23046                        }
23047                      }
23048                    },
23049                    {
23050                      "type": "ReturnStatement",
23051                      "argument": {
23052                        "type": "BinaryExpression",
23053                        "operator": "+",
23054                        "left": {
23055                          "type": "Identifier",
23056                          "name": "lessInd",
23057                          "decorators": [],
23058                          "loc": {
23059                            "start": {
23060                              "line": 222,
23061                              "column": 16,
23062                              "program": "generic_arrayaslist.ets"
23063                            },
23064                            "end": {
23065                              "line": 222,
23066                              "column": 23,
23067                              "program": "generic_arrayaslist.ets"
23068                            }
23069                          }
23070                        },
23071                        "right": {
23072                          "type": "NumberLiteral",
23073                          "value": 1,
23074                          "loc": {
23075                            "start": {
23076                              "line": 222,
23077                              "column": 26,
23078                              "program": "generic_arrayaslist.ets"
23079                            },
23080                            "end": {
23081                              "line": 222,
23082                              "column": 27,
23083                              "program": "generic_arrayaslist.ets"
23084                            }
23085                          }
23086                        },
23087                        "loc": {
23088                          "start": {
23089                            "line": 222,
23090                            "column": 16,
23091                            "program": "generic_arrayaslist.ets"
23092                          },
23093                          "end": {
23094                            "line": 222,
23095                            "column": 27,
23096                            "program": "generic_arrayaslist.ets"
23097                          }
23098                        }
23099                      },
23100                      "loc": {
23101                        "start": {
23102                          "line": 222,
23103                          "column": 9,
23104                          "program": "generic_arrayaslist.ets"
23105                        },
23106                        "end": {
23107                          "line": 222,
23108                          "column": 28,
23109                          "program": "generic_arrayaslist.ets"
23110                        }
23111                      }
23112                    }
23113                  ],
23114                  "loc": {
23115                    "start": {
23116                      "line": 207,
23117                      "column": 102,
23118                      "program": "generic_arrayaslist.ets"
23119                    },
23120                    "end": {
23121                      "line": 223,
23122                      "column": 6,
23123                      "program": "generic_arrayaslist.ets"
23124                    }
23125                  }
23126                },
23127                "loc": {
23128                  "start": {
23129                    "line": 207,
23130                    "column": 29,
23131                    "program": "generic_arrayaslist.ets"
23132                  },
23133                  "end": {
23134                    "line": 223,
23135                    "column": 6,
23136                    "program": "generic_arrayaslist.ets"
23137                  }
23138                }
23139              },
23140              "loc": {
23141                "start": {
23142                  "line": 207,
23143                  "column": 29,
23144                  "program": "generic_arrayaslist.ets"
23145                },
23146                "end": {
23147                  "line": 223,
23148                  "column": 6,
23149                  "program": "generic_arrayaslist.ets"
23150                }
23151              }
23152            },
23153            "overloads": [],
23154            "decorators": [],
23155            "loc": {
23156              "start": {
23157                "line": 207,
23158                "column": 5,
23159                "program": "generic_arrayaslist.ets"
23160              },
23161              "end": {
23162                "line": 223,
23163                "column": 6,
23164                "program": "generic_arrayaslist.ets"
23165              }
23166            }
23167          },
23168          {
23169            "type": "MethodDefinition",
23170            "key": {
23171              "type": "Identifier",
23172              "name": "bubbleSort",
23173              "decorators": [],
23174              "loc": {
23175                "start": {
23176                  "line": 225,
23177                  "column": 20,
23178                  "program": "generic_arrayaslist.ets"
23179                },
23180                "end": {
23181                  "line": 225,
23182                  "column": 30,
23183                  "program": "generic_arrayaslist.ets"
23184                }
23185              }
23186            },
23187            "kind": "method",
23188            "accessibility": "private",
23189            "static": true,
23190            "optional": false,
23191            "computed": false,
23192            "value": {
23193              "type": "FunctionExpression",
23194              "function": {
23195                "type": "ScriptFunction",
23196                "id": {
23197                  "type": "Identifier",
23198                  "name": "bubbleSort",
23199                  "decorators": [],
23200                  "loc": {
23201                    "start": {
23202                      "line": 225,
23203                      "column": 20,
23204                      "program": "generic_arrayaslist.ets"
23205                    },
23206                    "end": {
23207                      "line": 225,
23208                      "column": 30,
23209                      "program": "generic_arrayaslist.ets"
23210                    }
23211                  }
23212                },
23213                "generator": false,
23214                "async": false,
23215                "expression": false,
23216                "params": [
23217                  {
23218                    "type": "ETSParameterExpression",
23219                    "name": {
23220                      "type": "Identifier",
23221                      "name": "arr",
23222                      "typeAnnotation": {
23223                        "type": "ETSTypeReference",
23224                        "part": {
23225                          "type": "ETSTypeReferencePart",
23226                          "name": {
23227                            "type": "Identifier",
23228                            "name": "Array",
23229                            "decorators": [],
23230                            "loc": {
23231                              "start": {
23232                                "line": 1,
23233                                "column": 1,
23234                                "program": "generic_arrayaslist.ets"
23235                              },
23236                              "end": {
23237                                "line": 1,
23238                                "column": 3,
23239                                "program": "generic_arrayaslist.ets"
23240                              }
23241                            }
23242                          },
23243                          "typeParams": {
23244                            "type": "TSTypeParameterInstantiation",
23245                            "params": [
23246                              {
23247                                "type": "ETSTypeReference",
23248                                "part": {
23249                                  "type": "ETSTypeReferencePart",
23250                                  "name": {
23251                                    "type": "Identifier",
23252                                    "name": "T",
23253                                    "decorators": [],
23254                                    "loc": {
23255                                      "start": {
23256                                        "line": 1,
23257                                        "column": 3,
23258                                        "program": "generic_arrayaslist.ets"
23259                                      },
23260                                      "end": {
23261                                        "line": 1,
23262                                        "column": 3,
23263                                        "program": "generic_arrayaslist.ets"
23264                                      }
23265                                    }
23266                                  },
23267                                  "loc": {
23268                                    "start": {
23269                                      "line": 1,
23270                                      "column": 3,
23271                                      "program": "generic_arrayaslist.ets"
23272                                    },
23273                                    "end": {
23274                                      "line": 1,
23275                                      "column": 3,
23276                                      "program": "generic_arrayaslist.ets"
23277                                    }
23278                                  }
23279                                },
23280                                "loc": {
23281                                  "start": {
23282                                    "line": 1,
23283                                    "column": 3,
23284                                    "program": "generic_arrayaslist.ets"
23285                                  },
23286                                  "end": {
23287                                    "line": 1,
23288                                    "column": 3,
23289                                    "program": "generic_arrayaslist.ets"
23290                                  }
23291                                }
23292                              }
23293                            ],
23294                            "loc": {
23295                              "start": {
23296                                "line": 1,
23297                                "column": 3,
23298                                "program": "generic_arrayaslist.ets"
23299                              },
23300                              "end": {
23301                                "line": 1,
23302                                "column": 3,
23303                                "program": "generic_arrayaslist.ets"
23304                              }
23305                            }
23306                          },
23307                          "loc": {
23308                            "start": {
23309                              "line": 1,
23310                              "column": 1,
23311                              "program": "generic_arrayaslist.ets"
23312                            },
23313                            "end": {
23314                              "line": 1,
23315                              "column": 3,
23316                              "program": "generic_arrayaslist.ets"
23317                            }
23318                          }
23319                        },
23320                        "loc": {
23321                          "start": {
23322                            "line": 225,
23323                            "column": 37,
23324                            "program": "generic_arrayaslist.ets"
23325                          },
23326                          "end": {
23327                            "line": 225,
23328                            "column": 39,
23329                            "program": "generic_arrayaslist.ets"
23330                          }
23331                        }
23332                      },
23333                      "decorators": [],
23334                      "loc": {
23335                        "start": {
23336                          "line": 225,
23337                          "column": 31,
23338                          "program": "generic_arrayaslist.ets"
23339                        },
23340                        "end": {
23341                          "line": 225,
23342                          "column": 39,
23343                          "program": "generic_arrayaslist.ets"
23344                        }
23345                      }
23346                    },
23347                    "loc": {
23348                      "start": {
23349                        "line": 225,
23350                        "column": 31,
23351                        "program": "generic_arrayaslist.ets"
23352                      },
23353                      "end": {
23354                        "line": 225,
23355                        "column": 39,
23356                        "program": "generic_arrayaslist.ets"
23357                      }
23358                    }
23359                  },
23360                  {
23361                    "type": "ETSParameterExpression",
23362                    "name": {
23363                      "type": "Identifier",
23364                      "name": "l",
23365                      "typeAnnotation": {
23366                        "type": "ETSPrimitiveType",
23367                        "loc": {
23368                          "start": {
23369                            "line": 225,
23370                            "column": 44,
23371                            "program": "generic_arrayaslist.ets"
23372                          },
23373                          "end": {
23374                            "line": 225,
23375                            "column": 47,
23376                            "program": "generic_arrayaslist.ets"
23377                          }
23378                        }
23379                      },
23380                      "decorators": [],
23381                      "loc": {
23382                        "start": {
23383                          "line": 225,
23384                          "column": 41,
23385                          "program": "generic_arrayaslist.ets"
23386                        },
23387                        "end": {
23388                          "line": 225,
23389                          "column": 47,
23390                          "program": "generic_arrayaslist.ets"
23391                        }
23392                      }
23393                    },
23394                    "loc": {
23395                      "start": {
23396                        "line": 225,
23397                        "column": 41,
23398                        "program": "generic_arrayaslist.ets"
23399                      },
23400                      "end": {
23401                        "line": 225,
23402                        "column": 47,
23403                        "program": "generic_arrayaslist.ets"
23404                      }
23405                    }
23406                  },
23407                  {
23408                    "type": "ETSParameterExpression",
23409                    "name": {
23410                      "type": "Identifier",
23411                      "name": "r",
23412                      "typeAnnotation": {
23413                        "type": "ETSPrimitiveType",
23414                        "loc": {
23415                          "start": {
23416                            "line": 225,
23417                            "column": 52,
23418                            "program": "generic_arrayaslist.ets"
23419                          },
23420                          "end": {
23421                            "line": 225,
23422                            "column": 55,
23423                            "program": "generic_arrayaslist.ets"
23424                          }
23425                        }
23426                      },
23427                      "decorators": [],
23428                      "loc": {
23429                        "start": {
23430                          "line": 225,
23431                          "column": 49,
23432                          "program": "generic_arrayaslist.ets"
23433                        },
23434                        "end": {
23435                          "line": 225,
23436                          "column": 55,
23437                          "program": "generic_arrayaslist.ets"
23438                        }
23439                      }
23440                    },
23441                    "loc": {
23442                      "start": {
23443                        "line": 225,
23444                        "column": 49,
23445                        "program": "generic_arrayaslist.ets"
23446                      },
23447                      "end": {
23448                        "line": 225,
23449                        "column": 55,
23450                        "program": "generic_arrayaslist.ets"
23451                      }
23452                    }
23453                  },
23454                  {
23455                    "type": "ETSParameterExpression",
23456                    "name": {
23457                      "type": "Identifier",
23458                      "name": "comparator",
23459                      "typeAnnotation": {
23460                        "type": "ETSFunctionType",
23461                        "params": [
23462                          {
23463                            "type": "ETSParameterExpression",
23464                            "name": {
23465                              "type": "Identifier",
23466                              "name": "lhs",
23467                              "typeAnnotation": {
23468                                "type": "ETSTypeReference",
23469                                "part": {
23470                                  "type": "ETSTypeReferencePart",
23471                                  "name": {
23472                                    "type": "Identifier",
23473                                    "name": "T",
23474                                    "decorators": [],
23475                                    "loc": {
23476                                      "start": {
23477                                        "line": 225,
23478                                        "column": 75,
23479                                        "program": "generic_arrayaslist.ets"
23480                                      },
23481                                      "end": {
23482                                        "line": 225,
23483                                        "column": 76,
23484                                        "program": "generic_arrayaslist.ets"
23485                                      }
23486                                    }
23487                                  },
23488                                  "loc": {
23489                                    "start": {
23490                                      "line": 225,
23491                                      "column": 75,
23492                                      "program": "generic_arrayaslist.ets"
23493                                    },
23494                                    "end": {
23495                                      "line": 225,
23496                                      "column": 77,
23497                                      "program": "generic_arrayaslist.ets"
23498                                    }
23499                                  }
23500                                },
23501                                "loc": {
23502                                  "start": {
23503                                    "line": 225,
23504                                    "column": 75,
23505                                    "program": "generic_arrayaslist.ets"
23506                                  },
23507                                  "end": {
23508                                    "line": 225,
23509                                    "column": 77,
23510                                    "program": "generic_arrayaslist.ets"
23511                                  }
23512                                }
23513                              },
23514                              "decorators": [],
23515                              "loc": {
23516                                "start": {
23517                                  "line": 225,
23518                                  "column": 70,
23519                                  "program": "generic_arrayaslist.ets"
23520                                },
23521                                "end": {
23522                                  "line": 225,
23523                                  "column": 77,
23524                                  "program": "generic_arrayaslist.ets"
23525                                }
23526                              }
23527                            },
23528                            "loc": {
23529                              "start": {
23530                                "line": 225,
23531                                "column": 70,
23532                                "program": "generic_arrayaslist.ets"
23533                              },
23534                              "end": {
23535                                "line": 225,
23536                                "column": 77,
23537                                "program": "generic_arrayaslist.ets"
23538                              }
23539                            }
23540                          },
23541                          {
23542                            "type": "ETSParameterExpression",
23543                            "name": {
23544                              "type": "Identifier",
23545                              "name": "rhs",
23546                              "typeAnnotation": {
23547                                "type": "ETSTypeReference",
23548                                "part": {
23549                                  "type": "ETSTypeReferencePart",
23550                                  "name": {
23551                                    "type": "Identifier",
23552                                    "name": "T",
23553                                    "decorators": [],
23554                                    "loc": {
23555                                      "start": {
23556                                        "line": 225,
23557                                        "column": 83,
23558                                        "program": "generic_arrayaslist.ets"
23559                                      },
23560                                      "end": {
23561                                        "line": 225,
23562                                        "column": 84,
23563                                        "program": "generic_arrayaslist.ets"
23564                                      }
23565                                    }
23566                                  },
23567                                  "loc": {
23568                                    "start": {
23569                                      "line": 225,
23570                                      "column": 83,
23571                                      "program": "generic_arrayaslist.ets"
23572                                    },
23573                                    "end": {
23574                                      "line": 225,
23575                                      "column": 85,
23576                                      "program": "generic_arrayaslist.ets"
23577                                    }
23578                                  }
23579                                },
23580                                "loc": {
23581                                  "start": {
23582                                    "line": 225,
23583                                    "column": 83,
23584                                    "program": "generic_arrayaslist.ets"
23585                                  },
23586                                  "end": {
23587                                    "line": 225,
23588                                    "column": 85,
23589                                    "program": "generic_arrayaslist.ets"
23590                                  }
23591                                }
23592                              },
23593                              "decorators": [],
23594                              "loc": {
23595                                "start": {
23596                                  "line": 225,
23597                                  "column": 78,
23598                                  "program": "generic_arrayaslist.ets"
23599                                },
23600                                "end": {
23601                                  "line": 225,
23602                                  "column": 85,
23603                                  "program": "generic_arrayaslist.ets"
23604                                }
23605                              }
23606                            },
23607                            "loc": {
23608                              "start": {
23609                                "line": 225,
23610                                "column": 78,
23611                                "program": "generic_arrayaslist.ets"
23612                              },
23613                              "end": {
23614                                "line": 225,
23615                                "column": 85,
23616                                "program": "generic_arrayaslist.ets"
23617                              }
23618                            }
23619                          }
23620                        ],
23621                        "returnType": {
23622                          "type": "ETSPrimitiveType",
23623                          "loc": {
23624                            "start": {
23625                              "line": 225,
23626                              "column": 89,
23627                              "program": "generic_arrayaslist.ets"
23628                            },
23629                            "end": {
23630                              "line": 225,
23631                              "column": 96,
23632                              "program": "generic_arrayaslist.ets"
23633                            }
23634                          }
23635                        },
23636                        "loc": {
23637                          "start": {
23638                            "line": 225,
23639                            "column": 69,
23640                            "program": "generic_arrayaslist.ets"
23641                          },
23642                          "end": {
23643                            "line": 225,
23644                            "column": 96,
23645                            "program": "generic_arrayaslist.ets"
23646                          }
23647                        }
23648                      },
23649                      "decorators": [],
23650                      "loc": {
23651                        "start": {
23652                          "line": 225,
23653                          "column": 57,
23654                          "program": "generic_arrayaslist.ets"
23655                        },
23656                        "end": {
23657                          "line": 225,
23658                          "column": 96,
23659                          "program": "generic_arrayaslist.ets"
23660                        }
23661                      }
23662                    },
23663                    "loc": {
23664                      "start": {
23665                        "line": 225,
23666                        "column": 57,
23667                        "program": "generic_arrayaslist.ets"
23668                      },
23669                      "end": {
23670                        "line": 225,
23671                        "column": 96,
23672                        "program": "generic_arrayaslist.ets"
23673                      }
23674                    }
23675                  }
23676                ],
23677                "returnType": {
23678                  "type": "ETSPrimitiveType",
23679                  "loc": {
23680                    "start": {
23681                      "line": 225,
23682                      "column": 99,
23683                      "program": "generic_arrayaslist.ets"
23684                    },
23685                    "end": {
23686                      "line": 225,
23687                      "column": 103,
23688                      "program": "generic_arrayaslist.ets"
23689                    }
23690                  }
23691                },
23692                "body": {
23693                  "type": "BlockStatement",
23694                  "statements": [
23695                    {
23696                      "type": "ForUpdateStatement",
23697                      "init": {
23698                        "type": "VariableDeclaration",
23699                        "declarations": [
23700                          {
23701                            "type": "VariableDeclarator",
23702                            "id": {
23703                              "type": "Identifier",
23704                              "name": "i",
23705                              "decorators": [],
23706                              "loc": {
23707                                "start": {
23708                                  "line": 226,
23709                                  "column": 18,
23710                                  "program": "generic_arrayaslist.ets"
23711                                },
23712                                "end": {
23713                                  "line": 226,
23714                                  "column": 19,
23715                                  "program": "generic_arrayaslist.ets"
23716                                }
23717                              }
23718                            },
23719                            "init": {
23720                              "type": "Identifier",
23721                              "name": "l",
23722                              "decorators": [],
23723                              "loc": {
23724                                "start": {
23725                                  "line": 226,
23726                                  "column": 22,
23727                                  "program": "generic_arrayaslist.ets"
23728                                },
23729                                "end": {
23730                                  "line": 226,
23731                                  "column": 23,
23732                                  "program": "generic_arrayaslist.ets"
23733                                }
23734                              }
23735                            },
23736                            "loc": {
23737                              "start": {
23738                                "line": 226,
23739                                "column": 18,
23740                                "program": "generic_arrayaslist.ets"
23741                              },
23742                              "end": {
23743                                "line": 226,
23744                                "column": 23,
23745                                "program": "generic_arrayaslist.ets"
23746                              }
23747                            }
23748                          }
23749                        ],
23750                        "kind": "let",
23751                        "loc": {
23752                          "start": {
23753                            "line": 226,
23754                            "column": 14,
23755                            "program": "generic_arrayaslist.ets"
23756                          },
23757                          "end": {
23758                            "line": 226,
23759                            "column": 23,
23760                            "program": "generic_arrayaslist.ets"
23761                          }
23762                        }
23763                      },
23764                      "test": {
23765                        "type": "BinaryExpression",
23766                        "operator": "<",
23767                        "left": {
23768                          "type": "Identifier",
23769                          "name": "i",
23770                          "decorators": [],
23771                          "loc": {
23772                            "start": {
23773                              "line": 226,
23774                              "column": 25,
23775                              "program": "generic_arrayaslist.ets"
23776                            },
23777                            "end": {
23778                              "line": 226,
23779                              "column": 26,
23780                              "program": "generic_arrayaslist.ets"
23781                            }
23782                          }
23783                        },
23784                        "right": {
23785                          "type": "Identifier",
23786                          "name": "r",
23787                          "decorators": [],
23788                          "loc": {
23789                            "start": {
23790                              "line": 226,
23791                              "column": 29,
23792                              "program": "generic_arrayaslist.ets"
23793                            },
23794                            "end": {
23795                              "line": 226,
23796                              "column": 30,
23797                              "program": "generic_arrayaslist.ets"
23798                            }
23799                          }
23800                        },
23801                        "loc": {
23802                          "start": {
23803                            "line": 226,
23804                            "column": 25,
23805                            "program": "generic_arrayaslist.ets"
23806                          },
23807                          "end": {
23808                            "line": 226,
23809                            "column": 30,
23810                            "program": "generic_arrayaslist.ets"
23811                          }
23812                        }
23813                      },
23814                      "update": {
23815                        "type": "UpdateExpression",
23816                        "operator": "++",
23817                        "prefix": true,
23818                        "argument": {
23819                          "type": "Identifier",
23820                          "name": "i",
23821                          "decorators": [],
23822                          "loc": {
23823                            "start": {
23824                              "line": 226,
23825                              "column": 34,
23826                              "program": "generic_arrayaslist.ets"
23827                            },
23828                            "end": {
23829                              "line": 226,
23830                              "column": 35,
23831                              "program": "generic_arrayaslist.ets"
23832                            }
23833                          }
23834                        },
23835                        "loc": {
23836                          "start": {
23837                            "line": 226,
23838                            "column": 32,
23839                            "program": "generic_arrayaslist.ets"
23840                          },
23841                          "end": {
23842                            "line": 226,
23843                            "column": 35,
23844                            "program": "generic_arrayaslist.ets"
23845                          }
23846                        }
23847                      },
23848                      "body": {
23849                        "type": "BlockStatement",
23850                        "statements": [
23851                          {
23852                            "type": "ForUpdateStatement",
23853                            "init": {
23854                              "type": "VariableDeclaration",
23855                              "declarations": [
23856                                {
23857                                  "type": "VariableDeclarator",
23858                                  "id": {
23859                                    "type": "Identifier",
23860                                    "name": "j",
23861                                    "decorators": [],
23862                                    "loc": {
23863                                      "start": {
23864                                        "line": 227,
23865                                        "column": 22,
23866                                        "program": "generic_arrayaslist.ets"
23867                                      },
23868                                      "end": {
23869                                        "line": 227,
23870                                        "column": 23,
23871                                        "program": "generic_arrayaslist.ets"
23872                                      }
23873                                    }
23874                                  },
23875                                  "init": {
23876                                    "type": "Identifier",
23877                                    "name": "i",
23878                                    "decorators": [],
23879                                    "loc": {
23880                                      "start": {
23881                                        "line": 227,
23882                                        "column": 26,
23883                                        "program": "generic_arrayaslist.ets"
23884                                      },
23885                                      "end": {
23886                                        "line": 227,
23887                                        "column": 27,
23888                                        "program": "generic_arrayaslist.ets"
23889                                      }
23890                                    }
23891                                  },
23892                                  "loc": {
23893                                    "start": {
23894                                      "line": 227,
23895                                      "column": 22,
23896                                      "program": "generic_arrayaslist.ets"
23897                                    },
23898                                    "end": {
23899                                      "line": 227,
23900                                      "column": 27,
23901                                      "program": "generic_arrayaslist.ets"
23902                                    }
23903                                  }
23904                                }
23905                              ],
23906                              "kind": "let",
23907                              "loc": {
23908                                "start": {
23909                                  "line": 227,
23910                                  "column": 18,
23911                                  "program": "generic_arrayaslist.ets"
23912                                },
23913                                "end": {
23914                                  "line": 227,
23915                                  "column": 27,
23916                                  "program": "generic_arrayaslist.ets"
23917                                }
23918                              }
23919                            },
23920                            "test": {
23921                              "type": "BinaryExpression",
23922                              "operator": "<",
23923                              "left": {
23924                                "type": "Identifier",
23925                                "name": "j",
23926                                "decorators": [],
23927                                "loc": {
23928                                  "start": {
23929                                    "line": 227,
23930                                    "column": 29,
23931                                    "program": "generic_arrayaslist.ets"
23932                                  },
23933                                  "end": {
23934                                    "line": 227,
23935                                    "column": 30,
23936                                    "program": "generic_arrayaslist.ets"
23937                                  }
23938                                }
23939                              },
23940                              "right": {
23941                                "type": "BinaryExpression",
23942                                "operator": "-",
23943                                "left": {
23944                                  "type": "Identifier",
23945                                  "name": "r",
23946                                  "decorators": [],
23947                                  "loc": {
23948                                    "start": {
23949                                      "line": 227,
23950                                      "column": 33,
23951                                      "program": "generic_arrayaslist.ets"
23952                                    },
23953                                    "end": {
23954                                      "line": 227,
23955                                      "column": 34,
23956                                      "program": "generic_arrayaslist.ets"
23957                                    }
23958                                  }
23959                                },
23960                                "right": {
23961                                  "type": "Identifier",
23962                                  "name": "i",
23963                                  "decorators": [],
23964                                  "loc": {
23965                                    "start": {
23966                                      "line": 227,
23967                                      "column": 37,
23968                                      "program": "generic_arrayaslist.ets"
23969                                    },
23970                                    "end": {
23971                                      "line": 227,
23972                                      "column": 38,
23973                                      "program": "generic_arrayaslist.ets"
23974                                    }
23975                                  }
23976                                },
23977                                "loc": {
23978                                  "start": {
23979                                    "line": 227,
23980                                    "column": 33,
23981                                    "program": "generic_arrayaslist.ets"
23982                                  },
23983                                  "end": {
23984                                    "line": 227,
23985                                    "column": 38,
23986                                    "program": "generic_arrayaslist.ets"
23987                                  }
23988                                }
23989                              },
23990                              "loc": {
23991                                "start": {
23992                                  "line": 227,
23993                                  "column": 29,
23994                                  "program": "generic_arrayaslist.ets"
23995                                },
23996                                "end": {
23997                                  "line": 227,
23998                                  "column": 38,
23999                                  "program": "generic_arrayaslist.ets"
24000                                }
24001                              }
24002                            },
24003                            "update": {
24004                              "type": "UpdateExpression",
24005                              "operator": "++",
24006                              "prefix": true,
24007                              "argument": {
24008                                "type": "Identifier",
24009                                "name": "j",
24010                                "decorators": [],
24011                                "loc": {
24012                                  "start": {
24013                                    "line": 227,
24014                                    "column": 42,
24015                                    "program": "generic_arrayaslist.ets"
24016                                  },
24017                                  "end": {
24018                                    "line": 227,
24019                                    "column": 43,
24020                                    "program": "generic_arrayaslist.ets"
24021                                  }
24022                                }
24023                              },
24024                              "loc": {
24025                                "start": {
24026                                  "line": 227,
24027                                  "column": 40,
24028                                  "program": "generic_arrayaslist.ets"
24029                                },
24030                                "end": {
24031                                  "line": 227,
24032                                  "column": 43,
24033                                  "program": "generic_arrayaslist.ets"
24034                                }
24035                              }
24036                            },
24037                            "body": {
24038                              "type": "BlockStatement",
24039                              "statements": [
24040                                {
24041                                  "type": "IfStatement",
24042                                  "test": {
24043                                    "type": "CallExpression",
24044                                    "callee": {
24045                                      "type": "Identifier",
24046                                      "name": "comparator",
24047                                      "decorators": [],
24048                                      "loc": {
24049                                        "start": {
24050                                          "line": 228,
24051                                          "column": 21,
24052                                          "program": "generic_arrayaslist.ets"
24053                                        },
24054                                        "end": {
24055                                          "line": 228,
24056                                          "column": 31,
24057                                          "program": "generic_arrayaslist.ets"
24058                                        }
24059                                      }
24060                                    },
24061                                    "arguments": [
24062                                      {
24063                                        "type": "MemberExpression",
24064                                        "object": {
24065                                          "type": "Identifier",
24066                                          "name": "arr",
24067                                          "decorators": [],
24068                                          "loc": {
24069                                            "start": {
24070                                              "line": 228,
24071                                              "column": 32,
24072                                              "program": "generic_arrayaslist.ets"
24073                                            },
24074                                            "end": {
24075                                              "line": 228,
24076                                              "column": 35,
24077                                              "program": "generic_arrayaslist.ets"
24078                                            }
24079                                          }
24080                                        },
24081                                        "property": {
24082                                          "type": "BinaryExpression",
24083                                          "operator": "+",
24084                                          "left": {
24085                                            "type": "Identifier",
24086                                            "name": "j",
24087                                            "decorators": [],
24088                                            "loc": {
24089                                              "start": {
24090                                                "line": 228,
24091                                                "column": 36,
24092                                                "program": "generic_arrayaslist.ets"
24093                                              },
24094                                              "end": {
24095                                                "line": 228,
24096                                                "column": 37,
24097                                                "program": "generic_arrayaslist.ets"
24098                                              }
24099                                            }
24100                                          },
24101                                          "right": {
24102                                            "type": "NumberLiteral",
24103                                            "value": 1,
24104                                            "loc": {
24105                                              "start": {
24106                                                "line": 228,
24107                                                "column": 40,
24108                                                "program": "generic_arrayaslist.ets"
24109                                              },
24110                                              "end": {
24111                                                "line": 228,
24112                                                "column": 41,
24113                                                "program": "generic_arrayaslist.ets"
24114                                              }
24115                                            }
24116                                          },
24117                                          "loc": {
24118                                            "start": {
24119                                              "line": 228,
24120                                              "column": 36,
24121                                              "program": "generic_arrayaslist.ets"
24122                                            },
24123                                            "end": {
24124                                              "line": 228,
24125                                              "column": 41,
24126                                              "program": "generic_arrayaslist.ets"
24127                                            }
24128                                          }
24129                                        },
24130                                        "computed": true,
24131                                        "optional": false,
24132                                        "loc": {
24133                                          "start": {
24134                                            "line": 228,
24135                                            "column": 32,
24136                                            "program": "generic_arrayaslist.ets"
24137                                          },
24138                                          "end": {
24139                                            "line": 228,
24140                                            "column": 42,
24141                                            "program": "generic_arrayaslist.ets"
24142                                          }
24143                                        }
24144                                      },
24145                                      {
24146                                        "type": "MemberExpression",
24147                                        "object": {
24148                                          "type": "Identifier",
24149                                          "name": "arr",
24150                                          "decorators": [],
24151                                          "loc": {
24152                                            "start": {
24153                                              "line": 228,
24154                                              "column": 44,
24155                                              "program": "generic_arrayaslist.ets"
24156                                            },
24157                                            "end": {
24158                                              "line": 228,
24159                                              "column": 47,
24160                                              "program": "generic_arrayaslist.ets"
24161                                            }
24162                                          }
24163                                        },
24164                                        "property": {
24165                                          "type": "Identifier",
24166                                          "name": "j",
24167                                          "decorators": [],
24168                                          "loc": {
24169                                            "start": {
24170                                              "line": 228,
24171                                              "column": 48,
24172                                              "program": "generic_arrayaslist.ets"
24173                                            },
24174                                            "end": {
24175                                              "line": 228,
24176                                              "column": 49,
24177                                              "program": "generic_arrayaslist.ets"
24178                                            }
24179                                          }
24180                                        },
24181                                        "computed": true,
24182                                        "optional": false,
24183                                        "loc": {
24184                                          "start": {
24185                                            "line": 228,
24186                                            "column": 44,
24187                                            "program": "generic_arrayaslist.ets"
24188                                          },
24189                                          "end": {
24190                                            "line": 228,
24191                                            "column": 50,
24192                                            "program": "generic_arrayaslist.ets"
24193                                          }
24194                                        }
24195                                      }
24196                                    ],
24197                                    "optional": false,
24198                                    "loc": {
24199                                      "start": {
24200                                        "line": 228,
24201                                        "column": 21,
24202                                        "program": "generic_arrayaslist.ets"
24203                                      },
24204                                      "end": {
24205                                        "line": 228,
24206                                        "column": 51,
24207                                        "program": "generic_arrayaslist.ets"
24208                                      }
24209                                    }
24210                                  },
24211                                  "consequent": {
24212                                    "type": "BlockStatement",
24213                                    "statements": [
24214                                      {
24215                                        "type": "VariableDeclaration",
24216                                        "declarations": [
24217                                          {
24218                                            "type": "VariableDeclarator",
24219                                            "id": {
24220                                              "type": "Identifier",
24221                                              "name": "tmp",
24222                                              "decorators": [],
24223                                              "loc": {
24224                                                "start": {
24225                                                  "line": 229,
24226                                                  "column": 25,
24227                                                  "program": "generic_arrayaslist.ets"
24228                                                },
24229                                                "end": {
24230                                                  "line": 229,
24231                                                  "column": 28,
24232                                                  "program": "generic_arrayaslist.ets"
24233                                                }
24234                                              }
24235                                            },
24236                                            "init": {
24237                                              "type": "MemberExpression",
24238                                              "object": {
24239                                                "type": "Identifier",
24240                                                "name": "arr",
24241                                                "decorators": [],
24242                                                "loc": {
24243                                                  "start": {
24244                                                    "line": 229,
24245                                                    "column": 31,
24246                                                    "program": "generic_arrayaslist.ets"
24247                                                  },
24248                                                  "end": {
24249                                                    "line": 229,
24250                                                    "column": 34,
24251                                                    "program": "generic_arrayaslist.ets"
24252                                                  }
24253                                                }
24254                                              },
24255                                              "property": {
24256                                                "type": "BinaryExpression",
24257                                                "operator": "+",
24258                                                "left": {
24259                                                  "type": "Identifier",
24260                                                  "name": "j",
24261                                                  "decorators": [],
24262                                                  "loc": {
24263                                                    "start": {
24264                                                      "line": 229,
24265                                                      "column": 35,
24266                                                      "program": "generic_arrayaslist.ets"
24267                                                    },
24268                                                    "end": {
24269                                                      "line": 229,
24270                                                      "column": 36,
24271                                                      "program": "generic_arrayaslist.ets"
24272                                                    }
24273                                                  }
24274                                                },
24275                                                "right": {
24276                                                  "type": "NumberLiteral",
24277                                                  "value": 1,
24278                                                  "loc": {
24279                                                    "start": {
24280                                                      "line": 229,
24281                                                      "column": 39,
24282                                                      "program": "generic_arrayaslist.ets"
24283                                                    },
24284                                                    "end": {
24285                                                      "line": 229,
24286                                                      "column": 40,
24287                                                      "program": "generic_arrayaslist.ets"
24288                                                    }
24289                                                  }
24290                                                },
24291                                                "loc": {
24292                                                  "start": {
24293                                                    "line": 229,
24294                                                    "column": 35,
24295                                                    "program": "generic_arrayaslist.ets"
24296                                                  },
24297                                                  "end": {
24298                                                    "line": 229,
24299                                                    "column": 40,
24300                                                    "program": "generic_arrayaslist.ets"
24301                                                  }
24302                                                }
24303                                              },
24304                                              "computed": true,
24305                                              "optional": false,
24306                                              "loc": {
24307                                                "start": {
24308                                                  "line": 229,
24309                                                  "column": 31,
24310                                                  "program": "generic_arrayaslist.ets"
24311                                                },
24312                                                "end": {
24313                                                  "line": 229,
24314                                                  "column": 41,
24315                                                  "program": "generic_arrayaslist.ets"
24316                                                }
24317                                              }
24318                                            },
24319                                            "loc": {
24320                                              "start": {
24321                                                "line": 229,
24322                                                "column": 25,
24323                                                "program": "generic_arrayaslist.ets"
24324                                              },
24325                                              "end": {
24326                                                "line": 229,
24327                                                "column": 41,
24328                                                "program": "generic_arrayaslist.ets"
24329                                              }
24330                                            }
24331                                          }
24332                                        ],
24333                                        "kind": "let",
24334                                        "loc": {
24335                                          "start": {
24336                                            "line": 229,
24337                                            "column": 21,
24338                                            "program": "generic_arrayaslist.ets"
24339                                          },
24340                                          "end": {
24341                                            "line": 229,
24342                                            "column": 42,
24343                                            "program": "generic_arrayaslist.ets"
24344                                          }
24345                                        }
24346                                      },
24347                                      {
24348                                        "type": "ExpressionStatement",
24349                                        "expression": {
24350                                          "type": "AssignmentExpression",
24351                                          "operator": "=",
24352                                          "left": {
24353                                            "type": "MemberExpression",
24354                                            "object": {
24355                                              "type": "Identifier",
24356                                              "name": "arr",
24357                                              "decorators": [],
24358                                              "loc": {
24359                                                "start": {
24360                                                  "line": 230,
24361                                                  "column": 21,
24362                                                  "program": "generic_arrayaslist.ets"
24363                                                },
24364                                                "end": {
24365                                                  "line": 230,
24366                                                  "column": 24,
24367                                                  "program": "generic_arrayaslist.ets"
24368                                                }
24369                                              }
24370                                            },
24371                                            "property": {
24372                                              "type": "BinaryExpression",
24373                                              "operator": "+",
24374                                              "left": {
24375                                                "type": "Identifier",
24376                                                "name": "j",
24377                                                "decorators": [],
24378                                                "loc": {
24379                                                  "start": {
24380                                                    "line": 230,
24381                                                    "column": 25,
24382                                                    "program": "generic_arrayaslist.ets"
24383                                                  },
24384                                                  "end": {
24385                                                    "line": 230,
24386                                                    "column": 26,
24387                                                    "program": "generic_arrayaslist.ets"
24388                                                  }
24389                                                }
24390                                              },
24391                                              "right": {
24392                                                "type": "NumberLiteral",
24393                                                "value": 1,
24394                                                "loc": {
24395                                                  "start": {
24396                                                    "line": 230,
24397                                                    "column": 29,
24398                                                    "program": "generic_arrayaslist.ets"
24399                                                  },
24400                                                  "end": {
24401                                                    "line": 230,
24402                                                    "column": 30,
24403                                                    "program": "generic_arrayaslist.ets"
24404                                                  }
24405                                                }
24406                                              },
24407                                              "loc": {
24408                                                "start": {
24409                                                  "line": 230,
24410                                                  "column": 25,
24411                                                  "program": "generic_arrayaslist.ets"
24412                                                },
24413                                                "end": {
24414                                                  "line": 230,
24415                                                  "column": 30,
24416                                                  "program": "generic_arrayaslist.ets"
24417                                                }
24418                                              }
24419                                            },
24420                                            "computed": true,
24421                                            "optional": false,
24422                                            "loc": {
24423                                              "start": {
24424                                                "line": 230,
24425                                                "column": 21,
24426                                                "program": "generic_arrayaslist.ets"
24427                                              },
24428                                              "end": {
24429                                                "line": 230,
24430                                                "column": 31,
24431                                                "program": "generic_arrayaslist.ets"
24432                                              }
24433                                            }
24434                                          },
24435                                          "right": {
24436                                            "type": "MemberExpression",
24437                                            "object": {
24438                                              "type": "Identifier",
24439                                              "name": "arr",
24440                                              "decorators": [],
24441                                              "loc": {
24442                                                "start": {
24443                                                  "line": 230,
24444                                                  "column": 34,
24445                                                  "program": "generic_arrayaslist.ets"
24446                                                },
24447                                                "end": {
24448                                                  "line": 230,
24449                                                  "column": 37,
24450                                                  "program": "generic_arrayaslist.ets"
24451                                                }
24452                                              }
24453                                            },
24454                                            "property": {
24455                                              "type": "Identifier",
24456                                              "name": "j",
24457                                              "decorators": [],
24458                                              "loc": {
24459                                                "start": {
24460                                                  "line": 230,
24461                                                  "column": 38,
24462                                                  "program": "generic_arrayaslist.ets"
24463                                                },
24464                                                "end": {
24465                                                  "line": 230,
24466                                                  "column": 39,
24467                                                  "program": "generic_arrayaslist.ets"
24468                                                }
24469                                              }
24470                                            },
24471                                            "computed": true,
24472                                            "optional": false,
24473                                            "loc": {
24474                                              "start": {
24475                                                "line": 230,
24476                                                "column": 34,
24477                                                "program": "generic_arrayaslist.ets"
24478                                              },
24479                                              "end": {
24480                                                "line": 230,
24481                                                "column": 40,
24482                                                "program": "generic_arrayaslist.ets"
24483                                              }
24484                                            }
24485                                          },
24486                                          "loc": {
24487                                            "start": {
24488                                              "line": 230,
24489                                              "column": 21,
24490                                              "program": "generic_arrayaslist.ets"
24491                                            },
24492                                            "end": {
24493                                              "line": 230,
24494                                              "column": 40,
24495                                              "program": "generic_arrayaslist.ets"
24496                                            }
24497                                          }
24498                                        },
24499                                        "loc": {
24500                                          "start": {
24501                                            "line": 230,
24502                                            "column": 21,
24503                                            "program": "generic_arrayaslist.ets"
24504                                          },
24505                                          "end": {
24506                                            "line": 230,
24507                                            "column": 41,
24508                                            "program": "generic_arrayaslist.ets"
24509                                          }
24510                                        }
24511                                      },
24512                                      {
24513                                        "type": "ExpressionStatement",
24514                                        "expression": {
24515                                          "type": "AssignmentExpression",
24516                                          "operator": "=",
24517                                          "left": {
24518                                            "type": "MemberExpression",
24519                                            "object": {
24520                                              "type": "Identifier",
24521                                              "name": "arr",
24522                                              "decorators": [],
24523                                              "loc": {
24524                                                "start": {
24525                                                  "line": 231,
24526                                                  "column": 21,
24527                                                  "program": "generic_arrayaslist.ets"
24528                                                },
24529                                                "end": {
24530                                                  "line": 231,
24531                                                  "column": 24,
24532                                                  "program": "generic_arrayaslist.ets"
24533                                                }
24534                                              }
24535                                            },
24536                                            "property": {
24537                                              "type": "Identifier",
24538                                              "name": "j",
24539                                              "decorators": [],
24540                                              "loc": {
24541                                                "start": {
24542                                                  "line": 231,
24543                                                  "column": 25,
24544                                                  "program": "generic_arrayaslist.ets"
24545                                                },
24546                                                "end": {
24547                                                  "line": 231,
24548                                                  "column": 26,
24549                                                  "program": "generic_arrayaslist.ets"
24550                                                }
24551                                              }
24552                                            },
24553                                            "computed": true,
24554                                            "optional": false,
24555                                            "loc": {
24556                                              "start": {
24557                                                "line": 231,
24558                                                "column": 21,
24559                                                "program": "generic_arrayaslist.ets"
24560                                              },
24561                                              "end": {
24562                                                "line": 231,
24563                                                "column": 27,
24564                                                "program": "generic_arrayaslist.ets"
24565                                              }
24566                                            }
24567                                          },
24568                                          "right": {
24569                                            "type": "Identifier",
24570                                            "name": "tmp",
24571                                            "decorators": [],
24572                                            "loc": {
24573                                              "start": {
24574                                                "line": 231,
24575                                                "column": 30,
24576                                                "program": "generic_arrayaslist.ets"
24577                                              },
24578                                              "end": {
24579                                                "line": 231,
24580                                                "column": 33,
24581                                                "program": "generic_arrayaslist.ets"
24582                                              }
24583                                            }
24584                                          },
24585                                          "loc": {
24586                                            "start": {
24587                                              "line": 231,
24588                                              "column": 21,
24589                                              "program": "generic_arrayaslist.ets"
24590                                            },
24591                                            "end": {
24592                                              "line": 231,
24593                                              "column": 33,
24594                                              "program": "generic_arrayaslist.ets"
24595                                            }
24596                                          }
24597                                        },
24598                                        "loc": {
24599                                          "start": {
24600                                            "line": 231,
24601                                            "column": 21,
24602                                            "program": "generic_arrayaslist.ets"
24603                                          },
24604                                          "end": {
24605                                            "line": 231,
24606                                            "column": 34,
24607                                            "program": "generic_arrayaslist.ets"
24608                                          }
24609                                        }
24610                                      }
24611                                    ],
24612                                    "loc": {
24613                                      "start": {
24614                                        "line": 228,
24615                                        "column": 53,
24616                                        "program": "generic_arrayaslist.ets"
24617                                      },
24618                                      "end": {
24619                                        "line": 232,
24620                                        "column": 18,
24621                                        "program": "generic_arrayaslist.ets"
24622                                      }
24623                                    }
24624                                  },
24625                                  "alternate": null,
24626                                  "loc": {
24627                                    "start": {
24628                                      "line": 228,
24629                                      "column": 17,
24630                                      "program": "generic_arrayaslist.ets"
24631                                    },
24632                                    "end": {
24633                                      "line": 232,
24634                                      "column": 18,
24635                                      "program": "generic_arrayaslist.ets"
24636                                    }
24637                                  }
24638                                }
24639                              ],
24640                              "loc": {
24641                                "start": {
24642                                  "line": 227,
24643                                  "column": 45,
24644                                  "program": "generic_arrayaslist.ets"
24645                                },
24646                                "end": {
24647                                  "line": 233,
24648                                  "column": 14,
24649                                  "program": "generic_arrayaslist.ets"
24650                                }
24651                              }
24652                            },
24653                            "loc": {
24654                              "start": {
24655                                "line": 227,
24656                                "column": 13,
24657                                "program": "generic_arrayaslist.ets"
24658                              },
24659                              "end": {
24660                                "line": 233,
24661                                "column": 14,
24662                                "program": "generic_arrayaslist.ets"
24663                              }
24664                            }
24665                          }
24666                        ],
24667                        "loc": {
24668                          "start": {
24669                            "line": 226,
24670                            "column": 37,
24671                            "program": "generic_arrayaslist.ets"
24672                          },
24673                          "end": {
24674                            "line": 234,
24675                            "column": 10,
24676                            "program": "generic_arrayaslist.ets"
24677                          }
24678                        }
24679                      },
24680                      "loc": {
24681                        "start": {
24682                          "line": 226,
24683                          "column": 9,
24684                          "program": "generic_arrayaslist.ets"
24685                        },
24686                        "end": {
24687                          "line": 234,
24688                          "column": 10,
24689                          "program": "generic_arrayaslist.ets"
24690                        }
24691                      }
24692                    }
24693                  ],
24694                  "loc": {
24695                    "start": {
24696                      "line": 225,
24697                      "column": 104,
24698                      "program": "generic_arrayaslist.ets"
24699                    },
24700                    "end": {
24701                      "line": 235,
24702                      "column": 6,
24703                      "program": "generic_arrayaslist.ets"
24704                    }
24705                  }
24706                },
24707                "loc": {
24708                  "start": {
24709                    "line": 225,
24710                    "column": 30,
24711                    "program": "generic_arrayaslist.ets"
24712                  },
24713                  "end": {
24714                    "line": 235,
24715                    "column": 6,
24716                    "program": "generic_arrayaslist.ets"
24717                  }
24718                }
24719              },
24720              "loc": {
24721                "start": {
24722                  "line": 225,
24723                  "column": 30,
24724                  "program": "generic_arrayaslist.ets"
24725                },
24726                "end": {
24727                  "line": 235,
24728                  "column": 6,
24729                  "program": "generic_arrayaslist.ets"
24730                }
24731              }
24732            },
24733            "overloads": [],
24734            "decorators": [],
24735            "loc": {
24736              "start": {
24737                "line": 225,
24738                "column": 5,
24739                "program": "generic_arrayaslist.ets"
24740              },
24741              "end": {
24742                "line": 235,
24743                "column": 6,
24744                "program": "generic_arrayaslist.ets"
24745              }
24746            }
24747          },
24748          {
24749            "type": "ClassProperty",
24750            "key": {
24751              "type": "Identifier",
24752              "name": "data",
24753              "decorators": [],
24754              "loc": {
24755                "start": {
24756                  "line": 238,
24757                  "column": 13,
24758                  "program": "generic_arrayaslist.ets"
24759                },
24760                "end": {
24761                  "line": 238,
24762                  "column": 17,
24763                  "program": "generic_arrayaslist.ets"
24764                }
24765              }
24766            },
24767            "value": {
24768              "type": "ArrayExpression",
24769              "elements": [],
24770              "loc": {
24771                "start": {
24772                  "line": 238,
24773                  "column": 39,
24774                  "program": "generic_arrayaslist.ets"
24775                },
24776                "end": {
24777                  "line": 238,
24778                  "column": 41,
24779                  "program": "generic_arrayaslist.ets"
24780                }
24781              }
24782            },
24783            "accessibility": "private",
24784            "static": false,
24785            "readonly": false,
24786            "declare": false,
24787            "optional": false,
24788            "computed": false,
24789            "typeAnnotation": {
24790              "type": "ETSTypeReference",
24791              "part": {
24792                "type": "ETSTypeReferencePart",
24793                "name": {
24794                  "type": "Identifier",
24795                  "name": "Array",
24796                  "decorators": [],
24797                  "loc": {
24798                    "start": {
24799                      "line": 1,
24800                      "column": 1,
24801                      "program": "generic_arrayaslist.ets"
24802                    },
24803                    "end": {
24804                      "line": 1,
24805                      "column": 3,
24806                      "program": "generic_arrayaslist.ets"
24807                    }
24808                  }
24809                },
24810                "typeParams": {
24811                  "type": "TSTypeParameterInstantiation",
24812                  "params": [
24813                    {
24814                      "type": "ETSUnionType",
24815                      "types": [
24816                        {
24817                          "type": "ETSTypeReference",
24818                          "part": {
24819                            "type": "ETSTypeReferencePart",
24820                            "name": {
24821                              "type": "Identifier",
24822                              "name": "T",
24823                              "decorators": [],
24824                              "loc": {
24825                                "start": {
24826                                  "line": 1,
24827                                  "column": 3,
24828                                  "program": "generic_arrayaslist.ets"
24829                                },
24830                                "end": {
24831                                  "line": 1,
24832                                  "column": 3,
24833                                  "program": "generic_arrayaslist.ets"
24834                                }
24835                              }
24836                            },
24837                            "loc": {
24838                              "start": {
24839                                "line": 1,
24840                                "column": 3,
24841                                "program": "generic_arrayaslist.ets"
24842                              },
24843                              "end": {
24844                                "line": 1,
24845                                "column": 3,
24846                                "program": "generic_arrayaslist.ets"
24847                              }
24848                            }
24849                          },
24850                          "loc": {
24851                            "start": {
24852                              "line": 1,
24853                              "column": 3,
24854                              "program": "generic_arrayaslist.ets"
24855                            },
24856                            "end": {
24857                              "line": 1,
24858                              "column": 3,
24859                              "program": "generic_arrayaslist.ets"
24860                            }
24861                          }
24862                        },
24863                        {
24864                          "type": "ETSUndefinedType",
24865                          "loc": {
24866                            "start": {
24867                              "line": 1,
24868                              "column": 3,
24869                              "program": "generic_arrayaslist.ets"
24870                            },
24871                            "end": {
24872                              "line": 1,
24873                              "column": 3,
24874                              "program": "generic_arrayaslist.ets"
24875                            }
24876                          }
24877                        }
24878                      ],
24879                      "loc": {
24880                        "start": {
24881                          "line": 1,
24882                          "column": 3,
24883                          "program": "generic_arrayaslist.ets"
24884                        },
24885                        "end": {
24886                          "line": 1,
24887                          "column": 3,
24888                          "program": "generic_arrayaslist.ets"
24889                        }
24890                      }
24891                    }
24892                  ],
24893                  "loc": {
24894                    "start": {
24895                      "line": 1,
24896                      "column": 3,
24897                      "program": "generic_arrayaslist.ets"
24898                    },
24899                    "end": {
24900                      "line": 1,
24901                      "column": 3,
24902                      "program": "generic_arrayaslist.ets"
24903                    }
24904                  }
24905                },
24906                "loc": {
24907                  "start": {
24908                    "line": 1,
24909                    "column": 1,
24910                    "program": "generic_arrayaslist.ets"
24911                  },
24912                  "end": {
24913                    "line": 1,
24914                    "column": 3,
24915                    "program": "generic_arrayaslist.ets"
24916                  }
24917                }
24918              },
24919              "loc": {
24920                "start": {
24921                  "line": 238,
24922                  "column": 34,
24923                  "program": "generic_arrayaslist.ets"
24924                },
24925                "end": {
24926                  "line": 238,
24927                  "column": 36,
24928                  "program": "generic_arrayaslist.ets"
24929                }
24930              }
24931            },
24932            "definite": false,
24933            "decorators": [],
24934            "loc": {
24935              "start": {
24936                "line": 238,
24937                "column": 13,
24938                "program": "generic_arrayaslist.ets"
24939              },
24940              "end": {
24941                "line": 238,
24942                "column": 41,
24943                "program": "generic_arrayaslist.ets"
24944              }
24945            }
24946          },
24947          {
24948            "type": "ClassProperty",
24949            "key": {
24950              "type": "Identifier",
24951              "name": "curSize",
24952              "decorators": [],
24953              "loc": {
24954                "start": {
24955                  "line": 239,
24956                  "column": 13,
24957                  "program": "generic_arrayaslist.ets"
24958                },
24959                "end": {
24960                  "line": 239,
24961                  "column": 20,
24962                  "program": "generic_arrayaslist.ets"
24963                }
24964              }
24965            },
24966            "accessibility": "private",
24967            "static": false,
24968            "readonly": false,
24969            "declare": false,
24970            "optional": false,
24971            "computed": false,
24972            "typeAnnotation": {
24973              "type": "ETSPrimitiveType",
24974              "loc": {
24975                "start": {
24976                  "line": 239,
24977                  "column": 22,
24978                  "program": "generic_arrayaslist.ets"
24979                },
24980                "end": {
24981                  "line": 239,
24982                  "column": 25,
24983                  "program": "generic_arrayaslist.ets"
24984                }
24985              }
24986            },
24987            "definite": false,
24988            "decorators": [],
24989            "loc": {
24990              "start": {
24991                "line": 239,
24992                "column": 13,
24993                "program": "generic_arrayaslist.ets"
24994              },
24995              "end": {
24996                "line": 239,
24997                "column": 25,
24998                "program": "generic_arrayaslist.ets"
24999              }
25000            }
25001          }
25002        ],
25003        "loc": {
25004          "start": {
25005            "line": 37,
25006            "column": 43,
25007            "program": "generic_arrayaslist.ets"
25008          },
25009          "end": {
25010            "line": 241,
25011            "column": 1,
25012            "program": "generic_arrayaslist.ets"
25013          }
25014        }
25015      },
25016      "loc": {
25017        "start": {
25018          "line": 37,
25019          "column": 1,
25020          "program": "generic_arrayaslist.ets"
25021        },
25022        "end": {
25023          "line": 241,
25024          "column": 1,
25025          "program": "generic_arrayaslist.ets"
25026        }
25027      }
25028    },
25029    {
25030      "type": "ClassDeclaration",
25031      "definition": {
25032        "id": {
25033          "type": "Identifier",
25034          "name": "ETSGLOBAL",
25035          "decorators": [],
25036          "loc": {
25037            "start": {
25038              "line": 1,
25039              "column": 1,
25040              "program": "generic_arrayaslist.ets"
25041            },
25042            "end": {
25043              "line": 1,
25044              "column": 1,
25045              "program": "generic_arrayaslist.ets"
25046            }
25047          }
25048        },
25049        "superClass": null,
25050        "implements": [],
25051        "body": [
25052          {
25053            "type": "MethodDefinition",
25054            "key": {
25055              "type": "Identifier",
25056              "name": "main",
25057              "decorators": [],
25058              "loc": {
25059                "start": {
25060                  "line": 1,
25061                  "column": 1,
25062                  "program": null
25063                },
25064                "end": {
25065                  "line": 1,
25066                  "column": 1,
25067                  "program": null
25068                }
25069              }
25070            },
25071            "kind": "method",
25072            "accessibility": "public",
25073            "static": true,
25074            "optional": false,
25075            "computed": false,
25076            "value": {
25077              "type": "FunctionExpression",
25078              "function": {
25079                "type": "ScriptFunction",
25080                "id": {
25081                  "type": "Identifier",
25082                  "name": "main",
25083                  "decorators": [],
25084                  "loc": {
25085                    "start": {
25086                      "line": 1,
25087                      "column": 1,
25088                      "program": null
25089                    },
25090                    "end": {
25091                      "line": 1,
25092                      "column": 1,
25093                      "program": null
25094                    }
25095                  }
25096                },
25097                "generator": false,
25098                "async": false,
25099                "expression": false,
25100                "params": [],
25101                "body": {
25102                  "type": "BlockStatement",
25103                  "statements": [],
25104                  "loc": {
25105                    "start": {
25106                      "line": 1,
25107                      "column": 1,
25108                      "program": null
25109                    },
25110                    "end": {
25111                      "line": 1,
25112                      "column": 1,
25113                      "program": null
25114                    }
25115                  }
25116                },
25117                "loc": {
25118                  "start": {
25119                    "line": 1,
25120                    "column": 1,
25121                    "program": null
25122                  },
25123                  "end": {
25124                    "line": 1,
25125                    "column": 1,
25126                    "program": null
25127                  }
25128                }
25129              },
25130              "loc": {
25131                "start": {
25132                  "line": 1,
25133                  "column": 1,
25134                  "program": null
25135                },
25136                "end": {
25137                  "line": 1,
25138                  "column": 1,
25139                  "program": null
25140                }
25141              }
25142            },
25143            "overloads": [],
25144            "decorators": [],
25145            "loc": {
25146              "start": {
25147                "line": 1,
25148                "column": 1,
25149                "program": "generic_arrayaslist.ets"
25150              },
25151              "end": {
25152                "line": 1,
25153                "column": 1,
25154                "program": "generic_arrayaslist.ets"
25155              }
25156            }
25157          },
25158          {
25159            "type": "MethodDefinition",
25160            "key": {
25161              "type": "Identifier",
25162              "name": "_$init$_",
25163              "decorators": [],
25164              "loc": {
25165                "start": {
25166                  "line": 1,
25167                  "column": 1,
25168                  "program": null
25169                },
25170                "end": {
25171                  "line": 1,
25172                  "column": 1,
25173                  "program": null
25174                }
25175              }
25176            },
25177            "kind": "method",
25178            "accessibility": "public",
25179            "static": true,
25180            "optional": false,
25181            "computed": false,
25182            "value": {
25183              "type": "FunctionExpression",
25184              "function": {
25185                "type": "ScriptFunction",
25186                "id": {
25187                  "type": "Identifier",
25188                  "name": "_$init$_",
25189                  "decorators": [],
25190                  "loc": {
25191                    "start": {
25192                      "line": 1,
25193                      "column": 1,
25194                      "program": null
25195                    },
25196                    "end": {
25197                      "line": 1,
25198                      "column": 1,
25199                      "program": null
25200                    }
25201                  }
25202                },
25203                "generator": false,
25204                "async": false,
25205                "expression": false,
25206                "params": [],
25207                "body": {
25208                  "type": "BlockStatement",
25209                  "statements": [],
25210                  "loc": {
25211                    "start": {
25212                      "line": 1,
25213                      "column": 1,
25214                      "program": null
25215                    },
25216                    "end": {
25217                      "line": 1,
25218                      "column": 1,
25219                      "program": null
25220                    }
25221                  }
25222                },
25223                "loc": {
25224                  "start": {
25225                    "line": 1,
25226                    "column": 1,
25227                    "program": null
25228                  },
25229                  "end": {
25230                    "line": 1,
25231                    "column": 1,
25232                    "program": null
25233                  }
25234                }
25235              },
25236              "loc": {
25237                "start": {
25238                  "line": 1,
25239                  "column": 1,
25240                  "program": null
25241                },
25242                "end": {
25243                  "line": 1,
25244                  "column": 1,
25245                  "program": null
25246                }
25247              }
25248            },
25249            "overloads": [],
25250            "decorators": [],
25251            "loc": {
25252              "start": {
25253                "line": 1,
25254                "column": 1,
25255                "program": "generic_arrayaslist.ets"
25256              },
25257              "end": {
25258                "line": 1,
25259                "column": 1,
25260                "program": "generic_arrayaslist.ets"
25261              }
25262            }
25263          }
25264        ],
25265        "loc": {
25266          "start": {
25267            "line": 1,
25268            "column": 1,
25269            "program": "generic_arrayaslist.ets"
25270          },
25271          "end": {
25272            "line": 1,
25273            "column": 1,
25274            "program": "generic_arrayaslist.ets"
25275          }
25276        }
25277      },
25278      "loc": {
25279        "start": {
25280          "line": 1,
25281          "column": 1,
25282          "program": "generic_arrayaslist.ets"
25283        },
25284        "end": {
25285          "line": 1,
25286          "column": 1,
25287          "program": "generic_arrayaslist.ets"
25288        }
25289      }
25290    }
25291  ],
25292  "loc": {
25293    "start": {
25294      "line": 1,
25295      "column": 1,
25296      "program": "generic_arrayaslist.ets"
25297    },
25298    "end": {
25299      "line": 241,
25300      "column": 1,
25301      "program": "generic_arrayaslist.ets"
25302    }
25303  }
25304}
25305TypeError: Expected 1 arguments, got 3. [generic_arrayaslist.ets:115:9]
25306TypeError: No matching call signature for assertTrue(int, int, "No data to popBack in ArrayAsList!") [generic_arrayaslist.ets:115:9]
25307