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