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