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