1{ 2 "type": "Program", 3 "statements": [ 4 { 5 "type": "ClassDeclaration", 6 "definition": { 7 "id": { 8 "type": "Identifier", 9 "name": "TreeNode", 10 "decorators": [], 11 "loc": { 12 "start": { 13 "line": 16, 14 "column": 7 15 }, 16 "end": { 17 "line": 16, 18 "column": 15 19 } 20 } 21 }, 22 "superClass": null, 23 "implements": [], 24 "body": [ 25 { 26 "type": "ClassProperty", 27 "key": { 28 "type": "Identifier", 29 "name": "left", 30 "decorators": [], 31 "loc": { 32 "start": { 33 "line": 17, 34 "column": 11 35 }, 36 "end": { 37 "line": 17, 38 "column": 15 39 } 40 } 41 }, 42 "accessibility": "private", 43 "static": false, 44 "readonly": false, 45 "declare": false, 46 "optional": false, 47 "computed": false, 48 "typeAnnotation": { 49 "type": "ETSUnionType", 50 "types": [ 51 { 52 "type": "ETSTypeReference", 53 "part": { 54 "type": "ETSTypeReferencePart", 55 "name": { 56 "type": "Identifier", 57 "name": "TreeNode", 58 "decorators": [], 59 "loc": { 60 "start": { 61 "line": 17, 62 "column": 17 63 }, 64 "end": { 65 "line": 17, 66 "column": 25 67 } 68 } 69 }, 70 "loc": { 71 "start": { 72 "line": 17, 73 "column": 17 74 }, 75 "end": { 76 "line": 17, 77 "column": 27 78 } 79 } 80 }, 81 "loc": { 82 "start": { 83 "line": 17, 84 "column": 17 85 }, 86 "end": { 87 "line": 17, 88 "column": 27 89 } 90 } 91 }, 92 { 93 "type": "ETSNullType", 94 "loc": { 95 "start": { 96 "line": 17, 97 "column": 28 98 }, 99 "end": { 100 "line": 17, 101 "column": 32 102 } 103 } 104 } 105 ], 106 "loc": { 107 "start": { 108 "line": 17, 109 "column": 17 110 }, 111 "end": { 112 "line": 17, 113 "column": 32 114 } 115 } 116 }, 117 "definite": false, 118 "decorators": [], 119 "loc": { 120 "start": { 121 "line": 17, 122 "column": 11 123 }, 124 "end": { 125 "line": 17, 126 "column": 32 127 } 128 } 129 }, 130 { 131 "type": "ClassProperty", 132 "key": { 133 "type": "Identifier", 134 "name": "right", 135 "decorators": [], 136 "loc": { 137 "start": { 138 "line": 18, 139 "column": 11 140 }, 141 "end": { 142 "line": 18, 143 "column": 16 144 } 145 } 146 }, 147 "accessibility": "private", 148 "static": false, 149 "readonly": false, 150 "declare": false, 151 "optional": false, 152 "computed": false, 153 "typeAnnotation": { 154 "type": "ETSUnionType", 155 "types": [ 156 { 157 "type": "ETSTypeReference", 158 "part": { 159 "type": "ETSTypeReferencePart", 160 "name": { 161 "type": "Identifier", 162 "name": "TreeNode", 163 "decorators": [], 164 "loc": { 165 "start": { 166 "line": 18, 167 "column": 18 168 }, 169 "end": { 170 "line": 18, 171 "column": 26 172 } 173 } 174 }, 175 "loc": { 176 "start": { 177 "line": 18, 178 "column": 18 179 }, 180 "end": { 181 "line": 18, 182 "column": 28 183 } 184 } 185 }, 186 "loc": { 187 "start": { 188 "line": 18, 189 "column": 18 190 }, 191 "end": { 192 "line": 18, 193 "column": 28 194 } 195 } 196 }, 197 { 198 "type": "ETSNullType", 199 "loc": { 200 "start": { 201 "line": 18, 202 "column": 29 203 }, 204 "end": { 205 "line": 18, 206 "column": 33 207 } 208 } 209 } 210 ], 211 "loc": { 212 "start": { 213 "line": 18, 214 "column": 18 215 }, 216 "end": { 217 "line": 18, 218 "column": 33 219 } 220 } 221 }, 222 "definite": false, 223 "decorators": [], 224 "loc": { 225 "start": { 226 "line": 18, 227 "column": 11 228 }, 229 "end": { 230 "line": 18, 231 "column": 33 232 } 233 } 234 }, 235 { 236 "type": "ClassProperty", 237 "key": { 238 "type": "Identifier", 239 "name": "item", 240 "decorators": [], 241 "loc": { 242 "start": { 243 "line": 19, 244 "column": 11 245 }, 246 "end": { 247 "line": 19, 248 "column": 15 249 } 250 } 251 }, 252 "accessibility": "private", 253 "static": false, 254 "readonly": false, 255 "declare": false, 256 "optional": false, 257 "computed": false, 258 "typeAnnotation": { 259 "type": "ETSPrimitiveType", 260 "loc": { 261 "start": { 262 "line": 19, 263 "column": 17 264 }, 265 "end": { 266 "line": 19, 267 "column": 20 268 } 269 } 270 }, 271 "definite": false, 272 "decorators": [], 273 "loc": { 274 "start": { 275 "line": 19, 276 "column": 11 277 }, 278 "end": { 279 "line": 19, 280 "column": 20 281 } 282 } 283 }, 284 { 285 "type": "MethodDefinition", 286 "key": { 287 "type": "Identifier", 288 "name": "constructor", 289 "decorators": [], 290 "loc": { 291 "start": { 292 "line": 1, 293 "column": 1 294 }, 295 "end": { 296 "line": 1, 297 "column": 1 298 } 299 } 300 }, 301 "kind": "constructor", 302 "accessibility": "public", 303 "static": false, 304 "optional": false, 305 "computed": false, 306 "value": { 307 "type": "FunctionExpression", 308 "function": { 309 "type": "ScriptFunction", 310 "id": { 311 "type": "Identifier", 312 "name": "constructor", 313 "decorators": [], 314 "loc": { 315 "start": { 316 "line": 1, 317 "column": 1 318 }, 319 "end": { 320 "line": 1, 321 "column": 1 322 } 323 } 324 }, 325 "generator": false, 326 "async": false, 327 "expression": false, 328 "params": [ 329 { 330 "type": "ETSParameterExpression", 331 "name": { 332 "type": "Identifier", 333 "name": "left", 334 "typeAnnotation": { 335 "type": "ETSUnionType", 336 "types": [ 337 { 338 "type": "ETSTypeReference", 339 "part": { 340 "type": "ETSTypeReferencePart", 341 "name": { 342 "type": "Identifier", 343 "name": "TreeNode", 344 "decorators": [], 345 "loc": { 346 "start": { 347 "line": 21, 348 "column": 21 349 }, 350 "end": { 351 "line": 21, 352 "column": 29 353 } 354 } 355 }, 356 "loc": { 357 "start": { 358 "line": 21, 359 "column": 21 360 }, 361 "end": { 362 "line": 21, 363 "column": 31 364 } 365 } 366 }, 367 "loc": { 368 "start": { 369 "line": 21, 370 "column": 21 371 }, 372 "end": { 373 "line": 21, 374 "column": 31 375 } 376 } 377 }, 378 { 379 "type": "ETSNullType", 380 "loc": { 381 "start": { 382 "line": 21, 383 "column": 32 384 }, 385 "end": { 386 "line": 21, 387 "column": 36 388 } 389 } 390 } 391 ], 392 "loc": { 393 "start": { 394 "line": 21, 395 "column": 21 396 }, 397 "end": { 398 "line": 21, 399 "column": 36 400 } 401 } 402 }, 403 "decorators": [], 404 "loc": { 405 "start": { 406 "line": 21, 407 "column": 15 408 }, 409 "end": { 410 "line": 21, 411 "column": 36 412 } 413 } 414 }, 415 "loc": { 416 "start": { 417 "line": 21, 418 "column": 15 419 }, 420 "end": { 421 "line": 21, 422 "column": 36 423 } 424 } 425 }, 426 { 427 "type": "ETSParameterExpression", 428 "name": { 429 "type": "Identifier", 430 "name": "right", 431 "typeAnnotation": { 432 "type": "ETSUnionType", 433 "types": [ 434 { 435 "type": "ETSTypeReference", 436 "part": { 437 "type": "ETSTypeReferencePart", 438 "name": { 439 "type": "Identifier", 440 "name": "TreeNode", 441 "decorators": [], 442 "loc": { 443 "start": { 444 "line": 21, 445 "column": 45 446 }, 447 "end": { 448 "line": 21, 449 "column": 53 450 } 451 } 452 }, 453 "loc": { 454 "start": { 455 "line": 21, 456 "column": 45 457 }, 458 "end": { 459 "line": 21, 460 "column": 55 461 } 462 } 463 }, 464 "loc": { 465 "start": { 466 "line": 21, 467 "column": 45 468 }, 469 "end": { 470 "line": 21, 471 "column": 55 472 } 473 } 474 }, 475 { 476 "type": "ETSNullType", 477 "loc": { 478 "start": { 479 "line": 21, 480 "column": 56 481 }, 482 "end": { 483 "line": 21, 484 "column": 60 485 } 486 } 487 } 488 ], 489 "loc": { 490 "start": { 491 "line": 21, 492 "column": 45 493 }, 494 "end": { 495 "line": 21, 496 "column": 60 497 } 498 } 499 }, 500 "decorators": [], 501 "loc": { 502 "start": { 503 "line": 21, 504 "column": 38 505 }, 506 "end": { 507 "line": 21, 508 "column": 60 509 } 510 } 511 }, 512 "loc": { 513 "start": { 514 "line": 21, 515 "column": 38 516 }, 517 "end": { 518 "line": 21, 519 "column": 60 520 } 521 } 522 }, 523 { 524 "type": "ETSParameterExpression", 525 "name": { 526 "type": "Identifier", 527 "name": "item", 528 "typeAnnotation": { 529 "type": "ETSPrimitiveType", 530 "loc": { 531 "start": { 532 "line": 21, 533 "column": 68 534 }, 535 "end": { 536 "line": 21, 537 "column": 71 538 } 539 } 540 }, 541 "decorators": [], 542 "loc": { 543 "start": { 544 "line": 21, 545 "column": 62 546 }, 547 "end": { 548 "line": 21, 549 "column": 71 550 } 551 } 552 }, 553 "loc": { 554 "start": { 555 "line": 21, 556 "column": 62 557 }, 558 "end": { 559 "line": 21, 560 "column": 71 561 } 562 } 563 } 564 ], 565 "body": { 566 "type": "BlockStatement", 567 "statements": [ 568 { 569 "type": "ExpressionStatement", 570 "expression": { 571 "type": "AssignmentExpression", 572 "operator": "=", 573 "left": { 574 "type": "MemberExpression", 575 "object": { 576 "type": "ThisExpression", 577 "loc": { 578 "start": { 579 "line": 22, 580 "column": 5 581 }, 582 "end": { 583 "line": 22, 584 "column": 9 585 } 586 } 587 }, 588 "property": { 589 "type": "Identifier", 590 "name": "left", 591 "decorators": [], 592 "loc": { 593 "start": { 594 "line": 22, 595 "column": 10 596 }, 597 "end": { 598 "line": 22, 599 "column": 14 600 } 601 } 602 }, 603 "computed": false, 604 "optional": false, 605 "loc": { 606 "start": { 607 "line": 22, 608 "column": 5 609 }, 610 "end": { 611 "line": 22, 612 "column": 14 613 } 614 } 615 }, 616 "right": { 617 "type": "Identifier", 618 "name": "left", 619 "decorators": [], 620 "loc": { 621 "start": { 622 "line": 22, 623 "column": 17 624 }, 625 "end": { 626 "line": 22, 627 "column": 21 628 } 629 } 630 }, 631 "loc": { 632 "start": { 633 "line": 22, 634 "column": 5 635 }, 636 "end": { 637 "line": 22, 638 "column": 21 639 } 640 } 641 }, 642 "loc": { 643 "start": { 644 "line": 22, 645 "column": 5 646 }, 647 "end": { 648 "line": 22, 649 "column": 22 650 } 651 } 652 }, 653 { 654 "type": "ExpressionStatement", 655 "expression": { 656 "type": "AssignmentExpression", 657 "operator": "=", 658 "left": { 659 "type": "MemberExpression", 660 "object": { 661 "type": "ThisExpression", 662 "loc": { 663 "start": { 664 "line": 23, 665 "column": 5 666 }, 667 "end": { 668 "line": 23, 669 "column": 9 670 } 671 } 672 }, 673 "property": { 674 "type": "Identifier", 675 "name": "right", 676 "decorators": [], 677 "loc": { 678 "start": { 679 "line": 23, 680 "column": 10 681 }, 682 "end": { 683 "line": 23, 684 "column": 15 685 } 686 } 687 }, 688 "computed": false, 689 "optional": false, 690 "loc": { 691 "start": { 692 "line": 23, 693 "column": 5 694 }, 695 "end": { 696 "line": 23, 697 "column": 15 698 } 699 } 700 }, 701 "right": { 702 "type": "Identifier", 703 "name": "right", 704 "decorators": [], 705 "loc": { 706 "start": { 707 "line": 23, 708 "column": 18 709 }, 710 "end": { 711 "line": 23, 712 "column": 23 713 } 714 } 715 }, 716 "loc": { 717 "start": { 718 "line": 23, 719 "column": 5 720 }, 721 "end": { 722 "line": 23, 723 "column": 23 724 } 725 } 726 }, 727 "loc": { 728 "start": { 729 "line": 23, 730 "column": 5 731 }, 732 "end": { 733 "line": 23, 734 "column": 24 735 } 736 } 737 }, 738 { 739 "type": "ExpressionStatement", 740 "expression": { 741 "type": "AssignmentExpression", 742 "operator": "=", 743 "left": { 744 "type": "MemberExpression", 745 "object": { 746 "type": "ThisExpression", 747 "loc": { 748 "start": { 749 "line": 24, 750 "column": 5 751 }, 752 "end": { 753 "line": 24, 754 "column": 9 755 } 756 } 757 }, 758 "property": { 759 "type": "Identifier", 760 "name": "item", 761 "decorators": [], 762 "loc": { 763 "start": { 764 "line": 24, 765 "column": 10 766 }, 767 "end": { 768 "line": 24, 769 "column": 14 770 } 771 } 772 }, 773 "computed": false, 774 "optional": false, 775 "loc": { 776 "start": { 777 "line": 24, 778 "column": 5 779 }, 780 "end": { 781 "line": 24, 782 "column": 14 783 } 784 } 785 }, 786 "right": { 787 "type": "Identifier", 788 "name": "item", 789 "decorators": [], 790 "loc": { 791 "start": { 792 "line": 24, 793 "column": 17 794 }, 795 "end": { 796 "line": 24, 797 "column": 21 798 } 799 } 800 }, 801 "loc": { 802 "start": { 803 "line": 24, 804 "column": 5 805 }, 806 "end": { 807 "line": 24, 808 "column": 21 809 } 810 } 811 }, 812 "loc": { 813 "start": { 814 "line": 24, 815 "column": 5 816 }, 817 "end": { 818 "line": 24, 819 "column": 22 820 } 821 } 822 } 823 ], 824 "loc": { 825 "start": { 826 "line": 21, 827 "column": 73 828 }, 829 "end": { 830 "line": 25, 831 "column": 4 832 } 833 } 834 }, 835 "loc": { 836 "start": { 837 "line": 21, 838 "column": 14 839 }, 840 "end": { 841 "line": 25, 842 "column": 4 843 } 844 } 845 }, 846 "loc": { 847 "start": { 848 "line": 21, 849 "column": 14 850 }, 851 "end": { 852 "line": 25, 853 "column": 4 854 } 855 } 856 }, 857 "overloads": [], 858 "decorators": [], 859 "loc": { 860 "start": { 861 "line": 21, 862 "column": 3 863 }, 864 "end": { 865 "line": 25, 866 "column": 4 867 } 868 } 869 }, 870 { 871 "type": "MethodDefinition", 872 "key": { 873 "type": "Identifier", 874 "name": "itemCheck", 875 "decorators": [], 876 "loc": { 877 "start": { 878 "line": 27, 879 "column": 10 880 }, 881 "end": { 882 "line": 27, 883 "column": 19 884 } 885 } 886 }, 887 "kind": "method", 888 "accessibility": "public", 889 "static": false, 890 "optional": false, 891 "computed": false, 892 "value": { 893 "type": "FunctionExpression", 894 "function": { 895 "type": "ScriptFunction", 896 "id": { 897 "type": "Identifier", 898 "name": "itemCheck", 899 "decorators": [], 900 "loc": { 901 "start": { 902 "line": 27, 903 "column": 10 904 }, 905 "end": { 906 "line": 27, 907 "column": 19 908 } 909 } 910 }, 911 "generator": false, 912 "async": false, 913 "expression": false, 914 "params": [], 915 "returnType": { 916 "type": "ETSPrimitiveType", 917 "loc": { 918 "start": { 919 "line": 27, 920 "column": 23 921 }, 922 "end": { 923 "line": 27, 924 "column": 26 925 } 926 } 927 }, 928 "body": { 929 "type": "BlockStatement", 930 "statements": [ 931 { 932 "type": "IfStatement", 933 "test": { 934 "type": "BinaryExpression", 935 "operator": "==", 936 "left": { 937 "type": "MemberExpression", 938 "object": { 939 "type": "ThisExpression", 940 "loc": { 941 "start": { 942 "line": 28, 943 "column": 9 944 }, 945 "end": { 946 "line": 28, 947 "column": 13 948 } 949 } 950 }, 951 "property": { 952 "type": "Identifier", 953 "name": "left", 954 "decorators": [], 955 "loc": { 956 "start": { 957 "line": 28, 958 "column": 14 959 }, 960 "end": { 961 "line": 28, 962 "column": 18 963 } 964 } 965 }, 966 "computed": false, 967 "optional": false, 968 "loc": { 969 "start": { 970 "line": 28, 971 "column": 9 972 }, 973 "end": { 974 "line": 28, 975 "column": 18 976 } 977 } 978 }, 979 "right": { 980 "type": "NullLiteral", 981 "value": null, 982 "loc": { 983 "start": { 984 "line": 28, 985 "column": 22 986 }, 987 "end": { 988 "line": 28, 989 "column": 26 990 } 991 } 992 }, 993 "loc": { 994 "start": { 995 "line": 28, 996 "column": 9 997 }, 998 "end": { 999 "line": 28, 1000 "column": 26 1001 } 1002 } 1003 }, 1004 "consequent": { 1005 "type": "ReturnStatement", 1006 "argument": { 1007 "type": "MemberExpression", 1008 "object": { 1009 "type": "ThisExpression", 1010 "loc": { 1011 "start": { 1012 "line": 29, 1013 "column": 14 1014 }, 1015 "end": { 1016 "line": 29, 1017 "column": 18 1018 } 1019 } 1020 }, 1021 "property": { 1022 "type": "Identifier", 1023 "name": "item", 1024 "decorators": [], 1025 "loc": { 1026 "start": { 1027 "line": 29, 1028 "column": 19 1029 }, 1030 "end": { 1031 "line": 29, 1032 "column": 23 1033 } 1034 } 1035 }, 1036 "computed": false, 1037 "optional": false, 1038 "loc": { 1039 "start": { 1040 "line": 29, 1041 "column": 14 1042 }, 1043 "end": { 1044 "line": 29, 1045 "column": 23 1046 } 1047 } 1048 }, 1049 "loc": { 1050 "start": { 1051 "line": 29, 1052 "column": 7 1053 }, 1054 "end": { 1055 "line": 29, 1056 "column": 24 1057 } 1058 } 1059 }, 1060 "alternate": { 1061 "type": "ReturnStatement", 1062 "argument": { 1063 "type": "BinaryExpression", 1064 "operator": "-", 1065 "left": { 1066 "type": "BinaryExpression", 1067 "operator": "+", 1068 "left": { 1069 "type": "MemberExpression", 1070 "object": { 1071 "type": "ThisExpression", 1072 "loc": { 1073 "start": { 1074 "line": 31, 1075 "column": 14 1076 }, 1077 "end": { 1078 "line": 31, 1079 "column": 18 1080 } 1081 } 1082 }, 1083 "property": { 1084 "type": "Identifier", 1085 "name": "item", 1086 "decorators": [], 1087 "loc": { 1088 "start": { 1089 "line": 31, 1090 "column": 19 1091 }, 1092 "end": { 1093 "line": 31, 1094 "column": 23 1095 } 1096 } 1097 }, 1098 "computed": false, 1099 "optional": false, 1100 "loc": { 1101 "start": { 1102 "line": 31, 1103 "column": 14 1104 }, 1105 "end": { 1106 "line": 31, 1107 "column": 23 1108 } 1109 } 1110 }, 1111 "right": { 1112 "type": "CallExpression", 1113 "callee": { 1114 "type": "MemberExpression", 1115 "object": { 1116 "type": "TSNonNullExpression", 1117 "expression": { 1118 "type": "MemberExpression", 1119 "object": { 1120 "type": "ThisExpression", 1121 "loc": { 1122 "start": { 1123 "line": 31, 1124 "column": 26 1125 }, 1126 "end": { 1127 "line": 31, 1128 "column": 30 1129 } 1130 } 1131 }, 1132 "property": { 1133 "type": "Identifier", 1134 "name": "left", 1135 "decorators": [], 1136 "loc": { 1137 "start": { 1138 "line": 31, 1139 "column": 31 1140 }, 1141 "end": { 1142 "line": 31, 1143 "column": 35 1144 } 1145 } 1146 }, 1147 "computed": false, 1148 "optional": false, 1149 "loc": { 1150 "start": { 1151 "line": 31, 1152 "column": 26 1153 }, 1154 "end": { 1155 "line": 31, 1156 "column": 35 1157 } 1158 } 1159 }, 1160 "loc": { 1161 "start": { 1162 "line": 31, 1163 "column": 26 1164 }, 1165 "end": { 1166 "line": 31, 1167 "column": 36 1168 } 1169 } 1170 }, 1171 "property": { 1172 "type": "Identifier", 1173 "name": "itemCheck", 1174 "decorators": [], 1175 "loc": { 1176 "start": { 1177 "line": 31, 1178 "column": 37 1179 }, 1180 "end": { 1181 "line": 31, 1182 "column": 46 1183 } 1184 } 1185 }, 1186 "computed": false, 1187 "optional": false, 1188 "loc": { 1189 "start": { 1190 "line": 31, 1191 "column": 26 1192 }, 1193 "end": { 1194 "line": 31, 1195 "column": 46 1196 } 1197 } 1198 }, 1199 "arguments": [], 1200 "optional": false, 1201 "loc": { 1202 "start": { 1203 "line": 31, 1204 "column": 26 1205 }, 1206 "end": { 1207 "line": 31, 1208 "column": 48 1209 } 1210 } 1211 }, 1212 "loc": { 1213 "start": { 1214 "line": 31, 1215 "column": 14 1216 }, 1217 "end": { 1218 "line": 31, 1219 "column": 48 1220 } 1221 } 1222 }, 1223 "right": { 1224 "type": "CallExpression", 1225 "callee": { 1226 "type": "MemberExpression", 1227 "object": { 1228 "type": "TSNonNullExpression", 1229 "expression": { 1230 "type": "MemberExpression", 1231 "object": { 1232 "type": "ThisExpression", 1233 "loc": { 1234 "start": { 1235 "line": 31, 1236 "column": 51 1237 }, 1238 "end": { 1239 "line": 31, 1240 "column": 55 1241 } 1242 } 1243 }, 1244 "property": { 1245 "type": "Identifier", 1246 "name": "right", 1247 "decorators": [], 1248 "loc": { 1249 "start": { 1250 "line": 31, 1251 "column": 56 1252 }, 1253 "end": { 1254 "line": 31, 1255 "column": 61 1256 } 1257 } 1258 }, 1259 "computed": false, 1260 "optional": false, 1261 "loc": { 1262 "start": { 1263 "line": 31, 1264 "column": 51 1265 }, 1266 "end": { 1267 "line": 31, 1268 "column": 61 1269 } 1270 } 1271 }, 1272 "loc": { 1273 "start": { 1274 "line": 31, 1275 "column": 51 1276 }, 1277 "end": { 1278 "line": 31, 1279 "column": 62 1280 } 1281 } 1282 }, 1283 "property": { 1284 "type": "Identifier", 1285 "name": "itemCheck", 1286 "decorators": [], 1287 "loc": { 1288 "start": { 1289 "line": 31, 1290 "column": 63 1291 }, 1292 "end": { 1293 "line": 31, 1294 "column": 72 1295 } 1296 } 1297 }, 1298 "computed": false, 1299 "optional": false, 1300 "loc": { 1301 "start": { 1302 "line": 31, 1303 "column": 51 1304 }, 1305 "end": { 1306 "line": 31, 1307 "column": 72 1308 } 1309 } 1310 }, 1311 "arguments": [], 1312 "optional": false, 1313 "loc": { 1314 "start": { 1315 "line": 31, 1316 "column": 51 1317 }, 1318 "end": { 1319 "line": 31, 1320 "column": 74 1321 } 1322 } 1323 }, 1324 "loc": { 1325 "start": { 1326 "line": 31, 1327 "column": 14 1328 }, 1329 "end": { 1330 "line": 31, 1331 "column": 74 1332 } 1333 } 1334 }, 1335 "loc": { 1336 "start": { 1337 "line": 31, 1338 "column": 7 1339 }, 1340 "end": { 1341 "line": 31, 1342 "column": 75 1343 } 1344 } 1345 }, 1346 "loc": { 1347 "start": { 1348 "line": 28, 1349 "column": 5 1350 }, 1351 "end": { 1352 "line": 31, 1353 "column": 75 1354 } 1355 } 1356 } 1357 ], 1358 "loc": { 1359 "start": { 1360 "line": 27, 1361 "column": 27 1362 }, 1363 "end": { 1364 "line": 32, 1365 "column": 4 1366 } 1367 } 1368 }, 1369 "loc": { 1370 "start": { 1371 "line": 27, 1372 "column": 19 1373 }, 1374 "end": { 1375 "line": 32, 1376 "column": 4 1377 } 1378 } 1379 }, 1380 "loc": { 1381 "start": { 1382 "line": 27, 1383 "column": 19 1384 }, 1385 "end": { 1386 "line": 32, 1387 "column": 4 1388 } 1389 } 1390 }, 1391 "overloads": [], 1392 "decorators": [], 1393 "loc": { 1394 "start": { 1395 "line": 27, 1396 "column": 3 1397 }, 1398 "end": { 1399 "line": 32, 1400 "column": 4 1401 } 1402 } 1403 } 1404 ], 1405 "loc": { 1406 "start": { 1407 "line": 16, 1408 "column": 16 1409 }, 1410 "end": { 1411 "line": 33, 1412 "column": 2 1413 } 1414 } 1415 }, 1416 "loc": { 1417 "start": { 1418 "line": 16, 1419 "column": 1 1420 }, 1421 "end": { 1422 "line": 33, 1423 "column": 2 1424 } 1425 } 1426 }, 1427 { 1428 "type": "ClassDeclaration", 1429 "definition": { 1430 "id": { 1431 "type": "Identifier", 1432 "name": "AccessBinaryTrees", 1433 "decorators": [], 1434 "loc": { 1435 "start": { 1436 "line": 35, 1437 "column": 14 1438 }, 1439 "end": { 1440 "line": 35, 1441 "column": 31 1442 } 1443 } 1444 }, 1445 "superClass": null, 1446 "implements": [], 1447 "body": [ 1448 { 1449 "type": "ClassProperty", 1450 "key": { 1451 "type": "Identifier", 1452 "name": "startDepth", 1453 "decorators": [], 1454 "loc": { 1455 "start": { 1456 "line": 36, 1457 "column": 19 1458 }, 1459 "end": { 1460 "line": 36, 1461 "column": 29 1462 } 1463 } 1464 }, 1465 "value": { 1466 "type": "NumberLiteral", 1467 "value": 4, 1468 "loc": { 1469 "start": { 1470 "line": 36, 1471 "column": 32 1472 }, 1473 "end": { 1474 "line": 36, 1475 "column": 33 1476 } 1477 } 1478 }, 1479 "accessibility": "public", 1480 "static": true, 1481 "readonly": true, 1482 "declare": false, 1483 "optional": false, 1484 "computed": false, 1485 "definite": false, 1486 "decorators": [], 1487 "loc": { 1488 "start": { 1489 "line": 36, 1490 "column": 19 1491 }, 1492 "end": { 1493 "line": 36, 1494 "column": 33 1495 } 1496 } 1497 }, 1498 { 1499 "type": "ClassProperty", 1500 "key": { 1501 "type": "Identifier", 1502 "name": "endDepth", 1503 "decorators": [], 1504 "loc": { 1505 "start": { 1506 "line": 37, 1507 "column": 19 1508 }, 1509 "end": { 1510 "line": 37, 1511 "column": 27 1512 } 1513 } 1514 }, 1515 "value": { 1516 "type": "NumberLiteral", 1517 "value": 7, 1518 "loc": { 1519 "start": { 1520 "line": 37, 1521 "column": 30 1522 }, 1523 "end": { 1524 "line": 37, 1525 "column": 31 1526 } 1527 } 1528 }, 1529 "accessibility": "public", 1530 "static": true, 1531 "readonly": true, 1532 "declare": false, 1533 "optional": false, 1534 "computed": false, 1535 "definite": false, 1536 "decorators": [], 1537 "loc": { 1538 "start": { 1539 "line": 37, 1540 "column": 19 1541 }, 1542 "end": { 1543 "line": 37, 1544 "column": 31 1545 } 1546 } 1547 }, 1548 { 1549 "type": "ClassProperty", 1550 "key": { 1551 "type": "Identifier", 1552 "name": "expected", 1553 "decorators": [], 1554 "loc": { 1555 "start": { 1556 "line": 38, 1557 "column": 19 1558 }, 1559 "end": { 1560 "line": 38, 1561 "column": 27 1562 } 1563 } 1564 }, 1565 "value": { 1566 "type": "UnaryExpression", 1567 "operator": "-", 1568 "prefix": true, 1569 "argument": { 1570 "type": "NumberLiteral", 1571 "value": 4, 1572 "loc": { 1573 "start": { 1574 "line": 38, 1575 "column": 31 1576 }, 1577 "end": { 1578 "line": 38, 1579 "column": 32 1580 } 1581 } 1582 }, 1583 "loc": { 1584 "start": { 1585 "line": 38, 1586 "column": 30 1587 }, 1588 "end": { 1589 "line": 38, 1590 "column": 32 1591 } 1592 } 1593 }, 1594 "accessibility": "public", 1595 "static": true, 1596 "readonly": true, 1597 "declare": false, 1598 "optional": false, 1599 "computed": false, 1600 "definite": false, 1601 "decorators": [], 1602 "loc": { 1603 "start": { 1604 "line": 38, 1605 "column": 19 1606 }, 1607 "end": { 1608 "line": 38, 1609 "column": 32 1610 } 1611 } 1612 }, 1613 { 1614 "type": "MethodDefinition", 1615 "key": { 1616 "type": "Identifier", 1617 "name": "bottomUpTree", 1618 "decorators": [], 1619 "loc": { 1620 "start": { 1621 "line": 40, 1622 "column": 10 1623 }, 1624 "end": { 1625 "line": 40, 1626 "column": 22 1627 } 1628 } 1629 }, 1630 "kind": "method", 1631 "accessibility": "public", 1632 "static": true, 1633 "optional": false, 1634 "computed": false, 1635 "value": { 1636 "type": "FunctionExpression", 1637 "function": { 1638 "type": "ScriptFunction", 1639 "id": { 1640 "type": "Identifier", 1641 "name": "bottomUpTree", 1642 "decorators": [], 1643 "loc": { 1644 "start": { 1645 "line": 40, 1646 "column": 10 1647 }, 1648 "end": { 1649 "line": 40, 1650 "column": 22 1651 } 1652 } 1653 }, 1654 "generator": false, 1655 "async": false, 1656 "expression": false, 1657 "params": [ 1658 { 1659 "type": "ETSParameterExpression", 1660 "name": { 1661 "type": "Identifier", 1662 "name": "item", 1663 "typeAnnotation": { 1664 "type": "ETSPrimitiveType", 1665 "loc": { 1666 "start": { 1667 "line": 40, 1668 "column": 29 1669 }, 1670 "end": { 1671 "line": 40, 1672 "column": 32 1673 } 1674 } 1675 }, 1676 "decorators": [], 1677 "loc": { 1678 "start": { 1679 "line": 40, 1680 "column": 23 1681 }, 1682 "end": { 1683 "line": 40, 1684 "column": 32 1685 } 1686 } 1687 }, 1688 "loc": { 1689 "start": { 1690 "line": 40, 1691 "column": 23 1692 }, 1693 "end": { 1694 "line": 40, 1695 "column": 32 1696 } 1697 } 1698 }, 1699 { 1700 "type": "ETSParameterExpression", 1701 "name": { 1702 "type": "Identifier", 1703 "name": "depth", 1704 "typeAnnotation": { 1705 "type": "ETSPrimitiveType", 1706 "loc": { 1707 "start": { 1708 "line": 40, 1709 "column": 41 1710 }, 1711 "end": { 1712 "line": 40, 1713 "column": 44 1714 } 1715 } 1716 }, 1717 "decorators": [], 1718 "loc": { 1719 "start": { 1720 "line": 40, 1721 "column": 34 1722 }, 1723 "end": { 1724 "line": 40, 1725 "column": 44 1726 } 1727 } 1728 }, 1729 "loc": { 1730 "start": { 1731 "line": 40, 1732 "column": 34 1733 }, 1734 "end": { 1735 "line": 40, 1736 "column": 44 1737 } 1738 } 1739 } 1740 ], 1741 "returnType": { 1742 "type": "ETSTypeReference", 1743 "part": { 1744 "type": "ETSTypeReferencePart", 1745 "name": { 1746 "type": "Identifier", 1747 "name": "TreeNode", 1748 "decorators": [], 1749 "loc": { 1750 "start": { 1751 "line": 40, 1752 "column": 47 1753 }, 1754 "end": { 1755 "line": 40, 1756 "column": 55 1757 } 1758 } 1759 }, 1760 "loc": { 1761 "start": { 1762 "line": 40, 1763 "column": 47 1764 }, 1765 "end": { 1766 "line": 40, 1767 "column": 57 1768 } 1769 } 1770 }, 1771 "loc": { 1772 "start": { 1773 "line": 40, 1774 "column": 47 1775 }, 1776 "end": { 1777 "line": 40, 1778 "column": 57 1779 } 1780 } 1781 }, 1782 "body": { 1783 "type": "BlockStatement", 1784 "statements": [ 1785 { 1786 "type": "IfStatement", 1787 "test": { 1788 "type": "BinaryExpression", 1789 "operator": ">", 1790 "left": { 1791 "type": "Identifier", 1792 "name": "depth", 1793 "decorators": [], 1794 "loc": { 1795 "start": { 1796 "line": 41, 1797 "column": 8 1798 }, 1799 "end": { 1800 "line": 41, 1801 "column": 13 1802 } 1803 } 1804 }, 1805 "right": { 1806 "type": "NumberLiteral", 1807 "value": 0, 1808 "loc": { 1809 "start": { 1810 "line": 41, 1811 "column": 16 1812 }, 1813 "end": { 1814 "line": 41, 1815 "column": 17 1816 } 1817 } 1818 }, 1819 "loc": { 1820 "start": { 1821 "line": 41, 1822 "column": 8 1823 }, 1824 "end": { 1825 "line": 41, 1826 "column": 17 1827 } 1828 } 1829 }, 1830 "consequent": { 1831 "type": "BlockStatement", 1832 "statements": [ 1833 { 1834 "type": "ReturnStatement", 1835 "argument": { 1836 "type": "ETSNewClassInstanceExpression", 1837 "typeReference": { 1838 "type": "ETSTypeReference", 1839 "part": { 1840 "type": "ETSTypeReferencePart", 1841 "name": { 1842 "type": "Identifier", 1843 "name": "TreeNode", 1844 "decorators": [], 1845 "loc": { 1846 "start": { 1847 "line": 42, 1848 "column": 17 1849 }, 1850 "end": { 1851 "line": 42, 1852 "column": 25 1853 } 1854 } 1855 }, 1856 "loc": { 1857 "start": { 1858 "line": 42, 1859 "column": 17 1860 }, 1861 "end": { 1862 "line": 42, 1863 "column": 26 1864 } 1865 } 1866 }, 1867 "loc": { 1868 "start": { 1869 "line": 42, 1870 "column": 17 1871 }, 1872 "end": { 1873 "line": 42, 1874 "column": 26 1875 } 1876 } 1877 }, 1878 "arguments": [ 1879 { 1880 "type": "CallExpression", 1881 "callee": { 1882 "type": "MemberExpression", 1883 "object": { 1884 "type": "Identifier", 1885 "name": "AccessBinaryTrees", 1886 "decorators": [], 1887 "loc": { 1888 "start": { 1889 "line": 43, 1890 "column": 8 1891 }, 1892 "end": { 1893 "line": 43, 1894 "column": 25 1895 } 1896 } 1897 }, 1898 "property": { 1899 "type": "Identifier", 1900 "name": "bottomUpTree", 1901 "decorators": [], 1902 "loc": { 1903 "start": { 1904 "line": 43, 1905 "column": 26 1906 }, 1907 "end": { 1908 "line": 43, 1909 "column": 38 1910 } 1911 } 1912 }, 1913 "computed": false, 1914 "optional": false, 1915 "loc": { 1916 "start": { 1917 "line": 43, 1918 "column": 8 1919 }, 1920 "end": { 1921 "line": 43, 1922 "column": 38 1923 } 1924 } 1925 }, 1926 "arguments": [ 1927 { 1928 "type": "BinaryExpression", 1929 "operator": "-", 1930 "left": { 1931 "type": "BinaryExpression", 1932 "operator": "*", 1933 "left": { 1934 "type": "NumberLiteral", 1935 "value": 2, 1936 "loc": { 1937 "start": { 1938 "line": 43, 1939 "column": 39 1940 }, 1941 "end": { 1942 "line": 43, 1943 "column": 40 1944 } 1945 } 1946 }, 1947 "right": { 1948 "type": "Identifier", 1949 "name": "item", 1950 "decorators": [], 1951 "loc": { 1952 "start": { 1953 "line": 43, 1954 "column": 41 1955 }, 1956 "end": { 1957 "line": 43, 1958 "column": 45 1959 } 1960 } 1961 }, 1962 "loc": { 1963 "start": { 1964 "line": 43, 1965 "column": 39 1966 }, 1967 "end": { 1968 "line": 43, 1969 "column": 45 1970 } 1971 } 1972 }, 1973 "right": { 1974 "type": "NumberLiteral", 1975 "value": 1, 1976 "loc": { 1977 "start": { 1978 "line": 43, 1979 "column": 48 1980 }, 1981 "end": { 1982 "line": 43, 1983 "column": 49 1984 } 1985 } 1986 }, 1987 "loc": { 1988 "start": { 1989 "line": 43, 1990 "column": 39 1991 }, 1992 "end": { 1993 "line": 43, 1994 "column": 49 1995 } 1996 } 1997 }, 1998 { 1999 "type": "BinaryExpression", 2000 "operator": "-", 2001 "left": { 2002 "type": "Identifier", 2003 "name": "depth", 2004 "decorators": [], 2005 "loc": { 2006 "start": { 2007 "line": 43, 2008 "column": 51 2009 }, 2010 "end": { 2011 "line": 43, 2012 "column": 56 2013 } 2014 } 2015 }, 2016 "right": { 2017 "type": "NumberLiteral", 2018 "value": 1, 2019 "loc": { 2020 "start": { 2021 "line": 43, 2022 "column": 57 2023 }, 2024 "end": { 2025 "line": 43, 2026 "column": 58 2027 } 2028 } 2029 }, 2030 "loc": { 2031 "start": { 2032 "line": 43, 2033 "column": 51 2034 }, 2035 "end": { 2036 "line": 43, 2037 "column": 58 2038 } 2039 } 2040 } 2041 ], 2042 "optional": false, 2043 "loc": { 2044 "start": { 2045 "line": 43, 2046 "column": 8 2047 }, 2048 "end": { 2049 "line": 43, 2050 "column": 59 2051 } 2052 } 2053 }, 2054 { 2055 "type": "CallExpression", 2056 "callee": { 2057 "type": "MemberExpression", 2058 "object": { 2059 "type": "Identifier", 2060 "name": "AccessBinaryTrees", 2061 "decorators": [], 2062 "loc": { 2063 "start": { 2064 "line": 44, 2065 "column": 8 2066 }, 2067 "end": { 2068 "line": 44, 2069 "column": 25 2070 } 2071 } 2072 }, 2073 "property": { 2074 "type": "Identifier", 2075 "name": "bottomUpTree", 2076 "decorators": [], 2077 "loc": { 2078 "start": { 2079 "line": 44, 2080 "column": 26 2081 }, 2082 "end": { 2083 "line": 44, 2084 "column": 38 2085 } 2086 } 2087 }, 2088 "computed": false, 2089 "optional": false, 2090 "loc": { 2091 "start": { 2092 "line": 44, 2093 "column": 8 2094 }, 2095 "end": { 2096 "line": 44, 2097 "column": 38 2098 } 2099 } 2100 }, 2101 "arguments": [ 2102 { 2103 "type": "BinaryExpression", 2104 "operator": "*", 2105 "left": { 2106 "type": "NumberLiteral", 2107 "value": 2, 2108 "loc": { 2109 "start": { 2110 "line": 44, 2111 "column": 39 2112 }, 2113 "end": { 2114 "line": 44, 2115 "column": 40 2116 } 2117 } 2118 }, 2119 "right": { 2120 "type": "Identifier", 2121 "name": "item", 2122 "decorators": [], 2123 "loc": { 2124 "start": { 2125 "line": 44, 2126 "column": 41 2127 }, 2128 "end": { 2129 "line": 44, 2130 "column": 45 2131 } 2132 } 2133 }, 2134 "loc": { 2135 "start": { 2136 "line": 44, 2137 "column": 39 2138 }, 2139 "end": { 2140 "line": 44, 2141 "column": 45 2142 } 2143 } 2144 }, 2145 { 2146 "type": "BinaryExpression", 2147 "operator": "-", 2148 "left": { 2149 "type": "Identifier", 2150 "name": "depth", 2151 "decorators": [], 2152 "loc": { 2153 "start": { 2154 "line": 44, 2155 "column": 47 2156 }, 2157 "end": { 2158 "line": 44, 2159 "column": 52 2160 } 2161 } 2162 }, 2163 "right": { 2164 "type": "NumberLiteral", 2165 "value": 1, 2166 "loc": { 2167 "start": { 2168 "line": 44, 2169 "column": 53 2170 }, 2171 "end": { 2172 "line": 44, 2173 "column": 54 2174 } 2175 } 2176 }, 2177 "loc": { 2178 "start": { 2179 "line": 44, 2180 "column": 47 2181 }, 2182 "end": { 2183 "line": 44, 2184 "column": 54 2185 } 2186 } 2187 } 2188 ], 2189 "optional": false, 2190 "loc": { 2191 "start": { 2192 "line": 44, 2193 "column": 8 2194 }, 2195 "end": { 2196 "line": 44, 2197 "column": 55 2198 } 2199 } 2200 }, 2201 { 2202 "type": "Identifier", 2203 "name": "item", 2204 "decorators": [], 2205 "loc": { 2206 "start": { 2207 "line": 45, 2208 "column": 8 2209 }, 2210 "end": { 2211 "line": 45, 2212 "column": 12 2213 } 2214 } 2215 } 2216 ], 2217 "loc": { 2218 "start": { 2219 "line": 42, 2220 "column": 13 2221 }, 2222 "end": { 2223 "line": 46, 2224 "column": 8 2225 } 2226 } 2227 }, 2228 "loc": { 2229 "start": { 2230 "line": 42, 2231 "column": 6 2232 }, 2233 "end": { 2234 "line": 46, 2235 "column": 8 2236 } 2237 } 2238 } 2239 ], 2240 "loc": { 2241 "start": { 2242 "line": 41, 2243 "column": 19 2244 }, 2245 "end": { 2246 "line": 47, 2247 "column": 5 2248 } 2249 } 2250 }, 2251 "alternate": null, 2252 "loc": { 2253 "start": { 2254 "line": 41, 2255 "column": 4 2256 }, 2257 "end": { 2258 "line": 47, 2259 "column": 5 2260 } 2261 } 2262 }, 2263 { 2264 "type": "ReturnStatement", 2265 "argument": { 2266 "type": "ETSNewClassInstanceExpression", 2267 "typeReference": { 2268 "type": "ETSTypeReference", 2269 "part": { 2270 "type": "ETSTypeReferencePart", 2271 "name": { 2272 "type": "Identifier", 2273 "name": "TreeNode", 2274 "decorators": [], 2275 "loc": { 2276 "start": { 2277 "line": 48, 2278 "column": 15 2279 }, 2280 "end": { 2281 "line": 48, 2282 "column": 23 2283 } 2284 } 2285 }, 2286 "loc": { 2287 "start": { 2288 "line": 48, 2289 "column": 15 2290 }, 2291 "end": { 2292 "line": 48, 2293 "column": 24 2294 } 2295 } 2296 }, 2297 "loc": { 2298 "start": { 2299 "line": 48, 2300 "column": 15 2301 }, 2302 "end": { 2303 "line": 48, 2304 "column": 24 2305 } 2306 } 2307 }, 2308 "arguments": [ 2309 { 2310 "type": "NullLiteral", 2311 "value": null, 2312 "loc": { 2313 "start": { 2314 "line": 48, 2315 "column": 24 2316 }, 2317 "end": { 2318 "line": 48, 2319 "column": 28 2320 } 2321 } 2322 }, 2323 { 2324 "type": "NullLiteral", 2325 "value": null, 2326 "loc": { 2327 "start": { 2328 "line": 48, 2329 "column": 30 2330 }, 2331 "end": { 2332 "line": 48, 2333 "column": 34 2334 } 2335 } 2336 }, 2337 { 2338 "type": "Identifier", 2339 "name": "item", 2340 "decorators": [], 2341 "loc": { 2342 "start": { 2343 "line": 48, 2344 "column": 36 2345 }, 2346 "end": { 2347 "line": 48, 2348 "column": 40 2349 } 2350 } 2351 } 2352 ], 2353 "loc": { 2354 "start": { 2355 "line": 48, 2356 "column": 11 2357 }, 2358 "end": { 2359 "line": 48, 2360 "column": 42 2361 } 2362 } 2363 }, 2364 "loc": { 2365 "start": { 2366 "line": 48, 2367 "column": 4 2368 }, 2369 "end": { 2370 "line": 48, 2371 "column": 42 2372 } 2373 } 2374 } 2375 ], 2376 "loc": { 2377 "start": { 2378 "line": 40, 2379 "column": 56 2380 }, 2381 "end": { 2382 "line": 49, 2383 "column": 4 2384 } 2385 } 2386 }, 2387 "loc": { 2388 "start": { 2389 "line": 40, 2390 "column": 22 2391 }, 2392 "end": { 2393 "line": 49, 2394 "column": 4 2395 } 2396 } 2397 }, 2398 "loc": { 2399 "start": { 2400 "line": 40, 2401 "column": 22 2402 }, 2403 "end": { 2404 "line": 49, 2405 "column": 4 2406 } 2407 } 2408 }, 2409 "overloads": [], 2410 "decorators": [], 2411 "loc": { 2412 "start": { 2413 "line": 40, 2414 "column": 3 2415 }, 2416 "end": { 2417 "line": 49, 2418 "column": 4 2419 } 2420 } 2421 }, 2422 { 2423 "type": "MethodDefinition", 2424 "key": { 2425 "type": "Identifier", 2426 "name": "run", 2427 "decorators": [], 2428 "loc": { 2429 "start": { 2430 "line": 51, 2431 "column": 10 2432 }, 2433 "end": { 2434 "line": 51, 2435 "column": 13 2436 } 2437 } 2438 }, 2439 "kind": "method", 2440 "accessibility": "public", 2441 "static": false, 2442 "optional": false, 2443 "computed": false, 2444 "value": { 2445 "type": "FunctionExpression", 2446 "function": { 2447 "type": "ScriptFunction", 2448 "id": { 2449 "type": "Identifier", 2450 "name": "run", 2451 "decorators": [], 2452 "loc": { 2453 "start": { 2454 "line": 51, 2455 "column": 10 2456 }, 2457 "end": { 2458 "line": 51, 2459 "column": 13 2460 } 2461 } 2462 }, 2463 "generator": false, 2464 "async": false, 2465 "expression": false, 2466 "params": [], 2467 "returnType": { 2468 "type": "ETSPrimitiveType", 2469 "loc": { 2470 "start": { 2471 "line": 51, 2472 "column": 17 2473 }, 2474 "end": { 2475 "line": 51, 2476 "column": 21 2477 } 2478 } 2479 }, 2480 "body": { 2481 "type": "BlockStatement", 2482 "statements": [ 2483 { 2484 "type": "VariableDeclaration", 2485 "declarations": [ 2486 { 2487 "type": "VariableDeclarator", 2488 "id": { 2489 "type": "Identifier", 2490 "name": "ret", 2491 "typeAnnotation": { 2492 "type": "ETSPrimitiveType", 2493 "loc": { 2494 "start": { 2495 "line": 52, 2496 "column": 14 2497 }, 2498 "end": { 2499 "line": 52, 2500 "column": 17 2501 } 2502 } 2503 }, 2504 "decorators": [], 2505 "loc": { 2506 "start": { 2507 "line": 52, 2508 "column": 9 2509 }, 2510 "end": { 2511 "line": 52, 2512 "column": 12 2513 } 2514 } 2515 }, 2516 "init": { 2517 "type": "NumberLiteral", 2518 "value": 0, 2519 "loc": { 2520 "start": { 2521 "line": 52, 2522 "column": 20 2523 }, 2524 "end": { 2525 "line": 52, 2526 "column": 21 2527 } 2528 } 2529 }, 2530 "loc": { 2531 "start": { 2532 "line": 52, 2533 "column": 9 2534 }, 2535 "end": { 2536 "line": 52, 2537 "column": 21 2538 } 2539 } 2540 } 2541 ], 2542 "kind": "let", 2543 "loc": { 2544 "start": { 2545 "line": 52, 2546 "column": 5 2547 }, 2548 "end": { 2549 "line": 52, 2550 "column": 22 2551 } 2552 } 2553 }, 2554 { 2555 "type": "ForUpdateStatement", 2556 "init": { 2557 "type": "VariableDeclaration", 2558 "declarations": [ 2559 { 2560 "type": "VariableDeclarator", 2561 "id": { 2562 "type": "Identifier", 2563 "name": "n", 2564 "typeAnnotation": { 2565 "type": "ETSPrimitiveType", 2566 "loc": { 2567 "start": { 2568 "line": 54, 2569 "column": 17 2570 }, 2571 "end": { 2572 "line": 54, 2573 "column": 20 2574 } 2575 } 2576 }, 2577 "decorators": [], 2578 "loc": { 2579 "start": { 2580 "line": 54, 2581 "column": 14 2582 }, 2583 "end": { 2584 "line": 54, 2585 "column": 15 2586 } 2587 } 2588 }, 2589 "init": { 2590 "type": "MemberExpression", 2591 "object": { 2592 "type": "Identifier", 2593 "name": "AccessBinaryTrees", 2594 "decorators": [], 2595 "loc": { 2596 "start": { 2597 "line": 54, 2598 "column": 23 2599 }, 2600 "end": { 2601 "line": 54, 2602 "column": 40 2603 } 2604 } 2605 }, 2606 "property": { 2607 "type": "Identifier", 2608 "name": "startDepth", 2609 "decorators": [], 2610 "loc": { 2611 "start": { 2612 "line": 54, 2613 "column": 41 2614 }, 2615 "end": { 2616 "line": 54, 2617 "column": 51 2618 } 2619 } 2620 }, 2621 "computed": false, 2622 "optional": false, 2623 "loc": { 2624 "start": { 2625 "line": 54, 2626 "column": 23 2627 }, 2628 "end": { 2629 "line": 54, 2630 "column": 51 2631 } 2632 } 2633 }, 2634 "loc": { 2635 "start": { 2636 "line": 54, 2637 "column": 14 2638 }, 2639 "end": { 2640 "line": 54, 2641 "column": 51 2642 } 2643 } 2644 } 2645 ], 2646 "kind": "let", 2647 "loc": { 2648 "start": { 2649 "line": 54, 2650 "column": 10 2651 }, 2652 "end": { 2653 "line": 54, 2654 "column": 51 2655 } 2656 } 2657 }, 2658 "test": { 2659 "type": "BinaryExpression", 2660 "operator": "<=", 2661 "left": { 2662 "type": "Identifier", 2663 "name": "n", 2664 "decorators": [], 2665 "loc": { 2666 "start": { 2667 "line": 54, 2668 "column": 53 2669 }, 2670 "end": { 2671 "line": 54, 2672 "column": 54 2673 } 2674 } 2675 }, 2676 "right": { 2677 "type": "MemberExpression", 2678 "object": { 2679 "type": "Identifier", 2680 "name": "AccessBinaryTrees", 2681 "decorators": [], 2682 "loc": { 2683 "start": { 2684 "line": 54, 2685 "column": 58 2686 }, 2687 "end": { 2688 "line": 54, 2689 "column": 75 2690 } 2691 } 2692 }, 2693 "property": { 2694 "type": "Identifier", 2695 "name": "endDepth", 2696 "decorators": [], 2697 "loc": { 2698 "start": { 2699 "line": 54, 2700 "column": 76 2701 }, 2702 "end": { 2703 "line": 54, 2704 "column": 84 2705 } 2706 } 2707 }, 2708 "computed": false, 2709 "optional": false, 2710 "loc": { 2711 "start": { 2712 "line": 54, 2713 "column": 58 2714 }, 2715 "end": { 2716 "line": 54, 2717 "column": 84 2718 } 2719 } 2720 }, 2721 "loc": { 2722 "start": { 2723 "line": 54, 2724 "column": 53 2725 }, 2726 "end": { 2727 "line": 54, 2728 "column": 84 2729 } 2730 } 2731 }, 2732 "update": { 2733 "type": "UpdateExpression", 2734 "operator": "++", 2735 "prefix": false, 2736 "argument": { 2737 "type": "Identifier", 2738 "name": "n", 2739 "decorators": [], 2740 "loc": { 2741 "start": { 2742 "line": 54, 2743 "column": 86 2744 }, 2745 "end": { 2746 "line": 54, 2747 "column": 87 2748 } 2749 } 2750 }, 2751 "loc": { 2752 "start": { 2753 "line": 54, 2754 "column": 86 2755 }, 2756 "end": { 2757 "line": 54, 2758 "column": 89 2759 } 2760 } 2761 }, 2762 "body": { 2763 "type": "BlockStatement", 2764 "statements": [ 2765 { 2766 "type": "VariableDeclaration", 2767 "declarations": [ 2768 { 2769 "type": "VariableDeclarator", 2770 "id": { 2771 "type": "Identifier", 2772 "name": "minDepth", 2773 "typeAnnotation": { 2774 "type": "ETSPrimitiveType", 2775 "loc": { 2776 "start": { 2777 "line": 55, 2778 "column": 21 2779 }, 2780 "end": { 2781 "line": 55, 2782 "column": 24 2783 } 2784 } 2785 }, 2786 "decorators": [], 2787 "loc": { 2788 "start": { 2789 "line": 55, 2790 "column": 11 2791 }, 2792 "end": { 2793 "line": 55, 2794 "column": 19 2795 } 2796 } 2797 }, 2798 "init": { 2799 "type": "MemberExpression", 2800 "object": { 2801 "type": "Identifier", 2802 "name": "AccessBinaryTrees", 2803 "decorators": [], 2804 "loc": { 2805 "start": { 2806 "line": 55, 2807 "column": 27 2808 }, 2809 "end": { 2810 "line": 55, 2811 "column": 44 2812 } 2813 } 2814 }, 2815 "property": { 2816 "type": "Identifier", 2817 "name": "startDepth", 2818 "decorators": [], 2819 "loc": { 2820 "start": { 2821 "line": 55, 2822 "column": 45 2823 }, 2824 "end": { 2825 "line": 55, 2826 "column": 55 2827 } 2828 } 2829 }, 2830 "computed": false, 2831 "optional": false, 2832 "loc": { 2833 "start": { 2834 "line": 55, 2835 "column": 27 2836 }, 2837 "end": { 2838 "line": 55, 2839 "column": 55 2840 } 2841 } 2842 }, 2843 "loc": { 2844 "start": { 2845 "line": 55, 2846 "column": 11 2847 }, 2848 "end": { 2849 "line": 55, 2850 "column": 55 2851 } 2852 } 2853 } 2854 ], 2855 "kind": "let", 2856 "loc": { 2857 "start": { 2858 "line": 55, 2859 "column": 7 2860 }, 2861 "end": { 2862 "line": 55, 2863 "column": 56 2864 } 2865 } 2866 }, 2867 { 2868 "type": "VariableDeclaration", 2869 "declarations": [ 2870 { 2871 "type": "VariableDeclarator", 2872 "id": { 2873 "type": "Identifier", 2874 "name": "maxDepth", 2875 "typeAnnotation": { 2876 "type": "ETSPrimitiveType", 2877 "loc": { 2878 "start": { 2879 "line": 56, 2880 "column": 21 2881 }, 2882 "end": { 2883 "line": 56, 2884 "column": 24 2885 } 2886 } 2887 }, 2888 "decorators": [], 2889 "loc": { 2890 "start": { 2891 "line": 56, 2892 "column": 11 2893 }, 2894 "end": { 2895 "line": 56, 2896 "column": 19 2897 } 2898 } 2899 }, 2900 "init": { 2901 "type": "CallExpression", 2902 "callee": { 2903 "type": "Identifier", 2904 "name": "max", 2905 "decorators": [], 2906 "loc": { 2907 "start": { 2908 "line": 56, 2909 "column": 27 2910 }, 2911 "end": { 2912 "line": 56, 2913 "column": 30 2914 } 2915 } 2916 }, 2917 "arguments": [ 2918 { 2919 "type": "BinaryExpression", 2920 "operator": "+", 2921 "left": { 2922 "type": "Identifier", 2923 "name": "minDepth", 2924 "decorators": [], 2925 "loc": { 2926 "start": { 2927 "line": 56, 2928 "column": 31 2929 }, 2930 "end": { 2931 "line": 56, 2932 "column": 39 2933 } 2934 } 2935 }, 2936 "right": { 2937 "type": "NumberLiteral", 2938 "value": 2, 2939 "loc": { 2940 "start": { 2941 "line": 56, 2942 "column": 42 2943 }, 2944 "end": { 2945 "line": 56, 2946 "column": 43 2947 } 2948 } 2949 }, 2950 "loc": { 2951 "start": { 2952 "line": 56, 2953 "column": 31 2954 }, 2955 "end": { 2956 "line": 56, 2957 "column": 43 2958 } 2959 } 2960 }, 2961 { 2962 "type": "Identifier", 2963 "name": "n", 2964 "decorators": [], 2965 "loc": { 2966 "start": { 2967 "line": 56, 2968 "column": 45 2969 }, 2970 "end": { 2971 "line": 56, 2972 "column": 46 2973 } 2974 } 2975 } 2976 ], 2977 "optional": false, 2978 "loc": { 2979 "start": { 2980 "line": 56, 2981 "column": 27 2982 }, 2983 "end": { 2984 "line": 56, 2985 "column": 47 2986 } 2987 } 2988 }, 2989 "loc": { 2990 "start": { 2991 "line": 56, 2992 "column": 11 2993 }, 2994 "end": { 2995 "line": 56, 2996 "column": 47 2997 } 2998 } 2999 } 3000 ], 3001 "kind": "let", 3002 "loc": { 3003 "start": { 3004 "line": 56, 3005 "column": 7 3006 }, 3007 "end": { 3008 "line": 56, 3009 "column": 48 3010 } 3011 } 3012 }, 3013 { 3014 "type": "VariableDeclaration", 3015 "declarations": [ 3016 { 3017 "type": "VariableDeclarator", 3018 "id": { 3019 "type": "Identifier", 3020 "name": "stretchDepth", 3021 "typeAnnotation": { 3022 "type": "ETSPrimitiveType", 3023 "loc": { 3024 "start": { 3025 "line": 57, 3026 "column": 25 3027 }, 3028 "end": { 3029 "line": 57, 3030 "column": 28 3031 } 3032 } 3033 }, 3034 "decorators": [], 3035 "loc": { 3036 "start": { 3037 "line": 57, 3038 "column": 11 3039 }, 3040 "end": { 3041 "line": 57, 3042 "column": 23 3043 } 3044 } 3045 }, 3046 "init": { 3047 "type": "BinaryExpression", 3048 "operator": "+", 3049 "left": { 3050 "type": "Identifier", 3051 "name": "maxDepth", 3052 "decorators": [], 3053 "loc": { 3054 "start": { 3055 "line": 57, 3056 "column": 31 3057 }, 3058 "end": { 3059 "line": 57, 3060 "column": 39 3061 } 3062 } 3063 }, 3064 "right": { 3065 "type": "NumberLiteral", 3066 "value": 1, 3067 "loc": { 3068 "start": { 3069 "line": 57, 3070 "column": 42 3071 }, 3072 "end": { 3073 "line": 57, 3074 "column": 43 3075 } 3076 } 3077 }, 3078 "loc": { 3079 "start": { 3080 "line": 57, 3081 "column": 31 3082 }, 3083 "end": { 3084 "line": 57, 3085 "column": 43 3086 } 3087 } 3088 }, 3089 "loc": { 3090 "start": { 3091 "line": 57, 3092 "column": 11 3093 }, 3094 "end": { 3095 "line": 57, 3096 "column": 43 3097 } 3098 } 3099 } 3100 ], 3101 "kind": "let", 3102 "loc": { 3103 "start": { 3104 "line": 57, 3105 "column": 7 3106 }, 3107 "end": { 3108 "line": 57, 3109 "column": 44 3110 } 3111 } 3112 }, 3113 { 3114 "type": "VariableDeclaration", 3115 "declarations": [ 3116 { 3117 "type": "VariableDeclarator", 3118 "id": { 3119 "type": "Identifier", 3120 "name": "check", 3121 "typeAnnotation": { 3122 "type": "ETSPrimitiveType", 3123 "loc": { 3124 "start": { 3125 "line": 58, 3126 "column": 18 3127 }, 3128 "end": { 3129 "line": 58, 3130 "column": 21 3131 } 3132 } 3133 }, 3134 "decorators": [], 3135 "loc": { 3136 "start": { 3137 "line": 58, 3138 "column": 11 3139 }, 3140 "end": { 3141 "line": 58, 3142 "column": 16 3143 } 3144 } 3145 }, 3146 "init": { 3147 "type": "CallExpression", 3148 "callee": { 3149 "type": "MemberExpression", 3150 "object": { 3151 "type": "CallExpression", 3152 "callee": { 3153 "type": "MemberExpression", 3154 "object": { 3155 "type": "Identifier", 3156 "name": "AccessBinaryTrees", 3157 "decorators": [], 3158 "loc": { 3159 "start": { 3160 "line": 58, 3161 "column": 24 3162 }, 3163 "end": { 3164 "line": 58, 3165 "column": 41 3166 } 3167 } 3168 }, 3169 "property": { 3170 "type": "Identifier", 3171 "name": "bottomUpTree", 3172 "decorators": [], 3173 "loc": { 3174 "start": { 3175 "line": 58, 3176 "column": 42 3177 }, 3178 "end": { 3179 "line": 58, 3180 "column": 54 3181 } 3182 } 3183 }, 3184 "computed": false, 3185 "optional": false, 3186 "loc": { 3187 "start": { 3188 "line": 58, 3189 "column": 24 3190 }, 3191 "end": { 3192 "line": 58, 3193 "column": 54 3194 } 3195 } 3196 }, 3197 "arguments": [ 3198 { 3199 "type": "NumberLiteral", 3200 "value": 0, 3201 "loc": { 3202 "start": { 3203 "line": 58, 3204 "column": 55 3205 }, 3206 "end": { 3207 "line": 58, 3208 "column": 56 3209 } 3210 } 3211 }, 3212 { 3213 "type": "Identifier", 3214 "name": "stretchDepth", 3215 "decorators": [], 3216 "loc": { 3217 "start": { 3218 "line": 58, 3219 "column": 58 3220 }, 3221 "end": { 3222 "line": 58, 3223 "column": 70 3224 } 3225 } 3226 } 3227 ], 3228 "optional": false, 3229 "loc": { 3230 "start": { 3231 "line": 58, 3232 "column": 24 3233 }, 3234 "end": { 3235 "line": 58, 3236 "column": 71 3237 } 3238 } 3239 }, 3240 "property": { 3241 "type": "Identifier", 3242 "name": "itemCheck", 3243 "decorators": [], 3244 "loc": { 3245 "start": { 3246 "line": 58, 3247 "column": 72 3248 }, 3249 "end": { 3250 "line": 58, 3251 "column": 81 3252 } 3253 } 3254 }, 3255 "computed": false, 3256 "optional": false, 3257 "loc": { 3258 "start": { 3259 "line": 58, 3260 "column": 24 3261 }, 3262 "end": { 3263 "line": 58, 3264 "column": 81 3265 } 3266 } 3267 }, 3268 "arguments": [], 3269 "optional": false, 3270 "loc": { 3271 "start": { 3272 "line": 58, 3273 "column": 24 3274 }, 3275 "end": { 3276 "line": 58, 3277 "column": 83 3278 } 3279 } 3280 }, 3281 "loc": { 3282 "start": { 3283 "line": 58, 3284 "column": 11 3285 }, 3286 "end": { 3287 "line": 58, 3288 "column": 83 3289 } 3290 } 3291 } 3292 ], 3293 "kind": "let", 3294 "loc": { 3295 "start": { 3296 "line": 58, 3297 "column": 7 3298 }, 3299 "end": { 3300 "line": 58, 3301 "column": 84 3302 } 3303 } 3304 }, 3305 { 3306 "type": "VariableDeclaration", 3307 "declarations": [ 3308 { 3309 "type": "VariableDeclarator", 3310 "id": { 3311 "type": "Identifier", 3312 "name": "longLivedTree", 3313 "decorators": [], 3314 "loc": { 3315 "start": { 3316 "line": 60, 3317 "column": 11 3318 }, 3319 "end": { 3320 "line": 60, 3321 "column": 24 3322 } 3323 } 3324 }, 3325 "init": { 3326 "type": "CallExpression", 3327 "callee": { 3328 "type": "MemberExpression", 3329 "object": { 3330 "type": "Identifier", 3331 "name": "AccessBinaryTrees", 3332 "decorators": [], 3333 "loc": { 3334 "start": { 3335 "line": 60, 3336 "column": 27 3337 }, 3338 "end": { 3339 "line": 60, 3340 "column": 44 3341 } 3342 } 3343 }, 3344 "property": { 3345 "type": "Identifier", 3346 "name": "bottomUpTree", 3347 "decorators": [], 3348 "loc": { 3349 "start": { 3350 "line": 60, 3351 "column": 45 3352 }, 3353 "end": { 3354 "line": 60, 3355 "column": 57 3356 } 3357 } 3358 }, 3359 "computed": false, 3360 "optional": false, 3361 "loc": { 3362 "start": { 3363 "line": 60, 3364 "column": 27 3365 }, 3366 "end": { 3367 "line": 60, 3368 "column": 57 3369 } 3370 } 3371 }, 3372 "arguments": [ 3373 { 3374 "type": "NumberLiteral", 3375 "value": 0, 3376 "loc": { 3377 "start": { 3378 "line": 60, 3379 "column": 58 3380 }, 3381 "end": { 3382 "line": 60, 3383 "column": 59 3384 } 3385 } 3386 }, 3387 { 3388 "type": "Identifier", 3389 "name": "maxDepth", 3390 "decorators": [], 3391 "loc": { 3392 "start": { 3393 "line": 60, 3394 "column": 61 3395 }, 3396 "end": { 3397 "line": 60, 3398 "column": 69 3399 } 3400 } 3401 } 3402 ], 3403 "optional": false, 3404 "loc": { 3405 "start": { 3406 "line": 60, 3407 "column": 27 3408 }, 3409 "end": { 3410 "line": 60, 3411 "column": 70 3412 } 3413 } 3414 }, 3415 "loc": { 3416 "start": { 3417 "line": 60, 3418 "column": 11 3419 }, 3420 "end": { 3421 "line": 60, 3422 "column": 70 3423 } 3424 } 3425 } 3426 ], 3427 "kind": "let", 3428 "loc": { 3429 "start": { 3430 "line": 60, 3431 "column": 7 3432 }, 3433 "end": { 3434 "line": 60, 3435 "column": 71 3436 } 3437 } 3438 }, 3439 { 3440 "type": "ForUpdateStatement", 3441 "init": { 3442 "type": "VariableDeclaration", 3443 "declarations": [ 3444 { 3445 "type": "VariableDeclarator", 3446 "id": { 3447 "type": "Identifier", 3448 "name": "depth", 3449 "decorators": [], 3450 "loc": { 3451 "start": { 3452 "line": 62, 3453 "column": 16 3454 }, 3455 "end": { 3456 "line": 62, 3457 "column": 21 3458 } 3459 } 3460 }, 3461 "init": { 3462 "type": "Identifier", 3463 "name": "minDepth", 3464 "decorators": [], 3465 "loc": { 3466 "start": { 3467 "line": 62, 3468 "column": 24 3469 }, 3470 "end": { 3471 "line": 62, 3472 "column": 32 3473 } 3474 } 3475 }, 3476 "loc": { 3477 "start": { 3478 "line": 62, 3479 "column": 16 3480 }, 3481 "end": { 3482 "line": 62, 3483 "column": 32 3484 } 3485 } 3486 } 3487 ], 3488 "kind": "let", 3489 "loc": { 3490 "start": { 3491 "line": 62, 3492 "column": 12 3493 }, 3494 "end": { 3495 "line": 62, 3496 "column": 32 3497 } 3498 } 3499 }, 3500 "test": { 3501 "type": "BinaryExpression", 3502 "operator": "<=", 3503 "left": { 3504 "type": "Identifier", 3505 "name": "depth", 3506 "decorators": [], 3507 "loc": { 3508 "start": { 3509 "line": 62, 3510 "column": 34 3511 }, 3512 "end": { 3513 "line": 62, 3514 "column": 39 3515 } 3516 } 3517 }, 3518 "right": { 3519 "type": "Identifier", 3520 "name": "maxDepth", 3521 "decorators": [], 3522 "loc": { 3523 "start": { 3524 "line": 62, 3525 "column": 43 3526 }, 3527 "end": { 3528 "line": 62, 3529 "column": 51 3530 } 3531 } 3532 }, 3533 "loc": { 3534 "start": { 3535 "line": 62, 3536 "column": 34 3537 }, 3538 "end": { 3539 "line": 62, 3540 "column": 51 3541 } 3542 } 3543 }, 3544 "update": { 3545 "type": "AssignmentExpression", 3546 "operator": "+=", 3547 "left": { 3548 "type": "Identifier", 3549 "name": "depth", 3550 "decorators": [], 3551 "loc": { 3552 "start": { 3553 "line": 62, 3554 "column": 53 3555 }, 3556 "end": { 3557 "line": 62, 3558 "column": 58 3559 } 3560 } 3561 }, 3562 "right": { 3563 "type": "NumberLiteral", 3564 "value": 2, 3565 "loc": { 3566 "start": { 3567 "line": 62, 3568 "column": 62 3569 }, 3570 "end": { 3571 "line": 62, 3572 "column": 63 3573 } 3574 } 3575 }, 3576 "loc": { 3577 "start": { 3578 "line": 62, 3579 "column": 53 3580 }, 3581 "end": { 3582 "line": 62, 3583 "column": 63 3584 } 3585 } 3586 }, 3587 "body": { 3588 "type": "BlockStatement", 3589 "statements": [ 3590 { 3591 "type": "VariableDeclaration", 3592 "declarations": [ 3593 { 3594 "type": "VariableDeclarator", 3595 "id": { 3596 "type": "Identifier", 3597 "name": "iterations", 3598 "typeAnnotation": { 3599 "type": "ETSPrimitiveType", 3600 "loc": { 3601 "start": { 3602 "line": 63, 3603 "column": 25 3604 }, 3605 "end": { 3606 "line": 63, 3607 "column": 28 3608 } 3609 } 3610 }, 3611 "decorators": [], 3612 "loc": { 3613 "start": { 3614 "line": 63, 3615 "column": 13 3616 }, 3617 "end": { 3618 "line": 63, 3619 "column": 23 3620 } 3621 } 3622 }, 3623 "init": { 3624 "type": "BinaryExpression", 3625 "operator": "<<", 3626 "left": { 3627 "type": "NumberLiteral", 3628 "value": 1, 3629 "loc": { 3630 "start": { 3631 "line": 63, 3632 "column": 31 3633 }, 3634 "end": { 3635 "line": 63, 3636 "column": 32 3637 } 3638 } 3639 }, 3640 "right": { 3641 "type": "BinaryExpression", 3642 "operator": "+", 3643 "left": { 3644 "type": "BinaryExpression", 3645 "operator": "-", 3646 "left": { 3647 "type": "Identifier", 3648 "name": "maxDepth", 3649 "decorators": [], 3650 "loc": { 3651 "start": { 3652 "line": 63, 3653 "column": 37 3654 }, 3655 "end": { 3656 "line": 63, 3657 "column": 45 3658 } 3659 } 3660 }, 3661 "right": { 3662 "type": "Identifier", 3663 "name": "depth", 3664 "decorators": [], 3665 "loc": { 3666 "start": { 3667 "line": 63, 3668 "column": 48 3669 }, 3670 "end": { 3671 "line": 63, 3672 "column": 53 3673 } 3674 } 3675 }, 3676 "loc": { 3677 "start": { 3678 "line": 63, 3679 "column": 37 3680 }, 3681 "end": { 3682 "line": 63, 3683 "column": 53 3684 } 3685 } 3686 }, 3687 "right": { 3688 "type": "Identifier", 3689 "name": "minDepth", 3690 "decorators": [], 3691 "loc": { 3692 "start": { 3693 "line": 63, 3694 "column": 56 3695 }, 3696 "end": { 3697 "line": 63, 3698 "column": 64 3699 } 3700 } 3701 }, 3702 "loc": { 3703 "start": { 3704 "line": 63, 3705 "column": 36 3706 }, 3707 "end": { 3708 "line": 63, 3709 "column": 65 3710 } 3711 } 3712 }, 3713 "loc": { 3714 "start": { 3715 "line": 63, 3716 "column": 31 3717 }, 3718 "end": { 3719 "line": 63, 3720 "column": 65 3721 } 3722 } 3723 }, 3724 "loc": { 3725 "start": { 3726 "line": 63, 3727 "column": 13 3728 }, 3729 "end": { 3730 "line": 63, 3731 "column": 65 3732 } 3733 } 3734 } 3735 ], 3736 "kind": "let", 3737 "loc": { 3738 "start": { 3739 "line": 63, 3740 "column": 9 3741 }, 3742 "end": { 3743 "line": 63, 3744 "column": 66 3745 } 3746 } 3747 }, 3748 { 3749 "type": "ExpressionStatement", 3750 "expression": { 3751 "type": "AssignmentExpression", 3752 "operator": "=", 3753 "left": { 3754 "type": "Identifier", 3755 "name": "check", 3756 "decorators": [], 3757 "loc": { 3758 "start": { 3759 "line": 65, 3760 "column": 9 3761 }, 3762 "end": { 3763 "line": 65, 3764 "column": 14 3765 } 3766 } 3767 }, 3768 "right": { 3769 "type": "NumberLiteral", 3770 "value": 0, 3771 "loc": { 3772 "start": { 3773 "line": 65, 3774 "column": 17 3775 }, 3776 "end": { 3777 "line": 65, 3778 "column": 18 3779 } 3780 } 3781 }, 3782 "loc": { 3783 "start": { 3784 "line": 65, 3785 "column": 9 3786 }, 3787 "end": { 3788 "line": 65, 3789 "column": 18 3790 } 3791 } 3792 }, 3793 "loc": { 3794 "start": { 3795 "line": 65, 3796 "column": 9 3797 }, 3798 "end": { 3799 "line": 65, 3800 "column": 19 3801 } 3802 } 3803 }, 3804 { 3805 "type": "ForUpdateStatement", 3806 "init": { 3807 "type": "VariableDeclaration", 3808 "declarations": [ 3809 { 3810 "type": "VariableDeclarator", 3811 "id": { 3812 "type": "Identifier", 3813 "name": "i", 3814 "typeAnnotation": { 3815 "type": "ETSPrimitiveType", 3816 "loc": { 3817 "start": { 3818 "line": 66, 3819 "column": 21 3820 }, 3821 "end": { 3822 "line": 66, 3823 "column": 24 3824 } 3825 } 3826 }, 3827 "decorators": [], 3828 "loc": { 3829 "start": { 3830 "line": 66, 3831 "column": 18 3832 }, 3833 "end": { 3834 "line": 66, 3835 "column": 19 3836 } 3837 } 3838 }, 3839 "init": { 3840 "type": "NumberLiteral", 3841 "value": 1, 3842 "loc": { 3843 "start": { 3844 "line": 66, 3845 "column": 27 3846 }, 3847 "end": { 3848 "line": 66, 3849 "column": 28 3850 } 3851 } 3852 }, 3853 "loc": { 3854 "start": { 3855 "line": 66, 3856 "column": 18 3857 }, 3858 "end": { 3859 "line": 66, 3860 "column": 28 3861 } 3862 } 3863 } 3864 ], 3865 "kind": "let", 3866 "loc": { 3867 "start": { 3868 "line": 66, 3869 "column": 14 3870 }, 3871 "end": { 3872 "line": 66, 3873 "column": 28 3874 } 3875 } 3876 }, 3877 "test": { 3878 "type": "BinaryExpression", 3879 "operator": "<=", 3880 "left": { 3881 "type": "Identifier", 3882 "name": "i", 3883 "decorators": [], 3884 "loc": { 3885 "start": { 3886 "line": 66, 3887 "column": 30 3888 }, 3889 "end": { 3890 "line": 66, 3891 "column": 31 3892 } 3893 } 3894 }, 3895 "right": { 3896 "type": "Identifier", 3897 "name": "iterations", 3898 "decorators": [], 3899 "loc": { 3900 "start": { 3901 "line": 66, 3902 "column": 35 3903 }, 3904 "end": { 3905 "line": 66, 3906 "column": 45 3907 } 3908 } 3909 }, 3910 "loc": { 3911 "start": { 3912 "line": 66, 3913 "column": 30 3914 }, 3915 "end": { 3916 "line": 66, 3917 "column": 45 3918 } 3919 } 3920 }, 3921 "update": { 3922 "type": "UpdateExpression", 3923 "operator": "++", 3924 "prefix": false, 3925 "argument": { 3926 "type": "Identifier", 3927 "name": "i", 3928 "decorators": [], 3929 "loc": { 3930 "start": { 3931 "line": 66, 3932 "column": 47 3933 }, 3934 "end": { 3935 "line": 66, 3936 "column": 48 3937 } 3938 } 3939 }, 3940 "loc": { 3941 "start": { 3942 "line": 66, 3943 "column": 47 3944 }, 3945 "end": { 3946 "line": 66, 3947 "column": 50 3948 } 3949 } 3950 }, 3951 "body": { 3952 "type": "BlockStatement", 3953 "statements": [ 3954 { 3955 "type": "ExpressionStatement", 3956 "expression": { 3957 "type": "AssignmentExpression", 3958 "operator": "+=", 3959 "left": { 3960 "type": "Identifier", 3961 "name": "check", 3962 "decorators": [], 3963 "loc": { 3964 "start": { 3965 "line": 67, 3966 "column": 11 3967 }, 3968 "end": { 3969 "line": 67, 3970 "column": 16 3971 } 3972 } 3973 }, 3974 "right": { 3975 "type": "CallExpression", 3976 "callee": { 3977 "type": "MemberExpression", 3978 "object": { 3979 "type": "CallExpression", 3980 "callee": { 3981 "type": "MemberExpression", 3982 "object": { 3983 "type": "Identifier", 3984 "name": "AccessBinaryTrees", 3985 "decorators": [], 3986 "loc": { 3987 "start": { 3988 "line": 67, 3989 "column": 20 3990 }, 3991 "end": { 3992 "line": 67, 3993 "column": 37 3994 } 3995 } 3996 }, 3997 "property": { 3998 "type": "Identifier", 3999 "name": "bottomUpTree", 4000 "decorators": [], 4001 "loc": { 4002 "start": { 4003 "line": 67, 4004 "column": 38 4005 }, 4006 "end": { 4007 "line": 67, 4008 "column": 50 4009 } 4010 } 4011 }, 4012 "computed": false, 4013 "optional": false, 4014 "loc": { 4015 "start": { 4016 "line": 67, 4017 "column": 20 4018 }, 4019 "end": { 4020 "line": 67, 4021 "column": 50 4022 } 4023 } 4024 }, 4025 "arguments": [ 4026 { 4027 "type": "Identifier", 4028 "name": "i", 4029 "decorators": [], 4030 "loc": { 4031 "start": { 4032 "line": 67, 4033 "column": 51 4034 }, 4035 "end": { 4036 "line": 67, 4037 "column": 52 4038 } 4039 } 4040 }, 4041 { 4042 "type": "Identifier", 4043 "name": "depth", 4044 "decorators": [], 4045 "loc": { 4046 "start": { 4047 "line": 67, 4048 "column": 54 4049 }, 4050 "end": { 4051 "line": 67, 4052 "column": 59 4053 } 4054 } 4055 } 4056 ], 4057 "optional": false, 4058 "loc": { 4059 "start": { 4060 "line": 67, 4061 "column": 20 4062 }, 4063 "end": { 4064 "line": 67, 4065 "column": 60 4066 } 4067 } 4068 }, 4069 "property": { 4070 "type": "Identifier", 4071 "name": "itemCheck", 4072 "decorators": [], 4073 "loc": { 4074 "start": { 4075 "line": 67, 4076 "column": 61 4077 }, 4078 "end": { 4079 "line": 67, 4080 "column": 70 4081 } 4082 } 4083 }, 4084 "computed": false, 4085 "optional": false, 4086 "loc": { 4087 "start": { 4088 "line": 67, 4089 "column": 20 4090 }, 4091 "end": { 4092 "line": 67, 4093 "column": 70 4094 } 4095 } 4096 }, 4097 "arguments": [], 4098 "optional": false, 4099 "loc": { 4100 "start": { 4101 "line": 67, 4102 "column": 20 4103 }, 4104 "end": { 4105 "line": 67, 4106 "column": 72 4107 } 4108 } 4109 }, 4110 "loc": { 4111 "start": { 4112 "line": 67, 4113 "column": 11 4114 }, 4115 "end": { 4116 "line": 67, 4117 "column": 72 4118 } 4119 } 4120 }, 4121 "loc": { 4122 "start": { 4123 "line": 67, 4124 "column": 11 4125 }, 4126 "end": { 4127 "line": 67, 4128 "column": 73 4129 } 4130 } 4131 }, 4132 { 4133 "type": "ExpressionStatement", 4134 "expression": { 4135 "type": "AssignmentExpression", 4136 "operator": "+=", 4137 "left": { 4138 "type": "Identifier", 4139 "name": "check", 4140 "decorators": [], 4141 "loc": { 4142 "start": { 4143 "line": 68, 4144 "column": 11 4145 }, 4146 "end": { 4147 "line": 68, 4148 "column": 16 4149 } 4150 } 4151 }, 4152 "right": { 4153 "type": "CallExpression", 4154 "callee": { 4155 "type": "MemberExpression", 4156 "object": { 4157 "type": "CallExpression", 4158 "callee": { 4159 "type": "MemberExpression", 4160 "object": { 4161 "type": "Identifier", 4162 "name": "AccessBinaryTrees", 4163 "decorators": [], 4164 "loc": { 4165 "start": { 4166 "line": 68, 4167 "column": 20 4168 }, 4169 "end": { 4170 "line": 68, 4171 "column": 37 4172 } 4173 } 4174 }, 4175 "property": { 4176 "type": "Identifier", 4177 "name": "bottomUpTree", 4178 "decorators": [], 4179 "loc": { 4180 "start": { 4181 "line": 68, 4182 "column": 38 4183 }, 4184 "end": { 4185 "line": 68, 4186 "column": 50 4187 } 4188 } 4189 }, 4190 "computed": false, 4191 "optional": false, 4192 "loc": { 4193 "start": { 4194 "line": 68, 4195 "column": 20 4196 }, 4197 "end": { 4198 "line": 68, 4199 "column": 50 4200 } 4201 } 4202 }, 4203 "arguments": [ 4204 { 4205 "type": "UnaryExpression", 4206 "operator": "-", 4207 "prefix": true, 4208 "argument": { 4209 "type": "Identifier", 4210 "name": "i", 4211 "decorators": [], 4212 "loc": { 4213 "start": { 4214 "line": 68, 4215 "column": 52 4216 }, 4217 "end": { 4218 "line": 68, 4219 "column": 53 4220 } 4221 } 4222 }, 4223 "loc": { 4224 "start": { 4225 "line": 68, 4226 "column": 51 4227 }, 4228 "end": { 4229 "line": 68, 4230 "column": 53 4231 } 4232 } 4233 }, 4234 { 4235 "type": "Identifier", 4236 "name": "depth", 4237 "decorators": [], 4238 "loc": { 4239 "start": { 4240 "line": 68, 4241 "column": 55 4242 }, 4243 "end": { 4244 "line": 68, 4245 "column": 60 4246 } 4247 } 4248 } 4249 ], 4250 "optional": false, 4251 "loc": { 4252 "start": { 4253 "line": 68, 4254 "column": 20 4255 }, 4256 "end": { 4257 "line": 68, 4258 "column": 61 4259 } 4260 } 4261 }, 4262 "property": { 4263 "type": "Identifier", 4264 "name": "itemCheck", 4265 "decorators": [], 4266 "loc": { 4267 "start": { 4268 "line": 68, 4269 "column": 62 4270 }, 4271 "end": { 4272 "line": 68, 4273 "column": 71 4274 } 4275 } 4276 }, 4277 "computed": false, 4278 "optional": false, 4279 "loc": { 4280 "start": { 4281 "line": 68, 4282 "column": 20 4283 }, 4284 "end": { 4285 "line": 68, 4286 "column": 71 4287 } 4288 } 4289 }, 4290 "arguments": [], 4291 "optional": false, 4292 "loc": { 4293 "start": { 4294 "line": 68, 4295 "column": 20 4296 }, 4297 "end": { 4298 "line": 68, 4299 "column": 73 4300 } 4301 } 4302 }, 4303 "loc": { 4304 "start": { 4305 "line": 68, 4306 "column": 11 4307 }, 4308 "end": { 4309 "line": 68, 4310 "column": 73 4311 } 4312 } 4313 }, 4314 "loc": { 4315 "start": { 4316 "line": 68, 4317 "column": 11 4318 }, 4319 "end": { 4320 "line": 68, 4321 "column": 74 4322 } 4323 } 4324 } 4325 ], 4326 "loc": { 4327 "start": { 4328 "line": 66, 4329 "column": 52 4330 }, 4331 "end": { 4332 "line": 69, 4333 "column": 10 4334 } 4335 } 4336 }, 4337 "loc": { 4338 "start": { 4339 "line": 66, 4340 "column": 9 4341 }, 4342 "end": { 4343 "line": 69, 4344 "column": 10 4345 } 4346 } 4347 } 4348 ], 4349 "loc": { 4350 "start": { 4351 "line": 62, 4352 "column": 65 4353 }, 4354 "end": { 4355 "line": 70, 4356 "column": 8 4357 } 4358 } 4359 }, 4360 "loc": { 4361 "start": { 4362 "line": 62, 4363 "column": 7 4364 }, 4365 "end": { 4366 "line": 70, 4367 "column": 8 4368 } 4369 } 4370 }, 4371 { 4372 "type": "ExpressionStatement", 4373 "expression": { 4374 "type": "AssignmentExpression", 4375 "operator": "+=", 4376 "left": { 4377 "type": "Identifier", 4378 "name": "ret", 4379 "decorators": [], 4380 "loc": { 4381 "start": { 4382 "line": 72, 4383 "column": 7 4384 }, 4385 "end": { 4386 "line": 72, 4387 "column": 10 4388 } 4389 } 4390 }, 4391 "right": { 4392 "type": "CallExpression", 4393 "callee": { 4394 "type": "MemberExpression", 4395 "object": { 4396 "type": "Identifier", 4397 "name": "longLivedTree", 4398 "decorators": [], 4399 "loc": { 4400 "start": { 4401 "line": 72, 4402 "column": 14 4403 }, 4404 "end": { 4405 "line": 72, 4406 "column": 27 4407 } 4408 } 4409 }, 4410 "property": { 4411 "type": "Identifier", 4412 "name": "itemCheck", 4413 "decorators": [], 4414 "loc": { 4415 "start": { 4416 "line": 72, 4417 "column": 28 4418 }, 4419 "end": { 4420 "line": 72, 4421 "column": 37 4422 } 4423 } 4424 }, 4425 "computed": false, 4426 "optional": false, 4427 "loc": { 4428 "start": { 4429 "line": 72, 4430 "column": 14 4431 }, 4432 "end": { 4433 "line": 72, 4434 "column": 37 4435 } 4436 } 4437 }, 4438 "arguments": [], 4439 "optional": false, 4440 "loc": { 4441 "start": { 4442 "line": 72, 4443 "column": 14 4444 }, 4445 "end": { 4446 "line": 72, 4447 "column": 39 4448 } 4449 } 4450 }, 4451 "loc": { 4452 "start": { 4453 "line": 72, 4454 "column": 7 4455 }, 4456 "end": { 4457 "line": 72, 4458 "column": 39 4459 } 4460 } 4461 }, 4462 "loc": { 4463 "start": { 4464 "line": 72, 4465 "column": 7 4466 }, 4467 "end": { 4468 "line": 72, 4469 "column": 40 4470 } 4471 } 4472 } 4473 ], 4474 "loc": { 4475 "start": { 4476 "line": 54, 4477 "column": 91 4478 }, 4479 "end": { 4480 "line": 73, 4481 "column": 6 4482 } 4483 } 4484 }, 4485 "loc": { 4486 "start": { 4487 "line": 54, 4488 "column": 5 4489 }, 4490 "end": { 4491 "line": 73, 4492 "column": 6 4493 } 4494 } 4495 }, 4496 { 4497 "type": "AssertStatement", 4498 "test": { 4499 "type": "BinaryExpression", 4500 "operator": "==", 4501 "left": { 4502 "type": "Identifier", 4503 "name": "ret", 4504 "decorators": [], 4505 "loc": { 4506 "start": { 4507 "line": 75, 4508 "column": 12 4509 }, 4510 "end": { 4511 "line": 75, 4512 "column": 15 4513 } 4514 } 4515 }, 4516 "right": { 4517 "type": "MemberExpression", 4518 "object": { 4519 "type": "Identifier", 4520 "name": "AccessBinaryTrees", 4521 "decorators": [], 4522 "loc": { 4523 "start": { 4524 "line": 75, 4525 "column": 19 4526 }, 4527 "end": { 4528 "line": 75, 4529 "column": 36 4530 } 4531 } 4532 }, 4533 "property": { 4534 "type": "Identifier", 4535 "name": "expected", 4536 "decorators": [], 4537 "loc": { 4538 "start": { 4539 "line": 75, 4540 "column": 37 4541 }, 4542 "end": { 4543 "line": 75, 4544 "column": 45 4545 } 4546 } 4547 }, 4548 "computed": false, 4549 "optional": false, 4550 "loc": { 4551 "start": { 4552 "line": 75, 4553 "column": 19 4554 }, 4555 "end": { 4556 "line": 75, 4557 "column": 45 4558 } 4559 } 4560 }, 4561 "loc": { 4562 "start": { 4563 "line": 75, 4564 "column": 12 4565 }, 4566 "end": { 4567 "line": 75, 4568 "column": 45 4569 } 4570 } 4571 }, 4572 "second": { 4573 "type": "StringLiteral", 4574 "value": "Incorrect result", 4575 "loc": { 4576 "start": { 4577 "line": 75, 4578 "column": 47 4579 }, 4580 "end": { 4581 "line": 75, 4582 "column": 65 4583 } 4584 } 4585 }, 4586 "loc": { 4587 "start": { 4588 "line": 75, 4589 "column": 5 4590 }, 4591 "end": { 4592 "line": 75, 4593 "column": 65 4594 } 4595 } 4596 } 4597 ], 4598 "loc": { 4599 "start": { 4600 "line": 51, 4601 "column": 22 4602 }, 4603 "end": { 4604 "line": 76, 4605 "column": 4 4606 } 4607 } 4608 }, 4609 "loc": { 4610 "start": { 4611 "line": 51, 4612 "column": 13 4613 }, 4614 "end": { 4615 "line": 76, 4616 "column": 4 4617 } 4618 } 4619 }, 4620 "loc": { 4621 "start": { 4622 "line": 51, 4623 "column": 13 4624 }, 4625 "end": { 4626 "line": 76, 4627 "column": 4 4628 } 4629 } 4630 }, 4631 "overloads": [], 4632 "decorators": [], 4633 "loc": { 4634 "start": { 4635 "line": 51, 4636 "column": 3 4637 }, 4638 "end": { 4639 "line": 76, 4640 "column": 4 4641 } 4642 } 4643 }, 4644 { 4645 "type": "MethodDefinition", 4646 "key": { 4647 "type": "Identifier", 4648 "name": "constructor", 4649 "decorators": [], 4650 "loc": { 4651 "start": { 4652 "line": 1, 4653 "column": 1 4654 }, 4655 "end": { 4656 "line": 1, 4657 "column": 1 4658 } 4659 } 4660 }, 4661 "kind": "constructor", 4662 "static": false, 4663 "optional": false, 4664 "computed": false, 4665 "value": { 4666 "type": "FunctionExpression", 4667 "function": { 4668 "type": "ScriptFunction", 4669 "id": { 4670 "type": "Identifier", 4671 "name": "constructor", 4672 "decorators": [], 4673 "loc": { 4674 "start": { 4675 "line": 1, 4676 "column": 1 4677 }, 4678 "end": { 4679 "line": 1, 4680 "column": 1 4681 } 4682 } 4683 }, 4684 "generator": false, 4685 "async": false, 4686 "expression": false, 4687 "params": [], 4688 "body": { 4689 "type": "BlockStatement", 4690 "statements": [], 4691 "loc": { 4692 "start": { 4693 "line": 1, 4694 "column": 1 4695 }, 4696 "end": { 4697 "line": 1, 4698 "column": 1 4699 } 4700 } 4701 }, 4702 "loc": { 4703 "start": { 4704 "line": 1, 4705 "column": 1 4706 }, 4707 "end": { 4708 "line": 1, 4709 "column": 1 4710 } 4711 } 4712 }, 4713 "loc": { 4714 "start": { 4715 "line": 1, 4716 "column": 1 4717 }, 4718 "end": { 4719 "line": 1, 4720 "column": 1 4721 } 4722 } 4723 }, 4724 "overloads": [], 4725 "decorators": [], 4726 "loc": { 4727 "start": { 4728 "line": 77, 4729 "column": 2 4730 }, 4731 "end": { 4732 "line": 77, 4733 "column": 2 4734 } 4735 } 4736 } 4737 ], 4738 "loc": { 4739 "start": { 4740 "line": 35, 4741 "column": 32 4742 }, 4743 "end": { 4744 "line": 77, 4745 "column": 2 4746 } 4747 } 4748 }, 4749 "loc": { 4750 "start": { 4751 "line": 35, 4752 "column": 8 4753 }, 4754 "end": { 4755 "line": 77, 4756 "column": 2 4757 } 4758 } 4759 }, 4760 { 4761 "type": "ClassDeclaration", 4762 "definition": { 4763 "id": { 4764 "type": "Identifier", 4765 "name": "ETSGLOBAL", 4766 "decorators": [], 4767 "loc": { 4768 "start": { 4769 "line": 1, 4770 "column": 1 4771 }, 4772 "end": { 4773 "line": 1, 4774 "column": 1 4775 } 4776 } 4777 }, 4778 "superClass": null, 4779 "implements": [], 4780 "body": [ 4781 { 4782 "type": "MethodDefinition", 4783 "key": { 4784 "type": "Identifier", 4785 "name": "_$init$_", 4786 "decorators": [], 4787 "loc": { 4788 "start": { 4789 "line": 1, 4790 "column": 1 4791 }, 4792 "end": { 4793 "line": 1, 4794 "column": 1 4795 } 4796 } 4797 }, 4798 "kind": "method", 4799 "accessibility": "public", 4800 "static": true, 4801 "optional": false, 4802 "computed": false, 4803 "value": { 4804 "type": "FunctionExpression", 4805 "function": { 4806 "type": "ScriptFunction", 4807 "id": { 4808 "type": "Identifier", 4809 "name": "_$init$_", 4810 "decorators": [], 4811 "loc": { 4812 "start": { 4813 "line": 1, 4814 "column": 1 4815 }, 4816 "end": { 4817 "line": 1, 4818 "column": 1 4819 } 4820 } 4821 }, 4822 "generator": false, 4823 "async": false, 4824 "expression": false, 4825 "params": [], 4826 "body": { 4827 "type": "BlockStatement", 4828 "statements": [], 4829 "loc": { 4830 "start": { 4831 "line": 1, 4832 "column": 1 4833 }, 4834 "end": { 4835 "line": 1, 4836 "column": 1 4837 } 4838 } 4839 }, 4840 "loc": { 4841 "start": { 4842 "line": 1, 4843 "column": 1 4844 }, 4845 "end": { 4846 "line": 1, 4847 "column": 1 4848 } 4849 } 4850 }, 4851 "loc": { 4852 "start": { 4853 "line": 1, 4854 "column": 1 4855 }, 4856 "end": { 4857 "line": 1, 4858 "column": 1 4859 } 4860 } 4861 }, 4862 "overloads": [], 4863 "decorators": [], 4864 "loc": { 4865 "start": { 4866 "line": 1, 4867 "column": 1 4868 }, 4869 "end": { 4870 "line": 1, 4871 "column": 1 4872 } 4873 } 4874 }, 4875 { 4876 "type": "MethodDefinition", 4877 "key": { 4878 "type": "Identifier", 4879 "name": "main", 4880 "decorators": [], 4881 "loc": { 4882 "start": { 4883 "line": 79, 4884 "column": 10 4885 }, 4886 "end": { 4887 "line": 79, 4888 "column": 14 4889 } 4890 } 4891 }, 4892 "kind": "method", 4893 "accessibility": "public", 4894 "static": true, 4895 "optional": false, 4896 "computed": false, 4897 "value": { 4898 "type": "FunctionExpression", 4899 "function": { 4900 "type": "ScriptFunction", 4901 "id": { 4902 "type": "Identifier", 4903 "name": "main", 4904 "decorators": [], 4905 "loc": { 4906 "start": { 4907 "line": 79, 4908 "column": 10 4909 }, 4910 "end": { 4911 "line": 79, 4912 "column": 14 4913 } 4914 } 4915 }, 4916 "generator": false, 4917 "async": false, 4918 "expression": false, 4919 "params": [], 4920 "returnType": { 4921 "type": "ETSPrimitiveType", 4922 "loc": { 4923 "start": { 4924 "line": 79, 4925 "column": 18 4926 }, 4927 "end": { 4928 "line": 79, 4929 "column": 22 4930 } 4931 } 4932 }, 4933 "body": { 4934 "type": "BlockStatement", 4935 "statements": [ 4936 { 4937 "type": "VariableDeclaration", 4938 "declarations": [ 4939 { 4940 "type": "VariableDeclarator", 4941 "id": { 4942 "type": "Identifier", 4943 "name": "a", 4944 "decorators": [], 4945 "loc": { 4946 "start": { 4947 "line": 80, 4948 "column": 7 4949 }, 4950 "end": { 4951 "line": 80, 4952 "column": 8 4953 } 4954 } 4955 }, 4956 "init": { 4957 "type": "ETSNewClassInstanceExpression", 4958 "typeReference": { 4959 "type": "ETSTypeReference", 4960 "part": { 4961 "type": "ETSTypeReferencePart", 4962 "name": { 4963 "type": "Identifier", 4964 "name": "AccessBinaryTrees", 4965 "decorators": [], 4966 "loc": { 4967 "start": { 4968 "line": 80, 4969 "column": 15 4970 }, 4971 "end": { 4972 "line": 80, 4973 "column": 32 4974 } 4975 } 4976 }, 4977 "loc": { 4978 "start": { 4979 "line": 80, 4980 "column": 15 4981 }, 4982 "end": { 4983 "line": 80, 4984 "column": 33 4985 } 4986 } 4987 }, 4988 "loc": { 4989 "start": { 4990 "line": 80, 4991 "column": 15 4992 }, 4993 "end": { 4994 "line": 80, 4995 "column": 33 4996 } 4997 } 4998 }, 4999 "arguments": [], 5000 "loc": { 5001 "start": { 5002 "line": 80, 5003 "column": 11 5004 }, 5005 "end": { 5006 "line": 80, 5007 "column": 33 5008 } 5009 } 5010 }, 5011 "loc": { 5012 "start": { 5013 "line": 80, 5014 "column": 7 5015 }, 5016 "end": { 5017 "line": 80, 5018 "column": 33 5019 } 5020 } 5021 } 5022 ], 5023 "kind": "let", 5024 "loc": { 5025 "start": { 5026 "line": 80, 5027 "column": 3 5028 }, 5029 "end": { 5030 "line": 80, 5031 "column": 33 5032 } 5033 } 5034 }, 5035 { 5036 "type": "ExpressionStatement", 5037 "expression": { 5038 "type": "CallExpression", 5039 "callee": { 5040 "type": "MemberExpression", 5041 "object": { 5042 "type": "Identifier", 5043 "name": "a", 5044 "decorators": [], 5045 "loc": { 5046 "start": { 5047 "line": 81, 5048 "column": 3 5049 }, 5050 "end": { 5051 "line": 81, 5052 "column": 4 5053 } 5054 } 5055 }, 5056 "property": { 5057 "type": "Identifier", 5058 "name": "run", 5059 "decorators": [], 5060 "loc": { 5061 "start": { 5062 "line": 81, 5063 "column": 5 5064 }, 5065 "end": { 5066 "line": 81, 5067 "column": 8 5068 } 5069 } 5070 }, 5071 "computed": false, 5072 "optional": false, 5073 "loc": { 5074 "start": { 5075 "line": 81, 5076 "column": 3 5077 }, 5078 "end": { 5079 "line": 81, 5080 "column": 8 5081 } 5082 } 5083 }, 5084 "arguments": [], 5085 "optional": false, 5086 "loc": { 5087 "start": { 5088 "line": 81, 5089 "column": 3 5090 }, 5091 "end": { 5092 "line": 81, 5093 "column": 10 5094 } 5095 } 5096 }, 5097 "loc": { 5098 "start": { 5099 "line": 81, 5100 "column": 3 5101 }, 5102 "end": { 5103 "line": 81, 5104 "column": 11 5105 } 5106 } 5107 } 5108 ], 5109 "loc": { 5110 "start": { 5111 "line": 79, 5112 "column": 23 5113 }, 5114 "end": { 5115 "line": 82, 5116 "column": 2 5117 } 5118 } 5119 }, 5120 "loc": { 5121 "start": { 5122 "line": 79, 5123 "column": 14 5124 }, 5125 "end": { 5126 "line": 82, 5127 "column": 2 5128 } 5129 } 5130 }, 5131 "loc": { 5132 "start": { 5133 "line": 79, 5134 "column": 14 5135 }, 5136 "end": { 5137 "line": 82, 5138 "column": 2 5139 } 5140 } 5141 }, 5142 "overloads": [], 5143 "decorators": [], 5144 "loc": { 5145 "start": { 5146 "line": 79, 5147 "column": 1 5148 }, 5149 "end": { 5150 "line": 82, 5151 "column": 2 5152 } 5153 } 5154 } 5155 ], 5156 "loc": { 5157 "start": { 5158 "line": 1, 5159 "column": 1 5160 }, 5161 "end": { 5162 "line": 1, 5163 "column": 1 5164 } 5165 } 5166 }, 5167 "loc": { 5168 "start": { 5169 "line": 1, 5170 "column": 1 5171 }, 5172 "end": { 5173 "line": 1, 5174 "column": 1 5175 } 5176 } 5177 } 5178 ], 5179 "loc": { 5180 "start": { 5181 "line": 1, 5182 "column": 1 5183 }, 5184 "end": { 5185 "line": 83, 5186 "column": 1 5187 } 5188 } 5189} 5190