1{
2  "type": "Program",
3  "statements": [
4    {
5      "type": "ExportNamedDeclaration",
6      "declaration": null,
7      "source": {
8        "type": "StringLiteral",
9        "value": "foo",
10        "loc": {
11          "start": {
12            "line": 20,
13            "column": 26
14          },
15          "end": {
16            "line": 20,
17            "column": 31
18          }
19        }
20      },
21      "specifiers": [
22        {
23          "type": "ExportSpecifier",
24          "local": {
25            "type": "Identifier",
26            "name": "a",
27            "decorators": [],
28            "loc": {
29              "start": {
30                "line": 20,
31                "column": 10
32              },
33              "end": {
34                "line": 20,
35                "column": 11
36              }
37            }
38          },
39          "exported": {
40            "type": "Identifier",
41            "name": "b",
42            "decorators": [],
43            "loc": {
44              "start": {
45                "line": 20,
46                "column": 15
47              },
48              "end": {
49                "line": 20,
50                "column": 16
51              }
52            }
53          },
54          "loc": {
55            "start": {
56              "line": 20,
57              "column": 10
58            },
59            "end": {
60              "line": 20,
61              "column": 16
62            }
63          }
64        },
65        {
66          "type": "ExportSpecifier",
67          "local": {
68            "type": "Identifier",
69            "name": "c",
70            "decorators": [],
71            "loc": {
72              "start": {
73                "line": 20,
74                "column": 18
75              },
76              "end": {
77                "line": 20,
78                "column": 19
79              }
80            }
81          },
82          "exported": {
83            "type": "Identifier",
84            "name": "c",
85            "decorators": [],
86            "loc": {
87              "start": {
88                "line": 20,
89                "column": 18
90              },
91              "end": {
92                "line": 20,
93                "column": 19
94              }
95            }
96          },
97          "loc": {
98            "start": {
99              "line": 20,
100              "column": 18
101            },
102            "end": {
103              "line": 20,
104              "column": 19
105            }
106          }
107        }
108      ],
109      "loc": {
110        "start": {
111          "line": 20,
112          "column": 1
113        },
114        "end": {
115          "line": 20,
116          "column": 20
117        }
118      }
119    },
120    {
121      "type": "ExportNamedDeclaration",
122      "declaration": null,
123      "source": null,
124      "specifiers": [],
125      "loc": {
126        "start": {
127          "line": 21,
128          "column": 1
129        },
130        "end": {
131          "line": 21,
132          "column": 10
133        }
134      }
135    },
136    {
137      "type": "ExportNamedDeclaration",
138      "declaration": {
139        "type": "VariableDeclaration",
140        "declarations": [
141          {
142            "type": "VariableDeclarator",
143            "id": {
144              "type": "Identifier",
145              "name": "e",
146              "decorators": [],
147              "loc": {
148                "start": {
149                  "line": 22,
150                  "column": 12
151                },
152                "end": {
153                  "line": 22,
154                  "column": 13
155                }
156              }
157            },
158            "init": {
159              "type": "NumberLiteral",
160              "value": 1,
161              "loc": {
162                "start": {
163                  "line": 22,
164                  "column": 16
165                },
166                "end": {
167                  "line": 22,
168                  "column": 17
169                }
170              }
171            },
172            "loc": {
173              "start": {
174                "line": 22,
175                "column": 12
176              },
177              "end": {
178                "line": 22,
179                "column": 17
180              }
181            }
182          }
183        ],
184        "kind": "var",
185        "loc": {
186          "start": {
187            "line": 22,
188            "column": 8
189          },
190          "end": {
191            "line": 22,
192            "column": 18
193          }
194        }
195      },
196      "source": null,
197      "specifiers": [],
198      "loc": {
199        "start": {
200          "line": 22,
201          "column": 1
202        },
203        "end": {
204          "line": 22,
205          "column": 18
206        }
207      }
208    },
209    {
210      "type": "ExportNamedDeclaration",
211      "declaration": null,
212      "source": {
213        "type": "StringLiteral",
214        "value": "bar",
215        "loc": {
216          "start": {
217            "line": 23,
218            "column": 16
219          },
220          "end": {
221            "line": 23,
222            "column": 21
223          }
224        }
225      },
226      "specifiers": [],
227      "loc": {
228        "start": {
229          "line": 23,
230          "column": 1
231        },
232        "end": {
233          "line": 23,
234          "column": 10
235        }
236      }
237    },
238    {
239      "type": "ExportNamedDeclaration",
240      "declaration": {
241        "type": "FunctionDeclaration",
242        "function": {
243          "type": "ScriptFunction",
244          "id": {
245            "type": "Identifier",
246            "name": "f",
247            "decorators": [],
248            "loc": {
249              "start": {
250                "line": 24,
251                "column": 17
252              },
253              "end": {
254                "line": 24,
255                "column": 18
256              }
257            }
258          },
259          "generator": false,
260          "async": false,
261          "expression": false,
262          "params": [],
263          "body": {
264            "type": "BlockStatement",
265            "statements": [],
266            "loc": {
267              "start": {
268                "line": 24,
269                "column": 21
270              },
271              "end": {
272                "line": 24,
273                "column": 23
274              }
275            }
276          },
277          "loc": {
278            "start": {
279              "line": 24,
280              "column": 8
281            },
282            "end": {
283              "line": 24,
284              "column": 23
285            }
286          }
287        },
288        "loc": {
289          "start": {
290            "line": 24,
291            "column": 8
292          },
293          "end": {
294            "line": 24,
295            "column": 23
296          }
297        }
298      },
299      "source": null,
300      "specifiers": [],
301      "loc": {
302        "start": {
303          "line": 24,
304          "column": 1
305        },
306        "end": {
307          "line": 24,
308          "column": 23
309        }
310      }
311    },
312    {
313      "type": "ExportNamedDeclaration",
314      "declaration": {
315        "type": "FunctionDeclaration",
316        "function": {
317          "type": "ScriptFunction",
318          "id": {
319            "type": "Identifier",
320            "name": "g",
321            "decorators": [],
322            "loc": {
323              "start": {
324                "line": 25,
325                "column": 23
326              },
327              "end": {
328                "line": 25,
329                "column": 24
330              }
331            }
332          },
333          "generator": false,
334          "async": true,
335          "expression": false,
336          "params": [],
337          "body": {
338            "type": "BlockStatement",
339            "statements": [],
340            "loc": {
341              "start": {
342                "line": 25,
343                "column": 27
344              },
345              "end": {
346                "line": 25,
347                "column": 29
348              }
349            }
350          },
351          "loc": {
352            "start": {
353              "line": 25,
354              "column": 14
355            },
356            "end": {
357              "line": 25,
358              "column": 29
359            }
360          }
361        },
362        "loc": {
363          "start": {
364            "line": 25,
365            "column": 14
366          },
367          "end": {
368            "line": 25,
369            "column": 29
370          }
371        }
372      },
373      "source": null,
374      "specifiers": [],
375      "loc": {
376        "start": {
377          "line": 25,
378          "column": 1
379        },
380        "end": {
381          "line": 25,
382          "column": 29
383        }
384      }
385    },
386    {
387      "type": "ExportNamedDeclaration",
388      "declaration": {
389        "type": "FunctionDeclaration",
390        "function": {
391          "type": "ScriptFunction",
392          "id": {
393            "type": "Identifier",
394            "name": "h",
395            "decorators": [],
396            "loc": {
397              "start": {
398                "line": 26,
399                "column": 18
400              },
401              "end": {
402                "line": 26,
403                "column": 19
404              }
405            }
406          },
407          "generator": true,
408          "async": false,
409          "expression": false,
410          "params": [],
411          "body": {
412            "type": "BlockStatement",
413            "statements": [],
414            "loc": {
415              "start": {
416                "line": 26,
417                "column": 22
418              },
419              "end": {
420                "line": 26,
421                "column": 24
422              }
423            }
424          },
425          "loc": {
426            "start": {
427              "line": 26,
428              "column": 8
429            },
430            "end": {
431              "line": 26,
432              "column": 24
433            }
434          }
435        },
436        "loc": {
437          "start": {
438            "line": 26,
439            "column": 8
440          },
441          "end": {
442            "line": 26,
443            "column": 24
444          }
445        }
446      },
447      "source": null,
448      "specifiers": [],
449      "loc": {
450        "start": {
451          "line": 26,
452          "column": 1
453        },
454        "end": {
455          "line": 26,
456          "column": 24
457        }
458      }
459    },
460    {
461      "type": "ExportNamedDeclaration",
462      "declaration": {
463        "type": "ClassDeclaration",
464        "definition": {
465          "id": {
466            "type": "Identifier",
467            "name": "i",
468            "decorators": [],
469            "loc": {
470              "start": {
471                "line": 27,
472                "column": 14
473              },
474              "end": {
475                "line": 27,
476                "column": 15
477              }
478            }
479          },
480          "superClass": null,
481          "implements": [],
482          "constructor": {
483            "type": "MethodDefinition",
484            "key": {
485              "type": "Identifier",
486              "name": "constructor",
487              "decorators": [],
488              "loc": {
489                "start": {
490                  "line": 1,
491                  "column": 1
492                },
493                "end": {
494                  "line": 1,
495                  "column": 1
496                }
497              }
498            },
499            "kind": "constructor",
500            "static": false,
501            "optional": false,
502            "computed": false,
503            "value": {
504              "type": "FunctionExpression",
505              "function": {
506                "type": "ScriptFunction",
507                "id": null,
508                "generator": false,
509                "async": false,
510                "expression": false,
511                "params": [],
512                "body": {
513                  "type": "BlockStatement",
514                  "statements": [],
515                  "loc": {
516                    "start": {
517                      "line": 1,
518                      "column": 1
519                    },
520                    "end": {
521                      "line": 1,
522                      "column": 1
523                    }
524                  }
525                },
526                "loc": {
527                  "start": {
528                    "line": 1,
529                    "column": 1
530                  },
531                  "end": {
532                    "line": 1,
533                    "column": 1
534                  }
535                }
536              },
537              "loc": {
538                "start": {
539                  "line": 1,
540                  "column": 1
541                },
542                "end": {
543                  "line": 1,
544                  "column": 1
545                }
546              }
547            },
548            "overloads": [],
549            "decorators": [],
550            "loc": {
551              "start": {
552                "line": 27,
553                "column": 17
554              },
555              "end": {
556                "line": 27,
557                "column": 17
558              }
559            }
560          },
561          "body": [],
562          "loc": {
563            "start": {
564              "line": 27,
565              "column": 15
566            },
567            "end": {
568              "line": 27,
569              "column": 17
570            }
571          }
572        },
573        "loc": {
574          "start": {
575            "line": 27,
576            "column": 8
577          },
578          "end": {
579            "line": 27,
580            "column": 17
581          }
582        }
583      },
584      "source": null,
585      "specifiers": [],
586      "loc": {
587        "start": {
588          "line": 27,
589          "column": 1
590        },
591        "end": {
592          "line": 27,
593          "column": 17
594        }
595      }
596    },
597    {
598      "type": "EmptyStatement",
599      "loc": {
600        "start": {
601          "line": 27,
602          "column": 17
603        },
604        "end": {
605          "line": 27,
606          "column": 18
607        }
608      }
609    },
610    {
611      "type": "ExportNamedDeclaration",
612      "declaration": {
613        "type": "VariableDeclaration",
614        "declarations": [
615          {
616            "type": "VariableDeclarator",
617            "id": {
618              "type": "Identifier",
619              "name": "j",
620              "decorators": [],
621              "loc": {
622                "start": {
623                  "line": 28,
624                  "column": 12
625                },
626                "end": {
627                  "line": 28,
628                  "column": 13
629                }
630              }
631            },
632            "init": {
633              "type": "NumberLiteral",
634              "value": 2,
635              "loc": {
636                "start": {
637                  "line": 28,
638                  "column": 16
639                },
640                "end": {
641                  "line": 28,
642                  "column": 17
643                }
644              }
645            },
646            "loc": {
647              "start": {
648                "line": 28,
649                "column": 12
650              },
651              "end": {
652                "line": 28,
653                "column": 17
654              }
655            }
656          }
657        ],
658        "kind": "let",
659        "loc": {
660          "start": {
661            "line": 28,
662            "column": 8
663          },
664          "end": {
665            "line": 28,
666            "column": 18
667          }
668        }
669      },
670      "source": null,
671      "specifiers": [],
672      "loc": {
673        "start": {
674          "line": 28,
675          "column": 1
676        },
677        "end": {
678          "line": 28,
679          "column": 18
680        }
681      }
682    },
683    {
684      "type": "ExportNamedDeclaration",
685      "declaration": {
686        "type": "VariableDeclaration",
687        "declarations": [
688          {
689            "type": "VariableDeclarator",
690            "id": {
691              "type": "Identifier",
692              "name": "k",
693              "decorators": [],
694              "loc": {
695                "start": {
696                  "line": 29,
697                  "column": 14
698                },
699                "end": {
700                  "line": 29,
701                  "column": 15
702                }
703              }
704            },
705            "init": {
706              "type": "BooleanLiteral",
707              "value": true,
708              "loc": {
709                "start": {
710                  "line": 29,
711                  "column": 18
712                },
713                "end": {
714                  "line": 29,
715                  "column": 22
716                }
717              }
718            },
719            "loc": {
720              "start": {
721                "line": 29,
722                "column": 14
723              },
724              "end": {
725                "line": 29,
726                "column": 22
727              }
728            }
729          }
730        ],
731        "kind": "const",
732        "loc": {
733          "start": {
734            "line": 29,
735            "column": 8
736          },
737          "end": {
738            "line": 29,
739            "column": 23
740          }
741        }
742      },
743      "source": null,
744      "specifiers": [],
745      "loc": {
746        "start": {
747          "line": 29,
748          "column": 1
749        },
750        "end": {
751          "line": 29,
752          "column": 23
753        }
754      }
755    }
756  ],
757  "loc": {
758    "start": {
759      "line": 1,
760      "column": 1
761    },
762    "end": {
763      "line": 29,
764      "column": 23
765    }
766  }
767}
768