1{ 2 "type": "Program", 3 "statements": [ 4 { 5 "type": "ClassDeclaration", 6 "definition": { 7 "id": { 8 "type": "Identifier", 9 "name": "BitopsNSieveBits", 10 "decorators": [], 11 "loc": { 12 "start": { 13 "line": 16, 14 "column": 14 15 }, 16 "end": { 17 "line": 16, 18 "column": 30 19 } 20 } 21 }, 22 "superClass": null, 23 "implements": [], 24 "body": [ 25 { 26 "type": "MethodDefinition", 27 "key": { 28 "type": "Identifier", 29 "name": "primes", 30 "decorators": [], 31 "loc": { 32 "start": { 33 "line": 17, 34 "column": 10 35 }, 36 "end": { 37 "line": 17, 38 "column": 16 39 } 40 } 41 }, 42 "kind": "method", 43 "accessibility": "public", 44 "static": true, 45 "optional": false, 46 "computed": false, 47 "value": { 48 "type": "FunctionExpression", 49 "function": { 50 "type": "ScriptFunction", 51 "id": { 52 "type": "Identifier", 53 "name": "primes", 54 "decorators": [], 55 "loc": { 56 "start": { 57 "line": 17, 58 "column": 10 59 }, 60 "end": { 61 "line": 17, 62 "column": 16 63 } 64 } 65 }, 66 "generator": false, 67 "async": false, 68 "expression": false, 69 "params": [ 70 { 71 "type": "ETSParameterExpression", 72 "name": { 73 "type": "Identifier", 74 "name": "isPrime", 75 "typeAnnotation": { 76 "type": "TSArrayType", 77 "elementType": { 78 "type": "ETSPrimitiveType", 79 "loc": { 80 "start": { 81 "line": 17, 82 "column": 26 83 }, 84 "end": { 85 "line": 17, 86 "column": 29 87 } 88 } 89 }, 90 "loc": { 91 "start": { 92 "line": 17, 93 "column": 31 94 }, 95 "end": { 96 "line": 17, 97 "column": 32 98 } 99 } 100 }, 101 "decorators": [], 102 "loc": { 103 "start": { 104 "line": 17, 105 "column": 17 106 }, 107 "end": { 108 "line": 17, 109 "column": 32 110 } 111 } 112 }, 113 "loc": { 114 "start": { 115 "line": 17, 116 "column": 17 117 }, 118 "end": { 119 "line": 17, 120 "column": 32 121 } 122 } 123 }, 124 { 125 "type": "ETSParameterExpression", 126 "name": { 127 "type": "Identifier", 128 "name": "n1", 129 "typeAnnotation": { 130 "type": "ETSPrimitiveType", 131 "loc": { 132 "start": { 133 "line": 17, 134 "column": 37 135 }, 136 "end": { 137 "line": 17, 138 "column": 40 139 } 140 } 141 }, 142 "decorators": [], 143 "loc": { 144 "start": { 145 "line": 17, 146 "column": 33 147 }, 148 "end": { 149 "line": 17, 150 "column": 40 151 } 152 } 153 }, 154 "loc": { 155 "start": { 156 "line": 17, 157 "column": 33 158 }, 159 "end": { 160 "line": 17, 161 "column": 40 162 } 163 } 164 }, 165 { 166 "type": "ETSParameterExpression", 167 "name": { 168 "type": "Identifier", 169 "name": "n2", 170 "typeAnnotation": { 171 "type": "ETSPrimitiveType", 172 "loc": { 173 "start": { 174 "line": 17, 175 "column": 46 176 }, 177 "end": { 178 "line": 17, 179 "column": 49 180 } 181 } 182 }, 183 "decorators": [], 184 "loc": { 185 "start": { 186 "line": 17, 187 "column": 42 188 }, 189 "end": { 190 "line": 17, 191 "column": 49 192 } 193 } 194 }, 195 "loc": { 196 "start": { 197 "line": 17, 198 "column": 42 199 }, 200 "end": { 201 "line": 17, 202 "column": 49 203 } 204 } 205 } 206 ], 207 "returnType": { 208 "type": "ETSPrimitiveType", 209 "loc": { 210 "start": { 211 "line": 17, 212 "column": 52 213 }, 214 "end": { 215 "line": 17, 216 "column": 56 217 } 218 } 219 }, 220 "body": { 221 "type": "BlockStatement", 222 "statements": [ 223 { 224 "type": "VariableDeclaration", 225 "declarations": [ 226 { 227 "type": "VariableDeclarator", 228 "id": { 229 "type": "Identifier", 230 "name": "i", 231 "typeAnnotation": { 232 "type": "ETSPrimitiveType", 233 "loc": { 234 "start": { 235 "line": 18, 236 "column": 12 237 }, 238 "end": { 239 "line": 18, 240 "column": 15 241 } 242 } 243 }, 244 "decorators": [], 245 "loc": { 246 "start": { 247 "line": 18, 248 "column": 9 249 }, 250 "end": { 251 "line": 18, 252 "column": 10 253 } 254 } 255 }, 256 "init": null, 257 "loc": { 258 "start": { 259 "line": 18, 260 "column": 9 261 }, 262 "end": { 263 "line": 18, 264 "column": 10 265 } 266 } 267 } 268 ], 269 "kind": "let", 270 "loc": { 271 "start": { 272 "line": 18, 273 "column": 5 274 }, 275 "end": { 276 "line": 18, 277 "column": 16 278 } 279 } 280 }, 281 { 282 "type": "VariableDeclaration", 283 "declarations": [ 284 { 285 "type": "VariableDeclarator", 286 "id": { 287 "type": "Identifier", 288 "name": "m", 289 "typeAnnotation": { 290 "type": "ETSPrimitiveType", 291 "loc": { 292 "start": { 293 "line": 19, 294 "column": 12 295 }, 296 "end": { 297 "line": 19, 298 "column": 15 299 } 300 } 301 }, 302 "decorators": [], 303 "loc": { 304 "start": { 305 "line": 19, 306 "column": 9 307 }, 308 "end": { 309 "line": 19, 310 "column": 10 311 } 312 } 313 }, 314 "init": { 315 "type": "BinaryExpression", 316 "operator": "<<", 317 "left": { 318 "type": "Identifier", 319 "name": "n2", 320 "decorators": [], 321 "loc": { 322 "start": { 323 "line": 19, 324 "column": 18 325 }, 326 "end": { 327 "line": 19, 328 "column": 20 329 } 330 } 331 }, 332 "right": { 333 "type": "Identifier", 334 "name": "n1", 335 "decorators": [], 336 "loc": { 337 "start": { 338 "line": 19, 339 "column": 24 340 }, 341 "end": { 342 "line": 19, 343 "column": 26 344 } 345 } 346 }, 347 "loc": { 348 "start": { 349 "line": 19, 350 "column": 18 351 }, 352 "end": { 353 "line": 19, 354 "column": 26 355 } 356 } 357 }, 358 "loc": { 359 "start": { 360 "line": 19, 361 "column": 9 362 }, 363 "end": { 364 "line": 19, 365 "column": 26 366 } 367 } 368 } 369 ], 370 "kind": "let", 371 "loc": { 372 "start": { 373 "line": 19, 374 "column": 5 375 }, 376 "end": { 377 "line": 19, 378 "column": 27 379 } 380 } 381 }, 382 { 383 "type": "VariableDeclaration", 384 "declarations": [ 385 { 386 "type": "VariableDeclarator", 387 "id": { 388 "type": "Identifier", 389 "name": "size", 390 "typeAnnotation": { 391 "type": "ETSPrimitiveType", 392 "loc": { 393 "start": { 394 "line": 20, 395 "column": 15 396 }, 397 "end": { 398 "line": 20, 399 "column": 18 400 } 401 } 402 }, 403 "decorators": [], 404 "loc": { 405 "start": { 406 "line": 20, 407 "column": 9 408 }, 409 "end": { 410 "line": 20, 411 "column": 13 412 } 413 } 414 }, 415 "init": { 416 "type": "BinaryExpression", 417 "operator": ">>", 418 "left": { 419 "type": "BinaryExpression", 420 "operator": "+", 421 "left": { 422 "type": "Identifier", 423 "name": "m", 424 "decorators": [], 425 "loc": { 426 "start": { 427 "line": 20, 428 "column": 21 429 }, 430 "end": { 431 "line": 20, 432 "column": 22 433 } 434 } 435 }, 436 "right": { 437 "type": "NumberLiteral", 438 "value": 31, 439 "loc": { 440 "start": { 441 "line": 20, 442 "column": 25 443 }, 444 "end": { 445 "line": 20, 446 "column": 27 447 } 448 } 449 }, 450 "loc": { 451 "start": { 452 "line": 20, 453 "column": 21 454 }, 455 "end": { 456 "line": 20, 457 "column": 27 458 } 459 } 460 }, 461 "right": { 462 "type": "NumberLiteral", 463 "value": 5, 464 "loc": { 465 "start": { 466 "line": 20, 467 "column": 31 468 }, 469 "end": { 470 "line": 20, 471 "column": 32 472 } 473 } 474 }, 475 "loc": { 476 "start": { 477 "line": 20, 478 "column": 21 479 }, 480 "end": { 481 "line": 20, 482 "column": 32 483 } 484 } 485 }, 486 "loc": { 487 "start": { 488 "line": 20, 489 "column": 9 490 }, 491 "end": { 492 "line": 20, 493 "column": 32 494 } 495 } 496 } 497 ], 498 "kind": "let", 499 "loc": { 500 "start": { 501 "line": 20, 502 "column": 5 503 }, 504 "end": { 505 "line": 20, 506 "column": 33 507 } 508 } 509 }, 510 { 511 "type": "ForUpdateStatement", 512 "init": { 513 "type": "AssignmentExpression", 514 "operator": "=", 515 "left": { 516 "type": "Identifier", 517 "name": "i", 518 "decorators": [], 519 "loc": { 520 "start": { 521 "line": 22, 522 "column": 10 523 }, 524 "end": { 525 "line": 22, 526 "column": 11 527 } 528 } 529 }, 530 "right": { 531 "type": "NumberLiteral", 532 "value": 0, 533 "loc": { 534 "start": { 535 "line": 22, 536 "column": 14 537 }, 538 "end": { 539 "line": 22, 540 "column": 15 541 } 542 } 543 }, 544 "loc": { 545 "start": { 546 "line": 22, 547 "column": 10 548 }, 549 "end": { 550 "line": 22, 551 "column": 15 552 } 553 } 554 }, 555 "test": { 556 "type": "BinaryExpression", 557 "operator": "<", 558 "left": { 559 "type": "Identifier", 560 "name": "i", 561 "decorators": [], 562 "loc": { 563 "start": { 564 "line": 22, 565 "column": 17 566 }, 567 "end": { 568 "line": 22, 569 "column": 18 570 } 571 } 572 }, 573 "right": { 574 "type": "Identifier", 575 "name": "size", 576 "decorators": [], 577 "loc": { 578 "start": { 579 "line": 22, 580 "column": 21 581 }, 582 "end": { 583 "line": 22, 584 "column": 25 585 } 586 } 587 }, 588 "loc": { 589 "start": { 590 "line": 22, 591 "column": 17 592 }, 593 "end": { 594 "line": 22, 595 "column": 25 596 } 597 } 598 }, 599 "update": { 600 "type": "UpdateExpression", 601 "operator": "++", 602 "prefix": false, 603 "argument": { 604 "type": "Identifier", 605 "name": "i", 606 "decorators": [], 607 "loc": { 608 "start": { 609 "line": 22, 610 "column": 27 611 }, 612 "end": { 613 "line": 22, 614 "column": 28 615 } 616 } 617 }, 618 "loc": { 619 "start": { 620 "line": 22, 621 "column": 27 622 }, 623 "end": { 624 "line": 22, 625 "column": 30 626 } 627 } 628 }, 629 "body": { 630 "type": "BlockStatement", 631 "statements": [ 632 { 633 "type": "ExpressionStatement", 634 "expression": { 635 "type": "AssignmentExpression", 636 "operator": "=", 637 "left": { 638 "type": "MemberExpression", 639 "object": { 640 "type": "Identifier", 641 "name": "isPrime", 642 "decorators": [], 643 "loc": { 644 "start": { 645 "line": 23, 646 "column": 7 647 }, 648 "end": { 649 "line": 23, 650 "column": 14 651 } 652 } 653 }, 654 "property": { 655 "type": "Identifier", 656 "name": "i", 657 "decorators": [], 658 "loc": { 659 "start": { 660 "line": 23, 661 "column": 15 662 }, 663 "end": { 664 "line": 23, 665 "column": 16 666 } 667 } 668 }, 669 "computed": true, 670 "optional": false, 671 "loc": { 672 "start": { 673 "line": 23, 674 "column": 7 675 }, 676 "end": { 677 "line": 23, 678 "column": 17 679 } 680 } 681 }, 682 "right": { 683 "type": "UnaryExpression", 684 "operator": "-", 685 "prefix": true, 686 "argument": { 687 "type": "NumberLiteral", 688 "value": 1, 689 "loc": { 690 "start": { 691 "line": 23, 692 "column": 21 693 }, 694 "end": { 695 "line": 23, 696 "column": 22 697 } 698 } 699 }, 700 "loc": { 701 "start": { 702 "line": 23, 703 "column": 20 704 }, 705 "end": { 706 "line": 23, 707 "column": 22 708 } 709 } 710 }, 711 "loc": { 712 "start": { 713 "line": 23, 714 "column": 7 715 }, 716 "end": { 717 "line": 23, 718 "column": 22 719 } 720 } 721 }, 722 "loc": { 723 "start": { 724 "line": 23, 725 "column": 7 726 }, 727 "end": { 728 "line": 23, 729 "column": 23 730 } 731 } 732 } 733 ], 734 "loc": { 735 "start": { 736 "line": 22, 737 "column": 32 738 }, 739 "end": { 740 "line": 24, 741 "column": 6 742 } 743 } 744 }, 745 "loc": { 746 "start": { 747 "line": 22, 748 "column": 5 749 }, 750 "end": { 751 "line": 24, 752 "column": 6 753 } 754 } 755 }, 756 { 757 "type": "ForUpdateStatement", 758 "init": { 759 "type": "AssignmentExpression", 760 "operator": "=", 761 "left": { 762 "type": "Identifier", 763 "name": "i", 764 "decorators": [], 765 "loc": { 766 "start": { 767 "line": 26, 768 "column": 10 769 }, 770 "end": { 771 "line": 26, 772 "column": 11 773 } 774 } 775 }, 776 "right": { 777 "type": "NumberLiteral", 778 "value": 2, 779 "loc": { 780 "start": { 781 "line": 26, 782 "column": 14 783 }, 784 "end": { 785 "line": 26, 786 "column": 15 787 } 788 } 789 }, 790 "loc": { 791 "start": { 792 "line": 26, 793 "column": 10 794 }, 795 "end": { 796 "line": 26, 797 "column": 15 798 } 799 } 800 }, 801 "test": { 802 "type": "BinaryExpression", 803 "operator": "<", 804 "left": { 805 "type": "Identifier", 806 "name": "i", 807 "decorators": [], 808 "loc": { 809 "start": { 810 "line": 26, 811 "column": 17 812 }, 813 "end": { 814 "line": 26, 815 "column": 18 816 } 817 } 818 }, 819 "right": { 820 "type": "Identifier", 821 "name": "m", 822 "decorators": [], 823 "loc": { 824 "start": { 825 "line": 26, 826 "column": 21 827 }, 828 "end": { 829 "line": 26, 830 "column": 22 831 } 832 } 833 }, 834 "loc": { 835 "start": { 836 "line": 26, 837 "column": 17 838 }, 839 "end": { 840 "line": 26, 841 "column": 22 842 } 843 } 844 }, 845 "update": { 846 "type": "UpdateExpression", 847 "operator": "++", 848 "prefix": false, 849 "argument": { 850 "type": "Identifier", 851 "name": "i", 852 "decorators": [], 853 "loc": { 854 "start": { 855 "line": 26, 856 "column": 24 857 }, 858 "end": { 859 "line": 26, 860 "column": 25 861 } 862 } 863 }, 864 "loc": { 865 "start": { 866 "line": 26, 867 "column": 24 868 }, 869 "end": { 870 "line": 26, 871 "column": 27 872 } 873 } 874 }, 875 "body": { 876 "type": "BlockStatement", 877 "statements": [ 878 { 879 "type": "IfStatement", 880 "test": { 881 "type": "BinaryExpression", 882 "operator": "!=", 883 "left": { 884 "type": "BinaryExpression", 885 "operator": "&", 886 "left": { 887 "type": "MemberExpression", 888 "object": { 889 "type": "Identifier", 890 "name": "isPrime", 891 "decorators": [], 892 "loc": { 893 "start": { 894 "line": 27, 895 "column": 12 896 }, 897 "end": { 898 "line": 27, 899 "column": 19 900 } 901 } 902 }, 903 "property": { 904 "type": "BinaryExpression", 905 "operator": ">>", 906 "left": { 907 "type": "Identifier", 908 "name": "i", 909 "decorators": [], 910 "loc": { 911 "start": { 912 "line": 27, 913 "column": 20 914 }, 915 "end": { 916 "line": 27, 917 "column": 21 918 } 919 } 920 }, 921 "right": { 922 "type": "NumberLiteral", 923 "value": 5, 924 "loc": { 925 "start": { 926 "line": 27, 927 "column": 25 928 }, 929 "end": { 930 "line": 27, 931 "column": 26 932 } 933 } 934 }, 935 "loc": { 936 "start": { 937 "line": 27, 938 "column": 20 939 }, 940 "end": { 941 "line": 27, 942 "column": 26 943 } 944 } 945 }, 946 "computed": true, 947 "optional": false, 948 "loc": { 949 "start": { 950 "line": 27, 951 "column": 12 952 }, 953 "end": { 954 "line": 27, 955 "column": 27 956 } 957 } 958 }, 959 "right": { 960 "type": "BinaryExpression", 961 "operator": "<<", 962 "left": { 963 "type": "NumberLiteral", 964 "value": 1, 965 "loc": { 966 "start": { 967 "line": 27, 968 "column": 30 969 }, 970 "end": { 971 "line": 27, 972 "column": 31 973 } 974 } 975 }, 976 "right": { 977 "type": "BinaryExpression", 978 "operator": "&", 979 "left": { 980 "type": "Identifier", 981 "name": "i", 982 "decorators": [], 983 "loc": { 984 "start": { 985 "line": 27, 986 "column": 36 987 }, 988 "end": { 989 "line": 27, 990 "column": 37 991 } 992 } 993 }, 994 "right": { 995 "type": "NumberLiteral", 996 "value": 31, 997 "loc": { 998 "start": { 999 "line": 27, 1000 "column": 40 1001 }, 1002 "end": { 1003 "line": 27, 1004 "column": 42 1005 } 1006 } 1007 }, 1008 "loc": { 1009 "start": { 1010 "line": 27, 1011 "column": 35 1012 }, 1013 "end": { 1014 "line": 27, 1015 "column": 43 1016 } 1017 } 1018 }, 1019 "loc": { 1020 "start": { 1021 "line": 27, 1022 "column": 30 1023 }, 1024 "end": { 1025 "line": 27, 1026 "column": 43 1027 } 1028 } 1029 }, 1030 "loc": { 1031 "start": { 1032 "line": 27, 1033 "column": 11 1034 }, 1035 "end": { 1036 "line": 27, 1037 "column": 44 1038 } 1039 } 1040 }, 1041 "right": { 1042 "type": "NumberLiteral", 1043 "value": 0, 1044 "loc": { 1045 "start": { 1046 "line": 27, 1047 "column": 48 1048 }, 1049 "end": { 1050 "line": 27, 1051 "column": 49 1052 } 1053 } 1054 }, 1055 "loc": { 1056 "start": { 1057 "line": 27, 1058 "column": 11 1059 }, 1060 "end": { 1061 "line": 27, 1062 "column": 49 1063 } 1064 } 1065 }, 1066 "consequent": { 1067 "type": "BlockStatement", 1068 "statements": [ 1069 { 1070 "type": "ForUpdateStatement", 1071 "init": { 1072 "type": "VariableDeclaration", 1073 "declarations": [ 1074 { 1075 "type": "VariableDeclarator", 1076 "id": { 1077 "type": "Identifier", 1078 "name": "j", 1079 "typeAnnotation": { 1080 "type": "ETSPrimitiveType", 1081 "loc": { 1082 "start": { 1083 "line": 28, 1084 "column": 21 1085 }, 1086 "end": { 1087 "line": 28, 1088 "column": 24 1089 } 1090 } 1091 }, 1092 "decorators": [], 1093 "loc": { 1094 "start": { 1095 "line": 28, 1096 "column": 18 1097 }, 1098 "end": { 1099 "line": 28, 1100 "column": 19 1101 } 1102 } 1103 }, 1104 "init": { 1105 "type": "BinaryExpression", 1106 "operator": "+", 1107 "left": { 1108 "type": "Identifier", 1109 "name": "i", 1110 "decorators": [], 1111 "loc": { 1112 "start": { 1113 "line": 28, 1114 "column": 27 1115 }, 1116 "end": { 1117 "line": 28, 1118 "column": 28 1119 } 1120 } 1121 }, 1122 "right": { 1123 "type": "Identifier", 1124 "name": "i", 1125 "decorators": [], 1126 "loc": { 1127 "start": { 1128 "line": 28, 1129 "column": 31 1130 }, 1131 "end": { 1132 "line": 28, 1133 "column": 32 1134 } 1135 } 1136 }, 1137 "loc": { 1138 "start": { 1139 "line": 28, 1140 "column": 27 1141 }, 1142 "end": { 1143 "line": 28, 1144 "column": 32 1145 } 1146 } 1147 }, 1148 "loc": { 1149 "start": { 1150 "line": 28, 1151 "column": 18 1152 }, 1153 "end": { 1154 "line": 28, 1155 "column": 32 1156 } 1157 } 1158 } 1159 ], 1160 "kind": "let", 1161 "loc": { 1162 "start": { 1163 "line": 28, 1164 "column": 14 1165 }, 1166 "end": { 1167 "line": 28, 1168 "column": 32 1169 } 1170 } 1171 }, 1172 "test": { 1173 "type": "BinaryExpression", 1174 "operator": "<", 1175 "left": { 1176 "type": "Identifier", 1177 "name": "j", 1178 "decorators": [], 1179 "loc": { 1180 "start": { 1181 "line": 28, 1182 "column": 34 1183 }, 1184 "end": { 1185 "line": 28, 1186 "column": 35 1187 } 1188 } 1189 }, 1190 "right": { 1191 "type": "Identifier", 1192 "name": "m", 1193 "decorators": [], 1194 "loc": { 1195 "start": { 1196 "line": 28, 1197 "column": 38 1198 }, 1199 "end": { 1200 "line": 28, 1201 "column": 39 1202 } 1203 } 1204 }, 1205 "loc": { 1206 "start": { 1207 "line": 28, 1208 "column": 34 1209 }, 1210 "end": { 1211 "line": 28, 1212 "column": 39 1213 } 1214 } 1215 }, 1216 "update": { 1217 "type": "AssignmentExpression", 1218 "operator": "+=", 1219 "left": { 1220 "type": "Identifier", 1221 "name": "j", 1222 "decorators": [], 1223 "loc": { 1224 "start": { 1225 "line": 28, 1226 "column": 41 1227 }, 1228 "end": { 1229 "line": 28, 1230 "column": 42 1231 } 1232 } 1233 }, 1234 "right": { 1235 "type": "Identifier", 1236 "name": "i", 1237 "decorators": [], 1238 "loc": { 1239 "start": { 1240 "line": 28, 1241 "column": 46 1242 }, 1243 "end": { 1244 "line": 28, 1245 "column": 47 1246 } 1247 } 1248 }, 1249 "loc": { 1250 "start": { 1251 "line": 28, 1252 "column": 41 1253 }, 1254 "end": { 1255 "line": 28, 1256 "column": 47 1257 } 1258 } 1259 }, 1260 "body": { 1261 "type": "BlockStatement", 1262 "statements": [ 1263 { 1264 "type": "ExpressionStatement", 1265 "expression": { 1266 "type": "AssignmentExpression", 1267 "operator": "&=", 1268 "left": { 1269 "type": "MemberExpression", 1270 "object": { 1271 "type": "Identifier", 1272 "name": "isPrime", 1273 "decorators": [], 1274 "loc": { 1275 "start": { 1276 "line": 29, 1277 "column": 11 1278 }, 1279 "end": { 1280 "line": 29, 1281 "column": 18 1282 } 1283 } 1284 }, 1285 "property": { 1286 "type": "BinaryExpression", 1287 "operator": ">>", 1288 "left": { 1289 "type": "Identifier", 1290 "name": "j", 1291 "decorators": [], 1292 "loc": { 1293 "start": { 1294 "line": 29, 1295 "column": 19 1296 }, 1297 "end": { 1298 "line": 29, 1299 "column": 20 1300 } 1301 } 1302 }, 1303 "right": { 1304 "type": "NumberLiteral", 1305 "value": 5, 1306 "loc": { 1307 "start": { 1308 "line": 29, 1309 "column": 24 1310 }, 1311 "end": { 1312 "line": 29, 1313 "column": 25 1314 } 1315 } 1316 }, 1317 "loc": { 1318 "start": { 1319 "line": 29, 1320 "column": 19 1321 }, 1322 "end": { 1323 "line": 29, 1324 "column": 25 1325 } 1326 } 1327 }, 1328 "computed": true, 1329 "optional": false, 1330 "loc": { 1331 "start": { 1332 "line": 29, 1333 "column": 11 1334 }, 1335 "end": { 1336 "line": 29, 1337 "column": 26 1338 } 1339 } 1340 }, 1341 "right": { 1342 "type": "UnaryExpression", 1343 "operator": "~", 1344 "prefix": true, 1345 "argument": { 1346 "type": "BinaryExpression", 1347 "operator": "<<", 1348 "left": { 1349 "type": "NumberLiteral", 1350 "value": 1, 1351 "loc": { 1352 "start": { 1353 "line": 29, 1354 "column": 32 1355 }, 1356 "end": { 1357 "line": 29, 1358 "column": 33 1359 } 1360 } 1361 }, 1362 "right": { 1363 "type": "BinaryExpression", 1364 "operator": "&", 1365 "left": { 1366 "type": "Identifier", 1367 "name": "j", 1368 "decorators": [], 1369 "loc": { 1370 "start": { 1371 "line": 29, 1372 "column": 38 1373 }, 1374 "end": { 1375 "line": 29, 1376 "column": 39 1377 } 1378 } 1379 }, 1380 "right": { 1381 "type": "NumberLiteral", 1382 "value": 31, 1383 "loc": { 1384 "start": { 1385 "line": 29, 1386 "column": 42 1387 }, 1388 "end": { 1389 "line": 29, 1390 "column": 44 1391 } 1392 } 1393 }, 1394 "loc": { 1395 "start": { 1396 "line": 29, 1397 "column": 37 1398 }, 1399 "end": { 1400 "line": 29, 1401 "column": 45 1402 } 1403 } 1404 }, 1405 "loc": { 1406 "start": { 1407 "line": 29, 1408 "column": 31 1409 }, 1410 "end": { 1411 "line": 29, 1412 "column": 46 1413 } 1414 } 1415 }, 1416 "loc": { 1417 "start": { 1418 "line": 29, 1419 "column": 30 1420 }, 1421 "end": { 1422 "line": 29, 1423 "column": 46 1424 } 1425 } 1426 }, 1427 "loc": { 1428 "start": { 1429 "line": 29, 1430 "column": 11 1431 }, 1432 "end": { 1433 "line": 29, 1434 "column": 46 1435 } 1436 } 1437 }, 1438 "loc": { 1439 "start": { 1440 "line": 29, 1441 "column": 11 1442 }, 1443 "end": { 1444 "line": 29, 1445 "column": 47 1446 } 1447 } 1448 } 1449 ], 1450 "loc": { 1451 "start": { 1452 "line": 28, 1453 "column": 49 1454 }, 1455 "end": { 1456 "line": 30, 1457 "column": 10 1458 } 1459 } 1460 }, 1461 "loc": { 1462 "start": { 1463 "line": 28, 1464 "column": 9 1465 }, 1466 "end": { 1467 "line": 30, 1468 "column": 10 1469 } 1470 } 1471 } 1472 ], 1473 "loc": { 1474 "start": { 1475 "line": 27, 1476 "column": 51 1477 }, 1478 "end": { 1479 "line": 31, 1480 "column": 8 1481 } 1482 } 1483 }, 1484 "alternate": null, 1485 "loc": { 1486 "start": { 1487 "line": 27, 1488 "column": 7 1489 }, 1490 "end": { 1491 "line": 31, 1492 "column": 8 1493 } 1494 } 1495 } 1496 ], 1497 "loc": { 1498 "start": { 1499 "line": 26, 1500 "column": 29 1501 }, 1502 "end": { 1503 "line": 32, 1504 "column": 6 1505 } 1506 } 1507 }, 1508 "loc": { 1509 "start": { 1510 "line": 26, 1511 "column": 5 1512 }, 1513 "end": { 1514 "line": 32, 1515 "column": 6 1516 } 1517 } 1518 } 1519 ], 1520 "loc": { 1521 "start": { 1522 "line": 17, 1523 "column": 57 1524 }, 1525 "end": { 1526 "line": 33, 1527 "column": 4 1528 } 1529 } 1530 }, 1531 "loc": { 1532 "start": { 1533 "line": 17, 1534 "column": 16 1535 }, 1536 "end": { 1537 "line": 33, 1538 "column": 4 1539 } 1540 } 1541 }, 1542 "loc": { 1543 "start": { 1544 "line": 17, 1545 "column": 16 1546 }, 1547 "end": { 1548 "line": 33, 1549 "column": 4 1550 } 1551 } 1552 }, 1553 "overloads": [], 1554 "decorators": [], 1555 "loc": { 1556 "start": { 1557 "line": 17, 1558 "column": 3 1559 }, 1560 "end": { 1561 "line": 33, 1562 "column": 4 1563 } 1564 } 1565 }, 1566 { 1567 "type": "MethodDefinition", 1568 "key": { 1569 "type": "Identifier", 1570 "name": "sieve", 1571 "decorators": [], 1572 "loc": { 1573 "start": { 1574 "line": 35, 1575 "column": 18 1576 }, 1577 "end": { 1578 "line": 35, 1579 "column": 23 1580 } 1581 } 1582 }, 1583 "kind": "method", 1584 "accessibility": "private", 1585 "static": true, 1586 "optional": false, 1587 "computed": false, 1588 "value": { 1589 "type": "FunctionExpression", 1590 "function": { 1591 "type": "ScriptFunction", 1592 "id": { 1593 "type": "Identifier", 1594 "name": "sieve", 1595 "decorators": [], 1596 "loc": { 1597 "start": { 1598 "line": 35, 1599 "column": 18 1600 }, 1601 "end": { 1602 "line": 35, 1603 "column": 23 1604 } 1605 } 1606 }, 1607 "generator": false, 1608 "async": false, 1609 "expression": false, 1610 "params": [ 1611 { 1612 "type": "ETSParameterExpression", 1613 "name": { 1614 "type": "Identifier", 1615 "name": "n1", 1616 "typeAnnotation": { 1617 "type": "ETSPrimitiveType", 1618 "loc": { 1619 "start": { 1620 "line": 35, 1621 "column": 28 1622 }, 1623 "end": { 1624 "line": 35, 1625 "column": 31 1626 } 1627 } 1628 }, 1629 "decorators": [], 1630 "loc": { 1631 "start": { 1632 "line": 35, 1633 "column": 24 1634 }, 1635 "end": { 1636 "line": 35, 1637 "column": 31 1638 } 1639 } 1640 }, 1641 "loc": { 1642 "start": { 1643 "line": 35, 1644 "column": 24 1645 }, 1646 "end": { 1647 "line": 35, 1648 "column": 31 1649 } 1650 } 1651 }, 1652 { 1653 "type": "ETSParameterExpression", 1654 "name": { 1655 "type": "Identifier", 1656 "name": "n2", 1657 "typeAnnotation": { 1658 "type": "ETSPrimitiveType", 1659 "loc": { 1660 "start": { 1661 "line": 35, 1662 "column": 37 1663 }, 1664 "end": { 1665 "line": 35, 1666 "column": 40 1667 } 1668 } 1669 }, 1670 "decorators": [], 1671 "loc": { 1672 "start": { 1673 "line": 35, 1674 "column": 33 1675 }, 1676 "end": { 1677 "line": 35, 1678 "column": 40 1679 } 1680 } 1681 }, 1682 "loc": { 1683 "start": { 1684 "line": 35, 1685 "column": 33 1686 }, 1687 "end": { 1688 "line": 35, 1689 "column": 40 1690 } 1691 } 1692 } 1693 ], 1694 "returnType": { 1695 "type": "TSArrayType", 1696 "elementType": { 1697 "type": "ETSPrimitiveType", 1698 "loc": { 1699 "start": { 1700 "line": 35, 1701 "column": 43 1702 }, 1703 "end": { 1704 "line": 35, 1705 "column": 46 1706 } 1707 } 1708 }, 1709 "loc": { 1710 "start": { 1711 "line": 35, 1712 "column": 49 1713 }, 1714 "end": { 1715 "line": 35, 1716 "column": 50 1717 } 1718 } 1719 }, 1720 "body": { 1721 "type": "BlockStatement", 1722 "statements": [ 1723 { 1724 "type": "VariableDeclaration", 1725 "declarations": [ 1726 { 1727 "type": "VariableDeclarator", 1728 "id": { 1729 "type": "Identifier", 1730 "name": "isPrime", 1731 "typeAnnotation": { 1732 "type": "TSArrayType", 1733 "elementType": { 1734 "type": "ETSPrimitiveType", 1735 "loc": { 1736 "start": { 1737 "line": 37, 1738 "column": 18 1739 }, 1740 "end": { 1741 "line": 37, 1742 "column": 21 1743 } 1744 } 1745 }, 1746 "loc": { 1747 "start": { 1748 "line": 37, 1749 "column": 24 1750 }, 1751 "end": { 1752 "line": 37, 1753 "column": 25 1754 } 1755 } 1756 }, 1757 "decorators": [], 1758 "loc": { 1759 "start": { 1760 "line": 37, 1761 "column": 9 1762 }, 1763 "end": { 1764 "line": 37, 1765 "column": 16 1766 } 1767 } 1768 }, 1769 "init": { 1770 "type": "ETSNewArrayInstanceExpression", 1771 "typeReference": { 1772 "type": "ETSPrimitiveType", 1773 "loc": { 1774 "start": { 1775 "line": 37, 1776 "column": 30 1777 }, 1778 "end": { 1779 "line": 37, 1780 "column": 33 1781 } 1782 } 1783 }, 1784 "dimension": { 1785 "type": "BinaryExpression", 1786 "operator": ">>", 1787 "left": { 1788 "type": "BinaryExpression", 1789 "operator": "+", 1790 "left": { 1791 "type": "BinaryExpression", 1792 "operator": "<<", 1793 "left": { 1794 "type": "Identifier", 1795 "name": "n2", 1796 "decorators": [], 1797 "loc": { 1798 "start": { 1799 "line": 37, 1800 "column": 35 1801 }, 1802 "end": { 1803 "line": 37, 1804 "column": 37 1805 } 1806 } 1807 }, 1808 "right": { 1809 "type": "Identifier", 1810 "name": "n1", 1811 "decorators": [], 1812 "loc": { 1813 "start": { 1814 "line": 37, 1815 "column": 41 1816 }, 1817 "end": { 1818 "line": 37, 1819 "column": 43 1820 } 1821 } 1822 }, 1823 "loc": { 1824 "start": { 1825 "line": 37, 1826 "column": 34 1827 }, 1828 "end": { 1829 "line": 37, 1830 "column": 44 1831 } 1832 } 1833 }, 1834 "right": { 1835 "type": "NumberLiteral", 1836 "value": 31, 1837 "loc": { 1838 "start": { 1839 "line": 37, 1840 "column": 47 1841 }, 1842 "end": { 1843 "line": 37, 1844 "column": 49 1845 } 1846 } 1847 }, 1848 "loc": { 1849 "start": { 1850 "line": 37, 1851 "column": 34 1852 }, 1853 "end": { 1854 "line": 37, 1855 "column": 49 1856 } 1857 } 1858 }, 1859 "right": { 1860 "type": "NumberLiteral", 1861 "value": 5, 1862 "loc": { 1863 "start": { 1864 "line": 37, 1865 "column": 53 1866 }, 1867 "end": { 1868 "line": 37, 1869 "column": 54 1870 } 1871 } 1872 }, 1873 "loc": { 1874 "start": { 1875 "line": 37, 1876 "column": 34 1877 }, 1878 "end": { 1879 "line": 37, 1880 "column": 54 1881 } 1882 } 1883 }, 1884 "loc": { 1885 "start": { 1886 "line": 37, 1887 "column": 26 1888 }, 1889 "end": { 1890 "line": 37, 1891 "column": 55 1892 } 1893 } 1894 }, 1895 "loc": { 1896 "start": { 1897 "line": 37, 1898 "column": 9 1899 }, 1900 "end": { 1901 "line": 37, 1902 "column": 55 1903 } 1904 } 1905 } 1906 ], 1907 "kind": "let", 1908 "loc": { 1909 "start": { 1910 "line": 37, 1911 "column": 5 1912 }, 1913 "end": { 1914 "line": 37, 1915 "column": 56 1916 } 1917 } 1918 }, 1919 { 1920 "type": "ExpressionStatement", 1921 "expression": { 1922 "type": "CallExpression", 1923 "callee": { 1924 "type": "MemberExpression", 1925 "object": { 1926 "type": "Identifier", 1927 "name": "BitopsNSieveBits", 1928 "decorators": [], 1929 "loc": { 1930 "start": { 1931 "line": 38, 1932 "column": 5 1933 }, 1934 "end": { 1935 "line": 38, 1936 "column": 21 1937 } 1938 } 1939 }, 1940 "property": { 1941 "type": "Identifier", 1942 "name": "primes", 1943 "decorators": [], 1944 "loc": { 1945 "start": { 1946 "line": 38, 1947 "column": 22 1948 }, 1949 "end": { 1950 "line": 38, 1951 "column": 28 1952 } 1953 } 1954 }, 1955 "computed": false, 1956 "optional": false, 1957 "loc": { 1958 "start": { 1959 "line": 38, 1960 "column": 5 1961 }, 1962 "end": { 1963 "line": 38, 1964 "column": 28 1965 } 1966 } 1967 }, 1968 "arguments": [ 1969 { 1970 "type": "Identifier", 1971 "name": "isPrime", 1972 "decorators": [], 1973 "loc": { 1974 "start": { 1975 "line": 38, 1976 "column": 29 1977 }, 1978 "end": { 1979 "line": 38, 1980 "column": 36 1981 } 1982 } 1983 }, 1984 { 1985 "type": "Identifier", 1986 "name": "n1", 1987 "decorators": [], 1988 "loc": { 1989 "start": { 1990 "line": 38, 1991 "column": 38 1992 }, 1993 "end": { 1994 "line": 38, 1995 "column": 40 1996 } 1997 } 1998 }, 1999 { 2000 "type": "Identifier", 2001 "name": "n2", 2002 "decorators": [], 2003 "loc": { 2004 "start": { 2005 "line": 38, 2006 "column": 42 2007 }, 2008 "end": { 2009 "line": 38, 2010 "column": 44 2011 } 2012 } 2013 } 2014 ], 2015 "optional": false, 2016 "loc": { 2017 "start": { 2018 "line": 38, 2019 "column": 5 2020 }, 2021 "end": { 2022 "line": 38, 2023 "column": 45 2024 } 2025 } 2026 }, 2027 "loc": { 2028 "start": { 2029 "line": 38, 2030 "column": 5 2031 }, 2032 "end": { 2033 "line": 38, 2034 "column": 46 2035 } 2036 } 2037 }, 2038 { 2039 "type": "ReturnStatement", 2040 "argument": { 2041 "type": "Identifier", 2042 "name": "isPrime", 2043 "decorators": [], 2044 "loc": { 2045 "start": { 2046 "line": 39, 2047 "column": 12 2048 }, 2049 "end": { 2050 "line": 39, 2051 "column": 19 2052 } 2053 } 2054 }, 2055 "loc": { 2056 "start": { 2057 "line": 39, 2058 "column": 5 2059 }, 2060 "end": { 2061 "line": 39, 2062 "column": 20 2063 } 2064 } 2065 } 2066 ], 2067 "loc": { 2068 "start": { 2069 "line": 35, 2070 "column": 49 2071 }, 2072 "end": { 2073 "line": 40, 2074 "column": 4 2075 } 2076 } 2077 }, 2078 "loc": { 2079 "start": { 2080 "line": 35, 2081 "column": 23 2082 }, 2083 "end": { 2084 "line": 40, 2085 "column": 4 2086 } 2087 } 2088 }, 2089 "loc": { 2090 "start": { 2091 "line": 35, 2092 "column": 23 2093 }, 2094 "end": { 2095 "line": 40, 2096 "column": 4 2097 } 2098 } 2099 }, 2100 "overloads": [], 2101 "decorators": [], 2102 "loc": { 2103 "start": { 2104 "line": 35, 2105 "column": 3 2106 }, 2107 "end": { 2108 "line": 40, 2109 "column": 4 2110 } 2111 } 2112 }, 2113 { 2114 "type": "ClassProperty", 2115 "key": { 2116 "type": "Identifier", 2117 "name": "n1", 2118 "decorators": [], 2119 "loc": { 2120 "start": { 2121 "line": 42, 2122 "column": 3 2123 }, 2124 "end": { 2125 "line": 42, 2126 "column": 5 2127 } 2128 } 2129 }, 2130 "value": { 2131 "type": "NumberLiteral", 2132 "value": 4, 2133 "loc": { 2134 "start": { 2135 "line": 42, 2136 "column": 13 2137 }, 2138 "end": { 2139 "line": 42, 2140 "column": 14 2141 } 2142 } 2143 }, 2144 "accessibility": "public", 2145 "static": false, 2146 "readonly": false, 2147 "declare": false, 2148 "optional": false, 2149 "computed": false, 2150 "typeAnnotation": { 2151 "type": "ETSPrimitiveType", 2152 "loc": { 2153 "start": { 2154 "line": 42, 2155 "column": 7 2156 }, 2157 "end": { 2158 "line": 42, 2159 "column": 10 2160 } 2161 } 2162 }, 2163 "definite": false, 2164 "decorators": [], 2165 "loc": { 2166 "start": { 2167 "line": 42, 2168 "column": 3 2169 }, 2170 "end": { 2171 "line": 42, 2172 "column": 14 2173 } 2174 } 2175 }, 2176 { 2177 "type": "ClassProperty", 2178 "key": { 2179 "type": "Identifier", 2180 "name": "n2", 2181 "decorators": [], 2182 "loc": { 2183 "start": { 2184 "line": 43, 2185 "column": 3 2186 }, 2187 "end": { 2188 "line": 43, 2189 "column": 5 2190 } 2191 } 2192 }, 2193 "value": { 2194 "type": "NumberLiteral", 2195 "value": 10000, 2196 "loc": { 2197 "start": { 2198 "line": 43, 2199 "column": 13 2200 }, 2201 "end": { 2202 "line": 43, 2203 "column": 18 2204 } 2205 } 2206 }, 2207 "accessibility": "public", 2208 "static": false, 2209 "readonly": false, 2210 "declare": false, 2211 "optional": false, 2212 "computed": false, 2213 "typeAnnotation": { 2214 "type": "ETSPrimitiveType", 2215 "loc": { 2216 "start": { 2217 "line": 43, 2218 "column": 7 2219 }, 2220 "end": { 2221 "line": 43, 2222 "column": 10 2223 } 2224 } 2225 }, 2226 "definite": false, 2227 "decorators": [], 2228 "loc": { 2229 "start": { 2230 "line": 43, 2231 "column": 3 2232 }, 2233 "end": { 2234 "line": 43, 2235 "column": 18 2236 } 2237 } 2238 }, 2239 { 2240 "type": "ClassProperty", 2241 "key": { 2242 "type": "Identifier", 2243 "name": "expected", 2244 "decorators": [], 2245 "loc": { 2246 "start": { 2247 "line": 44, 2248 "column": 19 2249 }, 2250 "end": { 2251 "line": 44, 2252 "column": 27 2253 } 2254 } 2255 }, 2256 "value": { 2257 "type": "UnaryExpression", 2258 "operator": "-", 2259 "prefix": true, 2260 "argument": { 2261 "type": "NumberLiteral", 2262 "value": 1286749544853, 2263 "loc": { 2264 "start": { 2265 "line": 44, 2266 "column": 37 2267 }, 2268 "end": { 2269 "line": 44, 2270 "column": 50 2271 } 2272 } 2273 }, 2274 "loc": { 2275 "start": { 2276 "line": 44, 2277 "column": 36 2278 }, 2279 "end": { 2280 "line": 44, 2281 "column": 50 2282 } 2283 } 2284 }, 2285 "accessibility": "public", 2286 "static": true, 2287 "readonly": true, 2288 "declare": false, 2289 "optional": false, 2290 "computed": false, 2291 "typeAnnotation": { 2292 "type": "ETSPrimitiveType", 2293 "loc": { 2294 "start": { 2295 "line": 44, 2296 "column": 29 2297 }, 2298 "end": { 2299 "line": 44, 2300 "column": 33 2301 } 2302 } 2303 }, 2304 "definite": false, 2305 "decorators": [], 2306 "loc": { 2307 "start": { 2308 "line": 44, 2309 "column": 19 2310 }, 2311 "end": { 2312 "line": 44, 2313 "column": 50 2314 } 2315 } 2316 }, 2317 { 2318 "type": "MethodDefinition", 2319 "key": { 2320 "type": "Identifier", 2321 "name": "run", 2322 "decorators": [], 2323 "loc": { 2324 "start": { 2325 "line": 46, 2326 "column": 10 2327 }, 2328 "end": { 2329 "line": 46, 2330 "column": 13 2331 } 2332 } 2333 }, 2334 "kind": "method", 2335 "accessibility": "public", 2336 "static": false, 2337 "optional": false, 2338 "computed": false, 2339 "value": { 2340 "type": "FunctionExpression", 2341 "function": { 2342 "type": "ScriptFunction", 2343 "id": { 2344 "type": "Identifier", 2345 "name": "run", 2346 "decorators": [], 2347 "loc": { 2348 "start": { 2349 "line": 46, 2350 "column": 10 2351 }, 2352 "end": { 2353 "line": 46, 2354 "column": 13 2355 } 2356 } 2357 }, 2358 "generator": false, 2359 "async": false, 2360 "expression": false, 2361 "params": [], 2362 "returnType": { 2363 "type": "ETSPrimitiveType", 2364 "loc": { 2365 "start": { 2366 "line": 46, 2367 "column": 17 2368 }, 2369 "end": { 2370 "line": 46, 2371 "column": 21 2372 } 2373 } 2374 }, 2375 "body": { 2376 "type": "BlockStatement", 2377 "statements": [ 2378 { 2379 "type": "VariableDeclaration", 2380 "declarations": [ 2381 { 2382 "type": "VariableDeclarator", 2383 "id": { 2384 "type": "Identifier", 2385 "name": "result", 2386 "typeAnnotation": { 2387 "type": "TSArrayType", 2388 "elementType": { 2389 "type": "ETSPrimitiveType", 2390 "loc": { 2391 "start": { 2392 "line": 47, 2393 "column": 17 2394 }, 2395 "end": { 2396 "line": 47, 2397 "column": 20 2398 } 2399 } 2400 }, 2401 "loc": { 2402 "start": { 2403 "line": 47, 2404 "column": 23 2405 }, 2406 "end": { 2407 "line": 47, 2408 "column": 24 2409 } 2410 } 2411 }, 2412 "decorators": [], 2413 "loc": { 2414 "start": { 2415 "line": 47, 2416 "column": 9 2417 }, 2418 "end": { 2419 "line": 47, 2420 "column": 15 2421 } 2422 } 2423 }, 2424 "init": { 2425 "type": "CallExpression", 2426 "callee": { 2427 "type": "MemberExpression", 2428 "object": { 2429 "type": "Identifier", 2430 "name": "BitopsNSieveBits", 2431 "decorators": [], 2432 "loc": { 2433 "start": { 2434 "line": 47, 2435 "column": 25 2436 }, 2437 "end": { 2438 "line": 47, 2439 "column": 41 2440 } 2441 } 2442 }, 2443 "property": { 2444 "type": "Identifier", 2445 "name": "sieve", 2446 "decorators": [], 2447 "loc": { 2448 "start": { 2449 "line": 47, 2450 "column": 42 2451 }, 2452 "end": { 2453 "line": 47, 2454 "column": 47 2455 } 2456 } 2457 }, 2458 "computed": false, 2459 "optional": false, 2460 "loc": { 2461 "start": { 2462 "line": 47, 2463 "column": 25 2464 }, 2465 "end": { 2466 "line": 47, 2467 "column": 47 2468 } 2469 } 2470 }, 2471 "arguments": [ 2472 { 2473 "type": "MemberExpression", 2474 "object": { 2475 "type": "ThisExpression", 2476 "loc": { 2477 "start": { 2478 "line": 47, 2479 "column": 48 2480 }, 2481 "end": { 2482 "line": 47, 2483 "column": 52 2484 } 2485 } 2486 }, 2487 "property": { 2488 "type": "Identifier", 2489 "name": "n1", 2490 "decorators": [], 2491 "loc": { 2492 "start": { 2493 "line": 47, 2494 "column": 53 2495 }, 2496 "end": { 2497 "line": 47, 2498 "column": 55 2499 } 2500 } 2501 }, 2502 "computed": false, 2503 "optional": false, 2504 "loc": { 2505 "start": { 2506 "line": 47, 2507 "column": 48 2508 }, 2509 "end": { 2510 "line": 47, 2511 "column": 55 2512 } 2513 } 2514 }, 2515 { 2516 "type": "MemberExpression", 2517 "object": { 2518 "type": "ThisExpression", 2519 "loc": { 2520 "start": { 2521 "line": 47, 2522 "column": 57 2523 }, 2524 "end": { 2525 "line": 47, 2526 "column": 61 2527 } 2528 } 2529 }, 2530 "property": { 2531 "type": "Identifier", 2532 "name": "n2", 2533 "decorators": [], 2534 "loc": { 2535 "start": { 2536 "line": 47, 2537 "column": 62 2538 }, 2539 "end": { 2540 "line": 47, 2541 "column": 64 2542 } 2543 } 2544 }, 2545 "computed": false, 2546 "optional": false, 2547 "loc": { 2548 "start": { 2549 "line": 47, 2550 "column": 57 2551 }, 2552 "end": { 2553 "line": 47, 2554 "column": 64 2555 } 2556 } 2557 } 2558 ], 2559 "optional": false, 2560 "loc": { 2561 "start": { 2562 "line": 47, 2563 "column": 25 2564 }, 2565 "end": { 2566 "line": 47, 2567 "column": 65 2568 } 2569 } 2570 }, 2571 "loc": { 2572 "start": { 2573 "line": 47, 2574 "column": 9 2575 }, 2576 "end": { 2577 "line": 47, 2578 "column": 65 2579 } 2580 } 2581 } 2582 ], 2583 "kind": "let", 2584 "loc": { 2585 "start": { 2586 "line": 47, 2587 "column": 5 2588 }, 2589 "end": { 2590 "line": 47, 2591 "column": 66 2592 } 2593 } 2594 }, 2595 { 2596 "type": "VariableDeclaration", 2597 "declarations": [ 2598 { 2599 "type": "VariableDeclarator", 2600 "id": { 2601 "type": "Identifier", 2602 "name": "sum", 2603 "typeAnnotation": { 2604 "type": "ETSPrimitiveType", 2605 "loc": { 2606 "start": { 2607 "line": 48, 2608 "column": 14 2609 }, 2610 "end": { 2611 "line": 48, 2612 "column": 18 2613 } 2614 } 2615 }, 2616 "decorators": [], 2617 "loc": { 2618 "start": { 2619 "line": 48, 2620 "column": 9 2621 }, 2622 "end": { 2623 "line": 48, 2624 "column": 12 2625 } 2626 } 2627 }, 2628 "init": { 2629 "type": "NumberLiteral", 2630 "value": 0, 2631 "loc": { 2632 "start": { 2633 "line": 48, 2634 "column": 21 2635 }, 2636 "end": { 2637 "line": 48, 2638 "column": 22 2639 } 2640 } 2641 }, 2642 "loc": { 2643 "start": { 2644 "line": 48, 2645 "column": 9 2646 }, 2647 "end": { 2648 "line": 48, 2649 "column": 22 2650 } 2651 } 2652 } 2653 ], 2654 "kind": "let", 2655 "loc": { 2656 "start": { 2657 "line": 48, 2658 "column": 5 2659 }, 2660 "end": { 2661 "line": 48, 2662 "column": 23 2663 } 2664 } 2665 }, 2666 { 2667 "type": "ForUpdateStatement", 2668 "init": { 2669 "type": "VariableDeclaration", 2670 "declarations": [ 2671 { 2672 "type": "VariableDeclarator", 2673 "id": { 2674 "type": "Identifier", 2675 "name": "i", 2676 "typeAnnotation": { 2677 "type": "ETSPrimitiveType", 2678 "loc": { 2679 "start": { 2680 "line": 49, 2681 "column": 17 2682 }, 2683 "end": { 2684 "line": 49, 2685 "column": 20 2686 } 2687 } 2688 }, 2689 "decorators": [], 2690 "loc": { 2691 "start": { 2692 "line": 49, 2693 "column": 14 2694 }, 2695 "end": { 2696 "line": 49, 2697 "column": 15 2698 } 2699 } 2700 }, 2701 "init": { 2702 "type": "NumberLiteral", 2703 "value": 0, 2704 "loc": { 2705 "start": { 2706 "line": 49, 2707 "column": 23 2708 }, 2709 "end": { 2710 "line": 49, 2711 "column": 24 2712 } 2713 } 2714 }, 2715 "loc": { 2716 "start": { 2717 "line": 49, 2718 "column": 14 2719 }, 2720 "end": { 2721 "line": 49, 2722 "column": 24 2723 } 2724 } 2725 } 2726 ], 2727 "kind": "let", 2728 "loc": { 2729 "start": { 2730 "line": 49, 2731 "column": 10 2732 }, 2733 "end": { 2734 "line": 49, 2735 "column": 24 2736 } 2737 } 2738 }, 2739 "test": { 2740 "type": "BinaryExpression", 2741 "operator": "<", 2742 "left": { 2743 "type": "Identifier", 2744 "name": "i", 2745 "decorators": [], 2746 "loc": { 2747 "start": { 2748 "line": 49, 2749 "column": 26 2750 }, 2751 "end": { 2752 "line": 49, 2753 "column": 27 2754 } 2755 } 2756 }, 2757 "right": { 2758 "type": "MemberExpression", 2759 "object": { 2760 "type": "Identifier", 2761 "name": "result", 2762 "decorators": [], 2763 "loc": { 2764 "start": { 2765 "line": 49, 2766 "column": 30 2767 }, 2768 "end": { 2769 "line": 49, 2770 "column": 36 2771 } 2772 } 2773 }, 2774 "property": { 2775 "type": "Identifier", 2776 "name": "length", 2777 "decorators": [], 2778 "loc": { 2779 "start": { 2780 "line": 49, 2781 "column": 37 2782 }, 2783 "end": { 2784 "line": 49, 2785 "column": 43 2786 } 2787 } 2788 }, 2789 "computed": false, 2790 "optional": false, 2791 "loc": { 2792 "start": { 2793 "line": 49, 2794 "column": 30 2795 }, 2796 "end": { 2797 "line": 49, 2798 "column": 43 2799 } 2800 } 2801 }, 2802 "loc": { 2803 "start": { 2804 "line": 49, 2805 "column": 26 2806 }, 2807 "end": { 2808 "line": 49, 2809 "column": 43 2810 } 2811 } 2812 }, 2813 "update": { 2814 "type": "UpdateExpression", 2815 "operator": "++", 2816 "prefix": true, 2817 "argument": { 2818 "type": "Identifier", 2819 "name": "i", 2820 "decorators": [], 2821 "loc": { 2822 "start": { 2823 "line": 49, 2824 "column": 47 2825 }, 2826 "end": { 2827 "line": 49, 2828 "column": 48 2829 } 2830 } 2831 }, 2832 "loc": { 2833 "start": { 2834 "line": 49, 2835 "column": 45 2836 }, 2837 "end": { 2838 "line": 49, 2839 "column": 48 2840 } 2841 } 2842 }, 2843 "body": { 2844 "type": "BlockStatement", 2845 "statements": [ 2846 { 2847 "type": "ExpressionStatement", 2848 "expression": { 2849 "type": "AssignmentExpression", 2850 "operator": "+=", 2851 "left": { 2852 "type": "Identifier", 2853 "name": "sum", 2854 "decorators": [], 2855 "loc": { 2856 "start": { 2857 "line": 50, 2858 "column": 7 2859 }, 2860 "end": { 2861 "line": 50, 2862 "column": 10 2863 } 2864 } 2865 }, 2866 "right": { 2867 "type": "MemberExpression", 2868 "object": { 2869 "type": "Identifier", 2870 "name": "result", 2871 "decorators": [], 2872 "loc": { 2873 "start": { 2874 "line": 50, 2875 "column": 14 2876 }, 2877 "end": { 2878 "line": 50, 2879 "column": 20 2880 } 2881 } 2882 }, 2883 "property": { 2884 "type": "Identifier", 2885 "name": "i", 2886 "decorators": [], 2887 "loc": { 2888 "start": { 2889 "line": 50, 2890 "column": 21 2891 }, 2892 "end": { 2893 "line": 50, 2894 "column": 22 2895 } 2896 } 2897 }, 2898 "computed": true, 2899 "optional": false, 2900 "loc": { 2901 "start": { 2902 "line": 50, 2903 "column": 14 2904 }, 2905 "end": { 2906 "line": 50, 2907 "column": 23 2908 } 2909 } 2910 }, 2911 "loc": { 2912 "start": { 2913 "line": 50, 2914 "column": 7 2915 }, 2916 "end": { 2917 "line": 50, 2918 "column": 23 2919 } 2920 } 2921 }, 2922 "loc": { 2923 "start": { 2924 "line": 50, 2925 "column": 7 2926 }, 2927 "end": { 2928 "line": 50, 2929 "column": 24 2930 } 2931 } 2932 } 2933 ], 2934 "loc": { 2935 "start": { 2936 "line": 49, 2937 "column": 50 2938 }, 2939 "end": { 2940 "line": 51, 2941 "column": 6 2942 } 2943 } 2944 }, 2945 "loc": { 2946 "start": { 2947 "line": 49, 2948 "column": 5 2949 }, 2950 "end": { 2951 "line": 51, 2952 "column": 6 2953 } 2954 } 2955 }, 2956 { 2957 "type": "AssertStatement", 2958 "test": { 2959 "type": "BinaryExpression", 2960 "operator": "==", 2961 "left": { 2962 "type": "Identifier", 2963 "name": "sum", 2964 "decorators": [], 2965 "loc": { 2966 "start": { 2967 "line": 53, 2968 "column": 12 2969 }, 2970 "end": { 2971 "line": 53, 2972 "column": 15 2973 } 2974 } 2975 }, 2976 "right": { 2977 "type": "MemberExpression", 2978 "object": { 2979 "type": "Identifier", 2980 "name": "BitopsNSieveBits", 2981 "decorators": [], 2982 "loc": { 2983 "start": { 2984 "line": 53, 2985 "column": 19 2986 }, 2987 "end": { 2988 "line": 53, 2989 "column": 35 2990 } 2991 } 2992 }, 2993 "property": { 2994 "type": "Identifier", 2995 "name": "expected", 2996 "decorators": [], 2997 "loc": { 2998 "start": { 2999 "line": 53, 3000 "column": 36 3001 }, 3002 "end": { 3003 "line": 53, 3004 "column": 44 3005 } 3006 } 3007 }, 3008 "computed": false, 3009 "optional": false, 3010 "loc": { 3011 "start": { 3012 "line": 53, 3013 "column": 19 3014 }, 3015 "end": { 3016 "line": 53, 3017 "column": 44 3018 } 3019 } 3020 }, 3021 "loc": { 3022 "start": { 3023 "line": 53, 3024 "column": 12 3025 }, 3026 "end": { 3027 "line": 53, 3028 "column": 44 3029 } 3030 } 3031 }, 3032 "second": { 3033 "type": "StringLiteral", 3034 "value": "Incorrect result", 3035 "loc": { 3036 "start": { 3037 "line": 53, 3038 "column": 46 3039 }, 3040 "end": { 3041 "line": 53, 3042 "column": 64 3043 } 3044 } 3045 }, 3046 "loc": { 3047 "start": { 3048 "line": 53, 3049 "column": 5 3050 }, 3051 "end": { 3052 "line": 53, 3053 "column": 65 3054 } 3055 } 3056 } 3057 ], 3058 "loc": { 3059 "start": { 3060 "line": 46, 3061 "column": 22 3062 }, 3063 "end": { 3064 "line": 54, 3065 "column": 4 3066 } 3067 } 3068 }, 3069 "loc": { 3070 "start": { 3071 "line": 46, 3072 "column": 13 3073 }, 3074 "end": { 3075 "line": 54, 3076 "column": 4 3077 } 3078 } 3079 }, 3080 "loc": { 3081 "start": { 3082 "line": 46, 3083 "column": 13 3084 }, 3085 "end": { 3086 "line": 54, 3087 "column": 4 3088 } 3089 } 3090 }, 3091 "overloads": [], 3092 "decorators": [], 3093 "loc": { 3094 "start": { 3095 "line": 46, 3096 "column": 3 3097 }, 3098 "end": { 3099 "line": 54, 3100 "column": 4 3101 } 3102 } 3103 }, 3104 { 3105 "type": "MethodDefinition", 3106 "key": { 3107 "type": "Identifier", 3108 "name": "constructor", 3109 "decorators": [], 3110 "loc": { 3111 "start": { 3112 "line": 1, 3113 "column": 1 3114 }, 3115 "end": { 3116 "line": 1, 3117 "column": 1 3118 } 3119 } 3120 }, 3121 "kind": "constructor", 3122 "static": false, 3123 "optional": false, 3124 "computed": false, 3125 "value": { 3126 "type": "FunctionExpression", 3127 "function": { 3128 "type": "ScriptFunction", 3129 "id": { 3130 "type": "Identifier", 3131 "name": "constructor", 3132 "decorators": [], 3133 "loc": { 3134 "start": { 3135 "line": 1, 3136 "column": 1 3137 }, 3138 "end": { 3139 "line": 1, 3140 "column": 1 3141 } 3142 } 3143 }, 3144 "generator": false, 3145 "async": false, 3146 "expression": false, 3147 "params": [], 3148 "body": { 3149 "type": "BlockStatement", 3150 "statements": [], 3151 "loc": { 3152 "start": { 3153 "line": 1, 3154 "column": 1 3155 }, 3156 "end": { 3157 "line": 1, 3158 "column": 1 3159 } 3160 } 3161 }, 3162 "loc": { 3163 "start": { 3164 "line": 1, 3165 "column": 1 3166 }, 3167 "end": { 3168 "line": 1, 3169 "column": 1 3170 } 3171 } 3172 }, 3173 "loc": { 3174 "start": { 3175 "line": 1, 3176 "column": 1 3177 }, 3178 "end": { 3179 "line": 1, 3180 "column": 1 3181 } 3182 } 3183 }, 3184 "overloads": [], 3185 "decorators": [], 3186 "loc": { 3187 "start": { 3188 "line": 55, 3189 "column": 2 3190 }, 3191 "end": { 3192 "line": 55, 3193 "column": 2 3194 } 3195 } 3196 } 3197 ], 3198 "loc": { 3199 "start": { 3200 "line": 16, 3201 "column": 31 3202 }, 3203 "end": { 3204 "line": 55, 3205 "column": 2 3206 } 3207 } 3208 }, 3209 "loc": { 3210 "start": { 3211 "line": 16, 3212 "column": 8 3213 }, 3214 "end": { 3215 "line": 55, 3216 "column": 2 3217 } 3218 } 3219 }, 3220 { 3221 "type": "ClassDeclaration", 3222 "definition": { 3223 "id": { 3224 "type": "Identifier", 3225 "name": "ETSGLOBAL", 3226 "decorators": [], 3227 "loc": { 3228 "start": { 3229 "line": 1, 3230 "column": 1 3231 }, 3232 "end": { 3233 "line": 1, 3234 "column": 1 3235 } 3236 } 3237 }, 3238 "superClass": null, 3239 "implements": [], 3240 "body": [ 3241 { 3242 "type": "MethodDefinition", 3243 "key": { 3244 "type": "Identifier", 3245 "name": "_$init$_", 3246 "decorators": [], 3247 "loc": { 3248 "start": { 3249 "line": 1, 3250 "column": 1 3251 }, 3252 "end": { 3253 "line": 1, 3254 "column": 1 3255 } 3256 } 3257 }, 3258 "kind": "method", 3259 "accessibility": "public", 3260 "static": true, 3261 "optional": false, 3262 "computed": false, 3263 "value": { 3264 "type": "FunctionExpression", 3265 "function": { 3266 "type": "ScriptFunction", 3267 "id": { 3268 "type": "Identifier", 3269 "name": "_$init$_", 3270 "decorators": [], 3271 "loc": { 3272 "start": { 3273 "line": 1, 3274 "column": 1 3275 }, 3276 "end": { 3277 "line": 1, 3278 "column": 1 3279 } 3280 } 3281 }, 3282 "generator": false, 3283 "async": false, 3284 "expression": false, 3285 "params": [], 3286 "body": { 3287 "type": "BlockStatement", 3288 "statements": [], 3289 "loc": { 3290 "start": { 3291 "line": 1, 3292 "column": 1 3293 }, 3294 "end": { 3295 "line": 1, 3296 "column": 1 3297 } 3298 } 3299 }, 3300 "loc": { 3301 "start": { 3302 "line": 1, 3303 "column": 1 3304 }, 3305 "end": { 3306 "line": 1, 3307 "column": 1 3308 } 3309 } 3310 }, 3311 "loc": { 3312 "start": { 3313 "line": 1, 3314 "column": 1 3315 }, 3316 "end": { 3317 "line": 1, 3318 "column": 1 3319 } 3320 } 3321 }, 3322 "overloads": [], 3323 "decorators": [], 3324 "loc": { 3325 "start": { 3326 "line": 1, 3327 "column": 1 3328 }, 3329 "end": { 3330 "line": 1, 3331 "column": 1 3332 } 3333 } 3334 }, 3335 { 3336 "type": "MethodDefinition", 3337 "key": { 3338 "type": "Identifier", 3339 "name": "main", 3340 "decorators": [], 3341 "loc": { 3342 "start": { 3343 "line": 57, 3344 "column": 10 3345 }, 3346 "end": { 3347 "line": 57, 3348 "column": 14 3349 } 3350 } 3351 }, 3352 "kind": "method", 3353 "accessibility": "public", 3354 "static": true, 3355 "optional": false, 3356 "computed": false, 3357 "value": { 3358 "type": "FunctionExpression", 3359 "function": { 3360 "type": "ScriptFunction", 3361 "id": { 3362 "type": "Identifier", 3363 "name": "main", 3364 "decorators": [], 3365 "loc": { 3366 "start": { 3367 "line": 57, 3368 "column": 10 3369 }, 3370 "end": { 3371 "line": 57, 3372 "column": 14 3373 } 3374 } 3375 }, 3376 "generator": false, 3377 "async": false, 3378 "expression": false, 3379 "params": [], 3380 "returnType": { 3381 "type": "ETSPrimitiveType", 3382 "loc": { 3383 "start": { 3384 "line": 57, 3385 "column": 18 3386 }, 3387 "end": { 3388 "line": 57, 3389 "column": 22 3390 } 3391 } 3392 }, 3393 "body": { 3394 "type": "BlockStatement", 3395 "statements": [ 3396 { 3397 "type": "VariableDeclaration", 3398 "declarations": [ 3399 { 3400 "type": "VariableDeclarator", 3401 "id": { 3402 "type": "Identifier", 3403 "name": "a", 3404 "decorators": [], 3405 "loc": { 3406 "start": { 3407 "line": 58, 3408 "column": 7 3409 }, 3410 "end": { 3411 "line": 58, 3412 "column": 8 3413 } 3414 } 3415 }, 3416 "init": { 3417 "type": "ETSNewClassInstanceExpression", 3418 "typeReference": { 3419 "type": "ETSTypeReference", 3420 "part": { 3421 "type": "ETSTypeReferencePart", 3422 "name": { 3423 "type": "Identifier", 3424 "name": "BitopsNSieveBits", 3425 "decorators": [], 3426 "loc": { 3427 "start": { 3428 "line": 58, 3429 "column": 15 3430 }, 3431 "end": { 3432 "line": 58, 3433 "column": 31 3434 } 3435 } 3436 }, 3437 "loc": { 3438 "start": { 3439 "line": 58, 3440 "column": 15 3441 }, 3442 "end": { 3443 "line": 58, 3444 "column": 32 3445 } 3446 } 3447 }, 3448 "loc": { 3449 "start": { 3450 "line": 58, 3451 "column": 15 3452 }, 3453 "end": { 3454 "line": 58, 3455 "column": 32 3456 } 3457 } 3458 }, 3459 "arguments": [], 3460 "loc": { 3461 "start": { 3462 "line": 58, 3463 "column": 11 3464 }, 3465 "end": { 3466 "line": 58, 3467 "column": 32 3468 } 3469 } 3470 }, 3471 "loc": { 3472 "start": { 3473 "line": 58, 3474 "column": 7 3475 }, 3476 "end": { 3477 "line": 58, 3478 "column": 32 3479 } 3480 } 3481 } 3482 ], 3483 "kind": "let", 3484 "loc": { 3485 "start": { 3486 "line": 58, 3487 "column": 3 3488 }, 3489 "end": { 3490 "line": 58, 3491 "column": 32 3492 } 3493 } 3494 }, 3495 { 3496 "type": "ExpressionStatement", 3497 "expression": { 3498 "type": "CallExpression", 3499 "callee": { 3500 "type": "MemberExpression", 3501 "object": { 3502 "type": "Identifier", 3503 "name": "a", 3504 "decorators": [], 3505 "loc": { 3506 "start": { 3507 "line": 59, 3508 "column": 3 3509 }, 3510 "end": { 3511 "line": 59, 3512 "column": 4 3513 } 3514 } 3515 }, 3516 "property": { 3517 "type": "Identifier", 3518 "name": "run", 3519 "decorators": [], 3520 "loc": { 3521 "start": { 3522 "line": 59, 3523 "column": 5 3524 }, 3525 "end": { 3526 "line": 59, 3527 "column": 8 3528 } 3529 } 3530 }, 3531 "computed": false, 3532 "optional": false, 3533 "loc": { 3534 "start": { 3535 "line": 59, 3536 "column": 3 3537 }, 3538 "end": { 3539 "line": 59, 3540 "column": 8 3541 } 3542 } 3543 }, 3544 "arguments": [], 3545 "optional": false, 3546 "loc": { 3547 "start": { 3548 "line": 59, 3549 "column": 3 3550 }, 3551 "end": { 3552 "line": 59, 3553 "column": 10 3554 } 3555 } 3556 }, 3557 "loc": { 3558 "start": { 3559 "line": 59, 3560 "column": 3 3561 }, 3562 "end": { 3563 "line": 59, 3564 "column": 11 3565 } 3566 } 3567 } 3568 ], 3569 "loc": { 3570 "start": { 3571 "line": 57, 3572 "column": 23 3573 }, 3574 "end": { 3575 "line": 60, 3576 "column": 2 3577 } 3578 } 3579 }, 3580 "loc": { 3581 "start": { 3582 "line": 57, 3583 "column": 14 3584 }, 3585 "end": { 3586 "line": 60, 3587 "column": 2 3588 } 3589 } 3590 }, 3591 "loc": { 3592 "start": { 3593 "line": 57, 3594 "column": 14 3595 }, 3596 "end": { 3597 "line": 60, 3598 "column": 2 3599 } 3600 } 3601 }, 3602 "overloads": [], 3603 "decorators": [], 3604 "loc": { 3605 "start": { 3606 "line": 57, 3607 "column": 1 3608 }, 3609 "end": { 3610 "line": 60, 3611 "column": 2 3612 } 3613 } 3614 } 3615 ], 3616 "loc": { 3617 "start": { 3618 "line": 1, 3619 "column": 1 3620 }, 3621 "end": { 3622 "line": 1, 3623 "column": 1 3624 } 3625 } 3626 }, 3627 "loc": { 3628 "start": { 3629 "line": 1, 3630 "column": 1 3631 }, 3632 "end": { 3633 "line": 1, 3634 "column": 1 3635 } 3636 } 3637 } 3638 ], 3639 "loc": { 3640 "start": { 3641 "line": 1, 3642 "column": 1 3643 }, 3644 "end": { 3645 "line": 61, 3646 "column": 1 3647 } 3648 } 3649} 3650