1{ 2 "type": "Program", 3 "statements": [ 4 { 5 "type": "VariableDeclaration", 6 "declarations": [ 7 { 8 "type": "VariableDeclarator", 9 "id": { 10 "type": "Identifier", 11 "name": "a", 12 "decorators": [], 13 "loc": { 14 "start": { 15 "line": 17, 16 "column": 5 17 }, 18 "end": { 19 "line": 17, 20 "column": 6 21 } 22 } 23 }, 24 "init": { 25 "type": "ObjectExpression", 26 "properties": [ 27 { 28 "type": "Property", 29 "method": false, 30 "shorthand": true, 31 "computed": false, 32 "key": { 33 "type": "Identifier", 34 "name": "get", 35 "decorators": [], 36 "loc": { 37 "start": { 38 "line": 18, 39 "column": 3 40 }, 41 "end": { 42 "line": 18, 43 "column": 6 44 } 45 } 46 }, 47 "value": { 48 "type": "Identifier", 49 "name": "get", 50 "decorators": [], 51 "loc": { 52 "start": { 53 "line": 18, 54 "column": 3 55 }, 56 "end": { 57 "line": 18, 58 "column": 6 59 } 60 } 61 }, 62 "kind": "init", 63 "loc": { 64 "start": { 65 "line": 18, 66 "column": 3 67 }, 68 "end": { 69 "line": 18, 70 "column": 6 71 } 72 } 73 }, 74 { 75 "type": "Property", 76 "method": true, 77 "shorthand": false, 78 "computed": false, 79 "key": { 80 "type": "Identifier", 81 "name": "get", 82 "decorators": [], 83 "loc": { 84 "start": { 85 "line": 19, 86 "column": 3 87 }, 88 "end": { 89 "line": 19, 90 "column": 6 91 } 92 } 93 }, 94 "value": { 95 "type": "FunctionExpression", 96 "function": { 97 "type": "ScriptFunction", 98 "id": null, 99 "generator": false, 100 "async": false, 101 "expression": false, 102 "params": [], 103 "body": { 104 "type": "BlockStatement", 105 "statements": [], 106 "loc": { 107 "start": { 108 "line": 19, 109 "column": 8 110 }, 111 "end": { 112 "line": 19, 113 "column": 10 114 } 115 } 116 }, 117 "loc": { 118 "start": { 119 "line": 19, 120 "column": 6 121 }, 122 "end": { 123 "line": 19, 124 "column": 10 125 } 126 } 127 }, 128 "loc": { 129 "start": { 130 "line": 19, 131 "column": 6 132 }, 133 "end": { 134 "line": 19, 135 "column": 10 136 } 137 } 138 }, 139 "kind": "init", 140 "loc": { 141 "start": { 142 "line": 19, 143 "column": 3 144 }, 145 "end": { 146 "line": 19, 147 "column": 10 148 } 149 } 150 }, 151 { 152 "type": "Property", 153 "method": false, 154 "shorthand": false, 155 "computed": false, 156 "key": { 157 "type": "Identifier", 158 "name": "set", 159 "decorators": [], 160 "loc": { 161 "start": { 162 "line": 20, 163 "column": 3 164 }, 165 "end": { 166 "line": 20, 167 "column": 6 168 } 169 } 170 }, 171 "value": { 172 "type": "NumberLiteral", 173 "value": 5, 174 "loc": { 175 "start": { 176 "line": 20, 177 "column": 7 178 }, 179 "end": { 180 "line": 20, 181 "column": 8 182 } 183 } 184 }, 185 "kind": "init", 186 "loc": { 187 "start": { 188 "line": 20, 189 "column": 3 190 }, 191 "end": { 192 "line": 20, 193 "column": 8 194 } 195 } 196 }, 197 { 198 "type": "Property", 199 "method": false, 200 "shorthand": false, 201 "computed": true, 202 "key": { 203 "type": "Identifier", 204 "name": "a", 205 "decorators": [], 206 "loc": { 207 "start": { 208 "line": 21, 209 "column": 4 210 }, 211 "end": { 212 "line": 21, 213 "column": 5 214 } 215 } 216 }, 217 "value": { 218 "type": "StringLiteral", 219 "value": "foo", 220 "loc": { 221 "start": { 222 "line": 21, 223 "column": 7 224 }, 225 "end": { 226 "line": 21, 227 "column": 12 228 } 229 } 230 }, 231 "kind": "init", 232 "loc": { 233 "start": { 234 "line": 21, 235 "column": 3 236 }, 237 "end": { 238 "line": 21, 239 "column": 12 240 } 241 } 242 }, 243 { 244 "type": "Property", 245 "method": false, 246 "shorthand": false, 247 "computed": false, 248 "key": { 249 "type": "StringLiteral", 250 "value": "foo", 251 "loc": { 252 "start": { 253 "line": 22, 254 "column": 7 255 }, 256 "end": { 257 "line": 22, 258 "column": 12 259 } 260 } 261 }, 262 "value": { 263 "type": "FunctionExpression", 264 "function": { 265 "type": "ScriptFunction", 266 "id": null, 267 "generator": false, 268 "async": false, 269 "expression": false, 270 "params": [], 271 "body": { 272 "type": "BlockStatement", 273 "statements": [], 274 "loc": { 275 "start": { 276 "line": 22, 277 "column": 14 278 }, 279 "end": { 280 "line": 22, 281 "column": 16 282 } 283 } 284 }, 285 "loc": { 286 "start": { 287 "line": 22, 288 "column": 12 289 }, 290 "end": { 291 "line": 22, 292 "column": 16 293 } 294 } 295 }, 296 "loc": { 297 "start": { 298 "line": 22, 299 "column": 12 300 }, 301 "end": { 302 "line": 22, 303 "column": 16 304 } 305 } 306 }, 307 "kind": "get", 308 "loc": { 309 "start": { 310 "line": 22, 311 "column": 3 312 }, 313 "end": { 314 "line": 22, 315 "column": 16 316 } 317 } 318 }, 319 { 320 "type": "Property", 321 "method": false, 322 "shorthand": false, 323 "computed": true, 324 "key": { 325 "type": "Identifier", 326 "name": "b", 327 "decorators": [], 328 "loc": { 329 "start": { 330 "line": 23, 331 "column": 8 332 }, 333 "end": { 334 "line": 23, 335 "column": 9 336 } 337 } 338 }, 339 "value": { 340 "type": "FunctionExpression", 341 "function": { 342 "type": "ScriptFunction", 343 "id": null, 344 "generator": false, 345 "async": false, 346 "expression": false, 347 "params": [], 348 "body": { 349 "type": "BlockStatement", 350 "statements": [], 351 "loc": { 352 "start": { 353 "line": 23, 354 "column": 12 355 }, 356 "end": { 357 "line": 23, 358 "column": 14 359 } 360 } 361 }, 362 "loc": { 363 "start": { 364 "line": 23, 365 "column": 10 366 }, 367 "end": { 368 "line": 23, 369 "column": 14 370 } 371 } 372 }, 373 "loc": { 374 "start": { 375 "line": 23, 376 "column": 10 377 }, 378 "end": { 379 "line": 23, 380 "column": 14 381 } 382 } 383 }, 384 "kind": "get", 385 "loc": { 386 "start": { 387 "line": 23, 388 "column": 3 389 }, 390 "end": { 391 "line": 23, 392 "column": 14 393 } 394 } 395 }, 396 { 397 "type": "SpreadElement", 398 "argument": { 399 "type": "Identifier", 400 "name": "a", 401 "decorators": [], 402 "loc": { 403 "start": { 404 "line": 24, 405 "column": 6 406 }, 407 "end": { 408 "line": 24, 409 "column": 7 410 } 411 } 412 }, 413 "loc": { 414 "start": { 415 "line": 24, 416 "column": 3 417 }, 418 "end": { 419 "line": 24, 420 "column": 7 421 } 422 } 423 }, 424 { 425 "type": "Property", 426 "method": true, 427 "shorthand": false, 428 "computed": false, 429 "key": { 430 "type": "NumberLiteral", 431 "value": 42, 432 "loc": { 433 "start": { 434 "line": 25, 435 "column": 3 436 }, 437 "end": { 438 "line": 25, 439 "column": 5 440 } 441 } 442 }, 443 "value": { 444 "type": "FunctionExpression", 445 "function": { 446 "type": "ScriptFunction", 447 "id": null, 448 "generator": false, 449 "async": false, 450 "expression": false, 451 "params": [], 452 "body": { 453 "type": "BlockStatement", 454 "statements": [], 455 "loc": { 456 "start": { 457 "line": 25, 458 "column": 7 459 }, 460 "end": { 461 "line": 25, 462 "column": 9 463 } 464 } 465 }, 466 "loc": { 467 "start": { 468 "line": 25, 469 "column": 5 470 }, 471 "end": { 472 "line": 25, 473 "column": 9 474 } 475 } 476 }, 477 "loc": { 478 "start": { 479 "line": 25, 480 "column": 5 481 }, 482 "end": { 483 "line": 25, 484 "column": 9 485 } 486 } 487 }, 488 "kind": "init", 489 "loc": { 490 "start": { 491 "line": 25, 492 "column": 3 493 }, 494 "end": { 495 "line": 25, 496 "column": 9 497 } 498 } 499 }, 500 { 501 "type": "Property", 502 "method": false, 503 "shorthand": false, 504 "computed": false, 505 "key": { 506 "type": "Identifier", 507 "name": "a", 508 "decorators": [], 509 "loc": { 510 "start": { 511 "line": 26, 512 "column": 7 513 }, 514 "end": { 515 "line": 26, 516 "column": 8 517 } 518 } 519 }, 520 "value": { 521 "type": "FunctionExpression", 522 "function": { 523 "type": "ScriptFunction", 524 "id": null, 525 "generator": false, 526 "async": false, 527 "expression": false, 528 "params": [ 529 { 530 "type": "Identifier", 531 "name": "a", 532 "decorators": [], 533 "loc": { 534 "start": { 535 "line": 26, 536 "column": 9 537 }, 538 "end": { 539 "line": 26, 540 "column": 10 541 } 542 } 543 } 544 ], 545 "body": { 546 "type": "BlockStatement", 547 "statements": [], 548 "loc": { 549 "start": { 550 "line": 26, 551 "column": 11 552 }, 553 "end": { 554 "line": 26, 555 "column": 13 556 } 557 } 558 }, 559 "loc": { 560 "start": { 561 "line": 26, 562 "column": 8 563 }, 564 "end": { 565 "line": 26, 566 "column": 13 567 } 568 } 569 }, 570 "loc": { 571 "start": { 572 "line": 26, 573 "column": 8 574 }, 575 "end": { 576 "line": 26, 577 "column": 13 578 } 579 } 580 }, 581 "kind": "set", 582 "loc": { 583 "start": { 584 "line": 26, 585 "column": 3 586 }, 587 "end": { 588 "line": 26, 589 "column": 13 590 } 591 } 592 }, 593 { 594 "type": "Property", 595 "method": false, 596 "shorthand": false, 597 "computed": false, 598 "key": { 599 "type": "Identifier", 600 "name": "true", 601 "decorators": [], 602 "loc": { 603 "start": { 604 "line": 27, 605 "column": 3 606 }, 607 "end": { 608 "line": 27, 609 "column": 7 610 } 611 } 612 }, 613 "value": { 614 "type": "NumberLiteral", 615 "value": 5, 616 "loc": { 617 "start": { 618 "line": 27, 619 "column": 8 620 }, 621 "end": { 622 "line": 27, 623 "column": 9 624 } 625 } 626 }, 627 "kind": "init", 628 "loc": { 629 "start": { 630 "line": 27, 631 "column": 3 632 }, 633 "end": { 634 "line": 27, 635 "column": 9 636 } 637 } 638 }, 639 { 640 "type": "Property", 641 "method": false, 642 "shorthand": false, 643 "computed": false, 644 "key": { 645 "type": "Identifier", 646 "name": "implements", 647 "decorators": [], 648 "loc": { 649 "start": { 650 "line": 28, 651 "column": 3 652 }, 653 "end": { 654 "line": 28, 655 "column": 13 656 } 657 } 658 }, 659 "value": { 660 "type": "StringLiteral", 661 "value": "foo", 662 "loc": { 663 "start": { 664 "line": 28, 665 "column": 14 666 }, 667 "end": { 668 "line": 28, 669 "column": 19 670 } 671 } 672 }, 673 "kind": "init", 674 "loc": { 675 "start": { 676 "line": 28, 677 "column": 3 678 }, 679 "end": { 680 "line": 28, 681 "column": 19 682 } 683 } 684 }, 685 { 686 "type": "Property", 687 "method": false, 688 "shorthand": false, 689 "computed": false, 690 "key": { 691 "type": "Identifier", 692 "name": "a", 693 "decorators": [], 694 "loc": { 695 "start": { 696 "line": 29, 697 "column": 7 698 }, 699 "end": { 700 "line": 29, 701 "column": 8 702 } 703 } 704 }, 705 "value": { 706 "type": "FunctionExpression", 707 "function": { 708 "type": "ScriptFunction", 709 "id": null, 710 "generator": false, 711 "async": false, 712 "expression": false, 713 "params": [ 714 { 715 "type": "Identifier", 716 "name": "b", 717 "decorators": [], 718 "loc": { 719 "start": { 720 "line": 29, 721 "column": 9 722 }, 723 "end": { 724 "line": 29, 725 "column": 10 726 } 727 } 728 } 729 ], 730 "body": { 731 "type": "BlockStatement", 732 "statements": [ 733 { 734 "type": "ExpressionStatement", 735 "expression": { 736 "type": "MemberExpression", 737 "object": { 738 "type": "Super", 739 "loc": { 740 "start": { 741 "line": 29, 742 "column": 12 743 }, 744 "end": { 745 "line": 29, 746 "column": 17 747 } 748 } 749 }, 750 "property": { 751 "type": "Identifier", 752 "name": "a", 753 "decorators": [], 754 "loc": { 755 "start": { 756 "line": 29, 757 "column": 18 758 }, 759 "end": { 760 "line": 29, 761 "column": 19 762 } 763 } 764 }, 765 "computed": false, 766 "optional": false, 767 "loc": { 768 "start": { 769 "line": 29, 770 "column": 12 771 }, 772 "end": { 773 "line": 29, 774 "column": 19 775 } 776 } 777 }, 778 "loc": { 779 "start": { 780 "line": 29, 781 "column": 12 782 }, 783 "end": { 784 "line": 29, 785 "column": 19 786 } 787 } 788 } 789 ], 790 "loc": { 791 "start": { 792 "line": 29, 793 "column": 11 794 }, 795 "end": { 796 "line": 29, 797 "column": 20 798 } 799 } 800 }, 801 "loc": { 802 "start": { 803 "line": 29, 804 "column": 8 805 }, 806 "end": { 807 "line": 29, 808 "column": 20 809 } 810 } 811 }, 812 "loc": { 813 "start": { 814 "line": 29, 815 "column": 8 816 }, 817 "end": { 818 "line": 29, 819 "column": 20 820 } 821 } 822 }, 823 "kind": "set", 824 "loc": { 825 "start": { 826 "line": 29, 827 "column": 3 828 }, 829 "end": { 830 "line": 29, 831 "column": 20 832 } 833 } 834 }, 835 { 836 "type": "Property", 837 "method": true, 838 "shorthand": false, 839 "computed": false, 840 "key": { 841 "type": "Identifier", 842 "name": "f", 843 "decorators": [], 844 "loc": { 845 "start": { 846 "line": 30, 847 "column": 9 848 }, 849 "end": { 850 "line": 30, 851 "column": 10 852 } 853 } 854 }, 855 "value": { 856 "type": "FunctionExpression", 857 "function": { 858 "type": "ScriptFunction", 859 "id": null, 860 "generator": false, 861 "async": true, 862 "expression": false, 863 "params": [], 864 "body": { 865 "type": "BlockStatement", 866 "statements": [], 867 "loc": { 868 "start": { 869 "line": 30, 870 "column": 12 871 }, 872 "end": { 873 "line": 30, 874 "column": 14 875 } 876 } 877 }, 878 "loc": { 879 "start": { 880 "line": 30, 881 "column": 10 882 }, 883 "end": { 884 "line": 30, 885 "column": 14 886 } 887 } 888 }, 889 "loc": { 890 "start": { 891 "line": 30, 892 "column": 10 893 }, 894 "end": { 895 "line": 30, 896 "column": 14 897 } 898 } 899 }, 900 "kind": "init", 901 "loc": { 902 "start": { 903 "line": 30, 904 "column": 3 905 }, 906 "end": { 907 "line": 30, 908 "column": 14 909 } 910 } 911 } 912 ], 913 "loc": { 914 "start": { 915 "line": 17, 916 "column": 9 917 }, 918 "end": { 919 "line": 31, 920 "column": 2 921 } 922 } 923 }, 924 "loc": { 925 "start": { 926 "line": 17, 927 "column": 5 928 }, 929 "end": { 930 "line": 31, 931 "column": 2 932 } 933 } 934 } 935 ], 936 "kind": "var", 937 "loc": { 938 "start": { 939 "line": 17, 940 "column": 1 941 }, 942 "end": { 943 "line": 31, 944 "column": 2 945 } 946 } 947 } 948 ], 949 "loc": { 950 "start": { 951 "line": 1, 952 "column": 1 953 }, 954 "end": { 955 "line": 32, 956 "column": 1 957 } 958 } 959} 960