1// Copyright 2008 the V8 project authors. All rights reserved. 2// Redistribution and use in source and binary forms, with or without 3// modification, are permitted provided that the following conditions are 4// met: 5// 6// * Redistributions of source code must retain the above copyright 7// notice, this list of conditions and the following disclaimer. 8// * Redistributions in binary form must reproduce the above 9// copyright notice, this list of conditions and the following 10// disclaimer in the documentation and/or other materials provided 11// with the distribution. 12// * Neither the name of Google Inc. nor the names of its 13// contributors may be used to endorse or promote products derived 14// from this software without specific prior written permission. 15// 16// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 17// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 18// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 19// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 20// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 21// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 22// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 23// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 24// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 26// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 28var x; 29 30// Converts a number to string respecting -0. 31function stringify(n) { 32 if ((1 / n) === -Infinity) return "-0"; 33 return String(n); 34} 35 36function f(expected, y) { 37 function testEval(string, x, y) { 38 var mulFunction = Function("x, y", "return " + string); 39 return mulFunction(x, y); 40 } 41 function mulTest(expected, x, y) { 42 assertEquals(expected, x * y); 43 assertEquals(expected, testEval(stringify(x) + " * y", x, y)); 44 assertEquals(expected, testEval("x * " + stringify(y), x, y)); 45 assertEquals(expected, testEval(stringify(x) + " * " + stringify(y), x, y)); 46 } 47 mulTest(expected, x, y); 48 mulTest(-expected, -x, y); 49 mulTest(-expected, x, -y); 50 mulTest(expected, -x, -y); 51 if (x === y) return; // Symmetric cases not necessary. 52 mulTest(expected, y, x); 53 mulTest(-expected, -y, x); 54 mulTest(-expected, y, -x); 55 mulTest(expected, -y, -x); 56} 57 58x = 0; 59f(0, 0); 60x = 1; 61f(0, 0); 62f(1, 1); 63x = 2; 64f(0, 0); 65f(2, 1); 66f(4, 2); 67x = 3; 68f(0, 0); 69f(3, 1); 70f(6, 2); 71f(9, 3); 72x = 4; 73f(0, 0); 74f(4, 1); 75f(8, 2); 76f(12, 3); 77f(16, 4); 78x = 5; 79f(0, 0); 80f(5, 1); 81f(10, 2); 82f(15, 3); 83f(20, 4); 84f(25, 5); 85x = 7; 86f(0, 0); 87f(7, 1); 88f(14, 2); 89f(21, 3); 90f(28, 4); 91f(35, 5); 92f(49, 7); 93x = 8; 94f(0, 0); 95f(8, 1); 96f(16, 2); 97f(24, 3); 98f(32, 4); 99f(40, 5); 100f(56, 7); 101f(64, 8); 102x = 9; 103f(0, 0); 104f(9, 1); 105f(18, 2); 106f(27, 3); 107f(36, 4); 108f(45, 5); 109f(63, 7); 110f(72, 8); 111f(81, 9); 112x = 15; 113f(0, 0); 114f(15, 1); 115f(30, 2); 116f(45, 3); 117f(60, 4); 118f(75, 5); 119f(105, 7); 120f(120, 8); 121f(135, 9); 122f(225, 15); 123x = 16; 124f(0, 0); 125f(16, 1); 126f(32, 2); 127f(48, 3); 128f(64, 4); 129f(80, 5); 130f(112, 7); 131f(128, 8); 132f(144, 9); 133f(240, 15); 134f(256, 16); 135x = 17; 136f(0, 0); 137f(17, 1); 138f(34, 2); 139f(51, 3); 140f(68, 4); 141f(85, 5); 142f(119, 7); 143f(136, 8); 144f(153, 9); 145f(255, 15); 146f(272, 16); 147f(289, 17); 148x = 31; 149f(0, 0); 150f(31, 1); 151f(62, 2); 152f(93, 3); 153f(124, 4); 154f(155, 5); 155f(217, 7); 156f(248, 8); 157f(279, 9); 158f(465, 15); 159f(496, 16); 160f(527, 17); 161f(961, 31); 162x = 32; 163f(0, 0); 164f(32, 1); 165f(64, 2); 166f(96, 3); 167f(128, 4); 168f(160, 5); 169f(224, 7); 170f(256, 8); 171f(288, 9); 172f(480, 15); 173f(512, 16); 174f(544, 17); 175f(992, 31); 176f(1024, 32); 177x = 33; 178f(0, 0); 179f(33, 1); 180f(66, 2); 181f(99, 3); 182f(132, 4); 183f(165, 5); 184f(231, 7); 185f(264, 8); 186f(297, 9); 187f(495, 15); 188f(528, 16); 189f(561, 17); 190f(1023, 31); 191f(1056, 32); 192f(1089, 33); 193x = 63; 194f(0, 0); 195f(63, 1); 196f(126, 2); 197f(189, 3); 198f(252, 4); 199f(315, 5); 200f(441, 7); 201f(504, 8); 202f(567, 9); 203f(945, 15); 204f(1008, 16); 205f(1071, 17); 206f(1953, 31); 207f(2016, 32); 208f(2079, 33); 209f(3969, 63); 210x = 64; 211f(0, 0); 212f(64, 1); 213f(128, 2); 214f(192, 3); 215f(256, 4); 216f(320, 5); 217f(448, 7); 218f(512, 8); 219f(576, 9); 220f(960, 15); 221f(1024, 16); 222f(1088, 17); 223f(1984, 31); 224f(2048, 32); 225f(2112, 33); 226f(4032, 63); 227f(4096, 64); 228x = 65; 229f(0, 0); 230f(65, 1); 231f(130, 2); 232f(195, 3); 233f(260, 4); 234f(325, 5); 235f(455, 7); 236f(520, 8); 237f(585, 9); 238f(975, 15); 239f(1040, 16); 240f(1105, 17); 241f(2015, 31); 242f(2080, 32); 243f(2145, 33); 244f(4095, 63); 245f(4160, 64); 246f(4225, 65); 247x = 127; 248f(0, 0); 249f(127, 1); 250f(254, 2); 251f(381, 3); 252f(508, 4); 253f(635, 5); 254f(889, 7); 255f(1016, 8); 256f(1143, 9); 257f(1905, 15); 258f(2032, 16); 259f(2159, 17); 260f(3937, 31); 261f(4064, 32); 262f(4191, 33); 263f(8001, 63); 264f(8128, 64); 265f(8255, 65); 266f(16129, 127); 267x = 128; 268f(0, 0); 269f(128, 1); 270f(256, 2); 271f(384, 3); 272f(512, 4); 273f(640, 5); 274f(896, 7); 275f(1024, 8); 276f(1152, 9); 277f(1920, 15); 278f(2048, 16); 279f(2176, 17); 280f(3968, 31); 281f(4096, 32); 282f(4224, 33); 283f(8064, 63); 284f(8192, 64); 285f(8320, 65); 286f(16256, 127); 287f(16384, 128); 288x = 129; 289f(0, 0); 290f(129, 1); 291f(258, 2); 292f(387, 3); 293f(516, 4); 294f(645, 5); 295f(903, 7); 296f(1032, 8); 297f(1161, 9); 298f(1935, 15); 299f(2064, 16); 300f(2193, 17); 301f(3999, 31); 302f(4128, 32); 303f(4257, 33); 304f(8127, 63); 305f(8256, 64); 306f(8385, 65); 307f(16383, 127); 308f(16512, 128); 309f(16641, 129); 310x = 255; 311f(0, 0); 312f(255, 1); 313f(510, 2); 314f(765, 3); 315f(1020, 4); 316f(1275, 5); 317f(1785, 7); 318f(2040, 8); 319f(2295, 9); 320f(3825, 15); 321f(4080, 16); 322f(4335, 17); 323f(7905, 31); 324f(8160, 32); 325f(8415, 33); 326f(16065, 63); 327f(16320, 64); 328f(16575, 65); 329f(32385, 127); 330f(32640, 128); 331f(32895, 129); 332f(65025, 255); 333x = 256; 334f(0, 0); 335f(256, 1); 336f(512, 2); 337f(768, 3); 338f(1024, 4); 339f(1280, 5); 340f(1792, 7); 341f(2048, 8); 342f(2304, 9); 343f(3840, 15); 344f(4096, 16); 345f(4352, 17); 346f(7936, 31); 347f(8192, 32); 348f(8448, 33); 349f(16128, 63); 350f(16384, 64); 351f(16640, 65); 352f(32512, 127); 353f(32768, 128); 354f(33024, 129); 355f(65280, 255); 356f(65536, 256); 357x = 257; 358f(0, 0); 359f(257, 1); 360f(514, 2); 361f(771, 3); 362f(1028, 4); 363f(1285, 5); 364f(1799, 7); 365f(2056, 8); 366f(2313, 9); 367f(3855, 15); 368f(4112, 16); 369f(4369, 17); 370f(7967, 31); 371f(8224, 32); 372f(8481, 33); 373f(16191, 63); 374f(16448, 64); 375f(16705, 65); 376f(32639, 127); 377f(32896, 128); 378f(33153, 129); 379f(65535, 255); 380f(65792, 256); 381f(66049, 257); 382x = 511; 383f(0, 0); 384f(511, 1); 385f(1022, 2); 386f(1533, 3); 387f(2044, 4); 388f(2555, 5); 389f(3577, 7); 390f(4088, 8); 391f(4599, 9); 392f(7665, 15); 393f(8176, 16); 394f(8687, 17); 395f(15841, 31); 396f(16352, 32); 397f(16863, 33); 398f(32193, 63); 399f(32704, 64); 400f(33215, 65); 401f(64897, 127); 402f(65408, 128); 403f(65919, 129); 404f(130305, 255); 405f(130816, 256); 406f(131327, 257); 407f(261121, 511); 408x = 512; 409f(0, 0); 410f(512, 1); 411f(1024, 2); 412f(1536, 3); 413f(2048, 4); 414f(2560, 5); 415f(3584, 7); 416f(4096, 8); 417f(4608, 9); 418f(7680, 15); 419f(8192, 16); 420f(8704, 17); 421f(15872, 31); 422f(16384, 32); 423f(16896, 33); 424f(32256, 63); 425f(32768, 64); 426f(33280, 65); 427f(65024, 127); 428f(65536, 128); 429f(66048, 129); 430f(130560, 255); 431f(131072, 256); 432f(131584, 257); 433f(261632, 511); 434f(262144, 512); 435x = 513; 436f(0, 0); 437f(513, 1); 438f(1026, 2); 439f(1539, 3); 440f(2052, 4); 441f(2565, 5); 442f(3591, 7); 443f(4104, 8); 444f(4617, 9); 445f(7695, 15); 446f(8208, 16); 447f(8721, 17); 448f(15903, 31); 449f(16416, 32); 450f(16929, 33); 451f(32319, 63); 452f(32832, 64); 453f(33345, 65); 454f(65151, 127); 455f(65664, 128); 456f(66177, 129); 457f(130815, 255); 458f(131328, 256); 459f(131841, 257); 460f(262143, 511); 461f(262656, 512); 462f(263169, 513); 463x = 1023; 464f(0, 0); 465f(1023, 1); 466f(2046, 2); 467f(3069, 3); 468f(4092, 4); 469f(5115, 5); 470f(7161, 7); 471f(8184, 8); 472f(9207, 9); 473f(15345, 15); 474f(16368, 16); 475f(17391, 17); 476f(31713, 31); 477f(32736, 32); 478f(33759, 33); 479f(64449, 63); 480f(65472, 64); 481f(66495, 65); 482f(129921, 127); 483f(130944, 128); 484f(131967, 129); 485f(260865, 255); 486f(261888, 256); 487f(262911, 257); 488f(522753, 511); 489f(523776, 512); 490f(524799, 513); 491f(1046529, 1023); 492x = 1024; 493f(0, 0); 494f(1024, 1); 495f(2048, 2); 496f(3072, 3); 497f(4096, 4); 498f(5120, 5); 499f(7168, 7); 500f(8192, 8); 501f(9216, 9); 502f(15360, 15); 503f(16384, 16); 504f(17408, 17); 505f(31744, 31); 506f(32768, 32); 507f(33792, 33); 508f(64512, 63); 509f(65536, 64); 510f(66560, 65); 511f(130048, 127); 512f(131072, 128); 513f(132096, 129); 514f(261120, 255); 515f(262144, 256); 516f(263168, 257); 517f(523264, 511); 518f(524288, 512); 519f(525312, 513); 520f(1047552, 1023); 521f(1048576, 1024); 522x = 1025; 523f(0, 0); 524f(1025, 1); 525f(2050, 2); 526f(3075, 3); 527f(4100, 4); 528f(5125, 5); 529f(7175, 7); 530f(8200, 8); 531f(9225, 9); 532f(15375, 15); 533f(16400, 16); 534f(17425, 17); 535f(31775, 31); 536f(32800, 32); 537f(33825, 33); 538f(64575, 63); 539f(65600, 64); 540f(66625, 65); 541f(130175, 127); 542f(131200, 128); 543f(132225, 129); 544f(261375, 255); 545f(262400, 256); 546f(263425, 257); 547f(523775, 511); 548f(524800, 512); 549f(525825, 513); 550f(1048575, 1023); 551f(1049600, 1024); 552f(1050625, 1025); 553x = 2047; 554f(0, 0); 555f(2047, 1); 556f(4094, 2); 557f(6141, 3); 558f(8188, 4); 559f(10235, 5); 560f(14329, 7); 561f(16376, 8); 562f(18423, 9); 563f(30705, 15); 564f(32752, 16); 565f(34799, 17); 566f(63457, 31); 567f(65504, 32); 568f(67551, 33); 569f(128961, 63); 570f(131008, 64); 571f(133055, 65); 572f(259969, 127); 573f(262016, 128); 574f(264063, 129); 575f(521985, 255); 576f(524032, 256); 577f(526079, 257); 578f(1046017, 511); 579f(1048064, 512); 580f(1050111, 513); 581f(2094081, 1023); 582f(2096128, 1024); 583f(2098175, 1025); 584f(4190209, 2047); 585x = 2048; 586f(0, 0); 587f(2048, 1); 588f(4096, 2); 589f(6144, 3); 590f(8192, 4); 591f(10240, 5); 592f(14336, 7); 593f(16384, 8); 594f(18432, 9); 595f(30720, 15); 596f(32768, 16); 597f(34816, 17); 598f(63488, 31); 599f(65536, 32); 600f(67584, 33); 601f(129024, 63); 602f(131072, 64); 603f(133120, 65); 604f(260096, 127); 605f(262144, 128); 606f(264192, 129); 607f(522240, 255); 608f(524288, 256); 609f(526336, 257); 610f(1046528, 511); 611f(1048576, 512); 612f(1050624, 513); 613f(2095104, 1023); 614f(2097152, 1024); 615f(2099200, 1025); 616f(4192256, 2047); 617f(4194304, 2048); 618x = 2049; 619f(0, 0); 620f(2049, 1); 621f(4098, 2); 622f(6147, 3); 623f(8196, 4); 624f(10245, 5); 625f(14343, 7); 626f(16392, 8); 627f(18441, 9); 628f(30735, 15); 629f(32784, 16); 630f(34833, 17); 631f(63519, 31); 632f(65568, 32); 633f(67617, 33); 634f(129087, 63); 635f(131136, 64); 636f(133185, 65); 637f(260223, 127); 638f(262272, 128); 639f(264321, 129); 640f(522495, 255); 641f(524544, 256); 642f(526593, 257); 643f(1047039, 511); 644f(1049088, 512); 645f(1051137, 513); 646f(2096127, 1023); 647f(2098176, 1024); 648f(2100225, 1025); 649f(4194303, 2047); 650f(4196352, 2048); 651f(4198401, 2049); 652x = 4095; 653f(0, 0); 654f(4095, 1); 655f(8190, 2); 656f(12285, 3); 657f(16380, 4); 658f(20475, 5); 659f(28665, 7); 660f(32760, 8); 661f(36855, 9); 662f(61425, 15); 663f(65520, 16); 664f(69615, 17); 665f(126945, 31); 666f(131040, 32); 667f(135135, 33); 668f(257985, 63); 669f(262080, 64); 670f(266175, 65); 671f(520065, 127); 672f(524160, 128); 673f(528255, 129); 674f(1044225, 255); 675f(1048320, 256); 676f(1052415, 257); 677f(2092545, 511); 678f(2096640, 512); 679f(2100735, 513); 680f(4189185, 1023); 681f(4193280, 1024); 682f(4197375, 1025); 683f(8382465, 2047); 684f(8386560, 2048); 685f(8390655, 2049); 686f(16769025, 4095); 687x = 4096; 688f(0, 0); 689f(4096, 1); 690f(8192, 2); 691f(12288, 3); 692f(16384, 4); 693f(20480, 5); 694f(28672, 7); 695f(32768, 8); 696f(36864, 9); 697f(61440, 15); 698f(65536, 16); 699f(69632, 17); 700f(126976, 31); 701f(131072, 32); 702f(135168, 33); 703f(258048, 63); 704f(262144, 64); 705f(266240, 65); 706f(520192, 127); 707f(524288, 128); 708f(528384, 129); 709f(1044480, 255); 710f(1048576, 256); 711f(1052672, 257); 712f(2093056, 511); 713f(2097152, 512); 714f(2101248, 513); 715f(4190208, 1023); 716f(4194304, 1024); 717f(4198400, 1025); 718f(8384512, 2047); 719f(8388608, 2048); 720f(8392704, 2049); 721f(16773120, 4095); 722f(16777216, 4096); 723x = 4097; 724f(0, 0); 725f(4097, 1); 726f(8194, 2); 727f(12291, 3); 728f(16388, 4); 729f(20485, 5); 730f(28679, 7); 731f(32776, 8); 732f(36873, 9); 733f(61455, 15); 734f(65552, 16); 735f(69649, 17); 736f(127007, 31); 737f(131104, 32); 738f(135201, 33); 739f(258111, 63); 740f(262208, 64); 741f(266305, 65); 742f(520319, 127); 743f(524416, 128); 744f(528513, 129); 745f(1044735, 255); 746f(1048832, 256); 747f(1052929, 257); 748f(2093567, 511); 749f(2097664, 512); 750f(2101761, 513); 751f(4191231, 1023); 752f(4195328, 1024); 753f(4199425, 1025); 754f(8386559, 2047); 755f(8390656, 2048); 756f(8394753, 2049); 757f(16777215, 4095); 758f(16781312, 4096); 759f(16785409, 4097); 760x = 8191; 761f(0, 0); 762f(8191, 1); 763f(16382, 2); 764f(24573, 3); 765f(32764, 4); 766f(40955, 5); 767f(57337, 7); 768f(65528, 8); 769f(73719, 9); 770f(122865, 15); 771f(131056, 16); 772f(139247, 17); 773f(253921, 31); 774f(262112, 32); 775f(270303, 33); 776f(516033, 63); 777f(524224, 64); 778f(532415, 65); 779f(1040257, 127); 780f(1048448, 128); 781f(1056639, 129); 782f(2088705, 255); 783f(2096896, 256); 784f(2105087, 257); 785f(4185601, 511); 786f(4193792, 512); 787f(4201983, 513); 788f(8379393, 1023); 789f(8387584, 1024); 790f(8395775, 1025); 791f(16766977, 2047); 792f(16775168, 2048); 793f(16783359, 2049); 794f(33542145, 4095); 795f(33550336, 4096); 796f(33558527, 4097); 797f(67092481, 8191); 798x = 8192; 799f(0, 0); 800f(8192, 1); 801f(16384, 2); 802f(24576, 3); 803f(32768, 4); 804f(40960, 5); 805f(57344, 7); 806f(65536, 8); 807f(73728, 9); 808f(122880, 15); 809f(131072, 16); 810f(139264, 17); 811f(253952, 31); 812f(262144, 32); 813f(270336, 33); 814f(516096, 63); 815f(524288, 64); 816f(532480, 65); 817f(1040384, 127); 818f(1048576, 128); 819f(1056768, 129); 820f(2088960, 255); 821f(2097152, 256); 822f(2105344, 257); 823f(4186112, 511); 824f(4194304, 512); 825f(4202496, 513); 826f(8380416, 1023); 827f(8388608, 1024); 828f(8396800, 1025); 829f(16769024, 2047); 830f(16777216, 2048); 831f(16785408, 2049); 832f(33546240, 4095); 833f(33554432, 4096); 834f(33562624, 4097); 835f(67100672, 8191); 836f(67108864, 8192); 837x = 8193; 838f(0, 0); 839f(8193, 1); 840f(16386, 2); 841f(24579, 3); 842f(32772, 4); 843f(40965, 5); 844f(57351, 7); 845f(65544, 8); 846f(73737, 9); 847f(122895, 15); 848f(131088, 16); 849f(139281, 17); 850f(253983, 31); 851f(262176, 32); 852f(270369, 33); 853f(516159, 63); 854f(524352, 64); 855f(532545, 65); 856f(1040511, 127); 857f(1048704, 128); 858f(1056897, 129); 859f(2089215, 255); 860f(2097408, 256); 861f(2105601, 257); 862f(4186623, 511); 863f(4194816, 512); 864f(4203009, 513); 865f(8381439, 1023); 866f(8389632, 1024); 867f(8397825, 1025); 868f(16771071, 2047); 869f(16779264, 2048); 870f(16787457, 2049); 871f(33550335, 4095); 872f(33558528, 4096); 873f(33566721, 4097); 874f(67108863, 8191); 875f(67117056, 8192); 876f(67125249, 8193); 877x = 16383; 878f(0, 0); 879f(16383, 1); 880f(32766, 2); 881f(49149, 3); 882f(65532, 4); 883f(81915, 5); 884f(114681, 7); 885f(131064, 8); 886f(147447, 9); 887f(245745, 15); 888f(262128, 16); 889f(278511, 17); 890f(507873, 31); 891f(524256, 32); 892f(540639, 33); 893f(1032129, 63); 894f(1048512, 64); 895f(1064895, 65); 896f(2080641, 127); 897f(2097024, 128); 898f(2113407, 129); 899f(4177665, 255); 900f(4194048, 256); 901f(4210431, 257); 902f(8371713, 511); 903f(8388096, 512); 904f(8404479, 513); 905f(16759809, 1023); 906f(16776192, 1024); 907f(16792575, 1025); 908f(33536001, 2047); 909f(33552384, 2048); 910f(33568767, 2049); 911f(67088385, 4095); 912f(67104768, 4096); 913f(67121151, 4097); 914f(134193153, 8191); 915f(134209536, 8192); 916f(134225919, 8193); 917f(268402689, 16383); 918x = 16384; 919f(0, 0); 920f(16384, 1); 921f(32768, 2); 922f(49152, 3); 923f(65536, 4); 924f(81920, 5); 925f(114688, 7); 926f(131072, 8); 927f(147456, 9); 928f(245760, 15); 929f(262144, 16); 930f(278528, 17); 931f(507904, 31); 932f(524288, 32); 933f(540672, 33); 934f(1032192, 63); 935f(1048576, 64); 936f(1064960, 65); 937f(2080768, 127); 938f(2097152, 128); 939f(2113536, 129); 940f(4177920, 255); 941f(4194304, 256); 942f(4210688, 257); 943f(8372224, 511); 944f(8388608, 512); 945f(8404992, 513); 946f(16760832, 1023); 947f(16777216, 1024); 948f(16793600, 1025); 949f(33538048, 2047); 950f(33554432, 2048); 951f(33570816, 2049); 952f(67092480, 4095); 953f(67108864, 4096); 954f(67125248, 4097); 955f(134201344, 8191); 956f(134217728, 8192); 957f(134234112, 8193); 958f(268419072, 16383); 959f(268435456, 16384); 960x = 16385; 961f(0, 0); 962f(16385, 1); 963f(32770, 2); 964f(49155, 3); 965f(65540, 4); 966f(81925, 5); 967f(114695, 7); 968f(131080, 8); 969f(147465, 9); 970f(245775, 15); 971f(262160, 16); 972f(278545, 17); 973f(507935, 31); 974f(524320, 32); 975f(540705, 33); 976f(1032255, 63); 977f(1048640, 64); 978f(1065025, 65); 979f(2080895, 127); 980f(2097280, 128); 981f(2113665, 129); 982f(4178175, 255); 983f(4194560, 256); 984f(4210945, 257); 985f(8372735, 511); 986f(8389120, 512); 987f(8405505, 513); 988f(16761855, 1023); 989f(16778240, 1024); 990f(16794625, 1025); 991f(33540095, 2047); 992f(33556480, 2048); 993f(33572865, 2049); 994f(67096575, 4095); 995f(67112960, 4096); 996f(67129345, 4097); 997f(134209535, 8191); 998f(134225920, 8192); 999f(134242305, 8193); 1000f(268435455, 16383); 1001f(268451840, 16384); 1002f(268468225, 16385); 1003x = 32767; 1004f(0, 0); 1005f(32767, 1); 1006f(65534, 2); 1007f(98301, 3); 1008f(131068, 4); 1009f(163835, 5); 1010f(229369, 7); 1011f(262136, 8); 1012f(294903, 9); 1013f(491505, 15); 1014f(524272, 16); 1015f(557039, 17); 1016f(1015777, 31); 1017f(1048544, 32); 1018f(1081311, 33); 1019f(2064321, 63); 1020f(2097088, 64); 1021f(2129855, 65); 1022f(4161409, 127); 1023f(4194176, 128); 1024f(4226943, 129); 1025f(8355585, 255); 1026f(8388352, 256); 1027f(8421119, 257); 1028f(16743937, 511); 1029f(16776704, 512); 1030f(16809471, 513); 1031f(33520641, 1023); 1032f(33553408, 1024); 1033f(33586175, 1025); 1034f(67074049, 2047); 1035f(67106816, 2048); 1036f(67139583, 2049); 1037f(134180865, 4095); 1038f(134213632, 4096); 1039f(134246399, 4097); 1040f(268394497, 8191); 1041f(268427264, 8192); 1042f(268460031, 8193); 1043f(536821761, 16383); 1044f(536854528, 16384); 1045f(536887295, 16385); 1046f(1073676289, 32767); 1047x = 32768; 1048f(0, 0); 1049f(32768, 1); 1050f(65536, 2); 1051f(98304, 3); 1052f(131072, 4); 1053f(163840, 5); 1054f(229376, 7); 1055f(262144, 8); 1056f(294912, 9); 1057f(491520, 15); 1058f(524288, 16); 1059f(557056, 17); 1060f(1015808, 31); 1061f(1048576, 32); 1062f(1081344, 33); 1063f(2064384, 63); 1064f(2097152, 64); 1065f(2129920, 65); 1066f(4161536, 127); 1067f(4194304, 128); 1068f(4227072, 129); 1069f(8355840, 255); 1070f(8388608, 256); 1071f(8421376, 257); 1072f(16744448, 511); 1073f(16777216, 512); 1074f(16809984, 513); 1075f(33521664, 1023); 1076f(33554432, 1024); 1077f(33587200, 1025); 1078f(67076096, 2047); 1079f(67108864, 2048); 1080f(67141632, 2049); 1081f(134184960, 4095); 1082f(134217728, 4096); 1083f(134250496, 4097); 1084f(268402688, 8191); 1085f(268435456, 8192); 1086f(268468224, 8193); 1087f(536838144, 16383); 1088f(536870912, 16384); 1089f(536903680, 16385); 1090f(1073709056, 32767); 1091f(1073741824, 32768); 1092x = 32769; 1093f(0, 0); 1094f(32769, 1); 1095f(65538, 2); 1096f(98307, 3); 1097f(131076, 4); 1098f(163845, 5); 1099f(229383, 7); 1100f(262152, 8); 1101f(294921, 9); 1102f(491535, 15); 1103f(524304, 16); 1104f(557073, 17); 1105f(1015839, 31); 1106f(1048608, 32); 1107f(1081377, 33); 1108f(2064447, 63); 1109f(2097216, 64); 1110f(2129985, 65); 1111f(4161663, 127); 1112f(4194432, 128); 1113f(4227201, 129); 1114f(8356095, 255); 1115f(8388864, 256); 1116f(8421633, 257); 1117f(16744959, 511); 1118f(16777728, 512); 1119f(16810497, 513); 1120f(33522687, 1023); 1121f(33555456, 1024); 1122f(33588225, 1025); 1123f(67078143, 2047); 1124f(67110912, 2048); 1125f(67143681, 2049); 1126f(134189055, 4095); 1127f(134221824, 4096); 1128f(134254593, 4097); 1129f(268410879, 8191); 1130f(268443648, 8192); 1131f(268476417, 8193); 1132f(536854527, 16383); 1133f(536887296, 16384); 1134f(536920065, 16385); 1135f(1073741823, 32767); 1136f(1073774592, 32768); 1137f(1073807361, 32769); 1138x = 65535; 1139f(0, 0); 1140f(65535, 1); 1141f(131070, 2); 1142f(196605, 3); 1143f(262140, 4); 1144f(327675, 5); 1145f(458745, 7); 1146f(524280, 8); 1147f(589815, 9); 1148f(983025, 15); 1149f(1048560, 16); 1150f(1114095, 17); 1151f(2031585, 31); 1152f(2097120, 32); 1153f(2162655, 33); 1154f(4128705, 63); 1155f(4194240, 64); 1156f(4259775, 65); 1157f(8322945, 127); 1158f(8388480, 128); 1159f(8454015, 129); 1160f(16711425, 255); 1161f(16776960, 256); 1162f(16842495, 257); 1163f(33488385, 511); 1164f(33553920, 512); 1165f(33619455, 513); 1166f(67042305, 1023); 1167f(67107840, 1024); 1168f(67173375, 1025); 1169f(134150145, 2047); 1170f(134215680, 2048); 1171f(134281215, 2049); 1172f(268365825, 4095); 1173f(268431360, 4096); 1174f(268496895, 4097); 1175f(536797185, 8191); 1176f(536862720, 8192); 1177f(536928255, 8193); 1178f(1073659905, 16383); 1179f(1073725440, 16384); 1180f(1073790975, 16385); 1181f(2147385345, 32767); 1182f(2147450880, 32768); 1183f(2147516415, 32769); 1184f(4294836225, 65535); 1185x = 65536; 1186f(0, 0); 1187f(65536, 1); 1188f(131072, 2); 1189f(196608, 3); 1190f(262144, 4); 1191f(327680, 5); 1192f(458752, 7); 1193f(524288, 8); 1194f(589824, 9); 1195f(983040, 15); 1196f(1048576, 16); 1197f(1114112, 17); 1198f(2031616, 31); 1199f(2097152, 32); 1200f(2162688, 33); 1201f(4128768, 63); 1202f(4194304, 64); 1203f(4259840, 65); 1204f(8323072, 127); 1205f(8388608, 128); 1206f(8454144, 129); 1207f(16711680, 255); 1208f(16777216, 256); 1209f(16842752, 257); 1210f(33488896, 511); 1211f(33554432, 512); 1212f(33619968, 513); 1213f(67043328, 1023); 1214f(67108864, 1024); 1215f(67174400, 1025); 1216f(134152192, 2047); 1217f(134217728, 2048); 1218f(134283264, 2049); 1219f(268369920, 4095); 1220f(268435456, 4096); 1221f(268500992, 4097); 1222f(536805376, 8191); 1223f(536870912, 8192); 1224f(536936448, 8193); 1225f(1073676288, 16383); 1226f(1073741824, 16384); 1227f(1073807360, 16385); 1228f(2147418112, 32767); 1229f(2147483648, 32768); 1230f(2147549184, 32769); 1231f(4294901760, 65535); 1232f(4294967296, 65536); 1233x = 65537; 1234f(0, 0); 1235f(65537, 1); 1236f(131074, 2); 1237f(196611, 3); 1238f(262148, 4); 1239f(327685, 5); 1240f(458759, 7); 1241f(524296, 8); 1242f(589833, 9); 1243f(983055, 15); 1244f(1048592, 16); 1245f(1114129, 17); 1246f(2031647, 31); 1247f(2097184, 32); 1248f(2162721, 33); 1249f(4128831, 63); 1250f(4194368, 64); 1251f(4259905, 65); 1252f(8323199, 127); 1253f(8388736, 128); 1254f(8454273, 129); 1255f(16711935, 255); 1256f(16777472, 256); 1257f(16843009, 257); 1258f(33489407, 511); 1259f(33554944, 512); 1260f(33620481, 513); 1261f(67044351, 1023); 1262f(67109888, 1024); 1263f(67175425, 1025); 1264f(134154239, 2047); 1265f(134219776, 2048); 1266f(134285313, 2049); 1267f(268374015, 4095); 1268f(268439552, 4096); 1269f(268505089, 4097); 1270f(536813567, 8191); 1271f(536879104, 8192); 1272f(536944641, 8193); 1273f(1073692671, 16383); 1274f(1073758208, 16384); 1275f(1073823745, 16385); 1276f(2147450879, 32767); 1277f(2147516416, 32768); 1278f(2147581953, 32769); 1279f(4294967295, 65535); 1280f(4295032832, 65536); 1281f(4295098369, 65537); 1282x = 131071; 1283f(0, 0); 1284f(131071, 1); 1285f(262142, 2); 1286f(393213, 3); 1287f(524284, 4); 1288f(655355, 5); 1289f(917497, 7); 1290f(1048568, 8); 1291f(1179639, 9); 1292f(1966065, 15); 1293f(2097136, 16); 1294f(2228207, 17); 1295f(4063201, 31); 1296f(4194272, 32); 1297f(4325343, 33); 1298f(8257473, 63); 1299f(8388544, 64); 1300f(8519615, 65); 1301f(16646017, 127); 1302f(16777088, 128); 1303f(16908159, 129); 1304f(33423105, 255); 1305f(33554176, 256); 1306f(33685247, 257); 1307f(66977281, 511); 1308f(67108352, 512); 1309f(67239423, 513); 1310f(134085633, 1023); 1311f(134216704, 1024); 1312f(134347775, 1025); 1313f(268302337, 2047); 1314f(268433408, 2048); 1315f(268564479, 2049); 1316f(536735745, 4095); 1317f(536866816, 4096); 1318f(536997887, 4097); 1319f(1073602561, 8191); 1320f(1073733632, 8192); 1321f(1073864703, 8193); 1322f(2147336193, 16383); 1323f(2147467264, 16384); 1324f(2147598335, 16385); 1325f(4294803457, 32767); 1326f(4294934528, 32768); 1327f(4295065599, 32769); 1328f(8589737985, 65535); 1329f(8589869056, 65536); 1330f(8590000127, 65537); 1331f(17179607041, 131071); 1332x = 131072; 1333f(0, 0); 1334f(131072, 1); 1335f(262144, 2); 1336f(393216, 3); 1337f(524288, 4); 1338f(655360, 5); 1339f(917504, 7); 1340f(1048576, 8); 1341f(1179648, 9); 1342f(1966080, 15); 1343f(2097152, 16); 1344f(2228224, 17); 1345f(4063232, 31); 1346f(4194304, 32); 1347f(4325376, 33); 1348f(8257536, 63); 1349f(8388608, 64); 1350f(8519680, 65); 1351f(16646144, 127); 1352f(16777216, 128); 1353f(16908288, 129); 1354f(33423360, 255); 1355f(33554432, 256); 1356f(33685504, 257); 1357f(66977792, 511); 1358f(67108864, 512); 1359f(67239936, 513); 1360f(134086656, 1023); 1361f(134217728, 1024); 1362f(134348800, 1025); 1363f(268304384, 2047); 1364f(268435456, 2048); 1365f(268566528, 2049); 1366f(536739840, 4095); 1367f(536870912, 4096); 1368f(537001984, 4097); 1369f(1073610752, 8191); 1370f(1073741824, 8192); 1371f(1073872896, 8193); 1372f(2147352576, 16383); 1373f(2147483648, 16384); 1374f(2147614720, 16385); 1375f(4294836224, 32767); 1376f(4294967296, 32768); 1377f(4295098368, 32769); 1378f(8589803520, 65535); 1379f(8589934592, 65536); 1380f(8590065664, 65537); 1381f(17179738112, 131071); 1382f(17179869184, 131072); 1383x = 131073; 1384f(0, 0); 1385f(131073, 1); 1386f(262146, 2); 1387f(393219, 3); 1388f(524292, 4); 1389f(655365, 5); 1390f(917511, 7); 1391f(1048584, 8); 1392f(1179657, 9); 1393f(1966095, 15); 1394f(2097168, 16); 1395f(2228241, 17); 1396f(4063263, 31); 1397f(4194336, 32); 1398f(4325409, 33); 1399f(8257599, 63); 1400f(8388672, 64); 1401f(8519745, 65); 1402f(16646271, 127); 1403f(16777344, 128); 1404f(16908417, 129); 1405f(33423615, 255); 1406f(33554688, 256); 1407f(33685761, 257); 1408f(66978303, 511); 1409f(67109376, 512); 1410f(67240449, 513); 1411f(134087679, 1023); 1412f(134218752, 1024); 1413f(134349825, 1025); 1414f(268306431, 2047); 1415f(268437504, 2048); 1416f(268568577, 2049); 1417f(536743935, 4095); 1418f(536875008, 4096); 1419f(537006081, 4097); 1420f(1073618943, 8191); 1421f(1073750016, 8192); 1422f(1073881089, 8193); 1423f(2147368959, 16383); 1424f(2147500032, 16384); 1425f(2147631105, 16385); 1426f(4294868991, 32767); 1427f(4295000064, 32768); 1428f(4295131137, 32769); 1429f(8589869055, 65535); 1430f(8590000128, 65536); 1431f(8590131201, 65537); 1432f(17179869183, 131071); 1433f(17180000256, 131072); 1434f(17180131329, 131073); 1435x = 262143; 1436f(0, 0); 1437f(262143, 1); 1438f(524286, 2); 1439f(786429, 3); 1440f(1048572, 4); 1441f(1310715, 5); 1442f(1835001, 7); 1443f(2097144, 8); 1444f(2359287, 9); 1445f(3932145, 15); 1446f(4194288, 16); 1447f(4456431, 17); 1448f(8126433, 31); 1449f(8388576, 32); 1450f(8650719, 33); 1451f(16515009, 63); 1452f(16777152, 64); 1453f(17039295, 65); 1454f(33292161, 127); 1455f(33554304, 128); 1456f(33816447, 129); 1457f(66846465, 255); 1458f(67108608, 256); 1459f(67370751, 257); 1460f(133955073, 511); 1461f(134217216, 512); 1462f(134479359, 513); 1463f(268172289, 1023); 1464f(268434432, 1024); 1465f(268696575, 1025); 1466f(536606721, 2047); 1467f(536868864, 2048); 1468f(537131007, 2049); 1469f(1073475585, 4095); 1470f(1073737728, 4096); 1471f(1073999871, 4097); 1472f(2147213313, 8191); 1473f(2147475456, 8192); 1474f(2147737599, 8193); 1475f(4294688769, 16383); 1476f(4294950912, 16384); 1477f(4295213055, 16385); 1478f(8589639681, 32767); 1479f(8589901824, 32768); 1480f(8590163967, 32769); 1481f(17179541505, 65535); 1482f(17179803648, 65536); 1483f(17180065791, 65537); 1484f(34359345153, 131071); 1485f(34359607296, 131072); 1486f(34359869439, 131073); 1487f(68718952449, 262143); 1488x = 262144; 1489f(0, 0); 1490f(262144, 1); 1491f(524288, 2); 1492f(786432, 3); 1493f(1048576, 4); 1494f(1310720, 5); 1495f(1835008, 7); 1496f(2097152, 8); 1497f(2359296, 9); 1498f(3932160, 15); 1499f(4194304, 16); 1500f(4456448, 17); 1501f(8126464, 31); 1502f(8388608, 32); 1503f(8650752, 33); 1504f(16515072, 63); 1505f(16777216, 64); 1506f(17039360, 65); 1507f(33292288, 127); 1508f(33554432, 128); 1509f(33816576, 129); 1510f(66846720, 255); 1511f(67108864, 256); 1512f(67371008, 257); 1513f(133955584, 511); 1514f(134217728, 512); 1515f(134479872, 513); 1516f(268173312, 1023); 1517f(268435456, 1024); 1518f(268697600, 1025); 1519f(536608768, 2047); 1520f(536870912, 2048); 1521f(537133056, 2049); 1522f(1073479680, 4095); 1523f(1073741824, 4096); 1524f(1074003968, 4097); 1525f(2147221504, 8191); 1526f(2147483648, 8192); 1527f(2147745792, 8193); 1528f(4294705152, 16383); 1529f(4294967296, 16384); 1530f(4295229440, 16385); 1531f(8589672448, 32767); 1532f(8589934592, 32768); 1533f(8590196736, 32769); 1534f(17179607040, 65535); 1535f(17179869184, 65536); 1536f(17180131328, 65537); 1537f(34359476224, 131071); 1538f(34359738368, 131072); 1539f(34360000512, 131073); 1540f(68719214592, 262143); 1541f(68719476736, 262144); 1542x = 262145; 1543f(0, 0); 1544f(262145, 1); 1545f(524290, 2); 1546f(786435, 3); 1547f(1048580, 4); 1548f(1310725, 5); 1549f(1835015, 7); 1550f(2097160, 8); 1551f(2359305, 9); 1552f(3932175, 15); 1553f(4194320, 16); 1554f(4456465, 17); 1555f(8126495, 31); 1556f(8388640, 32); 1557f(8650785, 33); 1558f(16515135, 63); 1559f(16777280, 64); 1560f(17039425, 65); 1561f(33292415, 127); 1562f(33554560, 128); 1563f(33816705, 129); 1564f(66846975, 255); 1565f(67109120, 256); 1566f(67371265, 257); 1567f(133956095, 511); 1568f(134218240, 512); 1569f(134480385, 513); 1570f(268174335, 1023); 1571f(268436480, 1024); 1572f(268698625, 1025); 1573f(536610815, 2047); 1574f(536872960, 2048); 1575f(537135105, 2049); 1576f(1073483775, 4095); 1577f(1073745920, 4096); 1578f(1074008065, 4097); 1579f(2147229695, 8191); 1580f(2147491840, 8192); 1581f(2147753985, 8193); 1582f(4294721535, 16383); 1583f(4294983680, 16384); 1584f(4295245825, 16385); 1585f(8589705215, 32767); 1586f(8589967360, 32768); 1587f(8590229505, 32769); 1588f(17179672575, 65535); 1589f(17179934720, 65536); 1590f(17180196865, 65537); 1591f(34359607295, 131071); 1592f(34359869440, 131072); 1593f(34360131585, 131073); 1594f(68719476735, 262143); 1595f(68719738880, 262144); 1596f(68720001025, 262145); 1597x = 524287; 1598f(0, 0); 1599f(524287, 1); 1600f(1048574, 2); 1601f(1572861, 3); 1602f(2097148, 4); 1603f(2621435, 5); 1604f(3670009, 7); 1605f(4194296, 8); 1606f(4718583, 9); 1607f(7864305, 15); 1608f(8388592, 16); 1609f(8912879, 17); 1610f(16252897, 31); 1611f(16777184, 32); 1612f(17301471, 33); 1613f(33030081, 63); 1614f(33554368, 64); 1615f(34078655, 65); 1616f(66584449, 127); 1617f(67108736, 128); 1618f(67633023, 129); 1619f(133693185, 255); 1620f(134217472, 256); 1621f(134741759, 257); 1622f(267910657, 511); 1623f(268434944, 512); 1624f(268959231, 513); 1625f(536345601, 1023); 1626f(536869888, 1024); 1627f(537394175, 1025); 1628f(1073215489, 2047); 1629f(1073739776, 2048); 1630f(1074264063, 2049); 1631f(2146955265, 4095); 1632f(2147479552, 4096); 1633f(2148003839, 4097); 1634f(4294434817, 8191); 1635f(4294959104, 8192); 1636f(4295483391, 8193); 1637f(8589393921, 16383); 1638f(8589918208, 16384); 1639f(8590442495, 16385); 1640f(17179312129, 32767); 1641f(17179836416, 32768); 1642f(17180360703, 32769); 1643f(34359148545, 65535); 1644f(34359672832, 65536); 1645f(34360197119, 65537); 1646f(68718821377, 131071); 1647f(68719345664, 131072); 1648f(68719869951, 131073); 1649f(137438167041, 262143); 1650f(137438691328, 262144); 1651f(137439215615, 262145); 1652f(274876858369, 524287); 1653x = 524288; 1654f(0, 0); 1655f(524288, 1); 1656f(1048576, 2); 1657f(1572864, 3); 1658f(2097152, 4); 1659f(2621440, 5); 1660f(3670016, 7); 1661f(4194304, 8); 1662f(4718592, 9); 1663f(7864320, 15); 1664f(8388608, 16); 1665f(8912896, 17); 1666f(16252928, 31); 1667f(16777216, 32); 1668f(17301504, 33); 1669f(33030144, 63); 1670f(33554432, 64); 1671f(34078720, 65); 1672f(66584576, 127); 1673f(67108864, 128); 1674f(67633152, 129); 1675f(133693440, 255); 1676f(134217728, 256); 1677f(134742016, 257); 1678f(267911168, 511); 1679f(268435456, 512); 1680f(268959744, 513); 1681f(536346624, 1023); 1682f(536870912, 1024); 1683f(537395200, 1025); 1684f(1073217536, 2047); 1685f(1073741824, 2048); 1686f(1074266112, 2049); 1687f(2146959360, 4095); 1688f(2147483648, 4096); 1689f(2148007936, 4097); 1690f(4294443008, 8191); 1691f(4294967296, 8192); 1692f(4295491584, 8193); 1693f(8589410304, 16383); 1694f(8589934592, 16384); 1695f(8590458880, 16385); 1696f(17179344896, 32767); 1697f(17179869184, 32768); 1698f(17180393472, 32769); 1699f(34359214080, 65535); 1700f(34359738368, 65536); 1701f(34360262656, 65537); 1702f(68718952448, 131071); 1703f(68719476736, 131072); 1704f(68720001024, 131073); 1705f(137438429184, 262143); 1706f(137438953472, 262144); 1707f(137439477760, 262145); 1708f(274877382656, 524287); 1709f(274877906944, 524288); 1710x = 524289; 1711f(0, 0); 1712f(524289, 1); 1713f(1048578, 2); 1714f(1572867, 3); 1715f(2097156, 4); 1716f(2621445, 5); 1717f(3670023, 7); 1718f(4194312, 8); 1719f(4718601, 9); 1720f(7864335, 15); 1721f(8388624, 16); 1722f(8912913, 17); 1723f(16252959, 31); 1724f(16777248, 32); 1725f(17301537, 33); 1726f(33030207, 63); 1727f(33554496, 64); 1728f(34078785, 65); 1729f(66584703, 127); 1730f(67108992, 128); 1731f(67633281, 129); 1732f(133693695, 255); 1733f(134217984, 256); 1734f(134742273, 257); 1735f(267911679, 511); 1736f(268435968, 512); 1737f(268960257, 513); 1738f(536347647, 1023); 1739f(536871936, 1024); 1740f(537396225, 1025); 1741f(1073219583, 2047); 1742f(1073743872, 2048); 1743f(1074268161, 2049); 1744f(2146963455, 4095); 1745f(2147487744, 4096); 1746f(2148012033, 4097); 1747f(4294451199, 8191); 1748f(4294975488, 8192); 1749f(4295499777, 8193); 1750f(8589426687, 16383); 1751f(8589950976, 16384); 1752f(8590475265, 16385); 1753f(17179377663, 32767); 1754f(17179901952, 32768); 1755f(17180426241, 32769); 1756f(34359279615, 65535); 1757f(34359803904, 65536); 1758f(34360328193, 65537); 1759f(68719083519, 131071); 1760f(68719607808, 131072); 1761f(68720132097, 131073); 1762f(137438691327, 262143); 1763f(137439215616, 262144); 1764f(137439739905, 262145); 1765f(274877906943, 524287); 1766f(274878431232, 524288); 1767f(274878955521, 524289); 1768x = 1048575; 1769f(0, 0); 1770f(1048575, 1); 1771f(2097150, 2); 1772f(3145725, 3); 1773f(4194300, 4); 1774f(5242875, 5); 1775f(7340025, 7); 1776f(8388600, 8); 1777f(9437175, 9); 1778f(15728625, 15); 1779f(16777200, 16); 1780f(17825775, 17); 1781f(32505825, 31); 1782f(33554400, 32); 1783f(34602975, 33); 1784f(66060225, 63); 1785f(67108800, 64); 1786f(68157375, 65); 1787f(133169025, 127); 1788f(134217600, 128); 1789f(135266175, 129); 1790f(267386625, 255); 1791f(268435200, 256); 1792f(269483775, 257); 1793f(535821825, 511); 1794f(536870400, 512); 1795f(537918975, 513); 1796f(1072692225, 1023); 1797f(1073740800, 1024); 1798f(1074789375, 1025); 1799f(2146433025, 2047); 1800f(2147481600, 2048); 1801f(2148530175, 2049); 1802f(4293914625, 4095); 1803f(4294963200, 4096); 1804f(4296011775, 4097); 1805f(8588877825, 8191); 1806f(8589926400, 8192); 1807f(8590974975, 8193); 1808f(17178804225, 16383); 1809f(17179852800, 16384); 1810f(17180901375, 16385); 1811f(34358657025, 32767); 1812f(34359705600, 32768); 1813f(34360754175, 32769); 1814f(68718362625, 65535); 1815f(68719411200, 65536); 1816f(68720459775, 65537); 1817f(137437773825, 131071); 1818f(137438822400, 131072); 1819f(137439870975, 131073); 1820f(274876596225, 262143); 1821f(274877644800, 262144); 1822f(274878693375, 262145); 1823f(549754241025, 524287); 1824f(549755289600, 524288); 1825f(549756338175, 524289); 1826f(1099509530625, 1048575); 1827x = 1048576; 1828f(0, 0); 1829f(1048576, 1); 1830f(2097152, 2); 1831f(3145728, 3); 1832f(4194304, 4); 1833f(5242880, 5); 1834f(7340032, 7); 1835f(8388608, 8); 1836f(9437184, 9); 1837f(15728640, 15); 1838f(16777216, 16); 1839f(17825792, 17); 1840f(32505856, 31); 1841f(33554432, 32); 1842f(34603008, 33); 1843f(66060288, 63); 1844f(67108864, 64); 1845f(68157440, 65); 1846f(133169152, 127); 1847f(134217728, 128); 1848f(135266304, 129); 1849f(267386880, 255); 1850f(268435456, 256); 1851f(269484032, 257); 1852f(535822336, 511); 1853f(536870912, 512); 1854f(537919488, 513); 1855f(1072693248, 1023); 1856f(1073741824, 1024); 1857f(1074790400, 1025); 1858f(2146435072, 2047); 1859f(2147483648, 2048); 1860f(2148532224, 2049); 1861f(4293918720, 4095); 1862f(4294967296, 4096); 1863f(4296015872, 4097); 1864f(8588886016, 8191); 1865f(8589934592, 8192); 1866f(8590983168, 8193); 1867f(17178820608, 16383); 1868f(17179869184, 16384); 1869f(17180917760, 16385); 1870f(34358689792, 32767); 1871f(34359738368, 32768); 1872f(34360786944, 32769); 1873f(68718428160, 65535); 1874f(68719476736, 65536); 1875f(68720525312, 65537); 1876f(137437904896, 131071); 1877f(137438953472, 131072); 1878f(137440002048, 131073); 1879f(274876858368, 262143); 1880f(274877906944, 262144); 1881f(274878955520, 262145); 1882f(549754765312, 524287); 1883f(549755813888, 524288); 1884f(549756862464, 524289); 1885f(1099510579200, 1048575); 1886f(1099511627776, 1048576); 1887x = 1048577; 1888f(0, 0); 1889f(1048577, 1); 1890f(2097154, 2); 1891f(3145731, 3); 1892f(4194308, 4); 1893f(5242885, 5); 1894f(7340039, 7); 1895f(8388616, 8); 1896f(9437193, 9); 1897f(15728655, 15); 1898f(16777232, 16); 1899f(17825809, 17); 1900f(32505887, 31); 1901f(33554464, 32); 1902f(34603041, 33); 1903f(66060351, 63); 1904f(67108928, 64); 1905f(68157505, 65); 1906f(133169279, 127); 1907f(134217856, 128); 1908f(135266433, 129); 1909f(267387135, 255); 1910f(268435712, 256); 1911f(269484289, 257); 1912f(535822847, 511); 1913f(536871424, 512); 1914f(537920001, 513); 1915f(1072694271, 1023); 1916f(1073742848, 1024); 1917f(1074791425, 1025); 1918f(2146437119, 2047); 1919f(2147485696, 2048); 1920f(2148534273, 2049); 1921f(4293922815, 4095); 1922f(4294971392, 4096); 1923f(4296019969, 4097); 1924f(8588894207, 8191); 1925f(8589942784, 8192); 1926f(8590991361, 8193); 1927f(17178836991, 16383); 1928f(17179885568, 16384); 1929f(17180934145, 16385); 1930f(34358722559, 32767); 1931f(34359771136, 32768); 1932f(34360819713, 32769); 1933f(68718493695, 65535); 1934f(68719542272, 65536); 1935f(68720590849, 65537); 1936f(137438035967, 131071); 1937f(137439084544, 131072); 1938f(137440133121, 131073); 1939f(274877120511, 262143); 1940f(274878169088, 262144); 1941f(274879217665, 262145); 1942f(549755289599, 524287); 1943f(549756338176, 524288); 1944f(549757386753, 524289); 1945f(1099511627775, 1048575); 1946f(1099512676352, 1048576); 1947f(1099513724929, 1048577); 1948x = 2097151; 1949f(0, 0); 1950f(2097151, 1); 1951f(4194302, 2); 1952f(6291453, 3); 1953f(8388604, 4); 1954f(10485755, 5); 1955f(14680057, 7); 1956f(16777208, 8); 1957f(18874359, 9); 1958f(31457265, 15); 1959f(33554416, 16); 1960f(35651567, 17); 1961f(65011681, 31); 1962f(67108832, 32); 1963f(69205983, 33); 1964f(132120513, 63); 1965f(134217664, 64); 1966f(136314815, 65); 1967f(266338177, 127); 1968f(268435328, 128); 1969f(270532479, 129); 1970f(534773505, 255); 1971f(536870656, 256); 1972f(538967807, 257); 1973f(1071644161, 511); 1974f(1073741312, 512); 1975f(1075838463, 513); 1976f(2145385473, 1023); 1977f(2147482624, 1024); 1978f(2149579775, 1025); 1979f(4292868097, 2047); 1980f(4294965248, 2048); 1981f(4297062399, 2049); 1982f(8587833345, 4095); 1983f(8589930496, 4096); 1984f(8592027647, 4097); 1985f(17177763841, 8191); 1986f(17179860992, 8192); 1987f(17181958143, 8193); 1988f(34357624833, 16383); 1989f(34359721984, 16384); 1990f(34361819135, 16385); 1991f(68717346817, 32767); 1992f(68719443968, 32768); 1993f(68721541119, 32769); 1994f(137436790785, 65535); 1995f(137438887936, 65536); 1996f(137440985087, 65537); 1997f(274875678721, 131071); 1998f(274877775872, 131072); 1999f(274879873023, 131073); 2000f(549753454593, 262143); 2001f(549755551744, 262144); 2002f(549757648895, 262145); 2003f(1099509006337, 524287); 2004f(1099511103488, 524288); 2005f(1099513200639, 524289); 2006f(2199020109825, 1048575); 2007f(2199022206976, 1048576); 2008f(2199024304127, 1048577); 2009f(4398042316801, 2097151); 2010x = 2097152; 2011f(0, 0); 2012f(2097152, 1); 2013f(4194304, 2); 2014f(6291456, 3); 2015f(8388608, 4); 2016f(10485760, 5); 2017f(14680064, 7); 2018f(16777216, 8); 2019f(18874368, 9); 2020f(31457280, 15); 2021f(33554432, 16); 2022f(35651584, 17); 2023f(65011712, 31); 2024f(67108864, 32); 2025f(69206016, 33); 2026f(132120576, 63); 2027f(134217728, 64); 2028f(136314880, 65); 2029f(266338304, 127); 2030f(268435456, 128); 2031f(270532608, 129); 2032f(534773760, 255); 2033f(536870912, 256); 2034f(538968064, 257); 2035f(1071644672, 511); 2036f(1073741824, 512); 2037f(1075838976, 513); 2038f(2145386496, 1023); 2039f(2147483648, 1024); 2040f(2149580800, 1025); 2041f(4292870144, 2047); 2042f(4294967296, 2048); 2043f(4297064448, 2049); 2044f(8587837440, 4095); 2045f(8589934592, 4096); 2046f(8592031744, 4097); 2047f(17177772032, 8191); 2048f(17179869184, 8192); 2049f(17181966336, 8193); 2050f(34357641216, 16383); 2051f(34359738368, 16384); 2052f(34361835520, 16385); 2053f(68717379584, 32767); 2054f(68719476736, 32768); 2055f(68721573888, 32769); 2056f(137436856320, 65535); 2057f(137438953472, 65536); 2058f(137441050624, 65537); 2059f(274875809792, 131071); 2060f(274877906944, 131072); 2061f(274880004096, 131073); 2062f(549753716736, 262143); 2063f(549755813888, 262144); 2064f(549757911040, 262145); 2065f(1099509530624, 524287); 2066f(1099511627776, 524288); 2067f(1099513724928, 524289); 2068f(2199021158400, 1048575); 2069f(2199023255552, 1048576); 2070f(2199025352704, 1048577); 2071f(4398044413952, 2097151); 2072f(4398046511104, 2097152); 2073x = 2097153; 2074f(0, 0); 2075f(2097153, 1); 2076f(4194306, 2); 2077f(6291459, 3); 2078f(8388612, 4); 2079f(10485765, 5); 2080f(14680071, 7); 2081f(16777224, 8); 2082f(18874377, 9); 2083f(31457295, 15); 2084f(33554448, 16); 2085f(35651601, 17); 2086f(65011743, 31); 2087f(67108896, 32); 2088f(69206049, 33); 2089f(132120639, 63); 2090f(134217792, 64); 2091f(136314945, 65); 2092f(266338431, 127); 2093f(268435584, 128); 2094f(270532737, 129); 2095f(534774015, 255); 2096f(536871168, 256); 2097f(538968321, 257); 2098f(1071645183, 511); 2099f(1073742336, 512); 2100f(1075839489, 513); 2101f(2145387519, 1023); 2102f(2147484672, 1024); 2103f(2149581825, 1025); 2104f(4292872191, 2047); 2105f(4294969344, 2048); 2106f(4297066497, 2049); 2107f(8587841535, 4095); 2108f(8589938688, 4096); 2109f(8592035841, 4097); 2110f(17177780223, 8191); 2111f(17179877376, 8192); 2112f(17181974529, 8193); 2113f(34357657599, 16383); 2114f(34359754752, 16384); 2115f(34361851905, 16385); 2116f(68717412351, 32767); 2117f(68719509504, 32768); 2118f(68721606657, 32769); 2119f(137436921855, 65535); 2120f(137439019008, 65536); 2121f(137441116161, 65537); 2122f(274875940863, 131071); 2123f(274878038016, 131072); 2124f(274880135169, 131073); 2125f(549753978879, 262143); 2126f(549756076032, 262144); 2127f(549758173185, 262145); 2128f(1099510054911, 524287); 2129f(1099512152064, 524288); 2130f(1099514249217, 524289); 2131f(2199022206975, 1048575); 2132f(2199024304128, 1048576); 2133f(2199026401281, 1048577); 2134f(4398046511103, 2097151); 2135f(4398048608256, 2097152); 2136f(4398050705409, 2097153); 2137x = 4194303; 2138f(0, 0); 2139f(4194303, 1); 2140f(8388606, 2); 2141f(12582909, 3); 2142f(16777212, 4); 2143f(20971515, 5); 2144f(29360121, 7); 2145f(33554424, 8); 2146f(37748727, 9); 2147f(62914545, 15); 2148f(67108848, 16); 2149f(71303151, 17); 2150f(130023393, 31); 2151f(134217696, 32); 2152f(138411999, 33); 2153f(264241089, 63); 2154f(268435392, 64); 2155f(272629695, 65); 2156f(532676481, 127); 2157f(536870784, 128); 2158f(541065087, 129); 2159f(1069547265, 255); 2160f(1073741568, 256); 2161f(1077935871, 257); 2162f(2143288833, 511); 2163f(2147483136, 512); 2164f(2151677439, 513); 2165f(4290771969, 1023); 2166f(4294966272, 1024); 2167f(4299160575, 1025); 2168f(8585738241, 2047); 2169f(8589932544, 2048); 2170f(8594126847, 2049); 2171f(17175670785, 4095); 2172f(17179865088, 4096); 2173f(17184059391, 4097); 2174f(34355535873, 8191); 2175f(34359730176, 8192); 2176f(34363924479, 8193); 2177f(68715266049, 16383); 2178f(68719460352, 16384); 2179f(68723654655, 16385); 2180f(137434726401, 32767); 2181f(137438920704, 32768); 2182f(137443115007, 32769); 2183f(274873647105, 65535); 2184f(274877841408, 65536); 2185f(274882035711, 65537); 2186f(549751488513, 131071); 2187f(549755682816, 131072); 2188f(549759877119, 131073); 2189f(1099507171329, 262143); 2190f(1099511365632, 262144); 2191f(1099515559935, 262145); 2192f(2199018536961, 524287); 2193f(2199022731264, 524288); 2194f(2199026925567, 524289); 2195f(4398041268225, 1048575); 2196f(4398045462528, 1048576); 2197f(4398049656831, 1048577); 2198f(8796086730753, 2097151); 2199f(8796090925056, 2097152); 2200f(8796095119359, 2097153); 2201f(17592177655809, 4194303); 2202x = 4194304; 2203f(0, 0); 2204f(4194304, 1); 2205f(8388608, 2); 2206f(12582912, 3); 2207f(16777216, 4); 2208f(20971520, 5); 2209f(29360128, 7); 2210f(33554432, 8); 2211f(37748736, 9); 2212f(62914560, 15); 2213f(67108864, 16); 2214f(71303168, 17); 2215f(130023424, 31); 2216f(134217728, 32); 2217f(138412032, 33); 2218f(264241152, 63); 2219f(268435456, 64); 2220f(272629760, 65); 2221f(532676608, 127); 2222f(536870912, 128); 2223f(541065216, 129); 2224f(1069547520, 255); 2225f(1073741824, 256); 2226f(1077936128, 257); 2227f(2143289344, 511); 2228f(2147483648, 512); 2229f(2151677952, 513); 2230f(4290772992, 1023); 2231f(4294967296, 1024); 2232f(4299161600, 1025); 2233f(8585740288, 2047); 2234f(8589934592, 2048); 2235f(8594128896, 2049); 2236f(17175674880, 4095); 2237f(17179869184, 4096); 2238f(17184063488, 4097); 2239f(34355544064, 8191); 2240f(34359738368, 8192); 2241f(34363932672, 8193); 2242f(68715282432, 16383); 2243f(68719476736, 16384); 2244f(68723671040, 16385); 2245f(137434759168, 32767); 2246f(137438953472, 32768); 2247f(137443147776, 32769); 2248f(274873712640, 65535); 2249f(274877906944, 65536); 2250f(274882101248, 65537); 2251f(549751619584, 131071); 2252f(549755813888, 131072); 2253f(549760008192, 131073); 2254f(1099507433472, 262143); 2255f(1099511627776, 262144); 2256f(1099515822080, 262145); 2257f(2199019061248, 524287); 2258f(2199023255552, 524288); 2259f(2199027449856, 524289); 2260f(4398042316800, 1048575); 2261f(4398046511104, 1048576); 2262f(4398050705408, 1048577); 2263f(8796088827904, 2097151); 2264f(8796093022208, 2097152); 2265f(8796097216512, 2097153); 2266f(17592181850112, 4194303); 2267f(17592186044416, 4194304); 2268x = 4194305; 2269f(0, 0); 2270f(4194305, 1); 2271f(8388610, 2); 2272f(12582915, 3); 2273f(16777220, 4); 2274f(20971525, 5); 2275f(29360135, 7); 2276f(33554440, 8); 2277f(37748745, 9); 2278f(62914575, 15); 2279f(67108880, 16); 2280f(71303185, 17); 2281f(130023455, 31); 2282f(134217760, 32); 2283f(138412065, 33); 2284f(264241215, 63); 2285f(268435520, 64); 2286f(272629825, 65); 2287f(532676735, 127); 2288f(536871040, 128); 2289f(541065345, 129); 2290f(1069547775, 255); 2291f(1073742080, 256); 2292f(1077936385, 257); 2293f(2143289855, 511); 2294f(2147484160, 512); 2295f(2151678465, 513); 2296f(4290774015, 1023); 2297f(4294968320, 1024); 2298f(4299162625, 1025); 2299f(8585742335, 2047); 2300f(8589936640, 2048); 2301f(8594130945, 2049); 2302f(17175678975, 4095); 2303f(17179873280, 4096); 2304f(17184067585, 4097); 2305f(34355552255, 8191); 2306f(34359746560, 8192); 2307f(34363940865, 8193); 2308f(68715298815, 16383); 2309f(68719493120, 16384); 2310f(68723687425, 16385); 2311f(137434791935, 32767); 2312f(137438986240, 32768); 2313f(137443180545, 32769); 2314f(274873778175, 65535); 2315f(274877972480, 65536); 2316f(274882166785, 65537); 2317f(549751750655, 131071); 2318f(549755944960, 131072); 2319f(549760139265, 131073); 2320f(1099507695615, 262143); 2321f(1099511889920, 262144); 2322f(1099516084225, 262145); 2323f(2199019585535, 524287); 2324f(2199023779840, 524288); 2325f(2199027974145, 524289); 2326f(4398043365375, 1048575); 2327f(4398047559680, 1048576); 2328f(4398051753985, 1048577); 2329f(8796090925055, 2097151); 2330f(8796095119360, 2097152); 2331f(8796099313665, 2097153); 2332f(17592186044415, 4194303); 2333f(17592190238720, 4194304); 2334f(17592194433025, 4194305); 2335x = 8388607; 2336f(0, 0); 2337f(8388607, 1); 2338f(16777214, 2); 2339f(25165821, 3); 2340f(33554428, 4); 2341f(41943035, 5); 2342f(58720249, 7); 2343f(67108856, 8); 2344f(75497463, 9); 2345f(125829105, 15); 2346f(134217712, 16); 2347f(142606319, 17); 2348f(260046817, 31); 2349f(268435424, 32); 2350f(276824031, 33); 2351f(528482241, 63); 2352f(536870848, 64); 2353f(545259455, 65); 2354f(1065353089, 127); 2355f(1073741696, 128); 2356f(1082130303, 129); 2357f(2139094785, 255); 2358f(2147483392, 256); 2359f(2155871999, 257); 2360f(4286578177, 511); 2361f(4294966784, 512); 2362f(4303355391, 513); 2363f(8581544961, 1023); 2364f(8589933568, 1024); 2365f(8598322175, 1025); 2366f(17171478529, 2047); 2367f(17179867136, 2048); 2368f(17188255743, 2049); 2369f(34351345665, 4095); 2370f(34359734272, 4096); 2371f(34368122879, 4097); 2372f(68711079937, 8191); 2373f(68719468544, 8192); 2374f(68727857151, 8193); 2375f(137430548481, 16383); 2376f(137438937088, 16384); 2377f(137447325695, 16385); 2378f(274869485569, 32767); 2379f(274877874176, 32768); 2380f(274886262783, 32769); 2381f(549747359745, 65535); 2382f(549755748352, 65536); 2383f(549764136959, 65537); 2384f(1099503108097, 131071); 2385f(1099511496704, 131072); 2386f(1099519885311, 131073); 2387f(2199014604801, 262143); 2388f(2199022993408, 262144); 2389f(2199031382015, 262145); 2390f(4398037598209, 524287); 2391f(4398045986816, 524288); 2392f(4398054375423, 524289); 2393f(8796083585025, 1048575); 2394f(8796091973632, 1048576); 2395f(8796100362239, 1048577); 2396f(17592175558657, 2097151); 2397f(17592183947264, 2097152); 2398f(17592192335871, 2097153); 2399f(35184359505921, 4194303); 2400f(35184367894528, 4194304); 2401f(35184376283135, 4194305); 2402f(70368727400449, 8388607); 2403x = 8388608; 2404f(0, 0); 2405f(8388608, 1); 2406f(16777216, 2); 2407f(25165824, 3); 2408f(33554432, 4); 2409f(41943040, 5); 2410f(58720256, 7); 2411f(67108864, 8); 2412f(75497472, 9); 2413f(125829120, 15); 2414f(134217728, 16); 2415f(142606336, 17); 2416f(260046848, 31); 2417f(268435456, 32); 2418f(276824064, 33); 2419f(528482304, 63); 2420f(536870912, 64); 2421f(545259520, 65); 2422f(1065353216, 127); 2423f(1073741824, 128); 2424f(1082130432, 129); 2425f(2139095040, 255); 2426f(2147483648, 256); 2427f(2155872256, 257); 2428f(4286578688, 511); 2429f(4294967296, 512); 2430f(4303355904, 513); 2431f(8581545984, 1023); 2432f(8589934592, 1024); 2433f(8598323200, 1025); 2434f(17171480576, 2047); 2435f(17179869184, 2048); 2436f(17188257792, 2049); 2437f(34351349760, 4095); 2438f(34359738368, 4096); 2439f(34368126976, 4097); 2440f(68711088128, 8191); 2441f(68719476736, 8192); 2442f(68727865344, 8193); 2443f(137430564864, 16383); 2444f(137438953472, 16384); 2445f(137447342080, 16385); 2446f(274869518336, 32767); 2447f(274877906944, 32768); 2448f(274886295552, 32769); 2449f(549747425280, 65535); 2450f(549755813888, 65536); 2451f(549764202496, 65537); 2452f(1099503239168, 131071); 2453f(1099511627776, 131072); 2454f(1099520016384, 131073); 2455f(2199014866944, 262143); 2456f(2199023255552, 262144); 2457f(2199031644160, 262145); 2458f(4398038122496, 524287); 2459f(4398046511104, 524288); 2460f(4398054899712, 524289); 2461f(8796084633600, 1048575); 2462f(8796093022208, 1048576); 2463f(8796101410816, 1048577); 2464f(17592177655808, 2097151); 2465f(17592186044416, 2097152); 2466f(17592194433024, 2097153); 2467f(35184363700224, 4194303); 2468f(35184372088832, 4194304); 2469f(35184380477440, 4194305); 2470f(70368735789056, 8388607); 2471f(70368744177664, 8388608); 2472x = 8388609; 2473f(0, 0); 2474f(8388609, 1); 2475f(16777218, 2); 2476f(25165827, 3); 2477f(33554436, 4); 2478f(41943045, 5); 2479f(58720263, 7); 2480f(67108872, 8); 2481f(75497481, 9); 2482f(125829135, 15); 2483f(134217744, 16); 2484f(142606353, 17); 2485f(260046879, 31); 2486f(268435488, 32); 2487f(276824097, 33); 2488f(528482367, 63); 2489f(536870976, 64); 2490f(545259585, 65); 2491f(1065353343, 127); 2492f(1073741952, 128); 2493f(1082130561, 129); 2494f(2139095295, 255); 2495f(2147483904, 256); 2496f(2155872513, 257); 2497f(4286579199, 511); 2498f(4294967808, 512); 2499f(4303356417, 513); 2500f(8581547007, 1023); 2501f(8589935616, 1024); 2502f(8598324225, 1025); 2503f(17171482623, 2047); 2504f(17179871232, 2048); 2505f(17188259841, 2049); 2506f(34351353855, 4095); 2507f(34359742464, 4096); 2508f(34368131073, 4097); 2509f(68711096319, 8191); 2510f(68719484928, 8192); 2511f(68727873537, 8193); 2512f(137430581247, 16383); 2513f(137438969856, 16384); 2514f(137447358465, 16385); 2515f(274869551103, 32767); 2516f(274877939712, 32768); 2517f(274886328321, 32769); 2518f(549747490815, 65535); 2519f(549755879424, 65536); 2520f(549764268033, 65537); 2521f(1099503370239, 131071); 2522f(1099511758848, 131072); 2523f(1099520147457, 131073); 2524f(2199015129087, 262143); 2525f(2199023517696, 262144); 2526f(2199031906305, 262145); 2527f(4398038646783, 524287); 2528f(4398047035392, 524288); 2529f(4398055424001, 524289); 2530f(8796085682175, 1048575); 2531f(8796094070784, 1048576); 2532f(8796102459393, 1048577); 2533f(17592179752959, 2097151); 2534f(17592188141568, 2097152); 2535f(17592196530177, 2097153); 2536f(35184367894527, 4194303); 2537f(35184376283136, 4194304); 2538f(35184384671745, 4194305); 2539f(70368744177663, 8388607); 2540f(70368752566272, 8388608); 2541f(70368760954881, 8388609); 2542x = 16777215; 2543f(0, 0); 2544f(16777215, 1); 2545f(33554430, 2); 2546f(50331645, 3); 2547f(67108860, 4); 2548f(83886075, 5); 2549f(117440505, 7); 2550f(134217720, 8); 2551f(150994935, 9); 2552f(251658225, 15); 2553f(268435440, 16); 2554f(285212655, 17); 2555f(520093665, 31); 2556f(536870880, 32); 2557f(553648095, 33); 2558f(1056964545, 63); 2559f(1073741760, 64); 2560f(1090518975, 65); 2561f(2130706305, 127); 2562f(2147483520, 128); 2563f(2164260735, 129); 2564f(4278189825, 255); 2565f(4294967040, 256); 2566f(4311744255, 257); 2567f(8573156865, 511); 2568f(8589934080, 512); 2569f(8606711295, 513); 2570f(17163090945, 1023); 2571f(17179868160, 1024); 2572f(17196645375, 1025); 2573f(34342959105, 2047); 2574f(34359736320, 2048); 2575f(34376513535, 2049); 2576f(68702695425, 4095); 2577f(68719472640, 4096); 2578f(68736249855, 4097); 2579f(137422168065, 8191); 2580f(137438945280, 8192); 2581f(137455722495, 8193); 2582f(274861113345, 16383); 2583f(274877890560, 16384); 2584f(274894667775, 16385); 2585f(549739003905, 32767); 2586f(549755781120, 32768); 2587f(549772558335, 32769); 2588f(1099494785025, 65535); 2589f(1099511562240, 65536); 2590f(1099528339455, 65537); 2591f(2199006347265, 131071); 2592f(2199023124480, 131072); 2593f(2199039901695, 131073); 2594f(4398029471745, 262143); 2595f(4398046248960, 262144); 2596f(4398063026175, 262145); 2597f(8796075720705, 524287); 2598f(8796092497920, 524288); 2599f(8796109275135, 524289); 2600f(17592168218625, 1048575); 2601f(17592184995840, 1048576); 2602f(17592201773055, 1048577); 2603f(35184353214465, 2097151); 2604f(35184369991680, 2097152); 2605f(35184386768895, 2097153); 2606f(70368723206145, 4194303); 2607f(70368739983360, 4194304); 2608f(70368756760575, 4194305); 2609f(140737463189505, 8388607); 2610f(140737479966720, 8388608); 2611f(140737496743935, 8388609); 2612f(281474943156225, 16777215); 2613x = 16777216; 2614f(0, 0); 2615f(16777216, 1); 2616f(33554432, 2); 2617f(50331648, 3); 2618f(67108864, 4); 2619f(83886080, 5); 2620f(117440512, 7); 2621f(134217728, 8); 2622f(150994944, 9); 2623f(251658240, 15); 2624f(268435456, 16); 2625f(285212672, 17); 2626f(520093696, 31); 2627f(536870912, 32); 2628f(553648128, 33); 2629f(1056964608, 63); 2630f(1073741824, 64); 2631f(1090519040, 65); 2632f(2130706432, 127); 2633f(2147483648, 128); 2634f(2164260864, 129); 2635f(4278190080, 255); 2636f(4294967296, 256); 2637f(4311744512, 257); 2638f(8573157376, 511); 2639f(8589934592, 512); 2640f(8606711808, 513); 2641f(17163091968, 1023); 2642f(17179869184, 1024); 2643f(17196646400, 1025); 2644f(34342961152, 2047); 2645f(34359738368, 2048); 2646f(34376515584, 2049); 2647f(68702699520, 4095); 2648f(68719476736, 4096); 2649f(68736253952, 4097); 2650f(137422176256, 8191); 2651f(137438953472, 8192); 2652f(137455730688, 8193); 2653f(274861129728, 16383); 2654f(274877906944, 16384); 2655f(274894684160, 16385); 2656f(549739036672, 32767); 2657f(549755813888, 32768); 2658f(549772591104, 32769); 2659f(1099494850560, 65535); 2660f(1099511627776, 65536); 2661f(1099528404992, 65537); 2662f(2199006478336, 131071); 2663f(2199023255552, 131072); 2664f(2199040032768, 131073); 2665f(4398029733888, 262143); 2666f(4398046511104, 262144); 2667f(4398063288320, 262145); 2668f(8796076244992, 524287); 2669f(8796093022208, 524288); 2670f(8796109799424, 524289); 2671f(17592169267200, 1048575); 2672f(17592186044416, 1048576); 2673f(17592202821632, 1048577); 2674f(35184355311616, 2097151); 2675f(35184372088832, 2097152); 2676f(35184388866048, 2097153); 2677f(70368727400448, 4194303); 2678f(70368744177664, 4194304); 2679f(70368760954880, 4194305); 2680f(140737471578112, 8388607); 2681f(140737488355328, 8388608); 2682f(140737505132544, 8388609); 2683f(281474959933440, 16777215); 2684f(281474976710656, 16777216); 2685x = 16777217; 2686f(0, 0); 2687f(16777217, 1); 2688f(33554434, 2); 2689f(50331651, 3); 2690f(67108868, 4); 2691f(83886085, 5); 2692f(117440519, 7); 2693f(134217736, 8); 2694f(150994953, 9); 2695f(251658255, 15); 2696f(268435472, 16); 2697f(285212689, 17); 2698f(520093727, 31); 2699f(536870944, 32); 2700f(553648161, 33); 2701f(1056964671, 63); 2702f(1073741888, 64); 2703f(1090519105, 65); 2704f(2130706559, 127); 2705f(2147483776, 128); 2706f(2164260993, 129); 2707f(4278190335, 255); 2708f(4294967552, 256); 2709f(4311744769, 257); 2710f(8573157887, 511); 2711f(8589935104, 512); 2712f(8606712321, 513); 2713f(17163092991, 1023); 2714f(17179870208, 1024); 2715f(17196647425, 1025); 2716f(34342963199, 2047); 2717f(34359740416, 2048); 2718f(34376517633, 2049); 2719f(68702703615, 4095); 2720f(68719480832, 4096); 2721f(68736258049, 4097); 2722f(137422184447, 8191); 2723f(137438961664, 8192); 2724f(137455738881, 8193); 2725f(274861146111, 16383); 2726f(274877923328, 16384); 2727f(274894700545, 16385); 2728f(549739069439, 32767); 2729f(549755846656, 32768); 2730f(549772623873, 32769); 2731f(1099494916095, 65535); 2732f(1099511693312, 65536); 2733f(1099528470529, 65537); 2734f(2199006609407, 131071); 2735f(2199023386624, 131072); 2736f(2199040163841, 131073); 2737f(4398029996031, 262143); 2738f(4398046773248, 262144); 2739f(4398063550465, 262145); 2740f(8796076769279, 524287); 2741f(8796093546496, 524288); 2742f(8796110323713, 524289); 2743f(17592170315775, 1048575); 2744f(17592187092992, 1048576); 2745f(17592203870209, 1048577); 2746f(35184357408767, 2097151); 2747f(35184374185984, 2097152); 2748f(35184390963201, 2097153); 2749f(70368731594751, 4194303); 2750f(70368748371968, 4194304); 2751f(70368765149185, 4194305); 2752f(140737479966719, 8388607); 2753f(140737496743936, 8388608); 2754f(140737513521153, 8388609); 2755f(281474976710655, 16777215); 2756f(281474993487872, 16777216); 2757f(281475010265089, 16777217); 2758x = 33554431; 2759f(0, 0); 2760f(33554431, 1); 2761f(67108862, 2); 2762f(100663293, 3); 2763f(134217724, 4); 2764f(167772155, 5); 2765f(234881017, 7); 2766f(268435448, 8); 2767f(301989879, 9); 2768f(503316465, 15); 2769f(536870896, 16); 2770f(570425327, 17); 2771f(1040187361, 31); 2772f(1073741792, 32); 2773f(1107296223, 33); 2774f(2113929153, 63); 2775f(2147483584, 64); 2776f(2181038015, 65); 2777f(4261412737, 127); 2778f(4294967168, 128); 2779f(4328521599, 129); 2780f(8556379905, 255); 2781f(8589934336, 256); 2782f(8623488767, 257); 2783f(17146314241, 511); 2784f(17179868672, 512); 2785f(17213423103, 513); 2786f(34326182913, 1023); 2787f(34359737344, 1024); 2788f(34393291775, 1025); 2789f(68685920257, 2047); 2790f(68719474688, 2048); 2791f(68753029119, 2049); 2792f(137405394945, 4095); 2793f(137438949376, 4096); 2794f(137472503807, 4097); 2795f(274844344321, 8191); 2796f(274877898752, 8192); 2797f(274911453183, 8193); 2798f(549722243073, 16383); 2799f(549755797504, 16384); 2800f(549789351935, 16385); 2801f(1099478040577, 32767); 2802f(1099511595008, 32768); 2803f(1099545149439, 32769); 2804f(2198989635585, 65535); 2805f(2199023190016, 65536); 2806f(2199056744447, 65537); 2807f(4398012825601, 131071); 2808f(4398046380032, 131072); 2809f(4398079934463, 131073); 2810f(8796059205633, 262143); 2811f(8796092760064, 262144); 2812f(8796126314495, 262145); 2813f(17592151965697, 524287); 2814f(17592185520128, 524288); 2815f(17592219074559, 524289); 2816f(35184337485825, 1048575); 2817f(35184371040256, 1048576); 2818f(35184404594687, 1048577); 2819f(70368708526081, 2097151); 2820f(70368742080512, 2097152); 2821f(70368775634943, 2097153); 2822f(140737450606593, 4194303); 2823f(140737484161024, 4194304); 2824f(140737517715455, 4194305); 2825f(281474934767617, 8388607); 2826f(281474968322048, 8388608); 2827f(281475001876479, 8388609); 2828f(562949903089665, 16777215); 2829f(562949936644096, 16777216); 2830f(562949970198527, 16777217); 2831f(1125899839733761, 33554431); 2832x = 33554432; 2833f(0, 0); 2834f(33554432, 1); 2835f(67108864, 2); 2836f(100663296, 3); 2837f(134217728, 4); 2838f(167772160, 5); 2839f(234881024, 7); 2840f(268435456, 8); 2841f(301989888, 9); 2842f(503316480, 15); 2843f(536870912, 16); 2844f(570425344, 17); 2845f(1040187392, 31); 2846f(1073741824, 32); 2847f(1107296256, 33); 2848f(2113929216, 63); 2849f(2147483648, 64); 2850f(2181038080, 65); 2851f(4261412864, 127); 2852f(4294967296, 128); 2853f(4328521728, 129); 2854f(8556380160, 255); 2855f(8589934592, 256); 2856f(8623489024, 257); 2857f(17146314752, 511); 2858f(17179869184, 512); 2859f(17213423616, 513); 2860f(34326183936, 1023); 2861f(34359738368, 1024); 2862f(34393292800, 1025); 2863f(68685922304, 2047); 2864f(68719476736, 2048); 2865f(68753031168, 2049); 2866f(137405399040, 4095); 2867f(137438953472, 4096); 2868f(137472507904, 4097); 2869f(274844352512, 8191); 2870f(274877906944, 8192); 2871f(274911461376, 8193); 2872f(549722259456, 16383); 2873f(549755813888, 16384); 2874f(549789368320, 16385); 2875f(1099478073344, 32767); 2876f(1099511627776, 32768); 2877f(1099545182208, 32769); 2878f(2198989701120, 65535); 2879f(2199023255552, 65536); 2880f(2199056809984, 65537); 2881f(4398012956672, 131071); 2882f(4398046511104, 131072); 2883f(4398080065536, 131073); 2884f(8796059467776, 262143); 2885f(8796093022208, 262144); 2886f(8796126576640, 262145); 2887f(17592152489984, 524287); 2888f(17592186044416, 524288); 2889f(17592219598848, 524289); 2890f(35184338534400, 1048575); 2891f(35184372088832, 1048576); 2892f(35184405643264, 1048577); 2893f(70368710623232, 2097151); 2894f(70368744177664, 2097152); 2895f(70368777732096, 2097153); 2896f(140737454800896, 4194303); 2897f(140737488355328, 4194304); 2898f(140737521909760, 4194305); 2899f(281474943156224, 8388607); 2900f(281474976710656, 8388608); 2901f(281475010265088, 8388609); 2902f(562949919866880, 16777215); 2903f(562949953421312, 16777216); 2904f(562949986975744, 16777217); 2905f(1125899873288192, 33554431); 2906f(1125899906842624, 33554432); 2907x = 33554433; 2908f(0, 0); 2909f(33554433, 1); 2910f(67108866, 2); 2911f(100663299, 3); 2912f(134217732, 4); 2913f(167772165, 5); 2914f(234881031, 7); 2915f(268435464, 8); 2916f(301989897, 9); 2917f(503316495, 15); 2918f(536870928, 16); 2919f(570425361, 17); 2920f(1040187423, 31); 2921f(1073741856, 32); 2922f(1107296289, 33); 2923f(2113929279, 63); 2924f(2147483712, 64); 2925f(2181038145, 65); 2926f(4261412991, 127); 2927f(4294967424, 128); 2928f(4328521857, 129); 2929f(8556380415, 255); 2930f(8589934848, 256); 2931f(8623489281, 257); 2932f(17146315263, 511); 2933f(17179869696, 512); 2934f(17213424129, 513); 2935f(34326184959, 1023); 2936f(34359739392, 1024); 2937f(34393293825, 1025); 2938f(68685924351, 2047); 2939f(68719478784, 2048); 2940f(68753033217, 2049); 2941f(137405403135, 4095); 2942f(137438957568, 4096); 2943f(137472512001, 4097); 2944f(274844360703, 8191); 2945f(274877915136, 8192); 2946f(274911469569, 8193); 2947f(549722275839, 16383); 2948f(549755830272, 16384); 2949f(549789384705, 16385); 2950f(1099478106111, 32767); 2951f(1099511660544, 32768); 2952f(1099545214977, 32769); 2953f(2198989766655, 65535); 2954f(2199023321088, 65536); 2955f(2199056875521, 65537); 2956f(4398013087743, 131071); 2957f(4398046642176, 131072); 2958f(4398080196609, 131073); 2959f(8796059729919, 262143); 2960f(8796093284352, 262144); 2961f(8796126838785, 262145); 2962f(17592153014271, 524287); 2963f(17592186568704, 524288); 2964f(17592220123137, 524289); 2965f(35184339582975, 1048575); 2966f(35184373137408, 1048576); 2967f(35184406691841, 1048577); 2968f(70368712720383, 2097151); 2969f(70368746274816, 2097152); 2970f(70368779829249, 2097153); 2971f(140737458995199, 4194303); 2972f(140737492549632, 4194304); 2973f(140737526104065, 4194305); 2974f(281474951544831, 8388607); 2975f(281474985099264, 8388608); 2976f(281475018653697, 8388609); 2977f(562949936644095, 16777215); 2978f(562949970198528, 16777216); 2979f(562950003752961, 16777217); 2980f(1125899906842623, 33554431); 2981f(1125899940397056, 33554432); 2982f(1125899973951489, 33554433); 2983x = 67108863; 2984f(0, 0); 2985f(67108863, 1); 2986f(134217726, 2); 2987f(201326589, 3); 2988f(268435452, 4); 2989f(335544315, 5); 2990f(469762041, 7); 2991f(536870904, 8); 2992f(603979767, 9); 2993f(1006632945, 15); 2994f(1073741808, 16); 2995f(1140850671, 17); 2996f(2080374753, 31); 2997f(2147483616, 32); 2998f(2214592479, 33); 2999f(4227858369, 63); 3000f(4294967232, 64); 3001f(4362076095, 65); 3002f(8522825601, 127); 3003f(8589934464, 128); 3004f(8657043327, 129); 3005f(17112760065, 255); 3006f(17179868928, 256); 3007f(17246977791, 257); 3008f(34292628993, 511); 3009f(34359737856, 512); 3010f(34426846719, 513); 3011f(68652366849, 1023); 3012f(68719475712, 1024); 3013f(68786584575, 1025); 3014f(137371842561, 2047); 3015f(137438951424, 2048); 3016f(137506060287, 2049); 3017f(274810793985, 4095); 3018f(274877902848, 4096); 3019f(274945011711, 4097); 3020f(549688696833, 8191); 3021f(549755805696, 8192); 3022f(549822914559, 8193); 3023f(1099444502529, 16383); 3024f(1099511611392, 16384); 3025f(1099578720255, 16385); 3026f(2198956113921, 32767); 3027f(2199023222784, 32768); 3028f(2199090331647, 32769); 3029f(4397979336705, 65535); 3030f(4398046445568, 65536); 3031f(4398113554431, 65537); 3032f(8796025782273, 131071); 3033f(8796092891136, 131072); 3034f(8796159999999, 131073); 3035f(17592118673409, 262143); 3036f(17592185782272, 262144); 3037f(17592252891135, 262145); 3038f(35184304455681, 524287); 3039f(35184371564544, 524288); 3040f(35184438673407, 524289); 3041f(70368676020225, 1048575); 3042f(70368743129088, 1048576); 3043f(70368810237951, 1048577); 3044f(140737419149313, 2097151); 3045f(140737486258176, 2097152); 3046f(140737553367039, 2097153); 3047f(281474905407489, 4194303); 3048f(281474972516352, 4194304); 3049f(281475039625215, 4194305); 3050f(562949877923841, 8388607); 3051f(562949945032704, 8388608); 3052f(562950012141567, 8388609); 3053f(1125899822956545, 16777215); 3054f(1125899890065408, 16777216); 3055f(1125899957174271, 16777217); 3056x = 67108864; 3057f(0, 0); 3058f(67108864, 1); 3059f(134217728, 2); 3060f(201326592, 3); 3061f(268435456, 4); 3062f(335544320, 5); 3063f(469762048, 7); 3064f(536870912, 8); 3065f(603979776, 9); 3066f(1006632960, 15); 3067f(1073741824, 16); 3068f(1140850688, 17); 3069f(2080374784, 31); 3070f(2147483648, 32); 3071f(2214592512, 33); 3072f(4227858432, 63); 3073f(4294967296, 64); 3074f(4362076160, 65); 3075f(8522825728, 127); 3076f(8589934592, 128); 3077f(8657043456, 129); 3078f(17112760320, 255); 3079f(17179869184, 256); 3080f(17246978048, 257); 3081f(34292629504, 511); 3082f(34359738368, 512); 3083f(34426847232, 513); 3084f(68652367872, 1023); 3085f(68719476736, 1024); 3086f(68786585600, 1025); 3087f(137371844608, 2047); 3088f(137438953472, 2048); 3089f(137506062336, 2049); 3090f(274810798080, 4095); 3091f(274877906944, 4096); 3092f(274945015808, 4097); 3093f(549688705024, 8191); 3094f(549755813888, 8192); 3095f(549822922752, 8193); 3096f(1099444518912, 16383); 3097f(1099511627776, 16384); 3098f(1099578736640, 16385); 3099f(2198956146688, 32767); 3100f(2199023255552, 32768); 3101f(2199090364416, 32769); 3102f(4397979402240, 65535); 3103f(4398046511104, 65536); 3104f(4398113619968, 65537); 3105f(8796025913344, 131071); 3106f(8796093022208, 131072); 3107f(8796160131072, 131073); 3108f(17592118935552, 262143); 3109f(17592186044416, 262144); 3110f(17592253153280, 262145); 3111f(35184304979968, 524287); 3112f(35184372088832, 524288); 3113f(35184439197696, 524289); 3114f(70368677068800, 1048575); 3115f(70368744177664, 1048576); 3116f(70368811286528, 1048577); 3117f(140737421246464, 2097151); 3118f(140737488355328, 2097152); 3119f(140737555464192, 2097153); 3120f(281474909601792, 4194303); 3121f(281474976710656, 4194304); 3122f(281475043819520, 4194305); 3123f(562949886312448, 8388607); 3124f(562949953421312, 8388608); 3125f(562950020530176, 8388609); 3126f(1125899839733760, 16777215); 3127f(1125899906842624, 16777216); 3128f(1125899973951488, 16777217); 3129x = 67108865; 3130f(0, 0); 3131f(67108865, 1); 3132f(134217730, 2); 3133f(201326595, 3); 3134f(268435460, 4); 3135f(335544325, 5); 3136f(469762055, 7); 3137f(536870920, 8); 3138f(603979785, 9); 3139f(1006632975, 15); 3140f(1073741840, 16); 3141f(1140850705, 17); 3142f(2080374815, 31); 3143f(2147483680, 32); 3144f(2214592545, 33); 3145f(4227858495, 63); 3146f(4294967360, 64); 3147f(4362076225, 65); 3148f(8522825855, 127); 3149f(8589934720, 128); 3150f(8657043585, 129); 3151f(17112760575, 255); 3152f(17179869440, 256); 3153f(17246978305, 257); 3154f(34292630015, 511); 3155f(34359738880, 512); 3156f(34426847745, 513); 3157f(68652368895, 1023); 3158f(68719477760, 1024); 3159f(68786586625, 1025); 3160f(137371846655, 2047); 3161f(137438955520, 2048); 3162f(137506064385, 2049); 3163f(274810802175, 4095); 3164f(274877911040, 4096); 3165f(274945019905, 4097); 3166f(549688713215, 8191); 3167f(549755822080, 8192); 3168f(549822930945, 8193); 3169f(1099444535295, 16383); 3170f(1099511644160, 16384); 3171f(1099578753025, 16385); 3172f(2198956179455, 32767); 3173f(2199023288320, 32768); 3174f(2199090397185, 32769); 3175f(4397979467775, 65535); 3176f(4398046576640, 65536); 3177f(4398113685505, 65537); 3178f(8796026044415, 131071); 3179f(8796093153280, 131072); 3180f(8796160262145, 131073); 3181f(17592119197695, 262143); 3182f(17592186306560, 262144); 3183f(17592253415425, 262145); 3184f(35184305504255, 524287); 3185f(35184372613120, 524288); 3186f(35184439721985, 524289); 3187f(70368678117375, 1048575); 3188f(70368745226240, 1048576); 3189f(70368812335105, 1048577); 3190f(140737423343615, 2097151); 3191f(140737490452480, 2097152); 3192f(140737557561345, 2097153); 3193f(281474913796095, 4194303); 3194f(281474980904960, 4194304); 3195f(281475048013825, 4194305); 3196f(562949894701055, 8388607); 3197f(562949961809920, 8388608); 3198f(562950028918785, 8388609); 3199f(1125899856510975, 16777215); 3200f(1125899923619840, 16777216); 3201f(1125899990728705, 16777217); 3202x = 134217727; 3203f(0, 0); 3204f(134217727, 1); 3205f(268435454, 2); 3206f(402653181, 3); 3207f(536870908, 4); 3208f(671088635, 5); 3209f(939524089, 7); 3210f(1073741816, 8); 3211f(1207959543, 9); 3212f(2013265905, 15); 3213f(2147483632, 16); 3214f(2281701359, 17); 3215f(4160749537, 31); 3216f(4294967264, 32); 3217f(4429184991, 33); 3218f(8455716801, 63); 3219f(8589934528, 64); 3220f(8724152255, 65); 3221f(17045651329, 127); 3222f(17179869056, 128); 3223f(17314086783, 129); 3224f(34225520385, 255); 3225f(34359738112, 256); 3226f(34493955839, 257); 3227f(68585258497, 511); 3228f(68719476224, 512); 3229f(68853693951, 513); 3230f(137304734721, 1023); 3231f(137438952448, 1024); 3232f(137573170175, 1025); 3233f(274743687169, 2047); 3234f(274877904896, 2048); 3235f(275012122623, 2049); 3236f(549621592065, 4095); 3237f(549755809792, 4096); 3238f(549890027519, 4097); 3239f(1099377401857, 8191); 3240f(1099511619584, 8192); 3241f(1099645837311, 8193); 3242f(2198889021441, 16383); 3243f(2199023239168, 16384); 3244f(2199157456895, 16385); 3245f(4397912260609, 32767); 3246f(4398046478336, 32768); 3247f(4398180696063, 32769); 3248f(8795958738945, 65535); 3249f(8796092956672, 65536); 3250f(8796227174399, 65537); 3251f(17592051695617, 131071); 3252f(17592185913344, 131072); 3253f(17592320131071, 131073); 3254f(35184237608961, 262143); 3255f(35184371826688, 262144); 3256f(35184506044415, 262145); 3257f(70368609435649, 524287); 3258f(70368743653376, 524288); 3259f(70368877871103, 524289); 3260f(140737353089025, 1048575); 3261f(140737487306752, 1048576); 3262f(140737621524479, 1048577); 3263f(281474840395777, 2097151); 3264f(281474974613504, 2097152); 3265f(281475108831231, 2097153); 3266f(562949815009281, 4194303); 3267f(562949949227008, 4194304); 3268f(562950083444735, 4194305); 3269f(1125899764236289, 8388607); 3270f(1125899898454016, 8388608); 3271f(1125900032671743, 8388609); 3272x = 134217728; 3273f(0, 0); 3274f(134217728, 1); 3275f(268435456, 2); 3276f(402653184, 3); 3277f(536870912, 4); 3278f(671088640, 5); 3279f(939524096, 7); 3280f(1073741824, 8); 3281f(1207959552, 9); 3282f(2013265920, 15); 3283f(2147483648, 16); 3284f(2281701376, 17); 3285f(4160749568, 31); 3286f(4294967296, 32); 3287f(4429185024, 33); 3288f(8455716864, 63); 3289f(8589934592, 64); 3290f(8724152320, 65); 3291f(17045651456, 127); 3292f(17179869184, 128); 3293f(17314086912, 129); 3294f(34225520640, 255); 3295f(34359738368, 256); 3296f(34493956096, 257); 3297f(68585259008, 511); 3298f(68719476736, 512); 3299f(68853694464, 513); 3300f(137304735744, 1023); 3301f(137438953472, 1024); 3302f(137573171200, 1025); 3303f(274743689216, 2047); 3304f(274877906944, 2048); 3305f(275012124672, 2049); 3306f(549621596160, 4095); 3307f(549755813888, 4096); 3308f(549890031616, 4097); 3309f(1099377410048, 8191); 3310f(1099511627776, 8192); 3311f(1099645845504, 8193); 3312f(2198889037824, 16383); 3313f(2199023255552, 16384); 3314f(2199157473280, 16385); 3315f(4397912293376, 32767); 3316f(4398046511104, 32768); 3317f(4398180728832, 32769); 3318f(8795958804480, 65535); 3319f(8796093022208, 65536); 3320f(8796227239936, 65537); 3321f(17592051826688, 131071); 3322f(17592186044416, 131072); 3323f(17592320262144, 131073); 3324f(35184237871104, 262143); 3325f(35184372088832, 262144); 3326f(35184506306560, 262145); 3327f(70368609959936, 524287); 3328f(70368744177664, 524288); 3329f(70368878395392, 524289); 3330f(140737354137600, 1048575); 3331f(140737488355328, 1048576); 3332f(140737622573056, 1048577); 3333f(281474842492928, 2097151); 3334f(281474976710656, 2097152); 3335f(281475110928384, 2097153); 3336f(562949819203584, 4194303); 3337f(562949953421312, 4194304); 3338f(562950087639040, 4194305); 3339f(1125899772624896, 8388607); 3340f(1125899906842624, 8388608); 3341f(1125900041060352, 8388609); 3342x = 134217729; 3343f(0, 0); 3344f(134217729, 1); 3345f(268435458, 2); 3346f(402653187, 3); 3347f(536870916, 4); 3348f(671088645, 5); 3349f(939524103, 7); 3350f(1073741832, 8); 3351f(1207959561, 9); 3352f(2013265935, 15); 3353f(2147483664, 16); 3354f(2281701393, 17); 3355f(4160749599, 31); 3356f(4294967328, 32); 3357f(4429185057, 33); 3358f(8455716927, 63); 3359f(8589934656, 64); 3360f(8724152385, 65); 3361f(17045651583, 127); 3362f(17179869312, 128); 3363f(17314087041, 129); 3364f(34225520895, 255); 3365f(34359738624, 256); 3366f(34493956353, 257); 3367f(68585259519, 511); 3368f(68719477248, 512); 3369f(68853694977, 513); 3370f(137304736767, 1023); 3371f(137438954496, 1024); 3372f(137573172225, 1025); 3373f(274743691263, 2047); 3374f(274877908992, 2048); 3375f(275012126721, 2049); 3376f(549621600255, 4095); 3377f(549755817984, 4096); 3378f(549890035713, 4097); 3379f(1099377418239, 8191); 3380f(1099511635968, 8192); 3381f(1099645853697, 8193); 3382f(2198889054207, 16383); 3383f(2199023271936, 16384); 3384f(2199157489665, 16385); 3385f(4397912326143, 32767); 3386f(4398046543872, 32768); 3387f(4398180761601, 32769); 3388f(8795958870015, 65535); 3389f(8796093087744, 65536); 3390f(8796227305473, 65537); 3391f(17592051957759, 131071); 3392f(17592186175488, 131072); 3393f(17592320393217, 131073); 3394f(35184238133247, 262143); 3395f(35184372350976, 262144); 3396f(35184506568705, 262145); 3397f(70368610484223, 524287); 3398f(70368744701952, 524288); 3399f(70368878919681, 524289); 3400f(140737355186175, 1048575); 3401f(140737489403904, 1048576); 3402f(140737623621633, 1048577); 3403f(281474844590079, 2097151); 3404f(281474978807808, 2097152); 3405f(281475113025537, 2097153); 3406f(562949823397887, 4194303); 3407f(562949957615616, 4194304); 3408f(562950091833345, 4194305); 3409f(1125899781013503, 8388607); 3410f(1125899915231232, 8388608); 3411f(1125900049448961, 8388609); 3412x = 268435455; 3413f(0, 0); 3414f(268435455, 1); 3415f(536870910, 2); 3416f(805306365, 3); 3417f(1073741820, 4); 3418f(1342177275, 5); 3419f(1879048185, 7); 3420f(2147483640, 8); 3421f(2415919095, 9); 3422f(4026531825, 15); 3423f(4294967280, 16); 3424f(4563402735, 17); 3425f(8321499105, 31); 3426f(8589934560, 32); 3427f(8858370015, 33); 3428f(16911433665, 63); 3429f(17179869120, 64); 3430f(17448304575, 65); 3431f(34091302785, 127); 3432f(34359738240, 128); 3433f(34628173695, 129); 3434f(68451041025, 255); 3435f(68719476480, 256); 3436f(68987911935, 257); 3437f(137170517505, 511); 3438f(137438952960, 512); 3439f(137707388415, 513); 3440f(274609470465, 1023); 3441f(274877905920, 1024); 3442f(275146341375, 1025); 3443f(549487376385, 2047); 3444f(549755811840, 2048); 3445f(550024247295, 2049); 3446f(1099243188225, 4095); 3447f(1099511623680, 4096); 3448f(1099780059135, 4097); 3449f(2198754811905, 8191); 3450f(2199023247360, 8192); 3451f(2199291682815, 8193); 3452f(4397778059265, 16383); 3453f(4398046494720, 16384); 3454f(4398314930175, 16385); 3455f(8795824553985, 32767); 3456f(8796092989440, 32768); 3457f(8796361424895, 32769); 3458f(17591917543425, 65535); 3459f(17592185978880, 65536); 3460f(17592454414335, 65537); 3461f(35184103522305, 131071); 3462f(35184371957760, 131072); 3463f(35184640393215, 131073); 3464f(70368475480065, 262143); 3465f(70368743915520, 262144); 3466f(70369012350975, 262145); 3467f(140737219395585, 524287); 3468f(140737487831040, 524288); 3469f(140737756266495, 524289); 3470f(281474707226625, 1048575); 3471f(281474975662080, 1048576); 3472f(281475244097535, 1048577); 3473f(562949682888705, 2097151); 3474f(562949951324160, 2097152); 3475f(562950219759615, 2097153); 3476f(1125899634212865, 4194303); 3477f(1125899902648320, 4194304); 3478f(1125900171083775, 4194305); 3479x = 268435456; 3480f(0, 0); 3481f(268435456, 1); 3482f(536870912, 2); 3483f(805306368, 3); 3484f(1073741824, 4); 3485f(1342177280, 5); 3486f(1879048192, 7); 3487f(2147483648, 8); 3488f(2415919104, 9); 3489f(4026531840, 15); 3490f(4294967296, 16); 3491f(4563402752, 17); 3492f(8321499136, 31); 3493f(8589934592, 32); 3494f(8858370048, 33); 3495f(16911433728, 63); 3496f(17179869184, 64); 3497f(17448304640, 65); 3498f(34091302912, 127); 3499f(34359738368, 128); 3500f(34628173824, 129); 3501f(68451041280, 255); 3502f(68719476736, 256); 3503f(68987912192, 257); 3504f(137170518016, 511); 3505f(137438953472, 512); 3506f(137707388928, 513); 3507f(274609471488, 1023); 3508f(274877906944, 1024); 3509f(275146342400, 1025); 3510f(549487378432, 2047); 3511f(549755813888, 2048); 3512f(550024249344, 2049); 3513f(1099243192320, 4095); 3514f(1099511627776, 4096); 3515f(1099780063232, 4097); 3516f(2198754820096, 8191); 3517f(2199023255552, 8192); 3518f(2199291691008, 8193); 3519f(4397778075648, 16383); 3520f(4398046511104, 16384); 3521f(4398314946560, 16385); 3522f(8795824586752, 32767); 3523f(8796093022208, 32768); 3524f(8796361457664, 32769); 3525f(17591917608960, 65535); 3526f(17592186044416, 65536); 3527f(17592454479872, 65537); 3528f(35184103653376, 131071); 3529f(35184372088832, 131072); 3530f(35184640524288, 131073); 3531f(70368475742208, 262143); 3532f(70368744177664, 262144); 3533f(70369012613120, 262145); 3534f(140737219919872, 524287); 3535f(140737488355328, 524288); 3536f(140737756790784, 524289); 3537f(281474708275200, 1048575); 3538f(281474976710656, 1048576); 3539f(281475245146112, 1048577); 3540f(562949684985856, 2097151); 3541f(562949953421312, 2097152); 3542f(562950221856768, 2097153); 3543f(1125899638407168, 4194303); 3544f(1125899906842624, 4194304); 3545f(1125900175278080, 4194305); 3546x = 268435457; 3547f(0, 0); 3548f(268435457, 1); 3549f(536870914, 2); 3550f(805306371, 3); 3551f(1073741828, 4); 3552f(1342177285, 5); 3553f(1879048199, 7); 3554f(2147483656, 8); 3555f(2415919113, 9); 3556f(4026531855, 15); 3557f(4294967312, 16); 3558f(4563402769, 17); 3559f(8321499167, 31); 3560f(8589934624, 32); 3561f(8858370081, 33); 3562f(16911433791, 63); 3563f(17179869248, 64); 3564f(17448304705, 65); 3565f(34091303039, 127); 3566f(34359738496, 128); 3567f(34628173953, 129); 3568f(68451041535, 255); 3569f(68719476992, 256); 3570f(68987912449, 257); 3571f(137170518527, 511); 3572f(137438953984, 512); 3573f(137707389441, 513); 3574f(274609472511, 1023); 3575f(274877907968, 1024); 3576f(275146343425, 1025); 3577f(549487380479, 2047); 3578f(549755815936, 2048); 3579f(550024251393, 2049); 3580f(1099243196415, 4095); 3581f(1099511631872, 4096); 3582f(1099780067329, 4097); 3583f(2198754828287, 8191); 3584f(2199023263744, 8192); 3585f(2199291699201, 8193); 3586f(4397778092031, 16383); 3587f(4398046527488, 16384); 3588f(4398314962945, 16385); 3589f(8795824619519, 32767); 3590f(8796093054976, 32768); 3591f(8796361490433, 32769); 3592f(17591917674495, 65535); 3593f(17592186109952, 65536); 3594f(17592454545409, 65537); 3595f(35184103784447, 131071); 3596f(35184372219904, 131072); 3597f(35184640655361, 131073); 3598f(70368476004351, 262143); 3599f(70368744439808, 262144); 3600f(70369012875265, 262145); 3601f(140737220444159, 524287); 3602f(140737488879616, 524288); 3603f(140737757315073, 524289); 3604f(281474709323775, 1048575); 3605f(281474977759232, 1048576); 3606f(281475246194689, 1048577); 3607f(562949687083007, 2097151); 3608f(562949955518464, 2097152); 3609f(562950223953921, 2097153); 3610f(1125899642601471, 4194303); 3611f(1125899911036928, 4194304); 3612f(1125900179472385, 4194305); 3613x = 536870911; 3614f(0, 0); 3615f(536870911, 1); 3616f(1073741822, 2); 3617f(1610612733, 3); 3618f(2147483644, 4); 3619f(2684354555, 5); 3620f(3758096377, 7); 3621f(4294967288, 8); 3622f(4831838199, 9); 3623f(8053063665, 15); 3624f(8589934576, 16); 3625f(9126805487, 17); 3626f(16642998241, 31); 3627f(17179869152, 32); 3628f(17716740063, 33); 3629f(33822867393, 63); 3630f(34359738304, 64); 3631f(34896609215, 65); 3632f(68182605697, 127); 3633f(68719476608, 128); 3634f(69256347519, 129); 3635f(136902082305, 255); 3636f(137438953216, 256); 3637f(137975824127, 257); 3638f(274341035521, 511); 3639f(274877906432, 512); 3640f(275414777343, 513); 3641f(549218941953, 1023); 3642f(549755812864, 1024); 3643f(550292683775, 1025); 3644f(1098974754817, 2047); 3645f(1099511625728, 2048); 3646f(1100048496639, 2049); 3647f(2198486380545, 4095); 3648f(2199023251456, 4096); 3649f(2199560122367, 4097); 3650f(4397509632001, 8191); 3651f(4398046502912, 8192); 3652f(4398583373823, 8193); 3653f(8795556134913, 16383); 3654f(8796093005824, 16384); 3655f(8796629876735, 16385); 3656f(17591649140737, 32767); 3657f(17592186011648, 32768); 3658f(17592722882559, 32769); 3659f(35183835152385, 65535); 3660f(35184372023296, 65536); 3661f(35184908894207, 65537); 3662f(70368207175681, 131071); 3663f(70368744046592, 131072); 3664f(70369280917503, 131073); 3665f(140736951222273, 262143); 3666f(140737488093184, 262144); 3667f(140738024964095, 262145); 3668f(281474439315457, 524287); 3669f(281474976186368, 524288); 3670f(281475513057279, 524289); 3671f(562949415501825, 1048575); 3672f(562949952372736, 1048576); 3673f(562950489243647, 1048577); 3674f(1125899367874561, 2097151); 3675f(1125899904745472, 2097152); 3676f(1125900441616383, 2097153); 3677x = 536870912; 3678f(0, 0); 3679f(536870912, 1); 3680f(1073741824, 2); 3681f(1610612736, 3); 3682f(2147483648, 4); 3683f(2684354560, 5); 3684f(3758096384, 7); 3685f(4294967296, 8); 3686f(4831838208, 9); 3687f(8053063680, 15); 3688f(8589934592, 16); 3689f(9126805504, 17); 3690f(16642998272, 31); 3691f(17179869184, 32); 3692f(17716740096, 33); 3693f(33822867456, 63); 3694f(34359738368, 64); 3695f(34896609280, 65); 3696f(68182605824, 127); 3697f(68719476736, 128); 3698f(69256347648, 129); 3699f(136902082560, 255); 3700f(137438953472, 256); 3701f(137975824384, 257); 3702f(274341036032, 511); 3703f(274877906944, 512); 3704f(275414777856, 513); 3705f(549218942976, 1023); 3706f(549755813888, 1024); 3707f(550292684800, 1025); 3708f(1098974756864, 2047); 3709f(1099511627776, 2048); 3710f(1100048498688, 2049); 3711f(2198486384640, 4095); 3712f(2199023255552, 4096); 3713f(2199560126464, 4097); 3714f(4397509640192, 8191); 3715f(4398046511104, 8192); 3716f(4398583382016, 8193); 3717f(8795556151296, 16383); 3718f(8796093022208, 16384); 3719f(8796629893120, 16385); 3720f(17591649173504, 32767); 3721f(17592186044416, 32768); 3722f(17592722915328, 32769); 3723f(35183835217920, 65535); 3724f(35184372088832, 65536); 3725f(35184908959744, 65537); 3726f(70368207306752, 131071); 3727f(70368744177664, 131072); 3728f(70369281048576, 131073); 3729f(140736951484416, 262143); 3730f(140737488355328, 262144); 3731f(140738025226240, 262145); 3732f(281474439839744, 524287); 3733f(281474976710656, 524288); 3734f(281475513581568, 524289); 3735f(562949416550400, 1048575); 3736f(562949953421312, 1048576); 3737f(562950490292224, 1048577); 3738f(1125899369971712, 2097151); 3739f(1125899906842624, 2097152); 3740f(1125900443713536, 2097153); 3741x = 536870913; 3742f(0, 0); 3743f(536870913, 1); 3744f(1073741826, 2); 3745f(1610612739, 3); 3746f(2147483652, 4); 3747f(2684354565, 5); 3748f(3758096391, 7); 3749f(4294967304, 8); 3750f(4831838217, 9); 3751f(8053063695, 15); 3752f(8589934608, 16); 3753f(9126805521, 17); 3754f(16642998303, 31); 3755f(17179869216, 32); 3756f(17716740129, 33); 3757f(33822867519, 63); 3758f(34359738432, 64); 3759f(34896609345, 65); 3760f(68182605951, 127); 3761f(68719476864, 128); 3762f(69256347777, 129); 3763f(136902082815, 255); 3764f(137438953728, 256); 3765f(137975824641, 257); 3766f(274341036543, 511); 3767f(274877907456, 512); 3768f(275414778369, 513); 3769f(549218943999, 1023); 3770f(549755814912, 1024); 3771f(550292685825, 1025); 3772f(1098974758911, 2047); 3773f(1099511629824, 2048); 3774f(1100048500737, 2049); 3775f(2198486388735, 4095); 3776f(2199023259648, 4096); 3777f(2199560130561, 4097); 3778f(4397509648383, 8191); 3779f(4398046519296, 8192); 3780f(4398583390209, 8193); 3781f(8795556167679, 16383); 3782f(8796093038592, 16384); 3783f(8796629909505, 16385); 3784f(17591649206271, 32767); 3785f(17592186077184, 32768); 3786f(17592722948097, 32769); 3787f(35183835283455, 65535); 3788f(35184372154368, 65536); 3789f(35184909025281, 65537); 3790f(70368207437823, 131071); 3791f(70368744308736, 131072); 3792f(70369281179649, 131073); 3793f(140736951746559, 262143); 3794f(140737488617472, 262144); 3795f(140738025488385, 262145); 3796f(281474440364031, 524287); 3797f(281474977234944, 524288); 3798f(281475514105857, 524289); 3799f(562949417598975, 1048575); 3800f(562949954469888, 1048576); 3801f(562950491340801, 1048577); 3802f(1125899372068863, 2097151); 3803f(1125899908939776, 2097152); 3804f(1125900445810689, 2097153); 3805x = 1073741823; 3806f(0, 0); 3807f(1073741823, 1); 3808f(2147483646, 2); 3809f(3221225469, 3); 3810f(4294967292, 4); 3811f(5368709115, 5); 3812f(7516192761, 7); 3813f(8589934584, 8); 3814f(9663676407, 9); 3815f(16106127345, 15); 3816f(17179869168, 16); 3817f(18253610991, 17); 3818f(33285996513, 31); 3819f(34359738336, 32); 3820f(35433480159, 33); 3821f(67645734849, 63); 3822f(68719476672, 64); 3823f(69793218495, 65); 3824f(136365211521, 127); 3825f(137438953344, 128); 3826f(138512695167, 129); 3827f(273804164865, 255); 3828f(274877906688, 256); 3829f(275951648511, 257); 3830f(548682071553, 511); 3831f(549755813376, 512); 3832f(550829555199, 513); 3833f(1098437884929, 1023); 3834f(1099511626752, 1024); 3835f(1100585368575, 1025); 3836f(2197949511681, 2047); 3837f(2199023253504, 2048); 3838f(2200096995327, 2049); 3839f(4396972765185, 4095); 3840f(4398046507008, 4096); 3841f(4399120248831, 4097); 3842f(8795019272193, 8191); 3843f(8796093014016, 8192); 3844f(8797166755839, 8193); 3845f(17591112286209, 16383); 3846f(17592186028032, 16384); 3847f(17593259769855, 16385); 3848f(35183298314241, 32767); 3849f(35184372056064, 32768); 3850f(35185445797887, 32769); 3851f(70367670370305, 65535); 3852f(70368744112128, 65536); 3853f(70369817853951, 65537); 3854f(140736414482433, 131071); 3855f(140737488224256, 131072); 3856f(140738561966079, 131073); 3857f(281473902706689, 262143); 3858f(281474976448512, 262144); 3859f(281476050190335, 262145); 3860f(562948879155201, 524287); 3861f(562949952897024, 524288); 3862f(562951026638847, 524289); 3863f(1125898832052225, 1048575); 3864f(1125899905794048, 1048576); 3865f(1125900979535871, 1048577); 3866x = 1073741824; 3867f(0, 0); 3868f(1073741824, 1); 3869f(2147483648, 2); 3870f(3221225472, 3); 3871f(4294967296, 4); 3872f(5368709120, 5); 3873f(7516192768, 7); 3874f(8589934592, 8); 3875f(9663676416, 9); 3876f(16106127360, 15); 3877f(17179869184, 16); 3878f(18253611008, 17); 3879f(33285996544, 31); 3880f(34359738368, 32); 3881f(35433480192, 33); 3882f(67645734912, 63); 3883f(68719476736, 64); 3884f(69793218560, 65); 3885f(136365211648, 127); 3886f(137438953472, 128); 3887f(138512695296, 129); 3888f(273804165120, 255); 3889f(274877906944, 256); 3890f(275951648768, 257); 3891f(548682072064, 511); 3892f(549755813888, 512); 3893f(550829555712, 513); 3894f(1098437885952, 1023); 3895f(1099511627776, 1024); 3896f(1100585369600, 1025); 3897f(2197949513728, 2047); 3898f(2199023255552, 2048); 3899f(2200096997376, 2049); 3900f(4396972769280, 4095); 3901f(4398046511104, 4096); 3902f(4399120252928, 4097); 3903f(8795019280384, 8191); 3904f(8796093022208, 8192); 3905f(8797166764032, 8193); 3906f(17591112302592, 16383); 3907f(17592186044416, 16384); 3908f(17593259786240, 16385); 3909f(35183298347008, 32767); 3910f(35184372088832, 32768); 3911f(35185445830656, 32769); 3912f(70367670435840, 65535); 3913f(70368744177664, 65536); 3914f(70369817919488, 65537); 3915f(140736414613504, 131071); 3916f(140737488355328, 131072); 3917f(140738562097152, 131073); 3918f(281473902968832, 262143); 3919f(281474976710656, 262144); 3920f(281476050452480, 262145); 3921f(562948879679488, 524287); 3922f(562949953421312, 524288); 3923f(562951027163136, 524289); 3924f(1125898833100800, 1048575); 3925f(1125899906842624, 1048576); 3926f(1125900980584448, 1048577); 3927x = 1073741825; 3928f(0, 0); 3929f(1073741825, 1); 3930f(2147483650, 2); 3931f(3221225475, 3); 3932f(4294967300, 4); 3933f(5368709125, 5); 3934f(7516192775, 7); 3935f(8589934600, 8); 3936f(9663676425, 9); 3937f(16106127375, 15); 3938f(17179869200, 16); 3939f(18253611025, 17); 3940f(33285996575, 31); 3941f(34359738400, 32); 3942f(35433480225, 33); 3943f(67645734975, 63); 3944f(68719476800, 64); 3945f(69793218625, 65); 3946f(136365211775, 127); 3947f(137438953600, 128); 3948f(138512695425, 129); 3949f(273804165375, 255); 3950f(274877907200, 256); 3951f(275951649025, 257); 3952f(548682072575, 511); 3953f(549755814400, 512); 3954f(550829556225, 513); 3955f(1098437886975, 1023); 3956f(1099511628800, 1024); 3957f(1100585370625, 1025); 3958f(2197949515775, 2047); 3959f(2199023257600, 2048); 3960f(2200096999425, 2049); 3961f(4396972773375, 4095); 3962f(4398046515200, 4096); 3963f(4399120257025, 4097); 3964f(8795019288575, 8191); 3965f(8796093030400, 8192); 3966f(8797166772225, 8193); 3967f(17591112318975, 16383); 3968f(17592186060800, 16384); 3969f(17593259802625, 16385); 3970f(35183298379775, 32767); 3971f(35184372121600, 32768); 3972f(35185445863425, 32769); 3973f(70367670501375, 65535); 3974f(70368744243200, 65536); 3975f(70369817985025, 65537); 3976f(140736414744575, 131071); 3977f(140737488486400, 131072); 3978f(140738562228225, 131073); 3979f(281473903230975, 262143); 3980f(281474976972800, 262144); 3981f(281476050714625, 262145); 3982f(562948880203775, 524287); 3983f(562949953945600, 524288); 3984f(562951027687425, 524289); 3985f(1125898834149375, 1048575); 3986f(1125899907891200, 1048576); 3987f(1125900981633025, 1048577); 3988x = 2147483647; 3989f(0, 0); 3990f(2147483647, 1); 3991f(4294967294, 2); 3992f(6442450941, 3); 3993f(8589934588, 4); 3994f(10737418235, 5); 3995f(15032385529, 7); 3996f(17179869176, 8); 3997f(19327352823, 9); 3998f(32212254705, 15); 3999f(34359738352, 16); 4000f(36507221999, 17); 4001f(66571993057, 31); 4002f(68719476704, 32); 4003f(70866960351, 33); 4004f(135291469761, 63); 4005f(137438953408, 64); 4006f(139586437055, 65); 4007f(272730423169, 127); 4008f(274877906816, 128); 4009f(277025390463, 129); 4010f(547608329985, 255); 4011f(549755813632, 256); 4012f(551903297279, 257); 4013f(1097364143617, 511); 4014f(1099511627264, 512); 4015f(1101659110911, 513); 4016f(2196875770881, 1023); 4017f(2199023254528, 1024); 4018f(2201170738175, 1025); 4019f(4395899025409, 2047); 4020f(4398046509056, 2048); 4021f(4400193992703, 2049); 4022f(8793945534465, 4095); 4023f(8796093018112, 4096); 4024f(8798240501759, 4097); 4025f(17590038552577, 8191); 4026f(17592186036224, 8192); 4027f(17594333519871, 8193); 4028f(35182224588801, 16383); 4029f(35184372072448, 16384); 4030f(35186519556095, 16385); 4031f(70366596661249, 32767); 4032f(70368744144896, 32768); 4033f(70370891628543, 32769); 4034f(140735340806145, 65535); 4035f(140737488289792, 65536); 4036f(140739635773439, 65537); 4037f(281472829095937, 131071); 4038f(281474976579584, 131072); 4039f(281477124063231, 131073); 4040f(562947805675521, 262143); 4041f(562949953159168, 262144); 4042f(562952100642815, 262145); 4043f(1125897758834689, 524287); 4044f(1125899906318336, 524288); 4045f(1125902053801983, 524289); 4046x = 2147483648; 4047f(0, 0); 4048f(2147483648, 1); 4049f(4294967296, 2); 4050f(6442450944, 3); 4051f(8589934592, 4); 4052f(10737418240, 5); 4053f(15032385536, 7); 4054f(17179869184, 8); 4055f(19327352832, 9); 4056f(32212254720, 15); 4057f(34359738368, 16); 4058f(36507222016, 17); 4059f(66571993088, 31); 4060f(68719476736, 32); 4061f(70866960384, 33); 4062f(135291469824, 63); 4063f(137438953472, 64); 4064f(139586437120, 65); 4065f(272730423296, 127); 4066f(274877906944, 128); 4067f(277025390592, 129); 4068f(547608330240, 255); 4069f(549755813888, 256); 4070f(551903297536, 257); 4071f(1097364144128, 511); 4072f(1099511627776, 512); 4073f(1101659111424, 513); 4074f(2196875771904, 1023); 4075f(2199023255552, 1024); 4076f(2201170739200, 1025); 4077f(4395899027456, 2047); 4078f(4398046511104, 2048); 4079f(4400193994752, 2049); 4080f(8793945538560, 4095); 4081f(8796093022208, 4096); 4082f(8798240505856, 4097); 4083f(17590038560768, 8191); 4084f(17592186044416, 8192); 4085f(17594333528064, 8193); 4086f(35182224605184, 16383); 4087f(35184372088832, 16384); 4088f(35186519572480, 16385); 4089f(70366596694016, 32767); 4090f(70368744177664, 32768); 4091f(70370891661312, 32769); 4092f(140735340871680, 65535); 4093f(140737488355328, 65536); 4094f(140739635838976, 65537); 4095f(281472829227008, 131071); 4096f(281474976710656, 131072); 4097f(281477124194304, 131073); 4098f(562947805937664, 262143); 4099f(562949953421312, 262144); 4100f(562952100904960, 262145); 4101f(1125897759358976, 524287); 4102f(1125899906842624, 524288); 4103f(1125902054326272, 524289); 4104x = 2147483649; 4105f(0, 0); 4106f(2147483649, 1); 4107f(4294967298, 2); 4108f(6442450947, 3); 4109f(8589934596, 4); 4110f(10737418245, 5); 4111f(15032385543, 7); 4112f(17179869192, 8); 4113f(19327352841, 9); 4114f(32212254735, 15); 4115f(34359738384, 16); 4116f(36507222033, 17); 4117f(66571993119, 31); 4118f(68719476768, 32); 4119f(70866960417, 33); 4120f(135291469887, 63); 4121f(137438953536, 64); 4122f(139586437185, 65); 4123f(272730423423, 127); 4124f(274877907072, 128); 4125f(277025390721, 129); 4126f(547608330495, 255); 4127f(549755814144, 256); 4128f(551903297793, 257); 4129f(1097364144639, 511); 4130f(1099511628288, 512); 4131f(1101659111937, 513); 4132f(2196875772927, 1023); 4133f(2199023256576, 1024); 4134f(2201170740225, 1025); 4135f(4395899029503, 2047); 4136f(4398046513152, 2048); 4137f(4400193996801, 2049); 4138f(8793945542655, 4095); 4139f(8796093026304, 4096); 4140f(8798240509953, 4097); 4141f(17590038568959, 8191); 4142f(17592186052608, 8192); 4143f(17594333536257, 8193); 4144f(35182224621567, 16383); 4145f(35184372105216, 16384); 4146f(35186519588865, 16385); 4147f(70366596726783, 32767); 4148f(70368744210432, 32768); 4149f(70370891694081, 32769); 4150f(140735340937215, 65535); 4151f(140737488420864, 65536); 4152f(140739635904513, 65537); 4153f(281472829358079, 131071); 4154f(281474976841728, 131072); 4155f(281477124325377, 131073); 4156f(562947806199807, 262143); 4157f(562949953683456, 262144); 4158f(562952101167105, 262145); 4159f(1125897759883263, 524287); 4160f(1125899907366912, 524288); 4161f(1125902054850561, 524289); 4162x = 4294967295; 4163f(0, 0); 4164f(4294967295, 1); 4165f(8589934590, 2); 4166f(12884901885, 3); 4167f(17179869180, 4); 4168f(21474836475, 5); 4169f(30064771065, 7); 4170f(34359738360, 8); 4171f(38654705655, 9); 4172f(64424509425, 15); 4173f(68719476720, 16); 4174f(73014444015, 17); 4175f(133143986145, 31); 4176f(137438953440, 32); 4177f(141733920735, 33); 4178f(270582939585, 63); 4179f(274877906880, 64); 4180f(279172874175, 65); 4181f(545460846465, 127); 4182f(549755813760, 128); 4183f(554050781055, 129); 4184f(1095216660225, 255); 4185f(1099511627520, 256); 4186f(1103806594815, 257); 4187f(2194728287745, 511); 4188f(2199023255040, 512); 4189f(2203318222335, 513); 4190f(4393751542785, 1023); 4191f(4398046510080, 1024); 4192f(4402341477375, 1025); 4193f(8791798052865, 2047); 4194f(8796093020160, 2048); 4195f(8800387987455, 2049); 4196f(17587891073025, 4095); 4197f(17592186040320, 4096); 4198f(17596481007615, 4097); 4199f(35180077113345, 8191); 4200f(35184372080640, 8192); 4201f(35188667047935, 8193); 4202f(70364449193985, 16383); 4203f(70368744161280, 16384); 4204f(70373039128575, 16385); 4205f(140733193355265, 32767); 4206f(140737488322560, 32768); 4207f(140741783289855, 32769); 4208f(281470681677825, 65535); 4209f(281474976645120, 65536); 4210f(281479271612415, 65537); 4211f(562945658322945, 131071); 4212f(562949953290240, 131072); 4213f(562954248257535, 131073); 4214f(1125895611613185, 262143); 4215f(1125899906580480, 262144); 4216f(1125904201547775, 262145); 4217x = 4294967296; 4218f(0, 0); 4219f(4294967296, 1); 4220f(8589934592, 2); 4221f(12884901888, 3); 4222f(17179869184, 4); 4223f(21474836480, 5); 4224f(30064771072, 7); 4225f(34359738368, 8); 4226f(38654705664, 9); 4227f(64424509440, 15); 4228f(68719476736, 16); 4229f(73014444032, 17); 4230f(133143986176, 31); 4231f(137438953472, 32); 4232f(141733920768, 33); 4233f(270582939648, 63); 4234f(274877906944, 64); 4235f(279172874240, 65); 4236f(545460846592, 127); 4237f(549755813888, 128); 4238f(554050781184, 129); 4239f(1095216660480, 255); 4240f(1099511627776, 256); 4241f(1103806595072, 257); 4242f(2194728288256, 511); 4243f(2199023255552, 512); 4244f(2203318222848, 513); 4245f(4393751543808, 1023); 4246f(4398046511104, 1024); 4247f(4402341478400, 1025); 4248f(8791798054912, 2047); 4249f(8796093022208, 2048); 4250f(8800387989504, 2049); 4251f(17587891077120, 4095); 4252f(17592186044416, 4096); 4253f(17596481011712, 4097); 4254f(35180077121536, 8191); 4255f(35184372088832, 8192); 4256f(35188667056128, 8193); 4257f(70364449210368, 16383); 4258f(70368744177664, 16384); 4259f(70373039144960, 16385); 4260f(140733193388032, 32767); 4261f(140737488355328, 32768); 4262f(140741783322624, 32769); 4263f(281470681743360, 65535); 4264f(281474976710656, 65536); 4265f(281479271677952, 65537); 4266f(562945658454016, 131071); 4267f(562949953421312, 131072); 4268f(562954248388608, 131073); 4269f(1125895611875328, 262143); 4270f(1125899906842624, 262144); 4271f(1125904201809920, 262145); 4272x = 4294967297; 4273f(0, 0); 4274f(4294967297, 1); 4275f(8589934594, 2); 4276f(12884901891, 3); 4277f(17179869188, 4); 4278f(21474836485, 5); 4279f(30064771079, 7); 4280f(34359738376, 8); 4281f(38654705673, 9); 4282f(64424509455, 15); 4283f(68719476752, 16); 4284f(73014444049, 17); 4285f(133143986207, 31); 4286f(137438953504, 32); 4287f(141733920801, 33); 4288f(270582939711, 63); 4289f(274877907008, 64); 4290f(279172874305, 65); 4291f(545460846719, 127); 4292f(549755814016, 128); 4293f(554050781313, 129); 4294f(1095216660735, 255); 4295f(1099511628032, 256); 4296f(1103806595329, 257); 4297f(2194728288767, 511); 4298f(2199023256064, 512); 4299f(2203318223361, 513); 4300f(4393751544831, 1023); 4301f(4398046512128, 1024); 4302f(4402341479425, 1025); 4303f(8791798056959, 2047); 4304f(8796093024256, 2048); 4305f(8800387991553, 2049); 4306f(17587891081215, 4095); 4307f(17592186048512, 4096); 4308f(17596481015809, 4097); 4309f(35180077129727, 8191); 4310f(35184372097024, 8192); 4311f(35188667064321, 8193); 4312f(70364449226751, 16383); 4313f(70368744194048, 16384); 4314f(70373039161345, 16385); 4315f(140733193420799, 32767); 4316f(140737488388096, 32768); 4317f(140741783355393, 32769); 4318f(281470681808895, 65535); 4319f(281474976776192, 65536); 4320f(281479271743489, 65537); 4321f(562945658585087, 131071); 4322f(562949953552384, 131072); 4323f(562954248519681, 131073); 4324f(1125895612137471, 262143); 4325f(1125899907104768, 262144); 4326f(1125904202072065, 262145); 4327x = 8589934591; 4328f(0, 0); 4329f(8589934591, 1); 4330f(17179869182, 2); 4331f(25769803773, 3); 4332f(34359738364, 4); 4333f(42949672955, 5); 4334f(60129542137, 7); 4335f(68719476728, 8); 4336f(77309411319, 9); 4337f(128849018865, 15); 4338f(137438953456, 16); 4339f(146028888047, 17); 4340f(266287972321, 31); 4341f(274877906912, 32); 4342f(283467841503, 33); 4343f(541165879233, 63); 4344f(549755813824, 64); 4345f(558345748415, 65); 4346f(1090921693057, 127); 4347f(1099511627648, 128); 4348f(1108101562239, 129); 4349f(2190433320705, 255); 4350f(2199023255296, 256); 4351f(2207613189887, 257); 4352f(4389456576001, 511); 4353f(4398046510592, 512); 4354f(4406636445183, 513); 4355f(8787503086593, 1023); 4356f(8796093021184, 1024); 4357f(8804682955775, 1025); 4358f(17583596107777, 2047); 4359f(17592186042368, 2048); 4360f(17600775976959, 2049); 4361f(35175782150145, 4095); 4362f(35184372084736, 4096); 4363f(35192962019327, 4097); 4364f(70360154234881, 8191); 4365f(70368744169472, 8192); 4366f(70377334104063, 8193); 4367f(140728898404353, 16383); 4368f(140737488338944, 16384); 4369f(140746078273535, 16385); 4370f(281466386743297, 32767); 4371f(281474976677888, 32768); 4372f(281483566612479, 32769); 4373f(562941363421185, 65535); 4374f(562949953355776, 65536); 4375f(562958543290367, 65537); 4376f(1125891316776961, 131071); 4377f(1125899906711552, 131072); 4378f(1125908496646143, 131073); 4379x = 8589934592; 4380f(0, 0); 4381f(8589934592, 1); 4382f(17179869184, 2); 4383f(25769803776, 3); 4384f(34359738368, 4); 4385f(42949672960, 5); 4386f(60129542144, 7); 4387f(68719476736, 8); 4388f(77309411328, 9); 4389f(128849018880, 15); 4390f(137438953472, 16); 4391f(146028888064, 17); 4392f(266287972352, 31); 4393f(274877906944, 32); 4394f(283467841536, 33); 4395f(541165879296, 63); 4396f(549755813888, 64); 4397f(558345748480, 65); 4398f(1090921693184, 127); 4399f(1099511627776, 128); 4400f(1108101562368, 129); 4401f(2190433320960, 255); 4402f(2199023255552, 256); 4403f(2207613190144, 257); 4404f(4389456576512, 511); 4405f(4398046511104, 512); 4406f(4406636445696, 513); 4407f(8787503087616, 1023); 4408f(8796093022208, 1024); 4409f(8804682956800, 1025); 4410f(17583596109824, 2047); 4411f(17592186044416, 2048); 4412f(17600775979008, 2049); 4413f(35175782154240, 4095); 4414f(35184372088832, 4096); 4415f(35192962023424, 4097); 4416f(70360154243072, 8191); 4417f(70368744177664, 8192); 4418f(70377334112256, 8193); 4419f(140728898420736, 16383); 4420f(140737488355328, 16384); 4421f(140746078289920, 16385); 4422f(281466386776064, 32767); 4423f(281474976710656, 32768); 4424f(281483566645248, 32769); 4425f(562941363486720, 65535); 4426f(562949953421312, 65536); 4427f(562958543355904, 65537); 4428f(1125891316908032, 131071); 4429f(1125899906842624, 131072); 4430f(1125908496777216, 131073); 4431x = 8589934593; 4432f(0, 0); 4433f(8589934593, 1); 4434f(17179869186, 2); 4435f(25769803779, 3); 4436f(34359738372, 4); 4437f(42949672965, 5); 4438f(60129542151, 7); 4439f(68719476744, 8); 4440f(77309411337, 9); 4441f(128849018895, 15); 4442f(137438953488, 16); 4443f(146028888081, 17); 4444f(266287972383, 31); 4445f(274877906976, 32); 4446f(283467841569, 33); 4447f(541165879359, 63); 4448f(549755813952, 64); 4449f(558345748545, 65); 4450f(1090921693311, 127); 4451f(1099511627904, 128); 4452f(1108101562497, 129); 4453f(2190433321215, 255); 4454f(2199023255808, 256); 4455f(2207613190401, 257); 4456f(4389456577023, 511); 4457f(4398046511616, 512); 4458f(4406636446209, 513); 4459f(8787503088639, 1023); 4460f(8796093023232, 1024); 4461f(8804682957825, 1025); 4462f(17583596111871, 2047); 4463f(17592186046464, 2048); 4464f(17600775981057, 2049); 4465f(35175782158335, 4095); 4466f(35184372092928, 4096); 4467f(35192962027521, 4097); 4468f(70360154251263, 8191); 4469f(70368744185856, 8192); 4470f(70377334120449, 8193); 4471f(140728898437119, 16383); 4472f(140737488371712, 16384); 4473f(140746078306305, 16385); 4474f(281466386808831, 32767); 4475f(281474976743424, 32768); 4476f(281483566678017, 32769); 4477f(562941363552255, 65535); 4478f(562949953486848, 65536); 4479f(562958543421441, 65537); 4480f(1125891317039103, 131071); 4481f(1125899906973696, 131072); 4482f(1125908496908289, 131073); 4483x = 17179869183; 4484f(0, 0); 4485f(17179869183, 1); 4486f(34359738366, 2); 4487f(51539607549, 3); 4488f(68719476732, 4); 4489f(85899345915, 5); 4490f(120259084281, 7); 4491f(137438953464, 8); 4492f(154618822647, 9); 4493f(257698037745, 15); 4494f(274877906928, 16); 4495f(292057776111, 17); 4496f(532575944673, 31); 4497f(549755813856, 32); 4498f(566935683039, 33); 4499f(1082331758529, 63); 4500f(1099511627712, 64); 4501f(1116691496895, 65); 4502f(2181843386241, 127); 4503f(2199023255424, 128); 4504f(2216203124607, 129); 4505f(4380866641665, 255); 4506f(4398046510848, 256); 4507f(4415226380031, 257); 4508f(8778913152513, 511); 4509f(8796093021696, 512); 4510f(8813272890879, 513); 4511f(17575006174209, 1023); 4512f(17592186043392, 1024); 4513f(17609365912575, 1025); 4514f(35167192217601, 2047); 4515f(35184372086784, 2048); 4516f(35201551955967, 2049); 4517f(70351564304385, 4095); 4518f(70368744173568, 4096); 4519f(70385924042751, 4097); 4520f(140720308477953, 8191); 4521f(140737488347136, 8192); 4522f(140754668216319, 8193); 4523f(281457796825089, 16383); 4524f(281474976694272, 16384); 4525f(281492156563455, 16385); 4526f(562932773519361, 32767); 4527f(562949953388544, 32768); 4528f(562967133257727, 32769); 4529f(1125882726907905, 65535); 4530f(1125899906777088, 65536); 4531f(1125917086646271, 65537); 4532x = 17179869184; 4533f(0, 0); 4534f(17179869184, 1); 4535f(34359738368, 2); 4536f(51539607552, 3); 4537f(68719476736, 4); 4538f(85899345920, 5); 4539f(120259084288, 7); 4540f(137438953472, 8); 4541f(154618822656, 9); 4542f(257698037760, 15); 4543f(274877906944, 16); 4544f(292057776128, 17); 4545f(532575944704, 31); 4546f(549755813888, 32); 4547f(566935683072, 33); 4548f(1082331758592, 63); 4549f(1099511627776, 64); 4550f(1116691496960, 65); 4551f(2181843386368, 127); 4552f(2199023255552, 128); 4553f(2216203124736, 129); 4554f(4380866641920, 255); 4555f(4398046511104, 256); 4556f(4415226380288, 257); 4557f(8778913153024, 511); 4558f(8796093022208, 512); 4559f(8813272891392, 513); 4560f(17575006175232, 1023); 4561f(17592186044416, 1024); 4562f(17609365913600, 1025); 4563f(35167192219648, 2047); 4564f(35184372088832, 2048); 4565f(35201551958016, 2049); 4566f(70351564308480, 4095); 4567f(70368744177664, 4096); 4568f(70385924046848, 4097); 4569f(140720308486144, 8191); 4570f(140737488355328, 8192); 4571f(140754668224512, 8193); 4572f(281457796841472, 16383); 4573f(281474976710656, 16384); 4574f(281492156579840, 16385); 4575f(562932773552128, 32767); 4576f(562949953421312, 32768); 4577f(562967133290496, 32769); 4578f(1125882726973440, 65535); 4579f(1125899906842624, 65536); 4580f(1125917086711808, 65537); 4581x = 17179869185; 4582f(0, 0); 4583f(17179869185, 1); 4584f(34359738370, 2); 4585f(51539607555, 3); 4586f(68719476740, 4); 4587f(85899345925, 5); 4588f(120259084295, 7); 4589f(137438953480, 8); 4590f(154618822665, 9); 4591f(257698037775, 15); 4592f(274877906960, 16); 4593f(292057776145, 17); 4594f(532575944735, 31); 4595f(549755813920, 32); 4596f(566935683105, 33); 4597f(1082331758655, 63); 4598f(1099511627840, 64); 4599f(1116691497025, 65); 4600f(2181843386495, 127); 4601f(2199023255680, 128); 4602f(2216203124865, 129); 4603f(4380866642175, 255); 4604f(4398046511360, 256); 4605f(4415226380545, 257); 4606f(8778913153535, 511); 4607f(8796093022720, 512); 4608f(8813272891905, 513); 4609f(17575006176255, 1023); 4610f(17592186045440, 1024); 4611f(17609365914625, 1025); 4612f(35167192221695, 2047); 4613f(35184372090880, 2048); 4614f(35201551960065, 2049); 4615f(70351564312575, 4095); 4616f(70368744181760, 4096); 4617f(70385924050945, 4097); 4618f(140720308494335, 8191); 4619f(140737488363520, 8192); 4620f(140754668232705, 8193); 4621f(281457796857855, 16383); 4622f(281474976727040, 16384); 4623f(281492156596225, 16385); 4624f(562932773584895, 32767); 4625f(562949953454080, 32768); 4626f(562967133323265, 32769); 4627f(1125882727038975, 65535); 4628f(1125899906908160, 65536); 4629f(1125917086777345, 65537); 4630