1 /* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License (the "License"). 6 * You may not use this file except in compliance with the License. 7 * 8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9 * or http://www.opensolaris.org/os/licensing. 10 * See the License for the specific language governing permissions 11 * and limitations under the License. 12 * 13 * When distributing Covered Code, include this CDDL HEADER in each 14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15 * If applicable, add the following below this CDDL HEADER, with the 16 * fields enclosed by brackets "[]" replaced with your own identifying 17 * information: Portions Copyright [yyyy] [name of copyright owner] 18 * 19 * CDDL HEADER END 20 */ 21 22 /* 23 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 24 * Use is subject to license terms. 25 */ 26 27 #pragma ident "%Z%%M% %I% %E% SMI" 28 29 #include "lint.h" 30 #include <sys/types.h> 31 32 /* table of 5 multiples of 10**1024 */ 33 const unsigned short __tbl_10_huge_digits [] = { 1, 34 /* 10**1024 = */ 35 61441 /* h 1024 */, 10521 /* h 1040 */, 11122 /* h 1056 */, 62811 /* h 1072 */, 36 8539 /* h 1088 */, 28284 /* h 1104 */, 40838 /* h 1120 */, 7874 /* h 1136 */, 37 20103 /* h 1152 */, 39196 /* h 1168 */, 6792 /* h 1184 */, 5573 /* h 1200 */, 38 50485 /* h 1216 */, 5130 /* h 1232 */, 7706 /* h 1248 */, 19581 /* h 1264 */, 39 55321 /* h 1280 */, 52268 /* h 1296 */, 17422 /* h 1312 */, 3793 /* h 1328 */, 40 13550 /* h 1344 */, 35174 /* h 1360 */, 27899 /* h 1376 */, 32225 /* h 1392 */, 41 63007 /* h 1408 */, 7747 /* h 1424 */, 33661 /* h 1440 */, 40910 /* h 1456 */, 42 11164 /* h 1472 */, 8989 /* h 1488 */, 21959 /* h 1504 */, 9022 /* h 1520 */, 43 24791 /* h 1536 */, 26076 /* h 1552 */, 8587 /* h 1568 */, 62545 /* h 1584 */, 44 53556 /* h 1600 */, 7260 /* h 1616 */, 22918 /* h 1632 */, 51555 /* h 1648 */, 45 48031 /* h 1664 */, 37419 /* h 1680 */, 37937 /* h 1696 */, 42984 /* h 1712 */, 46 10759 /* h 1728 */, 40863 /* h 1744 */, 26970 /* h 1760 */, 25278 /* h 1776 */, 47 17092 /* h 1792 */, 36368 /* h 1808 */, 31348 /* h 1824 */, 1115 /* h 1840 */, 48 7651 /* h 1856 */, 6846 /* h 1872 */, 8869 /* h 1888 */, 35544 /* h 1904 */, 49 50193 /* h 1920 */, 47668 /* h 1936 */, 46341 /* h 1952 */, 55316 /* h 1968 */, 50 57011 /* h 1984 */, 48959 /* h 2000 */, 6678 /* h 2016 */, 36805 /* h 2032 */, 51 38588 /* h 2048 */, 45496 /* h 2064 */, 61164 /* h 2080 */, 62829 /* h 2096 */, 52 27645 /* h 2112 */, 12795 /* h 2128 */, 25931 /* h 2144 */, 46836 /* h 2160 */, 53 13846 /* h 2176 */, 4122 /* h 2192 */, 38395 /* h 2208 */, 27509 /* h 2224 */, 54 18430 /* h 2240 */, 56346 /* h 2256 */, 32905 /* h 2272 */, 32985 /* h 2288 */, 55 42405 /* h 2304 */, 32957 /* h 2320 */, 10370 /* h 2336 */, 39456 /* h 2352 */, 56 3942 /* h 2368 */, 12779 /* h 2384 */, 8080 /* h 2400 */, 64655 /* h 2416 */, 57 13072 /* h 2432 */, 38762 /* h 2448 */, 31614 /* h 2464 */, 57962 /* h 2480 */, 58 13962 /* h 2496 */, 57192 /* h 2512 */, 41144 /* h 2528 */, 15587 /* h 2544 */, 59 25294 /* h 2560 */, 36418 /* h 2576 */, 20898 /* h 2592 */, 30115 /* h 2608 */, 60 46793 /* h 2624 */, 27824 /* h 2640 */, 30083 /* h 2656 */, 17497 /* h 2672 */, 61 25919 /* h 2688 */, 12725 /* h 2704 */, 58250 /* h 2720 */, 50006 /* h 2736 */, 62 43942 /* h 2752 */, 13818 /* h 2768 */, 64416 /* h 2784 */, 400 /* h 2800 */, 63 60754 /* h 2816 */, 40900 /* h 2832 */, 18715 /* h 2848 */, 35004 /* h 2864 */, 64 4426 /* h 2880 */, 5696 /* h 2896 */, 32833 /* h 2912 */, 91 /* h 2928 */, 65 9054 /* h 2944 */, 62707 /* h 2960 */, 17993 /* h 2976 */, 7821 /* h 2992 */, 66 56838 /* h 3008 */, 13992 /* h 3024 */, 21321 /* h 3040 */, 29637 /* h 3056 */, 67 48426 /* h 3072 */, 42982 /* h 3088 */, 38668 /* h 3104 */, 49574 /* h 3120 */, 68 28820 /* h 3136 */, 18200 /* h 3152 */, 18927 /* h 3168 */, 53979 /* h 3184 */, 69 16219 /* h 3200 */, 37484 /* h 3216 */, 2516 /* h 3232 */, 44642 /* h 3248 */, 70 14665 /* h 3264 */, 11587 /* h 3280 */, 41926 /* h 3296 */, 13556 /* h 3312 */, 71 23956 /* h 3328 */, 54320 /* h 3344 */, 6661 /* h 3360 */, 55766 /* h 3376 */, 72 805 /* h 3392 */, 73 /* 10**2048 = */ 74 57345 /* h 2048 */, 4915 /* h 2064 */, 26725 /* h 2080 */, 58121 /* h 2096 */, 75 19775 /* h 2112 */, 45693 /* h 2128 */, 36303 /* h 2144 */, 18914 /* h 2160 */, 76 18209 /* h 2176 */, 60462 /* h 2192 */, 58196 /* h 2208 */, 61063 /* h 2224 */, 77 30084 /* h 2240 */, 46598 /* h 2256 */, 35515 /* h 2272 */, 13963 /* h 2288 */, 78 41361 /* h 2304 */, 42469 /* h 2320 */, 27989 /* h 2336 */, 11989 /* h 2352 */, 79 30579 /* h 2368 */, 64898 /* h 2384 */, 53570 /* h 2400 */, 59984 /* h 2416 */, 80 36274 /* h 2432 */, 20919 /* h 2448 */, 11422 /* h 2464 */, 38964 /* h 2480 */, 81 55996 /* h 2496 */, 51280 /* h 2512 */, 55025 /* h 2528 */, 34414 /* h 2544 */, 82 11282 /* h 2560 */, 6452 /* h 2576 */, 18823 /* h 2592 */, 37497 /* h 2608 */, 83 27074 /* h 2624 */, 54008 /* h 2640 */, 11850 /* h 2656 */, 26257 /* h 2672 */, 84 64911 /* h 2688 */, 29127 /* h 2704 */, 33837 /* h 2720 */, 22439 /* h 2736 */, 85 21227 /* h 2752 */, 9045 /* h 2768 */, 60876 /* h 2784 */, 64383 /* h 2800 */, 86 7392 /* h 2816 */, 62342 /* h 2832 */, 40161 /* h 2848 */, 14368 /* h 2864 */, 87 46153 /* h 2880 */, 38675 /* h 2896 */, 308 /* h 2912 */, 13505 /* h 2928 */, 88 21726 /* h 2944 */, 35948 /* h 2960 */, 10396 /* h 2976 */, 42920 /* h 2992 */, 89 26179 /* h 3008 */, 11707 /* h 3024 */, 25843 /* h 3040 */, 58315 /* h 3056 */, 90 65281 /* h 3072 */, 32884 /* h 3088 */, 12009 /* h 3104 */, 58249 /* h 3120 */, 91 32660 /* h 3136 */, 4289 /* h 3152 */, 28562 /* h 3168 */, 43249 /* h 3184 */, 92 7894 /* h 3200 */, 43048 /* h 3216 */, 48051 /* h 3232 */, 38522 /* h 3248 */, 93 5184 /* h 3264 */, 23061 /* h 3280 */, 64493 /* h 3296 */, 39250 /* h 3312 */, 94 7748 /* h 3328 */, 5044 /* h 3344 */, 2499 /* h 3360 */, 45030 /* h 3376 */, 95 42006 /* h 3392 */, 41660 /* h 3408 */, 33311 /* h 3424 */, 61713 /* h 3440 */, 96 25780 /* h 3456 */, 64274 /* h 3472 */, 51572 /* h 3488 */, 37306 /* h 3504 */, 97 54955 /* h 3520 */, 54983 /* h 3536 */, 65333 /* h 3552 */, 36424 /* h 3568 */, 98 48451 /* h 3584 */, 17433 /* h 3600 */, 22117 /* h 3616 */, 50342 /* h 3632 */, 99 21776 /* h 3648 */, 26718 /* h 3664 */, 19510 /* h 3680 */, 13141 /* h 3696 */, 100 34455 /* h 3712 */, 43849 /* h 3728 */, 8702 /* h 3744 */, 3517 /* h 3760 */, 101 18717 /* h 3776 */, 15614 /* h 3792 */, 42086 /* h 3808 */, 38957 /* h 3824 */, 102 19623 /* h 3840 */, 52202 /* h 3856 */, 3195 /* h 3872 */, 40465 /* h 3888 */, 103 27530 /* h 3904 */, 31173 /* h 3920 */, 41031 /* h 3936 */, 24517 /* h 3952 */, 104 3630 /* h 3968 */, 34008 /* h 3984 */, 62532 /* h 4000 */, 6825 /* h 4016 */, 105 8252 /* h 4032 */, 29455 /* h 4048 */, 45483 /* h 4064 */, 27223 /* h 4080 */, 106 63398 /* h 4096 */, 55122 /* h 4112 */, 56418 /* h 4128 */, 34727 /* h 4144 */, 107 17919 /* h 4160 */, 37957 /* h 4176 */, 1120 /* h 4192 */, 16486 /* h 4208 */, 108 42031 /* h 4224 */, 30657 /* h 4240 */, 14173 /* h 4256 */, 51628 /* h 4272 */, 109 55279 /* h 4288 */, 59494 /* h 4304 */, 38384 /* h 4320 */, 29766 /* h 4336 */, 110 35973 /* h 4352 */, 33090 /* h 4368 */, 27542 /* h 4384 */, 41468 /* h 4400 */, 111 31867 /* h 4416 */, 55185 /* h 4432 */, 15385 /* h 4448 */, 31728 /* h 4464 */, 112 60225 /* h 4480 */, 23347 /* h 4496 */, 63377 /* h 4512 */, 22293 /* h 4528 */, 113 44639 /* h 4544 */, 36716 /* h 4560 */, 2301 /* h 4576 */, 56071 /* h 4592 */, 114 44174 /* h 4608 */, 45349 /* h 4624 */, 59063 /* h 4640 */, 30812 /* h 4656 */, 115 33115 /* h 4672 */, 22214 /* h 4688 */, 60123 /* h 4704 */, 28486 /* h 4720 */, 116 48878 /* h 4736 */, 20206 /* h 4752 */, 21976 /* h 4768 */, 6483 /* h 4784 */, 117 56892 /* h 4800 */, 41540 /* h 4816 */, 35264 /* h 4832 */, 40307 /* h 4848 */, 118 6845 /* h 4864 */, 21366 /* h 4880 */, 53273 /* h 4896 */, 53145 /* h 4912 */, 119 49739 /* h 4928 */, 56990 /* h 4944 */, 52793 /* h 4960 */, 3446 /* h 4976 */, 120 45441 /* h 4992 */, 28862 /* h 5008 */, 60654 /* h 5024 */, 11861 /* h 5040 */, 121 24697 /* h 5056 */, 54776 /* h 5072 */, 40267 /* h 5088 */, 62829 /* h 5104 */, 122 34555 /* h 5120 */, 64392 /* h 5136 */, 23171 /* h 5152 */, 5103 /* h 5168 */, 123 17349 /* h 5184 */, 16527 /* h 5200 */, 35236 /* h 5216 */, 16179 /* h 5232 */, 124 31043 /* h 5248 */, 64211 /* h 5264 */, 62556 /* h 5280 */, 22732 /* h 5296 */, 125 63558 /* h 5312 */, 63533 /* h 5328 */, 32574 /* h 5344 */, 16732 /* h 5360 */, 126 59416 /* h 5376 */, 10517 /* h 5392 */, 23796 /* h 5408 */, 35645 /* h 5424 */, 127 24359 /* h 5440 */, 27204 /* h 5456 */, 46458 /* h 5472 */, 63707 /* h 5488 */, 128 112 /* h 5504 */, 51855 /* h 5520 */, 1004 /* h 5536 */, 35544 /* h 5552 */, 129 31796 /* h 5568 */, 45800 /* h 5584 */, 37445 /* h 5600 */, 911 /* h 5616 */, 130 35436 /* h 5632 */, 48861 /* h 5648 */, 57056 /* h 5664 */, 51145 /* h 5680 */, 131 32086 /* h 5696 */, 3756 /* h 5712 */, 64020 /* h 5728 */, 10963 /* h 5744 */, 132 2112 /* h 5760 */, 57566 /* h 5776 */, 26492 /* h 5792 */, 63349 /* h 5808 */, 133 2773 /* h 5824 */, 61885 /* h 5840 */, 8734 /* h 5856 */, 37566 /* h 5872 */, 134 8121 /* h 5888 */, 34810 /* h 5904 */, 1188 /* h 5920 */, 52893 /* h 5936 */, 135 28585 /* h 5952 */, 53955 /* h 5968 */, 28708 /* h 5984 */, 16239 /* h 6000 */, 136 44898 /* h 6016 */, 45096 /* h 6032 */, 21998 /* h 6048 */, 36984 /* h 6064 */, 137 18902 /* h 6080 */, 55358 /* h 6096 */, 50652 /* h 6112 */, 20218 /* h 6128 */, 138 6827 /* h 6144 */, 59157 /* h 6160 */, 35947 /* h 6176 */, 30669 /* h 6192 */, 139 15229 /* h 6208 */, 2677 /* h 6224 */, 2228 /* h 6240 */, 2809 /* h 6256 */, 140 13859 /* h 6272 */, 35992 /* h 6288 */, 12327 /* h 6304 */, 58639 /* h 6320 */, 141 10097 /* h 6336 */, 37922 /* h 6352 */, 58070 /* h 6368 */, 7432 /* h 6384 */, 142 10470 /* h 6400 */, 63465 /* h 6416 */, 23718 /* h 6432 */, 62190 /* h 6448 */, 143 47420 /* h 6464 */, 7009 /* h 6480 */, 38443 /* h 6496 */, 4587 /* h 6512 */, 144 45596 /* h 6528 */, 38472 /* h 6544 */, 52129 /* h 6560 */, 52779 /* h 6576 */, 145 29012 /* h 6592 */, 13559 /* h 6608 */, 48688 /* h 6624 */, 31678 /* h 6640 */, 146 41753 /* h 6656 */, 58662 /* h 6672 */, 10668 /* h 6688 */, 36067 /* h 6704 */, 147 29906 /* h 6720 */, 56906 /* h 6736 */, 21461 /* h 6752 */, 46556 /* h 6768 */, 148 59571 /* h 6784 */, 9 /* h 6800 */, 149 /* 10**3072 = */ 150 53249 /* h 3072 */, 48717 /* h 3088 */, 17608 /* h 3104 */, 61423 /* h 3120 */, 151 37156 /* h 3136 */, 59735 /* h 3152 */, 13797 /* h 3168 */, 64388 /* h 3184 */, 152 38012 /* h 3200 */, 56481 /* h 3216 */, 8683 /* h 3232 */, 16371 /* h 3248 */, 153 21473 /* h 3264 */, 25132 /* h 3280 */, 57116 /* h 3296 */, 42947 /* h 3312 */, 154 34115 /* h 3328 */, 61068 /* h 3344 */, 40324 /* h 3360 */, 25169 /* h 3376 */, 155 44908 /* h 3392 */, 16351 /* h 3408 */, 20047 /* h 3424 */, 40486 /* h 3440 */, 156 30629 /* h 3456 */, 61631 /* h 3472 */, 1272 /* h 3488 */, 43843 /* h 3504 */, 157 18111 /* h 3520 */, 48583 /* h 3536 */, 20870 /* h 3552 */, 52333 /* h 3568 */, 158 13679 /* h 3584 */, 38931 /* h 3600 */, 40254 /* h 3616 */, 18289 /* h 3632 */, 159 57933 /* h 3648 */, 31555 /* h 3664 */, 3102 /* h 3680 */, 12319 /* h 3696 */, 160 44125 /* h 3712 */, 44090 /* h 3728 */, 13691 /* h 3744 */, 37952 /* h 3760 */, 161 46085 /* h 3776 */, 11184 /* h 3792 */, 7615 /* h 3808 */, 1596 /* h 3824 */, 162 24094 /* h 3840 */, 45230 /* h 3856 */, 20068 /* h 3872 */, 36476 /* h 3888 */, 163 21354 /* h 3904 */, 52188 /* h 3920 */, 35874 /* h 3936 */, 62969 /* h 3952 */, 164 5447 /* h 3968 */, 61888 /* h 3984 */, 41957 /* h 4000 */, 1720 /* h 4016 */, 165 26104 /* h 4032 */, 57954 /* h 4048 */, 41031 /* h 4064 */, 17153 /* h 4080 */, 166 50280 /* h 4096 */, 41435 /* h 4112 */, 58779 /* h 4128 */, 45198 /* h 4144 */, 167 20213 /* h 4160 */, 13320 /* h 4176 */, 7776 /* h 4192 */, 35340 /* h 4208 */, 168 42630 /* h 4224 */, 3112 /* h 4240 */, 55404 /* h 4256 */, 15297 /* h 4272 */, 169 3656 /* h 4288 */, 13152 /* h 4304 */, 53221 /* h 4320 */, 30247 /* h 4336 */, 170 16821 /* h 4352 */, 32250 /* h 4368 */, 49219 /* h 4384 */, 57563 /* h 4400 */, 171 58327 /* h 4416 */, 22823 /* h 4432 */, 13299 /* h 4448 */, 63556 /* h 4464 */, 172 43620 /* h 4480 */, 24178 /* h 4496 */, 21473 /* h 4512 */, 7153 /* h 4528 */, 173 63382 /* h 4544 */, 48638 /* h 4560 */, 14788 /* h 4576 */, 3257 /* h 4592 */, 174 43309 /* h 4608 */, 50938 /* h 4624 */, 63274 /* h 4640 */, 11605 /* h 4656 */, 175 29389 /* h 4672 */, 40623 /* h 4688 */, 46470 /* h 4704 */, 32629 /* h 4720 */, 176 43856 /* h 4736 */, 43159 /* h 4752 */, 21238 /* h 4768 */, 42375 /* h 4784 */, 177 3665 /* h 4800 */, 60719 /* h 4816 */, 58725 /* h 4832 */, 21257 /* h 4848 */, 178 57151 /* h 4864 */, 3457 /* h 4880 */, 19600 /* h 4896 */, 9228 /* h 4912 */, 179 34418 /* h 4928 */, 37680 /* h 4944 */, 26576 /* h 4960 */, 53886 /* h 4976 */, 180 60267 /* h 4992 */, 61332 /* h 5008 */, 1656 /* h 5024 */, 29221 /* h 5040 */, 181 17994 /* h 5056 */, 33667 /* h 5072 */, 5496 /* h 5088 */, 62761 /* h 5104 */, 182 8679 /* h 5120 */, 38051 /* h 5136 */, 31157 /* h 5152 */, 38439 /* h 5168 */, 183 6387 /* h 5184 */, 64900 /* h 5200 */, 40444 /* h 5216 */, 37274 /* h 5232 */, 184 29896 /* h 5248 */, 49848 /* h 5264 */, 62469 /* h 5280 */, 62351 /* h 5296 */, 185 23040 /* h 5312 */, 14947 /* h 5328 */, 50664 /* h 5344 */, 7038 /* h 5360 */, 186 2068 /* h 5376 */, 53065 /* h 5392 */, 30609 /* h 5408 */, 42116 /* h 5424 */, 187 19423 /* h 5440 */, 27458 /* h 5456 */, 27004 /* h 5472 */, 58149 /* h 5488 */, 188 16669 /* h 5504 */, 5027 /* h 5520 */, 25366 /* h 5536 */, 4089 /* h 5552 */, 189 47123 /* h 5568 */, 56420 /* h 5584 */, 45903 /* h 5600 */, 27792 /* h 5616 */, 190 59019 /* h 5632 */, 5400 /* h 5648 */, 29601 /* h 5664 */, 49200 /* h 5680 */, 191 50821 /* h 5696 */, 27203 /* h 5712 */, 30648 /* h 5728 */, 58528 /* h 5744 */, 192 54520 /* h 5760 */, 35965 /* h 5776 */, 57582 /* h 5792 */, 53768 /* h 5808 */, 193 19141 /* h 5824 */, 26077 /* h 5840 */, 53263 /* h 5856 */, 3396 /* h 5872 */, 194 29436 /* h 5888 */, 56626 /* h 5904 */, 33959 /* h 5920 */, 18071 /* h 5936 */, 195 20920 /* h 5952 */, 24746 /* h 5968 */, 27725 /* h 5984 */, 17714 /* h 6000 */, 196 4965 /* h 6016 */, 50394 /* h 6032 */, 23473 /* h 6048 */, 16915 /* h 6064 */, 197 43992 /* h 6080 */, 40929 /* h 6096 */, 37688 /* h 6112 */, 42704 /* h 6128 */, 198 19151 /* h 6144 */, 47014 /* h 6160 */, 33887 /* h 6176 */, 42260 /* h 6192 */, 199 28967 /* h 6208 */, 13738 /* h 6224 */, 56016 /* h 6240 */, 46108 /* h 6256 */, 200 30253 /* h 6272 */, 17724 /* h 6288 */, 33913 /* h 6304 */, 32618 /* h 6320 */, 201 61415 /* h 6336 */, 21227 /* h 6352 */, 39384 /* h 6368 */, 61445 /* h 6384 */, 202 7090 /* h 6400 */, 61064 /* h 6416 */, 8842 /* h 6432 */, 16916 /* h 6448 */, 203 12944 /* h 6464 */, 21383 /* h 6480 */, 39164 /* h 6496 */, 35653 /* h 6512 */, 204 20234 /* h 6528 */, 6706 /* h 6544 */, 8141 /* h 6560 */, 17159 /* h 6576 */, 205 50317 /* h 6592 */, 33761 /* h 6608 */, 17775 /* h 6624 */, 57301 /* h 6640 */, 206 63931 /* h 6656 */, 2320 /* h 6672 */, 38549 /* h 6688 */, 22047 /* h 6704 */, 207 36483 /* h 6720 */, 53205 /* h 6736 */, 43717 /* h 6752 */, 64521 /* h 6768 */, 208 48063 /* h 6784 */, 19316 /* h 6800 */, 46382 /* h 6816 */, 50140 /* h 6832 */, 209 50866 /* h 6848 */, 37768 /* h 6864 */, 61022 /* h 6880 */, 62899 /* h 6896 */, 210 5906 /* h 6912 */, 38760 /* h 6928 */, 56884 /* h 6944 */, 17168 /* h 6960 */, 211 16793 /* h 6976 */, 10474 /* h 6992 */, 29156 /* h 7008 */, 23427 /* h 7024 */, 212 62538 /* h 7040 */, 38020 /* h 7056 */, 7389 /* h 7072 */, 8883 /* h 7088 */, 213 49876 /* h 7104 */, 47057 /* h 7120 */, 12629 /* h 7136 */, 59162 /* h 7152 */, 214 18189 /* h 7168 */, 25118 /* h 7184 */, 26994 /* h 7200 */, 9139 /* h 7216 */, 215 36076 /* h 7232 */, 954 /* h 7248 */, 19132 /* h 7264 */, 14452 /* h 7280 */, 216 41485 /* h 7296 */, 49074 /* h 7312 */, 3728 /* h 7328 */, 10388 /* h 7344 */, 217 56597 /* h 7360 */, 2410 /* h 7376 */, 27618 /* h 7392 */, 8278 /* h 7408 */, 218 37251 /* h 7424 */, 33662 /* h 7440 */, 56282 /* h 7456 */, 10471 /* h 7472 */, 219 43277 /* h 7488 */, 5143 /* h 7504 */, 20040 /* h 7520 */, 40543 /* h 7536 */, 220 56284 /* h 7552 */, 64974 /* h 7568 */, 35134 /* h 7584 */, 53060 /* h 7600 */, 221 26482 /* h 7616 */, 1964 /* h 7632 */, 1000 /* h 7648 */, 52095 /* h 7664 */, 222 3283 /* h 7680 */, 7301 /* h 7696 */, 42748 /* h 7712 */, 38189 /* h 7728 */, 223 51185 /* h 7744 */, 38883 /* h 7760 */, 9272 /* h 7776 */, 24904 /* h 7792 */, 224 14793 /* h 7808 */, 12954 /* h 7824 */, 62627 /* h 7840 */, 50079 /* h 7856 */, 225 47639 /* h 7872 */, 53425 /* h 7888 */, 29026 /* h 7904 */, 18557 /* h 7920 */, 226 32424 /* h 7936 */, 22351 /* h 7952 */, 43571 /* h 7968 */, 59349 /* h 7984 */, 227 46543 /* h 8000 */, 41285 /* h 8016 */, 32140 /* h 8032 */, 47229 /* h 8048 */, 228 26745 /* h 8064 */, 47468 /* h 8080 */, 2384 /* h 8096 */, 25730 /* h 8112 */, 229 52478 /* h 8128 */, 11584 /* h 8144 */, 20082 /* h 8160 */, 1512 /* h 8176 */, 230 58127 /* h 8192 */, 47574 /* h 8208 */, 57971 /* h 8224 */, 10321 /* h 8240 */, 231 33392 /* h 8256 */, 10055 /* h 8272 */, 40995 /* h 8288 */, 51365 /* h 8304 */, 232 21527 /* h 8320 */, 15535 /* h 8336 */, 31814 /* h 8352 */, 10069 /* h 8368 */, 233 16001 /* h 8384 */, 38865 /* h 8400 */, 62823 /* h 8416 */, 49977 /* h 8432 */, 234 8380 /* h 8448 */, 35252 /* h 8464 */, 26966 /* h 8480 */, 28855 /* h 8496 */, 235 25339 /* h 8512 */, 65416 /* h 8528 */, 49418 /* h 8544 */, 46433 /* h 8560 */, 236 47634 /* h 8576 */, 21538 /* h 8592 */, 5661 /* h 8608 */, 11831 /* h 8624 */, 237 22630 /* h 8640 */, 1832 /* h 8656 */, 54532 /* h 8672 */, 29367 /* h 8688 */, 238 65380 /* h 8704 */, 38947 /* h 8720 */, 14482 /* h 8736 */, 35669 /* h 8752 */, 239 2414 /* h 8768 */, 47854 /* h 8784 */, 26514 /* h 8800 */, 33215 /* h 8816 */, 240 58078 /* h 8832 */, 52893 /* h 8848 */, 17002 /* h 8864 */, 7102 /* h 8880 */, 241 50237 /* h 8896 */, 1576 /* h 8912 */, 31164 /* h 8928 */, 40454 /* h 8944 */, 242 19603 /* h 8960 */, 50640 /* h 8976 */, 26507 /* h 8992 */, 22578 /* h 9008 */, 243 35866 /* h 9024 */, 4165 /* h 9040 */, 36266 /* h 9056 */, 62871 /* h 9072 */, 244 61329 /* h 9088 */, 20421 /* h 9104 */, 43731 /* h 9120 */, 27388 /* h 9136 */, 245 43537 /* h 9152 */, 42816 /* h 9168 */, 17189 /* h 9184 */, 16527 /* h 9200 */, 246 8577 /* h 9216 */, 22422 /* h 9232 */, 10927 /* h 9248 */, 34999 /* h 9264 */, 247 7304 /* h 9280 */, 6829 /* h 9296 */, 21085 /* h 9312 */, 29032 /* h 9328 */, 248 29169 /* h 9344 */, 63730 /* h 9360 */, 62378 /* h 9376 */, 25955 /* h 9392 */, 249 633 /* h 9408 */, 3072 /* h 9424 */, 31768 /* h 9440 */, 37505 /* h 9456 */, 250 30517 /* h 9472 */, 39136 /* h 9488 */, 10500 /* h 9504 */, 213 /* h 9520 */, 251 11317 /* h 9536 */, 268 /* h 9552 */, 60264 /* h 9568 */, 37549 /* h 9584 */, 252 27840 /* h 9600 */, 49718 /* h 9616 */, 10689 /* h 9632 */, 55279 /* h 9648 */, 253 34147 /* h 9664 */, 2845 /* h 9680 */, 15022 /* h 9696 */, 46381 /* h 9712 */, 254 60977 /* h 9728 */, 23894 /* h 9744 */, 37163 /* h 9760 */, 40449 /* h 9776 */, 255 6587 /* h 9792 */, 2602 /* h 9808 */, 44169 /* h 9824 */, 26539 /* h 9840 */, 256 58264 /* h 9856 */, 25654 /* h 9872 */, 25452 /* h 9888 */, 40401 /* h 9904 */, 257 52755 /* h 9920 */, 12086 /* h 9936 */, 55826 /* h 9952 */, 8022 /* h 9968 */, 258 27708 /* h 9984 */, 20370 /* h10000 */, 33871 /* h10016 */, 61590 /* h10032 */, 259 37398 /* h10048 */, 40453 /* h10064 */, 51901 /* h10080 */, 46118 /* h10096 */, 260 4489 /* h10112 */, 24506 /* h10128 */, 27473 /* h10144 */, 47889 /* h10160 */, 261 11172 /* h10176 */, 7985 /* h10192 */, 262 /* 10**4096 = */ 263 49153 /* h 4096 */, 10855 /* h 4112 */, 20109 /* h 4128 */, 54386 /* h 4144 */, 264 31463 /* h 4160 */, 36606 /* h 4176 */, 7824 /* h 4192 */, 63642 /* h 4208 */, 265 16663 /* h 4224 */, 61192 /* h 4240 */, 20820 /* h 4256 */, 21728 /* h 4272 */, 266 47953 /* h 4288 */, 5041 /* h 4304 */, 59433 /* h 4320 */, 20587 /* h 4336 */, 267 45426 /* h 4352 */, 64297 /* h 4368 */, 22350 /* h 4384 */, 58777 /* h 4400 */, 268 24902 /* h 4416 */, 61658 /* h 4432 */, 3795 /* h 4448 */, 32876 /* h 4464 */, 269 58814 /* h 4480 */, 47210 /* h 4496 */, 24211 /* h 4512 */, 17685 /* h 4528 */, 270 7362 /* h 4544 */, 49241 /* h 4560 */, 31796 /* h 4576 */, 32286 /* h 4592 */, 271 9178 /* h 4608 */, 31816 /* h 4624 */, 19662 /* h 4640 */, 7455 /* h 4656 */, 272 41448 /* h 4672 */, 39819 /* h 4688 */, 57205 /* h 4704 */, 54975 /* h 4720 */, 273 48656 /* h 4736 */, 58177 /* h 4752 */, 44664 /* h 4768 */, 49887 /* h 4784 */, 274 26546 /* h 4800 */, 363 /* h 4816 */, 32538 /* h 4832 */, 3875 /* h 4848 */, 275 43981 /* h 4864 */, 15806 /* h 4880 */, 9588 /* h 4896 */, 44906 /* h 4912 */, 276 59095 /* h 4928 */, 51891 /* h 4944 */, 3712 /* h 4960 */, 5166 /* h 4976 */, 277 37159 /* h 4992 */, 24981 /* h 5008 */, 18449 /* h 5024 */, 11299 /* h 5040 */, 278 38657 /* h 5056 */, 34560 /* h 5072 */, 63874 /* h 5088 */, 52043 /* h 5104 */, 279 40068 /* h 5120 */, 63510 /* h 5136 */, 12172 /* h 5152 */, 34821 /* h 5168 */, 280 59092 /* h 5184 */, 26845 /* h 5200 */, 5985 /* h 5216 */, 48147 /* h 5232 */, 281 2309 /* h 5248 */, 65291 /* h 5264 */, 40001 /* h 5280 */, 21675 /* h 5296 */, 282 45604 /* h 5312 */, 30227 /* h 5328 */, 12366 /* h 5344 */, 6684 /* h 5360 */, 283 5755 /* h 5376 */, 15358 /* h 5392 */, 11591 /* h 5408 */, 17436 /* h 5424 */, 284 60060 /* h 5440 */, 20332 /* h 5456 */, 24961 /* h 5472 */, 30960 /* h 5488 */, 285 40888 /* h 5504 */, 60261 /* h 5520 */, 44609 /* h 5536 */, 12487 /* h 5552 */, 286 3342 /* h 5568 */, 38014 /* h 5584 */, 51927 /* h 5600 */, 41451 /* h 5616 */, 287 38230 /* h 5632 */, 55677 /* h 5648 */, 20557 /* h 5664 */, 8496 /* h 5680 */, 288 2507 /* h 5696 */, 6787 /* h 5712 */, 54535 /* h 5728 */, 62124 /* h 5744 */, 289 50986 /* h 5760 */, 16270 /* h 5776 */, 14138 /* h 5792 */, 64898 /* h 5808 */, 290 17084 /* h 5824 */, 38312 /* h 5840 */, 19762 /* h 5856 */, 10255 /* h 5872 */, 291 35520 /* h 5888 */, 62305 /* h 5904 */, 20228 /* h 5920 */, 33050 /* h 5936 */, 292 42420 /* h 5952 */, 28099 /* h 5968 */, 31259 /* h 5984 */, 54166 /* h 6000 */, 293 51352 /* h 6016 */, 5560 /* h 6032 */, 14479 /* h 6048 */, 56574 /* h 6064 */, 294 45728 /* h 6080 */, 17742 /* h 6096 */, 47369 /* h 6112 */, 34616 /* h 6128 */, 295 59798 /* h 6144 */, 4292 /* h 6160 */, 52241 /* h 6176 */, 11225 /* h 6192 */, 296 52492 /* h 6208 */, 12951 /* h 6224 */, 60464 /* h 6240 */, 25951 /* h 6256 */, 297 9649 /* h 6272 */, 44551 /* h 6288 */, 3816 /* h 6304 */, 62473 /* h 6320 */, 298 6638 /* h 6336 */, 893 /* h 6352 */, 28653 /* h 6368 */, 14732 /* h 6384 */, 299 62059 /* h 6400 */, 15258 /* h 6416 */, 42064 /* h 6432 */, 51604 /* h 6448 */, 300 5955 /* h 6464 */, 46388 /* h 6480 */, 38834 /* h 6496 */, 30118 /* h 6512 */, 301 47553 /* h 6528 */, 44112 /* h 6544 */, 23442 /* h 6560 */, 15563 /* h 6576 */, 302 25093 /* h 6592 */, 65504 /* h 6608 */, 38753 /* h 6624 */, 43058 /* h 6640 */, 303 21058 /* h 6656 */, 57322 /* h 6672 */, 51931 /* h 6688 */, 60291 /* h 6704 */, 304 44535 /* h 6720 */, 59293 /* h 6736 */, 61033 /* h 6752 */, 15392 /* h 6768 */, 305 26647 /* h 6784 */, 7690 /* h 6800 */, 47482 /* h 6816 */, 28705 /* h 6832 */, 306 29946 /* h 6848 */, 29744 /* h 6864 */, 42870 /* h 6880 */, 5996 /* h 6896 */, 307 35574 /* h 6912 */, 30715 /* h 6928 */, 39915 /* h 6944 */, 60577 /* h 6960 */, 308 61918 /* h 6976 */, 37562 /* h 6992 */, 46866 /* h 7008 */, 44899 /* h 7024 */, 309 51339 /* h 7040 */, 56885 /* h 7056 */, 36748 /* h 7072 */, 42219 /* h 7088 */, 310 54761 /* h 7104 */, 57655 /* h 7120 */, 25760 /* h 7136 */, 16564 /* h 7152 */, 311 52712 /* h 7168 */, 34769 /* h 7184 */, 15293 /* h 7200 */, 17042 /* h 7216 */, 312 25343 /* h 7232 */, 52623 /* h 7248 */, 37107 /* h 7264 */, 11814 /* h 7280 */, 313 56342 /* h 7296 */, 2398 /* h 7312 */, 40731 /* h 7328 */, 22984 /* h 7344 */, 314 64861 /* h 7360 */, 8104 /* h 7376 */, 30013 /* h 7392 */, 20792 /* h 7408 */, 315 11049 /* h 7424 */, 14602 /* h 7440 */, 12056 /* h 7456 */, 32789 /* h 7472 */, 316 55589 /* h 7488 */, 11736 /* h 7504 */, 55358 /* h 7520 */, 63876 /* h 7536 */, 317 11892 /* h 7552 */, 31367 /* h 7568 */, 8111 /* h 7584 */, 49566 /* h 7600 */, 318 21549 /* h 7616 */, 60749 /* h 7632 */, 46544 /* h 7648 */, 60665 /* h 7664 */, 319 60021 /* h 7680 */, 37986 /* h 7696 */, 2783 /* h 7712 */, 50492 /* h 7728 */, 320 41268 /* h 7744 */, 3246 /* h 7760 */, 54329 /* h 7776 */, 14242 /* h 7792 */, 321 11914 /* h 7808 */, 51450 /* h 7824 */, 12926 /* h 7840 */, 8577 /* h 7856 */, 322 47143 /* h 7872 */, 28283 /* h 7888 */, 2080 /* h 7904 */, 11556 /* h 7920 */, 323 4320 /* h 7936 */, 20670 /* h 7952 */, 54456 /* h 7968 */, 22675 /* h 7984 */, 324 11193 /* h 8000 */, 43825 /* h 8016 */, 8994 /* h 8032 */, 7979 /* h 8048 */, 325 16165 /* h 8064 */, 17419 /* h 8080 */, 32478 /* h 8096 */, 48994 /* h 8112 */, 326 51081 /* h 8128 */, 29402 /* h 8144 */, 47253 /* h 8160 */, 46600 /* h 8176 */, 327 32298 /* h 8192 */, 30840 /* h 8208 */, 46064 /* h 8224 */, 34526 /* h 8240 */, 328 31403 /* h 8256 */, 28654 /* h 8272 */, 29684 /* h 8288 */, 48019 /* h 8304 */, 329 62843 /* h 8320 */, 10220 /* h 8336 */, 46462 /* h 8352 */, 63448 /* h 8368 */, 330 27295 /* h 8384 */, 64674 /* h 8400 */, 59602 /* h 8416 */, 15620 /* h 8432 */, 331 5067 /* h 8448 */, 51679 /* h 8464 */, 33386 /* h 8480 */, 12658 /* h 8496 */, 332 36220 /* h 8512 */, 52638 /* h 8528 */, 55520 /* h 8544 */, 43260 /* h 8560 */, 333 38039 /* h 8576 */, 45763 /* h 8592 */, 16857 /* h 8608 */, 12406 /* h 8624 */, 334 14785 /* h 8640 */, 7369 /* h 8656 */, 50383 /* h 8672 */, 9736 /* h 8688 */, 335 51135 /* h 8704 */, 46801 /* h 8720 */, 27262 /* h 8736 */, 15666 /* h 8752 */, 336 6630 /* h 8768 */, 61103 /* h 8784 */, 57951 /* h 8800 */, 36371 /* h 8816 */, 337 12331 /* h 8832 */, 61027 /* h 8848 */, 28055 /* h 8864 */, 11774 /* h 8880 */, 338 7512 /* h 8896 */, 9623 /* h 8912 */, 15556 /* h 8928 */, 58397 /* h 8944 */, 339 25212 /* h 8960 */, 2688 /* h 8976 */, 46490 /* h 8992 */, 43917 /* h 9008 */, 340 14280 /* h 9024 */, 40682 /* h 9040 */, 64375 /* h 9056 */, 59658 /* h 9072 */, 341 6607 /* h 9088 */, 37066 /* h 9104 */, 13612 /* h 9120 */, 40675 /* h 9136 */, 342 51280 /* h 9152 */, 13843 /* h 9168 */, 54914 /* h 9184 */, 65144 /* h 9200 */, 343 28240 /* h 9216 */, 30863 /* h 9232 */, 2308 /* h 9248 */, 23302 /* h 9264 */, 344 53668 /* h 9280 */, 46875 /* h 9296 */, 46388 /* h 9312 */, 16364 /* h 9328 */, 345 17676 /* h 9344 */, 45868 /* h 9360 */, 14423 /* h 9376 */, 8387 /* h 9392 */, 346 53210 /* h 9408 */, 42729 /* h 9424 */, 62670 /* h 9440 */, 569 /* h 9456 */, 347 29063 /* h 9472 */, 18505 /* h 9488 */, 56213 /* h 9504 */, 41370 /* h 9520 */, 348 60810 /* h 9536 */, 46226 /* h 9552 */, 42664 /* h 9568 */, 38316 /* h 9584 */, 349 27865 /* h 9600 */, 19917 /* h 9616 */, 9040 /* h 9632 */, 53019 /* h 9648 */, 350 45354 /* h 9664 */, 64488 /* h 9680 */, 30604 /* h 9696 */, 6759 /* h 9712 */, 351 15052 /* h 9728 */, 14571 /* h 9744 */, 41859 /* h 9760 */, 49965 /* h 9776 */, 352 27313 /* h 9792 */, 64274 /* h 9808 */, 16552 /* h 9824 */, 41023 /* h 9840 */, 353 62790 /* h 9856 */, 60763 /* h 9872 */, 18212 /* h 9888 */, 59854 /* h 9904 */, 354 29949 /* h 9920 */, 19530 /* h 9936 */, 12504 /* h 9952 */, 29601 /* h 9968 */, 355 3629 /* h 9984 */, 55702 /* h10000 */, 54977 /* h10016 */, 41707 /* h10032 */, 356 28651 /* h10048 */, 38059 /* h10064 */, 15228 /* h10080 */, 28451 /* h10096 */, 357 24704 /* h10112 */, 18706 /* h10128 */, 39539 /* h10144 */, 36475 /* h10160 */, 358 37009 /* h10176 */, 19340 /* h10192 */, 63897 /* h10208 */, 53912 /* h10224 */, 359 14005 /* h10240 */, 13800 /* h10256 */, 57087 /* h10272 */, 43373 /* h10288 */, 360 39729 /* h10304 */, 38417 /* h10320 */, 55740 /* h10336 */, 27405 /* h10352 */, 361 16269 /* h10368 */, 50892 /* h10384 */, 26363 /* h10400 */, 10277 /* h10416 */, 362 33511 /* h10432 */, 29368 /* h10448 */, 40763 /* h10464 */, 54902 /* h10480 */, 363 13373 /* h10496 */, 42612 /* h10512 */, 20635 /* h10528 */, 252 /* h10544 */, 364 30601 /* h10560 */, 56511 /* h10576 */, 27199 /* h10592 */, 54822 /* h10608 */, 365 16893 /* h10624 */, 44694 /* h10640 */, 21531 /* h10656 */, 20105 /* h10672 */, 366 13319 /* h10688 */, 4501 /* h10704 */, 3331 /* h10720 */, 21312 /* h10736 */, 367 55130 /* h10752 */, 36365 /* h10768 */, 13125 /* h10784 */, 58805 /* h10800 */, 368 6573 /* h10816 */, 4239 /* h10832 */, 35260 /* h10848 */, 4235 /* h10864 */, 369 51540 /* h10880 */, 16804 /* h10896 */, 11107 /* h10912 */, 57403 /* h10928 */, 370 15743 /* h10944 */, 17275 /* h10960 */, 60814 /* h10976 */, 38828 /* h10992 */, 371 26224 /* h11008 */, 52182 /* h11024 */, 2242 /* h11040 */, 11349 /* h11056 */, 372 48233 /* h11072 */, 25870 /* h11088 */, 12016 /* h11104 */, 23631 /* h11120 */, 373 63167 /* h11136 */, 36943 /* h11152 */, 41695 /* h11168 */, 39301 /* h11184 */, 374 56734 /* h11200 */, 40877 /* h11216 */, 53817 /* h11232 */, 24280 /* h11248 */, 375 22578 /* h11264 */, 9560 /* h11280 */, 7353 /* h11296 */, 58341 /* h11312 */, 376 61908 /* h11328 */, 4084 /* h11344 */, 11674 /* h11360 */, 22208 /* h11376 */, 377 63492 /* h11392 */, 35918 /* h11408 */, 35347 /* h11424 */, 49568 /* h11440 */, 378 456 /* h11456 */, 5117 /* h11472 */, 30321 /* h11488 */, 59090 /* h11504 */, 379 13556 /* h11520 */, 42946 /* h11536 */, 30412 /* h11552 */, 40193 /* h11568 */, 380 15858 /* h11584 */, 53463 /* h11600 */, 64137 /* h11616 */, 19851 /* h11632 */, 381 4301 /* h11648 */, 21583 /* h11664 */, 57522 /* h11680 */, 11031 /* h11696 */, 382 23677 /* h11712 */, 46858 /* h11728 */, 65097 /* h11744 */, 64902 /* h11760 */, 383 16193 /* h11776 */, 57143 /* h11792 */, 38331 /* h11808 */, 8516 /* h11824 */, 384 22525 /* h11840 */, 34024 /* h11856 */, 5077 /* h11872 */, 211 /* h11888 */, 385 64702 /* h11904 */, 1174 /* h11920 */, 18244 /* h11936 */, 42170 /* h11952 */, 386 51586 /* h11968 */, 59594 /* h11984 */, 40558 /* h12000 */, 44738 /* h12016 */, 387 28728 /* h12032 */, 34796 /* h12048 */, 42265 /* h12064 */, 28672 /* h12080 */, 388 13115 /* h12096 */, 44782 /* h12112 */, 58412 /* h12128 */, 65382 /* h12144 */, 389 27429 /* h12160 */, 35581 /* h12176 */, 63035 /* h12192 */, 948 /* h12208 */, 390 37340 /* h12224 */, 48505 /* h12240 */, 55751 /* h12256 */, 23224 /* h12272 */, 391 26702 /* h12288 */, 11988 /* h12304 */, 6764 /* h12320 */, 18548 /* h12336 */, 392 37901 /* h12352 */, 44806 /* h12368 */, 25417 /* h12384 */, 12252 /* h12400 */, 393 32461 /* h12416 */, 45117 /* h12432 */, 39279 /* h12448 */, 59764 /* h12464 */, 394 26617 /* h12480 */, 44152 /* h12496 */, 34593 /* h12512 */, 21228 /* h12528 */, 395 40266 /* h12544 */, 48349 /* h12560 */, 11520 /* h12576 */, 36573 /* h12592 */, 396 56838 /* h12608 */, 13655 /* h12624 */, 23032 /* h12640 */, 16839 /* h12656 */, 397 54457 /* h12672 */, 14678 /* h12688 */, 2546 /* h12704 */, 42836 /* h12720 */, 398 55457 /* h12736 */, 4668 /* h12752 */, 4011 /* h12768 */, 46608 /* h12784 */, 399 8674 /* h12800 */, 15995 /* h12816 */, 25147 /* h12832 */, 11917 /* h12848 */, 400 40354 /* h12864 */, 37525 /* h12880 */, 24439 /* h12896 */, 48291 /* h12912 */, 401 933 /* h12928 */, 8204 /* h12944 */, 46167 /* h12960 */, 13820 /* h12976 */, 402 50916 /* h12992 */, 7094 /* h13008 */, 47400 /* h13024 */, 63310 /* h13040 */, 403 2900 /* h13056 */, 15709 /* h13072 */, 7457 /* h13088 */, 34764 /* h13104 */, 404 1135 /* h13120 */, 18788 /* h13136 */, 16960 /* h13152 */, 6318 /* h13168 */, 405 45685 /* h13184 */, 55400 /* h13200 */, 46230 /* h13216 */, 35794 /* h13232 */, 406 25588 /* h13248 */, 7253 /* h13264 */, 55541 /* h13280 */, 49716 /* h13296 */, 407 59760 /* h13312 */, 63592 /* h13328 */, 8191 /* h13344 */, 63765 /* h13360 */, 408 58530 /* h13376 */, 44667 /* h13392 */, 13294 /* h13408 */, 10001 /* h13424 */, 409 55586 /* h13440 */, 47887 /* h13456 */, 18738 /* h13472 */, 9509 /* h13488 */, 410 40896 /* h13504 */, 42506 /* h13520 */, 52580 /* h13536 */, 4171 /* h13552 */, 411 325 /* h13568 */, 12329 /* h13584 */, 98 /* h13600 */, 412 /* 10**5120 = */ 413 45057 /* h 5120 */, 22401 /* h 5136 */, 5026 /* h 5152 */, 51833 /* h 5168 */, 414 20426 /* h 5184 */, 63707 /* h 5200 */, 20431 /* h 5216 */, 51620 /* h 5232 */, 415 12639 /* h 5248 */, 19196 /* h 5264 */, 32291 /* h 5280 */, 11377 /* h 5296 */, 416 7587 /* h 5312 */, 9247 /* h 5328 */, 13203 /* h 5344 */, 58607 /* h 5360 */, 417 54976 /* h 5376 */, 38259 /* h 5392 */, 16077 /* h 5408 */, 12484 /* h 5424 */, 418 34810 /* h 5440 */, 7514 /* h 5456 */, 50302 /* h 5472 */, 30947 /* h 5488 */, 419 13680 /* h 5504 */, 52451 /* h 5520 */, 29223 /* h 5536 */, 42058 /* h 5552 */, 420 1519 /* h 5568 */, 1947 /* h 5584 */, 34555 /* h 5600 */, 31030 /* h 5616 */, 421 35656 /* h 5632 */, 22822 /* h 5648 */, 6651 /* h 5664 */, 58347 /* h 5680 */, 422 17909 /* h 5696 */, 37456 /* h 5712 */, 29292 /* h 5728 */, 5877 /* h 5744 */, 423 5879 /* h 5760 */, 33899 /* h 5776 */, 55796 /* h 5792 */, 40048 /* h 5808 */, 424 45029 /* h 5824 */, 37736 /* h 5840 */, 35278 /* h 5856 */, 12313 /* h 5872 */, 425 21096 /* h 5888 */, 45040 /* h 5904 */, 65241 /* h 5920 */, 48286 /* h 5936 */, 426 24052 /* h 5952 */, 503 /* h 5968 */, 45162 /* h 5984 */, 27970 /* h 6000 */, 427 46548 /* h 6016 */, 60893 /* h 6032 */, 58301 /* h 6048 */, 32437 /* h 6064 */, 428 11469 /* h 6080 */, 63363 /* h 6096 */, 46853 /* h 6112 */, 46379 /* h 6128 */, 429 15544 /* h 6144 */, 37910 /* h 6160 */, 64999 /* h 6176 */, 47733 /* h 6192 */, 430 63355 /* h 6208 */, 15379 /* h 6224 */, 41423 /* h 6240 */, 52362 /* h 6256 */, 431 7516 /* h 6272 */, 17628 /* h 6288 */, 21531 /* h 6304 */, 43128 /* h 6320 */, 432 966 /* h 6336 */, 29649 /* h 6352 */, 48451 /* h 6368 */, 47751 /* h 6384 */, 433 60374 /* h 6400 */, 19716 /* h 6416 */, 4837 /* h 6432 */, 31957 /* h 6448 */, 434 50023 /* h 6464 */, 18867 /* h 6480 */, 10558 /* h 6496 */, 19852 /* h 6512 */, 435 35299 /* h 6528 */, 39369 /* h 6544 */, 274 /* h 6560 */, 39754 /* h 6576 */, 436 8771 /* h 6592 */, 21379 /* h 6608 */, 35020 /* h 6624 */, 45846 /* h 6640 */, 437 60599 /* h 6656 */, 4066 /* h 6672 */, 56801 /* h 6688 */, 51618 /* h 6704 */, 438 17607 /* h 6720 */, 2243 /* h 6736 */, 24559 /* h 6752 */, 57297 /* h 6768 */, 439 2683 /* h 6784 */, 58570 /* h 6800 */, 61036 /* h 6816 */, 43810 /* h 6832 */, 440 47989 /* h 6848 */, 1894 /* h 6864 */, 58834 /* h 6880 */, 33585 /* h 6896 */, 441 58050 /* h 6912 */, 33756 /* h 6928 */, 19526 /* h 6944 */, 18194 /* h 6960 */, 442 12774 /* h 6976 */, 50579 /* h 6992 */, 56298 /* h 7008 */, 56962 /* h 7024 */, 443 24845 /* h 7040 */, 49812 /* h 7056 */, 10075 /* h 7072 */, 33288 /* h 7088 */, 444 32362 /* h 7104 */, 34328 /* h 7120 */, 44935 /* h 7136 */, 5924 /* h 7152 */, 445 7433 /* h 7168 */, 43931 /* h 7184 */, 11190 /* h 7200 */, 50715 /* h 7216 */, 446 42870 /* h 7232 */, 39471 /* h 7248 */, 57319 /* h 7264 */, 38346 /* h 7280 */, 447 1492 /* h 7296 */, 65008 /* h 7312 */, 32918 /* h 7328 */, 19738 /* h 7344 */, 448 64823 /* h 7360 */, 40673 /* h 7376 */, 6020 /* h 7392 */, 31797 /* h 7408 */, 449 50336 /* h 7424 */, 192 /* h 7440 */, 37498 /* h 7456 */, 12549 /* h 7472 */, 450 922 /* h 7488 */, 58538 /* h 7504 */, 9706 /* h 7520 */, 32689 /* h 7536 */, 451 7503 /* h 7552 */, 62940 /* h 7568 */, 1953 /* h 7584 */, 58624 /* h 7600 */, 452 27065 /* h 7616 */, 39394 /* h 7632 */, 60593 /* h 7648 */, 29956 /* h 7664 */, 453 42681 /* h 7680 */, 24781 /* h 7696 */, 52809 /* h 7712 */, 7078 /* h 7728 */, 454 56902 /* h 7744 */, 59101 /* h 7760 */, 45519 /* h 7776 */, 39896 /* h 7792 */, 455 39062 /* h 7808 */, 18241 /* h 7824 */, 24832 /* h 7840 */, 9036 /* h 7856 */, 456 12667 /* h 7872 */, 25464 /* h 7888 */, 46371 /* h 7904 */, 13536 /* h 7920 */, 457 61694 /* h 7936 */, 20061 /* h 7952 */, 60433 /* h 7968 */, 21466 /* h 7984 */, 458 15420 /* h 8000 */, 35362 /* h 8016 */, 15149 /* h 8032 */, 19998 /* h 8048 */, 459 22080 /* h 8064 */, 61364 /* h 8080 */, 6103 /* h 8096 */, 62426 /* h 8112 */, 460 62364 /* h 8128 */, 16587 /* h 8144 */, 58849 /* h 8160 */, 44357 /* h 8176 */, 461 26844 /* h 8192 */, 15064 /* h 8208 */, 18257 /* h 8224 */, 64378 /* h 8240 */, 462 59125 /* h 8256 */, 29099 /* h 8272 */, 2159 /* h 8288 */, 42105 /* h 8304 */, 463 57358 /* h 8320 */, 18518 /* h 8336 */, 11339 /* h 8352 */, 20941 /* h 8368 */, 464 9492 /* h 8384 */, 1545 /* h 8400 */, 33896 /* h 8416 */, 51987 /* h 8432 */, 465 30547 /* h 8448 */, 4316 /* h 8464 */, 17221 /* h 8480 */, 56183 /* h 8496 */, 466 59537 /* h 8512 */, 40345 /* h 8528 */, 31448 /* h 8544 */, 22792 /* h 8560 */, 467 43506 /* h 8576 */, 14313 /* h 8592 */, 5035 /* h 8608 */, 54822 /* h 8624 */, 468 1927 /* h 8640 */, 46963 /* h 8656 */, 1684 /* h 8672 */, 49482 /* h 8688 */, 469 2100 /* h 8704 */, 57643 /* h 8720 */, 21133 /* h 8736 */, 19855 /* h 8752 */, 470 4181 /* h 8768 */, 47781 /* h 8784 */, 4668 /* h 8800 */, 54926 /* h 8816 */, 471 57887 /* h 8832 */, 63377 /* h 8848 */, 51771 /* h 8864 */, 16728 /* h 8880 */, 472 10973 /* h 8896 */, 43648 /* h 8912 */, 32015 /* h 8928 */, 56382 /* h 8944 */, 473 18284 /* h 8960 */, 40899 /* h 8976 */, 47527 /* h 8992 */, 6377 /* h 9008 */, 474 65089 /* h 9024 */, 24804 /* h 9040 */, 9483 /* h 9056 */, 24241 /* h 9072 */, 475 58698 /* h 9088 */, 49554 /* h 9104 */, 57375 /* h 9120 */, 5214 /* h 9136 */, 476 41643 /* h 9152 */, 24942 /* h 9168 */, 32171 /* h 9184 */, 58648 /* h 9200 */, 477 51053 /* h 9216 */, 63096 /* h 9232 */, 62010 /* h 9248 */, 21110 /* h 9264 */, 478 59010 /* h 9280 */, 53495 /* h 9296 */, 51471 /* h 9312 */, 45173 /* h 9328 */, 479 63883 /* h 9344 */, 9024 /* h 9360 */, 39257 /* h 9376 */, 54846 /* h 9392 */, 480 31890 /* h 9408 */, 61866 /* h 9424 */, 2603 /* h 9440 */, 4075 /* h 9456 */, 481 13654 /* h 9472 */, 53114 /* h 9488 */, 21197 /* h 9504 */, 18414 /* h 9520 */, 482 4839 /* h 9536 */, 52554 /* h 9552 */, 7770 /* h 9568 */, 54285 /* h 9584 */, 483 24348 /* h 9600 */, 33313 /* h 9616 */, 24343 /* h 9632 */, 34429 /* h 9648 */, 484 42517 /* h 9664 */, 53485 /* h 9680 */, 30794 /* h 9696 */, 55014 /* h 9712 */, 485 54664 /* h 9728 */, 52680 /* h 9744 */, 47322 /* h 9760 */, 47307 /* h 9776 */, 486 15652 /* h 9792 */, 37528 /* h 9808 */, 49672 /* h 9824 */, 62852 /* h 9840 */, 487 26940 /* h 9856 */, 49027 /* h 9872 */, 9844 /* h 9888 */, 47733 /* h 9904 */, 488 30192 /* h 9920 */, 64013 /* h 9936 */, 7398 /* h 9952 */, 17339 /* h 9968 */, 489 436 /* h 9984 */, 43476 /* h10000 */, 56759 /* h10016 */, 49922 /* h10032 */, 490 48233 /* h10048 */, 15483 /* h10064 */, 39696 /* h10080 */, 549 /* h10096 */, 491 59417 /* h10112 */, 28875 /* h10128 */, 4764 /* h10144 */, 17516 /* h10160 */, 492 30784 /* h10176 */, 8336 /* h10192 */, 32199 /* h10208 */, 64253 /* h10224 */, 493 63713 /* h10240 */, 20398 /* h10256 */, 30319 /* h10272 */, 17460 /* h10288 */, 494 26538 /* h10304 */, 15794 /* h10320 */, 11216 /* h10336 */, 62512 /* h10352 */, 495 36132 /* h10368 */, 49776 /* h10384 */, 32293 /* h10400 */, 13267 /* h10416 */, 496 13295 /* h10432 */, 2130 /* h10448 */, 26491 /* h10464 */, 60911 /* h10480 */, 497 58965 /* h10496 */, 13139 /* h10512 */, 52993 /* h10528 */, 8354 /* h10544 */, 498 62820 /* h10560 */, 46181 /* h10576 */, 34547 /* h10592 */, 40048 /* h10608 */, 499 63377 /* h10624 */, 63645 /* h10640 */, 5460 /* h10656 */, 29556 /* h10672 */, 500 1928 /* h10688 */, 25692 /* h10704 */, 40701 /* h10720 */, 23782 /* h10736 */, 501 10051 /* h10752 */, 48024 /* h10768 */, 27177 /* h10784 */, 12472 /* h10800 */, 502 11019 /* h10816 */, 40058 /* h10832 */, 60778 /* h10848 */, 52278 /* h10864 */, 503 28741 /* h10880 */, 5736 /* h10896 */, 3073 /* h10912 */, 415 /* h10928 */, 504 47652 /* h10944 */, 57121 /* h10960 */, 43246 /* h10976 */, 20703 /* h10992 */, 505 25235 /* h11008 */, 14634 /* h11024 */, 20167 /* h11040 */, 58645 /* h11056 */, 506 27656 /* h11072 */, 5953 /* h11088 */, 53467 /* h11104 */, 37853 /* h11120 */, 507 29287 /* h11136 */, 27362 /* h11152 */, 53172 /* h11168 */, 33632 /* h11184 */, 508 36794 /* h11200 */, 64973 /* h11216 */, 31002 /* h11232 */, 50102 /* h11248 */, 509 37382 /* h11264 */, 21387 /* h11280 */, 62587 /* h11296 */, 25959 /* h11312 */, 510 49946 /* h11328 */, 54245 /* h11344 */, 3392 /* h11360 */, 16135 /* h11376 */, 511 1871 /* h11392 */, 12047 /* h11408 */, 46879 /* h11424 */, 27847 /* h11440 */, 512 31781 /* h11456 */, 39418 /* h11472 */, 673 /* h11488 */, 30466 /* h11504 */, 513 58727 /* h11520 */, 52017 /* h11536 */, 56195 /* h11552 */, 22099 /* h11568 */, 514 55673 /* h11584 */, 37659 /* h11600 */, 12533 /* h11616 */, 48528 /* h11632 */, 515 60532 /* h11648 */, 62773 /* h11664 */, 23248 /* h11680 */, 63333 /* h11696 */, 516 41211 /* h11712 */, 57242 /* h11728 */, 4215 /* h11744 */, 60239 /* h11760 */, 517 13285 /* h11776 */, 3197 /* h11792 */, 17479 /* h11808 */, 30461 /* h11824 */, 518 18700 /* h11840 */, 44250 /* h11856 */, 26327 /* h11872 */, 48509 /* h11888 */, 519 41281 /* h11904 */, 93 /* h11920 */, 27537 /* h11936 */, 10198 /* h11952 */, 520 33409 /* h11968 */, 61822 /* h11984 */, 16326 /* h12000 */, 51862 /* h12016 */, 521 61229 /* h12032 */, 50529 /* h12048 */, 60609 /* h12064 */, 38584 /* h12080 */, 522 8034 /* h12096 */, 6994 /* h12112 */, 39256 /* h12128 */, 22933 /* h12144 */, 523 45978 /* h12160 */, 4612 /* h12176 */, 52235 /* h12192 */, 12478 /* h12208 */, 524 48580 /* h12224 */, 34572 /* h12240 */, 2001 /* h12256 */, 40035 /* h12272 */, 525 2806 /* h12288 */, 60649 /* h12304 */, 52142 /* h12320 */, 13513 /* h12336 */, 526 33083 /* h12352 */, 25081 /* h12368 */, 43168 /* h12384 */, 23105 /* h12400 */, 527 11291 /* h12416 */, 8335 /* h12432 */, 63811 /* h12448 */, 23821 /* h12464 */, 528 26521 /* h12480 */, 8577 /* h12496 */, 17064 /* h12512 */, 37798 /* h12528 */, 529 55713 /* h12544 */, 41600 /* h12560 */, 41300 /* h12576 */, 2308 /* h12592 */, 530 2580 /* h12608 */, 7548 /* h12624 */, 12932 /* h12640 */, 5840 /* h12656 */, 531 17606 /* h12672 */, 25082 /* h12688 */, 60364 /* h12704 */, 20693 /* h12720 */, 532 50278 /* h12736 */, 12405 /* h12752 */, 24276 /* h12768 */, 48338 /* h12784 */, 533 40845 /* h12800 */, 10073 /* h12816 */, 19148 /* h12832 */, 47127 /* h12848 */, 534 48936 /* h12864 */, 64482 /* h12880 */, 44101 /* h12896 */, 14780 /* h12912 */, 535 52931 /* h12928 */, 23067 /* h12944 */, 6261 /* h12960 */, 55297 /* h12976 */, 536 38357 /* h12992 */, 14168 /* h13008 */, 5078 /* h13024 */, 13110 /* h13040 */, 537 15103 /* h13056 */, 51281 /* h13072 */, 208 /* h13088 */, 27404 /* h13104 */, 538 65440 /* h13120 */, 34376 /* h13136 */, 25230 /* h13152 */, 22254 /* h13168 */, 539 40763 /* h13184 */, 15097 /* h13200 */, 25314 /* h13216 */, 40214 /* h13232 */, 540 28090 /* h13248 */, 57260 /* h13264 */, 28298 /* h13280 */, 41043 /* h13296 */, 541 40701 /* h13312 */, 24565 /* h13328 */, 32750 /* h13344 */, 38155 /* h13360 */, 542 11615 /* h13376 */, 56774 /* h13392 */, 52703 /* h13408 */, 51772 /* h13424 */, 543 42443 /* h13440 */, 49469 /* h13456 */, 49657 /* h13472 */, 24536 /* h13488 */, 544 41235 /* h13504 */, 29925 /* h13520 */, 12804 /* h13536 */, 43021 /* h13552 */, 545 24321 /* h13568 */, 25912 /* h13584 */, 54869 /* h13600 */, 39574 /* h13616 */, 546 5273 /* h13632 */, 50946 /* h13648 */, 21424 /* h13664 */, 53936 /* h13680 */, 547 11118 /* h13696 */, 40041 /* h13712 */, 60757 /* h13728 */, 50724 /* h13744 */, 548 1861 /* h13760 */, 50967 /* h13776 */, 45408 /* h13792 */, 43927 /* h13808 */, 549 64616 /* h13824 */, 45352 /* h13840 */, 12141 /* h13856 */, 53732 /* h13872 */, 550 40690 /* h13888 */, 10940 /* h13904 */, 11383 /* h13920 */, 2698 /* h13936 */, 551 29287 /* h13952 */, 40521 /* h13968 */, 25571 /* h13984 */, 39237 /* h14000 */, 552 20700 /* h14016 */, 33136 /* h14032 */, 61087 /* h14048 */, 64453 /* h14064 */, 553 48179 /* h14080 */, 13666 /* h14096 */, 46798 /* h14112 */, 4165 /* h14128 */, 554 25201 /* h14144 */, 39696 /* h14160 */, 7054 /* h14176 */, 32897 /* h14192 */, 555 9261 /* h14208 */, 40797 /* h14224 */, 45665 /* h14240 */, 23058 /* h14256 */, 556 34290 /* h14272 */, 59273 /* h14288 */, 4276 /* h14304 */, 52247 /* h14320 */, 557 6818 /* h14336 */, 28882 /* h14352 */, 41645 /* h14368 */, 59096 /* h14384 */, 558 9916 /* h14400 */, 10827 /* h14416 */, 49787 /* h14432 */, 19557 /* h14448 */, 559 17108 /* h14464 */, 296 /* h14480 */, 51196 /* h14496 */, 11508 /* h14512 */, 560 62995 /* h14528 */, 37262 /* h14544 */, 54609 /* h14560 */, 59880 /* h14576 */, 561 31222 /* h14592 */, 44408 /* h14608 */, 7165 /* h14624 */, 10521 /* h14640 */, 562 26874 /* h14656 */, 6903 /* h14672 */, 44086 /* h14688 */, 57767 /* h14704 */, 563 23503 /* h14720 */, 24585 /* h14736 */, 23182 /* h14752 */, 22835 /* h14768 */, 564 5667 /* h14784 */, 9849 /* h14800 */, 46722 /* h14816 */, 50814 /* h14832 */, 565 23402 /* h14848 */, 4385 /* h14864 */, 59455 /* h14880 */, 12131 /* h14896 */, 566 21841 /* h14912 */, 3736 /* h14928 */, 18578 /* h14944 */, 62382 /* h14960 */, 567 18576 /* h14976 */, 64321 /* h14992 */, 61148 /* h15008 */, 43762 /* h15024 */, 568 43002 /* h15040 */, 2052 /* h15056 */, 12482 /* h15072 */, 20438 /* h15088 */, 569 622 /* h15104 */, 5507 /* h15120 */, 17020 /* h15136 */, 5715 /* h15152 */, 570 59157 /* h15168 */, 47845 /* h15184 */, 30919 /* h15200 */, 41647 /* h15216 */, 571 23628 /* h15232 */, 35366 /* h15248 */, 24682 /* h15264 */, 62937 /* h15280 */, 572 43443 /* h15296 */, 58728 /* h15312 */, 37920 /* h15328 */, 3353 /* h15344 */, 573 35500 /* h15360 */, 10118 /* h15376 */, 8887 /* h15392 */, 4755 /* h15408 */, 574 18844 /* h15424 */, 60049 /* h15440 */, 62859 /* h15456 */, 56352 /* h15472 */, 575 6070 /* h15488 */, 25278 /* h15504 */, 9477 /* h15520 */, 38519 /* h15536 */, 576 33272 /* h15552 */, 10164 /* h15568 */, 45613 /* h15584 */, 55007 /* h15600 */, 577 16966 /* h15616 */, 31458 /* h15632 */, 19625 /* h15648 */, 28605 /* h15664 */, 578 5359 /* h15680 */, 40578 /* h15696 */, 23217 /* h15712 */, 54556 /* h15728 */, 579 54036 /* h15744 */, 2470 /* h15760 */, 34179 /* h15776 */, 46656 /* h15792 */, 580 4585 /* h15808 */, 4275 /* h15824 */, 63849 /* h15840 */, 12700 /* h15856 */, 581 28602 /* h15872 */, 33792 /* h15888 */, 17764 /* h15904 */, 41321 /* h15920 */, 582 28671 /* h15936 */, 14833 /* h15952 */, 45778 /* h15968 */, 59069 /* h15984 */, 583 47889 /* h16000 */, 50787 /* h16016 */, 51019 /* h16032 */, 52956 /* h16048 */, 584 39572 /* h16064 */, 16318 /* h16080 */, 55619 /* h16096 */, 37345 /* h16112 */, 585 25197 /* h16128 */, 51580 /* h16144 */, 47735 /* h16160 */, 54722 /* h16176 */, 586 25341 /* h16192 */, 29603 /* h16208 */, 55474 /* h16224 */, 54356 /* h16240 */, 587 2017 /* h16256 */, 44777 /* h16272 */, 52212 /* h16288 */, 51969 /* h16304 */, 588 12906 /* h16320 */, 23652 /* h16336 */, 32829 /* h16352 */, 34295 /* h16368 */, 589 2750 /* h16384 */, 33307 /* h16400 */, 7103 /* h16416 */, 27171 /* h16432 */, 590 10024 /* h16448 */, 47917 /* h16464 */, 62757 /* h16480 */, 36760 /* h16496 */, 591 8581 /* h16512 */, 63343 /* h16528 */, 63874 /* h16544 */, 41096 /* h16560 */, 592 50480 /* h16576 */, 1717 /* h16592 */, 63649 /* h16608 */, 38115 /* h16624 */, 593 35515 /* h16640 */, 64824 /* h16656 */, 53586 /* h16672 */, 49454 /* h16688 */, 594 53089 /* h16704 */, 3340 /* h16720 */, 46398 /* h16736 */, 10822 /* h16752 */, 595 52167 /* h16768 */, 56049 /* h16784 */, 40788 /* h16800 */, 45231 /* h16816 */, 596 61456 /* h16832 */, 9791 /* h16848 */, 24514 /* h16864 */, 20866 /* h16880 */, 597 5247 /* h16896 */, 41435 /* h16912 */, 43275 /* h16928 */, 22085 /* h16944 */, 598 64935 /* h16960 */, 64993 /* h16976 */, 13588 /* h16992 */, 1 /* h17008 */, 599 0}; 600 601 /* table of starting indexes into previous table */ 602 const unsigned short __tbl_10_huge_start [] = { 603 0, 1, 150, 448, 894, 1489, 2233, 0}; 604