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