/* * Copyright (c) 1995, 1996 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. All advertising materials mentioning features or use of this software * must display the following acknowledgement: * This product includes software developed by the University of * California, Berkeley and its contributors. * 4. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ /* * Large table of random numbers used for experiments (called from ber.c) */ #include #include #include #include #include #include #include #include #include #include #ifndef NOMIP #include #endif #include #include #ifndef FLOPPY_KERNEL /* don't want to make those floppy kernels huge! */ u_int rands[NUM_RANDS] = { 30767959, 297367425, 91905277, 305001755, 172782678, 361521294, 165892316, 173069987, 1303272, 257458298, 40945222, 51205767, 279599865, 305930336, 31086464, 265827971, 125278092, 151831929, 923591195, 275448666, 289509297, 163260906, 53805987, 115399473, 1325812333, 492272146, 299295693, 162377362, 74232957, 4195432, 498633134, 27762743, 310276367, 38577507, 403081279, 46755690, 261256596, 1156971794, 270583047, 126319270, 248210488, 199769858, 213766022, 1806263592, 822657692, 288311484, 264965095, 20818577, 25424552, 113029567, 338120364, 185329915, 212971197, 278931991, 243570982, 208754342, 178878043, 83924618, 364469298, 349518137, 8830754, 237189879, 469851106, 339397234, 169885532, 116412404, 263859752, 25636756, 24375771, 2484504, 168628350, 154927118, 89102210, 387408779, 154356001, 1112684212, 147247618, 17938048, 16261896, 81168085, 45737365, 400428805, 190357879, 327106347, 49890069, 29582722, 75394611, 286480707, 34682223, 1179167115, 38133910, 44753996, 104595830, 329599283, 550038004, 421040477, 442036315, 75548437, 575325860, 602767734, 774559, 27548436, 22672004, 90182295, 530408555, 196073317, 84296644, 8713517, 108025174, 106815861, 11305807, 179679734, 512245676, 213855977, 57331495, 5770752, 284525630, 55092811, 148861607, 400086956, 51047449, 98235455, 303074049, 183864884, 3660970, 94277114, 9811702, 226070174, 209305596, 295162082, 63860255, 210997697, 388191692, 92962411, 231629831, 125844223, 447224778, 504924437, 45068272, 594162649, 692506815, 58493373, 127732799, 199403372, 366786200, 227143825, 211679886, 42636384, 379194719, 341269439, 297565640, 304222574, 7073696, 26787397, 685777389, 416284697, 133187515, 852100253, 29931240, 724018343, 263404835, 102433321, 68532354, 39876836, 252717001, 436600888, 81067349, 49793463, 136811744, 144019314, 16604383, 104915545, 119539109, 154983154, 505256226, 29583711, 380786184, 40992126, 2085879118, 81841488, 252434376, 145251708, 313688283, 130014416, 193064463, 119733355, 50605076, 629069209, 102745077, 6986399, 236066574, 315729361, 112728641, 219562806, 231565074, 324281953, 120653972, 489621185, 548756150, 191324980, 591047, 304920575, 233878745, 120462296, 539247266, 52516977, 64739858, 262424661, 103253948, 64595720, 270504649, 303527298, 128379651, 105163744, 16923519, 275268667, 151999231, 1067858439, 93353303, 185384264, 1877275, 566288939, 56656544, 115590869, 154386248, 195127302, 431321125, 213020578, 29352523, 145467011, 15888373, 30011949, 27458949, 131551292, 169089289, 885657061, 223514254, 307255803, 109612822, 268919775, 277165757, 943010677, 99600929, 6528253, 11712566, 124488976, 293882913, 172988415, 116614845, 329980964, 343762915, 119519039, 236865063, 290203415, 164207638, 396790232, 52412536, 1458688, 18926122, 88537678, 147979831, 555872040, 131252693, 197591972, 81309339, 516677454, 177666006, 470084541, 205976476, 459352077, 165017952, 706288057, 207232037, 393585257, 815281058, 107090425, 40575996, 122237566, 215768392, 74027286, 20429655, 86142786, 115105648, 140661138, 734909558, 217141707, 706884147, 32084361, 220428306, 1498744014, 41103260, 1107685063, 258688715, 201937533, 188695693, 568808074, 37742048, 358878259, 328867886, 144045435, 97694588, 658154718, 112874893, 496975399, 308449501, 11986243, 679054508, 227626821, 46107453, 171789897, 221051483, 1043091686, 183694382, 645811580, 39143837, 151292537, 167637153, 17711568, 92644556, 6671782, 443625862, 53995579, 379502899, 149470933, 165049375, 81425835, 15237532, 239628056, 369311911, 191394137, 376551060, 14456051, 147937814, 501709456, 277075391, 518581524, 591036556, 222885833, 51706602, 426163430, 412795245, 177958696, 400472477, 88445894, 134665305, 648589425, 165366640, 250918623, 344556354, 186148722, 128419884, 88098079, 307855750, 39551189, 162987497, 41000664, 42683931, 191650389, 175772704, 603400801, 392754590, 71746802, 787517343, 757664555, 473499089, 239712948, 210810774, 168600379, 626346817, 340979394, 81542236, 312807061, 61214060, 10125563, 339077874, 114299520, 319740542, 52343921, 325373071, 49190858, 303623779, 23159130, 159124672, 30693493, 924141295, 624416072, 77114533, 32804346, 47118388, 174771552, 380607817, 304059126, 166112673, 327312801, 258595144, 91954614, 11942122, 47575782, 379130899, 786199051, 266905984, 4986202, 270331535, 234336170, 437160942, 116444629, 303699076, 76606447, 87243809, 128252060, 144247092, 831231474, 166650151, 253651941, 447511982, 151136752, 81547946, 16867345, 93421422, 50449994, 91099309, 14246415, 507785122, 371274328, 188560729, 65297462, 10748185, 213240174, 127604867, 210821194, 183223842, 379450702, 99924874, 564176131, 111139244, 533527793, 1025402642, 4445472, 31656401, 79217588, 135457122, 86442399, 855542621, 250789251, 270526710, 394418386, 413877627, 278247079, 232348096, 22360435, 455377963, 541478761, 569102911, 143553982, 257041366, 130322458, 266985515, 138821597, 724570955, 379571665, 792767702, 51895727, 193445842, 1889575, 14771451, 513904789, 547632714, 8622720, 257879175, 1067080993, 90865281, 3683557, 1320563, 1384091047, 260266454, 274160042, 387776503, 45249408, 9166579, 112901299, 71925746, 509669949, 63381146, 32802253, 82440593, 229591851, 185867032, 276438793, 1032288778, 53513165, 137017161, 301556451, 118346079, 656473409, 307410241, 46302018, 389768071, 215435890, 56579478, 129738456, 88708116, 68619411, 42132105, 90547604, 66628875, 193895856, 301343060, 1109360089, 297198269, 330569496, 21120926, 284054371, 98338625, 90418887, 392121444, 103340721, 252198749, 4312512, 881089352, 237905157, 778773377, 120732204, 2967956, 96345517, 86525311, 316851382, 165405362, 418684299, 1332630156, 136411823, 682848764, 86112521, 125025986, 453037949, 99260240, 240745465, 107274144, 353505463, 105296394, 369242006, 56081221, 137185053, 137217722, 74956126, 153009082, 666553764, 222320199, 11983015, 306551880, 200188787, 128248684, 263904734, 271437785, 40233969, 302355821, 651662353, 233116775, 578608346, 160443752, 228686969, 8432269, 34230435, 243426421, 138588524, 732817228, 284641559, 1445310747, 3396381, 38643467, 18975209, 382941142, 104559726, 65579509, 641773756, 224221499, 282751345, 228634809, 564243114, 157205830, 78710872, 138654344, 227455140, 265709775, 10852842, 332879277, 14482143, 322958948, 10787696, 740735017, 612863980, 254693703, 920607997, 4808807, 846915758, 34079591, 818113992, 253474520, 533597344, 900714553, 182585334, 718683124, 172119974, 454545133, 42995350, 129094100, 37601076, 212915060, 833073925, 2289125, 360783508, 848501274, 46888192, 99859953, 236716806, 794957839, 394107408, 131310434, 280279090, 218803235, 104925863, 93603626, 50083806, 10818548, 100444539, 560204359, 637846329, 3525542, 72024758, 394627190, 348031795, 350288507, 324399135, 59851427, 93173054, 244436113, 107503339, 148067752, 42147902, 9139110, 53541836, 268988498, 1267044817, 111984317, 316031425, 105677504, 91690828, 166175481, 334421507, 310700696, 5136406, 411616311, 1051594003, 744358201, 227842393, 11132694, 221492448, 175101917, 14808522, 428233184, 1621401885, 406677499, 200376383, 322267422, 349896324, 225048844, 12373458, 441285482, 1281594348, 749554546, 492351111, 50789015, 227550992, 232677197, 81495829, 82096751, 284504170, 95573722, 172152138, 32537944, 1132203733, 73922618, 279303291, 335776307, 52696221, 66276236, 376860917, 179922100, 158681341, 443042662, 90269226, 157529449, 110157228, 220318982, 595586120, 450602347, 36608186, 309807758, 259838145, 542365040, 262136979, 62856340, 416583065, 770639127, 206604102, 13767271, 62204902, 56672889, 115451385, 306067726, 97467863, 23312918, 297056494, 322797537, 427935204, 243248720, 672488661, 215119893, 23657021, 32190535, 30587850, 33796514, 97781476, 57446213, 304357174, 778138690, 1621972, 216773670, 266585488, 125966640, 146898290, 78286739, 234985246, 63143168, 58665230, 34354484, 2147244, 44105728, 99783640, 30042450, 232947877, 121186982, 56255082, 77027609, 17428156, 1145676293, 501116259, 351043226, 206866655, 712845627, 239953676, 134161995, 427246211, 608171650, 236729125, 172764693, 493856386, 240663799, 7803022, 170789108, 912133912, 59386647, 171463428, 95063736, 45668270, 144713122, 145462719, 48215597, 225457693, 174081231, 84586660, 609469021, 238576185, 62502758, 42423737, 137152343, 57797421, 361532854, 564711797, 175205581, 145317475, 169887048, 553303414, 64789641, 32350980, 62280351, 313559714, 830552984, 212831352, 168434624, 51238677, 81689873, 142954542, 134532787, 220744998, 102619072, 447083491, 348815034, 176628441, 36617508, 819925214, 186476784, 6589815, 209435181, 163845426, 50158220, 314488802, 282240320, 288591912, 225377440, 37357823, 21441876, 413140542, 373189636, 92395050, 615309932, 851270988, 350102483, 247312892, 78610478, 769186937, 199346279, 194927522, 29567916, 672405176, 21460688, 147151048, 350700594, 215852001, 283713673, 521594231, 188961861, 622437999, 266424442, 425952225, 119152377, 213248907, 178410906, 380176191, 62220403, 434751521, 271034609, 8736367, 237663331, 131216409, 19942219, 71823437, 26221301, 213503475, 486550959, 114371031, 73664835, 120175942, 253815383, 113289112, 87889256, 312973857, 194049568, 379535679, 73978978, 49089862, 120600077, 183186712, 456017089, 361215853, 91947582, 51819169, 91098329, 401089889, 306956290, 74741212, 105884112, 102329744, 86343848, 656668896, 326442377, 114257691, 608881147, 211406094, 605594289, 354741781, 274495537, 38999023, 496211121, 77891081, 69420021, 547895668, 313168685, 181220200, 126284850, 304052710, 288032291, 178416802, 50808476, 67896671, 68482426, 166637566, 42805527, 193111306, 1153704460, 473606879, 378634307, 100522992, 42259201, 8463378, 980744680, 244386005, 36167490, 548928080, 41324600, 394104494, 116565402, 203463647, 284303289, 769646365, 410428785, 571653459, 221367259, 66762921, 124882624, 741663248, 612852660, 404489110, 147356168, 19616213, 372385156, 279986412, 88669493, 611822200, 643214832, 4349749, 347849976, 293501558, 21447516, 551817318, 157722175, 14020764, 66008148, 103026894, 297494239, 120085066, 24840441, 395065166, 274564434, 363281990, 166390732, 50674804, 124495293, 6408718, 133667533, 181523972, 867326921, 92032061, 4937283, 37781042, 31006667, 392723750, 201119678, 40098851, 294448286, 153829610, 45156046, 133758091, 508333683, 70725344, 3455108, 11565113, 8419084, 70434420, 120178799, 160044769, 111471489, 160134101, 923486502, 1053619184, 751999896, 150855116, 619855191, 99752538, 162200177, 93026976, 214472420, 47558028, 108102300, 225575413, 11522041, 56216521, 110279293, 226104823, 106584777, 804497, 376297826, 70474276, 41670905, 116340597, 63578204, 45710629, 134394665, 74292710, 39156292, 187755289, 315142403, 68050824, 323898864, 140355090, 818216370, 274298426, 487107520, 515050355, 322124607, 10672003, 603588927, 76872469, 60348605, 68748906, 456537429, 1286739351, 47844967, 625472400, 99359762, 73430625, 633858511, 17529576, 170539442, 429166558, 47853340, 306802618, 325702267, 218647408, 298619904, 489465541, 443903067, 31427224, 17310597, 191184749, 195718630, 4057663, 43472341, 117610831, 257322586, 243750494, 134336346, 192046835, 501673615, 112941445, 178300624, 142327288, 109575876, 280723672, 101257182, 277639489, 587452195, 926467324, 163475165, 30228323, 390059825, 259298287, 415903734, 169891648, 694955080, 62335808, 15423464, 355025533, 102622770, 540845508, 74729084, 484273400, 266907725, 40759530, 748575539, 76007096, 359096753, 22557295, 189292512, 108156273, 148099256, 1273607777, 181547516, 190153766, 131916474, 439851711, 619287020, 86752284, 399271119, 29750702, 129473692, 91391944, 171772843, 673457865, 189235899, 136031968, 36109690, 221424579, 567972711, 57208022, 52201950, 549391532, 7432578, 441243391, 3161222, 906151869, 434328016, 184797985, 425098862, 98705558, 231356662, 66285239, 95353720, 19233180, 172829434, 311997545, 262040132, 35395835, 333911908, 42257599, 1010400217, 496613218, 152884748, 160220538, 191361555, 313048377, 503976440, 130057903, 77280839, 348006669, 230282267, 149429899, 244175467, 116302464, 1078381335, 118709593, 102506379, 411002158, 248253260, 528824693, 25724514, 53606760, 472075883, 40089625, 1751160683, 96683795, 229262914, 260995925, 51426985, 90454454, 391540340, 43991416, 562964995, 804256876, 246383670, 131356407, 273107574, 58564113, 395643528, 272013439, 686525216, 26874287, 448985228, 83815360, 158959568, 424408361, 125716374, 192945627, 106027079, 1016707129, 125393441, 48744643, 636819413, 60207511, 97584870, 632625876, 77843113, 265063147, 86478591, 149050265, 291097909, 420496833, 105743649, 207925968, 362883132, 699719819, 301239809, 36788195, 34995898, 57817430, 388810941, 422920547, 91572548, 231150126, 445308773, 357413721, 34287069, 54454234, 76710595, 158640136, 644354165, 260982511, 254328806, 223091220, 227204770, 293903853, 170266976, 464479977, 11308915, 182582843, 76811781, 326029245, 89936755, 229339607, 74468790, 399571252, 76876150, 293620628, 624516954, 34199515, 525552729, 144282929, 654608431, 42954993, 1335575947, 170796361, 268456282, 530409330, 138336821, 570753620, 15454967, 100395333, 77525350, 296159676, 561318114, 463140897, 22967735, 26647199, 134020747, 35310429, 238011851, 275646325, 229551824, 260460606, 897455004, 223699059, 135038347, 878332066, 70324341, 12654929, 22876839, 25112573, 166322338, 364482551, 1137319783, 61008856, 64471456, 258111206, 17945424, 257073399, 185212473, 34502522, 303030966, 184787886, 206817987, 216173186, 18865380, 122991853, 135302260, 165849143, 73382142, 1108129494, 29107413, 451464568, 116994864, 454129030, 128051034, 370630873, 403866980, 252655760, 210212130, 251342646, 159273308, 1305942, 115930121, 152341203, 62649064, 222966084, 13984762, 85517909, 53413118, 94801464, 41047922, 522153192, 210508168, 305023830, 46308366, 253714930, 12799463, 216965396, 20137603, 90334988, 90660955, 689652803, 28198789, 274170478, 360783097, 69274982, 39508205, 82810310, 236516537, 305759221, 554739689, 408350270, 152352945, 68106622, 64851737, 275176917, 206512489, 3716979, 291514267, 168138973, 16510592, 437761927, 19732272, 248101084, 177205179, 69923833, 64828052, 87492884, 203851153, 90739723, 222770333, 224708746, 854774618, 142539664, 62236717, 158614010, 131723560, 25954400, 333782495, 974356777, 197246971, 108849371, 377589840, 823595127, 97980314, 339818436, 242455617, 239889176, 175607781, 79800488, 15558602, 208325574, 445451810, 36515505, 595765635, 93063801, 29739755, 30041850, 103323838, 130622993, 40820902, 268168117, 816972948, 505748939, 12005415, 639400356, 93525572, 53241971, 370156992, 376639164, 622842340, 83948655, 24585029, 139437996, 67401200, 41013986, 550858789, 223539563, 354000993, 116329334, 226974328, 206824483, 274119569, 128508342, 142893465, 203334794, 147044949, 195701934, 130669243, 362906267, 282799530, 86263250, 125313967, 248404575, 35189794, 48442819, 80687152, 144863887, 26318844, 2093564, 50411513, 1430155974, 86814965, 1912608, 137255991, 76058122, 610561716, 85153994, 220531692, 127479155, 124824626, 37668403, 662545261, 3158777, 80725913, 106709941, 92397171, 307118478, 241978405, 303040429, 50378640, 75548473, 323023504, 210868709, 244150736, 464336579, 164221495, 249522205, 1189414528, 214947176, 254857989, 46583466, 93648444, 272554911, 661022406, 318583976, 268948505, 220561421, 336963390, 57584698, 747926442, 24396290, 20162835, 515789957, 503831188, 108337548, 713809004, 39911282, 3668318, 199273801, 222300597, 725811489, 195726755, 81900045, 174086828, 534232955, 24030188, 308528028, 65651250, 20558151, 1086398543, 231820565, 1069671178, 87081353, 65350533, 277660029, 958375160, 244138338, 61530127, 153362800, 207693100, 596337081, 84649278, 253495569, 182613794, 33523165, 315699165, 147858921, 1054658, 327777243, 319539652, 224720899, 131151863, 877366333, 475670254, 534935446, 228825567, 292770107, 93913439, 419683427, 178701433, 87339940, 123577212, 65275928, 217213747, 108864069, 528563225, 86322299, 716378392, 450963033, 164701247, 170101757, 327861633, 350520228, 473758453, 788880682, 502960972, 197194308, 124279445, 509904669, 977176072, 452742309, 48657812, 119907013, 402552099, 365931082, 962764058, 115808063, 140800526, 4297318, 590963272, 276208851, 93308229, 80214281, 524883443, 243800949, 240450769, 169039501, 259819631, 84745147, 7967337, 22003944, 179935166, 355903656, 218016113, 102439886, 150825500, 43914740, 236675120, 432635263, 371746434, 220178671, 256435217, 663074166, 296217774, 40627395, 289264418, 274693615, 73396785, 454578269, 286825329, 36949441, 164777760, 321817037, 131326940, 102429664, 93919381, 348471201, 411965823, 292537003, 1629225944, 451110557, 181159096, 71733826, 94408687, 12890221, 215391871, 347882740, 59162255, 39757338, 86391508, 790764290, 158388098, 273389424, 533331971, 32486979, 405592446, 84781148, 187653469, 390912927, 24413194, 639876213, 606250504, 211775702, 250196564, 8385515, 533365642, 281691548, 380551526, 135219531, 100994227, 188098574, 849789955, 215963061, 359827655, 722902, 245686428, 10507449, 350534098, 211823859, 693228547, 374938425, 182434021, 124073274, 133325017, 29605201, 71018856, 675036216, 126270284, 177492947, 310952178, 63460326, 133377822, 107446773, 378881717, 1645679711, 120058111, 122946484, 135355945, 33808419, 386678694, 164393038, 124229337, 170104489, 2876259, 30905297, 171468461, 252928081, 42723491, 801377071, 45524665, 19928717, 325056713, 136028270, 56573447, 495126063, 187125165, 50292866, 191144532, 263703845, 285381241, 772517370, 485498283, 12695875, 85808657, 111821490, 421998388, 269973532, 330585776, 56041891, 186562237, 66594987, 279045832, 550574548, 313588116, 287260466, 1052160056, 644888720, 4232298, 559603332, 525821940, 677992100, 319253897, 99382229, 102558334, 581971589, 617241871, 225231665, 15596665, 141204955, 763506237, 333284048, 116795331, 200574991, 189106148, 264295825, 541549395, 94984607, 2424283, 104919236, 178880395, 191442005, 210338393, 571804780, 128891922, 1059259845, 207408112, 120415082, 592921868, 96597801, 1136172577, 184732376, 67461453, 306750853, 441502016, 91231144, 224468295, 329174680, 248918600, 124650022, 535622011, 212091216, 477078565, 901413194, 461620774, 110131697, 240385821, 312555728, 129585422, 115206110, 382825021, 258123143, 525616630, 96894222, 185471191, 73734142, 89550728, 413206352, 115644387, 685461866, 485397893, 109715774, 146087914, 16118935, 388650343, 990274361, 26729180, 22363965, 150885489, 322433244, 161163488, 93460088, 1361079738, 8359206, 80542457, 222192167, 122832563, 245414320, 77524096, 185243943, 794322053, 2861146, 33152520, 217569347, 17169624, 121245086, 426127977, 26494571, 43281676, 602290747, 388220762, 1126784838, 1022137144, 54666364, 421003633, 364428916, 639371297, 270364900, 464308574, 110566623, 23046962, 6087280, 268072640, 21216372, 14641300, 273653193, 131509491, 49577430, 1160560750, 272876609, 295260602, 308599543, 135839904, 203619843, 73178814, 62410345, 605227120, 409551327, 13711838, 421971755, 148469286, 452005932, 403209759, 138304285, 1762702852, 102465797, 601748929, 635314843, 815485942, 167775634, 1302295514, 9380011, 179262650, 262435793, 525291198, 91413112, 3070328, 75802625, 164043880, 368380631, 268741397, 553350653, 150764065, 404050130, 139088222, 144702813, 355317047, 95538888, 791571443, 410921998, 25856103, 125064137, 244613467, 257991025, 198947192, 243675893, 308562343, 48570462, 77636917, 270740132, 127726708, 74849250, 145286203, 539114625, 256577812, 6805475, 625636619, 126270155, 84866532, 119808803, 34842148, 283313936, 1065464602, 95674417, 150885160, 130707418, 167846356, 652988552, 152458322, 142768656, 319481312, 199914987, 204555023, 93380404, 595042380, 438927045, 273315479, 229206733, 340705995, 592268389, 63105642, 27560394, 572758710, 126523475, 333897102, 75608093, 137511565, 255877780, 260239205, 146355005, 344493575, 181174015, 20127533, 326792294, 419731757, 77434496, 25164692, 79203562, 47691503, 198594202, 144545056, 525111922, 427120459, 802241877, 44388999, 312094201, 187723523, 420421500, 81398533, 67395645, 150622653, 66501705, 103370191, 16435953, 113020815, 8546917, 97615684, 366288372, 278637821, 300830822, 48335226, 33430113, 48324395, 1134344247, 461949767, 326553891, 72250120, 648114093, 859056712, 42716315, 53843317, 35529678, 1539751, 1025199521, 20525783, 636129513, 143351288, 105529712, 158546744, 147940795, 212616890, 262442072, 276593852, 540929466, 151633609, 356621849, 279061394, 357946162, 175346321, 11126846, 46400917, 133911622, 46067868, 20016596, 127527629, 348659541, 401120749, 120850458, 272565210, 177196453, 191278338, 225210980, 250825398, 82173082, 93554288, 150495704, 50081574, 330467885, 376694640, 121729841, 37914967, 13675257, 1196368280, 198830566, 293350353, 146211129, 80229989, 100045490, 631218689, 178833566, 28310923, 17614694, 567201670, 80027847, 39044409, 1521474, 1126449316, 289058841, 123240951, 124475019, 41277106, 564210169, 312027757, 371816780, 40945503, 1071480255, 703418034, 100256503, 154648500, 307078280, 148370596, 102739999, 175267097, 143012981, 239070012, 41802080, 233736552, 243499357, 163095950, 71730460, 23158633, 217605271, 12745440, 332423340, 221349257, 714239179, 337709278, 93795471, 238963354, 23537524, 143606181, 175704615, 875853736, 28753956, 70170760, 512050307, 477992888, 633638551, 651154833, 84256482, 109688467, 110000722, 109822200, 452828588, 184775490, 696603587, 858194549, 471447142, 197957226, 143667099, 17125901, 116749669, 340028427, 30732590, 17419620, 7676344, 414679894, 200963340, 19901194, 126628046, 253411311, 178533395, 520959404, 103931444, 109802398, 483339745, 50853762, 663478205, 362039305, 23601824, 54895822, 21176459, 146398164, 84140551, 273601490, 671261358, 58038968, 244792408, 367111010, 167636150, 384279766, 217620125, 456103106, 69348100, 292471796, 265699663, 79329788, 160615192, 45319443, 106429381, 229511867, 390217020, 221268386, 53101421, 24526023, 610602958, 3860373, 2227432, 449675366, 187716231, 26034898, 367907955, 106417809, 81253308, 387007963, 911024460, 52990311, 850415573, 223244099, 299881290, 147328562, 20665602, 69546563, 1185050537, 96422050, 274421958, 257100189, 218935668, 490048009, 396386101, 269302508, 47428174, 90523759, 769577448, 112123845, 34905942, 238460195, 29501902, 37444160, 43546271, 250803053, 67602925, 607011080, 308221253, 177508391, 140558207, 281209852, 142232380, 122133887, 879610440, 479573487, 206290569, 412258304, 444484627, 85420436, 24279401, 59117620, 589616907, 133775145, 412498434, 141077070, 399389230, 787813198, 318773941, 339099995, 10026150, 223648724, 98025754, 40717414, 319212986, 163263520, 184059525, 294788002, 28229233, 52959474, 43728246, 190094628, 230722060, 99606570, 260693392, 90896990, 41256006, 46050851, 20046242, 323094784, 52801361, 637001093, 611626119, 18722753, 95464024, 307941119, 68251550, 20466387, 127323909, 295899280, 207887706, 143622910, 71285171, 500389112, 97073404, 709071156, 95988166, 431637899, 242805909, 137328379, 348622649, 182838772, 286662842, 97185497, 437389919, 87298912, 111278211, 318559349, 54464229, 46700644, 134752208, 120723323, 18466853, 11126259, 52596118, 32525883, 344665864, 138218650, 737430015, 28508735, 19578558, 172931560, 82090919, 97113448, 18977773, 224643593, 1059295952, 123555178, 122599017, 105228889, 195748183, 26427679, 457723193, 685999929, 42325600, 124271257, 59892091, 71416099, 451106378, 129890881, 134132483, 843154132, 367671928, 165285935, 1593847520, 690875104, 104410409, 169813411, 20798533, 80148745, 102704223, 42018316, 176271139, 233758867, 58834992, 214154931, 43097230, 698405615, 295121620, 82037859, 77280875, 725649546, 29914195, 455551227, 519028060, 736710807, 15282312, 71308138, 371526400, 55678041, 126135146, 328791859, 307123113, 234825534, 326391934, 117132205, 632684539, 50779122, 150029627, 651745106, 180890649, 104088129, 134099303, 460349237, 83235618, 315465540, 338576992, 57383712, 30240701, 349893557, 56893317, 10833500, 234295108, 2093564, 604788149, 234097086, 771286231, 321959956, 222567898, 316929695, 582787487, 748591688, 42832479, 101874208, 197892697, 245567393, 297127697, 51706635, 197092481, 502090083, 24429334, 381701277, 664040806, 69656150, 232089873, 54038616, 296113724, 94022010, 126082887, 400060028, 397172812, 223940677, 451883784, 117500066, 104288846, 164186507, 309903117, 82799457, 45579598, 76633980, 329255758, 419536312, 734619775, 247683700, 30160764, 61626931, 60558182, 199299970, 128468008, 343714327, 124025165, 169072809, 175971130, 90326119, 157686478, 442968418, 65471129, 32008924, 512576860, 240149959, 270895173, 262655015, 633004720, 160351049, 348478083, 997831790, 638371252, 142432999, 1222583129, 448360039, 140937810, 319796111, 247496207, 113039710, 12951287, 163877207, 213639089, 76888590, 1063458412, 710592540, 341240344, 28082826, 42000768, 797352267, 38441052, 110503331, 188799048, 115577905, 160410375, 118506945, 760169770, 23942893, 350864713, 242540016, 89464440, 163603466, 103102242, 751095201, 543796934, 98987627, 373071838, 6780091, 375323344, 28734775, 123439680, 432107788, 98362788, 294206251, 428675274, 91092638, 242593161, 195348237, 39072662, 179776214, 64664671, 84068799, 468790381, 340887625, 258843918, 6470610, 466983348, 98906983, 523048639, 216628342, 282906783, 40781246, 2743450, 944478087, 22387190, 264469331, 87720901, 232392625, 283028872, 8652104, 150485876, 392851425, 232957595, 357433746, 152957538, 127295441, 396928218, 403625511, 276482474, 639079426, 82948299, 522196757, 52095871, 25735505, 105334504, 425584687, 534769884, 43305522, 512320424, 342780011, 325698835, 187751723, 531752611, 166065578, 172195368, 314768400, 485849373, 374555248, 4892419, 72359762, 204009182, 159115640, 1307021, 32028069, 719622262, 155272603, 73125406, 326386048, 65631608, 266755042, 119562827, 70539936, 71991095, 206029734, 104518199, 220260068, 22190629, 55279390, 163994574, 717879198, 638229726, 46784959, 152866957, 195712619, 123870924, 286472903, 841268552, 61909879, 140852056, 985078794, 56770145, 313497653, 50042337, 58385914, 214232553, 509135109, 270324995, 416727555, 216434872, 245942976, 48869370, 655235023, 477331084, 137875620, 58936145, 623333500, 874189280, 6749424, 485971099, 145592573, 837717898, 181804098, 106280536, 39992650, 2603008, 158023493, 424676330, 908520477, 136799903, 810054878, 313510685, 239267549, 131993099, 250996563, 413079877, 747409248, 164097696, 49512247, 172897156, 2927490, 195222164, 275221067, 299344566, 27148727, 11793083, 258058269, 1685273709, 375183971, 133045766, 482908847, 677412911, 26811898, 20897491, 1429570533, 71373126, 23712348, 56049035, 401948356, 430713403, 237846227, 173343779, 72388655, 698838617, 535863376, 498374377, 165263179, 435249853, 96188176, 265552718, 6964221, 16714662, 600641395, 295105340, 175984056, 1222391822, 164542589, 503676374, 357463735, 860409121, 72845463, 103074614, 567544773, 108595088, 134343298, 261703258, 224186596, 68999093, 447527339, 25565087, 399276465, 42774989, 224422956, 2809819, 20428468, 151237833, 516892975, 204388280, 1070789368, 628299077, 644902068, 1910499, 893073139, 435795250, 147323264, 57670106, 208811544, 266164277, 11007931, 86911276, 238321687, 87379599, 113091045, 65353649, 253150976, 359092662, 237530826, 695770181, 334694274, 136431993, 4321159, 178982548, 211826460, 107867297, 184483282, 259050642, 191492511, 28168467, 619136070, 181534583, 900068, 445644762, 76133182, 337721935, 254609484, 145152856, 643818605, 622599280, 12831224, 800513452, 701151295, 129835883, 69171386, 84632758, 114788966, 236789368, 379024897, 734456573, 192155827, 169880225, 22964343, 86528238, 835789042, 126642717, 250335814, 60224207, 365246914, 33239733, 13472156, 277166134, 118261032, 432919252, 162333718, 116312525, 195057176, 452703601, 393713111, 148832724, 167829702, 223049686, 35320442, 133332163, 792813502, 27929260, 291080442, 12120504, 310011800, 48915425, 349182669, 776085895, 270920948, 445346853, 927357020, 111308688, 730262453, 229604479, 91469945, 303909102, 155497920, 110610880, 19456966, 211017433, 39979533, 85240603, 607605710, 138564279, 484086930, 143320931, 231074819, 95786233, 1025115136, 323614348, 315753991, 301086325, 212952325, 28826182, 340180619, 1062841312, 83894199, 158578582, 696800737, 283565719, 1111850, 601986203, 361685453, 311503820, 65680013, 7856944, 121614323, 139416516, 32771043, 54122410, 321272062, 78407430, 162765998, 112447477, 139313701, 10478586, 378566771, 1079307449, 110886353, 355447585, 151316781, 404418742, 140827923, 1031393566, 265819806, 558171143, 860591902, 278220969, 103951173, 269266127, 12623302, 20514627, 86486334, 413890046, 383343876, 73967026, 452758548, 553735624, 134591060, 713021816, 15328009, 25954933, 719459310, 80294206, 152969023, 110048647, 12409694, 56669341, 18544158, 37980702, 299768184, 184806641, 288513501, 474453779, 173584895, 90861628, 326996691, 54600099, 306541283, 398828248, 456325469, 348252341, 504365921, 493795560, 81235615, 118058555, 22952939, 21214309, 69721366, 173615851, 376611430, 8899118, 102262077, 152760993, 10818883, 185823152, 196265866, 23751438, 154795967, 236337588, 65533383, 31546694, 23272194, 558728297, 755732390, 98679736, 648665520, 133879574, 181625975, 240366037, 48846797, 15849187, 18523047, 385313084, 613944971, 106622991, 33649870, 350240801, 44306826, 114220018, 823001288, 285405103, 36622431, 84546087, 486902441, 49059890, 195959882, 117967934, 20992, 840452982, 313848369, 65560146, 453779640, 197463273, 492442874, 188245700, 473140155, 185761528, 609509055, 103549802, 490871776, 17502584, 36077816, 634832997, 228724853, 6576500, 1081574934, 315501362, 186778008, 575330209, 414128879, 162791694, 90334951, 657770121, 172080374, 35147962, 474298827, 1275279333, 69015061, 474421556, 791975419, 665177236, 424453113, 192370922, 154149182, 129599647, 4235080, 3685898, 574527732, 653641705, 108988407, 343388635, 345464119, 62537726, 126662596, 94732536, 70866554, 30297912, 1201985493, 354823916, 1222108938, 198826512, 739706931, 86403174, 154187272, 141494830, 42461089, 83046050, 137592179, 125313924, 26886600, 27415659, 10250390, 272720716, 251865968, 67627962, 5667345, 262824748, 72379305, 627018656, 90097044, 102896424, 125471053, 380165459, 200529206, 371633554, 15108519, 189642123, 520713513, 421159932, 1194826790, 242030975, 101538655, 694478337, 546241263, 374179975, 109293516, 4223654, 390295250, 177540583, 39548265, 252781767, 233479424, 51462360, 76500876, 746493882, 42216065, 4666162, 99891925, 129130533, 296684226, 243194715, 159815070, 11587282, 116971704, 344821290, 421223741, 45628146, 70105783, 135525780, 793898514, 66070115, 1250313334, 3068128, 595724635, 251514552, 192383234, 68687115, 124948930, 87433131, 331948393, 79927466, 271563772, 10665132, 53381152, 268876430, 346872445, 105848711, 281776503, 9860626, 163469390, 103061610, 128444184, 631086518, 31111842, 176504280, 126731710, 281491687, 272898940, 250132555, 12641929, 109353014, 228246601, 412467486, 113977343, 167409932, 40932903, 249996953, 314197035, 81537544, 268578250, 42924627, 196727451, 84001581, 734118472, 323015635, 281647164, 289928572, 6979622, 95646508, 157983404, 70201581, 122723439, 468092971, 576431197, 173669725, 98446909, 80655430, 36137851, 317491232, 538908890, 679082133, 402247295, 55493363, 162227980, 35078695, 282405070, 242629148, 173904567, 24998231, 521996077, 31023811, 1128468768, 126778068, 36215441, 678518071, 467254700, 401604448, 107081225, 245044424, 466507539, 398994106, 473683987, 56909941, 245260999, 334106051, 144275807, 285148716, 954883922, 209459665, 114767889, 236429088, 63418540, 35667696, 197392590, 292757245, 1438186993, 50482098, 80459488, 66861390, 2351347, 536156189, 107352216, 363829646, 1212883014, 163342830, 141939795, 451061133, 1052746280, 361206987, 47019704, 437865468, 81477065, 1221193521, 365455783, 529194724, 160356805, 46636763, 82074592, 49885867, 160273837, 119667780, 377694072, 289586657, 71023612, 6562993, 105101991, 1002611725, 58423286, 108036615, 58763947, 818914824, 58439271, 86175645, 318595586, 725973128, 174916236, 29925299, 368697095, 164904751, 241619879, 638909096, 82023721, 518839749, 278191608, 1884736, 167585078, 26794457, 661223126, 173562347, 82497493, 121658835, 485051154, 392284944, 6634634, 455415740, 421806067, 27317746, 422553894, 357695530, 149995455, 1221099614, 154317887, 124919729, 3345196, 38015926, 97740327, 181371568, 1144058315, 432476845, 805078765, 106599511, 163503100, 876605805, 719142699, 28703048, 339026425, 135222197, 777459807, 268369238, 551609999, 63059125, 1514041591, 163477928, 347336192, 393611079, 85508607, 83162167, 539503332, 451469618, 698006, 11641717, 215398519, 55965398, 47730655, 222919458, 103619452, 169455623, 15277197, 15045767, 4543167, 1478715, 37572854, 171917142, 337603513, 17176950, 104598961, 152248747, 61948996, 83556186, 18013106, 469944765, 173913495, 445396646, 89097609, 809685797, 232191730, 97131873, 65811905, 57657794, 33578068, 927243205, 1111664415, 297067048, 45711202, 42678958, 71375928, 68484644, 121248586, 10167574, 7638146, 128420621, 420249187, 46377561, 246995877, 189692944, 932641893, 692638603, 753364014, 51672822, 57139532, 375209168, 388680, 144812502, 221950154, 8803320, 33196442, 40956822, 109865485, 109010123, 23306770, 162171296, 13912067, 18690662, 550066753, 62287257, 882248788, 29669352, 53477355, 20762684, 41050706, 62828963, 162764521, 724932002, 33011417, 438218220, 55873258, 23767568, 350285834, 36610739, 2210759, 296712195, 569926099, 2602656, 24092991, 56987932, 11493181, 60628357, 108619105, 127364071, 89784963, 48182960, 232613656, 23305452, 1049219897, 160851149, 92027863, 766890772, 97190432, 66432900, 4598349, 57871440, 149914032, 66698832, 558477091, 92693424, 6676818, 17479348, 35874718, 186998855, 750340243, 38403077, 674667435, 459187927, 41408245, 375599915, 2838710, 726502847, 326560052, 25808105, 99999668, 1187925802, 1167194, 273485175, 19823555, 1114612597, 25238141, 31219652, 701928593, 41067691, 107113828, 316275309, 109833596, 188932666, 652965319, 859331529, 211780901, 310188121, 6062101, 298235189, 734616046, 872440902, 437555786, 516906417, 202012214, 319094081, 250995196, 91076847, 265888824, 100062130, 128056960, 312650606, 13081692, 129940184, 106288952, 33934680, 123174938, 48425843, 1011571894, 11850590, 98413017, 14988225, 356853627, 133163753, 98822950, 135298305, 115791204, 515883307, 474684487, 34640684, 199514264, 388280167, 23053485, 21471738, 258896376, 253543403, 397165621, 985998889, 615045726, 137515642, 90343144, 7239909, 24981319, 108842969, 46388090, 48145862, 60052289, 86348292, 107204820, 697947286, 102835938, 130297552, 1050607953, 434694581, 199266639, 91188386, 59189662, 261670526, 592613605, 401165371, 365553206, 143679340, 208580184, 469559830, 73567335, 638744673, 55109060, 3233862, 573681915, 480141282, 47191152, 665361881, 251245646, 1735485442, 1648483305, 390451893, 47646363, 786838009, 11394128, 73759651, 552664396, 30731597, 263149368, 246501118, 646823353, 43246827, 272153902, 520950244, 396305606, 201093672, 128490579, 82170675, 314442202, 680071424, 25254154, 712985881, 230567461, 6451939, 314488023, 164608252, 249294284, 511647719, 35201760, 64202878, 508851380, 34543765, 1039806600, 383957528, 454093910, 393510249, 277517, 153992112, 563209498, 125823333, 10215811, 206023662, 84982408, 147564003, 40669527, 420550968, 321828877, 197570228, 15172961, 132044853, 56551110, 600209351, 18524427, 390278936, 667656023, 379531154, 970568006, 198025756, 251476806, 27092867, 177025980, 62011487, 900803804, 63431629, 916063691, 407543882, 1044761269, 338320321, 65816913, 249527850, 25506750, 78941668, 591210625, 120644336, 149032445, 404521938, 44661567, 35695014, 95512181, 62675202, 193165710, 72863598, 28682167, 106741661, 1092281, 390530766, 23815173, 1014496625, 10041448, 317020536, 462602046, 196795556, 280020999, 414679265, 351520903, 121089905, 225022525, 164419187, 22240376, 412598916, 17549262, 50068472, 416558610, 324189071, 203916672, 64697053, 175296288, 310469417, 24446829, 201133136, 275770254, 115004070, 388751991, 181667115, 302996936, 195593217, 80212291, 384726486, 183180179, 11905921, 60858020, 17894975, 222202240, 510170838, 511295136, 11347248, 64495792, 145613813, 76425819, 93108682, 815288333, 100015954, 63825897, 361772116, 3286058, 365539062, 325615393, 73691574, 52484335, 418610111, 391447092, 459760140, 39928569, 204030880, 100139924, 452631274, 13713618, 102751650, 105347341, 92984386, 120395786, 201222647, 118651075, 299860289, 36251847, 843136750, 166660439, 24807198, 35477315, 332552007, 128913791, 21169313, 394162767, 112087326, 223054431, 202806968, 23884116, 83400963, 394859177, 2993362, 439064515, 207082434, 476792506, 315906082, 457918375, 593617126, 189590876, 257312084, 843737081, 477435973, 644364230, 18512290, 30360095, 4041666, 360984709, 71300365, 341772211, 805684959, 104133230, 498498824, 141149588, 161100423, 676991038, 52823485, 422296836, 177642020, 164031318, 264086243, 185790274, 69297569, 272168256, 14625114, 193436075, 65419952, 366577450, 108276587, 518541505, 77689186, 796152123, 448575363, 476901150, 250139780, 566027686, 311022632, 123805778, 122480286, 675841534, 25182765, 18043508, 1216979868, 307361648, 172426525, 56197822, 246959906, 283788145, 351343364, 481896349, 31220738, 118119570, 22896220, 24046658, 363205640, 38863005, 245447339, 849891789, 568167657, 305464220, 221173160, 567418058, 126755986, 125416183, 164598587, 352378340, 56833, 41882924, 507038466, 32774925, 448901890, 311517613, 53253165, 214232315, 123366308, 284805076, 360261133, 340077497, 15134163, 169699938, 95960609, 655421280, 228378246, 129329327, 368962355, 101349147, 82819446, 114097257, 5604323, 42060761, 399397312, 234122899, 397583796, 43790112, 326408325, 1041588397, 572373336, 161533463, 552210595, 351657666, 224740740, 152181306, 144772773, 183606432, 1086526092, 204778390, 611854719, 170220613, 77927072, 817743835, 747142993, 215858660, 255398782, 192082685, 308573697, 120154060, 229005372, 797191100, 163163724, 242348202, 495441193, 70026082, 694954723, 256012415, 128381037, 265788013, 112522578, 2679510, 22565674, 64842201, 179952955, 135376390, 279765667, 284666053, 596148773, 127554783, 55695977, 417821488, 505389197, 55803819, 180728709, 205174718, 361835349, 29410444, 423841718, 147820415, 167712251, 123056123, 124933068, 678294256, 332898202, 881869880, 612966142, 270953281, 231124217, 7229485, 82292944, 296015780, 9982516, 26209107, 575117413, 85715622, 180277941, 87558862, 302052625, 128574639, 286882457, 533191263, 49924434, 78207123, 13909324, 140743928, 415249443, 207915601, 192482520, 233445924, 333115103, 346346090, 320505741, 23263529, 134120272, 140565185, 12523438, 92436031, 11853845, 124542590, 102694778, 15353817, 415902596, 29107533, 43188460, 145584769, 126645256, 272550539, 320467739, 431901247, 390649579, 28837928, 291731522, 309872888, 117544649, 166183856, 26137729, 592669515, 371073824, 116861120, 66466458, 165358787, 21727347, 665920749, 92422282, 170931103, 20153170, 23913019, 385696693, 32953595, 163642280, 473419371, 676265270, 1310577503, 719026168, 18931739, 142107697, 15418517, 162527860, 30673390, 519698144, 66986525, 852280672, 83301473, 284857587, 16944534, 173847209, 368644307, 810887034, 68675119, 505792748, 674446144, 310633400, 698215243, 484084323, 1011656778, 135698216, 639261481, 17223829, 638995843, 396237234, 83361485, 177835271, 315215529, 80600115, 144274613, 190076971, 145658008, 66681143, 874986316, 86369214, 466415225, 716942248, 71321757, 25562814, 108755687, 11759987, 101918192, 472856384, 364160174, 209410290, 302754452, 290699160, 69213348, 247361458, 75447726, 818291623, 369189324, 44449021, 386552901, 138514670, 299596444, 8184799, 586559475, 31813172, 10334933, 14241575, 259152972, 163693892, 5421287, 107156799, 353132263, 498793499, 2238963, 335414396, 308595645, 112120096, 378893830, 1899623075, 671397848, 185360595, 208916104, 242153679, 46830338, 195043908, 777216412, 139418366, 65794378, 316095120, 98083811, 1056283896, 497750604, 348386466, 381804223, 352433711, 489656284, 211371344, 203247781, 61981558, 410214, 214942154, 89558522, 176342012, 134911324, 92689367, 58198297, 470399768, 129093579, 322740539, 469095153, 95663529, 59291016, 32782052, 276069029, 30268944, 267915725, 237480495, 192444748, 244058166, 87854847, 224178490, 231339757, 549570940, 11357049, 23791442, 247232642, 265755646, 266746341, 571967942, 483036226, 267855868, 151952798, 33794657, 530176493, 230099454, 46370191, 438173997, 138147683, 208696452, 188234280, 1006184140, 238408515, 325171889, 25730541, 70513579, 444170026, 344417350, 457597531, 19177876, 103509417, 501591685, 129840280, 278703164, 338445500, 148512367, 352210302, 18565473, 14717993, 120026079, 794023593, 271523099, 361840619, 36978122, 187672695, 115572413, 327094544, 290881324, 45008873, 518321881, 806432179, 288324135, 477915965, 207865752, 120050932, 687657139, 196119407, 670738623, 134454370, 23820746, 356614146, 166565914, 716042966, 541514277, 521368725, 135123284, 92659189, 109806318, 63514565, 26388167, 319868837, 46412022, 174670628, 54867565, 9794245, 1068222880, 205375236, 179975207, 133259079, 313585095, 112970066, 112239835, 27041352, 689299444, 266230850, 61512944, 242293848, 42827315, 35109746, 358380588, 70991788, 250083077, 791336925, 650345701, 171985959, 437689540, 98377155, 193329264, 40454437, 195647515, 250687123, 235778517, 148396537, 481496483, 195771338, 62892066, 452903724, 14465060, 320868402, 62009119, 180695659, 418000528, 94347184, 236553209, 334677089, 696878485, 419599096, 15306240, 462208566, 290767031, 421870934, 434748538, 83589719, 361436260, 335394730, 180232286, 92836438, 392806077, 635628, 151965895, 9405364, 118838410, 388932768, 62418203, 57017309, 89274692, 144535167, 1703624, 109668554, 531830269, 870534667, 228838096, 282861043, 79849891, 639717016, 121455468, 54168095, 158837930, 145928693, 374683780, 30712484, 864140271, 216974371, 35553703, 323055609, 4352068, 254880951, 1303821062, 204381957, 256526712, 50946077, 101862869, 970939489, 746568383, 85072499, 655065837, 67026217, 153883179, 675299183, 97556106, 95136767, 569480032, 565501969, 802996131, 39690326, 205234160, 17205311, 19061249, 1065079759, 70093375, 461677427, 25078707, 56505979, 35433570, 875090482, 272788120, 40405442, 229487756, 127729040, 146726949, 748483463, 215241543, 358380588, 289573315, 72926288, 2283710, 228332807, 164837528, 157948011, 73810358, 192547027, 364927172, 545429949, 40065066, 156290735, 1712215, 300145743, 187914010, 465232899, 285044833, 354714006, 277383997, 181673294, 298768879, 392005447, 162126654, 15990836, 286410011, 402094422, 153952478, 21518181, 167024221, 357830589, 451356945, 35299959, 981941366, 227007343, 157776671, 53741769, 387464480, 309949788, 317316441, 189894092, 216591044, 233110314, 320335262, 99011265, 78475563, 59975283, 37919388, 286487341, 307405770, 199429835, 42931462, 28767671, 11095091, 115441480, 46628875, 157955602, 36130112, 243238357, 198051354, 238797207, 108400292, 23579432, 165785814, 15133964, 138553439, 632415700, 72348936, 49070815, 110886150, 304178722, 301000553, 597778631, 1812082, 124428587, 798688226, 80905757, 103341076, 474194843, 293269339, 371840268, 117026910, 220863113, 511689612, 41177103, 647322142, 2917775, 237387726, 412131652, 117748529, 522481232, 34972015, 153587708, 761121174, 234737025, 181019491, 113372311, 72426060, 173035770, 192344211, 229606941, 622099923, 729932848, 65106801, 641087106, 14725877, 654566608, 49508502, 34705164, 363442344, 233775155, 549756294, 26834473, 41176227, 170792303, 72731611, 14483021, 176332020, 228254831, 236406096, 236079122, 150860579, 330123615, 5611778, 34193478, 92150279, 80669859, 167448849, 86474034, 356183174, 345589076, 245050644, 271412919, 140027771, 451516952, 211020202, 62665811, 348218649, 165991736, 107293960, 65613680, 420161210, 798066645, 100378478, 726264966, 146029265, 94859249, 355533367, 281412030, 548512236, 103349637, 71724464, 13403296, 7404017, 949011, 49470350, 18367292, 3093951, 128653090, 112165751, 368036092, 29712827, 313124985, 37599193, 80683527, 77549322, 147826794, 65380942, 1019902046, 269073549, 93458529, 768190600, 148059644, 74682813, 78951718, 118593531, 142004027, 96076039, 25662746, 443906995, 676782855, 46512877, 420853089, 926852864, 55340941, 425435481, 39442437, 214270, 440879014, 82931883, 25523370, 96130911, 124266224, 405520695, 53295264, 127686189, 8217512, 248341602, 242431574, 378794746, 1125294263, 589391519, 322260467, 141106811, 569031351, 325107806, 193865898, 10712061, 806920, 249677640, 505303129, 298422459, 193110369, 273705428, 273761096, 322518559, 54144414, 199473626, 159706912, 359046843, 419112974, 207931326, 10544746, 643610112, 102876773, 915364095, 9831415, 27350053, 226854181, 127900904, 514674286, 97179945, 83650309, 215518797, 334679985, 607700209, 78693921, 69078212, 734441252, 1470159, 233348264, 203425156, 302916277, 26410795, 50206503, 17805321, 209217679, 28763697, 110282896, 1229031478, 490465667, 559076892, 202015234, 264013596, 204302707, 243003760, 241287551, 225805777, 316500737, 651857106, 792761528, 211635238, 65169552, 891875035, 501759919, 706738828, 251630223, 506076090, 627326034, 92651873, 515913391, 177678130, 465129938, 87625749, 231486980, 1363889976, 25625917, 34056185, 498317329, 149930408, 30944424, 308297512, 97036795, 130971172, 99178116, 485635911, 1073272344, 281987013, 44693113, 300946847, 221633754, 28641755, 66528393, 403535694, 450798318, 18117733, 162484585, 147085944, 291051228, 30028700, 335781934, 194529627, 239314746, 206673890, 209846779, 665426873, 87846953, 269399814, 410975104, 35189671, 17007617, 274939232, 216813582, 32224584, 7351758, 533613216, 321129242, 2336941, 81411402, 511161551, 151418920, 465824553, 816608859, 136674232, 115482710, 193763944, 64169909, 215591781, 737875048, 557061147, 287950590, 136278931, 132682478, 76467360, 308751958, 306491334, 653672964, 881556680, 101240155, 319716516, 481646121, 35520700, 110330021, 131749301, 72633569, 32006989, 1929087658, 308492955, 546501213, 2485506, 205072815, 95955312, 480234103, 71841819, 322781991, 717176664, 371001748, 652931086, 177061852, 152454390, 414673352, 40755249, 477900360, 695305947, 39585375, 194152460, 249846577, 429208790, 68674287, 296219635, 182852989, 16460840, 421808005, 232463070, 58464035, 403612471, 155707123, 770490381, 165796069, 99437820, 818124737, 1420309107, 119162922, 204839011, 1026239996, 16046343, 167722128, 348589205, 340333088, 319588382, 46927898, 78503685, 236196093, 361779968, 702309271, 170752797, 79023557, 204204178, 83941682, 175918602, 800578075, 191971692, 91401150, 363223194, 25389319, 71087553, 83596902, 202891609, 692968358, 349865192, 238232344, 263460843, 171290255, 787462852, 46487564, 160405789, 375568591, 124887497, 696383584, 171307786, 18894064, 24047510, 172291082, 284229449, 469197951, 137392950, 35473670, 474452679, 307240795, 40701951, 99596844, 267593294, 283018009, 114369263, 34588037, 363487568, 232599162, 39506401, 5577599, 78042898, 538003653, 251987075, 563670900, 23935615, 217748351, 9991543, 89497221, 99158152, 45819849, 62873982, 202077741, 68382253, 11761390, 373197829, 264286771, 257688773, 44129552, 185285694, 158695449, 233889074, 273678788, 188584086, 64147272, 92242506, 512117947, 22913761, 407660176, 53119350, 66239851, 434128146, 151751129, 479269873, 46417989, 15955965, 294326197, 336449982, 26571674, 801298445, 396470735, 77641218, 46253316, 13483503, 68219325, 801557253, 432005102, 510698751, 224441413, 323134949, 27602012, 3495327, 88754777, 358473946, 83002089, 74538305, 7557429, 539387582, 20244190, 218628375, 12490083, 92434478, 119244487, 68646692, 551732610, 195612966, 89436496, 207224659, 1054133665, 36141414, 179365211, 186243794, 35996921, 134455832, 94858484, 27768638, 25872833, 502246600, 799269073, 288402098, 211955790, 425612599, 146128116, 230242011, 203884369, 310743575, 224495862, 98922349, 215358518, 273753057, 538248964, 113793328, 305041141, 68087595, 103340879, 214927448, 180681030, 116155617, 487329908, 66190760, 174106134, 20337008, 169023630, 116084581, 65094964, 388642578, 160167200, 98526872, 119510868, 42618009, 336087912, 284622725, 764151153, 38578809, 69992355, 67537358, 225303238, 211133583, 203063544, 543674638, 54556216, 135356878, 877376911, 253655670, 123361208, 88730045, 648272644, 250479367, 268874457, 369850621, 468184483, 524548099, 461553346, 11180404, 849395076, 9887696, 216789201, 140324255, 25832487, 656672305, 96619499, 439961591, 224706886, 1317275918, 753836732, 211334416, 64997175, 79398517, 25168701, 367582918, 35569393, 5911105, 592831209, 24150287, 269134556, 80308108, 33058565, 210621804, 255252574, 184437012, 92533775, 55628631, 117820631, 529260076, 69450825, 100783688, 609996710, 408944462, 169662663, 1203029691, 319125895, 196541996, 424758223, 81720990, 192446397, 176863346, 442122147, 348302937, 360174853, 278186160, 67001409, 253506267, 295194085, 31589206, 158285742, 95782897, 33690617, 221208713, 498401358, 353020645, 16128427, 577685391, 673744719, 47424459, 366316846, 42581767, 67843371, 132611111, 303435173, 155733495, 127678889, 34583609, 859571647, 682686863, 129771624, 170966880, 44357552, 751152041, 784647464, 273720237, 108583261, 663248476, 77357746, 7209685, 157675611, 95673995, 599472787, 376398283, 597418760, 262838683, 449006817, 199332571, 92488309, 344179708, 83979154, 154756310, 318099070, 288382605, 534769097, 38757664, 413047236, 1118218948, 26430670, 162979073, 33153947, 100856690, 250983709, 436952801, 2102113, 76046006, 39342059, 689242054, 75596744, 39253804, 321537030, 314094515, 54657677, 239968638, 157377578, 467234194, 65094861, 1137027, 115098353, 189736699, 173048454, 122199136, 317261732, 49828042, 6565717, 97771932, 97227871, 219084984, 91841585, 42363348, 3503567, 139791886, 62449535, 259999671, 63129651, 65104988, 256533343, 26575883, 585314303, 529470122, 1032807962, 236185675, 95325921, 650151134, 693493965, 181212291, 357339428, 588122848, 183450183, 480268639, 134886698, 340395855, 59427743, 486360765, 587771847, 67645575, 41084208, 756402461, 202099340, 53280205, 24214410, 209593075, 236705460, 11569709, 648471565, 210730367, 1592078, 200479974, 272874977, 599743905, 39050401, 121983604, 68924231, 54143757, 86859221, 43921758, 300498918, 3317039, 10713095, 668142700, 500759201, 54080181, 271012949, 421675347, 391585706, 199087481, 386752952, 287825302, 64060767, 92786748, 488237189, 95193400, 482376943, 147963153, 25054482, 182474861, 337906188, 26802791, 391927064, 29036487, 1186124320, 626718282, 169267048, 883271924, 482350067, 365925626, 531761369, 190245633, 188654492, 621302228, 51021997, 27788286, 478864150, 444019390, 593674471, 114756075, 22609591, 284685278, 1512565, 93104733, 783376446, 497700202, 111543185, 201843968, 4196822, 150479481, 5919474, 352984749, 199352709, 418401830, 482115914, 80994780, 156176399, 13802283, 67807774, 86434361, 424450112, 23930010, 203468631, 13045506, 356327598, 327235033, 42295745, 101647023, 81404240, 412140750, 292039290, 112503311, 55477816, 296553823, 129978343, 38213378, 80999100, 171534976, 141451270, 86689878, 621638484, 53196149, 2021935, 51256806, 339531380, 239278283, 54140013, 46428711, 131980766, 44967768, 54087865, 717820810, 1184835408, 166523680, 1030298055, 344341146, 48962358, 553110538, 414271929, 150102633, 287410863, 59153622, 196493266, 498623673, 540495060, 282754808, 346538899, 558879177, 35360157, 575842065, 44038002, 398150580, 17388401, 638075549, 319001655, 201994553, 75599981, 564569699, 153733880, 269694804, 8777968, 258670702, 223369673, 5440434, 474238662, 210403809, 181360806, 1471060404, 48184694, 7029328, 50832383, 462621299, 67944519, 155611200, 143391219, 489365649, 25659409, 40124192, 335813257, 884601627, 394696554, 537708023, 357547012, 480243259, 197372431, 151517746, 31297673, 389967894, 15931809, 212004039, 137085549, 488860614, 655202657, 335223235, 250422865, 363686228, 79557724, 502386461, 178760255, 49749293, 551743722, 288583968, 1256012317, 498629350, 503972053, 139170889, 307892261, 311412857, 92603771, 135424577, 281420760, 17158320, 2600542, 38588882, 276617773, 202826111, 101007132, 375607638, 12276047, 124544511, 13101788, 57554860, 849300417, 867753863, 635087110, 223033173, 325486850, 649348334, 141835462, 56155563, 22429472, 8387731, 243194782, 19732503, 557568219, 56974490, 68005309, 218626254, 564235207, 82254175, 324687813, 201122233, 20697756, 165245293, 141425355, 339201793, 1234609174, 344725581, 66336306, 410140640, 496511485, 83228736, 1001061104, 432630286, 995669979, 573944808, 32230062, 304241250, 422942344, 85194917, 256355542, 554514214, 96784099, 860083604, 316570218, 52426013, 43827308, 293304559, 177035220, 7739054, 708503276, 54769678, 97304502, 753211, 277428210, 166382350, 169684987, 129426475, 54942362, 153665923, 48583362, 401802129, 160878177, 592285700, 105495709, 149163196, 396893362, 154739923, 514202297, 100974988, 332339263, 169375949, 55500657, 384350104, 149638175, 265198649, 748761097, 106037001, 92818647, 146888175, 117606670, 67013950, 117445054, 140352101, 67981137, 368894345, 545883088, 155945858, 564450535, 435524520, 561410900, 421240888, 106348067, 106423635, 307298895, 283413679, 376043523, 162310130, 489526723, 250265566, 391315585, 213522921, 464292681, 325336719, 99505634, 1718870027, 107521810, 1529286265, 105377867, 261418836, 48869209, 149854869, 240429731, 197473524, 235004508, 222682141, 4367046, 60177413, 1180109, 602493800, 918006, 266341457, 310785949, 107713443, 841800468, 122971438, 352444387, 164673583, 226313749, 226263233, 450425347, 23912256, 33752220, 130172665, 206114009, 52049105, 129451604, 255804397, 682280491, 163250106, 1129848846, 24641341, 268203182, 230833801, 118493003, 65025663, 40661750, 125314395, 48188003, 600721144, 4164813, 665226825, 198454957, 324272609, 76020386, 69275364, 456010485, 347495327, 310931576, 131243151, 94027458, 76364591, 66800238, 47451078, 268241824, 378966955, 24329830, 386265950, 124317832, 2133552, 66169532, 118052555, 26980913, 245051179, 724108374, 60191152, 221684571, 462640553, 104414330, 347971633, 167017920, 110582266, 276162661, 355629779, 415398768, 272429420, 875086986, 248872058, 121281649, 135321501, 360967301, 288828621, 276909887, 861971397, 461898157, 6458566, 167571748, 286509194, 414617874, 483704942, 292760361, 375839862, 751700789, 190384720, 116492310, 259875461, 331226525, 659205121, 56604535, 405790166, 132256143, 284392560, 33433488, 8614016, 131589681, 283878172, 296900759, 27530917, 1442737, 407696826, 182563554, 366545899, 56042288, 581402729, 161849099, 2557232, 643782270, 668551531, 294013229, 319388399, 186345618, 21773864, 160067575, 55934449, 236660729, 214100096, 443401587, 11828203, 167293915, 1730598449, 464171471, 246751110, 137182458, 312694487, 268895215, 206122629, 111834519, 13839221, 269425373, 114025943, 232635750, 558785540, 490583328, 392255893, 383790722, 11057885, 200345466, 297403024, 328481760, 754433822, 122105372, 830919891, 4803588, 222212130, 41373794, 116461695, 32060191, 810320624, 134940256, 105397583, 321328749, 907950861, 698544317, 502905213, 284951310, 98446134, 129366356, 364888393, 29965184, 4297700, 487957012, 310314147, 595349254, 148629742, 162105146, 137190244, 168170111, 1039884105, 19451973, 50466969, 674814290, 54498527, 36192217, 741194485, 183446142, 84101551, 91473720, 118143204, 927936183, 151949299, 306507310, 143804802, 136352083, 117720975, 2568777, 432985110, 291203129, 133538067, 92784169, 391796014, 45584401, 565196069, 60331296, 426321187, 97048201, 285363832, 58510597, 393259907, 269682707, 3816070, 313243948, 216066662, 59181129, 222323948, 72969791, 156276464, 233194449, 86383175, 428506854, 94728333, 329891502, 68937869, 334235620, 516574816, 233836855, 343265565, 285474058, 1293226958, 531472141, 319059010, 190361697, 4901659, 228787103, 331572399, 221701369, 562434763, 121409766, 380871696, 134562077, 367889564, 197297406, 23237096, 12994673, 168762864, 134657946, 90156003, 640561229, 989944865, 99139510, 328052177, 85333880, 4383199, 721122846, 354249202, 258744099, 81463466, 162635881, 85711189, 78539362, 17948868, 338900785, 191471803, 477458227, 92171658, 66418632, 134141730, 49235936, 108058655, 617216451, 99681198, 21626744, 146298982, 40948692, 553991098, 584984511, 206091044, 46260364, 210360255, 191991395, 65139441, 1560842423, 410424451, 1050465465, 303571542, 194804753, 245041415, 750810743, 340541478, 259965732, 759899664, 203717699, 110476957, 160972481, 121043633, 265449075, 145561038, 378934905, 210762680, 372079668, 139051809, 516769642, 230148357, 467041603, 1457898397, 159871162, 165253640, 203570270, 117883465, 373555107, 420018325, 227101660, 370353505, 229113250, 214888593, 148825807, 489367311, 612495676, 32177734, 97903954, 196029798, 14902317, 236598506, 519474225, 78434466, 797566433, 177406278, 299186925, 327713263, 7501414, 50100660, 31073203, 572982577, 367848876, 307656379, 263780783, 769435893, 592966598, 45925578, 12887601, 275375574, 320042646, 122378971, 132620349, 84680777, 293881550, 222713833, 522791981, 222390938, 303171863, 650439253, 22821626, 175094135, 184538473, 742578053, 353984033, 57983558, 49720119, 139124369, 280011552, 778590769, 229509468, 188937115, 229733570, 19208641, 55721116, 60152458, 383667844, 469414619, 30188849, 442141101, 169166054, 435858278, 51156394, 249834594, 462925919, 237555344, 671033047, 149711169, 43800793, 242412897, 24492201, 1055850276, 20583423, 108592191, 294284736, 217162141, 200957665, 483627015, 858406052, 51519627, 201729321, 89013187, 305824634, 29301142, 28177500, 256759952, 14483843, 528091342, 156492527, 46449902, 144343818, 287736451, 332374724, 238968323, 82051852, 88256975, 52195592, 712427977, 330156305, 21109397, 199440444, 210352967, 15483375, 114187895, 560282044, 343577206, 281455915, 138447446, 97776800, 118565640, 231327619, 234140750, 273709223, 1588540, 310429311, 179327040, 260914033, 359465643, 114588556, 448353478, 278139855, 386894153, 170141673, 29370222, 28634767, 176144555, 129989583, 7141282, 142002433, 491747702, 28843427, 308794528, 129686622, 635538760, 404402516, 80505389, 126852896, 149885739, 141830272, 151007205, 412504300, 357886791, 3303206, 50844159, 363963037, 158530754, 289466285, 31978895, 722717865, 378280426, 692144376, 231249277, 196487461, 41084614, 150640390, 123424843, 124647502, 221400449, 134824369, 409219366, 137822729, 75469558, 64673074, 412248454, 617393633, 1310545631, 421736437, 86819676, 49578657, 60776809, 162904697, 324909524, 750720976, 168996423, 557057725, 150717233, 655986395, 89181682, 209579772, 241840448, 10493855, 64778228, 50427352, 97955954, 29684342, 115264047, 301149702, 173553328, 648667325, 456658624, 80249173, 16806496, 17357328, 66995241, 241808994, 332954707, 64396105, 130906204, 356913885, 37474129, 110287390, 56685388, 479172424, 6594244, 139777382, 162954837, 162387684, 18740196, 359260664, 365967598, 290570047, 199509579, 329496115, 233424083, 475923190, 448146740, 304466805, 78250952, 91105076, 238743763, 19595046, 93668688, 281643102, 572250431, 82209651, 74922554, 240711177, 68579657, 127391338, 106507886, 118022762, 336734418, 83100883, 739272344, 179381130, 146459395, 133291803, 314085693, 179667310, 563532199, 152709876, 611578694, 137968640, 590510180, 69038216, 70876796, 323933945, 632164102, 178088015, 358516197, 182969137, 97158973, 406354193, 598301266, 54931492, 12001991, 578843177, 200125360, 84178418, 81590687, 246901311, 125434729, 346769358, 542826009, 99460177, 64168750, 91235066, 324082574, 624270451, 199521658, 231883791, 23694285, 50131979, 350189839, 976226558, 135843021, 869226167, 147550003, 96603263, 57909007, 46755147, 211264231, 75828188, 312782270, 154280398, 151432746, 175656891, 104079743, 842536520, 371500797, 235116823, 219195325, 35142515, 15781991, 51331222, 53499469, 84376543, 63466310, 572969870, 679201761, 177282691, 62772454, 1303299, 284681324, 743077461, 348377326, 430985204, 279025261, 43539831, 28717268, 238526637, 16022976, 278954376, 483427015, 367959329, 478466698, 3883032, 986830952, 44629866, 341121699, 345663494, 178152593, 7017865, 242741583, 209699406, 59851662, 401446671, 220517225, 46413362, 139786916, 69793074, 132913956, 255834193, 1080746262, 12146511, 95754900, 331389212, 497799643, 785391347, 525394754, 317244140, 89491938, 293617262, 24698842, 33813808, 46646600, 676906810, 38222416, 38679863, 20303942, 513044908, 250467015, 98153683, 264202075, 60511229, 243799085, 469613552, 347572922, 632851530, 354748021, 569911517, 38711892, 35474190, 74780755, 33235145, 666171400, 210304192, 468609898, 190516673, 72932698, 152118377, 60405110, 197817695, 502230735, 10336384, 131868737, 1489944, 847465303, 84192817, 40401480, 404818179, 547024135, 368272650, 23821186, 183905462, 320134192, 150912239, 19612054, 50335021, 109670735, 437085298, 431606808, 170265356, 302436974, 11749583, 109313199, 240836966, 236728153, 641495078, 28434147, 227975534, 25112721, 13875797, 495405159, 735111638, 24771811, 70228116, 759131372, 12528894, 185752197, 474021049, 228197227, 123645365, 104992974, 287659857, 255132416, 392928802, 24605505, 309143904, 753523569, 50451905, 72252896, 360884810, 275015869, 652011487, 202957923, 996017554, 188304919, 33247055, 268527222, 116890577, 154272482, 343204823, 138651599, 87880281, 287145591, 73641172, 191152520, 244463806, 9254560, 379939302, 51666476, 250374151, 557417217, 185416611, 3356720, 179734000, 83535702, 506368407, 50649646, 834920681, 5346684, 45622355, 157125420, 141232893, 18952134, 975371810, 38314202, 228004844, 489315967, 389036696, 300642605, 6502043, 179078516, 468618512, 96943677, 41644884, 18157941, 220912868, 180657878, 28072276, 102752792, 293494589, 162526729, 57453528, 652605480, 64969647, 150473086, 705746864, 17566973, 115400298, 576572358, 477927271, 189156054, 20845817, 1208464967, 228991891, 427584876, 34902855, 603922031, 129823779, 585726577, 225487414, 140450695, 35037247, 134353570, 332763064, 3902668, 62444183, 84988708, 78164845, 15244351, 110640916, 294287789, 191150879, 202940371, 231568127, 345913653, 330387360, 189207598, 206160120, 15857701, 39692878, 33055103, 222270552, 64015480, 29709559, 581382125, 2381597, 990889355, 406350290, 133697348, 253181927, 27263990, 431604932, 354446065, 73216752, 80305067, 183805784, 158664955, 87551758, 370415379, 186858011, 256989549, 143596602, 2930584, 604806031, 1304834843, 177388500, 247892885, 75952944, 392191206, 289769253, 130013327, 268512916, 956738052, 113347741, 178320080, 522124277, 116989136, 165617559, 130630111, 182821904, 19779716, 176513139, 11509432, 215768931, 342291779, 13456464, 13246591, 49008461, 106383175, 427435346, 144707323, 770384793, 63562489, 51944226, 488960815, 812133488, 140670295, 156163479, 59196992, 692619469, 508671144, 107567571, 218234328, 462336707, 301368136, 11470740, 304504110, 401877812, 187279578, 17663284, 84533398, 104180514, 93428379, 16746946, 556128065, 3932222, 31093215, 685421848, 713001172, 54893319, 340494328, 26753557, 36839089, 304139379, 84772166, 336789384, 266457614, 304751606, 629806223, 230113371, 247926413, 376397629, 634221712, 46604764, 229877323, 233139871, 801899879, 78540369, 29782283, 59966288, 18246908, 35392650, 84560690, 119652982, 54586117, 41817325, 35096377, 11446732, 452670407, 432976086, 69006695, 204699598, 606440896, 29264528, 862944688, 48842192, 224358243, 238835042, 241567455, 170799455, 656300656, 58662826, 68312583, 458968968, 29493453, 432001076, 42959277, 434718305, 434744064, 78264425, 588894, 543016706, 126779145, 85367930, 998334854, 99139510, 48415137, 27776407, 115862245, 1047888225, 279799844, 105743251, 81455248, 210164672, 52371261, 67234108, 164243272, 365469085, 446925820, 14065455, 64795792, 171655689, 76278801, 55740377, 92513087, 28213906, 1175995128, 155361175, 622869664, 418292267, 155968029, 628925235, 139636717, 456026189, 694358125, 128900209, 36121053, 25246044, 69463586, 68356246, 457286212, 558993524, 95272706, 22291619, 145440060, 68207558, 96224209, 560263215, 924789275, 528563994, 302010532, 717402347, 108641757, 687304311, 33836735, 125190649, 395520492, 517028155, 220685869, 299747603, 133631981, 315973, 105483978, 212031360, 224464454, 1673493671, 704177888, 156080116, 485572331, 628496007, 143499915, 284991509, 405436320, 334943666, 355289011, 782705515, 743119797, 410661210, 226653453, 284660085, 277125432, 75631005, 108700909, 346586635, 666910592, 59825931, 27617453, 312221383, 14919144, 288226792, 119846723, 58084157, 140640421, 310139960, 362296097, 984416003, 308473557, 144595469, 47996367, 196610110, 103632405, 231472610, 51114435, 28116119, 92187892, 286109717, 12438990, 1004141950, 155160231, 256535228, 127597484, 477548218, 252311005, 333504330, 218093530, 200384537, 649648574, 284897462, 64455073, 335564368, 16791235, 228792453, 640734070, 169637513, 1884520, 135839859, 56983883, 314465761, 450925301, 117706200, 849155633, 38577972, 724802944, 567961575, 71314825, 958185459, 89450056, 7334433, 320038578, 344003476, 133022500, 20864733, 216490066, 29019, 205232892, 524302496, 200445760, 57864680, 192685716, 361130503, 638816578, 103992256, 17033128, 222758700, 418456309, 19041566, 870889637, 1062337976, 189813778, 399934713, 23623896, 167727644, 641833280, 4615144, 26049007, 592840005, 1207606908, 126540937, 668397054, 152640566, 27762862, 15530898, 190658468, 137212262, 15561646, 420606657, 80238604, 107810654, 1131268740, 196420551, 19570502, 275002335, 492101526, 37936887, 61546230, 127497628, 59990790, 659400104, 30483090, 329714776, 154317028, 57093239, 678733325, 113862734, 844665074, 3430990, 1113199811, 318087481, 132059516, 621542212, 36749130, 71976458, 328480482, 271595814, 270833249, 385537043, 51996351, 275842028, 26187384, 47222709, 644647387, 651267499, 214759276, 184932138, 421221936, 378191562, 560305418, 362035582, 145395993, 353158174, 58557202, 519157821, 689245553, 33161055, 801417986, 265915857, 563123744, 728314340, 104670866, 82956709, 234995167, 160890397, 77011515, 91623298, 484696370, 269196968, 14150699, 3166301, 6427441, 599089381, 682749358, 725908541, 437847225, 171486309, 151346263, 243340613, 69350290, 15272338, 110115109, 134562520, 415121624, 204094318, 77109953, 164733625, 135808248, 59620479, 24520023, 86075084, 38261232, 141722614, 91384360, 338050183, 529757971, 207250627, 1434101, 320217452, 676226933, 438885734, 163796157, 769605296, 321144160, 127524477, 560803482, 77352303, 509700958, 15337673, 502937723, 469859605, 31535675, 718804975, 66880743, 612354277, 63999739, 66208588, 118328392, 252196551, 145184988, 57276729, 268252616, 95344683, 247537583, 679366969, 387008757, 63865397, 62162804, 195446681, 287042809, 557236555, 19648097, 32342199, 456879976, 392520475, 181627084, 156727726, 391045159, 25398554, 184882585, 120556413, 666719088, 251822205, 93105606, 39584068, 78960724, 78507245, 117996680, 253671140, 533110472, 198033615, 215441341, 74726779, 226005935, 44944727, 651687602, 22665578, 32570612, 541228466, 244720791, 395706474, 363047919, 144879222, 269000197, 219819418, 55035996, 35709057, 371809809, 323858405, 64924822, 76328345, 17338658, 568638783, 248996165, 29478173, 4568340, 526488802, 118784712, 34597930, 66356241, 929869801, 133168911, 395497766, 63850039, 330982680, 300362129, 35369344, 418364071, 415927876, 1244187470, 39259490, 219561468, 353156774, 216232051, 754836046, 10716112, 179115291, 17889810, 417448636, 55781645, 7533465, 412234241, 1754046225, 638859788, 132328162, 29043307, 299795657, 76692270, 165467705, 209602686, 169173364, 150337702, 725876453, 1160289503, 274625955, 132695107, 289673675, 192763261, 706047310, 159380222, 77575017, 17754009, 377292276, 1088585999, 122121026, 318466580, 394710219, 246476777, 190129346, 98585000, 416888995, 205653799, 25925366, 415052445, 56895109, 70024305, 591266973, 534921465, 174570668, 27679970, 44897698, 317886157, 200852245, 484406159, 306491754, 663845608, 68585375, 111885745, 52081140, 44704718, 206678122, 149641128, 905902350, 92587057, 141638020, 108017627, 356245003, 708296593, 721805773, 74472156, 72227284, 169819930, 200300004, 21315455, 1106351, 338676695, 98034610, 275718066, 107046865, 204070089, 361545034, 177027797, 988258654, 4086252, 102867794, 286110263, 716836750, 92757431, 366582814, 519278913, 158330717, 88830409, 89241077, 46711665, 104244906, 156222272, 181276465, 438748906, 123917983, 50474420, 426162642, 117301902, 274409945, 104080178, 151059129, 133875552, 414606050, 177956300, 9469759, 535189401, 389273857, 399944717, 26812788, 361894566, 207329242, 143182470, 41803680, 65741184, 162402382, 590057368, 20266654, 280177303, 674963879, 117940983, 442402685, 1217435064, 427715733, 95200518, 209960428, 48889273, 66131100, 110793740, 84070561, 525056303, 289250303, 159314368, 77679326, 58067360, 722691309, 9368475, 16134499, 158584979, 218719975, 44699772, 55369644, 26898914, 101617428, 22079390, 100608418, 195594107, 338199459, 130621814, 48502629, 129959568, 180333326, 968412198, 125328396, 90416443, 5376342, 292765234, 60180672, 73028771, 580958, 170284136, 500671311, 141678652, 669179747, 500040454, 249080610, 244602450, 567060023, 142234615, 12097617, 153890561, 100805337, 1034693243, 88198655, 126848719, 15975423, 241053795, 602519382, 399331831, 347787501, 16417917, 46120649, 65143923, 8789229, 87912161, 186842450, 14346384, 770274987, 325239234, 10564821, 317697257, 679244233, 577604581, 29446598, 236772766, 349965422, 163857337, 54593782, 251074048, 543957569, 1006396173, 421807101, 53685731, 326468462, 20139628, 98139406, 191370316, 293483614, 59981526, 89631195, 40339204, 80672324, 56599530, 117712943, 10999933, 65920732, 249216972, 492863941, 47127826, 15317323, 567255639, 518014782, 999349373, 386314961, 329595892, 221542442, 181460108, 48068118, 183020091, 504384724, 8769619, 66393777, 273867701, 876218623, 687435655, 333933700, 83741237, 152095717, 35854040, 169530625, 167797902, 82486470, 173567677, 285589542, 123146525, 194973526, 553171864, 967069248, 29850316, 408922048, 7681869, 1116642620, 130583258, 374732781, 369201113, 25988821, 101289674, 1165140214, 79462282, 218539837, 482409974, 10046325, 401722272, 67412311, 1746359462, 159129237, 307729014, 4018722, 265544922, 217715670, 70668230, 26181347, 460566787, 163421868, 184025690, 739856457, 342360675, 33459150, 644042636, 469289686, 279955943, 310765958, 446236904, 8945739, 154783209, 98028384, 554819625, 186537604, 93035555, 37273488, 15996819, 559249310, 660914072, 234349280, 502073705, 290867917, 8047817, 201619330, 302922251, 287759974, 23481560, 286681897, 185510567, 283574597, 31973089, 365258217, 110372174, 480383682, 529133049, 75916683, 288714096, 79613546, 306278438, 65858182, 91718366, 33917104, 198984088, 47711928, 259432815, 223299477, 11196077, 148917419, 56105867, 836015035, 2183641, 9437559, 257769196, 413870728, 100019266, 11530924, 157411352, 41481702, 321709608, 315259223, 426027552, 446692252, 153031013, 38186917, 276944456, 11964939, 36552659, 14009649, 95836482, 442706002, 83896841, 110738261, 301584932, 421381975, 186532064, 11740973, 29787202, 91968416, 169708677, 93317844, 1375281434, 173832641, 21379486, 253624526, 81804787, 131639385, 284351599, 162799029, 203131503, 28284227, 42282390, 20823480, 648284359, 106951129, 836093633, 96743334, 124972916, 477681033, 28824957, 146604841, 131562642, 124124930, 381805670, 17266537, 647880341, 2178742, 29806038, 4202330, 95042546, 228858496, 15908509, 11119320, 430334091, 38650163, 283215771, 445498235, 197983042, 14757610, 82470702, 433209473, 44732876, 46360938, 262490528, 449354484, 179300392, 232542278, 534502170, 251265426, 46525582, 902077316, 402819207, 212311237, 23516309, 206041532, 118642305, 1390858705, 92809923, 63512151, 381168815, 111067290, 411835948, 454149288, 128068768, 108092301, 321655866, 8520869, 40879038, 926992813, 480598635, 44936158, 393623060, 1157622047, 100680824, 40949599, 212839419, 213371079, 170088908, 142058568, 630582947, 265785412, 126686521, 307170567, 689683292, 62751325, 65806314, 88422384, 60852026, 191333576, 181454778, 331804307, 506683020, 6542061, 85828614, 69453398, 117938150, 959242434, 2042680, 75500779, 756567880, 493076661, 136814560, 164365108, 230099834, 165619549, 245552450, 35265640, 2369626, 19112263, 204992438, 656511194, 158321760, 288500841, 242555521, 123587038, 541685466, 220785077, 136219800, 457742838, 19590339, 590842712, 201389424, 295418052, 290980428, 214209658, 276973756, 389503781, 197981190, 282745573, 2924993, 63403752, 73762301, 46327122, 144674236, 454284282, 258985896, 388045705, 750882049, 265249552, 233814983, 67187697, 91720066, 7357883, 265741053, 578982828, 41853746, 75029956, 57674865, 209820559, 17213668, 3264401, 53279550, 110816860, 305352087, 494934448, 587650794, 19882346, 251010650, 46184886, 170917707, 122603297, 33342079, 333439156, 199925332, 204650343, 86515640, 41769272, 94916205, 884290291, 197131864, 567629728, 54692987, 445264496, 285453689, 221055703, 156748759, 430810920, 438757851, 271017664, 25257487, 256523501, 280073801, 84415473, 824508047, 21067787, 31766847, 239339821, 42640380, 340804772, 184157859, 122417849, 482161531, 120472850, 21640245, 119477184, 605126582, 116866140, 77832208, 760881636, 101900888, 396729385, 225886719, 76712167, 107453142, 67956033, 219186518, 397066511, 395808836, 121055938, 45586119, 529521067, 348290951, 215710648, 37609383, 150326517, 265273565, 1255821640, 5095065, 198706505, 164475803, 82136663, 590597394, 92767898, 263435917, 336986373, 282906244, 83972401, 18903511, 626615738, 63232742, 38073550, 147793040, 201063694, 37126535, 375650934, 185630015, 311979865, 85880248, 84588389, 430106388, 150885066, 568191059, 200028353, 1082356226, 381602153, 827361562, 119124554, 371457630, 342964399, 572280530, 62427281, 354744297, 196446554, 185900564, 119161080, 71556868, 43979842, 126363709, 13870991, 435555253, 108988004, 717552390, 68764998, 529444460, 443681224, 1040196935, 119823148, 75109062, 78316386, 127767146, 420206415, 151550130, 80206392, 102083365, 143304404, 4589993, 5106063, 197253408, 194070641, 179967964, 43678113, 343815571, 67310777, 296900028, 943499224, 106952528, 282958847, 547113757, 161680057, 160588678, 299515080, 414056064, 128834352, 279286348, 279532098, 746601742, 263963860, 378035874, 53962888, 264977988, 38668671, 970598944, 441747809, 40738690, 10345116, 933633190, 635067950, 438842916, 180509541, 146602941, 11486961, 274030744, 41426318, 82163493, 15813138, 32264782, 111809805, 331090936, 1093508461, 209314143, 638410047, 138779684, 106555231, 10074834, 13877634, 344614883, 988925670, 148403769, 174740257, 632864860, 432576753, 254564648, 264596621, 251057838, 187025200, 293269099, 230735375, 140686933, 66009761, 452318276, 473657812, 80788652, 162571782, 341806159, 85191156, 80769140, 233968897, 120203413, 928546464, 100803070, 624739743, 262714009, 338619257, 70186275, 290406387, 194522812, 821291123, 271214961, 313145670, 53241840, 209186137, 180207912, 208965622, 666340023, 500196472, 11706033, 233557203, 49974486, 160765340, 212828445, 1117264112, 7534404, 442066130, 55591910, 184002833, 22170250, 158970973, 21759687, 155756368, 48021342, 40266558, 112631103, 416389265, 248947099, 103968333, 160008568, 34292742, 6129873, 480928877, 443674215, 60735405, 35211768, 12591735, 365107862, 10786131, 594167559, 205205043, 123527277, 16764918, 354830057, 665770663, 423229634, 384248423, 345194371, 1055450211, 79805656, 215093631, 51852870, 23378160, 361445546, 111319822, 67627236, 477068882, 559975330, 471147919, 44262410, 20412305, 319115319, 51506065, 285589464, 188168691, 35980100, 403809462, 95013556, 257748930, 223805443, 742692463, 44128128, 308198405, 367914296, 269305363, 245323254, 208084375, 41333524, 19774919, 83794305, 137073829, 261340724, 157466702, 70738584, 31426862, 203598981, 162617481, 761434176, 45465705, 8133827, 26317157, 69821101, 346798863, 4422820, 578075004, 1018823685, 592871525, 141688209, 86553547, 190028257, 345629444, 871662423, 140401190, 140196743, 329672606, 11123656, 1580980, 75987073, 720309627, 468268344, 81930458, 108126313, 58523783, 163025483, 100221797, 98198107, 1161762387, 193857165, 76417505, 594902246, 210881370, 25167198, 34316229, 4814383, 516878430, 374602167, 365414520, 366129460, 648691091, 391783883, 10818, 270421055, 350247927, 45427614, 11423006, 153697900, 776839367, 426580814, 307937399, 561023887, 123822042, 317751528, 839884473, 223700418, 43326215, 83675274, 551365154, 39195677, 409038077, 543338156, 7300779, 20820463, 328379750, 605509750, 493225647, 220347163, 135276043, 235718695, 14521215, 98298049, 116500430, 14532606, 314235198, 22631523, 62728028, 175459988, 195227775, 621860529, 6552320, 791600132, 403657026, 134290302, 275342704, 355410455, 857706495, 419594354, 372245903, 232347586, 301485384, 88400965, 58372601, 160447754, 117800730, 621285929, 26349935, 775434849, 165967127, 72863739, 201984299, 81608513, 92963359, 571119999, 101499865, 1086512259, 332375743, 85068188, 63531435, 992778609, 50986842, 71860798, 298587245, 322348670, 126966813, 100648173, 53715896, 109878501, 512048680, 719515314, 292331937, 86196738, 63974085, 525655245, 171923356, 101807165, 383169060, 101486192, 80822095, 937409519, 215862559, 206784000, 70757870, 500873311, 48849373, 93806359, 230414028, 561379388, 224392424, 205695095, 246015256, 179638217, 394656732, 84951021, 735009126, 42675560, 108432654, 33299744, 70597371, 722554608, 13241036, 604255803, 62221892, 2303853, 187121931, 150050142, 105180227, 81566933, 181480744, 108517699, 1049653648, 12056285, 546985617, 864355169, 272409868, 9855725, 79009649, 878076695, 290292849, 226466978, 184616103, 81176875, 440363625, 4270015, 203959652, 363074286, 649774201, 536667450, 524131634, 41232092, 427766720, 635325720, 413191962, 374345026, 660973272, 90964563, 708625105, 1172167771, 94911618, 146230659, 18961698, 7114378, 64058381, 745854978, 1149710931, 244753323, 343908154, 74082536, 220517836, 37857593, 447266397, 440045518, 40756374, 122122041, 462806980, 300145497, 30359193, 354266079, 90442046, 900081418, 262251544, 477556010, 259454831, 141184197, 108151293, 89202789, 157953136, 2321047, 84493826, 364323452, 150245181, 110824040, 393089892, 132372948, 6651528, 187864984, 1175802137, 183459913, 366301715, 94240351, 126176590, 97248772, 28865038, 194734988, 297138253, 299220230, 743680208, 199679982, 139269365, 67868706, 180617998, 402435593, 436038731, 523437199, 729883992, 575828076, 40627332, 127827815, 596335349, 46437200, 547348153, 19060730, 75604072, 131364158, 164330200, 4957654, 593313203, 57785003, 193370030, 270427377, 180612948, 588750418, 311902639, 240446166, 44481017, 29750642, 82162546, 25336419, 266628537, 144753302, 17133655, 543062575, 763705183, 537135208, 347005296, 560196786, 183984667, 539376570, 78942677, 131661347, 398206189, 35731565, 61439061, 390996889, 80821370, 291496932, 412949836, 43724392, 520359272, 12937822, 204691139, 26553359, 309128280, 66914357, 310838841, 486237219, 105722793, 321326971, 701250072, 326379166, 533765517, 1198028096, 227361012, 438767210, 247064331, 94506465, 306608234, 502380182, 649533568, 309272160, 1080496655, 152100589, 218576194, 55478278, 59740841, 455899998, 507684048, 1123674196, 918386200, 162225524, 406704489, 186519641, 213007401, 167441686, 170345395, 1078220338, 13490644, 210647161, 150076339, 997335179, 76258544, 10879453, 334604534, 458221549, 499891440, 17321592, 535007530, 85927049, 642232403, 400143325, 850723183, 594319839, 62371499, 194239009, 21640449, 45280801, 108309658, 301651235, 40491642, 13121293, 562233253, 296463331, 94563996, 50982395, 38209014, 390758893, 627187712, 53824421, 16289562, 22370675, 633867336, 98123194, 34216804, 122565536, 554216979, 894993317, 150446333, 358375079, 73061613, 24143532, 80825070, 776663400, 346662209, 65217190, 165208433, 214907183, 124417194, 208435371, 982179886, 80572752, 237824351, 245609545, 705876383, 579644954, 197478454, 444292366, 137000659, 148148664, 360554690, 164712998, 78108676, 277767062, 193216762, 124942431, 382659029, 38819263, 23805551, 56123600, 550779188, 19916256, 6259120, 568833990, 4361071, 184209411, 498576719, 68104270, 13054439, 886397758, 387668966, 5891183, 67554759, 116358692, 123831707, 614757918, 1122181437, 593379297, 163446886, 38247580, 101362578, 58236277, 111444125, 224664296, 491455130, 246822598, 312210732, 245517208, 357421548, 397258755, 206334452, 118035887, 498465988, 98742899, 72132587, 251613157, 437874658, 22251895, 479489222, 246058956, 11726952, 243606835, 261042062, 3676427, 320145782, 361348777, 290156652, 150729187, 266972089, 33328524, 221879653, 316973931, 100302954, 282256222, 80805301, 617744059, 77889897, 319439925, 76354351, 1182304551, 169473892, 203988806, 112990430, 16705149, 492049321, 106527526, 296519146, 133896636, 45361778, 186642229, 1327504395, 786449224, 502031195, 121100820, 330956797, 209904038, 29133862, 123717026, 342194757, 354430082, 71697079, 89286821, 148983951, 212081752, 307466269, 152895329, 58033469, 728667087, 37388245, 156597088, 297525790, 114197219, 344256834, 385139912, 45273938, 100027488, 488188046, 466140757, 326632821, 1341030249, 20435970, 320259135, 312822298, 675367955, 443223394, 42085754, 63298829, 649431583, 193899836, 716044512, 133719346, 184536658, 64478214, 224461853, 11890740, 277094381, 371316930, 1148054994, 231312686, 265173705, 52115982, 1470835128, 981007037, 615712183, 380478190, 37175983, 63340460, 242901366, 324588405, 658622895, 110324434, 400250970, 119416070, 398699595, 317940992, 663681726, 673564120, 283740323, 470396826, 53734981, 234844398, 918508649, 304659228, 211367096, 204959373, 170552718, 56158773, 8616400, 163606676, 194074292, 288969423, 268954427, 191776330, 129060234, 88295539, 83811105, 80608742, 181009217, 254109082, 870561480, 44534089, 320806136, 177706699, 80943932, 170872094, 701210557, 51945464, 132489892, 232316586, 373143179, 227156463, 47512237, 340069683, 77055150, 329703499, 169839, 341500398, 607480022, 407161781, 693588542, 141937518, 155547126, 218765938, 297241726, 462561288, 488015868, 745267164, 474495754, 21365563, 94998259, 419215451, 69943130, 1443311598, 86104826, 72986068, 168536952, 800955524, 143463816, 519866019, 201839869, 656440274, 51687238, 315040216, 128304743, 148396443, 42463385, 37061563, 599486813, 419755092, 645021931, 456369847, 802398105, 115365971, 35246171, 259186526, 675353003, 331422518, 97793261, 370495088, 413329130, 248239521, 90826421, 386820538, 114449467, 99540170, 371855178, 450615292, 80547530, 48003237, 145095977, 416090353, 21526063, 111974254, 69074914, 163929160, 193748695, 34790744, 236716417, 140242363, 653021875, 183672192, 965930056, 531385648, 241459537, 498801417, 69971382, 81118802, 216206882, 205420585, 380462129, 24444712, 584156951, 12274923, 245106361, 71431511, 117513457, 115002999, 425904074, 120689992, 192702169, 872966233, 613436115, 110578943, 96656282, 554985935, 210216242, 455118349, 1425198248, 37074137, 957685635, 638312201, 125259300, 775710916, 195623425, 336469349, 416963724, 183561750, 345230211, 25293941, 8203425, 176203285, 52279400, 666889343, 200392466, 401229266, 614430961, 266080143, 35582419, 317880805, 1264431703, 130373324, 285916276, 272473046, 170788905, 328660598, 192096521, 3714066, 198445343, 189394684, 595219313, 74616451, 47372926, 3337259, 55601915, 149782446, 348344109, 345481230, 688089855, 160717365, 451267245, 821058891, 305980768, 360736885, 258350115, 61962859, 81993625, 82656796, 235029571, 39152999, 857660621, 104606135, 197268689, 120939867, 866382313, 361110922, 19124802, 171160919, 375658658, 111403877, 347505515, 277524733, 234371774, 587108766, 287016533, 195795776, 17687282, 37977362, 1238122574, 1160022572, 107812700, 215703933, 312776331, 382281629, 92477019, 15053461, 903011407, 217127783, 103352398, 94648195, 155030592, 7336668, 259640700, 330005835, 132543545, 106933017, 159042811, 62193193, 432071407, 60003814, 93772096, 86093765, 241336754, 562929147, 47487567, 1686578362, 41533714, 982518762, 565646107, 38440525, 870792593, 63003076, 310679600, 281139229, 338694612, 1013975276, 326484132, 307750723, 88226098, 396370940, 349235413, 340596560, 430087599, 114652037, 149183691, 55976442, 302684891, 554793755, 41547377, 68277512, 463434038, 154797401, 185507031, 143977041, 17691468, 141391806, 143121158, 62302932, 129944322, 92571821, 111763477, 26229914, 76951726, 7137864, 363900759, 908291694, 373985723, 57974363, 135643306, 8685928, 336198529, 35667727, 185551234, 192993662, 66832740, 300685389, 160152283, 277963638, 94037975, 241123189, 546702770, 33589202, 8439693, 33357611, 88595064, 26715895, 200581394, 318192239, 96459383, 288347239, 355888495, 133029594, 373760174, 1104136161, 144847955, 182719923, 321482255, 49610528, 153893275, 497238629, 798557275, 43792861, 920265238, 159499919, 142379568, 739236089, 547910755, 529622020, 233679876, 48615629, 162282809, 160871530, 8629539, 71206099, 101959280, 100675903, 21245018, 495886573, 378070341, 36249912, 186474902, 180685082, 195405931, 78039739, 67346170, 730114916, 183059586, 677907557, 511452965, 305086305, 386586440, 432256855, 231570035, 175035904, 1519577326, 1225608530, 144079317, 540813904, 510254889, 366794410, 407248536, 14505461, 774438643, 449059010, 90277756, 80887687, 554784001, 31298940, 510820046, 266075586, 72391995, 116313394, 541774536, 187055482, 116578622, 25022068, 54690453, 242636837, 380130500, 9715884, 6093843, 84043173, 484837181, 246240207, 369821983, 233252559, 110877995, 651049803, 159136715, 56210861, 286867607, 69427252, 1233480073, 246420976, 417092043, 86508712, 252218119, 291139357, 38594832, 165447320, 10732456, 124152936, 448236687, 635584024, 260088640, 653502616, 365422584, 438586564, 79283510, 186610488, 492556361, 87503520, 394311188, 148293396, 264690509, 83024471, 1360436, 902408445, 698741085, 161602952, 625223364, 234459713, 150213471, 598728998, 719759829, 903576069, 666118747, 208878401, 126507735, 13853749, 220153, 143914721, 49681678, 220931207, 19382658, 418247638, 172079763, 450552298, 242159170, 174175668, 17385709, 54263824, 378138960, 479698491, 251032328, 129400217, 503829785, 120177118, 27144213, 397904858, 221333522, 1804429276, 29399062, 1239312148, 595738466, 9636683, 326752122, 442563165, 105253997, 22310170, 250267748, 105579908, 74767632, 400797134, 270141569, 100684887, 100834686, 520352931, 557050455, 286297293, 108880741, 742888098, 237505659, 25011224, 195954646, 58118521, 66632453, 32305592, 97259068, 101947663, 583572824, 538530422, 17511151, 1236499837, 248648687, 829280112, 398794093, 98804487, 191777317, 27687678, 131670641, 538039310, 50520103, 127956934, 132220118, 440212065, 155781738, 160701881, 291237523, 17501409, 30154908, 1451189735, 79844, 317391124, 480179659, 83286133, 271641963, 433404477, 128380344, 757140890, 538288243, 3995943, 440105264, 708258281, 1288139, 141592571, 267881498, 200848217, 168508990, 593127737, 263142213, 247484059, 378107448, 211211693, 1069809794, 599453754, 115933222, 50038973, 112868966, 384389213, 71272009, 160245308, 188782506, 1076130203, 595781938, 110676752, 76721312, 201433252, 585912236, 127066514, 65533006, 186605216, 133510742, 395571926, 150673232, 42058281, 710698644, 444754698, 299082945, 135065516, 322752509, 12351927, 1623700235, 61036688, 239129604, 348916743, 27148549, 313319232, 611426778, 155381191, 160443752, 37589373, 272266977, 832205349, 32041619, 201914238, 11294188, 31123297, 438623151, 708012383, 71884867, 394315853, 150642413, 264583026, 208877817, 250954992, 197129291, 66103559, 144667242, 57229317, 120649470, 536550340, 1133480499, 30687595, 454776581, 229705334, 484395881, 653753886, 82204510, 176206442, 28358804, 166440231, 119937268, 178628784, 144855829, 67112304, 3953824, 164531440, 107776362, 225205328, 38950510, 101160045, 24148936, 223160929, 758751222, 126223583, 678889828, 165890673, 241579801, 23920971, 137724109, 835054972, 802877488, 131229276, 17600420, 193895579, 332350929, 279726851, 149396225, 343844077, 36941740, 86485260, 54680712, 72703489, 384646712, 115511521, 164647657, 199481189, 442893775, 207004645, 25969954, 768980121, 511955026, 701151295, 79343172, 208827847, 96414823, 693636910, 436374, 605404241, 2639793, 44046067, 245267291, 330362637, 90568969, 291510212, 67483474, 1513445227, 16056460, 135991379, 168920260, 55450587, 146809127, 136981431, 148031918, 54140736, 371462449, 267422483, 163124980, 218743804, 49452050, 94202944, 76749357, 5355064, 67585557, 78276498, 99127355, 199454495, 52442069, 99758882, 145986396, 736279371, 63305319, 4997579, 133519394, 184171026, 150531445, 255650037, 74115437, 179328873, 383092208, 330708411, 147285438, 53685993, 30669900, 242329862, 31971093, 522733076, 68517766, 225103169, 47769459, 41077044, 254146648, 46820942, 646398856, 483001495, 143000039, 66274209, 119345171, 111059494, 87262795, 200834830, 6190684, 179497409, 211507007, 143776595, 1111281513, 344416478, 403083328, 976654955, 853972610, 206836432, 307539613, 128649666, 168838681, 207471772, 345249056, 106505890, 135193501, 798552017, 276905143, 98463334, 490590674, 79219463, 168965190, 371280215, 25358575, 569386878, 338228226, 160022015, 918057752, 1367797251, 999253856, 1238531149, 176307790, 84260487, 139268283, 64615082, 362200470, 53927280, 55782042, 322337521, 169209311, 258317227, 22325339, 731502191, 45627160, 436731026, 81541326, 215533716, 186484903, 633316193, 250979811, 24828751, 644687989, 20787076, 487854541, 2083851267, 325872755, 216683094, 58894589, 297826518, 94267313, 682020477, 141055686, 403568044, 750604413, 450788675, 361524081, 305477454, 365622996, 302466046, 127709860, 63773433, 93419749, 62175392, 603174969, 160590875, 381516519, 630778183, 372747810, 2084717, 219461860, 118952363, 27116326, 169374234, 53552257, 728150072, 169159803, 577889371, 72223138, 142940735, 96696918, 203839451, 109131103, 333406621, 16047112, 85589533, 85610174, 429296196, 324009326, 4584477, 67467942, 22236876, 1009824376, 194880249, 9457607, 259316836, 910688923, 423067062, 199283220, 168062501, 433301833, 477050469, 227589531, 610230703, 95286104, 374847297, 232245861, 194057698, 271546572, 452844977, 302442606, 311977119, 26890725, 2683604, 136412805, 44685884, 8543148, 146150925, 322891548, 353707796, 54959261, 684473513, 220444538, 47410622, 55382808, 242447470, 202488933, 621248988, 39333201, 14816011, 122533204, 743160857, 269036980, 747044029, 234557264, 720629585, 155177744, 646453149, 58154022, 21039798, 172106672, 549065661, 192012417, 225699967, 266158995, 644488889, 170600456, 289837284, 21674815, 672615910, 133812086, 81812614, 238456149, 324105109, 50981843, 400506130, 94117893, 325571425, 148366491, 53405224, 188608094, 420337450, 539566835, 39756155, 174303587, 159823541, 457009133, 666925081, 30391116, 3390672, 361998149, 233094322, 268049906, 77703599, 611081622, 81037506, 643611883, 123048990, 681002611, 1158408454, 9409729, 17126416, 76991596, 124651474, 192143910, 147303096, 42536188, 441512166, 554659353, 227272364, 357214467, 127481486, 31466941, 247129904, 194637138, 238172820, 430356365, 108902367, 78377342, 634108568, 26617911, 1355923140, 178728126, 347517467, 75418039, 129840411, 356425916, 44893573, 185831144, 286317649, 40687207, 89069141, 168406422, 39974393, 284770721, 1014916552, 99237356, 213601432, 204108156, 54055589, 544108927, 83825044, 220654110, 1035482595, 258546191, 467150961, 101740062, 144868676, 635784940, 225727100, 19832832, 209219, 221772313, 97950386, 173038532, 217695676, 154491996, 63301717, 164387640, 742785991, 255715375, 114383033, 923084859, 473509584, 178294470, 260962498, 439974310, 424570703, 50173526, 24344584, 346664455, 10608046, 29263361, 90266859, 389874388, 343245123, 524841905, 22806868, 585350417, 388556952, 136451315, 852540277, 193679591, 869284324, 82273249, 359018926, 82542467, 324595061, 791374291, 344271739, 131408126, 99682171, 19369674, 117703287, 40121044, 97010632, 346627153, 317020274, 27585174, 606448350, 201586564, 227267356, 308120314, 267890673, 521548702, 159831624, 28681152, 167172795, 202744291, 1195469540, 69595994, 708586746, 318727823, 364055440, 272576696, 329813442, 69538251, 282447119, 45923635, 51892177, 125518180, 210988153, 71675166, 57052997, 280036389, 34781913, 183269849, 125206869, 452313500, 111860457, 83865874, 25614665, 652211676, 322627472, 344004443, 195359019, 43007700, 227855879, 1057704921, 149261944, 220652644, 846547085, 29330934, 1017578, 159522483, 180552508, 333306161, 302736293, 40628550, 544264244, 246226907, 81667020, 47134769, 483223266, 162333129, 443995673, 840033544, 320441079, 713256276, 196562261, 10316522, 59288606, 252888895, 321407580, 278693460, 22655355, 64986471, 424035503, 284134740, 773446120, 66861321, 876629011, 621450596, 105104770, 904650415, 27579581, 450954824, 148583000, 399091081, 325376680, 93231098, 125856278, 897966204, 162663582, 846963609, 145544049, 3115323, 657410934, 32928224, 761493248, 53652455, 622178951, 587501052, 420663387, 245637695, 204877763, 260192215, 222151755, 106620475, 85831348, 189758906, 94459022, 72082687, 45667284, 260178912, 801355818, 78688271, 54126614, 125972134, 402009077, 580680443, 295954169, 43819533, 244729475, 549292212, 30673992, 4516249, 574400872, 394479761, 570253163, 227849105, 810324469, 408897050, 165406903, 181196737, 37344897, 1366363494, 31733763, 316797292, 19481297, 38473951, 793470484, 122600203, 33520184, 514263188, 357135660, 453291925, 518757787, 294861585, 56491898, 268020471, 95751640, 250096434, 202977248, 613238326, 68511668, 273139949, 292147112, 520111694, 45797212, 210623275, 149961616, 520861095, 20660094, 587724378, 114482115, 61229841, 267058318, 62278590, 278070111, 159796132, 25007453, 241346714, 453304710, 62036413, 57959372, 95453336, 5854307, 13603464, 906520294, 862168572, 150577492, 82965631, 223958606, 863119841, 653664995, 420323573, 114292863, 230091041, 135071643, 77922442, 34115434, 465454902, 30768441, 763339716, 165307302, 61197167, 42284621, 489249185, 142052462, 207979964, 90800894, 76592449, 570546894, 510318484, 60888227, 20874743, 43573613, 68253731, 553083778, 535657155, 723982499, 96484184, 565350409, 185219431, 2738921, 419826647, 10363613, 118496927, 122467705, 53806085, 251961203, 71571972, 1358332, 168152884, 692448381, 64370277, 297080037, 19462045, 14223488, 473510367, 252165302, 110969135, 21470546, 180620313, 56296926, 88111199, 100751649, 24547553, 78187940, 55088856, 812013502, 55006571, 72198091, 475228465, 151869550, 75787921, 260035524, 66113861, 116145397, 356612829, 137096509, 330839848, 339349335, 44686296, 51290534, 275533916, 122566850, 240416781, 165417094, 145379291, 146354773, 456639647, 188835660, 184540182, 15367148, 156936012, 200018343, 123420677, 202720069, 404033079, 96694763, 70119655, 333832670, 207457469, 16499487, 41653975, 204187579, 150143065, 31403958, 268518828, 652084293, 191676976, 111809520, 127364675, 142574316, 81901830, 392040368, 404772582, 517620508, 1004087674, 779364042, 86281907, 423806700, 59450287, 197247755, 244480757, 275255045, 12564167, 336697342, 677300771, 227869053, 4656602, 43524267, 89590565, 97229337, 848783239, 51921262, 235997376, 38752733, 9462195, 65700619, 424991107, 93203898, 219021666, 50818013, 328068851, 461394133, 756758147, 177625007, 301972497, 666826249, 52472030, 321918185, 164782670, 126687812, 66344177, 15619425, 4756533, 3531308, 196807793, 310707101, 108924076, 206593844, 484319874, 122188768, 238707966, 209278667, 209346520, 51283970, 302405586, 105322701, 40291010, 66317817, 258241628, 320643532, 133291230, 104825842, 83096859, 22405952, 217757473, 314319071, 366863364, 354706862, 39508734, 61174443, 31115761, 118060139, 2340570, 559007524, 33484724, 201703256, 221051239, 59623898, 450750535, 42008239, 223355299, 43902632, 311188323, 517895182, 105420203, 31432204, 53038648, 167480708, 107261815, 428259519, 645376495, 169986796, 34454418, 692679003, 213880808, 302643197, 255653724, 93552957, 46080170, 373252490, 75944894, 83446528, 518813415, 931393, 41287343, 342560067, 88228485, 326485129, 678209954, 495241030, 243884774, 178085513, 1325774852, 89367433, 111402860, 102587718, 41122313, 83495434, 202756059, 171151473, 17894745, 55959413, 757786484, 726848389, 32015457, 73016755, 118883467, 172954924, 88472952, 194545640, 983664717, 86532574, 203303363, 475070702, 87819101, 147163773, 95315009, 98641512, 556169196, 66332629, 43460474, 170900861, 161567372, 41209369, 376583809, 208594897, 62698766, 607951076, 442388875, 179073494, 33081853, 260034463, 301683030, 438666760, 96551256, 205990758, 11808427, 289523031, 2899675, 105036083, 691157233, 354964085, 245547693, 61006498, 222289967, 264558068, 263517579, 253011636, 730787233, 185728014, 231384373, 23481619, 944094432, 8147137, 68793889, 345985726, 102938371, 152959199, 123574957, 36176674, 297231897, 178071755, 183326174, 113382958, 91849976, 427998264, 265917014, 22724761, 61667831, 131703479, 139364585, 563498685, 34697130, 375078430, 22597706, 152184098, 128104759, 328662881, 11826127, 101081798, 61726844, 260279620, 42335752, 51880095, 282320992, 34419506, 280684107, 934023072, 217174499, 389693663, 498079818, 965819246, 1878161224, 24391880, 102398175, 10182100, 577870421, 318010145, 33825226, 487687201, 22942676, 85122145, 336860178, 60965227, 6651941, 426232117, 271211274, 44365627, 77243217, 149656598, 168466148, 163168901, 13244194, 119963119, 128141966, 159103986, 175915707, 402183397, 48313404, 411137094, 92192661, 379426207, 379127262, 91846650, 497976498, 463214152, 21028592, 173358474, 194846132, 57807542, 17060702, 244631830, 64587969, 402178113, 214075185, 73078282, 103712071, 728873848, 132979941, 226880056, 120295464, 249444488, 399664034, 141327493, 904094397, 624398209, 249246318, 58107054, 149560563, 394016526, 1030106145, 339647612, 86191927, 177219100, 378616816, 33768232, 97739246, 477742452, 112489678, 226326224, 398536526, 138879413, 49257737, 1171451827, 709091877, 168182014, 979328447, 76946256, 136841061, 32186692, 225376819, 383704276, 339938125, 25567272, 672145356, 151861421, 1338570147, 198761154, 126190550, 49597353, 11247997, 28842082, 270475826, 101824817, 236161928, 40248906, 152727989, 593257648, 340676005, 199597986, 165378669, 181985036, 708123103, 126576981, 69456041, 522541773, 494478956, 805821055, 518044551, 73979579, 17554564, 147591308, 371910102, 202569077, 193576494, 296008341, 876899902, 79139461, 56939542, 23930832, 50793912, 70915634, 55627178, 442016255, 94294239, 397196269, 318670627, 351563566, 142071510, 143382610, 78902300, 259216701, 285310056, 719781392, 1434571094, 574837147, 206784812, 236148147, 480149631, 133556609, 229278302, 607891374, 222391922, 105164975, 148987504, 468560683, 362157635, 39294385, 22610000, 305890986, 67200178, 414004, 653012703, 141012424, 218683174, 843218704, 711098806, 77982843, 311684467, 111636464, 294325875, 314302450, 860769503, 103714837, 123941239, 325973274, 811552855, 637404917, 91255618, 204132330, 95328218, 532694385, 52302493, 532024998, 733930363, 116191493, 312356360, 302186389, 179443925, 195234052, 117967018, 164088297, 83267207, 4378424, 255762562, 466200506, 969062384, 210567450, 466935806, 140807239, 268509559, 73208572, 502965167, 240470756, 219877991, 896918228, 11851292, 80428118, 550885537, 108058133, 420785121, 674091730, 765679530, 928009412, 202328031, 563270550, 103454160, 903014510, 96239653, 217768167, 70354064, 139492875, 384664263, 184594745, 146896341, 126484084, 103983201, 41350558, 295759078, 602226471, 95478428, 13291999, 38188310, 42287229, 274276724, 155714411, 525338695, 308586408, 322336718, 351742942, 386441209, 181007479, 135992359, 327948144, 62371770, 702054447, 107894299, 86516233, 598086908, 128596005, 477581932, 35176328, 413749331, 241057354, 123361675, 836777198, 338588174, 154667985, 27831130, 38252564, 108252882, 136137635, 53639670, 167641063, 92658658, 226257434, 630804920, 43825285, 301299, 116479177, 266362744, 387714706, 496199699, 7274272, 65918227, 429656083, 324946629, 94626579, 20562556, 242113322, 303952576, 631740966, 168105630, 167210676, 75775212, 481789703, 145918106, 882580053, 85142567, 83081641, 498460143, 116479633, 292751973, 6787937, 455162674, 327021468, 242298217, 170171880, 518139984, 243041794, 462615282, 177689474, 30705080, 142741838, 80556299, 105834058, 63497289, 872309384, 261792082, 8940161, 97203271, 95980144, 311011601, 195663595, 192915224, 721692818, 116217359, 306117009, 276531051, 124695808, 785945598, 179120208, 171423162, 253084743, 192512049, 91363496, 17492670, 517852309, 189496134, 671273138, 160650938, 106657176, 43780348, 219426963, 180055098, 46198181, 268801818, 159357524, 34106717, 79208790, 175769553, 50495317, 97477203, 48896713, 313555829, 223736431, 503781385, 417411392, 75713527, 73077542, 46922335, 57314047, 346760468, 128628772, 214999852, 1135516854, 145095424, 255653167, 492228473, 691431899, 88374362, 10648290, 42362, 53064848, 113863678, 180137953, 110514311, 1028388818, 310002941, 61635745, 1081448208, 48516393, 126868096, 9583626, 22452003, 18234209, 246326813, 703120884, 517390198, 502724732, 658075885, 386711569, 415035437, 273545557, 41714487, 24252104, 125253136, 221286076, 159958487, 873724157, 71471094, 350919773, 370707015, 71526381, 287372336, 26605996, 170987739, 364737410, 461867256, 45529849, 794543138, 436417192, 19399220, 20398345, 237170849, 43611947, 40126343, 55644516, 468595286, 363351919, 408760528, 360887694, 78397473, 102415511, 36375574, 42227971, 138724545, 76496949, 163133704, 513759707, 63065677, 313662375, 107624965, 851288265, 298776232, 357350606, 433075102, 594751851, 174953321, 261020057, 12900670, 149504195, 51126873, 537547106, 186182557, 383202739, 4046462, 131557821, 319355054, 238548766, 563582369, 68747346, 21353616, 37615806, 210275224, 812672705, 6708522, 786945237, 59740740, 175583823, 212890081, 141138235, 670117179, 264164296, 32891810, 238718483, 120668657, 293138344, 175521253, 493507162, 9464837, 86419397, 4424158, 62620589, 40567846, 82621408, 338407429, 627902587, 283624705, 46989354, 73932659, 87514453, 131160658, 102427895, 45949532, 712474902, 4640679, 53929315, 263071967, 65550756, 291252458, 50744810, 125709385, 106734390, 429979422, 180359709, 293968606, 46973845, 623757835, 42198850, 371956347, 740983533, 49723479, 390095872, 600348012, 15958330, 8484600, 118988783, 872959295, 151759066, 196268710, 806405108, 332329820, 632348320, 83609511, 542290953, 483367694, 89966253, 429016942, 62555245, 77152459, 165326931, 128374194, 262386562, 206289064, 702398921, 530395389, 60499492, 485059984, 386972669, 26979221, 236529495, 159771257, 82541408, 28353732, 112235308, 104485315, 568521371, 322987111, 8757056, 100211776, 66153664, 1086162047, 394468909, 551743302, 1746790771, 130799648, 163000060, 8631063, 54399460, 291980337, 88720182, 133411267, 11835918, 632368985, 706016766, 340228286, 390503399, 37295171, 96769394, 87568050, 68538348, 588534412, 348402585, 73107782, 358483947, 19078224, 220891840, 257397996, 195208722, 112067765, 303025239, 177366514, 105034177, 58201865, 117914617, 104442294, 233265105, 446688850, 117277926, 387668511, 172274710, 270840537, 629247117, 82698655, 91538003, 478831552, 1103266035, 437245913, 332363058, 9459331, 23025084, 309054247, 688197533, 218834957, 298056359, 140867662, 125920765, 1046893125, 6793196, 595390690, 103942791, 160456831, 126039267, 277901498, 277907621, 351666819, 337477027, 68594109, 208929783, 19339410, 359464618, 386274665, 162085113, 275735611, 7615831, 363906903, 67507291, 383009564, 93618919, 306535397, 424818842, 126868914, 32171016, 168356560, 307935962, 410748607, 556510640, 15722725, 386755559, 279949698, 793958462, 23643800, 501985383, 104620721, 174272449, 181148870, 433821257, 57592682, 167712351, 112416994, 2961225, 809065043, 515320030, 167526399, 112052157, 572132107, 831464954, 222594593, 132518608, 1623382049, 1323554128, 723749626, 125852975, 29994389, 136426548, 15677758, 590613628, 5701920, 32376085, 283715218, 144815633, 445867810, 358306843, 3022435, 38253586, 882803762, 187116596, 307980178, 45461508, 336899914, 398075232, 48972764, 294244486, 264281455, 128051986, 1913744, 79406202, 23135575, 103163852, 278524153, 22444881, 100331741, 106140424, 60857616, 145107592, 172149640, 2141507, 15232986, 74651756, 547526200, 330116545, 289375548, 305847868, 57493298, 298356622, 221090323, 45366483, 682197655, 74969542, 16510049, 271414837, 4522446, 68912676, 13879019, 276561133, 117359420, 15894696, 615854564, 154082597, 126843638, 93155431, 82761053, 154115578, 259598686, 169494333, 247816787, 494576702, 173535189, 287951375, 23654354, 114006609, 32468287, 182037125, 399679144, 15209946, 651584187, 109733711, 857070864, 480389467, 106536707, 5038905, 65842744, 113290258, 1346755678, 83710875, 357245854, 114620274, 20569425, 129742373, 204181491, 160647324, 302935444, 429282512, 270919328, 12264976, 83050658, 73054318, 583470638, 181053003, 277654819, 340700073, 236069873, 189757763, 63747562, 119532656, 221552245, 35266773, 318672915, 197505624, 327201334, 395519204, 208131642, 684681212, 32840232, 88629381, 747455751, 510866131, 265973476, 3241849, 71617430, 645563171, 63517728, 288821614, 330140051, 502572301, 161483882, 343766007, 480183031, 24329595, 64199844, 68681499, 439645755, 212006759, 354048067, 4597230, 633060628, 93641748, 588777852, 115100002, 222660851, 241248841, 34180123, 29232679, 194174261, 71806495, 38230711, 162006615, 482003037, 191400326, 64463606, 455154481, 146023114, 148173650, 173240422, 36530852, 5089484, 302487251, 244450059, 512176557, 386009494, 219658071, 21617056, 225424930, 29739875, 445730908, 108923069, 2777948, 514335034, 67383707, 30485976, 144625050, 452822207, 69086302, 83774243, 21843217, 63272698, 137492165, 88045010, 12068218, 648360367, 74193106, 251960105, 107593621, 294113657, 480003874, 61861911, 309633814, 190766078, 436855487, 89846630, 84949511, 31505818, 120565120, 237921699, 65191112, 678464621, 682631552, 982557368, 397980987, 596768139, 22859447, 56394974, 162933164, 99042399, 164199126, 88748127, 196206815, 250536223, 99417409, 99943181, 195582259, 214943171, 676986692, 243299679, 65554903, 186492431, 434505005, 281429644, 2555470, 117196042, 729452001, 88462502, 167655349, 12119072, 257587701, 305966082, 334751439, 90685904, 285202693, 178443467, 52752968, 177815018, 147826235, 129094447, 422720693, 266444938, 292207776, 16565178, 72307466, 342839695, 34032660, 375972714, 85280064, 415298998, 115456378, 72687160, 91156001, 617456558, 584625028, 94751753, 78488653, 225953172, 106113159, 168604303, 120449514, 771226389, 604694414, 20694422, 1030992067, 94841553, 220255739, 45825771, 408941752, 353078949, 90836474, 229677543, 120216729, 806224890, 129705553, 113783731, 298876088, 187282274, 504664824, 316210176, 10333594, 780239223, 711223718, 105783734, 500627810, 223078093, 124653139, 503922751, 573222755, 321398335, 100927248, 74855672, 132611903, 62688085, 102559868, 123325635, 189256761, 263798139, 85826877, 91160977, 118678432, 220831700, 253649800, 168748267, 80641256, 364552271, 448893029, 305371345, 1350514190, 289267808, 124670779, 8517544, 249294148, 13539905, 29866007, 59362100, 255242849, 173870705, 12468739, 74999534, 688669875, 30420097, 179233967, 16984996, 17688429, 216159373, 52627501, 226351674, 702948865, 59916653, 250015348, 8949125, 191025777, 904890178, 185780834, 392932631, 163845080, 16612979, 159532210, 160636141, 169396332, 225260988, 70130113, 462202108, 257704898, 109597518, 5329707, 1037932644, 220585232, 450662188, 67671375, 70794594, 679844960, 164565780, 11377269, 1115445019, 3059657, 66533793, 96652395, 311630123, 146029635, 287013092, 341314715, 709030096, 261408599, 66371915, 158409988, 471859548, 7467436, 275862207, 87399263, 183608241, 63305761, 190292696, 102212144, 230050434, 240245724, 23754106, 96898613, 618328582, 613041999, 86027739, 37971673, 224693743, 353973496, 51120702, 95628568, 181911652, 40891667, 247352756, 52945055, 99312114, 80385815, 279484952, 1152502903, 266537446, 539561025, 151875269, 163962879, 275603454, 464228362, 177272299, 581938273, 407739858, 361115354, 807460160, 29775414, 22172261, 9646867, 140724838, 1041744462, 307348152, 307711022, 527078713, 1572424617, 47783346, 408166251, 94535401, 285879286, 687223730, 279722361, 234556749, 1054331281, 634848140, 70016709, 912888714, 89649525, 498672872, 42711594, 180422681, 71609508, 938671924, 966887085, 34232356, 185598393, 165715483, 19578616, 248744889, 208389918, 29969686, 3272363, 196613404, 205989255, 156929124, 36541217, 204341898, 249843649, 642450410, 231666032, 2526935, 232703001, 68554947, 240651495, 220412503, 37825542, 226525522, 200799663, 47995115, 143428225, 147230382, 284199113, 280337436, 133513832, 125820459, 194889459, 273778960, 234909564, 237060463, 74904918, 35257099, 155889669, 1068779, 133001088, 1004335399, 158849863, 195897168, 79941711, 14444182, 51646041, 484761866, 17111510, 377293261, 16910511, 138075836, 101486388, 759056479, 960599579, 239261265, 514567300, 38736204, 3255706, 78805795, 203140828, 44352137, 265880295, 12918161, 421073718, 63883242, 129127363, 9608136, 23327295, 463871328, 10715944, 67492344, 212573272, 178538615, 180044021, 216104247, 90629161, 292510423, 132073434, 114931979, 145503150, 59237088, 185410452, 176374582, 585857001, 170860527, 19915273, 361787200, 117128841, 23423323, 1400867418, 579220076, 72209122, 124688846, 305668088, 401476255, 108184870, 17073603, 447286001, 143889347, 578240634, 244992197, 272200518, 53066516, 479945305, 36121452, 353777179, 542743280, 207251266, 546182526, 894195515, 840835530, 18702865, 166914820, 154689192, 829719675, 307760861, 80057397, 318505618, 9801261, 112123193, 313786155, 296496543, 105767612, 444702491, 114977868, 28743827, 40774590, 141646482, 290349533, 217864429, 11625346, 2121593, 761858958, 67301395, 492883135, 454023247, 826933437, 163684359, 117160529, 465348968, 146581946, 16160897, 273511795, 577789556, 75368378, 112320303, 224097876, 187503537, 10019629, 115749059, 498909187, 172614679, 5123519, 671783473, 89501530, 122881520, 5333458, 50930532, 200227778, 150420758, 350157485, 225355065, 154147371, 145533431, 207400439, 7016928, 71641301, 181946174, 176740734, 110030770, 17748159, 626546197, 134766799, 161143084, 205697636, 131751274, 423150673, 508680787, 593837998, 231768493, 59882696, 177097313, 14500163, 66302112, 137634625, 23692731, 236835223, 49751845, 79848771, 528200977, 244743169, 355818866, 150093946, 9576032, 621358196, 911687978, 444686592, 39068719, 62304929, 92518391, 66727708, 5280670, 768993778, 121130536, 170847287, 174642432, 373246129, 82321942, 106679623, 132662060, 495961669, 86790484, 553845475, 276745238, 183454170, 6098731, 173571469, 475086774, 755247823, 354949783, 314267047, 207388872, 65383819, 540591779, 104154358, 33518937, 480484947, 37630475, 321751, 417063099, 50245311, 938217729, 443004489, 32401737, 108635118, 7405838, 111675038, 479189223, 10870144, 144674558, 67442610, 573826417, 316909852, 497848863, 85869344, 739481955, 539438041, 372074837, 193899338, 440150082, 70783937, 61327009, 26056491, 58671643, 19702978, 47590461, 101057116, 283475797, 11413818, 17548116, 155978492, 64070036, 8990120, 1566093562, 20754390, 32528035, 397624764, 47795695, 785222693, 449120081, 232704406, 49536652, 156975704, 5699562, 383498530, 338413585, 328384585, 126029866, 64930737, 66741235, 53481810, 58229774, 148256319, 5837984, 133276896, 74911022, 54575689, 162156414, 277276966, 68631231, 82672209, 480600405, 55341931, 94980133, 475935202, 81082708, 142604771, 247869094, 147991198, 30329437, 47932530, 374194041, 86453623, 250226290, 197744564, 411470318, 104649380, 69129154, 46407810, 90451070, 159103161, 24659703, 69961906, 259670007, 31066120, 260280115, 253991785, 11412670, 464158006, 79316694, 4218609, 485290665, 24999881, 60535814, 38619319, 295552667, 63603378, 93639427, 5056383, 129681487, 137717877, 53988654, 38944645, 148566986, 417007760, 139234552, 62977381, 527188700, 268156600, 123126395, 602755818, 471384815, 163254840, 35400643, 58409872, 100895191, 182168688, 442055402, 117680565, 101656588, 17512211, 33975439, 617043665, 619297806, 103833453, 9175967, 102060907, 203671547, 21351669, 109488921, 661325277, 68821222, 82827377, 429739775, 282724870, 14896330, 60903383, 251851562, 291206545, 234849356, 1007519543, 218047440, 141800132, 53460975, 149988133, 117408594, 74463866, 680575063, 47316441, 244076957, 1116463842, 970828590, 337960922, 578223280, 261106596, 412875841, 294335438, 747363189, 18131403, 364109209, 85643300, 350037009, 928769272, 207661911, 200875788, 123228758, 111945088, 174604361, 1010292587, 816721, 16975015, 324737217, 98659887, 66697834, 574359358, 357136371, 229236998, 553760759, 139265442, 357388819, 66166098, 132311683, 164106007, 731766487, 85634363, 22183195, 169460316, 751181126, 4748609, 204628538, 150832468, 10694574, 81539799, 136426861, 231407256, 206799079, 390533526, 295232058, 4154072, 181661833, 145518429, 467874146, 57712637, 347558518, 12361343, 466535774, 63289280, 259229815, 320555621, 256089968, 29339587, 663310417, 1063416, 220939277, 244885700, 6920752, 132069702, 18467256, 334994433, 139880692, 114918057, 41355318, 158142296, 119205271, 209160918, 395989149, 277331796, 15512326, 154845428, 140651482, 213086236, 521717552, 71149094, 362984918, 107985756, 87377480, 101099010, 91788565, 278371912, 2933298, 630216489, 371087087, 301483403, 287024118, 16126318, 85630374, 307704434, 158973206, 24718326, 134937505, 246904947, 54778435, 90518042, 12806080, 92518694, 471672479, 224197302, 736434508, 268327879, 375272388, 112960008, 53223216, 118994721, 230524628, 297241563, 313768012, 247662021, 353210905, 1035661855, 76512727, 181264072, 268108713, 367237291, 48633904, 91334561, 437052749, 55638274, 340710579, 1847605692, 6392911, 532444926, 246215420, 62639945, 43200756, 135039900, 76519188, 346035019, 332198022, 54478303, 118314084, 166806812, 86520050, 89927861, 461641905, 246106154, 325512662, 191583412, 60817681, 54154760, 72762692, 59599831, 300607231, 257951304, 776180205, 490895006, 285080465, 184234898, 7231746, 125391728, 183688741, 429997271, 1109606217, 499228275, 1778816, 571383777, 1186813535, 78887318, 249660289, 321300315, 55465802, 332551265, 47023861, 166504263, 365046573, 1072232671, 17300033, 57982225, 73710685, 3651528, 127008559, 68739196, 64166874, 13947154, 497666607, 45885033, 273040090, 184791680, 138050290, 143151355, 259156849, 611784703, 63889338, 248092155, 180895652, 66148169, 71037707, 174639293, 67179629, 236956353, 52010557, 140763564, 94455435, 23903101, 258781897, 416782457, 18552040, 150624158, 1087135474, 15259808, 157057081, 119604443, 88621128, 286105899, 141710781, 35709486, 221019070, 427911676, 261279402, 885810568, 63354565, 1229005342, 252141815, 147166513, 112048286, 28096655, 132161083, 228912589, 105904344, 252904941, 46839063, 77404517, 390636695, 61619771, 109796054, 38517420, 1348569190, 43892168, 222277556, 1001143846, 61955792, 376901683, 109727853, 179322171, 141617774, 182896280, 119885362, 341107733, 92303528, 352219773, 307957435, 186710567, 342169979, 92536200, 298907393, 17104357, 40275852, 16724490, 129998862, 64533000, 145750624, 92822819, 167499194, 729615848, 184699898, 431888637, 18807330, 181208337, 322386850, 127944654, 168841853, 632448830, 38475066, 214803789, 40752343, 92640235, 423043178, 186633567, 3031774, 479673966, 1052468578, 317624153, 22993352, 323774906, 355140206, 376120889, 191899587, 260693108, 451642399, 276475933, 483743669, 1070069894, 735043569, 95452723, 663074801, 152198863, 504815105, 352923966, 299238234, 212327814, 31458430, 585845813, 59957461, 1312800119, 55362418, 111956086, 89805667, 1044204024, 239629170, 12061199, 448753290, 103125221, 178661633, 276144488, 392193867, 66586627, 135439649, 7380231, 238945898, 855345054, 297681889, 148290830, 755721184, 117201649, 345268194, 248597990, 205492952, 103348493, 109659063, 62228628, 539838247, 57997684, 26541950, 452507828, 55504718, 88371788, 629274261, 66524025, 2271745, 74691428, 82077179, 225847926, 221527063, 184897498, 63754643, 107454264, 168338919, 251135203, 118543471, 15262308, 101431741, 400961224, 175391927, 847498, 37147157, 813843996, 250742793, 292882619, 84966456, 766260692, 549854744, 582546830, 580798626, 335609816, 323663464, 460690861, 364131720, 249075654, 10889292, 373061602, 504815457, 14209081, 103421722, 46081190, 213976043, 203328839, 179499400, 4123512, 585618573, 241296652, 19629006, 60509177, 123363631, 95207024, 61571383, 75811276, 77356242, 220617104, 288449264, 197971369, 77643405, 202449897, 140514979, 39322914, 1280949776, 521009320, 841656587, 355452025, 165921451, 366433082, 71279045, 15725543, 426969080, 216108270, 64857069, 26479490, 479552979, 160784737, 523104786, 341315577, 421463772, 302880022, 297416030, 46934420, 990440872, 261932637, 45152171, 977169935, 54415503, 450603785, 183631542, 153095580, 25712254, 282841718, 103244681, 23223339, 79428900, 86623261, 223581481, 168172019, 393126116, 429918558, 198388341, 223449328, 28201025, 178359046, 140410293, 722320200, 309602849, 3569471, 137182234, 173682951, 314068221, 457736191, 130570858, 143011243, 156298423, 208443366, 131269195, 125400721, 117029774, 267314627, 218096071, 57583933, 8256431, 559332542, 86674863, 90588078, 617290308, 239026716, 374243061, 296393438, 131784736, 6179944, 1076546042, 72273029, 79582998, 39719674, 49440916, 759673494, 43862802, 102230254, 145015750, 492570824, 38922301, 214897738, 473588, 105388758, 25585874, 132041912, 158673584, 57441624, 5180654, 678602, 130805241, 429051849, 264306171, 141644526, 23608800, 86132759, 369897364, 485551524, 768941508, 39196578, 525695767, 300244385, 124836207, 32937813, 446889644, 91361421, 438586564, 874461904, 249469439, 946468479, 214506857, 179975889, 197860607, 215561039, 221355992, 120123655, 313459681, 2124028, 96427086, 163625687, 381717524, 312220696, 78722497, 38481541, 501968662, 110876048, 140743066, 241825844, 51483464, 28100769, 174510545, 408647201, 397588636, 244806106, 278482638, 235043552, 270626742, 160705739, 93177764, 1202539051, 146703441, 497939093, 174091551, 766781452, 41717622, 415319050, 14240442, 480215633, 425447530, 117064190, 91660498, 96577874, 418038109, 210465420, 153601979, 270671032, 573238653, 498312862, 1016380249, 438410163, 769696412, 61141809, 109456310, 167469687, 434677773, 1056846174, 426570030, 55057745, 151343008, 25070278, 51347862, 246203262, 306765582, 136971862, 210136424, 467887492, 55511221, 242333305, 287915516, 1076164216, 319953429, 319197470, 8836968, 178475249, 73298041, 169467482, 34569014, 545871191, 16676069, 503094210, 147239256, 374013943, 13828679, 379807566, 65282672, 246326881, 178604190, 3179068, 413840750, 667670875, 28562592, 330855039, 195472145, 408910349, 30711401, 443642680, 117870098, 11878366, 44063243, 3582012, 6833202, 505250584, 163981322, 440045379, 108870754, 157781117, 85951414, 60774722, 100998372, 109200362, 13520877, 177673499, 24130903, 505165617, 74082359, 96456653, 58761742, 173194924, 17179382, 352412160, 133703488, 650273365, 155351933, 287929404, 156446608, 94162150, 64885372, 428107762, 111192694, 122372365, 219573937, 32081366, 879360956, 4275770, 673109036, 94070862, 165527179, 57402195, 76006811, 198243080, 86365807, 94105239, 1696033, 120254413, 596879236, 1471221431, 142229462, 24838056, 171071294, 172099282, 459302896, 254105139, 38297452, 1906498, 4931022, 229458347, 96873773, 71180622, 34330932, 132885638, 245313815, 304800063, 187734219, 221140793, 157035446, 50015589, 249499493, 282965163, 31547751, 512537908, 51210185, 130929111, 607312872, 707558721, 369010430, 415980086, 299679472, 636845030, 262873702, 597891144, 36892365, 57263604, 188292089, 81323948, 791305193, 198330902, 235671609, 1817096367, 377833877, 327169820, 132380244, 29073758, 129686666, 274820019, 142664914, 229315512, 446876877, 4736724, 68736977, 683563799, 546256051, 136939536, 98688343, 193457265, 21303918, 436192723, 13662292, 370884586, 164507262, 147340041, 275008840, 237117988, 255884465, 601228620, 243513255, 221639209, 144309029, 53498519, 99324705, 676215267, 580835305, 321919788, 395075808, 4498696, 24641665, 54169770, 240007885, 614022956, 796725935, 455776799, 225603404, 224236228, 899028226, 262916517, 22340538, 11288561, 51939275, 37221986, 207505847, 269890763, 215474345, 53075774, 933104101, 660967289, 20324007, 223696156, 68485995, 72656686, 367970641, 205233872, 631757912, 128135822, 1069637978, 302069497, 135424355, 19224414, 250396051, 357075758, 337852600, 217434267, 96080300, 89837664, 34748424, 82925412, 287444305, 802237080, 15272821, 480743267, 471711687, 241763602, 65208360, 36684311, 398147268, 54826635, 420033085, 242216475, 185263319, 4341455, 478042908, 75298115, 95310108, 357979366, 125108883, 7798601, 142506159, 195400373, 27611146, 5001517, 78180541, 221639638, 104303850, 216469924, 242531536, 57146705, 459277937, 77984422, 40921585, 557364333, 481526823, 339078064, 65551305, 13583443, 500409024, 1229824602, 71585991, 271158639, 235523946, 354053588, 137231776, 48085489, 347082455, 159250328, 619365224, 502972859, 173535138, 16823129, 121287217, 104402725, 471849273, 257066544, 268816797, 43480895, 49936203, 69287248, 25215789, 358950014, 175338429, 70526845, 119965133, 100890657, 320216567, 230996995, 31583801, 91936315, 101632323, 26334863, 301041005, 280041494, 469460905, 20765004, 448200334, 95723034, 84581620, 334299868, 42489265, 183261348, 397932872, 80209794, 223653911, 115162203, 557126591, 59221356, 76064786, 422296319, 51260478, 110084162, 202693622, 137936687, 101884605, 273348845, 337058727, 3373927, 65273258, 229358153, 96700612, 87961292, 295916659, 1008985952, 702923090, 74487319, 431348702, 360352475, 209769534, 19413937, 59669992, 154217929, 100730904, 342276887, 319027732, 565194967, 19318928, 102807629, 467197470, 102027184, 31521274, 1726848750, 283816425, 274864410, 137216201, 927656226, 7619062, 534921859, 350769105, 1303034821, 154758938, 8669986, 85072831, 30098958, 379571113, 59465897, 114970906, 218148159, 310823887, 273508821, 125933810, 580982543, 466941156, 312096776, 249861624, 83770136, 101138212, 147881134, 236890818, 584927806, 179766040, 320554292, 269521112, 40715727, 24207184, 409114965, 523093480, 32556550, 134550245, 237269000, 30204410, 479426441, 122741630, 36273540, 311635008, 35480103, 20483509, 410817801, 305979677, 382335830, 50317504, 436035461, 133949864, 365431276, 180910503, 368921292, 3172956, 215900895, 50199448, 244624751, 55839941, 288558877, 11911505, 462430635, 213032806, 564718398, 248386020, 44794434, 1303475936, 1644055658, 180164369, 503942927, 231941172, 519958563, 343406097, 3707806, 349529685, 425706707, 428393486, 45699776, 217081015, 338435082, 860750279, 790667268, 165528671, 59287702, 318238090, 171437142, 185601340, 255071871, 457877583, 311753999, 85228250, 531177011, 190590810, 225422879, 361358885, 528379253, 343518131, 175715670, 524206361, 858299623, 21134692, 54925893, 452952183, 428665995, 59482749, 92466601, 241116994, 1484082087, 159478280, 606623707, 165882555, 45467263, 240268521, 682064761, 28984299, 90367049, 40975271, 246963341, 279932561, 863558224, 91343313, 295935656, 226584703, 211471771, 72305322, 99535580, 139581221, 328955453, 207590237, 3229651, 293975107, 120894548, 58894288, 69765572, 46829348, 135231126, 197174163, 186688127, 40532473, 338447111, 42100858, 246707903, 260265888, 358092760, 84727516, 344699792, 395424681, 142656191, 20333968, 145449474, 34476546, 31205209, 24217142, 314891997, 138587804, 104473192, 370807325, 218614556, 402974902, 90914880, 225962515, 156914820, 281731645, 193919957, 146168092, 219373654, 646895363, 313102750, 442807277, 430272747, 44719114, 820929134, 43044347, 399468872, 154673000, 145683503, 75680252, 62852065, 232507107, 18613401, 264778455, 159666474, 695683793, 166255307, 40146761, 106848193, 204087370, 586899573, 581657594, 99452556, 689421263, 162694288, 186395013, 104156693, 339133227, 679653459, 265668390, 265065813, 118698774, 153818565, 51484797, 191941070, 39729354, 104586040, 9118225, 230034181, 180684767, 7467850, 411736000, 456870258, 496655732, 46717224, 83014889, 392066273, 260751673, 139333007, 27169043, 44861813, 11226388, 351556305, 63913519, 894535100, 725465675, 334601360, 9356356, 282014490, 128904505, 291622276, 87341129, 360279214, 504127038, 161588543, 1655853749, 1121669336, 198881636, 8537245, 99057423, 3563759, 441739320, 494026773, 477025551, 281730342, 371425500, 27350885, 145203476, 124359467, 77279121, 81704576, 85603417, 92357597, 1313404289, 71308313, 1014021, 696995150, 782386024, 10406415, 230155000, 21068251, 159970276, 247202100, 451799109, 94237796, 435365067, 448790289, 7928682, 105817216, 240500147, 110601761, 24530964, 136622203, 52923313, 294823503, 13422936, 303063672, 386958031, 64956688, 13042068, 385282185, 174169761, 19145615, 14636679, 170344990, 96561103, 439103510, 135033996, 1500685599, 240380300, 341143606, 19986490, 11110311, 19369039, 270041938, 110161801, 552003392, 58155722, 122204807, 784638977, 414570582, 161343858, 9163884, 728830050, 127918109, 159744875, 352409067, 15387416, 866012294, 782863668, 511951230, 343868140, 147716704, 679133010, 199085790, 275312158, 948816774, 107052025, 412742652, 916489220, 679563666, 188497715, 415393974, 870928189, 229138335, 146932441, 12635457, 58084290, 257142722, 46820047, 40735972, 44017159, 254016956, 687303616, 23857211, 360831272, 124545749, 454385792, 425352858, 108106757, 191607745, 279109680, 434883478, 307377592, 101623660, 105820282, 104801091, 90426706, 138481933, 30776930, 391395, 104908403, 120302902, 417238332, 8971578, 308976500, 63343621, 471292983, 565289103, 229613634, 1171371693, 391523835, 347637013, 114587980, 154933333, 447436634, 24346377, 445421757, 126381246, 266916722, 591546944, 269872203, 86878699, 315879523, 101905125, 111549408, 389738030, 273582076, 125901842, 49661975, 369386299, 126527733, 182012745, 522074529, 655099419, 85817120, 208847191, 550658055, 28533960, 145735563, 158689340, 486082211, 732631262, 50805492, 54560919, 125414384, 353420526, 5149567, 719051190, 519876631, 281069695, 226124206, 180699080, 697221423, 2534848, 439911967, 82849890, 400735970, 157999893, 131941838, 774558339, 758321821, 387768080, 54889926, 428940904, 148730069, 164690439, 110876453, 94531163, 98738827, 189130584, 364871358, 41813529, 56159170, 292723534, 21373992, 221617266, 135294794, 26954824, 74281594, 77839633, 366364343, 447284723, 180742604, 297686689, 460980291, 94128414, 309258822, 243106325, 180240639, 20152707, 91276851, 52645594, 235978043, 172040678, 998640469, 2759559, 305953243, 17325887, 98464186, 1184385747, 102165794, 430116382, 38035690, 188937495, 166658791, 62817904, 453988724, 524746715, 14491124, 15880256, 524903551, 428197721, 257522116, 115011033, 65182454, 154354236, 133842138, 617052756, 408141570, 266904968, 341998228, 19376252, 443133153, 14760957, 92385355, 411215952, 448777717, 953098608, 242461247, 542591879, 858501348, 650258839, 294440488, 491328213, 48398163, 36951689, 427578803, 1059509916, 356872393, 507841013, 414489349, 112450701, 134761654, 138626988, 155205021, 252958869, 238694772, 478360129, 80197851, 33939767, 166263037, 1031515009, 741153725, 84414995, 406974785, 69448774, 434815254, 240998056, 791651882, 135699951, 62737591, 285782982, 15602184, 557125735, 74782954, 67193179, 373710161, 416602959, 806835307, 179093999, 130819444, 358512829, 231241336, 406981998, 589371017, 4474621, 133006463, 174364897, 243692662, 281035279, 243621869, 441156590, 126560206, 88790685, 21366173, 631063416, 191263230, 264680938, 75657655, 61774618, 396990641, 162451789, 529141335, 473421250, 106911869, 29436114, 429874483, 473072742, 597507502, 370933967, 17629772, 87352242, 71641161, 275003905, 16098811, 35214522, 287658760, 58995497, 115238397, 674243, 502695566, 781157672, 444662815, 67456760, 995885927, 269860759, 558816749, 178188147, 81193039, 34589533, 314975382, 408264142, 229642682, 95650111, 119141122, 283203281, 138745519, 632376629, 175624150, 12080966, 138212586, 210636041, 104228282, 271773661, 54829960, 36875057, 190381774, 239766716, 105766537, 522099496, 112162041, 50646696, 435454638, 43854552, 41272691, 404084840, 204484173, 4822499, 3113531, 209928153, 40082052, 160761578, 105115174, 166398416, 372485020, 307922606, 32431875, 624365508, 237786072, 241950834, 785077645, 359974669, 39771782, 4454915, 126202491, 19717480, 41992262, 576091244, 141563322, 170659405, 361674919, 185923797, 133027039, 92303642, 282162667, 88799429, 456450979, 54458114, 13154586, 231140410, 172718868, 733288479, 401882730, 430060550, 135733508, 200716303, 69928117, 191866395, 52366595, 223649156, 29676937, 551646462, 97183916, 1256712627, 588566153, 149574855, 445687973, 408340931, 99706416, 925034251, 77945410, 430279681, 169344217, 133193423, 488639110, 540916579, 146765669, 285997593, 430252880, 169913941, 71104799, 85652681, 138867300, 380085480, 460425016, 433064593, 89624448, 13602588, 16559153, 63091041, 121103307, 48240238, 22781883, 295050786, 627902309, 339897461, 26510896, 166339148, 185878352, 44467775, 52736893, 186080956, 811525815, 134716335, 595405244, 418141451, 2602656, 100521938, 57615205, 443436316, 202506855, 51390379, 475448322, 727973778, 719787665, 281766304, 176947141, 890537046, 159369918, 209938833, 51058196, 446961575, 163128874, 791439, 68779634, 30484172, 342715529, 103553947, 226068055, 66936677, 67074220, 369556191, 169965104, 680749594, 593857863, 119913894, 332471224, 618631274, 146681094, 283134907, 163861884, 807904031, 469348443, 90711645, 268820231, 380298145, 310144222, 32906951, 170228306, 571728883, 287953337, 133210971, 155802697, 32284732, 134512184, 294661896, 66926654, 534662845, 356286298, 207434447, 479811205, 837856640, 9345544, 96398715, 561904271, 694484760, 141791255, 109624654, 228638773, 477763140, 1165765152, 8235836, 202895610, 221188580, 18136716, 47773917, 18667755, 372553839, 87588398, 206583238, 128280283, 309828104, 706217599, 460664130, 212193452, 19619967, 178965032, 194468188, 307880850, 939170385, 14807757, 82052726, 697696568, 485710816, 100948282, 214790165, 191149565, 345360210, 582963116, 23174962, 97080726, 260711896, 32165993, 481826054, 54158208, 52702036, 1550301044, 1703973699, 303374578, 86436472, 205570650, 15732033, 864011414, 63749503, 263663556, 189505269, 8242562, 528706914, 5909980, 165903123, 476048403, 466055272, 345930890, 188369891, 289637901, 10346148, 15189805, 49836639, 191464573, 313865481, 138870, 450693696, 16365187, 32322517, 279743518, 1241984120, 10977057, 133814473, 1197809295, 168129482, 295869133, 85168298, 84750852, 126689017, 70727405, 608238919, 267581802, 81505175, 379472882, 137611496, 171047433, 109657892, 972203580, 773565853, 491314319, 129053765, 351608423, 276503302, 215022158, 73701818, 108469604, 95748419, 434581551, 133371249, 47384744, 160084534, 129087978, 60533729, 494874055, 124124760, 144242590, 80091907, 132891583, 311322182, 129428996, 261216176, 107929369, 385183533, 268583725, 485588225, 650343582, 29344468, 50513882, 579608436, 426559377, 382564573, 83112151, 200411098, 138264160, 223921204, 390015405, 356442019, 539086024, 225309390, 557921101, 7512015, 389378604, 1346596, 1022701263, 117988597, 35415039, 134254092, 120640760, 193724222, 22380187, 182290893, 39289289, 46617825, 78942425, 195264886, 1456357804, 48760834, 260015723, 663288498, 13963724, 144508309, 301723998, 102328526, 314963840, 21674349, 267685762, 163809894, 220922465, 184389364, 398214590, 54624905, 199532045, 90832107, 56276334, 187310320, 276299151, 100669732, 277420211, 375489753, 229789861, 171737112, 75806541, 165246138, 268353336, 186503024, 1007100730, 265160225, 295110659, 113697985, 210262593, 168392397, 384847711, 66051369, 203418226, 60100304, 12095567, 47567963, 287527731, 117008686, 140556847, 52908601, 206956126, 721975690, 168387471, 348077932, 54179032, 522214411, 415954801, 229920559, 252884351, 120981866, 13190222, 249051350, 464053641, 305829079, 29894211, 430710465, 98659925, 197399591, 41832068, 245312275, 356500260, 285076118, 223766888, 83126346, 518042332, 118936810, 52312833, 81035183, 333451148, 235883465, 55846485, 76755217, 82700664, 138090877, 992966207, 58654142, 2045926, 386364321, 396437113, 122385535, 556246575, 459705379, 947707409, 158024702, 185823742, 21246122, 75070606, 217634920, 113635302, 39434788, 625906489, 22424862, 207994877, 169606659, 26742050, 41242359, 469914006, 85174455, 44054639, 207037499, 249303457, 24594737, 205332606, 547854339, 180596114, 191425081, 18434793, 75677298, 5741078, 236975108, 254004578, 276955679, 139807837, 234478037, 24891506, 284805231, 140261781, 22640226, 849217220, 374402628, 65839416, 528915372, 233262416, 188814885, 21608357, 302064038, 135286396, 283372404, 319359376, 212703971, 56435316, 13486015, 270387757, 345804216, 674954258, 553638274, 1085789298, 355299801, 33865603, 374300858, 19066782, 174863039, 135174312, 172730566, 16953712, 177706439, 562054551, 169502459, 223490183, 482873483, 929465350, 203212411, 157311634, 213910464, 411869313, 197477333, 970246868, 53362846, 50938515, 144895570, 173418800, 31528157, 168466148, 31482998, 235062818, 38487862, 353358343, 101274250, 542346212, 245148441, 18410758, 309519331, 21646617, 63370676, 46439274, 585391051, 318280082, 411384798, 29354140, 2128059, 122702959, 20126550, 90880532, 446299884, 123969822, 19943289, 107969621, 25699935, 77898329, 78074708, 190625265, 349255428, 121140315, 344510915, 237245287, 318729319, 521110862, 18630204, 2493905, 171562339, 294234204, 21082566, 45708878, 181629830, 90357652, 17696170, 127765158, 350122563, 505360622, 176726423, 358049659, 64875971, 96858215, 6448805, 398526101, 146747723, 498217181, 29651424, 192822824, 26969040, 118523433, 393600261, 465351551, 169667663, 181869682, 46325432, 47916774, 115061880, 68614316, 50900743, 461580315, 274061293, 1527770758, 1017536771, 37821370, 8398228, 11298248, 80282911, 382464460, 272307468, 362426139, 75206662, 246265535, 421580059, 4450957, 125676672, 64362600, 528059093, 174732125, 172449948, 836856626, 235278063, 74801823, 201220034, 432868758, 356818939, 152933004, 334583341, 23531810, 289488777, 581032341, 284230919, 95598901, 267026232, 267300168, 53076821, 290370119, 146289769, 154640811, 146421784, 15905348, 702814126, 143065029, 287999482, 169155720, 150694126, 406694230, 306436434, 91833233, 80335155, 45103518, 1365610347, 239835253, 42438734, 84345668, 40408032, 572662145, 326748676, 513251719, 335879948, 31942398, 178535588, 122749857, 46858017, 33085618, 1614567642, 111367943, 200010030, 48747572, 403391375, 317963456, 959419480, 161905863, 30449682, 127588071, 679349769, 206595698, 46325878, 115409706, 229632073, 48570430, 78112950, 225760958, 378953849, 136548130, 237205727, 277540131, 88282895, 92195423, 184249349, 1378893053, 44016685, 352215386, 120269245, 100155751, 503426195, 30391056, 282569153, 34432017, 5826297, 52237656, 452213494, 1348977494, 266710450, 683840059, 124766426, 95175835, 164680474, 87662622, 280253011, 408662456, 157625529, 619290256, 115861005, 797575863, 95420816, 310636559, 241405033, 232501554, 346241157, 488790960, 104282353, 560188132, 225844066, 151552254, 55683028, 48063976, 90731480, 489131608, 89798090, 98936901, 4100589, 27927086, 13789199, 134131067, 5568500, 50072484, 315941354, 69266330, 159883579, 111439246, 2492659, 599668205, 1200157888, 30724072, 494716522, 91075754, 423818546, 54309171, 256581233, 196171804, 5774619, 310766128, 134629576, 239433267, 33458907, 233978138, 376553461, 44371929, 146250377, 10512921, 62936757, 54446244, 39618072, 80490824, 105593951, 635018198, 52488970, 4605203, 38478319, 264280521, 29816567, 41357228, 83613506, 26407626, 77558890, 523321571, 128933621, 12281723, 11188184, 367117228, 100214935, 17211350, 151400423, 328576413, 137400116, 94455358, 91066257, 626459227, 159988252, 163482370, 761897483, 288008822, 131835265, 471042974, 293910111, 335344450, 176326842, 497068757, 351761155, 256274217, 65933189, 235297798, 380702140, 178350647, 303756165, 379926921, 25742891, 441945915, 214493010, 38083419, 215867298, 531257999, 767753811, 353449370, 225160485, 25824064, 7792798, 248544321, 1411068056, 68757611, 443416290, 309773709, 268583360, 777275662, 80843389, 12673445, 288027895, 363230361, 272399945, 39449028, 118394892, 518900588, 342145972, 533323749, 25045465, 42458888, 123339787, 53443580, 823928945, 673434111, 16940588, 78823221, 406975885, 1047813, 356288221, 27259919, 26977885, 192464980, 159873694, 489869639, 359286662, 1460415, 198927929, 33838167, 805013050, 410673605, 48260769, 251506674, 85723417, 434815254, 182443714, 127622399, 287513629, 64524090, 74109423, 183290624, 30777231, 252508563, 301976301, 17145587, 86927455, 358002286, 17953575, 439413191, 180092479, 213074837, 623493403, 108598467, 16506881, 28017325, 677533473, 428546863, 29638893, 157209109, 664333711, 15098778, 990857065, 473671448, 142196724, 76664016, 267475627, 630290078, 264592592, 9988562, 33737609, 257222421, 203436382, 988038103, 984130350, 62144599, 10028713, 77601037, 315703777, 508771518, 15605740, 708643535, 136048098, 329374490, 2623799, 61784012, 216930642, 712268571, 373582742, 288680653, 34684301, 144166337, 166354712, 27171835, 75182898, 554225231, 26222544, 558363609, 403507090, 169537895, 651207061, 277283226, 23750411, 157054961, 258918349, 442243557, 136214092, 138864823, 441432367, 488338647, 530388, 253952375, 194154009, 42972823, 102957909, 199590476, 117097489, 260607411, 162517533, 29740385, 88211929, 229923277, 197253576, 180933519, 146224411, 193165380, 121265708, 193174200, 131864877, 591123455, 351153827, 13232350, 88870214, 452025452, 73456740, 281083157, 124106687, 130813369, 14598356, 52314301, 67928407, 436454712, 417401605, 359970872, 810677378, 519698144, 81911736, 14643455, 68534121, 168157253, 635647350, 188981887, 11202374, 51673831, 1466040030, 165841027, 312796129, 30560114, 343929419, 467341180, 367234866, 161452041, 553408870, 7414144, 3977416, 31931332, 302773275, 130449684, 184928984, 174295417, 99735723, 170331218, 7961530, 504808240, 62676151, 350268711, 161254661, 66551438, 408746129, 303282340, 310165361, 154005452, 716440339, 172622951, 253918086, 301531109, 308870101, 13260636, 203109763, 44966340, 553620539, 86754139, 250172363, 367449404, 97051785, 123725751, 250102158, 349549427, 187439691, 513513956, 826623881, 449906668, 104386884, 1097523362, 141064902, 87725962, 165599898, 528405005, 76052812, 1253704431, 90278207, 306008296, 149578745, 65416938, 45049318, 415434724, 595127875, 237004898, 484393924, 147071504, 362281710, 330716417, 158706309, 26867315, 60659919, 185057159, 167670588, 218401846, 68830623, 916428039, 45995790, 708362714, 201728069, 69468350, 289716404, 742481184, 189735665, 34482376, 211840702, 187073966, 31637977, 477840179, 53942081, 90709877, 426737369, 23818106, 20635655, 153471331, 146082872, 644706366, 249778295, 46915141, 122369358, 14333161, 79233995, 225530197, 214415431, 341834356, 554931619, 199640280, 153535719, 8437172, 60429820, 891778286, 80449127, 531126916, 281329181, 193750353, 1082709081, 58277364, 4326124, 495019461, 400285431, 785488484, 36944789, 227120427, 8537716, 60764152, 377252108, 160969058, 528494197, 119953173, 119680399, 68932872, 47034800, 256441916, 210321057, 333067661, 23495565, 144687075, 1107703358, 196683212, 58552928, 55057876, 70745991, 162899181, 12972472, 571520954, 932869863, 403808254, 467214301, 354869624, 259493011, 245604050, 305692314, 184247536, 673790631, 165140091, 322451715, 300435036, 288667749, 98796574, 409135054, 5024983, 205192590, 768608818, 129285263, 469337955, 138075522, 64773000, 74595858, 130925483, 176648657, 55560080, 103442202, 335857434, 275664239, 32894510, 242552473, 119507768, 600332183, 145970351, 26114237, 81256542, 391355031, 197504896, 189387455, 310958504, 1054518128, 61692320, 30631595, 273616963, 81409802, 592595540, 139850364, 426703682, 233712188, 416749996, 261110004, 1100832906, 719780, 254784537, 33642354, 71274459, 213309154, 154486841, 788623673, 56614876, 96234236, 92037886, 94909477, 58038968, 164455543, 132915938, 61239350, 68547635, 289390143, 332412042, 289387382, 274299917, 292625462, 391707875, 7509861, 696849327, 139814028, 152618241, 170313853, 1172076852, 944003123, 492082053, 948032030, 343001484, 60364503, 486781279, 829690742, 371743861, 6204200, 281749357, 754281750, 105158462, 756068338, 1145387131, 83350939, 136352484, 126808720, 66445346, 262314729, 9909114, 711564960, 89444624, 148397237, 112187032, 431128297, 161588494, 4161187, 61687388, 270017568, 178216614, 57432116, 116858258, 20527550, 651563205, 20722925, 86326112, 184453182, 403045012, 6698229, 196931426, 149538258, 334892816, 498656701, 122881392, 322093950, 526337903, 193658218, 465787565, 21951271, 582794783, 251552510, 378970480, 670349604, 408013654, 27651194, 338863028, 1077090119, 32267779, 685914554, 257058501, 114316081, 534183072, 339330709, 146415254, 400442407, 208545389, 157462986, 85220654, 102486284, 65593732, 208572244, 182250663, 304154382, 38166957, 251741007, 126909052, 1289014117, 35066428, 797413515, 458339066, 2265870, 97796816, 229666743, 699264327, 24319250, 299926414, 133336265, 19055139, 205240042, 101089113, 152348779, 266622376, 52324511, 43812739, 429898051, 323629763, 315044817, 74442257, 342544198, 379186672, 62374954, 81220320, 76984301, 581274451, 134284503, 250164865, 2803933, 38549027, 350151945, 858207681, 817607768, 178359985, 82446578, 201196461, 46770260, 28112185, 796807934, 215168115, 49356505, 70664249, 255207352, 246661944, 529841044, 207868140, 186061897, 140656015, 73491223, 751298382, 281833104, 331118307, 319283261, 522785770, 939632420, 317257881, 364374979, 31825200, 95555327, 375439417, 1370462093, 402258587, 165677663, 785391847, 2791753, 172131595, 67436122, 673369790, 228298811, 675073056, 66127735, 180280673, 43806102, 478649782, 489442434, 383098808, 124406569, 110931393, 49323858, 119276886, 87296794, 224219518, 18755711, 343237121, 50660831, 413448333, 143868014, 660645004, 278629863, 166781229, 144418696, 274072619, 73421662, 263286913, 109315095, 1669782617, 503452113, 97677013, 666890631, 49331761, 68126654, 38920315, 287221256, 35256763, 337164089, 183658038, 267950757, 24171170, 234383729, 431103417, 57636798, 251628647, 32467135, 2447958, 107478540, 90393963, 210267528, 182435028, 798484727, 56213046, 838178213, 121912066, 231000232, 771907760, 359933830, 651122652, 762603835, 236148276, 899626698, 524438430, 375347794, 56270276, 363241371, 46269070, 16768604, 163820865, 138105066, 316135384, 92419328, 1119493313, 73557555, 71161376, 112056313, 117131125, 74356868, 298591245, 273886094, 412684074, 48213412, 238321361, 343977370, 545035638, 324830379, 95523254, 449119366, 56092303, 859833779, 376420649, 198165789, 692928269, 120041738, 6351018, 531255668, 510195799, 53831770, 686035538, 98568606, 235372105, 120950145, 245028641, 102272765, 247596318, 232762793, 288086772, 327150931, 462982999, 21702288, 113134206, 117793694, 1248084589, 306470566, 469291536, 526154116, 37665406, 35950360, 298817494, 103323286, 23760382, 51254629, 494502500, 380200312, 89212782, 537353497, 259174683, 38398153, 12815061, 91911212, 155936836, 127838533, 137587518, 415855077, 157600420, 374096351, 122926921, 510188975, 163533409, 744519369, 302987309, 213451210, 11272911, 295162969, 1019475450, 541637207, 200477764, 30828565, 1309552426, 783452975, 149944721, 468590672, 34256051, 4841522, 107997476, 138274045, 575450868, 806544820, 89758147, 303996307, 1204332928, 172044601, 438844018, 132587971, 2462966, 1602416931, 40986028, 126830807, 243513654, 114066052, 17316324, 85541462, 604177546, 29357464, 754625261, 260175020, 340759964, 64765004, 350598008, 333587842, 46917507, 633191219, 90139253, 7770083, 689452777, 257248106, 53095009, 440379409, 101665408, 167239855, 177552701, 14441264, 741553953, 10195121, 156677436, 783500692, 9483496, 108351736, 19743742, 267649964, 304442689, 38428724, 628843078, 104056445, 1133590377, 240752244, 764170117, 327112430, 440935062, 145970813, 48121551, 337193500, 105475071, 59133044, 365534557, 76603304, 221935426, 689100731, 15011842, 264134063, 39017928, 90670438, 304654802, 20101726, 105073760, 34530667, 390475345, 30374763, 60298597, 487644928, 359576183, 265339701, 340917733, 132827293, 799883937, 161891340, 352308818, 273896817, 45920704, 90327547, 16318971, 19399018, 263598, 130016813, 83535995, 182400549, 268468834, 231806559, 48319767, 153219490, 61418678, 95750797, 343211571, 576108231, 34477217, 423885073, 374438690, 585396755, 281189497, 822652515, 346030343, 131466426, 107320784, 57231742, 200346202, 7377307, 277920320, 79649443, 294883245, 434901385, 209897466, 172449540, 259882316, 92626892, 250193701, 271284569, 412555224, 1161321298, 64755198, 321449448, 147013243, 145694635, 1677340050, 596518586, 13850499, 541469076, 152703997, 435310307, 376470077, 23266369, 188287542, 174753639, 66217726, 481512460, 145694404, 366304342, 529268560, 17681576, 371728529, 86613290, 255694846, 11088797, 371877489, 71715137, 108421840, 29592372, 258900531, 538745454, 25659911, 480691294, 222620123, 193063416, 101702, 99640769, 44531047, 13957588, 52307581, 109537159, 514853484, 305382398, 145338555, 29952969, 635476319, 271792797, 751893381, 105555883, 37250943, 213391407, 132190072, 567364945, 466609962, 836027, 296006481, 104435956, 1144408972, 86127, 149335257, 249166304, 255731729, 195822220, 55330385, 700060579, 405323902, 55455373, 1123185671, 306120535, 1139747053, 646918972, 4156389, 237469377, 239078580, 152521378, 316754046, 183860038, 458093435, 128468268, 226154936, 320024782, 709021056, 852468282, 230095912, 186748188, 332020326, 1297264211, 465694584, 319309454, 1308299385, 1768041862, 13413059, 117715481, 82586316, 71910341, 88676776, 12054180, 146989060, 83045903, 171734669, 140422159, 694023097, 179670770, 1394997893, 193822790, 297408470, 153520073, 381397122, 179837790, 454252496, 106641241, 725888085, 366417420, 9409729, 190784108, 75757983, 365927725, 186466944, 457096352, 55953726, 74187620, 455071985, 72573445, 243613420, 22757659, 171387222, 264128750, 555124110, 275678407, 274714977, 114049343, 13554671, 223610747, 234441133, 421594647, 22238480, 78017410, 69332425, 236959793, 180141209, 421345342, 659209501, 147111946, 90002323, 796996574, 305020904, 203108219, 156204402, 706669745, 27375289, 266400832, 671163860, 290991301, 539963020, 81838830, 181497317, 110772853, 589970572, 121896214, 1050492344, 202435402, 165151811, 403573476, 497368029, 419325904, 102764719, 687262628, 420066972, 93475412, 190978585, 7649055, 24120507, 50546480, 59354197, 124368938, 544887231, 263812626, 281752425, 99534569, 216645488, 368799944, 312231862, 66743369, 45849748, 216573480, 70608336, 280609270, 274392039, 544802639, 385082889, 123424885, 136313229, 937986059, 42434583, 1229806252, 383017168, 167547093, 653860287, 95432230, 189693652, 49987486, 106414337, 241077188, 25288662, 200202651, 888292643, 854518673, 44062579, 255096517, 4529489, 162234563, 30866476, 327003679, 300647541, 3784542, 1700166, 284407428, 291517050, 279144154, 198130746, 50850680, 4082491, 296408501, 41174224, 645418397, 288240853, 282195000, 35027307, 103180174, 802492526, 266200528, 72750653, 87053729, 67279769, 106423954, 435567900, 727658678, 9346794, 325313630, 93930884, 431115188, 45510544, 44334848, 77910350, 231612909, 48804681, 80185474, 70649056, 473568333, 284198340, 375783366, 334410, 296139531, 147107442, 596967303, 105998830, 473385706, 209801262, 58872661, 42894422, 73798025, 469379755, 130529165, 195536206, 426764611, 165776854, 18995118, 174463032, 183375866, 196490699, 398239441, 93560564, 301697319, 696800737, 212089027, 373411, 25804766, 216017798, 71134958, 296542317, 61883883, 356020019, 145439183, 261470733, 631318777, 99650496, 320564305, 354835795, 246496142, 602418080, 571498613, 239023773, 341674802, 3916941, 518762608, 82416144, 173086355, 690133332, 363969079, 943046702, 56879448, 82215777, 3469982, 539416014, 56310103, 98599301, 542213852, 7968747, 528151626, 506564465, 321353275, 452165459, 108060141, 33171382, 154163817, 72328833, 51548476, 38606301, 339727158, 199199765, 401976555, 245273583, 32308650, 184070609, 255149290, 929196624, 190942609, 487025635, 274635364, 2135942571, 441936584, 477984287, 82088076, 225588475, 158426310, 60256494, 560049705, 17030039, 70268464, 177829388, 646260786, 707225150, 12990081, 1228676249, 422615962, 177684582, 68738711, 337850899, 122524433, 772965809, 1191472261, 41352531, 92379902, 28755719, 131547830, 284113156, 458185890, 277831060, 180771027, 164953232, 277566477, 12543127, 10656501, 640161084, 255602521, 177972032, 30966536, 73079903, 212070868, 24618479, 170990683, 61411254, 387884311, 196106421, 57963303, 97852312, 373061925, 49528452, 5812993, 538922281, 529100290, 2592004, 379567139, 618703637, 526931114, 41812118, 216273745, 304298539, 206921135, 421015484, 581936865, 53861197, 487395884, 299946025, 488688336, 59814359, 46024561, 319082184, 55388483, 161504262, 410138908, 139787639, 139347667, 212715769, 299766462, 114616612, 514187532, 147854963, 82418990, 261518943, 10280260, 35864409, 128535249, 424622140, 6876326, 1196748087, 311806824, 106252420, 143878428, 68208216, 33856498, 95932210, 45065669, 326914659, 343364132, 1317134347, 628720170, 567554112, 153896561, 489736980, 22306962, 921570725, 75302664, 71227064, 82039608, 294068536, 233238543, 33117655, 487771932, 500373356, 179148617, 558357592, 340164223, 256788108, 297180888, 365423526, 248814739, 29732888, 19638710, 5185936, 107194775, 56248164, 18900602, 70907908, 275400510, 418562238, 970678798, 93372764, 296785901, 141387261, 38147988, 184511730, 127098578, 35983691, 351624439, 132188842, 420314450, 16352120, 78407215, 265864467, 629200111, 361858187, 77948101, 261460424, 118149582, 297493752, 32635203, 865937945, 400071585, 54920886, 349270712, 513420699, 35057833, 426406474, 23685255, 387571707, 236390425, 15915203, 15971634, 761395, 65112172, 749047325, 186027862, 111912666, 449243839, 1030075004, 351258314, 248324337, 10273009, 1095079610, 1056171307, 314355952, 171284412, 71020500, 100542120, 472128240, 624422668, 149425590, 206352111, 148738712, 119910328, 82344924, 87332730, 70529812, 16591761, 120711792, 365136838, 278314296, 49404354, 214067140, 135611406, 37954759, 179769081, 608965977, 171830167, 95957653, 262113744, 809144336, 283673202, 290303061, 729649199, 128855565, 115994913, 44912612, 120665585, 142378108, 351651100, 3446298, 237295899, 83223100, 154765340, 789209018, 87851235, 337790330, 700969567, 24554671, 470060415, 297574342, 176153144, 1397703403, 66521205, 564282213, 557632500, 163420683, 198541836, 114609742, 379254364, 42384974, 95141435, 45951921, 441541923, 1061011058, 207611993, 635255602, 38886461, 281037650, 102667389, 537616513, 290974873, 631001444, 569109397, 28256490, 246095747, 638897784, 454114165, 200828987, 1415423670, 132941573, 778990814, 173512440, 38454093, 48269380, 28948536, 2210867, 123572490, 263244826, 29500344, 555727309, 395682208, 138244661, 8502747, 106034770, 37895491, 102780032, 71039351, 4025452, 916524303, 214552045, 265654091, 127118448, 61043327, 190541838, 174058179, 215520055, 144253202, 11318267, 471088611, 46471030, 151773004, 397054964, 270563114, 223652615, 310185478, 358783228, 104275900, 14913696, 31450070, 149002422, 705860004, 572660105, 230854036, 329922329, 62558227, 330901723, 399110077, 155837329, 171309565, 180418790, 360685640, 28292907, 540708453, 315147092, 118405699, 113053494, 74672637, 197448373, 38423148, 19457456, 305630705, 223590927, 495455302, 17499375, 566764759, 86532611, 213591676, 60176775, 107344047, 289029530, 126235397, 1576956, 91638139, 815116033, 166229477, 184509862, 141117754, 72104493, 310828159, 570515415, 346477607, 51099205, 350485853, 111490438, 535979396, 24043693, 308895976, 519127185, 117626931, 455814632, 696527357, 9430331, 37553989, 194678658, 502183494, 2557340, 208282064, 41453006, 855292438, 258103694, 214792555, 109042962, 262248193, 491854857, 90365959, 481338864, 23967048, 157114575, 19226634, 396007809, 104976939, 209860623, 316979877, 14525466, 574337464, 97884549, 584609151, 101266420, 47114644, 74203723, 37756941, 483145154, 6630836, 2733307, 27934086, 258859619, 392162513, 273166089, 385168315, 172975325, 79463978, 100618922, 444176486, 265546221, 44433119, 497090306, 166252963, 1152304474, 90468403, 203143860, 189291534, 119019394, 462709308, 59548656, 46539533, 326696907, 188498853, 12610163, 4916340, 143394104, 9777485, 612055428, 76698556, 443733934, 286622782, 114549890, 149620785, 148173604, 1144115456, 56281830, 615985036, 1250104043, 187002249, 163634181, 258778166, 138316104, 13157800, 22483379, 132242962, 23056176, 119602515, 604907216, 155856565, 53641637, 495786477, 114806381, 269363567, 114316944, 134397234, 137080360, 190947967, 52619989, 94835935, 380354271, 1156442751, 825653725, 515168876, 143385220, 36277197, 490552615, 116192776, 6966893, 475154537, 246940036, 176593871, 58791815, 1105462, 87527768, 87079719, 40943971, 120029396, 130465832, 412360193, 433364952, 101334776, 264780038, 43302841, 792694645, 343861568, 92396717, 114697919, 70595241, 65867377, 134325764, 358682205, 61288927, 27069973, 239615013, 122466646, 67500456, 150705326, 339485929, 76492880, 2061155, 103179031, 174692961, 819092986, 19941670, 379317993, 1025851031, 873806957, 33448083, 121077177, 368102933, 294780436, 303748342, 34822496, 222740358, 125586486, 498551095, 248278304, 343026917, 465601484, 226168587, 534470912, 220788071, 198077123, 859897204, 43971241, 588174469, 53831409, 107125951, 117396164, 52626586, 23867040, 147026612, 286756103, 10337723, 182506753, 47237689, 4298600, 60948148, 7313881, 36548107, 321142473, 156485651, 438492918, 459369167, 376427086, 52750485, 142377652, 30008047, 280389461, 71957821, 301829006, 192362458, 210894561, 58906089, 170914358, 318986679, 481412742, 137590162, 397672587, 55853988, 232274174, 250110268, 252474320, 1107110226, 133688911, 511546444, 42109714, 140799166, 15013432, 679438141, 89608030, 374392991, 120716126, 486839055, 103458067, 536577285, 387269579, 352925366, 943832341, 142479594, 336924210, 278331935, 299080982, 80514701, 239883534, 595313989, 325678333, 148287612, 92763689, 68015511, 254344177, 550270173, 475584680, 943449607, 518502048, 67463697, 462583697, 370663548, 127782009, 262771087, 296839917, 291624663, 35764256, 405965133, 76462042, 157842198, 277339113, 3125806, 693147233, 255810871, 147816132, 273766678, 2212112, 498046861, 279409917, 114568358, 356233466, 27684047, 396678318, 7328585, 104243521, 38157086, 279177113, 618461068, 29102955, 186942077, 35037125, 299750473, 1768860739, 77038339, 94559223, 295727169, 289916320, 50019438, 159161241, 641296282, 255927573, 491556472, 677515720, 207843976, 60755938, 25803938, 701413684, 63532795, 734793027, 228771051, 219260628, 145470057, 298853531, 21908393, 57782373, 363377173, 63575075, 492292473, 275629985, 17178552, 25378667, 192904595, 177081373, 24973365, 385401743, 406306506, 379225036, 147370297, 321633802, 816102095, 107803555, 100710004, 421441062, 1847160938, 246071644, 1396700892, 25500611, 86401211, 824335516, 399514409, 244034312, 80880177, 57432681, 83981687, 24398730, 131054176, 381664115, 94887687, 988724857, 137379918, 30714802, 18061596, 655943738, 240058364, 44862733, 301876029, 34117355, 288639583, 502269789, 456770013, 253428630, 695899636, 566491082, 44032309, 692241309, 69229502, 602837973, 386606044, 187429601, 243384544, 206917363, 28177411, 520738914, 174685859, 33297252, 769771972, 254828647, 559013555, 1217875988, 237933944, 6608330, 501800820, 284060791, 744124143, 54992964, 217464983, 120236978, 97511826, 64634924, 835161008, 548842619, 228633237, 570533627, 184852707, 171933695, 216212408, 346608211, 122804143, 102044968, 69323667, 333798133, 247292794, 21104983, 225248439, 473590895, 758065775, 80623711, 156450070, 454431892, 1568221272, 403890789, 492484901, 240148777, 151278766, 200492437, 402186039, 1146151885, 270964919, 22696570, 795538459, 240007885, 323196236, 197969966, 171255401, 59143818, 1404717148, 398178265, 687586884, 31327476, 488136596, 614817576, 462975618, 55923374, 344355668, 39877989, 4533993, 292272600, 42319252, 62188658, 175223833, 595738219, 1121841096, 18929290, 176858365, 48043172, 112605294, 80477275, 613445085, 1026832501, 24866797, 503273365, 226059456, 417000779, 33302631, 417931750, 1150259991, 527203815, 221808068, 287545830, 340006420, 43127930, 218054577, 91317171, 110112642, 7425513, 149206856, 28759215, 314961758, 103772874, 98980873, 672747497, 63936579, 11361978, 1155807282, 157017811, 824689381, 107152078, 324888633, 512737076, 15377836, 207709511, 158981020, 263209115, 106389199, 100369621, 47592416, 17126273, 50555035, 172032525, 340950617, 592214999, 260858413, 6450564, 701120572, 851424600, 14059260, 28693578, 16515016, 363352646, 147152998, 33226182, 289678019, 129323503, 46121765, 134888961, 468133196, 31749050, 171679757, 86482444, 334003745, 201620753, 451741180, 637950943, 621889659, 591877599, 66382227, 17717360, 812602335, 133016288, 206724910, 145817299, 7897552, 637551204, 157020268, 836019266, 537662861, 74466523, 15746436, 300135561, 353778383, 69234227, 418320833, 133754070, 118968084, 319414514, 205990527, 719844129, 442010961, 2222045, 62250325, 83565714, 89962350, 393929518, 51522456, 55296277, 288991085, 41140429, 1727886021, 119443966, 88632444, 89603158, 404346093, 99684039, 56827826, 67087316, 3827969, 437756031, 63874013, 459563021, 174156100, 774063557, 425666989, 83319449, 23802383, 44643909, 882031999, 260174242, 23776807, 196049077, 127125646, 10987628, 205044176, 291166754, 219144612, 331153791, 243638102, 65737172, 245447808, 112876896, 105397822, 570129878, 264784141, 29178508, 56775286, 224214382, 20203292, 821675377, 124223112, 89774274, 197594158, 505308419, 69576408, 102038215, 32678039, 17050662, 65941288, 468754059, 307687964, 14033294, 113100126, 442656147, 490934450, 564622482, 66048725, 135952088, 109550481, 222216675, 121039335, 730944132, 635508397, 312382229, 452604899, 88827195, 207888230, 376193808, 505642272, 253823537, 163069436, 66155656, 607047143, 1004541446, 452338109, 552855900, 11205648, 710749816, 729764332, 80352282, 187749130, 121719998, 16035970, 242841395, 50770527, 611192003, 172087967, 40114217, 11836142, 218394337, 324810934, 139859900, 73463340, 251448311, 495520076, 435461299, 592062447, 128826891, 97537420, 178730111, 362710256, 383020746, 161920583, 271923017, 357745597, 83567180, 80002387, 200109746, 778913591, 57147038, 411590812, 159601474, 97545759, 239684233, 11942459, 68551066, 179659918, 82703550, 121558040, 87968035, 226708727, 18324639, 152723769, 445333877, 147355517, 86695217, 120040688, 100485558, 139609758, 293756670, 212427356, 42554871, 148629975, 203725496, 645714866, 83461474, 418369428, 153383523, 64057257, 351151245, 922338397, 289978616, 409790776, 219367515, 326796647, 2182315, 424914110, 339345724, 124998359, 20652846, 91096897, 154812453, 190355478, 27521846, 529124570, 203987716, 62051058, 682470465, 311107047, 551037717, 169459105, 233607573, 94518718, 169313498, 32185633, 62114724, 177294953, 282512089, 132776357, 319359376, 37061347, 118965868, 29641531, 651441905, 666008338, 218504575, 677253585, 165077624, 86116665, 92714581, 204618700, 221734539, 174857838, 418529051, 140738305, 24653376, 19579135, 255814630, 2446468, 188706319, 178669676, 68605408, 24153899, 203358097, 156458532, 59578515, 359308874, 695645805, 244841255, 36758149, 260285778, 348780188, 71679478, 346863845, 273474022, 615581312, 89018610, 219612625, 119128026, 97685279, 245401529, 274361975, 542063963, 469732612, 52683318, 6424087, 658446882, 76703236, 272803769, 688356864, 375848354, 552788542, 609959988, 491074560, 138762264, 110978348, 414995251, 591987177, 82176837, 38490805, 390025850, 268972778, 529433849, 126301, 30242203, 76576596, 616834918, 39598534, 441494647, 1694250, 156697984, 45035857, 279096849, 15986961, 1059134897, 467334139, 22810316, 604020845, 462642358, 169356375, 224072639, 104854642, 111679310, 166868533, 650020190, 181995030, 434123547, 158765322, 129252502, 450976284, 232904727, 609207902, 158770802, 156085397, 610432027, 96280380, 313616781, 211380488, 55543870, 75228155, 215118277, 266245976, 42749522, 783998254, 153395454, 36729769, 196527035, 82690765, 395521430, 25030908, 354478337, 110270306, 142725209, 462885564, 213259304, 104951737, 101197769, 27713422, 196153687, 157852444, 651555603, 27835478, 112036672, 30249144, 208109843, 1159459249, 140711643, 1011377808, 203641338, 242550220, 67142569, 477786218, 963197696, 33365665, 200291399, 45529404, 75356186, 12337339, 146745543, 387588995, 574386729, 44934286, 507876263, 93722157, 345780660, 135962823, 122613851, 10481099, 183654580, 580853530, 70594333, 45391817, 1103688456, 228096812, 81605821, 84995892, 219867944, 145518844, 76615303, 490613211, 385017316, 65994349, 145725538, 355548609, 109449086, 777262062, 592696864, 106689889, 359560506, 16485786, 492473805, 259968065, 64536278, 313999212, 292291341, 746046879, 484184550, 8198111, 346128371, 22140659, 292417295, 837367104, 71818526, 135137406, 201697793, 184399234, 295132098, 484991309, 662864762, 292455117, 301722263, 148755717, 266843595, 26482720, 640125240, 335210321, 415176324, 212161499, 11267928, 199865358, 249944639, 266744745, 601824965, 459696005, 103268224, 218650015, 189232749, 626351799, 109754719, 1034508297, 1081398439, 369485265, 732167321, 65645971, 41445551, 63708387, 166499721, 445819908, 425986342, 36127379, 67380946, 170661787, 215163688, 512713690, 100690277, 165031007, 223484690, 506025516, 1497907, 117515370, 34804984, 253761766, 1115578583, 4154099, 53075545, 14346101, 103871356, 310319691, 832856966, 139297193, 142744899, 743269097, 44373037, 114423319, 625103204, 93997663, 98321628, 121808302, 516160982, 28920013, 181114767, 21159438, 103908395, 11534427, 302599437, 129238557, 77105446, 1223293432, 70263756, 79103632, 26026439, 116424706, 540906511, 468022824, 32983612, 12665256, 562824255, 153971341, 175391411, 233233039, 494184917, 597813226, 83087384, 1360268793, 1177794462, 49623510, 10259008, 93551549, 88898100, 595719202, 41975626, 397578130, 337401070, 168268670, 222238298, 40460867, 505419187, 449645984, 37206014, 21840508, 454852703, 67326576, 52750844, 308380651, 12902050, 93465716, 174216760, 299587266, 174968723, 328173022, 366476, 103618820, 114004926, 83586934, 17267854, 22957881, 54819029, 28222583, 35719759, 168723505, 1267653795, 84241198, 1178622843, 162903022, 177320883, 214731676, 242537300, 108017948, 31798455, 345850069, 46097540, 706324225, 318296073, 23717626, 119532111, 180630361, 127715130, 236188587, 648074170, 523014165, 92194628, 652200703, 699272681, 130531173, 53107572, 1196321999, 168934665, 121572648, 486224080, 111542941, 232364172, 230344689, 252321725, 224573125, 8446119, 493899818, 33541992, 263887013, 680761799, 1018965862, 27831011, 470922711, 284829508, 209225931, 651010958, 3588215, 405799295, 10539526, 244921261, 314418732, 607560022, 272381432, 247288747, 226837745, 395607432, 202579068, 98528035, 1152707378, 276051387, 41670090, 106048597, 67254731, 341534695, 309315407, 416948244, 185613132, 199979665, 285103291, 35841829, 158573057, 128396021, 958283629, 85604672, 9309747, 81385446, 54779192, 13025470, 11239740, 67763233, 134528799, 352510750, 542467904, 406476562, 22784337, 55335135, 214921649, 119620244, 182599325, 90307404, 533158, 272231895, 254168511, 959528637, 118587643, 94263003, 190819462, 249087874, 462384794, 650618575, 351091670, 4282371, 92535367, 160394469, 91513390, 105772787, 333551663, 67329163, 34742130, 186458610, 57660256, 82258734, 1052014038, 444559150, 421922762, 17042825, 1444679670, 25803968, 49840873, 180172772, 127167977, 677333906, 36209788, 1219760566, 596875020, 70738619, 9246780, 137370470, 235856836, 248398074, 100370987, 101272331, 259335598, 116426859, 192837525, 286982675, 303840324, 961553196, 565860361, 212766705, 171903748, 460583656, 447609824, 60376133, 266386567, 248393808, 81894000, 263076544, 157384429, 53518014, 531579082, 461731393, 28448412, 358038146, 446248225, 362320631, 338420687, 241006555, 591562993, 96204540, 58611595, 803825960, 121411581, 222802651, 96453154, 560978316, 66913841, 349282151, 243849683, 504846262, 86372806, 457515166, 295738398, 483299938, 5295263, 12462356, 55486926, 8406869, 145499411, 267153724, 63815683, 88332206, 161120041, 16754346, 4582757, 2695399, 433647824, 354949783, 116008684, 315091521, 9473318, 212594073, 274807242, 42640033, 526565142, 315220566, 6290556, 473088068, 145646185, 123329715, 302432502, 156722336, 55399768, 25890747, 87072664, 61923672, 39647849, 63998649, 72555470, 97323711, 496128115, 58825634, 235765402, 11561666, 79849530, 115555279, 432718141, 441407626, 23340442, 44071594, 75811632, 540168762, 158935741, 270661099, 3564167, 98129810, 105952021, 412262793, 38793331, 366677175, 621997494, 219653082, 735720039, 24703287, 282386546, 64126137, 11600175, 206370467, 50984700, 7485487, 238615948, 387410371, 68177415, 51121612, 216957686, 70144788, 198823415, 117654434, 412852222, 117647776, 78890271, 8517433, 937127440, 324504318, 294683701, 1089391104, 378678643, 362506101, 194686197, 273464580, 71595489, 144952360, 59147398, 49883992, 78490451, 243873520, 37521542, 94147359, 572898860, 97064540, 19968388, 170707821, 18692993, 12176227, 277222072, 124020861, 86066946, 663432434, 346401596, 442788975, 84622934, 349350005, 490406104, 73640925, 150574528, 78603355, 950458908, 728471420, 1407512770, 71969895, 228218458, 69750430, 283672816, 395000266, 136414500, 285140097, 32992324, 202025660, 321853806, 1589227903, 233290965, 394738135, 169350271, 280225714, 452290051, 528173900, 390206109, 487286372, 401307301, 181346035, 278051430, 424751822, 66348370, 71039351, 409870846, 135641793, 178842189, 376239270, 22020057, 176095666, 1209943378, 282899775, 332202833, 132580493, 50082318, 30775335, 422069510, 90373476, 130733760, 181246564, 89366385, 909327919, 81239684, 185748873, 120850332, 466406224, 30674203, 37006990, 290578050, 268417755, 123293806, 15094178, 51627723, 109768416, 90879252, 849391899, 353778583, 398702085, 333728700, 220034047, 78890775, 159938662, 63565482, 334999856, 237387271, 128777315, 462157357, 128084254, 144043736, 833300037, 548483652, 158925308, 682566013, 568920024, 784568598, 8790421, 326733625, 435491344, 47121523, 32354160, 153095533, 87303594, 49444595, 252501411, 255022584, 163141443, 224918325, 26483194, 1016735572, 7427832, 284413779, 70855334, 68264462, 536009842, 778121148, 448007389, 1357926587, 193967282, 752426822, 141142458, 66012645, 445470294, 519690329, 587022439, 154699891, 214526018, 677808287, 593311000, 116821503, 474563054, 1042396, 206056686, 30362289, 50698310, 42210536, 341918007, 126549066, 166026910, 451748836, 116980047, 72577103, 169182842, 108949009, 166127028, 22423082, 7312199, 5798510, 20575192, 209252327, 869086641, 176934687, 190260575, 196394327, 24369598, 135109696, 327942771, 272081480, 101725788, 243023871, 359862324, 41967308, 245608875, 86025927, 77825356, 196987784, 49392254, 341959170, 277392522, 127317698, 205214441, 1601567468, 121037313, 372489858, 107918254, 466945283, 476404282, 30160464, 242052403, 283828557, 280013837, 96987246, 577533027, 628409240, 463474777, 945547792, 95457013, 201179137, 118093854, 255999318, 550432227, 496319220, 190271263, 170829888, 537841165, 190294605, 360676997, 9068242, 69489909, 129752384, 46565936, 191963789, 37104249, 198258698, 2580268, 62766519, 26783927, 491995951, 101469934, 313599167, 182154349, 333020320, 1307146555, 126746043, 255916778, 222091209, 26850908, 657984929, 489481832, 59722934, 87010221, 332165545, 11536977, 204386671, 710153033, 638214969, 11182895, 144608626, 313352957, 4669603, 431754524, 505809178, 86871872, 709620232, 124140233, 90444715, 582344921, 168017722, 557011540, 60076598, 625392121, 32937965, 650331474, 276771505, 73735273, 200328424, 61976182, 23476316, 55918580, 422878125, 89383124, 64386790, 187642830, 105618815, 368133186, 53378205, 71033685, 205787122, 243843025, 682416222, 96138630, 135615766, 195759148, 231277803, 20601596, 271550706, 254080860, 861588785, 509179116, 71811791, 642005476, 374979768, 27854446, 460070767, 135343944, 111032132, 26521445, 115859723, 147380523, 8311413, 41612785, 328345087, 74996233, 134850009, 405658864, 1236161432, 229831882, 3202022, 85873668, 50680769, 307150337, 229570700, 102356863, 791719019, 619923831, 40259603, 235432302, 81174369, 504410032, 152759855, 183756491, 378421197, 55437486, 242130060, 230088195, 107888922, 307009359, 145331913, 307127665, 513256623, 159777341, 228725671, 219118743, 155965918, 927038630, 24035150, 151208551, 210549688, 501960999, 161858911, 167402469, 201192712, 7520158, 202331682, 67865250, 303085174, 296526680, 442128000, 744801538, 194762936, 74140451, 53819009, 5449502, 52059565, 199428142, 113207412, 79242794, 61799725, 385513567, 310506456, 15999868, 857957627, 80448367, 121547528, 137012644, 69226757, 160383540, 232093696, 196616587, 94088736, 8620474, 1098095663, 227447122, 442421798, 192956037, 425169894, 177747242, 712726069, 247449776, 147100059, 57898816, 240587420, 248365368, 64676797, 195107034, 36717826, 219284566, 397069810, 22922707, 19112321, 164248568, 40396300, 401810644, 338488882, 78023872, 692772229, 773453781, 160674479, 187719526, 167007868, 367940089, 205358506, 58177159, 18289291, 25503562, 163369173, 529093931, 229626958, 130755430, 63703962, 1541042412, 232619020, 215261235, 115106720, 209668100, 18929751, 68394547, 506851461, 492383208, 98352875, 294160873, 94953902, 58175892, 156559905, 3936308, 159058104, 122409336, 329400404, 611400595, 258064307, 672808707, 133526722, 619898427, 530965045, 61965970, 1273694195, 102556446, 18564524, 224191052, 326010165, 7193941, 100134272, 8484129, 231575060, 289644929, 228555236, 278806139, 580552743, 147081254, 178825884, 57148432, 485225204, 204182869, 131196759, 87385918, 94044910, 234179605, 133753098, 372971002, 69423810, 2710827, 145108975, 123242735, 648525678, 87898828, 229244249, 623576130, 243812999, 132456914, 65524166, 13283820, 144342991, 201502504, 22205587, 363944186, 55906811, 137551667, 131948596, 20348012, 227282692, 261873885, 3546241, 140329552, 629095776, 43024463, 310078514, 59755328, 351611507, 469054784, 806053443, 328970447, 484999484, 33189212, 20796967, 183339672, 135136295, 135876729, 42140333, 1307111592, 414727583, 120585227, 417617506, 809420131, 592057331, 544305025, 317197322, 21748858, 84228523, 475519964, 43886825, 492747632, 161915088, 653371865, 76369907, 29871287, 16726147, 306669984, 97622442, 207814749, 79052420, 967276, 75549255, 490709893, 34284049, 18967373, 109177704, 82210963, 168117480, 175254102, 1208285, 127671, 494158186, 423391914, 812036168, 352603985, 291032018, 277755503, 444336905, 305447468, 172757643, 330585040, 83874900, 302433661, 260064308, 82402022, 407907512, 150535207, 317568067, 482760936, 925256690, 797495200, 236991204, 64454561, 416406486, 162767376, 8188867, 34981586, 340246211, 75027187, 115636912, 344562942, 75196005, 57003301, 195028864, 58479955, 686372507, 701128618, 238549810, 175426136, 250095548, 448282029, 739167810, 557042757, 72258728, 97720663, 40108887, 389377688, 355857266, 479540322, 114962131, 325462123, 202417827, 732763729, 293051076, 102565493, 39798835, 318224387, 55939740, 520706603, 747444016, 207347141, 106538823, 717366598, 350906676, 240896557, 36357839, 137237460, 196454311, 167318346, 265737224, 554896616, 6506415, 223267285, 184075992, 80807259, 258470035, 270597170, 6934525, 116705923, 65281029, 125678601, 436737582, 182753276, 15752698, 65389915, 447722500, 58157022, 288771628, 369813148, 431252060, 113811006, 90406744, 559002139, 86871538, 387302753, 169286968, 44103862, 653502616, 356587190, 256465642, 208892546, 251765556, 273720088, 516202851, 29727520, 279976281, 171458852, 179839311, 146904693, 228422435, 161708787, 210614862, 35791798, 785013649, 246430455, 111955923, 189319356, 210702590, 78608104, 25798087, 113804812, 91243286, 915753529, 124192157, 14306998, 54295237, 198088296, 894285628, 672083641, 39627842, 78438600, 86374213, 199779124, 30444240, 128307124, 680926613, 106551758, 257341839, 112491474, 281024038, 19223578, 583007630, 398988053, 387347181, 179033430, 533964206, 84406723, 405157003, 253823952, 85224710, 258984628, 328113321, 220494825, 109234475, 21171898, 254203455, 195590603, 244453729, 105392972, 54588749, 177273130, 231656298, 62432802, 379333875, 152632935, 237691766, 303765820, 384553917, 817610590, 5375411, 46370191, 394416986, 634310379, 306547338, 204793472, 40784652, 210794761, 215460628, 296194145, 45382789, 466170478, 90879892, 252323168, 38136107, 260801881, 310266305, 182276336, 586013212, 8539379, 456767217, 19861707, 194055264, 41760083, 87747588, 5326558, 231436816, 256000711, 320638125, 24558172, 101749709, 168067019, 75821779, 23964054, 124533327, 702151355, 259098208, 81011696, 66439089, 675741694, 709163847, 35281773, 181580196, 65312355, 353995473, 262584110, 487732453, 48757808, 538075768, 172023099, 59030981, 308289386, 93009628, 165622534, 229889458, 227593604, 175579537, 44596743, 732535038, 52362060, 1207204205, 77294192, 276151171, 71884305, 109755487, 385444052, 646918374, 325944706, 6137590, 37208481, 261427224, 322956177, 78155614, 32480465, 663970735, 354963581, 178831893, 186900122, 616985648, 116304948, 987032475, 27387031, 409954031, 83574033, 218815547, 119033070, 237746562, 413711218, 80683708, 84714340, 885661425, 76674803, 84185140, 117295046, 70773873, 116947218, 536471107, 593258382, 15534510, 270863215, 392310757, 149475243, 109582740, 393427822, 209001348, 1930225098, 187442066, 401196719, 186494582, 43786446, 36541924, 68029103, 76331163, 646756738, 73584777, 216319651, 4510434, 230128364, 111201021, 86793748, 242428064, 13945797, 85620034, 535346149, 44572402, 78378996, 903165076, 4726916, 41588964, 5875571, 284033413, 289587368, 159814145, 357936384, 150452163, 359488997, 357169983, 720131732, 193468303, 1124413079, 476438645, 132350576, 845048675, 21798464, 13127579, 779513871, 128172082, 17866082, 84203249, 340582621, 25027666, 535443398, 195803069, 120688224, 173583409, 298259976, 121355888, 156423532, 154030799, 79232661, 63833865, 488391958, 663580582, 141015828, 229250681, 113437267, 42548518, 16135411, 6696302, 140975250, 11846831, 518598941, 212059748, 370633969, 307119574, 241885985, 317692610, 16937243, 140106431, 333595004, 201725053, 183740470, 229912341, 424763317, 250111631, 431918285, 168062300, 939786312, 74213314, 623358410, 977516878, 162037246, 361415315, 590988992, 252886210, 17320332, 1084286687, 379492746, 34566419, 1892954, 657571032, 653516399, 253121820, 165318483, 290352937, 11064655, 434814576, 29215529, 509062316, 62832762, 452276590, 36333250, 327104985, 39938911, 681722946, 16278780, 747116512, 38863315, 402855443, 706526782, 412730660, 373018614, 37263094, 85686403, 274396814, 361389007, 109820260, 261569864, 75412528, 61565407, 127449419, 637466077, 33495915, 358390483, 32839686, 200762347, 403112610, 668805624, 127512088, 264828558, 556638072, 57446978, 376171898, 231985506, 22168646, 147710933, 130854756, 389647011, 219155908, 47718405, 317749949, 112794585, 657604928, 227700038, 257170849, 96608996, 100241216, 323618381, 300225409, 97635842, 633077942, 14104947, 63914882, 6174477, 206368845, 106314080, 213977413, 101040140, 1317243241, 302422729, 313681201, 541298428, 257547479, 56990886, 57847431, 319773759, 120998423, 232665637, 166378010, 680832324, 364242009, 629545012, 3318289, 139187570, 173485954, 127028034, 329386486, 206126852, 21649527, 128344879, 493479318, 1092374983, 53142482, 433595708, 1521447, 167599812, 561556555, 97049357, 404100563, 545941554, 1040447980, 65192104, 357544673, 113384965, 45294433, 304413319, 11148755, 195973864, 80084201, 77581468, 55680155, 370906710, 45264659, 59769179, 44718543, 128126866, 230713564, 251843605, 663480113, 284972495, 358607356, 188676826, 130660071, 293611091, 15006164, 133139860, 37212921, 717405456, 156984086, 286360237, 432144443, 50153205, 259639570, 89861298, 194209732, 400572614, 333327997, 97278236, 11410934, 933076329, 217339064, 69791577, 168551789, 164673980, 52264756, 123222046, 488719003, 375953654, 1009976888, 187138263, 45527368, 166512599, 377773012, 209252737, 36543462, 445190339, 306512103, 1369555, 362111082, 551671822, 290359588, 91536908, 419841140, 7956055, 104235723, 97920230, 437915813, 8984679, 118963903, 502112213, 372506524, 655453364, 465225001, 65542258, 124673768, 49289, 108753031, 850684234, 187186240, 16110982, 165381750, 140024244, 197288337, 888755770, 319801589, 135390570, 398137212, 35944590, 43489228, 81532452, 1582814987, 446562721, 214875383, 416337988, 491499682, 553259979, 495265999, 133765027, 284865267, 59893366, 1160972192, 139059650, 530352215, 445841385, 123735923, 1067015235, 219514274, 160869575, 751556877, 16798608, 190967814, 42834777, 65143033, 403879912, 31585734, 651391151, 51314484, 268680479, 10118064, 104937688, 603462817, 409645155, 574742572, 158187392, 103103976, 170718113, 18422258, 47092793, 253720318, 169742371, 31056778, 244730877, 260674464, 340710484, 45702895, 1254128835, 323346427, 337080211, 156336291, 273764445, 199357899, 322167569, 205665869, 361221936, 173861163, 134709640, 282805611, 136725333, 7357331, 154043950, 344287806, 682849106, 66440980, 117092631, 32818269, 207393929, 228091412, 712961417, 159245129, 54534836, 136419275, 218384405, 408906532, 5355337, 86573633, 748849336, 381709400, 345779200, 138044140, 796596981, 121298773, 699685985, 279843619, 279623219, 294242719, 35590295, 11438776, 18185544, 198863786, 19121026, 187224682, 1388093313, 360111497, 343068155, 27151608, 247307968, 80683817, 296516634, 203685879, 329588195, 513785550, 714570435, 3280977, 129573024, 803853844, 9893600, 19424931, 163954226, 383535275, 171368060, 139659975, 552519912, 136262118, 14637728, 196725216, 449035986, 697494429, 99431211, 564232791, 58978376, 36356548, 128293487, 754932116, 537972980, 508742045, 9879842, 65179100, 523367401, 327515231, 369297143, 223293742, 97928078, 303806774, 105611018, 313138775, 126528808, 31225412, 381263114, 480300769, 258730375, 70237427, 73159917, 181226633, 126879207, 10956113, 381679580, 56212781, 335982971, 18986215, 453075543, 650019283, 58211501, 58232409, 245638433, 443740243, 422917563, 271022821, 397425887, 282405762, 24965646, 196927960, 891532106, 134666369, 782170767, 91616765, 23270233, 104148582, 42784433, 239182274, 625878025, 389779538, 460294206, 591976704, 1393731, 778632748, 304307713, 387504159, 38603821, 133613081, 233229967, 320867160, 14243782, 199204219, 598456658, 282725409, 22611957, 152720687, 90745068, 515167047, 23741349, 126445773, 125349676, 13355612, 196185184, 103063580, 24155015, 115596485, 132146063, 1074717327, 753725482, 10956029, 369628625, 190404580, 712972884, 375194832, 161963179, 251327926, 82690217, 109651228, 370395215, 501639344, 8934527, 432107520, 123842607, 300475156, 161091324, 59469917, 30492382, 178890744, 14330754, 57236559, 253086810, 148587203, 1208777449, 37065785, 181950773, 465346689, 69198202, 266466451, 438957067, 49017548, 145193794, 215995590, 301636702, 27064777, 14889179, 36750854, 161549192, 103160226, 63839517, 60088820, 655857209, 75224318, 371043986, 8468531, 671047107, 796751002, 70080654, 6873600, 153284673, 88839043, 905091056, 423957998, 163034598, 325850072, 298607493, 319500992, 200571817, 614014760, 20529463, 108063192, 451129291, 181485599, 268724888, 180042866, 237577459, 311350349, 121891818, 10815334, 376364357, 230719840, 1196759675, 295203114, 461834408, 358935089, 321485367, 179324056, 310949100, 705769563, 81164998, 546484354, 850887343, 68976914, 292224917, 143093435, 304128794, 23234667, 522855228, 61321915, 1069373971, 717848834, 205907274, 425558220, 147353007, 666524826, 8769148, 380975545, 247972724, 42200326, 428818467, 29855206, 343729685, 413881265, 397201928, 92497401, 85134420, 66265001, 404944581, 849580043, 604935586, 10873303, 471284284, 514610747, 3964830, 73278078, 83071032, 316635439, 104240671, 551693620, 609674457, 14209534, 436050311, 53534496, 242658247, 68563126, 27481698, 126400547, 353342224, 159825781, 197594830, 202370986, 216692842, 74773023, 17709217, 20803203, 89290677, 109764214, 93194021, 17105072, 11453315, 56000086, 508887835, 545565954, 11309811, 536458630, 520653569, 15407571, 97825800, 700416363, 705223472, 807321057, 347850565, 175049301, 568603286, 104069023, 327210871, 346965502, 158190199, 153893370, 51342239, 910127439, 336176177, 173667059, 849643636, 200613245, 214906704, 73937220, 531633152, 499163807, 14011629, 628404497, 407561280, 619855732, 197645106, 463567897, 193398940, 36063017, 264232890, 458651016, 14369322, 96665093, 195813813, 404567856, 408222623, 136045826, 506044966, 71654973, 35236407, 93256590, 145751825, 94634943, 80751333, 572558364, 398589489, 907279161, 140676506, 20280434, 62160164, 4944666, 668181841, 79946194, 684857402, 321346521, 46234628, 57060733, 83916802, 146252136, 102424907, 276605587, 73295466, 123740818, 317795023, 379505658, 607952369, 173153579, 625514066, 366126205, 164416166, 7000313, 10351393, 562489311, 19829248, 12636358, 381411349, 241333258, 3222152, 660930760, 294213881, 915740511, 725601463, 234680716, 68273947, 248246154, 7934377, 37740256, 425243955, 12629295, 215075387, 528639580, 313614795, 207588899, 1026303855, 129631492, 11985008, 556682058, 250529875, 785454432, 122752698, 17969303, 961077891, 44636904, 314471651, 421121010, 59624233, 58880917, 130383184, 860561430, 31797276, 13923969, 700670367, 12277845, 269352511, 616535311, 135543704, 142029314, 8335391, 753890149, 163831786, 107565447, 432235228, 603202648, 257656527, 200774823, 6982845, 290154674, 43410959, 128662801, 117905829, 194974414, 158311061, 21208383, 297212321, 578252204, 542902069, 544989226, 22662044, 78089609, 230663290, 57449538, 96882823, 187689709, 1140888966, 309838916, 138214742, 129274140, 26963906, 53721110, 19556412, 96034460, 80789269, 548526943, 770956791, 562401386, 42190148, 933298587, 90436519, 93742634, 115588392, 275361572, 447333882, 210664459, 339283106, 69799201, 149850084, 236166457, 502236488, 79778771, 236671101, 147413016, 160367733, 589770974, 300832387, 54541513, 228792139, 467480985, 101336303, 145072888, 1646819, 130361981, 168721642, 3887062, 934356, 141655810, 595749580, 43283853, 36613816, 697856220, 57242639, 68682019, 224806972, 373735328, 393968301, 9013160, 1056312738, 781912687, 122545196, 470158478, 60835189, 817489260, 76882728, 137534102, 494108624, 298708920, 108768407, 47837620, 183978647, 279963027, 233341157, 187256658, 407231770, 426363499, 82630793, 411517813, 61845451, 45614624, 307040869, 108820502, 476200413, 261012746, 98595735, 136025730, 125434857, 468326264, 151156456, 117191348, 395651732, 428130513, 708520945, 343750743, 184918827, 698957951, 550580183, 111194968, 244202267, 61432548, 77492888, 26339808, 246303631, 232775443, 113188096, 128819127, 126418430, 252071643, 657430825, 233742580, 193487730, 112923252, 291980178, 113162888, 901447904, 944974757, 180689503, 24392145, 210832616, 296638590, 56226616, 17584169, 64723801, 33577064, 413277058, 334248394, 11963003, 139503573, 431529900, 132386179, 119052100, 13875656, 176975840, 855608292, 267061512, 229808944, 24795598, 1567155, 723794195, 372375806, 109736135, 58076825, 26387101, 1757374402, 207591052, 441855545, 339170546, 402545244, 276053789, 81338522, 158337205, 477864218, 105432885, 289463997, 798687700, 525307916, 124858004, 362556037, 82283534, 677792863, 566048250, 261306473, 944137837, 31205842, 107224030, 246334273, 310036252, 145086991, 117600389, 257961549, 49295956, 314636625, 220622416, 2631064, 154313642, 27962385, 223637361, 45069034, 559716691, 62502927, 48190026, 19382917, 10710301, 72790467, 350975836, 357960319, 27156657, 508921256, 68676922, 30855605, 394225600, 29579754, 352273416, 179927347, 64668565, 443653331, 487520790, 279812329, 68773217, 57257258, 3576163, 41156231, 574518375, 228827582, 618800510, 103364589, 146650868, 168188795, 67562665, 94454061, 146990870, 131301853, 32689197, 165788204, 262827821, 240991403, 781427358, 342258153, 156764788, 676927196, 231289239, 867110310, 6526520, 15666802, 58979178, 1155070114, 537871027, 9453019, 269706240, 491168731, 69007598, 279588303, 1073818616, 30999285, 66944600, 267122354, 52297470, 275476006, 27058037, 136915528, 311489943, 195650964, 414344676, 433767486, 348183291, 46514856, 134368537, 146510355, 265471374, 235764950, 111660836, 61771273, 93196642, 121617026, 81645224, 181053530, 28030793, 559884983, 85786005, 354484570, 337268739, 186190292, 128367482, 158237240, 118819771, 115304301, 21131091, 205361275, 1259646504, 50530926, 308037171, 148939579, 154443603, 65776405, 995569190, 654024725, 126777380, 33604444, 108765710, 375179410, 160744674, 147063008, 853415400, 365623520, 205253766, 932465199, 1090732089, 269553423, 500075213, 79507219, 122608680, 220448565, 188735815, 183465283, 376308513, 532826041, 499288448, 474964686, 42257159, 235132292, 371607619, 472882638, 2525933, 735256133, 423995250, 354695290, 505514117, 50129293, 510852989, 711571044, 688845209, 96293675, 116139935, 266831409, 423655357, 582239678, 114515836, 199740649, 83643820, 57248752, 407897084, 270094355, 186353895, 9424770, 37235000, 78802879, 610449767, 343838086, 479351988, 420382171, 97954369, 234044571, 123061132, 17602398, 195464694, 47331330, 427628444, 32328906, 22488603, 279962951, 420517277, 374175322, 320855007, 41252438, 129107778, 73459175, 402239367, 174227034, 387874860, 12148926, 297211508, 93374246, 149484097, 672741245, 106819458, 218266649, 681990164, 68562121, 87710442, 375922070, 388625222, 108641958, 23466707, 38195304, 135477219, 115339280, 93560336, 761404416, 166773035, 35234723, 110449491, 78651711, 557996196, 9478991, 41986863, 1368368, 85992421, 297348001, 176851829, 414758793, 166551436, 619231213, 22528888, 590808277, 458589812, 141087467, 57956074, 179902213, 129433909, 67138467, 74338348, 42825772, 96700074, 105746077, 7749581, 322114447, 301603261, 19799192, 274369286, 582892238, 57931590, 347370753, 588465895, 19197886, 383692729, 9042310, 464021130, 410139774, 161054052, 97672456, 226374069, 656940211, 825363070, 281975885, 215027062, 397610124, 442117688, 367156119, 81199686, 56545013, 336933345, 77684202, 110484654, 4728828, 105606522, 122268084, 167714457, 370520169, 55020871, 514954369, 270164554, 128079582, 232226541, 198600840, 58836529, 24697459, 97398826, 5230083, 549545986, 188134766, 20252353, 56229462, 144983040, 7200503, 237749361, 927758304, 212843097, 134871569, 166471322, 218472105, 236008046, 697032249, 443191911, 298135000, 768701008, 573123979, 412461497, 45504279, 267079298, 943104352, 2448229, 3541019, 115490057, 238078638, 89783350, 212249319, 302508127, 110300749, 101217494, 93926922, 493255320, 38980647, 177730587, 80139084, 47324157, 20000747, 989312765, 164149297, 65018241, 55050791, 3873608, 432022952, 31551887, 227074575, 170751377, 434997721, 60223166, 1045360, 851769906, 477590839, 980622403, 917371772, 241103812, 20086566, 97145172, 562465308, 122721955, 1045040326, 64611736, 306754051, 6308583, 15102754, 454736264, 190100024, 16944991, 347736218, 106552277, 411935310, 721806958, 210048353, 340023568, 318521974, 25639207, 474287673, 82857529, 99647500, 128189651, 64947798, 101164037, 24193494, 424734449, 91211989, 434396387, 131448598, 119874034, 29897661, 82337810, 348612124, 481049037, 68920588, 45696625, 521349255, 8041123, 342783380, 32016485, 25518529, 58460597, 155671070, 262220243, 36688589, 352623355, 112247624, 464045173, 463689138, 675443060, 485999652, 38110457, 95334383, 14145011, 158703400, 38459050, 501875674, 176982328, 734709703, 71207394, 240212157, 417657832, 75624316, 102911823, 124344749, 171415739, 67847898, 69238882, 186853542, 775947150, 24771693, 111749068, 588930957, 86907640, 892489085, 4403391, 2082905, 14936796, 237457739, 231811652, 973169173, 147870423, 332937170, 5602651, 67813580, 633026003, 44935206, 456500670, 39416849, 25131173, 430411191, 349394100, 264535413, 12165132, 425023534, 1606470342, 82510853, 390362585, 971582811, 193941518, 333100247, 16996406, 518305592, 245561161, 110697308, 224907157, 121496112, 26505178, 260782804, 810423918, 299535399, 112846445, 126036519, 37824182, 121423944, 114115859, 10075726, 195905967, 47997491, 684005402, 118016178, 881533760, 281559338, 1085530366, 1839136, 57477668, 349805211, 5373631, 858517125, 324553148, 205128603, 145486857, 192168130, 39742801, 390077159, 507766434, 162114623, 37444685, 769872594, 20875294, 22777762, 256610627, 145312124, 61386015, 368909410, 202819254, 95394466, 203926312, 13275048, 166810760, 162419096, 44368984, 148706478, 512849865, 38874577, 53445349, 422938192, 253798869, 797352267, 374584829, 100786267, 177086202, 50237510, 466749234, 123589080, 310273127, 147056462, 463779613, 453557484, 32293512, 278375774, 278100820, 350380973, 448475885, 244568133, 68161636, 112410016, 610162412, 188653896, 40097324, 30734486, 329637225, 92353924, 204694189, 219841762, 51408226, 166611250, 116558398, 413609818, 142151910, 514433536, 504261735, 276111599, 396753158, 146137831, 3094983, 163980185, 494643468, 234237928, 5670114, 832188662, 69335379, 294396036, 151941545, 10823159, 3324974, 139295749, 37389078, 644329893, 645287959, 84028818, 389723011, 257450873, 220304893, 95507047, 692597501, 355645127, 191578699, 6748488, 197000590, 297331098, 564042217, 122812287, 16758118, 281506166, 205731659, 460832773, 518526500, 126996280, 138238417, 560338969, 22456439, 266978620, 92084411, 192848261, 145300409, 96782020, 294109963, 213169727, 866599014, 229886867, 455573790, 347754553, 757145396, 126884030, 399200681, 254854312, 526246184, 8872120, 272653477, 36620246, 325142144, 82250783, 183217945, 192069563, 291081395, 8173536, 108067127, 195337289, 45300312, 355371615, 40903046, 72097470, 31999973, 151706392, 184128541, 202891152, 176981809, 47460335, 470594629, 157166586, 178511523, 276913878, 670608017, 51484569, 392876596, 155698541, 415823613, 126663844, 171756708, 51240821, 188050271, 688830186, 154537725, 368627985, 152889540, 505584542, 199874514, 193687214, 121867005, 306164201, 76470572, 78879143, 292975829, 119912384, 311232308, 47007263, 273512465, 49735109, 19786795, 168293541, 120075786, 218429402, 523400789, 7289911, 352781561, 126019005, 168861188, 83463781, 373009673, 753128188, 156126693, 78839928, 253491911, 566248441, 327073, 423639356, 348141162, 200563657, 98692763, 491770672, 832507689, 217672181, 26651527, 259219591, 292905799, 202226975, 201692102, 14207496, 158877952, 245520089, 82900333, 217787864, 630432538, 551322240, 234484467, 130133825, 75944502, 429083044, 282888147, 367445711, 178489341, 493232897, 370486764, 27314299, 341200439, 371789433, 593482632, 58048165, 6613393, 59244251, 409801155, 349205737, 187113038, 263728365, 114394214, 660101709, 626805891, 262305886, 336394522, 115595783, 67716523, 1051390300, 284890402, 559955875, 512588819, 1125219685, 2251604, 503295417, 409726540, 289398506, 111781714, 83877248, 186350616, 25039394, 32331358, 927038630, 237449482, 1040995, 649959427, 119718847, 805666602, 156744090, 24585617, 60098423, 454804339, 54211454, 534457741, 341192784, 440886228, 231493275, 456941086, 403793272, 219125059, 171295845, 284609937, 46213455, 163721060, 291162704, 375536509, 1179245269, 19511260, 26424302, 79379141, 103131961, 718379127, 123801010, 9767324, 196063955, 34835729, 788139219, 264332400, 460834865, 39731969, 335993107, 393705314, 825660123, 609746266, 268894703, 300309865, 326186458, 63477838, 73456352, 176129706, 195292778, 333326046, 576280692, 301743823, 665160282, 211457785, 52149655, 628268407, 121313620, 5061718, 640713627, 308056707, 803375393, 7048369, 340117330, 65493877, 42875557, 143289388, 496931980, 338218763, 215067253, 97781476, 178465646, 188791834, 806848322, 33824830, 701572632, 284762656, 107095906, 48767401, 576733612, 501981028, 263725211, 390441662, 84220294, 91957412, 16603498, 57969199, 764962730, 50646891, 64265385, 509647366, 517516401, 649751548, 560644365, 104017764, 560326847, 396999594, 356357667, 169063386, 179938157, 9407727, 397564436, 980714624, 91127616, 344695333, 493367633, 884617566, 35934094, 49965529, 563486419, 379751223, 387696159, 187706616, 85159635, 408581762, 422929369, 108234963, 1000847657, 356734265, 77989196, 743148453, 109039698, 518439633, 506342914, 63263014, 52060087, 345914821, 351915766, 289217424, 57115587, 66318401, 156763584, 334729394, 761399380, 351658760, 54612370, 409168455, 317117356, 99364854, 323569093, 226911685, 18436461, 167656953, 463295721, 110817266, 1402463521, 121253225, 145490918, 340706281, 27894710, 298050819, 286601310, 53562711, 200170283, 78271755, 133061365, 160603131, 347170301, 546970787, 31214767, 294099767, 24893243, 215608682, 127581335, 404373213, 8359538, 221832480, 220694847, 171521956, 259816451, 81168412, 420349529, 311366959, 172362187, 254899406, 398132480, 65595275, 1007422220, 57060567, 736837783, 465758648, 253041538, 240609588, 1211979, 579103051, 241457095, 41650025, 109358622, 103077807, 3616618, 57481060, 1119040090, 509813195, 182456691, 31638128, 127013858, 199210421, 300511416, 744205718, 1486117549, 93328219, 787465879, 205851034, 350012782, 49684456, 43191234, 186930551, 130829539, 555076134, 156348402, 19445162, 320654257, 14299297, 291029319, 160492068, 309756516, 916417, 112398061, 5210403, 104424271, 29435065, 866401944, 15232702, 325464830, 162233875, 48838553, 22238043, 347367228, 238203721, 389147413, 170557329, 573523393, 165661192, 1559271, 119309456, 127391295, 45023603, 251939861, 387159746, 401990235, 13846061, 481223895, 172188027, 510173352, 74968619, 299121637, 205614416, 76180917, 385711263, 96784176, 102625996, 539912061, 81937452, 125258272, 225754858, 167902948, 207999189, 135602998, 56843319, 36611570, 47425740, 290462935, 380637850, 124378494, 144039008, 537526227, 370708724, 102752398, 172355198, 192742895, 26604632, 85377265, 26540113, 102027027, 35216389, 24190586, 1188446592, 140017550, 22855764, 372546203, 164168792, 136827654, 121879686, 169879315, 197351545, 728266992, 729321971, 443242565, 21979908, 554204073, 309277767, 73868744, 89151372, 156528210, 253720594, 321276060, 15242703, 119826042, 4300591, 202104869, 260238143, 31357252, 433967493, 167010219, 149223002, 299853152, 94885661, 47718726, 471817049, 128052548, 290867521, 90073877, 201012604, 7224438, 376438433, 13110554, 330979824, 153860798, 519930629, 415378584, 15970637, 208384784, 401766994, 111683502, 351569533, 131599060, 414589447, 412991592, 183900776, 214844723, 17371876, 537596425, 141383943, 254465714, 106800996, 235601609, 90136023, 125894977, 369052992, 32119456, 376184761, 45876020, 42426535, 88491017, 54468636, 618562695, 21467900, 274692271, 23788715, 306766508, 149857074, 41288532, 67028250, 61221175, 70608406, 322678284, 111464658, 390143521, 71240189, 484923633, 102366453, 94122848, 160072838, 172901603, 286914035, 200272889, 16359823, 763461483, 618485262, 217110184, 436021838, 138135467, 333869912, 799614068, 308465171, 277033271, 244415561, 190564057, 89794939, 307962508, 56360665, 334249326, 228696660, 141793941, 293089867, 216187661, 524235311, 1135248, 18807099, 491259924, 238261035, 130373804, 39041615, 10264893, 251357846, 208632793, 100252525, 295240282, 176639430, 63889644, 67277389, 90083977, 255570525, 307341067, 1087412923, 12503329, 105694338, 233045903, 216636283, 252613106, 3005631, 364930099, 19555401, 235796350, 623289981, 356147460, 582912487, 190626029, 179304685, 824563651, 114822396, 466293814, 24358105, 70769505, 252657136, 318489439, 396933400, 683100007, 31326239, 688156, 572927216, 108238699, 9844196, 183785448, 385284665, 5040464, 91789359, 24558525, 245214619, 240514680, 320706026, 252771304, 23365772, 194704881, 768689717, 355119847, 1819962839, 231145871, 74400037, 178710417, 203221625, 110911956, 99636761, 122356104, 226678809, 677747938, 16829130, 112463230, 239204392, 50313845, 26259988, 171170975, 77623797, 37136645, 337498450, 3531934, 42933100, 1395134, 507228088, 368593437, 113721479, 93620670, 29797040, 150284695, 446190492, 427195191, 47555432, 444587419, 125591586, 139108683, 11971170, 630788315, 364588913, 28897172, 84731639, 17022632, 5967310, 22329686, 44283050, 119861196, 1882360234, 75537127, 478227297, 1760176605, 125939603, 212679071, 383106749, 198299826, 96029085, 251991056, 4691647, 278824645, 283104849, 549229689, 20867896, 166383099, 295271246, 72662562, 5277111, 11176626, 132656560, 17491410, 780533552, 571791000, 48450728, 895717223, 767197479, 735768305, 422320395, 26705458, 12079815, 421156968, 24825247, 559539008, 207677098, 166805313, 50400210, 95243652, 354922691, 66795590, 286402677, 372964001, 540287461, 98683380, 260816350, 313984859, 394028409, 10124253, 301741015, 206944114, 21739892, 450563946, 115168551, 396338976, 318326211, 81688345, 357512946, 130713316, 59182835, 201900285, 175638351, 1242409609, 19116875, 225635318, 539238061, 250988768, 406082084, 10130385, 635019056, 193220180, 1531759, 99767213, 3319729, 551968559, 258349552, 129269404, 99593538, 131641182, 145853301, 1127575328, 300384566, 184455690, 429831881, 6043953, 83947591, 74105496, 89915328, 375290314, 264534334, 70459338, 8157569, 518903370, 67070670, 504002060, 50726942, 484167924, 162662648, 814518876, 260233189, 30958462, 64436883, 264290651, 145918754, 68664372, 185241106, 10225097, 251308620, 218431219, 51106186, 400946879, 209503952, 503517270, 85378224, 24881963, 257895241, 91693434, 107407160, 623579144, 11596979, 327575344, 571956413, 461177856, 220476943, 28979724, 295671520, 353817193, 744865670, 548562575, 152122966, 98330378, 349218948, 278770343, 726030106, 42700453, 551230365, 53250023, 724816127, 69450269, 358245965, 517483738, 916848, 87636427, 160311489, 6579994, 32923338, 18627988, 100999545, 57745056, 339254986, 29543522, 613874936, 245076996, 694594677, 164698074, 160175342, 111855407, 752050295, 39047855, 63687695, 124834925, 156648085, 750495373, 4850952, 126251079, 482637253, 272751042, 217427932, 194537107, 539433035, 92641675, 124053288, 546349322, 103037296, 459888904, 601378402, 54108289, 584711772, 835504706, 126641039, 116692738, 16531974, 6214804, 810819332, 354360429, 70098359, 43298835, 463360722, 49730392, 8926812, 9075072, 209035500, 172865618, 342229047, 98550354, 244868456, 97001424, 779882923, 623139773, 458535437, 220125518, 764731793, 56189680, 150394950, 2485371, 379695554, 19735075, 57151853, 277023778, 400122707, 102045125, 366414477, 482832610, 111183636, 157669139, 101848942, 225896745, 241422056, 39791675, 359608565, 263920805, 675919436, 7466718, 507550824, 131933237, 23281797, 159218507, 315738064, 7718389, 115335856, 80365318, 110034693, 10880682, 159307953, 193466647, 13469334, 820222006, 235746085, 73918765, 113569315, 30559031, 97789127, 25196062, 314776898, 277577046, 204854788, 1666671, 876086645, 36450957, 598248907, 159593350, 186721223, 220423058, 68067704, 115746993, 795474519, 98462520, 211994696, 131929375, 23482293, 276999670, 279519931, 146248201, 308727963, 496940356, 728213987, 353802451, 210926245, 83193309, 343061603, 590566381, 125776882, 7270025, 1034389289, 17910355, 146002997, 192913186, 458971639, 128874134, 131778596, 333611468, 474794485, 590452538, 5384695, 14739772, 1182447337, 925772211, 30934303, 204866246, 29735017, 57430819, 52451991, 186185350, 120229668, 529484015, 25773117, 93709940, 112185727, 271115078, 221094299, 17466227, 199820034, 308925162, 488726794, 188095545, 370174686, 79958596, 388427423, 224852810, 131475144, 44466920, 7363925, 900357847, 419159666, 12899937, 390865487, 403968513, 387031798, 559704165, 100300731, 257427620, 455397290, 72836308, 538153085, 52519034, 27844053, 843753880, 171628876, 56062233, 111944517, 408783174, 77753084, 539474490, 168172019, 488463993, 33737031, 64538838, 26950253, 575558751, 202299341, 70552993, 411188628, 97578422, 58623116, 104472598, 28297739, 333592772, 28388551, 254082866, 109702888, 46963101, 1012627293, 44303628, 42524928, 495835499, 107439243, 1347746305, 430915557, 214694641, 53888035, 40537374, 108501291, 152478976, 377006084, 212202091, 5325627, 553096841, 190646344, 534631568, 188111557, 414078283, 26694072, 9846062, 25592016, 10737261, 119133172, 752326776, 372791400, 62302830, 95602504, 24163827, 33096671, 86929348, 1157485864, 81737041, 33992775, 17983826, 79345589, 294752667, 256490696, 154584608, 441092861, 319840646, 259387377, 99413755, 74596673, 273616740, 715654674, 185769251, 187510176, 152910512, 90284031, 113870529, 66231056, 35818362, 130459329, 230994265, 17830163, 578016041, 204136982, 121437912, 340128481, 280699688, 132199340, 327645386, 649539302, 190304750, 394209162, 49035335, 51415085, 38460413, 116924187, 350790822, 475213804, 965791795, 10627902, 461370027, 119856120, 935007255, 103587033, 253577575, 44234048, 117351066, 843972982, 124270532, 175047549, 25367721, 319628996, 92572541, 980433916, 1011592822, 286119771, 316488693, 263620765, 12209965, 42278117, 90008179, 95999758, 663181469, 59968000, 67848140, 13471366, 216330828, 818810479, 264747001, 86063321, 361436053, 58595266, 129534487, 164163300, 194939341, 1372381242, 252360553, 258859408, 808878113, 349840289, 27630396, 11250489, 50896655, 132462850, 387010800, 43508009, 423355266, 163375192, 198962119, 236900680, 247054628, 443457603, 585118611, 82810274, 2302039, 31363195, 101321033, 99690654, 447628173, 314203784, 235766177, 95550192, 582667249, 918192367, 379740508, 43788595, 331964571, 122499393, 393668663, 290001546, 497223570, 541717576, 160446436, 4285617, 1329950, 64437805, 658051586, 429855711, 145150044, 154345172, 130336417, 391795899, 75660822, 5403757, 9037368, 678253, 565960257, 27051654, 100674497, 154791380, 413432178, 278466882, 359251044, 298862848, 120338497, 183235051, 226815998, 19750041, 252396912, 111416601, 175443061, 161750123, 833338339, 304285946, 65596166, 864678512, 596255160, 37576713, 189757437, 15914576, 102059808, 274121208, 468217348, 99708362, 140783473, 524590349, 100692269, 90687447, 827673728, 125688891, 172086235, 179809150, 392036668, 63611033, 640823746, 37121510, 162464524, 174785399, 795968241, 17616730, 457701630, 52171335, 82457308, 198006728, 517884278, 176197593, 70233486, 183199832, 119912887, 358565703, 215661728, 302984155, 126971164, 127207210, 356665431, 412613523, 72171606, 13192788, 460388317, 747754078, 50086232, 93195769, 149257919, 746767731, 78182193, 23259753, 453827237, 329272141, 221323420, 192813795, 196245512, 36812240, 313562649, 410238882, 281735709, 210669990, 3439038, 569413074, 10518392, 125308230, 122125722, 111127913, 429243589, 364086908, 338288042, 204443754, 86605099, 323657728, 107266338, 499024063, 273377458, 185863062, 39705700, 451098884, 55265340, 40028638, 609420935, 372164706, 500893953, 62131437, 81715749, 121423987, 109421241, 812291155, 42663979, 354511919, 74960385, 640604429, 120438205, 8298040, 88571578, 348548783, 123783087, 471459734, 65941254, 24091024, 30912074, 74349963, 414320299, 154774704, 24168262, 51170101, 311092420, 959424267, 357133528, 260161860, 31430574, 268603730, 124298339, 836942144, 237600355, 269138141, 18896570, 685176695, 108682398, 887087122, 138702088, 105487557, 550431183, 388784777, 117873387, 620089288, 73826897, 172041646, 349551203, 164538873, 98591627, 236211948, 323349203, 495494912, 396561393, 205340104, 387636542, 164374269, 189634288, 185886721, 470790097, 257690877, 38006370, 59071287, 104003408, 341094342, 232213343, 132327898, 132613926, 289810417, 116660359, 423252885, 1131503092, 68008110, 98347647, 25017648, 553741749, 212685236, 99815331, 115362877, 376265439, 258270080, 731817738, 162440236, 165422661, 328870536, 1202054034, 68098458, 654148119, 183525956, 171488088, 361043429, 529138059, 248741092, 310390662, 53900208, 20011679, 3428162, 227241068, 63289076, 300029407, 299187334, 374021513, 140076032, 277328779, 16184703, 75054771, 195360520, 117327709, 217015940, 540239252, 30649618, 50785998, 433223089, 99710424, 128655648, 189942347, 95326763, 116962408, 146102578, 209924280, 468331488, 639198169, 44130755, 52544792, 241248973, 108914893, 1665656469, 249749707, 284108128, 840825067, 7328860, 105476543, 330571520, 53880981, 932771023, 194249414, 148910173, 71703320, 545803718, 1053169480, 28511571, 346898052, 620693311, 281824283, 9738123, 88829326, 45905830, 23230832, 129753951, 105622396, 263594248, 62799791, 71155462, 402837505, 38849106, 229140163, 525681308, 38223406, 706620092, 192524863, 25051948, 326238944, 486635168, 211739545, 581161907, 216871503, 16786749, 100005513, 417183083, 304258177, 10850354, 591036313, 138667033, 757816749, 208105764, 155196933, 947406066, 158035438, 198126984, 117284242, 196254434, 606948239, 221954020, 185979018, 299877598, 320793720, 20627742, 88201414, 231844567, 372584706, 421424547, 295577692, 162347577, 265989238, 64333466, 24558201, 718983165, 5996323, 42622068, 341665792, 323340876, 55384590, 118842046, 29361208, 558997831, 610492036, 210014131, 502275717, 25451732, 450086340, 59907929, 118730522, 331153514, 386008815, 522620385, 37357546, 62689916, 305543302, 141621459, 414707953, 150911203, 60541128, 60750687, 268505106, 232246754, 144212637, 169416363, 191683225, 154556964, 256101257, 1032907388, 583541432, 433717103, 110074292, 1232771488, 303048896, 1076631953, 88522671, 84862149, 20156642, 26476113, 170963530, 150791980, 214979761, 1078796197, 9685186, 306684624, 56663970, 337008605, 490775370, 346870002, 601084717, 418402723, 705771424, 85968755, 33394270, 25867453, 363722856, 264963798, 87422349, 118489038, 250026657, 48155112, 636097074, 766156754, 44921655, 108094670, 692741032, 54377041, 247659049, 366794094, 87175160, 20516162, 688713174, 230777798, 437414703, 854619726, 1631100, 1385693233, 147145196, 501090739, 341328022, 17699640, 270510091, 135265024, 24201543, 374210055, 179540372, 472920617, 36651353, 389491181, 727576328, 176570240, 713373008, 238253861, 50910932, 479370719, 296131602, 501144039, 4249806, 84737417, 111028722, 11340276, 26098231, 81508376, 258383007, 609168691, 930826797, 262675011, 273691587, 40224084, 170175271, 30444871, 811419890, 514360933, 187708722, 10273037, 116929249, 360689241, 255647114, 69849897, 188638826, 94225060, 333317683, 54259618, 579112569, 577945995, 4152409, 215876057, 174316588, 405740996, 227565028, 454959398, 461489979, 142835509, 470362453, 155103010, 99315262, 425955637, 447750392, 320402024, 308348222, 7968830, 437576475, 270016614, 573839392, 98496961, 146313334, 1102772416, 12713015, 9386544, 64186035, 95510840, 107658917, 299356111, 176781339, 885901549, 97428345, 75838728, 194618459, 408907394, 6945241, 484754678, 244881757, 242427269, 76615446, 51106933, 9164495, 98021345, 338989789, 241509233, 747855, 137166707, 261544758, 441415687, 409812274, 78298561, 532373917, 60886207, 72455559, 642334627, 1139482927, 59094068, 840865689, 101972074, 547135601, 55625329, 87876259, 51353290, 152441317, 210336042, 839260868, 62321384, 127841558, 96849320, 434563395, 126402954, 68284471, 235312503, 307096482, 763171916, 52327675, 309451311, 25378992, 431584162, 181339283, 553838502, 433413921, 117085697, 466732737, 10283970, 2832497, 445681618, 1102524315, 337194631, 36142366, 515205102, 624645929, 44737918, 7460204, 23568207, 158101270, 353369157, 92405541, 228027441, 410307821, 26237640, 793168845, 2087179, 303297628, 127345089, 801472196, 247582139, 17177665, 10876741, 138051412, 96309007, 290403773, 60941276, 138619295, 178277729, 1211812110, 47504900, 93909364, 965578170, 563500437, 49866763, 229217388, 406270654, 19888648, 115646824, 535380073, 195081937, 22944782, 627701362, 487336340, 537671017, 1528399851, 412802366, 260566947, 147115615, 650142664, 103146349, 6610614, 971970749, 119274668, 51561520, 6267226, 392352201, 36220203, 149207417, 78452047, 534841530, 110309454, 94591143, 235823037, 64780859, 168667344, 46434583, 364338784, 90540571, 190870234, 117673991, 435833909, 111197609, 80257643, 274286568, 818451251, 79041610, 51173219, 228915171, 148711150, 23792440, 599453754, 59242577, 440794966, 125222362, 231507646, 195032639, 76290928, 374981829, 394338246, 31591411, 25201664, 18569069, 319301869, 97292892, 88824990, 247875244, 425439410, 225318462, 527911721, 43607368, 34070813, 59641898, 140894476, 190185766, 44202397, 142453352, 150679397, 172436068, 487180530, 193891102, 32834013, 9614619, 19236987, 534408602, 45638105, 135067736, 128254484, 138800527, 43003888, 612936385, 194110026, 72836132, 335325070, 855807354, 91948338, 1421361157, 99588131, 23862991, 100139496, 50025195, 71908797, 151159992, 123709621, 276772634, 747213766, 84275074, 436811215, 123061515, 181681058, 274750908, 267227808, 117819756, 148185632, 159497730, 66242118, 233232975, 497642955, 114356069, 354141034, 361357132, 75422447, 76307228, 1017340701, 852312145, 829771644, 4274543, 324587235, 82465447, 28538409, 3492661, 153032674, 23617799, 157324030, 215631158, 173459111, 37396051, 226523337, 87991952, 75845422, 445921234, 296410525, 561653992, 48517551, 26129326, 20332549, 130072196, 147006188, 293312324, 175167946, 45006048, 139119095, 345799154, 43675745, 129121934, 151274003, 29690339, 136071360, 38114448, 33576243, 76104560, 42143945, 95922846, 107939121, 110383878, 513969801, 441660984, 169007557, 50318929, 483511550, 335393794, 1064149046, 187914119, 110848257, 42481057, 113395490, 46678412, 87720938, 390155693, 466791396, 380912410, 679999746, 69719208, 70384557, 459000427, 119357565, 290741419, 691149128, 379300458, 423863720, 418633348, 374091376, 312214941, 25384480, 477674510, 6695724, 315434939, 131232515, 181715180, 531908144, 67243385, 823818011, 240334952, 346566719, 11012518, 359432049, 457250087, 59834486, 388758388, 235546797, 6548002, 85004845, 78346862, 78240281, 187180095, 20130311, 119859980, 652079114, 366224817, 537732895, 328350469, 205086819, 257565487, 134096206, 262885352, 159599431, 48789517, 17756505, 483471230, 139998150, 699456899, 438595504, 119766232, 195723026, 87518656, 137175522, 1055251, 27137471, 114930661, 195519967, 306135986, 34543673, 417316335, 307394549, 125557816, 10725611, 376533486, 176619526, 809910585, 185264390, 114479936, 139432129, 407760456, 893158389, 212384716, 139600320, 47015386, 334979286, 170179774, 1453146235, 34096110, 41747006, 432534795, 69313068, 141664364, 21972595, 126616387, 47555304, 688643690, 345897585, 305576232, 248279929, 500598351, 65580434, 90147928, 915962706, 1152798, 415990579, 59058676, 326529066, 9440117, 211193475, 30934363, 453874989, 190826457, 138878333, 936899349, 145217216, 537865851, 55700965, 47355633, 354282154, 22319330, 878567136, 866624759, 73037721, 417737993, 23784931, 137376067, 165674329, 218855460, 473430490, 17746754, 43923687, 423707140, 27565243, 540213946, 429341903, 269548001, 17705346, 186977683, 296142605, 251737785, 119341947, 70925458, 538862926, 386258933, 804507264, 89484858, 126745225, 39692411, 158155069, 31028633, 904555194, 45426724, 457206891, 61182096, 317094613, 625439844, 248918261, 44781050, 165501866, 53705732, 907597042, 253543403, 990524704, 448561945, 68713016, 197795933, 158335704, 91811351, 396200118, 531929563, 613251507, 37490766, 26600868, 387423329, 275392272, 422502074, 426313303, 4843080, 714710054, 73989940, 36471221, 277391918, 42038093, 317268909, 505708316, 488708725, 243300011, 60150376, 361688448, 438230169, 129220788, 328677950, 48105173, 29917616, 195916994, 132645032, 126255762, 334119098, 305507611, 42570190, 229136129, 105951583, 87066093, 144760667, 489138083, 295092204, 63141334, 269826650, 309902181, 588140134, 262072482, 220491529, 204041500, 195138908, 78477038, 128491619, 29194279, 244537024, 107303649, 497242051, 43877880, 333752897, 213875329, 101505546, 223699492, 453814864, 327490680, 757993439, 201284629, 38219754, 484700453, 28784045, 62323450, 529693656, 196190982, 12505523, 201475040, 349601156, 149907932, 871108631, 121765710, 431448593, 197705819, 610312049, 17911876, 198749222, 7020648, 49242773, 546241468, 117842948, 2897586, 5451940, 453335803, 98949359, 109500626, 128610828, 35506697, 416519083, 19379253, 282929733, 296934755, 284620555, 186873088, 263097288, 194044369, 392624991, 297807631, 11668714, 75388319, 503097184, 961268, 252434101, 134652405, 85643374, 189622755, 164909613, 211145254, 204047642, 264437985, 47529508, 586994706, 130802051, 54050435, 325865525, 317882648, 82906767, 478846412, 457211903, 434969631, 281826584, 65916134, 66599046, 97154655, 340975187, 499502007, 457806952, 72250577, 81941349, 252221142, 175964873, 523870916, 254687880, 25420391, 78084439, 270039515, 243916007, 165289314, 52915172, 564052094, 483232037, 112020618, 193566335, 66844930, 85188096, 65581325, 659970529, 90428323, 428203013, 175907539, 24779318, 159093449, 158929724, 15543982, 185627281, 659868578, 620011954, 102538589, 43747740, 652840940, 701511093, 267774768, 394618549, 91130255, 343215235, 395512995, 685399427, 18577641, 1036833166, 508276619, 316935290, 451100469, 750783898, 62159725, 409529974, 63590655, 50608965, 320479963, 75543244, 932093135, 699064635, 22917532, 48234937, 125244746, 39891536, 292490949, 9738401, 415338473, 350988538, 55247301, 322572206, 139184504, 456210446, 170120222, 316519415, 90864753, 1201492039, 255966438, 28996560, 920664338, 64108890, 210606626, 408061277, 44083235, 372551581, 222729280, 31504098, 298079338, 2468953, 118137535, 273903445, 308867047, 154618700, 215767252, 438518630, 105234212, 895279630, 492609338, 31729684, 317790287, 7187048, 446922699, 27833691, 240656693, 7777737, 420146186, 265110637, 4651440, 44873266, 351398422, 1123501259, 32719003, 85810653, 193947489, 83085591, 397290711, 470443436, 35936856, 157062141, 485010275, 176222744, 477008093, 83651995, 295617739, 129722744, 20209602, 361838139, 27087284, 655252594, 512335629, 418791595, 312411539, 142031638, 271833438, 7647287, 155370273, 51984427, 286156326, 61573308, 21905976, 38593035, 746939896, 57600101, 140511309, 161747181, 165066751, 707236375, 7518585, 108699903, 124541736, 534457151, 451956922, 806460335, 568156290, 70237078, 22972238, 815541388, 945346954, 52618161, 255088741, 226880869, 338144014, 13611342, 1069573034, 116881076, 21662389, 49756078, 202140776, 354622048, 35087444, 118040887, 541671937, 16795008, 213699127, 6233156, 81409330, 379304538, 810734040, 91642973, 25191020, 19706329, 620874973, 283539704, 5754324, 407158233, 574739146, 29246717, 176065975, 246829600, 88640921, 26614651, 50604687, 367711850, 41685201, 622359986, 27941265, 67164667, 459021798, 126717679, 325775075, 762754715, 353545336, 102857122, 372856207, 7997590, 112051057, 3316169, 413801370, 11190787, 13730936, 262493454, 31768962, 809012558, 86745090, 571822177, 352945858, 637492333, 354248399, 64127876, 79604771, 385755880, 15258756, 52225949, 190517001, 790835803, 21909354, 250757960, 668699939, 278663365, 353194494, 259774551, 237727298, 64014662, 747990889, 110811871, 74207439, 7619228, 115838686, 401411702, 456141867, 43221126, 136999362, 303492623, 28167125, 302411632, 219373593, 232520958, 107980779, 10815558, 208636998, 237909911, 434542530, 243016171, 388301606, 99640380, 92467131, 240226674, 293992923, 62795246, 72692368, 135899664, 230960883, 467515757, 118875066, 82184748, 650405037, 245506823, 92586678, 2749958, 126231058, 522578443, 46454402, 198840925, 205213288, 80291925, 790864924, 493841009, 236953692, 87680819, 570556338, 36356824, 256109133, 307960141, 170735404, 128083649, 1316116508, 385353913, 340916299, 140034148, 946707591, 840945105, 437080921, 212923189, 202408470, 47289003, 220199156, 156062880, 191051701, 511808465, 161001233, 268872630, 331074073, 119103928, 45514138, 1278949735, 122000857, 29304286, 479805432, 812734779, 37518115, 335298672, 21869542, 367101526, 135216244, 94680087, 554118186, 39446075, 16391551, 240819321, 210281394, 404259545, 213550456, 26861766, 105827528, 470277780, 1375059, 581770581, 83537277, 193860868, 178284352, 168839939, 42689784, 765915010, 228788362, 14151746, 728888043, 749885039, 626653703, 194124576, 593409167, 9167801, 69470679, 338822052, 201087767, 124926142, 3836873, 137257826, 79789430, 20471862, 1315506210, 432385709, 512185784, 91779458, 277136285, 698200048, 33141313, 281015244, 220182024, 37982681, 47851062, 423229764, 114471218, 16230013, 177632290, 680483946, 31288986, 48798982, 526882378, 3556523, 306715170, 185136116, 425536078, 287544733, 65062193, 104441105, 403860092, 1022053717, 170920650, 9564738, 14114821, 167170843, 235200364, 282744649, 186865011, 69284920, 105658722, 258065781, 561327673, 269386925, 184960421, 10880990, 51678940, 500639074, 503516043, 288931853, 193805218, 843294471, 228904717, 125627117, 340093029, 78935149, 259999600, 81472484, 290008584, 484671221, 108488504, 154877786, 450660174, 436683087, 67305155, 254832393, 4149655, 439380358, 3398257, 195254830, 8977019, 110711539, 575544776, 287783892, 341468787, 128651443, 320897322, 604667858, 982120497, 92903021, 96666017, 179932070, 1630622412, 560682943, 253142773, 167589037, 567554779, 70484014, 347670633, 91248038, 452826413, 16211934, 348088928, 265675756, 253042227, 320260640, 1227774619, 263825321, 187201228, 607673, 594814362, 89439717, 24900194, 398941419, 760044476, 218375867, 625964531, 131309120, 161249326, 263638397, 305372852, 187322996, 532214411, 303453213, 127668782, 171871563, 40950381, 1652680, 326593398, 256923200, 93572698, 196291798, 301378201, 5667154, 605956061, 9113282, 339417956, 269385461, 288903029, 924599174, 130079344, 214388165, 77740425, 67039931, 20115034, 57398172, 403655335, 345036496, 232466643, 1020169613, 27478813, 80386902, 175524660, 861375425, 309464063, 524849112, 152048274, 229131339, 536749913, 579632626, 56602480, 638393834, 44147081, 254892815, 302976188, 12929005, 279111578, 41268591, 150331733, 14889406, 31456498, 449861769, 116626078, 120647997, 9244724, 50973210, 96856752, 448004113, 608599611, 267351253, 417903735, 1360238963, 272598261, 4748472, 324681335, 104333465, 560351741, 38654565, 607971497, 180207124, 5068857, 483075506, 135451742, 673732499, 159369772, 462039508, 905659331, 26553300, 889797411, 41397565, 43039336, 20706020, 837067741, 76828935, 54788278, 1226220828, 147079397, 179445392, 214073934, 102833261, 33750637, 24461825, 16697950, 188380667, 29667763, 385304175, 469934872, 350476344, 277585729, 170859361, 65996580, 142327744, 97859192, 120884231, 107598310, 375602526, 54496982, 12176171, 243135276, 42803701, 55658883, 181945328, 941225418, 595935879, 362804717, 45087069, 571436789, 47765290, 132904751, 52918507, 70025733, 79744157, 83020082, 91908376, 384549193, 124304993, 432383424, 109919087, 28178096, 57586694, 441404846, 18322771, 116863319, 31993834, 52267007, 308563359, 255483388, 30988499, 173435139, 63173057, 1287384, 142336092, 324951313, 987850724, 96871231, 57059206, 564182719, 722862184, 117500981, 4498123, 31654679, 235509552, 85815938, 36034956, 261436892, 410493190, 184071888, 50351114, 34100743, 113288743, 121527855, 301311552, 141757342, 338914447, 414979002, 237506049, 43195302, 43368142, 157851332, 125270600, 119329888, 160173684, 411931947, 444682231, 50831540, 24545641, 187352, 13845326, 392260870, 29346205, 18583654, 265201821, 312378877, 24985444, 375678568, 99635944, 552186234, 1657770373, 69975249, 361428934, 112438785, 241690146, 143625523, 186517329, 16328014, 802056974, 485957973, 838560582, 27921903, 88550334, 107072624, 61932293, 174878333, 32302382, 387154182, 282758888, 799507462, 192955101, 160417597, 168180658, 257083331, 195216554, 26266294, 97244491, 117294713, 242538890, 120783179, 985284275, 241164649, 240525925, 336362849, 308694559, 728645610, 36989952, 54648760, 362776510, 21896393, 5586891, 320649736, 697068992, 13754641, 7092383, 37852926, 201917314, 587236513, 605330000, 53240989, 236281848, 140636024, 266731766, 14012110, 397321373, 604746514, 41761149, 21303714, 76831401, 360507078, 55573056, 67881496, 108192261, 201068236, 745574289, 386964385, 63038415, 452806109, 791767203, 806504199, 275437356, 925939482, 135316969, 224734477, 4926292, 50142980, 321940539, 212479007, 16097500, 112392879, 173034031, 276879690, 185132852, 29750042, 318200759, 84720008, 370176072, 237257891, 26888321, 1566194500, 20670821, 89046511, 931424716, 139746704, 219076727, 285708811, 670188874, 391216420, 170394818, 538087723, 168384053, 527582346, 481259526, 531452702, 149473837, 246005994, 407249637, 555941028, 605721149, 490029350, 65336939, 124201835, 70417984, 166734965, 67966199, 300449176, 354792810, 958424752, 2333800, 473506921, 339128954, 23192316, 526460371, 311093618, 72600532, 144917999, 25194057, 45085482, 724373862, 98788157, 5391953, 42685095, 49304536, 247150529, 2405485, 242479132, 805176289, 207250685, 169775060, 501269256, 35897301, 152367767, 894188758, 118090436, 607025762, 739130727, 403721879, 266247713, 640915206, 414386524, 61957144, 125655066, 545987515, 451202367, 443475391, 30124274, 70493508, 612604799, 81104313, 652458994, 61861776, 7903661, 16333177, 34920831, 267456869, 454876523, 338616698, 233485895, 117403107, 728976071, 51574889, 175244717, 32893145, 40189286, 235250269, 3000745, 21026966, 120415460, 132067419, 353323804, 608200367, 112788334, 29978030, 389230367, 45798039, 291476180, 259696775, 39294199, 220571373, 266222673, 13257534, 193967337, 288086772, 519439649, 271641372, 91508407, 299156406, 28762651, 258463426, 399851481, 411136473, 422794081, 78645954, 615790151, 306210226, 236754997, 288502335, 378381079, 791091360, 426155288, 72250858, 240724997, 40061732, 25318395, 118771132, 94020067, 374705569, 347383090, 151676492, 16913741, 117681897, 69538077, 230050624, 3518389, 23493660, 866904047, 13840436, 188257878, 446357358, 296346637, 87659273, 242104392, 63212970, 88526553, 74272567, 593061949, 541465040, 618973893, 134605287, 222113252, 157696622, 267124750, 45192574, 234731039, 169762024, 81137759, 264551667, 67067189, 1159875065, 441296457, 8316867, 25318749, 9563959, 117477819, 29187665, 541878993, 101505115, 622554515, 124552836, 555253223, 102919189, 281678976, 169326007, 201692102, 716742922, 164364761, 145531585, 212018941, 30255964, 449850724, 30953371, 214860322, 157165815, 82230070, 38546579, 289766488, 85613461, 383673785, 572079635, 80750680, 101822973, 651826971, 27734792, 115916189, 3951999, 801789169, 65953814, 107293000, 511417062, 110499563, 60941646, 49909498, 1171375910, 145896703, 321354075, 294681126, 562947070, 33232502, 64115366, 353617684, 303904688, 104069221, 89306139, 545991824, 108947720, 48449153, 202337158, 250482165, 300897763, 141958198, 256105299, 1228191181, 19735393, 335071676, 111690501, 23991263, 291608912, 98278577, 47871756, 81595598, 277259547, 32734377, 151732751, 128170610, 89100863, 564910774, 12651609, 46691764, 364610107, 1849947, 596947455, 146479685, 21394893, 688870366, 91837466, 46346454, 24819123, 459042577, 389021487, 385715216, 1027242611, 36901821, 374323915, 428652608, 239202101, 493226996, 267858707, 189555, 42789974, 210223585, 81852521, 208290870, 287887586, 157069755, 675928426, 756546297, 103942237, 335814945, 506253176, 17740445, 342334729, 179951486, 71161481, 428378259, 142390655, 198484982, 837451569, 186049549, 25351022, 170141724, 2880247, 19001226, 114091960, 386133223, 255646975, 309586518, 248309173, 75618090, 310187609, 185631784, 417063734, 319896678, 10657032, 58138154, 40256796, 329223909, 576855133, 62829539, 146433919, 175574323, 85450622, 40831341, 928644613, 78612601, 311570563, 36943927, 402179794, 133094814, 126987922, 540724348, 251891352, 131625578, 308644038, 832331730, 614510411, 94774448, 131699401, 77402476, 92440198, 20308661, 371798119, 472872636, 393537459, 206690007, 396065206, 287069791, 74959817, 285453922, 538485321, 292847614, 576309867, 584048631, 216485797, 512332552, 40594418, 73774632, 350133840, 667539816, 128145081, 516376640, 203693962, 1194645072, 74203015, 888214799, 315838862, 588951666, 2500950, 22214714, 40183642, 13477801, 44349698, 272082589, 562956251, 297454969, 51334667, 135734977, 106146881, 145166225, 14223572, 57256660, 22911188, 308502358, 21963185, 270824267, 205453073, 66320325, 262606458, 3201397, 578475375, 977944, 539098024, 48161439, 1294838588, 519577978, 36669047, 151835946, 365964660, 581330155, 192269589, 268045607, 730819504, 142582306, 83991230, 447909545, 22935776, 156957447, 843032482, 140954691, 528625923, 379437130, 115204667, 314922797, 155568115, 149723828, 20742760, 344645412, 134800904, 321767812, 356389258, 87765269, 160680242, 246424539, 57058276, 56809051, 61484185, 103198192, 261673301, 798316051, 819953683, 574860911, 233178260, 585638553, 93682120, 507748460, 159020530, 126808892, 11029299, 138802508, 204602362, 619975998, 46947657, 574381027, 111409365, 246163434, 16093624, 143481453, 104847938, 161937611, 529343380, 16108331, 175652140, 16492351, 140406217, 298998957, 77340630, 254141666, 360824169, 260743022, 99320780, 316213402, 188194448, 272845453, 232388669, 212514908, 72131568, 399953412, 689698013, 86654399, 52733332, 61630038, 695152811, 111055029, 485005860, 82513700, 312204462, 602481389, 149503586, 2917856, 26899953, 9904156, 456490819, 230054925, 27036572, 970323627, 1459663799, 26648029, 236132296, 177225386, 337834551, 276272930, 51757346, 926016395, 88488441, 187668051, 194330790, 195049237, 87285460, 55552388, 208863848, 61350016, 133603146, 168237521, 210274519, 1004143081, 351770013, 70364914, 548233777, 633871606, 1229942592, 904754260, 764001335, 441849002, 91772884, 414004855, 406762264, 9169495, 570526882, 32400313, 195263330, 113541982, 188639368, 155916970, 100835076, 413357799, 316046759, 230751925, 13886087, 339671492, 387162585, 111332380, 685402186, 629217737, 439043022, 64523339, 569874730, 89610916, 57433080, 185507781, 56409216, 54051420, 64281141, 568764289, 359471481, 187421021, 294317599, 83214645, 89852332, 212295726, 36956680, 433791938, 596080262, 269362762, 1242783497, 820588750, 49160713, 307677069, 202471811, 908682880, 137132612, 11412558, 97907085, 19642811, 781928995, 31515599, 89761485, 229293059, 41412254, 68492681, 20443386, 108502417, 45510926, 90534402, 868676008, 602140456, 206798789, 264448984, 642801591, 462756559, 683172176, 10234968, 124583064, 221202654, 298255655, 31255207, 193862250, 237062022, 421586127, 421919401, 215925496, 757239591, 481962296, 524448467, 382392384, 201531962, 932737218, 421456933, 28988516, 31882992, 4648736, 51865277, 57510225, 51027418, 63391888, 44742675, 453477513, 369465597, 201825408, 171700927, 102541106, 160499439, 191447811, 154291129, 3073504, 710374022, 212613156, 85977852, 194574732, 24583587, 18439566, 18972616, 7613069, 618992746, 700717836, 415553225, 52190930, 277161837, 232423570, 87830867, 188353051, 113513956, 60947171, 158271606, 195881965, 143212399, 245284159, 22872396, 644376960, 560047975, 216860544, 69056130, 20713791, 449330862, 292766912, 24035384, 363232023, 860372712, 30701890, 79804535, 12911119, 51464343, 20573424, 465259177, 465067239, 370670596, 253192061, 133799669, 747695778, 87776213, 278101577, 89352530, 70295913, 25489571, 214020962, 277131386, 154656332, 128102683, 216247610, 101087353, 307590855, 201743607, 131833554, 183146985, 758508354, 67409275, 72297521, 618571837, 107560679, 74251399, 789212065, 78289865, 101726259, 395007398, 21256350, 17772479, 37201974, 466879714, 61566521, 454519154, 512178728, 509404992, 504940462, 22971507, 313553585, 42172841, 347389847, 36450250, 199766637, 7458217, 156012090, 62235668, 217810886, 231078438, 324504228, 75391981, 212935235, 310893709, 42064309, 564214123, 704744837, 492841214, 567165918, 1276034942, 119518494, 326434044, 437190083, 72649191, 201509271, 379891772, 14669367, 128140019, 117949147, 281132420, 63263014, 12250140, 424751430, 309401837, 50529533, 18831286, 333765741, 120099006, 6258296, 4254306, 746006240, 346068634, 2413881, 178407462, 46424116, 44889829, 31785007, 483291165, 364613344, 360715480, 469639181, 510321359, 156962553, 127594936, 24639752, 340813181, 39067788, 590685605, 503953980, 181285536, 207495787, 15745610, 205908025, 22742583, 362801502, 329717984, 43304197, 60273798, 454832830, 50673248, 65609807, 187441850, 277926594, 68695853, 357965004, 437063552, 36811963, 505910432, 273118192, 259319234, 109765224, 64295398, 170427738, 404462220, 240197312, 218987494, 75724026, 348265800, 58335670, 26145304, 65930718, 355166412, 43555016, 187014694, 452847588, 594801317, 846770368, 334398462, 492624644, 398779388, 578937352, 15825809, 86763188, 202215628, 8565761, 3413834, 22754942, 640240949, 252157198, 169474548, 201154943, 777337839, 306802450, 367556632, 171173972, 5640561, 97056910, 339110344, 369512379, 76189902, 445915014, 335725112, 1061027831, 330649064, 890990710, 210842154, 114615954, 681905715, 79508049, 55881687, 157157234, 590115168, 1353971998, 341069665, 48911689, 398419382, 175709523, 76455368, 306907864, 488297596, 167570545, 844256462, 409594904, 42193509, 325562668, 647656, 660494694, 376919718, 169438364, 291301875, 409864, 7208803, 35603291, 352154778, 356205637, 24736251, 86239708, 23037485, 380365675, 87992139, 84544726, 60135094, 49534102, 3266195, 296304701, 23388996, 413137165, 43225793, 22282431, 168736339, 1156680192, 210788227, 50652078, 195619642, 154596258, 557340143, 83839717, 116639052, 127192551, 357817966, 386404178, 127851110, 386245691, 585666623, 523897184, 75757342, 345139502, 38227863, 106755245, 69976015, 46991017, 114267634, 150974933, 21641962, 119283207, 27857215, 47090682, 41795619, 1460882346, 73865598, 119467005, 352056218, 204345174, 203342294, 76534502, 947857750, 44934222, 194978133, 104770512, 203543911, 269187, 482788501, 288641865, 387382297, 170414468, 195217054, 2616290, 763865000, 136167234, 24196696, 50462531, 98369410, 53676190, 247006926, 130177156, 208450427, 159743463, 211482808, 152098130, 57402228, 205023261, 208521456, 688638453, 18618695, 19854076, 50399627, 10325476, 977547602, 153673488, 31054608, 188931363, 154150850, 316184371, 653850780, 799107279, 47458606, 52485086, 329630901, 29463793, 229977522, 209427098, 86445510, 574270423, 344514403, 263462132, 4030030, 3045186, 20558992, 98999349, 157487986, 3952380, 496210098, 353792923, 745232677, 645010358, 215533237, 522592737, 319315892, 200271813, 11380769, 216294293, 405773613, 69029641, 75554235, 316054252, 51900417, 140441454, 546666561, 267822959, 80713693, 57671570, 50974897, 205553677, 466288172, 277420815, 46884100, 490029850, 286069740, 1083656356, 42774705, 505186592, 367161600, 359746641, 232889961, 308439507, 135385191, 38006061, 208638282, 25830566, 287852442, 107583121, 134168323, 55112224, 218528083, 273263246, 563671119, 354224793, 424633761, 183608507, 32006687, 14929758, 154257269, 90186164, 110515162, 2542598, 712256752, 75830894, 243729795, 108892903, 1010408320, 365718173, 53654979, 343768422, 70339970, 384440693, 139457897, 264450638, 275434136, 317773011, 168770314, 13132174, 6545004, 527933400, 71329355, 233533880, 76197139, 526315018, 17227264, 418808843, 117560372, 51496536, 498729479, 208508731, 62692662, 713244031, 214068451, 583468514, 51946083, 42424365, 66590274, 44496510, 273137053, 43382561, 262044621, 545662059, 288644933, 7748227, 75088182, 95892955, 170779776, 332969462, 114866907, 74785011, 103202529, 107440124, 228154268, 224255725, 56260742, 270339251, 118214078, 210628158, 218947926, 796623080, 479136910, 193849704, 264570438, 129068223, 137357752, 435715771, 86796345, 123422675, 326651221, 661031225, 195801454, 106343638, 203917705, 695229010, 29453698, 401824196, 68547705, 229451532, 72005978, 104260304, 224152317, 217021302, 283119184, 40080556, 545879396, 493249925, 198023174, 976672309, 38270116, 22216435, 298130517, 900372444, 112389043, 94761037, 26839041, 181262806, 506624888, 124632768, 526922513, 215764074, 9443120, 36068544, 265325996, 224522688, 13968078, 175597660, 25694855, 6639806, 436227213, 106127867, 114109904, 123704046, 571445588, 368249260, 190363170, 372292957, 237473083, 8100571, 171551200, 169604336, 523063334, 41382720, 152517777, 59768072, 155787157, 201869421, 314891477, 91491686, 280564759, 95170248, 239045485, 308342211, 50858466, 905754161, 77108773, 67834212, 158473344, 111929854, 76413758, 76857278, 144326446, 112512128, 258477136, 12435785, 24946998, 557173866, 425954062, 148201017, 283821988, 83614019, 599020116, 191562643, 46443264, 105934654, 164467382, 245410837, 248004774, 610303704, 271547384, 77726118, 773362338, 982610592, 731026704, 33254833, 755375821, 723141130, 111465227, 130891385, 5891595, 109883068, 129730839, 154493046, 304445526, 392927, 177019751, 194471844, 262824962, 7250967, 753753958, 87052950, 11702248, 233297559, 205814454, 60414288, 636847621, 363610699, 432979184, 80153485, 273497444, 55055174, 191237340, 234736896, 46710579, 57310923, 159407346, 28206988, 35731565, 415901585, 71564087, 42472598, 551610418, 122170741, 235394428, 95194165, 122790401, 453195330, 451481884, 361403450, 494990441, 187150014, 4540409, 579347841, 23168026, 95975155, 482644546, 359340610, 11669247, 270599597, 1478172471, 150844381, 225847303, 78604326, 3461307, 350065788, 158581102, 165708616, 230763212, 227004967, 1524812369, 219817835, 338911126, 257516371, 694269694, 13589712, 663025925, 11003568, 536601854, 174381550, 406408844, 162788198, 1047098751, 211444625, 24592854, 17313317, 501682661, 684491044, 213529403, 271734137, 97804468, 211125803, 18475394, 556531341, 429908171, 472028988, 247853820, 75265176, 10025815, 705769563, 222584013, 9076655, 179144065, 7907587, 281882965, 46806306, 21914335, 101117476, 59958099, 315504319, 421024115, 349993105, 42364102, 396155140, 85812390, 71396310, 234296008, 542938179, 45353196, 37646659, 188385324, 62993945, 147981834, 227060064, 23373914, 946369976, 136454038, 153049195, 65004493, 153334474, 120818079, 200985077, 65587940, 244445722, 217987511, 256388540, 380574130, 270143698, 710438006, 328868160, 20668501, 169969149, 153157552, 927903833, 73846653, 330816833, 60573621, 227237376, 230382997, 30024888, 160635213, 22498382, 101555662, 556274505, 136933858, 42600737, 499872949, 429461123, 233705584, 443127837, 1072552029, 316209740, 109566348, 59355637, 91871369, 595436081, 221588829, 426627245, 85958587, 181320610, 187256551, 114861225, 865306142, 742135387, 102180562, 799129407, 134351976, 83362290, 83934416, 940093471, 34663927, 340592359, 430195286, 54748314, 112068172, 786342696, 108002574, 730978057, 366441597, 654111586, 181167847, 172770416, 116886884, 229243492, 300047630, 276378057, 64586842, 71896586, 55620375, 179624956, 172669322, 313832209, 235657143, 54243650, 126048153, 281266104, 570013831, 392766997, 293256052, 43278648, 179034110, 413559821, 256991087, 9208718, 340387746, 328394712, 1054072366, 13730965, 132008111, 172101371, 333018186, 265167794, 793192552, 17698292, 60539816, 123715622, 162939863, 144265791, 116713593, 275863107, 283329979, 470984621, 22348648, 72371361, 381244452, 60899712, 269791225, 131410929, 954807689, 95202049, 89812156, 62112964, 479959424, 619322883, 1202370971, 215137482, 117536705, 339146236, 115452582, 181489399, 56769117, 443973500, 34015840, 585039092, 260351263, 103890606, 79439618, 21185667, 178152698, 251912689, 168613610, 39557410, 54631913, 93705030, 34834812, 315129464, 184799695, 378295697, 21785188, 65828508, 435577964, 120769540, 50797902, 270787164, 3004464, 47143760, 733799385, 32514521, 264541742, 89890750, 249668862, 456406000, 494689569, 346058306, 161763020, 166656544, 423820889, 331167894, 90715447, 87746806, 18304320, 186894090, 144310500, 1732638113, 211127100, 207023626, 313766716, 11575482, 11404155, 194572737, 2168567, 499104523, 564512089, 709353473, 69433336, 590171044, 25283028, 47740628, 373723771, 167901994, 58515137, 118527566, 8376597, 10259817, 22809147, 177269182, 76642658, 558732816, 757444320, 205624752, 44917816, 377308476, 412670337, 102853854, 375591649, 107346690, 248808025, 56846935, 34370379, 278613643, 329021651, 36836534, 73101508, 108594323, 15767814, 168559786, 942374737, 605765756, 266339430, 343248402, 119923923, 468028195, 21963273, 133136113, 253425732, 641610499, 261669245, 526508458, 410920509, 222355106, 41374014, 311016561, 102737598, 302734883, 1178221, 459670266, 1577253, 118526647, 2811501, 36163804, 743709, 168019680, 707534, 74078433, 429295133, 16518185, 329954168, 392273949, 326198403, 23865338, 180578229, 448648747, 288434720, 225452595, 811737792, 84294586, 173799609, 229136760, 562962153, 2325379, 39659238, 392657211, 318495418, 61148248, 157882845, 159240271, 6323369, 59522351, 438017218, 408976977, 105472685, 217674718, 76258294, 21192406, 211421140, 12429684, 39113806, 78132270, 221411289, 237575312, 24128935, 14153783, 136814023, 366287322, 123159690, 115926235, 385741421, 499735081, 694677502, 131774955, 247024240, 446551387, 631000599, 12261070, 386022610, 27600376, 181857843, 205115981, 94437765, 12325338, 17950647, 123968970, 115136067, 100378517, 158427085, 602079250, 29956330, 107395425, 604359842, 295401835, 668223252, 350558868, 168912202, 17956904, 172242583, 483619045, 144105902, 1115169538, 305490857, 24900842, 34496020, 8036449, 279888848, 6875197, 20679026, 141678880, 35230775, 101405734, 316748630, 49354182, 30634453, 380195996, 207173544, 163739091, 19301938, 353419425, 27940490, 689444023, 17091197, 1356090922, 111127060, 348587927, 344293614, 440197122, 421231347, 776759368, 274965697, 835805954, 303604896, 19157752, 422167947, 429210516, 27798349, 155644896, 465089858, 50833129, 244935233, 318344489, 179241713, 92382288, 532578606, 242615826, 13367349, 43202743, 432001881, 540181412, 570524859, 614976995, 207299838, 765694882, 274843634, 562557619, 145182544, 31839254, 308399704, 850326292, 15604176, 20155282, 656902676, 176640156, 40865909, 328589925, 88189782, 73524122, 603323301, 512061157, 46954116, 182230181, 212029586, 135324923, 411350374, 140990183, 360889753, 233460272, 97901944, 208032572, 58431963, 55313726, 55402309, 355117529, 562256581, 471399269, 119389392, 93689693, 751350414, 11526272, 78128248, 365729077, 32601435, 659667614, 68803046, 1061045, 123468125, 78833879, 1292775839, 81928782, 30091421, 44376774, 188329877, 283456967, 213359608, 9994692, 444511622, 91049224, 257955514, 32700325, 229881810, 450198050, 13563028, 385093481, 93869985, 699459080, 238727301, 284986154, 933648844, 86903484, 157815521, 941474229, 393224827, 98535629, 579107926, 1421848526, 100068599, 381664, 77036837, 96930619, 82446797, 29444052, 61186614, 195359908, 378681724, 374467067, 216482670, 100963414, 416617533, 50353672, 150031927, 121263894, 353960450, 174218968, 35926821, 401551486, 44243290, 166752400, 52759274, 34646884, 360843008, 261823547, 25643489, 190480595, 714561975, 345417457, 77766533, 74154499, 346802088, 76993527, 93007198, 359625372, 116979424, 184274093, 79053645, 523275183, 1576360997, 443911344, 50377474, 413072248, 349552388, 114667262, 43261901, 62909337, 228715036, 6103207, 1125063493, 346941257, 178225008, 47861264, 503048741, 68229778, 205325165, 310915761, 176036287, 167805827, 141547403, 353948810, 162708117, 38951441, 1075970550, 183785768, 554245757, 23388791, 1309450133, 36840814, 760075908, 1224948711, 741698130, 31942610, 198876061, 143153780, 165324098, 299357584, 261326156, 9087401, 318424734, 117911744, 189880478, 706926375, 83435319, 117106708, 44453995, 434419678, 416234326, 269505727, 83224161, 59123877, 32621137, 170164594, 108607881, 27170885, 901626924, 61886891, 53175499, 328591112, 23114977, 545914063, 319235821, 391925214, 1068687039, 66300634, 53631573, 56411203, 273773526, 436560890, 952123260, 23071094, 638142069, 174631730, 2841748, 51428252, 232967697, 650930554, 1002564502, 123190357, 211439373, 1266449236, 223892089, 140678047, 165681693, 279394563, 188306597, 148911529, 514198834, 151944713, 37924829, 308909381, 96272964, 230113814, 161155561, 8474958, 210136307, 268698519, 932300735, 716200374, 54647411, 755963786, 384585295, 25726346, 48976211, 197151782, 82917442, 368854565, 151714800, 1242368403, 534234919, 346746889, 1068073600, 150444687, 38340459, 56635295, 466726627, 130766178, 256915860, 303349314, 224198663, 183984507, 30968765, 256892793, 460525592, 220589322, 279545255, 31701921, 760588447, 121642322, 11519211, 35961531, 97492874, 215366062, 900940816, 171092924, 20039185, 1040103824, 912582196, 188046377, 936553619, 475567158, 69770202, 322407102, 1982044, 31385914, 590897770, 478204501, 183907806, 78548569, 79726274, 17232731, 185082192, 122293907, 304305878, 18521954, 301395113, 20503298, 52638506, 256794117, 154646541, 927627311, 180518849, 181184453, 197100536, 162782586, 332761673, 240696173, 54025353, 303463024, 498920035, 618449241, 79175619, 462348277, 245466429, 3010979, 720458552, 180010268, 240074252, 51976380, 181091788, 505846813, 73038707, 1206136474, 880445873, 293340104, 15324229, 130652864, 359804066, 1077185112, 315946, 693652560, 806057227, 73351801, 144084413, 170672129, 317696906, 556553751, 447110890, 262905937, 215158662, 285702196, 199605778, 217440543, 173684387, 35492634, 224257148, 45676417, 120139403, 45983906, 108507163, 245847438, 376332289, 103163576, 238447731, 167710747, 1106664164, 133786059, 244854287, 170634415, 125912784, 245641583, 41522371, 105412332, 489625344, 98456167, 210567392, 88474669, 53687141, 29151486, 632566658, 354095752, 380802929, 52685474, 9882683, 1089229579, 13889196, 115976346, 40230258, 142198183, 190533759, 66712220, 382446830, 2833935, 207940704, 114839772, 67897051, 84955516, 180183645, 463047021, 363372496, 534245722, 49922688, 580630009, 739841670, 379414181, 57248055, 69618050, 10253346, 125448436, 22300515, 315331946, 517097614, 236750588, 546221751, 273376863, 225767556, 296053627, 1226977145, 163566633, 472031013, 75892286, 302807028, 237453773, 1382318, 891072332, 308854662, 69678525, 71951329, 50816942, 430434806, 1010648047, 411579743, 928312757, 252911414, 169915306, 172238912, 214730779, 158440937, 80614360, 299509919, 200130225, 806870013, 86331296, 31751135, 225408208, 658111092, 150263175, 72348303, 627658520, 580458233, 17737491, 43553091, 99469586, 136864570, 45179645, 85761027, 23249156, 37966540, 190722100, 79175872, 305079028, 71485949, 416345711, 279957391, 240898269, 79727141, 546664298, 595911410, 161033070, 37051701, 222658821, 1008602788, 22215735, 237445971, 24788474, 135321190, 186576491, 82733177, 128570869, 44516598, 43683926, 57521599, 14037593, 62664048, 240847895, 61871883, 70172747, 301923391, 24171434, 179176035, 305081621, 388937455, 342474293, 168924440, 47158959, 17049747, 171620329, 8350040, 820341727, 689961014, 46659950, 82650332, 280666617, 1173008641, 513058521, 178172507, 37898180, 116904975, 372469753, 81048071, 78746901, 619439944, 162189321, 97743032, 522196945, 424299579, 80614758, 24461766, 170132060, 113795420, 229123334, 609779836, 525981691, 11871717, 31961235, 5471363, 514982339, 235828595, 430916359, 440333445, 79545990, 329606065, 19798325, 631768646, 156988229, 688991991, 132707078, 229354115, 6696550, 40599258, 483790866, 87765157, 417946269, 10100755, 235484187, 278976914, 477375736, 497845604, 176442168, 95939501, 743732070, 437748353, 782150982, 427292230, 504777087, 16032551, 223435505, 323765849, 133104598, 121544657, 79055844, 279829153, 459715646, 105984528, 215767972, 81698098, 1639808501, 315068255, 486717428, 395424447, 477474602, 146363895, 13672912, 123489981, 164033296, 129231866, 4064176, 91300838, 979190325, 75490716, 110398821, 650366891, 13587198, 89272296, 330229504, 278152036, 25098189, 5727421, 113925962, 175645013, 38503043, 246598571, 36648769, 822041818, 302123180, 150119866, 65192275, 146988921, 542568984, 14471037, 57371379, 321988103, 171837346, 1248677302, 18729402, 304508534, 34595121, 476898453, 913238297, 26756345, 466789563, 97238746, 1668427, 555307392, 109581488, 166565464, 196378928, 148282016, 70788549, 254871169, 630845170, 122084390, 880395231, 407204115, 102991906, 272663929, 846792391, 205122321, 442827676, 467644004, 109558394, 370716414, 85167745, 218108472, 360709718, 24617509, 71781942, 527873740, 294995921, 60348202, 326144749, 181312698, 78510949, 331809666, 32212780, 238523438, 678576240, 268294621, 3563052, 44250318, 75433717, 294522098, 195573248, 836696581, 58285368, 235702547, 112330215, 44421875, 33911926, 43571308, 347260623, 162336618, 614116832, 1619313145, 381321443, 130934576, 481390318, 1334033300, 75816617, 186264371, 767836329, 321145226, 361400252, 58674950, 140359210, 514468385, 204659894, 21138497, 178033195, 212355938, 1001924445, 174588311, 872252643, 74316042, 54002604, 45647301, 469787759, 199367433, 15827830, 317246853, 300878494, 410118497, 42703600, 228121300, 202078539, 284781888, 329414598, 31557201, 279448991, 820398756, 253645864, 110738383, 282302397, 116086897, 205182501, 440476901, 817014059, 454701503, 267100426, 154281495, 120995727, 117592651, 292507470, 20178027, 243658394, 502024749, 69738108, 50391497, 124060191, 90446783, 536426945, 422075459, 456467737, 3109077, 32283824, 26713108, 143339795, 460601570, 61797258, 16793236, 197859765, 455756271, 42691483, 679678444, 666086005, 150784871, 172999051, 545014169, 75785144, 515979626, 14965149, 118619044, 62742813, 168537807, 150701091, 438794462, 16761861, 288317299, 1002669077, 52936456, 316819748, 492893069, 341503368, 80307094, 246269297, 480598314, 116998475, 3835729, 284348502, 219723852, 465120828, 688788615, 35601115, 943364830, 498129604, 417583927, 43110783, 103017989, 139828399, 134601697, 50802767, 62802267, 373763523, 37141701, 301592858, 53634654, 730427612, 177487695, 237937330, 288559979, 291764074, 88426041, 76377078, 129417997, 207992198, 243591668, 892289961, 598696782, 253198886, 122180643, 59830326, 53991017, 91485269, 105108979, 620229951, 38142480, 530290273, 13531549, 59744127, 83496240, 57182311, 34414409, 173441644, 770768044, 77060801, 615841521, 35686919, 722028663, 129589772, 334467135, 239857621, 424132318, 363012110, 237242884, 695032654, 7884587, 54333227, 589870271, 682908904, 209756926, 787643, 546861860, 345993519, 92593424, 764196947, 125560858, 50846203, 436468357, 50378154, 124920798, 458774207, 121050038, 73946165, 93791892, 15104997, 180922880, 57909607, 53010325, 147352217, 105639345, 274180690, 384875521, 543014068, 37270959, 114970040, 422337613, 46349996, 203601389, 150856812, 473138747, 463647158, 152239990, 158715910, 93841388, 171924120, 131959655, 296476535, 278389556, 755174453, 238088869, 4768528, 381922688, 809940206, 1820109, 435013600, 1556463, 184505752, 366417630, 726998974, 295888449, 19467904, 104167377, 52565393, 745047819, 59774210, 200526146, 174863760, 119048922, 440493246, 287219143, 733615627, 265755357, 25268104, 128904201, 689827027, 222088078, 195937435, 111711989, 842579261, 164435779, 708204201, 344251704, 65665237, 265405493, 350872748, 5206818, 129228565, 68936516, 387409689, 17698206, 276292539, 234247757, 38555875, 461168879, 196931762, 108875908, 26843016, 368817230, 155640390, 281604550, 138864283, 35332475, 7216855, 182711758, 188585874, 804033014, 438646812, 6171209, 10613240, 384813263, 69858637, 337566694, 177701807, 158601312, 113003271, 64493266, 168076910, 172480875, 56042585, 1019023232, 90509392, 232560791, 220195132, 146228068, 137165051, 472356333, 187029565, 74949489, 229560094, 763329572, 600814508, 1032848232, 450760897, 677583387, 66953901, 18477205, 258478121, 399203412, 25093621, 287220238, 89634718, 102887130, 34618574, 392260986, 193071682, 64280357, 351472083, 348104734, 311797905, 295003816, 326914931, 971669973, 75905428, 3294102, 40981118, 134791236, 492087425, 276777377, 273043430, 47843619, 108919404, 203666044, 593210667, 42682326, 59891017, 31594430, 64476507, 457630602, 269359320, 14089557, 67917379, 668987916, 33669010, 113390330, 152639381, 127943660, 218850607, 47986866, 29993518, 1326086099, 232133785, 219295624, 908131899, 228758777, 226810687, 520222219, 926362350, 46442944, 185733805, 117723431, 104365618, 480290326, 584727417, 64096790, 349768457, 483837094, 20004044, 314535064, 284348811, 327879297, 362952853, 562169386, 124381097, 251079588, 938945874, 438177705, 1159142773, 201093445, 338460181, 26023393, 83904106, 94001321, 136666416, 71729408, 257851817, 935898570, 490024019, 236478509, 561720130, 110825094, 758111447, 59482313, 676377980, 230178917, 46652892, 280126081, 142033461, 1046233533, 110714296, 449404023, 310010352, 471952976, 154560783, 15394466, 153347020, 140488294, 251818638, 50091246, 308444843, 105593593, 81780067, 812307757, 123611116, 141618820, 731059413, 1152671977, 36680433, 398285243, 227778920, 1170457, 31719956, 81179163, 812176077, 405632830, 236151188, 31584224, 51800839, 366126205, 25525850, 193393312, 218483251, 199257842, 25159533, 1402368783, 106733910, 199639997, 43769162, 740878755, 318650127, 481264363, 81526960, 328494263, 412628756, 267582820, 535949546, 341095298, 257833579, 1293412933, 73998392, 744806703, 1500958977, 28506138, 788322368, 792300887, 569338298, 203857865, 441744469, 15349781, 86847683, 278897924, 102504176, 233928405, 50069896, 140217787, 105361968, 76012084, 305778256, 173014290, 720354021, 35276416, 15745582, 764177981, 231199729, 495271265, 104032951, 156402860, 99491168, 311758458, 152546443, 95361378, 262986294, 150785060, 137012108, 103486879, 36113959, 88119809, 512801262, 725541772, 109679096, 561970906, 232337380, 137653810, 62179724, 184831170, 443071890, 203477109, 366081059, 179676274, 377397486, 148242656, 253521314, 448392847, 122460927, 56063292, 138096804, 312315799, 266940377, 165524991, 125971704, 448542105, 382239815, 369448268, 74270762, 46480190, 18728711, 33081063, 55634708, 295760452, 13467161, 84834164, 211069697, 126795718, 299356848, 373462398, 556400546, 175644031, 8454513, 122678539, 338401747, 205099901, 420436925, 106555192, 114012684, 46000951, 82457782, 184240604, 500601816, 276427442, 327876657, 923955007, 162855009, 64228691, 337418713, 158008404, 34361776, 203386958, 220903393, 98574265, 59554453, 119025626, 106171438, 365179210, 356102545, 1809220283, 74745751, 251922226, 69250903, 6084919, 345544435, 316370988, 218338205, 194321987, 392512135, 282622613, 146686147, 8941298, 607601064, 3906808, 148098977, 246775812, 1085173785, 566660574, 451517385, 158681583, 20103635, 730277538, 1019066268, 128918868, 1232562190, 52133552, 361117930, 102160570, 296244076, 172533194, 17672717, 289379177, 477704739, 10809773, 307669975, 217506688, 353219110, 1168874249, 458491293, 186082030, 272914817, 73588061, 88613585, 89148117, 78738946, 327876384, 577775234, 1127946336, 108480984, 158614058, 151521995, 139187074, 36977382, 45924081, 205163131, 541368812, 109014475, 85905274, 54402090, 560810, 184128914, 1452178206, 141718927, 21228864, 9562735, 26004139, 128177491, 390745427, 22230432, 787538536, 4096555, 168431457, 55433294, 94329522, 370671878, 56287855, 401423, 268661783, 686730351, 23053690, 470894322, 117251293, 179118377, 836302332, 192114971, 394038428, 464151501, 241486529, 11927248, 376861682, 113057339, 91258673, 372017839, 376357812, 32069266, 204541335, 242364953, 181948976, 13308867, 300942153, 155203011, 17615325, 588861375, 125746047, 119722369, 272117430, 100210489, 31184012, 4856008, 71596820, 57219616, 500253056, 238035437, 149590883, 213687642, 504843798, 58835393, 34257850, 56283617, 1202117865, 261537717, 88643984, 6855700, 34560618, 9603601, 39807584, 284942619, 127503887, 127656473, 325373793, 14387334, 224007763, 193861089, 758279733, 312912965, 261500952, 105975086, 353636626, 113213674, 71541939, 299651111, 743635640, 226756141, 28203679, 178780997, 48793735, 12338042, 117470459, 117859354, 9165829, 1012241230, 271720989, 441802368, 27619149, 146272364, 778444382, 186172352, 429641582, 20000400, 809561969, 245136131, 272541722, 168057882, 91109109, 105903826, 24668531, 255518225, 105841424, 225514090, 851536663, 98892316, 73966001, 277102445, 565795183, 25004447, 37399754, 12274558, 38577941, 71152523, 43127174, 664254637, 852092551, 412635748, 344550637, 437884123, 823550688, 144510655, 97480716, 186098299, 179743648, 1042073, 27932150, 556387747, 65853036, 131208925, 59951118, 97803115, 371040350, 86087476, 261184710, 163147457, 234484017, 253626114, 28057583, 63063912, 323365140, 1020485518, 78685284, 234423004, 63448935, 138240438, 185113753, 49592283, 737353822, 937177664, 969553047, 272552688, 130855019, 7037760, 39794632, 555862673, 8107570, 1126827701, 184154820, 1460473485, 34305339, 158025669, 13592874, 545510028, 341045182, 298766020, 20276265, 13823309, 89183029, 50664494, 2137719, 352708339, 43519531, 2797748, 101037168, 30840639, 142939363, 448485160, 6957362, 27417413, 202557202, 368873977, 177183519, 663678544, 397831351, 260413649, 207220012, 214910171, 117417740, 9374452, 212330360, 172592722, 175158770, 243281939, 112850205, 788205988, 4267424, 48190990, 367336629, 95150962, 110051155, 375835943, 404085565, 71683686, 387367750, 25825512, 112719368, 695388992, 283333141, 123380165, 395072885, 53852962, 32924400, 78536772, 501767055, 271738644, 261850531, 129906036, 737585818, 1015911942, 145285373, 176847108, 161236404, 278455672, 470771489, 210278809, 241003195, 496413032, 329948571, 24255807, 591211111, 12020378, 491636232, 144327779, 7213877, 116458506, 190183749, 123776063, 87067689, 640356999, 178786693, 13058835, 488758129, 115658553, 13629699, 309118515, 1159052132, 299638898, 18761037, 686854477, 281635437, 71500523, 44731417, 508689537, 265302123, 350218436, 133926476, 929929835, 103427404, 28363339, 15214321, 63010510, 598500823, 604810374, 263365021, 674472305, 1437521274, 571587988, 10042340, 85319567, 417710888, 84973198, 18941129, 264825535, 260719340, 539534982, 16426906, 118305325, 207569821, 36417045, 87819027, 740553229, 31000189, 53560745, 414263386, 358387117, 645248157, 704384754, 328220609, 69940692, 401760159, 383841751, 55557505, 144801637, 138902876, 220639515, 23618590, 42870455, 56522811, 34603702, 146171146, 1035935426, 133695051, 72392909, 117468546, 385385159, 28993570, 47488624, 33849525, 132351807, 10224455, 42322489, 20705469, 42503479, 106202058, 528828928, 268107183, 1122592525, 416438525, 24023319, 881159436, 100592876, 242393891, 612221093, 350924039, 368898376, 164518955, 451042403, 603917448, 280344606, 308380990, 17417988, 126321977, 21006878, 95440044, 174582498, 236524376, 43610716, 274464864, 326932715, 91013917, 303912350, 509285945, 120550945, 228096372, 695782012, 67501802, 817945521, 645963415, 381685811, 10429800, 552521174, 459772940, 128805767, 196175539, 213803346, 36793706, 1009058505, 120960087, 6154014, 125369416, 12569990, 23989619, 370532443, 546400902, 38329467, 990436574, 162965280, 8558307, 121345468, 639275714, 103105316, 418556239, 380422812, 306472836, 120712044, 308167691, 282906552, 17479119, 241040749, 46334810, 28625389, 64396071, 1026654120, 70379497, 353237424, 201113829, 119262528, 163834504, 273046028, 37305257, 231807196, 152071356, 889409917, 20988329, 13838825, 27290228, 13833568, 78544217, 561243386, 143417691, 47207602, 58342475, 814974025, 674233307, 262885137, 101224695, 247043982, 86643945, 36013773, 766943579, 54176963, 990925956, 629663254, 644296151, 61817636, 130213082, 153999020, 223087152, 239039926, 465291991, 318016289, 49333922, 1121797, 287833930, 74763235, 15020074, 187572364, 93195313, 98867291, 127980066, 163223282, 170101504, 104681016, 140529705, 131910682, 790327456, 170462485, 359754024, 955836306, 243046640, 150484465, 45001540, 226984332, 108848042, 17652276, 402074614, 339516261, 76711738, 25070956, 15360184, 460671000, 203645006, 67902582, 466971730, 745673145, 168703022, 264863478, 155944658, 190546588, 734931128, 225431582, 334364692, 139213359, 273865914, 34253489, 209179174, 237278031, 110823959, 7573692, 219422221, 729094163, 163895545, 165971809, 78272869, 419320527, 85638721, 403626959, 79514006, 84508058, 541231893, 100380233, 25410033, 42650511, 205825433, 292043672, 23767392, 372603851, 92044429, 85853080, 80362711, 68621283, 495184304, 949937210, 127712927, 176269016, 490448647, 296151019, 455325551, 52406467, 319658578, 35359085, 526981388, 44568853, 108673826, 529457773, 770327045, 250064950, 273170545, 793731661, 560656501, 78574396, 80828987, 336791266, 137423271, 210706120, 36237684, 178340840, 93564938, 144639359, 382116084, 96272733, 132909156, 115398689, 85337126, 195607903, 232358685, 527406321, 729779388, 135263247, 10165651, 266938925, 196600450, 278086902, 410186539, 513148929, 189299304, 172811395, 62119528, 41907242, 50366010, 477388927, 42575821, 151402547, 93560260, 212764392, 344891713, 146484411, 407798102, 389837682, 236401693, 208584738, 18712650, 345924754, 272775810, 24735545, 1241340307, 65742007, 792791888, 692562073, 120393601, 1127328273, 216918837, 266184898, 266973322, 24050592, 70002284, 39271328, 99123433, 54749104, 7900924, 175451267, 4219454, 51858471, 289023149, 16108075, 171121410, 129441300, 174920562, 78113596, 43164940, 449586655, 209079132, 894136958, 206717314, 52977296, 14410785, 86539169, 41954064, 28375, 59834284, 78828694, 354943035, 376563613, 577084056, 31869208, 238133514, 530485244, 1511125257, 609939936, 12615368, 398959454, 126917881, 17039535, 321241857, 411861345, 34237753, 49756110, 49040748, 114366756, 146999318, 17719453, 640310923, 333326139, 402188441, 57671604, 273193717, 231031461, 169873350, 410470275, 105740226, 296562898, 414004479, 16340280, 50398266, 145284635, 675878817, 382345868, 87948589, 292879982, 139196406, 105618696, 154648165, 202519983, 38976985, 39158217, 101215419, 877256, 97640052, 69972148, 115711176, 172949760, 11435415, 1746743, 55269562, 457624991, 59838679, 467362460, 135031599, 296573513, 118253693, 342566318, 110502885, 594415427, 201713670, 79737184, 99118578, 58576033, 4418045, 238106857, 528131849, 49792332, 290987253, 12773365, 322324588, 427921721, 53994069, 3554782, 432269213, 72082476, 1263946052, 614685020, 164822597, 8921206, 632451095, 277930979, 245456314, 29785672, 65986729, 364625351, 198211959, 104556159, 167304028, 526947552, 64428420, 362101670, 537381118, 198216003, 740121922, 266609983, 525122744, 211428752, 430576405, 197232811, 240353222, 184964965, 102457697, 198211397, 80633788, 539197243, 380435105, 77384712, 193092127, 65473595, 8592146, 145358161, 252562617, 267431933, 85037749, 230331709, 125588286, 423623226, 614413485, 236615875, 137827080, 528479586, 20832298, 4017959, 37648357, 382602419, 277599017, 1222330633, 97531321, 157269336, 191403228, 277668941, 761223180, 230006482, 48945575, 799679529, 56464368, 299776631, 59767804, 325539018, 590323735, 1043145297, 545827301, 76215324, 252909693, 40680491, 465111567, 1107854759, 308074891, 170511474, 102760074, 479727507, 107718936, 133890580, 504668519, 166103204, 44351472, 181742175, 59643139, 163889020, 308925247, 164138808, 509010281, 125444966, 8992119, 4477787, 104505480, 67605791, 313697179, 84644973, 300564707, 106170402, 77196474, 210042776, 228961654, 528040475, 151700109, 42176296, 240895108, 533003702, 256622986, 647669270, 157386937, 318290889, 14200562, 92330069, 629727441, 61184793, 203411067, 29321232, 141237527, 64951593, 220942334, 80460611, 238183380, 112446946, 6492417, 288863578, 100867282, 335172706, 712033829, 1162726360, 10892479, 53091378, 87415918, 120628390, 416330266, 331969194, 190052122, 128463503, 228025495, 550379241, 10713235, 4324051, 101224852, 25508226, 15294645, 66141541, 11752219, 109527793, 19546480, 60008949, 214318788, 267727169, 165065510, 584223668, 343384197, 177199309, 211752838, 9556532, 776985852, 173048198, 394736733, 354273212, 138456393, 13242023, 26729180, 56871751, 189388650, 115849349, 103374413, 470761101, 942939543, 30410356, 496755982, 89801878, 784103855, 279214330, 77612291, 1209556603, 1073035435, 104043985, 56327353, 88164355, 323928741, 135767737, 661305411, 50319123, 265832813, 62889759, 828132972, 104147711, 309256528, 346022354, 15008776, 484246497, 197561487, 611518179, 7148643, 7378686, 1510237126, 26576298, 516481960, 336907541, 60358823, 158148392, 1941649608, 42833801, 492207143, 1789387062, 580135282, 226655201, 103540761, 464002533, 509466236, 393614918, 66495893, 193330698, 755941804, 243506605, 343839342, 603552563, 671021277, 45081259, 122862088, 962425976, 1234860138, 588206887, 258434672, 388277202, 292528143, 255913853, 525589242, 83030908, 107302167, 443811194, 333449382, 21550175, 838939830, 95660040, 21180002, 493420264, 547557366, 41823159, 292243336, 341771444, 291068454, 267711304, 71353236, 115799551, 999085118, 836225488, 1339329858, 601710540, 525085155, 119988469, 255767016, 506655370, 1562783723, 1061980029, 254927645, 290174059, 242907205, 66818210, 301828841, 300287845, 7884034, 131108461, 185416450, 354857038, 311102514, 229475955, 104567533, 218029660, 169058095, 355824020, 6675057, 563679886, 32440750, 1707568, 69435527, 25211867, 332600006, 67078286, 353183588, 225881737, 107472811, 26624581, 48672582, 106288712, 21011261, 201154772, 357571827, 145794241, 369657880, 142190661, 26011326, 199831053, 211964658, 240085938, 1816217, 1057412391, 659103461, 107253169, 90064227, 37329904, 17674064, 99447307, 1981936, 52471899, 17839200, 1104072158, 4211083, 198704254, 821436514, 369227560, 25883889, 89318906, 494807063, 1647332, 252765591, 668093217, 204651954, 26628672, 109943142, 8038081, 189119832, 52219949, 217042450, 14234017, 194956544, 221136510, 8780298, 52885849, 273488149, 18206428, 99082000, 161001136, 126236772, 17860688, 265893160, 55845659, 427211010, 133811070, 333051973, 371587151, 40433590, 215010437, 8879056, 1071593637, 218694147, 133086220, 279439260, 25515961, 178310691, 352792151, 544672942, 360949895, 286819781, 147632991, 208084317, 50912262, 354107900, 103494457, 28267197, 34310067, 130712180, 140998534, 227207273, 190955894, 67155497, 793807068, 320388121, 4796974, 111776544, 45540409, 194557055, 175751367, 163186008, 94394073, 63383967, 3442573, 312125883, 249734394, 512465997, 681670214, 23923965, 342021455, 141098955, 363404507, 596757726, 794648308, 291863584, 125192490, 4461383, 386255990, 182181811, 138010652, 677253585, 17686336, 289094537, 40833904, 3185533, 29654751, 638123268, 116622264, 81055913, 50381166, 233610457, 167657555, 169208101, 208355615, 174122565, 627205207, 42183206, 21625464, 228298372, 70399211, 212026570, 1072641051, 963927829, 154600126, 304334069, 129910261, 219718131, 318446535, 42514392, 14229120, 500446775, 18400897, 535072737, 188420472, 836833584, 559383658, 252044045, 253646416, 1004527855, 258290737, 409399791, 97986192, 23101782, 1722607765, 501604730, 98860385, 622707674, 1266975566, 38571991, 172709009, 942498749, 305811886, 163475313, 315190948, 539773877, 575118100, 20807264, 148563951, 231141172, 67060331, 68431019, 50228124, 9751484, 24956926, 301718216, 361364868, 334797965, 8824762, 116073040, 313517849, 136523398, 573271588, 364907207, 69979394, 569587110, 238581669, 90400992, 202824340, 232822472, 146118678, 1279293, 95142468, 505829850, 63011630, 1219437563, 166681516, 25864852, 17737376, 586700573, 145075054, 9108950, 529667008, 238136577, 456469208, 802898861, 3117550, 218661774, 291541464, 12047132, 286914191, 28229174, 56866210, 90723501, 497015235, 146405296, 49041812, 53340906, 162776039, 320730230, 190671411, 557028431, 160655724, 441503963, 170877117, 289258977, 427098188, 727421385, 185958946, 528220566, 226184359, 669129748, 275714018, 151078780, 78602599, 165091030, 128390824, 82789042, 388631045, 420196654, 15936452, 146917963, 273630725, 76704986, 330703442, 70347679, 144979447, 262306313, 141977740, 259982842, 19257924, 675518186, 183291952, 83727413, 347713766, 905341387, 302443848, 84792266, 279914206, 51866612, 567920378, 65641926, 494249215, 197812310, 279766961, 26860046, 1060724678, 401430144, 30971687, 367530349, 101638007, 48923703, 663434977, 828733580, 47931246, 124960303, 726713579, 107179448, 1469788470, 113183185, 801733300, 450652837, 3146501, 157738697, 22778639, 178763024, 46298095, 380033059, 379822262, 440123107, 306970104, 271656880, 395959695, 198532894, 46138022, 145559699, 122444025, 585422897, 58031670, 173093977, 128798611, 191277790, 275635681, 12361512, 64077261, 439351667, 144928224, 42249869, 38798108, 47240633, 72972469, 479609380, 987811348, 77109452, 6852175, 438132528, 357393697, 54459889, 99650418, 74134507, 359470969, 1277543177, 564336477, 79932166, 193754607, 411507244, 302605321, 265993504, 146007159, 258936378, 29479551, 213749713, 562197285, 182983308, 241969809, 25081448, 13196595, 3022218, 1096928310, 717359216, 50848312, 67118302, 386915255, 606803811, 170883256, 417149940, 159780652, 833414361, 342273428, 381612275, 58721282, 62218237, 372242251, 464327799, 167606628, 3400540, 250555132, 40642136, 275253548, 400028813, 382383459, 182712660, 104979757, 130313385, 1185963980, 670308842, 172348465, 9818133, 303556322, 163912303, 914291404, 244737157, 304369687, 351693684, 182794324, 611425207, 196366264, 315079541, 514032642, 73460834, 160224585, 13522374, 158676832, 793343084, 551408913, 648474271, 867654545, 69096962, 431446049, 115738028, 372118103, 98557446, 498656701, 20539750, 316020622, 233038485, 361296280, 658681592, 257049828, 144811536, 124460978, 108052874, 386999111, 428822976, 17065680, 79864457, 157300251, 107015749, 320079349, 94249503, 102171214, 42359136, 26375403, 192156047, 26476172, 335780621, 50108716, 435842213, 758338567, 939912694, 44595126, 314977899, 6936343, 367223691, 192976474, 168282085, 20643309, 78088783, 128229293, 314561230, 145169452, 185619778, 394441371, 53660355, 94506732, 478089910, 55537432, 180000715, 642479805, 576864572, 412200954, 68506679, 403704728, 565267275, 178040021, 551128899, 111686350, 285756050, 301278152, 88575834, 125444709, 230269101, 341806543, 136599921, 19384447, 71141116, 254797436, 41639430, 71413087, 1321908871, 234311493, 282811462, 181753111, 116543770, 233415885, 206722300, 721977271, 391899785, 6963863, 238773032, 136905694, 219552041, 452063339, 52374067, 154157286, 13084144, 13463999, 200183128, 325599141, 171322116, 441138261, 466903250, 426779483, 86375769, 955603084, 538965056, 79493431, 235763141, 380603495, 73056750, 231109168, 24840412, 272711745, 456620524, 155920185, 66280119, 117519154, 34629720, 1156446740, 36924829, 332446308, 38749569, 311934299, 85554235, 100258258, 552689642, 103719064, 120048119, 136242229, 396312303, 233333858, 821133229, 243228724, 126930285, 69533520, 224970637, 1260297634, 71165680, 44247342, 184454943, 171005098, 174285397, 236326517, 31004768, 93862826, 399600154, 106651186, 281516126, 605891414, 17403981, 404175203, 249693902, 58960419, 168046787, 565675695, 190869414, 24156631, 789992148, 258202923, 177654975, 340586344, 788113426, 154281162, 101452424, 20076470, 293849943, 574094464, 447622199, 279212507, 409536762, 98937367, 33627688, 80859388, 275757131, 69054950, 217446758, 144533925, 96920874, 821612920, 16623859, 32552883, 175353079, 143430790, 100151931, 317254730, 92833365, 225699967, 405658742, 73547811, 733011971, 82078346, 854077337, 573086067, 323718148, 5855542, 325139621, 32584190, 628399198, 193389561, 384102880, 153091212, 226614174, 264734694, 318521358, 63997320, 516213136, 1706825569, 126948764, 632614541, 811867600, 54990657, 5277796, 151391648, 245407556, 22159258, 35646052, 596287084, 135443606, 283403109, 568170108, 22214248, 663344411, 236995422, 331857164, 121679869, 251378388, 142412054, 69164509, 80869510, 695902864, 357921414, 318545893, 183534146, 121239224, 39821689, 163300410, 904759727, 39282919, 233464691, 549516460, 485164339, 390077848, 273299429, 83369358, 122047040, 168569192, 40390153, 1409787, 532725242, 208522915, 269196675, 764233033, 163248035, 923421194, 282973174, 225600418, 230273848, 448045711, 426207161, 235696734, 358263809, 203833485, 7494569, 1055194318, 606146757, 48534404, 54743871, 529844522, 13741475, 389218924, 175708799, 582496750, 88164132, 542400066, 621223186, 134299112, 109008753, 417932132, 136628142, 776982456, 107239680, 406956569, 270558481, 412598042, 370369079, 9535030, 117069587, 20243756, 503029156, 611303738, 139554177, 108140891, 150639355, 152281408, 100372547, 20427483, 114281235, 75375309, 308151954, 135611539, 381527639, 650624332, 89089416, 10553485, 405029408, 54448348, 53457928, 32062763, 967617466, 232523830, 15827660, 96568834, 30752848, 316365580, 484479253, 521330535, 348676267, 743490848, 303861971, 104323844, 483276219, 23262768, 284593430, 3399616, 82398154, 904367193, 24097748, 253467894, 855855515, 195317227, 2057639, 339188876, 150117659, 10519481, 188370595, 62322535, 944731745, 309960435, 18943808, 315733277, 3423268, 555548844, 363740443, 34594632, 224089340, 231312623, 347405906, 11399226, 82006887, 138686652, 121311722, 502830945, 71859149, 4659142, 525772644, 76345897, 352615866, 317151737, 525042447, 314306605, 63315616, 255924300, 140394261, 131296468, 137734512, 289516795, 241982173, 124771895, 113478763, 291301160, 448157572, 118720830, 206077913, 216578894, 174681382, 509833639, 568369881, 61319183, 274444791, 41390925, 118154918, 374530546, 1217052347, 111251314, 195794050, 243678156, 237271924, 76846877, 10432647, 57816331, 311988190, 76593092, 443458024, 496751029, 270594595, 851374026, 187548070, 1017953151, 107426505, 504828131, 131798200, 40946254, 61558925, 299451760, 157356785, 151663457, 84829635, 104796054, 130154487, 289260080, 64799209, 180040346, 142458327, 815651755, 230518355, 712321187, 213557415, 47808622, 702255643, 109576482, 118505984, 120847890, 108207124, 657365876, 824844743, 337136096, 551146261, 163653342, 316685041, 803352375, 14429055, 474058090, 491404557, 1514995, 186736293, 89396045, 154334725, 197339283, 117637208, 226455120, 53318903, 226110993, 16180512, 240617351, 197801261, 270400767, 84449812, 457976913, 212156115, 779539830, 623377847, 283027716, 15485906, 71454384, 100994892, 2634154, 798289261, 54989834, 168519752, 275395792, 576977401, 83351268, 66312937, 344730137, 85419993, 341838481, 377276514, 164503100, 1212180058, 31152537, 402077255, 49762023, 149591258, 483485861, 191228967, 320503526, 66027578, 201427055, 82200280, 192988979, 171951268, 48638055, 48185529, 202140890, 136868414, 174442570, 90877745, 114945901, 142306489, 187025847, 359775967, 93803237, 393013165, 845344559, 390365228, 418459500, 148833752, 84306786, 1494101425, 143771092, 127932938, 397523123, 235362751, 440665200, 118050263, 26324559, 77825894, 228979732, 260598269, 194493504, 483618394, 496317003, 306855236, 1944264138, 34321933, 22559981, 68604056, 140371935, 52387542, 130653869, 287520288, 663371419, 150256738, 149052229, 553159218, 58249316, 892884042, 95071540, 167700920, 865719751, 166045297, 240690382, 354280948, 12407445, 42604134, 24911769, 585158972, 136425879, 142028904, 79572274, 658248226, 75736733, 504800671, 112940464, 1351102508, 337786268, 50797772, 66354488, 35260681, 115515690, 248914122, 202005606, 3673298, 9012993, 831879538, 583449167, 1006263918, 674586914, 724924808, 56369937, 265149125, 134504031, 408249892, 119967190, 55787362, 303025073, 59026131, 20810368, 20937886, 251564022, 22234602, 358822054, 247617182, 702513599, 474230023, 243251975, 276389557, 403950, 222406797, 193865953, 116137122, 665040354, 11839649, 121820008, 799177360, 368311497, 1986006710, 300777397, 143351700, 306355239, 534155778, 11335683, 464923072, 134066480, 43662005, 2891833, 19401067, 27054000, 481523757, 600246270, 326908852, 655998451, 267195775, 15170689, 238367022, 165163830, 136788195, 1046692957, 165911689, 881805347, 74527604, 220740233, 566047365, 90269039, 300675597, 230343169, 406883230, 300172351, 77191464, 57933422, 28906918, 530787370, 1107238046, 695878833, 78907955, 574376693, 737355077, 20283994, 1026794355, 195858021, 906929375, 151211805, 53089579, 243507735, 178456670, 392144234, 437725594, 269253172, 183962933, 3670168, 243159847, 360054930, 229166701, 67649512, 397373153, 1502199865, 212660219, 216020739, 145205228, 211638781, 183542762, 196959324, 140273098, 69281480, 158071472, 141659495, 31218265, 37160075, 177003193, 24719121, 279662324, 159864637, 196269658, 470392955, 423344480, 374980636, 112745718, 244373463, 130879626, 490305196, 253588898, 351513942, 105860896, 728556880, 819681076, 27784207, 304514961, 186049656, 282672621, 27145995, 12474138, 604405243, 256969761, 60158033, 35000638, 16926292, 253327977, 70869595, 56692947, 495340243, 19011051, 236691456, 92222635, 109669483, 47102807, 23604726, 485944354, 188166689, 150970505, 67478883, 25697838, 418589429, 323797684, 48581303, 345052124, 137954099, 82236744, 137953785, 623037220, 292259682, 75938197, 319276559, 219242706, 532544057, 277797661, 306180326, 299186189, 79218814, 290203336, 253236255, 27559442, 350624667, 58771131, 39456149, 449926323, 118781369, 934546124, 281266333, 252645577, 136856614, 259682932, 160231509, 56278023, 103765367, 256250508, 290352779, 344078520, 264924184, 447473026, 125157957, 92178848, 15919304, 455303741, 507065623, 678147500, 166072953, 87256478, 111681060, 168032279, 311504077, 809795974, 100071677, 144287065, 42890485, 159451732, 69706192, 78516236, 144896860, 264260548, 254001881, 223381950, 75896703, 16977532, 376488957, 224616754, 148403209, 47876889, 91690979, 14325062, 985289546, 141801179, 112601374, 407032496, 69106720, 754073627, 159939783, 312930706, 904711312, 417963080, 623341438, 283559080, 361889812, 64341756, 455052681, 587546086, 141354399, 423446506, 592298623, 229610414, 146157264, 186985656, 40412838, 294480928, 222216245, 275859881, 71217054, 357558097, 439530621, 84752656, 416413197, 201769163, 306794537, 566905585, 99175980, 286798996, 224746507, 189386204, 113481713, 204232843, 93981091, 1425453479, 727038446, 9748784, 62661471, 371912355, 299217284, 122300511, 210379357, 221535763, 758857773, 886104731, 448591352, 473983542, 127308898, 35332720, 66509443, 253232049, 526594157, 6787690, 266740757, 135236635, 96414400, 16398941, 6279839, 119381183, 337625324, 239481673, 537834994, 16742889, 550378824, 643122586, 15334916, 438365497, 316938175, 3262282, 217022507, 121866245, 127463747, 502406522, 301838013, 18670028, 218945984, 179243074, 277616383, 734969710, 119306735, 535453263, 211961820, 66079729, 272228343, 692251570, 120782379, 750902740, 1100144761, 130697197, 12752112, 322391846, 997670566, 651024613, 190361861, 503921347, 225810384, 100319531, 137132612, 81460448, 105073204, 829367377, 264474867, 160621882, 213734358, 13820087, 82954771, 30262244, 90306540, 647368839, 11493237, 277624160, 399555078, 110021873, 253500401, 142346812, 80971333, 973696685, 115880803, 75013058, 119327627, 42160842, 768540167, 109334901, 15723722, 160892939, 713507026, 263793764, 386096347, 107475576, 586352857, 483585540, 8946572, 81722810, 9175078, 233988599, 16898246, 95531071, 154079833, 114272277, 63199993, 174835749, 361139161, 1110954707, 452811040, 115895064, 135169915, 21013467, 20174352, 183166211, 18747680, 151493768, 274187176, 381668677, 193798145, 158136925, 63130534, 157621859, 459190154, 342294565, 198374008, 162960600, 97252821, 97110249, 168348820, 110534449, 269566759, 200908751, 271997024, 19594699, 261113767, 503491345, 213772808, 31240852, 232334765, 121454328, 62886603, 344743033, 55768924, 88649735, 908337593, 79038294, 334639736, 117446717, 3724464, 991203848, 431417792, 957084225, 49231744, 122816656, 155974556, 314366342, 226911497, 182321228, 363564935, 9971010, 476450839, 126406995, 100278928, 169146445, 158514668, 307580555, 17347792, 1421837805, 208604298, 132735685, 30465919, 371187860, 32266326, 11868350, 8279740, 22190221, 12828661, 181416943, 152644074, 444123268, 168585187, 1072725721, 407086796, 269754852, 27428830, 937545376, 20135143, 295747688, 166680068, 451740458, 326949138, 93095619, 56472484, 387900366, 190884171, 271043819, 58116287, 103463198, 127904232, 356423789, 332246420, 71799725, 177639054, 227537458, 7155756, 81842871, 282513704, 20339614, 187370682, 480417272, 573169161, 930609155, 222197326, 141940934, 116080444, 289670990, 128430193, 147772977, 106626864, 240104782, 1143215945, 406871742, 268782236, 51828774, 93064598, 592159914, 220151240, 179512812, 851366345, 311822433, 67585349, 295995807, 297668870, 162932721, 1186309275, 319973056, 339604043, 131474706, 393762337, 66771940, 66774418, 136901089, 743698208, 410374549, 446044374, 91347651, 57116683, 749853901, 165477053, 196729462, 202652158, 158537102, 13257393, 47620622, 124005353, 112013447, 433074698, 304141296, 473783854, 381793983, 121889070, 14162159, 51711354, 410635430, 78931943, 47820426, 175429438, 965151430, 214597538, 1609623899, 760359872, 196471165, 135791242, 565834288, 13930896, 62322332, 662709402, 74459509, 42358162, 35482646, 191529492, 148222325, 226440955, 219322604, 109602808, 312779085, 616564937, 39240164, 122360169, 349725783, 604585652, 175229815, 201531450, 457972921, 81849134, 409822653, 1072552029, 181259484, 188041402, 88326200, 179950646, 157957245, 431223288, 581734476, 19965033, 509202196, 493691681, 356847947, 492890711, 356882233, 526194332, 115904614, 46703360, 52408816, 643144981, 183347113, 538530222, 443460825, 128007958, 1049321578, 206457165, 6102740, 62498997, 17917730, 493447596, 170687794, 243084614, 464074814, 332153795, 28089353, 29146279, 59341004, 92891904, 282311617, 479140429, 121566399, 186401033, 300252107, 505554181, 112026241, 141011289, 329610647, 155743661, 102218429, 268944557, 115273285, 448058106, 76038772, 45990660, 751804135, 68984168, 317900720, 875786426, 152939742, 189831364, 435558788, 284287343, 29074296, 125514324, 121089778, 806142668, 68331349, 99516251, 74691322, 559038974, 41098692, 117899374, 35654973, 222563346, 61033588, 64619488, 961638127, 288667592, 285012542, 91510182, 10961174, 878979, 507165754, 90688802, 47034224, 416464868, 193309573, 248067263, 371883497, 319640652, 524821044, 96030582, 27564291, 331796177, 301065889, 165733599, 289460130, 279770081, 196347855, 625510755, 198550385, 290184029, 1762306, 135104367, 68184717, 852763455, 252357185, 777940931, 122105203, 3221419, 1079992136, 139589032, 4111028, 232420252, 316279059, 692780738, 122903795, 825699096, 86610658, 538520244, 281704581, 38689258, 660476462, 183828783, 498193825, 110401778, 327554880, 187964397, 1119043560, 67948149, 45087006, 79241748, 579137410, 644957839, 282643384, 522195818, 543169362, 2389776, 214523511, 71304567, 5640177, 88467577, 131425514, 411812544, 527897526, 22179754, 163922486, 998824449, 9052166, 354249202, 494089004, 151546967, 256481554, 188357545, 703328043, 164938543, 494372442, 268379816, 333168403, 469378984, 519606619, 255477826, 22848106, 179919476, 85147543, 354148967, 26453035, 587631862, 363199928, 133791097, 34699574, 191871936, 300277410, 79651610, 93854372, 204585738, 109939948, 374353254, 191007840, 123692939, 71279500, 27915439, 213733287, 506714041, 247999297, 173568804, 15468844, 57505835, 521300025, 194413132, 5097883, 165715483, 563841910, 28403589, 320878869, 43441506, 233796511, 420538880, 10231622, 19872778, 722102209, 637642421, 234186156, 249607700, 48011679, 263630871, 585502292, 76579238, 36121759, 41918664, 122233418, 30520892, 1286541749, 660920055, 327166278, 112800838, 40262784, 383546590, 206082656, 1473323622, 6544041, 217190837, 163666035, 281847984, 138699387, 624231449, 431314700, 354799454, 156545091, 236231233, 438392570, 125735970, 73886701, 38963235, 349248822, 44497936, 190912979, 256117008, 137550502, 270435684, 382443148, 390724023, 181112975, 373349334, 150817826, 58261188, 26566280, 226005810, 326679774, 127682301, 223442725, 349450635, 726650020, 394331131, 127461503, 23886082, 299321152, 698346245, 458033541, 32485161, 80622443, 124672829, 72380500, 76658159, 189643918, 893085103, 137649507, 387526105, 232194280, 214641487, 42727646, 24353961, 18209847, 272642433, 236878816, 183622019, 480344150, 150338078, 449953727, 206598074, 442070450, 36235687, 82566453, 180207596, 607871734, 133194746, 229128188, 102181348, 18144356, 133821278, 52921907, 105424775, 387699800, 47968796, 104148423, 5169516, 36686681, 170989211, 410141753, 162956807, 5863718, 714452412, 209489657, 484580933, 102094517, 561166074, 22193633, 43407583, 97744423, 598108834, 311054702, 529512961, 390929626, 322537838, 115585006, 291991250, 489906935, 299519259, 349468890, 629469947, 18017842, 285886061, 1016226422, 231192742, 458701412, 95316617, 113502279, 318771125, 394512205, 560747542, 43648550, 208430995, 217170340, 155748552, 35505809, 549890970, 102184254, 812958253, 5527476, 124092878, 240811816, 162869781, 1042502666, 119445515, 624917833, 107220868, 395153128, 180572758, 372138504, 185274988, 134369777, 452850489, 623972861, 34158081, 40692798, 342748442, 48963357, 71500103, 144426833, 310175675, 31287297, 101378868, 973917882, 293347470, 377289539, 501656914, 89738422, 459891584, 428438510, 14591865, 56522811, 132490068, 190275626, 49790038, 370748032, 46373317, 76137603, 196607988, 280523691, 1556328248, 390053856, 419569240, 220536759, 296235578, 288289012, 160130836, 39787846, 467999803, 308493294, 96600032, 80299817, 209325442, 257460819, 70850231, 830016271, 34282097, 21704325, 73228671, 753477781, 262106047, 10965396, 564380424, 3484367, 94280318, 12963006, 191472077, 162847278, 11648641, 7962470, 511973646, 416131842, 210638689, 275749558, 114834707, 866872172, 13407754, 211795437, 27739168, 555636253, 69748272, 43237524, 570750469, 196289233, 193635023, 529804914, 172088630, 269659983, 311880934, 165602684, 104224799, 99776166, 186291558, 59770889, 19970730, 427496441, 1429019399, 233935399, 413812656, 119488496, 511586877, 228904465, 626265169, 74259611, 684124499, 253988535, 92084941, 169164088, 164572569, 654122637, 157901939, 250765543, 423147427, 887733546, 546344185, 285148095, 54919042, 77767645, 25252355, 134354367, 228610966, 137221571, 602959222, 197733012, 171395711, 155240294, 82558275, 14783079, 155137791, 13970256, 47188208, 92027712, 262906581, 17812578, 88285543, 93694945, 148243635, 226969889, 191766514, 575188555, 177209231, 326396371, 180621944, 6759059, 144059667, 30522727, 149744085, 246181500, 119378880, 195539320, 1377853594, 722741252, 669922723, 271771814, 60543079, 39812161, 21166321, 168743435, 57036032, 81965173, 195564349, 28578088, 216366347, 593032851, 48467545, 234157768, 54863449, 239036199, 44474491, 157433693, 66893245, 130179902, 42769669, 164758568, 141245250, 221964514, 224174406, 236123304, 650212242, 695936584, 28999790, 284694736, 249899485, 392564270, 10614693, 442618727, 635167767, 533506833, 86105085, 502097053, 36178609, 208538968, 788201941, 149869928, 151066810, 528726733, 2653808, 121306660, 59363841, 649031259, 217751613, 145750069, 93895348, 325845915, 563992839, 161786413, 3759741, 157493681, 10324500, 300507469, 33517842, 588870282, 21118168, 344797433, 139454377, 32620501, 87922478, 100131895, 347279219, 96541179, 633736700, 512564540, 495699689, 246611554, 88056339, 5687799, 166132062, 91747569, 38283613, 140828740, 60028923, 313164030, 230047715, 75053919, 40456216, 162064050, 158025089, 624004416, 278338749, 176922649, 105145594, 192142702, 34174727, 43030482, 71696413, 199679869, 2943339, 81576937, 235721021, 358170932, 222917302, 180802560, 238352018, 45125366, 25630081, 257287303, 691995507, 96084179, 285194226, 15748485, 164154096, 248077409, 182825617, 9018795, 504021891, 129274965, 71781697, 92691187, 8935581, 265769734, 198726146, 118473512, 40374459, 133100632, 188732779, 35048870, 663835422, 82360173, 130262444, 186122784, 233318, 320491302, 360132648, 238919356, 512322596, 231592934, 61880942, 401333637, 566674094, 251822067, 233581490, 110063330, 63877929, 20940411, 33634352, 16271736, 61787493, 116632378, 28036336, 73085084, 1061836984, 261299225, 242747949, 34466260, 384787598, 506558973, 1272434634, 303510168, 32097400, 126478967, 697666598, 32360368, 20260719, 292947687, 161113828, 299865949, 1252532209, 139615402, 159768482, 546589632, 3832815, 8080541, 827731750, 68749877, 514791728, 20049482, 9043004, 16229756, 50904637, 38093782, 94602064, 44762750, 187613346, 274663442, 6095848, 82424281, 180246733, 3707289, 314330931, 115682220, 132442493, 256635136, 63971019, 63449139, 7672643, 292239110, 576586846, 5086092, 456237178, 22435367, 271731774, 232732448, 31231956, 111205124, 216803769, 333460166, 46646791, 237525883, 394432853, 108405679, 169357737, 453409774, 178570461, 948228460, 163360343, 190556523, 1102095576, 317240027, 84618041, 300429939, 421180298, 289449871, 10234327, 1020003, 258813504, 451440327, 144147278, 187126136, 233562137, 71117009, 234247500, 908160370, 220926439, 155812817, 97760572, 32791910, 44136197, 64336911, 325180814, 297531482, 211597683, 50052590, 71412772, 405926282, 590661368, 313915611, 9907303, 260529393, 37721627, 98291545, 93673711, 687724629, 336767359, 22485568, 701255561, 108905307, 603225251, 25463980, 235326628, 173167189, 104808310, 659667300, 156339222, 268713128, 117585246, 183421900, 369452733, 78903921, 330598285, 160339780, 300018080, 510028, 123254333, 636252702, 202581752, 1558488, 113318384, 224110372, 264662591, 173202242, 260475127, 297489036, 136366492, 109854613, 372357321, 20437708, 145162952, 133957027, 48023139, 411558, 257366275, 72054774, 292962477, 440826030, 543402777, 391389752, 13730512, 121387952, 5967942, 189521312, 221512910, 157233121, 190555595, 304527481, 115573858, 10436052, 309403452, 318054297, 116699952, 16458043, 671460061, 343614569, 350803615, 17954636, 15989412, 69429616, 583803535, 68039064, 123663917, 13820935, 977539409, 1141714614, 9276122, 272785451, 208794481, 282000444, 139524472, 239636315, 3791539, 51865342, 27345684, 105205570, 259028166, 117092009, 710871, 339048066, 40488926, 311660894, 46732846, 182109114, 368192116, 21744375, 64829146, 68075003, 41270344, 5627979, 59988642, 7867089, 1332153832, 226185419, 471629388, 914043908, 217464621, 252596940, 249225871, 498989785, 2257641, 381457036, 153072885, 6081432, 730574912, 203512513, 26797630, 96356625, 580524736, 27583240, 5096186, 398452305, 204309257, 52809204, 82985962, 7491670, 1281396, 69758540, 77768613, 606628079, 1663063381, 161353308, 299959154, 1263488021, 5751554, 186233318, 849450998, 105410304, 524798098, 99979332, 669006736, 541168397, 457138499, 116417706, 272448455, 186309344, 268140272, 354055997, 434795319, 82668228, 476034645, 226065064, 10513311, 121099556, 184018071, 14532918, 132957562, 186567400, 8152394, 132906777, 135593478, 7588796, 239762388, 457076608, 391272225, 254036250, 102788220, 172117630, 310067181, 695081998, 204195965, 247476972, 421176560, 115850010, 325433789, 150575892, 510993986, 109196089, 647210821, 137743346, 245476610, 362138082, 340721850, 130951671, 512813412, 65028639, 155042693, 1263158367, 167622316, 65673156, 37327529, 252330864, 1342179152, 342160568, 149573168, 383613038, 22582084, 182696648, 1080908781, 389488660, 145585924, 194143442, 33178398, 855683085, 255321360, 224765234, 131833817, 64309758, 621725266, 12838798, 120969523, 76859101, 415404066, 22894349, 270562526, 131615672, 12432242, 463513259, 36422548, 191322626, 10722202, 79633806, 542425781, 8846373, 1014636527, 93691939, 209179057, 15998159, 206516544, 198941785, 227725055, 326486488, 414628943, 153974485, 291488107, 137261362, 977702, 430448949, 120516710, 631804238, 501355952, 346050706, 624405079, 128801256, 217111510, 90320219, 195369023, 245875613, 30632708, 277182341, 523832558, 605936306, 281029850, 346902939, 302653475, 264117404, 392603667, 65802678, 152014127, 14731747, 180320083, 374955243, 379824693, 86616700, 56274679, 145973680, 148296847, 57480927, 912801791, 414080794, 502368669, 448872163, 80474341, 184347645, 762630969, 450985358, 409516397, 164744187, 47400020, 273289101, 510952562, 5367305, 89094653, 186026627, 182612151, 854777211, 557012609, 2765471, 693030454, 15239152, 17654082, 143251303, 442716896, 461380507, 154541114, 367124605, 1199564712, 531940468, 311303006, 326379619, 135646999, 88512405, 194633369, 138955935, 403624424, 61821151, 908332845, 99040341, 293065472, 36750792, 319298253, 82166811, 607851321, 1025316970, 387158611, 39863072, 310109704, 131117605, 43073938, 252333682, 156418099, 865851457, 396016260, 1640630773, 407644732, 62929562, 364798629, 195842263, 19808382, 150655117, 67187766, 65387860, 332641989, 178391496, 259925647, 179728441, 315433548, 109399331, 211360312, 29461337, 166735264, 73874930, 33095153, 30421119, 915799094, 265422449, 75491285, 283373253, 3891420, 41035629, 81339757, 61369887, 28886949, 8923371, 60623109, 267888125, 1237256073, 779704460, 611776050, 16945192, 35259518, 34024128, 6997117, 481194395, 116842244, 134614728, 19449548, 422124609, 350561939, 121153804, 277843302, 755735976, 248530838, 383964934, 12995011, 227062315, 132137280, 11172037, 67678594, 44102248, 717267148, 71076813, 118075475, 8983514, 3699478, 98207744, 292992940, 1002247, 221541890, 450453665, 35256518, 150568178, 237613821, 327625463, 203009842, 1074352781, 198804724, 104739381, 333039812, 583857167, 922774834, 282519779, 180855578, 173995605, 158800532, 444929687, 255612330, 72145827, 407177196, 389457964, 48908694, 384873156, 547397863, 792816590, 400744092, 52051060, 120004251, 201176240, 52047866, 686131327, 25021390, 13119884, 28301498, 302828261, 374956003, 267364480, 140025329, 6564259, 325059146, 33480558, 648033352, 145441167, 195100815, 43347919, 277002608, 333645609, 854198276, 80029149, 789219174, 179419465, 396609145, 531767985, 76886731, 275486718, 445670744, 397681799, 224243531, 50146086, 95770164, 181226896, 493867370, 39685875, 207635788, 314022905, 451210728, 10843087, 19074996, 66779376, 17681404, 395304087, 24100127, 982804792, 56228039, 115960716, 551375831, 479887229, 17251107, 232007294, 489957227, 380580113, 18362377, 253180479, 123251827, 101627423, 169651, 700569977, 24689866, 224634853, 27344673, 39335749, 15989127, 311258325, 85857738, 243580560, 126571777, 485129986, 130226904, 157828376, 438142552, 159569807, 889231489, 273305893, 50274574, 620597107, 1223539153, 11679901, 176546092, 432199501, 260603655, 103829975, 98146873, 312099781, 719183380, 147514331, 373084553, 721666364, 115321171, 237461054, 76257652, 158576159, 171335279, 97714791, 570982126, 367378400, 281744910, 79654319, 107420177, 9369087, 160316220, 575176201, 176794927, 143114982, 197805860, 137836186, 101234167, 80566011, 157649434, 426874792, 16439834, 451168205, 538049271, 32493342, 77036050, 427554250, 206580515, 97030, 173999762, 582976069, 109857119, 345871781, 22520159, 442496589, 403766211, 872830990, 96338330, 149815841, 910942934, 128195017, 63403412, 48224528, 81688126, 156205267, 105922745, 411081100, 496601268, 274408901, 11811120, 9645253, 54815308, 510718903, 507570030, 13757806, 335257300, 27844530, 242605487, 77216051, 504389118, 460821566, 579100265, 54290669, 93078533, 335268906, 1257295681, 19713638, 147547166, 11145061, 76110013, 39746380, 146398025, 61792021, 96536948, 308177167, 279358613, 265524783, 64938293, 72933121, 4518323, 1692981, 85661914, 60367898, 249659677, 35006602, 102995689, 933867226, 112781265, 102343421, 455020364, 47887477, 802708165, 2053612523, 61503897, 291913911, 360207000, 6504188, 24074815, 201352082, 5199839, 67871264, 793911433, 68354376, 85894147, 127959917, 259704898, 623372919, 241994737, 523728469, 295177236, 246184389, 37716993, 257456056, 61851129, 459767, 257259725, 85517097, 949190655, 860914720, 239215582, 415487091, 550326265, 208181831, 205647216, 21231944, 808700595, 6022402, 28278561, 412597793, 95065725, 34062341, 379486235, 75896809, 26007600, 8340874, 125655452, 334426265, 306625647, 922712204, 226659635, 114775134, 102164105, 160295345, 897388893, 84737859, 161131293, 107308773, 210508933, 147245249, 10234801, 572980308, 850029964, 642501853, 49890392, 74161434, 354575175, 34450939, 3225575, 233799654, 633082767, 99673882, 323750247, 291323568, 97598964, 209226165, 156194171, 304718610, 78526845, 34941958, 279124714, 466046893, 66120454, 333578448, 85741741, 54254065, 1079776204, 172009139, 81146003, 85945091, 277011347, 95088486, 45423418, 115598674, 62251679, 105617940, 111402860, 755589437, 158402481, 116302837, 197884843, 28139519, 291001380, 946063753, 191528396, 336926659, 192509905, 810791265, 134274587, 193609732, 462765890, 416952051, 24146645, 10947948, 185976012, 119568945, 953412967, 70260652, 233466933, 70928814, 188364639, 68291879, 87756037, 289541502, 229394428, 178566284, 355056967, 659191043, 51406113, 705059749, 3830692, 157657644, 401079484, 148229040, 47788574, 90289705, 40262410, 147758314, 1131234241, 88646785, 742815466, 217478502, 19390968, 6297948, 112985360, 102693086, 37692836, 101508641, 213263106, 334091234, 94001168, 433115932, 310031310, 229246834, 62973885, 2108390, 443682485, 767541539, 297916411, 352610575, 258837793, 309710815, 51746409, 134579981, 522520902, 24366130, 305795867, 1519207273, 191531410, 143231713, 87348637, 159137444, 930035356, 27037255, 66281219, 100488251, 143325601, 27735179, 126380000, 332517263, 445944981, 145901927, 80616317, 74870998, 363638058, 169679279, 77661186, 95293990, 46669948, 297578653, 8167558, 404396340, 117510920, 824576974, 681256546, 864858166, 11079705, 115327441, 842374292, 95314358, 386179155, 1089989903, 183120062, 175448325, 470867486, 335341079, 208713684, 1210808950, 447843196, 293022526, 159321171, 123988013, 23441631, 329560980, 255046254, 229029754, 691517282, 254758393, 553463090, 478640361, 89250323, 282661926, 119195311, 130820711, 249186271, 88004918, 113934580, 134262768, 266004134, 14012845, 316516360, 40450474, 408881782, 55550572, 259531619, 118666111, 280719700, 46856611, 114114093, 62727079, 467090235, 423991473, 231778104, 286822125, 76981619, 755049680, 70308331, 51071378, 96211647, 512075082, 375911507, 108482552, 187506667, 31902339, 168683044, 519865647, 133382587, 220856696, 1636580156, 393020593, 119802511, 314559411, 642243563, 593391049, 263645350, 86947717, 76385248, 6091729, 154138266, 241937546, 70445623, 2617320, 39314647, 218845027, 294513172, 130740139, 75726162, 277978608, 98510909, 93980595, 75405631, 16802180, 265321308, 369544280, 681691646, 496574125, 116364530, 16906223, 138705238, 115434341, 475270877, 192529702, 416479814, 179030606, 138135467, 47421256, 386924445, 281740309, 54706151, 796853383, 75036594, 47941548, 853035765, 36910137, 342700999, 125250525, 193703674, 337147029, 390114127, 226282939, 2856968, 2996809, 127720055, 131273047, 189875141, 95630217, 69993539, 525492075, 31012241, 128934229, 62703512, 311996000, 600712338, 366551052, 51298041, 94049674, 636662304, 310706247, 317734517, 25627541, 270059996, 311005273, 78879431, 111957512, 452285853, 345579641, 166531268, 21487790, 155264944, 69622643, 279136712, 59283082, 73513250, 398595296, 108829561, 368511218, 462617237, 100071093, 117201276, 716322265, 316652903, 99783056, 258233971, 109222862, 15243044, 208556247, 127548954, 877021716, 68736006, 20074127, 433787075, 251806567, 189571784, 15445669, 321408380, 103930495, 201699159, 46886338, 136209589, 337771435, 132124018, 422556874, 658652554, 126873092, 224243531, 76269100, 551025799, 131731497, 98397370, 68557927, 18568494, 2035193940, 89756385, 309841215, 23006424, 111300276, 972125278, 62839242, 96242457, 791199790, 7936202, 29059908, 218034014, 205904383, 637238529, 78710188, 521419092, 153339226, 47688425, 796824, 43952553, 95687528, 426424876, 450677006, 148483801, 120667521, 444549166, 94397050, 185131194, 33096944, 84565950, 223504872, 535265496, 217012566, 77151600, 783444526, 602093918, 954285932, 626455073, 771450627, 674478266, 722403724, 424732229, 173010353, 65385600, 160351732, 174294646, 20298470, 269277034, 274512256, 21157956, 204204523, 313153342, 259689994, 114028365, 32319550, 1078476786, 627854146, 141595391, 175672178, 5304790, 150192803, 12459235, 576917296, 1093074970, 11942992, 231449023, 263417869, 4039132, 69882561, 102369283, 729144093, 47251356, 527616454, 45949564, 36136562, 99471842, 129745115, 59490823, 315506580, 6420320, 6229310, 68062446, 334338947, 276400982, 102901623, 229063150, 125413356, 67380808, 1108633072, 515605919, 1234065335, 47056358, 279690324, 260941706, 41659493, 155215932, 792833060, 195514851, 162460148, 52307255, 234614962, 39329098, 24379240, 156913375, 93305341, 64218768, 186420009, 303268300, 46775277, 57212174, 159938760, 54206921, 48172649, 644769805, 229119868, 176931366, 177331121, 790249452, 327411224, 65235605, 213878664, 318402055, 126827449, 58707385, 17947347, 83985210, 270946284, 3381456, 413804756, 488514180, 56421769, 33413240, 982145502, 86837889, 220185682, 4387537, 72793741, 443977149, 317086653, 135977925, 176285, 593379542, 106962644, 48383600, 431781475, 625569815, 135336300, 8631452, 509409110, 507538199, 76291035, 42889194, 210580567, 262522789, 26045310, 251602603, 598887137, 349503530, 123684300, 149434958, 101296172, 219627043, 210754027, 10101006, 235123075, 512822479, 14658225, 461857356, 290133472, 183186393, 914329439, 141502515, 130479710, 94017437, 104714558, 726173808, 59305914, 340749265, 898274764, 427610620, 225327597, 64016434, 775393850, 527851107, 485470111, 10068090, 65568714, 174018446, 193241685, 236674471, 628902877, 230250049, 41950172, 159448475, 254705004, 173764991, 95691209, 294334795, 94821106, 867766791, 46983182, 3453966, 33894779, 93412754, 98933331, 156424782, 69128737, 189575482, 47002050, 57170221, 14204524, 350141260, 138919090, 1474508080, 110347392, 1197914018, 407743413, 216613001, 168162979, 93548621, 40391089, 33653339, 547946719, 8934943, 223886217, 177063773, 191101476, 255483944, 610865177, 217495944, 104652591, 15991919, 225325235, 156349652, 116352191, 560998496, 576173436, 106355247, 37740658, 421612722, 196439523, 54156303, 84152193, 298679680, 702384590, 250139712, 289422412, 330452992, 46787995, 555352010, 372802595, 95609787, 1279718919, 260271409, 22601940, 97889071, 512991734, 239365815, 676345296, 371426999, 601584804, 1256269657, 217675020, 166246331, 151926559, 286167707, 24241939, 17654827, 1090100477, 906693291, 519726240, 77255172, 43175596, 35798025, 682755164, 21078966, 352488594, 233631351, 203759500, 594901261, 162863921, 89123460, 750735495, 58134821, 627049461, 5352161, 186223165, 188069581, 119024622, 146131909, 383599, 77871419, 141872710, 97798323, 166331765, 240042872, 331676830, 213281584, 285462396, 316215756, 193734608, 80404793, 314869182, 142100267, 129920975, 254115239, 71875709, 32704297, 762107174, 390806774, 376508055, 41971765, 13577626, 156314761, 111323317, 324056630, 63107612, 491533017, 821068611, 225090875, 2136880, 829360300, 225197253, 48989388, 2205129, 404075164, 380741720, 339340687, 20818142, 47118516, 46160432, 238490477, 146141857, 506661751, 370088998, 436776241, 62893050, 1093726258, 294831553, 43749509, 185082192, 49688461, 93886056, 94158605, 253022797, 270255929, 1543831377, 225460243, 67638771, 321617078, 578873096, 70391116, 137608717, 60053062, 135998195, 141300773, 1030783425, 628317202, 558512779, 14654341, 17962041, 9045447, 132774112, 177894373, 266924921, 39953022, 9957861, 490117490, 546952664, 161142644, 1218219710, 123098921, 259971883, 8955092, 142563541, 1038073764, 295511419, 45916500, 212759707, 592882033, 519208517, 53258763, 545981154, 79576390, 128503143, 4063713, 143540464, 119348563, 673868930, 91679572, 142570937, 353316896, 19717423, 214715666, 65458488, 323964005, 313441733, 316242, 208320091, 98412824, 161719329, 87234372, 147666445, 462158708, 99709140, 483905149, 213561519, 347568023, 1308700003, 499371575, 257060809, 505394489, 6613558, 71467486, 514195735, 139259624, 76783158, 83345116, 192610778, 49219136, 97511440, 299614638, 616430181, 126343337, 67757325, 535829785, 21298919, 289866841, 255306767, 121661411, 917937148, 452346071, 275651122, 132854813, 271142275, 323641952, 68604576, 54745615, 149273225, 65971936, 403087907, 420359424, 451635035, 434142080, 6756389, 295031691, 830584379, 85814903, 307628006, 65013624, 56404380, 1159408830, 586618198, 487368007, 31422668, 525867056, 160364172, 55488576, 196660759, 17594372, 95565712, 71904796, 564761087, 314193833, 263555624, 81625213, 132811047, 245470917, 58244681, 455631379, 223770286, 962535394, 118256445, 128152004, 198265215, 128827195, 425133133, 173942897, 138538326, 173936380, 155818429, 111959752, 63937362, 106671395, 52712456, 104478619, 734929884, 265483282, 79929310, 60909883, 315684459, 218589466, 154684463, 102689741, 76092442, 17572734, 232916424, 130704448, 291675263, 198984088, 807820749, 69515992, 183807434, 98437458, 118178597, 390294560, 153980488, 43916194, 1283774465, 491381283, 126670212, 151830748, 53502549, 110111954, 190545550, 30487390, 288717401, 157358232, 356909421, 293389107, 279191771, 149441000, 67327024, 23717890, 182414583, 65675042, 608334159, 462700882, 247652701, 98554966, 113616283, 216253978, 205801741, 238832232, 528104971, 274196793, 117954229, 12375623, 420023202, 114487790, 579946355, 662954215, 405469629, 451222117, 77894633, 90983437, 681923079, 288903186, 175229815, 286901450, 105071496, 36143717, 478594221, 93491801, 856807496, 20454741, 192108107, 518727382, 604904405, 531640349, 47600365, 73686487, 144005268, 158681050, 474521068, 6444873, 483015289, 726522143, 19128434, 263610445, 88346456, 324870174, 91635231, 16506567, 82295971, 91724373, 26937343, 54978863, 796572972, 229617297, 239428944, 5652322, 160101445, 50132787, 101534658, 45683864, 74987679, 229333110, 3157311, 585415054, 153940188, 686691876, 36490871, 512170225, 33466965, 327471951, 262366373, 814073967, 272744591, 156052798, 105755591, 672743548, 41338252, 121142001, 347939055, 140166651, 283835589, 463164559, 111672352, 246770292, 42098566, 304887809, 124196975, 112654749, 507808616, 310379742, 185651778, 494086298, 2192680, 80568729, 349819933, 157843261, 714615428, 248529009, 12234772, 13040208, 99043602, 296195439, 369560658, 318659453, 31015254, 462688093, 120504515, 55303, 54840332, 24757239, 140259880, 487620822, 288306612, 183746059, 55564042, 215474286, 51475139, 218782615, 604033327, 396915971, 1266740846, 134386694, 120510991, 1917834641, 284226972, 489247357, 157462117, 235011080, 156698417, 179874774, 127941974, 185588800, 631761302, 558372204, 57896085, 385836324, 320223912, 217761038, 386069202, 572410240, 133635867, 671314047, 340616324, 430541298, 47445760, 285047472, 115956416, 110121340, 63810201, 75580487, 521931719, 60788828, 131636799, 66219272, 60523269, 417800739, 15756200, 278483698, 34564312, 76354851, 574432809, 76617660, 183417594, 205930050, 35349837, 313566102, 95020057, 460392793, 1335836513, 444564354, 324535072, 38501804, 348611435, 49604844, 723627896, 590367066, 464702570, 89407243, 979570847, 409951187, 87079756, 232402961, 1136450126, 143008957, 429207462, 736727511, 60613150, 248160009, 107391260, 19857573, 245421821, 63976912, 103371217, 26568147, 369698311, 157083297, 203618296, 424354225, 81935448, 85627346, 248203788, 335000323, 140153348, 22031218, 266894013, 24610742, 338164071, 60331632, 34085777, 314616951, 1112398007, 135466859, 84309432, 339803776, 218957332, 454103528, 284682952, 382848263, 49181218, 1100939929, 232519873, 390574122, 773133150, 615594875, 252210151, 155625963, 112377823, 40750937, 71614100, 117075276, 143444211, 487740382, 18439537, 225965879, 665788939, 157932008, 286971182, 268753378, 278789075, 401505602, 19823150, 127692582, 679893954, 25047498, 27255640, 174622470, 284306696, 185337197, 1153160138, 461285449, 176618749, 223960956, 109761911, 148998914, 167850269, 777673263, 539386981, 441528852, 482091491, 506500159, 642794528, 76505445, 310891144, 992132239, 455949587, 115876794, 49466541, 67412932, 352967152, 451993787, 1667524132, 214975516, 57520967, 673201968, 132029181, 10342187, 42098158, 11446452, 206376605, 37853482, 253285353, 390911085, 320831856, 318524700, 57513651, 648212876, 131773377, 441801811, 168370934, 67367146, 286141205, 126046093, 66112281, 25287924, 27765006, 411020526, 56183459, 83216841, 1561080, 296559414, 474485692, 1020219, 925042673, 395099084, 298188147, 118390719, 443402848, 454216922, 136398928, 26231749, 319416720, 380310764, 527756761, 40946441, 161578643, 433663353, 14359099, 492208823, 118430151, 195916939, 446477016, 383866765, 275071810, 7839393, 245270035, 360949689, 449353768, 416149679, 1595264, 457786268, 61545082, 235144667, 226836370, 50995151, 117314618, 1224059494, 202475235, 648503130, 216605060, 302855716, 1024072, 77053218, 54012517, 535158259, 40286675, 129567717, 143175881, 754377621, 67743159, 394634195, 164329210, 408750928, 203131217, 504461358, 446737475, 37309329, 237161757, 261977154, 294319929, 111927695, 56507040, 549379063, 693542672, 190747612, 421771185, 87642269, 185091874, 19545123, 744798526, 432455469, 183384371, 761706748, 429630275, 303561395, 216501431, 744537856, 16642023, 915473795, 563347376, 8596138, 178360455, 23426194, 450642047, 4394905, 717187148, 125061913, 603380979, 82975028, 365713980, 99088795, 250602991, 728729504, 705750958, 88077245, 156807824, 341773458, 98300295, 313497825, 419305166, 75177073, 180375056, 9184717, 55140935, 90989917, 333104796, 360867615, 973785546, 196664613, 162747195, 510684178, 95452417, 755510599, 731130159, 529699836, 327399499, 255249795, 71356423, 245317564, 568029064, 1017051018, 639609385, 178834193, 289211589, 484582892, 389961124, 28862467, 97279547, 461905958, 208027212, 496409450, 18134246, 402727253, 560969202, 77587776, 17875665, 109726843, 360230315, 10355913, 518145903, 762736310, 272024014, 624866073, 573033863, 227409669, 387022150, 236983870, 726948636, 1552027993, 728780989, 449830931, 982752574, 239242546, 95430085, 269673691, 51243290, 450950935, 177672770, 68816816, 129641891, 396580093, 19130539, 159684138, 213570738, 317379128, 159382750, 120422229, 7890143, 732819285, 42898075, 268506055, 561295954, 412240225, 205377313, 189589843, 29608708, 95054518, 494082070, 10335742, 93877716, 400493599, 510337709, 4814301, 32275559, 613172955, 137102727, 90831165, 165468750, 578425354, 193252162, 497297159, 286324747, 107646771, 92516762, 820190090, 6465055, 179512184, 101316766, 14550459, 147347430, 166439233, 310074168, 95306395, 1429719534, 924394922, 216590623, 28155021, 83104468, 134905733, 39658553, 99502251, 672857422, 357822649, 106505132, 8659063, 270149793, 348957418, 18667179, 496930613, 119756545, 107002672, 311048458, 387715048, 288890508, 347541666, 338847567, 308315374, 64523374, 406135460, 177628076, 130254812, 1241192585, 669340524, 151680649, 1133169425, 581585186, 1134881133, 23814410, 618219793, 128510985, 946736810, 63200740, 95319259, 163070668, 206867642, 22090523, 488775041, 3541998, 42421001, 306756576, 125310756, 172931406, 32960029, 581682438, 574587304, 494568231, 247628458, 223641252, 436894436, 37562418, 428977394, 55916299, 34548863, 337043840, 259529784, 30104454, 115177951, 117082915, 752313056, 76842338, 355405007, 288263635, 164765957, 407893404, 32368635, 366141325, 251762676, 323251093, 380271138, 377250356, 128811840, 566569057, 1024731460, 184287532, 387954118, 528581110, 24317428, 32838655, 51346010, 273178566, 75699576, 957991131, 229671290, 122537272, 311717130, 769197306, 67022082, 9782830, 94418761, 46896695, 9031510, 405018728, 224669007, 181696428, 220386938, 150391471, 1118894388, 667861767, 37075770, 180935152, 298946058, 80283635, 123682342, 136241872, 187973805, 573363147, 80264087, 110935532, 1560617599, 152093162, 1013521683, 1267683979, 139078577, 215571466, 118795242, 491292560, 183442633, 231942191, 262411961, 421019864, 179284112, 287121104, 103059442, 435470543, 610208024, 264864558, 70676578, 266822052, 210860819, 30935327, 34392897, 893287063, 122900061, 72896667, 120703459, 259209791, 34216895, 260156483, 849508838, 537649930, 434059302, 733113311, 520518044, 827856628, 72000045, 64558810, 209740038, 174875603, 208844678, 48720856, 84605753, 401911402, 227303851, 110534894, 232101599, 65523617, 897769064, 219555325, 503043845, 190851924, 144315279, 337060800, 171928857, 203576517, 820317209, 483857118, 43889165, 20231744, 61271422, 30861447, 744930678, 376404284, 421269512, 209725614, 163690681, 7369747, 378596467, 1793721901, 189196299, 12358195, 655765148, 199555190, 226309009, 71088917, 253034648, 609576140, 160113630, 229765410, 163139619, 12107390, 23538843, 259484471, 382207261, 97777535, 44012320, 334269374, 589507326, 13887952, 204448296, 26155424, 46491617, 66391577, 242732035, 322483751, 384546269, 14247292, 172792744, 82871675, 13892815, 350300286, 16316546, 334050048, 78416921, 265867719, 776423146, 535008712, 200037797, 41164210, 55640289, 350623775, 55331968, 5292771, 115139324, 317738463, 105429546, 76645015, 45000683, 64491525, 95284994, 153638992, 15121128, 61985582, 285607589, 136360514, 633006139, 48270826, 160472399, 36897231, 150985062, 76789947, 522541397, 72799093, 868676691, 31453601, 539771070, 632540879, 344268254, 133338338, 13037643, 645965500, 34505757, 1079065156, 303984062, 65933807, 148200691, 687187, 168487468, 231972893, 896021696, 388699563, 3893354, 391759046, 341250967, 145153086, 48701095, 263235594, 234318176, 256855052, 375751367, 384011843, 536918883, 119362674, 1721214314, 468444293, 170184683, 536499430, 175008339, 757687130, 1162476, 86231158, 245144427, 35828055, 1387849, 86890015, 25639118, 150615784, 7470831, 218711789, 379063238, 1293994938, 19649714, 395416952, 382602977, 419070766, 741352914, 697061427, 47890493, 83542371, 91843059, 293657017, 7698250, 625736580, 6540190, 400405898, 173757914, 74362498, 131736057, 835544531, 717219766, 133637634, 1032335250, 202475806, 82818240, 1106465416, 217070952, 118361056, 47302577, 234142356, 658015452, 671160262, 104431559, 1116893798, 154245299, 476006026, 198636901, 35004889, 188260043, 311179681, 132557180, 209728252, 116210116, 145289247, 158049077, 126361130, 761260698, 683203991, 122235407, 107170564, 263589519, 94465586, 342985783, 248695801, 469890359, 356652660, 109997891, 37141054, 25825128, 75841648, 165192538, 376358030, 653722924, 202804054, 179005295, 115432649, 119987126, 2576393, 171318102, 254753470, 319479635, 530604581, 45232665, 426156864, 7570876, 246010625, 675974713, 933741047, 84468601, 90119387, 12832772, 605995575, 234043415, 392200000, 76438809, 45689369, 77774280, 235438368, 90325104, 112867821, 231907672, 182682811, 501371766, 181236387, 6489640, 108387388, 492649036, 38216752, 112254679, 16768233, 367428407, 413802498, 297920646, 281058758, 233843270, 158808438, 76897777, 186559064, 48107324, 83533540, 205234910, 63532523, 47702822, 33187572, 348631405, 141915245, 85513073, 1032766441, 364699182, 98401398, 104285560, 104109254, 432775874, 49194888, 449213360, 228308614, 76517296, 137658472, 328159440, 239192416, 63315107, 59715423, 35566206, 266072404, 506531159, 328261274, 21052718, 502055933, 831842038, 73493341, 32292906, 180413008, 160606353, 6664902, 117303232, 52416811, 54420369, 126247770, 630214523, 700687528, 307620322, 68885611, 1505042248, 70510438, 41159548, 218612556, 437194872, 40031504, 329207895, 79986945, 349808175, 667357860, 163983597, 513609246, 93452674, 14891931, 98207511, 123783811, 280473624, 2605177, 118668408, 191469064, 76289037, 217902871, 205250248, 246908921, 176400993, 339789307, 1007927542, 130969423, 133939341, 140294872, 120129576, 132320296, 272798874, 77691983, 318421745, 56640599, 132619866, 137695369, 58651871, 540605858, 18445575, 137915911, 169066561, 119969708, 163293949, 398875575, 174609763, 513498138, 203664954, 235348624, 120773076, 405365947, 40418767, 609653386, 128545952, 260763515, 121128049, 29921277, 2031645, 378651799, 192874747, 33307736, 601271227, 615267694, 123174981, 238132210, 487823973, 380690168, 359338050, 9231832, 262846401, 437734094, 153530916, 25816528, 655404006, 274004072, 255366184, 40343073, 181818207, 42207488, 344993305, 517142393, 693928368, 533959105, 185804272, 14757639, 71210334, 532950723, 638545006, 1208489177, 122767923, 49443691, 29959361, 81034384, 18663467, 172254618, 244020387, 284169478, 70664982, 109468498, 311690382, 519893947, 586380763, 549344569, 319534621, 213632783, 191753188, 99472269, 312954305, 373070761, 163006662, 142430809, 249489565, 36805405, 6328343, 29697415, 713777564, 1257123, 337684155, 487468973, 1355366015, 23203378, 1492022, 28040925, 25831364, 461916909, 228300194, 313381079, 67557900, 215906415, 396963904, 644508437, 45781707, 289235242, 201845278, 514106796, 62715889, 415621523, 648493209, 278043413, 207438632, 32558399, 439054319, 41576240, 74499506, 473242636, 1524309372, 680345465, 233829414, 165762418, 189513154, 229745952, 210512755, 192544442, 301105773, 270742781, 22780042, 1446589125, 20194436, 97229298, 94368510, 499691904, 875003091, 162048242, 78111190, 73142079, 14973805, 63000632, 7044373, 899605246, 516957610, 222935409, 22144420, 289124485, 163434056, 19450818, 72343242, 60223367, 360529906, 456963471, 290920596, 75561456, 133933550, 824045128, 189104411, 453638062, 110404208, 237373102, 219933045, 141486963, 273664130, 519597134, 698545, 115298732, 15821652, 79046078, 109938169, 31732010, 167533163, 120619723, 467594200, 102936047, 301278564, 283629647, 347797210, 37538490, 170741590, 333107118, 22333916, 63135663, 201889067, 180685451, 162895881, 297453018, 57166434, 867813063, 71433963, 202113760, 94180411, 422682969, 311849023, 308809793, 135761506, 314087596, 8916572, 162530713, 317077994, 123483263, 101183211, 45958356, 175042500, 585816773, 68153435, 44742072, 208207250, 322177641, 8840270, 381504288, 141521479, 528916142, 925351114, 748032266, 115832528, 50488967, 118356383, 209784665, 38004360, 239465886, 459815806, 52058490, 129671914, 189698386, 527350416, 201775595, 777311606, 274855591, 1087621198, 131018400, 380753029, 12363367, 210528163, 72591280, 722550251, 194873204, 40123070, 66760304, 64983120, 50416210, 348634454, 263115529, 8682185, 157404741, 100188421, 37587613, 256307205, 296018287, 146832551, 183657400, 80190287, 74014802, 299057591, 132562238, 183961494, 203567462, 671825771, 56290437, 680489026, 281129360, 229923846, 304728216, 156839841, 542117557, 292728487, 35259028, 37935372, 435797019, 25800924, 114317560, 344004153, 458488478, 341630615, 187451078, 81711709, 8567341, 129016562, 563733372, 159419305, 435972528, 125328139, 328669548, 421837982, 423046683, 498975489, 91304459, 20382213, 191844616, 68720852, 1367048818, 46726553, 433686580, 146625003, 115892006, 144783591, 23791648, 172307148, 213554382, 271257874, 223662187, 277117744, 30293344, 38150433, 121375506, 118817974, 134859724, 41588306, 360838170, 5651993, 240218397, 92140555, 41188494, 12577022, 23200686, 735558246, 592309109, 34159636, 2307427, 137377500, 113724924, 372971648, 99098930, 604864540, 50550887, 140579415, 16664272, 79547759, 572258804, 251977261, 274842587, 58257653, 282865, 369474421, 106532795, 121820220, 29828986, 170859056, 79628750, 241171900, 181642557, 505757418, 576715204, 269766952, 275870684, 908735187, 102637210, 203869797, 24028309, 20831863, 306721061, 53055428, 468568987, 359625167, 20721069, 1568443303, 42287795, 38768581, 518231, 401007015, 181647838, 276287806, 340707809, 182204619, 132792293, 12790004, 249968751, 75005213, 82922195, 532827018, 486233606, 380247564, 164913781, 341614706, 40408813, 28634319, 152972298, 61874114, 129028933, 197035597, 88380817, 447237561, 159373612, 30073435, 213807454, 198152591, 29203976, 157187220, 139306529, 29781833, 916291045, 609024361, 183981524, 310967823, 132387541, 270330433, 176012446, 1435562172, 565782149, 368581357, 250169909, 167109954, 78114530, 450920117, 720371702, 40673713, 660993113, 32626291, 114180789, 12293807, 129551232, 126320645, 248761299, 476542077, 176232474, 622434452, 116703020, 108624295, 113504164, 380234284, 55299378, 100341532, 138182580, 307780292, 368162808, 421091886, 102337526, 69184308, 205712481, 772935220, 978358975, 592195011, 45404438, 987220345, 326303660, 484747001, 32890900, 122579649, 804737440, 63326220, 46714636, 108683082, 236411472, 387452316, 47923673, 18573787, 293947100, 194837700, 42998878, 2775724, 5937203, 109184114, 19635967, 148192299, 388540058, 223559502, 894468200, 475930144, 421989855, 76486812, 198352201, 194027224, 39802789, 149178404, 180397658, 239096568, 81557112, 116885349, 839869755, 63996366, 222316267, 33083189, 93233339, 43206054, 568756695, 163880667, 891506831, 93324001, 343019017, 528282800, 14423078, 181594452, 768113606, 550188661, 664386653, 330112596, 153921613, 265798128, 90495064, 69732260, 561275099, 218503000, 181672502, 386010511, 1097895138, 1065048541, 116560512, 75536309, 23101607, 99007927, 61836258, 278473245, 50916968, 185621386, 424477123, 433326782, 327209418, 189602354, 26683813, 148932519, 122670865, 42659983, 294201512, 99460371, 4917215, 107500254, 389457849, 162709052, 854068931, 14279309, 151687308, 234968305, 251879208, 299072721, 113937904, 111678130, 284028773, 321497014, 236478509, 356836485, 377473930, 208288596, 37176322, 705175198, 415458824, 299226122, 174009361, 181658453, 52791361, 227587337, 294298877, 211583808, 168887021, 108184910, 248209879, 178187104, 290933212, 123583422, 312677966, 123406988, 49735626, 543711057, 814099593, 403828553, 208371949, 94859478, 33762388, 760260473, 1468554429, 161538216, 148465973, 185574009, 361865111, 216837303, 51689093, 201261334, 68817857, 283490306, 5215713, 44587361, 68020907, 310223075, 321744939, 155242735, 388991530, 13790951, 692722599, 149444232, 145778623, 120074443, 210689173, 238137620, 69715554, 183735839, 32604375, 195328619, 423225477, 1062842719, 164451630, 206986014, 152350862, 267811748, 10001295, 51100634, 55051088, 63862911, 160103054, 46778792, 254331022, 169649178, 100762472, 235746473, 623482722, 382765806, 6422685, 144182367, 445501340, 319879178, 239895278, 69750499, 15735363, 38829934, 223667437, 9292211, 267124387, 305637661, 95494519, 50670070, 141189648, 380223771, 331830180, 239646016, 39568390, 183097017, 192685055, 104503618, 162700735, 873660857, 70425871, 18559691, 150833080, 210632217, 282796066, 22448296, 14279168, 301641904, 183818135, 530846323, 124540413, 24329742, 489896612, 52128923, 67152773, 138981747, 856723899, 245972168, 479205223, 80189708, 396888416, 1226107047, 387634267, 70122793, 232925182, 621022291, 345897487, 25986514, 959062636, 703420985, 14809175, 60802395, 1374831129, 70827164, 183276650, 134312128, 100439622, 212316979, 455837071, 218132065, 45699362, 740181985, 133265298, 365438083, 32202096, 254584397, 608064056, 460764048, 870963992, 349910261, 21957709, 354512724, 339838809, 239950985, 884525570, 12780854, 181815776, 153560024, 40101220, 64061959, 121003858, 57374836, 143917566, 118501894, 50897758, 288125009, 185500388, 71284471, 821260796, 101919840, 418319430, 523949918, 78107168, 53544032, 247094588, 32452837, 209522348, 184925295, 730353380, 77660325, 986621105, 384303697, 1114416405, 156156804, 116473460, 319245785, 179471321, 498800040, 37752275, 264244096, 438436691, 182896068, 224769637, 66596604, 510979937, 179813451, 264160275, 115599375, 343091667, 232421209, 143549858, 80581631, 55129365, 294898142, 56074969, 415549565, 407093523, 174878333, 90130953, 166937467, 351412139, 80780201, 68129768, 336205386, 324030688, 230435435, 141526345, 741567559, 49560059, 91680176, 222340356, 972578341, 410606059, 566266144, 761454323, 129497435, 122717757, 101934242, 176044562, 24832667, 605657840, 605446747, 114681541, 474519496, 99683027, 206240210, 257353181, 25530751, 4036243, 623034485, 216623108, 182454361, 646551024, 200580374, 837218291, 119531818, 510797906, 32466317, 94303012, 5271034, 138577278, 251249478, 362751417, 55448409, 178913483, 151294613, 226135550, 247165494, 368726991, 430264480, 314511672, 132876963, 317746354, 414106656, 66596397, 1089775, 19698876, 485835432, 497255228, 482119634, 178920802, 42147494, 106412103, 42031501, 146219089, 89327892, 188382996, 84792008, 135778243, 432742767, 10583249, 432332762, 45747773, 406164102, 356705675, 276638386, 857346272, 14592942, 75432366, 328426644, 512118127, 308804874, 27160132, 93381582, 66022394, 101927571, 12705247, 10165567, 619794133, 272564395, 550169694, 131433004, 203479343, 787730871, 203866011, 811760435, 70128405, 412297708, 67469564, 126277545, 108964437, 81155264, 691236889, 180924302, 417705671, 140468180, 38472464, 370017612, 165575623, 36417721, 162352148, 16694465, 219598694, 95137112, 117339761, 199903455, 120942563, 43216238, 221777403, 82045511, 205431895, 152541326, 136614165, 18388564, 128466492, 305282771, 4767845, 119216738, 167427060, 73615498, 176693240, 428946477, 76908609, 139860171, 91189404, 10442833, 221529268, 49988359, 205283119, 6031901, 12399489, 358248004, 23118049, 116556989, 9604130, 54910149, 563280398, 42438042, 22983672, 155466254, 141444859, 257525129, 554187570, 218438669, 308451788, 488594, 72298680, 323792931, 30917947, 159762397, 313426460, 240010248, 1400624608, 311263290, 367318383, 89153767, 346084712, 98580427, 60193806, 2003706, 21782743, 1390978134, 365939581, 642892844, 114238957, 201351741, 26444030, 962842584, 300802421, 692604233, 142521496, 478599808, 209089310, 9126890, 132097627, 964954927, 410889370, 125366419, 146952164, 598444433, 462803969, 31420495, 70786872, 454767670, 211497268, 347171280, 504306005, 4899855, 9006997, 427307659, 6940613, 526442627, 419999331, 195938604, 392336572, 582457257, 12566248, 252972645, 524188198, 169416313, 205283119, 4992437, 95690941, 466356496, 14293635, 313109472, 427425187, 484430630, 445830646, 66046322, 173601347, 268117896, 21489738, 330475700, 159471375, 261243311, 152628432, 93885980, 274410467, 64992798, 491850328, 143510819, 20735974, 267462613, 722269544, 496100679, 82629588, 1023301788, 161837964, 550644484, 57983824, 357182373, 592169419, 182932786, 220191779, 314456233, 717768272, 118222793, 85921836, 362677498, 104595632, 372290057, 34647434, 136962830, 62105589, 225938721, 394671796, 132065092, 254500905, 141796672, 248406404, 161689911, 467051237, 149167828, 478229210, 188758373, 4645595, 500345483, 70597127, 66110084, 338253305, 148793003, 826424320, 250180066, 295998476, 193506717, 12268966, 245319371, 258511380, 102968860, 24856814, 759598449, 456025015, 63116577, 25014436, 6424499, 200916978, 526076939, 142654090, 587186507, 4829715, 387852089, 24913448, 239767896, 56746300, 678852124, 26988007, 838897054, 388961004, 106264623, 51432902, 70135167, 374749912, 561892078, 235776838, 146431279, 40094643, 266315249, 392014466, 379765031, 319771903, 520753483, 158703012, 193279404, 451777583, 205731601, 90154989, 25157587, 134644825, 320967596, 1015636780, 47003905, 63307902, 18297194, 373517005, 43311767, 355994235, 503828557, 29800099, 76533824, 51262525, 7569191, 174506071, 301399815, 630491848, 17331814, 26819225, 11870482, 155688904, 533451405, 213533150, 39318438, 169203210, 1421077713, 281433168, 8213444, 202846056, 308516675, 543488962, 300136382, 37080023, 500830991, 234208636, 111177787, 289176192, 108860163, 179759694, 41220824, 53375258, 112172070, 132871238, 29036128, 33621299, 257470976, 402998029, 6036266, 149799284, 552326547, 451306178, 543097084, 177366202, 31539901, 374701558, 322724550, 30028010, 137971513, 174495992, 130276225, 481083677, 113965893, 440152157, 880817775, 56949166, 131831317, 96332219, 245293129, 343086945, 207290483, 362997580, 281898385, 265396186, 569449350, 374979334, 367504807, 75539936, 87497049, 194937288, 300017588, 614791855, 21938919, 91591125, 37585915, 56344207, 11369063, 475874511, 93897100, 57137439, 98875322, 149966168, 6831495, 284939593, 71554134, 1177343496, 241691136, 261181017, 91589162, 759472058, 25860064, 229980430, 151201667, 363630776, 61039384, 16367640, 74716496, 320880466, 97449300, 84290580, 878033568, 347279513, 49451340, 11099903, 4012427, 95324810, 70104005, 15556440, 563418531, 85722383, 1510080701, 55086417, 324445788, 5840727, 237996672, 309033959, 380237272, 713432734, 97977298, 425247881, 549401091, 42367214, 124171693, 13728648, 271522729, 104353540, 30983347, 567566788, 5287104, 47380708, 610523873, 1071520951, 586615571, 18152312, 394985183, 624599172, 121605667, 65667, 329584896, 74269983, 5966432, 326301759, 51832030, 344971955, 172124358, 192533992, 140336706, 70432990, 156507386, 166054515, 6979704, 16895331, 250914453, 135342967, 526287559, 74955594, 168639721, 925914976, 550340864, 71674640, 37394971, 195235386, 894068657, 389840550, 234264204, 356119337, 296269652, 318607725, 177216971, 35471586, 310008222, 188885515, 230074658, 251976369, 1012294849, 13473455, 34547886, 38148143, 88084327, 99967333, 241822408, 97824524, 34403943, 801234180, 160370904, 1043678070, 761793846, 293251810, 792324516, 221055092, 615263179, 469644586, 21769642, 533922220, 240722496, 140926828, 244495640, 2381163, 29261625, 22688741, 38190816, 206438225, 109367497, 330648052, 42177521, 100234587, 189056090, 83072825, 157610994, 412963337, 231015084, 414160521, 490334213, 320856959, 177635672, 10172370, 148670092, 51270713, 324796801, 34733790, 356459439, 115264171, 791175236, 221133207, 64047136, 91180657, 938374353, 445898195, 12414361, 462280365, 273862638, 699552509, 118902278, 980966578, 129519222, 187820830, 90328787, 588392588, 195789485, 174603486, 147124206, 497428814, 82435886, 2522356, 91555521, 184371705, 425275103, 336254794, 298175593, 184296599, 484687225, 44903790, 242070856, 203539156, 337211789, 440789003, 459581165, 152454674, 121843548, 254880812, 802881, 1167248, 208005247, 120153640, 1030231992, 684792694, 254465507, 3393200, 446223036, 566088276, 73355893, 1058387812, 343504039, 77905039, 1235084603, 2930475, 370776448, 412444402, 172189556, 145963739, 8154580, 99256393, 104252427, 262629021, 492955206, 413208228, 151126759, 140946250, 66276408, 425863540, 394414886, 67304568, 213190634, 99278774, 107893657, 86280871, 1043784227, 315958163, 9788482, 207391662, 226820560, 86295679, 196349026, 92806319, 200866143, 190805200, 14198524, 86531203, 11511730, 199830771, 157259402, 20029322, 482198095, 388967749, 157732561, 147647647, 214749179, 262005507, 232814228, 195805574, 49022961, 115567954, 179672237, 336934570, 140433845, 224864907, 359773199, 131315031, 80500570, 399258764, 695540113, 474914291, 13473172, 57301385, 548062498, 230181195, 160156329, 683795824, 245762462, 181441585, 158876788, 420758607, 100220939, 7944469, 218327549, 378561052, 60099129, 519578350, 36607909, 202033124, 34877421, 93606745, 264776439, 119026797, 2529564, 9403668, 696918448, 183908338, 49909078, 725233513, 84478235, 26714175, 385829996, 103110992, 9649900, 268807152, 276560757, 177945830, 216949133, 1269048787, 1000718107, 371496297, 409606262, 9814152, 200930029, 24598238, 208554496, 349026372, 315764522, 295713599, 79526135, 450687078, 878333481, 577044660, 677823376, 341532012, 294583864, 501135878, 65247893, 485187898, 404383021, 71607651, 305045155, 91598904, 96303359, 336329394, 683884301, 776367957, 59556631, 68228428, 309294250, 689303644, 343840018, 168726273, 330045120, 76919656, 216865000, 76419253, 346588099, 75720289, 292591927, 351285038, 442401569, 125829209, 120493581, 349025683, 26508141, 7601057, 104034295, 16089576, 535258792, 505620379, 11149623, 92404254, 39570723, 112411444, 1498798, 441820324, 9578007, 820255637, 406406648, 340861342, 262985150, 77419847, 55160879, 108361141, 185902013, 179865121, 106803273, 970600940, 355582629, 1297196816, 325811035, 91954804, 122433182, 17917587, 4760249, 62816242, 26051344, 24500289, 4108084, 327430132, 734497985, 15433330, 366082528, 20129877, 136236432, 185119905, 265282795, 152340114, 161040455, 140610234, 619560834, 466475340, 288243603, 24226044, 45599067, 635706390, 229446925, 71152488, 567934630, 15777436, 68379067, 107796857, 114454689, 240073923, 135030889, 32209844, 213237323, 72314635, 60000658, 222414604, 313716181, 577909014, 259165096, 152559143, 327211870, 389394634, 305972376, 108400091, 788530967, 37776314, 179879443, 504899432, 326542293, 604994379, 307723016, 527677781, 214176689, 79676568, 26141339, 150500547, 17257834, 18337946, 190540255, 46088393, 139605874, 627854146, 84786191, 824549749, 587894393, 66523578, 82772782, 105777524, 29283538, 269006705, 382204919, 442726114, 136442212, 55804480, 588668133, 26452028, 18714118, 126921843, 761504697, 395759233, 5456378, 262286487, 128053283, 226448194, 266010497, 66880640, 369317224, 315297363, 90642781, 79247554, 507135746, 155862994, 639218206, 543589207, 134503234, 426266138, 485094983, 140646495, 34724074, 751768799, 11160927, 266105388, 183607443, 55759177, 455311792, 129978561, 88707107, 578152717, 190907184, 951869970, 138642870, 87223487, 242468865, 409841435, 504392457, 958879137, 887948, 242381574, 291932228, 10465524, 245041482, 80874118, 174863657, 189408600, 561444372, 260563617, 13829018, 334499052, 7898464, 50520039, 137108498, 457472370, 213651167, 277044497, 1520988, 32433631, 7498240, 9680872, 368008598, 89996204, 1772547, 43473509, 221770780, 115514658, 722740856, 46131295, 104160215, 309198851, 186541369, 354393997, 343814122, 28135674, 363069718, 60195418, 249815123, 258269237, 463393154, 286380052, 21992814, 245571883, 230213468, 174830343, 145069156, 35739292, 35036116, 147685617, 1162322415, 613497063, 62236988, 354434404, 719600320, 64473981, 574762672, 74419942, 222351787, 222296112, 137133059, 269217311, 1447224712, 620541026, 122376006, 339447710, 111262, 520018911, 295075926, 117492082, 172364177, 72715068, 2802115, 96068513, 486465298, 109341759, 405805016, 78734663, 165024753, 281962916, 148885819, 158566661, 94533950, 268828123, 704023674, 69575608, 242325625, 219308081, 66287370, 635061087, 34732659, 258910813, 91060793, 537888945, 83783522, 138091236, 234668748, 4570961, 80122622, 1675017356, 34230922, 175659370, 72029602, 565760502, 407769162, 460939480, 64314159, 99187283, 464814011, 299466094, 858226723, 1566699760, 540958666, 1162935, 127502031, 209891775, 71083600, 966049744, 28493332, 59840256, 264820783, 945246138, 224698145, 661131728, 484674324, 483874050, 102332731, 145495949, 246216293, 229707923, 48353578, 341803665, 15260347, 43168187, 245008312, 235895422, 932217676, 448098714, 601522463, 208638983, 70950806, 246715911, 206939587, 504537662, 249640899, 663342505, 132602488, 237023008, 271665373, 73273317, 414212137, 82155947, 63045137, 117001588, 701956474, 12341836, 741208922, 75015330, 63863115, 206795425, 224805980, 126838471, 1513672, 261475995, 199898763, 116696635, 62315831, 74534761, 48141912, 507763765, 409853916, 41992293, 160618463, 19061941, 362137151, 437573049, 1111040581, 37483543, 132923690, 123577807, 33575117, 52229797, 128739500, 106259479, 202736121, 98750461, 124806122, 168854541, 215303376, 108271404, 374738311, 33947321, 330887266, 380905198, 180547932, 1077816780, 31462746, 158123959, 967323497, 6285966, 93572888, 378155981, 665927165, 182313128, 228093170, 287106554, 94615047, 97625068, 205851844, 312306262, 300740689, 284198340, 254670965, 15127915, 1050011618, 595546628, 120889074, 28337025, 30226520, 291617105, 151883210, 525694816, 408098720, 589949784, 122038243, 84835527, 549544530, 68172986, 167643719, 498174591, 1468433249, 189938207, 114645248, 652751129, 33288, 296322430, 225897056, 94662403, 972645712, 514394496, 354597302, 279625729, 189276592, 113945701, 160628669, 71663562, 1136311316, 449922449, 109305294, 25903015, 68012987, 194213495, 322530073, 1391006, 138871848, 17920227, 6658793, 86250553, 10182881, 72733476, 541229474, 9011661, 366299509, 883556822, 779188858, 366429824, 267780956, 81714075, 419153269, 116835732, 534866532, 198874034, 370419219, 33693751, 258011098, 59465227, 116573648, 248016743, 383049821, 153311330, 157277294, 1106412442, 804493825, 41317774, 358845965, 117276389, 836066423, 191588125, 127078495, 1325377880, 369491326, 1307433423, 7027757, 181825394, 326337336, 341068422, 72496314, 23284314, 351606931, 7304889, 153723980, 112415525, 95172850, 54709476, 165462087, 293108665, 37830858, 449176445, 4285317, 595988777, 76326597, 165025994, 262263310, 783079481, 115744514, 120168802, 95694967, 98001853, 549870358, 148715494, 95242121, 258741284, 48744289, 20317463, 31472525, 546743923, 208792728, 26994329, 818706174, 5174414, 549493798, 132079010, 120321140, 49820221, 104064474, 462341515, 234265682, 161857881, 129230606, 244638507, 113265287, 127435049, 439678344, 338052074, 105055020, 45488346, 21520188, 124922978, 166272462, 320046006, 211867593, 190828534, 17589070, 334032439, 107523934, 51332424, 233782723, 549001531, 4900839, 205007187, 591867374, 590015780, 298458526, 1967334615, 441214917, 1310297869, 461357151, 132206852, 158161166, 60838994, 356785168, 207180049, 233343334, 91662499, 78652934, 284098304, 158124878, 22203488, 398554061, 285871578, 401432300, 103233285, 653680319, 490718745, 8490972, 74542096, 384993659, 254532566, 32222495, 406187750, 604988243, 373437472, 144897320, 224093422, 372730268, 68025333, 98372934, 103376188, 120272438, 186287259, 198377999, 27216572, 10465161, 511995883, 130798381, 11120831, 78249838, 232363853, 544246711, 7153495, 1091110206, 133811247, 113808463, 605631188, 1052708333, 126893547, 39774334, 180883013, 359158848, 1912346900, 4987105, 268798968, 372569648, 153511085, 788659143, 76984837, 140614222, 78605262, 225898613, 393207289, 376746631, 491483769, 255293774, 208951765, 315478669, 1972496597, 107426025, 316546125, 106275830, 59276922, 340542241, 99514657, 111155814, 449642831, 822923552, 103228947, 745373669, 491019544, 445096334, 302017561, 489676082, 472373959, 15573280, 110493567, 3188140, 912000, 237220732, 146019553, 1508975, 45434704, 56047282, 190521968, 365562112, 434861775, 13513425, 153288759, 214240126, 36541709, 560164551, 263372325, 105670262, 112785882, 308599797, 142927476, 45450952, 271738570, 353549043, 26356124, 68228532, 91916996, 195497556, 17493931, 539977267, 228825945, 43272687, 564779133, 105659518, 357134746, 12627241, 107899355, 274031191, 1089863811, 237761663, 129848858, 204517525, 271785261, 224652394, 477875203, 387546005, 56971370, 163679617, 488145694, 205132638, 587972362, 77425183, 314424534, 85625093, 352475621, 203777220, 184752944, 5685221, 13540188, 99220301, 585711349, 124531192, 164357928, 193451967, 320134989, 763804018, 220088889, 401515545, 233891383, 92178167, 121275407, 335530263, 466122774, 370585924, 7842267, 285869397, 81144659, 66701826, 528031455, 27866119, 376789018, 370266907, 27546622, 57464334, 5797824, 473356585, 346190266, 196418151, 244531684, 399015349, 230505558, 178149778, 600871146, 9334093, 368899543, 110850651, 1001890800, 15145580, 32559884, 98065128, 113784715, 68804052, 5287925, 49808102, 344623993, 13288558, 467271229, 1108326144, 4515402, 152358864, 477026979, 395661226, 53717897, 303160485, 890046441, 810104823, 188924581, 154062296, 66137625, 511990097, 63451723, 424961953, 23822711, 29445040, 473828077, 478665430, 56750413, 438690837, 584705846, 14660918, 526421068, 1058548420, 87903930, 566480008, 43616432, 372821003, 302084468, 344543661, 177041086, 155887078, 45541999, 17220280, 63782557, 24072584, 360465232, 690158961, 10083948, 1315524246, 119897908, 79107957, 498863216, 103176783, 13743198, 710040339, 50460976, 264805521, 384094235, 120609795, 53395169, 135347544, 143957077, 10866035, 126868613, 156940829, 672908121, 86313154, 57674632, 112474576, 368160798, 148366957, 409888025, 282336207, 179043158, 364359437, 357972032, 68645271, 143720741, 197972098, 66078012, 400175507, 402735918, 17262128, 495785455, 229825247, 361240597, 3689898, 60680715, 186359001, 35521466, 129494521, 277947686, 207880776, 147324844, 394428770, 351562173, 25082745, 12330931, 299070431, 53228289, 420436282, 27213571, 333250697, 56639041, 234893078, 162289394, 701412951, 444110071, 257359553, 159689588, 400852696, 133314386, 976416193, 236740343, 1079473591, 213687939, 105771075, 365856492, 185840800, 229423641, 543638835, 574313519, 66525435, 45344964, 14624434, 1221371275, 581788869, 593967516, 409753468, 218747078, 19614509, 104407914, 284680782, 408282938, 192836754, 72568978, 1102725063, 55738824, 424155387, 246087690, 130165908, 226185918, 361573938, 118930371, 45345981, 343675694, 285813808, 176102443, 168471779, 45134576, 15375988, 23122028, 413133287, 6394505, 72947951, 237250095, 3504981, 35376939, 174196213, 210810774, 150494528, 94300418, 540060151, 23223574, 21719750, 127767362, 18939315, 445303979, 101396805, 253128644, 46227039, 322145017, 53254115, 279164430, 15684759, 23476580, 33384056, 334089557, 100854735, 234840213, 256271637, 33473168, 143447783, 137338677, 40728442, 283291647, 357144190, 623827480, 199137981, 64311873, 158605286, 820316068, 191087090, 16830073, 9785726, 109657367, 155399533, 513376536, 600866363, 376543419, 166811460, 14212392, 60326793, 133185223, 321496303, 80112853, 172903699, 453023290, 340113804, 416482854, 42517915, 108867250, 284642954, 220657835, 176697491, 424683513, 869118780, 65970323, 158016626, 177876980, 53040840, 595140196, 154416403, 154175067, 323375974, 67245799, 397192851, 587826998, 20603480, 294093665, 275847879, 206530044, 168198791, 497715973, 705658322, 652580450, 508904813, 43964664, 348604353, 225390120, 312240624, 261114903, 281731569, 112021963, 716806504, 570288879, 578258221, 596236353, 503517970, 107073944, 126607997, 7087063, 927054752, 221497471, 166893325, 296448266, 410656004, 1103932715, 218337902, 522658194, 136075861, 789250660, 41227835, 534063508, 207818882, 458190329, 199079310, 39579527, 938111596, 77497295, 327906251, 139604474, 260496308, 29325155, 368616327, 215451943, 1109946478, 127920271, 57138270, 476851343, 330446097, 101998921, 249461144, 148423786, 564605326, 455178474, 494752972, 141516067, 432240735, 136370195, 4168439, 59165802, 26446251, 46094544, 444976304, 128801950, 346270117, 108738822, 196017708, 156953449, 108387991, 957789331, 506131273, 822400140, 21008329, 112890794, 78478440, 442482774, 344007440, 158159956, 131263855, 52863588, 191330236, 361911104, 116403293, 131659067, 218449026, 57736003, 211832133, 118535456, 111622020, 221096073, 96956620, 152795519, 169068778, 529575110, 222523555, 57240247, 57898849, 22878330, 270368648, 86171389, 14755909, 70637566, 1003834529, 562807869, 104732085, 70066226, 152371744, 423837161, 147765762, 225464408, 965180771, 725728501, 99044689, 105270884, 19208727, 255348948, 83121517, 256099933, 340834489, 250363850, 693029034, 6037584, 417521359, 133424769, 576355819, 116626948, 235249625, 468729591, 54075782, 914362622, 28325093, 1115195192, 786349227, 21328010, 530538900, 84339641, 15036569, 11778975, 17588296, 68824829, 253578956, 411795367, 46545311, 296067376, 522294993, 1008175394, 88871560, 35357370, 111458803, 371377634, 174648966, 82340546, 396314771, 4202657, 286322329, 138505226, 33185871, 1185236974, 1012621457, 95263174, 325985932, 21550524, 89321564, 136250122, 623210078, 599554695, 295710611, 840698316, 736974432, 175253071, 54098996, 93959795, 3282933, 25341051, 333961828, 546160965, 453053044, 363688517, 362681955, 626917384, 181440266, 921332211, 49175608, 3027213, 1097238468, 227547483, 143596098, 28136389, 98778112, 40380044, 136343919, 382353006, 65598085, 150736765, 45968455, 541655783, 104521250, 228691311, 227667063, 1794489, 433684014, 187504023, 13870341, 450622916, 111995521, 385515486, 151371974, 45586851, 78133850, 50684692, 16443944, 181916886, 40406847, 992139809, 187911416, 550427845, 93884989, 294438961, 948906052, 116202377, 439854337, 33541049, 31495435, 395581769, 212640006, 4454751, 272737621, 258332124, 110823066, 851716063, 263055517, 40319458, 165799355, 301729119, 819911550, 434608246, 55096535, 130000954, 329035459, 55394125, 97395006, 193825719, 304753026, 57362239, 72889236, 53959311, 17677390, 88663517, 506025162, 410052699, 268826881, 138152353, 619159516, 181661305, 51057157, 58523516, 190497351, 220101504, 451364734, 242490857, 195718073, 154960203, 355735619, 348323866, 531576165, 153480793, 87100030, 426570293, 225119685, 1102661395, 1083673085, 551812495, 75855927, 290398705, 449725252, 177588071, 240311032, 561416116, 193474925, 55914646, 140632579, 42450241, 239552626, 15626794, 131091094, 387075727, 78099017, 276430449, 19898245, 452528978, 72859337, 110512488, 440864, 959426182, 17836417, 254123679, 140468452, 25240500, 140665716, 991625544, 462803819, 132781111, 242953056, 18855042, 431495472, 140838220, 95802956, 133165384, 9035813, 451173105, 232307338, 156072098, 330812414, 670767365, 75728475, 26725147, 307003715, 185127556, 359216863, 186691948, 16986540, 345327947, 489652625, 17456229, 319377372, 282799222, 301648758, 511959907, 362668894, 477501152, 470393419, 222028713, 939001762, 50174626, 267272994, 393749768, 232058138, 305062133, 642812481, 119881796, 182231557, 72359059, 433496229, 801876456, 44923813, 12894136, 422408047, 235320565, 93268445, 202892009, 480999742, 29238067, 78706121, 299226040, 48777831, 321586746, 104821717, 238981727, 214173828, 17842240, 146512208, 35754810, 264725050, 132847768, 11954807, 1585516, 46710260, 261355790, 310033270, 455688394, 352318393, 699299198, 434078777, 203785020, 262603887, 836171044, 106384332, 144720440, 91108091, 123636047, 319180809, 34667898, 171581362, 321388558, 209329540, 131283685, 135422354, 537107811, 1004121595, 318099860, 303738521, 135732974, 224890095, 14567123, 415439897, 253373228, 16241334, 319038128, 1071666343, 181807268, 81031262, 334513332, 48879547, 17204939, 1320571215, 207795072, 389962845, 18980424, 836179513, 14865658, 154375656, 282661311, 689633179, 288011177, 115261820, 167854483, 12302743, 182672208, 21814652, 5713107, 738998872, 378109754, 48825513, 188001274, 443446679, 823962465, 533287930, 256505353, 135894142, 499395034, 519788582, 287865306, 97724797, 395227543, 341603781, 94918308, 99408818, 178630508, 32634475, 3642603, 91255467, 215436609, 293236924, 863760590, 852115016, 385382001, 148481935, 800243, 1088346, 77680545, 397328449, 756604753, 1826541, 749490598, 57317270, 222507935, 274714753, 15217560, 703461196, 10363557, 280177760, 203462903, 157589266, 820837714, 96508065, 653322887, 1920844652, 119734361, 136344900, 32397981, 125446465, 153171135, 143406195, 414213519, 134795316, 124905494, 94474632, 225303238, 35354338, 96023404, 459226244, 607051780, 74034961, 229322576, 482866995, 152452874, 583522788, 67901995, 72534050, 450783061, 81324130, 579755933, 26273103, 162330377, 488030419, 41609620, 122359703, 236240100, 187916767, 192969974, 322238800, 263378769, 791138921, 530047097, 46727447, 25508876, 1072569539, 163645391, 140279752, 29779403, 379946156, 986470710, 216150, 368478274, 213789952, 235227443, 707186990, 54479717, 441833688, 656682222, 367387050, 455737211, 429407554, 489891950, 84730608, 130085358, 1084017017, 130548941, 935120038, 71618587, 612305671, 144656981, 251157643, 241769482, 7112779, 391528105, 152174965, 2089397, 68032493, 491476232, 32114978, 350888521, 452055675, 531496442, 68198145, 31827044, 158343306, 620688703, 12037840, 306325, 452017355, 418163246, 224320227, 120114795, 126828870, 236379222, 366616788, 30462461, 946533255, 166641711, 25262589, 544385177, 265047799, 320944613, 166452008, 284583046, 167857794, 604528735, 290659524, 154280398, 177043630, 198410432, 661488358, 12543239, 130234317, 586822392, 634200048, 475663938, 206685658, 802431176, 477470945, 116183465, 179404644, 42340781, 165623777, 535517395, 352846209, 61666817, 952801428, 324948611, 144422235, 16917487, 226776696, 11950373, 189808389, 407454215, 320641936, 341898819, 148084576, 30335118, 633881001, 637334543, 266406626, 225929192, 324025482, 3711481, 163744130, 250537793, 498272490, 363655536, 97590430, 147730806, 26292138, 421807101, 102553102, 96552371, 286620439, 13461544, 190042532, 126527303, 373068067, 689818961, 55006637, 19364250, 915614438, 155918361, 510010710, 142772494, 47048873, 6189228, 196659978, 452734335, 712726833, 610275805, 129992937, 267359174, 648700417, 238590353, 1141376885, 187613939, 107839055, 92148954, 301279719, 50829366, 23200188, 1296755801, 172769394, 179373799, 11218607, 1077879284, 253854842, 208545681, 284721638, 211520051, 252599141, 123656598, 1142194581, 62784460, 202668949, 604849976, 70628625, 13582342, 332093018, 644648276, 318530504, 26390951, 91341955, 249697577, 307965213, 86024448, 521641641, 384995687, 223294482, 88039346, 730472079, 135301637, 85082044, 141097411, 576623185, 16876035, 40219687, 74816685, 246704336, 422694765, 416994942, 858940148, 647627015, 198509387, 665364762, 155839200, 145111832, 42834368, 73002415, 559799204, 15728105, 725037133, 935794226, 113717297, 90709952, 137230746, 123128263, 41584984, 47422729, 724154596, 147676589, 499602463, 106922983, 157149039, 78416777, 865474073, 188256038, 133776117, 814105722, 515645319, 728650878, 361908726, 221066652, 499028025, 3053657, 174131141, 89896191, 52378373, 125361237, 198534412, 14621457, 52747152, 163205285, 395398333, 85251408, 363990224, 675860175, 274235488, 269942711, 475126169, 103915590, 439757208, 301020161, 281456758, 76797166, 704411040, 119009650, 186729189, 18999814, 99580623, 29217384, 561805, 430150367, 292969433, 242385746, 219327283, 592234745, 567400723, 357035154, 81921789, 43712040, 417087092, 56489877, 117374217, 219958383, 166337053, 27239002, 174850887, 28835836, 175041778, 98958983, 147542096, 89945686, 352338440, 461426477, 88886138, 140152986, 703402542, 410280837, 173001966, 1136868841, 583511932, 68602774, 204096040, 95310185, 460539771, 25538368, 56152386, 159375361, 469862078, 59943231, 244628424, 256114429, 132644020, 816214377, 686567131, 512444989, 428106042, 43483167, 324975992, 6647373, 62003708, 554349467, 99285496, 742619457, 317821772, 240031318, 113109331, 123826853, 125813982, 458700078, 117732504, 2371441, 422538477, 586562340, 98698889, 120352913, 1028072134, 75362762, 444459181, 216109171, 57652903, 140297725, 49301955, 108121695, 30562821, 489697211, 720365415, 284145493, 1192029584, 269569690, 303768816, 58046432, 189777903, 1158951455, 569018159, 799761379, 105940589, 68002923, 103014600, 159815752, 420303144, 300678724, 164132376, 235353139, 99473591, 193389947, 317482209, 9928305, 189634996, 187466458, 238848112, 159625944, 288032526, 188981616, 406189456, 389464721, 113198081, 333654634, 49058923, 22570258, 113638951, 499626979, 86361808, 246216898, 477539472, 627394666, 214078880, 633689755, 36518396, 257355632, 117410714, 294874870, 10606287, 220426597, 1819750329, 114977003, 463160490, 316487820, 130368394, 106903913, 58233676, 343949430, 402509651, 514750810, 69369302, 97631903, 122767796, 227675150, 4432399, 205009088, 137483653, 31246823, 36445546, 302451137, 332529492, 851894300, 232427143, 2202964, 254247816, 162867221, 263140067, 911132400, 34771615, 292394318, 86277946, 34424327, 383420128, 27321996, 449748478, 600863342, 51198361, 378826889, 256711332, 806283326, 118779572, 240512181, 985299, 171931047, 652266243, 5434134, 377994057, 100681254, 37359489, 574482092, 358549676, 492237879, 238596751, 17955354, 243773590, 60242954, 196782481, 67216936, 664326695, 132435722, 269377992, 56795551, 191372178, 41133389, 90981441, 19748394, 9686271, 165959804, 471094820, 136901357, 46761442, 725660767, 1273404188, 47934648, 139813983, 626956779, 54444172, 47245499, 65324099, 17142411, 12006763, 820943422, 282125884, 268793999, 4802385, 76200099, 234148457, 90302594, 65669180, 184897338, 301780834, 510008915, 313104301, 726590095, 1313128848, 1001009682, 1122956, 401965755, 55065193, 232629045, 51900026, 113716805, 192939568, 663177341, 79825206, 673420586, 458391329, 56290801, 473101519, 410224898, 77595231, 552076010, 177854901, 622012475, 78333708, 77426974, 610022757, 483820490, 206257806, 32478284, 22755497, 861995370, 334841321, 394270839, 599778503, 327915358, 182938305, 278363205, 70124117, 149937354, 974265703, 44912231, 197956328, 178709999, 19342987, 405104064, 44606664, 271720472, 924547886, 1070683570, 49382864, 919558747, 247281329, 283738546, 257822356, 248266865, 282914407, 193816491, 55530664, 738038244, 265582173, 83800137, 606858895, 111918938, 414253839, 206719227, 424792189, 7848182, 54092823, 6639917, 163810981, 45519226, 52779303, 1030048848, 132884493, 1509240550, 380134814, 92661274, 128904158, 172344843, 85728552, 213977711, 56437469, 262367799, 60533022, 441453913, 69159438, 247100047, 103972208, 143460838, 207121801, 321125424, 307673184, 152520999, 10571941, 65603946, 945572340, 233839100, 75666053, 621733157, 249987212, 325359179, 439771161, 204284320, 306588971, 58605717, 87273310, 55431248, 179724509, 288725192, 141051645, 191380118, 62692798, 244847070, 38468901, 46333694, 139473919, 120067221, 383333912, 172828055, 198707462, 94955852, 50798194, 823731376, 175409676, 63625969, 50126284, 59428078, 422206763, 144365649, 28264424, 42635786, 541041250, 633634853, 149968186, 212927877, 509475908, 162418703, 176856550, 24296827, 32145356, 273971891, 243519638, 19337535, 1152192554, 174618251, 69475652, 40461491, 237522762, 358134748, 255978489, 31348865, 410039219, 415197375, 17679082, 2980957, 368346009, 71583677, 63152882, 90940493, 136413117, 99441825, 54118699, 82705851, 889122426, 119373017, 221075888, 451062574, 449984578, 421570765, 280731234, 698190642, 151686694, 75415870, 1438997184, 48847408, 344744196, 956969417, 98169161, 99749969, 330740896, 681173006, 49679804, 73531818, 163604454, 1064713888, 77459034, 60845392, 888617483, 165551897, 73153043, 120600077, 196037543, 146744569, 126351159, 70216853, 406575424, 740298340, 12037755, 241338205, 350106736, 316512432, 83455026, 642446589, 310723758, 2935387, 20941107, 45926279, 1087173991, 37292271, 65318073, 155291943, 13952046, 130469847, 304925089, 79155070, 122327523, 712059351, 62107923, 21759221, 39922464, 158096432, 155532416, 286783760, 255933214, 453247182, 584316436, 41440758, 186137498, 304866914, 177851048, 1014049190, 34198539, 186084983, 269927742, 216578051, 191988651, 164201551, 333194779, 182593124, 237559962, 702438244, 724622047, 131058987, 16686410, 253888156, 275492411, 149141111, 91760037, 506087586, 188291602, 149823393, 11427684, 316352931, 479658259, 286653627, 79317416, 340853506, 212965559, 378608126, 42453417, 407062458, 354554859, 82975138, 88384138, 122854792, 225296838, 420798121, 228543789, 87795423, 90031903, 46948712, 61895072, 65905599, 212414267, 83083579, 231401408, 741176227, 156040652, 256641421, 412613773, 317278888, 11888580, 470457375, 38603914, 560001056, 70613085, 132587399, 112888137, 201160679, 602706638, 72946471, 98770123, 264856782, 78018020, 238283207, 364500084, 460611871, 36830098, 17850646, 28032820, 143072805, 68350428, 14746125, 127982618, 196970115, 18906968, 327955613, 163762064, 190852525, 103871949, 74262620, 806990435, 32056199, 455465679, 23690796, 358284407, 427221425, 67596226, 22404464, 20084802, 33313784, 18441291, 36859536, 181941574, 102976345, 338554630, 1100403621, 40114373, 241480523, 13134486, 1152375184, 1726912, 85417004, 10898574, 38617893, 422082960, 30618416, 490713902, 76913614, 121904880, 46850793, 73377979, 17722608, 5718920, 437812252, 43109144, 380689725, 115229531, 34113453, 236915473, 146734878, 72277245, 283871216, 213992961, 349796713, 953038772, 3909859, 333892073, 524833940, 251197261, 382505751, 500094411, 255621652, 406919408, 269037785, 184188618, 228328848, 180280305, 109822442, 226760452, 516708732, 75184994, 219087716, 294661655, 82778884, 120697567, 222271842, 6302757, 333355597, 307909504, 118901609, 570537675, 672939730, 2842725, 150902914, 279358233, 351654681, 157800734, 30342511, 238449036, 432793237, 540251906, 53861197, 47784309, 134945448, 452588380, 289242418, 338198323, 97225789, 1440251518, 90672357, 635637320, 1186583600, 241234994, 228235042, 455518, 326241568, 578584712, 398352600, 47733092, 224419487, 37729443, 11945153, 71352781, 41003791, 172225552, 569611310, 551495613, 294685230, 356944730, 62884975, 168888230, 115708780, 132971879, 266911208, 367114067, 61715358, 10385181, 166201755, 79961959, 9083680, 184252069, 48063559, 394056254, 25169026, 178125280, 396038912, 209182685, 123657279, 211127984, 326941063, 736654439, 302275189, 369659157, 49732557, 223888998, 937710437, 428944486, 154474146, 130213736, 88742672, 134792610, 511615942, 268110317, 413135038, 70056538, 127008257, 1258795381, 83617978, 237328519, 76658551, 13568760, 23415327, 47032689, 224849026, 682727500, 278538624, 110957203, 166729519, 386699099, 576266220, 48990838, 322215351, 98517573, 291867964, 257198068, 553741960, 268690558, 47585365, 16275044, 4554688, 57332458, 162240900, 257274914, 466325687, 1173605413, 242346877, 800485384, 348059967, 253167726, 206258095, 344920430, 140838674, 259567833, 578368396, 995765325, 91757997, 87483364, 101198004, 374484939, 11330111, 781426372, 295471389, 180015937, 306352, 107598351, 515339983, 556161737, 882887971, 4277380, 306908369, 349390351, 841454171, 38879387, 113335335, 407022959, 548859211, 750667307, 351256228, 244040708, 214087938, 3888233, 103704013, 849754958, 129410694, 61414325, 726887437, 299266962, 176895356, 1466780473, 50854963, 85333621, 314135951, 491850831, 384123314, 315124428, 673196695, 255727275, 223386207, 572002078, 127655264, 1396979263, 252187073, 109490616, 564074702, 324922943, 535125150, 370293886, 132365696, 112325116, 113746862, 750054389, 118256111, 294256135, 278009156, 360387006, 258834132, 106181684, 46554315, 508742224, 19718636, 108227732, 34935751, 383687012, 678417231, 575848946, 161157371, 489728992, 75656125, 388339698, 169571315, 262620953, 382145730, 469172518, 329869668, 130594916, 201407329, 227273991, 38468561, 668260786, 655742601, 174978871, 248828847, 4810392, 41980993, 1621446983, 188733592, 387031911, 20255103, 292901802, 120462044, 41582195, 366121795, 177407525, 629161225, 142926608, 32773348, 29414697, 77766497, 120024988, 257484216, 169510131, 1120337546, 35636702, 11630448, 155807781, 191242157, 102950503, 3104270, 276540301, 1109227910, 300013155, 548379285, 238158869, 315001244, 4089686, 109182905, 58445312, 200958005, 140210953, 527433321, 589025848, 214565656, 116683285, 34479232, 60830139, 389150273, 72073207, 15163076, 389011653, 243298948, 146264772, 71358173, 107092185, 211033813, 6575180, 393717532, 435169177, 112655321, 407441846, 57811237, 106179970, 162323546, 17781801, 292171583, 599523131, 471862662, 1601389526, 24871332, 29157770, 139052395, 320231965, 361454936, 325909813, 13544253, 528533612, 285017976, 452324935, 27052040, 331438757, 232740689, 155757711, 563689530, 221355870, 393596074, 50116804, 109173390, 207591517, 965934960, 303273783, 18820344, 660928871, 964797, 84419848, 1035050829, 295046838, 47658481, 217220440, 142839303, 2056333750, 287796518, 455781491, 319815373, 136041815, 83864627, 367247202, 1706515, 686463568, 98961040, 28940104, 128290889, 271653335, 209875289, 79907799, 785823725, 16614464, 149843564, 88414473, 114365235, 43236073, 847909794, 47758843, 448466181, 871595466, 53660880, 207916125, 126730117, 113114936, 26462693, 417598299, 25835088, 186045093, 117399864, 416341660, 278686334, 124429398, 204608287, 283533915, 93235998, 239386573, 187577116, 147022341, 68970111, 423590968, 149740334, 51004273, 515829567, 248446431, 162277110, 798353875, 374769430, 142176391, 31853490, 223031324, 34516380, 93104581, 512452595, 75560495, 130630985, 781789667, 409705420, 174027532, 158349891, 39523165, 82658294, 491738313, 79458962, 212426882, 181871374, 94982848, 39503105, 1418789065, 341454229, 121239730, 417082775, 42768819, 206396178, 132925187, 185704369, 1239953831, 111314783, 77859365, 43528592, 161136284, 223116118, 5071839, 366209587, 144488674, 82301989, 37301155, 31359484, 12840826, 117779998, 97374750, 721556230, 259873694, 41776831, 55969729, 49038041, 271467007, 178763964, 14384360, 128127645, 828371996, 144195641, 666384043, 509180905, 323579488, 98444159, 115342828, 155136260, 279103302, 115399597, 238442446, 27625754, 291373316, 118007387, 239719570, 470732728, 259569810, 169758387, 310497579, 294754116, 466119574, 1228639708, 114329684, 57366427, 38570162, 89449868, 30602711, 196161324, 195890875, 46777418, 279041581, 171582634, 105064112, 222116077, 19655722, 6609761, 547340316, 49454600, 167033023, 82523009, 195729983, 432378721, 120831089, 707386456, 45518813, 324448844, 377718190, 199329187, 672857092, 155943890, 750552086, 363993765, 52847703, 90343294, 732581912, 16869374, 226031168, 419997534, 232462623, 24472910, 808229241, 980759191, 98745962, 86190632, 206667281, 127625940, 13014396, 140174298, 212355938, 80447860, 298778193, 449633945, 16384845, 409217394, 362628161, 889012671, 70868022, 75265069, 179518680, 43778578, 152544595, 149297989, 275109509, 254281040, 165775261, 105204378, 146908173, 404345851, 32815569, 226010, 255371049, 451781628, 989626486, 683272766, 24970271, 80917078, 13292704, 39287766, 144099933, 112895413, 134942697, 483990160, 630135340, 60801352, 122252211, 134338693, 660455401, 244526677, 272945091, 138134165, 184299053, 460478135, 231098819, 39817080, 53493212, 414281979, 63431935, 247414284, 223202603, 105716943, 116199729, 52739964, 40397673, 20831631, 506225040, 1011527719, 109479476, 277983296, 530518560, 185354116, 358182756, 79571155, 109057549, 275033593, 62454075, 322913536, 9506689, 34979262, 12615143, 146877133, 85508902, 209973633, 1233121566, 244881021, 150340098, 50199513, 130369310, 273713762, 197628795, 321119208, 335246444, 552757185, 262873058, 246810614, 319170759, 67067948, 106115790, 404932933, 539644783, 55887802, 87225828, 247798272, 57510458, 253657949, 1300836640, 43243768, 99993162, 7329605, 84834312, 118502436, 58797830, 92740366, 280182792, 55438806, 593744822, 21420884, 29934602, 6405667, 167575556, 264439638, 342918170, 698517875, 76298596, 113857729, 86513825, 768448502, 224534460, 115805253, 343288034, 53657012, 207492705, 1874460617, 203971531, 175316661, 119270481, 199498234, 265706958, 145344091, 95631252, 280044541, 400408404, 184147464, 754388771, 50416695, 151540688, 232027745, 1502815219, 206642877, 247488446, 62939200, 651998086, 20025735, 576548673, 46570885, 48703734, 46410458, 510194721, 176079423, 191038574, 103735340, 291354878, 426587127, 18894842, 58057796, 6477265, 149346119, 340653755, 137377903, 500109804, 390996659, 13277474, 123245114, 82056953, 357949624, 91091432, 318537715, 17606927, 89699163, 1050363349, 143513981, 74174067, 597144269, 178653225, 35749596, 431389002, 283293498, 8682435, 136413787, 572177123, 91698496, 169063487, 210539866, 23925637, 205705145, 178875847, 522983651, 332610941, 824737487, 80119727, 97095179, 342339438, 15091963, 146243434, 353871859, 420354027, 330263401, 149558501, 247958390, 361835039, 45381931, 4622872, 1073313313, 426437889, 187721633, 30181820, 113038442, 627297697, 39916422, 363766046, 412259801, 149737896, 849429390, 21406813, 81255924, 182351884, 222264347, 541592793, 813708779, 82695294, 35866434, 79113760, 1141841136, 53186822, 301953069, 339981272, 340957979, 37837070, 601737563, 104385419, 551192912, 428859980, 24613360, 515319481, 241580923, 239788292, 330500985, 742505505, 74526186, 242364556, 149737520, 401013711, 6010378, 130626836, 246312366, 8643621, 264509884, 47953839, 279576438, 231877996, 150293528, 397031401, 234196946, 47724402, 323416718, 1545825, 266483763, 49318051, 39617668, 198792339, 73094988, 2402208, 103832267, 105899764, 253191647, 291615753, 293601474, 103007469, 114816756, 638925631, 656360395, 199222600, 151521664, 309064349, 644054759, 8689200, 167323703, 89783988, 772834877, 31559405, 253517104, 34590327, 267933714, 57617966, 89595737, 108179006, 59535218, 290843089, 185808402, 109968089, 54825877, 359438399, 26321124, 78615191, 448994664, 326814785, 293404802, 174142028, 395772131, 3459920, 38347829, 152179697, 206542328, 223112605, 33254985, 57995652, 113446073, 106992634, 174809698, 91363647, 155474397, 488679219, 141355762, 19792083, 8514634, 156378970, 43983004, 1030708503, 29212895, 136683969, 17464909, 9901510, 581225076, 45651596, 10526544, 320983481, 251922707, 326114805, 51579444, 36834532, 167614146, 98805379, 220958841, 307884, 260269852, 148936072, 772861631, 903224084, 377068416, 50266773, 612166, 766960872, 2378401, 46811547, 3688456, 10970038, 115606106, 655915613, 5024190, 161967547, 100447466, 22830248, 72828174, 59040212, 1151451528, 86721765, 276737787, 112938951, 349183852, 457552950, 171262818, 57266030, 557000209, 8897147, 762583601, 183500590, 164627582, 581607914, 62934890, 873296650, 15529618, 63709033, 628832182, 18050341, 124581442, 294315670, 515480977, 342885814, 232276598, 259978812, 686959926, 595533547, 160599957, 642261774, 486994337, 153986824, 54808229, 175720577, 201722833, 290172160, 12883180, 514400151, 682400190, 8892708, 424711069, 48362417, 73450141, 150082349, 125677144, 60146110, 177863597, 108907965, 514713367, 94933983, 327518413, 196437849, 44044075, 51440770, 27694255, 197042756, 501114002, 359158438, 943793502, 376450218, 229472105, 45265549, 311833669, 436596246, 308822261, 114719155, 509672099, 308808691, 60108027, 196967487, 167622667, 365195847, 309893409, 161549927, 50578888, 441584479, 284058935, 139183467, 40639950, 189273604, 325408526, 241741536, 6766519, 247417320, 392242237, 550329185, 34984828, 120552123, 252008283, 493337611, 33031787, 721315200, 1483043181, 435842485, 356788818, 305461958, 615312323, 109066979, 121064787, 505598841, 516131054, 230206570, 240255250, 90776688, 7623922, 192311239, 26474839, 150557219, 293127944, 1090239149, 308895127, 32880826, 230597689, 163844586, 168309521, 26156489, 106755005, 238031592, 162752954, 742278598, 52357427, 103045886, 257850133, 51059884, 34804832, 28576297, 246705076, 393263625, 153199871, 893175592, 257532065, 10130803, 91291409, 842383577, 105094248, 102066247, 169481160, 48806130, 367426719, 571289960, 43317193, 150503463, 1498544206, 346990433, 582975598, 166425111, 457787450, 881522301, 429908038, 5779337, 280219462, 996926442, 111573081, 82736538, 610677367, 63294139, 122424753, 185153825, 1036768030, 214033057, 63539903, 243194184, 237060528, 185564952, 96070548, 288673414, 453481438, 195545883, 468000877, 99336753, 136365065, 344086741, 179093372, 134691417, 159469382, 34690746, 249307058, 3944671, 479016484, 138632027, 411684360, 175555427, 36564317, 553302149, 367109957, 6669855, 23187019, 527532917, 84923064, 445936641, 46072107, 176561534, 44991034, 365994778, 1064572212, 163012131, 44074884, 211247838, 964770286, 346416719, 247610024, 124374228, 159183922, 488019836, 193533322, 276964491, 856669053, 33908972, 140082862, 420212195, 84624663, 751639859, 5258441, 136113432, 448489584, 388373347, 50225631, 276503152, 125272698, 156531384, 162002737, 203033975, 299395087, 250992324, 6304626, 284307547, 447143120, 688249471, 785397354, 410703479, 280177760, 213647121, 625282638, 497982676, 38880752, 144544918, 72104107, 26417223, 89450168, 132906954, 269141872, 216616791, 107380167, 283722865, 323090580, 40982870, 48575480, 548771285, 204374773, 90733814, 16822871, 1147346494, 456521990, 354411184, 112297950, 238694250, 38789671, 44515394, 80965490, 474540724, 309784434, 641199427, 36299260, 237562109, 186161450, 81307231, 374293281, 357236509, 117729549, 9674666, 557342283, 358011250, 110545106, 61345293, 132240063, 10243641, 26573334, 96850321, 286716420, 264881984, 239133791, 168129783, 255038757, 45366864, 59360593, 326360061, 366302451, 22763386, 520837738, 1316867, 648162729, 91686673, 290781939, 10142038, 263278181, 646524762, 95130990, 127021916, 134519494, 137934803, 47043819, 84021256, 39958785, 185157357, 171972815, 201133136, 205977748, 101819874, 475926825, 757249959, 768441922, 146160041, 139777924, 97492295, 104998570, 116738224, 2174196, 18971349, 152766068, 254672213, 462548055, 113400404, 282170423, 70635121, 37383678, 86492854, 40927338, 150140999, 283691351, 205870916, 475990690, 450357943, 215951419, 928361358, 16572516, 399334921, 75148339, 113163830, 25245572, 464391234, 89840702, 407679175, 1262704640, 155022845, 24007555, 101426454, 420681271, 495279250, 37772205, 976537588, 60947036, 819366700, 102836568, 515749069, 723527689, 58767890, 37086927, 463701521, 263304810, 202589288, 30133824, 61109719, 25733909, 288696941, 50703530, 44031897, 152290497, 48296404, 74954600, 198549091, 1173630927, 201573197, 97178094, 348191639, 337085111, 39752575, 11333779, 189576733, 349485667, 50860835, 175635201, 718132747, 555465289, 212450100, 204428806, 217086680, 365164458, 141847483, 126951133, 33344845, 756638034, 177096378, 103688173, 406562241, 41072977, 73985025, 305650904, 104792920, 139621318, 689574316, 502056630, 40891354, 59835727, 612826074, 543524135, 661545791, 411406921, 644358902, 49955117, 192599446, 476112613, 136391923, 57062327, 326802088, 317465041, 346117066, 1870463, 55020640, 38938252, 129958958, 96566219, 465899458, 541103305, 124417749, 116534199, 379780940, 254011562, 8706280, 22448938, 389579855, 326479875, 301303058, 637665519, 627561178, 103880250, 400423556, 224545117, 29756040, 152164413, 178102503, 122038116, 81911554, 576657918, 218444060, 337295992, 105588978, 88695303, 343925553, 191780937, 48330084, 517314579, 221014789, 1198060698, 342880229, 721446931, 111800115, 68979656, 92744234, 34595610, 15242362, 16001150, 467223176, 351189280, 899123800, 173687258, 430663189, 179841357, 11848262, 628789997, 681254848, 86876361, 4762735, 722860994, 640951156, 229312989, 135356433, 71336673, 248758179, 33808875, 181945751, 393240392, 967352091, 434282535, 189167676, 156777496, 176567234, 502865018, 144992484, 399371047, 337590673, 171709832, 478819888, 208591277, 60655309, 211531916, 4507076, 371693472, 9153969, 443258379, 137958542, 325757368, 23752229, 145969241, 129856566, 1326026072, 1366686295, 405923359, 985733722, 244619877, 278968111, 168830927, 32873726, 122928236, 4570279, 260446653, 445483841, 185461067, 65240396, 69153742, 85584253, 719381786, 159509790, 515326071, 171274098, 282005970, 136502329, 72502327, 43062215, 53435194, 423118472, 214393415, 268144791, 264218523, 937072821, 4127029, 122965581, 887726216, 425177221, 112387534, 99502017, 156173565, 218733981, 148545090, 443717250, 229170357, 12641338, 122608256, 20361738, 81466629, 112409404, 26620609, 762270176, 419116683, 792425223, 47313271, 56155828, 26718179, 136358507, 110312693, 6412485, 754775741, 585416718, 138780630, 224187525, 249303865, 145738058, 307603266, 102220001, 878835027, 6561948, 264304734, 44135058, 107424943, 431726905, 330901171, 283614976, 242060670, 20973642, 172334436, 248842414, 48617399, 225411316, 211866056, 326944601, 82391696, 329908750, 599763711, 30500201, 516636063, 1027916403, 37694689, 209813520, 255315731, 89328004, 521887071, 66227654, 324998693, 207842578, 205732526, 142785517, 100181131, 646688050, 222913915, 275204903, 332176277, 85448297, 11515877, 14442935, 27137560, 194657925, 286956562, 81485647, 479290359, 808666743, 336342174, 27266189, 140099102, 117977849, 817115455, 2439669, 109076490, 23366417, 215173141, 319612397, 32732649, 140852600, 660506641, 455601484, 789730512, 59330657, 1020910112, 80361081, 30801587, 209520122, 280554835, 224467614, 222111349, 314692968, 122919452, 140430629, 61955893, 397338239, 145080446, 414817574, 344833511, 37960201, 576734992, 565198493, 179443035, 484806465, 585920332, 226422859, 295520056, 154996256, 82928520, 409174248, 503806110, 709085472, 114566960, 209927097, 36474726, 105547610, 433701841, 1107068739, 256435287, 160286419, 95298393, 700723679, 588441377, 143735185, 109045702, 26624640, 55574311, 373599800, 571806362, 288495573, 576486825, 193074272, 206603580, 124344493, 27373832, 50814055, 757642433, 192994102, 253524006, 830505009, 11890993, 62054407, 576922592, 40204875, 370977585, 381793760, 64149624, 95181154, 181290705, 230470842, 184191124, 207416018, 187533603, 130415297, 819776656, 486233442, 69326169, 40433403, 237986640, 522365451, 429945592, 66534653, 124042294, 23445058, 239517901, 65100198, 79413961, 87876929, 173713405, 256619146, 71506795, 196903643, 226755016, 538817569, 140386562, 103229499, 125242478, 259603276, 122389050, 535307101, 58576734, 532887789, 138065958, 322095287, 1470532912, 117680357, 89568303, 67878419, 74774122, 259738239, 22551572, 418842704, 491155348, 59557737, 555128356, 52675904, 47665213, 564764609, 164097152, 273614508, 182644112, 155442447, 638445953, 449036272, 14784441, 101382550, 568912649, 149218509, 308164222, 75809318, 92053015, 264827190, 522164082, 156015690, 20719387, 514433171, 426324340, 118957756, 467353122, 10630248, 1024499565, 284587463, 231034000, 224003558, 513918445, 160814789, 365846423, 4132999, 21529233, 803106805, 285227937, 103139806, 39784141, 99643453, 37784225, 57007749, 263034920, 3021214, 258162398, 98587015, 1505681, 286796027, 731742301, 532878017, 27453686, 2372226, 167335719, 275207298, 32840718, 10090414, 150176176, 494483699, 314816358, 1506761, 140461340, 92483042, 61463259, 44097566, 98334676, 88823047, 28669234, 331842100, 115267676, 73330952, 5316591, 175745580, 52860156, 133842182, 73654593, 427389171, 159680926, 75637409, 60342454, 37765747, 521249307, 95183182, 40498166, 19130827, 754416872, 956446, 29981842, 33298650, 500576345, 426944715, 35005042, 78115176, 24614831, 106265461, 138909362, 41332272, 118538670, 78529471, 246359407, 328695577, 74038533, 259874047, 733155341, 146126820, 384415401, 688901466, 897360782, 63120754, 668448860, 48722144, 111857443, 398817930, 64258496, 69875735, 496066261, 620985115, 71117219, 320067320, 4802741, 21745423, 74032804, 40483620, 21993077, 106961765, 65070197, 176904384, 66599631, 227959405, 177945778, 460772115, 7266191, 347222162, 56191070, 332224950, 602065594, 804451900, 269162504, 524938458, 46673717, 214478686, 6658105, 76774761, 20128807, 1141092315, 174470076, 292013238, 584858779, 332911283, 119608676, 630600664, 206615635, 246351678, 422676488, 256583188, 303850481, 379240692, 503098408, 278512788, 21552037, 22245596, 168396921, 29434646, 439132450, 138567562, 221695054, 159230943, 28771376, 771972039, 98034340, 2589131, 74451822, 22035501, 80226696, 101346366, 17914401, 357780201, 347403066, 322958412, 58329632, 481703286, 116737643, 175806446, 152955118, 42229448, 499415218, 528383865, 282167505, 155301374, 78788190, 349111211, 196361745, 342035469, 477987473, 20174902, 551669307, 41106419, 196931594, 975204233, 24025873, 469077741, 1096289937, 106633973, 284086934, 1232649598, 132973377, 339337361, 172714526, 33257962, 144957703, 297450498, 805856171, 394415119, 614620886, 38323212, 292645744, 364819108, 363388709, 101290222, 54052240, 1487709142, 11498140, 160267204, 167796398, 260983150, 198124457, 110204453, 387314910, 419144953, 16220403, 244444921, 256886712, 419139197, 697322731, 84077170, 406480101, 102033033, 356271317, 78850946, 53632098, 619190241, 299815668, 37820196, 145617415, 103434389, 3464489, 23123316, 17429330, 377058683, 42118632, 1356548663, 185525944, 735839887, 57076039, 890717085, 97914779, 335553967, 13446021, 456979820, 188043457, 519947017, 144140113, 543536538, 278773149, 111961300, 581171264, 51448086, 139645749, 123347225, 150395514, 109544264, 84042402, 509281829, 64932070, 312229200, 49947810, 69352444, 196128938, 1064116522, 352062595, 142536195, 344594726, 1023969401, 114600732, 660254940, 763092663, 137789852, 126769588, 360526204, 66433794, 265763520, 112834716, 270337414, 75365499, 1215444907, 345688305, 37396082, 652328140, 564927288, 185232329, 111912014, 64356425, 194585649, 752090091, 149966825, 812247995, 522921315, 138953863, 170364029, 489361163, 38827856, 267054688, 99536708, 32074318, 1021005227, 966791622, 435709784, 127973580, 27534546, 91952837, 114318423, 347454482, 269239632, 1071288486, 340831623, 124360235, 162440531, 507694723, 89211359, 108343657, 27073358, 124895790, 211540417, 119766903, 100125697, 343309732, 100154465, 668577772, 36072075, 202476947, 188205163, 80976741, 46763231, 451208133, 34742528, 582804668, 205473272, 299635783, 3651256, 268612492, 881606825, 119928581, 30275435, 113218708, 112282125, 469012573, 336862908, 210904219, 147723639, 1625434143, 560973108, 83573740, 33722512, 49991754, 265052771, 52536760, 596407143, 311996429, 26764678, 4691784, 65624341, 245205451, 7100073, 35881929, 47129298, 607227274, 2988557, 319541594, 225527212, 6680973, 21399283, 87903371, 130447109, 54347426, 262124150, 173008512, 2432544, 24324834, 5222911, 151955304, 23636354, 277186563, 159578951, 807985161, 451280943, 21103212, 36908258, 162337060, 386274665, 67853671, 170990125, 349566109, 463649725, 75648404, 515040115, 353077148, 40940094, 536089136, 149720734, 164499929, 272179577, 188291656, 178543000, 395062710, 153626384, 31028331, 1369489996, 157952894, 58491304, 3562208, 263585290, 7745962, 287313068, 20510802, 1038963245, 66457862, 611551185, 520167603, 300136874, 141057457, 22188064, 598882889, 39490852, 281749434, 39914086, 359923159, 128985787, 7618675, 116052027, 218800385, 71740454, 1192200425, 445654081, 342008306, 381627070, 75679718, 231488316, 374940812, 155085454, 198139956, 193772121, 449514734, 214607987, 676718061, 583333585, 87419524, 585981296, 203860389, 38597467, 220618447, 758821042, 875196787, 161934421, 469366335, 253828167, 111335957, 223040012, 363097125, 33051460, 662801339, 12982079, 115789964, 283290259, 249663351, 458893746, 46476839, 245636757, 135732262, 289549948, 10495585, 674244226, 686392933, 245509771, 65896918, 495446632, 178389044, 75082110, 350849834, 4757407, 36238728, 10435410, 329280470, 24700343, 73479470, 204221756, 159419402, 232207095, 27400735, 744819614, 157171311, 383923081, 1124521077, 209565708, 47133617, 111002377, 120201229, 103531405, 747240256, 189416971, 349814400, 346447551, 148584821, 282417676, 105196672, 133179227, 74106698, 219211846, 270625491, 340731307, 105113943, 191356079, 379872431, 8382026, 244404285, 1523540979, 222489488, 423905125, 105069908, 141111397, 352950657, 194487133, 671226019, 167747551, 15855281, 22088658, 215383787, 48944995, 42797152, 180709132, 299958580, 559703301, 886349627, 502756347, 200678715, 90958159, 1142207821, 391878404, 241870982, 123721027, 179023180, 670924520, 567016301, 1302250877, 796788607, 68447437, 358642991, 80978338, 5129346, 444929687, 145128702, 185408577, 105437776, 109749548, 333988282, 37551611, 47744540, 82122884, 94681768, 99728911, 187060871, 942230129, 55247301, 167922466, 223321620, 334619193, 186500712, 214707483, 175659680, 26695436, 677608851, 337251766, 3384202, 212736166, 329978945, 331827408, 397285522, 157863270, 940541037, 208246550, 78657612, 39212577, 10519481, 232115748, 171182251, 185327880, 331705184, 270131435, 385546638, 377506572, 777366990, 82296299, 172165341, 37619265, 174219533, 10461421, 240410273, 1027632365, 110398457, 20022033, 20323283, 1464059, 415359915, 481737203, 215980825, 74745857, 210385470, 105543354, 312363923, 193261040, 254911825, 314399334, 136007462, 137082149, 84051727, 545600581, 614182697, 348081564, 77868154, 141218901, 176325807, 778155745, 146913370, 326174153, 21124934, 615235556, 363196916, 295430074, 562920405, 22012103, 179465768, 321815167, 479686469, 6275195, 203973597, 130610024, 83067374, 21095110, 164770668, 325137007, 110389223, 20009886, 133649205, 356151608, 66731632, 141355126, 116475573, 33899165, 578989557, 248543373, 201375611, 32553914, 213595780, 799936780, 456647444, 125214658, 243626792, 219810651, 416975526, 172294907, 131001913, 86701632, 50711150, 66246344, 13060244, 161838651, 116597354, 17182158, 201735354, 447272789, 387796194, 538570740, 267791583, 631075248, 115039381, 511665053, 101208062, 323705507, 340123906, 787438637, 97437028, 75818005, 16893530, 246975331, 771985850, 565861908, 982653388, 208525892, 154488464, 386179494, 385537946, 227871186, 415289919, 308127843, 207961848, 483050509, 39073501, 596163368, 609177260, 292619233, 160916159, 141252928, 87325260, 476436428, 17251136, 125999517, 150986569, 35756497, 20982727, 43165476, 19913567, 36752670, 41413914, 38153156, 350933068, 483612376, 2972434, 161511170, 126207904, 58881987, 64931010, 582083769, 195592717, 372506846, 225510857, 15640737, 236062758, 161535276, 320033537, 70144161, 536219104, 606817452, 131579777, 593485082, 347722394, 160345683, 82651427, 45655287, 104633524, 24893715, 14705233, 134585653, 65501278, 58652539, 200849352, 318175113, 8519566, 90492319, 604528479, 45115109, 177158330, 31182595, 11054752, 370985176, 251652431, 118560755, 439560159, 763025868, 218896835, 77349295, 50559929, 147103635, 42384094, 98643527, 100501288, 552378448, 189093117, 105773981, 402843886, 473155642, 143570617, 476187122, 67629827, 127942882, 400383828, 184922516, 20483451, 440504189, 411416740, 926353886, 331625948, 4202248, 469907050, 371731531, 388128091, 54278347, 518416116, 102879135, 35780266, 142818509, 225747638, 12312270, 234700085, 166968715, 116609913, 276883154, 23482000, 250242450, 934129344, 529290734, 153130719, 129809977, 155399198, 139734145, 191991175, 64797671, 283377264, 108606352, 5609394, 153768864, 96140973, 351433908, 59890346, 559743257, 69447626, 895613042, 441807935, 477801179, 8497899, 721400778, 1306793638, 245878833, 1009995380, 229798265, 17469292, 21651331, 916121529, 42606494, 309083026, 738909180, 378562921, 541364173, 18913679, 58363493, 85480739, 232198169, 46240272, 694446941, 651498748, 703617671, 31039240, 871540256, 139645388, 15905832, 236200817, 129158631, 5962809, 133716784, 64394092, 434043480, 105220626, 826312350, 137735588, 96149269, 87249753, 64207754, 127692927, 75279282, 30639387, 446824682, 53529319, 254246224, 303888450, 76802740, 217905833, 322044407, 230410545, 336171387, 124811292, 179614001, 275328329, 176071406, 159962433, 12938555, 207612633, 409494306, 150415821, 99178893, 51581168, 132965932, 31400669, 185583280, 113414371, 80872594, 213467382, 124220340, 67118233, 302060068, 256225406, 21642107, 178734290, 210882665, 314049886, 652890440, 422763738, 75630934, 253364260, 33546676, 862049983, 1089271504, 249556073, 246735024, 63995105, 435566676, 135592366, 185552574, 236148794, 229009026, 218137571, 383002520, 896498363, 143950789, 1990887, 15900135, 147875406, 97388871, 149936837, 277838012, 349562259, 11789157, 343867174, 882061420, 237458259, 142479412, 557662932, 36908504, 139709841, 71554765, 75774429, 122095812, 65564464, 245709491, 336922797, 52350707, 138126306, 527572766, 148357813, 357202888, 152694610, 350741936, 75082110, 42595546, 41841950, 61327414, 225237132, 97290655, 268501165, 871114832, 407005840, 147868840, 151668132, 364773137, 2877968, 240558019, 258187541, 586454476, 1620861297, 512488275, 573196411, 31713703, 455680185, 176267360, 229538505, 364106916, 268358004, 153092969, 49051060, 123056165, 257504811, 277727099, 253940346, 387103314, 417618524, 119723669, 922341733, 29844916, 292640394, 114969958, 18403398, 57449372, 396768928, 184942831, 736711642, 203219966, 25247401, 96468688, 145504627, 484884571, 623649565, 13374148, 789411701, 340670466, 202683113, 198107218, 63172208, 47451782, 327656941, 35864532, 87479051, 104230420, 394165099, 272898198, 23946973, 219570470, 1668987292, 434074449, 142664869, 141731489, 43593979, 174773714, 247901605, 297757815, 346339945, 207627875, 60283106, 222167600, 492735347, 123154721, 136527103, 364224285, 144633009, 113925265, 63210490, 318691480, 257020806, 49327890, 522008088, 103956866, 93046679, 576953680, 133232885, 447210859, 197932311, 68405076, 33715329, 196815560, 7200696, 202840741, 713225283, 694361691, 379946708, 204229970, 112878612, 176552414, 459824738, 211043947, 12326968, 140961317, 290177461, 157350031, 616512894, 468887519, 207140267, 523173950, 197353673, 44858323, 6918741, 36125475, 67851320, 18541225, 2522166, 255939343, 564137707, 87935887, 491161036, 1467046771, 430647966, 255788734, 200433242, 174081026, 90981968, 89390277, 381140166, 267441529, 193446449, 106019628, 51699052, 219432860, 356292270, 235624015, 372514373, 129440735, 141612223, 9974437, 73724780, 304946991, 749615004, 3776184, 216253978, 47469594, 22589471, 99957321, 402418644, 853824639, 239493661, 121727475, 325506163, 39729479, 1036450239, 1012633129, 256046416, 83168242, 80912651, 34730307, 278415000, 198234709, 159335799, 461402368, 474035017, 717001609, 44696728, 106579347, 100932174, 100268125, 121553185, 216478522, 360538132, 96859448, 225011910, 92751174, 64417466, 135607002, 248021071, 359946348, 29301621, 57658227, 29170338, 440191172, 22157713, 476116251, 203450301, 317849577, 500593152, 420974651, 222645962, 181079931, 17214784, 382766923, 16529975, 595177411, 314847929, 874112632, 66276133, 1057191, 85647141, 234758329, 97998218, 383648901, 269967661, 260969098, 14519288, 504933065, 4970150, 138950214, 109239475, 547915509, 113877955, 154349561, 148302630, 148527024, 4315894, 837436983, 542133941, 252345364, 183811959, 151359472, 28289298, 219103503, 56797940, 640795993, 159987911, 266601938, 546799900, 144440625, 269465656, 595238788, 1876990165, 312443775, 283049135, 129041566, 99409207, 161766894, 1019595212, 21276660, 521516294, 100351714, 785106648, 60714033, 184764217, 124365909, 264996934, 193423769, 20924681, 183219008, 35205861, 227035735, 300898916, 953206160, 36975041, 254898365, 265284526, 105917049, 74621058, 75696800, 363847032, 262993444, 39499466, 180544882, 100516238, 206592917, 550305620, 124108137, 1221549146, 244110345, 158725946, 502429027, 643823332, 40823434, 13362496, 45233332, 80914393, 148223118, 296463898, 109605917, 295447826, 208375158, 634718739, 25236224, 80661702, 410189014, 325725300, 586049897, 31003895, 781092140, 38322810, 245701982, 226613612, 4941111, 25086046, 267472355, 217376586, 331231689, 265721, 211079892, 98086713, 58476417, 40171202, 889274979, 110251605, 737540576, 33906901, 113757442, 30854913, 205904499, 306420126, 401514946, 466133442, 109525694, 538832554, 23377779, 33729300, 102279405, 340837643, 995876057, 81680775, 246297516, 229772423, 233388284, 258840961, 142872301, 863902740, 685299761, 34793616, 870621990, 64980829, 51969668, 632084625, 117290641, 587590887, 74342208, 10475097, 1784653, 237598339, 42634370, 92168025, 4428715, 298534264, 533271490, 116213717, 206581906, 784708876, 65952339, 515825349, 143322488, 763036462, 536229987, 3836873, 82725943, 57733872, 128881075, 304132128, 44732115, 97065889, 213074481, 533249377, 83306708, 345449730, 392078301, 123668683, 254030579, 381053902, 140468769, 122679853, 26461893, 96762272, 139734732, 525108695, 977548626, 83981944, 853284497, 191807537, 886827672, 52029553, 32059375, 127004121, 540104112, 346819675, 40331998, 37846250, 673997497, 84171219, 444993065, 461299219, 103906300, 118664607, 151766011, 237878914, 474912559, 794255815, 844190394, 56476592, 162764373, 32104026, 218292376, 94557734, 144090520, 880470841, 45369057, 132318450, 1041963105, 32449656, 280363600, 767275146, 10518448, 190967814, 18889226, 284179227, 71673028, 837378040, 412088784, 622134802, 973025119, 112504780, 170686628, 93570872, 159517863, 282373711, 267213425, 87271117, 114491902, 109809389, 169052501, 434564750, 159727840, 397110228, 504190426, 254274049, 177064967, 373217558, 371829435, 166568859, 537286144, 42426503, 44680716, 283089590, 285860755, 938149622, 14648047, 272713080, 696997311, 488070106, 91104058, 614927647, 707839451, 189674715, 761957116, 126785473, 45977152, 227758601, 138180963, 188564306, 639495983, 258330929, 15150693, 29622946, 132784941, 282105536, 338540134, 260823514, 137749041, 64898191, 23515079, 3957501, 120199212, 1137780785, 143766047, 4383008, 833754630, 169297106, 138242999, 266205232, 97843694, 314639399, 86779914, 71512541, 58884628, 65911090, 119245115, 29103075, 207289379, 384249771, 118020512, 158377153, 127908469, 141918661, 95177633, 195702714, 444914760, 387100930, 40227919, 63537659, 1028469285, 954207990, 68561982, 24620245, 328016189, 274298351, 513215756, 290037922, 30630812, 78909359, 10394417, 47332770, 317303660, 101249980, 41704202, 593291175, 88291175, 187448973, 1334489744, 457793655, 3232938, 27441525, 3333345, 40293007, 79439077, 16388783, 287243169, 18195196, 464501789, 211116491, 86808140, 214032759, 194773750, 77250447, 272100194, 938364616, 592857597, 180384622, 127717420, 368235290, 181997198, 144648055, 640487104, 55148616, 175104133, 14305299, 21227906, 382477628, 96832340, 456558752, 105952658, 101481765, 660590279, 24381797, 60756207, 50277715, 42382240, 526936274, 1122127023, 931102329, 44409364, 81194056, 83260215, 144748377, 192082960, 628454154, 131139743, 43496646, 40941188, 388828309, 277474090, 269679262, 53815860, 215725937, 459621621, 141265877, 116698999, 277197645, 668130086, 138812143, 166103054, 74775009, 340337094, 35662362, 107483348, 297180645, 11959579, 68204097, 87216652, 7700819, 57631075, 150837600, 10303272, 165350090, 503387848, 94636050, 31896988, 1071419223, 58247115, 78477397, 368506981, 490860246, 586036795, 303051635, 40495700, 329390057, 24085092, 182119377, 28029244, 758541, 608492880, 220716287, 1387677647, 121181881, 152461259, 20240717, 8943047, 68512465, 94596259, 99673649, 512072, 73165875, 179919266, 416295076, 158936566, 109555850, 23854336, 219688434, 18040005, 7749084, 220821678, 448066512, 543195558, 159524623, 72467549, 378884140, 626973703, 19703816, 76797487, 372957000, 463251390, 601266436, 100120240, 454810475, 1394838, 182335788, 272217242, 10385237, 168722599, 730723111, 27236506, 169683472, 50938353, 236022143, 79547001, 259500633, 296287297, 25274209, 702203494, 354845661, 540892014, 179500710, 93200593, 177016377, 309261710, 202633427, 73339982, 109772537, 246435564, 179634076, 24259656, 147458205, 37312259, 42395285, 1171979624, 38915691, 131572984, 262977857, 682282878, 516683342, 98518193, 390021029, 104565908, 175557131, 28100560, 106485653, 505828437, 391919088, 48623769, 198896109, 77046601, 8829229, 382333153, 92392248, 194360191, 157253422, 462005889, 376769572, 201168346, 50081250, 1250650239, 120694326, 112036713, 544915230, 79593036, 106910070, 374263624, 277287223, 324488943, 300258186, 185072831, 2330930, 55813733, 226017211, 180058143, 90849766, 277975811, 23881475, 436429607, 446711956, 118470757, 433537528, 240232520, 33142649, 26002809, 30252359, 98775746, 656888718, 252230553, 484020784, 478861433, 114861101, 782068396, 51067481, 65589174, 60672706, 187012000, 930381378, 502807882, 60978770, 132848472, 26163384, 865541544, 231654707, 291182638, 159946651, 255237986, 15282284, 89075575, 144762324, 539503933, 273664205, 65992255, 61824699, 377954223, 99714433, 16798580, 17532412, 960742887, 297514974, 279371381, 215831486, 390312369, 240989888, 347250346, 352981849, 425163745, 999464928, 323431853, 132483032, 704124254, 490263509, 176780976, 586813075, 48555086, 599380139, 23818986, 405286359, 794251676, 122879610, 58521046, 221891617, 377426506, 47506149, 392405347, 80324980, 66985216, 473844074, 19539695, 761112485, 76189331, 338859234, 182748292, 385155240, 16008758, 922861705, 182521482, 246688388, 772374256, 764280230, 1253192026, 550020714, 407662505, 171956617, 381721752, 785803669, 32539974, 498183864, 347043237, 17261871, 859743291, 297404894, 263111666, 166701895, 233071231, 40893355, 342875607, 433589498, 340290838, 420753202, 181184664, 336003525, 79667249, 1120447405, 173390684, 101437069, 817805398, 934053556, 664150090, 277667279, 649897470, 285472814, 194624833, 316270426, 560625945, 6199832, 131366785, 1244040938, 540568451, 32037566, 14495998, 229206670, 203030144, 148868711, 10073831, 31565383, 101697792, 189529632, 289956400, 9249725, 94913453, 44033163, 184043913, 96893375, 39208911, 960246925, 258099481, 486516922, 760765601, 88857656, 176208046, 246478189, 740226828, 367188690, 11320787, 449612592, 392404768, 150088312, 215144182, 129653030, 91617822, 248596838, 846523195, 459982129, 403960172, 364192592, 305096091, 494750768, 76833546, 111354246, 559365756, 93872917, 181188987, 124779458, 244688529, 126207345, 25958718, 893370883, 865424154, 408610175, 75777419, 56520492, 129419780, 717179770, 734645051, 148001261, 181757020, 326254872, 246288244, 11866554, 24278255, 272762313, 135122840, 421680642, 164305347, 684204498, 205335259, 581111851, 387034295, 203766783, 68343745, 131549452, 470977638, 167388347, 190143736, 148597101, 237662160, 245773325, 132353433, 212942059, 128963826, 129865013, 178583305, 192793701, 101331644, 146728201, 309724856, 217163166, 553638907, 90071661, 114115078, 859627089, 688440228, 180843836, 185977837, 37135782, 142550667, 409929678, 3900953, 691323268, 101459005, 1177703776, 100107143, 41034941, 59867128, 458565512, 224598967, 205951614, 49017934, 327216866, 478361086, 94500663, 24733514, 102568797, 444568010, 43880724, 360222817, 182701737, 328157526, 253809510, 201029633, 432258198, 103217315, 160560507, 92068448, 224946186, 106593322, 160833261, 115743853, 25469470, 125992607, 293569821, 470107277, 310844908, 217421656, 7168796, 78325730, 548389844, 221636818, 49481195, 229575688, 41150035, 167948410, 291841848, 165255229, 86034508, 221609789, 59348773, 194949164, 4296200, 219309661, 11906903, 454481210, 263880771, 74346067, 30196900, 57642887, 226328594, 218627588, 210500288, 289718537, 305931259, 843844114, 178971777, 122311561, 192583439, 81309593, 122920386, 129338540, 227644936, 205972429, 845655181, 335897585, 371265444, 123331032, 51173966, 6358660, 715285063, 34403363, 91200677, 784762811, 149434771, 108079212, 191852845, 14538954, 104204813, 257665359, 75784539, 595854079, 686666229, 207187832, 95701293, 247730577, 183238451, 414495133, 338799860, 1805002, 426967763, 479972743, 132266995, 123150517, 123367201, 26668248, 22911890, 539548804, 166870032, 1007258, 591093110, 41010296, 552669024, 698318737, 485785251, 95474214, 1517262, 114384883, 28396308, 106444705, 334506425, 114133722, 916361164, 129751296, 268748337, 83367344, 1144250739, 36537526, 434502025, 161081150, 574399731, 244643182, 89655448, 5349888, 907417152, 137462151, 32583129, 426902706, 83292210, 105747510, 213307728, 630585478, 65202200, 146526340, 476256113, 14318550, 341659561, 485327330, 42764411, 460804982, 651604867, 527110079, 661857785, 566519877, 74711177, 94198293, 42298291, 1015261690, 147715261, 791673405, 150166124, 14873233, 93456704, 165784719, 20531143, 2248166, 530698577, 739162753, 438115640, 561753205, 81520013, 28611055, 407903832, 174277844, 198005830, 119772565, 87386513, 1237984718, 775262693, 148609242, 219625582, 520310037, 9049084, 67443404, 177211620, 6647401, 195977541, 127191732, 452856, 314130933, 105507958, 52782473, 365349391, 122911687, 131646267, 223819656, 126474108, 1609699437, 187088947, 708394654, 556394573, 192682634, 8084027, 138790983, 359642488, 215196179, 387203924, 387967217, 91880365, 163589493, 56383813, 243944046, 16823843, 950074011, 459042874, 210782811, 1446148629, 24032537, 682626432, 367316590, 400820911, 1408480051, 299519914, 83492357, 120687593, 16603155, 233685197, 359373373, 15893841, 23312011, 294689977, 305875886, 113056275, 157775270, 23472712, 22912562, 365988271, 243124319, 502428678, 9303633, 432624636, 411314961, 267649819, 530070689, 187835259, 59414714, 44746512, 185374571, 89749222, 465240798, 1315311496, 442844863, 457362754, 293486898, 465694128, 708111466, 346425695, 139302109, 143776366, 409349585, 72397971, 22699258, 166592276, 106893560, 200124624, 93633415, 141768767, 84379227, 593045077, 1290243, 14379093, 314960109, 206769328, 151630209, 95827966, 11070109, 266977822, 162321875, 90984417, 291709717, 87078568, 88193286, 170712992, 497712202, 778230312, 93507583, 396739741, 297446514, 159193977, 733533493, 60080190, 151891151, 4339628, 142219841, 383754952, 91904331, 328390606, 50304877, 98832299, 113310400, 691933297, 30838321, 410585117, 165984712, 208501785, 23430646, 77198228, 50085326, 90319204, 206937788, 233666670, 100038047, 456514344, 14283273, 45056366, 385745827, 26595622, 301523020, 151916489, 209432311, 252578162, 268864225, 977642870, 125794509, 12076361, 176965564, 142736264, 185054164, 284622105, 169809824, 496078699, 105928759, 231157112, 263877328, 205885482, 539076025, 164300049, 413261539, 411802088, 181722047, 104680976, 122156016, 436022247, 40597229, 145029343, 328461318, 625496957, 192442878, 37068959, 23333766, 434440669, 179217429, 167565684, 199243068, 252472807, 79626547, 1808001, 5970329, 377329823, 141056140, 73367394, 113832295, 177168665, 455086902, 341516971, 5077967, 307744557, 52476861, 437802653, 168697134, 297128103, 559359070, 233212559, 66947562, 4301355, 1661802378, 301645455, 295159261, 80122875, 437333786, 185314389, 443279653, 10778698, 884452431, 22536069, 280997045, 66561172, 24502994, 145900124, 344376969, 75201938, 288366886, 19014307, 348977708, 172921131, 416620321, 368101241, 633297727, 336127816, 95299274, 34452434, 37968550, 51437551, 160165592, 116724581, 749203022, 159168866, 7501359, 249763524, 162305413, 232762666, 29544092, 81529870, 259164814, 453700039, 25559802, 83793755, 9596813, 52638082, 312172684, 189443610, 50262467, 113940694, 229461629, 279215925, 226022071, 120984352, 40856626, 67737769, 468337327, 155655682, 25858734, 845881486, 120963120, 209143775, 16092968, 96285029, 358381302, 482228677, 285978820, 56759765, 143437248, 190383465, 60197299, 408288957, 104906617, 92584404, 13666726, 30370645, 66056416, 178357585, 254991558, 39632882, 232662508, 738854032, 411201917, 610667966, 95379185, 695497489, 544753203, 553330196, 121936121, 331164852, 475515387, 173586638, 1717963860, 587914063, 403553317, 356691483, 343838182, 152314405, 301003190, 579469622, 313828753, 262148811, 294393946, 3470199, 292352117, 167418346, 543941481, 572801110, 321256604, 176265911, 391318007, 87255809, 145133265, 215010616, 688499890, 167928689, 173561784, 208457138, 110631228, 239073936, 76794343, 665025327, 18272912, 76201204, 215846062, 497735860, 352169530, 86219573, 6740919, 139303823, 46560094, 336162090, 402354345, 228830352, 173153886, 155692212, 10306675, 112985114, 19505111, 356996179, 228632419, 487489104, 384632088, 360904890, 132001439, 152219733, 61371372, 254809851, 967850502, 92126782, 60761324, 941195004, 831892634, 83880990, 65708814, 190074464, 528079056, 319803710, 409055819, 580480399, 508201740, 314157061, 114597318, 264029028, 3168474, 227304289, 18366631, 429049062, 660932965, 579605878, 88791059, 72412455, 343550080, 11800292, 998499798, 525329955, 68139317, 708139621, 171278366, 780411162, 66352151, 301082534, 662875546, 685732835, 315240111, 571076061, 150744484, 215030112, 230988363, 865263670, 54736958, 149230444, 136354402, 88296434, 433181838, 141640840, 511971477, 256471644, 62522478, 194034358, 186031136, 180439136, 373271899, 943213379, 88473848, 348327895, 473978207, 78418539, 285918846, 13481838, 59465294, 261635664, 344825364, 32511945, 211355475, 143560077, 365020848, 986398720, 335757272, 19106671, 308549463, 613273653, 74917622, 22809703, 52778715, 12186817, 73611931, 404463310, 140773541, 58555098, 93071205, 640592460, 310426922, 12094472, 264450638, 336524636, 395536191, 61217432, 338123013, 51495301, 78264389, 661528118, 428350456, 1002672451, 403258829, 112433398, 40084701, 197394270, 18098924, 246502261, 110617973, 370402683, 76278052, 233674042, 231728268, 51382837, 125740129, 457424122, 818384445, 409034135, 3794316, 75645024, 314517303, 159405693, 10398128, 18079685, 648466455, 218698754, 84131003, 264675758, 353259041, 198117550, 92025518, 202122252, 75956507, 18791005, 550212633, 38473517, 110174183, 309915125, 355808762, 301180366, 53776795, 1073673519, 1073523, 382815747, 45492608, 127457058, 105973572, 30821037, 46838073, 24895894, 29002541, 245044491, 206335957, 589528563, 292575880, 58370233, 158538459, 724844092, 227004779, 52551452, 60951617, 529622985, 329370645, 160275300, 303304524, 106072308, 234860817, 3667392, 382617380, 102514480, 153876560, 760282356, 13057398, 56120258, 160110803, 61032510, 224472321, 400908628, 16668071, 348276705, 535532986, 649318781, 20567512, 43221914, 431697144, 359052161, 26058857, 75710039, 145620601, 292160423, 50639403, 261025167, 199382496, 566373055, 19885728, 801481232, 823850940, 138412649, 885478929, 335187863, 169752526, 42910988, 285077826, 194879639, 110074939, 29321651, 169354912, 282894308, 264909852, 86863710, 127534449, 181405915, 737058462, 161427746, 131952897, 357048857, 745639469, 175973094, 351148167, 118341407, 598552233, 622412628, 348213541, 144677181, 201939413, 212250621, 122389727, 176699461, 800664968, 21677056, 772430062, 145308112, 976382538, 114124606, 307998442, 16162152, 59285827, 614850460, 332144543, 468528390, 51717147, 485935987, 18051518, 31595397, 10033868, 60481063, 242600981, 985007175, 151335555, 20346477, 22204275, 104866108, 344557516, 217019494, 179908929, 77821016, 28559188, 247925940, 176715431, 13845750, 306276170, 51434072, 65546816, 138258903, 197412360, 615924052, 165885792, 169023781, 429321440, 50278718, 11243099, 343223430, 1938266, 30094484, 233494351, 12046234, 15512468, 692824351, 390755440, 179222244, 1587145956, 242306492, 446474750, 341949095, 43300065, 95314281, 341978651, 77186489, 622942632, 60759540, 95808134, 107760721, 126994643, 195251274, 354648304, 278749263, 48203839, 766667975, 32253430, 880276867, 32282794, 44966435, 151970812, 545348461, 2333096, 3584270, 290476877, 17985003, 744533127, 149895264, 95843540, 308581747, 6078411, 526056934, 138682017, 50456765, 635689479, 35462549, 49893593, 443175121, 20834010, 66059368, 585627612, 59889339, 356457920, 123466594, 242180741, 280056809, 100069729, 330018960, 119136101, 50946174, 252854673, 419831649, 419065395, 122816995, 215741407, 161078606, 53377190, 180693449, 265060985, 175837865, 51027191, 136328931, 111410503, 105488273, 102714652, 75806149, 58919194, 179468230, 435442403, 85123804, 328345817, 154703044, 66724782, 56247733, 441201862, 452096314, 486530898, 540078015, 84592362, 58282600, 415760696, 266028793, 355712993, 231342681, 1479617779, 90640185, 403045133, 52058034, 199733136, 139217643, 139475047, 158681874, 215093153, 182482171, 395983047, 546001674, 179528006, 926731635, 29812517, 10557087, 1197355969, 446964981, 173786940, 62776354, 370237052, 8642069, 396031752, 108845667, 612657405, 11407040, 87019761, 310481620, 297939541, 2998519, 3085452, 143799986, 12651130, 417179782, 111290645, 227086960, 762707786, 366416684, 4646032, 74115154, 1151048549, 206575183, 525518883, 172427546, 78470062, 891850472, 192864890, 74346386, 198775058, 359002565, 59500237, 84977250, 393524319, 942237313, 249135473, 144135383, 383172976, 266846859, 507988630, 52895721, 275027834, 529157524, 241697741, 311871155, 136100239, 306994617, 1697195, 24645637, 51421718, 396653140, 107096706, 46993831, 99064878, 55838685, 270206271, 221651713, 618375066, 606049724, 215759576, 147721405, 128861292, 373389030, 157058430, 43750963, 170241769, 426720788, 101257456, 70060510, 148988206, 47930284, 45824179, 453468499, 397571519, 372692929, 77509584, 50118907, 53347292, 79777325, 1723994, 117528387, 403160216, 23479949, 194330624, 24108701, 5402169, 612950868, 135491582, 678087746, 209523871, 797276904, 25794216, 688551886, 159620739, 205292981, 463079866, 670959820, 22070967, 39264244, 42866267, 188694337, 95589895, 97484652, 103614200, 20117204, 436649085, 227190252, 1260959178, 353476213, 230631724, 367497841, 24306907, 117201982, 474712337, 247130039, 155487811, 244418897, 76567098, 235681943, 195749742, 418936257, 204440362, 118836572, 335162601, 351154721, 274715500, 89414659, 279942157, 341286189, 145934749, 210505698, 68225313, 169078353, 243560872, 211178855, 91145484, 43051154, 535640570, 87729908, 569572771, 155897825, 397799685, 913744145, 424496045, 247445457, 102287185, 1083621381, 59862632, 223459325, 224515439, 168391291, 29294106, 506002707, 465845865, 223347958, 231499316, 167552004, 505938889, 977381732, 722501532, 83565567, 195510735, 45735582, 177200244, 32396830, 160322220, 395819391, 81505575, 17205053, 429714625, 593536275, 187471585, 227217849, 522417509, 12439777, 683524405, 686167300, 7521428, 547431282, 179393384, 112648255, 23617300, 239862279, 751921221, 286653314, 45412863, 82821201, 545453294, 374438690, 73404159, 433572623, 392206943, 379244772, 849689431, 77663731, 258741495, 45476580, 395341430, 570184889, 65982061, 225912937, 395541463, 342223284, 588650572, 126777164, 193790907, 445852407, 95292459, 209509459, 150087561, 205316513, 269006193, 192866928, 555566494, 103732811, 49619602, 403743259, 236731135, 10313509, 202626003, 468261893, 489987373, 94951570, 107564686, 427555438, 213845617, 797522434, 323944443, 103472591, 231321138, 673887104, 272172548, 27334806, 131661917, 200181034, 172069468, 623112968, 23556865, 197261132, 57239317, 192753408, 15193328, 467773540, 398248435, 303494286, 602008198, 764075309, 162900609, 175446725, 1045326265, 1124687585, 97698258, 458051286, 89220791, 270715919, 121262924, 233061445, 235424236, 449623913, 280687009, 47299536, 352921267, 90330742, 1814109, 34047043, 220208362, 175523886, 393741272, 133611800, 370807004, 873414755, 283940165, 215637332, 205354641, 148989936, 69922091, 150183597, 123130259, 309457432, 641405763, 114620027, 296877313, 876134374, 659750677, 323413046, 243953771, 7131910, 88388391, 711310317, 490101493, 710358880, 490683841, 103022875, 886378796, 502173907, 154613639, 198655299, 20733335, 62321215, 661746272, 464967679, 667851105, 102005947, 126273506, 161256668, 363763860, 116851993, 569333149, 31275112, 10173178, 206565042, 61878001, 162764078, 185272687, 544818370, 45180630, 498516361, 604567784, 54526910, 197908519, 176624710, 530235892, 120150070, 433144099, 467061483, 833588036, 1166584102, 27015821, 403879066, 767058576, 382101486, 246624067, 526832313, 21001827, 346152640, 100033177, 456376019, 469252680, 753170364, 703748751, 533755322, 173635072, 572661012, 102636187, 344783759, 372313586, 67046134, 224726665, 278003182, 139299628, 24917542, 559205333, 83057206, 59178418, 302776426, 490183322, 621891020, 142410777, 732491050, 305270048, 117415245, 317710495, 7799181, 64570043, 195592550, 186924465, 85680493, 109422533, 106500142, 64228997, 2822297, 750533180, 154432054, 597477172, 1359465, 47012060, 275882987, 68792571, 173524481, 9717554, 128009126, 223283936, 289107462, 134348213, 192007257, 23566741, 1065089693, 47031217, 183793966, 664205546, 491938900, 509329440, 118945924, 257627439, 448933049, 559049530, 541480779, 23981606, 854418306, 58048065, 12817764, 932447016, 38435879, 177658877, 252332651, 40005237, 134060465, 32155280, 546021991, 9697681, 73857115, 54024992, 157198550, 270028798, 156416801, 201127798, 256491394, 247529821, 6255686, 88006930, 56795518, 554097247, 130869573, 217991200, 152615634, 2594443, 147632666, 196526533, 338393793, 122269777, 101207788, 310532232, 185673220, 429621629, 11870622, 130972265, 753773981, 11850590, 76276483, 444216793, 471011778, 179636749, 361128545, 84577795, 548792849, 53648259, 428762639, 71659565, 203728191, 225896932, 81621174, 344151456, 56694870, 280312037, 87661618, 262602102, 139833054, 160482014, 596231899, 35092675, 454217214, 61791243, 218209092, 17610853, 1026039, 245753409, 160281347, 315998930, 133231166, 158198426, 186458879, 66100881, 307168123, 1201916969, 72576294, 95920199, 49949200, 409904463, 205401198, 324651104, 116368050, 211558363, 50837087, 209710487, 762964156, 161034146, 660341956, 114702323, 621161544, 440312127, 170564424, 168087152, 3157555, 400495389, 202027996, 387456636, 35267967, 348330745, 163291729, 193884580, 50706059, 327543239, 176047872, 247338321, 317404435, 339693662, 624891952, 253877581, 76891843, 154328619, 100873340, 115308384, 1086722913, 178536788, 595853832, 692667662, 310327538, 216918054, 5519530, 109423017, 119952207, 73313561, 432222199, 34444133, 3801830, 21617434, 578942224, 39607930, 437722303, 24842208, 137079376, 1004816798, 423078875, 571150872, 231824257, 71925254, 114460528, 175983436, 503354758, 243436858, 294754760, 46775501, 780623536, 135959438, 134478602, 236175904, 19484039, 472047994, 40309039, 489805548, 47595141, 76566848, 21719023, 333201838, 123424333, 492183128, 416842443, 78257419, 347227348, 241014065, 112057291, 36028110, 102438785, 575619927, 1747148, 277224334, 33676466, 28878549, 554356029, 896634709, 321593239, 91197321, 553619906, 133565571, 152687640, 83345446, 1014224082, 188119077, 496965997, 537407550, 112574017, 1466974, 32217380, 49573943, 167802416, 176406327, 2366810, 408762, 177052611, 355958343, 112533559, 228157722, 251688420, 140748236, 163139718, 256173119, 432543536, 104193534, 338774350, 300533373, 9459581, 47922838, 332278259, 638956093, 217644099, 41670811, 687388739, 88553283, 135323412, 389569428, 603201125, 360060371, 196766055, 1991374, 286056961, 1115765342, 72764839, 292985583, 355705115, 169781022, 42715686, 21411406, 11320311, 378158506, 177980835, 75469095, 33962004, 90088295, 101612058, 235519815, 329563912, 115538972, 369594480, 144852375, 79827411, 14188534, 99287905, 707602179, 22628778, 327830496, 317942835, 991710827, 57231841, 64508729, 1086413908, 504824434, 785108149, 926748587, 80878689, 306323894, 154238242, 45406409, 379988941, 69018289, 649893239, 74349396, 66752525, 8179901, 86466847, 205719239, 120852648, 1084823787, 580722945, 31322046, 42937762, 594139078, 646324295, 61705359, 458854586, 1259312753, 647891439, 193191455, 907395858, 510834627, 173010506, 320391221, 321747430, 146875045, 293718023, 329426870, 28865307, 510352264, 532631706, 251065908, 21605127, 198170114, 244505385, 94785797, 95906807, 554365767, 233611226, 291914389, 248658380, 168517791, 197823472, 186160161, 29853946, 151557778, 328192530, 692729689, 50211811, 121655752, 55155803, 39415823, 65080220, 290238236, 481112682, 291206783, 476587232, 76142878, 123571894, 306625058, 27563279, 1047547696, 10064606, 689239255, 187062057, 270264378, 933722778, 435104003, 79447666, 214529360, 168007432, 251761716, 4473666, 1158352206, 30896623, 547968631, 48859355, 451889132, 424641595, 110326580, 52837179, 350004080, 67364558, 41214157, 39770474, 15288194, 437959993, 338523459, 13966636, 51087288, 136035443, 609249196, 44609231, 152954786, 460210413, 285641896, 456382632, 417752501, 61786377, 20502023, 24651493, 298264624, 307612976, 514013151, 139736403, 207960566, 344389073, 227942776, 28817216, 82853582, 287702424, 88355149, 1377135621, 568127988, 147519772, 37935341, 308618951, 995947345, 243833171, 355443852, 43256130, 1390562751, 127880674, 13854145, 52323630, 59534749, 162257015, 1394019915, 357860929, 288984153, 454912768, 466488921, 21917976, 76075691, 303135324, 177723249, 413804003, 42955969, 438558783, 587051132, 143205489, 166604509, 666721018, 140511989, 25407938, 24646402, 91060567, 398720935, 17540207, 579390597, 79346996, 867073659, 264889112, 270462739, 382098142, 215959100, 234255210, 871581662, 94025287, 18581669, 123473695, 31839042, 594900030, 58384513, 30376988, 101978315, 305604305, 599792544, 64062437, 71158401, 202131885, 263827760, 157389446, 57887759, 9084791, 204934778, 8196395, 19284689, 98642558, 494781118, 325143136, 100304007, 434913866, 107263777, 786896400, 99456755, 573886744, 202015177, 5172471, 52486881, 243110641, 131713826, 10346622, 71930658, 234957741, 41990441, 95551687, 3053684, 414011632, 192480816, 1314706619, 17618765, 39725526, 153812185, 1581385, 675329082, 942235517, 9826960, 358407929, 7068432, 563918900, 155195306, 110637065, 150017469, 195257719, 8958395, 359292496, 136645247, 221398244, 379574645, 105464733, 634004302, 599902643, 31604848, 590523745, 68286894, 79335488, 56128067, 72231675, 419387485, 159921664, 69622156, 247477310, 236998278, 142998027, 251470983, 78652071, 37833238, 277297555, 1260526785, 45987888, 197978047, 52713665, 74939552, 321589859, 318864000, 6734670, 153714509, 26515726, 237017036, 760473451, 49150977, 73866800, 234480416, 87581404, 37303807, 441767571, 89163608, 18555319, 420742392, 462329945, 194597454, 392457925, 147893056, 510007300, 53670879, 8651633, 29597887, 100650594, 148150855, 498091663, 66176539, 318063777, 5951144, 63427210, 133755705, 338898697, 71985794, 230798663, 220060065, 226568596, 83114200, 348300186, 446631730, 507102901, 375961931, 313261021, 139046627, 412037325, 378086589, 58458428, 249942255, 5284339, 891788703, 403826136, 547488848, 601216521, 219116436, 982946877, 61984196, 1079479580, 457263357, 51003331, 302769212, 238182924, 129835709, 455990086, 97779428, 122782173, 134376464, 537063941, 742547751, 289674070, 111505728, 183954570, 79836374, 26339186, 726057796, 290814138, 264265433, 154193136, 249752362, 70943044, 163651515, 102695605, 381362336, 106052701, 63753962, 102098326, 96006897, 48713325, 95149241, 541529414, 24540258, 344697950, 163044059, 66426505, 208551927, 190875098, 236918068, 307860820, 125582671, 85125278, 112548174, 166364340, 194890957, 114855707, 97185998, 160132639, 2603090, 714264912, 583516652, 121321592, 648533195, 112643763, 307137357, 296931103, 145045193, 275205876, 1137310496, 168655268, 217712710, 8829645, 22924228, 276471948, 378056181, 90220460, 532002792, 12079225, 424520319, 159738547, 347888626, 665959888, 169713779, 456188711, 127567562, 1123229725, 48507388, 151066952, 152808895, 689417762, 120001019, 19097275, 90786626, 5304051, 46721633, 338687597, 313295170, 231080216, 30221744, 147452254, 421572959, 291241257, 162934839, 555864163, 97689760, 856311523, 46596877, 663648007, 373416217, 824691699, 32021808, 68744918, 258590502, 233537468, 11838807, 366813042, 223951125, 843569774, 51759299, 370240570, 569511837, 206036443, 223614575, 663231008, 97197333, 172141637, 268571606, 1313970367, 13931292, 179253804, 47932402, 239988261, 43384138, 122708302, 167854985, 60791723, 105795717, 262759871, 33785372, 468313665, 106026402, 70407935, 14113124, 777037772, 220455400, 496543913, 314111989, 556701491, 431431853, 255122208, 261531103, 305624419, 43393604, 738609162, 112988876, 161970148, 141431084, 345792340, 57868476, 62763670, 63744601, 118732527, 431338929, 120055886, 345911997, 82423734, 222379997, 429946125, 272028821, 150841979, 262379713, 887306570, 141166801, 147760036, 286737511, 933283822, 83025751, 26621498, 497686146, 18210508, 330287288, 64739619, 182687105, 249653009, 43772764, 236463157, 441407904, 98977419, 99534530, 212120, 195279054, 197690625, 30260171, 102090433, 267014474, 232434162, 107145116, 763388140, 127354537, 908635337, 124748097, 371973731, 304027798, 407252085, 683171492, 23123111, 185056357, 55758813, 52274117, 112154622, 407794, 269181894, 217834151, 74925606, 73174618, 162753150, 474298827, 12490955, 386484702, 586043465, 424906137, 88140385, 45805553, 281496897, 113419736, 415178593, 69780889, 147188622, 174098175, 117726843, 39416165, 507285818, 29746083, 452042226, 127423053, 400158224, 278203942, 560434016, 880313227, 463637192, 907011266, 334364039, 61151552, 84511074, 837156968, 156759445, 346274993, 204558416, 72313475, 72296115, 146503776, 405397789, 82412495, 231260903, 150296019, 252049537, 32153344, 139825868, 405726515, 239395544, 384264712, 664817911, 55688512, 255742586, 351812516, 101025083, 132288261, 35530230, 746586578, 28225446, 784448845, 628923558, 448698871, 613510521, 51327029, 194900778, 111783139, 279614547, 13620888, 105553576, 576479928, 66161083, 513989107, 42865102, 210961586, 8098606, 188718302, 287367559, 153604072, 89800303, 1458241956, 58820588, 60000994, 719039461, 220045075, 305035036, 75433077, 796456090, 436065843, 719197072, 427660398, 184747441, 484217967, 251908298, 135258582, 380573465, 554597898, 178016627, 139310092, 687521167, 219323394, 91218286, 591533085, 142039065, 54600428, 152728985, 155934388, 313494460, 490963871, 561076628, 972512996, 235059597, 462524146, 51183224, 194107758, 37164421, 513959237, 190450743, 469722727, 138899138, 155397282, 261803258, 622137799, 6297481, 1050689986, 94715077, 202270997, 515326986, 202936083, 730283653, 199557053, 24939398, 946907622, 47593955, 185854908, 45105392, 113467088, 756177421, 498106598, 54632144, 223394350, 223632792, 194754951, 38853853, 360464615, 405288303, 3352371, 111484867, 9707311, 489610374, 181903036, 67856989, 63240386, 134311596, 1417905452, 56543952, 155335989, 199388533, 11880106, 939630642, 62169064, 102016153, 16191774, 52407381, 174835080, 219250299, 22497477, 465373586, 76053525, 299562191, 378512116, 220380288, 72856414, 85142124, 157143207, 346504542, 430977316, 163193304, 450342998, 483231387, 93506937, 97813704, 440846418, 188240828, 322346797, 433889094, 156766521, 584764638, 105741619, 71555466, 521322112, 204006427, 214442939, 292364162, 164437216, 7843870, 67260352, 90731555, 246317137, 65571387, 858769017, 118292604, 402479953, 58861731, 126837438, 925724920, 297785978, 692262186, 147960498, 177304358, 381829159, 168529207, 417388641, 101049175, 943818792, 72333366, 32817814, 142829568, 35228571, 155964670, 279224053, 1044598182, 343015549, 779245609, 276552860, 53077082, 343922943, 254890803, 168512208, 104642681, 231702430, 51242998, 149758529, 29257494, 34024249, 215851401, 19905964, 418001038, 173815560, 183507183, 85467489, 1108196139, 874030435, 445565842, 94821068, 305952656, 12653747, 142851368, 493762787, 49705517, 247108471, 72282762, 610118111, 104736050, 53665470, 91342445, 77521695, 627667422, 281712554, 168108141, 986939119, 69479268, 273643224, 43829141, 108027382, 381121845, 326028883, 138371159, 212863325, 706936092, 279031410, 225648570, 652614943, 251262962, 127623868, 851093165, 9921871, 148282762, 124319581, 563347157, 112284736, 342431128, 32322032, 73250111, 12026048, 11801134, 86548915, 11800404, 318644673, 697041614, 190621879, 297254886, 44741597, 42870392, 225665494, 71277295, 285053527, 85118422, 271267460, 60473665, 59870047, 8371502, 196255382, 528433836, 131320285, 278285984, 457883643, 147697204, 19424729, 743898867, 95955236, 46803334, 288148017, 47556938, 42737152, 160648741, 61706710, 147517214, 182519627, 280745748, 27279738, 474906, 18485200, 77280374, 612088238, 270635717, 177275520, 215508253, 637169351, 542965773, 187149152, 518605612, 613855382, 393353671, 337409467, 90163552, 143635561, 204878627, 163836975, 177707011, 66566194, 189169577, 133812705, 564256951, 296068104, 208293145, 106756244, 261035531, 333111481, 226458990, 84644495, 442315927, 103519246, 23950641, 440262714, 65912668, 342171612, 10333064, 195922230, 264970353, 633181565, 392659877, 70453021, 215685947, 206941270, 785098647, 236663840, 813951997, 69646859, 11722914, 54696542, 159579730, 213442709, 230891212, 105881364, 899529413, 537527420, 138218336, 109575270, 230248847, 342340879, 117280793, 129798135, 11137758, 155320763, 56379839, 1812190, 46741153, 69186357, 85629229, 205842366, 571474920, 11385250, 390291918, 53807200, 232189626, 334776850, 194738925, 87844234, 314012787, 98439704, 167119409, 39775019, 248553604, 11050668, 63965227, 225797062, 632788294, 120989576, 283585869, 70010855, 478600606, 1689928, 120361361, 552873584, 158342338, 214813349, 265149702, 249619537, 200596979, 281100673, 590776512, 45446532, 155148556, 286171604, 24064392, 390192442, 33304576, 247070261, 12461344, 440551013, 642344616, 190829900, 316414085, 192848482, 94784307, 630054216, 475074011, 810591582, 4207920, 176540133, 53519161, 504655500, 72463294, 209673493, 169548950, 307700548, 494018488, 27050407, 9829327, 33083250, 182491601, 696186381, 5440407, 722668323, 107201338, 30020745, 321879360, 158501297, 163335085, 365652971, 145800, 32133646, 283375, 316888263, 125591157, 95187774, 244113878, 61006498, 1681397368, 254685384, 152591605, 703375986, 165502563, 145549635, 170076110, 708011257, 507624987, 16300686, 397668690, 580675539, 689076601, 3880417, 219556846, 770397101, 786583450, 271473944, 428658705, 134237494, 23022539, 78404087, 582387923, 477396238, 122374101, 584878940, 199254741, 179769868, 728579161, 546782200, 155544156, 720973551, 70411040, 260974988, 525965121, 155298741, 11040235, 21430449, 33130379, 591003551, 578285761, 589588180, 198586495, 441940066, 282971787, 22801666, 185481798, 244711973, 168436283, 12289282, 361609969, 213306956, 94993135, 263848275, 128040611, 142781130, 81180289, 283107700, 619841141, 58131254, 197728415, 111718175, 558009072, 374265139, 879196892, 176743068, 56982754, 373046518, 98607402, 98584457, 274420615, 57042739, 776282291, 47769170, 368985702, 243320610, 1325086143, 1388528563, 766800603, 164850128, 10700831, 151319564, 378098555, 23987183, 15664753, 576436713, 184991540, 102602627, 205488335, 42682923, 81094182, 438172349, 72194087, 39131321, 218256057, 785356306, 258310200, 183994895, 320715955, 696776625, 215460209, 24086208, 537956649, 184133605, 76808994, 120063527, 493265268, 1236817143, 117693757, 203643172, 58984595, 134470318, 882087974, 819432046, 175290821, 391782728, 235657272, 347409823, 23935469, 542771056, 260623500, 114007840, 299343584, 522216664, 176411092, 1012612119, 215428344, 505759714, 67210419, 76877509, 198034794, 398457279, 109453162, 131376814, 4905514, 108327220, 369614690, 525678074, 19608647, 510997408, 40161662, 83639458, 75444241, 28747502, 931116113, 171895803, 546033689, 96338599, 59491225, 325776430, 49744382, 460371163, 13463915, 239108212, 148770154, 87800300, 224469162, 1015930848, 559001062, 416572548, 68877631, 135864840, 99553978, 99423941, 204141289, 106691526, 132664920, 88259101, 734727112, 62854915, 37746374, 20695523, 68365249, 35707401, 692196376, 57786501, 244259809, 209437817, 74939801, 427021243, 75287988, 142887477, 121751218, 11477492, 644158, 419076521, 19248493, 102506182, 391489904, 776486095, 516368003, 363751995, 25350078, 48015724, 431988327, 261630186, 181677783, 747650539, 282766969, 149483909, 42693686, 203125438, 77068563, 124828515, 285937460, 51212752, 101136530, 310759, 167274692, 218866562, 211827228, 330735834, 340391562, 647548518, 185281198, 170111976, 159928970, 225140053, 205639189, 65412965, 81069709, 132284087, 329253836, 115960716, 216066482, 79032421, 974152409, 422792135, 762863327, 125337259, 927020811, 24941284, 628652594, 65983777, 62926949, 219891206, 133398647, 84942328, 220596649, 519024719, 473719728, 30110850, 100402668, 94121781, 388586632, 219737606, 388900420, 64548056, 36359959, 95859998, 52735684, 39150825, 154568040, 269391905, 178910242, 360559523, 588789645, 62704496, 203811058, 475891421, 233753801, 186252175, 295369726, 178255930, 340061584, 262987152, 422539902, 524452444, 607141961, 28736836, 166393776, 171931862, 838451366, 198363723, 393029762, 342536409, 22772707, 89015020, 308359483, 840799220, 107862082, 530322597, 25933644, 392940289, 183262305, 106282610, 190196670, 37871132, 89538512, 10852283, 332377039, 255095962, 91307552, 36059670, 27870557, 1780383, 372429762, 274087374, 254994959, 278845200, 362955343, 20990042, 34035341, 158374635, 113978493, 587214500, 48897389, 149627207, 672690578, 508342957, 38016328, 76973859, 164997601, 68124717, 4861912, 325249333, 95535018, 85936033, 234303140, 234845750, 100999780, 11153624, 58714668, 247247139, 48855684, 11922618, 118494422, 667075170, 308586577, 340254125, 100057064, 50957176, 209651452, 151005461, 258724534, 587742358, 18447013, 204659894, 17668216, 1124073435, 37789694, 58477519, 1085682018, 111075653, 146173830, 115505, 11280778, 341082481, 86095097, 124776723, 13993275, 110045209, 142755452, 1457732910, 311448399, 232138247, 10695998, 421287565, 183678897, 170756093, 191659379, 217381353, 133533299, 14439423, 1132705313, 381810012, 757007093, 432128733, 92813943, 374788298, 204539782, 50664786, 794736413, 194648778, 191959234, 33240249, 82475630, 95888773, 235552865, 207812769, 299346449, 270525313, 262283349, 23725631, 267322766, 99676528, 292327071, 297323704, 509931938, 638582958, 589296980, 120088928, 166604409, 88404435, 47258335, 58582878, 10804351, 509590739, 366293520, 22421010, 247749830, 87347633, 77987796, 214863848, 209534359, 386453328, 295444275, 440744216, 17572619, 77766425, 26399126, 356997194, 270436052, 339090596, 225590155, 82809616, 401368835, 70824683, 308786302, 264133848, 40253366, 227890258, 356725039, 115647113, 246704134, 609269976, 93625958, 132209531, 368764631, 10667031, 169941341, 27645332, 102232533, 170192020, 280833691, 250662946, 71043583, 17875894, 143153734, 12152690, 101926668, 189845139, 201608180, 322433601, 68161220, 27266159, 896848458, 370429675, 21466882, 135530406, 35217461, 895906817, 338783928, 524319153, 101362382, 102749722, 187793488, 252041162, 329477978, 1731327548, 280212219, 693031873, 27175310, 335074014, 134408483, 182529429, 18989528, 126078293, 219038056, 176377327, 49185699, 261219230, 1201402417, 319238995, 104019978, 872427055, 208741899, 9345460, 164415423, 122211198, 151195868, 233480065, 107582279, 42861291, 155233354, 277773332, 64629425, 315008188, 541470, 297022564, 313639491, 136360247, 241731760, 413136164, 527101663, 1177201243, 87729908, 706076367, 31494137, 236047236, 141440267, 87485075, 62273005, 42539207, 343677336, 86939145, 520481841, 2945782, 99946804, 17328006, 126870336, 363173445, 276846711, 329378336, 272358330, 477203048, 28252792, 511825629, 197971986, 509756353, 84140955, 858702568, 76713203, 533042611, 366403756, 521304704, 245045628, 396575035, 412031470, 331671289, 118420804, 766487817, 1175418711, 222676049, 487575753, 164349263, 238532512, 156552738, 169808409, 617141278, 188440891, 501184324, 132478108, 608185620, 215699316, 400828917, 173265451, 137358782, 264565332, 1585109573, 77512522, 277414025, 327548332, 76416970, 189818624, 160208299, 29575978, 516390423, 67109685, 589735951, 222380612, 106012656, 232668830, 95395729, 592555753, 48545694, 379710132, 69168990, 250929424, 68679869, 36396478, 527966017, 459613589, 82533230, 379024897, 34362416, 10968193, 70829751, 197404239, 144002147, 1019213358, 196939980, 16438550, 307878315, 391717808, 224278503, 569597417, 551659037, 146353060, 508833155, 191017957, 353377067, 51976705, 487262463, 405672368, 452116275, 707049, 206312162, 11398106, 252733724, 191726374, 667255000, 170454279, 21895636, 53737244, 987703893, 59391772, 67198179, 832734518, 340910373, 271751793, 306681679, 73321392, 319667498, 31803773, 377524758, 2900408, 1293652234, 264647338, 53071685, 494782644, 579175953, 289326247, 389990501, 343239049, 155179323, 233194769, 345787376, 345299866, 261209712, 23126710, 1086269520, 207758865, 96117086, 16852110, 341939211, 86596945, 80585799, 314441596, 1038942646, 348371921, 106183678, 289686864, 336248219, 395804497, 396681730, 170028617, 408713026, 192664641, 499546707, 872517074, 117225369, 350354141, 260374134, 544160893, 160707742, 443408309, 159896436, 688435344, 203831420, 459196540, 1507058, 193987188, 118990037, 98275635, 229936995, 470452419, 107771188, 234848777, 195203834, 99536514, 99588053, 240518099, 940760635, 6575400, 121020290, 180832095, 74298587, 41974496, 617897, 24214704, 517172803, 29627352, 453148861, 67948115, 967470441, 3774169, 8711077, 50002847, 742178428, 100509134, 1215651217, 315233943, 470736914, 26984415, 1613372376, 43818522, 298153584, 106789048, 355173165, 736951444, 131107849, 11980601, 201293607, 118269832, 454722680, 593684275, 242540613, 16037281, 410873864, 244068294, 41816572, 131074078, 160493484, 330212879, 119095394, 50399173, 170461422, 132796695, 112000776, 45353228, 325494701, 107638232, 502937898, 87358189, 149004339, 240872982, 52213102, 27285384, 296728897, 647750201, 8848343, 15277425, 325411503, 98971519, 46812697, 196289456, 789585551, 377439867, 105524263, 175111194, 28409199, 170067562, 538530621, 95290468, 696787061, 68013160, 170421407, 135110450, 120821784, 447399536, 214906226, 450594148, 40944940, 42280285, 25655865, 101876287, 359615636, 4405083, 47066338, 140269613, 701603041, 57644251, 63507049, 127273273, 186934052, 124329563, 608237625, 58958547, 555995762, 938336294, 302832325, 983817741, 155148078, 209537582, 85663170, 32109048, 193714555, 364933966, 79591808, 561393079, 96782059, 442320111, 154786459, 57406217, 324637879, 87334774, 190582565, 155492171, 93453092, 296928831, 242656059, 66948940, 253300871, 439816338, 244832301, 529242917, 694579686, 74706497, 16025968, 430376774, 64161693, 355800073, 197877605, 137092930, 6671589, 425057534, 81202774, 90789224, 90544557, 195696036, 47903842, 110473432, 20494721, 247072754, 202622920, 400558528, 567750534, 10469962, 886225693, 51109888, 163319597, 98277067, 41258542, 18492188, 529036132, 180299484, 302279824, 413178575, 175765264, 176580293, 235574686, 156319711, 65437798, 29999672, 494186439, 1216727592, 280921738, 28991446, 86771680, 308828707, 123328525, 55906480, 5666687, 156539945, 418496251, 95423267, 65661329, 145020496, 110489921, 53323127, 111185179, 209363383, 179035052, 70147298, 118335483, 27018908, 169147403, 8785429, 571858328, 793197706, 193807705, 64564239, 132389300, 174978098, 18870794, 1037386822, 169495544, 338588268, 475287749, 182193347, 43185496, 59271499, 306491250, 670902624, 274241527, 66272457, 65672471, 522045811, 130289047, 96820404, 413246020, 171449547, 499358293, 5587631, 324972029, 60190883, 33205069, 49842845, 1070049655, 367786640, 539012837, 75088999, 862074629, 79042763, 344530000, 7509696, 71589986, 752795454, 182163079, 448959066, 151926653, 275205801, 2792594, 530283306, 219856801, 282071448, 473197727, 401802609, 79267064, 64284995, 471468595, 11290941, 310078685, 298986120, 446018073, 39034133, 260389217, 301598224, 14663299, 247551557, 146592281, 674329940, 502832342, 128537415, 51302688, 226111804, 140765922, 45661429, 79783035, 620155553, 929424253, 154530183, 92092469, 348858450, 13018088, 244571404, 127327921, 559865319, 35061748, 269360858, 487112794, 802938941, 147588749, 84645819, 260771599, 1070485130, 139725516, 74515060, 286712046, 164883416, 241383657, 21546249, 36216731, 155396133, 61917756, 95811932, 379911889, 120825742, 61570033, 386038894, 3124421, 684696005, 59998711, 96506142, 281297028, 76378648, 280483621, 400886278, 35356941, 395344942, 45892676, 331251697, 342173052, 232924671, 1041266150, 25409118, 99573310, 130546104, 22695577, 336593949, 240931132, 301031942, 421169857, 340409020, 32390955, 367974341, 391244206, 259153465, 30842326, 342198023, 129102567, 34349664, 133059470, 234210820, 50167086, 11007791, 231653053, 458424646, 453792012, 160416621, 238970873, 966814255, 46402066, 16121500, 96195244, 39885868, 43185307, 253512065, 85052120, 70046606, 105786202, 254382536, 283523417, 539152430, 22194157, 389767154, 254078439, 242564467, 38446256, 169824681, 101719710, 194374699, 238636386, 328846592, 501669265, 190262156, 183287595, 50717181, 106098133, 99751915, 261171358, 664664928, 8580589, 407392862, 344195093, 108560131, 295347865, 550125721, 316202243, 311917225, 507872168, 390064762, 95546092, 186846596, 128465409, 127818740, 4252070, 362228306, 343732486, 43359119, 63079666, 10263498, 142894059, 212395494, 181875285, 1838622, 15035461, 356791455, 52939758, 128736681, 424143005, 213978723, 12429937, 468636817, 107564846, 391992959, 636124632, 367589674, 131536262, 114380690, 152247421, 72472437, 32220437, 175907694, 178873861, 182565355, 526921748, 187216217, 71573023, 233929175, 136971191, 57172114, 122978314, 220858957, 360104413, 251411190, 225063495, 422817424, 25817355, 183373687, 685961213, 582295348, 12174992, 337857420, 333429674, 35189732, 70909656, 122365759, 544787725, 259401205, 335117789, 13721500, 249001595, 469638564, 202988913, 25588827, 18889226, 40008727, 112120218, 13870030, 169660592, 180460797, 74442364, 485343373, 13835321, 1060144473, 57369551, 122416451, 198208364, 89722972, 530028728, 57500614, 49970315, 633317613, 642738910, 266492529, 7727229, 40773590, 1452815149, 278257827, 190839354, 163890553, 318902039, 32283006, 8578815, 980574751, 818503349, 28104316, 32053144, 11628177, 43550091, 233536379, 203730370, 40583739, 48545083, 107680405, 546451875, 118902780, 320211346, 40451535, 132838433, 98128224, 108589214, 220501661, 63855249, 1232025120, 746468764, 1197339710, 567211663, 307475552, 269649867, 39336029, 40129709, 21600676, 1666242050, 50117840, 14165131, 807328663, 4897039, 653387172, 362994362, 665545372, 182526144, 5849150, 438660569, 288644304, 116463932, 301116404, 388766270, 428055784, 451768193, 45326340, 29240461, 605638876, 167367615, 17545852, 269413582, 43723128, 432138266, 81172807, 479188903, 152717415, 135900243, 341177188, 80661448, 135004432, 272849014, 99974072, 26556827, 139172467, 956263619, 484550246, 103827327, 167899435, 522260428, 36042109, 552157257, 847518931, 213334350, 272152127, 187593907, 120839847, 208980239, 117464887, 1640067, 375596870, 48742325, 131770482, 627702197, 908701900, 280941461, 357237931, 43106748, 12676344, 61092665, 140680405, 56477023, 494741613, 169012394, 89651400, 75877792, 155085550, 543234552, 101699282, 283495322, 172097702, 56355168, 199465612, 52982364, 359201821, 646053366, 307510577, 506592814, 160872605, 412281123, 517608693, 61248557, 808375359, 74556909, 30536502, 667812982, 274055183, 240404883, 18116412, 152893241, 425632518, 67220867, 262550700, 130586183, 313289564, 286655345, 267937283, 560197868, 85386230, 787484546, 201603231, 367612057, 579475898, 14467015, 300251203, 261286151, 880373123, 117791071, 170776835, 47290636, 40462833, 20538388, 122131222, 25524049, 102017253, 67187042, 378625066, 327042164, 450149656, 462165015, 40020816, 118375032, 420377287, 385870564, 363470725, 175463033, 49081450, 34805137, 118037345, 55878943, 455531742, 578035463, 728349554, 324347547, 309868290, 250650312, 104903999, 135100460, 332734135, 424329705, 218547896, 245140681, 543238614, 686593462, 154609771, 723088334, 598214505, 57832114, 271758146, 162308263, 386938060, 400596610, 446261811, 217072036, 90425842, 95934205, 409840941, 60389512, 147198051, 585087038, 132416466, 73268344, 395472699, 19894718, 755927001, 61219185, 149352300, 3242311, 245551512, 39613623, 217075893, 45645010, 357473292, 147331350, 471358241, 685388044, 29215559, 169379329, 33093877, 361363940, 683642946, 265279262, 82022518, 175721662, 54029621, 94842776, 407488143, 335495694, 185584673, 811332753, 246205680, 271912151, 748804776, 34175977, 330709607, 264776439, 104897610, 38932572, 273560506, 298594756, 5580039, 57769955, 471869356, 188712880, 121642702, 138561895, 149521202, 65277469, 550031337, 92478837, 326793563, 209131547, 675332072, 918061855, 5841880, 509040499, 3593955, 214792675, 222415772, 81106056, 187175351, 652554506, 611788111, 56226219, 8617065, 117408968, 454483983, 29305423, 180372743, 162994394, 399981878, 80182760, 135837811, 115880349, 386610691, 191413743, 376235563, 748912257, 347260819, 125435842, 70161800, 150766889, 291837151, 43376093, 42172903, 309547904, 369410745, 46383081, 1101292110, 99909451, 145971599, 71522282, 67669821, 18167994, 147558514, 747585, 146093141, 73289117, 30139350, 287518722, 156804502, 571044971, 663579946, 237965013, 70658695, 149520874, 27616263, 355063819, 122180940, 227714960, 518822502, 243067817, 427851, 195955036, 182456744, 42673609, 808553754, 73911447, 14910177, 730785599, 95679017, 172194451, 49429943, 84854785, 207821793, 111304218, 85880802, 855104142, 231813626, 128323879, 256928793, 393497459, 2484314, 88167077, 118555536, 1210784529, 329562629, 162829356, 170911161, 20258809, 400431788, 105989707, 296267142, 402338724, 241086744, 646228888, 299197235, 92633412, 43827181, 347506887, 984784018, 160708817, 59720888, 595046568, 343138504, 179048388, 70318760, 365400173, 57815765, 444114283, 35433019, 445479467, 106022696, 571929515, 488757632, 308667856, 548167156, 211462565, 584056434, 112028808, 122410056, 290774564, 144278794, 410021413, 154736722, 379545172, 316876114, 524764916, 13388228, 497864471, 235697638, 6284510, 11610518, 203955003, 659125041, 192686596, 5147652, 599921457, 79320626, 64215392, 160560555, 36722535, 395562670, 402160820, 2451669, 252070613, 165299152, 265227704, 624884518, 114099351, 931627484, 83998901, 378790123, 38324822, 14222242, 767087567, 592165520, 366251288, 433398136, 748634467, 110049456, 130679070, 332302789, 127741266, 670245591, 125116754, 273655202, 310105102, 82847515, 605100238, 612186954, 337629289, 395989853, 144856151, 181895265, 201943741, 7080531, 814876787, 45659838, 303271955, 12806108, 555380697, 781452517, 214991062, 1812596, 367398549, 182689331, 609089508, 180758973, 11813223, 235090335, 229508017, 150175048, 93254463, 822879223, 26645806, 143642528, 241026254, 405849693, 305817169, 72251490, 148852026, 135186971, 1950298, 496476332, 271423101, 206099026, 257681903, 110124860, 155998027, 93444956, 37835247, 101331957, 1185676944, 308005460, 103979958, 354957135, 693816231, 908502262, 958523009, 920892307, 94951876, 212313013, 41885466, 111446727, 76619374, 73303931, 376643750, 238843407, 390853398, 152835979, 468217656, 759085526, 231676468, 233397185, 410806392, 882739723, 537833999, 43308329, 95438550, 98011599, 157072502, 151207137, 123461960, 53031322, 530809670, 154776807, 654708095, 414060081, 44466033, 579683570, 376225860, 160767343, 151454595, 613455110, 419393759, 149889258, 581954461, 93032518, 4633086, 137479890, 173157109, 239795047, 112212433, 434546052, 50511776, 555128356, 388231707, 412668214, 6124518, 17684558, 490747640, 64602857, 74655514, 62586322, 134081431, 29587037, 134683171, 14979936, 593773262, 212668696, 750307734, 133862424, 368005109, 33842277, 92285432, 89997593, 212158126, 694872527, 231431031, 222478481, 20647831, 14650570, 44931874, 144236158, 248219489, 20642613, 10292561, 123133402, 250993418, 16659331, 53278372, 158883144, 6090548, 147528097, 138491241, 144193023, 201065568, 428787037, 170358459, 48744514, 26235331, 45886339, 219600945, 490654952, 6504903, 244631229, 35565930, 102981466, 198640276, 324837851, 267190909, 243904486, 187851959, 204337013, 384177439, 30277027, 250648468, 430142370, 67705088, 64755608, 250791232, 138446232, 141373215, 266574328, 469042305, 449315259, 423471856, 28669950, 119131624, 3174559, 83507855, 161221722, 668919461, 229336579, 92221991, 760598489, 50809676, 143849204, 80758695, 157420085, 537631630, 593052902, 417627428, 33319193, 147673425, 214316461, 957480263, 404508128, 27359713, 769216159, 362753905, 326817869, 113989410, 43795358, 22953378, 678402780, 333564032, 262460055, 394261511, 19417053, 130042216, 10158737, 197749274, 96208612, 119774201, 448712439, 74517753, 204041098, 993049746, 77430305, 1002073655, 238469854, 590475303, 388803400, 162326101, 16795408, 17572991, 51278349, 237653832, 46888416, 33382566, 106915946, 254599297, 63718291, 69267234, 157076309, 568675848, 749946888, 18564265, 281480197, 2315794, 160862146, 153292085, 87530855, 186256366, 425418064, 489702203, 181340233, 106462105, 451407145, 363360129, 14290096, 43931433, 127986163, 223610377, 116920743, 155583930, 265900750, 86455697, 7429267, 206855749, 133697303, 29536990, 43602190, 116446783, 108157157, 112056232, 70767898, 84642140, 140767917, 572107905, 7456892, 250865514, 17969561, 97918761, 30556505, 527319979, 41836272, 245102615, 735913987, 329167269, 24955129, 1173484252, 249980536, 169412326, 215922076, 857689455, 286637618, 53684649, 71695641, 151789116, 340299135, 126187414, 206179619, 257493463, 173158747, 543018330, 851510404, 163168703, 584187232, 32654816, 23891862, 658371082, 170495565, 43596979, 923499063, 105943736, 2608755, 31964108, 300200521, 779540809, 458627896, 385279591, 306646426, 51044884, 1028409861, 71404261, 38065600, 129588293, 47823538, 32784509, 452695048, 266949737, 73098336, 116015673, 76114683, 166462588, 66229613, 822743406, 670063747, 515673727, 454777165, 741690, 391584667, 90575589, 44469676, 177499031, 254480192, 648485694, 243324531, 90302857, 520028225, 47852089, 426689998, 90126635, 110098361, 399574701, 196330060, 65673225, 45913984, 151039668, 22486473, 342091050, 16721204, 103028470, 19859915, 15370076, 202232848, 10489361, 380150413, 158936226, 597105789, 228813479, 160278518, 140594915, 251637557, 115892832, 596185632, 66989832, 81307304, 72226616, 78977980, 538708505, 136758885, 14013694, 43873770, 177608359, 228762176, 297233196, 324103134, 175075994, 506088116, 408129659, 59733329, 287213743, 506548697, 5199264, 334730701, 127330336, 15897914, 66128216, 228366241, 321171156, 421446610, 6104058, 516160431, 137267494, 125351260, 182688377, 123830727, 129531530, 351050969, 125217739, 76643408, 562799567, 50671432, 136748385, 120270505, 182816070, 455976439, 17222054, 343037322, 293799253, 240572292, 296995699, 104421024, 56143916, 313033816, 410446990, 224334714, 183023859, 430916, 586946896, 757032316, 209574088, 646912397, 424374313, 314917505, 8631895, 91137718, 443711643, 143659719, 4728473, 53699076, 291817327, 276456911, 117014249, 446271152, 1095705, 504353796, 265014656, 18390519, 225690383, 92956035, 140031254, 72917059, 256194311, 242757696, 301428115, 42546725, 646351731, 49684585, 43051721, 428944088, 31093034, 314478841, 163539234, 283311159, 128632803, 179633919, 754488696, 56311494, 282326524, 328303679, 33981258, 17137460, 115065218, 171555981, 552208494, 28596243, 18855445, 185841497, 49135085, 130414599, 208821127, 104354095, 124474080, 628942004, 669045678, 424201531, 13920492, 471393674, 333603376, 788929882, 263265368, 461493424, 272158046, 22732270, 67077184, 390194394, 102516210, 644323381, 326673610, 924901212, 121201866, 227263601, 404407722, 165561845, 421159546, 136618140, 221213914, 526944111, 279379057, 173990883, 1322371044, 55723165, 430814261, 31934083, 491562168, 338260782, 635394997, 593285302, 210591626, 258084105, 487599360, 668081575, 55510626, 67712861, 1694720025, 140690379, 359119564, 101804538, 18211427, 56504720, 8758997, 150388275, 384161380, 446402666, 590665004, 215958260, 848801625, 160776187, 47001730, 248986324, 704795628, 622790159, 421415258, 172998029, 3755712, 128355661, 57041975, 678448487, 84624884, 177330081, 90487543, 520506660, 137326006, 171931964, 471693950, 136515944, 266351521, 100940893, 166717380, 318616610, 187809969, 183253113, 35468737, 3393227, 14767083, 384636475, 101017769, 382587012, 866418869, 172580213, 121494128, 271514463, 126584380, 629965821, 31696604, 39935142, 89829111, 96824793, 16143792, 96960241, 205337393, 26170042, 46585956, 734108133, 101254834, 356649923, 22994697, 771243960, 13367941, 211220419, 131233128, 95814693, 416168403, 191741672, 100676645, 239151063, 5479746, 264266511, 115335155, 1057702160, 507413400, 335357464, 257533676, 972634650, 258058831, 349734080, 31746512, 282108838, 405743430, 672257990, 823953218, 101191821, 3012934, 530163531, 1610272060, 105659677, 243559276, 22269860, 4664550, 277985942, 125181791, 138880809, 317459172, 46972374, 659760083, 1689064, 372396549, 308349153, 128754981, 505487117, 292372140, 1028627815, 221098581, 88322843, 813108635, 703171001, 379741723, 17518802, 105871409, 206362592, 1070334587, 87984911, 245187651, 362612408, 40708324, 243532008, 18432320, 358635537, 302506553, 23431525, 37523085, 13395339, 72212880, 466317604, 848246177, 614386743, 231986780, 163516477, 233864888, 330429458, 97307626, 75462375, 311215877, 255254450, 85881911, 131072153, 91608721, 8395790, 160236043, 256259155, 224812554, 53046727, 603774132, 48741520, 296512502, 410869647, 385790563, 177288146, 197418800, 55486827, 101689794, 136911594, 1106389269, 215065279, 958583126, 761348110, 160387931, 214641069, 42335500, 8554898, 1842379, 160465713, 86853916, 156373827, 17632409, 214486445, 472268223, 28602484, 107258012, 6990174, 338016139, 609107939, 822965584, 253202885, 447223357, 261177253, 134557823, 104226580, 29903633, 292215828, 190675453, 146572724, 447498617, 73901937, 959363961, 410219577, 715299329, 147041745, 22945600, 21300460, 60401984, 24953008, 200543371, 174467660, 87680447, 110805138, 402234442, 30226430, 155291799, 30051427, 38061981, 45332315, 373067636, 24015950, 193905584, 221527614, 330094234, 287228377, 577446264, 221237293, 19096353, 40651349, 1080734227, 568856781, 128837129, 827181339, 291920839, 100217664, 35610893, 366673913, 131743337, 105798504, 234148200, 291548383, 215557144, 529026500, 371089226, 21482207, 337438999, 56000020, 718423202, 505184477, 25920133, 307595076, 307255888, 117627805, 1306266873, 39749929, 383268989, 262797809, 322331723, 231080470, 388559121, 150685702, 163949233, 603457479, 38011318, 544311346, 828470722, 1247684, 120469234, 25477557, 107650980, 771798757, 375389635, 267443347, 215909235, 187165539, 330138857, 83789171, 155022988, 273393066, 535937884, 87851533, 19270931, 93533939, 129310423, 17058586, 53341725, 594483022, 310846105, 265171615, 169412377, 59594469, 15805650, 695535098, 26346471, 744604505, 209494109, 13152133, 765326234, 627338259, 39975110, 85432835, 242857779, 274055630, 283124964, 608388782, 592883499, 119538690, 48224624, 107044385, 368499777, 402805364, 118265786, 222975755, 19829682, 360173724, 263866136, 77734186, 127363424, 16624802, 567024290, 501809697, 2023071, 309742558, 196580126, 28579044, 261270876, 16894158, 610612095, 223069959, 334842816, 411245390, 236302304, 98864071, 147914712, 72628748, 61382270, 17226748, 113495806, 33465049, 40292601, 25726376, 602974700, 183773471, 286156950, 335810350, 1088905270, 8118914, 901465646, 119997703, 488944389, 241052082, 62006583, 501700060, 87140842, 172368768, 318819891, 280078678, 205443263, 111789327, 63998444, 76354958, 35695443, 428645054, 97290655, 94412999, 9427939, 79666202, 119245701, 36665078, 35037767, 185024856, 66372362, 4485675, 363816633, 261895034, 351820281, 172044907, 137663045, 157528628, 481504552, 1182366050, 9989565, 416747587, 481237921, 17208888, 81593561, 87043891, 332134274, 211556533, 258012572, 297864621, 209166008, 180978082, 169302654, 241713792, 415067565, 77459929, 509983792, 602447707, 127599297, 967322512, 40617526, 113889361, 359248076, 574934499, 339005069, 65468354, 118021512, 33818101, 289861941, 745449154, 517456429, 158166537, 172673918, 312671513, 79271717, 358046908, 335378063, 335920571, 8230189, 22160337, 130153441, 227441611, 226346808, 246208434, 48417580, 29775174, 245553254, 387384570, 369303305, 347602222, 178103754, 587131966, 20010262, 950596901, 196294420, 206913650, 55720555, 261724109, 286242784, 243397572, 220736201, 191623695, 418625177, 410591561, 786622171, 423865022, 83844119, 140865984, 190241925, 95156013, 179460268, 274471506, 258502450, 439627805, 73902891, 203622308, 288752659, 238300164, 12031439, 45099834, 101360698, 201978602, 11637904, 38834525, 76568812, 99407457, 299281613, 54577235, 722787239, 21262480, 406611195, 74107830, 236989841, 102839206, 6690055, 88700458, 31910592, 93029253, 154715655, 123246601, 111422618, 300852970, 2282492, 850748727, 69433927, 1607753037, 180550878, 584937770, 236671165, 204654485, 11379817, 619178381, 446644627, 479312768, 9589941, 16256962, 41044825, 329664356, 1267744355, 463987565, 410506692, 395969786, 448717866, 33726317, 488377884, 486398892, 42938801, 803897820, 564536935, 236653793, 102783378, 65882061, 2214656, 20912871, 691633405, 72305849, 20186854, 47426541, 35226949, 288293176, 157456278, 655035648, 219621871, 78791214, 366979627, 112441315, 17036847, 270772222, 13589486, 14505773, 61961472, 233528818, 227936877, 4923941, 322385601, 141672782, 518067851, 503802427, 30799088, 176119928, 53654258, 51600492, 159080874, 56361393, 1695640088, 124490427, 148789872, 19664762, 204415297, 94545326, 350469708, 346712506, 63182160, 9872629, 349392818, 326107840, 127597484, 207144448, 24408784, 149806788, 111022957, 93088139, 379850219, 649206327, 16489668, 163517859, 19304649, 291802521, 14186072, 699479072, 41711884, 1064021801, 508179638, 240019766, 50145050, 504980088, 332747393, 113284117, 672122375, 1292646614, 132470281, 135156058, 338912169, 114646441, 151692599, 158036067, 14006482, 219397238, 1089510757, 583213339, 355922557, 104102094, 704521765, 181554590, 1060625564, 1167994153, 319703973, 430054288, 281730878, 369517908, 346229457, 209723034, 350047393, 104489910, 572727651, 279764144, 50027556, 240702753, 361565473, 486328888, 235422559, 37220136, 70931891, 13602334, 174027891, 142671537, 183064099, 86796345, 947244999, 68585860, 648658902, 162176453, 212523677, 489074499, 778531229, 86718577, 228909944, 275046905, 20807554, 960031908, 39548389, 212935591, 193801239, 538640612, 547802066, 135247075, 81278124, 416973115, 357744986, 323955, 263351990, 103610370, 567022071, 249793475, 33702547, 118173261, 4858769, 254396248, 268628410, 358483028, 236863830, 210290266, 56705779, 38352690, 37321236, 577746130, 46025932, 326394922, 199749914, 70910879, 148058525, 141728985, 201616486, 747083523, 86605914, 136323310, 23057200, 90190333, 733873750, 458153046, 9546129, 220454484, 585586942, 658520519, 48658037, 1376759, 84513317, 721969761, 122263766, 282455730, 145029988, 815424908, 765957381, 118211660, 481332252, 20102709, 73662857, 1268167374, 199314465, 193246868, 956373393, 793784341, 299047940, 185948857, 270212515, 791215649, 279029284, 338712814, 1067604770, 233757969, 89590602, 4383690, 592209880, 675518186, 714524296, 15373771, 693088660, 59990286, 357621667, 10563453, 245613835, 623230326, 1254014065, 209517427, 80138324, 466649354, 255516139, 75955367, 222639194, 583928536, 190400979, 205734605, 482785582, 53199553, 410719100, 65791702, 559650181, 150813024, 730553281, 521963052, 382625865, 910528493, 260794718, 281397556, 582021337, 215350075, 162189370, 219378820, 186232835, 56434323, 243921268, 505969470, 491703611, 237760296, 132678913, 27675714, 46850410, 374643458, 26136161, 345412694, 273321200, 115286936, 2028480, 67238833, 202065375, 420218231, 155138413, 44566000, 934207768, 34783593, 381163596, 350265742, 24695487, 128222844, 127563849, 343511954, 305708075, 478412770, 88267753, 708111090, 394171743, 562902483, 402380784, 252466894, 167781903, 48928374, 163375981, 125424620, 295433059, 94611572, 27421575, 98084198, 278903842, 29669142, 201336964, 689959611, 277250347, 336921196, 21351436, 254975041, 486114223, 234854443, 112348776, 299853563, 884033530, 169715446, 134730879, 133147486, 13402195, 301584850, 103342536, 457949564, 95895603, 499664620, 52077587, 388914593, 382569039, 128586297, 39995049, 149415567, 303901191, 1108329478, 176206494, 20118217, 486779469, 380098421, 1462361915, 176004740, 171577344, 461086159, 26531016, 99127937, 138745699, 54735642, 351358866, 32747872, 284167157, 35695627, 78752624, 324769977, 213000931, 104379439, 83941315, 505930405, 48953693, 57642621, 120491646, 301375891, 228969465, 76665695, 28717984, 70975492, 234633940, 460974012, 19260520, 111565800, 454612430, 95172429, 220809579, 130503848, 133840281, 258209736, 206702181, 231006134, 114698701, 283229187, 1030740967, 66903164, 635004475, 150247671, 195186059, 1008316634, 320663032, 121834715, 41528763, 593510554, 172890511, 224253063, 64171238, 344878228, 295789456, 869935175, 836186166, 1823912940, 408047284, 398303945, 24524170, 113912749, 19981111, 280290377, 352297848, 64199741, 3843108, 83682240, 207373295, 120613245, 296014405, 195160400, 107865051, 104517842, 779975142, 505007389, 95414036, 133045281, 64107459, 56842456, 8062339, 312050933, 379907799, 1252298378, 46464519, 51075599, 812051095, 533450426, 50712253, 176116824, 271395138, 2107659, 470855233, 163549354, 139009049, 98104082, 296763682, 145491057, 104443007, 835349686, 201942773, 1246030087, 171510819, 527048881, 16962148, 48660129, 329736688, 119955481, 97657509, 296011818, 95580850, 109335426, 29385795, 15672550, 20494663, 81784035, 70152039, 6783808, 36017027, 43780221, 78818540, 191532834, 636637567, 475243758, 910326696, 99946726, 39198815, 129912177, 174327894, 62106739, 111192409, 1715106, 779923633, 220169101, 539512346, 1753038, 346981732, 104151430, 32868872, 8291949, 1226182033, 143837461, 32291725, 494757211, 66660806, 55522741, 29570853, 160420427, 865194920, 70114671, 115113438, 64847362, 361553085, 79165345, 12176902, 162759746, 101418933, 708446516, 489113345, 421883083, 38970436, 52440895, 212581213, 22500922, 178379862, 47245115, 484124898, 63590383, 177073170, 806999116, 1228425782, 67023701, 122051058, 511795638, 17361223, 108952272, 414655990, 662678340, 203733811, 368711830, 42105977, 570455616, 332077294, 269437091, 579064518, 187402514, 486129984, 790334085, 151394195, 301552158, 361243484, 101386113, 246396105, 90684587, 41527385, 24174195, 58704145, 1032074106, 12474729, 305358701, 710541776, 410725670, 280824444, 11754939, 270466415, 165260396, 126791155, 146928682, 126169546, 641370045, 667082902, 83945939, 206848092, 264330531, 623623257, 50006081, 563183463, 179127219, 33499291, 98971364, 646649234, 522034174, 124576403, 191890150, 597485376, 194030266, 113669573, 24859140, 182453354, 40171421, 194912152, 50252432, 686416822, 48380546, 877381848, 97950193, 263024479, 24361133, 173282497, 369995454, 365163098, 133698540, 4480080, 88434475, 391163048, 295138062, 160793777, 277558098, 44848425, 225282858, 324213321, 17740875, 51087450, 20183265, 104732561, 451058251, 109680389, 296199485, 282193080, 230961010, 217723825, 661957017, 369706292, 68928187, 22381938, 164430380, 203927803, 161945070, 211257450, 378836136, 800750300, 91262708, 609711920, 906990791, 102444762, 292718981, 268979870, 392071015, 15673575, 414783462, 23618414, 189427790, 245325798, 1586380, 232009969, 685126727, 459684846, 291519754, 111023242, 66160568, 73470963, 603353536, 38470450, 357033631, 545977871, 876984391, 57750848, 137736351, 47839160, 179031077, 634420469, 32066544, 400341603, 435716724, 21948124, 25965164, 64991498, 165277240, 251702954, 5454186, 1413473338, 316722511, 200591142, 241889026, 158992523, 515331563, 82407094, 83203263, 194680487, 248035003, 71322598, 377808542, 75722211, 122686382, 73362984, 32785389, 106992714, 152169429, 82538998, 181785287, 676086967, 50212879, 116848840, 156957688, 343340596, 53206262, 205505997, 740967835, 273906051, 596829138, 843661189, 270085985, 108628801, 177183311, 1008215577, 406138263, 23816639, 74008825, 424922737, 246431127, 240912691, 7613097, 29565519, 488914194, 134811328, 112936008, 324559983, 171388188, 199549037, 336578430, 334360960, 57324715, 269491954, 18086059, 270561938, 117819423, 75425362, 672413392, 11057466, 268978700, 219429820, 1577631779, 4221881, 595566126, 69721123, 1303752001, 298413239, 101027703, 71273199, 168217879, 291732477, 229030574, 182645385, 194439883, 142613127, 271844597, 250805581, 531711359, 522136481, 37890483, 230725864, 226088620, 20144547, 63344436, 129527616, 163270079, 223733898, 265255392, 35038807, 249898123, 2417538, 306543974, 116208006, 6677919, 227836622, 106896598, 4546771, 74746815, 132904179, 1719535416, 163937812, 14673534, 227991664, 322288557, 102311942, 354280647, 109818118, 692002224, 242530277, 760406849, 437557156, 50497909, 191711077, 561161297, 129052246, 600398520, 22506264, 319203377, 84217282, 60838557, 13682912, 87531264, 577335314, 137605401, 96828682, 163255383, 351036278, 18898845, 159053055, 544426384, 18423436, 283710584, 683475771, 131367968, 116241820, 73151880, 34256082, 153534293, 649280185, 336634022, 126909741, 336998996, 270180932, 270913657, 111450305, 388231821, 201925572, 146319167, 165439515, 212171913, 261860570, 80148817, 228402194, 189632711, 288962176, 262675511, 332865269, 39591752, 316232583, 634857854, 1494074, 189751504, 219481012, 302142456, 601986456, 288291369, 291518164, 3681761, 26478690, 228682628, 173809508, 66361122, 10067170, 31628162, 517482262, 126849537, 559707837, 37870545, 427763549, 23591477, 304122543, 49422779, 112460332, 1926475642, 301504531, 371946904, 262130279, 38541280, 585189366, 101755434, 416597257, 274899688, 463795627, 26811008, 17975330, 167652742, 375809599, 348704900, 68937696, 243094440, 13477491, 326004197, 222272887, 24073376, 451911245, 145124507, 166585335, 154851307, 94811323, 2028237, 198412793, 345420373, 51862867, 254906205, 344678562, 245168313, 121032256, 114178448, 176013583, 1705018436, 141782651, 4726014, 273599333, 1064020388, 32038292, 161588445, 158297747, 255718019, 53097169, 299233160, 853125308, 1010292587, 35381992, 197823248, 17346561, 311059234, 312155508, 85699036, 35684221, 1126908087, 7955281, 135038080, 164010300, 61544576, 2270905, 53357999, 215581414, 124605524, 200809419, 9003833, 123861939, 310442451, 13892532, 379873095, 294707760, 650303931, 63063199, 31864250, 200161626, 39615397, 203985994, 70955841, 32492887, 286280292, 376142687, 695134569, 112318630, 56394643, 786611610, 64897131, 687648791, 999210551, 252813364, 128326304, 710315730, 258676331, 99078156, 69986397, 359772686, 484260356, 81731581, 30629609, 197456383, 16978418, 255047365, 736048500, 965593844, 464339909, 13059878, 75988961, 330675010, 106759080, 174929576, 226939879, 1108738242, 1062422268, 183697415, 20696103, 673820362, 56749584, 91542760, 494580260, 660915332, 615513773, 940813330, 498415452, 82975504, 87656036, 20441242, 1108292, 532250281, 23603788, 528388478, 37831693, 602027413, 172267367, 18619386, 256080978, 12267786, 533322183, 252554433, 186757661, 56898560, 486756099, 20032330, 689281246, 224156587, 101890058, 1607849486, 178074674, 189524085, 90598913, 20878109, 146754818, 729031661, 422979065, 3602253, 59815734, 19980012, 483697295, 816435710, 307892683, 295624925, 449433093, 451311659, 221229031, 9437615, 266340588, 693704497, 471868422, 181858266, 205111485, 107050905, 151587145, 124510019, 137473753, 117613119, 743317028, 338494092, 116573234, 50191228, 954040915, 131404798, 75570740, 133805811, 103893492, 10541145, 44965832, 84129056, 525106037, 359150356, 67137123, 209037840, 139447563, 409144297, 29249621, 336887860, 223517587, 353943592, 273854746, 133875994, 68275712, 51223277, 170390260, 139106114, 93156001, 259085030, 382174376, 1035278055, 109798559, 31717479, 43436331, 15317266, 76112580, 41465255, 58683201, 225193837, 713853102, 115884854, 236232075, 206685253, 24789740, 440915915, 21793689, 74287294, 110353061, 53669699, 842627585, 624039269, 291218936, 243392454, 11868771, 270543330, 196037042, 193238983, 10793899, 220268057, 38082800, 430149567, 90821037, 65438140, 288331993, 54849816, 85142493, 632685106, 106677826, 169497109, 67203764, 1698383, 224766288, 217389377, 210366779, 138788102, 120463684, 123865217, 134374383, 159032229, 95438320, 115843356, 115313086, 872637607, 318762147, 133773864, 113424979, 875084888, 633709385, 130073722, 84402422, 414220929, 717670617, 218455447, 703658, 110628999, 363302458, 6186591, 1277095756, 457265421, 73426814, 64259314, 228190067, 217232981, 392140416, 33065244, 854304386, 564507692, 71515309, 116606638, 105478411, 88721714, 161069899, 147387449, 74625206, 42433986, 222424870, 109791407, 520570305, 65786797, 341443023, 36146052, 977540, 136711976, 308237079, 1683769, 358357024, 50931700, 403292954, 349738229, 1257612395, 4525148, 313957624, 100287781, 227506445, 61861844, 51967225, 87590481, 478986426, 141583428, 267440148, 632968968, 315542668, 476169403, 106661610, 307885499, 1007320354, 595546134, 4900210, 233571301, 30857111, 178744373, 329601116, 528909210, 581174539, 39944206, 541227659, 124221662, 100028618, 133837320, 27897539, 13829866, 141328584, 206457629, 120624393, 1061815954, 364095140, 207266429, 80560286, 229375123, 319829335, 273043876, 69551642, 131612121, 169769805, 218043146, 457816260, 57765428, 58478687, 235935307, 198750291, 14535667, 19754346, 70215110, 656406214, 327307804, 123354748, 201824269, 20935013, 149891229, 681771604, 685130517, 68924787, 22034948, 164748501, 238300229, 16512504, 801189045, 36269791, 18699008, 85329379, 227158653, 162457493, 186367009, 854338686, 298506676, 438935032, 199951620, 254893925, 371270475, 31275685, 39291650, 434602283, 711140564, 122464824, 167187857, 269708147, 177147060, 1298808803, 164042990, 289073182, 290827622, 36678464, 582437513, 361985329, 109413897, 67582656, 213392417, 89751659, 27485058, 256702181, 97618194, 296220040, 457470894, 439421054, 264594319, 180324392, 119327920, 44266525, 28962799, 30701168, 81555948, 73118991, 288287127, 56995699, 116933482, 34900409, 228760414, 235827432, 532342515, 405397546, 75066985, 85322961, 637153212, 564953273, 3420305, 74236957, 28485362, 99381529, 86017236, 59230159, 300441859, 232254725, 540126396, 181568792, 38259281, 74191619, 1060325652, 181651588, 134233820, 23266281, 114873867, 138863607, 19431713, 377398253, 112982661, 147598286, 562035162, 293911234, 378576229, 179438059, 157842439, 382856309, 28218707, 264259255, 197481087, 112106482, 348537179, 476033538, 121451923, 695443414, 188063793, 768835586, 420639588, 365373996, 466601870, 8955120, 345934883, 101903634, 51535499, 217807018, 142726031, 106271882, 263713882, 49129702, 145681425, 427926480, 422006146, 23626886, 216053515, 88142063, 87135568, 215981665, 416451443, 127014548, 52971311, 15820257, 168773636, 285267867, 271160113, 476700073, 232558046, 587456505, 398780574, 34074257, 268009834, 244489634, 619131489, 118089311, 291205830, 465478009, 651411208, 464516028, 614673358, 206856213, 359967691, 102557429, 23127090, 203133391, 43677261, 270838034, 219807059, 149647597, 739974785, 26935859, 437896744, 535441228, 44481683, 84867857, 196142483, 417075032, 28794534, 502716698, 302903417, 262365659, 335902369, 98824734, 940104161, 120903435, 142666513, 268279816, 731358065, 105082931, 60931272, 480659600, 252460500, 761925922, 43841530, 316221336, 171582431, 96068590, 21181513, 406088055, 173767247, 3340820, 558583739, 88511845, 561024755, 7591972, 95860765, 41454761, 223319954, 43747076, 1220534323, 1225856381, 399330881, 326136878, 12629661, 365721109, 451898381, 164523562, 35608716, 370728484, 202972102, 106422597, 234040205, 40512182, 4642154, 175990468, 233225487, 180448284, 202724982, 286789620, 84161302, 1790544, 144915973, 599130398, 9813149, 93254349, 679899361, 109998215, 154006786, 71460445, 178957712, 51424319, 67844269, 2437745, 263991633, 84218347, 186798518, 155762842, 349008147, 125719118, 56213575, 1722373, 160297100, 395412268, 42516185, 168792111, 3087, 173174302, 327301080, 202731551, 569604139, 976564119, 206556466, 94736662, 256042793, 228207214, 111217757, 89553576, 287396532, 199353556, 195568520, 41672974, 321838848, 180269009, 621332656, 105294725, 381277890, 43918881, 388414987, 71645718, 199770310, 325001575, 73897200, 985021919, 67092865, 39082412, 156257678, 67096794, 119488412, 42315166, 373490671, 1183345337, 543364165, 91185520, 9162412, 176902257, 252087227, 125207939, 390237121, 83096456, 609939155, 8747904, 46287856, 113075582, 197666912, 442919912, 296171650, 7592993, 856637065, 53701764, 2835047, 177487851, 576714974, 2049970955, 62137189, 29623755, 576807485, 135466548, 105765144, 74599650, 92121448, 21483457, 1034743936, 636863454, 32275620, 3343212, 39786507, 170765120, 130557935, 283677449, 178269958, 8293444, 309657975, 276986562, 125817971, 61798712, 161265528, 419943383, 1076836474, 46435062, 960791956, 1309859538, 276203894, 519162463, 1293339856, 244372262, 863533441, 262328638, 1369062505, 9267786, 255982111, 8940632, 526271733, 241619549, 753038975, 964670692, 249919303, 21586072, 57076239, 360939801, 351166637, 303200516, 195988125, 47618218, 103708358, 274769959, 33265528, 197266002, 151594747, 27819696, 149787043, 138735437, 490610707, 458272309, 80474703, 477445351, 144492398, 918262985, 60958557, 46328590, 335646, 457053623, 56987268, 528664973, 142215373, 567256084, 233720266, 389297664, 327500046, 397886893, 188679103, 54201731, 59244719, 396099368, 113738537, 83332374, 142572033, 166371524, 205934155, 497942696, 220615516, 887317547, 1450574530, 136943560, 408830811, 777655, 1038199552, 59293828, 943137686, 54005886, 29799709, 341537282, 370425621, 94346498, 106961725, 46700549, 691266854, 646320120, 695921876, 265906605, 151466866, 52740781, 447892458, 266358979, 802731127, 45801573, 607922128, 120550357, 122821364, 151746215, 824781544, 302459502, 41579029, 799887635, 21076323, 696899726, 815625420, 436044044, 35425422, 298143069, 355048604, 69708558, 40126592, 176561690, 85738453, 169158745, 132698276, 58986736, 127231572, 101635145, 229235484, 218592435, 74353645, 130824600, 55349321, 57119041, 92307390, 476962867, 96444195, 288130191, 2969150, 79207095, 109133925, 45048842, 821241915, 46144142, 472983457, 284536632, 331614499, 814736581, 105188370, 56965893, 710038070, 63756208, 146944599, 808392266, 304949666, 448042291, 43012805, 15579027, 558497514, 170778306, 120559021, 33425006, 249217855, 213235897, 99119821, 607046886, 36558042, 119353085, 96630733, 584546366, 255845403, 130378690, 418353612, 101912895, 210010198, 258215918, 936323380, 81697, 102792826, 11519183, 57066909, 76203450, 78449423, 254881021, 784946169, 722900259, 50993918, 496517458, 358596738, 13247832, 100936748, 27949039, 48479668, 672115810, 135063918, 67503666, 451549283, 84871687, 107359744, 536939912, 46085524, 774215257, 77020885, 319336884, 2255367, 208720167, 100975261, 1022197615, 208897982, 128328339, 392393189, 353751610, 126390359, 5859603, 26414823, 104242056, 325237160, 83279727, 48252222, 55809668, 17538889, 174472853, 90653693, 1010805665, 135412485, 151053710, 59627551, 854530331, 324451362, 202008910, 465209661, 251063172, 67142431, 20256956, 96969987, 70042180, 120436397, 121931302, 837471625, 624308085, 182567899, 345582754, 129596079, 545540960, 182846517, 173814585, 56823182, 776696839, 181670812, 117836244, 38103094, 217344674, 233893629, 49143950, 203728306, 1021685253, 244383536, 175224607, 309822740, 13037784, 379303435, 79489388, 285620735, 347771909, 21611440, 329058231, 327047247, 155102962, 460187308, 289682520, 112010595, 100916575, 38153001, 345663591, 716497265, 126090787, 799434657, 34763274, 103304194, 156056015, 68469123, 59944976, 365994883, 441228945, 122933795, 6638100, 204317302, 335484360, 188124000, 907021504, 384029801, 2366350, 67460349, 48128584, 356519204, 95579968, 548965633, 155313677, 359998581, 155120807, 505331169, 472461949, 186404527, 1053966146, 95906999, 151515528, 29320843, 77058154, 96187178, 50431304, 155050249, 200564167, 124629736, 719047671, 22789100, 360410955, 837079879, 120902129, 60114273, 62582391, 106917945, 874176736, 65573477, 95407985, 36034342, 813788900, 245090107, 366404912, 133158948, 23992496, 54425432, 73267639, 291040194, 152079350, 919904736, 879638886, 535230994, 459348511, 865112039, 656573768, 1253681509, 42768693, 155473343, 120658179, 21982093, 84259385, 507920243, 9395912, 268365810, 13738451, 74500711, 331300294, 382793848, 164951346, 2170245, 581407646, 142020429, 117756604, 266867098, 214516587, 56226219, 221509969, 206999712, 510704149, 364432568, 188776486, 221252961, 117679900, 20273051, 197910932, 83848265, 17574338, 296683496, 163568410, 51243323, 369451457, 347221672, 6255576, 202819997, 118843175, 462245364, 397572463, 452973368, 233525487, 1050870277, 464919734, 64894088, 40257202, 52674238, 241358522, 313996618, 122815638, 627073608, 994831952, 910257338, 278771253, 69746636, 201394085, 253280, 96341635, 428962797, 84194470, 121874487, 168690894, 347048811, 207696301, 880845634, 59755663, 99649212, 182163185, 97920423, 568629853, 3689354, 34517235, 165800699, 1360443579, 772427199, 302149074, 572159251, 548214534, 83971336, 103229420, 1141695736, 678905315, 93709864, 323609419, 224243470, 198981948, 69540303, 224827812, 467944869, 7050464, 235965822, 747889436, 73970845, 16238168, 68565586, 61002421, 80200239, 205848203, 157724252, 100497541, 144052551, 164400516, 152285006, 262893643, 59914136, 35856617, 13303564, 475252114, 365417033, 18136860, 43308203, 350924535, 1138378664, 157408070, 150854363, 215478000, 337450699, 140049933, 542524820, 91533473, 53530990, 60124348, 69210291, 50021669, 80598122, 161794947, 125433401, 83013462, 358088888, 224054146, 231776195, 618709018, 397233169, 382643954, 199650671, 342406713, 579742669, 228447582, 214628707, 126885925, 273027100, 322709990, 30115324, 262548415, 41465788, 89830461, 692538339, 250717860, 155297735, 421120623, 607446480, 123360783, 1308932214, 550971232, 207543822, 28563, 20243988, 289674307, 3913563, 444693346, 68798779, 111997639, 331775204, 1729028301, 28499899, 1085723392, 340878354, 355210464, 97234427, 84333503, 31405347, 765408938, 339258216, 899126859, 101387797, 528858766, 1627306062, 73238756, 169203160, 55016192, 8310970, 31856210, 216593029, 395946436, 1101643127, 25965016, 396071310, 15507690, 374613979, 205066765, 255329768, 348263148, 558832032, 19920477, 346701176, 1001457157, 14903509, 57446612, 164475209, 118912395, 63488175, 102303807, 13340264, 706483497, 88852797, 121079453, 206693833, 7577061, 247193740, 375299115, 64347009, 128615509, 537210666, 390911430, 618815044, 243754887, 251014616, 146207287, 283986321, 119697170, 827320591, 83210546, 483466190, 474755768, 24264886, 98984405, 216635080, 40622117, 186632061, 3224950, 76039164, 165427484, 107038106, 93895996, 131850970, 119380807, 288180215, 300423198, 131296862, 2264489, 149193565, 114954140, 39689330, 10841047, 32865868, 10318753, 271483833, 170959014, 61933781, 91596978, 232342355, 46857697, 97285217, 143485118, 1225693703, 132878372, 344068655, 210450604, 87897301, 67904760, 97176861, 200353337, 151794834, 128725103, 461930412, 225539152, 361532544, 69343303, 74313068, 558476876, 1117167609, 296146731, 67894113, 548139023, 163498856, 24455003, 286688302, 26032295, 219242463, 532305072, 37348938, 39647227, 6113011, 152734201, 215160038, 383627495, 228240633, 85884166, 14409794, 246164777, 75682173, 118123155, 36217683, 148995314, 358443333, 319334943, 1388604331, 68498121, 298975572, 72313826, 28386939, 139129372, 283905765, 20113125, 86211320, 30941804, 46567661, 305330738, 60334825, 168284999, 91963311, 107977929, 116229817, 100614665, 193383768, 625697917, 462457242, 482873159, 695201819, 555413425, 153166196, 674698589, 1025195852, 99368469, 113567471, 167071986, 375821464, 111254768, 313142912, 51138856, 105037750, 206862246, 231545867, 1007323787, 118890072, 246627161, 481691173, 82814440, 7820516, 410676208, 352685168, 103045965, 533570893, 23157170, 128207091, 35784161, 355284473, 60291641, 859487845, 140337249, 465172910, 41262956, 105964888, 433758165, 59979210, 145985702, 3509468, 324998783, 189931671, 160438384, 559219776, 477192249, 357049872, 60493237, 217877001, 26315706, 215015221, 39869456, 119312931, 232759854, 682945473, 489295698, 279503049, 411934065, 297147429, 7268756, 644166849, 138579842, 1003962201, 257576139, 219619134, 431328889, 190276499, 580349995, 115276254, 330462737, 14547540, 120687214, 46291971, 220320263, 448678164, 9251226, 40248002, 94193527, 1110164607, 318852290, 132390311, 205618458, 233828709, 184208932, 534219796, 187660436, 109493966, 191653513, 9780575, 375105246, 206712270, 778748469, 630078074, 193282052, 99736306, 166959815, 16925235, 457517675, 114820296, 141739818, 86139641, 137468377, 197419528, 152262426, 331398715, 22703610, 65029288, 506180806, 127045054, 59614814, 92599564, 390309956, 176904021, 554468041, 3041195, 113975291, 35715496, 114080012, 249089368, 46917315, 504531683, 592534764, 516066801, 373965830, 44143569, 48113522, 64918942, 64209732, 1081529668, 100075029, 124596941, 79636045, 334121615, 597547781, 154674815, 49814986, 343159902, 284210953, 4779212, 27851349, 513343827, 99372472, 255034106, 23339564, 54140112, 262970135, 52487240, 98530786, 340882559, 409180781, 65306535, 224359419, 299432758, 19397258, 102807039, 227955138, 71488821, 204392189, 412598167, 895163561, 499070579, 630980884, 67069533, 97489940, 427678886, 140466142, 172412187, 83234227, 16764318, 73641207, 121971849, 290519576, 213942626, 1030055075, 366234796, 175709987, 116202088, 684963102, 206082425, 19625570, 161774692, 374158120, 272002348, 35809282, 462698324, 326356168, 158289614, 437125921, 1125226787, 70326086, 392347686, 231240383, 38981051, 359122530, 267145300, 306083341, 42055078, 513992203, 787843004, 61769516, 26068619, 16720918, 256289351, 275643177, 415380224, 119606790, 548840131, 40039544, 8164016, 140045455, 62960445, 176882852, 636830062, 242240432, 251035952, 173838129, 12724076, 433838417, 88353433, 8501916, 8680522, 13372625, 118538253, 662826706, 205285137, 1172760554, 113160597, 305495464, 491860727, 10736088, 269427643, 306595616, 28161937, 1553634716, 19798817, 584807792, 118325263, 762790147, 6896845, 131120886, 27249104, 1090618133, 545675996, 879168, 105735928, 68381318, 175520685, 124825309, 7133619, 190827659, 44072164, 440774166, 97959704, 190612432, 170486548, 492436487, 75119821, 451653084, 83828052, 479506842, 515233829, 281862252, 193297660, 820200348, 279521376, 235690727, 491423144, 935757, 86112337, 255131027, 39948661, 124434135, 243445634, 378291852, 35106259, 297742352, 1057680072, 116018899, 11529411, 377712160, 527229455, 763478092, 99575177, 48556051, 59423958, 406497918, 376608155, 56911070, 242061860, 6070805, 6373888, 58497579, 146592420, 90098283, 43218982, 18846057, 258240082, 358291342, 459782167, 598199050, 27855101, 850452570, 3139303, 318570871, 166381103, 574991646, 121889366, 156850916, 71384123, 45327007, 783610574, 494602119, 501410695, 79358901, 378012825, 12116376, 9837430, 191244291, 71970491, 127668826, 88286811, 80335082, 229249798, 324153507, 92742262, 171121765, 393203572, 646399751, 841630659, 110274638, 214752824, 15208213, 93758925, 221790282, 185121510, 379490428, 157996508, 253842264, 791773355, 149369251, 390962219, 275761855, 83870130, 254480192, 279010157, 6454881, 139364585, 151212936, 204574119, 274370405, 444628772, 450925877, 279648933, 37949750, 81930531, 312372087, 248128752, 406781322, 244406887, 220212873, 33449724, 43105267, 256089271, 46907277, 164919438, 32201642, 668399968, 628792232, 346167553, 254897879, 107767940, 73638276, 936350, 114552728, 246481215, 281666174, 124507629, 1549686, 22526406, 283970316, 134579449, 272780482, 64900310, 418706393, 394352826, 174403910, 174242805, 125339699, 80130003, 20973584, 306843028, 126266202, 958590761, 12172857, 205870107, 151313526, 45966384, 60240401, 23307443, 267150965, 221892476, 47503907, 258771268, 224037385, 191247357, 66490632, 65242964, 266205811, 974834916, 12254299, 88875859, 123095524, 308098320, 184258628, 46047377, 161710601, 984109358, 129834794, 229030700, 1061977224, 62261461, 936350, 29616861, 52905201, 13152725, 131978615, 119019770, 823990788, 110633011, 156269209, 108417940, 618741037, 116406440, 809125194, 64829761, 530509649, 50120849, 52842931, 180997838, 597956631, 67839120, 397246139, 80834465, 634609953, 4689517, 48732669, 30332142, 361712410, 94927674, 150499090, 342641058, 188695584, 152141560, 228932932, 309034299, 175775856, 879151455, 11488530, 152793907, 95727021, 70705047, 390234020, 796540094, 235064365, 168197033, 47801212, 57629778, 130176676, 112276048, 308967844, 86872466, 100967558, 61370866, 90001422, 922460995, 941781533, 160910977, 20830906, 332439455, 370790123, 188129519, 53106754, 534342, 309956346, 375692169, 310727601, 48502725, 337412108, 173482572, 114685491, 387374910, 330047598, 532337639, 334484680, 10777860, 106680262, 559230770, 71054181, 165694283, 904978483, 293251170, 358581730, 87863412, 545564315, 5949800, 76140098, 490312033, 67097656, 19479594, 94810024, 340065205, 228951198, 174022039, 341966751, 1894414, 70282311, 139827676, 50773900, 318047537, 267170718, 83888585, 164414036, 24231802, 567183238, 50134696, 36050582, 834993539, 424367008, 30257677, 144381323, 382936000, 395920506, 44594746, 10680858, 132047092, 51634035, 90418473, 1000541751, 135406795, 29578526, 85770412, 32621289, 149261804, 372731452, 234833002, 152573928, 1062640145, 358973937, 117402150, 301793227, 123101511, 261612685, 572473421, 60741700, 187015179, 14288567, 21375417, 164013811, 502268917, 54301021, 260838976, 117408178, 828548318, 399964488, 134134740, 25685904, 321380293, 149774098, 18671956, 26534986, 203793565, 111822508, 844127457, 854056647, 25686938, 208436188, 40612592, 461106201, 87222596, 183215714, 75087152, 134280563, 33497040, 35992010, 243371583, 122940415, 697773492, 299775729, 228432054, 197075196, 248773302, 58081491, 556838629, 98391755, 339372048, 4333244, 136284818, 144160183, 157390942, 168062099, 80106378, 345525277, 216971962, 887111252, 151268862, 134451801, 187827423, 227303600, 884220833, 202137299, 18290268, 62224871, 687104292, 719835894, 22600071, 83433890, 13023019, 1730964, 312810763, 259987155, 200694759, 92821644, 222392721, 43389565, 245433474, 88494712, 48490280, 1590591388, 157918858, 118653372, 63619811, 325648351, 474992564, 389183910, 294392258, 80964292, 639752514, 670268086, 232833080, 549002983, 158885327, 134531280, 21667190, 33631248, 105794523, 46256728, 38394127, 125342354, 655732718, 462477236, 363470725, 55892265, 32425180, 97703125, 110410364, 166080528, 109227620, 187401866, 164752865, 405250400, 251463585, 145327392, 70201093, 154538632, 720881023, 607945907, 158744809, 491198010, 221710565, 7175689, 164697826, 2398876, 146480936, 89858635, 558232562, 183204665, 156976234, 2234172, 256984584, 29544062, 475236190, 118916366, 92764788, 316021232, 142248386, 127358420, 44649837, 182864819, 265892654, 119918888, 5803063, 72515902, 200801875, 77763341, 147515633, 164672245, 607610099, 546053187, 12767566, 164508748, 277214985, 188775347, 65135574, 449895478, 418301448, 25455038, 98643799, 1058893496, 504154955, 690385515, 480801045, 148651878, 8138946, 35971752, 538469358, 156224866, 77779516, 5068502, 308883420, 569533342, 36567824, 327668495, 33370742, 284944326, 841357954, 208262878, 529601749, 513741327, 45929528, 638731048, 16336372, 214100990, 47054119, 86137865, 120834542, 321989618, 32288304, 145461011, 149794781, 867125243, 25411420, 81150797, 38632555, 34372118, 38827856, 2045227571, 99514384, 131028765, 390549050, 1345357173, 83155471, 602283408, 321677575, 37893760, 94352335, 138532570, 146086110, 45944626, 1073765, 230935246, 450178806, 17477629, 558015725, 343851904, 110536677, 72744634, 146632929, 59640189, 286239354, 243900223, 640610267, 183083796, 523594215, 11542021, 255948050, 1312461093, 11404463, 299834615, 36476971, 443230671, 143661506, 134208858, 160710478, 529906361, 199892715, 368749999, 82372796, 777627543, 283739319, 83833224, 84529279, 168195475, 22277560, 42067574, 738621358, 48577475, 37628530, 118567184, 121804077, 205481756, 826352001, 85513812, 7983956, 220462479, 17541582, 133688381, 96117509, 29733938, 450599182, 149967341, 290691470, 69395025, 462530611, 31843999, 24995373, 26780279, 250744023, 28737523, 416539986, 80669750, 33745006, 441064958, 172208726, 59152217, 323220844, 141492238, 31785914, 476971912, 194300174, 68351675, 122209336, 65815507, 184781955, 41546343, 200364435, 99306013, 205928142, 470820802, 143498037, 115236706, 78998660, 466095192, 230851245, 467549307, 309294420, 143511323, 677114086, 92360740, 82281491, 163534248, 95380717, 129244422, 81859658, 197543219, 106806790, 884090647, 305009364, 56000946, 209659834, 766408045, 143046184, 286573906, 46766586, 288850744, 431422747, 310795519, 926388590, 109597397, 81226351, 37609105, 152121074, 194818453, 829883294, 380639291, 25078560, 273228925, 678915079, 380080393, 304289949, 54673308, 64473742, 347067393, 101466369, 68325740, 1413135817, 276512852, 737737940, 300718386, 477750886, 174524430, 257101658, 1323595018, 574935184, 199556037, 283224792, 307635099, 855454218, 259824718, 389514664, 66625675, 373057185, 786724283, 177715026, 328092452, 327195522, 228679607, 26033094, 125343510, 107779289, 196413799, 218771213, 92910724, 75242295, 552077899, 195514128, 1179195335, 82103020, 60444143, 290730477, 497344061, 305575980, 7088414, 485258751, 99831333, 214686995, 72322401, 1319972721, 79968901, 520786547, 189699093, 174211520, 117932611, 162129109, 332282610, 444852807, 635209249, 8661891, 622849990, 87906127, 120826247, 49703643, 486308186, 138640440, 47390124, 163966983, 680267284, 43458770, 169902820, 35016083, 447089737, 16760918, 214536285, 236300751, 608870772, 252250887, 39211117, 38211954, 247269257, 41079891, 358885720, 522132914, 123044490, 26169983, 99759894, 21707439, 624117223, 899406899, 31111812, 215746504, 75154128, 66780064, 170288439, 474353192, 262307098, 268033221, 9462000, 92945750, 407717177, 188007710, 47867104, 111667550, 222914839, 166404803, 300892411, 62937843, 19845347, 219337553, 25331404, 146950168, 323356723, 471591747, 87658194, 18868721, 296517039, 110464155, 42227657, 103227094, 96622577, 904027, 259696492, 212256777, 959532468, 25221863, 126446633, 243026128, 342908828, 141766673, 271743224, 77457923, 291379754, 431963502, 111268216, 68905146, 2784701, 3608075, 54505499, 22844920, 227576433, 85885201, 187761718, 85151819, 28646355, 202736464, 24747231, 196043394, 542472765, 71427973, 487748310, 49935491, 1133810266, 164134256, 338116580, 846703678, 212632241, 492343214, 96239268, 4528424, 1828604211, 746052499, 83518297, 141418309, 178772951, 117743450, 271219384, 184219968, 123358955, 459832330, 106103314, 313034677, 495060365, 231601331, 865812952, 769337792, 30715825, 13297189, 63168675, 996540310, 8265898, 12970895, 42154309, 387651559, 78289722, 252705990, 170291223, 213425468, 59407111, 395715501, 223558885, 59038808, 164071529, 233460015, 250672098, 316040834, 309555558, 1271545113, 741355039, 14561512, 219939197, 82033814, 180539044, 137630366, 494174258, 160412425, 26075630, 801243208, 75993521, 96609881, 300384073, 6862942, 27624177, 458421240, 418023840, 28022063, 52294828, 80474014, 279957924, 126398784, 404522301, 871695563, 228413886, 1111561467, 92092317, 707364369, 302525939, 344742839, 295893137, 254705628, 199445748, 69173401, 262930456, 3760694, 126880499, 64705558, 64003316, 170035394, 652452282, 164756237, 196940092, 236350149, 177575171, 122330233, 44418169, 5857737, 167969688, 107308934, 7893018, 529842783, 327754853, 442142076, 226901933, 7181175, 420838155, 252305645, 830589711, 65269698, 108499522, 124428630, 230973004, 249451014, 114184897, 60411162, 259079885, 344732077, 144249711, 477573503, 758517865, 106595198, 10473534, 165696572, 290785508, 198255833, 229662385, 451532540, 92750264, 416961187, 41590939, 19333236, 136181768, 506745597, 562270752, 338674515, 558172002, 144716298, 105966043, 231619270, 128730263, 140275407, 320827510, 850755752, 3285406, 12029052, 46639861, 128149625, 390985946, 104939911, 63552386, 330160253, 136976244, 76894238, 666948909, 16946793, 196822937, 181589752, 558615354, 220475051, 7736706, 391140457, 266634915, 149156271, 121502697, 189592998, 41461120, 1174194990, 298930035, 65883811, 101092438, 14495686, 125310157, 3011984, 381862002, 130569330, 15179863, 672650774, 193212241, 463218675, 1245190461, 345521776, 87435139, 132686614, 343046475, 58104721, 161057231, 74033652, 153063674, 20852229, 433629731, 63740891, 239465493, 151285180, 272513642, 827978044, 310711030, 202189687, 762691685, 29992828, 368702183, 79183912, 636565956, 543887521, 4051149, 294008895, 454227, 19468597, 108427991, 194145987, 274442477, 104568048, 73236605, 672202817, 334740323, 865186833, 530186940, 652962263, 801836535, 12137523, 1164130605, 185592230, 79226891, 105698476, 713651841, 275448441, 88080600, 121499700, 675063762, 938964502, 66050373, 294296386, 975195095, 35774469, 89089416, 1199574080, 207682452, 89722635, 16180712, 549725289, 430620995, 322080405, 57770222, 413978752, 122064636, 285383573, 183192502, 990179871, 224567362, 157657692, 5205312, 96548948, 770421720, 6285774, 265140908, 260880191, 143056841, 638458694, 355503694, 108400413, 562623325, 815945540, 368409856, 510339147, 21485144, 7883177, 490496704, 256647357, 100799827, 278763063, 71895358, 528489006, 26240807, 150230195, 279108314, 164665007, 478171505, 591160845, 53883278, 136406826, 108961013, 60259552, 323628508, 6878585, 965432258, 106729636, 135021744, 130799735, 1105675195, 37169663, 339736389, 252175466, 22807803, 167625173, 62637470, 636826896, 182537430, 426223054, 84740877, 217232800, 156427041, 78673301, 144003754, 205407372, 151361453, 445810017, 363292380, 81764887, 322700076, 690001013, 290362122, 408219061, 553799205, 31230900, 217415019, 501348654, 55329890, 322082366, 1044527191, 50018467, 472624587, 320973009, 405411888, 287930267, 647344292, 357132005, 100774428, 44281530, 203395490, 108333127, 329420643, 968490414, 236800717, 548560296, 79386105, 4630765, 150330041, 367883222, 88064053, 561701853, 297207772, 313542881, 140018410, 92243982, 430497522, 874655210, 579865561, 1129493239, 289834597, 536094476, 627623195, 72520580, 99665282, 308086901, 276492174, 66859048, 145425616, 838433066, 125114487, 321313909, 91205315, 472199314, 298246604, 261531743, 158822989, 301842889, 273978819, 262404612, 146771977, 295729835, 186271517, 25521333, 118423349, 637055247, 37343416, 45389338, 257435324, 3938868, 590202253, 6907889, 566569057, 422195894, 2837055, 56230356, 67916929, 284515869, 46109556, 132764604, 118906876, 87713159, 24748820, 134584235, 30239559, 189973831, 4557173, 96318346, 54057165, 286820484, 696243121, 248378098, 20210441, 51316304, 156911930, 150533279, 474380850, 228123812, 108774244, 57989621, 237429978, 67459831, 924445340, 64734938, 3989949, 1031600177, 44142873, 1158804536, 128515274, 99398205, 126955225, 359868889, 238163889, 64391226, 571349043, 157137519, 342190820, 612282029, 182316198, 625993004, 96761772, 145403975, 189566344, 126240295, 111781755, 799467364, 438015708, 49948554, 84477389, 582786075, 121513629, 249638381, 30727022, 108357965, 459892180, 550318132, 16343476, 953676151, 523845595, 155411266, 7950110, 1095912417, 699630695, 257894470, 58698032, 441833410, 444192496, 667831396, 162119534, 96445772, 460032478, 378647398, 169623373, 20827744, 568115286, 444409139, 397020798, 151982586, 348667904, 11555108, 102836174, 491266786, 135310836, 51566269, 678334906, 65203637, 12655801, 1039197675, 735266101, 283620227, 49064531, 896493819, 270904893, 494641265, 107624323, 478673414, 280875571, 40225300, 370859043, 510137260, 156119201, 102339805, 250355186, 287838087, 133411752, 71693783, 168801122, 652865078, 294931724, 765787937, 828192268, 1126449316, 408799422, 27859508, 640739327, 325004278, 101258357, 827372683, 150683444, 1663907352, 250359348, 113567594, 881527314, 74370324, 55432898, 93006439, 463687929, 235257169, 53386753, 103299343, 152884701, 123902395, 130399982, 417744229, 7480132, 199716584, 6371469, 183005069, 154181360, 154934815, 154011216, 40357393, 50611040, 914637959, 73022252, 22360055, 144957058, 96037838, 9303549, 503608025, 95258695, 132213704, 755868692, 81282085, 128007310, 36373269, 96682179, 60410960, 332700017, 70563991, 197554762, 599989700, 246547654, 633937376, 151107011, 265696918, 151138873, 162396336, 549699696, 256802851, 274840719, 15449479, 378009093, 449538085, 6190657, 1355282337, 598809180, 155669728, 93585632, 301686417, 9627640, 112127840, 17726909, 994285254, 116076969, 157171504, 510081607, 137961639, 134038836, 99322685, 269099223, 291475703, 60669845, 71521406, 225374084, 268892949, 253181031, 368925536, 483706894, 176359099, 31640967, 68139075, 207003891, 540747892, 10067700, 99094309, 251767133, 303963821, 184513118, 282782441, 28602186, 204009297, 1321123157, 48397455, 79405697, 113079141, 118342992, 30237937, 367495414, 371683717, 144288168, 36471006, 142529713, 122522061, 120192156, 349922123, 369534603, 341623236, 68006485, 107886595, 60403530, 109508740, 217431974, 179376155, 803941268, 111667591, 426800938, 219474202, 4887334, 93136290, 851881473, 34044635, 228973118, 808793982, 8856250, 475549321, 11797151, 39656313, 309946636, 417202641, 585099144, 507463882, 292804383, 12992391, 65136225, 6791269, 199297714, 333579471, 366701691, 369830606, 11615591, 318538682, 477561735, 113930681, 53973227, 407866785, 311090881, 348084804, 24738430, 161741247, 5351421, 12692301, 227608583, 112339352, 367238873, 116675408, 50631720, 416893943, 180668296, 249403564, 105667755, 35884721, 162483012, 1221851798, 680501557, 145257241, 386236751, 157951347, 37166210, 79400177, 759761755, 50550369, 808561394, 197344658, 82963291, 572121476, 13797394, 815314075, 251313617, 584112719, 139194918, 126593027, 724343951, 346220488, 339759515, 149227682, 468704048, 272924018, 886567014, 101709986, 74840985, 10116894, 56194446, 158421273, 400178129, 31168606, 534907878, 207051664, 96813397, 1330745181, 209630057, 1301311787, 655416036, 182245529, 192987216, 52893367, 35084324, 222111717, 567469182, 351879022, 160155354, 89623660, 517926787, 37501446, 379629517, 228259668, 97746741, 234423647, 63598684, 83899006, 278893448, 60781994, 97825568, 483764500, 280577127, 22443743, 317039075, 80981750, 122402051, 365968752, 78441800, 641053185, 357859198, 660898960, 43435163, 76894024, 495219459, 5499583, 220545671, 342855484, 372871065, 380826441, 375821682, 249652533, 271811196, 191653568, 700924611, 763951877, 26122403, 582600448, 855506866, 179316726, 24870743, 82322890, 104446334, 178257077, 26109769, 387305934, 367519161, 62335334, 190360115, 369382579, 535137171, 75186379, 141877309, 3562507, 74279328, 78113309, 9136332, 214564402, 976348888, 204115850, 98958479, 348591566, 583721098, 317360215, 1141192163, 449910972, 270791360, 21940114, 322073900, 241994737, 223913106, 205894846, 250373946, 271610581, 5655145, 159295757, 43169007, 194175035, 285510915, 286832362, 2880166, 196230791, 281149251, 146781762, 88230312, 273673952, 300617925, 17168937, 56430182, 135216733, 242281271, 75899409, 35173544, 69872601, 753899943, 30849010, 11535996, 104872733, 735435614, 180318559, 669553742, 77055364, 398214353, 85335982, 270059556, 424090487, 341605793, 409997302, 15822705, 126030467, 55818624, 18878714, 275466118, 486750339, 180284824, 683966287, 68241270, 649875712, 1105313923, 143493868, 98398455, 106125516, 141056049, 150750179, 217788347, 114989733, 90663965, 114056363, 299100450, 944904007, 235246787, 110582226, 66671852, 118483403, 252739506, 247738886, 615998886, 21865348, 130725198, 841275334, 60327969, 104172046, 397723018, 496850460, 637239970, 81499248, 193153914, 37803198, 50994405, 184324761, 93375881, 69556233, 227594043, 325455355, 287988730, 36581144, 431114787, 316958631, 67358383, 66529219, 142420040, 439692706, 218652560, 268094138, 648919528, 663280239, 1088311977, 219423437, 363761154, 33262581, 82008855, 770679881, 154772363, 9837430, 414199829, 113605996, 12697001, 13108496, 173697152, 920449810, 92986663, 394770376, 58509429, 536423381, 171816471, 247428993, 361810343, 5539287, 93883618, 878707427, 73647282, 329392529, 194860666, 211655081, 24394849, 51746864, 63045374, 457180652, 355234863, 811800203, 731391633, 1560186464, 276588286, 125140927, 9005859, 52537250, 339486499, 471825144, 68565725, 57925695, 425578922, 196011134, 334782175, 1263916286, 129460865, 728773286, 241411499, 35178685, 827782749, 271763244, 480943371, 766719804, 25868902, 27626438, 179688227, 702968014, 85632147, 158373037, 366808831, 1855029, 135814971, 305382565, 374568683, 417096359, 14344431, 204749265, 910167279, 195946848, 120292355, 57138037, 165670547, 45625919, 332209588, 51058325, 606680298, 26066400, 519030844, 72673541, 890343065, 219127305, 261289207, 211624314, 186311117, 336080214, 276650875, 358320815, 132483516, 665975930, 54080017, 575714583, 298899300, 106662009, 221800769, 148011185, 33236482, 120943195, 847575094, 477453935, 266282022, 102989543, 6208210, 25224605, 67839292, 354245486, 3041331, 34001397, 228858559, 540798809, 118188853, 90344046, 50968958, 348219336, 477536292, 147039563, 156015882, 172659312, 46343296, 232024687, 40204439, 25137334, 166190736, 446768526, 48616530, 397167272, 71744627, 8308921, 576752481, 756855357, 530886473, 192865111, 80466805, 268961299, 247442421, 70398792, 122165325, 120566340, 115495877, 312369165, 1010534526, 162524073, 973940113, 43549554, 53559467, 216135892, 227500618, 124035349, 7453084, 174734955, 320574406, 48881383, 102030246, 46368245, 347063285, 176498270, 305250630, 864482174, 81082199, 221981268, 280884742, 35022444, 465565135, 286578044, 377725316, 51329922, 584928280, 545892934, 206051075, 1125042201, 97731596, 81212364, 155184683, 7337605, 142008310, 123297376, 232837297, 352170028, 179003046, 118001721, 62986070, 54496653, 84679820, 200030558, 25534412, 1487161608, 378179701, 394520492, 327247387, 4404210, 22670865, 117001049, 585178681, 630385886, 2550457, 132895943, 470786840, 277751952, 2150139, 31622062, 266558966, 100831520, 124960645, 455796448, 24865560, 410140269, 54989471, 296324292, 81580574, 299156733, 6554714, 66552745, 519537625, 11807136, 366742521, 785380334, 10708094, 76818786, 167776687, 365352532, 82698290, 93491117, 27359683, 619329625, 59421949, 517839744, 92289937, 399018554, 185738524, 95327299, 580474565, 37053211, 119974703, 79793116, 782889953, 159938809, 417042409, 567978724, 538884508, 430630074, 215170090, 272881357, 5023014, 45329899, 306868876, 386997522, 509469281, 341997461, 3332095, 101507074, 167355798, 7027840, 118682734, 99285146, 700012133, 217895073, 48050139, 904535686, 21828890, 292197492, 82468512, 885393177, 208787353, 125433701, 928735113, 178891790, 463586767, 189004358, 122298818, 153839419, 97436333, 294107394, 20749604, 104687319, 226187414, 378191342, 483297501, 146009656, 173419569, 242943367, 176970287, 312793546, 123889491, 492100015, 1590400485, 94206071, 41854844, 47193456, 2681842, 67548613, 228350781, 6195629, 729206215, 32325605, 135388836, 282441815, 114926748, 912920914, 630829126, 166688509, 138415076, 62947345, 36842292, 174129293, 88306356, 321105624, 1066903770, 534509642, 538660379, 163965351, 62362356, 114949814, 601475275, 230946985, 741267529, 594815100, 260672195, 22724966, 432738595, 267813277, 14337889, 34853793, 284959458, 355751479, 1103122105, 430101057, 130536499, 108248663, 193456217, 10425056, 210085809, 666367012, 1449835760, 145950839, 41139021, 86628710, 538406512, 551128899, 586848674, 352468136, 107005711, 497568243, 472045969, 67513366, 146367322, 388166501, 531009093, 418933445, 241991298, 291336441, 49898442, 134634807, 204010732, 227852931, 36976427, 194749295, 124298339, 81604984, 243387801, 268771569, 95833451, 40155396, 94750530, 94108250, 219374809, 155400874, 103488773, 147981787, 100057687, 838029560, 45141563, 131931876, 431028792, 352316897, 119388177, 923345859, 183578398, 66935437, 380779863, 488174479, 267811602, 302466626, 70912522, 47954834, 76510371, 31041620, 149895592, 122753716, 124600016, 6526575, 2091081643, 146197014, 47750120, 94592441, 167415641, 170258371, 178051328, 411289242, 601086481, 211010776, 179817280, 427517557, 306720051, 90984794, 86629414, 10968472, 79165561, 196763038, 2453376, 384992983, 118660890, 132127180, 154505504, 110646469, 96008893, 310623751, 159022860, 350052338, 433366976, 224507880, 374924862, 432809255, 356509580, 292698374, 502075621, 59580158, 38491796, 107815989, 352813233, 400902652, 262230652, 66548548, 103677153, 97489400, 189877211, 243431673, 113405647, 191937887, 33019128, 28890476, 85406450, 67173389, 181151664, 332415839, 219885420, 208341731, 135233436, 1667616, 83886971, 58812467, 104028007, 393744531, 367550404, 15552714, 53801690, 240407315, 996130, 17630976, 298239021, 356539973, 490223996, 93566194, 325875015, 639688213, 245183234, 63288804, 188186818, 315925590, 170029882, 123193882, 423845233, 363402740, 238962831, 8990064, 161397136, 43189406, 228276318, 243293433, 626755984, 493850810, 209100776, 967698413, 119315778, 90735169, 7928295, 208719233, 264589787, 8954343, 248686377, 94822176, 194918977, 57022587, 111642241, 66423823, 28016699, 751165702, 52490341, 116220049, 267516347, 279391142, 341183981, 50999663, 132058375, 99171474, 61909473, 238558493, 61873911, 404890107, 54850244, 522838285, 123272348, 347452033, 475992903, 173192366, 384329427, 251169822, 4303210, 131772456, 274611917, 123304387, 152723911, 632077838, 220186353, 399375800, 35625207, 140344132, 166193179, 13842528, 381487832, 26036939, 320600370, 68900878, 3739951, 482093432, 89537537, 66628118, 147540887, 180480462, 368811291, 118131866, 26870994, 534534022, 476136023, 697000913, 111099935, 240261623, 204479688, 29234774, 349188879, 684800609, 66645700, 47304691, 471081625, 201478736, 309294929, 322945449, 733965495, 42253734, 185182452, 156597328, 1154610162, 58375838, 296278960, 76327, 403821545, 815079126, 927781277, 799065660, 56514031, 167255070, 97689374, 9137249, 106378068, 39041118, 857002873, 143677781, 173036332, 73827074, 83021398, 60850005, 648823193, 178588787, 32116067, 178787738, 3724573, 427802126, 731068408, 797981113, 766499015, 152169287, 40232254, 303594332, 126817115, 442363487, 303830916, 45004366, 190346041, 134622617, 512423621, 158594236, 524136931, 45786642, 175324140, 728185264, 11108352, 55535187, 114859948, 82295059, 149640613, 255624921, 168839436, 110788224, 28287508, 106697837, 228289575, 531950011, 35787443, 189918926, 219990912, 453899159, 754464604, 321892271, 182296081, 102086939, 189360278, 674200221, 66374183, 385758253, 100871855, 19718896, 62765772, 50449411, 1001238920, 312732781, 29771125, 388633900, 558132065, 60388873, 7883757, 13958379, 222807206, 183822288, 39609392, 142702871, 227902242, 332253639, 86140344, 320493250, 903401184, 481827670, 81184648, 632668100, 204055507, 376366648, 941238838, 414969178, 146752221, 743937043, 213901293, 355866361, 2223751, 189366855, 284960001, 354088623, 57959072, 190081876, 184740656, 456655241, 331256860, 200665563, 257318735, 85526806, 395259024, 376189775, 310248910, 112678887, 63983317, 330491790, 416557723, 52464262, 209567876, 13519776, 477525638, 464356562, 215182297, 433611639, 252463319, 965000862, 360160066, 638104180, 163073083, 183508034, 143138544, 31091829, 69405385, 118066431, 257479802, 346897759, 683934724, 20650034, 77879456, 207467179, 26869510, 395485818, 92719662, 201989768, 32378386, 188300696, 72558460, 622866658, 150912569, 201040987, 808924560, 81271003, 115563825, 187290149, 17294908, 330218114, 67791740, 213966869, 256180578, 304579153, 422717452, 402323944, 416178524, 393509086, 38140222, 44573131, 183127655, 435497326, 994577561, 183230535, 111898411, 19668835, 82838560, 269042246, 114736936, 36617816, 581660172, 235866983, 7976739, 101756807, 528084623, 350006849, 230784076, 63270625, 1039130674, 131583765, 670507820, 60686537, 310274747, 88569562, 266291360, 174585842, 440205424, 144841186, 76256618, 311643237, 102880199, 180831200, 180424258, 93363907, 1124625575, 476074022, 32122269, 1791312097, 63813810, 62924031, 36229051, 27401984, 209613939, 628762064, 47094393, 138089844, 268652946, 178654582, 120010674, 119777094, 554978509, 7238668, 221780224, 219592733, 98691716, 754432484, 412899087, 32382929, 118472218, 8874090, 432646160, 147875080, 84861487, 10456565, 168247920, 1143227, 544525347, 106236668, 802585, 22397111, 206005851, 563843884, 696962018, 21738553, 202596654, 24247668, 69571190, 648312597, 228037735, 238561300, 84697815, 57971098, 256517847, 233666029, 186766165, 298769206, 197622853, 90627731, 204645050, 264195467, 18734784, 23042867, 429604869, 110909684, 34456860, 82235249, 112639679, 1209005378, 111160850, 26513859, 19187419, 557907157, 956500257, 364515321, 324103583, 77181479, 231300867, 711285626, 46971191, 43599063, 195987958, 151420949, 26058295, 573505659, 383908945, 241846396, 216358774, 88855226, 265958365, 24372743, 286788135, 319741955, 49712269, 162743257, 9444955, 91755390, 340263088, 36040574, 7297634, 15912782, 66588932, 499015795, 306525726, 753912409, 237362963, 129105520, 56428559, 48249523, 16467690, 27829612, 17409051, 105909681, 202447043, 45307176, 62578053, 92062585, 184719875, 191305490, 103723370, 36212277, 243600781, 1011824300, 463795778, 193623592, 151623126, 249517377, 215404268, 613838208, 352365172, 231966460, 327085375, 322252353, 147502426, 130543484, 273249057, 2624666, 194398068, 230710964, 51394052, 229555801, 301778604, 1134711861, 620247810, 821100060, 40708886, 522281842, 1288015924, 272909104, 122654756, 100486065, 193006498, 333772815, 10275073, 109546969, 978103297, 65825901, 313269989, 200180695, 33057957, 49361538, 29538069, 225652365, 541383537, 200941492, 824609996, 78639477, 90071549, 65773353, 476535106, 62482396, 208719583, 78664053, 57583001, 156250424, 62282551, 23008852, 12847865, 789486920, 169770967, 47401301, 2105332, 1070656040, 554929073, 12462862, 18018589, 504491068, 3023277, 376055072, 125276893, 559128606, 683410710, 68592549, 157563677, 206635284, 186501519, 42372841, 419993171, 413695046, 121203004, 123919431, 363557655, 628504378, 124933880, 308662262, 26330688, 232354348, 389267905, 588951185, 86232305, 71617605, 13882807, 89139549, 65200763, 691313748, 21303627, 88392757, 196772815, 24578116, 409584904, 274877414, 333488337, 326933441, 540205912, 45299518, 1220648300, 32949589, 13676019, 406728184, 621810172, 47242042, 613687914, 133403192, 450850717, 84652406, 20911333, 637501567, 244646454, 238532577, 210716125, 553473640, 464735164, 242149180, 628243037, 415061895, 83199494, 1050184741, 454236312, 413946629, 454213278, 244917986, 51727693, 201055122, 14039601, 11407768, 151271314, 11059116, 45883632, 175782108, 225901540, 441396924, 275629235, 169060866, 787756627, 61162643, 359311945, 5914700, 526043218, 109837315, 253149046, 138453426, 844328158, 53883868, 1581597238, 529040177, 339022438, 3271629, 493044481, 204429669, 212292352, 139320827, 37845910, 343452217, 721804193, 717008981, 192467455, 31648427, 341275852, 144962632, 111561041, 91372022, 964554545, 351737170, 378439774, 675790611, 729725271, 74356195, 313952783, 422946755, 231431667, 13324579, 58587953, 205370217, 1032718636, 762862867, 41649587, 319495344, 325131419, 1116513681, 69778452, 76760647, 39749898, 30911110, 340638667, 457418810, 416333684, 1037411142, 711030490, 190124550, 135472462, 84228707, 426726842, 33448174, 2090175203, 95813811, 9979507, 307523744, 209691256, 172639650, 173013421, 544052489, 84901923, 146008685, 44036041, 77155321, 31156245, 93840093, 317887473, 448278179, 7558202, 298653220, 16738289, 48534372, 406515126, 201362482, 1100961015, 102099582, 189701052, 290443926, 466165905, 626339066, 304827470, 123284840, 5471884, 149348039, 296336760, 438877060, 30884726, 856964963, 7556739, 235288769, 230026528, 12998956, 373929615, 348336837, 12484571, 530188488, 394758694, 361045284, 300055839, 429324762, 141975326, 176475838, 333905296, 751525103, 2565579, 157353745, 79216723, 82502348, 29668422, 472195105, 49251254, 410621426, 58577669, 738610003, 63312456, 254732252, 180524266, 103047896, 103583361, 195534482, 282519548, 606735614, 100763058, 43928935, 124397950, 119133130, 3298477, 40823840, 27647862, 152582695, 312162121, 79734438, 662964685, 136748296, 58610827, 300277246, 496525821, 59920244, 745867076, 319382401, 7583467, 516261809, 175078726, 68043388, 418978444, 154487653, 236162834, 7615693, 379061035, 632629559, 93326547, 45419666, 433305204, 250453639, 98295068, 50606210, 900234187, 18672935, 16970783, 447609966, 186481784, 370721220, 18978378, 48255050, 608107502, 82431178, 488267805, 179326883, 167637353, 199292187, 54256924, 181976100, 127416235, 291267235, 167700418, 665874881, 28192915, 13689634, 775070894, 248958703, 832381822, 72943406, 190647327, 188384999, 241269679, 222491824, 148308088, 219153722, 127893512, 71597732, 123712515, 568673839, 1090583799, 55204927, 422384480, 264992756, 160624128, 267244661, 32691622, 292072038, 45058620, 94851184, 628545402, 88478550, 330581453, 123351602, 58928221, 218080041, 48887147, 40916270, 643454290, 547362591, 36669724, 48675896, 125802701, 342311379, 174328562, 212566813, 7341109, 521452612, 407814167, 41927200, 178033612, 192741354, 107698648, 87250385, 40378172, 202188889, 286721419, 720534, 57320560, 219914469, 13405440, 499517885, 491980848, 188886003, 64254267, 413235258, 445523215, 36685080, 702102897, 169001260, 1617907370, 435980836, 269096443, 34347589, 85184336, 525947219, 295264795, 95319374, 337625135, 159618209, 157324657, 798246194, 331251512, 198340793, 68901399, 243889369, 14192638, 267687072, 114788266, 1300822980, 749439364, 135630581, 486284200, 201017543, 281997067, 429142789, 100613845, 165430616, 697376826, 1183261572, 703432790, 688814465, 419883598, 99071478, 11873176, 17369213, 49263896, 332639857, 31255418, 268157183, 637498681, 96424857, 233267729, 121572859, 466532416, 217571822, 871613412, 559532749, 733034625, 99237473, 257010736, 555046418, 162473669, 161813831, 43303535, 29571962, 77425255, 166184255, 100669575, 52008830, 59145056, 1194608283, 505098121, 358374773, 94576175, 594781628, 431375211, 64290384, 115501036, 287850480, 241362546, 1347621, 861132361, 51219314, 123695534, 410978703, 174221331, 22002633, 140577194, 142672679, 39275399, 6464698, 9331480, 239454750, 68382218, 54302467, 157017425, 173196715, 277780208, 188194232, 137099506, 239873693, 181949293, 1480163447, 106572319, 207043130, 585042652, 559381286, 185491602, 1126121338, 204588902, 25910790, 1234555808, 182280676, 82910569, 30536653, 6782266, 364890902, 55316167, 152128927, 628512192, 19682613, 61508049, 746293006, 141292048, 52626717, 34655436, 246279173, 137948221, 193791956, 29603372, 434437960, 29779913, 243754088, 429035257, 152158262, 38706249, 152317529, 98919633, 269230630, 145276426, 239294648, 172246510, 45607720, 23211515, 360888105, 3279645, 520493597, 70451835, 787160327, 91471870, 38819604, 4720277, 74345395, 461778322, 149331651, 146197476, 764761460, 7387047, 226643461, 61463461, 37865073, 124851679, 16044234, 173796890, 671543908, 73338219, 119489669, 28114450, 94085306, 362465703, 82921244, 581974874, 64782807, 50136249, 338656884, 325068787, 54094366, 228398737, 306954016, 37148915, 252818665, 223019557, 42576922, 512852767, 130619762, 104202399, 5506570, 21143986, 115165501, 239632579, 88328401, 69735428, 332984403, 110893332, 162324676, 127098750, 231258616, 450109741, 68411726, 554220788, 96599301, 181128734, 381674017, 195155124, 290450421, 173239347, 916562655, 498034503, 427826833, 280586670, 967971049, 140240870, 64197593, 543317026, 80437427, 114137008, 56428658, 7511297, 147198655, 90732986, 122501639, 325429909, 82266429, 468681738, 418000656, 339534043, 60805122, 32827036, 87851831, 149794781, 1192756981, 233725588, 294972560, 183575260, 502804388, 106636689, 340976813, 221494714, 677318509, 194839253, 63352662, 274995530, 688274920, 50437134, 190874278, 714973334, 195714178, 321820064, 328843760, 754126200, 1132329496, 461851657, 132956990, 76949474, 279179619, 53233035, 337258743, 244367792, 93830460, 1393402045, 398797532, 8619532, 105163665, 155831045, 86437509, 674177726, 195123637, 364618669, 175886811, 54832035, 1979908, 315169236, 469036451, 304792209, 253149184, 109365198, 252083314, 36833208, 9035480, 17648864, 18895764, 390735070, 579789212, 62242065, 387984074, 88025746, 131296906, 175359682, 562947945, 150982235, 67541605, 282450733, 63328938, 93816753, 491243356, 71496424, 64573902, 29641861, 1009480386, 318300729, 91671980, 1111352317, 38543542, 32810989, 291808969, 366096806, 59247397, 5471555, 552950861, 1043735730, 479110997, 313410498, 368142602, 338692147, 607105112, 80450323, 366583866, 8458558, 179165308, 261131803, 63131587, 331766797, 5744808, 49401772, 1181187, 252162143, 137983765, 912186093, 335712736, 36463287, 290422621, 799731, 31611794, 425147392, 540325432, 198288027, 90988260, 17883067, 92238304, 641606104, 12069650, 35223001, 244129740, 207626363, 238142183, 74178207, 428762108, 108687790, 5649361, 89876906, 832002192, 1034036375, 364019913, 346023718, 42635628, 183440188, 108945908, 213619814, 166228480, 12998111, 148155050, 35140985, 430167960, 89533453, 294268908, 293569901, 440028786, 324737937, 174412289, 27290852, 252838149, 198022725, 924006182, 836849349, 16716290, 218058145, 781219277, 250218722, 590394666, 910579565, 273640248, 240925731, 779206469, 37346069, 102298463, 25903311, 263265798, 282176183, 132304256, 24320719, 158589098, 450484574, 848970323, 75340335, 27360367, 124848473, 288083867, 282684624, 463337043, 39210278, 184018550, 151896918, 139844624, 167491479, 39310762, 64908617, 5520599, 22898003, 226203935, 287898648, 13240838, 62810340, 77320758, 1342023822, 110933098, 224781048, 481418872, 333998156, 907664137, 951366893, 212459637, 142596095, 204254846, 188497878, 139456273, 127468452, 263147007, 448128783, 7945410, 158931956, 319553246, 85844691, 264948672, 28867758, 359424163, 387073911, 18074028, 189633472, 500974975, 270219346, 48229218, 275589590, 497327114, 143792510, 129805928, 714062574, 351711893, 65675385, 275666638, 319844534, 739999302, 56141765, 521542145, 170048342, 156410552, 81518377, 504437452, 452614319, 463175261, 263156308, 2683089, 195806075, 614144340, 272209398, 259577364, 130392216, 43360065, 310000555, 595865198, 364534213, 103308415, 15418005, 130329437, 649376081, 66319363, 392233326, 493710258, 799619874, 354905672, 70620384, 134342279, 297549048, 49502886, 77389582, 40233532, 252764283, 81092148, 356325979, 51032450, 23153687, 119653778, 54280746, 115151443, 80164304, 225740605, 929046119, 276443980, 168517087, 137956298, 89177379, 62952300, 170258168, 24388000, 112366277, 128613038, 97959395, 31302590, 942134067, 877767, 240560979, 802983837, 42170799, 81480265, 33762753, 41802645, 43421530, 173765555, 139341623, 578698267, 281571369, 72238667, 1303210491, 480061654, 235929424, 1793165514, 43572540, 96407787, 132705537, 256960113, 326417290, 299815750, 228722714, 683500087, 382591254, 663287863, 96626193, 451038514, 6951384, 5630226, 223634521, 257924078, 946124787, 332921396, 265151287, 487089230, 518149603, 402743499, 101028681, 2207782, 141408535, 333867398, 1313289786, 137890156, 211067399, 105754914, 137327350, 156923441, 264978565, 419570393, 16243159, 22179433, 63810235, 268478905, 249062, 341220343, 212964253, 14218138, 204486933, 104159028, 20158031, 503638341, 312142628, 420529493, 218865895, 101554721, 126896088, 47047114, 492431780, 155025619, 669151175, 77152566, 43754880, 645832117, 137068104, 318642473, 72063130, 432474425, 582695480, 253559488, 111211217, 776725436, 314787131, 95410092, 105571953, 155525852, 5044786, 260585584, 181456942, 95799696, 315403472, 100405790, 42671752, 127702776, 512243323, 161874757, 156567120, 69588236, 120630368, 89011729, 295229962, 87920839, 203832109, 456575664, 56272064, 721217035, 81087501, 50963927, 175843395, 42560659, 411469945, 225399817, 491267455, 67697765, 542107849, 655891508, 291698895, 582680894, 89191562, 624524927, 55256469, 978400070, 64781576, 22785564, 116648089, 452151571, 205101169, 424572139, 11742964, 608103364, 21388614, 164530648, 691308811, 118532951, 6542253, 32184119, 10186338, 9051944, 9361359, 83083579, 706815400, 457866352, 482606300, 391898399, 418451461, 160475425, 150538405, 161596973, 109871185, 334100180, 29182967, 84587322, 310794835, 102513536, 28293832, 414661023, 569691317, 129463648, 233505562, 298751887, 7403713, 139798258, 37272871, 809995615, 192194329, 623752626, 449249278, 94553344, 734743692, 503411136, 222266927, 534351023, 143194048, 42300051, 128106143, 60921234, 243148292, 444037636, 138777929, 305891406, 84135410, 189686632, 805911284, 831771815, 228114518, 13871529, 363174587, 161819569, 53716716, 19734584, 35582143, 62788598, 68488905, 578403, 46687196, 178049609, 629719031, 960429440, 408567496, 491062184, 458475889, 26255607, 161084134, 1057540679, 73305060, 476822160, 54446967, 234866612, 131742547, 237554889, 81971511, 287165620, 495875336, 64458793, 254004024, 143842369, 3295135, 28785480, 256875669, 763971289, 681131246, 361681219, 43780095, 42403930, 181062171, 99656021, 128032393, 134821175, 8330462, 47142672, 1088714592, 244416295, 78746649, 152741835, 231739342, 74226091, 3516540, 385125373, 467403341, 137511206, 27522589, 24679919, 15976278, 754250098, 13677771, 145275227, 29172433, 446141824, 83743548, 340667124, 374467608, 56208975, 62378035, 625319587, 23379917, 321357186, 871870304, 166773234, 493852331, 361673163, 124953419, 227918743, 110627215, 126070307, 376965412, 293046917, 257171128, 391584783, 51486033, 56370202, 667168292, 85207490, 6966039, 344457348, 864899227, 21012974, 590476029, 447881636, 269737914, 45896212, 87714313, 130962034, 26631784, 71719309, 10145160, 699740558, 306512692, 368504650, 132232946, 198095595, 179001844, 191216872, 26527934, 228297429, 578907658, 506690465, 1136487154, 76866964, 121652204, 46812345, 154884430, 88596258, 53393139, 167417144, 1065626, 40641355, 91064222, 600247024, 323484430, 683384690, 430222215, 1037977538, 15476322, 600176706, 64480159, 494418328, 459303490, 276247011, 110095610, 842500599, 48271886, 227473806, 168485406, 1898631, 41820022, 27926520, 248644688, 37310254, 114733355, 927130287, 10444006, 205306650, 1648857675, 66191069, 1766992678, 486900, 30496833, 9471677, 276720854, 442602113, 327359146, 56669441, 205639650, 190948021, 23379976, 184492835, 27940848, 282653463, 40403258, 153397974, 251219297, 14528441, 1823487, 463730369, 16533030, 616482474, 681653206, 292532214, 403444581, 84071663, 128514841, 453955662, 215447810, 127585048, 9346239, 214619930, 36912169, 40989812, 108904421, 197101543, 321139098, 414470491, 332710678, 1067129607, 94021095, 209753290, 174655809, 134605952, 57670938, 122492530, 475089768, 214019055, 145795442, 235937764, 124763008, 69174756, 177699986, 11286349, 594655159, 81444559, 16161040, 5337045, 21620983, 252945920, 136222297, 527715351, 643675064, 86257697, 372072475, 74581220, 425348800, 58564480, 7916075, 188987912, 52368814, 20323573, 13104550, 138871308, 169040660, 1219057020, 394843167, 12435110, 207742335, 56351558, 266924123, 288707879, 144620863, 32556611, 323236595, 15403023, 35624104, 381395344, 466064718, 804332612, 123494489, 67315261, 445800834, 87377629, 75434144, 98950717, 84032453, 10941797, 188396209, 94918040, 93346994, 307177648, 34047683, 25237109, 23978964, 236980170, 22112034, 248732141, 128329421, 122423652, 209513677, 2714461, 6825492, 329263995, 553180295, 346701762, 191950838, 367118598, 70859703, 109375687, 319033987, 246472340, 97599736, 78546699, 264695402, 214231063, 221602067, 606902920, 239170365, 452502323, 764085482, 577023467, 184058033, 16916000, 971545750, 107529223, 279866613, 432884242, 307998780, 7478559, 49004434, 68199425, 413744316, 756712705, 717974202, 140232451, 293962588, 156562550, 44320536, 278655103, 402295949, 243215505, 76016431, 475276554, 508482642, 555157869, 128132967, 46780613, 195731486, 935179508, 986143732, 165224180, 246732063, 66430596, 197418576, 104595275, 94848585, 666592673, 551210906, 1052751701, 316446020, 415038839, 61431231, 174645416, 348765128, 578222354, 269475545, 40836466, 20714226, 413542281, 415105745, 245429791, 37378803, 408856788, 150403928, 1044218467, 138878468, 443723419, 587316925, 683397015, 200513059, 532548156, 128853743, 559716259, 475753012, 282038515, 59366855, 36680926, 224578021, 458055427, 520737419, 80535681, 249621101, 16847508, 178563830, 108576382, 317158211, 34123969, 172353719, 391551190, 284490536, 81110704, 122603001, 410707198, 420359681, 426203221, 192248107, 58234610, 116672216, 42869133, 33284793, 566262825, 2716359, 75870420, 187557302, 238352540, 608878813, 160259548, 338105986, 167068635, 83754916, 228115272, 344145265, 554862254, 129056761, 842934457, 61958801, 465194474, 21246558, 150081363, 239789997, 174476452, 154410152, 328344357, 2635835, 69648773, 77110418, 84303368, 147874847, 247434121, 144895063, 91383907, 69897781, 149572278, 205398775, 353487432, 387655427, 151482912, 53784699, 175673779, 603941893, 160282371, 433547381, 122107784, 19883907, 718431784, 104397379, 87255252, 376931195, 42575664, 162513353, 26347211, 125297013, 596368520, 430951247, 129513090, 544522082, 13451779, 283553290, 92702675, 136866581, 19303813, 107072064, 265932050, 75419710, 534905515, 120090440, 2424201, 93803999, 92173134, 72829196, 745867508, 361828632, 415266465, 97033173, 448091162, 340083404, 125703511, 487751118, 67072979, 84095897, 10959105, 101395552, 275690552, 719941401, 32423575, 6706926, 213398421, 649435203, 148691438, 238548113, 99779514, 183231757, 670448763, 751301468, 179699289, 408146113, 13254177, 184454623, 467378689, 111052268, 177077479, 385955112, 471559554, 84511589, 451896647, 131530040, 358268805, 55965894, 68372175, 849981563, 163991311, 3573552, 85374239, 28007164, 317139401, 38797084, 552074541, 74222976, 12525885, 94757980, 476228261, 118141287, 208729572, 370078022, 11943441, 7756903, 87376216, 492028509, 85894886, 29032599, 52898598, 188860342, 537657092, 377128247, 400731072, 305301186, 41104136, 192595870, 256841005, 32854187, 66086802, 20356207, 36896523, 181095793, 679576829, 462686287, 263453179, 209003746, 17511352, 298271719, 489217460, 275652471, 400674461, 36527222, 39963957, 224747995, 45433782, 144452855, 140346350, 52587727, 196281536, 236743909, 308467882, 38030679, 111796329, 62163887, 447819423, 70499477, 168959951, 51858211, 114061290, 310373429, 76759504, 172761066, 693011291, 669850775, 94282949, 214098010, 164655241, 30587940, 930457855, 12423639, 371675463, 181988843, 50810812, 587436869, 16452649, 21369022, 14455343, 168712584, 751004, 103313424, 433370483, 152900216, 161242865, 592494010, 132392552, 3063865, 34610298, 521020912, 55579561, 168979093, 91984902, 54612403, 763092663, 64802900, 509231004, 1151257788, 192820732, 15708380, 495883849, 176152730, 28899414, 111653024, 974993132, 6213183, 1007360409, 408104613, 505283379, 7891995, 76497021, 245243263, 114991669, 13475797, 9055053, 213370544, 750584624, 50297754, 220202021, 443390385, 7429984, 183443962, 86482629, 18268688, 149738927, 903971340, 7799375, 87263538, 323340429, 209068838, 109259275, 209915831, 395236554, 54847741, 575465753, 182081395, 838759605, 251182276, 85909895, 437194735, 271776764, 198057361, 43973138, 354944344, 103198901, 54672452, 88865056, 1748391, 117766594, 239272327, 452638086, 37629642, 481015045, 25377280, 778361952, 81155773, 437587026, 975528310, 207537250, 188365830, 81925286, 260563404, 425585473, 9185467, 216948530, 304132794, 200492663, 191699563, 90288765, 213399788, 17341922, 298145351, 19553698, 64522793, 44416458, 39797403, 42458008, 152939220, 41826265, 77150383, 397560068, 857838261, 37061655, 249991980, 428872316, 20612785, 541262941, 247129028, 426546358, 44785046, 517176858, 441952461, 198818855, 281428266, 493439497, 21665386, 21158828, 32923307, 110033884, 31218295, 292634804, 42747665, 406999727, 176805819, 120166450, 725411620, 259905147, 79211963, 32990563, 193076145, 188940914, 271730075, 171414164, 129471866, 74575762, 4862131, 163704116, 523569864, 259508327, 215371, 382884360, 172479395, 443071750, 89309396, 551641642, 135928169, 30956474, 792122703, 192997849, 158152698, 15895465, 695127059, 240928366, 236934420, 45452033, 324681785, 83610464, 199478536, 845880859, 37890915, 10192974, 63578715, 392482017, 191056787, 241664586, 2919512, 201058415, 429984750, 257603189, 605527424, 431055136, 126935153, 33588320, 118000388, 140804518, 1223731280, 375391265, 195401873, 310600698, 3820263, 332906552, 181517638, 312180843, 14180355, 21733227, 497361010, 186862857, 26430552, 122995334, 62274156, 68565690, 139295479, 145270062, 1358832192, 291501067, 382909955, 375207539, 746144611, 219351470, 123950482, 233833776, 30062266, 368515138, 322405317, 63279222, 45140039, 154215640, 885185450, 146334122, 549685757, 347056733, 567522538, 120820816, 142987510, 716628202, 56090682, 1219826, 151933934, 8370560, 124926698, 131639999, 79422044, 200008447, 439587215, 1688887747, 738246894, 101072214, 373203758, 261424451, 260039201, 34564801, 61209508, 172837509, 256778606, 282871438, 309881573, 196430874, 486547013, 280112362, 751562614, 330199010, 34824207, 458004560, 458127307, 205333586, 184744503, 378059144, 207961673, 304279858, 414072132, 289306372, 18248632, 419756631, 726852817, 259478896, 417392708, 546424126, 727188332, 208324641, 181689192, 96586337, 141168073, 157587962, 402733631, 6731642, 26920784, 166247478, 210618627, 722340781, 523654253, 70594543, 131930735, 1043527425, 429435068, 62193937, 81735439, 94058667, 879738471, 214365733, 343692209, 184350899, 63164022, 416114259, 90970290, 41418675, 45459600, 21285145, 383921398, 487846279, 121644687, 239094, 40405037, 398459766, 158018125, 667069049, 212260388, 208654634, 127615361, 25372943, 67006129, 1119688034, 19423806, 252197925, 892850422, 543285739, 454397170, 989496885, 651850105, 200753217, 199812800, 269720171, 6361518, 177088434, 50025518, 99941273, 125883821, 20688768, 39071420, 38957028, 651569286, 185979447, 579046646, 14182846, 5851207, 107211343, 925139550, 225336111, 258319264, 26757175, 140095302, 490079498, 22218359, 173689565, 159542375, 421333992, 113281088, 82305382, 194333835, 1197230, 207895043, 10994060, 131234791, 221892353, 198776803, 97699958, 260934539, 611385148, 128000650, 189043169, 407570960, 92307958, 376155875, 293777920, 112535518, 400750304, 364613552, 16310014, 25817089, 120173884, 44835545, 185154842, 59827776, 1072854238, 987131170, 135440004, 198064547, 18715039, 141023227, 10127430, 19998896, 792112437, 21553288, 62208253, 80298550, 115077746, 192549007, 569684369, 75836129, 595430900, 38656394, 7356366, 53983172, 587287485, 155960159, 85578308, 142312236, 54439142, 108277752, 187779007, 211058619, 71599414, 398439, 182123028, 65234715, 346114824, 589664711, 359136852, 421375654, 94779798, 399966870, 254183457, 75506327, 246061507, 458694594, 188073313, 797727825, 22151766, 38102104, 58193596, 944875893, 4005370, 943952510, 44438821, 625302214, 142070736, 51287350, 101220116, 242309604, 189224274, 223869096, 586079916, 361570015, 101766493, 128293920, 326861406, 10982538, 4637593, 156449012, 233094514, 101405539, 897368379, 57366626, 98891230, 100845238, 382744134, 220532608, 81540563, 490091328, 156095913, 61659589, 218958789, 163303123, 691373698, 164710668, 119129741, 109450781, 268724304, 146641597, 303963904, 39976605, 356436246, 100941987, 264508518, 13903840, 156471706, 107813262, 25482988, 164836287, 397391084, 298353033, 198046246, 178383670, 253933225, 231814772, 430239813, 34240528, 585201002, 444376112, 329545862, 106664605, 3844007, 82532062, 410946937, 746882640, 344875803, 593549748, 5784301, 118043387, 16521354, 159218896, 74563819, 424929273, 384021496, 546081719, 241625294, 809155275, 59901385, 309279891, 46208512, 342499003, 29277401, 150106953, 62024609, 167098448, 1798678, 375734825, 234888313, 601547701, 221802119, 10548739, 940498210, 105469663, 96981737, 375991776, 81923027, 400255859, 133727209, 8923732, 566998992, 161483539, 175591568, 34792272, 1425203675, 1218104251, 1258366456, 238379417, 313168426, 751499510, 5682343, 503462271, 289579315, 553175447, 86345737, 255986570, 109930730, 8204117, 123172645, 295616931, 690853982, 304760795, 328687631, 275756906, 965067, 380491925, 135157479, 4048315, 204126760, 206305273, 13109934, 142349732, 358246781, 86745127, 88740505, 175613925, 3731051, 85322518, 19101080, 325338343, 63769961, 488586911, 94781708, 259594026, 164909564, 103884084, 71718959, 425445828, 116054095, 115975106, 63597901, 6277695, 8037638, 293883234, 293674732, 408223360, 147644390, 444512746, 427267835, 326756565, 113744811, 240945293, 535345754, 23004933, 544761782, 42173783, 221774521, 267439421, 48740844, 128031225, 22823614, 127239377, 905237315, 127887331, 367512406, 148402742, 323102745, 1051765449, 924688320, 431061020, 107878852, 52954831, 463903065, 30920869, 499460766, 72220785, 593133118, 4289272, 12353416, 153276548, 341529425, 40094144, 7482451, 235247110, 934553978, 277578179, 174229294, 88138335, 86395619, 276872838, 140534644, 118419760, 393771415, 125421151, 177642748, 194255614, 212159901, 54572959, 183472461, 193911942, 353075048, 229344527, 156508829, 96652434, 308607679, 9450322, 207431017, 104265846, 13894567, 108142658, 379657232, 394813254, 66250158, 411870932, 28977720, 55883902, 150347383, 232732640, 169324292, 161653585, 956535297, 262406895, 444531307, 362657907, 367230122, 93135264, 79396677, 92584366, 68593624, 373414383, 217033713, 328126628, 20640062, 366442964, 2110716, 189103216, 405518871, 93624740, 471736585, 475157059, 264040083, 108617214, 114938528, 500021780, 538619249, 59563702, 407739858, 11727877, 404968971, 1582502717, 183472461, 372606971, 260450265, 14508124, 73608012, 122500071, 26540557, 183859346, 140039983, 18904001, 1446500968, 870604111, 398591741, 19319043, 328256077, 408036973, 229733443, 71282301, 466522648, 43920146, 17438268, 160560507, 70883193, 46664550, 11876683, 27572441, 119198449, 228243963, 589429634, 582257764, 226520341, 130005703, 130288219, 752228095, 54865128, 262827177, 97952358, 87807709, 34384567, 334350047, 114399434, 32994327, 146940423, 545259221, 727466971, 36506647, 136450601, 190685339, 119954180, 67595536, 140648943, 50545638, 146751433, 274173534, 107983268, 64223439, 178590719, 314183709, 413223244, 125999045, 229995922, 29418321, 189770446, 330786916, 11834094, 315870468, 108596818, 115167974, 340817289, 161926275, 445015885, 452129727, 102335403, 70505097, 151657411, 77382814, 30231447, 475837851, 190035176, 65064279, 14540031, 292394637, 131315512, 67463697, 97064232, 168626891, 153262817, 207097704, 630652417, 931278991, 653304217, 69608309, 20249661, 49213783, 741226333, 535858436, 251103597, 84301421, 873487728, 106164581, 170846729, 395477970, 591161573, 416151830, 487814, 103947140, 414648316, 521503744, 616882747, 11609228, 20039879, 816644852, 328483129, 62318642, 687784479, 380481070, 300562733, 118909719, 93962233, 231711657, 20956953, 838445265, 441043721, 42919934, 35386677, 181676621, 383401875, 175256062, 384517032, 343305585, 217029255, 1056547704, 182060925, 157528773, 195156623, 74611807, 193330202, 97001655, 28090754, 142956965, 26487608, 676848334, 32350011, 431789655, 36407883, 9953181, 97994196, 432636474, 41311450, 246758311, 36459721, 65919462, 97877204, 307523744, 32450807, 52425132, 51226526, 556370683, 287128223, 308705241, 243166023, 63731735, 292640793, 486380156, 138749345, 53432246, 472030390, 668025959, 70902384, 702741262, 21868260, 105940310, 503417440, 57152252, 556644051, 343538497, 1007228822, 53309899, 84743564, 34063225, 202482597, 136105855, 23927545, 484000911, 472605540, 59613607, 3407772, 372293709, 462798400, 297182756, 152555684, 48672646, 266302218, 501713458, 373048888, 8954537, 399915898, 231937733, 321535073, 1807434, 189081769, 402066331, 22722775, 28477841, 338390005, 835083285, 464152409, 317041786, 578076623, 494693468, 448961067, 143272084, 73442412, 611479153, 1573591934, 454093910, 500480894, 2635347, 224024645, 143938445, 149771988, 369798245, 233425684, 439054457, 241667492, 108194631, 488551454, 33247207, 647177314, 89859235, 35293866, 48154469, 16856912, 819249684, 3577578, 403270164, 286871437, 235540083, 170643133, 208717247, 148921486, 8459444, 325356564, 143243110, 303269878, 322802183, 69917180, 84580002, 164266041, 425713130, 310359354, 269577018, 92474215, 83080433, 155091864, 269319638, 114103745, 6847328, 371940359, 1320751, 99478297, 553989406, 49735497, 33979857, 229138146, 54047152, 608297922, 70390383, 390489947, 32818481, 395827249, 758327252, 603640558, 172220708, 117383320, 103416631, 682966665, 235126040, 239334779, 127962425, 36495914, 86439584, 3472075, 145549820, 91883994, 59920881, 14298306, 130277795, 68508376, 434314073, 132426929, 89409228, 147655697, 219489282, 138102776, 1578725829, 180364859, 95156970, 1003827751, 1119101, 47414369, 369309043, 777849894, 15577661, 934734673, 95385849, 35681554, 594290850, 267581147, 336455246, 4947291, 380936930, 359690357, 8484378, 695228652, 7624088, 1044029466, 1010819577, 47080349, 61511594, 200913177, 214513721, 179737408, 321721177, 30924694, 593140701, 157533601, 114174751, 742504225, 146299815, 115888988, 504582153, 49217233, 12029670, 283433277, 580918964, 112716876, 402303879, 401456372, 343828712, 181300198, 209910081, 175676827, 69876119, 228815494, 44768363, 1494965, 216234634, 566529624, 48862865, 189472535, 139698006, 338564295, 364451037, 513668365, 228984835, 128914311, 94357599, 296543857, 102916944, 338410838, 5232136, 48669975, 268657839, 447915383, 224250711, 195668324, 625570643, 112712137, 11464240, 263252485, 481923017, 235635057, 515745952, 447890037, 635515844, 1938131, 455916575, 62529797, 582958641, 353282061, 336117769, 10987823, 58854845, 61655536, 598813927, 196534627, 237108638, 56209835, 55843147, 284433373, 284763742, 835359334, 459163127, 90524699, 391009331, 130725067, 437216218, 297380266, 173874193, 241968355, 11808819, 99875880, 52717749, 609176481, 548765687, 480364076, 628538704, 153696806, 11169490, 207396952, 49287021, 187803484, 231784852, 32183121, 330852093, 66427399, 268426729, 93843558, 140793632, 460204599, 795864115, 446283748, 199144801, 194808302, 27269903, 10712508, 281743300, 280883214, 331223114, 36361220, 74655904, 186198617, 55156561, 49843653, 135726966, 15546371, 649862, 13500722, 181906260, 420907167, 109759769, 140861220, 93744423, 658309335, 197739797, 373825539, 38351080, 44697901, 425355215, 91802055, 343324778, 181677361, 28278561, 75603539, 2097270, 778333181, 89895140, 139849143, 241796637, 363457418, 88595661, 236015029, 1247252508, 65053094, 376850863, 131489513, 85024852, 188839294, 54810534, 192607863, 94473678, 197190783, 679122564, 111461608, 54116138, 156418917, 25724603, 101836938, 112912132, 270333225, 117177267, 18054848, 36296494, 60594983, 16287309, 575077848, 42686322, 25852467, 91438017, 180289343, 234130669, 102797472, 20643453, 228038049, 204603743, 230794033, 861709831, 216270380, 476047612, 599185932, 18113196, 558822776, 143004155, 1138046966, 65015129, 243013450, 51823467, 15142541, 289315836, 196427135, 314007167, 385035566, 108443510, 454460781, 890885380, 133222215, 321985609, 526222926, 70646751, 357196185, 27293556, 450599182, 435019979, 50243401, 130819400, 109747528, 183822874, 26426286, 589578766, 105925851, 1154770659, 826792048, 60351361, 42938990, 312654994, 48344450, 365135792, 254088330, 924165640, 138492410, 37647153, 287691213, 655943738, 63808805, 67379221, 562426473, 116111264, 680135342, 177874272, 234497906, 139233470, 233627057, 135299993, 62229102, 186199101, 202684312, 92260940, 366204650, 124938497, 53156487, 458585367, 119209749, 573794552, 392823589, 78940336, 226582705, 727038849, 1693522740, 53918059, 621834124, 43498350, 16950824, 98571242, 17395103, 85496389, 202284741, 312717721, 262507729, 59335379, 681164179, 831334822, 116207302, 187208561, 28010740, 219339559, 372925121, 266244022, 507734402, 183478575, 333415, 403005377, 101165954, 30739122, 288974858, 477095392, 121051597, 1020109597, 387905035, 31138128, 640396374, 143468626, 2016634, 339352566, 170278922, 458227025, 360218298, 1862545803, 189666063, 120876187, 782072351, 149765282, 18254034, 94630666, 304267850, 48350396, 248490528, 52354459, 424010100, 60322356, 146556551, 210521870, 1029730200, 177131325, 137170286, 130934358, 101162745, 192282666, 121329818, 470372672, 260420802, 5416412, 73893488, 126948635, 359040196, 332613814, 58366029, 173563321, 164287772, 160697142, 237437845, 138674862, 264300064, 283989336, 159950158, 97475466, 456845672, 14520988, 70180313, 119782169, 78629547, 282406377, 627657964, 70975772, 38575462, 97129714, 258565673, 159430875, 222472579, 351815901, 86126691, 724606878, 372476096, 82087894, 99440386, 72327251, 343809290, 188757126, 334478520, 53247535, 326608170, 95531454, 108204191, 107585045, 323762711, 407253798, 270328963, 196074599, 233946308, 537071483, 565288882, 484648361, 194542426, 202745719, 454855187, 281349469, 234208701, 54258567, 501509781, 42211227, 290953288, 34337918, 21875657, 46932981, 129859744, 39302185, 135607180, 29995259, 275134047, 522685849, 9290155, 113573905, 632233700, 122228593, 147874568, 249866050, 604467237, 16113547, 552746242, 68366946, 298739143, 185561576, 444117371, 734975103, 7950884, 263367312, 108733026, 119649335, 218243831, 52837506, 78485452, 912226239, 12954640, 108215238, 36452064, 52950842, 169400267, 199032145, 89956983, 523074261, 128711445, 18652274, 808905433, 90439752, 152257976, 35169229, 274371151, 21232118, 711633032, 192917757, 96085407, 246511944, 383119837, 31189862, 89857321, 417928821, 177177858, 122288996, 610734819, 416411045, 93053133, 43858345, 377102432, 111563888, 70465690, 572679597, 83542151, 159126080, 44736364, 215658012, 14648983, 89218134, 259251885, 374666003, 102409929, 432801313, 558509769, 846740166, 263280113, 438232779, 66111766, 301076601, 44811912, 1028584458, 203992250, 154795059, 194743805, 387412076, 215843123, 143061552, 215454878, 501227568, 100474473, 15130017, 729117706, 210265765, 309866502, 60342622, 360250244, 237125650, 187073804, 421239470, 546395764, 546754212, 210878602, 733384148, 145528630, 49260929, 274705865, 421304974, 961977150, 525702617, 168449908, 36143257, 236476955, 368667732, 100606153, 509039963, 191811047, 537664452, 3069975, 446939583, 164848044, 104949792, 255511132, 40833997, 256272265, 12943709, 25551653, 117192677, 269578850, 111961259, 602242159, 77736947, 63478178, 154716897, 55357140, 127221827, 249831530, 470900372, 49791686, 106028394, 152897606, 129952337, 161597659, 392438120, 566645725, 193254423, 258391793, 39808767, 36348771, 266506003, 320515397, 236418013, 821143524, 99985097, 172966377, 225388690, 118981423, 223938390, 297810399, 1287222630, 637088378, 222936148, 1280689845, 539111824, 372772564, 52576429, 74816863, 29682693, 375589582, 47093721, 151360793, 55718705, 93084532, 268086413, 836394332, 50633762, 42005885, 228904591, 99501706, 85030527, 60982172, 1811947, 249599673, 630876699, 18346913, 22492281, 67091176, 148133607, 278887682, 595951698, 48150519, 96268238, 61223366, 45443098, 49098919, 829668306, 108952433, 46407873, 16385388, 483954654, 103396902, 73164923, 6141023, 254628821, 548110892, 348151178, 204377762, 386957463, 95894759, 496502440, 410497525, 77932562, 244488899, 132104477, 631840401, 292654688, 65808132, 36194306, 24718150, 254107076, 389775983, 145504, 656454518, 939860176, 45615451, 473823686, 693084045, 73051570, 1178434449, 353419525, 20471312, 15366892, 340646784, 499429537, 144704424, 110511637, 227206460, 802445045, 507947489, 259596286, 208883896, 268759149, 259837650, 40031224, 394051710, 199912386, 214804267, 1166186724, 136963769, 131413163, 114539443, 48581303, 131650607, 2431325, 39050463, 92800971, 488350236, 443163649, 87771783, 228944458, 91348330, 28488228, 127379301, 1975473, 779053879, 424782652, 113498960, 82468476, 182106099, 57916935, 268844273, 408506010, 229689796, 320192, 678745438, 113417401, 200587118, 66473129, 22378903, 698824112, 250329948, 149635035, 491737139, 1377503456, 54815802, 993172390, 9491394, 6124353, 203683700, 101026060, 113472946, 460619486, 143611864, 344171774, 230261759, 30616340, 195397315, 296847704, 34518273, 380882124, 253797210, 375748102, 208273608, 55407687, 377048622, 62695578, 87983570, 7964350, 149784416, 30624915, 326403706, 9311609, 89493025, 210472417, 402270359, 169519823, 83413049, 220170868, 181154458, 430500591, 554559972, 484494756, 259072557, 9838711, 219201399, 770546743, 597795057, 465601484, 254417023, 3460954, 233848081, 68041658, 390064762, 34691112, 141817888, 84134124, 107310695, 154798165, 95090705, 189049684, 212003211, 501126, 91176397, 474961851, 211571292, 17908605, 94891128, 449233536, 262713366, 206648036, 119647197, 75744492, 34551977, 348568944, 88870214, 149579448, 297925614, 51310162, 1877019380, 89225507, 734404402, 233259344, 189683312, 324371991, 160582575, 293936268, 944700024, 201589010, 512961793, 83992037, 9180828, 136279421, 5122780, 104161639, 1001570262, 100615798, 38778753, 6018476, 554716370, 189888919, 98613060, 71209739, 375291183, 150054649, 864538640, 410297423, 248518575, 267230713, 328143671, 247896806, 290875771, 274731710, 721010178, 49473868, 112340699, 129212491, 234240434, 16812983, 646822456, 152877679, 21726852, 316243656, 233299159, 500482799, 385460188, 218379742, 46038901, 609180895, 232152844, 8446535, 138781890, 270313826, 3335031, 631824862, 17439986, 342460929, 312764281, 143945374, 116153672, 134278571, 4855052, 384476105, 409662072, 802923443, 304125043, 553835967, 22437352, 80849629, 728276704, 360264831, 156905525, 382842676, 151287585, 6328591, 249203999, 57544083, 106851510, 385791241, 488490990, 286153208, 209468041, 74245629, 92051389, 216799916, 604954500, 28751775, 86278168, 234858563, 195143906, 125946126, 346618756, 89271584, 578464490, 190228620, 71097278, 221609605, 128602549, 16963206, 226824309, 101290026, 431948205, 3529595, 20664675, 70430512, 412276759, 149603397, 50694452, 530599736, 56452343, 2705350, 195397371, 352871792, 6549, 442133157, 9247113, 605016621, 287486446, 15783073, 68933497, 51298561, 53256471, 812611754, 163853729, 17767345, 165030958, 154647592, 264046256, 238198179, 185612167, 777881534, 282528161, 95397070, 850453208, 172148366, 87525202, 181282952, 619845464, 59460805, 116662805, 25407702, 845168741, 546764501, 226600999, 328131093, 148694894, 116591303, 115160677, 23153483, 46091516, 229892998, 1333349, 110616028, 86411063, 63339916, 43669111, 177008799, 135549041, 199584378, 19798470, 606601845, 170127760, 343668741, 769384951, 51867296, 58370766, 938478819, 294943322, 499493034, 49492718, 391675076, 732722171, 35985533, 130705802, 78371447, 232418848, 446926246, 117240159, 706805314, 275592287, 192389005, 187929796, 134948688, 244447590, 404857598, 117157705, 369852644, 2671485, 372281784, 85373538, 22675538, 134510677, 180858580, 215187084, 24015627, 294295502, 183500696, 15260660, 22669930, 111394852, 959855416, 506653421, 86102422, 501892563, 1084233341, 86681536, 148607140, 209352316, 127542651, 116990257, 720483316, 592118486, 249404856, 106235233, 179474411, 38047907, 150358898, 1106788456, 41128539, 52946167, 1237085, 954335713, 228517062, 74790473, 198609841, 140310899, 643638453, 4883671, 166575150, 359981955, 118825413, 54161985, 109646462, 128511765, 7774200, 102625603, 139265081, 162278829, 526366703, 410088193, 217530772, 208062872, 299895154, 46929720, 539872544, 642647709, 11214073, 93846985, 274927794, 54245457, 67525172, 278387132, 45017127, }; #else u_int rands[] = { 30767959, 297367425, 0 }; #endif