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