Problem Statement
Some positive integers, not necessarily distinct, are written on a blackboard. You are given these integers in a format that is specified at the end of this statement.
You are allowed to change the numbers on the blackboard in a sequence of steps. In each step, you have to execute the following actions, in order:
- Choose two numbers x and y on the blackboard.
- Erase x and y. (Erase exactly two numbers. If there are other copies of these numbers on the blackboard, leave them untouched.)
- Write two new integers onto the blackboard: gcd(x,y) and lcm(x,y).
You may perform arbitrarily many steps (possibly even zero). Your goal is to maximize the sum of numbers written on the blackboard. Let S be the largest possible sum. Compute and return the value (S modulo 1,000,000,007).
You are given the
L = length(start) for i = 0 .. L-1: for j = 0 .. cnt[i]-1: write the number (start[i] + j * d[i]) onto the blackboard
Definition
- Class:
- GCDLCM2
- Method:
- getMaximalSum
- Parameters:
- int[], int[], int[]
- Returns:
- int
- Method signature:
- int getMaximalSum(int[] start, int[] d, int[] cnt)
- (be sure your method is public)
Notes
- Note that you are maximizing the sum S. You are not maximizing the return value.
Constraints
- start, d and cnt will have the same number of elements.
- start will contain between 1 and 500 elements, inclusive.
- Each element of start and cnt will be between 1 and 10,000,000, inclusive.
- Each element of d will be between 0 and 10,000,000, inclusive.
- For each valid i, start[i] + d[i] * (cnt[i] - 1) will be at most 10,000,000.
- The sum of all cnt[i] will be between 1 and 100,000, inclusive.
Examples
{1}
{1}
{3}
Returns: 8
There are three numbers on the blackboard: 1, 2 and 3. You can replace numbers 2 and 3 with numbers 1 and 6. Then sum is 1 + 1 + 6 = 8 (which can be proved to be maximal). The answer is (8 modulo 1,000,000,007) = 8.
{3}
{0}
{5}
Returns: 15
There are five numbers 3 on the blackboard. It's impossible to change anything by performing described operations so the maximal sum is 15.
{2}
{2}
{4}
Returns: 32
Numbers on the blackboard are 2, 4, 6, 8.
{1, 2}
{2, 3}
{2, 2}
Returns: 33
Numbers on the blackboard are 1, 3, 2, 5.
{5 ,6}
{23, 45}
{50000, 50000}
Returns: 804225394
{731375, 903456, 4497989, 1429412, 1132945, 1400044, 1373860, 1469911, 293086, 7521591, 1556332, 356281}
{548, 68, 1552, 170, 83709, 36763, 16067, 7319493, 395936, 5292523, 736309, 2118118}
{6864, 53378, 2501, 36853, 27, 173, 180, 1, 20, 1, 1, 1}
Returns: 967072201
{1202524, 3936713, 5118681, 3361721, 5107845, 10331, 3226591, 3643900, 1091797, 8557492}
{220, 135, 18, 4273, 3389, 18507, 6681327, 67207, 509751, 6283430}
{38248, 31256, 27455, 1407, 990, 540, 2, 83, 18, 1}
Returns: 827228476
{6088686, 2196870, 2826258, 307404, 3251892, 68402, 369759, 762347, 3844160, 2101379, 8301023, 2029253, 4499482, 3869632}
{743, 498, 171, 200, 233, 2753, 76834, 41177, 5904131, 557839, 4826843, 2282414, 2579692, 1587922}
{4174, 10828, 22299, 36321, 23695, 2348, 97, 213, 1, 13, 1, 4, 2, 4}
Returns: 975627765
{2260355, 176235, 2872958, 1330158, 1822356, 8561754, 186204, 71817, 308215, 122209, 3963708, 5617525}
{20, 49, 360, 889, 0, 512, 23168, 227121, 49474, 847684, 4404690, 9421886}
{5785, 59814, 16801, 8911, 6888, 1265, 364, 22, 138, 9, 2, 1}
Returns: 920145885
{199584, 687273, 269470, 301957, 492755, 8702277, 1284144, 6530687, 8974478}
{89, 162, 1716, 44502, 350623, 958972, 1127295, 4885439, 2121813}
{54274, 41886, 3621, 184, 24, 2, 7, 1, 1}
Returns: 554591529
{501498, 6729985, 1812704, 3814641, 3772558, 3598787, 2660488, 4335590}
{132, 42, 791, 4456, 22907, 1244, 925, 170318}
{44267, 41263, 9656, 509, 169, 3696, 406, 34}
Returns: 686753962
{72023, 878938, 943317, 389471, 255055, 2219195, 8397792, 4237347, 3257520, 713871, 351235, 2255202, 142026, 3064193, 4309258}
{142, 512, 377, 2785, 16590, 42212, 2819, 103334, 4498, 121072, 83107, 1162943, 4481055, 2064801, 473530}
{67466, 11259, 17874, 2336, 557, 105, 204, 21, 52, 35, 77, 6, 3, 4, 1}
Returns: 980922129
{75753, 3320323, 528928, 25001, 1026064, 3865148, 1794745, 3008747, 1438786, 6415180, 6297078, 9378975}
{106, 1394, 8212, 5200, 22504, 1512657, 350721, 661665, 7533755, 3031241, 6957970, 2933977}
{93555, 3983, 919, 1249, 254, 4, 24, 7, 2, 1, 1, 1}
Returns: 663080204
{580150, 2226472, 460632, 6516576, 7810602, 1017842, 3684459, 1041921, 4202658, 2828457, 2069292, 8329187, 1122198, 9091781, 6203895}
{94, 125, 329, 105, 220, 2659, 4356, 22547, 59701, 288380, 3056906, 7182661, 8008130, 7890458, 5466705}
{49337, 19393, 16477, 6236, 4891, 2350, 913, 289, 89, 19, 1, 1, 2, 1, 1}
Returns: 696628583
{67432, 1210939, 5379168, 1909055, 4250709, 3490137, 364119, 2764375, 4520618}
{306, 129, 28, 6332, 16419, 704728, 891240, 8335083, 782171}
{28949, 60740, 9505, 748, 45, 5, 6, 1, 1}
Returns: 153185437
{8912587, 5079350, 3760386, 1731879, 3276571, 6583097, 1861400, 7315063, 2581137, 3262496}
{1, 1, 3, 0, 2, 0, 3, 3, 2, 1}
{68783, 27514, 2048, 579, 907, 134, 27, 1, 5, 2}
Returns: 125390232
{630097, 1232118, 183814, 9175924, 4136114, 4888599, 1891120, 3556957, 6065515, 7816429, 3725376, 9403386}
{1, 1, 0, 2, 0, 3, 2, 2, 0, 1, 3, 3}
{27739, 32045, 26454, 6754, 246, 5987, 191, 290, 264, 26, 2, 2}
Returns: 365968007
{1292997, 4811468, 1792477, 7719271, 7466386, 4844532, 6552950, 1773804, 9945923, 3455287, 7026126, 2358415, 1447985, 1647714}
{3, 0, 3, 0, 0, 2, 1, 0, 0, 0, 1, 3, 1, 0}
{24768, 65135, 2282, 1033, 2891, 2134, 743, 960, 33, 11, 7, 1, 1, 1}
Returns: 335312175
{469, 678, 58, 473, 138, 368, 837, 442, 74, 2, 343, 235, 60, 113, 295, 571, 804, 54, 1, 867, 618, 161, 820, 2, 41, 48, 228, 752, 409, 197, 438, 73, 397, 32, 799, 189, 732, 277, 370, 370, 211, 67, 683, 999, 19, 113, 6, 635, 199, 47, 397, 215, 828, 823, 179, 216, 424, 895, 811, 137, 654, 897, 306, 12, 316, 438, 24, 887, 175, 564, 460, 411, 365, 39, 92, 962, 360, 37, 42, 732, 242, 171, 659, 220, 90, 156, 801, 187, 362, 211, 547, 876, 912, 533, 465, 642, 8, 477, 190, 102, 384, 7, 387, 46, 674, 238, 70, 782, 34, 901, 172, 18, 247, 105, 708, 378, 144, 84, 103, 790, 521, 791, 6, 80, 347, 116, 484, 49, 214, 336, 15, 731, 3, 562, 175, 34, 670, 836, 220, 357, 276, 18, 355, 121, 530, 125, 205, 33, 188, 337, 251, 38, 193, 264, 378, 85, 433, 112, 23, 27, 520, 341, 65, 95, 456, 83, 53, 81, 78, 12, 5, 80, 247, 114, 42, 247, 122, 238, 112, 41, 239, 42, 145, 239, 165, 261, 79, 298, 122, 11, 281, 239, 173, 66, 78, 165, 238, 304, 153, 197, 14, 791, 83, 103, 356, 179, 45, 537, 671, 913, 689, 462}
{1, 0, 0, 0, 0, 0, 0, 1, 2, 10, 2, 1, 0, 0, 0, 1, 0, 1, 1, 0, 0, 2, 0, 2, 1, 2, 1, 0, 0, 0, 2, 1, 0, 16, 0, 2, 2, 0, 1, 8, 4, 9, 0, 0, 1, 1, 0, 1, 7, 1, 0, 6968575, 0, 0, 0, 1, 3, 0, 7, 1, 0, 0, 2, 1, 0, 1, 3, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 13, 6, 0, 13, 1, 0, 1, 0, 6, 0, 1, 1, 2, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 0, 18, 1, 2, 0, 0, 1, 0, 1, 0, 1, 3, 2, 1, 0, 0, 0, 6, 5, 0, 0, 0, 2, 120, 2, 1, 6, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 76, 1, 1, 0, 0, 1, 6, 2, 3, 1, 1, 0, 1, 1, 13, 4, 1, 1, 2, 0, 2, 26, 1, 1, 3, 4, 1, 2, 1, 1, 3, 1, 1, 1, 1, 1, 9, 2, 0, 0, 1, 2, 1, 4, 1, 1, 11, 0, 2, 6, 0, 1, 0, 4, 9, 1, 1, 2, 0, 1, 5, 27, 9332522, 3976984, 6953317, 243, 174}
{150, 441, 415, 156, 713, 685, 451, 245, 350, 92, 299, 411, 835, 564, 947, 241, 812, 907, 1000, 642, 427, 297, 707, 359, 663, 388, 625, 881, 611, 651, 211, 797, 670, 28, 783, 198, 104, 620, 125, 59, 134, 95, 532, 548, 939, 819, 980, 96, 104, 838, 840, 1, 246, 428, 868, 549, 173, 313, 25, 583, 583, 691, 318, 561, 682, 292, 218, 433, 819, 683, 228, 593, 584, 548, 968, 450, 548, 32, 160, 538, 52, 631, 678, 674, 674, 45, 673, 723, 523, 270, 865, 542, 948, 595, 778, 933, 818, 381, 383, 292, 174, 54, 503, 432, 926, 633, 588, 519, 959, 775, 643, 323, 346, 181, 747, 529, 956, 151, 172, 763, 572, 976, 498, 6, 284, 518, 69, 406, 654, 714, 455, 115, 996, 329, 712, 682, 190, 460, 694, 655, 969, 978, 319, 211, 572, 11, 528, 722, 818, 358, 715, 120, 368, 105, 92, 180, 887, 838, 973, 42, 97, 403, 377, 342, 124, 402, 34, 824, 720, 328, 232, 631, 213, 718, 870, 202, 808, 642, 827, 737, 667, 101, 392, 628, 793, 713, 455, 280, 180, 930, 598, 65, 711, 353, 144, 426, 466, 628, 196, 51, 626, 186, 342, 167, 63, 28, 30, 1, 1, 1, 2, 2}
Returns: 463994790
{596, 103, 631, 222, 77, 74, 307, 130, 151, 163, 238, 97, 17, 119, 812, 40, 65, 137, 633, 10, 420, 250, 477, 447, 50, 164, 272, 452, 78, 123, 128, 261, 106, 178, 459, 183, 665, 106, 74, 755, 96, 265, 394, 180, 84, 30, 691, 159, 8, 1, 173, 7, 266, 94, 686, 248, 178, 206, 29, 108, 407, 238, 167, 931, 988, 469, 318, 245, 439, 531, 932, 109, 228, 9, 276, 276, 150, 333, 161, 529, 847, 680, 642, 36, 37, 83, 157, 239, 4, 29, 379, 664, 174, 176, 844, 165, 454, 104, 145, 38, 249, 150, 469, 662, 656, 7, 202, 109, 26, 176, 269, 36, 25, 944, 757, 979, 253, 88, 689, 576, 551, 2, 860, 90, 367, 190, 164, 113, 10, 412, 98, 98, 31, 453, 72, 489, 71, 754, 24, 20, 433, 17, 38, 547, 9, 252, 892, 7, 49, 5, 191, 57, 527, 1, 720, 21, 63, 478, 570, 40, 99, 104, 51, 180, 940, 986, 79, 638, 34, 3, 282, 269, 119, 130, 9, 137, 227, 87, 664, 74, 128, 241, 159, 282, 743, 450, 143, 72, 2, 18, 88, 75, 22, 224, 253, 909, 190, 9, 302, 14, 215, 87, 886, 322}
{0, 2, 0, 1, 2, 4, 1, 1, 5, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 2, 0, 1, 1, 9, 0, 1, 7, 1, 2, 0, 82, 1, 0, 1, 1, 1, 0, 1, 0, 1, 2, 2, 180, 0, 0, 1, 1, 1, 2, 0, 4, 0, 0, 0, 1, 1, 2, 2, 1, 1, 0, 0, 1, 1, 1, 3, 0, 0, 1, 3, 44, 8, 1, 1, 0, 1, 0, 0, 0, 0, 1, 1, 6, 3, 5, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 2, 0, 0, 2, 2, 1, 1, 2, 1, 0, 3, 1, 0, 16, 0, 0, 15, 0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 31, 0, 5, 5, 1, 1, 2, 0, 2, 0, 1, 2, 0, 7, 1, 3, 4, 1, 0, 1, 1, 1, 1, 1, 3, 1, 0, 1, 1, 1, 0, 1, 12, 3, 1, 4, 0, 0, 2, 2, 1, 14, 0, 0, 2, 0, 2, 1, 1, 1, 1, 1, 7, 1, 1, 2, 0, 0, 0, 1, 1, 1, 0, 9, 1, 5, 0, 0, 1, 2, 3, 8, 18, 893, 8593954, 2205058}
{784, 378, 981, 500, 443, 164, 198, 762, 150, 720, 543, 511, 310, 511, 566, 636, 810, 576, 242, 210, 677, 526, 73, 331, 558, 779, 25, 343, 832, 120, 360, 237, 274, 10, 384, 397, 247, 692, 739, 836, 826, 387, 587, 405, 444, 6, 487, 613, 986, 826, 669, 466, 244, 137, 504, 789, 544, 660, 561, 391, 266, 139, 759, 310, 376, 428, 557, 42, 152, 235, 507, 879, 135, 21, 75, 517, 642, 654, 820, 665, 638, 198, 694, 886, 882, 141, 130, 79, 981, 632, 730, 629, 639, 672, 651, 787, 422, 603, 603, 945, 719, 378, 376, 509, 137, 446, 683, 697, 215, 215, 894, 254, 941, 767, 6, 994, 932, 56, 346, 402, 987, 999, 976, 590, 336, 549, 778, 350, 19, 640, 65, 136, 902, 195, 24, 520, 338, 709, 977, 491, 244, 112, 676, 147, 237, 256, 169, 994, 640, 248, 698, 940, 119, 939, 823, 757, 791, 377, 881, 448, 76, 57, 922, 202, 543, 563, 356, 133, 892, 65, 887, 872, 421, 347, 476, 802, 759, 510, 204, 466, 96, 457, 717, 331, 606, 541, 700, 492, 991, 882, 822, 102, 956, 141, 303, 938, 538, 436, 135, 119, 8, 2, 1, 1}
Returns: 153999177
{83, 242, 115, 8, 880, 449, 834, 154, 744, 995, 29, 374, 434, 199, 213, 833, 126, 804, 61, 249, 368, 54, 13, 17, 308, 259, 549, 205, 23, 413, 322, 276, 19, 822, 599, 21, 912, 24, 512, 2, 117, 391, 13, 670, 46, 100, 178, 74, 599, 320, 223, 15, 201, 148, 73, 32, 988, 966, 345, 212, 720, 929, 622, 228, 302, 147, 549, 245, 309, 200, 554, 44, 5, 45, 266, 291, 280, 185, 916, 957, 211, 174, 27, 27, 533, 203, 917, 356, 332, 112, 119, 928, 196, 468, 484, 332, 179, 90, 501, 601, 919, 36, 253, 294, 182, 12, 185, 646, 365, 114, 1, 90, 62, 41, 661, 975, 798, 347, 121, 177, 49, 61, 833, 790, 19, 360, 194, 269, 56, 68, 19, 99, 215, 905, 411, 30, 504, 431, 2, 180, 390, 137, 656, 191, 266, 163, 39, 16, 209, 188, 37, 261, 592, 387, 323, 78, 725, 295, 47, 388, 171, 464, 96, 35, 916, 675, 766, 933, 369, 4, 253, 550, 266, 97, 99, 476, 837, 132, 167, 930, 110, 56, 36, 351, 192, 174, 120, 19, 76, 685, 108, 351, 795, 632, 195, 116, 419, 33, 97, 54, 174, 468, 659, 846, 229, 83, 549, 16, 176, 304, 509, 916, 327, 713, 73, 188, 10, 10, 143, 36}
{2, 1, 2, 0, 0, 0, 0, 2, 0, 0, 1, 668626, 1, 0, 1, 0, 0, 1, 0, 0, 1, 5, 1, 38, 3, 1, 0, 1, 1, 0, 0, 1, 2, 0, 3, 2, 0, 2, 2, 1, 1, 1, 8, 0, 1, 4, 0, 3, 0, 0, 1, 0, 2, 2, 1, 3, 0, 0, 6, 5, 0, 0, 0, 0, 2, 1, 2, 4, 0, 2, 4, 11, 1, 0, 1, 4, 2, 1, 0, 0, 1, 0, 1, 1, 1, 0, 0, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 0, 2, 1, 4, 1, 1, 5, 0, 0, 6, 1, 1, 0, 4, 0, 0, 0, 3, 17, 1, 2, 6, 0, 0, 0, 0, 5, 1, 1, 7, 0, 1, 0, 0, 0, 2, 1, 2, 2, 6, 0, 1, 0, 12, 7, 2, 1, 1, 3, 1, 2, 2, 0, 1, 4, 1, 0, 1, 1, 15, 3, 0, 9, 2, 0, 1, 0, 0, 0, 1, 1, 1, 4, 6, 0, 3, 0, 0, 2, 0, 1, 4, 87, 1, 1, 2, 2, 0, 1, 6, 1, 2, 0, 2, 1, 1, 1, 1, 1, 0, 1, 11, 4, 4, 3, 1, 3, 0, 0, 6, 3, 0, 30, 3, 84, 13, 39, 719, 64, 136}
{189, 414, 429, 771, 297, 734, 447, 304, 789, 917, 905, 1, 301, 915, 784, 173, 566, 149, 567, 901, 477, 187, 894, 26, 218, 647, 591, 187, 926, 512, 869, 625, 471, 858, 115, 484, 902, 210, 209, 980, 784, 228, 124, 355, 195, 225, 850, 265, 773, 106, 573, 682, 335, 417, 875, 318, 398, 759, 95, 90, 923, 873, 417, 668, 318, 770, 167, 173, 876, 295, 31, 62, 966, 555, 546, 46, 272, 426, 572, 812, 592, 252, 945, 633, 347, 734, 493, 645, 365, 886, 613, 656, 335, 525, 683, 293, 704, 884, 365, 875, 631, 389, 546, 71, 121, 983, 148, 722, 814, 80, 988, 724, 528, 219, 184, 706, 561, 122, 38, 490, 189, 143, 880, 280, 650, 565, 159, 726, 420, 54, 645, 881, 861, 530, 304, 480, 496, 95, 498, 114, 514, 335, 363, 64, 85, 279, 738, 568, 189, 757, 462, 316, 496, 481, 83, 244, 949, 566, 954, 39, 189, 64, 48, 408, 335, 287, 879, 917, 582, 993, 625, 317, 88, 144, 279, 126, 828, 790, 389, 634, 829, 121, 12, 199, 681, 365, 432, 274, 801, 51, 821, 164, 387, 143, 349, 856, 541, 884, 885, 905, 760, 19, 45, 32, 129, 733, 98, 909, 617, 115, 114, 95, 19, 95, 12, 49, 22, 2, 11, 4}
Returns: 758307613
{45, 176, 3, 124, 189, 16, 3, 5, 11, 33, 216, 151, 46, 137, 7, 314, 83, 134, 98, 386, 305, 377, 164, 399, 182, 153, 27, 222, 144, 1, 33, 38, 48, 380, 6, 42, 294, 244, 184, 448, 319, 322, 229, 331, 169, 150, 105, 136, 52, 35, 179, 1, 69, 1, 5, 299, 251, 369, 242, 38, 150, 37, 196, 63, 15, 47, 39, 62, 65, 129, 16, 235, 125, 171, 304, 27, 354, 126, 52, 259, 400, 376, 3, 57, 474, 89, 120, 378, 44, 138, 99, 151, 56, 172, 60, 51, 152, 313, 39, 22, 218, 223, 206, 150, 95, 198, 43, 442, 113, 67, 21, 440, 71, 87, 117, 68, 58, 22, 4, 215, 340, 270, 26, 479, 369, 373, 2, 185, 36, 140, 368, 126, 1, 142, 255, 437, 178, 131, 218, 5, 43, 289, 328, 39, 297, 488, 431, 117, 79, 337, 288, 106, 214, 486, 139, 424, 272, 32, 33, 376, 45, 339, 42, 35, 477, 16, 138, 415, 191, 444, 442, 5, 182, 71, 498, 9, 12, 497, 3, 200, 49, 57, 402, 84, 170, 133, 444, 13, 243, 15, 9, 99, 24, 413, 370, 12, 105, 300, 127, 450, 13, 497, 2, 8, 136, 421, 216, 279, 16, 6, 14, 130, 462, 455, 297, 258, 304, 89, 294, 51, 164, 68, 407, 115, 221, 46, 369, 204, 486, 231, 64, 288, 3, 88, 303, 34, 54, 165, 211, 151, 10, 105, 42, 230, 258, 112, 50, 93, 25, 190, 128, 378, 198, 162, 79, 13, 25, 95, 51, 194, 76, 30, 160, 40, 141, 352, 292, 428, 364, 48, 71, 75, 26, 241, 298, 15, 235, 1, 492, 52, 388, 91, 347, 18, 311, 65, 78, 48, 215, 32, 41, 41, 22, 428, 13, 492, 27, 16, 187, 269, 2, 465, 86, 230, 17, 276, 40, 365, 257, 116, 313, 139, 24, 51, 1, 8, 210, 477, 44, 398, 225, 236, 301, 452, 373, 341, 15, 186, 206, 484, 61, 57, 227, 85, 80, 196, 357, 414, 133, 60, 150, 114, 35, 76, 459, 285, 58, 144, 239, 176, 349, 298, 199, 35, 145, 6, 345, 318, 27, 139, 480, 420, 208, 2, 57, 47, 37, 261, 122, 154, 202, 18, 9, 30, 280, 205, 448, 199, 59, 382, 475, 8, 136, 34, 280, 271, 54, 237, 2, 89, 138, 298, 69, 24, 61, 328, 179, 249, 254, 213, 14, 87}
{1, 1, 2, 1, 1, 0, 2, 1, 2, 2, 0, 1, 1, 1, 1, 1, 2, 1, 2, 0, 0, 0, 2, 0, 1, 0, 2, 2, 2, 1, 1, 1, 1, 0, 1, 1, 0, 1, 2, 0, 1, 1, 2, 0, 0, 2, 1, 0, 0, 2, 2, 1, 0, 2, 1, 0, 0, 2, 0, 0, 2, 1, 0, 1, 1, 2, 1, 1, 0, 1, 2, 0, 1, 0, 0, 0, 2, 1, 2, 2, 2, 0, 2, 1, 0, 1, 0, 0, 2, 0, 0, 0, 0, 2, 1, 1, 0, 0, 1, 2, 1, 0, 1, 1, 1, 1, 1, 1, 2, 1, 2, 0, 0, 0, 1, 1, 1, 1, 2, 2, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 2, 1, 0, 2, 2, 0, 0, 2, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 2, 0, 1, 1, 0, 1, 2, 0, 0, 0, 0, 1, 1, 2, 0, 1, 1, 0, 1, 2, 0, 1, 0, 1, 1, 2, 0, 1, 0, 0, 1, 1, 2, 0, 1, 0, 0, 0, 0, 0, 1, 0, 2, 1, 0, 0, 1, 0, 0, 2, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 0, 1, 2, 2, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 2, 0, 0, 2, 2, 1, 1, 1, 0, 0, 1, 1, 0, 1, 2, 0, 0, 0, 0, 2, 2, 0, 1, 0, 0, 1, 2, 1, 0, 1, 0, 1, 2, 1, 0, 1, 0, 1, 1, 1, 2, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 2, 2, 0, 1, 2, 0, 2, 1, 2, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 1, 0, 2, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 2, 0, 2, 0, 2, 0, 1, 2, 2, 2, 1, 0, 0, 1, 0, 0, 1, 0, 2, 2, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 1, 0, 1, 1, 0, 1, 0, 2, 0, 0, 1, 2, 1, 0, 0, 1, 0, 2, 1, 0, 2, 1, 1, 1, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 2, 1}
{455, 307, 196, 162, 232, 433, 210, 90, 244, 234, 498, 324, 454, 315, 494, 172, 151, 280, 141, 385, 289, 319, 95, 417, 316, 141, 165, 135, 82, 426, 244, 283, 445, 29, 459, 271, 335, 105, 43, 400, 2, 167, 57, 307, 167, 36, 305, 499, 341, 191, 141, 499, 163, 248, 483, 466, 206, 50, 383, 193, 98, 178, 281, 390, 453, 219, 224, 378, 150, 365, 240, 154, 272, 413, 194, 134, 13, 57, 104, 75, 28, 468, 238, 236, 419, 190, 39, 461, 174, 384, 439, 161, 255, 111, 389, 314, 404, 59, 117, 72, 217, 424, 148, 305, 106, 236, 391, 30, 191, 304, 204, 126, 199, 274, 245, 248, 255, 462, 243, 137, 424, 294, 305, 297, 118, 216, 432, 291, 325, 342, 482, 169, 166, 212, 192, 23, 143, 74, 61, 248, 282, 331, 432, 461, 392, 331, 463, 298, 178, 227, 153, 356, 365, 412, 490, 326, 5, 489, 397, 311, 33, 329, 341, 427, 313, 274, 165, 146, 436, 425, 220, 478, 33, 109, 409, 363, 372, 220, 340, 114, 369, 387, 144, 303, 327, 83, 119, 378, 467, 452, 486, 171, 96, 327, 114, 415, 264, 116, 169, 318, 363, 18, 246, 311, 388, 497, 116, 247, 351, 247, 398, 410, 406, 210, 120, 80, 77, 364, 40, 173, 110, 405, 303, 292, 379, 271, 227, 74, 247, 238, 31, 207, 484, 123, 77, 369, 289, 69, 344, 262, 293, 90, 110, 40, 321, 49, 316, 402, 470, 16, 184, 71, 401, 28, 98, 483, 472, 391, 305, 266, 153, 203, 491, 428, 167, 248, 18, 395, 333, 196, 43, 266, 171, 146, 383, 481, 5, 500, 109, 73, 319, 346, 47, 449, 215, 390, 207, 243, 21, 445, 196, 387, 423, 265, 327, 32, 164, 470, 184, 138, 273, 310, 77, 65, 287, 78, 205, 46, 122, 305, 61, 212, 263, 321, 489, 262, 143, 72, 399, 54, 229, 8, 160, 347, 2, 368, 324, 498, 45, 115, 204, 227, 220, 329, 447, 311, 12, 393, 41, 493, 65, 343, 465, 154, 3, 83, 348, 312, 213, 276, 286, 353, 171, 359, 61, 222, 434, 196, 15, 254, 138, 235, 243, 404, 220, 100, 430, 428, 164, 167, 405, 411, 23, 212, 291, 356, 13, 85, 29, 365, 370, 60, 119, 206, 172, 359, 205, 210, 338, 82, 344, 233, 132, 304, 349, 325, 53, 98, 134, 423, 198, 51}
Returns: 157499947
{20, 441, 209, 153, 172, 307, 141, 31, 64, 148, 77, 8, 120, 37, 21, 120, 102, 114, 185, 38, 1, 79, 230, 404, 212, 120, 32, 92, 87, 406, 339, 92, 200, 46, 309, 150, 465, 54, 197, 249, 461, 23, 193, 358, 12, 50, 33, 150, 499, 38, 105, 91, 196, 172, 277, 37, 53, 43, 159, 209, 350, 199, 80, 95, 61, 54, 60, 91, 175, 196, 204, 415, 236, 249, 182, 21, 159, 414, 416, 294, 158, 10, 180, 55, 230, 54, 10, 233, 11, 306, 252, 174, 236, 57, 55, 98, 22, 75, 189, 10, 193, 69, 372, 269, 26, 114, 118, 355, 13, 220, 127, 60, 19, 105, 20, 246, 53, 59, 30, 458, 87, 388, 393, 225, 286, 38, 293, 2, 13, 33, 287, 176, 53, 2, 69, 17, 54, 75, 331, 112, 54, 118, 277, 53, 259, 7, 372, 475, 62, 11, 368, 148, 66, 182, 151, 34, 387, 252, 1, 157, 43, 184, 128, 458, 453, 228, 151, 124, 56, 59, 134, 280, 32, 202, 157, 102, 43, 38, 382, 156, 7, 63, 397, 10, 48, 351, 175, 69, 10, 382, 187, 9, 41, 472, 385, 383, 40, 52, 64, 111, 220, 78, 184, 27, 163, 156, 24, 460, 269, 70, 82, 2, 9, 252, 225, 309, 10, 12, 228, 196, 420, 55, 386, 200, 230, 105, 4, 450, 122, 168, 25, 74, 4, 115, 160, 85, 24, 167, 196, 18, 34, 145, 284, 423, 369, 15, 65, 55, 224, 42, 133, 150, 358, 451, 35, 41, 79, 469, 124, 74, 71, 12, 448, 19, 181, 58, 417, 382, 273, 184, 281, 43, 59, 57, 231, 217, 79, 240, 106, 23, 86, 442, 125, 206, 90, 103, 6, 181, 447, 93, 356, 27, 238, 50, 440, 201, 212, 307, 192, 491, 115, 297, 21, 388, 105, 69, 418, 53, 73, 42, 195, 5, 203, 333, 100, 95, 285, 132, 121, 185, 109, 17, 148, 237, 72, 118, 164, 438, 7, 4, 46, 100, 19, 78, 68, 7, 81, 173, 295, 41, 457, 293, 25, 150, 40, 124, 18, 51, 359, 453, 38, 229, 292, 158, 85, 46, 409, 22, 2, 350, 144, 31, 371, 129, 196, 362, 28, 468, 307, 15, 478, 9, 35, 145, 189, 39, 430, 35, 400, 364, 261, 32, 56, 31, 240, 51, 238, 109, 218, 147, 46, 149, 275, 225, 8, 27, 65, 273, 139, 7, 483, 13, 441, 231, 2, 174, 38, 6, 93, 107, 20, 40, 11, 221, 196, 101, 116, 1, 106, 173, 435}
{0, 0, 0, 1, 1, 0, 1, 1, 2, 0, 1, 2, 1, 1, 1, 0, 0, 1, 2, 2, 2, 2, 1, 0, 1, 2, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 2, 0, 2, 0, 1, 1, 0, 1, 1, 1, 2, 0, 1, 1, 1, 1, 2, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 1, 1, 2, 0, 0, 0, 1, 1, 1, 1, 1, 2, 1, 1, 0, 1, 0, 0, 0, 1, 1, 1, 2, 2, 0, 1, 2, 1, 1, 0, 1, 1, 1, 1, 2, 1, 1, 2, 1, 1, 0, 2, 0, 1, 1, 1, 0, 2, 0, 2, 0, 0, 2, 0, 0, 1, 1, 0, 1, 0, 1, 1, 2, 0, 2, 0, 0, 1, 0, 0, 1, 2, 2, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 2, 0, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1, 2, 1, 0, 1, 1, 1, 1, 0, 1, 2, 0, 1, 2, 0, 0, 0, 1, 0, 2, 1, 1, 0, 1, 1, 2, 0, 1, 1, 0, 1, 1, 1, 2, 2, 1, 0, 0, 1, 2, 1, 1, 0, 1, 0, 1, 2, 2, 1, 2, 0, 0, 2, 1, 1, 2, 1, 0, 0, 2, 2, 1, 1, 0, 2, 1, 2, 0, 1, 2, 2, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 2, 2, 1, 0, 0, 2, 1, 0, 1, 0, 2, 2, 0, 0, 0, 0, 0, 2, 2, 1, 0, 0, 0, 1, 1, 2, 0, 2, 0, 1, 1, 1, 0, 1, 2, 0, 1, 1, 2, 0, 1, 1, 2, 2, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 0, 1, 1, 2, 1, 0, 0, 1, 1, 2, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 2, 1, 1, 1, 0, 1, 1, 1, 0, 0, 0, 2, 0, 0, 0, 0, 1, 2, 1, 0, 2, 2, 1, 1, 1, 1, 0, 1, 2, 0, 1, 1, 0, 0, 2, 2, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 2, 1, 2, 0, 0, 1, 1, 0, 0, 1, 1, 0, 1, 2, 1, 2, 0, 0, 1, 2, 2, 0, 1, 1, 0, 1, 0, 0, 2, 1, 1, 0, 1, 1, 1, 1, 2, 1, 0, 2, 0, 1, 2, 1, 1}
{128, 454, 476, 319, 290, 46, 296, 138, 188, 390, 239, 65, 247, 411, 236, 499, 279, 385, 90, 210, 78, 166, 270, 371, 27, 155, 454, 477, 409, 65, 33, 139, 95, 210, 109, 103, 75, 42, 70, 46, 357, 363, 297, 148, 306, 285, 390, 132, 461, 243, 83, 308, 80, 142, 189, 157, 239, 401, 38, 23, 332, 297, 266, 269, 354, 372, 210, 20, 305, 449, 237, 335, 215, 149, 100, 2, 275, 9, 302, 117, 318, 297, 289, 418, 2, 367, 406, 287, 480, 31, 39, 7, 162, 282, 370, 195, 238, 47, 261, 200, 306, 337, 121, 158, 92, 384, 316, 7, 312, 8, 37, 12, 107, 26, 162, 272, 344, 424, 272, 284, 189, 289, 9, 395, 110, 86, 180, 137, 77, 402, 32, 9, 323, 423, 411, 139, 60, 172, 375, 358, 107, 471, 276, 243, 21, 98, 85, 272, 365, 486, 34, 255, 275, 195, 333, 379, 51, 485, 495, 329, 282, 169, 256, 444, 460, 162, 52, 122, 320, 216, 132, 131, 82, 292, 392, 391, 439, 360, 69, 218, 328, 196, 480, 276, 151, 231, 30, 392, 462, 242, 61, 486, 411, 47, 4, 94, 228, 235, 354, 256, 260, 354, 272, 467, 33, 156, 411, 271, 416, 276, 182, 492, 492, 177, 91, 200, 437, 183, 98, 206, 13, 263, 394, 81, 239, 364, 241, 28, 287, 476, 226, 131, 335, 358, 43, 208, 194, 120, 447, 470, 214, 113, 81, 12, 156, 102, 206, 142, 80, 366, 374, 267, 329, 5, 214, 454, 40, 466, 56, 334, 474, 396, 437, 91, 94, 460, 392, 270, 192, 425, 12, 199, 440, 72, 305, 477, 417, 51, 54, 100, 197, 224, 218, 198, 411, 128, 108, 56, 34, 222, 118, 216, 493, 244, 5, 136, 133, 116, 9, 158, 269, 189, 449, 395, 272, 383, 344, 358, 259, 418, 37, 310, 146, 134, 298, 202, 192, 247, 176, 201, 324, 475, 166, 265, 66, 112, 278, 131, 462, 485, 225, 288, 158, 399, 254, 483, 341, 242, 435, 456, 373, 20, 53, 337, 242, 360, 375, 225, 65, 408, 24, 1, 173, 52, 371, 446, 342, 473, 246, 420, 277, 455, 29, 348, 51, 61, 428, 280, 413, 484, 53, 290, 440, 243, 298, 443, 8, 296, 13, 416, 361, 429, 434, 418, 84, 409, 240, 199, 266, 137, 297, 111, 97, 306, 390, 91, 7, 403, 235, 493, 368, 363, 458, 52, 91, 218, 372, 283, 30, 171, 260, 221, 220, 268, 84, 130, 10, 29, 10, 11, 5}
Returns: 653516204
{200, 234, 16, 50, 381, 17, 14, 44, 372, 121, 385, 20, 4, 193, 59, 26, 407, 117, 53, 113, 1, 481, 361, 460, 441, 89, 21, 133, 3, 2, 7, 346, 84, 131, 457, 176, 2, 178, 37, 465, 87, 181, 349, 202, 345, 165, 254, 29, 39, 29, 138, 134, 252, 78, 319, 232, 11, 96, 76, 345, 277, 135, 16, 10, 470, 120, 46, 408, 355, 456, 287, 36, 6, 205, 64, 65, 82, 404, 128, 19, 34, 37, 25, 19, 74, 41, 260, 391, 237, 183, 171, 386, 126, 129, 112, 182, 314, 82, 291, 161, 45, 392, 162, 47, 37, 22, 17, 147, 36, 424, 162, 104, 111, 36, 399, 162, 297, 25, 184, 331, 258, 321, 28, 3, 171, 166, 89, 194, 227, 2, 150, 427, 304, 460, 154, 123, 240, 438, 2, 85, 114, 233, 25, 105, 222, 399, 129, 398, 8, 73, 6, 174, 199, 173, 134, 177, 490, 379, 382, 138, 152, 273, 88, 104, 338, 302, 25, 291, 3, 4, 233, 250, 195, 134, 455, 11, 7, 169, 85, 51, 12, 6, 18, 61, 478, 173, 76, 453, 277, 117, 40, 433, 50, 27, 93, 225, 65, 325, 274, 144, 133, 92, 265, 105, 234, 301, 353, 17, 405, 481, 151, 306, 342, 8, 470, 77, 263, 68, 25, 465, 209, 79, 79, 425, 24, 296, 292, 371, 82, 9, 94, 139, 6, 15, 454, 401, 362, 115, 144, 200, 424, 122, 208, 361, 47, 21, 355, 158, 85, 2, 86, 30, 283, 32, 5, 42, 52, 25, 64, 302, 3, 494, 482, 121, 194, 119, 269, 83, 191, 66, 330, 82, 363, 158, 112, 90, 333, 16, 12, 74, 184, 53, 80, 43, 255, 399, 2, 196, 429, 123, 104, 217, 312, 158, 417, 141, 404, 3, 84, 346, 319, 378, 153, 235, 149, 119, 212, 36, 77, 113, 498, 144, 33, 243, 231, 29, 456, 81, 179, 482, 46, 85, 1, 1, 1, 90, 88, 94, 359, 24, 150, 77, 103, 237, 365, 127, 32, 118, 11, 42, 56, 293, 62, 177, 30, 2, 133, 177, 48, 166, 4, 195, 201, 277, 246, 252, 107, 14, 82, 25, 342, 71, 391, 23, 128, 58, 284, 178, 498, 16, 54, 436, 438, 91, 62, 52, 389, 4, 315, 260, 204, 365}
{0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 2, 2, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 2, 0, 0, 1, 2, 0, 2, 0, 1, 0, 1, 0, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 2, 1, 1, 2, 0, 1, 0, 0, 0, 0, 0, 2, 2, 1, 0, 1, 0, 1, 0, 0, 2, 0, 2, 1, 1, 1, 0, 2, 1, 0, 1, 1, 0, 1, 0, 1, 0, 2, 0, 2, 0, 0, 2, 1, 2, 1, 2, 0, 1, 1, 1, 1, 0, 0, 1, 2, 0, 0, 1, 0, 2, 2, 1, 1, 1, 0, 1, 0, 1, 0, 1, 1, 0, 2, 2, 2, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 1, 1, 2, 1, 1, 0, 1, 1, 0, 2, 2, 0, 0, 0, 1, 0, 1, 1, 0, 2, 2, 1, 0, 1, 1, 1, 2, 1, 0, 0, 1, 2, 1, 1, 1, 2, 0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 2, 0, 2, 0, 1, 1, 1, 0, 2, 2, 0, 0, 1, 1, 0, 1, 1, 2, 0, 0, 0, 1, 2, 1, 0, 1, 1, 0, 2, 1, 0, 1, 0, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 0, 0, 0, 2, 1, 0, 0, 0, 1, 0, 2, 0, 0, 1, 0, 0, 1, 1, 2, 0, 0, 0, 1, 0, 0, 1, 1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 2, 1, 1, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 2, 1, 2, 0, 1, 1, 2, 0, 0, 1, 0, 1, 1, 1, 1, 2, 0, 0, 1, 0, 1, 0, 0, 0, 0, 2, 2, 1, 2, 1, 0, 1, 2, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 0, 0, 0, 1, 1, 2, 0, 2, 0, 1, 1, 0, 1, 2, 1, 2, 0, 0, 2, 1, 2, 0}
{96, 135, 67, 294, 330, 481, 427, 435, 89, 51, 184, 257, 475, 144, 321, 335, 158, 428, 254, 256, 345, 466, 493, 381, 37, 250, 276, 214, 215, 103, 476, 338, 407, 12, 183, 495, 256, 207, 284, 388, 392, 98, 280, 121, 7, 140, 251, 201, 415, 304, 52, 163, 491, 48, 41, 175, 379, 338, 178, 471, 112, 151, 452, 429, 23, 361, 157, 320, 175, 56, 356, 373, 362, 205, 117, 411, 475, 145, 256, 488, 36, 432, 389, 236, 176, 374, 346, 124, 414, 386, 496, 11, 134, 13, 438, 34, 406, 377, 448, 191, 156, 388, 154, 411, 248, 442, 202, 36, 460, 420, 276, 391, 398, 366, 459, 228, 194, 201, 213, 37, 375, 477, 55, 495, 110, 148, 175, 235, 240, 495, 251, 61, 158, 23, 29, 183, 429, 276, 341, 366, 181, 87, 406, 374, 198, 438, 111, 491, 491, 360, 490, 269, 293, 159, 134, 141, 246, 291, 265, 157, 367, 426, 472, 351, 447, 412, 442, 18, 243, 486, 92, 219, 300, 212, 354, 161, 239, 378, 254, 31, 290, 473, 455, 217, 428, 60, 82, 34, 387, 314, 249, 50, 188, 472, 57, 60, 346, 21, 155, 241, 331, 201, 424, 28, 88, 444, 140, 474, 265, 65, 278, 180, 415, 315, 277, 417, 71, 474, 20, 286, 242, 399, 299, 460, 229, 99, 492, 144, 293, 463, 262, 346, 34, 239, 4, 206, 191, 359, 142, 61, 399, 348, 280, 171, 222, 364, 239, 280, 110, 143, 343, 383, 296, 426, 452, 293, 420, 436, 431, 145, 245, 64, 47, 357, 13, 18, 343, 479, 37, 262, 143, 163, 432, 166, 387, 283, 491, 484, 489, 58, 93, 421, 266, 101, 246, 308, 352, 153, 53, 184, 7, 386, 84, 194, 251, 16, 379, 248, 246, 1, 498, 317, 276, 485, 80, 384, 429, 459, 317, 246, 396, 167, 370, 102, 102, 392, 42, 50, 402, 288, 408, 235, 484, 496, 500, 25, 200, 309, 205, 412, 489, 398, 473, 261, 163, 35, 105, 154, 75, 201, 415, 38, 224, 140, 348, 499, 294, 256, 325, 261, 492, 434, 221, 386, 165, 378, 420, 410, 160, 208, 437, 94, 484, 399, 336, 73, 183, 48, 312, 308, 437, 170, 9, 190, 414, 112, 1, 18, 22, 8, 9, 4}
Returns: 864630169
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}
{0, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1, 1, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0}
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}
Returns: 500
{5439894, 8189145, 3593398, 9451965, 9351052, 2802662}
{0, 1, 0, 1, 0, 1}
{33062, 34888, 31762, 5, 280, 3}
Returns: 998340322
{6894936, 5545696, 6723693, 5430280, 7294255, 4595470, 8417857, 127970, 4500952, 6965726, 4134822, 5796547, 136332, 9560314, 234757, 9704896, 617643}
{0, 0, 1, 1, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 1, 1}
{20939, 60752, 780, 7746, 127, 4934, 3999, 383, 49, 56, 174, 45, 1, 2, 11, 1, 1}
Returns: 294412211
{8334827, 9286700, 990053, 8812440, 6299462, 8342652, 5775257, 4614323, 9619148, 4801841}
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
{13231, 65129, 5856, 4715, 10534, 270, 178, 33, 16, 38}
Returns: 628782604
{666521, 4818284, 8981737, 7028388, 8508950, 3517026, 1294642, 6117387, 5746743, 5896980, 2060049, 8695173, 2227229}
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
{34156, 27320, 23252, 9748, 739, 1674, 2323, 162, 543, 66, 15, 1, 1}
Returns: 299395346
{1361, 1367, 1373, 1381, 1399, 1409, 1423, 1427, 1429, 1433, 1439, 1447, 1451, 1453, 1459, 1471, 1481, 1483, 1487, 1489, 1493, 1499, 1511, 1523, 1531, 1543, 1549, 1553, 1559, 1567, 1571, 1579, 1583, 1597, 1601, 1607, 1609, 1613, 1619, 1621, 1627, 1637, 1657, 1663, 1667, 1669, 1693, 1697, 1699, 1709, 1721, 1723, 1733, 1741, 1747, 1753, 1759, 1777, 1783, 1787, 1789, 1801, 1811, 1823, 1831, 1847, 1861, 1867, 1871, 1873, 1877, 1879, 1889, 1901, 1907, 1913, 1931, 1933, 1949, 1951, 1973, 1979, 1987, 1993, 1997, 1999, 2003, 2011, 2017, 2027, 2029, 2039, 2053, 2063, 2069, 2081, 2083, 2087, 2089, 2099, 2111, 2113, 2129, 2131, 2137, 2141, 2143, 2153, 2161, 2179, 2203, 2207, 2213, 2221, 2237, 2239, 2243, 2251, 2267, 2269, 2273, 2281, 2287, 2293, 2297, 2309, 2311, 2333, 2339, 2341, 2347, 2351, 2357, 2371, 2377, 2381, 2383, 2389, 2393, 2399, 2411, 2417, 2423, 2437, 2441, 2447, 2459, 2467, 2473, 2477, 2503, 2521, 2531, 2539, 2543, 2549, 2551, 2557, 2579, 2591, 2593, 2609, 2617, 2621, 2633, 2647, 2657, 2659, 2663, 2671, 2677, 2683, 2687, 2689, 2693, 2699, 2707, 2711, 2713, 2719, 2729, 2731, 2741, 2749, 2753, 2767, 2777, 2789, 2791, 2797, 2801, 2803, 2819, 2833, 2837, 2843, 2851, 2857, 2861, 2879, 2887, 2897, 2903, 2909, 2917, 2927, 2939, 2953, 2957, 2963, 2969, 2971, 2999, 3001, 3011, 3019, 3023, 3037, 3041, 3049, 3061, 3067, 3079, 3083, 3089, 3109, 3119, 3121, 3137, 3163, 3167, 3169, 3181, 3187, 3191, 3203, 3209, 3217, 3221, 3229, 3251, 3253, 3257, 3259, 3271, 3299, 3301, 3307, 3313, 3319, 3323, 3329, 3331, 3343, 3347, 3359, 3361, 3371, 3373, 3389, 3391, 3407, 3413, 3433, 3449, 3457, 3461, 3463, 3467, 3469, 3491, 3499, 3511, 3517, 3527, 3529, 3533, 3539, 3541, 3547, 3557, 3559, 3571, 3581, 3583, 3593, 3607, 3613, 3617, 3623, 3631, 3637, 3643, 3659, 3671, 3673, 3677, 3691, 3697, 3701, 3709, 3719, 3727, 3733, 3739, 3761, 3767, 3769, 3779, 3793, 3797, 3803, 3821, 3823, 3833, 3847, 3851, 3853, 3863, 3877, 3881, 3889, 3907, 3911, 3917, 3919, 3923, 3929, 3931, 3943, 3947, 3967, 3989, 4001, 4003, 4007, 4013, 4019, 4021, 4027, 4049, 4051, 4057, 4073, 4079, 4091, 4093, 4099, 4111, 4127, 4129, 4133, 4139, 4153, 4157, 4159, 4177, 4201, 4211, 4217, 4219, 4229, 4231, 4241, 4243, 4253, 4259, 4261, 4271, 4273, 4283, 4289, 4297, 4327, 4337, 4339, 4349, 4357, 4363, 4373, 4391, 4397, 4409, 4421, 4423, 4441, 4447, 4451, 4457, 4463, 4481, 4483, 4493, 4507, 4513, 4517, 4519, 4523, 4547, 4549, 4561, 4567, 4583, 4591, 4597, 4603, 4621, 4637, 4639, 4643, 4649, 4651, 4657, 4663, 4673, 4679, 4691, 4703, 4721, 4723, 4729, 4733, 4751, 4759, 4783, 4787, 4789, 4793, 4799, 4801, 4813, 4817, 4831, 4861, 4871, 4877, 4889, 4903, 4909, 4919, 4931, 4933, 4937, 4943, 4951, 4957, 4967, 4969, 4973, 4987, 4993, 4999, 5003, 5009, 5011, 5021, 5023, 5039, 5051, 5059, 5077, 5081, 5087, 5099, 5101, 5107, 5113, 5119, 5147, 5153, 5167, 5171, 5179, 5189, 5197, 5209, 5227, 5231, 5233, 5237, 5261, 5273, 5279, 5281, 5297, 5303, 5309, 5323, 5333, 5347, 5351, 5381, 5387, 5393, 5399, 5407, 5413, 5417, 5419, 5431 }
{250, 659, 273, 879, 710, 166, 43, 504, 730, 613, 170, 158, 934, 279, 336, 827, 268, 634, 150, 822, 673, 337, 746, 92, 358, 154, 945, 491, 197, 904, 667, 25, 854, 409, 934, 982, 14, 815, 537, 670, 95, 502, 196, 405, 299, 124, 883, 567, 338, 145, 898, 829, 359, 398, 905, 232, 176, 299, 400, 413, 558, 9, 969, 531, 963, 366, 853, 822, 713, 902, 832, 58, 791, 680, 7, 99, 320, 224, 761, 127, 507, 771, 95, 845, 535, 395, 739, 591, 160, 948, 218, 540, 386, 886, 421, 969, 916, 535, 12, 153, 296, 397, 816, 34, 398, 548, 211, 212, 378, 626, 869, 777, 440, 332, 302, 561, 985, 790, 16, 770, 456, 507, 503, 109, 332, 639, 998, 850, 732, 15, 776, 181, 224, 261, 546, 526, 257, 598, 705, 151, 413, 798, 382, 66, 700, 130, 484, 608, 323, 177, 225, 367, 445, 286, 899, 134, 577, 267, 712, 615, 738, 592, 763, 198, 589, 874, 305, 201, 961, 948, 731, 547, 239, 927, 858, 115, 361, 419, 586, 16, 103, 644, 968, 270, 304, 104, 386, 460, 931, 133, 604, 921, 232, 204, 521, 259, 677, 935, 880, 575, 543, 772, 880, 971, 724, 972, 319, 300, 622, 125, 959, 772, 561, 752, 504, 802, 81, 275, 414, 26, 784, 118, 551, 196, 512, 667, 594, 566, 743, 353, 142, 201, 128, 788, 626, 518, 843, 975, 374, 912, 55, 930, 190, 357, 861, 593, 117, 868, 940, 902, 617, 672, 672, 46, 241, 454, 351, 564, 534, 828, 532, 517, 516, 602, 662, 325, 937, 16, 217, 974, 721, 170, 828, 729, 385, 950, 47, 667, 521, 992, 259, 745, 719, 826, 690, 15, 919, 30, 728, 755, 397, 84, 866, 253, 877, 676, 711, 193, 748, 300, 716, 580, 165, 502, 290, 34, 90, 218, 39, 339, 322, 497, 789, 988, 236, 685, 785, 668, 616, 977, 826, 632, 699, 640, 504, 766, 108, 366, 455, 451, 833, 142, 978, 901, 466, 623, 318, 49, 30, 709, 658, 753, 622, 997, 931, 556, 313, 428, 445, 199, 857, 304, 915, 767, 922, 753, 720, 411, 670, 944, 432, 817, 972, 371, 892, 834, 178, 684, 490, 435, 905, 892, 523, 891, 814, 128, 785, 871, 582, 803, 333, 760, 378, 11, 151, 942, 721, 113, 957, 153, 15, 919, 102, 822, 502, 962, 511, 806, 138, 97, 422, 519, 490, 55, 644, 251, 416, 495, 759, 93, 715, 61, 369, 848, 788, 235, 572, 876, 872, 294, 472, 765, 631, 81, 343, 383, 829, 576, 1, 948, 88, 734, 262, 401, 779, 424, 15, 663, 611, 219, 56, 556, 535, 322, 227, 460, 715, 880, 101, 286, 285, 916, 68, 708, 729, 364, 891, 279, 762, 841, 1, 508, 552, 432, 740, 585, 109, 455, 29, 371, 948, 544, 9, 553, 164, 20, 357, 488, 900, 245, 467, 275, 910, 835, 685, 550, 468, 590, 774, 296, 875, 232, 29, 71, 298, 647, 112, 464, 782, 231 }
{200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200 }
Returns: 74248991
{1, 1000, 1000 }
{12, 13, 14 }
{10000, 10000, 10000 }
Returns: 904528425
{9900000 }
{1 }
{100000 }
Returns: 259625295
{8000000, 8001009, 8002018, 8003027, 8004036, 8005045, 8006054, 8007063, 8008072, 8009081, 8010090, 8011099, 8012108, 8013117, 8014126, 8015135, 8016144, 8017153, 8018162, 8019171, 8020180, 8021189, 8022198, 8023207, 8024216, 8025225, 8026234, 8027243, 8028252, 8029261, 8030270, 8031279, 8032288, 8033297, 8034306, 8035315, 8036324, 8037333, 8038342, 8039351, 8040360, 8041369, 8042378, 8043387, 8044396, 8045405, 8046414, 8047423, 8048432, 8049441, 8050450, 8051459, 8052468, 8053477, 8054486, 8055495, 8056504, 8057513, 8058522, 8059531, 8060540, 8061549, 8062558, 8063567, 8064576, 8065585, 8066594, 8067603, 8068612, 8069621, 8070630, 8071639, 8072648, 8073657, 8074666, 8075675, 8076684, 8077693, 8078702, 8079711, 8080720, 8081729, 8082738, 8083747, 8084756, 8085765, 8086774, 8087783, 8088792, 8089801, 8090810, 8091819, 8092828, 8093837, 8094846, 8095855, 8096864, 8097873, 8098882, 8099891, 8100900, 8101909, 8102918, 8103927, 8104936, 8105945, 8106954, 8107963, 8108972, 8109981, 8110990, 8111999, 8113008, 8114017, 8115026, 8116035, 8117044, 8118053, 8119062, 8120071, 8121080, 8122089, 8123098, 8124107, 8125116, 8126125, 8127134, 8128143, 8129152, 8130161, 8131170, 8132179, 8133188, 8134197, 8135206, 8136215, 8137224, 8138233, 8139242, 8140251, 8141260, 8142269, 8143278, 8144287, 8145296, 8146305, 8147314, 8148323, 8149332, 8150341, 8151350, 8152359, 8153368, 8154377, 8155386, 8156395, 8157404, 8158413, 8159422, 8160431, 8161440, 8162449, 8163458, 8164467, 8165476, 8166485, 8167494, 8168503, 8169512, 8170521, 8171530, 8172539, 8173548, 8174557, 8175566, 8176575, 8177584, 8178593, 8179602, 8180611, 8181620, 8182629, 8183638, 8184647, 8185656, 8186665, 8187674, 8188683, 8189692, 8190701, 8191710, 8192719, 8193728, 8194737, 8195746, 8196755, 8197764, 8198773, 8199782, 8200791, 8201800, 8202809, 8203818, 8204827, 8205836, 8206845, 8207854, 8208863, 8209872, 8210881, 8211890, 8212899, 8213908, 8214917, 8215926, 8216935, 8217944, 8218953, 8219962, 8220971, 8221980, 8222989, 8223998, 8225007, 8226016, 8227025, 8228034, 8229043, 8230052, 8231061, 8232070, 8233079, 8234088, 8235097, 8236106, 8237115, 8238124, 8239133, 8240142, 8241151, 8242160, 8243169, 8244178, 8245187, 8246196, 8247205, 8248214, 8249223, 8250232, 8251241, 8252250, 8253259, 8254268, 8255277, 8256286, 8257295, 8258304, 8259313, 8260322, 8261331, 8262340, 8263349, 8264358, 8265367, 8266376, 8267385, 8268394, 8269403, 8270412, 8271421, 8272430, 8273439, 8274448, 8275457, 8276466, 8277475, 8278484, 8279493, 8280502, 8281511, 8282520, 8283529, 8284538, 8285547, 8286556, 8287565, 8288574, 8289583, 8290592, 8291601, 8292610, 8293619, 8294628, 8295637, 8296646, 8297655, 8298664, 8299673, 8300682, 8301691, 8302700, 8303709, 8304718, 8305727, 8306736, 8307745, 8308754, 8309763, 8310772, 8311781, 8312790, 8313799, 8314808, 8315817, 8316826, 8317835, 8318844, 8319853, 8320862, 8321871, 8322880, 8323889, 8324898, 8325907, 8326916, 8327925, 8328934, 8329943, 8330952, 8331961, 8332970, 8333979, 8334988, 8335997, 8337006, 8338015, 8339024, 8340033, 8341042, 8342051, 8343060, 8344069, 8345078, 8346087, 8347096, 8348105, 8349114, 8350123, 8351132, 8352141, 8353150, 8354159, 8355168, 8356177, 8357186, 8358195, 8359204, 8360213, 8361222, 8362231, 8363240, 8364249, 8365258, 8366267, 8367276, 8368285, 8369294, 8370303, 8371312, 8372321, 8373330, 8374339, 8375348, 8376357, 8377366, 8378375, 8379384, 8380393, 8381402, 8382411, 8383420, 8384429, 8385438, 8386447, 8387456, 8388465, 8389474, 8390483, 8391492, 8392501, 8393510, 8394519, 8395528, 8396537, 8397546, 8398555, 8399564, 8400573, 8401582, 8402591, 8403600, 8404609, 8405618, 8406627, 8407636, 8408645, 8409654, 8410663, 8411672, 8412681, 8413690, 8414699, 8415708, 8416717, 8417726, 8418735, 8419744, 8420753, 8421762, 8422771, 8423780, 8424789, 8425798, 8426807, 8427816, 8428825, 8429834, 8430843, 8431852, 8432861, 8433870, 8434879, 8435888, 8436897, 8437906, 8438915, 8439924, 8440933, 8441942, 8442951, 8443960, 8444969, 8445978, 8446987, 8447996, 8449005, 8450014, 8451023, 8452032, 8453041, 8454050, 8455059, 8456068, 8457077, 8458086, 8459095, 8460104, 8461113, 8462122, 8463131, 8464140, 8465149, 8466158, 8467167, 8468176, 8469185, 8470194, 8471203, 8472212, 8473221, 8474230, 8475239, 8476248, 8477257, 8478266, 8479275, 8480284, 8481293, 8482302, 8483311, 8484320, 8485329, 8486338, 8487347, 8488356, 8489365, 8490374, 8491383, 8492392, 8493401, 8494410, 8495419, 8496428, 8497437, 8498446, 8499455, 8500464, 8501473, 8502482, 8503491 }
{748, 780, 574, 493, 988, 927, 902, 972, 320, 916, 380, 976, 865, 456, 358, 616, 394, 992, 631, 790, 457, 984, 302, 930, 955, 422, 704, 547, 473, 892, 253, 480, 930, 537, 252, 608, 805, 821, 694, 548, 697, 895, 295, 970, 499, 360, 621, 256, 800, 515, 949, 660, 726, 866, 907, 530, 950, 372, 525, 1008, 843, 610, 321, 998, 405, 955, 530, 811, 628, 594, 934, 257, 938, 927, 717, 802, 883, 838, 984, 730, 242, 412, 726, 439, 612, 346, 420, 772, 581, 636, 908, 999, 812, 902, 932, 734, 218, 927, 359, 231, 759, 991, 783, 738, 510, 956, 817, 584, 531, 963, 485, 925, 924, 381, 917, 882, 654, 793, 494, 349, 408, 758, 990, 403, 601, 624, 395, 907, 729, 646, 441, 991, 468, 617, 248, 253, 329, 516, 652, 682, 289, 426, 624, 1009, 964, 704, 888, 327, 830, 396, 467, 345, 999, 587, 809, 404, 940, 377, 237, 543, 688, 847, 636, 854, 340, 784, 546, 871, 247, 271, 821, 596, 357, 674, 859, 573, 543, 930, 924, 967, 930, 772, 689, 774, 672, 482, 849, 482, 843, 1001, 705, 764, 488, 754, 516, 231, 575, 868, 851, 304, 762, 797, 515, 756, 249, 330, 379, 335, 751, 731, 540, 707, 943, 658, 525, 876, 613, 756, 254, 293, 392, 615, 952, 249, 951, 317, 384, 377, 896, 713, 932, 766, 523, 368, 790, 893, 409, 594, 1008, 857, 386, 567, 425, 1009, 952, 334, 655, 510, 821, 396, 294, 241, 1007, 807, 886, 759, 958, 662, 826, 643, 624, 695, 516, 891, 479, 730, 726, 260, 534, 495, 977, 984, 331, 440, 731, 518, 608, 351, 253, 671, 287, 400, 265, 466, 472, 231, 1011, 796, 882, 229, 992, 909, 496, 714, 934, 616, 221, 798, 295, 658, 579, 477, 371, 344, 379, 910, 334, 441, 608, 372, 659, 902, 486, 674, 932, 220, 235, 518, 919, 497, 242, 629, 624, 629, 643, 381, 225, 927, 574, 803, 872, 658, 227, 633, 757, 564, 794, 980, 408, 675, 994, 788, 420, 477, 511, 341, 995, 363, 220, 550, 294, 578, 591, 852, 745, 449, 499, 573, 374, 641, 897, 832, 612, 439, 444, 692, 879, 298, 413, 675, 987, 759, 573, 756, 549, 905, 1006, 347, 824, 430, 529, 788, 708, 496, 991, 1000, 372, 950, 897, 583, 511, 267, 443, 870, 262, 436, 837, 307, 639, 292, 421, 552, 514, 742, 391, 268, 380, 896, 305, 980, 660, 587, 697, 736, 1003, 796, 522, 232, 501, 659, 294, 1007, 482, 684, 516, 587, 341, 688, 793, 535, 993, 781, 961, 340, 706, 890, 872, 940, 751, 358, 761, 796, 320, 363, 1007, 375, 230, 421, 778, 271, 864, 286, 224, 983, 247, 332, 880, 298, 517, 741, 728, 604, 734, 324, 732, 670, 720, 437, 815, 904, 596, 588, 796, 283, 862, 552, 563, 409, 548, 243, 239, 356, 842, 250, 1007, 492, 355, 915, 568, 857, 394, 424, 581, 942, 722, 267, 502, 672, 951, 764 }
{200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200 }
Returns: 483957352
{65536 }
{0 }
{100000 }
Returns: 553599958