1{
2  "type": "Program",
3  "statements": [
4    {
5      "type": "ClassDeclaration",
6      "definition": {
7        "id": {
8          "type": "Identifier",
9          "name": "ETSGLOBAL",
10          "decorators": [],
11          "loc": {
12            "start": {
13              "line": 1,
14              "column": 1
15            },
16            "end": {
17              "line": 1,
18              "column": 1
19            }
20          }
21        },
22        "superClass": null,
23        "implements": [],
24        "body": [
25          {
26            "type": "MethodDefinition",
27            "key": {
28              "type": "Identifier",
29              "name": "_$init$_",
30              "decorators": [],
31              "loc": {
32                "start": {
33                  "line": 1,
34                  "column": 1
35                },
36                "end": {
37                  "line": 1,
38                  "column": 1
39                }
40              }
41            },
42            "kind": "method",
43            "accessibility": "public",
44            "static": true,
45            "optional": false,
46            "computed": false,
47            "value": {
48              "type": "FunctionExpression",
49              "function": {
50                "type": "ScriptFunction",
51                "id": {
52                  "type": "Identifier",
53                  "name": "_$init$_",
54                  "decorators": [],
55                  "loc": {
56                    "start": {
57                      "line": 1,
58                      "column": 1
59                    },
60                    "end": {
61                      "line": 1,
62                      "column": 1
63                    }
64                  }
65                },
66                "generator": false,
67                "async": false,
68                "expression": false,
69                "params": [],
70                "body": {
71                  "type": "BlockStatement",
72                  "statements": [],
73                  "loc": {
74                    "start": {
75                      "line": 1,
76                      "column": 1
77                    },
78                    "end": {
79                      "line": 1,
80                      "column": 1
81                    }
82                  }
83                },
84                "loc": {
85                  "start": {
86                    "line": 1,
87                    "column": 1
88                  },
89                  "end": {
90                    "line": 1,
91                    "column": 1
92                  }
93                }
94              },
95              "loc": {
96                "start": {
97                  "line": 1,
98                  "column": 1
99                },
100                "end": {
101                  "line": 1,
102                  "column": 1
103                }
104              }
105            },
106            "overloads": [],
107            "decorators": [],
108            "loc": {
109              "start": {
110                "line": 1,
111                "column": 1
112              },
113              "end": {
114                "line": 1,
115                "column": 1
116              }
117            }
118          },
119          {
120            "type": "MethodDefinition",
121            "key": {
122              "type": "Identifier",
123              "name": "f",
124              "decorators": [],
125              "loc": {
126                "start": {
127                  "line": 16,
128                  "column": 10
129                },
130                "end": {
131                  "line": 16,
132                  "column": 11
133                }
134              }
135            },
136            "kind": "method",
137            "accessibility": "public",
138            "static": true,
139            "optional": false,
140            "computed": false,
141            "value": {
142              "type": "FunctionExpression",
143              "function": {
144                "type": "ScriptFunction",
145                "id": {
146                  "type": "Identifier",
147                  "name": "f",
148                  "decorators": [],
149                  "loc": {
150                    "start": {
151                      "line": 16,
152                      "column": 10
153                    },
154                    "end": {
155                      "line": 16,
156                      "column": 11
157                    }
158                  }
159                },
160                "generator": false,
161                "async": false,
162                "expression": false,
163                "params": [
164                  {
165                    "type": "ETSParameterExpression",
166                    "name": {
167                      "type": "Identifier",
168                      "name": "n",
169                      "typeAnnotation": {
170                        "type": "ETSTypeReference",
171                        "part": {
172                          "type": "ETSTypeReferencePart",
173                          "name": {
174                            "type": "Identifier",
175                            "name": "number",
176                            "decorators": [],
177                            "loc": {
178                              "start": {
179                                "line": 16,
180                                "column": 15
181                              },
182                              "end": {
183                                "line": 16,
184                                "column": 21
185                              }
186                            }
187                          },
188                          "loc": {
189                            "start": {
190                              "line": 16,
191                              "column": 15
192                            },
193                            "end": {
194                              "line": 16,
195                              "column": 22
196                            }
197                          }
198                        },
199                        "loc": {
200                          "start": {
201                            "line": 16,
202                            "column": 15
203                          },
204                          "end": {
205                            "line": 16,
206                            "column": 22
207                          }
208                        }
209                      },
210                      "decorators": [],
211                      "loc": {
212                        "start": {
213                          "line": 16,
214                          "column": 12
215                        },
216                        "end": {
217                          "line": 16,
218                          "column": 22
219                        }
220                      }
221                    },
222                    "loc": {
223                      "start": {
224                        "line": 16,
225                        "column": 12
226                      },
227                      "end": {
228                        "line": 16,
229                        "column": 22
230                      }
231                    }
232                  }
233                ],
234                "returnType": {
235                  "type": "ETSPrimitiveType",
236                  "loc": {
237                    "start": {
238                      "line": 16,
239                      "column": 24
240                    },
241                    "end": {
242                      "line": 16,
243                      "column": 27
244                    }
245                  }
246                },
247                "body": {
248                  "type": "BlockStatement",
249                  "statements": [
250                    {
251                      "type": "IfStatement",
252                      "test": {
253                        "type": "UnaryExpression",
254                        "operator": "!",
255                        "prefix": true,
256                        "argument": {
257                          "type": "Identifier",
258                          "name": "n",
259                          "decorators": [],
260                          "loc": {
261                            "start": {
262                              "line": 17,
263                              "column": 10
264                            },
265                            "end": {
266                              "line": 17,
267                              "column": 11
268                            }
269                          }
270                        },
271                        "loc": {
272                          "start": {
273                            "line": 17,
274                            "column": 9
275                          },
276                          "end": {
277                            "line": 17,
278                            "column": 11
279                          }
280                        }
281                      },
282                      "consequent": {
283                        "type": "BlockStatement",
284                        "statements": [
285                          {
286                            "type": "ReturnStatement",
287                            "argument": {
288                              "type": "NumberLiteral",
289                              "value": 0,
290                              "loc": {
291                                "start": {
292                                  "line": 18,
293                                  "column": 16
294                                },
295                                "end": {
296                                  "line": 18,
297                                  "column": 17
298                                }
299                              }
300                            },
301                            "loc": {
302                              "start": {
303                                "line": 18,
304                                "column": 9
305                              },
306                              "end": {
307                                "line": 18,
308                                "column": 18
309                              }
310                            }
311                          }
312                        ],
313                        "loc": {
314                          "start": {
315                            "line": 17,
316                            "column": 13
317                          },
318                          "end": {
319                            "line": 19,
320                            "column": 6
321                          }
322                        }
323                      },
324                      "alternate": null,
325                      "loc": {
326                        "start": {
327                          "line": 17,
328                          "column": 5
329                        },
330                        "end": {
331                          "line": 19,
332                          "column": 6
333                        }
334                      }
335                    },
336                    {
337                      "type": "ReturnStatement",
338                      "argument": {
339                        "type": "NumberLiteral",
340                        "value": 1,
341                        "loc": {
342                          "start": {
343                            "line": 20,
344                            "column": 12
345                          },
346                          "end": {
347                            "line": 20,
348                            "column": 13
349                          }
350                        }
351                      },
352                      "loc": {
353                        "start": {
354                          "line": 20,
355                          "column": 5
356                        },
357                        "end": {
358                          "line": 20,
359                          "column": 14
360                        }
361                      }
362                    }
363                  ],
364                  "loc": {
365                    "start": {
366                      "line": 16,
367                      "column": 28
368                    },
369                    "end": {
370                      "line": 21,
371                      "column": 2
372                    }
373                  }
374                },
375                "loc": {
376                  "start": {
377                    "line": 16,
378                    "column": 11
379                  },
380                  "end": {
381                    "line": 21,
382                    "column": 2
383                  }
384                }
385              },
386              "loc": {
387                "start": {
388                  "line": 16,
389                  "column": 11
390                },
391                "end": {
392                  "line": 21,
393                  "column": 2
394                }
395              }
396            },
397            "overloads": [],
398            "decorators": [],
399            "loc": {
400              "start": {
401                "line": 16,
402                "column": 1
403              },
404              "end": {
405                "line": 21,
406                "column": 2
407              }
408            }
409          }
410        ],
411        "loc": {
412          "start": {
413            "line": 1,
414            "column": 1
415          },
416          "end": {
417            "line": 1,
418            "column": 1
419          }
420        }
421      },
422      "loc": {
423        "start": {
424          "line": 1,
425          "column": 1
426        },
427        "end": {
428          "line": 1,
429          "column": 1
430        }
431      }
432    }
433  ],
434  "loc": {
435    "start": {
436      "line": 1,
437      "column": 1
438    },
439    "end": {
440      "line": 22,
441      "column": 1
442    }
443  }
444}
445