• 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": "Dog",
10          "decorators": [],
11          "loc": {
12            "start": {
13              "line": 17,
14              "column": 7
15            },
16            "end": {
17              "line": 17,
18              "column": 10
19            }
20          }
21        },
22        "superClass": null,
23        "implements": [],
24        "body": [
25          {
26            "type": "ClassProperty",
27            "key": {
28              "type": "Identifier",
29              "name": "name",
30              "decorators": [],
31              "loc": {
32                "start": {
33                  "line": 18,
34                  "column": 5
35                },
36                "end": {
37                  "line": 18,
38                  "column": 9
39                }
40              }
41            },
42            "accessibility": "public",
43            "static": false,
44            "readonly": false,
45            "declare": false,
46            "optional": false,
47            "computed": false,
48            "typeAnnotation": {
49              "type": "ETSTypeReference",
50              "part": {
51                "type": "ETSTypeReferencePart",
52                "name": {
53                  "type": "Identifier",
54                  "name": "String",
55                  "decorators": [],
56                  "loc": {
57                    "start": {
58                      "line": 18,
59                      "column": 11
60                    },
61                    "end": {
62                      "line": 18,
63                      "column": 17
64                    }
65                  }
66                },
67                "loc": {
68                  "start": {
69                    "line": 18,
70                    "column": 11
71                  },
72                  "end": {
73                    "line": 18,
74                    "column": 18
75                  }
76                }
77              },
78              "loc": {
79                "start": {
80                  "line": 18,
81                  "column": 11
82                },
83                "end": {
84                  "line": 18,
85                  "column": 18
86                }
87              }
88            },
89            "definite": false,
90            "decorators": [],
91            "loc": {
92              "start": {
93                "line": 18,
94                "column": 5
95              },
96              "end": {
97                "line": 18,
98                "column": 18
99              }
100            }
101          },
102          {
103            "type": "ClassProperty",
104            "key": {
105              "type": "Identifier",
106              "name": "legs",
107              "decorators": [],
108              "loc": {
109                "start": {
110                  "line": 19,
111                  "column": 5
112                },
113                "end": {
114                  "line": 19,
115                  "column": 9
116                }
117              }
118            },
119            "accessibility": "public",
120            "static": false,
121            "readonly": false,
122            "declare": false,
123            "optional": false,
124            "computed": false,
125            "typeAnnotation": {
126              "type": "ETSTypeReference",
127              "part": {
128                "type": "ETSTypeReferencePart",
129                "name": {
130                  "type": "Identifier",
131                  "name": "Int",
132                  "decorators": [],
133                  "loc": {
134                    "start": {
135                      "line": 19,
136                      "column": 11
137                    },
138                    "end": {
139                      "line": 19,
140                      "column": 14
141                    }
142                  }
143                },
144                "loc": {
145                  "start": {
146                    "line": 19,
147                    "column": 11
148                  },
149                  "end": {
150                    "line": 19,
151                    "column": 15
152                  }
153                }
154              },
155              "loc": {
156                "start": {
157                  "line": 19,
158                  "column": 11
159                },
160                "end": {
161                  "line": 19,
162                  "column": 15
163                }
164              }
165            },
166            "definite": false,
167            "decorators": [],
168            "loc": {
169              "start": {
170                "line": 19,
171                "column": 5
172              },
173              "end": {
174                "line": 19,
175                "column": 15
176              }
177            }
178          },
179          {
180            "type": "MethodDefinition",
181            "key": {
182              "type": "Identifier",
183              "name": "constructor",
184              "decorators": [],
185              "loc": {
186                "start": {
187                  "line": 1,
188                  "column": 1
189                },
190                "end": {
191                  "line": 1,
192                  "column": 1
193                }
194              }
195            },
196            "kind": "constructor",
197            "static": false,
198            "optional": false,
199            "computed": false,
200            "value": {
201              "type": "FunctionExpression",
202              "function": {
203                "type": "ScriptFunction",
204                "id": {
205                  "type": "Identifier",
206                  "name": "constructor",
207                  "decorators": [],
208                  "loc": {
209                    "start": {
210                      "line": 1,
211                      "column": 1
212                    },
213                    "end": {
214                      "line": 1,
215                      "column": 1
216                    }
217                  }
218                },
219                "generator": false,
220                "async": false,
221                "expression": false,
222                "params": [],
223                "body": {
224                  "type": "BlockStatement",
225                  "statements": [],
226                  "loc": {
227                    "start": {
228                      "line": 1,
229                      "column": 1
230                    },
231                    "end": {
232                      "line": 1,
233                      "column": 1
234                    }
235                  }
236                },
237                "loc": {
238                  "start": {
239                    "line": 1,
240                    "column": 1
241                  },
242                  "end": {
243                    "line": 1,
244                    "column": 1
245                  }
246                }
247              },
248              "loc": {
249                "start": {
250                  "line": 1,
251                  "column": 1
252                },
253                "end": {
254                  "line": 1,
255                  "column": 1
256                }
257              }
258            },
259            "overloads": [],
260            "decorators": [],
261            "loc": {
262              "start": {
263                "line": 20,
264                "column": 2
265              },
266              "end": {
267                "line": 20,
268                "column": 2
269              }
270            }
271          }
272        ],
273        "loc": {
274          "start": {
275            "line": 17,
276            "column": 11
277          },
278          "end": {
279            "line": 20,
280            "column": 2
281          }
282        }
283      },
284      "loc": {
285        "start": {
286          "line": 17,
287          "column": 1
288        },
289        "end": {
290          "line": 20,
291          "column": 2
292        }
293      }
294    },
295    {
296      "type": "ClassDeclaration",
297      "definition": {
298        "id": {
299          "type": "Identifier",
300          "name": "ETSGLOBAL",
301          "decorators": [],
302          "loc": {
303            "start": {
304              "line": 1,
305              "column": 1
306            },
307            "end": {
308              "line": 1,
309              "column": 1
310            }
311          }
312        },
313        "superClass": null,
314        "implements": [],
315        "body": [
316          {
317            "type": "MethodDefinition",
318            "key": {
319              "type": "Identifier",
320              "name": "main",
321              "decorators": [],
322              "loc": {
323                "start": {
324                  "line": 1,
325                  "column": 1
326                },
327                "end": {
328                  "line": 1,
329                  "column": 1
330                }
331              }
332            },
333            "kind": "method",
334            "accessibility": "public",
335            "static": true,
336            "optional": false,
337            "computed": false,
338            "value": {
339              "type": "FunctionExpression",
340              "function": {
341                "type": "ScriptFunction",
342                "id": {
343                  "type": "Identifier",
344                  "name": "main",
345                  "decorators": [],
346                  "loc": {
347                    "start": {
348                      "line": 1,
349                      "column": 1
350                    },
351                    "end": {
352                      "line": 1,
353                      "column": 1
354                    }
355                  }
356                },
357                "generator": false,
358                "async": false,
359                "expression": false,
360                "params": [],
361                "body": {
362                  "type": "BlockStatement",
363                  "statements": [],
364                  "loc": {
365                    "start": {
366                      "line": 1,
367                      "column": 1
368                    },
369                    "end": {
370                      "line": 1,
371                      "column": 1
372                    }
373                  }
374                },
375                "loc": {
376                  "start": {
377                    "line": 1,
378                    "column": 1
379                  },
380                  "end": {
381                    "line": 1,
382                    "column": 1
383                  }
384                }
385              },
386              "loc": {
387                "start": {
388                  "line": 1,
389                  "column": 1
390                },
391                "end": {
392                  "line": 1,
393                  "column": 1
394                }
395              }
396            },
397            "overloads": [],
398            "decorators": [],
399            "loc": {
400              "start": {
401                "line": 1,
402                "column": 1
403              },
404              "end": {
405                "line": 1,
406                "column": 1
407              }
408            }
409          },
410          {
411            "type": "MethodDefinition",
412            "key": {
413              "type": "Identifier",
414              "name": "_$init$_",
415              "decorators": [],
416              "loc": {
417                "start": {
418                  "line": 1,
419                  "column": 1
420                },
421                "end": {
422                  "line": 1,
423                  "column": 1
424                }
425              }
426            },
427            "kind": "method",
428            "accessibility": "public",
429            "static": true,
430            "optional": false,
431            "computed": false,
432            "value": {
433              "type": "FunctionExpression",
434              "function": {
435                "type": "ScriptFunction",
436                "id": {
437                  "type": "Identifier",
438                  "name": "_$init$_",
439                  "decorators": [],
440                  "loc": {
441                    "start": {
442                      "line": 1,
443                      "column": 1
444                    },
445                    "end": {
446                      "line": 1,
447                      "column": 1
448                    }
449                  }
450                },
451                "generator": false,
452                "async": false,
453                "expression": false,
454                "params": [],
455                "body": {
456                  "type": "BlockStatement",
457                  "statements": [
458                    {
459                      "type": "ExpressionStatement",
460                      "expression": {
461                        "type": "AssignmentExpression",
462                        "operator": "=",
463                        "left": {
464                          "type": "Identifier",
465                          "name": "dog",
466                          "decorators": [],
467                          "loc": {
468                            "start": {
469                              "line": 22,
470                              "column": 5
471                            },
472                            "end": {
473                              "line": 22,
474                              "column": 8
475                            }
476                          }
477                        },
478                        "right": {
479                          "type": "ObjectExpression",
480                          "properties": [
481                            {
482                              "type": "Property",
483                              "method": false,
484                              "shorthand": false,
485                              "computed": false,
486                              "key": {
487                                "type": "Identifier",
488                                "name": "name",
489                                "decorators": [],
490                                "loc": {
491                                  "start": {
492                                    "line": 23,
493                                    "column": 5
494                                  },
495                                  "end": {
496                                    "line": 23,
497                                    "column": 9
498                                  }
499                                }
500                              },
501                              "value": {
502                                "type": "StringLiteral",
503                                "value": "Scooby",
504                                "loc": {
505                                  "start": {
506                                    "line": 23,
507                                    "column": 11
508                                  },
509                                  "end": {
510                                    "line": 23,
511                                    "column": 19
512                                  }
513                                }
514                              },
515                              "kind": "init",
516                              "loc": {
517                                "start": {
518                                  "line": 23,
519                                  "column": 5
520                                },
521                                "end": {
522                                  "line": 23,
523                                  "column": 19
524                                }
525                              }
526                            }
527                          ],
528                          "loc": {
529                            "start": {
530                              "line": 22,
531                              "column": 16
532                            },
533                            "end": {
534                              "line": 24,
535                              "column": 2
536                            }
537                          }
538                        },
539                        "loc": {
540                          "start": {
541                            "line": 22,
542                            "column": 5
543                          },
544                          "end": {
545                            "line": 24,
546                            "column": 2
547                          }
548                        }
549                      },
550                      "loc": {
551                        "start": {
552                          "line": 22,
553                          "column": 5
554                        },
555                        "end": {
556                          "line": 24,
557                          "column": 2
558                        }
559                      }
560                    },
561                    {
562                      "type": "ExpressionStatement",
563                      "expression": {
564                        "type": "AssignmentExpression",
565                        "operator": "=",
566                        "left": {
567                          "type": "Identifier",
568                          "name": "name",
569                          "decorators": [],
570                          "loc": {
571                            "start": {
572                              "line": 26,
573                              "column": 5
574                            },
575                            "end": {
576                              "line": 26,
577                              "column": 9
578                            }
579                          }
580                        },
581                        "right": {
582                          "type": "LogicalExpression",
583                          "operator": "??",
584                          "left": {
585                            "type": "BlockExpression",
586                            "statements": [
587                              {
588                                "type": "VariableDeclaration",
589                                "declarations": [
590                                  {
591                                    "type": "VariableDeclarator",
592                                    "id": {
593                                      "type": "Identifier",
594                                      "name": "gensym$_1",
595                                      "decorators": [],
596                                      "loc": {
597                                        "start": {
598                                          "line": 1,
599                                          "column": 3
600                                        },
601                                        "end": {
602                                          "line": 1,
603                                          "column": 3
604                                        }
605                                      }
606                                    },
607                                    "init": {
608                                      "type": "Identifier",
609                                      "name": "dog",
610                                      "decorators": [],
611                                      "loc": {
612                                        "start": {
613                                          "line": 26,
614                                          "column": 12
615                                        },
616                                        "end": {
617                                          "line": 26,
618                                          "column": 15
619                                        }
620                                      }
621                                    },
622                                    "loc": {
623                                      "start": {
624                                        "line": 1,
625                                        "column": 3
626                                      },
627                                      "end": {
628                                        "line": 1,
629                                        "column": 3
630                                      }
631                                    }
632                                  }
633                                ],
634                                "kind": "let",
635                                "loc": {
636                                  "start": {
637                                    "line": 26,
638                                    "column": 12
639                                  },
640                                  "end": {
641                                    "line": 26,
642                                    "column": 32
643                                  }
644                                }
645                              },
646                              {
647                                "type": "ExpressionStatement",
648                                "expression": {
649                                  "type": "ConditionalExpression",
650                                  "test": {
651                                    "type": "BinaryExpression",
652                                    "operator": "==",
653                                    "left": {
654                                      "type": "Identifier",
655                                      "name": "gensym$_1",
656                                      "decorators": [],
657                                      "loc": {
658                                        "start": {
659                                          "line": 1,
660                                          "column": 3
661                                        },
662                                        "end": {
663                                          "line": 1,
664                                          "column": 3
665                                        }
666                                      }
667                                    },
668                                    "right": {
669                                      "type": "NullLiteral",
670                                      "value": null,
671                                      "loc": {
672                                        "start": {
673                                          "line": 1,
674                                          "column": 3
675                                        },
676                                        "end": {
677                                          "line": 1,
678                                          "column": 3
679                                        }
680                                      }
681                                    },
682                                    "loc": {
683                                      "start": {
684                                        "line": 1,
685                                        "column": 3
686                                      },
687                                      "end": {
688                                        "line": 1,
689                                        "column": 3
690                                      }
691                                    }
692                                  },
693                                  "consequent": {
694                                    "type": "UndefinedLiteral",
695                                    "value": undefined,
696                                    "loc": {
697                                      "start": {
698                                        "line": 1,
699                                        "column": 3
700                                      },
701                                      "end": {
702                                        "line": 1,
703                                        "column": 3
704                                      }
705                                    }
706                                  },
707                                  "alternate": {
708                                    "type": "MemberExpression",
709                                    "object": {
710                                      "type": "Identifier",
711                                      "name": "gensym$_1",
712                                      "decorators": [],
713                                      "loc": {
714                                        "start": {
715                                          "line": 26,
716                                          "column": 12
717                                        },
718                                        "end": {
719                                          "line": 26,
720                                          "column": 21
721                                        }
722                                      }
723                                    },
724                                    "property": {
725                                      "type": "Identifier",
726                                      "name": "name",
727                                      "decorators": [],
728                                      "loc": {
729                                        "start": {
730                                          "line": 26,
731                                          "column": 17
732                                        },
733                                        "end": {
734                                          "line": 26,
735                                          "column": 21
736                                        }
737                                      }
738                                    },
739                                    "computed": false,
740                                    "optional": false,
741                                    "loc": {
742                                      "start": {
743                                        "line": 26,
744                                        "column": 12
745                                      },
746                                      "end": {
747                                        "line": 26,
748                                        "column": 21
749                                      }
750                                    }
751                                  },
752                                  "loc": {
753                                    "start": {
754                                      "line": 1,
755                                      "column": 3
756                                    },
757                                    "end": {
758                                      "line": 1,
759                                      "column": 3
760                                    }
761                                  }
762                                },
763                                "loc": {
764                                  "start": {
765                                    "line": 1,
766                                    "column": 3
767                                  },
768                                  "end": {
769                                    "line": 1,
770                                    "column": 3
771                                  }
772                                }
773                              }
774                            ],
775                            "loc": {
776                              "start": {
777                                "line": 26,
778                                "column": 12
779                              },
780                              "end": {
781                                "line": 26,
782                                "column": 32
783                              }
784                            }
785                          },
786                          "right": {
787                            "type": "StringLiteral",
788                            "value": "Pluto",
789                            "loc": {
790                              "start": {
791                                "line": 26,
792                                "column": 25
793                              },
794                              "end": {
795                                "line": 26,
796                                "column": 32
797                              }
798                            }
799                          },
800                          "loc": {
801                            "start": {
802                              "line": 26,
803                              "column": 12
804                            },
805                            "end": {
806                              "line": 26,
807                              "column": 32
808                            }
809                          }
810                        },
811                        "loc": {
812                          "start": {
813                            "line": 26,
814                            "column": 5
815                          },
816                          "end": {
817                            "line": 26,
818                            "column": 32
819                          }
820                        }
821                      },
822                      "loc": {
823                        "start": {
824                          "line": 26,
825                          "column": 5
826                        },
827                        "end": {
828                          "line": 26,
829                          "column": 32
830                        }
831                      }
832                    },
833                    {
834                      "type": "ExpressionStatement",
835                      "expression": {
836                        "type": "AssignmentExpression",
837                        "operator": "=",
838                        "left": {
839                          "type": "Identifier",
840                          "name": "legCount",
841                          "decorators": [],
842                          "loc": {
843                            "start": {
844                              "line": 27,
845                              "column": 5
846                            },
847                            "end": {
848                              "line": 27,
849                              "column": 13
850                            }
851                          }
852                        },
853                        "right": {
854                          "type": "LogicalExpression",
855                          "operator": "??",
856                          "left": {
857                            "type": "BlockExpression",
858                            "statements": [
859                              {
860                                "type": "VariableDeclaration",
861                                "declarations": [
862                                  {
863                                    "type": "VariableDeclarator",
864                                    "id": {
865                                      "type": "Identifier",
866                                      "name": "gensym$_2",
867                                      "decorators": [],
868                                      "loc": {
869                                        "start": {
870                                          "line": 1,
871                                          "column": 3
872                                        },
873                                        "end": {
874                                          "line": 1,
875                                          "column": 3
876                                        }
877                                      }
878                                    },
879                                    "init": {
880                                      "type": "Identifier",
881                                      "name": "dog",
882                                      "decorators": [],
883                                      "loc": {
884                                        "start": {
885                                          "line": 27,
886                                          "column": 21
887                                        },
888                                        "end": {
889                                          "line": 27,
890                                          "column": 24
891                                        }
892                                      }
893                                    },
894                                    "loc": {
895                                      "start": {
896                                        "line": 1,
897                                        "column": 3
898                                      },
899                                      "end": {
900                                        "line": 1,
901                                        "column": 3
902                                      }
903                                    }
904                                  }
905                                ],
906                                "kind": "let",
907                                "loc": {
908                                  "start": {
909                                    "line": 27,
910                                    "column": 21
911                                  },
912                                  "end": {
913                                    "line": 27,
914                                    "column": 35
915                                  }
916                                }
917                              },
918                              {
919                                "type": "ExpressionStatement",
920                                "expression": {
921                                  "type": "ConditionalExpression",
922                                  "test": {
923                                    "type": "BinaryExpression",
924                                    "operator": "==",
925                                    "left": {
926                                      "type": "Identifier",
927                                      "name": "gensym$_2",
928                                      "decorators": [],
929                                      "loc": {
930                                        "start": {
931                                          "line": 1,
932                                          "column": 3
933                                        },
934                                        "end": {
935                                          "line": 1,
936                                          "column": 3
937                                        }
938                                      }
939                                    },
940                                    "right": {
941                                      "type": "NullLiteral",
942                                      "value": null,
943                                      "loc": {
944                                        "start": {
945                                          "line": 1,
946                                          "column": 3
947                                        },
948                                        "end": {
949                                          "line": 1,
950                                          "column": 3
951                                        }
952                                      }
953                                    },
954                                    "loc": {
955                                      "start": {
956                                        "line": 1,
957                                        "column": 3
958                                      },
959                                      "end": {
960                                        "line": 1,
961                                        "column": 3
962                                      }
963                                    }
964                                  },
965                                  "consequent": {
966                                    "type": "UndefinedLiteral",
967                                    "value": undefined,
968                                    "loc": {
969                                      "start": {
970                                        "line": 1,
971                                        "column": 3
972                                      },
973                                      "end": {
974                                        "line": 1,
975                                        "column": 3
976                                      }
977                                    }
978                                  },
979                                  "alternate": {
980                                    "type": "MemberExpression",
981                                    "object": {
982                                      "type": "Identifier",
983                                      "name": "gensym$_2",
984                                      "decorators": [],
985                                      "loc": {
986                                        "start": {
987                                          "line": 27,
988                                          "column": 21
989                                        },
990                                        "end": {
991                                          "line": 27,
992                                          "column": 30
993                                        }
994                                      }
995                                    },
996                                    "property": {
997                                      "type": "Identifier",
998                                      "name": "legs",
999                                      "decorators": [],
1000                                      "loc": {
1001                                        "start": {
1002                                          "line": 27,
1003                                          "column": 26
1004                                        },
1005                                        "end": {
1006                                          "line": 27,
1007                                          "column": 30
1008                                        }
1009                                      }
1010                                    },
1011                                    "computed": false,
1012                                    "optional": false,
1013                                    "loc": {
1014                                      "start": {
1015                                        "line": 27,
1016                                        "column": 21
1017                                      },
1018                                      "end": {
1019                                        "line": 27,
1020                                        "column": 30
1021                                      }
1022                                    }
1023                                  },
1024                                  "loc": {
1025                                    "start": {
1026                                      "line": 1,
1027                                      "column": 3
1028                                    },
1029                                    "end": {
1030                                      "line": 1,
1031                                      "column": 3
1032                                    }
1033                                  }
1034                                },
1035                                "loc": {
1036                                  "start": {
1037                                    "line": 1,
1038                                    "column": 3
1039                                  },
1040                                  "end": {
1041                                    "line": 1,
1042                                    "column": 3
1043                                  }
1044                                }
1045                              }
1046                            ],
1047                            "loc": {
1048                              "start": {
1049                                "line": 27,
1050                                "column": 21
1051                              },
1052                              "end": {
1053                                "line": 27,
1054                                "column": 35
1055                              }
1056                            }
1057                          },
1058                          "right": {
1059                            "type": "NumberLiteral",
1060                            "value": 4,
1061                            "loc": {
1062                              "start": {
1063                                "line": 27,
1064                                "column": 34
1065                              },
1066                              "end": {
1067                                "line": 27,
1068                                "column": 35
1069                              }
1070                            }
1071                          },
1072                          "loc": {
1073                            "start": {
1074                              "line": 27,
1075                              "column": 21
1076                            },
1077                            "end": {
1078                              "line": 27,
1079                              "column": 35
1080                            }
1081                          }
1082                        },
1083                        "loc": {
1084                          "start": {
1085                            "line": 27,
1086                            "column": 5
1087                          },
1088                          "end": {
1089                            "line": 27,
1090                            "column": 35
1091                          }
1092                        }
1093                      },
1094                      "loc": {
1095                        "start": {
1096                          "line": 27,
1097                          "column": 5
1098                        },
1099                        "end": {
1100                          "line": 27,
1101                          "column": 35
1102                        }
1103                      }
1104                    }
1105                  ],
1106                  "loc": {
1107                    "start": {
1108                      "line": 1,
1109                      "column": 1
1110                    },
1111                    "end": {
1112                      "line": 1,
1113                      "column": 1
1114                    }
1115                  }
1116                },
1117                "loc": {
1118                  "start": {
1119                    "line": 1,
1120                    "column": 1
1121                  },
1122                  "end": {
1123                    "line": 1,
1124                    "column": 1
1125                  }
1126                }
1127              },
1128              "loc": {
1129                "start": {
1130                  "line": 1,
1131                  "column": 1
1132                },
1133                "end": {
1134                  "line": 1,
1135                  "column": 1
1136                }
1137              }
1138            },
1139            "overloads": [],
1140            "decorators": [],
1141            "loc": {
1142              "start": {
1143                "line": 1,
1144                "column": 1
1145              },
1146              "end": {
1147                "line": 1,
1148                "column": 1
1149              }
1150            }
1151          },
1152          {
1153            "type": "ClassProperty",
1154            "key": {
1155              "type": "Identifier",
1156              "name": "dog",
1157              "decorators": [],
1158              "loc": {
1159                "start": {
1160                  "line": 22,
1161                  "column": 5
1162                },
1163                "end": {
1164                  "line": 22,
1165                  "column": 8
1166                }
1167              }
1168            },
1169            "accessibility": "public",
1170            "static": true,
1171            "readonly": false,
1172            "declare": false,
1173            "optional": false,
1174            "computed": false,
1175            "typeAnnotation": {
1176              "type": "ETSTypeReference",
1177              "part": {
1178                "type": "ETSTypeReferencePart",
1179                "name": {
1180                  "type": "Identifier",
1181                  "name": "Dog",
1182                  "decorators": [],
1183                  "loc": {
1184                    "start": {
1185                      "line": 22,
1186                      "column": 10
1187                    },
1188                    "end": {
1189                      "line": 22,
1190                      "column": 13
1191                    }
1192                  }
1193                },
1194                "loc": {
1195                  "start": {
1196                    "line": 22,
1197                    "column": 10
1198                  },
1199                  "end": {
1200                    "line": 22,
1201                    "column": 15
1202                  }
1203                }
1204              },
1205              "loc": {
1206                "start": {
1207                  "line": 22,
1208                  "column": 10
1209                },
1210                "end": {
1211                  "line": 22,
1212                  "column": 15
1213                }
1214              }
1215            },
1216            "definite": false,
1217            "decorators": [],
1218            "loc": {
1219              "start": {
1220                "line": 22,
1221                "column": 5
1222              },
1223              "end": {
1224                "line": 24,
1225                "column": 2
1226              }
1227            }
1228          },
1229          {
1230            "type": "ClassProperty",
1231            "key": {
1232              "type": "Identifier",
1233              "name": "name",
1234              "decorators": [],
1235              "loc": {
1236                "start": {
1237                  "line": 26,
1238                  "column": 5
1239                },
1240                "end": {
1241                  "line": 26,
1242                  "column": 9
1243                }
1244              }
1245            },
1246            "value": {
1247              "type": "LogicalExpression",
1248              "operator": "??",
1249              "left": {
1250                "type": "BlockExpression",
1251                "statements": [
1252                  {
1253                    "type": "VariableDeclaration",
1254                    "declarations": [
1255                      {
1256                        "type": "VariableDeclarator",
1257                        "id": {
1258                          "type": "Identifier",
1259                          "name": "gensym$_3",
1260                          "decorators": [],
1261                          "loc": {
1262                            "start": {
1263                              "line": 1,
1264                              "column": 3
1265                            },
1266                            "end": {
1267                              "line": 1,
1268                              "column": 3
1269                            }
1270                          }
1271                        },
1272                        "init": {
1273                          "type": "Identifier",
1274                          "name": "dog",
1275                          "decorators": [],
1276                          "loc": {
1277                            "start": {
1278                              "line": 26,
1279                              "column": 12
1280                            },
1281                            "end": {
1282                              "line": 26,
1283                              "column": 15
1284                            }
1285                          }
1286                        },
1287                        "loc": {
1288                          "start": {
1289                            "line": 1,
1290                            "column": 3
1291                          },
1292                          "end": {
1293                            "line": 1,
1294                            "column": 3
1295                          }
1296                        }
1297                      }
1298                    ],
1299                    "kind": "let",
1300                    "loc": {
1301                      "start": {
1302                        "line": 26,
1303                        "column": 12
1304                      },
1305                      "end": {
1306                        "line": 26,
1307                        "column": 32
1308                      }
1309                    }
1310                  },
1311                  {
1312                    "type": "ExpressionStatement",
1313                    "expression": {
1314                      "type": "ConditionalExpression",
1315                      "test": {
1316                        "type": "BinaryExpression",
1317                        "operator": "==",
1318                        "left": {
1319                          "type": "Identifier",
1320                          "name": "gensym$_3",
1321                          "decorators": [],
1322                          "loc": {
1323                            "start": {
1324                              "line": 1,
1325                              "column": 3
1326                            },
1327                            "end": {
1328                              "line": 1,
1329                              "column": 3
1330                            }
1331                          }
1332                        },
1333                        "right": {
1334                          "type": "NullLiteral",
1335                          "value": null,
1336                          "loc": {
1337                            "start": {
1338                              "line": 1,
1339                              "column": 3
1340                            },
1341                            "end": {
1342                              "line": 1,
1343                              "column": 3
1344                            }
1345                          }
1346                        },
1347                        "loc": {
1348                          "start": {
1349                            "line": 1,
1350                            "column": 3
1351                          },
1352                          "end": {
1353                            "line": 1,
1354                            "column": 3
1355                          }
1356                        }
1357                      },
1358                      "consequent": {
1359                        "type": "UndefinedLiteral",
1360                        "value": undefined,
1361                        "loc": {
1362                          "start": {
1363                            "line": 1,
1364                            "column": 3
1365                          },
1366                          "end": {
1367                            "line": 1,
1368                            "column": 3
1369                          }
1370                        }
1371                      },
1372                      "alternate": {
1373                        "type": "MemberExpression",
1374                        "object": {
1375                          "type": "Identifier",
1376                          "name": "gensym$_3",
1377                          "decorators": [],
1378                          "loc": {
1379                            "start": {
1380                              "line": 26,
1381                              "column": 12
1382                            },
1383                            "end": {
1384                              "line": 26,
1385                              "column": 21
1386                            }
1387                          }
1388                        },
1389                        "property": {
1390                          "type": "Identifier",
1391                          "name": "name",
1392                          "decorators": [],
1393                          "loc": {
1394                            "start": {
1395                              "line": 26,
1396                              "column": 17
1397                            },
1398                            "end": {
1399                              "line": 26,
1400                              "column": 21
1401                            }
1402                          }
1403                        },
1404                        "computed": false,
1405                        "optional": false,
1406                        "loc": {
1407                          "start": {
1408                            "line": 26,
1409                            "column": 12
1410                          },
1411                          "end": {
1412                            "line": 26,
1413                            "column": 21
1414                          }
1415                        }
1416                      },
1417                      "loc": {
1418                        "start": {
1419                          "line": 1,
1420                          "column": 3
1421                        },
1422                        "end": {
1423                          "line": 1,
1424                          "column": 3
1425                        }
1426                      }
1427                    },
1428                    "loc": {
1429                      "start": {
1430                        "line": 1,
1431                        "column": 3
1432                      },
1433                      "end": {
1434                        "line": 1,
1435                        "column": 3
1436                      }
1437                    }
1438                  }
1439                ],
1440                "loc": {
1441                  "start": {
1442                    "line": 26,
1443                    "column": 12
1444                  },
1445                  "end": {
1446                    "line": 26,
1447                    "column": 32
1448                  }
1449                }
1450              },
1451              "right": {
1452                "type": "StringLiteral",
1453                "value": "Pluto",
1454                "loc": {
1455                  "start": {
1456                    "line": 26,
1457                    "column": 25
1458                  },
1459                  "end": {
1460                    "line": 26,
1461                    "column": 32
1462                  }
1463                }
1464              },
1465              "loc": {
1466                "start": {
1467                  "line": 26,
1468                  "column": 12
1469                },
1470                "end": {
1471                  "line": 26,
1472                  "column": 32
1473                }
1474              }
1475            },
1476            "accessibility": "public",
1477            "static": true,
1478            "readonly": false,
1479            "declare": false,
1480            "optional": false,
1481            "computed": false,
1482            "definite": false,
1483            "decorators": [],
1484            "loc": {
1485              "start": {
1486                "line": 26,
1487                "column": 5
1488              },
1489              "end": {
1490                "line": 26,
1491                "column": 32
1492              }
1493            }
1494          },
1495          {
1496            "type": "ClassProperty",
1497            "key": {
1498              "type": "Identifier",
1499              "name": "legCount",
1500              "decorators": [],
1501              "loc": {
1502                "start": {
1503                  "line": 27,
1504                  "column": 5
1505                },
1506                "end": {
1507                  "line": 27,
1508                  "column": 13
1509                }
1510              }
1511            },
1512            "accessibility": "public",
1513            "static": true,
1514            "readonly": false,
1515            "declare": false,
1516            "optional": false,
1517            "computed": false,
1518            "typeAnnotation": {
1519              "type": "ETSPrimitiveType",
1520              "loc": {
1521                "start": {
1522                  "line": 27,
1523                  "column": 15
1524                },
1525                "end": {
1526                  "line": 27,
1527                  "column": 18
1528                }
1529              }
1530            },
1531            "definite": false,
1532            "decorators": [],
1533            "loc": {
1534              "start": {
1535                "line": 27,
1536                "column": 5
1537              },
1538              "end": {
1539                "line": 27,
1540                "column": 35
1541              }
1542            }
1543          }
1544        ],
1545        "loc": {
1546          "start": {
1547            "line": 1,
1548            "column": 1
1549          },
1550          "end": {
1551            "line": 1,
1552            "column": 1
1553          }
1554        }
1555      },
1556      "loc": {
1557        "start": {
1558          "line": 1,
1559          "column": 1
1560        },
1561        "end": {
1562          "line": 1,
1563          "column": 1
1564        }
1565      }
1566    }
1567  ],
1568  "loc": {
1569    "start": {
1570      "line": 1,
1571      "column": 1
1572    },
1573    "end": {
1574      "line": 28,
1575      "column": 1
1576    }
1577  }
1578}
1579