147546696, 2946594, 6551218, 530784401, 3604624, 527837807, 524233183, 135599024, 195844903, 186952646, 138286223, 220371189, 707233512, 492539359, 301701444, 118728308, 117561730, 58576510, 334820831, 54102855, 160154898, 352056497, 159915072, 604355817, 541818609, 387306047, 747227320, 709055096, 2621065, 138285736, 138285736, 469584533, 818816165, 818191425, 570040933, 127840974, 5602681, 165989355, 160386674, 339249000, 260998570, 69672583, 139123621, 279173685, 198966748, 186723451, 321424530, 418554280, 460131043, 32809323, 783657452, 69984672, 96980646, 474345547, 486850812, 454525767, 170253359, 472525470, 699397942, 69139879, 794227247, 519786523, 457966923, 363607329, 313156210, 84915150, 120215964, 922964042, 764051005, 191145126, 250566522, 292477252, 417710729, 325842722, 483686019, 188601693, 65920215, 104671005, 124328748, 362727010, 317180432, 497537096, 30617421, 733418976, 797123649, 259914025, 316638914, 333663180, 444732833, 682750151, 653315623, 297746111, 652471996, 648824649, 639093623, 502446587, 313085420, 195388617, 243383348, 376193609, 391750522, 681980032, 541362270, 75244336, 595861992, 662592696, 15949688, 36775420, 11148048, 73715748, 303687893, 303499441, 162214876, 414056910, 185094425, 368819537, 479865973, 822888118, 249099749, 550224914, 139870924, 464695371, 487294067, 51918362, 326313424, 567089913, 755520254, 649193658, 495463992, 363183925, 471961557, 243132418, 301143802, 248491199, 338463551, 101566365, 113279028, 359287626, 356728089, 193131361, 209954113, 628058250, 94646403, 226708325, 109552132, 111234604, 69132020, 271069935, 367235933, 522044219, 453013574, 99839991, 427029530, 171914046, 19801833, 452355346, 180069618, 167334519, 99240344, 183050597, 356409850, 448830519, 511276467, 109092727, 241166767, 81947601, 413493529, 649368638, 728656112, 461993540, 536813142, 268081069, 8441399, 199979297, 191537898, 640945323, 224819363, 366535021, 518458899, 193693082, 831627219, 8692029, 504909676, 504909676, 361195761, 808478470, 290891610, 469075791, 213628910, 177892416, 806111964, 273790702, 589636008, 762953647, 876532085, 814076392, 384866918, 412231567, 823302181, 845847060, 46813958, 829677009, 118318729, 199043286, 97455991, 208622879, 536192012, 198168491, 161469451, 442760718, 531241872, 18239620, 459163512, 138616715, 460465811, 405142428, 26094812, 513937846, 924869198, 21950552, 679435889, 341747047, 50029926, 544700262, 527797825, 69436767, 260551791, 34222203, 828659353, 3368500, 819278725, 815910225, 62870753, 28541761, 50522425, 376734866, 435563225, 832708135, 747446546, 37247050, 787493384, 692653479, 121250148, 136449311, 368779218, 16418430, 82181395, 393779803, 205591638, 32755155, 48200691, 469098733, 603384419, 571696255, 471687105, 497434374, 456566910, 637593147, 883904122, 693536512, 465385079, 428344934, 172833858, 212598565, 405296181, 37625389, 289835923, 854712501, 627131424, 474151204, 18761949, 85968474, 94304673, 416545735, 250031223, 28335294, 245436854, 277513474, 481851426, 588659753, 276344636, 134000187, 642696495, 372072146, 243096103, 110640138, 348430902, 302027528, 85089944, 76080930, 333425999, 241495466, 380102815, 72462772, 661005136, 330597126, 100221627, 619621068, 494984982, 27929172, 252971979, 698943088, 487311393, 43156865, 432012201, 70225403, 322262719, 370848974, 583262712, 354047332, 140503199, 409238248, 65130566, 293336712, 570172792, 560423708, 154106523, 166552252, 56940837, 456485825, 100769157, 740781559, 101935440, 43771162, 53604906, 360232175, 402279615, 124218628, 848088604, 547672016, 121989480, 467739800, 79938814, 245461698, 279135016, 600318674, 470941367, 143789826, 358181708, 788515049, 701717884, 257423668, 206094648, 783632401, 313672367, 426710622, 89420277, 492950945, 37506447, 793031652, 923905864, 461007743, 34268146, 328107020, 330137089, 391004992, 846994618, 964390196, 619734073, 380890661, 424930269, 395891957, 55360774, 97315411, 41012473, 430075893, 397629087, 30375806, 583410062, 29595385, 532396171, 139313326, 122679081, 942672764, 296993613, 133366730, 329292754, 290833640, 64080228, 709535005, 12717319, 267322679, 294055883, 327612654, 435925530, 89048771, 534751309, 34280190, 964918385, 310049642, 224047202, 321999992, 146657842, 437588277, 172581047, 584676677, 352050884, 338308407, 12272624, 793062731, 655525665, 308952007, 81359029, 92210680, 731734529, 90445334, 140242313, 143301538, 172219237, 267784890, 203321101, 51891803, 226219313, 275402696, 271146569, 164040195, 403274161, 132873529, 235441561, 322940893, 509551036, 160865243, 213716667, 141314846, 758598682, 51770709, 736745684, 27313534, 361903144, 184059086, 168859538, 137078232, 607844416, 769863444, 799073543, 13114002, 769337630, 337201188, 313708238, 217254246, 756010922, 179106024, 284783725, 135137240, 630080168, 787676371, 772433475, 214264719, 287368114, 110771738, 142700803, 692590853, 517922444, 619258766, 821104947, 707797654, 667326508, 232120699, 412600141, 331431859, 55779924, 577823169, 18840881, 847957036, 299153236, 81334578, 550036491, 295543270, 552627195, 448414228, 389906767, 116563785, 563325464, 13871690, 682232457, 179209540, 251283736, 483906893, 60255488, 298984310, 257967356, 37081620, 310811816, 221067743, 668255272, 658255444, 42536590, 736694156, 715181618, 722926397, 378650858, 603838420, 260538253, 378479169, 248064648, 219614766, 182274496, 154944644, 27060652, 303109812, 265592575, 543031797, 6864496, 469478540, 469478540, 19877823, 188866863, 237935077, 139431358, 271238513, 451347818, 593338612, 395568587, 150686940, 676550607, 364644557, 490294553, 458682691, 275011403, 775963113, 124877493, 80021503, 754791956, 896402454, 614492787, 170189079, 109821431, 590676496, 266081155, 155981355, 175206091, 481213, 310543875, 310543875, 313150098, 619624001, 94795372, 43440928, 73482194, 348876125, 509871107, 718938100, 253964639, 40419492, 131597847, 336608635, 177288297, 675129989, 484029047, 60340176, 102556715, 204168778, 402188468, 129767703, 599853394, 652595226, 626702292, 588767974, 247161420, 507503713, 559065431, 285698329, 32737874, 117792401, 320215726, 215701195, 397729779, 456789856, 358519212, 294142767, 95804183, 386889750, 722699442, 132632416, 44859043, 781158838, 474292216, 167840239, 609643959, 87427200, 368678572, 518303208, 574267469, 26415750, 233550534, 324587006, 139992499, 382674643, 399644646, 454598921, 84177486, 375036269, 288574867, 386102452, 523358056, 34498450, 340871464, 3429589, 90790980, 90790980, 188623908, 702951632, 179088538, 91445022, 737447260, 221727416, 106769613, 143474578, 90099476, 477186924, 791052065, 673287043, 810891683, 972782098, 830708447, 775853446, 250200894, 146128115, 596560905, 66810098, 43010353, 242951505, 287309205, 181652948, 331668611, 384060094, 114607215, 271506871, 434570737, 300482859, 489475296, 155864960, 44172683, 43661408, 341103859, 143309749, 458148366, 76315183, 106565280, 365870476, 289441762, 224751147, 39891309, 106349349, 160128393, 562703082, 629357330, 834439874, 188520095, 705835271, 904630325, 701042615, 210838820, 45697509, 66192625, 145181148, 116693193, 668418444, 352813893, 283974093, 757797361, 476015506, 226464471, 332011708, 577793895, 545576251, 423650040, 521636633, 123987984, 302485309, 229769319, 236137971, 259034074, 619192366, 16870506, 117042003, 91189601, 122942912, 379471306, 545532877, 360631656, 260418619, 216386004, 142007527, 317069065, 914268684, 403835042, 63224045, 144208683, 363059356, 9247313, 322597309, 322597309, 254917514, 571574424, 150896532, 125159875, 20006734, 317821208, 103978935, 591419025, 42823467, 17394381, 609380235, 377626824, 345165152, 54632254, 374184269, 86439154, 121908130, 285119700, 746144175, 777094462, 735351543, 514814438, 197862070, 298361305, 736946773, 714439854, 741475593, 465040829, 258239266, 374704348, 658238178, 29833025, 576050992, 193216377, 221908676, 271549322, 209207079, 537732265, 39327293, 125814032, 574679890, 625129154, 89267571, 546866671, 466729881, 567623232, 237563348, 234792466, 556318893, 406691805, 347571997, 637569689, 208380501, 806844554, 382575981, 89672417, 56653862, 183598889, 727680516, 186715425, 741555465, 174243282, 275641569, 213833467, 283019079, 380055906, 910465755, 229338351, 268787679, 200109182, 224250858, 452023216, 531857969, 363999891, 229679366, 52093907, 346328707, 103157784, 667766179, 11470780, 660515857, 94648140, 735096821, 291436891, 337396806, 305028507, 430242996, 363667526, 132991469, 431014260, 296897116, 512517504, 556346399, 218558437, 179906915, 557922519, 235039619, 90847081, 387130796, 34798540, 367689669, 539008462, 522987217, 207763426, 244054207, 580022081, 39913804, 135346122, 342172934, 295802473, 415194316, 745262988, 356916050, 226966776, 146038155, 140800516, 204897042, 478179008, 30136896, 417482723, 631862421, 16703764, 660391935, 325908352, 653903696, 195850534, 12221868, 470248380, 48787138, 939636460, 559945121, 354709731, 157366225, 417143977, 292596643, 215720848, 686261345, 841268801, 550567693, 118615998, 466013033, 327994577, 232573451, 519544486, 75607745, 287582250, 216433648, 670799218, 714745052, 217247034, 263205809, 752393229, 129837321, 615189451, 339869545, 599855391, 448678166, 5917998, 407036489, 401118491, 24319562, 757950814, 579103404, 53557034, 315377245, 9542809, 50414295, 40871486, 11871502, 46926567, 268944819, 544306792, 106849330, 366104019, 556192957, 257114976, 501517349, 318929244, 295269443, 192118783, 781493481, 478364931, 60297754, 359567258, 584649213, 390997604, 465008974, 737278546, 48029726, 27548432, 255164925, 162794074, 456997379, 430035564, 187614444, 21992451, 195289850, 818846406, 755570135, 354879608, 152581607, 289231665, 41015478, 463166715, 119962392, 260227642, 287985968, 236178739, 354934404, 239621801, 530229495, 522187589, 263739245, 9995176, 442894443, 432899267, 242829261, 643716053, 83245744, 619610652, 571483604, 81721696, 689606451, 251800264, 428424314, 756576969, 559047422, 172612061, 579620324, 722586035, 868133031, 786925019, 676469612, 253114042, 218812606, 342708853, 656540171, 199585466, 651223702, 863349400, 767004277, 349097046, 459504831, 65341823, 299587919, 557361763, 633130719, 151665725, 145403574, 62738391, 241940640, 65030056, 540932852, 613732463, 415423958, 85230997, 50452431, 648341442, 118563414, 119775244, 356559334, 78886747, 157632105, 285905802, 247185250, 666211562, 146003322, 523807538, 560585694, 98003693, 764866497, 384348026, 370960306, 562311511, 74433716, 552030491, 308946948, 319457134, 695609182, 11129747, 318291484, 318291484, 573079083, 882859099, 882234731, 565380172, 504600016, 486898188, 595481406, 161623066, 378101401, 207961082, 119309926, 145194759, 390176974, 305813396, 57026933, 681552125, 731965908, 198703114, 897215880, 584059751, 283785699, 494751525, 161055112, 808524159, 183465668, 95897383, 124699895, 72603575, 254260838, 157876321, 478497555, 730820334, 167509858, 722611376, 769553793, 157768583, 630875677, 424301229, 468461854, 210860958, 486996193, 499910507, 673122761, 508858203, 166036753, 87051327, 369956856, 748024563, 457945934, 201185770, 23016915, 34365442, 190297799, 756093956, 863403116, 647203347, 504617505, 111936027, 107414907, 206352409, 70162116, 705064715, 275727158, 110619159, 770849247, 377882314, 492250670, 880130087, 91907811, 458793742, 99654144, 456666113, 294054734, 311440232, 121700697, 170930649, 318445700, 226747215, 198547746, 288212515, 414167938, 666244151, 845527060, 571120003, 148743785, 80403372, 14386381, 422746034, 121307344, 378554941, 80756566, 188843875, 245236783, 362834911, 264416138, 23858559, 118428847, 24156477, 615201801, 40450844, 356787210, 67898433, 405495068, 5350929, 25016747, 19665818, 268994605, 141957978, 465594567, 144096028, 136135249, 682558248, 430820276, 544491970, 707398613, 109131603, 920068024, 247605331, 88194286, 195229535, 262423095, 696968177, 54802325, 104573573, 544778949, 336024454, 6262078, 629647015, 623384937, 68838327, 12026902, 381603021, 685414304, 670725589, 522862418, 77124518, 2841640, 38552955, 35711315, 359187342, 581056965, 299638708, 86594108, 296901017, 177324704, 207764236, 353772968, 222262305, 17938070, 8493256, 238051193, 229557937, 349650334, 92546800, 588844767, 72395714, 132752183, 179567381, 305877709, 369346667, 418121507, 183951635, 335427401, 53774512, 102399174, 121360209, 574145418, 649684130, 780440135, 835316567, 440408549, 298117035, 68688455, 275327468, 164794463, 222571735, 769079305, 821218694, 242103888, 583721364, 123794895, 429693537, 209017861, 252106520, 140060403, 354420573, 210371590, 932901665, 367452031, 115101975, 212853088, 401834108, 856006053, 383870959, 88129970, 220129623, 695663035, 232031119, 299009789, 493348984, 474293968, 44277226, 583176729, 153475123, 44244557, 199250427, 931665950, 487757229, 120893175, 299890897, 88702695, 958024821, 495723037, 149191762, 79219721, 330607367, 339531426, 150141930, 25001052, 336196524, 100952424, 6777336, 500430802, 493653466, 347426619, 33825110, 41856010, 78582381, 398492268, 709410031, 725308948, 206233482, 53116390, 269116524, 351877775, 513615064, 401683685, 95822652, 204413749, 476375953, 12224639, 342857153, 117275750, 240772147, 813045037, 796831361, 742445642, 792512730, 702426860, 697139210, 657661694, 323458956, 676350402, 584870388, 700927993, 322923586, 407436610, 538788071, 392367497, 351958144, 281103842, 569877149, 36679340, 584727293, 635446296, 793157831, 51701823, 303627900, 197986703, 477108106, 473730284, 74342473, 402934383, 200707238, 156075009, 205314170, 425286112, 290736336, 390736462, 237538524, 55674306, 387428729, 21887560, 256776660, 227692163, 225957562, 227599363, 503048745, 539321619, 181072668, 113010668, 65162606, 135465326, 296455714, 185287380, 657891677, 7170073, 663944673, 656774600, 457237582, 124045129, 692663897, 124309043, 802582569, 246679135, 217852927, 229027911, 384749664, 45567568, 369932430, 390343417, 41521795, 533550483, 176787125, 99228709, 403582039, 198309358, 306474576, 235479810, 441332250, 63676782, 197244790, 422363427, 58610150, 202656629, 83083379, 174549092, 74687531, 145759994, 140786728, 283711947, 298875439, 559672290, 181429765, 210099959, 255858451, 329413876, 282035197, 135496607, 51475026, 503087796, 440021564, 156444916, 508896110, 952957990, 372654640, 107334065, 260726294, 268812968, 3703393, 449175702, 445472309, 223016092, 371603005, 312946816, 84503683, 174231723, 488091821, 661635395, 400207486, 285005304, 185384836, 10504598, 234848243, 224343645, 75234264, 84444477, 240352863, 198771193, 98812451, 250853892, 56775122, 345468204, 1064772, 553965101, 552900329, 472531810, 237715839, 295372604, 173259918, 139171887, 93365930, 73503650, 8892498, 53821377, 53821377, 313930831, 299376035, 359557171, 618450137, 674939510, 767968204, 326003207, 280164673, 189237009, 232170726, 66475763, 178116484, 228307951, 442091437, 60389257, 381513023, 9959287, 185223190, 175263903, 283822460, 293114946, 166885079, 200552890, 72544785, 43399312, 177892862, 89596185, 61647138, 34150687, 94878982, 365550381, 483665503, 466539813, 315427548, 538072863, 440593715, 226025397, 361936687, 519424134, 444140943, 552674237, 158989728, 695514922, 373251750, 355239824, 686221063, 142209672, 56064561, 482096583, 493916506, 614826984, 688373851, 53790117, 732295039, 805379917, 709622325, 124144042, 178637789, 414060556, 403980089, 57365178, 122455511, 52220823, 187226549, 406782704, 317461199, 591431851, 201642290, 67153356, 43293172, 316574570, 217633314, 527429045, 117037470, 555642679, 293338242, 493509570, 608291287, 323274800, 624269904, 233094862, 5592185, 601180885, 595588700, 194631226, 399046586, 103452323, 138227014, 870546966, 902050943, 959359179, 640947348, 20030610, 510313627, 66018546, 821249211, 227426401, 219591879, 476743409, 347939654, 384850900, 528871379, 660256106, 547326509, 377521263, 108986490, 655945734, 484277815, 595905345, 352934607, 201513950, 107110977, 294027202, 15233784, 3068408, 76702175, 73633767, 164646355, 17603374, 524452033, 56639013, 216243990, 136142820, 194148795, 495144788, 17468798, 242949096, 120353450, 65788518, 520904233, 267208035, 268941959, 210585061, 159852494, 323592910, 871381807, 150732496, 732250225, 162712135, 680895177, 117016666, 16952249, 170880328, 258434134, 544614001, 224785787, 80612898, 324984546, 546595351, 131011122, 128394632, 198363260, 75236481, 312431499, 237307147, 119722577, 690142174, 770172766, 182170459, 590709159, 728466838, 82315508, 508804310, 306786140, 31758729, 243281379, 620503842, 122959708, 698125267, 60539451, 259807017, 107826296, 128597951, 315296335, 422402823, 685349118, 561818001, 16101130, 51506000, 171894184, 16622432, 154017799, 843190853, 449152018, 146753198, 85888822, 300785882, 14349211, 26275154, 625026424, 535567154, 275337526, 199076529, 139581345, 352998493, 80840928, 814159504, 163347323, 646304093, 370927304, 109570777, 363937344, 843746948, 701863950, 188695090, 193942115, 418583871, 240639898, 134715578, 265453861, 478959766, 239237839, 264529429, 91638127, 210945838, 167882040, 477402282, 577978221, 261349033, 540993354, 195577061, 628288271, 715875394, 431110728, 272554159, 56594485, 825256195, 269900490, 101178450, 272620503, 451579463, 614445640, 216103935, 497814473, 502832091, 368836760, 281927456, 687788773, 19381976, 655427573, 300306402, 437022732, 567314871, 635360354, 538270490, 173879059, 530759918, 352753910, 387713455, 716741197, 779867436, 91749852, 269949112, 587928781, 723623940, 141892151, 784808297, 127935392, 81100594, 280526727, 259241513, 270915743, 106818944, 37026207, 115787823, 65281907, 30706285, 395202439, 769340410, 720963637, 637003460, 559538856, 229183362, 860864935, 67309887, 774383480, 191493894, 6060026, 143950842, 137890816, 261360982, 501742528, 108853425, 730423699, 628574210, 652906565, 377954671, 367452565, 54556796, 520967100, 232011158, 348133927, 398273699, 419065572, 88278795, 13862628, 238584431, 133585330, 412690279, 904776881, 233278123, 240592545, 115306994, 569363088, 614117507, 813576284, 673213789, 200621732, 736634573, 469192491, 314421034, 184702355, 645714755, 769544092, 34803521, 24708146, 381277341, 97896765, 397808891, 8578760, 441827762, 441827762, 294802864, 147061865, 824742372, 585066078, 132630886, 311756100, 355662042, 383142961, 224776555, 352991185, 844064002, 777897316, 89775597, 270320922, 351191544, 77073710, 603832170, 315400297, 508881466, 664936721, 573923395, 503986633, 111075074, 124454145, 266722108, 435987413, 451556951, 85502442, 168438111, 428305242, 559024169, 18302049, 634625786, 515333103, 108002677, 302920647, 387451878, 264425875, 301397089, 612913017, 98674098, 28287674, 720661465, 77158393, 175782801, 210778466, 351905075, 293118829, 47692899, 6321569, 46680453, 46680453, 313304905, 249426523, 568640675, 285579618, 83606689, 321949594, 13701491, 116235009, 643854426, 772768307, 40336254, 600884816, 293070651, 536509106, 377912566, 703514202, 389488079, 73836538, 228768847, 341853712, 99930082, 28698943, 173558948, 79993683, 286644555, 36974710, 102491376, 394398716, 330644888, 344110437, 113996953, 48963294, 721990476, 22337572, 460967733, 246803254, 254409868, 785426771, 708098668, 466189059, 455976362, 629069890, 559652625, 143136053, 667863344, 491083472, 421923444, 373617408, 375754567, 217128617, 212456883, 284852386, 167420302, 264185017, 279143237, 15284963, 552326594, 192498007, 151042096, 258549247, 298968587, 58705967, 329883469, 26558810, 207619363, 818941245, 750734316, 136596571, 91086325, 14539654, 699971047, 772063950, 115877025, 306115793, 388196625, 161697046, 647538419, 444724433, 278592045, 590297525, 802282952, 434566110, 434605450, 783301001, 275330672, 228359724, 157293397, 407706168, 385578127, 214809229, 254912548, 247470206, 86025892, 422496327, 390859866, 78208647, 573217819, 145131993, 314569461, 44083239, 272416705, 271806822, 639323845, 555291386, 308254, 224409159, 224409159, 507898179, 495690430, 281900247, 277430564, 681877827, 549349197, 778532797, 785897911, 15007502, 148165972, 224684267, 840103465, 42402038, 780767584, 363263212, 256518307, 419646349, 609853089, 417599896, 173217915, 138198700, 534690560, 315481488, 381997822, 578095040, 99955565, 245717712, 535629241, 418047245, 299574647, 121146908, 629119902, 200810580, 96625388, 417423688, 598876905, 254257156, 557341209, 583055865, 320682957, 365495019, 185124684, 863615307, 831970187, 322989842, 79932314, 189332686, 260705002, 418677153, 373812864, 177958460, 449713886, 473584574, 75128847, 202048982, 194288534, 653776121, 295310440, 172670495, 408021374, 421685964, 179788314, 477797867, 698612155, 102684263, 311475406, 319251922, 109151445, 330617065, 167937550, 484324684, 87815978, 312166554, 849435830, 725727344, 19504079, 76552119, 515095964, 212939299, 472886926, 267415606, 208597244, 737966774, 133187322, 25543484, 536312454, 87181866, 254818676, 847776673, 535308761, 193850115, 677274661, 275562543, 112490000, 304506758, 132912133, 36843507, 55821123, 21955414, 136645550, 228293976, 813096192, 21221475, 919763855, 225253901, 285739565, 89573735, 103592628, 167608533, 66404108, 790454644, 703221895, 197502779, 402250772, 623999246, 239307261, 699596465, 192295127, 342569065, 639795838, 350743478, 242942125, 187527694, 204758546, 584723877, 305672588, 452989632, 330931112, 652530847, 989013248, 662177106, 363176245, 172410327, 236401241, 603812325, 762013078, 103170711, 85390302, 760999651, 76804630, 29074032, 67720246, 80463429, 419131459, 109450190, 91441717, 238362974, 141776087, 398746138, 890064232, 430736731, 311828063, 250279427, 362105577, 60551778, 45778509, 388685892, 226279418, 405270176, 106047339, 289799131, 142880628, 121840145, 59267648, 165408595, 674036526, 609976805, 696735681, 851811725, 420059213, 35006950, 12251191, 508590660, 608501065, 513567899, 360596713, 422050140, 111805899, 697956443, 379470874, 604150858, 93409593, 821856501, 562404736, 71819407, 28507533, 286432709, 550488810, 791220614, 763371440, 618597373, 43849715, 173456649, 16676991, 405519629, 735203280, 117965984, 93983399, 547907287, 80085612, 358882016, 788253249, 632914435, 594596237, 293455103, 249890191, 601563634, 569199635, 552826622, 818703393, 172053510, 98055117, 185405081, 47313103, 442870170, 508050313, 324621720, 303914803, 302510630, 153509350, 201164224, 318344471, 397080245, 585912007, 531677627, 514172998, 34844843, 650294201, 653497748, 709123203, 301962777, 179050869, 71388540, 98263420, 210899736, 121597124, 788766509, 761054682, 162303754, 359121305, 20899626, 544843604, 276607648, 576730784, 492712563, 131342218, 6037695, 41440800, 35403105, 508733603, 669930734, 724587275, 108538077, 879817414, 491801317, 270248494, 166056352, 19879383, 184759318, 282588329, 112938886, 272732030, 803756267, 934176173, 2880119, 166761619, 163881500, 43552246, 733495416, 806791220, 498110931, 159908999, 9999571, 460074080, 450074509, 618193765, 421553220, 438612309, 148384329, 161244699, 494964055, 128972375, 531318451, 392898448, 322087661, 455692546, 724451299, 109599328, 464588794, 202016430, 36132184, 197117128, 94986489, 83379471, 408991749, 470435742, 444636427, 86166946, 209096723, 490565149, 294589206, 6843559, 279355097, 279355097, 337997877, 227978118, 163931842, 225701039, 293740009, 146969053, 405231498, 564059096, 644596734, 390482370, 322359880, 348378125, 472539774, 273721734, 111524473, 51184951, 86084068, 186465755, 348967220, 731378279, 259272712, 245147430, 566886457, 511003841, 768654726, 36445210, 799429703, 466834153, 284837829, 77049087, 154855303, 38968248, 875369586, 354403644, 168934362, 56972855, 275829392, 172986385, 359249733, 230041543, 142118608, 408029259, 212524755, 279617794, 520927753, 149850119, 198544902, 357436005, 76102816, 227577789, 419549726, 479794301, 678905314, 31305031, 151001967, 396180098, 151808268, 520158438, 216430738, 51833769, 162246546, 80899338, 356746373, 829538612, 372830247, 366192502, 369013652, 219101887, 12607547, 270238317, 614076244, 331813381, 82632846, 532168287, 6058013, 106889047, 100831034, 89367300, 15806796, 316926924, 281412121, 62974919, 11910178, 455929426, 453632048, 137472988, 24659965, 583839292, 434564929, 186282921, 452015649, 484391869, 184364747, 533584554, 619230975, 32100765, 96518449, 262963340, 143528638, 600051649, 152085059, 805720704, 751030163, 169333419, 64057057, 188664919, 288482298, 421635110, 546501090, 62849424, 52505679, 335919430, 280046617, 55224401, 331375811, 260158420, 39573603, 343668061, 20216805, 51639712, 150387978, 98266391, 73341880, 621327707, 207894724, 262491949, 387746749, 763602520, 513082502, 127698176, 36821044, 306212488, 293723392, 202685391, 505889483, 257693175, 235433239, 517443158, 373242122, 532083262, 36011016, 251587901, 219038897, 169809932, 201884717, 828883381, 32771803, 269897732, 59522699, 526058088, 29459495, 725551470, 190969909, 139766852, 75919142, 5564983, 385254294, 379689311, 349883114, 382459080, 365756648, 414084382, 919717887, 54180438, 21620162, 608284672, 151230497, 75362069, 315658207, 320048095, 336454282, 32086247, 141464517, 495256781, 267010337, 500811792, 460936618, 339244061, 25585842, 349889822, 297551195, 591472786, 468251856, 680896234, 641594526, 308705285, 464813231, 190042576, 97325096, 561497915, 745672828, 299661818, 284207523, 562646746, 427108376, 308935923, 5210641, 304132859, 304132859, 386843528, 99002423, 625007860, 690220926, 575124498, 175032312, 91601258, 546763936, 73060958, 418294073, 160370084, 393022329, 702697637, 655107088, 222193556, 232414998, 328796359, 83619681, 357348033, 573523085, 139237003, 269558191, 146521800, 357067508, 341357520, 200573722, 79292991, 194441771, 133156901, 264819530, 102321241, 535471349, 218153407, 300009478, 41693245, 72758571, 132636979, 316347254, 184628294, 661195395, 587682484, 653394293, 227694865, 254060668, 218364462, 395673708, 241675856, 80460407, 356515371, 183808678, 356283006, 187188199, 180046885, 916376097, 825382537, 72720724, 370150732, 196299182, 16165351, 26502363, 52758941, 341366076, 13294313, 772031955, 217819419, 178468704, 519802739, 510443309, 231191959, 78713903, 23913947, 141434230, 55802382, 157431363, 635052029, 493045367, 126741234, 90848762, 607016844, 17414932, 789977618, 2417840, 702780595, 700362755, 429209938, 316189352, 325851586, 423794560, 784861665, 702879737, 125045298, 523631380, 438617664, 271468323, 218837227, 351826985, 552399898, 486089184, 13722317, 29157965, 65658148, 21522545, 249157269, 393929516, 803638368, 34180505, 250363311, 241892166, 179599287, 407162034, 891243910, 767828751, 390986945, 160487280, 205820874, 405335726, 639920325, 411532580, 211345542, 231949901, 213470914, 811598984, 748950611, 207989671, 590803936, 842123250, 393166338, 234972230, 52304101, 363520913, 17691235, 266416852, 784026245, 786070122, 252662547, 227721157, 504251826, 23436902, 61804709, 431636630, 330451208, 249854764, 175932980, 156537993, 5326792, 255075084, 255075084, 182142573, 72379146, 325342460, 490374118, 804353392, 301023158, 525087327, 739005781, 692151585, 102546100, 99541908, 495066422, 283431684, 385968302, 545192662, 576286958, 549263271, 740290367, 691691073, 780475070, 855467273, 856248905, 313593844, 321009199, 817885880, 225775224, 469660789, 305915109, 77558811, 445598624, 49191347, 89645399, 79813858, 349919286, 511433279, 814878581, 83496657, 211415333, 385860658, 189689874, 307331729, 392926163, 427754228, 110678195, 550511595, 323078478, 450722506, 471680345, 399522276, 201522608, 280516485, 207189561, 270479975, 47464249, 162342532, 557914078, 70959210, 147383138, 144431447, 721920803, 208216479, 252187972, 340265006, 309347115, 42062141, 114309082, 307664729, 175679364, 124067063, 17323300, 442895105, 719406557, 341885976, 506904028, 589223018, 50422043, 133728344, 290004597, 101960881, 96721952, 299690709, 156983564, 66537780, 373266737, 632680321, 94935881, 37304173, 433919272, 247849267, 185815262, 159734414, 495001861, 68035771, 166291408, 105048936, 413965182, 805342606, 445775602, 228849028, 397999064, 536568714, 628844024, 205419970, 177225094, 124263610, 859703337, 292086659, 59016644, 716309523, 197117421, 553278237, 525425214, 233620473, 830115576, 433283699, 392927456, 720932634, 268327979, 430931595, 804500090, 685383354, 221674554, 91674222, 269417811, 162569282, 596879992, 288907470, 385753408, 17699975, 749870390, 85643833, 387669824, 494172459, 131312312, 316341022, 473767201, 502007323, 289345747, 360579015, 160323833, 21271585, 228739608, 608792477, 606854796, 190490710, 121406024, 10029431, 354003399, 354003399, 105341574, 5495401, 158973926, 153478525, 129734267, 235749630, 335812529, 413092363, 194784135, 45932214, 556206073, 76217284, 616578071, 216005023, 73573911, 299061304, 599753632, 722946364, 51420723, 579585093, 495665559, 470409587, 299917539, 395037957, 306642926, 35817325, 61550400, 180984632, 169783510, 152080603, 687249769, 216273697, 181034618, 359480221, 528407299, 2322390, 145725246, 145725246, 61877877, 565930697, 330161868, 301067536, 141449165, 299086765, 272854711, 772173412, 539365430, 344376300, 34499376, 52469693, 355052939, 551065980, 823715164, 112313027, 560982305, 67924633, 676163640, 548065193, 250748173, 450626154, 689151941, 42158145, 308242078, 546795416, 110707917, 305852764, 123226042, 530780209, 286196465, 417543768, 676654932, 113183950, 645878427, 166740377, 184507728, 95017454, 24220068, 152920221, 141104933, 315233374, 542692702, 406350390, 302307353, 197513342, 343348957, 411040073, 171874484, 475695780, 138065398, 143454876, 100815218, 96728975, 524826263, 133525522, 410885114, 164852744, 274008410, 342862240, 731194678, 334014841, 128731186, 218720421, 799873147, 4417610, 592495813, 592495813, 162318792, 216544157, 94066841, 86887605, 628920906, 557464059, 263729566, 62272246, 332864023, 433611841, 809188277, 170284729, 746458342, 666298956, 157337766, 329243895, 198127609, 218959605, 631528530, 464851673, 298988255, 176512836, 388281113, 365365850, 482189913, 256715034, 630030645, 518913533, 112469656, 823764590, 370218183, 456287637, 251692014, 108544342, 3018416, 272400352, 272400352, 724157120, 633392125, 600920881, 24225276, 338728579, 320626975, 336763339, 407556431, 55177758, 282051389, 80545370, 214820913, 284912570, 515137716, 921048158, 729561011, 209823951, 26061038, 677923622, 150521172, 166276506, 241592368, 223350929, 93407390, 650897488, 155430444, 537320545, 207017002, 450059251, 1620017, 938721364, 937101347, 258598378, 639736183, 46305868, 265039011, 83784740, 63631280, 191770290, 488583232, 253562107, 437181219, 531223956, 584132792, 463274356, 466338121, 302640550, 621518357, 332091874, 280072930, 553556430, 4561043, 364499948, 364499948, 182750399, 238557841, 177683061, 376691912, 744317203, 79806816, 650537614, 2038129, 143766600, 143766600, 771071629, 712613676, 810315553, 541591286, 435882976, 41647464, 424881966, 189170663, 124275848, 366803231, 109265306, 350336521, 469994534, 319098397, 274225284, 226123400, 146490568, 526104294, 754074086, 809638940, 951176354, 602480045, 189723319, 367278840, 125635388, 158955096, 713778519, 680803860, 69166206, 158027949, 224397785, 449267019, 137348757, 855005258, 703585185, 16192620, 692223266, 776334400, 83233028, 738497949, 178809001, 132744912, 370781927, 211852459, 844887523, 704123457, 72225848, 540396683, 421508295, 625869191, 5745260, 535325242, 535325242, 387096771, 77024714, 151632216, 26195763, 92311926, 177149152, 661137442, 11438423, 199535561, 324567450, 705943254, 2353517, 117124432, 117124432, 730168279, 140968825, 778631434, 320405093, 97883727, 46494540, 181876816, 367303596, 84157948, 72749919, 145509635, 50916233, 221104707, 567271997, 281829649, 834692751, 266531787, 299149633, 270938586, 380011050, 305439145, 40900930, 356164810, 611193309, 412173867, 174393122, 327028055, 370426107, 103082737, 249008459, 34863102, 96487150, 184531382, 829398311, 67325500, 306571849, 254829204, 131796148, 52805258, 459328711, 521946739, 318081974, 701441724, 559875823, 155240662, 185435170, 219194507, 418829460, 396980701, 451484775, 872150665, 286891192, 257829178, 86942860, 86466173, 326099087, 298950272, 44551723, 267436301, 283454317, 31620134, 13888311, 93447450, 26651612, 118463717, 137212861, 29433601, 675568267, 27162042, 23106163, 16080610, 18708722, 20521137, 737567415, 312716204, 188625729, 160259955, 253793957, 847889279, 339370592, 80455560, 39050921, 299547490, 238069419, 375989959, 545564311, 291008006, 79226528, 379916090, 42828042, 28528584, 265712597, 324524581, 793474981, 50199387, 248482628, 524308910, 899922028, 914400596, 589950951, 112253614, 244066743, 393310358, 760150411, 453630578, 351452835, 698355516, 12083105, 187382264, 326026921, 534630980, 399099253, 205334567, 16115934, 604816080, 778610999, 899433015, 648899477, 149924715, 3523, 138256302, 138252779, 147125148, 209626602, 570410316, 609683123, 295817704, 594206008, 238820802, 499952779, 407147726, 511241631, 26286839, 187502662, 650121370, 621233061, 17215502, 145004626, 324236282, 147645584, 322727055, 180127064, 250518043, 167437147, 29614903, 312580548, 288210674, 515886283, 515461864, 10844398, 279345722, 268501324, 615973744, 326499504, 536948748, 829942, 397467295, 396637353, 859219065, 589663104, 233350079, 345042749, 293780019, 184742267, 361474298, 291266618, 426069479, 56602017, 68880677, 41854280, 89829293, 483792224, 490889107, 286651124, 244523698, 451480189, 137907004, 105356139, 215176424, 368070013, 163857597, 246415074, 768355332, 143852836, 262652140, 8051752, 237678398, 229626646, 105208327, 691360557, 108455624, 34664837, 114151046, 391626181, 6987925, 341180217, 334192292, 253493480, 234852066, 26520568, 195342874, 137945016, 594051795, 330113316, 12835208, 380853540, 526999765, 539114429, 520505586, 578066122, 15947413, 48489879, 236971999, 38453743, 180289110, 248956117, 13801158, 435448306, 2746547, 88909439, 88909439, 190422545, 539272583, 678482428, 176396369, 276452036, 400384686, 758098601, 594375328, 559658162, 169312145, 544410911, 326097669, 380866203, 39050591, 21811124, 333062880, 670349887, 747495531, 50141751, 14780213, 169902121, 50265901, 186902600, 220172676, 287853690, 356751440, 101749284, 225281094, 317196634, 116480380, 280549424, 251578572, 68838298, 298620896, 691643924, 30270622, 762761495, 54197244, 711169008, 475411317, 178697472, 179032490, 296586273, 23883138, 409440726, 209898773, 427420824, 280592029, 411822335, 248262149, 195817521, 124514156, 327953456, 267050800, 469587010, 548642979, 228726014, 385240549, 138205842, 476282986, 177059209, 755606127, 139969314, 387631299, 337164746, 298887687, 662472121, 27943150, 138018052, 508458437, 182203995, 46069999, 137113621, 622112909, 558317429, 537290321, 89087340, 111139646, 292274038, 469825972, 768709132, 858052864, 921890319, 317781103, 179887530, 507373286, 265505682, 263704408, 499414123, 135924073, 316883322, 471990140, 324098122, 386036076, 490278722, 341613658, 367616644, 104565014, 279184754, 701807468, 146686815, 390190837, 453971159, 448174943, 492412775, 9675054, 31812251, 22137197, 250603235, 218197939, 518529704, 923596513, 708207586, 220405672, 81551642, 75868339, 77649600, 119435880, 39098185, 344575267, 494710186, 316798365, 497085484, 392178844, 207813511, 79986191, 43150594, 62346397, 621872443, 669933322, 461508590, 317716924, 374073066, 299807494, 634638936, 636850824, 64670830, 514283547, 84896879, 224537554, 82306055, 173981676, 731920672, 91557189, 6469891, 543965145, 537495254, 388100572, 565138901, 211526192, 241185045, 112405201, 198775877, 597581431, 26849651, 189050373, 648545810, 44596324, 667573345, 147055949, 548821289, 420291180, 390554727, 513463661, 242125468, 351561880, 352195126, 373879196, 190991288, 299925760, 29357295, 24737422, 36817694, 454792546, 282633901, 40239899, 29289674, 356507675, 553681813, 267407939, 130028887, 170575409, 428990142, 973865223, 191390338, 138513141, 470468240, 692358287, 827270081, 391954273, 213724096, 21981868, 655872918, 268576639, 221219406, 83826754, 301457834, 329160537, 126423725, 290978401, 390543944, 732812282, 559867650, 455716722, 35995649, 22322835, 145172689, 813743644, 30783211, 138431703, 825102104, 732532980, 813294722, 371889672, 79886992, 469026242, 681049225, 36906595, 213492940, 235404551, 205198940, 182124034, 507358030, 217993779, 249175406, 861750961, 597996172, 521721878, 770656353, 60571336, 227917906, 513103577, 678283114, 7281242, 226918819, 226918819, 95183830, 588945129, 2826301, 81441177, 81441177, 518147121, 221643485, 620893417, 372056746, 340698475, 689176592, 6057822, 12839179, 12839179, 555969620, 661709086, 124928232, 360016148, 1260153, 482886600, 482886600, 15632412, 128219297, 63355030, 172169532, 77056015, 82797308, 290986845, 544645597, 15638549, 377687921, 12031620, 149107663, 462618815, 389768261, 645612460, 321238962, 63659779, 199784070, 178142747, 270536405, 208711512, 46041463, 81211263, 166414387, 528186233, 248037357, 424517564, 665073198, 556800643, 29286506, 24752504, 131555937, 728358967, 476146409, 239735740, 335451507, 772581855, 915431766, 381267921, 271644447, 114302863, 662970482, 220330692, 97179259, 524589583, 170572446, 316284033, 764354071, 305876732, 261425145, 326858800, 20908404, 298487744, 189072347, 251006970, 260719750, 456685923, 864242125, 454098403, 275979028, 99755354, 497599383, 94472354, 678558407, 549276300, 244319967, 379425212, 311673526, 213281722, 54659305, 559819162, 21528007, 207851847, 181316865, 849844751, 395222121, 102302000, 414431810, 382920443, 179620694, 251068600, 510508965, 481833326, 68395998, 358114638, 20734304, 131813840, 534184105, 593821925, 253477891, 228176661, 50079242, 75448387, 281627726, 411784858, 88201520, 87501957, 227162732, 51563476, 415622926, 865176237, 467281879, 500376246, 724342875, 108889372, 40123978, 316834943, 7351156, 50604634, 50604634, 210545691, 436676688, 306658088, 485817890, 268172581, 37135143, 203583449, 867332623, 72757460, 54936001, 597468713, 717030327, 390901152, 361914495, 629069129, 292122185, 199187146, 229826157, 217730414, 6378747, 445429852, 439051105, 220883918, 28392106, 157300295, 391515820, 499013619, 471183368, 291469947, 425744466, 244857580, 734985868, 737582687, 959044141, 117762788, 556926160, 446341098, 616937496, 671284623, 214738915, 109355265, 421782183, 309193794, 317344689, 770699319, 73530580, 883183348, 39614715, 573615886, 488552627, 421240653, 166788927, 482602, 286669051, 286669051, 114181796, 431148889, 200935943, 66494848, 389281927, 571355806, 280507955, 506427633, 20682212, 58329100, 65001394, 11263568, 585810594, 67630739, 175129401, 232657705, 349786486, 513950570, 523598089, 348033405, 116999792, 355065330, 106222442, 354844551, 629351757, 507453136, 323503824, 249128142, 130563124, 166730803, 487098656, 127543899, 497089069, 283121867, 33658233, 97707326, 181101865, 143655880, 66810217, 147723271, 487974001, 397362763, 442622075, 29403287, 302622254, 347860469, 71408057, 125581038, 326714264, 207061735, 514007679, 210149798, 698236090, 963509782, 493445596, 139352257, 180929161, 1843961, 453373546, 453373546, 814771702, 141653422, 72040855, 436071032, 602156535, 43978670, 142490417, 423665500, 200138132, 543118654, 751453083, 271770276, 115172470, 33793751, 510274544, 920118296, 807143364, 687496260, 849473651, 56842889, 521703379, 364561150, 279361590, 221731562, 537848312, 439236065, 166615036, 139763544, 119857384, 367186608, 130863046, 500917064, 1939911, 466700700, 466700700, 143270836, 833169112, 737450239, 430847181, 179830815, 218641353, 60992372, 239298904, 175745315, 312236979, 181909701, 494668023, 992950, 426613305, 425620355, 315603947, 156586585, 230961619, 728725027, 96265575, 110841170, 551722821, 221374030, 220598085, 473115990, 98533259, 541480206, 84761007, 154136202, 459239025, 372232580, 129799723, 96648522, 114516261, 527036425, 592573090, 352649308, 407922873, 475062612, 298461785, 444154360, 913266517, 400038283, 366576490, 118815885, 432967955, 589995465, 151186525, 928472908, 754356314, 653539395, 98206182, 941522053, 620068599, 329799110, 367161307, 232319494, 228962803, 692292160, 335219672, 18982237, 63181689, 422844569, 866777472, 562588329, 86022562, 519851128, 688615495, 362566492, 223919398, 24073875, 276551040, 228676767, 470868169, 62739346, 722068882, 533072022, 379287073, 188986570, 71228670, 343255574, 412384366, 404143249, 129877885, 413500219, 286890653, 144896964, 606853264, 383150629, 356225522, 477824282, 201822284, 226296595, 103766498, 253980478, 835087021, 878374408, 74315634, 180656461, 259901445, 308797307, 100056552, 283579432, 406941167, 36985484, 31277598, 496823153, 497475657, 85660646, 201697604, 292237421, 184903367, 268843975, 43345918, 224543546, 413920670, 896350697, 329442766, 171209889, 219706696, 110650445, 228911759, 441449495, 683190913, 595938811, 70449809, 349662615, 62101765, 98592689, 704770134, 48882156, 671339426, 163414858, 749200102, 560464783, 237785217, 265573724, 536289357, 78897033, 359452420, 91177259, 328351081, 506891751, 92160148, 64629018, 594018468, 59014949, 523364144, 107091088, 208274139, 555703803, 97496856, 384752258, 144223720, 373730904, 231322895, 161939095, 217597000, 14300753, 85114845, 687716177, 730225010, 526153764, 359240367, 389096942, 10632190, 474131209, 474131209, 122815533, 436332696, 208698079, 172986999, 765227333, 73436982, 191368927, 219887567, 146412125, 103623054, 555081334, 363882865, 457235740, 184765042, 254616804, 167230179, 119890187, 34538729, 649284378, 832899301, 825684302, 489611527, 522823061, 691371001, 39404626, 551145651, 36928477, 307451889, 131978270, 459599047, 763908440, 780326464, 658571822, 171082546, 93083265, 413200478, 665029458, 613332448, 81680247, 91777166, 621560409, 562875374, 341978235, 144228006, 118875482, 385426995, 249691324, 51693775, 387861284, 195200818, 233378808, 113445687, 92461913, 281078792, 91637040, 309633849, 337536471, 701949496, 853439952, 744219302, 28065854, 70388734, 316305266, 24980216, 71645770, 83918413, 132826201, 78025010, 510848084, 475407629, 66564313, 466007364, 443735714, 559073946, 621463322, 430455666, 47605590, 5931955, 424430420, 424430420, 198915997, 141705259, 175932410, 24825609, 65140093, 260540268, 161735424, 567990465, 120221811, 438993619, 553046885, 439772111, 66668965, 317352832, 350804743, 367235843, 270227273, 725094672, 570650453, 294855776, 575895869, 594029337, 241879086, 44095398, 223556920, 19173856, 374940014, 87437298, 114241105, 7799446, 469992417, 469992417, 758494119, 315884264, 13666709, 202402180, 482806645, 711344717, 279073285, 133661792, 549572284, 325890777, 360860024, 526738270, 181731283, 145801479, 61083364, 661223712, 39918727, 26753867, 450468637, 295288320, 76903968, 594405204, 320118514, 289949514, 642241392, 403852218, 296694126, 69618641, 150094138, 871715256, 830332014, 369522141, 415373798, 274249966, 559539823, 810152298, 338356191, 165195126, 73526369, 160797504, 388443039, 431282203, 753850599, 681935304, 52286093, 11575716, 563014824, 151677324, 450832766, 280279082, 37858279, 79073514, 516987716, 422536178, 675932271, 706036108, 197017338, 530913695, 392855726, 37070449, 738914908, 76778822, 404353894, 18226892, 332395696, 557431388, 324248060, 85940093, 422137055, 468866575, 115477847, 47171511, 632017084, 601177690, 29329390, 420508530, 83802365, 105504894, 165186554, 514619755, 11629579, 163254617, 651841934, 114572449, 434506033, 451621951, 39091167, 894265129, 447376422, 250505773, 223596583, 459846219, 38928824, 499643211, 192948495, 458379389, 3444581, 736057637, 732613056, 19623079, 445736710, 166783624, 455513800, 133776617, 490904114, 723737573, 27878914, 325531734, 72082259, 10985617, 66885144, 66885144, 403852793, 283122162, 483287426, 482782915, 587757028, 516256335, 77620889, 361850560, 177709817, 252269913, 162795016, 114292786, 91570189, 403980626, 584554344, 670304780, 847290739, 555859743, 459807429, 102152774, 359207124, 149613746, 76445740, 67870439, 51887491, 26114758, 110910442, 306126447, 568690959, 597576969, 59006157, 405265510, 281987400, 37666356, 374846341, 440562343, 197717211, 402201301, 457878594, 6315495, 636883802, 630568307, 152418428, 683450253, 519114812, 515463830, 96176750, 162439293, 310479254, 170513610, 267882596, 579815953, 389170182, 43380233, 123443223, 116729908, 243892275, 42268813, 212323718, 141797740, 227615509, 90772259, 14331510, 366877461, 384296766, 208951014, 199869732, 533637955, 383389773, 96263480, 488629306, 16523097, 505086237, 267893445, 177108179, 429948222, 424387288, 257790843, 723808044, 39224206, 653029856, 248333988, 38047501, 550866380, 248978953, 270674022, 9544904, 897040623, 887495719, 709336650, 629624234, 518680798, 311382588, 621330807, 108772985, 426455112, 265532543, 456219070, 619602275, 516404351, 281619299, 269051353, 47943966, 240678250, 269038123, 133009088, 385864598, 422037115, 617808895, 392141220, 49667764, 125344635, 807871667, 97422793, 100208942, 78057013, 408965819, 536913032, 417837553, 199311116, 260490167, 396542984, 442658609, 309732547, 969478554, 117968709, 71625837, 140195017, 247466134, 346818172, 165701941, 489367464, 882782300, 298936910, 485845528, 709959733, 28471858, 12995239, 549555097, 155714201, 51226378, 358197647, 509206189, 102348433, 598535180, 368846926, 102459226, 74647667, 314511906, 466516678, 398066013, 484017483, 602067593, 146307663, 441082962, 622776192, 43314176, 31374992, 14103506, 71125714, 118286505, 189080648, 54606771, 48189209, 173764807, 248874132, 376559164, 44459662, 627475037, 570778998, 785882217, 292887386, 359111992, 77558217, 610915918, 312384144, 34463947, 429433808, 485206453, 245797794, 200886003, 393154247, 471381618, 648319153, 477810382, 162114483, 268312297, 429194937, 197988734, 591360883, 448551044, 144781211, 183265896, 631498206, 196668349, 379566178, 213697008, 7211412, 377677759, 377677759, 188104799, 23796556, 378990569, 718053620, 48928399, 607107256, 23024769, 172605693, 40410388, 40156925, 469064323, 752697469, 116675662, 28980313, 708047459, 161381069, 549558368, 468158276, 101493544, 75330034, 610179361, 73730155, 580239357, 456243263, 59307721, 274678180, 106179377, 775093936, 598135984, 99028577, 140785342, 130727041, 158645006, 497127460, 58335646, 71856098, 800324775, 44427977, 343909213, 35871956, 205122797, 144326814, 215101208, 286563497, 115060905, 167092314, 785833472, 584168780, 596136825, 295245706, 114236055, 27464029, 1080247, 165368258, 164288011, 256753074, 177893260, 78212465, 43651294, 233548083, 412234973, 304495189, 560033260, 564085695, 450712165, 393505346, 178345623, 793661301, 881578364, 43987738, 239393077, 80342683, 69931221, 189376092, 618702351, 706645589, 39949106, 129530432, 59907640, 215912174, 223663394, 415522677, 57580762, 229062110, 30976022, 513014827, 251251358, 151606144, 283391469, 28803502, 503802774, 803980150, 250172534, 321304658, 564972182, 210295254, 602747021, 481741925, 39828917, 273821106, 148448330, 145860840, 313155761, 482446186, 35884770, 131303414, 276465198, 266390033, 324520984, 63354483, 603291114, 38733947, 350791296, 109126793, 41156410, 503286593, 28557950, 440629285, 82324426, 273466521, 170838447, 618438591, 71958763, 168393447, 318202477, 208712374, 653302567, 193448600, 120925027, 767715524, 7276007, 638318661, 638318661, 37190063, 498318600, 724199350, 520520592, 202828252, 874732580, 706894828, 222148986, 517172193, 466101648, 3571843, 823238999, 823238999, 115489207, 512189980, 137057801, 137198555, 75537730, 706235497, 238738015, 484900770, 98985343, 511499225, 489697696, 387933617, 578491729, 128967146, 681127993, 423721874, 135259387, 186675055, 707299901, 335096963, 161614030, 4214818, 362079354, 362079354, 645735131, 516024248, 146307190, 315181745, 702050353, 79587926, 184663398, 224831942, 318004155, 86794452, 65901112, 121696031, 82048343, 183669404, 242772006, 689423017, 48905864, 276244230, 351372272, 749860294, 618163667, 476058891, 317466222, 243181228, 173293883, 105577614, 178538042, 384061108, 52468346, 883647748, 674754437, 498492606, 522541863, 192377163, 50762266, 788382761, 692177931, 719467754, 109893302, 531321999, 51615241, 88954630, 9703058, 66850160, 66850160, 193648310, 379737055, 270298928, 366656647, 19633558, 10056955, 163636779, 153579824, 112429295, 146266287, 71933870, 370470604, 146237939, 205203325, 859267248, 74395227, 630366908, 388189141, 70983564, 227984044, 93217619, 1524556, 144372943, 144372943, 39075088, 375120824, 114592185, 46382493, 118063225, 279784108, 207918932, 395417521, 160438163, 476466408, 506881529, 182215590, 451979939, 15743283, 197008669, 358926136, 222386594, 68067242, 616373249, 765667653, 754513519, 393296405, 188490395, 144743139, 233663904, 541982570, 97503036, 615082325, 547068909, 142237241, 447058680, 36871032, 55273488, 122906870, 406473309, 324026881, 746540570, 551682659, 258158570, 130108852, 351128254, 557639929, 134178292, 521403631, 435057191, 274514832, 124032769, 202948802, 187911511, 13355792, 658575305, 801658106, 108533750, 414606556, 137262644, 555740113, 47810876, 214330620, 248402872, 5033619, 593898772, 588865153, 367737145, 438674497, 892225618, 35882512, 769377732, 758189150, 767554468, 33707304, 676208924, 398652866, 508435827, 476336688, 409400225, 587577891, 410389532, 237256840, 156462822, 211609624, 484454936, 478391970, 50001806, 177639541, 314490990, 262945957, 211057125, 82157931, 11995587, 538769583, 79726630, 343754718, 145306014, 349608749, 459465112, 558431383, 56724062, 218975549, 279285693, 93384014, 125656106, 274058034, 196041693, 198984337, 21312712, 362499115, 26443681, 132649739, 124230996, 510918693, 654317456, 752766182, 281317844, 227141457, 62728299, 239848680, 363683966, 295787009, 612022988, 724716307, 174231470, 576616927, 857961253, 218612318, 233770284, 91105635, 116202858, 100572886, 450828972, 918721402, 525102303, 390332835, 889267834, 225034685, 603889239, 20997191, 422186579, 170945255, 163641173, 47803562, 396628039, 864753641, 49391952, 531949389, 304422464, 539016212, 439111557, 93203522, 346474633, 507906560, 27118711, 554549694, 725765025, 624309919, 271676325, 563931629, 125553533, 704120165, 683915972, 520365926, 237824774, 382549894, 440939784, 95727258, 145711591, 74294409, 17403070, 302618820, 136692224, 327816261, 251151108, 211258338, 128950193, 211258059, 289184395, 7631435, 429341930, 429341930, 149855699, 182942475, 541917917, 787451391, 35151133, 794373121, 53434181, 150746496, 68819900, 111049895, 352076022, 383772386, 354083264, 529888177, 668066313, 290892426, 352470306, 952126001, 247775123, 591057063, 186850746, 49051501, 13037113, 475315762, 294120547, 378348923, 159676300, 524612494, 714198982, 301291936, 101398324, 165725685, 345913200, 499231179, 347390141, 20833329, 419952016, 284568398, 390827516, 560376245, 8849069, 306578484, 297729415, 439119669, 159500324, 281409170, 462207900, 888993223, 706743389, 73458702, 165510179, 221883660, 1521082, 44022798, 44022798, 297104622, 110677311, 413411840, 706503678, 652418002, 708472994, 163284271, 210676751, 223976803, 487136006, 422252206, 525880856, 40322689, 353202085, 24140665, 242659269, 402742974, 126004531, 31056510, 85810288, 195853292, 270388152, 639553758, 57673391, 121969561, 84347393, 665822530, 669971036, 494003133, 58076047, 37207274, 423675533, 597806494, 583501893, 483368082, 489630647, 290594867, 369604483, 179461891, 628340568, 617178233, 140972166, 585319468, 318209961, 378360905, 555520596, 206714280, 655612863, 690530462, 523170463, 255463692, 575669676, 203370583, 166095426, 700664870, 328320401, 362212367, 200563752, 57163433, 677423098, 559926836, 569959995, 266234224, 360055769, 832839196, 181435962, 516730171, 430181903, 229048983, 307954771, 507110093, 120246007, 746159752, 120282698, 122696339, 309144131, 46691727, 686319780, 676434058, 297849582, 16473153, 324912136, 527963032, 755525945, 761472467, 297774952, 169189210, 2232197, 71307341, 69075144, 183134161, 114982149, 428682799, 826641772, 23132852, 946933285, 598942990, 110864074, 177407766, 128005785, 451989620, 208960573, 751117413, 625006, 368294696, 367669690, 70531224, 93908894, 333613858, 641572163, 597710749, 386033078, 29281621, 290220575, 585688152, 267305624, 67328596, 137082997, 300943894, 862311185, 960453069, 346463547, 198282346, 646588989, 450353928, 424863768, 48718299, 111362968, 81036740, 507408900, 315851801, 305616184, 780215140, 453202785, 224448233, 372178931, 233319159, 21447636, 436370618, 277775337, 203727547, 366776528, 272751861, 44665374, 64429256, 589210661, 505593261, 8072272, 343278462, 335206190, 393471401, 274734189, 801131740, 117168269, 894807158, 878511059, 407599846, 192479743, 318810960, 144093539, 68581913, 186564818, 523108852, 117198405, 486628060, 185716412, 441165195, 471720538, 134241639, 238629771, 146150801, 165533174, 524490532, 198409007, 384271207, 113506048, 313406727, 492289407, 147855872, 320395375, 201510176, 216771536, 262391932, 160163932, 289389090, 508843509, 346289284, 569565171, 191110711, 281000100, 476985979, 855689324, 15000961, 445584397, 192295043, 400643340, 64660534, 98643194, 555590111, 406463041, 18340723, 465007712, 416111460, 374479537, 7549069, 196565684, 189016615, 538373232, 469521211, 7787411, 194576930, 194576930, 460224902, 490344827, 385409753, 89721577, 51746640, 306751293, 22437594, 360866586, 339765657, 223573819, 247594469, 555641462, 657941221, 353733083, 308260906, 83530940, 28856281, 43524735, 160202110, 548789619, 748363527, 8406056, 428775403, 420369347, 10106256, 50470245, 40363989, 313835349, 299432215, 810071, 364326941, 363516870, 96993592, 797353969, 106446992, 315044800, 23477820, 122700528, 236251826, 313272807, 281768490, 290101139, 72651421, 505759231, 92987788, 509784138, 546016800, 291744604, 314787908, 486529962, 323717484, 595394253, 190975692, 549583587, 403677349, 634790087, 815217827, 690885720, 212773371, 87949002, 34214951, 422221099, 380295062, 544361545, 236774971, 578380929, 272437235, 87630938, 218150754, 465488753, 414745167, 69672676, 9033347, 533109332, 533109332, 720688160, 523008125, 135775622, 371434218, 717092645, 140362143, 203462406, 178897891, 293976621, 599127963, 12962368, 699098639, 1789772, 394292290, 392502518, 217708179, 655631744, 637779439, 694535286, 248035247, 344199120, 120194503, 216271103, 30703407, 413369564, 283298192, 455725831, 287337199, 377750737, 148347719, 688004696, 345268239, 368863607, 27774493, 678436135, 719809215, 69730805, 372580254, 321679042, 194636651, 275398870, 672514123, 683906832, 727555974, 797641839, 682284496, 457005757, 423207123, 595210917, 357276284, 149664697, 159283526, 564565937, 638652387, 573872392, 417338329, 256358581, 463423958, 351211263, 651240662, 777505419, 366448924, 194629030, 472670826, 701930499, 579155147, 2115778, 625540949, 625540949, 112878, 506861908, 506749030, 279794217, 130085612, 61677407, 128715784, 280301878, 347211698, 546603744, 356873861, 549550651, 248269563, 497346060, 606590336, 640152295, 607761743, 226008690, 777650478, 603901202, 139949484, 13639719, 133051096, 91402094, 296647653, 410000319, 286056520, 369384664, 85231843, 57734263, 14957319, 213870670, 144543827, 88230183, 360277254, 146678003, 124056805, 268951454, 371178404, 281305921, 79504591, 664195148, 33274483, 8212497, 357336902, 357336902, 152932012, 560514358, 303470063, 270523015, 92945897, 172909153, 485935584, 24953258, 366998604, 51897566, 230210233, 261017352, 419582399, 655686847, 648709556, 350678287, 217931288, 260993856, 78582783, 347111132, 274234917, 27914437, 283449055, 75429482, 1677476, 496756212, 495078736, 297569067, 24778862, 34770944, 263088765, 482853096, 230292441, 653492393, 273758913, 665587156, 169282531, 38309727, 14043134, 209667184, 279920980, 206447334, 132748439, 456515623, 591432495, 587873873, 572977711, 515745955, 823780346, 718922015, 395293930, 361772704, 512638204, 225228996, 30510827, 95325491, 191240996, 720848271, 14006870, 473985798, 170942249, 358085518, 277718088, 11250664, 352352703, 112767863, 127431925, 735927792, 112383515, 164143788, 353428577, 276258642, 216896772, 787108381, 271746965, 544283435, 409012179, 417220295, 791822161, 740078265, 115923950, 39465511, 876903058, 199573701, 664612215, 803013465, 99538179, 217568784, 94682879, 45481074, 245468212, 455798308, 474852254, 31755893, 576833143, 27942854, 410072288, 247166870, 109381046, 232566706, 65037220, 474669571, 67930076, 461788775, 89925362, 324135673, 388748736, 36742803, 715858722, 664095317, 834375737, 311873185, 170569681, 488110490, 481431926, 420779149, 208761745, 26251541, 348752247, 279745272, 368873147, 20388496, 282902056, 556078917, 149042813, 13194, 652424598, 652411404, 433309601, 31698351, 3452001, 436944264, 436944264, 534085894, 238341989, 31459170, 587091410, 385893727, 507323842, 257606751, 652469995, 353176512, 116138910, 163813586, 667029409, 360006632, 450627879, 280979537, 456223369, 363941934, 56014360, 645413610, 894583819, 54774113, 750662526, 190873516, 405613220, 105191970, 592810123, 937557638, 851749952, 731294783, 751029300, 95590391, 35162297, 611634064, 172549477, 401744054, 486081949, 402360212, 395854393, 299868036, 418560241, 938459632, 12540564, 414261087, 554307436, 168985638, 115726086, 174319364, 201688459, 496786387, 39248924, 287529179, 629991136, 741183893, 642314466, 22096509, 555209736, 548138654, 658498012, 423579052, 452432131, 183376477, 74108749, 151578817, 698323706, 308542758, 349815984, 159365784, 145013277, 518290389, 721364195, 701352459, 348676504, 223491877, 256651942, 67284519, 284176529, 27842285, 69393156, 441134835, 502299540, 657789105, 10900967, 558894905, 558894905, 687441726, 425886388, 176348303, 319531453, 229986828, 86170429, 499557049, 106672472, 7134684, 744978038, 737843354, 224016611, 389460717, 268914825, 276106921, 193942150, 247465081, 91183022, 245495261, 125261538, 263979891, 87786805, 199027321, 21442334, 383407214, 657510582, 320773380, 450967183, 23097920, 217128103, 306599014, 5687675, 616755461, 616755461, 375694691, 303091276, 23268810, 210262770, 955499760, 404377765, 74752730, 111863328, 95145758, 210477234, 374615760, 85701982, 37148873, 257283062, 644095769, 561998569, 134156265, 141536058, 519104411, 524992230, 48292932, 215721661, 326370832, 193700525, 45212979, 112428957, 82322925, 443164923, 700682219, 47677619, 753149212, 646123627, 565301116, 353786314, 154690998, 183072379, 200198787, 592627165, 474318759, 373965622, 95660656, 229829280, 87786318, 315798413, 83289203, 630370969, 275855642, 275348119, 477290021, 184177783, 825579478, 560735322, 132329701, 160992542, 524009439, 259209525, 535904756, 619915774, 320982546, 568528878, 673694851, 440991662, 195943357, 352563543, 135650593, 567492911, 153194481, 153216375, 181458979, 56075489, 624784314, 189992021, 33948019, 161350642, 278140894, 124286519, 521753378, 609438631, 480200215, 542171461, 442109139, 477693943, 367750204, 34758222, 416938827, 23788035, 97754441, 11083176, 187731561, 176648385, 825951327, 531743581, 617303033, 116723645, 775943740, 148154984, 13733743, 170020829, 811927430, 651494681, 325923224, 69058291, 412895746, 380358180, 433284944, 596487727, 557900661, 420406881, 156560568, 83864785, 420579841, 918190573, 409803821, 276720712, 229335344, 395606934, 348303342, 805204577, 350070734, 181580989, 152726937, 656617590, 58816443, 203606017, 99303796, 488006024, 565702260, 35586401, 442888639, 22972850, 380886053, 199418724, 103660570, 76016418, 4757365, 212734325, 207976960, 388170887, 197998947, 726722308, 821021858, 141683061, 468536752, 253091064, 130830487, 382776357, 133937718, 247722512, 363340576, 448505245, 8962071, 390440905, 381478834, 553523165, 714843302, 218256223, 731340171, 583514416, 718447159, 595630429, 138176189, 574088533, 491628677, 228006804, 329163801, 183421619, 138417196, 447591175, 493015609, 504452459, 209354884, 259448976, 959263018, 763056006, 205626083, 119677698, 316585458, 450529377, 236535166, 630987649, 682006386, 452936957, 341653614, 884373718, 286942800, 84021562, 325325075, 694676365, 53172756, 132386989, 311713010, 240701104, 57240933, 89338164, 434137101, 131387042, 62028758, 483768968, 189189599, 492867069, 644126348, 38682459, 12161873, 681607103, 199717130, 230486799, 34902187, 24861811, 577990044, 120251594, 526758370, 227433941, 68029038, 277876825, 190105974, 140309779, 94750309, 217821777, 470370958, 426337067, 137459756, 591679837, 643467865, 184993550, 792613828, 105300796, 695884637, 89436729, 87757246, 61127227, 526294520, 607746608, 531166656, 461384565, 3967806, 512739054, 512739054, 323205607, 551116741, 455606041, 192218556, 642912626, 44515298, 276213828, 166230560, 194917284, 113038147, 442343735, 273433786, 555506938, 355205679, 411030818, 130173928, 125784152, 406113040, 210199089, 23090915, 9716132, 288009201, 278293069, 65038362, 148600652, 376301484, 358606961, 647434239, 12790517, 161172708, 486885676, 151023146, 649832552, 792981612, 128226441, 276399898, 222949643, 227696166, 525747192, 18600479, 22809433, 6942243, 295450178, 288507935, 216713545, 246726041, 158500757, 748585294, 753698661, 53024117, 691820208, 42195062, 614317402, 767578079, 326146907, 363038768, 196493847, 420564075, 314930299, 627364237, 369910973, 104016085, 317794803, 69160357, 573225870, 100631955, 318995752, 26604519, 468151525, 226391893, 167354834, 341768780, 264501442, 91254618, 164720218, 187917245, 406582536, 568191266, 255281308, 404083167, 587291352, 10722326, 645248926, 645248926, 339616960, 31242912, 153429000, 307180175, 100283010, 14798188, 160229136, 864455773, 272017534, 242684154, 611353030, 589273499, 233000505, 102579922, 402136755, 481541648, 70112386, 65332864, 177336534, 47317149, 203108228, 354192318, 138445917, 146660997, 759042390, 120771735, 235552954, 157440077, 235489521, 394928628, 942592442, 399175336, 403947543, 180055383, 391289130, 331152582, 167956448, 69352771, 471697895, 32380083, 64796844, 111295368, 798299991, 331300747, 283579728, 379832459, 34971117, 67180320, 13766570, 612466515, 756043065, 342576869, 20143777, 494085904, 112360208, 617911455, 353841866, 84084282, 263019634, 22749369, 763879883, 51365469, 677757796, 59675989, 492707786, 193694084, 758163463, 201793003, 265383945, 343420550, 16957588, 457172410, 96716169, 58073115, 193762966, 816954761, 749563473, 792663767, 373999659, 88854961, 162642576, 325807427, 18281293, 158797669, 578620349, 363702013, 120050450, 453770806, 133562037, 583950132, 114186217, 396076812, 208919333, 169115760, 271207225, 463610049, 685591393, 89433015, 333184216, 46594976, 490917185, 746742384, 798142210, 704892905, 121215326, 500385724, 38581909, 120965184, 213091249, 370153668, 102339904, 670425037, 723071205, 412768317, 372068837, 133666764, 520120755, 730693235, 644810266, 172913769, 122976950, 160357765, 317367578, 412548670, 259961392, 190742350, 744303750, 117159042, 578760045, 268655206, 595399879, 235771878, 483543953, 271209258, 440884555, 778493356, 769154252, 70917416, 412687459, 240014036, 773880607, 843490435, 445631525, 426098160, 787768939, 452022892, 356471542, 605518442, 73307485, 88469350, 215099825, 627773972, 522113169, 640648739, 676033220, 745423294, 852799483, 585092274, 90892392, 666013541, 594223914, 362743069, 71425020, 248400755, 67617588, 432345167, 176014080, 374643263, 550419841, 308695545, 295225092, 403724057, 252572684, 409342829, 5031104, 236657040, 236657040, 188580679, 267161194, 285923787, 155992933, 476737909, 76940990, 428406970, 168544158, 393076660, 63442575, 327596840, 79850378, 363031915, 195014317, 401585964, 110079911, 228882314, 357747252, 129977653, 426582749, 334484238, 53325718, 492519400, 555200411, 6280698, 882462698, 882462698, 432193060, 342654776, 457688684, 69655512, 403286405, 133138933, 703262035, 599615917, 551635313, 376504916, 25649838, 407548080, 792713806, 544402132, 641642137, 438968955, 229734352, 251218233, 85174948, 340880008, 6673891, 332011957, 325338066, 26789774, 510286756, 312805335, 5028424, 216983188, 216983188, 382948381, 543603647, 611440835, 86561530, 121276889, 61881454, 287609598, 621302598, 231557966, 196234267, 339766061, 285314043, 10578260, 123195327, 112617067, 478297793, 173541800, 53184062, 653114104, 871177959, 659583149, 104583429, 523984591, 70766174, 295676641, 297340360, 427000819, 44193045, 240455421, 465023765, 712278946, 278468546, 390096382, 153466749, 609784283, 479685932, 172364963, 118955547, 110386425, 585225021, 407425147, 354169308, 765822143, 101687337, 703824834, 555271351, 121575615, 164997475, 99863483, 321724530, 389717003, 51405516, 132488896, 553549201, 745762070, 77919893, 600521039, 119239467, 264208032, 183502909, 683171981, 943962948, 100460123, 470358611, 443945726, 285347543, 137186238, 123686372, 261947082, 144809745, 207602206, 14075887, 404675280, 410334068, 308343183, 137602833, 265697713, 149631676, 249149254, 363000466, 739266616, 98989444, 361245409, 391486994, 531347979, 256518874, 40546646, 39558162, 211451387, 757476158, 321032470, 10954959, 356193804, 356193804, 360941834, 207986207, 764515209, 193822980, 612810294, 134649511, 350525198, 197920170, 299489091, 202587493, 85157311, 417698052, 75509746, 671175380, 885707055, 35660520, 5090038, 506728617, 501638579, 119571474, 358197601, 638915657, 758071718, 268809923, 149638215, 124002511, 165598714, 447407686, 861973219, 40374091, 197489643, 323671267, 350915941, 361644591, 488175440, 828017984, 255619180, 276963550, 519290792, 151706504, 281200588, 293436194, 478149, 392779506, 392301357, 166412740, 309876159, 465846076, 165358742, 4497540, 78511262, 74013722, 137991755, 692065936, 174193757, 869641266, 388499571, 402833216, 674577612, 230188664, 660412768, 633617611, 541837208, 502647320, 104751372, 640506732, 261607939, 88259342, 352615933, 543320448, 46642679, 263876674, 178858972, 197668289, 771661611, 487286306, 10705490, 192517229, 181811739, 741629669, 379729586, 85111810, 353156394, 609526353, 665225057, 879575985, 829792941, 260101764, 44056799, 371231371, 357835095, 280613301, 233368910, 118115934, 596470840, 77884487, 525158865, 95167667, 442259655, 621755755, 820087060, 52993991, 715145029, 553041786, 288354970, 222774999, 294592807, 392724665, 61836431, 750774072, 673630353, 211346233, 211474521, 115918397, 768806034, 159590192, 340127987, 139763187, 599457645, 75399370, 9395762, 67689052, 67689052, 47216606, 92766038, 365826991, 448749890, 543781321, 264896795, 109995084, 110030835, 476139249, 232666891, 53597868, 576961178, 71660211, 90311794, 654009404, 707491529, 394257854, 368708718, 240724980, 14506361, 243433524, 377721184, 504103905, 143115648, 401619994, 221299641, 366501077, 638119160, 98614018, 591636891, 100041294, 397530231, 98369679, 716385908, 229850676, 65986055, 15758727, 275586922, 392801937, 147581609, 204530725, 433208157, 87623714, 768318481, 71475916, 734996627, 61839328, 150104359, 610852342, 287760763, 238438057, 667776002, 634677972, 40047987, 61875494, 142792918, 255684286, 55671856, 112900345, 22903788, 84097543, 443914888, 562677429, 2779117, 97711274, 97711274, 156721155, 56081056, 332619651, 528956119, 338026393, 199577809, 175397431, 36262178, 716109151, 54018133, 421162322, 120538111, 396083431, 293080815, 265260109, 67064849, 480466913, 658407668, 343516287, 12376561, 232155931, 24127253, 418292945, 275300087, 285154195, 598817442, 562079502, 654122391, 13009471, 543416577, 504154211, 26666526, 427839895, 11482588, 312743402, 939013665, 250861642, 582682347, 515523072, 265068751, 600816742, 522430740, 478041500, 455549799, 826373024, 313724093, 601814387, 498938249, 201614491, 251138064, 64199871, 385245047, 478267420, 406700931, 4892307, 121887972, 121887972, 470309759, 475786016, 378618070, 727768836, 376564746, 244752096, 587714584, 352555558, 283132543, 7028266, 259655949, 252627683, 345681020, 8717636, 301535670, 301535670, 149979965, 162500366, 17048583, 108325683, 452073814, 748803086, 212331267, 70044465, 510318235, 21502142, 696726641, 424579731, 83685846, 195135135, 66526772, 281251619, 214080152, 311945534, 666839057, 461009183, 248166105, 19885514, 641542079, 636908088, 642518499, 348821635, 126441702, 302854647, 46789361, 84865661, 120342672, 54585932, 471623266, 759287112, 289868066, 212669907, 286279534, 13148604, 154602380, 370800830, 341888930, 571341123, 240725222, 26477770, 463839670, 482317165, 394411012, 722021828, 504734309, 303707661, 964388685, 488691138, 404224814, 244156880, 367460635, 151416846, 8076411, 29593100, 21516689, 314811513, 60178811, 371800257, 641433258, 25744058, 642456084, 536835224, 268348908, 10495208, 266410890, 266410890, 115321784, 485069854, 469926366, 283169572, 47296987, 375039712, 513869284, 513907467, 462426574, 670279590, 81721225, 66393325, 425758920, 204622836, 165648049, 94202287, 133555920, 18465114, 410982333, 396195835, 385333360, 650349364, 758721903, 655674104, 431665371, 303523637, 345229070, 306590718, 290871058, 29488926, 362582033, 269001782, 102065146, 125159140, 152448388, 52125048, 768853894, 435001144, 45602615, 164314406, 146498889, 373690958, 365113059, 237800978, 7069153, 525146171, 518077018, 193499414, 560753342, 338694837, 9883266, 493388903, 493388903, 213500423, 79123260, 149645415, 275187452, 52710138, 497872431, 246666452, 266594299, 361272390, 24880739, 883223428, 240116460, 301861874, 411339525, 624081731, 55572380, 264062212, 237327051, 444996703, 749554497, 208293662, 408127606, 483857377, 545492098, 276073587, 362843972, 121446128, 354673466, 200165150, 164374175, 91526605, 197141099, 537190261, 206986945, 97759812, 784297604, 353489606, 265416453, 607179351, 630987245, 190323367, 5996991, 132635930, 132635930, 765802681, 12537445, 432764034, 141546126, 290311771, 23817836, 556903657, 501650791, 201052463, 781030498, 743367274, 386189295, 428360474, 76454487, 266768833, 956258441, 178650141, 178913679, 71639563, 658710729, 416745528, 311184991, 302303627, 243972421, 678850383, 731365525, 69558835, 139461248, 35308721, 486189636, 13924364, 920190661, 790455800, 410011342, 75933904, 298518086, 926911365, 114317012, 401755188, 377811712, 503515419, 100479069, 541570978, 75122413, 842214030, 526735494, 85902562, 282951588, 72613590, 320247361, 197785946, 578138760, 228900428, 163868522, 453042512, 887359696, 187191059, 521854131, 353733705, 147101329, 423186015, 45152340, 43891333, 89621481, 359148601, 613813415, 303085443, 123460325, 155167852, 27471765, 283303516, 331145794, 375078556, 853644728, 791190583, 25626641, 438120620, 356253055, 500053531, 162393425, 422941284, 322748387, 279716225, 376901087, 320364617, 66739325, 452391877, 165496706, 138289529, 400267994, 626428283, 735226546, 355679476, 50145208, 205223269, 90582573, 160125699, 292591188, 684116204, 241563367, 32060348, 468581499, 449933788, 418810572, 194131219, 648811529, 769535450, 145852372, 329061224, 509441513, 488764600, 7529056, 401118971, 393589915, 341949223, 326317828, 356403460, 367877060, 457369964, 102391622, 547613818, 2257574, 31028888, 28771314, 504971350, 360381519, 194196500, 62965227, 377020048, 424310797, 332161929, 67884151, 91964606, 468275330, 481161309, 381192856, 476975666, 262246151, 267805919, 470833976, 132354465, 146180970, 315013581, 157350391, 181147406, 431851473, 193964244, 174961543, 35973747, 64243872, 749306524, 506239772, 253413718, 113331422, 258469372, 234757595, 166685122, 534532199, 304304531, 910984442, 784926225, 60302251, 451607082, 185523629, 623965283, 129707471, 216532877, 559987094, 151072121, 132363224, 179595886, 633547975, 577194865, 506535098, 321009897, 58434342, 93737657, 537550866, 572760251, 351543963, 511527194, 27310210, 387252829, 144344089, 450372414, 842645063, 122166721, 402058751, 181213046, 322996403, 371048809, 557545434, 98996991, 12047815, 34643634, 190543757, 540338226, 485535632, 335327522, 248207479, 538908668, 385010332, 414550696, 404633379, 192270343, 85599392, 349351033, 733179160, 822621257, 780836867, 460560564, 383914838, 98158938, 498091404, 175481720, 513694305, 49933849, 127669330, 354116994, 319839065, 271207007, 219376766, 386072197, 298196568, 449060001, 871722721, 531230996, 71020268, 253062963, 334104636, 244806628, 558973885, 51340663, 443409708, 337019092, 285120471, 456194725, 615188673, 7954014, 292205309, 292205309, 612324326, 348255614, 328566039, 142367148, 210453980, 186234904, 4805325, 137941698, 133136373, 715689341, 370632793, 254867220, 293826817, 387016628, 680393249, 418477567, 90106905, 504451859, 75737977, 167303659, 475474108, 27317843, 433093901, 291722600, 462438028, 11476190, 56888939, 740940620, 11913990, 165706171, 712550452, 518061193, 357132081, 209568648, 340655120, 64995832, 216013780, 486950195, 540338586, 16816315, 117213633, 89860236, 133874465, 836335662, 93040214, 436202373, 192045995, 572770372, 26286985, 558695182, 90758756, 400808438, 8566018, 164497782, 155931764, 642648165, 147595550, 185601808, 339982031, 193853879, 106718770, 55991918, 51438450, 10738293, 37936747, 37936747, 199489954, 51788382, 86667990, 25740635, 192188070, 137663775, 694156385, 739935011, 484096146, 5336615, 401479947, 401479947, 182136566, 108355009, 524995155, 414814353, 290813333, 466322608, 230664090, 192538921, 806711619, 394431723, 447700702, 27566654, 662419174, 232084539, 20404375, 325350591, 533906996, 59992709, 402514617, 525119881, 55021752, 573275131, 11236878, 411764355, 51074139, 635843307, 815875626, 704718745, 221905762, 170027299, 406992337, 192540386, 433085839, 381334098, 213644049, 2265664, 132115053, 129849389, 115644574, 16608707, 217627348, 346237381, 152236280, 283361724, 85223303, 422839138, 334037710, 223712747, 885823719, 538082955, 495892912, 751332551, 857208702, 108483591, 118697727, 779110413, 340896363, 127911530, 561622717, 178533502, 117339186, 601517547, 19737706, 482539949, 402320212, 559324814, 342687642, 147150795, 712166751, 175662896, 613897367, 188444005, 310822799, 490289394, 218692371, 244539203, 136279611, 116835407, 161120314, 399269537, 593027223, 788113268, 544985164, 475135092, 35116687, 429928131, 264587769, 559371659, 843892103, 269153611, 222600993, 111995611, 488157227, 417233742, 143487396, 53439549, 171510506, 518802992, 97835286, 30917882, 333916057, 369025369, 379318089, 363289514, 134034351, 38124586, 118365650, 425031792, 64574988, 54174559, 153528544, 188982833, 623057176, 89142538, 98774341, 322501838, 233230162, 240219028, 331178461, 463888730, 338117774, 341128430, 461945115, 668358771, 396443718, 418454454, 757617354, 815511960, 334902917, 387101242, 253863602, 406786108, 619094490, 255753248, 495969376, 753687882, 203697804, 340418010, 536143922, 723738624, 951570237, 559906023, 109087061, 62756729, 112587398, 313227972, 96924491, 130824255, 395807164, 337089868, 227493194, 865908786, 700533973, 76768760, 407263271, 289322515, 473859228, 338151083, 776037910, 218565774, 40303485, 238119606, 211945954, 211875959, 422099792, 803745099, 65070817, 656644473, 569554166, 85091335, 270542180, 88342189, 435277700, 17139427, 482213098, 393155206, 176283800, 141115637, 426493071, 767451909, 570560413, 52232146, 217706987, 424546849, 68419330, 662307838, 92364914, 109472999, 44644798, 477630183, 377064303, 315367802, 172778979, 117596446, 136784169, 31097162, 46248330, 38769990, 121724831, 476782963, 633592653, 298912909, 443633676, 215066920, 45155234, 478780855, 103745009, 127873812, 676021060, 656875967, 139690017, 387539747, 339441694, 735819948, 229909400, 82815218, 569615192, 289557621, 144370385, 67674457, 448952492, 790046968, 712890415, 202995070, 35057805, 25673243, 344301275, 366506130, 167984328, 17470385, 218145980, 516884228, 229340668, 430766766, 633974076, 4833216, 726308916, 721475700, 507130274, 206067532, 171731751, 263713285, 354791502, 283261184, 394918047, 577620750, 354323216, 108192625, 393675863, 54961321, 242202698, 71023194, 118138043, 690990277, 893670209, 646602858, 64115043, 59358104, 338097748, 302004820, 485131704, 620372062, 572442671, 428520060, 569055999, 191729678, 863830339, 172691043, 23868700, 198216273, 182374618, 62569594, 514081929, 342070216, 439658660, 717209216, 121560805, 12453438, 647816147, 16141259, 699939838, 106689207, 227029067, 47839707, 44965555, 114429305, 604114711, 421331228, 208297467, 587321378, 37075095, 425868634, 220657177, 12984317, 581899436, 14356130, 129758112, 633131131, 30757339, 238284219, 38980569, 527246261, 139046072, 275753743, 8980662, 341028257, 332047595, 150574908, 654013815, 53832437, 23424079, 701693968, 535672902, 303167017, 341018917, 269628741, 263843139, 220855687, 303592602, 346817665, 413118114, 770245782, 693600198, 60028366, 4559485, 46745113, 46745113, 689207028, 362109928, 324818164, 897335522, 126858519, 39299943, 786970748, 518307591, 8077069, 399311984, 399311984, 129641521, 590089371, 194369727, 247568384, 198834568, 276200437, 139309026, 570545471, 307347383, 11978086, 140947417, 320212057, 180081943, 82967713, 342615382, 176831615, 250809184, 184887255, 395289696, 103929887, 943341198, 283963058, 32595296, 608421689, 692820719, 267142851, 447036499, 671850479, 623492096, 44184142, 389812871, 128591097, 475119784, 422176078, 527475553, 971599256, 541025939, 423656184, 153054573, 244363959, 96395336, 448927431, 799967095, 353672063, 157423667, 185700409, 164095370, 207677672, 146127787, 568122245, 220663650, 152910024, 53759552, 531812707, 192200403, 394928995, 283506506, 629798733, 162758327, 473994660, 168921408, 217113035, 254237187, 219821498, 227069849, 442144368, 328881154, 374537583, 581981629, 606535918, 687077334, 541204931, 683564177, 608678305, 610890473, 369376064, 465439617, 810052650, 627582610, 138858366, 187148039, 797080201, 744973324, 203973085, 27351456, 861207744, 406492373, 111037295, 43300370, 510965375, 632402065, 654453882, 813680640, 835752398, 439236100, 519041490, 165228778, 61238299, 31373899, 254197386, 883049786, 36202927, 506664918, 258015872, 776767625, 200695854, 141433072, 137607385, 355295266, 172099021, 63664176, 126478003, 450467473, 141256723, 17709571, 503954681, 346770766, 142447796, 231418646, 85769373, 51475924, 18204173, 318609848, 10168403, 135923795, 135923795, 128559622, 294416815, 190084784, 8551594, 646545788, 637994194, 873688314, 451404860, 490909046, 780059188, 169169967, 176738882, 144581301, 41525492, 212685332, 288386673, 618330899, 146729911, 405735055, 42397721, 4110266, 357735238, 357735238, 156372619, 523789375, 47360839, 348340160, 232664039, 153036255, 238234617, 315044265, 300450120, 51821619, 98349556, 630313040, 741831654, 490025327, 27530756, 40523850, 125245050, 245076728, 261481441, 209091829, 32686722, 241709324, 417311417, 442185784, 25423948, 750542661, 74230942, 353223432, 262856814, 218787906, 71360904, 293316838, 293443732, 406872080, 562383468, 140833932, 26877776, 302751899, 931147241, 953569821, 146256738, 371722093, 12683115, 281808132, 65097139, 661390534, 604299971, 367036357, 120096238, 323891846, 64730444, 23437902, 101981577, 105593771, 398597502, 650334488, 906217669, 779828504, 71278595, 102420188, 641390038, 73087949, 685611804, 614598159, 599229440, 221378404, 166010173, 235320431, 252818683, 357993547, 59987708, 110385806, 663488615, 1908390, 862583886, 862583886, 183141619, 631276598, 14701412, 416648301, 17885834, 218941712, 1681934, 201962030, 201962030, 611048086, 429175120, 587199298, 28492616, 503389878, 226501417, 113758236, 862367922, 414529421, 357318280, 82254720, 112938098, 255261604, 274326252, 815044366, 510438746, 211775989, 408869224, 747472069, 945878055, 820521895, 543635786, 618935858, 56336357, 497838452, 195693585, 539629546, 323505190, 166023815, 109504675, 316101342, 172239129, 255498114, 269780811, 591496446, 234966426, 179700231, 41917268, 50269573, 298094566, 157904480, 235342256, 297647355, 190744536, 340771219, 97114951, 248433636, 190032813, 7499839, 290721198, 283221359, 707403207, 43966030, 739144707, 202901130, 250457271, 397950181, 286443791, 100994284, 617988588, 315512941, 127109295, 180688075, 250234637, 527600219, 515950735, 181513800, 15804337, 266539127, 547943224, 61044591, 224161950, 39857112, 403423617, 706353425, 501323129, 17562473, 187403479, 239783486, 313791163, 124722281, 75697215, 56747906, 416323945, 158421732, 236749559, 658202641, 97985958, 5970445, 458094474, 452124029, 68683502, 433208325, 116510612, 101804643, 325658510, 394553757, 7266523, 307381593, 307381593, 489848875, 53614389, 297921356, 411784382, 142075755, 232811391, 120038258, 73369284, 135151759, 170067807, 412102766, 549845248, 704503044, 802412373, 453828600, 48708202, 446273958, 287442319, 8214729, 224700415, 224700415, 110236522, 159870765, 763626613, 570578771, 253308318, 273853978, 50983341, 168210875, 249537653, 230643062, 165391553, 35100628, 727657453, 62555870, 450791598, 189471735, 113889848, 69818006, 434974841, 231068257, 133072133, 266646404, 118277439, 84644036, 823181853, 375877401, 348535609, 762149306, 309814282, 184038972, 10856254, 269131793, 258275539, 179878268, 114855958, 719799507, 170975841, 298952903, 246434855, 142673056, 3441252, 23352754, 23352754, 294625897, 474492919, 337118987, 340266321, 872021259, 602236749, 512294360, 380491912, 39302400, 7078155, 381062544, 373984389, 19555755, 924671991, 536289653, 396791411, 75155798, 274456299, 771835368, 673330154, 779498547, 255444021, 290971411, 412082911, 275029397, 183860382, 85336127, 552372885, 614890785, 317652515, 131498973, 220034480, 211943665, 61743061, 396994908, 117898308, 627143378, 105945368, 707499599, 115701065, 9954213, 145854122, 145854122, 530081814, 121886218, 25863686, 167109406, 153652024, 23635447, 16247079, 304911018, 648170921, 195989395, 567571588, 448910234, 48731127, 159091664, 29869748, 45827606, 612261584, 667453340, 744783286, 767234320, 481565104, 584131, 78542275, 77958144, 163130128, 730130384, 432198522, 11158075, 165060429, 40479065, 51695621, 548945518, 455539634, 119743220, 354290834, 291331532, 113009574, 444086468, 201806387, 280202675, 220007434, 523476780, 480981688, 159773311, 131316069, 469692168, 40425083, 216737487, 532366381, 449082509, 482336240, 413081159, 354816551, 580604308, 458405341, 677949935, 242368270, 535669283, 153013596, 343538916, 125800100, 85526515, 876606035, 682759906, 528545846, 26926534, 642142500, 502024479, 572718058, 881641898, 343160490, 229822274, 508881255, 75237101, 47939589, 98203672, 52918768, 439140345, 364418078, 610111783, 34375368, 864192297, 565579287, 305069383, 257677206, 64649641, 111915040, 701593627, 527631075, 159624484, 383850466, 647509970, 333710062, 347910217, 397086449, 326420175, 190023939, 811174681, 115923721, 55894727, 29670803, 116176816, 640772622, 654835616, 87196522, 227997447, 382747613, 153668745, 580109539, 272515147, 182395771, 344629414, 222539011, 330694930, 53336582, 484001848, 119544489, 167993645, 384565365, 448059928, 40011385, 117865632, 312666896, 211891608, 570348341, 27019121, 304755243, 420176978, 527753398, 410264043, 505151671, 159063702, 352930175, 128904964, 140442187, 96049586, 282524472, 15477734, 359314071, 421239874, 3840442, 44730860, 40890418, 88325288, 131915987, 683813658, 84677431, 178416838, 556445358, 27433246, 228317654, 504776315, 183650221, 72383978, 101110116, 359200004, 27712365, 774445561, 691230144, 18019956, 490145733, 523492063, 88747604, 159881812, 611550659, 189049655, 685041843, 54864948, 72980498, 543571401, 204062062, 207136180, 310750201, 498667661, 607278886, 133942102, 465373728, 357145951, 704120184, 93347494, 386080853, 238402767, 82028666, 807696033, 652003611, 487260402, 452929900, 637272365, 554299910, 652313426, 805951531, 1587198, 675228980, 673641782, 506856182, 188298262, 268093701, 498563744, 311060058, 210309679, 423137460, 423739539, 217438298, 288394702, 95201433, 95416613, 385968482, 706878950, 386285464, 23808149, 250426324, 253019668, 170244170, 560907077, 58806010, 794001365, 52301712, 122181951, 66862745, 7967272, 501680730, 493713458, 336119074, 249801677, 433894788, 398515382, 145554915, 114497338, 489211344, 67970126, 110819833, 169574846, 146335378, 104624205, 322856964, 507298440, 175103069, 16723599, 231587561, 352362754, 254416481, 470570383, 451091527, 475286465, 293500440, 50398031, 483126476, 75011614, 834189094, 289038962, 669794075, 971169160, 799223701, 541124128, 709343185, 127625106, 471420751, 280505447, 514410671, 391580577, 81479417, 270380152, 74323608, 144488517, 579625777, 99587237, 774244756, 378586230, 189940374, 99191646, 249629529, 228210504, 103553407, 94176758, 155932449, 534968480, 234980488, 240705896, 649831442, 652132578, 751664925, 171655356, 383002275, 377249977, 916324117, 16599147, 848719342, 880049387, 10340979, 860191616, 849850637, 261515433, 44610067, 585024889, 249582930, 608094941, 852812108, 63181926, 425647963, 490718715, 937962022, 169825780, 382777789, 176036797, 41292146, 202218254, 59667900, 273874316, 362794791, 82979110, 107992706, 5905066, 289292590, 283387524, 499526772, 935137883, 384145817, 240057780, 474586649, 15297997, 241782304, 635537180, 295639751, 172036461, 399310238, 232208801, 474822138, 75093966, 803670631, 508485526, 171788496, 317922933, 386041309, 525214828, 362617683, 597466624, 860411069, 246037379, 40131387, 69113872, 576962533, 209565607, 253701490, 82401234, 332777775, 803502750, 465734624, 343376987, 428161485, 412381610, 216244735, 15700873, 233952896, 13148947, 15550448, 311725146, 285762935, 4171251, 161922445, 161922445, 194679481, 323331462, 73803533, 173822821, 23679593, 206043991, 404603307, 925114617, 670522288, 295982977, 565751919, 939734076, 564936153, 548548860, 940154787, 15309874, 592666585, 361121257, 698614357, 140864460, 319453480, 480714764, 601666523, 527595755, 609964674, 100733188, 397843925, 701943042, 874886413, 414888225, 318801750, 464505240, 207035854, 444338210, 382838715, 363390786, 548147086, 561351092, 63182778, 438303804, 610153762, 547095479, 355418335, 16913095, 472091642, 208294502, 562737401, 533502076, 258797195, 10443278, 497002082, 486558804, 903340043, 317602082, 295027379, 345238752, 34004572, 127069242, 555118633, 609490368, 76197644, 4407677, 293601651, 293601651, 667918725, 339985786, 255162133, 336525601, 613189302, 620627251, 813488668, 458452008, 280041169, 182812817, 415488210, 514897580, 298612460, 406688899, 177424254, 132860163, 491780347, 320016721, 551945293, 657841705, 48069537, 72839479, 116075895, 118804089, 396387761, 154061235, 591268492, 322383261, 410912546, 368080009, 280557240, 123283933, 108690196, 890285560, 137271619, 122062286, 481957474, 35461608, 434154022, 357164050, 651414473, 854528923, 46926280, 745172594, 680495426, 717346557, 251725383, 103918153, 225387348, 929911399, 865338779, 64027370, 422459915, 45257670, 77047632, 20319770, 79995589, 253043789, 57728648, 368571525, 44465037, 680488348, 563872876, 271048817, 38680466, 542180573, 156312038, 603591892, 6454682, 133094543, 133094543, 943649568, 304547006, 398106015, 149103857, 423931802, 246609215, 390814348, 146069705, 435231918, 581685663, 533191387, 301565099, 35550399, 123549446, 546470310, 935569208, 868842655, 521055400, 38981593, 102275091, 473298533, 247142970, 539021645, 38605217, 136391436, 208462177, 28456226, 371626616, 288407550, 494920307, 98249511, 438414391, 27943607, 634771941, 95119695, 228446714, 234514458, 131306196, 278253618, 128637572, 584394257, 795924699, 506606865, 12493558, 629177119, 727578133, 136018867, 31865328, 211758994, 225557485, 189799133, 55720484, 14505766, 145808283, 309715820, 175579593, 825343397, 106352764, 175029226, 487651666, 747599891, 323675806, 60431000, 4812998, 374009803, 369196805, 499809050, 240455297, 323183371, 736398591, 349457242, 438310513, 801958520, 451987560, 93102075, 162333462, 123825120, 442815930, 79741792, 75620721, 80597386, 36682618, 499822226, 537438353, 160267425, 98747857, 191889629, 541159708, 570942783, 885917712, 86941422, 578478710, 663865734, 1400482, 407189775, 407189775, 379296156, 122998412, 155517222, 366268791, 182803270, 519944950, 258202694, 325095929, 46607937, 197256347, 313385931, 9200471, 233930944, 233930944, 107528706, 402317825, 72210504, 196528740, 504893591, 351190535, 427730540, 572217924, 478524311, 243798765, 235279366, 273720271, 244774014, 591314145, 8755457, 255253951, 255253951, 185054146, 18362058, 533625889, 847239449, 718628204, 73785466, 654460621, 565912499, 236452597, 151981374, 33769113, 332085848, 3633320, 229968104, 226334784, 147303574, 179014526, 17659898, 101191810, 351272368, 447435598, 57809563, 55535647, 134151995, 222873607, 291262684, 409992884, 20563244, 207602163, 478938081, 295894041, 287863939, 231479647, 405917640, 930832136, 97678529, 479240142, 585329323, 603404141, 251449464, 67741952, 446069411, 353456753, 484825039, 348946763, 348846532, 82350060, 222190745, 570018539, 240524169, 313397299, 145142057, 284337648, 441901319, 66914509, 96516378, 219111266, 414554425, 433348665, 249554157, 274427830, 859247016, 259014955, 499585273, 577601843, 182711236, 460231553, 537600020, 242451954, 527056756, 529591769, 161027986, 410247685, 298553421, 417318550, 347172545, 199706172, 347355115, 695923346, 473855543, 420267963, 31602896, 281657954, 6649688, 95681549, 89031861, 137211504, 563298059, 875356466, 4324053, 440328975, 436004922, 181710884, 114447572, 186075870, 525623972, 87045050, 609207644, 911154915, 921590990, 718208275, 166196860, 636887105, 683089245, 552842601, 328299852, 695207749, 572868972, 325368699, 64313843, 131237314, 496103392, 120435202, 354959402, 22218528, 240967603, 642452340, 721578484, 245238067, 198010640, 193226712, 646443906, 67863555, 808780486, 34746645, 794669284, 599165370, 195691492, 699514370, 204746338, 297910412, 146317105, 818959139, 218429760, 203952820, 81271210, 11835544, 465063844, 44135629, 450946483, 310983868, 385848113, 199615489, 407333798, 440787367, 41111483, 195630312, 267516644, 232944192, 237028779, 157844970, 57250677, 23906259, 658061467, 149084751, 373520879, 443512712, 150888372, 29848273, 270946784, 439571677, 41113986, 223730164, 76920183, 55804423, 192385275, 457166276, 58034265, 447962171, 56589580, 206550659, 252278438, 813059650, 11810402, 591911302, 428513901, 687214603, 726519393, 503091021, 84085503, 119029087, 374922169, 195305164, 82769121, 456932329, 635153358, 15548276, 537895528, 92942439, 656855335, 829009039, 321984253, 464006706, 211772140, 206503797, 407684156, 640934166, 332121376, 137979827, 287849613, 294264155, 173738011, 647375219, 575930506, 216571084, 129500584, 294213744, 165085551, 653869770, 631940890, 641499587, 443817799, 4356862, 527116352, 527116352, 478698456, 64604077, 433443109, 924213355, 44536313, 526341594, 142600150, 117178924, 93235337, 715526224, 455689997, 374491890, 748670314, 762311461, 838917077, 868799269, 4186520, 748223247, 748223247, 418429303, 146635419, 472511191, 58582502, 378795321, 382385206, 198910643, 308309172, 153764254, 261158335, 304131697, 948088574, 460749109, 214174702, 147887380, 106949985, 562810795, 700792826, 94674234, 825708472, 243788698, 545025402, 410002430, 701244, 444809772, 444809772, 358900286, 96306434, 202590603, 726524579, 746296102, 741778255, 193769937, 197242081, 632305378, 134097894, 697610087, 158898209, 897513509, 728413123, 604583354, 260948072, 260924314, 113940427, 435110113, 135853854, 582758046, 395637660, 61308682, 265680144, 441668046, 470591712, 67225721, 23464080, 320914437, 198313752, 198485312, 42027480, 583536817, 580154905, 326549340, 644184698, 265099531, 207547223, 43878255, 427071989, 306930797, 98759957, 98647343, 128636650, 487095387, 267170920, 73993635, 25379582, 55460368, 405486620, 66202539, 316972701, 285011834, 172287640, 683630941, 494346646, 167019654, 149208739, 167090233, 199147331, 164591797, 545162812, 38535139, 95329940, 797338000, 492052392, 437214343, 41537941, 702717007, 657731074, 536557892, 248966417, 358089925, 552920347, 322900160, 355708857, 423702784, 36805558, 609217403, 594878629, 404897598, 214307846, 690947494, 244263926, 442653951, 55717149, 700845752, 644921437, 338185464, 80874304, 237183394, 296754091, 310360766, 421183286, 399218099, 448026540, 255351364, 202765357, 127810556, 76089312, 697894603, 418171860, 430579378, 283653038, 379926840, 147399100, 376523798, 73241167, 318321034, 491694936, 47872560, 561962758, 603367727, 550286536, 32135219, 364662698, 589836461, 299526726, 310205659, 169129803, 512650125, 59704363, 34663825, 289063472, 99564108, 321272118, 133825588, 297617568, 515521947, 65715978, 370090015, 688888591, 141112444, 45747291, 173669921, 38871397, 155132868, 184908426, 202202813, 28999933, 221837323, 379036647, 83274749, 191073278, 559502004, 326979839, 80926674, 113509483, 292172381, 683549996, 48757366, 419010313, 168887559, 169507584, 121793856, 142094213, 264622199, 463763626, 233707016, 402223576, 324763605, 104563790, 228429878, 191515156, 331217861, 175627522, 180367948, 106072186, 236275605, 173205124, 571756992, 152107855, 77885995, 610847945, 371663354, 322268422, 65234671, 637517555, 632366157, 296633371, 280111083, 204313426, 922036747, 206286322, 157447842, 282543826, 642893249, 58757281, 89195029, 139719643, 17604384, 153279168, 14084825, 241051101, 263430318, 330180775, 134961868, 336224718, 114929283, 104455220, 135850613, 114682559, 51102490, 589886898, 200059531, 147640765, 302738170, 718237631, 134014733, 144170840, 171017890, 397349325, 207393940, 334488309, 816339915, 601953755, 509264963, 810725055, 552651771, 52703250, 292646151, 269242011, 254034729, 187014932, 338190701, 725071924, 334204618, 94450407, 598522218, 610690315, 187865558, 420696298, 181634692, 520377759, 372597401, 109716143, 148705788, 16919853, 214867420, 432974377, 103303320, 611530651, 561314417, 75720921, 794811216, 38005059, 740278413, 566904380, 148741228, 259172925, 52430507, 199146186, 7306136, 581329259, 581329259, 460719822, 444134845, 379095058, 89591354, 616210451, 553495669, 212730122, 702183302, 579522260, 111253932, 699716501, 414302985, 318215130, 7991221, 26319273, 18328052, 29686381, 52991186, 387237790, 185987108, 222739353, 422436574, 141827697, 62129465, 336922804, 238952731, 63192235, 269208659, 297567397, 273534563, 552093817, 235715577, 5613651, 174933173, 169319522, 223255338, 296340764, 260766070, 867876292, 824347421, 228711143, 31227942, 43731149, 325901718, 51589032, 752266943, 742932641, 124390333, 254168963, 888460082, 592282703, 406626425, 190889557, 158610442, 80796715, 166811647, 76359719, 542093883, 345941895, 261292959, 302728436, 52069200, 574004335, 190308292, 94374508, 239198880, 437597548, 362707106, 488574972, 64532907, 133199093, 941655092, 825625421, 674503992, 572155551, 609939570, 468893659, 231048605, 116384261, 355988961, 245054251, 398440116, 364975856, 448599104, 150094825, 145102985, 617958020, 43012859, 2199093, 313736730, 313736730, 89500845, 100813528, 126040112, 108838792, 502653792, 277622299, 271260894, 362272974, 451791090, 154635784, 309503909, 388126422, 521103079, 266279897, 480836407, 525699930, 380102660, 439912199, 15037651, 280634612, 433537338, 232306523, 803131434, 278590444, 130028756, 115913280, 265778016, 163956658, 471590846, 66908773, 733237655, 101806428, 12429939, 109302344, 695277448, 11308047, 22650727, 55514051, 893216102, 417310387, 58981662, 174733142, 506349814, 429671434, 667144048, 763849658, 361706646, 325861480, 262501198, 376384001, 426093921, 230738758, 160567504, 629714937, 221881030, 760307601, 850653808, 252295722, 82350302, 52477989, 142532611, 359948118, 333642046, 15873063, 200504449, 79775627, 372010461, 264565361, 45002701, 94882152, 118809702, 504761306, 27572699, 69398173, 430182843, 506778800, 773326974, 114821018, 54176397, 45437022, 590794151, 392237620, 53067337, 147021130, 478714625, 289818814, 426697567, 519415839, 27873112, 52520875, 47958446, 354143919, 729090969, 402062376, 89670389, 536625890, 453785562, 201193582, 640784270, 671122589, 414501381, 220713183, 800111036, 277282376, 582511105, 605321230, 462732288, 540438598, 16719247, 540290535, 24066064, 728770335, 545132205, 207581788, 282684042, 669353088, 663537798, 60096113, 633369262, 287763789, 825994711, 79844020, 71280075, 641301273, 74573324, 118299167, 531170244, 80786791, 653358897, 677769433, 307648749, 210842703, 592742681, 603761615, 582486688, 73099496, 339841749, 400026015, 180543805, 149319823, 449939936, 380517909, 597517996, 74864417, 352168807, 31828523, 20403386, 371195897, 393151196, 107040507, 117831095, 443180600, 395591427, 378429534, 190702365, 76811358, 762377130, 217957423, 60115140, 501859976, 756741714, 878089762, 828986693, 889096777, 650540996, 539493776, 487187932, 471870676, 500885506, 971673, 286588785, 286588785, 885294895, 24483883, 527063428, 294371302, 559179178, 536450616, 243308414, 462755494, 475809362, 178586524, 271600084, 303072943, 64075866, 922680645, 131891102, 278950551, 330707438, 112908208, 114956190, 391494274, 30727410, 236264858, 363732971, 544589514, 194834110, 671360093, 594892370, 479505593, 660716679, 94315326, 773330123, 110835543, 359300926, 406784523, 8983089, 492409781, 483426692, 477703082, 584754768, 97423745, 365531183, 517024336, 189235441, 77927158, 501656896, 326572245, 148846603, 290521800, 59703791, 743089630, 5688202, 368826059, 363137857, 416181209, 209093168, 415887203, 280629428, 590805989, 334565342, 347209557, 350615049, 257573245, 209811259, 428237542, 450911021, 523552365, 698733315, 615713857, 183447677, 634667618, 42508862, 149136861, 4984035, 614322948, 614322948, 266608799, 317092387, 369437752, 266655126, 233213184, 35230319, 435692990, 496874291, 85580404, 343761992, 39513007, 330449517, 823369212, 413575297, 240371635, 172146037, 493552971, 486521906, 343537762, 321983506, 678589349, 747492160, 203837265, 236434093, 250582843, 149536330, 368696929, 643762396, 717350138, 605627941, 302641232, 214550886, 163070432, 15226028, 766432656, 550074141, 517826772, 395652542, 32936815, 192198150, 65089964, 44353410, 312827533, 431110105, 505260117, 78365900, 92986037, 26401715, 97618910, 488894658, 99753609, 647171773, 469757853, 391270634, 453158242, 332377642, 308278433, 290973320, 428072696, 331781261, 205456908, 265608358, 169259851, 280447827, 307240849, 618597179, 355835356, 531956305, 490743389, 130255499, 185156461, 393070275, 363935497, 200888452, 290893400, 872200085, 21642224, 318849066, 203233057, 464826185, 606858042, 196512799, 413911487, 107216479, 215995058, 149872985, 255960986, 121519325, 361080889, 92146156, 139660432, 124153113, 79580714, 47889479, 215942095, 562200875, 54896444, 106291459, 58310572, 10006125, 912252583, 902246458, 881837590, 290427654, 104538085, 24238645, 198105004, 355084496, 353530547, 71751125, 355463120, 123791124, 209714810, 191246724, 131781880, 92095161, 356882414, 652007108, 724615327, 251204916, 497421018, 182276435, 188286447, 783363002, 586582287, 205661031, 37630610, 499524779, 108383715, 48114167, 23533242, 137483429, 179662094, 147565714, 312665473, 660032894, 512383042, 273803011, 218712024, 20228069, 73542273, 321920374, 75444649, 90027604, 614969691, 190250675, 235038834, 70647818, 182758111, 213375507, 24623487, 523506675, 219983261, 713491345, 222345936, 261895725, 166833534, 179593369, 581508187, 690083259, 561168742, 367645384, 136679340, 637313302, 46156203, 300416427, 128983703, 340497641, 214998814, 426492938, 159305981, 511351071, 504236696, 48673879, 247341722, 38738179, 137799190, 122538311, 665923796, 678050506, 63870481, 557124727, 36981305, 254230880, 384352483, 97391626, 400343263, 51332429, 308819650, 68441407, 671733822, 766379436, 37435901, 756269485, 771146217, 155210219, 108161638, 307452082, 59780521, 859865209, 717161777, 367472424, 52290442, 336510974, 270309600, 187542730, 325764298, 286999856, 430319352, 868065071, 684348157, 145996851, 235760735, 306092431, 166540203, 465293528, 430173782, 190198333, 149228482, 357161928, 283310902, 25846379, 87743658, 160758523, 480456741, 383595956, 563895044, 73363146, 112539137, 751121762, 301156579, 53289742, 23162701, 100282869, 131023299, 68865081, 571839523, 97662456, 154701992, 352883404, 325474383, 181710920, 692508381, 434079602, 490507374, 760685406, 181132352, 305344486, 89187161, 443557791, 34983361, 97571115, 397773576, 706462994, 471080810, 178079288, 641331922, 263179448, 186846981, 646854033, 328176733, 261162861, 32306692, 673934391, 366501648, 195123666, 212759181, 6884097, 769814847, 762930750, 410755575, 7355729, 240814404, 233458675, 588109937, 658060289, 471657665, 219322430, 11028482, 641129275, 641129275, 558280460, 148783281, 56704707, 463875693, 134392782, 33481475, 714373991, 87383656, 465725208, 392696044, 385462432, 188006277, 310869560, 304582267, 201143977, 178266510, 699731409, 247809286, 113329869, 250858593, 438175513, 482905451, 354240585, 172746511, 404299006, 354960520, 297132549, 282255882, 577722547, 582317326, 6335560, 58409418, 52073858, 24750026, 170084665, 478555503, 457606676, 184181780, 120554991, 180330527, 352054611, 442038215, 34488030, 602061261, 501492384, 292437797, 538238894, 351642294, 64187585, 57372906, 604115315, 11091407, 387304981, 387304981, 99810464, 442883035, 123226195, 190901035, 260597135, 172407453, 269739722, 228801228, 82350274, 210472760, 146042010, 582976330, 6861390, 673747959, 673747959, 592054666, 676934599, 10292289, 456283645, 456283645, 230036240, 328886012, 196951812, 664986160, 802385893, 38794401, 312034516, 50598178, 665318128, 832495255, 20684690, 302960784, 247208305, 456219472, 105874148, 549909224, 258281980, 492222690, 390894427, 12838146, 522965527, 193085931, 135527540, 92859525, 327892149, 331102974, 458726744, 437783741, 307206784, 49969741, 503328689, 851301079, 20101633, 839211048, 12849868, 921043930, 454479169, 376970082, 306437357, 302856619, 730480927, 116174513, 42419177, 362630482, 218839222, 174519961, 175315857, 452766366, 554636671, 287623477, 403829035, 594136682, 520482904, 191908535, 639204955, 627877219, 188033492, 550556598, 128136351, 159384612, 237068798, 439027759, 31611299, 107178253, 518786531, 12002759, 249660182, 80039092, 71107780, 177640684, 212302875, 137711121, 143042277, 97004490, 630732748, 15843440, 188843096, 135946164, 309171892, 89169508, 762985627, 4926029, 23914739, 18988710, 216573702, 209566748, 385203647, 299344841, 513758935, 26833031, 215891602, 256772727, 480321644, 136365827, 421990777, 298484540, 544174903, 537277181, 61843893, 147857856, 60252350, 851492551, 63755041, 585573273, 455228125, 289643938, 151415929, 195967166, 592350039, 103655054, 132929477, 269225658, 17352286, 408170090, 444690208, 196087491, 172996559, 265493425, 230448295, 383466167, 238920362, 168288525, 3483222, 291067873, 291067873, 410638038, 166791583, 388158457, 546435816, 772607653, 879633067, 221338615, 286811975, 750196295, 188206175, 128053074, 562458185, 65124112, 577585008, 60599434, 399763558, 426717386, 669998793, 868680976, 433741277, 113635790, 286507242, 335208831, 285191680, 713742648, 126711886, 30018288, 389126484, 330371517, 763904056, 42561993, 206615075, 349876171, 340942806, 97802038, 673629465, 102160239, 721180559, 97339358, 557534040, 247752309, 147903290, 73278099, 546888713, 55749407, 454846897, 40703189, 532552341, 259707836, 71928343, 176289874, 299109695, 262629622, 6736641, 241100535, 241100535, 67802733, 536256156, 826571530, 124496847, 138673738, 668576563, 337087325, 250903436, 211599746, 106612719, 250580167, 473061010, 5704903, 14407428, 8702525, 31988697, 23286172, 358379024, 220998556, 48110481, 376719828, 16127274, 298527729, 144923682, 803247901, 517994385, 310754127, 140830641, 190688440, 4293839, 97870533, 93576694, 399264217, 443048111, 588807819, 575139890, 53678752, 317986096, 380507484, 249864124, 609021849, 185565608, 69226177, 825185034, 286427851, 141496811, 310699776, 223615535, 398132062, 312809617, 494240148, 742815495, 23335951, 496645920, 352719947, 431852690, 108429098, 257541854, 26447848, 511766260, 417666652, 633868961, 496069358, 273138132, 419725862, 209044397, 62843623, 266018551, 814654354, 811741985, 556198236, 338673440, 196513543, 177256165, 264588190, 225416146, 441845969, 38414189, 182698092, 366118595, 228811260, 358823606, 182992766, 139317251, 160903257, 262512029, 247275663, 374817889, 54388596, 388453146, 169009779, 142734289, 610435311, 105365820, 117261960, 597384997, 256462054, 495692844, 898442439, 316832449, 63574417, 491037116, 557369462, 580273862, 133756456, 198795519, 292724370, 62144376, 369473659, 420304982, 733097544, 601332336, 569296255, 604815909, 304600693, 484534647, 128268385, 22777552, 465218687, 339674998, 544157154, 361601537, 158388248, 103825154, 488104893, 109277249, 369509493, 590675426, 294958905, 537363717, 868648239, 649039132, 335471061, 129795563, 271205315, 90350593, 109365138, 132627296, 692338652, 528083322, 73503203, 80365822, 251134092, 207755682, 453311445, 450545438, 217661136, 501456719, 435971352, 13104653, 788585503, 585908790, 734011965, 303441309, 166667750, 165601091, 185636884, 467525882, 457737657, 311452465, 199638134, 421410066, 145775554, 473020953, 374440796, 33929060, 535246809, 99853012, 75333903, 124205618, 241896993, 130317812, 557315153, 48818405, 754272587, 507553097, 86803685, 634525312, 801744627, 632393688, 184401853, 627313870, 94204423, 33017151, 692098785, 867774757, 167430947, 128123221, 431996915, 254199999, 264402245, 239516877, 176373864, 235322805, 469691475, 396984746, 342649843, 214105336, 819866352, 295692115, 209571600, 566672520, 163417829, 18611445, 338104316, 154802874, 479082471, 424691709, 348869399, 161593116, 365926878, 267412527, 117009850, 465713421, 197449792, 339964390, 72134756, 209260675, 337207934, 413573547, 105076989, 133473647, 785954607, 116644252, 372341908, 286273888, 14947744, 111436418, 415148755, 5274721, 488703086, 488703086, 711449395, 44906966, 261655028, 225275577, 27265580, 59546476, 411310494, 396101519, 630357660, 888923652, 759604655, 167093606, 245153811, 655286964, 9694956, 648048963, 638354007, 371392901, 3030085, 108639044, 105608959, 173599598, 145201979, 5616431, 562789179, 562789179, 366108314, 515815018, 501179767, 130836257, 291870622, 700029565, 110211340, 185620436, 229199178, 355731876, 255138086, 276334516, 706473437, 699480994, 102695536, 525664400, 389323925, 98259444, 413560076, 745494995, 197302711, 94909391, 265770599, 10922873, 336919935, 336919935, 51135534, 222590920, 211282390, 345267964, 402738029, 139653109, 330728682, 150591771, 83436989, 337262418, 53244725, 142750531, 418908822, 537331928, 17135902, 226347903, 680104270, 351276036, 430652525, 822500517, 318460088, 346273749, 317708128, 296824535, 163709807, 227366269, 35561171, 243091464, 143263213, 483478286, 182422923, 281517230, 133617753, 118828250, 101151733, 350027652, 172071883, 162306463, 324887774, 539176823, 337964948, 472686869, 192938193, 270917578, 509851875, 787850224, 187809043, 85603638, 192093574, 262846474, 144520953, 308096214, 423202675, 52775965, 342437953, 283537516, 511077987, 475593207, 605127989, 554237465, 65528782, 619931713, 879291142, 161932006, 245572226, 362670606, 57098960, 222944444, 459842842, 413951563, 348075665, 44411340, 479108507, 517771665, 111128713, 102802660, 390604161, 565140745, 445859371, 452755002, 535404845, 146224192, 500435143, 33282644, 74248761, 249110692, 211888681, 508188679, 127031641, 64965097, 637956831, 191829751, 30509531, 510775514, 24935066, 96325485, 1643360, 452922759, 451279399, 540590231, 214525636, 321613540, 106637903, 428560100, 17964950, 171397217, 92728932, 687101192, 65573865, 119914125, 187966277, 426069906, 600040230, 56949153, 148133395, 88507389, 72533549, 598740367, 264119219, 153635287, 640024059, 423547710, 88489611, 71119673, 156757784, 454727949, 758336591, 36481393, 20395583, 669140808, 98672646, 868603321, 394325889, 34441054, 208356633, 124339297, 389951372, 370800325, 566228851, 190050891, 293004027, 65286723, 174577701, 345199674, 120508656, 328406342, 195884740, 16605374, 52026336, 173747715, 37220415, 229356794, 82532652, 16262229, 715270019, 358028176, 144314224, 35772690, 41910567, 273986604, 408800411, 313090341, 234963170, 170922091, 216949109, 334754388, 383127603, 233879718, 928414121, 183381546, 481668380, 679570629, 287504325, 235711467, 516417088, 671531166, 248303511, 159106221, 530347079, 801489311, 12918637, 132142272, 375380302, 223168529, 177511330, 154137150, 583705205, 215664603, 665801033, 569375356, 149377770, 72901384, 128660382, 132701635, 554993202, 219212969, 421181905, 356378084, 131086414, 312840414, 117090088, 386547863, 303884505, 116870868, 925015041, 38418655, 600983463, 123411071, 675814131, 70558368, 820086623, 365654002, 23606048, 75558144, 128575942, 85417464, 104379836, 114002723, 169852707, 77785166, 841701848, 531751383, 588937886, 902835815, 127909965, 27322292, 26679470, 104226912, 172292036, 268240201, 35483747, 120059082, 396910161, 540941384, 18104472, 294659504, 143896777, 537062700, 186339463, 355987430, 533057881, 271513615, 123940207, 57234886, 388226092, 57582986, 288671268, 456429547, 37520171, 94644643, 125972134, 627189671, 276897486, 240411105, 672741831, 300880587, 284104290, 298569457, 363176353, 360343648, 319115591, 124322669, 104870252, 4892211, 316652297, 316652297, 359095710, 4367134, 39664681, 35297547, 741332558, 771444270, 427906745, 91801144, 138993397, 366464539, 128259298, 103279827, 710438552, 100903056, 187205599, 338646191, 135972901, 394131678, 6562559, 102274396, 95711837, 163767221, 424998207, 607846296, 71167115, 678136533, 407525584, 14629842, 74830985, 269950694, 219647610, 312386889, 691447988, 646288737, 127645061, 207686061, 556929147, 233118982, 493199090, 320413359, 341161425, 98759402, 66580324, 127556100, 406460524, 313169194, 141472152, 356441628, 249262312, 82639276, 308720925, 128917503, 500781701, 12733218, 339697415, 603134607, 581072114, 40618691, 280812593, 218287988, 3099309, 159629720, 159629720, 35724290, 525754244, 181112141, 477302694, 290537979, 902386269, 805571227, 663768061, 717373292, 431047478, 349236287, 46694698, 97758908, 794884943, 7316543, 120078283, 120078283, 140152048, 347527375, 182942546, 129528992, 322681029, 258041451, 167558807, 47098618, 230961290, 258444237, 284242058, 75568560, 232935413, 198665891, 715096807, 592608189, 535592511, 772604646, 735777404, 278269641, 439797248, 782769174, 65421463, 495822172, 628160689, 209629011, 425697072, 121425016, 48761424, 35487686, 336688599, 600016036, 168699685, 512476646, 355836058, 216883449, 188045939, 308070856, 12267561, 653247736, 572394908, 778919358, 817236244, 2864466, 895054076, 895054076, 926427315, 879090320, 494165997, 474088349, 864239013, 268197810, 416857639, 187679026, 243167839, 508846934, 107683507, 19887220, 438483941, 123620235, 575384454, 911224879, 468786304, 216201085, 305528458, 69296663, 110719233, 266962093, 177908869, 428813569, 533923944, 269155510, 405936503, 701977976, 46695587, 86454806, 471932663, 10984692, 71035556, 71035556, 537528844, 509949038, 52733536, 236005426, 340399356, 42884299, 304755545, 270430038, 96938728, 68165019, 633835984, 848808291, 754791972, 809749006, 257232953, 48733423, 209180779, 462577206, 245218503, 334491870, 572444992, 973943759, 967979809, 520647067, 340036944, 232757522, 380557166, 730558922, 947650652, 293340074, 65180199, 411676465, 70297110, 811909754, 111628710, 695527530, 733754162, 42349402, 290295254, 457483713, 840592706, 828475407, 654107053, 17491851, 413001750, 242116934, 114502428, 283286756, 226424193, 120341004, 2718675, 608502026, 608502026, 547702512, 594527561, 101343913, 577836416, 460342785, 689770189, 302194278, 406571651, 170522143, 729429690, 586415472, 327367648, 194956382, 56261560, 29234261, 145124996, 6756901, 9845372, 619399134, 3088471, 619399134, 619399134, 361634386, 115941421, 249610302, 273156545, 305004882, 434162993, 397212980, 185432741, 555386413, 109740836, 181295353, 261767066, 14719370, 363014344, 93587155, 110017883, 112027597, 332689236, 44376645, 302729487, 389898861, 266424382, 131576998, 435430935, 22212269, 158487383, 398088259, 6707509, 467419774, 460712265, 81221666, 247499816, 140409922, 852711579, 399312350, 206146509, 587278918, 412383888, 94388431, 403538396, 474023061, 178661733, 438825443, 562304410, 184541261, 554438764, 479783570, 716132809, 86673025, 146619678, 665273838, 578629050, 391343060, 20013443, 259706331, 381732604, 474414937, 826323089, 287746348, 545006995, 892229292, 17372210, 116939916, 394203947, 470267433, 881263456, 849892876, 134047867, 2748780, 367037676, 367037676, 331292877, 302812648, 646532006, 328558084, 548700004, 569642581, 92574683, 713230500, 554705216, 533386159, 130594000, 757990821, 215429349, 72928680, 534955579, 530331974, 416555138, 328585762, 565797815, 14249268, 2244734, 853395912, 851151178, 505152769, 254859611, 413415887, 455454666, 480044343, 72651530, 485045488, 269554595, 263583343, 793765757, 992159, 631119972, 630127813, 677462639, 862569509, 623531047, 289366130, 27754323, 487548505, 300322444, 248694997, 614017696, 498670482, 76682234, 64090294, 146368176, 563513927, 44734099, 196816061, 600759096, 122533119, 375538433, 77194820, 460903808, 520305811, 806423065, 765021697, 177883796, 574246335, 9821964, 702523364, 702523364, 642995720, 739842429, 29135796, 476300138, 485374681, 863943344, 36853250, 423848736, 88751683, 153511595, 254887047, 543091637, 385902686, 381181562, 640285909, 46210901, 77950707, 457732452, 734802985, 959544498, 492985, 762003830, 762003830, 168938155, 442502847, 173271612, 73708919, 428686463, 159221779, 729244630, 148815804, 641630400, 463477857, 263326336, 194692499, 39194509, 800743483, 401167924, 318002479, 11503981, 777734501, 880288767, 151119787, 284743854, 248193295, 585281798, 214923024, 230279175, 341918840, 201133906, 86956087, 864328276, 512628923, 55429634, 486100809, 515908928, 295455180, 372749700, 34822928, 621118734, 210190318, 133752112, 312428221, 256946255, 584033503, 185272718, 194227537, 607494724, 119872189, 503569437, 28675029, 618612611, 728251209, 348116997, 397799208, 525722405, 74076534, 85958454, 29128856, 352119351, 645869865, 242802941, 184224813, 86523368, 89438120, 311994662, 498898131, 454000900, 455687486, 227367213, 214423036, 392884933, 931124777, 107704006, 636311643, 9957487, 74014937, 64057450, 56175058, 145312990, 263362362, 9999649, 312568249, 312568249, 323351207, 834756373, 267070101, 108584732, 222419368, 215625408, 301913402, 248239356, 600116685, 68320623, 572872170, 842512786, 460328868, 153621753, 149957830, 319490747, 785235942, 10838017, 359653014, 359653014, 378702867, 243152670, 522308164, 890680925, 511074700, 410893030, 640848656, 36200552, 185023912, 386086313, 285836338, 272965008, 566086985, 463994649, 232045733, 199301141, 223968039, 204688900, 116068983, 303561273, 499174840, 14630495, 741324559, 47683810, 305899507, 212106422, 55233048, 20756907, 407487562, 56314850, 772665830, 919973754, 194977355, 698753679, 12537197, 157864885, 88911902, 546169248, 124090639, 681788387, 199792318, 121576312, 13689820, 480002492, 31787728, 768130900, 796387567, 720050310, 832028129, 805877149, 132221624, 465161229, 430104826, 63994860, 969856999, 297464118, 282451509, 423401531, 346252032, 99816918, 143695517, 320656888, 148567658, 305703598, 407639448, 25377242, 215400396, 187172126, 85673721, 279901178, 47610011, 442403270, 258770169, 117853156, 432506100, 456256607, 124177405, 505937952, 155386428, 577424388, 487722089, 662539458, 640366756, 136652319, 174457661, 40483223, 349906, 486909594, 486559688, 672317483, 153318453, 535925550, 863198837, 261799950, 633246458, 663984489, 144797903, 381860478, 642956852, 12699031, 399224690, 316059532, 233313368, 169596655, 447213798, 46905187, 238419915, 75512011, 95682689, 687970762, 639467321, 678417470, 454221629, 150946488, 150108687, 98816583, 573203332, 632625964, 159326996, 123997949, 481228165, 671686323, 98099758, 342289960, 269740352, 86983906, 128608107, 684529159, 766437237, 302842132, 422575470, 473260978, 262847954, 531656129, 691690112, 695624914, 70146425, 12745245, 454556883, 71052904, 6310989, 507734958, 501423969, 17284078, 425244664, 394472992, 245401782, 200590878, 298193301, 237643435, 155431773, 313731189, 60100600, 139209896, 432806341, 586906402, 727537536, 339502641, 187091534, 384312689, 153158951, 69476041, 652253566, 359273979, 380911576, 768288746, 86326971, 197239492, 645770365, 474437611, 117977764, 584522304, 402404682, 266572023, 240937633, 246845779, 442249045, 457549558, 495606758, 887636852, 871420546, 251661372, 541562707, 28662342, 761340044, 157485757, 119535034, 209289168, 260969772, 712654606, 540086365, 87342442, 87709243, 347589373, 580590627, 464518141, 56279692, 303656572, 33168672, 78509966, 657863223, 176083752, 116325908, 59149899, 321174202, 267402767, 173326579, 386728101, 293061847, 178489218, 377084545, 507507942, 75771993, 564341634, 662625389, 386126564, 197656087, 782835557, 901894881, 610587035, 280545723, 421634438, 126586365, 70394718, 214197805, 61252179, 335908399, 304705454, 402924455, 662651256, 3362414, 688534363, 685171949, 710915462, 916248542, 436970144, 67821962, 349737232, 569262679, 92865514, 188694155, 605556684, 748665105, 103743719, 214999736, 432056788, 288898348, 302738844, 779660542, 374244549, 105069004, 410205336, 84379784, 651259976, 55904436, 557371375, 168826324, 229012795, 229074694, 401146467, 74908262, 359927408, 330153049, 154408882, 317464441, 30151246, 323735055, 691630265, 711983773, 219252885, 167415710, 624226334, 826712613, 854934173, 42981796, 117832815, 83339942, 24397201, 472125866, 57379207, 215755094, 341074933, 223788852, 332256768, 881855686, 480773116, 493456063, 588290208, 618352237, 497734600, 208233002, 561358635, 126104212, 699547527, 986786997, 656940733, 15244725, 406393085, 189201468, 840127871, 526413895, 432797461, 134728372, 394828489, 346161861, 80620086, 183453904, 243043419, 164715514, 468582125, 673438285, 573642553, 669412534, 314288675, 117806259, 484643954, 172361050, 240865331, 565040683, 422133961, 313987791, 258877280, 214151110, 238059669, 209766952, 377821771, 239303825, 431208140, 216289608, 104290253, 266541163, 340045942, 199253618, 346378543, 69086849, 934570498, 660589018, 56818500, 445595436, 596034518, 118503918, 15464733, 96758476, 66911969, 149326265, 501886798, 160737395, 376226280, 195917846, 457433868, 122318227, 530893779, 107105015, 741618441, 91428930, 280471258, 39876780, 32429677, 247538800, 722446210, 426435950, 351338314, 107363666, 262028141, 168631854, 29785499, 328019828, 374940318, 59594606, 705423839, 537084783, 141288170, 124426742, 487464377, 493658995, 205731923, 702648714, 309307124, 138284819, 424184120, 42972148, 126383402, 413110836, 218487563, 386181395, 175492915, 200782059, 209970398, 236675454, 272657343, 231664661, 304308712, 10886709, 126687613, 115800904, 212191331, 397692642, 254201749, 508683463, 924026803, 267703309, 200543309, 14258611, 395814157, 39910497, 138901340, 113548522, 174559338, 147882659, 302791787, 583261603, 590013669, 498983612, 88184892, 348585353, 94248153, 6888915, 180569159, 180569159, 436654183, 232510923, 837543648, 905592099, 389572942, 163044748, 607700831, 608830611, 571550050, 18584115, 22692996, 41466839, 793976212, 387145939, 479494765, 460277179, 236297418, 178043924, 100377762, 371531287, 785900553, 331712062, 214279475, 625347274, 188504788, 269569458, 127828657, 363922650, 92251528, 244021189, 28501552, 222088206, 408579597, 54599071, 37900917, 652535317, 646541966, 646281249, 412387294, 90195916, 180580848, 8352294, 359368175, 351015881, 44413151, 94915952, 949259935, 260573324, 145384327, 852951866, 300552741, 545486270, 232935458, 309739317, 239888245, 533623361, 922806983, 473387456, 284275933, 174900396, 834197379, 280167794, 280723403, 862779820, 967622241, 323191252, 378372336, 493404307, 493216771, 39634472, 596781396, 18789324, 213927262, 297771268, 535880284, 109281131, 568606946, 249113722, 129636713, 721812555, 115968602, 154858236, 920815746, 693308091, 283704340, 521773840, 971581466, 871046612, 186148562, 489186278, 773901626, 265291887, 357142017, 55770571, 35050940, 502643587, 209352827, 68851130, 412471597, 74143266, 374398119, 101273332, 437740756, 366153925, 625597328, 61619734, 770806616, 11452468, 842986544, 34918784, 475365405, 400596761, 851388097, 14111719, 246122657, 357777125, 211326304, 233508522, 703219769, 647916976, 644823192, 161038037, 70203992, 9888674, 280593238, 270704564, 102993213, 121924785, 752794947, 528570817, 262640104, 148282663, 167568050, 371729559, 491336769, 216108, 339190787, 339190787, 113414798, 191558171, 465053521, 68536819, 390248679, 425998764, 461228399, 215980960, 331653312, 229097524, 515185276, 461421093, 363059197, 385700733, 102009078, 203509939, 140059360, 648524555, 249396701, 64757762, 429309044, 196971232, 62359154, 172961133, 146110577, 521693228, 126095597, 536513176, 1928221, 40773430, 40773430, 371543757, 19704434, 714240531, 789658410, 351881849, 156025178, 422725140, 676041536, 370167096, 483586271, 859534679, 10447111, 127696564, 127696564, 369206402, 64075176, 342573466, 246229569, 98170080, 259224099, 688929736, 311885519, 37493001, 61632672, 231538130, 459577789, 149430452, 45474246, 422751403, 97191881, 289751210, 18451533, 302954135, 296737691, 458184329, 831878954, 418202473, 333783154, 520072005, 586671680, 231858193, 99071615, 515646849, 667189587, 767701946, 686909831, 25272584, 226433840, 36881666, 9278806, 567864952, 558586146, 885321, 449122189, 448236868, 136859621, 794182231, 693503731, 520118275, 403260254, 24266762, 109695008, 4760974, 341724179, 336963205, 669281229, 351751776, 336182938, 188585209, 71519810, 323937565, 758844412, 144303280, 522669654, 235983675, 439419681, 308753211, 358535066, 739876138, 369438478, 352099903, 456875220, 231413552, 188592036, 186323016, 690710456, 52542191, 427067648, 404189832, 903271504, 676106311, 71043219, 708265607, 421322919, 407805233, 387477677, 168967513, 419535118, 68744267, 76555348, 687193479, 886897204, 351203601, 273229594, 615004182, 194379587, 20734668, 154707348, 314348215, 322547936, 121213963, 4358708, 525996830, 521638122, 286128034, 135168482, 637655254, 356098668, 446670931, 638330416, 96140631, 225066998, 625629331, 922059022, 924124840, 26082010, 463981555, 91329429, 33348952, 46008525, 301966067, 762886902, 295307827, 69681595, 477688786, 554755311, 128161163, 210935537, 185030093, 128859260, 195448623, 862200487, 771063604, 421282385, 342757659, 122349352, 287761364, 566159713, 653850734, 295620781, 39341565, 2729008, 378170403, 375441395, 574388912, 521259060, 128964242, 226140784, 48453252, 194576063, 188801473, 592987008, 775582154, 863392879, 280194654, 301120819, 927598561, 770442788, 26458832, 117663303, 572661761, 20922301, 868888588, 569421270, 134746719, 360699296, 48630323, 810397750, 49926771, 399414446, 299159534, 119740252, 339436765, 160661223, 71193856, 57057697, 349314391, 818490268, 381846627, 233915905, 137417311, 158872756, 258147752, 357942157, 421150638, 504775952, 28876545, 249464618, 70458534, 308873648, 653149861, 436736383, 229918996, 131000834, 140584153, 332677850, 515567925, 473122456, 199842528, 656613804, 135044, 115793018, 115793018, 157396189, 124485496, 156002796, 396821372, 46733973, 849796244, 445245756, 109456086, 12203917, 16059724, 240578616, 746673774, 194440723, 356789935, 530070875, 418886477, 240846832, 294789192, 305652282, 325092696, 369691265, 228752556, 237136352, 612043230, 500408338, 520944255, 305415084, 347336580, 271656873, 660196819, 91725934, 730098697, 488581462, 22641669, 106021282, 447583277, 544342758, 97730429, 464690355, 573059555, 749588525, 260922067, 606457953, 328243949, 509983608, 781771530, 516905669, 231422910, 727878991, 67897665, 443371901, 323839805, 149393694, 104757458, 309108639, 566512231, 747327568, 55244074, 362975633, 331747154, 235893609, 151338441, 83627126, 361322671, 360907989, 357766227, 80407425, 500761380, 245058728, 298908169, 647563719, 128860613, 62052302, 89231211, 232820726, 424960884, 512223832, 366750156, 720661563, 614058381, 333884525, 28406852, 563847006, 697494327, 383732394, 327117952, 381886339, 604394652, 469951065, 38309742, 140529977, 180749921, 67229274, 557369091, 489985047, 104948280, 780083466, 106232782, 293657300, 357471270, 884732872, 426698624, 354239585, 25839226, 400751311, 219253065, 552556950, 601726948, 32021334, 380805053, 435103034, 68617765, 193476125, 380901971, 218668085, 8570818, 323682702, 315111884, 89161595, 183977680, 162943235, 855307109, 486268236, 109252334, 223657928, 157506351, 128179674, 360787478, 205037549, 320273280, 141459553, 170330465, 417261469, 716060439, 191374937, 129422265, 146012809, 177713394, 222069337, 8135130, 298709991, 290574861, 113257391, 101536047, 88536735, 623861472, 339201773, 477052410, 943844176, 491455591, 105014385, 212310049, 310305976, 84902474, 98419106, 326105582, 377778537, 195292780, 241688349, 125039824, 39728166, 25702491, 333157231, 513029781, 58190377, 749006537, 729542876, 268361691, 100779645, 245812502, 258178024, 118162943, 34327665, 257742682, 140816002, 278027906, 591781561, 90767295, 173433241, 204848843, 858924635, 608187231, 12291943, 55987142, 507572538, 47519575, 137404921, 72913791, 232281352, 76297219, 464905472, 224575777, 65829738, 312699834, 701427997, 293190917, 371047494, 38959198, 450930343, 296305056, 28711529, 152513547, 300491740, 472553753, 618807454, 75661454, 66122350, 109381979, 156262973, 222732645, 714362085, 455538439, 278639614, 235314567, 103371140, 163179148, 120209405, 714455864, 675430057, 31186557, 659870641, 801607039, 351610410, 205864220, 131027743, 380794285, 222612500, 120501061, 384079738, 462952881, 425192581, 279785859, 772962341, 504370644, 85053713, 405452012, 761921506, 391286742, 326986900, 706176215, 692956120, 793516262, 539124853, 35343139, 562367787, 53477992, 218104178, 541846650, 528721212, 4730047, 82476197, 77746150, 182391265, 14985776, 452257766, 283681689, 312692466, 429054822, 25247549, 315056316, 340575042, 731197892, 475300636, 85183772, 591968745, 375409257, 438099376, 24092023, 683063891, 151673430, 380254188, 144327905, 538917001, 573053649, 860438384, 792917456, 45885266, 394884661, 150527782, 185270151, 184320272, 77204452, 181992374, 571832697, 707662855, 236610893, 140681332, 346474914, 119738825, 821215819, 718312476, 216475577, 481886778, 472511163, 252797245, 126651154, 146666819, 114898956, 296810519, 242749636, 481643558, 157847439, 262628605, 435634861, 205645155, 45327417, 208042720, 161958736, 23896753, 140301647, 847250677, 19641673, 859601942, 64611391, 265119379, 431870729, 67275510, 715210233, 915049264, 808616563, 685463594, 5180702, 451942374, 451942374, 231284176, 620596542, 36998664, 648532647, 839336750, 529243160, 325460991, 472986742, 724944668, 127763536, 773730326, 295655345, 329191743, 833417973, 241104776, 491053310, 126227225, 128395123, 380881856, 471965142, 144581105, 16021401, 376410010, 117905264, 818075560, 153003479, 109274391, 717388722, 138866866, 687122701, 531035003, 202202471, 310790467, 55930299, 231761451, 414306139, 112538659, 367551043, 216937445, 585522203, 810183039, 641533392, 280160415, 707267538, 535683762, 404744558, 380325819, 114902782, 7142866, 603005134, 603005134, 127501402, 246270136, 146621375, 469450772, 44387234, 300661094, 65720055, 821360391, 405425011, 132897781, 81510383, 54879806, 474877934, 22414278, 9183403, 55721192, 46537789, 630472438, 614272115, 738404460, 79021882, 149898285, 189035084, 44385433, 310326621, 57018645, 187832812, 52877398, 620617930, 653626046, 350565081, 318985191, 277136511, 452022938, 398668925, 526731439, 133583359, 218214085, 68923592, 126483802, 565314480, 140367948, 632290610, 39368381, 717853558, 471452019, 479400279, 525302942, 262763850, 286154593, 695063349, 538532206, 83938466, 148938287, 94362373, 495413608, 106185328, 764538281, 693824079, 709090209, 836702835, 757634941, 788029215, 614822395, 608407825, 508528209, 162613401, 470224349, 555146926, 133408483, 345689057, 73829126, 412221403, 239940568, 270629785, 282458254, 187380344, 566753365, 200698212, 100560230, 140040903, 352323980, 657713937, 437529865, 94819008, 343395172, 493613811, 436264395, 230050659, 314948199, 632623639, 113732538, 121520318, 448592556, 488559473, 311212068, 11337240, 183424419, 451505636, 95758005, 29715364, 580820608, 10224978, 395392921, 395392921, 450753026, 233744314, 396928768, 117926710, 763293930, 471816083, 60063971, 201339681, 48774528, 92244994, 612633828, 454359769, 25465264, 409319250, 828126863, 801994021, 391571692, 144235205, 243135955, 220310427, 82734318, 112561532, 873432476, 184050183, 620918880, 52966044, 444611351, 96866441, 373017121, 616806239, 557623416, 240557028, 176198247, 246897257, 165664590, 64914271, 69709769, 511719481, 55296823, 402263226, 566236097, 578229512, 221674078, 370403597, 372495747, 285126258, 203624424, 256428888, 13241884, 654315498, 736796187, 470405653, 521543738, 248508657, 22966517, 215066744, 517970586, 854658262, 791907399, 493019530, 163473220, 281479508, 385770200, 182334520, 25720165, 219782824, 159884529, 673150794, 201434100, 354917682, 244073180, 453238148, 82448240, 235014424, 675908975, 67689756, 358289033, 305416040, 384555959, 535149950, 309204486, 190110482, 172597006, 309841703, 257391881, 54603405, 679870834, 57964344, 631347939, 61291553, 753633889, 285412939, 286681554, 582846222, 234293105, 654009060, 672733510, 661933937, 238296212, 329895538, 521701036, 890959304, 12473761, 217595547, 702141308, 366374799, 520961221, 775083204, 19247699, 283094909, 419223926, 325209189, 472296835, 573562086, 218808709, 286615720, 815609733, 781311909, 109023666, 163731046, 681355043, 534467283, 213587393, 356631010, 328518179, 577278259, 528420001, 324936415, 464455159, 483792943, 26561471, 528720935, 373032178, 344602147, 781493352, 157005930, 196099891, 531326273, 221951455, 20948194, 228708468, 117564009, 350000113, 48889922, 436254717, 108284443, 667328941, 103008504, 90460013, 131348435, 786196848, 709770898, 738539864, 95858516, 210320919, 372179821, 218430497, 100842044, 768400969, 635054247, 573956723, 211030727, 489303747, 800772511, 493859941, 425698387, 386955501, 96140253, 366837478, 895618845, 280703914, 136243732, 740350849, 906194171, 707985781, 750021543, 121569433, 807481108, 792768373, 629267216, 386453033, 209659846, 161215910, 13248260, 317663049, 231481306, 508537138, 332599109, 262424891, 506618500, 198937622, 279233302, 299647655, 44798286, 169569714, 234868256, 471303394, 24075234, 254978366, 516576288, 501731212, 59602232, 108268497, 230571310, 303085300, 407457171, 128239923, 535478667, 485477583, 475123960, 567406433, 320290261, 552826182, 158303036, 372830355, 340685801, 356902432, 372480306, 153921948, 43744718, 762026095, 48853847, 528775453, 594712164, 193565919, 86092186, 79595321, 105421050, 519580855, 546466701, 416489276, 590078562, 318532697, 366662417, 491415606, 226688382, 584479329, 564229641, 92161464, 56819095, 578468409, 194626976, 158872078, 322884127, 64811268, 353721510, 173485048, 671489281, 61729486, 596583011, 21598134, 544090585, 898576560, 513016062, 291324554, 303514940, 20994300, 268962350, 44305268, 711403878, 496523781, 263798353, 246736533, 126551924, 158747307, 191587409, 223100837, 696220783, 71300546, 430154271, 24677137, 393706725, 316318635, 9382073, 235821153, 226439080, 454162024, 136056230, 573553907, 600092218, 28575743, 616654828, 501291356, 80533420, 31136011, 157742681, 306437684, 43672637, 306437128, 49134469, 146593936, 673340482, 2868248, 721011762, 721011762, 44858614, 736166766, 80432498, 152793004, 4426370, 16955530, 12529160, 80863055, 264343437, 270537802, 318658296, 163115583, 634909721, 84846065, 235253689, 340919639, 467039262, 80562135, 63654807, 288808166, 309649857, 567225775, 151291504, 513820009, 814074729, 616329060, 698708479, 524077560, 485442346, 184902903, 490984473, 323041485, 302072803, 504704575, 8565753, 548064285, 539498532, 265954963, 589551697, 941453583, 116042023, 293385569, 273354143, 450343556, 528244956, 531452947, 103326694, 509425887, 297910573, 349157696, 21698235, 117857899, 199819317, 589338904, 418834200, 537570028, 644773429, 150296738, 164900403, 511766828, 97957209, 580203918, 472735248, 22085188, 33882085, 378498827, 398721003, 757372854, 368823345, 445035183, 293294293, 94058117, 115971117, 252965602, 99875440, 268946206, 250522373, 113480948, 12010371, 104351872, 266140775, 355976165, 151159832, 200482812, 339943697, 106811808, 545239681, 67344766, 295475713, 269683175, 434617908, 189766810, 388254195, 562237697, 22715607, 101960120, 690020351, 841087220, 404847221, 173613233, 342145771, 251829825, 579691915, 225784282, 600436150, 158631563, 398397174, 165451818, 642169991, 13225628, 43953659, 476162087, 98642211, 226208312, 266002306, 149211870, 160586933, 136255735, 472544093, 264639602, 72119124, 21703478, 121247370, 43606525, 198050431, 222064778, 205383516, 125661546, 171938927, 39635876, 107670738, 201595194, 252502549, 542418867, 40362770, 617329464, 776401325, 3104944, 219070662, 215965718, 682061631, 391429084, 239325566, 627288499, 803826948, 28693593, 114513795, 536993381, 702752796, 231228623, 561352854, 60650053, 15933309, 633159803, 210976313, 118614001, 114728921, 524458361, 750755489, 268677152, 303866432, 157079414, 723256708, 909675256, 146523106, 518297799, 628860890, 406289627, 486565120, 210368396, 658716443, 563330172, 282128366, 606132653, 161010385, 172829695, 285316534, 859333051, 205094461, 114947820, 458362377, 321557026, 161465513, 534031175, 711602551, 413614939, 94230733, 340022420, 557026577, 251712664, 6402089, 553862715, 553862715, 522138967, 260759664, 137915917, 11529314, 461153193, 30935036, 636274152, 142907631, 572207288, 67572336, 843562035, 273342394, 199128085, 596467206, 97866920, 597333724, 504636988, 382213349, 610692806, 238116182, 94338428, 170761815, 484998202, 589090969, 316358963, 732724383, 188018153, 142071491, 248907973, 318282377, 609552767, 146681543, 528992092, 875163851, 907465244, 666281788, 73500900, 140393408, 288754022, 270191981, 646885263, 195848662, 301429322, 18040585, 325327892, 539723380, 634991724, 567463761, 118668620, 94034568, 704555591, 404942217, 362866971, 87574218, 107017582, 652943353, 631937714, 343168006, 372758683, 412802813, 105328044, 6124848, 213150694, 207025846, 401242100, 347223987, 498617597, 76495397, 600243761, 83989841, 541693811, 25536575, 762830447, 821978326, 633707987, 376732850, 710322931, 605621220, 555025652, 908737877, 244507749, 208576327, 402119114, 120015817, 136128126, 69587880, 355224212, 96284087, 401661181, 480855131, 323911729, 57901679, 415913836, 469364711, 162316869, 142050099, 754523819, 180722426, 37927555, 372761146, 742488849, 167297743, 22204474, 164836585, 306780619, 295287798, 455517968, 358221499, 820114255, 815999935, 469450545, 268319552, 394570571, 294212406, 635694359, 661004022, 631575677, 319459102, 35418924, 323417161, 88687326, 399409830, 196796740, 219501192, 59254399, 743982345, 472055108, 95308109, 246084329, 128062817, 180226428, 405347387, 680760185, 238900494, 371487920, 48999662, 387488098, 465338382, 510844676, 914420017, 722330074, 658040536, 562375893, 551388484, 108319625, 32354472, 962572732, 153041941, 66455554, 874020436, 340674038, 65650990, 285608169, 354704854, 28895426, 271130002, 66167794, 602071761, 136583014, 561075333, 405554724, 574273406, 741431064, 470014756, 281243662, 74849946, 300507674, 544751044, 674132439, 810128853, 354175452, 566425082, 282448831, 524347699, 520162429, 385954806, 587219035, 188265970, 1929919, 300800706, 298870787, 391876405, 492529176, 865783119, 466233653, 319504860, 230074724, 139261790, 354778386, 280288063, 321452320, 535383536, 230187266, 44528009, 63124656, 143630835, 402349581, 724000127, 559489190, 402070305, 650540782, 699623348, 11767351, 110027307, 364316556, 548108946, 117488395, 708850160, 181600519, 138132797, 150491721, 647619202, 795831391, 815583518, 514010304, 233395653, 694669849, 155207609, 70806223, 392501863, 85384395, 112120419, 596183043, 701026228, 239306561, 64782108, 432739275, 422369006, 448653263, 161885534, 283638557, 201498214, 566293731, 767362138, 534692093, 370916427, 835179458, 90030906, 107975031, 433830939, 124701305, 328161636, 78134795, 422703024, 397335872, 637336982, 534042696, 202557850, 299575191, 508239767, 114293435, 7089014, 478145778, 471056764, 548214857, 81684089, 64879949, 38996566, 361602056, 364240304, 655467520, 421303770, 375917415, 107061751, 438721863, 18250488, 188237396, 81156544, 365281742, 591748030, 284390639, 350640679, 457847575, 242625380, 116623189, 134091519, 284587619, 247623366, 151383883, 782990266, 171561857, 591982003, 137710859, 892461003, 121822800, 778798380, 28285672, 5672408, 907928205, 902255797, 518108759, 149224673, 209605497, 121061280, 534640526, 105683907, 32597964, 252503809, 198618582, 203234007, 189757502, 320250056, 78613617, 409545729, 40856127, 16728231, 168001244, 405893647, 270851157, 191714622, 27384858, 522086827, 175614527, 562514049, 563324513, 56846575, 311242741, 173507021, 497174128, 88172351, 43569476, 72408649, 160560109, 110006966, 61502642, 811976771, 157990649, 226405676, 260123815, 599034328, 423392178, 173210174, 445955507, 280029928, 414596600, 335798244, 266792238, 302316436, 118429294, 39441924, 214508112, 35627761, 542212537, 810932119, 588631248, 183145558, 188665881, 8955790, 605751076, 596795286, 177844071, 109512053, 638430145, 287876270, 48410885, 46733597, 25568008, 5955970, 231332481, 225376511, 72930984, 33582736, 264374041, 49303000, 308589197, 221517103, 329353539, 62086816, 543856189, 693603273, 51102425, 65769989, 243951171, 31708261, 322884527, 495710996, 465343670, 308922818, 404459275, 249693972, 578467992, 685459781, 115624162, 4821004, 329503466, 324682462, 233043015, 115613831, 714930139, 914710573, 436214352, 342109271, 32695386, 156703399, 57482467, 118061209, 43000054, 73877860, 510387193, 122984087, 708659086, 346733434, 166662053, 164137310, 467697972, 443664120, 277525663, 538617216, 642524557, 137923625, 417914519, 425474651, 98755431, 723935926, 122221840, 709762943, 513277103, 85999389, 128076054, 580297919, 268015077, 3985830, 310700568, 306714738, 691460777, 362163570, 428737865, 848502345, 75700516, 1883623, 402224563, 402224563, 111619820, 447425202, 482529663, 15566017, 426244242, 377555980, 330133082, 661896834, 363404975, 298897395, 54649274, 228273292, 115517489, 535642774, 263736764, 866559768, 478206160, 273593303, 659854440, 35084485, 85123001, 893438695, 317930993, 48634055, 36958292, 121960059, 647918029, 361098096, 301209414, 34518413, 470333508, 650410960, 437104772, 507942712, 582461718, 605130090, 52435775, 20633322, 536283471, 214390324, 738536230, 228183644, 530364535, 510434343, 102457449, 339596833, 515444418, 88451000, 74440033, 143264856, 661541839, 37054314, 739018856, 112949501, 209624048, 200336632, 177899051, 156165217, 595138485, 431453354, 300406782, 136734390, 345757869, 374621466, 375265263, 438796359, 576529239, 85193088, 578442579, 753658669, 501573359, 95452924, 363025440, 265689706, 6582372, 139392228, 132809856, 245793653, 87464111, 124192543, 250739359, 642814709, 268626426, 181769295, 196317889, 97879852, 209335811, 399437620, 225829141, 583766725, 23378765, 9140834, 572930373, 563789539, 201584631, 15791419, 44445702, 875781656, 462567270, 298833059, 46492641, 589783779, 608372064, 42322185, 518519234, 167866094, 255418124, 309369195, 165431927, 305288023, 168515209, 22138325, 122822321, 261049277, 65817389, 729846052, 543426363, 422971509, 209413019, 769665965, 251166101, 144855850, 93408150, 466748171, 854989537, 705609083, 122413987, 368032322, 664911102, 16329625, 838928, 85453727, 85453727, 812781578, 384138093, 25042785, 357348626, 688775277, 139596998, 508215340, 201230297, 567614681, 600966850, 27960436, 229591682, 205052718, 144496065, 547367158, 336446880, 222051296, 27733273, 646577324, 456569983, 228957405, 183015171, 695908931, 132258980, 706597730, 707510619, 341743066, 172341636, 212545874, 429419584, 720582824, 615541692, 100784534, 339999873, 272344980, 61245408, 732067636, 396707613, 327109320, 347555763, 445375813, 488728347, 224429349, 322309440, 628595164, 511914744, 455865248, 92642346, 189676725, 215279267, 97675721, 29382701, 709826446, 20341075, 616793879, 820731159, 137790033, 822452689, 546725049, 121331435, 181168389, 242164982, 315951006, 274066733, 631960107, 264729542, 130121683, 18634144, 267554460, 32544735, 274394768, 748832973, 36647852, 96375033, 580901117, 75918283, 836362643, 985582623, 753241835, 190810073, 16014687, 204836685, 465490108, 205587476, 630856388, 570760114, 535658878, 197006940, 104926204, 615718519, 535292032, 146326104, 142651507, 37289670, 521813480, 14622276, 839535741, 878600316, 227556689, 638143142, 419703894, 326215904, 58515422, 150855384, 699251295, 929929247, 446808074, 415479047, 807622357, 697718846, 175724979, 244668211, 720204503, 378130817, 26882696, 354023940, 651149246, 225475349, 207868520, 349520691, 134853209, 486233363, 213599350, 53699827, 515283054, 96597393, 336181187, 672531785, 407924298, 519227923, 259764620, 511396683, 574714446, 578572484, 520992825, 296441149, 651351842, 647049286, 21290178, 1710019, 68710236, 67000217, 36968983, 804412589, 618913096, 28474149, 13091005, 206700417, 210618292, 228041409, 390217600, 533302246, 807244861, 459282923, 546987848, 904218775, 754932032, 325286934, 139359714, 350533980, 479190211, 431830484, 735977563, 731692210, 528205924, 398828028, 580673776, 190369464, 322969646, 248024505, 850794700, 566402426, 635581929, 760853800, 444276016, 607050267, 9504587, 397710000, 388205413, 154911186, 235358745, 423249626, 581047040, 284274783, 558540874, 891987828, 845612438, 166499122, 359355005, 432260440, 711468071, 471945938, 39518891, 368054510, 346530133, 528250844, 308102703, 115534539, 692713566, 358174062, 297494993, 487424290, 681490243, 543929153, 178406553, 115018204, 209611404, 334993483, 398757624, 87596822, 238347, 311459296, 311220949, 275361089, 160624834, 221507647, 83880411, 579437882, 589101278, 183553245, 9258649, 97914696, 88656047, 531371649, 80711983, 475126959, 203612547, 549604312, 148061992, 28126951, 545841086, 264428171, 154292585, 474734568, 520686156, 607791719, 687467243, 635087371, 133428239, 107918195, 806975359, 911896748, 648349185, 242669433, 171756622, 572428347, 146281030, 594762896, 346086660, 234036374, 272486591, 471616464, 451373101, 481165116, 50922476, 483982063, 160448549, 479128148, 204228037, 342191449, 213102982, 35560174, 418170084, 839405328, 292679604, 25722581, 106059984, 197833760, 631151233, 660339885, 785304396, 793712430, 466376337, 253621553, 394700532, 5684435, 15366482, 15366482, 131009571, 382587784, 284609581, 82643268, 148147448, 158008990, 553322404, 180181774, 182172885, 443278803, 607570081, 560716251, 722073806, 295403579, 505623240, 438803641, 365679676, 279586455, 163847116, 594208508, 589365074, 325516134, 282217273, 246590979, 21443794, 31266158, 229299082, 98753772, 220630520, 412710352, 107456002, 516595446, 278474874, 151288495, 372097699, 510581362, 278169261, 650423831, 498891396, 80437926, 279490117, 256725221, 907448511, 613850253, 301000373, 186188392, 311138371, 198746779, 445743983, 47291976, 272766563, 32189408, 12383848, 149064008, 209272181, 222953157, 255523847, 521522058, 23805053, 41511707, 145631067, 21812173, 383819068, 499376990, 489417196, 24618374, 429884485, 650724555, 5304272, 110285336, 110285336, 658214488, 603281316, 156220353, 305689019, 704457161, 744083877, 656812381, 679345086, 939571896, 950350027, 874369428, 508139233, 296968767, 91245912, 98518968, 413910315, 275871849, 307494488, 10941506, 497786605, 486845099, 173097374, 679007953, 449257491, 52256676, 273539531, 34192881, 83461753, 552818261, 376709361, 844263326, 772121823, 829156576, 856085156, 362672033, 127209242, 112526824, 222573468, 202391633, 633901818, 709193256, 684226445, 155029433, 348268307, 487061717, 33929021, 902299051, 649544839, 301865586, 506950616, 436064949, 393759072, 49354620, 106523643, 810211182, 207947501, 106071558, 519552922, 318668715, 40206011, 339800164, 63331976, 839968632, 113664701, 75175272, 468464658, 168556380, 123952281, 55055303, 51748224, 322107217, 623388097, 577612578, 12617482, 33313301, 36764468, 60983531, 33925851, 601806400, 376617349, 291510867, 466464822, 304200779, 234470910, 100831852, 559981466, 62803940, 48624691, 395565385, 268256329, 448776639, 442890618, 785763785, 599873935, 545744413, 193559945, 395096974, 287079303, 785506425, 895052359, 258128067, 292438628, 882419986, 111617784, 189654500, 898055210, 36805665, 833752148, 111135561, 489120230, 338363511, 608313293, 371610963, 430227813, 393367582, 376067527, 372705004, 460195132, 709912398, 360699114, 468098063, 333591615, 118217421, 200429221, 445588650, 222566069, 506790862, 86520034, 796438541, 482164774, 35442241, 42570720, 236290456, 94150179, 337170141, 583706619, 16834705, 167271260, 265778400, 197600860, 435347604, 565389377, 286820044, 111211988, 172073574, 712379495, 515990885, 391436184, 229567273, 67577083, 414694305, 359461132, 110664532, 328035225, 570960746, 188828474, 126260086, 533066464, 412523325, 141143511, 284229075, 110524681, 477264363, 197920973, 704857836, 564972736, 515958999, 474970901, 517382234, 30267015, 944703695, 739095729, 204331216, 574694871, 419847782, 236696069, 425438415, 470154251, 555395511, 238261589, 509022727, 53872686, 801497044, 160522121, 491589025, 340052648, 238675033, 571195072, 510832334, 46096177, 292170832, 490551888, 557762042, 548781692, 653288498, 26918843, 88717659, 509666115, 327759857, 301220136, 436639231, 229015235, 57027661, 662211898, 97367545, 202156912, 224595721, 21575270, 52839587, 715592712, 279275115, 375926908, 572544520, 128212736, 345862825, 131217721, 156925786, 761421118, 232276474, 46327109, 4043421, 590776123, 586732702, 90614775, 567128579, 44857203, 368451583, 141150186, 189423007, 408984814, 525328935, 502250288, 537713078, 205914957, 126006013, 92837869, 538870129, 547319673, 39977672, 512861146, 221687501, 180474455, 682562388, 127715916, 58285002, 822294871, 543738733, 402298725, 966816483, 56599526, 378766075, 455608617, 162734365, 384904417, 951116, 312202217, 312202217, 301660688, 242226554, 47617131, 366619950, 93365377, 669596533, 486523014, 187189944, 87389038, 174616244, 98108893, 180156934, 383520364, 239604030, 730728067, 580718017, 170090381, 379405272, 89618517, 142284576, 127531725, 152574395, 643435410, 727077755, 256564558, 463970015, 24148925, 92269306, 684827223, 108675217, 393814507, 219981586, 260890713, 21537305, 28388709, 332962008, 495169279, 72616304, 786967561, 856828429, 388320702, 338086820, 55925303, 251058354, 28797226, 84462810, 218758181, 173645906, 27386655, 473418431, 203900844, 497813753, 735318892, 71256843, 58000122, 771101867, 535488868, 140225300, 260666748, 316427156, 482979807, 3112268, 417605226, 414492958, 441771439, 52453055, 604577132, 61898058, 297734971, 448502180, 81207470, 704888534, 202156128, 183962469, 790539906, 916512846, 887615023, 264008153, 207516877, 376945465, 798873713, 251007423, 10654246, 412593977, 401939731, 146060942, 510041808, 514114712, 356232954, 169521406, 117378744, 301499793, 105926668, 166052451, 75277870, 275350348, 965360590, 61775305, 234546189, 373405640, 118325969, 161573768, 402276277, 413398739, 636539821, 211519413, 83308010, 340368449, 663763056, 233463952, 596880741, 54926220, 16636205, 319483113, 283742657, 530408565, 33142858, 86636573, 790439808, 841562007, 111281826, 200320484, 630229450, 350635331, 354801691, 89091789, 809368605, 126864563, 35091890, 177134329, 371805962, 149663934, 511201840, 26094704, 708922260, 680875851, 391013531, 39335375, 337986296, 687865659, 62546200, 422155932, 524095381, 334271305, 17807490, 256728622, 31387829, 4365764, 302611784, 298246020, 464532663, 122647093, 406539931, 36347967, 146809491, 157654543, 202719573, 250512266, 390199190, 552648956, 523845603, 403199983, 164129317, 524819467, 535628037, 220616870, 183089794, 69340060, 165972304, 551682040, 2380445, 37632410, 35251965, 690514919, 407012630, 314850473, 352181545, 131465076, 88851159, 277273267, 163546983, 318887507, 65739343, 141774753, 468347288, 223661375, 115974690, 140098437, 104048916, 457177461, 315428580, 359958987, 354360860, 615611308, 34776675, 286593965, 293246520, 6610970, 230751130, 230751130, 90451182, 199255589, 161905650, 250578101, 377608457, 334365022, 42848569, 157715747, 141113512, 231318623, 615108351, 634304006, 591116720, 458397954, 248844254, 175729369, 647494893, 516222676, 737735824, 6596472, 866155526, 866155526, 235516144, 707852866, 383415857, 234211472, 334086104, 190919139, 117643062, 583652835, 265601854, 92589251, 181818810, 645996550, 323942725, 434265260, 528792377, 371474285, 57162085, 66597952, 532801597, 436975034, 428077826, 98220879, 66696976, 377450879, 262008644, 203846662, 415930808, 21837621, 595636368, 445794987, 650574755, 841276006, 304268013, 297175382, 365953102, 174438270, 452576094, 33451741, 83228789, 667687827, 872324167, 39647158, 862641095, 772580380, 6595340, 543109543, 543109543, 319795935, 359868536, 384538227, 1744407, 157724862, 155980455, 202638329, 285875973, 824484103, 460777109, 561374353, 72345573, 591272340, 255515711, 211447180, 339483989, 307766855, 9541712, 24489256, 14947544, 172612197, 468231775, 111256890, 313183997, 133758043, 65336310, 713036277, 738324485, 836278269, 689755834, 504960429, 402574733, 302719409, 96417940, 453944812, 165952724, 139872516, 494748335, 483358550, 21032313, 212990945, 182206260, 415490216, 629357732, 570108780, 281283597, 86604224, 491348124, 154993687, 158817009, 542348685, 447844343, 238088660, 96692703, 101392553, 290830106, 649353354, 572005854, 446070882, 666162617, 55336921, 65208693, 799263312, 29250997, 612600524, 90635074, 557796801, 407084222, 261896190, 442082706, 106357875, 483128560, 357982071, 227736734, 251845580, 723862003, 59159584, 35666787, 45180332, 165899817, 166746881, 757957516, 24646843, 833554787, 616074912, 55237909, 298865214, 12035545, 336491930, 29019906, 109095984, 22154415, 259097119, 28859301, 226372306, 186703724, 212217347, 123010796, 188829509, 71735771, 107272482, 834561254, 189264927, 783828003, 759935243, 749244696, 96228088, 755720113, 474820951, 112723393, 232962766, 734301197, 267036862, 460782677, 913069807, 713529897, 112098393, 540966376, 538825782, 185278621, 18299888, 273400192, 436294420, 352973600, 224905978, 161028269, 331102641, 576245791, 118941320, 568050925, 373114270, 400979628, 45034581, 296360985, 337904843, 442402309, 359341193, 481645712, 8639248, 162651536, 162651536, 4184299, 589054715, 589054715, 299529005, 457039849, 778659118, 422902647, 108740078, 223580806, 201195616, 482399996, 444415362, 872411427, 112208609, 69185976, 688722283, 494393894, 63143865, 102746936, 201759094, 125666443, 520334418, 323220425, 39990209, 296808171, 316975472, 50143830, 448403235, 496040878, 117371340, 349026821, 434667385, 104395987, 435776764, 73782643, 746067733, 138229205, 259441204, 211856108, 276879193, 139421990, 384849996, 614655889, 580177131, 422565939, 370956154, 30095158, 283500998, 78822493, 396296821, 325115114, 114109197, 332407535, 283039115, 59556280, 165688816, 479720328, 202524952, 314256884, 131079256, 146288891, 153266085, 393054552, 341653534, 34322193, 138751399, 412441490, 655778630, 631147595, 570179224, 538542920, 59801708, 123551864, 275273932, 180482117, 179599529, 427526129, 34798397, 565139250, 475873897, 45272929, 139020499, 734360894, 188847625, 557865353, 160114707, 163360920, 355567215, 88716265, 81910068, 119303136, 194132057, 23400413, 661800177, 712544124, 231447357, 320518020, 81442658, 134087424, 142712006, 904567501, 503856832, 455104147, 15048956, 278313981, 87297438, 36227111, 195304422, 671922190, 78857925, 532860813, 238084688, 59171916, 157041014, 86264062, 287132195, 747138711, 110980970, 371819352, 385229102, 177002653, 279939366, 718142389, 50850423, 318683721, 146241754, 510796597, 714825301, 119428236, 665550299, 479273016, 102873889, 212226704, 390217262, 234136959, 156292630, 179337446, 593009194, 592185560, 732222164, 62926925, 185429808, 668358068, 471952012, 383248083, 23494456, 858966176, 261826798, 184254825, 731785863, 540716451, 364768825, 321537526, 712154608, 480212612, 546037117, 112608055, 9977367, 289801746, 289801746, 331831870, 622778636, 239262018, 456959621, 420751722, 30698057, 476032317, 673532056, 680179262, 932731762, 173471170, 248697884, 181427194, 167064768, 323023267, 461707850, 281317443, 313912337, 630210923, 34885839, 123961694, 883429930, 471772570, 322430983, 114757557, 692809042, 832125025, 41142654, 185048851, 130033549, 269347933, 286977756, 574426308, 177646198, 517955898, 280341222, 150449107, 244149385, 291683285, 24714909, 469074545, 423663198, 1954548, 129584923, 129584923, 110004708, 134342404, 285541594, 66604836, 539281726, 256343785, 821878672, 571552173, 86976368, 240504231, 605877814, 477012715, 630910651, 11451533, 820591775, 597241163, 466976115, 36351385, 15827659, 18445551, 229799144, 70312781, 570993067, 833400620, 204677361, 71376764, 53599559, 190420159, 131589025, 715918509, 536624012, 4823509, 184220572, 179397063, 618182528, 731590125, 172361958, 208239817, 200859496, 170812027, 325794243, 438963127, 184465896, 357353376, 198063545, 275669254, 134170982, 531876557, 4495674, 687715122, 687715122, 165884597, 119643457, 30088572, 88349789, 268977377, 309688598, 439309637, 366881314, 496795815, 206057273, 3168884, 75886744, 75886744, 66786402, 505058550, 559184541, 508894195, 58415214, 568267048, 452495937, 198208662, 499315808, 593152689, 295790492, 108833701, 127366941, 321311687, 1869714, 325008968, 323139254, 193865983, 412570715, 734337184, 545476591, 89354735, 438992521, 330321357, 172831142, 369367731, 290792690, 190170520, 663382131, 253111414, 239546794, 204275107, 103723082, 308916832, 724725308, 311775643, 285459847, 76414721, 44937073, 76384496, 61626216, 431889605, 165189508, 272575143, 204840614, 188947159, 239625372, 524588001, 759224086, 291033360, 477027488, 564779223, 178037709, 281928045, 89335747, 313202242, 14024376, 65667929, 304965124, 286560434, 42556700, 439631709, 762708330, 74462162, 772123172, 499497526, 253786671, 281570365, 286175531, 5477884, 107840192, 107840192, 150411201, 171950961, 439556425, 212407212, 512599954, 90785868, 701262363, 261861622, 345202153, 33843649, 712977132, 372280692, 207201906, 51850086, 8362759, 83223603, 74860844, 284894099, 405900402, 845907787, 608972152, 8274688, 190648445, 190648445, 368696209, 297103117, 306751444, 340497773, 413804785, 92849186, 43412807, 184909986, 157218121, 21108376, 351201831, 126167524, 78225027, 108288572, 246657581, 625587158, 123825383, 49250498, 176913971, 248328468, 37965938, 489560647, 377307788, 312606124, 754638220, 43852899, 678841478, 391743410, 591899854, 600134459, 280698494, 51721530, 355782867, 353224685, 448994289, 282627390, 540910215, 202628245, 263314850, 544114270, 52920943, 62897547, 70585815, 17033396, 476305363, 27432825, 253337723, 737675662, 149286144, 38345794, 42834748, 174627721, 201960973, 550390640, 158887498, 880663413, 404282727, 412073295, 917603053, 511163446, 94867232, 117246200, 34075940, 81468277, 197747180, 55396475, 60130965, 316156411, 221939523, 578348509, 648014762, 675296584, 121472653, 289602359, 884336511, 108405111, 449614147, 226946973, 62585355, 542419816, 152297915, 144772178, 280824957, 68212861, 95770239, 551003028, 755136881, 109277990, 241594403, 822185674, 128888994, 693951091, 691881823, 206569399, 183932494, 431891480, 372677280, 339806271, 554071892, 95959236, 663065301, 135673506, 158618072, 388870343, 39650663, 285767157, 503213892, 219552319, 94016632, 84533091, 148371841, 454934483, 424515751, 309546645, 152351753, 43106513, 80163635, 54270818, 567645789, 209272713, 750261808, 333317228, 244445667, 276223240, 450891366, 371741906, 86910633, 705556701, 166041418, 17132478, 807597805, 172646300, 527979297, 16904621, 442086845, 544009144, 820609356, 823603125, 30391672, 75466387, 506257464, 421478959, 346870019, 35470023, 67975221, 319796196, 33767777, 378431347, 84487987, 250029997, 698798212, 750859578, 571327280, 605964131, 749541223, 6469379, 372910607, 372910607, 220228136, 24256448, 136915244, 410169213, 20595150, 612058141, 140481774, 879664101, 643307198, 57824062, 135156168, 591775384, 611394694, 303745073, 289354384, 631090914, 63307074, 292714364, 136146375, 357071058, 218956724, 210993561, 28453873, 423252886, 722525371, 12845709, 276947841, 255750864, 224818471, 268233715, 666504630, 332221266, 408996891, 1387085, 708156963, 706769878, 447330824, 378605015, 249735556, 81469110, 206070295, 11996327, 28892877, 211207551, 365536040, 525087099, 437245880, 188443648, 56150170, 59261070, 472694095, 277855208, 90671771, 473315081, 781675678, 885917076, 426395411, 124328157, 611113353, 783861972, 292522449, 373334852, 90239217, 89730042, 170740143, 77293656, 29676401, 26833506, 222519355, 631817630, 24865419, 618916697, 441797878, 117926373, 146188295, 117312386, 154027505, 33357904, 12458341, 489818303, 741601868, 20287831, 117641630, 30888062, 144376636, 210077683, 46473935, 11080735, 20595335, 9514600, 69594809, 69594809, 826540392, 203696292, 352630410, 337120705, 167592215, 6972158, 30625065, 23652907, 68111915, 98883711, 53946810, 474791118, 199160404, 446104541, 199368217, 424974250, 242582960, 282742532, 255344641, 335383476, 416717692, 266833681, 718793447, 208317518, 362964407, 489902772, 86572251, 457201374, 459408574, 583172373, 55459168, 364354088, 38862664, 164200895, 367007392, 202255969, 310988914, 333698235, 253836537, 836543324, 48315916, 378003967, 71314852, 101990238, 203534866, 149570369, 249370867, 54010365, 335775147, 90503598, 341827280, 286317090, 445134234, 170707952, 553960144, 283103927, 118299370, 40590815, 222923438, 573706428, 554917657, 868057353, 344563652, 217549554, 270272175, 135712647, 34833878, 162865243, 496250411, 296940587, 376365677, 815595860, 678755029, 219148914, 562324284, 685874432, 416890938, 534510031, 517035114, 140537225, 760913214, 223391273, 678423574, 107059419, 130600032, 88854201, 303977312, 430356318, 676228138, 289100591, 352241935, 772821945, 18288180, 770315411, 306900056, 419965774, 505330348, 602688533, 272243762, 144165676, 330070698, 314388769, 328182445, 284573794, 286014319, 240210373, 242268074, 360855465, 25935199, 3026002, 500155282, 497129280, 651871419, 254140896, 392864350, 832925408, 254834878, 22701034, 151440029, 713502691, 663276734, 139106366, 33765101, 528749987, 411392797, 362482036, 72534186, 406744345, 223718824, 150614276, 490731209, 317456805, 24253106, 599828894, 940262168, 62321516, 178537871, 319531951, 223297706, 450650787, 273969786, 218127477, 294501949, 372235990, 443839471, 424129336, 120084155, 244999365, 293741824, 398308032, 48576666, 304444826, 90057174, 799949644, 1222436, 113530319, 112307883, 611984788, 91641256, 256557456, 83241860, 231062936, 361955315, 9889120, 210397493, 210397493, 45614069, 903912451, 772890342, 54064356, 18046874, 467825481, 294876972, 111574304, 112356704, 387601317, 135450892, 353449590, 653390, 364203095, 363549705, 160300781, 596530523, 658168496, 30544499, 741550318, 567659935, 506051463, 428223172, 116963040, 342614185, 431851618, 737295410, 48880105, 323328178, 123218371, 63168863, 20984791, 111351731, 221752044, 907517067, 145893457, 176133537, 172559689, 281714458, 63202964, 381359160, 2980463, 434163222, 434163222, 435888180, 870078064, 915669629, 261251002, 552827963, 816931185, 719792493, 326966607, 69624638, 407420296, 448023711, 86758967, 435309465, 252276, 269494511, 269242235, 596784832, 285746229, 386000221, 107714537, 458353169, 28867811, 59243170, 55894531, 621687668, 453836662, 212883584, 1609618, 289060985, 289060985, 726097962, 337442998, 320552167, 429080937, 505837419, 557005056, 483916445, 145399126, 338389292, 211572406, 260529344, 450859096, 192524304, 452645955, 63009993, 4295406, 171678302, 167382896, 368259448, 610893774, 432677138, 320889279, 248665085, 139597763, 386630346, 173051244, 775170604, 279704640, 487200426, 415046824, 138945810, 208624191, 661191376, 85556375, 789961159, 121414907, 597939615, 248011860, 390300047, 48125039, 171874835, 55461454, 414644401, 413388520, 397758441, 670627523, 100743190, 365408512, 339744992, 497256967, 144271873, 431277878, 551714574, 356873749, 289361399, 353507277, 288898999, 515422452, 192994212, 643711139, 301266376, 329158728, 532102785, 614332320, 588050853, 264254309, 89004857, 70789128, 463281126, 508002590, 562471550, 630820894, 188249572, 335565321, 318455292, 97850132, 568791254, 443717641, 118144890, 99520664, 444768077, 312514682, 53044349, 212524658, 581212116, 109753799, 753092866, 386952224, 18212638, 479779738, 354884273, 62728444, 279575675, 541838528, 109298573, 611440416, 515948018, 291720500, 240837172, 295692194, 66865190, 388942482, 217034957, 352416042, 282931111, 632239251, 41690061, 408727379, 601603671, 424853771, 387005901, 757974613, 53300323, 75542786, 661738416, 397525821, 444600728, 550291674, 265533071, 669649236, 668891931, 912316930, 728380088, 197005495, 397671579, 781500499, 455085719, 111518198, 282662482, 75938838, 162113796, 713365053, 796137272, 729344961, 44159849, 162628259, 828473230, 90321286, 584169318, 480042028, 59442007, 165998286, 511303261, 455280889, 603192685, 40867467, 403673690, 375292630, 19970792, 5179309, 775435610, 775435610, 98771264, 400250734, 302681518, 624359513, 561910617, 124247757, 258516273, 252450542, 286069306, 484848849, 876846134, 410302982, 177819872, 631335890, 34805178, 92368309, 784061999, 429995071, 134855708, 24015283, 29743533, 657674066, 393448451, 464032617, 232218718, 507723768, 336444439, 112243949, 595069789, 189165706, 773818272, 24353340, 988995383, 159000414, 664705980, 597241296, 3326813, 64110147, 60783334, 91272308, 726323397, 537093050, 516826271, 191996684, 192061358, 405303556, 115306512, 52053441, 311782969, 677969081, 502451718, 62030826, 567868954, 299884303, 370647608, 297527338, 110297733, 365318835, 181461338, 364878866, 255025723, 322192102, 699928191, 816355380, 10517157, 503286556, 503286556, 269024466, 529087862, 54304464, 815673691, 534867378, 398493524, 33470185, 478458806, 293397002, 182938723, 435883497, 614359352, 540197665, 561464024, 417980472, 324396406, 236769224, 28897789, 126364512, 300909601, 6016984, 334230719, 334230719, 194986938, 91234408, 618687995, 805094444, 266645069, 603487995, 606970517, 508654213, 776570454, 49686322, 682434307, 190179957, 269619134, 441947452, 327481383, 22998752, 473251053, 195643044, 164971759, 45574316, 162291575, 380783256, 864151167, 428409810, 54635694, 383625276, 666105232, 337260956, 555434141, 522438610, 59733117, 157956507, 141439965, 171632786, 543599955, 68922749, 130679899, 979224808, 579041097, 316564465, 43300520, 541590034, 81771817, 544850604, 294054859, 34663794, 176948438, 279633814, 428218645, 278357924, 415472883, 120667989, 627453525, 732819731, 37046656, 687027238, 585873793, 1255348, 261977014, 261977014, 432999397, 86259089, 503320174, 520750040, 710996566, 167750395, 12732190, 430109898, 95184269, 296759909, 141636607, 100472725, 774907113, 172805288, 437779631, 434150969, 352745523, 216700589, 50465401, 120031190, 544568513, 91237648, 535424921, 245232766, 605955306, 853092988, 686060006, 112043318, 532935724, 175751135, 516645400, 395323522, 226853327, 404038400, 110115638, 140695277, 591969626, 407404643, 276750991, 599874638, 398650729, 208166238, 406111193, 689098059, 61350984, 537627767, 229531293, 166418897, 476815596, 110159015, 190980731, 106872656, 602447710, 58441830, 480042232, 548888578, 205837565, 330490832, 565423649, 168502303, 687967116, 277394818, 511072828, 363098419, 427288892, 827119932, 377578068, 271975235, 175305848, 85349856, 7588045, 163704276, 156116231, 61743986, 348697939, 525241350, 229133926, 100159987, 458206478, 351731815, 53882364, 417530848, 309422383, 273317994, 177193652, 114354589, 491176349, 895795826, 119280547, 840271980, 430253840, 431888351, 172633090, 582139691, 227515991, 532959208, 346783047, 393903380, 67907488, 31742755, 537524658, 422502785, 635603714, 182430422, 119113127, 218291621, 181956181, 35955972, 41819754, 140782189, 95096700, 469017771, 78557476, 231805613, 430292685, 331103331, 328854713, 341779510, 535580840, 2123227, 175319986, 173196759, 33302776, 39985182, 645817343, 560097270, 550903591, 147166671, 604532347, 463583118, 120448800, 410244196, 407462432, 4495778, 276393108, 271897330, 570302551, 488086399, 99222052, 194798764, 492490283, 84389362, 188981264, 155912957, 378272616, 15651968, 312870828, 35741295, 448803912, 908267342, 280688786, 121369593, 87629802, 119261302, 7490593, 25014602, 25014602, 229101527, 528213156, 310091952, 114012405, 461715319, 731792904, 511145350, 228353930, 303826309, 379826981, 326513264, 343488035, 46000209, 282376756, 490731758, 49630881, 453720013, 426830959, 100723818, 489494609, 400570042, 410044798, 92545055, 134094786, 324542889, 261335800, 516364093, 310531440, 666128558, 798922298, 292042678, 337817400, 743825836, 58989570, 361174090, 157759622, 350411278, 369579513, 346002780, 650543164, 20001470, 529534189, 626862228, 28982932, 764836406, 8249130, 200793618, 192544488, 34187919, 347184762, 319010457, 244288174, 333721065, 174887843, 753014573, 134516485, 334785580, 71554045, 389320435, 435016620, 40508533, 270121496, 140144045, 331908176, 815057624, 184930430, 75934161, 351158208, 162081144, 201269857, 78019077, 36531104, 162637951, 395528619, 273049121, 241403383, 21051049, 62524507, 455437590, 134545381, 166852346, 219395738, 430010638, 350465362, 67004834, 497558468, 687698466, 214181812, 453866752, 125421464, 136332400, 291757570, 240832041, 263297861, 286820974, 97404628, 679855739, 463804701, 130136303, 79314013, 861745491, 633319679, 33532790, 362382006, 427561028, 270285881, 119246548, 299234518, 321708840, 548014743, 293815243, 367835706, 336557784, 74702531, 83793838, 26677317, 140493383, 269358370, 406743104, 35809361, 274097261, 497795933, 405644040, 645998427, 533381713, 96289447, 206183488, 247010952, 660102573, 198794427, 187064838, 403127047, 5337254, 127859720, 122522466, 94326389, 639830575, 496477876, 28646651, 341517990, 48840263, 283256987, 34679377, 141348419, 31865840, 730642029, 115847867, 419059418, 322395484, 459258438, 404456870, 279774086, 614869216, 915890120, 660950663, 210391323, 16195938, 314067645, 10367011, 128825386, 118458375, 218754921, 226874124, 455274319, 20826727, 72059267, 376751306, 450013349, 677099642, 60804000, 664250849, 494877599, 278215041, 498211843, 115420695, 196352677, 176257681, 163369866, 707046243, 345438070, 195602859, 457829074, 33264983, 157027848, 887705646, 61600651, 494166928, 124221162, 138912588, 145156928, 364269697, 734686947, 14369749, 255781283, 287015478, 98563724, 232610125, 555414855, 540052801, 699998573, 780977912, 34120080, 435492700, 201131427, 402967302, 764871537, 706353598, 295092170, 119853917, 405544434, 442692223, 43615858, 66502051, 522784413, 644309405, 748901196, 771659260, 708448271, 771615783, 99655988, 122750461, 255321608, 531826079, 390016644, 234534069, 188635934, 477274923, 79848698, 95439986, 717691519, 574560886, 204533146, 660963083, 426243369, 133736319, 137535956, 676947180, 790538785, 20059602, 763574565, 451726984, 279317253, 696074405, 749791569, 308392794, 37580565, 129455064, 629609476, 348485738, 67670382, 539922083, 433899248, 121471287, 183941769, 168788028, 270026799, 285435353, 31143318, 196003653, 697624264, 573145064, 280452239, 219963156, 401450867, 257023404, 574829732, 135218101, 500388057, 276878072, 650406572, 115531685, 518613996, 265745713, 728703770, 233782962, 406947822, 643624043, 429821728, 409460561, 215673690, 210867475, 1456378, 396666612, 395210234, 284133554, 119861546, 856351311, 924499508, 311488359, 388818987, 33526002, 446799139, 686158443, 891474040, 61910334, 564773750, 237642405, 446559222, 691028118, 387483343, 157048925, 171774168, 160800716, 10078405, 43411334, 43411334, 364042683, 737082293, 2050215, 351575374, 351575374, 334817141, 579547034, 326401904, 29630706, 389816829, 311619046, 157511223, 9598730, 37975948, 37975948, 373742601, 256695363, 319065304, 338981963, 426477338, 554015183, 34511253, 581610416, 74270713, 23482365, 89157479, 126684826, 568866628, 447357990, 123045715, 362867615, 705532748, 757197462, 191767036, 186595901, 275767326, 511669463, 554225187, 925042557, 844327555, 599901616, 422609357, 301298955, 113103884, 302633074, 37251832, 226243596, 928485799, 304797502, 386714023, 517480156, 411274611, 177837265, 230203133, 683720999, 822886939, 845532748, 53271009, 175648797, 88725891, 535218579, 776191484, 796618078, 736328099, 142005319, 542907172, 22696333, 134052426, 627940787, 469977210, 317842319, 665253470, 530352064, 136282547, 405357566, 228982207, 293053134, 203694023, 527703096, 798163224, 229772101, 498568169, 230563773, 310803146, 36587644, 531133986, 189237386, 169307203, 377487750, 445456607, 308515661, 171202982, 593955737, 595037699, 142306761, 202586149, 215271502, 225981835, 194565637, 489167318, 72885967, 488116171, 187689873, 853563780, 72162470, 185276219, 88059028, 774529618, 864041087, 896063583, 822937897, 413485767, 68417100, 166564987, 94558029, 822270227, 78477532, 355606934, 58978725, 385060676, 859883237, 131610780, 786072465, 32404796, 840798503, 67971136, 800294728, 303581688, 481596591, 95507428, 140504157, 137134793, 27819582, 381703817, 232703423, 270201693, 49378983, 510310433, 509333848, 170615626, 44591850, 25810211, 478354666, 9801602, 438629370, 428827768, 177069563, 355444341, 170826894, 82263902, 483385019, 502898498, 790522244, 433294838, 476697532, 37809264, 829611709, 709507179, 619595349, 606195250, 797387784, 961003873, 866069890, 584156695, 4368141, 146891069, 142522928, 130742183, 44961007, 308588872, 167894401, 409517315, 372877243, 931108354, 46669271, 222576052, 48055092, 192130732, 475819221, 133850772, 248782775, 22637813, 61050163, 863192554, 708509076, 457093434, 704655566, 758694526, 754776341, 759584355, 264269830, 440714478, 352994318, 280876998, 594905069, 578418529, 682513403, 153336562, 63307259, 187629828, 38848434, 561676290, 128876306, 616562765, 686611593, 222736378, 337232527, 22928792, 679968354, 10861298, 703124704, 692263406, 737012472, 368418763, 427572340, 673855104, 233802360, 71101041, 737442647, 170680168, 363740507, 31914249, 594557224, 750016597, 19845620, 28831438, 189538545, 491806607, 113200262, 246509928, 552190625, 652721157, 360815589, 399853592, 455851402, 457719274, 486040159, 3148356, 340844588, 340844588, 236295843, 772491425, 273225123, 363388345, 545671261, 84191886, 21418480, 720866241, 408398103, 359230076, 264557807, 31390325, 254819589, 325139519, 233245866, 424939122, 542295146, 661683796, 284715859, 667160497, 136266215, 765062465, 48978027, 631718318, 463324386, 622660146, 235993338, 146273237, 405853640, 772753198, 602388343, 535704282, 775460844, 12730482, 99373804, 2703366, 699525959, 696822593, 405207499, 325651340, 211327740, 189876665, 700595980, 43927439, 373794407, 261992721, 780186262, 381579636, 186962369, 178682749, 681688678, 821521901, 287448479, 335490666, 7004651, 289342410, 282337759, 627106416, 285666453, 272392404, 134242392, 440936127, 756973206, 107208221, 263698986, 502743745, 713309636, 928886247, 637291994, 252973564, 226441464, 198343188, 29775879, 363402037, 468456346, 616122407, 785932200, 336643068, 34126001, 154624951, 366729336, 542122016, 231504661, 84755049, 188143158, 655857620, 236389643, 296825888, 260259619, 69902187, 251174338, 332713236, 386774653, 488709489, 417344599, 108581060, 453829914, 368329132, 242387587, 459447819, 227349874, 120006045, 442108057, 632042273, 674737732, 356453671, 76239770, 48151169, 471232550, 96304333, 106988724, 275523325, 93923313, 250171046, 45294069, 44992943, 368631684, 75907296, 343174975, 498857629, 100644139, 59727683, 295011957, 581257601, 136009355, 524357001, 64410431, 255762361, 255090329, 581360832, 75574564, 85118819, 39838647, 80298824, 802132786, 313640034, 55022938, 269617557, 740430655, 692501835, 240193655, 215308746, 24158060, 467553899, 28910198, 660498310, 497381889, 373148552, 79430130, 532079291, 96056221, 261738017, 12148964, 56308068, 334954221, 595915213, 702140468, 504093989, 375976328, 744420371, 739698340, 638723483, 37928496, 507189690, 378390163, 145383600, 596154572, 80836802, 254957207, 411364156, 71341423, 26699030, 523019148, 420538664, 26855942, 257866532, 295264198, 125980611, 572678682, 83020845, 233871800, 87781961, 48949376, 385500037, 358386554, 187070700, 610179156, 336088635, 266938762, 607322530, 107190224, 301308625, 47199314, 321535703, 191071263, 15570845, 121811604, 268385373, 141976614, 382461465, 56767945, 310546347, 265571510, 301768277, 533225159, 194516617, 56367355, 16289211, 115849936, 459139564, 2298087, 756860752, 754562665, 598524251, 733907466, 131233626, 5788308, 762959276, 757170968, 420240775, 377619042, 676489093, 32574492, 73453388, 552316311, 595120591, 561175646, 608070020, 828541410, 92323298, 604632993, 586890299, 262086249, 21017044, 162937784, 197761743, 106527357, 138079841, 403598684, 925185121, 211437241, 621522021, 318455924, 12382250, 280505508, 150492469, 248391782, 40214854, 828926197, 639784885, 256901618, 387698769, 372825053, 18392254, 59057141, 567121727, 13887454, 282185093, 315468238, 3371599, 335623844, 332252245, 297618557, 329111340, 4817499, 254358194, 249540695, 696464931, 293014203, 340140260, 80324165, 288529585, 35382628, 22113182, 145712124, 110293724, 492306675, 688354844, 715861052, 414748958, 171256038, 285000515, 101523830, 556688046, 43349388, 45781927, 759806318, 653412947, 492016747, 306653754, 288718274, 302286963, 227898603, 585115141, 391555518, 73096865, 298739023, 806078299, 671852689, 77612161, 223214286, 292447060, 287888809, 404725324, 439643121, 19041169, 10552896, 131272192, 120719296, 687574234, 388676000, 146138666, 419383315, 116803451, 680972617, 684671778, 211632690, 585543993, 460060465, 274831249, 509083572, 198261719, 164287022, 535954, 455146257, 455146257, 22255966, 311987575, 438518484, 793436922, 748845534, 819880662, 27302448, 372622672, 328467490, 50262674, 544964125, 26287084, 241723472, 303602025, 190970540, 45744698, 36805967, 243152715, 770830783, 495006483, 45752635, 258938982, 110000186, 450886503, 77606084, 308845318, 577432537, 78548011, 530711737, 550680760, 669014523, 524038436, 28718775, 369941634, 132856227, 276063871, 80526064, 357393707, 244091351, 734264414, 246377248, 207939281, 666932559, 34877806, 138650810, 24737142, 319211838, 256179649, 559972446, 654581745, 41940418, 28901596, 144629835, 769336309, 49632633, 586755211, 15203472, 565476987, 443304731, 139057125, 466029783, 815442430, 120198560, 512806971, 16530771, 608900451, 349417223, 258395945, 580771727, 856200996, 879848364, 65493531, 5993947, 164590388, 158596441, 435897952, 356484041, 26822438, 259379138, 63734154, 400991458, 383218815, 155266900, 533100275, 239648317, 227362760, 396402484, 178455750, 158549004, 293814115, 397289243, 82622237, 352475955, 123887, 170243896, 170243896, 813728943, 897402419, 354703643, 35883347, 29645159, 52847921, 67476501, 400367997, 267279469, 439110622, 622348098, 209718508, 584087813, 146693391, 161029939, 224604812, 461034420, 134449699, 335160069, 187201985, 448874263, 383800785, 443568282, 280411899, 397499450, 31728784, 57140368, 371211334, 57514428, 687224881, 64843165, 271353413, 62372193, 271030825, 136163138, 148541080, 552151437, 381840094, 190685965, 247370223, 207355775, 447478358, 168356043, 6399339, 65565748, 59166409, 107994789, 491858841, 53920946, 661486189, 620693676, 43559910, 639667568, 281116905, 268890708, 154902756, 358180996, 496381000, 456035518, 328933241, 498026814, 180524882, 44078123, 705148674, 585739485, 8988668, 116831160, 107842492, 324941451, 532025494, 262181990, 334650596, 954670519, 810733447, 249669382, 376320319, 321486929, 576061403, 654577648, 99626622, 85600546, 696284133, 98916586, 40902457, 556643258, 215797401, 555949269, 211762016, 87303741, 743263162, 365802162, 302688746, 613372903, 433863529, 85759681, 145525186, 330023787, 670818545, 36960272, 755125102, 544378958, 64272722, 258125913, 226284020, 413399583, 517478048, 673344907, 42616078, 830877233, 389514860, 63557028, 61110238, 43002195, 48652286, 101562564, 180707195, 357568600, 750226160, 115534290, 110020036, 223345562, 359961449, 164891372, 66927456, 265867043, 126992365, 452692369, 79302792, 737253592, 587012170, 47145047, 641456280, 111936489, 661311798, 120743156, 9459366, 720497006, 720497006, 60369464, 137255646, 160377136, 712564318, 210263601, 203712887, 756972337, 120828890, 248888405, 282159511, 344879717, 112415990, 92629331, 409484972, 84341282, 539519040, 485578869, 120898012, 409066819, 12775039, 278428360, 236735074, 607859102, 549039052, 147794910, 138266781, 244241216, 403165190, 119140027, 244873720, 80386715, 281282178, 253354216, 427297193, 277009269, 670164879, 47638480, 699054931, 478335001, 107075545, 476593966, 397831444, 46627465, 491901792, 290390884, 268812964, 721194421, 23608391, 221617614, 863002813, 68172509, 83931313, 153086499, 663577392, 752912289, 223501570, 652670864, 218436726, 194388196, 283456222, 396617022, 124705725, 316250554, 145165756, 138616514, 94836119, 922132280, 873309688, 314915350, 143573120, 250634304, 5532336, 512829164, 512829164, 139889582, 328764902, 581626947, 661907480, 205100783, 209607339, 653465894, 196445972, 426226172, 136099774, 404809439, 32408405, 618292657, 730348495, 348950453, 171821406, 160790951, 172025885, 268565815, 375453118, 722083557, 729321256, 69109102, 465295496, 461770408, 293587236, 308549516, 657954071, 81933406, 75521004, 161401373, 225382770, 245394380, 195655481, 350728171, 339167415, 627923759, 578859816, 879504260, 795317646, 717256128, 877713186, 362156846, 155961504, 114302339, 491414712, 326429516, 79814719, 595913604, 506110712, 286463210, 60994901, 328584339, 409726974, 21251295, 840179867, 234652416, 220273091, 189324542, 733248339, 580139668, 346959423, 720633630, 66564547, 475748536, 15950734, 518955041, 343168401, 364384285, 625106069, 339240953, 236967105, 586232205, 554989334, 159749265, 153369846, 108452221, 10623182, 262605889, 262605889, 44000994, 381340184, 184125332, 52515829, 740557343, 832754251, 797268068, 478863744, 511711833, 908043107, 19018231, 273836398, 63096100, 239177287, 171554625, 700603972, 662000878, 336810576, 151961025, 122961402, 261491742, 632826075, 447692448, 530357470, 923886396, 462351429, 342968121, 732154336, 402030956, 24246618, 180255701, 233417133, 52736827, 307706943, 217593122, 417190640, 480549958, 97620475, 2426019, 324071651, 324071651, 563512178, 213843837, 36134369, 817331143, 717238599, 582435936, 30480328, 644851389, 753735012, 98640566, 602047354, 273655927, 332476822, 306848347, 96481031, 61052740, 351935268, 679143682, 101621541, 859140333, 170240240, 566939797, 300441429, 429418725, 230963251, 443014655, 253352002, 830299098, 142020823, 668415374, 310992622, 113194007, 185628963, 214970370, 25179002, 696231650, 119543846, 405161628, 4134523, 130924607, 130924607, 83452119, 50133043, 270631334, 897243221, 431248073, 21048108, 326293433, 172306321, 747677073, 304272832, 277229533, 272281050, 427542901, 32034418, 378979126, 396871336, 717668958, 39786916, 582933672, 619141872, 31807249, 326818998, 204891006, 7136510, 417318517, 417318517, 359129822, 86025250, 655709476, 579710268, 75024743, 265436918, 8898780, 466125161, 466125161, 301527218, 138282542, 342842161, 65750615, 153189344, 79921350, 401300334, 377752273, 225463749, 259491152, 193812688, 479346645, 371410994, 112089961, 390114962, 174646549, 74055133, 77263969, 484265847, 2513755, 449673919, 449673919, 99364683, 150943468, 480726600, 671542921, 131437175, 609786438, 460180693, 132026943, 3255605, 438304587, 438304587, 83870346, 674990884, 592790046, 241827937, 71453317, 464487854, 677425865, 622613138, 112574620, 883783663, 652362468, 165932700, 17073889, 151860278, 109973483, 743224351, 929165228, 912050, 873379328, 873379328, 620123331, 102394327, 55129235, 427994164, 178370844, 530179929, 297659020, 135633070, 421386347, 541685041, 337952759, 42734439, 561013895, 868599240, 773769460, 116589837, 178691236, 75962923, 725564400, 776657642, 172127764, 514389893, 199935167, 753592018, 100841845, 645188215, 219901097, 190551286, 124136725, 318859980, 396851635, 281459967, 50215140, 198958455, 247875529, 244520721, 114721044, 398121947, 428771682, 777460695, 347337718, 313238468, 591217939, 774739718, 218415236, 239663257, 245884032, 143115538, 575412091, 221611388, 261121258, 2063435, 126974560, 124911125, 466321861, 790842386, 472253452, 154858280, 628326995, 186830864, 69508195, 98865388, 64312373, 147160691, 545548132, 527946171, 30572553, 333960355, 396452006, 172600709, 12474282, 913653, 502693784, 501780131, 117341714, 231610707, 210246319, 766450284, 135425317, 579650707, 521779707, 88089877, 148138070, 551424636, 358453463, 360096315, 366219335, 7938119, 342680477, 342680477, 22071477, 513981150, 624423745, 253377381, 296081796, 695285878, 163992010, 320041386, 638033814, 605528892, 569513324, 48235654, 675598900, 160583275, 11140824, 215949085, 321352411, 482013900, 657553148, 634800451, 2747013, 486197792, 486197792, 193853874, 55413714, 326455162, 671900071, 740012700, 590067410, 226023613, 69352362, 119439157, 732038093, 95410517, 778154027, 815019298, 853419793, 564753393, 632194222, 230346494, 166884864, 161928034, 236351784, 417446880, 242380060, 302700936, 110285438, 153921358, 113041124, 781935443, 212802214, 81429180, 448388000, 41172670, 322064586, 669861141, 32967985, 824364263, 560267379, 7536535, 37662274, 30125739, 449135008, 258623328, 205546099, 66598186, 341165143, 144963735, 509330138, 404148694, 709271506, 720785880, 618578397, 787267729, 95966600, 333750483, 244219711, 9456911, 587747021, 578290110, 651968575, 759266970, 11805365, 338688667, 219735509, 122913264, 681053930, 179231895, 625818684, 279586249, 260930405, 374923913, 48387092, 362150642, 192512993, 712931132, 3309582, 504558953, 504558953, 137226079, 205941342, 357445092, 175401361, 61062510, 272715259, 244576706, 557927121, 677808718, 43930533, 426815296, 75114933, 577360818, 345315157, 59698713, 631075140, 810587028, 67056562, 345705582, 67235418, 171811044, 205511320, 446941574, 271516619, 344683977, 134796871, 95350125, 23107728, 310403002, 366997791, 277444446, 582193332, 185513049, 193871828, 189463834, 259870857, 529373278, 619905565, 642383427, 171944130, 173263635, 283190324, 243654157, 512691514, 527755017, 479506384, 113785503, 553508913, 178045794, 627042587, 129154131, 427362098, 132233323, 120930887, 69697717, 224987666, 705108206, 18632866, 20208879, 310299647, 251834917, 356279505, 40447011, 375010100, 129447548, 559809253, 683392236, 831328687, 93433459, 189066432, 280921329, 137401696, 233085459, 38094694, 397430814, 345742438, 233085469, 332394377, 407802741, 513973660, 757817437, 462165349, 21420855, 232917907, 488387927, 619734754, 233398090, 395111182, 910051822, 967750343, 288986737, 290257521, 595653365, 43820472, 418647950, 745203311, 95361433, 670140836, 62542133, 574161743, 610285344, 123497385, 363469243, 128638466, 44086495, 88856978, 89393488, 82648244, 251224347, 278497073, 323412105, 311516367, 465180617, 45073251, 91970155, 210478441, 204695256, 730113412, 51682130, 215019188, 356459837, 503360580, 48239608, 498057055, 19176702, 50634526, 5920290, 253982803, 253982803, 529215176, 517570316, 410791962, 374418544, 216526571, 213330458, 241949867, 39225584, 39013268, 124373464, 103568346, 344285984, 778157394, 512862251, 457707913, 14590778, 493831809, 357465007, 67732047, 732528869, 661900437, 21269032, 19766817, 163034436, 494774701, 833551898, 542117846, 129378013, 196381350, 31089592, 175897187, 47373814, 756931475, 889153696, 645979957, 114857743, 455213819, 389498444, 504426800, 230834292, 479261035, 27103327, 386309195, 578597169, 100511110, 203519836, 375088888, 19958342, 86242472, 326947586, 187947387, 81044039, 316372656, 225597023, 510575830, 135465398, 178762166, 556423998, 545267687, 282204071, 217694055, 237776099, 340512359, 309958668, 704329950, 667203015, 71834758, 150134869, 384839096, 31824544, 662824765, 698828575, 289309608, 315078223, 502306548, 539879773, 359676086, 148578019, 207758074, 327847419, 710676841, 116507985, 812223645, 52422638, 792627252, 750181141, 366475742, 22467161, 472754664, 728760037, 157789704, 5584883, 271948451, 266363568, 289830510, 207972204, 5357055, 256867922, 256867922, 910767972, 360223481, 126609661, 200112512, 167544135, 129503025, 84346736, 245225148, 251408662, 267387278, 744170658, 573366157, 152998582, 281872030, 103338739, 726779752, 88082405, 94028023, 707263154, 24870174, 824070042, 127895522, 114249860, 370989522, 323309076, 191037609, 673971120, 44480092, 643646826, 3459230, 228547242, 228547242, 268588680, 179019398, 348216752, 204491056, 79407339, 232056936, 253733320, 388790485, 187674596, 113214822, 51358813, 448118194, 881405, 282009155, 281127750, 435723741, 655768990, 477824175, 212770801, 160035581, 134117914, 87142331, 21277131, 54548928, 120013701, 787098678, 492499876, 121297094, 259849466, 514988684, 419133732, 123689303, 105368597, 217628709, 17190222, 299118511, 409210407, 40557123, 508904679, 522020093, 688206961, 541368343, 735079166, 499871538, 288971583, 364119317, 432229502, 246259649, 564049806, 544735288, 479168713, 273868064, 337938436, 25561773, 541218079, 577166894, 90339722, 12837186, 453987647, 866463254, 98346955, 671589644, 7407722, 271462723, 264055001, 73557208, 205318203, 392063373, 165188806, 617509926, 718179551, 603772131, 166666995, 620430397, 676820304, 105928477, 545813602, 17609937, 146948517, 335642900, 236708644, 461728924, 101898127, 262637584, 798603740, 477372337, 475074547, 415209076, 41219506, 492945105, 911134709, 355700998, 374502614, 604098915, 207115402, 184294188, 286018353, 664323628, 691581776, 290045377, 282717006, 97887614, 623299919, 164247109, 379454067, 260286630, 647383354, 198067622, 103874457, 30834975, 552425125, 79503, 92012321, 91932818, 647310818, 639297106, 39728934, 807254649, 113460467, 321073514, 63184750, 57842293, 397192672, 235098587, 181047436, 63301374, 113300678, 86737933, 719407529, 71339275, 49308198, 426218176, 495351264, 739250330, 185028846, 550674002, 517483615, 224530961, 292793757, 108343086, 126600930, 173651535, 253560699, 354689192, 88740077, 136207020, 141683317, 497034647, 320589207, 169980692, 11256734, 716302890, 831193428, 778476882, 456933102, 125454281, 343570453, 20777471, 14199745, 80358563, 810556569, 920106557, 683011315, 81682265, 497251327, 679526341, 249940853, 682877378, 461293451, 483433668, 614558050, 44748184, 30957673, 181536355, 24016967, 173945895, 317020213, 8291108, 443929818, 435638710, 626737449, 127878050, 32571841, 878338153, 593373344, 287199714, 79023634, 64271551, 451618051, 45582530, 81834722, 257173189, 248777229, 63299561, 34666292, 245985751, 25013713, 562769768, 227750587, 162771158, 31223040, 16734239, 295841844, 25691680, 353439788, 326099266, 482574716, 380193765, 15304542, 156107567, 85415160, 56334018, 111514252, 103605199, 336655650, 353250011, 354617903, 65969841, 354535022, 971394760, 871131898, 514088402, 143917839, 110533688, 107333081, 19951379, 408681312, 554564987, 133493592, 386180021, 577652980, 426087759, 573672040, 481330029, 206776905, 158876551, 601232340, 391572244, 106026343, 352514013, 85334643, 310324049, 255484913, 367903938, 1881807, 386704188, 386704188, 698546408, 677655066, 182511460, 122411091, 215207961, 469335935, 126799222, 119633819, 302242857, 5076437, 42250728, 42250728, 454029125, 522344269, 101809799, 613657900, 66054372, 38416779, 54555349, 732274295, 392794784, 48406712, 258831911, 246584894, 847025590, 316937601, 151096262, 204912197, 446521979, 49805653, 678547583, 931336661, 343957621, 24707753, 193202994, 414445273, 79881462, 68221965, 637041992, 606020254, 533943387, 536103937, 755562129, 367059545, 332591855, 192209011, 185144001, 249874862, 158578419, 179688991, 304871718, 767189083, 63424588, 345155286, 180918747, 728902110, 129279435, 281519876, 93147913, 489601868, 544503330, 248559315, 330992801, 145333748, 468221814, 344339934, 410272550, 866918328, 229050572, 629302972, 549701733, 184924149, 606122165, 517126467, 627601941, 71607489, 161224240, 150866644, 584175169, 49777173, 716520011, 171885583, 98502915, 14317130, 748837416, 142947234, 56026456, 312976895, 236210046, 225564555, 118420482, 432871649, 260289211, 57692667, 134647035, 718066632, 628617836, 313054121, 319912364, 305662511, 463045908, 234629834, 117711452, 226130960, 193777126, 457715266, 514756933, 277800222, 548389224, 978688218, 66502269, 10848597, 549945511, 539096914, 210955622, 89668594, 83398934, 834191992, 448164919, 371094773, 70024636, 351424015, 308973220, 480256720, 234843820, 89787128, 401688542, 81544414, 450723732, 219733103, 724478156, 735771724, 670702028, 145269705, 8282321, 215526068, 215526068, 309836477, 105051230, 477684112, 76054680, 28484313, 6739702, 716108576, 709368874, 298074360, 96927261, 135458602, 225361448, 79486967, 320839017, 164606131, 161155388, 625266572, 277119083, 849233512, 299028183, 549746117, 72456673, 698004453, 416219211, 157295606, 20705099, 122717009, 362240908, 689334633, 527812224, 48882876, 220428052, 391387028, 233466384, 657497091, 52029466, 79122600, 67786184, 469083678, 75018711, 169844642, 155807967, 495524895, 502206793, 225677727, 196211671, 131573585, 388201223, 33409906, 8740063, 809526782, 800786719, 677421998, 693618116, 192797709, 450046818, 517791396, 139228475, 89859796, 619996401, 823172906, 11535931, 32264977, 27673576, 976431215, 338621022, 259750877, 824185592, 552852501, 227883841, 205089524, 54267497, 49879988, 183942908, 826769588, 774039712, 437907167, 529718828, 500743890, 38228067, 399216569, 330654472, 354681539, 451565585, 260721559, 385876438, 470699363, 304329158, 43090679, 89503275, 290579737, 138802445, 146159357, 790867803, 101822238, 697672727, 61537206, 527494426, 277898659, 570232163, 352679019, 181103103, 385524662, 337109483, 348130866, 307743519, 77080580, 63133068, 174065003, 497476517, 324713189, 438706538, 467905134, 27003667, 55149276, 261247809, 129463810, 29048370, 118600580, 239890208, 373504442, 526609480, 522593706, 922666270, 12266760, 318707390, 31113533, 689912692, 22490248, 50709318, 788554010, 769231254, 543114655, 29456137, 359598389, 505568862, 493340252, 696661991, 465251868, 205185804, 267156041, 56668075, 771030244, 348833165, 147617028, 228626080, 142021616, 650028648, 538943753, 470901180, 218859027, 163908499, 134942120, 609873442, 445257625, 229580988, 67319366, 212881941, 720791079, 4191680, 490752776, 490752776, 329202563, 343626770, 26472705, 81326081, 204880651, 631478542, 428771602, 146241510, 390535581, 60579107, 112195401, 81412266, 231702981, 258865177, 261993768, 766558436, 694063648, 385231126, 118539566, 32596327, 394693339, 477052709, 17784132, 358694142, 643398222, 173539392, 245266417, 181521404, 343904873, 73487800, 839406883, 252638666, 657760003, 212346949, 117551222, 337361320, 159848130, 22692236, 459607320, 38613862, 739869742, 91963555, 668691074, 173493960, 386380565, 330952815, 552467331, 257051339, 76442791, 452003162, 486919208, 79783233, 292078771, 374258555, 162467386, 260172118, 685682023, 78157891, 770183265, 370274308, 425301030, 473047600, 33999219, 403258960, 800694182, 390652667, 515465388, 884702831, 264860754, 336234682, 161146025, 207795490, 94943974, 222269300, 106002296, 57525670, 112799269, 59158508, 62597311, 610043375, 302595530, 305982278, 29749529, 138836314, 147254264, 327925558, 51907981, 119150785, 91454130, 151551352, 392329007, 233415055, 466323616, 394190260, 64859771, 206608685, 284703219, 135467577, 715279573, 161767932, 667888740, 388803794, 324174007, 185408712, 468640587, 152928240, 485274400, 228716424, 117758848, 32783357, 10441363, 319854082, 309412719, 691894160, 467875652, 32388304, 533885469, 290176986, 169370577, 231970318, 327154227, 186257881, 43143949, 508273333, 185914954, 119933681, 244818285, 178029227, 511616277, 840807877, 657667459, 255557559, 29113700, 254617857, 724809832, 291684470, 513004144, 434644016, 504303745, 860536882, 10989068, 384289453, 384289453, 326059083, 462853838, 234044764, 137101573, 183859392, 524150984, 238724836, 109403543, 581768484, 268340256, 53264260, 5331464, 194424381, 194424381, 436324799, 8033982, 765888178, 757854196, 16366074, 437934901, 397198768, 718065197, 42117689, 977027597, 832042377, 404501180, 270093978, 90060219, 159902655, 852341417, 49643648, 605381565, 353181534, 606157833, 708948039, 203405841, 314393509, 571909519, 236945592, 191346173, 323290411, 917711664, 498896319, 2094731, 401698688, 401698688, 87647671, 810060470, 19627461, 253543032, 126359621, 213267500, 55392197, 341605999, 367693434, 82578889, 374781718, 316909222, 748938950, 544983439, 416695004, 248476433, 265385016, 262860603, 478862117, 94626467, 297560055, 190516892, 688492864, 616600504, 229564044, 443300610, 746090874, 353290182, 578440617, 377519087, 109069043, 217913517, 226757846, 82634934, 468992286, 35122986, 101411438, 32930400, 554433349, 193905696, 107325555, 119505373, 342451834, 446729245, 236719848, 727231445, 525118043, 300033137, 145987578, 458548491, 584329756, 56240166, 47562093, 240335284, 216860183, 59721091, 764703328, 445499309, 134029330, 78706912, 440084512, 639249668, 193835364, 117485786, 203237768, 139508635, 385594623, 53669109, 689137808, 803912028, 4416708, 389235973, 384819265, 514381712, 368583909, 415115534, 625256084, 669587306, 41110098, 683648469, 44654191, 306973526, 196144336, 663669355, 486728276, 178637533, 780867931, 284971405, 593509243, 250870128, 111231052, 422068940, 396229205, 189664410, 45770644, 33084560, 414350224, 349686411, 450052433, 179514908, 327148944, 372569235, 268404484, 326224277, 230156244, 48654457, 191148096, 361588276, 156489746, 14055867, 600546989, 439245681, 284976693, 623169858, 111544924, 283771612, 438616299, 115785934, 187443862, 658566533, 871392667, 122053841, 514929132, 219211770, 78723099, 585808829, 374550043, 232910169, 162617739, 96344691, 168199467, 462058624, 254601404, 432430866, 537008359, 19863627, 419650642, 7314971, 352834656, 352834656, 162835261, 710423705, 422906970, 86880547, 48507731, 80794240, 271352879, 96053879, 399474114, 42536441, 229811586, 283746991, 74420707, 104483938, 368883521, 259330016, 111658937, 14919539, 285530340, 486004338, 115516192, 27669022, 241961274, 248416825, 499776908, 313582993, 320861343, 11338325, 402787227, 60354916, 953943610, 575504876, 196623593, 361894700, 135703293, 701860823, 429118877, 81426705, 153436085, 206340402, 615544714, 601043381, 123328080, 369478775, 97150258, 598861434, 362073723, 196479974, 294483770, 462299623, 125157854, 18807976, 115093902, 152750659, 739676317, 91321615, 727731932, 380190412, 509906298, 673608429, 91347875, 90288213, 478809616, 208970512, 136310832, 66379953, 127631712, 103601884, 349734098, 157085932, 718758568, 715495328, 195577138, 479736658, 175686724, 98213769, 79794641, 332544450, 171088420, 626325790, 376260169, 52235730, 180275978, 150912675, 486004007, 126307660, 498159605, 462733299, 408706548, 79824045, 108251622, 115550484, 328255404, 227711369, 469941463, 695669856, 174089781, 66373317, 155399322, 618348015, 161218387, 788311371, 455432455, 168451240, 63051732, 391473171, 57020164, 417013028, 474411355, 287079031, 153982413, 326660952, 567845749, 131876354, 77080473, 239511505, 71855248, 352142737, 306694327, 2422906, 228301838, 225878932, 670806888, 103747535, 185341673, 101380027, 332871634, 251723791, 731153408, 387906717, 184844588, 97686375, 253308726, 392586470, 275011486, 213453142, 187865684, 659652959, 880035544, 6578754, 647553203, 640974449, 35573805, 267871056, 872782420, 735696650, 26396193, 577884273, 16814276, 374173330, 50633419, 5936135, 193689870, 193689870, 162571065, 278242587, 506154207, 149180092, 556561403, 353842040, 326758391, 516811576, 203586783, 228676212, 115751776, 445141772, 344398393, 247036054, 276827739, 518648001, 18278356, 210193944, 273410493, 37447065, 200857446, 285843488, 313938353, 505670337, 74356498, 510710892, 21715322, 142446657, 298892506, 571472196, 458921249, 577243491, 744089709, 169576677, 234998810, 37416353, 30922829, 759861026, 263828628, 384844441, 777404769, 514280895, 93575271, 148219794, 478161474, 799096264, 85478006, 9216363, 220640424, 220640424, 325431026, 692016602, 155596380, 860107479, 47930519, 447298401, 135350650, 79668490, 382370294, 562589917, 212678017, 527030152, 51555687, 41648981, 371764037, 31557914, 419587929, 536851117, 523012659, 100430861, 254483191, 514482988, 757897243, 659612298, 678742691, 295819154, 71485636, 382885399, 625138254, 553885577, 14286064, 129677778, 473351829, 17860762, 108235917, 58879025, 186660577, 631610418, 680362073, 126790622, 334687783, 205785132, 97664013, 346395092, 31737017, 695982868, 45780293, 745059957, 82014676, 328540709, 264305497, 391126780, 455781190, 762412587, 174518841, 189729749, 781954374, 733021634, 88703332, 567910534, 302156308, 233868040, 80850215, 72581674, 136475458, 105011664, 40724433, 520053792, 65390789, 826768968, 540251417, 107366340, 656773427, 579193094, 254617346, 916395669, 218567549, 119567590, 327061333, 500871999, 449972291, 133030594, 273159797, 97858774, 254279921, 151309571, 81603184, 156594422, 289857681, 96770306, 497275641, 9127617, 155319745, 146192128, 511952898, 446999258, 227449146, 302068898, 721531088, 851155266, 510646167, 89023234, 158547601, 94800511, 202582483, 384231895, 588938174, 228240268, 6024341, 200056831, 200056831, 323461877, 842343115, 584206677, 420033441, 672204655, 976465044, 221680849, 94275759, 572124069, 572781652, 258942151, 262111954, 479561806, 523630362, 342209389, 437185579, 153906397, 170031841, 141513589, 233424883, 822792118, 76743295, 348104482, 194670352, 220144990, 231532899, 280636287, 535920277, 55139644, 428447257, 56597055, 150960881, 696695747, 665386147, 64381533, 129016378, 64708482, 230679225, 54508679, 425415371, 95891178, 822793211, 853663080, 482802471, 157268827, 423244303, 756501004, 766242130, 23406379, 976709203, 259412012, 165148142, 551918173, 159321395, 245974071, 20542384, 450152862, 454049439, 260083977, 129280064, 326912493, 642574175, 337980920, 256765611, 193134935, 663825394, 296487804, 429811258, 395178224, 480374052, 406544553, 42669743, 70851078, 100192896, 56318397, 396401703, 35067250, 33325329, 837561263, 836392826, 418725872, 291103794, 134755037, 105908524, 283355380, 3039710, 168168527, 165128817, 36074686, 292693045, 433462658, 405688931, 141992817, 405584024, 721831120, 215820797, 577993867, 428469642, 331419721, 115169821, 782199192, 124202740, 82577710, 84931983, 32513978, 290254247, 444859553, 36032678, 281222020, 141984734, 236818274, 673190755, 488714063, 181944264, 147849388, 424976665, 150767529, 529340193, 861801714, 17389153, 40924806, 265345602, 21496033, 537450050, 633186154, 42594896, 190428101, 739823731, 589643432, 129497521, 467036312, 219788842, 384001525, 728105036, 137753311, 185009217, 261570330, 131518963, 271852430, 224623212, 239255454, 430988889, 94899600, 231394804, 380338232, 152502952, 122664755, 120004981, 90687101, 165015073, 204350944, 843929124, 333388820, 20515380, 153468569, 491521168, 31014901, 287039448, 8565680, 90796138, 82230458, 102929553, 85209662, 748670022, 782844435, 180319098, 89919983, 94265725, 308012027, 168845981, 731945568, 135239585, 725224739, 950287386, 615503064, 260771756, 337188544, 229632730, 282533101, 574239690, 118948692, 344131734, 356413443, 323554665, 619454430, 593746070, 724357392, 638032322, 242833836, 701216200, 157798754, 801548837, 282300264, 602679254, 103868116, 107841146, 782922128, 116229935, 297635374, 243437432, 443615232, 87253989, 56835559, 395246806, 231212300, 281300605, 810396298, 106061760, 244188790, 384676717, 419095588, 177701228, 653669769, 864360486, 365261305, 69747284, 248082351, 573890051, 411111136, 419074166, 913062211, 184152617, 715174944, 162273820, 757784408, 474152809, 96193234, 152306540, 109568757, 141334463, 529701070, 2557617, 112240220, 109682603, 287682921, 445781136, 10783992, 736671305, 736671305, 536555810, 115049943, 329500191, 183703655, 440591704, 635876593, 79311191, 132682789, 58889704, 312007658, 239891150, 377790818, 501482450, 246997774, 259736067, 600436219, 64532211, 240053281, 648213208, 355065468, 405888123, 626243951, 30287645, 348731142, 447161512, 499808326, 213903532, 508721298, 69553246, 83272017, 29696343, 85943124, 459137291, 515268248, 196736260, 637074097, 604354646, 465940429, 528200356, 119369554, 241019518, 18519743, 16060694, 185896339, 479211693, 181653113, 366749223, 413785256, 112048640, 674056545, 544999065, 387869827, 535179564, 142187784, 215425784, 171225639, 175331033, 342677663, 116409476, 128460229, 281143607, 33786872, 456737292, 168996921, 38586129, 292373717, 242028819, 483128054, 92118268, 112025148, 374709640, 132737064, 706053239, 733131240, 630033277, 295539196, 192596472, 474412726, 789709353, 872463166, 450301232, 372637311, 80002204, 582101418, 246612386, 125842263, 108875138, 644505035, 675030185, 508133093, 21135571, 457440947, 85788618, 50285597, 431348152, 427853545, 530902122, 437864756, 558125411, 9900880, 721324926, 721324926, 131721015, 98702472, 701707568, 191192800, 802802520, 925139307, 816025048, 357398397, 494270, 139050977, 138556707, 177866742, 733843322, 704915492, 297269707, 404677309, 195293506, 34918839, 83586484, 647115472, 85031525, 631506409, 533772536, 598043091, 834389989, 93401660, 298595133, 302117251, 140436417, 80633603, 527487346, 173824555, 154791661, 422463571, 332151022, 156524139, 67682922, 703013266, 374808619, 460311553, 718785094, 642989563, 296642782, 365222682, 107348176, 288802690, 187839867, 176149065, 516584505, 826659930, 539160033, 339190830, 275703272, 161134191, 471742167, 531808647, 81482524, 123389122, 7460367, 375878924, 368418557, 716701524, 516742028, 274141152, 4132923, 4132923, 427895496, 1354393, 425116966, 425116966, 9585417, 581158398, 581158398, 599749798, 826957833, 593832972, 242252863, 812586594, 128929390, 290264305, 331155684, 613391222, 645040789, 252494308, 757520327, 240918073, 372133659, 314106243, 96580416, 661053931, 272202312, 368823525, 252684458, 91216661, 568619655, 169598655, 166227018, 735595485, 431881770, 270958517, 459767435, 111214045, 392436810, 596255385, 20046928, 194803870, 389466498, 55455282, 53129951, 211247452, 344158611, 548134010, 561251972, 84477527, 468058005, 127331970, 285381442, 358296181, 236977260, 290404959, 166793984, 187980918, 328203014, 408444061, 67102689, 80374829, 109520644, 424787179, 482724641, 103666800, 112588530, 231356455, 32785020, 385904350, 14344637, 469446099, 544331217, 89385322, 593984145, 337500718, 59936395, 403962568, 689671031, 356770293, 583352589, 759963193, 123006472, 140115198, 113486603, 133647329, 335834626, 487875887, 367465395, 730662314, 9733657, 425001550, 425001550, 633464032, 702398447, 342802317, 431942765, 135263440, 638137816, 276068989, 303230435, 193295109, 117666752, 665924245, 193063575, 296248735, 469358274, 212966975, 406091396, 823430692, 762750855, 81051148, 79689185, 105020444, 551589959, 229992390, 122512828, 498639075, 714369974, 581372289, 67863989, 83672564, 429886864, 476511980, 100459394, 362787862, 449750012, 55068048, 38081279, 477092155, 284355552, 418252853, 738279008, 621895584, 571690186, 60224744, 42615161, 58235015, 403429897, 90832963, 93074731, 208935879, 184498118, 42404109, 299263566, 231319227, 206613928, 190186654, 936672880, 249400141, 159624177, 356471619, 171584080, 332203974, 749595006, 394386579, 13422673, 374170914, 695148579, 216486492, 230448896, 258944430, 230501188, 417958835, 117884365, 10062481, 166853045, 166853045, 48570772, 960039019, 874291478, 109262026, 514228749, 191252067, 331749450, 55082960, 262137304, 336801306, 191050331, 504856651, 726752970, 924292289, 873382088, 817466697, 422903077, 201320111, 42217726, 104162865, 595215759, 426682798, 107466290, 277617019, 686218328, 568658131, 26685601, 167620694, 189659824, 443328860, 441332663, 461505242, 41590392, 194810329, 37561227, 606409755, 72026921, 244263766, 154799540, 40806023, 3510885, 48535167, 48535167, 67233852, 254591423, 446677943, 53485063, 433522699, 22804790, 521797592, 640052698, 395201557, 131823258, 161569234, 252559037, 646982371, 310366261, 577382558, 330225745, 35257111, 246192658, 104406583, 318349328, 282989839, 500823762, 286862657, 458956933, 516367221, 264845490, 121456101, 524717243, 375258383, 240320132, 37957567, 94337942, 495732743, 153197023, 563177203, 358583785, 304091312, 541240125, 576412855, 632983327, 756219170, 899982143, 712374008, 663965305, 825760161, 18418919, 269055822, 21076108, 112279523, 215072204, 310627090, 669641978, 47135602, 26690976, 407684114, 282415548, 117051478, 335511524, 738129224, 621065167, 157263996, 268773286, 673514483, 508202797, 220433377, 260494177, 532487436, 668642614, 460104548, 261957946, 229936619, 39364071, 142228128, 569688297, 91642092, 256118764, 365300248, 324300878, 201379362, 24415722, 600804656, 23737102, 435124194, 315470895, 407403970, 5954589, 55042844, 49088255, 190506950, 326273130, 92648536, 49947226, 295003510, 137771477, 111552949, 280469123, 243363212, 292195591, 762271858, 254469882, 111783263, 60311383, 209419822, 119613340, 310347433, 7031407, 405671570, 398640163, 153394260, 283217222, 212054894, 124424146, 44652542, 269135744, 67444965, 137791674, 276428592, 227222884, 92790420, 306635853, 279490532, 425177523, 445419491, 478626769, 723743365, 5248747, 382045187, 376796440, 288513856, 345953898, 83573605, 393770076, 301438708, 256180674, 96859211, 305115624, 402066043, 518703035, 569896922, 30447533, 680581555, 621911316, 105277897, 90328628, 227321602, 220943023, 558001456, 413881678, 246967125, 767310521, 247665702, 398483890, 545989684, 670873048, 661940101, 589672938, 240315329, 372345108, 112934343, 426032640, 570832719, 659819358, 113895224, 465698342, 440584927, 91083946, 644984299, 256756778, 62101319, 523295816, 531059542, 20678321, 423718288, 75342748, 101376781, 125329996, 77577094, 125268893, 633504572, 360891894, 526370170, 52891877, 619543192, 153246123, 510676147, 8592226, 205585055, 196992829, 619271646, 65392828, 11806379, 245314121, 104042903, 629628228, 581010324, 272647489, 50680249, 174630332, 99816845, 528051813, 316642436, 456232676, 69969675, 48307121, 25206717, 302942827, 267279357, 109261462, 39457579, 736090440, 870272616, 395197925, 130564692, 261511214, 404131294, 182049597, 605323284, 147101759, 715815912, 845877997, 900320322, 945308319, 125749467, 709482332, 739395598, 500451783, 760453, 597646267, 596885814, 867647049, 445353414, 19075584, 386483204, 804078435, 534569992, 574185148, 901567944, 198313650, 509755199, 422431068, 508648646, 665301882, 524420609, 126305972, 112927047, 216340534, 181398180, 17298291, 523593200, 837818997, 529805997, 160395538, 387251938, 581669467, 411303469, 559506329, 31254685, 594449829, 220829515, 10213645, 586173438, 575959793, 532440440, 665491735, 316630827, 336429835, 294471462, 307332697, 207970968, 10455373, 113186786, 102731413, 94097051, 544568222, 924547173, 101044702, 88196316, 622186158, 292817101, 56862463, 180997831, 102819412, 356466873, 736838074, 613006830, 338971908, 345043379, 13995608, 479816663, 90421082, 538424294, 15391600, 578143282, 181246169, 61555231, 309223330, 775319749, 733452262, 66764171, 39009384, 617546990, 725727997, 791419689, 149759711, 732297561, 8135253, 38220775, 38220775, 763156408, 566679447, 179154019, 334698957, 419875767, 578446694, 438056623, 246904771, 179601271, 174642449, 80220007, 181533156, 406525916, 289103220, 362826563, 436748191, 423001953, 225881646, 618600245, 922555504, 571667537, 298250146, 74021263, 11373287, 1121332, 546406722, 545285390, 751431058, 892581636, 832633555, 71441809, 591677008, 273981961, 18313541, 521732001, 79839309, 206171934, 144349493, 178718233, 672720597, 722100694, 542991056, 267504789, 433880949, 97091020, 265451978, 311497975, 303146077, 162020160, 276786371, 104967520, 63198434, 683655285, 276339349, 638490736, 318923488, 223561140, 344701251, 188464147, 150072421, 56086504, 452008387, 50341103, 645432309, 869508976, 496339764, 250400222, 708925935, 287772200, 232524729, 171904014, 68908726, 441547281, 806190218, 424977836, 60758015, 58703952, 207932385, 333635423, 646731603, 89872993, 186192452, 261431492, 400948684, 201651805, 272209418, 454523584, 52378465, 177660586, 198635177, 459196212, 107490241, 507127519, 411204004, 726083329, 358082757, 104224568, 101482907, 438075331, 757449634, 433891812, 227020530, 257770803, 421654470, 217298519, 599343461, 51195944, 480844080, 39143127, 602177714, 522206767, 78136511, 471848076, 358989032, 388981460, 624816010, 509862793, 46754769, 303766338, 460661208, 833887534, 658249981, 72756430, 452593853, 396282780, 128290211, 159862252, 475618216, 627538408, 148167013, 841199103, 421460330, 100341153, 113473166, 291752728, 487999179, 428253397, 20121, 122373031, 122373031, 238738240, 111613347, 244130473, 92959222, 12141715, 141594616, 599592911, 593451300, 238453504, 522273891, 558241694, 60382305, 168320440, 646956528, 232587104, 121642072, 108687713, 406498489, 901454273, 398665860, 210971938, 339760243, 461478107, 282341426, 445401016, 106842769, 476164926, 261561655, 108051129, 243323532, 373490005, 343045829, 155990100, 548180855, 886185706, 15635994, 217648014, 747478253, 309199560, 293519642, 22640365, 333233298, 249386529, 650001432, 79400881, 835566523, 683943419, 425586479, 536166955, 121392725, 601510155, 212242323, 174768773, 176327090, 581911036, 169134798, 310912551, 392503220, 438465734, 23156412, 116619563, 296212890, 303024083, 592413564, 561040871, 706448245, 914012860, 40185573, 624203677, 394564529, 206618391, 115829563, 185271964, 293733101, 80186502, 74661222, 711339036, 86347445, 739736847, 536010055, 129554329, 370158578, 265615316, 299194769, 216878434, 455400001, 448417759, 186038681, 640658898, 125298268, 189919163, 236084405, 643841732, 28073187, 594949732, 267511555, 133418483, 194799167, 557320635, 200990824, 105456000, 809400840, 395574089, 464942669, 426156585, 507651100, 580460056, 455214679, 1697162, 438027622, 436330460, 293025721, 145217164, 643922558, 499839133, 381134390, 245883811, 218110840, 802941779, 464423595, 76750842, 280606790, 209137862, 96107226, 206056453, 238984447, 199123796, 263061304, 171250314, 499779652, 680147921, 667322563, 293544499, 110370659, 69958739, 152682460, 495605263, 516092102, 69016966, 130228572, 547060087, 86438287, 429506731, 129739112, 176059661, 369662930, 504882038, 191609848, 328839536, 55837718, 517603645, 725335760, 302409280, 21528350, 348333549, 95708784, 126956716, 135551732, 279553433, 107575163, 267572233, 253785836, 205899655, 41931519, 129661776, 293958864, 15049782, 369745354, 250841947, 121836005, 420910382, 740670088, 733690808, 735066482, 61380924, 409813030, 129982317, 142462966, 239074181, 108569322, 615947203, 675986573, 804783828, 459388850, 52105998, 353124032, 476078492, 584376270, 330968156, 54409547, 235202484, 35895547, 326331672, 368089377, 113803338, 532750173, 689799109, 104090537, 60536990, 469903084, 346848187, 322888564, 70676314, 183477387, 513039097, 123588987, 73837537, 538911941, 613655861, 321109048, 295074220, 52732420, 195013301, 228000489, 333363547, 786370668, 506180653, 153347329, 68539317, 215560640, 101944866, 134586441, 473434843, 306688991, 161504965, 3148071, 27319991, 24171920, 298021686, 55316474, 41471531, 547096722, 968941057, 441898009, 385243235, 409605920, 87997965, 453428534, 73654131, 16464416, 75308140, 15813301, 103756640, 69619435, 274643157, 225416215, 354909307, 414133813, 157617793, 34165786, 366715509, 21256667, 8305533, 712478135, 712478135, 214203688, 678791181, 56136297, 142212581, 7395, 64681207, 64681207, 696426642, 842824262, 889899731, 941539841, 722884575, 165505627, 157853488, 269386918, 756219561, 91827866, 293902517, 10552841, 435927865, 425375024, 967526568, 249887379, 307932881, 259506621, 145512983, 431542010, 306987262, 91400824, 575992071, 313633555, 421714602, 37440029, 498058736, 525856853, 382491980, 68224611, 388816627, 465775683, 410123993, 8966778, 890393411, 890393411, 488279189, 331957538, 373650660, 144005265, 219260852, 740618115, 10260252, 802774785, 792514533, 22645435, 499863265, 326491467, 464801962, 553430357, 824173516, 30701205, 219310709, 416141323, 741758143, 165738131, 733882463, 817614969, 69542717, 888677995, 56381738, 21017291, 529126993, 150170684, 413593059, 222529298, 655841251, 32591761, 18193586, 284504668, 246728784, 28456802, 66544872, 465835487, 604674120, 127018149, 34987093, 793313771, 217759164, 110700341, 112167386, 178438720, 390805351, 866063211, 563710827, 386975228, 492081033, 139016478, 169281062, 394369237, 358096312, 417345962, 178405506, 520502177, 753888172, 735291303, 2195169, 336110863, 333915694, 49128731, 407443528, 26174227, 120687885, 547038940, 83053228, 41970078, 139699287, 174902320, 556344661, 11420844, 194904688, 448612680, 32255061, 394539348, 154885841, 517737761, 322818284, 380908780, 197548164, 598411133, 372733804, 229656023, 143672258, 350073217, 279765992, 224859315, 20877451, 194877403, 551706905, 410514524, 129379883, 59070300, 140222667, 193808062, 208510341, 143618169, 375179123, 367759456, 117753386, 517618083, 47194212, 276225611, 529005850, 474361109, 14410725, 221094251, 204510874, 120215783, 486765219, 709061741, 8140794, 220436233, 212295439, 20295011, 37995656, 71501885, 269101935, 324850153, 712450819, 85640211, 97960521, 450449364, 270450833, 524027796, 247976616, 167927825, 37537014, 610005925, 31876630, 114255216, 326267158, 88171253, 173648831, 305451996, 254833824, 26190126, 14709375, 510111909, 386006890, 668653787, 866420915, 557394756, 514888813, 141114685, 697121447, 617755788, 161771802, 25660350, 589803719, 228937884, 382466150, 320303169, 117907041, 62125465, 184157533, 592273597, 86545693, 304199824, 337683731, 240370239, 56091631, 146341758, 487171903, 505595286, 392969295, 364725319, 397870678, 170759554, 605339520, 72914360, 801263359, 77709581, 888709107, 401530916, 302289666, 374080964, 376569556, 92694059, 456894238, 151510388, 350957107, 16526576, 685465570, 701073410, 607214962, 582422098, 418038557, 474861856, 503896690, 199001406, 623516847, 67737590, 103333267, 361323409, 710798143, 706466308, 592373209, 483166720, 592974035, 476917458, 691027465, 63512769, 203358831, 18808319, 440430969, 758191722, 629948691, 264028320, 19230609, 551444436, 850242313, 492803413, 309093084, 260865375, 64374672, 365080940, 536442495, 385711019, 282547585, 45348304, 9169834, 379553800, 379553800, 332099882, 558574339, 487325742, 169244323, 632207031, 279776310, 151781125, 549267020, 731641455, 663735204, 304378671, 172884056, 171970820, 82814046, 579774558, 228787696, 301128701, 185786257, 532786383, 612469648, 697947651, 893816441, 10892842, 769033509, 758140667, 678507988, 274017809, 344584673, 523651869, 7553896, 67634054, 60080158, 593656285, 481537921, 45101996, 519832526, 730320026, 2911898, 142954362, 142954362, 165251229, 663682093, 196749460, 38263292, 515433761, 956086943, 137302104, 763052570, 786691788, 58011309, 171585678, 38097825, 154684963, 198303493, 501002697, 183798539, 650820591, 732424432, 358797920, 168278147, 400966009, 353106851, 61277893, 168657953, 193981064, 488653892, 664976636, 380019114, 392111344, 468600960, 284494030, 186535244, 18957920, 85236851, 636633873, 85809409, 466337402, 248103187, 575843345, 246755958, 602459528, 595650689, 622040670, 192163028, 251814669, 128031178, 518455232, 316532074, 127731176, 411131960, 11649254, 866764991, 58568764, 544813922, 163979521, 562024219, 474845920, 261160190, 235534087, 390245338, 328903584, 468917965, 148369850, 574049425, 179310259, 459608684, 242595086, 159166702, 288492669, 387072410, 16091185, 187293279, 897192625, 264716981, 33990530, 224652404, 331966603, 409891413, 822071608, 370131763, 499061353, 477997113, 83682615, 15241992, 540737361, 841877085, 380780666, 433751974, 737150942, 562661446, 253372788, 414447803, 884518101, 729850560, 741124228, 757103673, 8408013, 29964326, 21556313, 653579385, 413421822, 394817390, 548342144, 367114502, 124475038, 643811295, 156899599, 390652253, 144581568, 25612901, 500377270, 560336635, 264575415, 582033659, 494338513, 276577963, 687627352, 384081226, 131612888, 150872902, 638131201, 319320417, 430611816, 542785479, 410168971, 240431346, 334181158, 52101322, 467611093, 70495559, 540236556, 760981225, 556571579, 148146258, 357775722, 208632388, 244686283, 836593117, 521781546, 225628021, 409075221, 627878164, 488587512, 163554329, 149627176, 352862110, 234043249, 650537874, 191981543, 451867682, 805261996, 859793747, 490903355, 181073973, 626348951, 436679597, 262959649, 225972732, 141688171, 253497843, 432764654, 196131799, 339000040, 631090234, 357238647, 248496711, 604052165, 3707627, 67585558, 67585558, 4825008, 239288375, 234463367, 235646652, 505029723, 709415258, 407499152, 172135484, 5184672, 104307806, 104307806, 748277927, 217317575, 78416561, 138530973, 262533554, 398592254, 603504690, 635408935, 84469909, 504221113, 315521102, 610368031, 36569629, 307475133, 146458660, 79641502, 734600835, 37901154, 358441266, 51636268, 597061989, 731186854, 599834713, 514707129, 118105400, 384111106, 233250318, 458483958, 266765078, 338571360, 257874605, 175728154, 518182287, 13058366, 285570037, 53375063, 323160216, 111554197, 694295220, 624356174, 741295427, 301234916, 78624693, 479189028, 538507341, 134910440, 278493246, 564395406, 35940534, 11594548, 666378436, 438333051, 2693383, 269565083, 269565083, 91705432, 557825646, 332761101, 30433539, 44758099, 507276701, 760086116, 436972610, 354052912, 381003364, 91107975, 242766620, 37276496, 178057494, 4086902, 411698956, 411698956, 370860018, 393021634, 98277318, 416502243, 806047646, 90593529, 757560458, 186685499, 141988666, 137567943, 592787538, 340736681, 209808748, 279408972, 466871114, 482948351, 194225487, 686618970, 189051885, 524326693, 539145016, 49657583, 232829563, 218026497, 40094191, 230285678, 787375773, 273589259, 88772508, 270549874, 717232052, 891208459, 27739645, 689998698, 159203049, 438883683, 227632727, 299769420, 367480415, 152210188, 279994734, 591410809, 185675488, 153892157, 182695772, 78381530, 550352182, 483314211, 230741097, 313198845, 686566692, 673819814, 287989708, 459217051, 816909543, 566282381, 286691736, 83874760, 364375295, 116863905, 322326754, 387625320, 43627735, 319799299, 384875934, 534187266, 643256424, 818362102, 47738659, 13038695, 807533181, 341785163, 225381987, 550733959, 897249440, 272644607, 294508217, 555962137, 446447012, 138687666, 293753442, 947763516, 399798424, 128211478, 410280189, 352468044, 112059533, 68897639, 27778703, 503725384, 380534639, 419228770, 23627715, 447427240, 564007452, 45845953, 778268832, 235249406, 604800759, 856608117, 76001055, 171810789, 460184633, 115997788, 168075833, 498305154, 653081722, 122900931, 51619766, 502714379, 230661133, 358784850, 128682871, 572041610, 184320105, 66570614, 109745011, 673592420, 213306421, 614726680, 22077762, 632285674, 9121387, 223737187, 223737187, 291516071, 213920430, 199003939, 640719, 528989446, 528348727, 245179742, 33565720, 188739511, 587327361, 669543700, 732875598, 237415537, 200709958, 263889141, 556132346, 304928012, 460096608, 833804248, 7953942, 743259594, 735305652, 584545106, 663861205, 681735854, 667523063, 389777583, 356532156, 736220556, 655809174, 407253356, 43159591, 548744295, 605998321, 548749081, 284856055, 260497937, 63777224, 586218346, 12628314, 187406943, 705187081, 487536896, 372183827, 49159517, 536171688, 233006841, 217987481, 123642769, 356897409, 381313017, 204485310, 394713761, 665479978, 845795373, 606438766, 328621836, 109757304, 292978599, 176895343, 576222413, 76449589, 693995127, 301351014, 173957415, 101806943, 82041827, 53797652, 44034600, 22306443, 693555260, 315295084, 329764086, 153668842, 71090323, 362731726, 94018605, 638146655, 419337195, 55065164, 462474439, 167887360, 95653210, 548511281, 852763406, 584745792, 114224504, 535768287, 57191715, 261413529, 61581622, 169206646, 430650415, 159508402, 464991687, 250161413, 489005407, 276940437, 484787641, 507395808, 397050039, 581902972, 202810380, 235568994, 234543862, 341582423, 521801924, 219772114, 44262504, 451148092, 639448553, 557546435, 63340071, 412414625, 39223265, 118092506, 68654876, 381989663, 21114410, 206539423, 76433795, 57127930, 715022898, 133576246, 524271596, 411387500, 670941971, 257360308, 144859819, 23841825, 515659740, 151113616, 24159559, 464498007, 551492422, 558523645, 188986041, 164028278, 451424706, 545093423, 367943832, 244101157, 245983729, 405356810, 53569775, 43827297, 264877998, 148877147, 489579609, 109316071, 897154127, 566210426, 127955597, 422291566, 197668120, 755733060, 341683331, 231349573, 60122275, 229115315, 564094413, 135315868, 223560076, 242328384, 651261348, 52952178, 370052299, 394352973, 697931768, 675868029, 717127854, 360343713, 362397066, 190240482, 293406105, 25583061, 449210303, 355505600, 63836048, 559446342, 547161515, 655913088, 591317181, 78075777, 412978714, 599436618, 807606855, 726161473, 504088569, 111927137, 125404297, 144493600, 155959500, 203411171, 404061084, 268681272, 362382828, 155184141, 69856863, 742415006, 97049368, 40741448, 567444455, 408935329, 269179834, 266304467, 80170903, 75495013, 254289105, 336394802, 125891290, 137665533, 455215837, 679680813, 938708640, 772311362, 146017241, 853866758, 433097178, 7745951, 134073428, 126327477, 147028511, 120784054, 209735358, 664195295, 524794443, 57255513, 38322569, 64227625, 464770460, 631882109, 618505571, 902045640, 596739542, 87210644, 275940761, 139603702, 203025991, 209926892, 378190671, 713896282, 169558531, 197111703, 136813504, 269562699, 314223889, 496197866, 72223726, 482757800, 682032158, 96898001, 258474806, 113463312, 623826550, 104234044, 582127362, 59521896, 47320929, 61058069, 30350411, 207949692, 769876498, 808773400, 122494698, 822465021, 912755418, 436050685, 285182101, 506120855, 134317596, 264972423, 140572377, 236118741, 762163583, 158231132, 428277088, 111888687, 36435226, 18936857, 412185053, 395214776, 100114242, 415100373, 957737691, 181947161, 188693621, 48964176, 204209181, 612551526, 653338338, 181550838, 394139021, 36990909, 371084267, 423866705, 36675625, 182639834, 54537009, 190600357, 643875604, 578247883, 252331884, 146689681, 45241132, 330544064, 95072968, 873485284, 149391197, 494389526, 324480959, 471848432, 141855186, 629912249, 909797655, 534345177, 193218073, 303701940, 580253392, 752306420, 647476301, 663421728, 789482737, 99188715, 757732689, 779117286, 213663932, 257279655, 324295021, 335729207, 33793604, 204637911, 197945032, 511180064, 155741527, 8394926, 223976416, 223976416, 468757713, 222805778, 23471681, 283357614, 256102644, 788646335, 965394770, 112185375, 843501292, 947856213, 251711667, 6725890, 145476215, 138750325, 122389300, 96312393, 375853975, 501496131, 354358998, 394556499, 47921564, 60337470, 71116534, 279726376, 45752311, 412988501, 881598397, 286164329, 311728783, 174283552, 477767894, 211253438, 6832084, 546174062, 539341978, 522294924, 37047683, 186715073, 76962335, 273945286, 725965098, 6527776, 544854248, 544854248, 573175431, 254768567, 396130756, 821104005, 69458418, 583948144, 298962788, 487734851, 444555993, 663822468, 415371172, 95555767, 187889991, 312227871, 66082218, 379722441, 36990611, 540988072, 72998556, 961296960, 156419466, 112103257, 112423470, 584387652, 116602666, 51543864, 89281645, 687538534, 25846910, 773927568, 404152025, 311792621, 818274283, 352848409, 339600361, 710001380, 655873767, 61518938, 21673926, 106323554, 285729477, 121019025, 182617082, 245737627, 234909042, 216474824, 104539201, 293758391, 88603130, 318730311, 389597119, 54860452, 195506516, 117603939, 132219361, 24810304, 219313362, 252388708, 107486112, 194158318, 122221928, 43184821, 232075447, 418062032, 554799794, 205757314, 217976361, 20203920, 104478522, 740955445, 97938692, 753599337, 507221473, 151328259, 266835422, 171071077, 590447879, 290699924, 134865456, 108211964, 86793712, 43024793, 555899461, 692704465, 137641582, 69314019, 72858385, 21398828, 135373789, 553351047, 307125272, 515873001, 812860269, 710746274, 24697528, 247638315, 105620375, 200718448, 692454358, 158475718, 470157273, 192251770, 549314541, 108033920, 364145816, 441543791, 11267989, 31511841, 255464881, 239636978, 113875643, 351442284, 4749988, 245776823, 241026835, 570839716, 27034547, 349955788, 3577437, 299057381, 295479944, 328577644, 9374419, 375651810, 375651810, 418486756, 322640537, 265533274, 94724388, 214022009, 316374376, 765601768, 284661797, 229485675, 93049859, 562254631, 562052617, 320400506, 459332461, 245392848, 173136580, 164142386, 388307828, 46468744, 619924979, 546800751, 844325089, 437709795, 271284502, 40667548, 185552287, 198956619, 47792469, 412876324, 486692815, 757164716, 277818616, 64898951, 638818467, 462536086, 364351042, 903506899, 984488668, 59368468, 350789013, 127661399, 287544300, 359413868, 653787501, 20252201, 520321971, 667931522, 137983415, 407452475, 26234226, 290773687, 391503711, 33423325, 380681988, 400588395, 433333240, 600048883, 114859444, 366217436, 351851310, 542768354, 185519071, 250592751, 424324083, 122373408, 575788761, 543365390, 77726090, 650067200, 401804011, 296017060, 619540484, 509174428, 280780644, 72749973, 336654020, 48273095, 164860946, 701447392, 161906502, 336434667, 111746243, 74206662, 898452785, 404218904, 266810690, 105038181, 538989874, 44646282, 441768276, 808879860, 635291195, 471685023, 335240748, 299712906, 177032186, 654036408, 800367272, 655668516, 146860737, 262246009, 555175652, 77477334, 184711038, 262547408, 97462868, 360707390, 316124764, 444554822, 286290916, 251505591, 72353201, 234782295, 644993914, 468062250, 120196051, 129168858, 637514523, 124679236, 729747975, 319428876, 301356935, 535587975, 103209985, 109431325, 167806717, 735567875, 12685709, 651230650, 579691021, 207401916, 363624828, 624558478, 91105289, 221309739, 40571765, 315495027, 476617643, 74819916, 9982638, 222761410, 212778772, 80502263, 11670717, 17289686, 135192746, 265861880, 558795412, 489452356, 373537254, 56026421, 591432819, 245865146, 306999976, 85738402, 12511202, 261820195, 782087714, 27635872, 197585087, 213114465, 301561513, 409526373, 48433068, 488540154, 199902773, 127959442, 439908812, 106119446, 382949469, 432086160, 6024317, 453678062, 447653745, 79190767, 198951752, 150955718, 13932951, 302135735, 101322651, 317283723, 693365689, 34458639, 21449204, 193068477, 918674976, 10528804, 477999084, 467470280, 415784695, 479699582, 108700773, 361366453, 294338150, 94457254, 42005914, 531437132, 32190349, 280547752, 539831777, 912233690, 150659476, 265499424, 324304575, 623444511, 453886815, 78483931, 308219600, 148625854, 433575239, 98594877, 527546034, 654173127, 156557930, 879511292, 84757772, 64429515, 855327679, 495899594, 128882447, 425231322, 240330791, 529731251, 357804832, 259928521, 42826260, 49437760, 173746832, 495404999, 740539592, 229402998, 353801814, 281044637, 280855267, 148423577, 39184902, 658530199, 222785052, 122972169, 202447008, 624597398, 82763933, 61953029, 46607561, 82984437, 703576956, 539197313, 679753359, 178957270, 721729632, 3816576, 681636707, 681636707, 88005337, 291425056, 471061517, 588836669, 85084170, 374459748, 158974876, 267104890, 234658901, 537671118, 515615984, 220635139, 342872432, 467305433, 41385128, 244425414, 313661504, 53521841, 345708591, 177725276, 128526951, 185819239, 755331336, 441422507, 460347961, 256521667, 560526993, 149737369, 503875933, 57109524, 686009906, 59516831, 447826532, 89067944, 39192086, 190286851, 537008152, 482539657, 2402552, 73929987, 73929987, 664721098, 110264308, 25043400, 339048766, 7123673, 540703221, 533579548, 216267493, 673462157, 569247646, 210858455, 104816753, 189625306, 643381011, 614398780, 190057791, 251456413, 373669636, 235036289, 337088686, 218262421, 220219422, 25897960, 254468966, 735732297, 2741159, 304357610, 304357610, 64589683, 550794267, 802004120, 670358437, 30227548, 43203257, 298627763, 452116112, 124834020, 299302703, 218372465, 583022349, 173969564, 375306759, 541549835, 223558925, 23016649, 448329020, 744009492, 413798759, 498638555, 733036871, 544896648, 18262385, 31873455, 123470930, 183346328, 67935425, 142841988, 128029257, 263634919, 231606646, 36048268, 364368452, 112303862, 753492154, 329052264, 309722532, 148687256, 224877991, 475183426, 712261038, 588917177, 246614060, 333173635, 554509655, 481455871, 661904309, 676431974, 394723148, 159636693, 32688563, 112115791, 93728884, 328550158, 903583123, 740651354, 668480382, 458362979, 155331209, 146229907, 219641051, 80736497, 85110988, 55224233, 178467779, 106189341, 523538917, 241007384, 252535779, 623021255, 162717596, 316314175, 982068239, 675195206, 462641789, 110847003, 145072869, 332459269, 277676273, 655182626, 346463635, 334728676, 238692505, 425429374, 7491097, 226620710, 226620710, 127859750, 178681831, 360105761, 389779416, 596532552, 224596966, 177153891, 38529236, 679387897, 762239379, 461836342, 57694349, 260952174, 596632268, 57009918, 12644173, 662939691, 481025667, 280948295, 721855480, 905402721, 64856213, 21283740, 959295868, 597955867, 540510260, 57881287, 155679872, 646350731, 544448963, 88794293, 431621537, 513999514, 418548685, 14363552, 275093388, 161741597, 608611309, 180025522, 342794740, 391274092, 408593263, 67508713, 599366269, 440738514, 112165561, 60833389, 505631475, 283947595, 341181319, 199378812, 185794584, 258329414, 767487598, 111980425, 686599131, 764375119, 277452297, 426624031, 213955522, 244452645, 393247531, 234776273, 649386893, 203816189, 18979572, 177537619, 306993053, 236208765, 507440506, 150144892, 706878585, 25014307, 812443275, 737354702, 798372450, 659445983, 267462802, 785956155, 530595529, 60804784, 246174338, 20299962, 283898395, 684777351, 165505539, 445376850, 652318773, 589007055, 183672404, 247759405, 414693431, 244718017, 35320980, 92335792, 410823796, 564918700, 352727092, 151936470, 155940644, 288613647, 384407597, 196019731, 67468604, 439841643, 655945226, 700395225, 338694801, 375356743, 884872864, 19130379, 225396271, 61963873, 9820967, 235216639, 225395672, 619934002, 178545254, 293497398, 182392660, 486530692, 515651633, 138140917, 206572754, 565137433, 161023067, 465228907, 314936721, 464901909, 3919398, 98401971, 98401971, 193787954, 377809574, 724680184, 571029498, 577468358, 172722910, 676489787, 476971319, 180143664, 274579413, 351545108, 195961041, 203629379, 400783970, 263668157, 88283949, 168050598, 203132271, 370618901, 83734250, 387275465, 613345928, 644469666, 233338990, 246139878, 693118317, 195719242, 20449576, 569483020, 753134791, 682093446, 607356941, 109915476, 192080092, 544725460, 12758029, 909213788, 860672222, 65647442, 12546249, 195853100, 435113913, 174502684, 111794067, 125946182, 190512736, 108015012, 279747272, 309164569, 327412552, 443025090, 163118786, 165044347, 255224748, 243528645, 241172688, 436131131, 905858176, 518238979, 186246947, 190607027, 757802332, 916934039, 236135091, 172153744, 78407420, 279749218, 117833162, 107596326, 489327432, 490087265, 14324043, 406413990, 465526916, 180748660, 91789524, 433273525, 3752049, 583097345, 579345296, 26507785, 550809682, 355129654, 180934276, 140721948, 192546263, 349924799, 113359735, 330331682, 234391931, 42613988, 5995670, 179037467, 173041797, 366482220, 322650778, 49356426, 572663499, 619894178, 268200667, 381695884, 257133979, 780832802, 239353150, 327900361, 118319712, 223936744, 387486525, 511132109, 150606773, 801534944, 365833021, 96272769, 553798406, 316179912, 215769669, 630946600, 155351876, 54883751, 498345315, 710110275, 322918436, 65416376, 176549941, 573446640, 70214344, 463242861, 476964162, 322826178, 94168892, 631657485, 278358844, 429303280, 116988314, 922599008, 10250905, 221849212, 211598307, 186674222, 229110027, 274921179, 586486529, 230323930, 636212137, 649245743, 168730990, 116316561, 509395378, 389261025, 334949510, 573670578, 268153617, 78250886, 240877503, 59207549, 361106369, 536158930, 38412786, 371167247, 251810445, 507851954, 254041322, 257640674, 751079664, 6975305, 245310735, 238335430, 234739585, 11394006, 479925009, 539589216, 231632632, 371379633, 439937388, 7674342, 118872973, 118872973, 570720057, 254109011, 297121642, 705819893, 816932841, 629213541, 393971989, 181202039, 213393696, 512253536, 666886058, 38326273, 670277879, 173233290, 596337863, 629335123, 280984035, 218725005, 34626229, 467723460, 445391646, 326045604, 273885176, 232792252, 266827264, 7560508, 30634302, 23073794, 337908427, 443504752, 759427726, 13160049, 234679645, 148364176, 491344718, 64806593, 627559533, 667979455, 251226142, 122982634, 254342041, 75790389, 214818708, 13188134, 155078921, 80658527, 161527320, 185736662, 136686, 672006823, 672006823, 674971589, 432714754, 530230402, 212870351, 76042223, 399281294, 331934829, 335616494, 376250, 465200142, 465200142, 152569951, 70282669, 506450929, 69029665, 282656180, 29284069, 62902848, 63284355, 360931751, 744096594, 221434604, 48337425, 477678654, 699675770, 469067807, 256004276, 485171656, 122698334, 711486182, 82987328, 763448219, 258696181, 161083899, 324503200, 734327349, 711649986, 698455537, 621201512, 211994425, 82593399, 359060470, 50074014, 443753580, 267625477, 287868116, 196759418, 24345339, 275990355, 868626700, 309980879, 114079274, 365037197, 855065577, 614322529, 373967908, 447044197, 87177142, 483085728, 434843403, 674057260, 463613407, 338269275, 20900719, 850065294, 462458390, 305238326, 19042032, 457846698, 267035648, 122126087, 443467059, 509440567, 485224242, 122598799, 531476251, 149723125, 318956842, 199652781, 31603507, 339067621, 7742542, 293375990, 293375990, 208187065, 71273000, 835860920, 705643373, 211744703, 70617262, 130121493, 159958100, 228110385, 483239538, 504250293, 170278779, 348712084, 174719694, 499059576, 958023116, 228034319, 7277076, 406003416, 406003416, 190326658, 185252716, 584319260, 777623636, 145245953, 862199314, 474952492, 527409798, 59444038, 599061946, 223548661, 646062555, 93977966, 249010246, 409785386, 138303564, 30481988, 409879268, 40643174, 242603752, 172534250, 633861929, 37746396, 555118473, 479714880, 434655996, 116654864, 385692794, 490361136, 247856986, 69965324, 405315610, 653936251, 246271316, 653139754, 455457121, 699942847, 87060395, 171042227, 314331609, 610803213, 854334402, 630500505, 100855097, 618519440, 914011634, 520463777, 116789103, 165400323, 593129140, 670120622, 214335583, 337931413, 159456426, 32874884, 72341862, 256795601, 289745583, 523590166, 700599343, 93841205, 529599099, 475862360, 134723849, 598813054, 357851824, 151384458, 83146900, 383387295, 110299583, 667292467, 438035684, 356617386, 613735267, 16403957, 342254582, 279340235, 179336549, 153223051, 160720666, 9532312, 363437911, 353905599, 506424815, 82807820, 92835836, 789732650, 641654723, 301243671, 360240852, 44555152, 328025530, 86839221, 89456004, 273443661, 144046173, 5161031, 407806898, 407806898, 205232960, 308984171, 114887389, 382017220, 182713622, 371008905, 717177785, 34393590, 292097471, 385961335, 178342508, 640112342, 314293589, 17469576, 189636247, 484244937, 722405942, 569220744, 2569998, 208638967, 206068969, 308481550, 233587281, 352032887, 153921421, 474478276, 559682159, 351117504, 528352674, 461127881, 29906789, 371285010, 753592652, 63572940, 676958133, 723390354, 74127161, 888415649, 881850053, 459756666, 190173060, 114546776, 736907449, 521718416, 271041404, 563320489, 449332280, 524805717, 157515262, 166110579, 167363112, 51561298, 9036223, 815468541, 806432318, 27896586, 213380298, 599807768, 83095716, 750666104, 121808371, 531057908, 327509223, 54978153, 113106035, 631744616, 630701389, 540842329, 330732438, 289624967, 582220307, 33191302, 163899172, 391272398, 52586972, 307146080, 591731246, 393195334, 311094630, 66889255, 453817214, 85908896, 53016057, 283212172, 64299071, 254517032, 604942793, 827444870, 248614222, 607305873, 15328334, 625402321, 110086151, 114180782, 11543746, 155406213, 311711149, 767718958, 505537583, 303560747, 39311105, 247784649, 736914080, 211117441, 95766064, 261763922, 388756771, 161008887, 299570260, 245736407, 589440519, 165741958, 637704105, 537327459, 747799417, 68092656, 429802429, 59916371, 410029730, 739261667, 217997245, 148122158, 170164713, 631486853, 106861239, 24934398, 794637261, 855270593, 282146514, 398190923, 922055968, 492618891, 342879469, 687812775, 768630862, 450909281, 260127964, 101835185, 132030282, 61851961, 279249114, 468718139, 266464925, 448947182, 761108222, 218736387, 383190510, 499520444, 242318379, 147978958, 234414462, 629705783, 945734644, 67875202, 356545533, 293287706, 531516273, 200759313, 283384877, 153187482, 469873540, 323217645, 499444233, 220284386, 109270623, 75796707, 480179016, 308002268, 194506030, 136267194, 281284849, 450707820, 604104326, 573530404, 2306608, 115342773, 115342773, 125805683, 494595938, 137189600, 4313598, 236857613, 236857613, 107559799, 412458681, 542880726, 252145617, 620473329, 475320256, 231041473, 274842954, 859810211, 324598476, 410702222, 551091660, 414917281, 1840758, 6914407, 342285023, 5073649, 340444265, 335370616, 44743045, 3852519, 79023649, 79023649, 48513150, 353991942, 140467931, 46520119, 269721450, 68048671, 134181848, 620984823, 398085650, 159707188, 28969483, 449627792, 393464907, 293432236, 380616498, 180922932, 216123474, 580670998, 621678245, 480077768, 145972186, 249710009, 252753317, 85288307, 193813022, 689836810, 567308639, 512621018, 110537931, 632939885, 338710832, 340202586, 1629144, 206645780, 206645780, 46410091, 145070182, 66025958, 300778651, 361918774, 595118692, 449336271, 264290178, 184530833, 188900535, 317340524, 65371357, 37504715, 102071774, 162996739, 91824324, 609955422, 68473151, 111019222, 439733814, 381264682, 350506495, 232258342, 493762726, 569625855, 475746495, 233573077, 504824220, 50100272, 405774989, 866658931, 463890034, 287872416, 689183473, 85015079, 47013080, 78952634, 686004881, 141282951, 696792980, 684268644, 782965837, 527936995, 323256964, 58846662, 149188737, 354850436, 232839255, 74472537, 320245619, 257777934, 428078545, 215788465, 499854165, 21306759, 608618268, 306356565, 280894308, 274615558, 712231972, 177823210, 609749404, 58279599, 193888691, 124465262, 206560793, 625502987, 659248292, 736567091, 778065470, 210341111, 67475729, 750361173, 828775996, 50535723, 83313364, 31404494, 36490619, 138279428, 721802428, 34861800, 264389650, 518135362, 672171971, 443837588, 164834575, 75913870, 138422683, 375822884, 131208864, 306768472, 191584382, 325906703, 182904326, 308452628, 266561227, 351265503, 132371688, 66281100, 478644644, 302196165, 100725848, 330847304, 746651231, 42991032, 418996767, 275945745, 312082841, 246887669, 28576476, 91096721, 112481947, 351002776, 367527298, 810589415, 861123187, 610758178, 114453726, 174981517, 866553391, 55980884, 586499853, 181482157, 216106010, 547825741, 652427948, 147561040, 22210509, 226289807, 165528609, 4024375, 260080468, 256056093, 257658747, 686176626, 107615268, 208106620, 324050010, 57982347, 373728947, 129729828, 184512987, 413093073, 266970656, 492456089, 133706862, 535821278, 136201256, 27573498, 98464362, 658719358, 619540048, 449098557, 24709918, 491131777, 842941187, 828379561, 95362155, 90476410, 836399319, 549684707, 354772089, 310427168, 447831130, 152769158, 893408648, 699515483, 646789345, 544415315, 548578674, 505292235, 507865583, 899729721, 380714640, 282389733, 640223177, 10917327, 193717396, 182800069, 431321861, 70748760, 413665711, 727304939, 778029110, 629757046, 50559111, 151761159, 81657243, 413931798, 381398791, 448884885, 227800060, 176527292, 55051492, 797157138, 609732604, 342891401, 71938446, 153812447, 650563684, 219548264, 118100306, 12867344, 50655268, 322274858, 209643096, 41297533, 55812885, 316096073, 220980799, 108269883, 112383814, 578918129, 229036051, 801531684, 163560347, 147010240, 200369275, 104726612, 309647233, 136042391, 203042412, 280683619, 73479827, 11137464, 378878458, 378878458, 90994307, 325496321, 386022596, 547785598, 108271856, 252468735, 37775575, 321399175, 232709791, 120511875, 70602550, 530542468, 112378290, 244736535, 135695618, 738389766, 676097637, 179591065, 534035088, 442855305, 16868829, 865841981, 596201883, 333243296, 908382173, 524372948, 204192225, 719358620, 83266049, 733053583, 103491765, 574430435, 71853500, 262890188, 311734639, 212401197, 328099150, 184904259, 571280806, 816374196, 498735030, 218049015, 207504625, 42049766, 602752088, 134848668, 44180327, 94310600, 286805415, 426806029, 328318365, 56290844, 41516194, 489396847, 311387681, 610402445, 673706495, 14080652, 438870581, 298515085, 267376054, 256536560, 764028586, 130604965, 18282962, 515637799, 409421757, 257978977, 55511343, 123556517, 693592670, 168854945, 114023163, 122517554, 589189085, 40015045, 108814348, 199155323, 729706797, 250224552, 236990505, 150101248, 492672093, 260542790, 505010898, 229948120, 414247488, 504712019, 42395770, 410128448, 815184191, 22206805, 781599713, 57959139, 809061463, 61198628, 818951883, 704106271, 222416663, 297614934, 759843521, 922395421, 104682517, 75154219, 356457493, 390538338, 893613486, 33750093, 151947243, 392870167, 27679545, 138091834, 620116814, 804981703, 738325060, 76306065, 307082260, 145294303, 607271671, 52640858, 202977745, 768909613, 491613132, 154397426, 160852360, 43101909, 242459002, 170894931, 448332336, 389468274, 224310364, 88882203, 311292153, 191617312, 716559596, 118648498, 262325033, 24825205, 101176505, 646346909, 878326815, 61755472, 537735129, 143216048, 247464489, 229930136, 18544610, 18581831, 379405999, 64979113, 874435450, 407636091, 461983949, 64125309, 411495577, 122903417, 290768586, 391962395, 677347730, 440479048, 256169499, 590937871, 740143498, 168304540, 106493248, 487239082, 426328572, 357863444, 104980587, 196002919, 321058414, 199963954, 293138395, 31111443, 102311065, 332441796, 29048733, 846559260, 23339660, 691604165, 37226486, 446443843, 386235896, 236944355, 63745465, 442636662, 62853458, 797611489, 593224645, 127008963, 14204526, 357489552, 349380449, 299694493, 378035300, 109483659, 364671901, 858847552, 596999656, 35880567, 11398487, 238538982, 360612885, 54730450, 325750294, 131872597, 830754425, 263319296, 88508605, 472584444, 50082674, 970273996, 951096749, 135742494, 774852034, 680876701, 94831834, 200729133, 267523563, 529071095, 196931535, 54648097, 119824807, 244547781, 188986200, 543380400, 344799455, 68514699, 443555160, 765664688, 191201227, 137646851, 334622168, 55284265, 277817204, 187876516, 140615685, 303159689, 642694833, 583481506, 18882161, 565853878, 495478299, 450042622, 695531076, 244698313, 156636893, 550717420, 493418372, 369699245, 709443994, 453964092, 391710568, 869803907, 7234078, 59882141, 59882141, 347654346, 362960837, 525991024, 458821314, 269450917, 228237751, 639084281, 311293822, 268062487, 84220992, 725992804, 228990386, 910208841, 888383959, 16580944, 4738713, 282780192, 282780192, 319792127, 914584703, 201132584, 99813296, 37880379, 335070812, 872020169, 150305710, 89376729, 21336698, 284471324, 270407215, 69195466, 163302646, 512566771, 700061979, 186770712, 87035068, 403543983, 233684193, 437321858, 550956806, 287229589, 552028258, 171512995, 263714830, 23454205, 363240031, 20978483, 391196746, 465560512, 734929254, 70236601, 691066426, 89563592, 712673632, 309297769, 199090311, 238589119, 507614245, 328257692, 134799901, 315137448, 27499940, 146909581, 611940505, 87065343, 3744738, 64149903, 60405165, 12405407, 413363299, 253954308, 369124447, 446166748, 56711792, 717770279, 11365495, 818877448, 647132588, 54428528, 370402091, 399952472, 864924898, 279140617, 229712567, 22211410, 2649467, 93013754, 90364287, 395554341, 86220166, 484757636, 494695945, 320180214, 167312620, 105437711, 50068700, 161661444, 114932068, 689143032, 384685162, 27063302, 264701706, 883168178, 677028300, 113633354, 43140411, 309130680, 518762554, 644768521, 168793891, 610381668, 59432920, 69980535, 5240499, 61352961, 61352961, 386781152, 588750801, 748127796, 673856428, 140830550, 174767189, 121201048, 287697415, 210422289, 234908291, 286087969, 133670937, 54392320, 652947570, 41538499, 142494682, 240977186, 297803712, 616768877, 362783342, 78230990, 352340364, 779313906, 605933340, 287428138, 148185962, 244420487, 547897348, 385367278, 358180211, 489600444, 178304028, 172219316, 389361645, 382823641, 419926456, 824250235, 910936270, 540386720, 160577019, 586914701, 827034480, 903469054, 219215900, 671722236, 816202308, 657930418, 218992305, 512720071, 854127411, 652450978, 134703333, 22352138, 34769182, 336653094, 260212008, 712988337, 604847209, 514967609, 372256717, 59417013, 54245467, 477911187, 819236833, 99623474, 181378004, 1552778, 866584182, 866584182, 630142737, 179878362, 18326441, 164024676, 335206345, 905498012, 26538447, 153760459, 195733532, 732482074, 125335625, 257083089, 849559730, 265356447, 628369779, 88466934, 781783456, 531260402, 418704122, 585966610, 61621160, 268221608, 916887306, 332701693, 462212062, 240935860, 304712652, 876397643, 131262562, 822075778, 793004394, 403924095, 59129487, 245956814, 661562385, 736161494, 366565324, 58897389, 161845281, 517162046, 573160196, 556343695, 507608185, 365030722, 666020989, 20866560, 355005301, 173285406, 217478402, 323943124, 177289678, 250547982, 553083239, 165371965, 393826566, 337835139, 169249628, 320248465, 120705712, 28560682, 319109991, 191491689, 55424166, 166698593, 12162285, 404357307, 341980007, 569185942, 400941187, 496432848, 318772411, 89905242, 303496628, 103888491, 476144743, 406745709, 334748037, 74041473, 532716018, 269850540, 536953734, 3823298, 321174493, 321174493, 264031142, 464512245, 113987199, 96140741, 261166978, 270136238, 27792640, 803775300, 426789754, 52987041, 152609800, 466054364, 421291368, 182680482, 721658394, 24634082, 383207438, 177588391, 402807125, 615797323, 647378725, 208377962, 754657533, 488556426, 531251267, 63266221, 17807259, 331990872, 20578474, 193046270, 59652324, 427449610, 442987071, 32168259, 131317169, 10810147, 458136315, 458136315, 847750128, 421585452, 510408686, 59919128, 279044901, 301139297, 579227958, 14420413, 191461589, 451526059, 207162245, 24169635, 613864242, 627488124, 162166217, 790114993, 294029569, 208541576, 122269724, 763702591, 29278581, 53595290, 832525628, 108694086, 87892796, 114619174, 66096683, 184930253, 731148582, 904442480, 501672500, 181105227, 372165412, 739898490, 246791363, 259186413, 355851473, 159052662, 597190779, 744862069, 804233962, 388152797, 76010910, 277496943, 144720290, 402971708, 910648597, 8777248, 461382088, 452604840, 468852368, 359838452, 76368285, 250859628, 83154966, 146116957, 185141242, 501356417, 197340037, 288593281, 67385924, 123116653, 37954622, 15311157, 735406905, 276924553, 289977842, 773076648, 151255304, 248915606, 561099565, 691363270, 260130655, 820092783, 75413893, 578726701, 327529531, 682201328, 169739161, 147977741, 902122590, 71229566, 214585116, 60608300, 126916811, 391708789, 238980428, 105618734, 497551973, 499566680, 355600932, 230031967, 460317990, 258364466, 110619786, 232631387, 860122987, 142717141, 472783932, 123239122, 399386387, 10258879, 841068829, 841068829, 199690963, 72449254, 178247136, 607841028, 137117095, 245049268, 788531290, 514437888, 48160953, 107676205, 190688686, 46302671, 269526793, 454021368, 224364194, 328060044, 670297141, 109418801, 478408033, 586422658, 478776040, 49526802, 424097651, 113534825, 322927080, 429598911, 345365983, 217072653, 621721501, 651809374, 41922942, 679209882, 381184662, 442248427, 135556290, 65271505, 25353411, 124778374, 458242600, 543762106, 369095615, 506780683, 948011164, 65126805, 135223898, 146194683, 57171399, 40776991, 25443477, 17386476, 240986538, 85152111, 431685564, 302688984, 59899393, 90915568, 607626273, 249185494, 446427545, 715923800, 76664750, 517231123, 522071277, 942543354, 670862100, 529426929, 129034763, 27345741, 118122517, 310326085, 3680469, 132249242, 132249242, 535557279, 780046065, 164748098, 339449949, 298218437, 190291760, 200039119, 340674987, 712132895, 6591433, 280072681, 280072681, 889934691, 70390757, 349580068, 137427349, 265188210, 509259958, 568172180, 502479217, 382150900, 389508517, 295883436, 442747247, 736508481, 403563281, 529217931, 477673578, 109378897, 204411535, 342875390, 79659094, 511892084, 217225102, 42761720, 63292371, 353878690, 371321365, 30597685, 442174169, 176142498, 34458303, 490370990, 335820266, 398153588, 371677349, 96970334, 274962128, 79523708, 94038556, 277761743, 340377992, 623803729, 244752862, 323364330, 172728861, 91623362, 304052551, 65371237, 185262163, 153708008, 348368788, 373313200, 125145085, 105470246, 285769085, 641558464, 845129741, 423961138, 127058276, 158111543, 396025652, 427293859, 779147109, 63989674, 222360353, 239916790, 197162523, 31898428, 136370203, 511056744, 339344063, 100955800, 14880663, 96736790, 364542351, 765514017, 309777352, 344710539, 308123815, 378463080, 42237468, 84810972, 28167163, 57066811, 271092232, 418894280, 59168135, 432669221, 284607572, 72490243, 324931714, 558571130, 107704640, 276159763, 57682624, 121058604, 426811732, 512305163, 385291698, 59665027, 351006130, 80267327, 330644590, 343637128, 327508567, 508653962, 1166289, 598756125, 598756125, 160975735, 231275006, 252294962, 317580232, 332667385, 504077107, 344291097, 61175879, 7397586, 459711390, 452313804, 22275411, 244214532, 294363965, 376122985, 196596070, 284644746, 400946468, 17604740, 614133074, 172548386, 293419554, 547115734, 363436110, 72749381, 315111975, 128139827, 239786695, 38040953, 437793191, 38071690, 189050999, 124817946, 747462187, 62991013, 697565914, 34717811, 362596182, 136761337, 44943128, 130255926, 149958664, 221711953, 346652923, 615571896, 343099850, 596469395, 301071899, 98192308, 562467940, 774452635, 474781145, 96884459, 155950582, 34866795, 46335773, 588818187, 670209412, 256454177, 159982063, 167983197, 443320865, 500850010, 468543717, 171027218, 206328146, 526151969, 482518853, 36719124, 413520289, 125034795, 113592550, 835486966, 446115694, 211721383, 256049358, 505170900, 425981477, 163442629, 90659287, 115785868, 73050858, 347677103, 193014920, 476067778, 475813488, 767698745, 180099530, 857051092, 380791355, 148263917, 143096676, 465678453, 288089704, 49736972, 126618209, 305852691, 580052820, 456188109, 582439275, 476819831, 564125194, 648679638, 271830889, 87597552, 86772035, 27897013, 112700681, 213651558, 172466158, 200180365, 426533780, 947835992, 108171075, 95064989, 6510107, 594731539, 588221432, 604706434, 81423076, 512112776, 630784603, 716330749, 360454889, 602402976, 427267364, 122167843, 317863571, 847053591, 4870396, 114968466, 114968466, 80307362, 359048561, 445069961, 9115707, 586453978, 586453978, 81131027, 23892406, 468637793, 144327587, 248155749, 228708450, 36246313, 586344701, 763562277, 39109086, 234740177, 201807806, 100153505, 102312526, 411971864, 520041437, 906250581, 422207209, 260904297, 93461167, 107761102, 955745, 598245805, 597290060, 315775119, 318643740, 21611956, 671992600, 411929441, 264569645, 221234672, 352323628, 785301334, 803006206, 137615959, 421676077, 213857892, 570695619, 169035539, 173691776, 21227180, 18476841, 104372628, 140000118, 204065779, 319750765, 722430997, 358730217, 135308372, 17155869, 73057938, 39313863, 296280057, 324619168, 504280693, 519007374, 548705752, 278602738, 96376745, 377703812, 560453681, 648352598, 154564167, 118259194, 216658466, 377671408, 33365716, 410656341, 394029076, 647648503, 53685945, 665696291, 384327142, 374231322, 303479163, 446951149, 102215913, 246540191, 251430360, 553119970, 335368622, 291817245, 729213374, 276750850, 260379260, 677164744, 388320604, 256582388, 170784480, 254900293, 562232550, 374523591, 281770920, 90523320, 344796990, 664948917, 182029637, 78651706, 574390851, 873487520, 342859075, 300681247, 104342088, 633428965, 20966122, 501550279, 776710345, 217466554, 455987377, 265410909, 40035809, 51900020, 464773218, 273244052, 415803004, 279882975, 62062380, 26129721, 332992604, 456506456, 688104041, 171835963, 100350737, 274854947, 839158806, 462122199, 160705127, 74326091, 530740225, 669464972, 572313966, 427549872, 506015196, 345367763, 361537524, 474953175, 537738203, 47377803, 703761205, 153180786, 560129050, 182437215, 225207855, 235905873, 296065659, 390500351, 146990541, 156719343, 806715075, 62977326, 174140784, 332786834, 249453129, 159907417, 326074133, 8410921, 360553177, 352142256, 620490404, 227617131, 205790567, 371958065, 433243050, 697619254, 511004853, 195844152, 26611589, 499898725, 62416088, 530198976, 266975237, 720236919, 465245636, 237345941, 982614, 228088317, 228088317, 3284319, 236070265, 236070265, 31314426, 226886049, 358516432, 313584038, 185085923, 468757782, 620602909, 96205409, 307149462, 729906888, 252505281, 475065619, 13975669, 834232904, 307390329, 159181280, 36974638, 90858869, 255370267, 700745855, 606807068, 477065998, 629599081, 119524084, 568887264, 42776755, 704960351, 274297156, 473514543, 771586349, 174512441, 265720748, 394986128, 117069294, 521713493, 298019826, 179809501, 509883209, 258564377, 258869768, 513173744, 796045524, 491341237, 314972788, 188630505, 178863856, 91303744, 273193464, 190921275, 417138386, 200704388, 309095156, 275023718, 113228282, 93615626, 707973049, 157177986, 90170684, 506356195, 93864249, 267430332, 385446890, 57041448, 282191181, 359340158, 118967404, 52371654, 568480639, 568491767, 409544814, 113607764, 175763146, 394521524, 26557574, 288679421, 24682959, 262499959, 364321599, 490928131, 628330474, 140512175, 759819988, 674715309, 336110773, 255951967, 599240346, 75253030, 162279394, 556453294, 487509446, 687969844, 653433577, 12607999, 12084391, 552924675, 238078856, 417986657, 646213863, 86988826, 42241901, 695224429, 699407382, 412543807, 263058803, 527186435, 387821157, 871319605, 457668850, 338006740, 335845301, 341336564, 439839149, 494840501, 664473280, 608227690, 302714374, 367812247, 512899876, 252661241, 94008795, 147392419, 173781896, 354839297, 34352647, 542568239, 811992286, 470580029, 439231617, 364130796, 433950290, 498109932, 381402975, 253781391, 483969236, 80126050, 84809413, 82286690, 38978640, 192523559, 178422636, 193280381, 155025930, 649208874, 624119340, 318693520, 519340707, 298361683, 335123541, 671121458, 877530358, 336619266, 474434518, 336914784, 35737102, 45706750, 290709645, 443881187, 111925930, 200048648, 431141511, 385956358, 558212011, 518346084, 3845152, 139910810, 136065658, 482744669, 16321452, 185023600, 412494227, 433621238, 574402143, 217831640, 47747199, 569251929, 613450788, 747418538, 463699560, 105020533, 96215221, 425616033, 311878805, 359465459, 793343713, 896304202, 599960723, 185935206, 404854065, 445716327, 458057390, 189522122, 661808895, 744495089, 748314273, 25582091, 707482356, 162348627, 71574317, 43554732, 2949318, 74472373, 71523055, 858935062, 329675562, 116403575, 107928302, 63883959, 202089065, 664255123, 647662282, 335295319, 212295255, 411319726, 166907597, 163142336, 39785867, 392026792, 868659561, 502866207, 327849229, 228394647, 175801349, 260118803, 259054040, 295763464, 481471085, 326784068, 801183522, 638041460, 142068116, 152898227, 406578713, 10304608, 35109642, 24805034, 312981337, 694827882, 812155567, 617591607, 623666516, 868188112, 472338985, 381930380, 447579133, 390133440, 481076069, 543893177, 506146187, 81717184, 537970372, 796900888, 794572969, 533078954, 191643609, 4088928, 241729021, 241729021, 258630414, 396042545, 44491190, 227408220, 371255369, 274391226, 25421037, 258754807, 328577303, 282054628, 259369585, 336687375, 16528595, 56899607, 460129462, 939992032, 1157278, 458377508, 457220230, 266011163, 551362244, 109806464, 437941589, 499452017, 387735299, 87750595, 86852271, 109600670, 228647133, 75080238, 39957298, 573086090, 546608058, 448186043, 245583714, 326296291, 187270994, 189495985, 886907055, 734747561, 526748345, 365935316, 66917939, 52850488, 95717180, 716972267, 906410007, 651112096, 306797153, 182214026, 262315084, 281933180, 54492303, 596425318, 340181340, 553549382, 2585465, 178293851, 175708386, 223500730, 266679178, 158573721, 10625418, 350101511, 339476093, 282357439, 300729098, 634470349, 285364369, 346641729, 806889692, 459046169, 505556166, 575766429, 246163665, 294384279, 99939813, 393167913, 106910091, 146858521, 141488023, 672523236, 650343200, 761017667, 362626780, 176694772, 307508478, 732004573, 122427166, 249466598, 293900142, 69956705, 56509550, 290425336, 474397102, 58863241, 168281865, 311612948, 398713794, 55380087, 448226908, 799930047, 413840266, 332644436, 786350627, 308593100, 225420717, 491004478, 470134104, 459708613, 439616465, 218698416, 348076320, 345535979, 433257830, 787472322, 27881292, 600162723, 271537330, 496478852, 341159636, 21808337, 679973646, 27943734, 676185721, 86400169, 225831429, 231539867, 24182689, 470518993, 591335900, 108438330, 256317954, 408155912, 357203646, 494168835, 100408200, 386363886, 756857367, 812013087, 640728379, 73899528, 255363892, 166477272, 143163553, 563864440, 851895083, 449256123, 269622170, 160053416, 626009820, 571901473, 348704275, 331840810, 655836640, 694686031, 30245790, 699093816, 168673752, 313888490, 616519646, 839139281, 818351470, 595628845, 198033986, 294597806, 399746620, 587621768, 797700996, 138117162, 243300532, 130661371, 503687918, 359534394, 382929858, 412837921, 226740461, 526151540, 541813806, 227448718, 168639475, 102031787, 493631116, 328691148, 326433282, 813983794, 490363019, 323865762, 361111606, 38283667, 107420369, 94328506, 36746527, 180566459, 75193149, 7786193, 144565482, 144565482, 678016010, 692594739, 407540502, 518159892, 44055505, 777497579, 181012238, 2497421, 141507401, 141507401, 99603330, 122666439, 754486165, 789040537, 96991400, 828206003, 274413168, 7975239, 468020893, 468020893, 130587006, 515054219, 53820215, 128549255, 309908379, 19675863, 16722113, 46406326, 74546087, 242131585, 437178085, 364404978, 432047568, 120571725, 412937339, 123195365, 558835397, 338145401, 125579423, 335825842, 87117159, 390882545, 54820942, 802339689, 138051852, 733455373, 48810682, 547206965, 142557763, 306456221, 135668045, 705748892, 763488879, 644467312, 389043316, 81307465, 226389214, 212271671, 547631866, 124813771, 310077435, 417057985, 711613079, 368622092, 401832640, 131002436, 19043372, 607698396, 166275127, 406616308, 306930910, 352418757, 690252803, 61195917, 61023809, 137799235, 551101558, 402788752, 50165278, 190484015, 381802378, 828106779, 535822630, 303544642, 553053091, 718558194, 730084600, 134678829, 527170541, 87625612, 457150953, 458710734, 763956571, 167300292, 1983060, 412885792, 410902732, 161938083, 86971453, 295242995, 543840352, 238935912, 335482590, 145822804, 503531156, 62918, 190193862, 190130944, 90537323, 226004526, 471489453, 26845321, 450541355, 141335705, 244079040, 177531074, 157547210, 418173087, 92607532, 776788599, 288638618, 392504555, 604107826, 607769056, 576114348, 403126473, 301887502, 204309885, 253023844, 210342765, 432160686, 498905075, 249031055, 220026394, 55440301, 569225674, 17896965, 178528361, 258738078, 524479236, 844178260, 726737654, 630591690, 559270107, 296057325, 649875161, 6472696, 619375119, 619375119, 256238073, 270506320, 495161152, 528019876, 956525641, 768323263, 478754433, 130564659, 361925655, 394144718, 781052844, 166552431, 90831136, 142701066, 210553650, 7624791, 29849575, 29849575, 287720496, 245521668, 565537298, 528645897, 58904191, 8179775, 699300547, 699300547, 286856921, 1753683, 66881637, 66881637, 558028806, 474814354, 299324659, 212724282, 360033261, 240049133, 522447496, 250259482, 453866039, 426437918, 65434106, 4293739, 73302811, 69009072, 461751409, 518492537, 607449632, 640686870, 172823371, 46135139, 157068253, 440917224, 978083783, 763358075, 102031065, 689586118, 339993377, 315116463, 30176451, 55859337, 302725301, 174035213, 647728505, 761361562, 85944458, 191557488, 224817077, 589014008, 558038939, 111395261, 422661908, 194948443, 62795037, 252408037, 839899169, 296140649, 275505629, 161839631, 505819090, 695300058, 594765947, 776479485, 14429336, 280550355, 169774958, 363789066, 82354511, 283338879, 44405587, 96906248, 79656283, 203053114, 15975190, 661786208, 111765631, 43276433, 34043042, 171577657, 713968862, 174199883, 283379599, 103127629, 379139100, 415094415, 487349107, 293161577, 432696457, 358861570, 51077196, 5750854, 412445880, 412445880, 245456647, 399674682, 417798155, 246462842, 146690947, 525356389, 14870579, 62805780, 188909652, 316614861, 182055995, 128156868, 203333891, 88446524, 297961744, 493465989, 740922327, 132345545, 113453193, 705204281, 143488166, 71835712, 521485134, 73339859, 159163946, 26959545, 183597323, 552384714, 245880618, 69256508, 298585052, 46630524, 129750687, 95456562, 295349623, 547888718, 562618984, 80779874, 709318536, 622195025, 732413220, 302251839, 411525149, 183002631, 120784041, 1160034, 290067842, 288907808, 124147355, 28811248, 364072259, 149592921, 43502564, 193697144, 177751433, 299836828, 325571754, 339874222, 300257705, 679325454, 825332374, 443268228, 488619506, 520793438, 302502142, 429283480, 506328206, 109094421, 215943017, 376965479, 626335374, 87056448, 209128491, 389671232, 385743545, 234308387, 46887934, 53114351, 201463358, 426494625, 722545674, 620125513, 86384599, 702378647, 333819795, 349297525, 768063143, 40157244, 683592957, 50222266, 390174017, 145711104, 289432698, 240171990, 329200041, 60745121, 474307356, 422752138, 542271503, 5634608, 113152394, 107517786, 550555075, 623372695, 16368904, 679413604, 129136976, 641591725, 524614200, 429966015, 250865033, 340042444, 648140134, 164382057, 29659570, 16333411, 465087425, 67673500, 212370428, 122228428, 699005280, 601768653, 352614354, 201368967, 55038560, 285961592, 280580633, 402367068, 792488164, 36477907, 675171924, 56488259, 157516338, 468084306, 59295262, 309767941, 4663924, 218680790, 214016866, 482141269, 355966226, 215858721, 397903352, 516494500, 233358708, 338485135, 102501227, 77535566, 408775994, 111097213, 221821438, 338551122, 151836199, 276652138, 119800743, 710046420, 92372220, 774185480, 476821301, 416191246, 408432234, 262240401, 242444698, 402605018, 593548732, 213093801, 117579149, 110861617, 107715878, 254152996, 208465661, 197819880, 138713288, 19873615, 184888550, 421850828, 57330213, 489750602, 24360370, 191102758, 297810924, 12077944, 379602330, 508693741, 37396410, 403792890, 30391726, 379623932, 219803935, 224079840, 214504570, 18374887, 90703199, 206513452, 18324169, 381187827, 313019158, 155972644, 26903480, 75809092, 55750320, 357343011, 501482569, 343909384, 808711992, 666933008, 182863295, 362212089, 106558424, 654937746, 24566596, 725847674, 964495435, 804220783, 350847353, 43947260, 442070331, 111595517, 171087796, 474244398, 161994215, 4649052, 97780965, 93131913, 303463179, 214273225, 591224467, 56040949, 121186159, 7053268, 110618355, 110618355, 182656082, 439101723, 221527995, 140667334, 503125888, 81616093, 568305935, 203619858, 167111345, 176487502, 731034506, 864601193, 115929200, 42884926, 93203230, 645135904, 205112854, 223788384, 391222391, 390008628, 468462890, 642088560, 121163233, 315139309, 346680507, 161734232, 289281538, 788018105, 518068092, 185023349, 803688173, 1629967, 778230796, 778230796, 83364960, 889425437, 417393858, 159556450, 371250394, 421408377, 222038453, 467166645, 365797196, 487666202, 378077897, 3629175, 149192251, 149192251, 309745739, 18180478, 340558697, 405474509, 27902816, 449527358, 285920620, 111045038, 53057165, 22085534, 610524608, 646288079, 53501930, 66254133, 226799914, 167357405, 378833427, 470209965, 71132727, 280554158, 652735330, 79760174, 72164350, 397694472, 106634946, 263474025, 232229320, 211060325, 532478156, 536636956, 415981053, 162755887, 695188354, 858507944, 41812394, 24685174, 589633756, 193494252, 222322466, 481256477, 595012964, 370070548, 55935374, 311278915, 154778171, 130334296, 127270807, 780584900, 920666886, 59587908, 191212143, 113623983, 403629927, 239991779, 216117736, 183806713, 435960218, 88481340, 176738756, 147108671, 312749192, 475787111, 14963336, 192717326, 448706310, 325321461, 676858606, 205375042, 113089354, 255235567, 68215089, 698172281, 82433510, 101178633, 581244384, 416194194, 42493633, 520354864, 434814146, 318486764, 57492631, 111238028, 656652122, 265727221, 300580198, 724496036, 445511623, 200055102, 534847301, 613905515, 820310602, 24425012, 192730779, 287963418, 259493092, 211632132, 197708534, 165586819, 754713965, 481787465, 159477173, 87408587, 478944557, 802129308, 778476954, 358719336, 441423431, 538529716, 108183367, 315759432, 355991646, 322253402, 239695665, 312756235, 670450162, 521578782, 184637113, 366486778, 466965844, 31617202, 543281572, 866730430, 591919062, 217414264, 114278624, 134646936, 28883465, 107337549, 549978955, 66241176, 382507647, 205782671, 386494075, 487127177, 1194732, 700615038, 699420306, 730283567, 43599229, 30868110, 716020297, 849440291, 542772173, 378317194, 604446878, 9109833, 96622629, 87512796, 455506394, 268874234, 846579196, 38349496, 809341093, 62356655, 85694708, 198940385, 337184046, 206988714, 214427151, 438123635, 414843718, 179627989, 320189473, 421757717, 516382660, 484263274, 677371629, 669583409, 432340818, 247049231, 35636949, 388108928, 775248262, 695123748, 156448909, 113594957, 441454357, 216736512, 622271223, 680401696, 622463358, 834198059, 346100525, 235187910, 183700853, 368352483, 87190207, 193905956, 228711990, 137452033, 313777729, 161397417, 109089157, 79983401, 439016354, 316726669, 54898853, 270772468, 130655407, 732741169, 479014761, 223030021, 542592052, 248973945, 316515844, 762143835, 757892028, 272735587, 149193316, 277180333, 282267651, 252475832, 795178268, 320596428, 224922853, 118131486, 339209324, 270282527, 444446781, 83010448, 348179456, 147513022, 320156314, 691019457, 376741031, 305110867, 660665169, 454010834, 97337093, 69438762, 407162958, 27763032, 285817499, 247726739, 100391090, 617780711, 948543877, 983420862, 582030102, 361524473, 562916294, 125908951, 32509782, 85632628, 159077304, 769645279, 353706005, 389263158, 155908585, 293549229, 686610724, 137119241, 126717508, 433143404, 44429514, 225974674, 76981090, 351286736, 214148119, 361787038, 677381578, 112340100, 838917430, 861682240, 218068060, 275938705, 218445466, 702006728, 256517317, 238201996, 342905465, 235548975, 206271852, 18284819, 66304676, 515172021, 792606733, 4965580, 4965580, 415375829, 2157012, 415375829, 413218817, 222481733, 586736476, 292299527, 47031609, 502026088, 157867219, 622760823, 160237746, 539558158, 232096913, 423508162, 456779275, 138590669, 14897601, 115927894, 748604100, 106944720, 423397843, 527961155, 17282932, 653833460, 421621993, 191028226, 584172616, 30481985, 686290118, 526434075, 57343120, 92104668, 57524966, 34939113, 149427423, 346745676, 211660574, 170995173, 16994978, 54842981, 88773384, 188815463, 79762790, 523941511, 310140424, 246135098, 171082305, 593597995, 682665708, 796838365, 371769421, 477255144, 597392661, 147156715, 322328530, 123123532, 64058201, 229581303, 306851287, 125435490, 203566750, 681822459, 33734127, 85011939, 185228123, 92624283, 55693824, 291854486, 420288170, 531457508, 461105479, 407049916, 45828046, 328307897, 136896324, 353713093, 502463950, 71073430, 51645844, 56932204, 317398778, 25778800, 377699029, 128004887, 132113314, 41439074, 232665817, 292158102, 442452536, 424676920, 896165803, 864128182, 105733043, 625299620, 682759262, 100301995, 650137935, 106743170, 71296721, 450698224, 193288777, 356574435, 255057948, 77924811, 160406790, 9685446, 138522465, 138522465, 358091021, 619480306, 79153066, 161158127, 104175087, 370392964, 357341266, 444437398, 516060539, 467405184, 425250822, 340272979, 266980689, 133878318, 539469986, 208803291, 308078297, 371825944, 334898139, 38510264, 70215955, 236693236, 628962865, 27226, 550345454, 550318228, 537903008, 437699138, 14236290, 420196394, 17302394, 452505388, 267738526, 548859579, 32912650, 345423661, 33335651, 178745255, 170264527, 290476023, 401575880, 145837273, 188881654, 159510160, 182629171, 504155391, 111598913, 150867245, 125153737, 231577763, 424900251, 285558405, 87821624, 302739232, 455499753, 107310985, 450231381, 668360775, 131823699, 336919621, 26007056, 260737191, 102625669, 462988497, 193974846, 548144485, 88439127, 152472664, 577949820, 535479417, 22018517, 800547687, 346958449, 177219547, 231696635, 329626393, 564062261, 404192972, 255706747, 167622572, 265821592, 323389036, 84274833, 706303470, 483372941, 7214667, 680997079, 680997079, 823961779, 532458025, 325597129, 625550560, 250306730, 104426455, 545195204, 740475660, 463364239, 49740387, 597219643, 200672646, 505029926, 213568964, 503024551, 47808494, 475173629, 237501980, 554042311, 141393653, 580699377, 3947642, 899272840, 899272840, 174924608, 81996532, 115668484, 524748130, 58881034, 15996929, 203777588, 575842625, 616397328, 533629425, 360944472, 82170002, 295065829, 726870252, 133442841, 842456971, 340481842, 493975275, 9816787, 701123823, 691307036, 456519562, 258610821, 360485895, 67266047, 96187967, 771026243, 446255271, 45716112, 162034563, 168017050, 621898424, 803215368, 73670569, 1673815, 4275542, 211600292, 4275542, 211600292, 211600292, 282271979, 942934537, 824749242, 411904918, 267011716, 147022278, 8172852, 195249347, 195249347, 107445811, 658529871, 482459051, 231382934, 41000417, 305670565, 479753778, 245880297, 385367001, 317752561, 460940826, 95779084, 422104831, 368984981, 20760784, 32373239, 575335547, 41388290, 56781482, 135771704, 531192514, 492764242, 237597664, 576622843, 153616249, 123325674, 230789995, 30207046, 88586906, 134209101, 476383296, 471815586, 607586594, 379094679, 262673239, 579274443, 606598842, 430841879, 528427109, 294606198, 71848824, 263037716, 624317608, 237955389, 141768107, 393836608, 548504767, 691861606, 639131648, 712084499, 710694396, 74666530, 329022851, 301285787, 36100037, 101328351, 135573299, 163835223, 396679303, 129641690, 147660240, 36406657, 310611243, 367519739, 256688731, 50610762, 185032956, 200185512, 7792913, 232804998, 232804998, 638328150, 488686029, 61461178, 89867378, 412415495, 130578810, 931630125, 750197553, 31237570, 492540899, 222443234, 90862908, 106505353, 704432830, 766150541, 827361531, 813335627, 7083914, 35745980, 28662066, 202611274, 310149948, 899311353, 40979600, 134641185, 163575615, 114668471, 359323587, 658722033, 338491776, 500083112, 49174845, 828553232, 871149715, 732254603, 173653641, 300295177, 31626022, 300655539, 281388588, 718481325, 432365716, 73883352, 153611116, 304264668, 478397813, 286542343, 173621125, 310079659, 472499813, 13889206, 26292569, 449167542, 725974744, 563953024, 149165361, 288035240, 396835177, 99089154, 366560368, 167943892, 129656045, 648650102, 84474790, 90132080, 345060405, 255731139, 214992887, 356518055, 148408974, 80800755, 378483512, 760785430, 520811316, 502917090, 335809952, 391928131, 587069044, 119846495, 688453113, 267491405, 420654980, 158799274, 141500951, 4692418, 243637740, 243637740, 105901879, 24579868, 445488584, 389596447, 105285355, 290013476, 106532573, 282972316, 694315968, 70385886, 9841733, 246910811, 246910811, 247694078, 783018744, 162810540, 454597807, 580154716, 18223000, 870467491, 674040811, 511238940, 479861812, 6138817, 426187385, 426187385, 267933799, 281655410, 421407548, 261674773, 906480394, 225978396, 83277997, 199606718, 106208757, 84010755, 362676433, 27655822, 173851394, 113847260, 88676324, 12672572, 172948654, 286770764, 749135529, 323213522, 1224934, 107849586, 107849586, 509159560, 587488636, 76760304, 133097730, 561507777, 549715638, 630497301, 41812243, 802302580, 362196958, 374565383, 378996338, 524578358, 15781465, 260770186, 103947667, 682571714, 269190384, 567216938, 583125620, 285020312, 383734635, 313388183, 123880955, 375058159, 263582998, 16005226, 53276665, 605886613, 485839013, 198498418, 455186961, 348170490, 415543861, 100105379, 628786546, 113625340, 127851059, 240990928, 434599188, 401561114, 420423812, 320692100, 132111988, 113199949, 473746340, 163038181, 640842094, 179643069, 31213514, 711963406, 389957657, 460561581, 905751241, 73780635, 146549815, 397890880, 321855954, 510430301, 615773106, 486368475, 113279623, 336368373, 549699199, 60320926, 768912258, 922810424, 857883120, 901187064, 327596134, 99931937, 338887656, 44099642, 248914675, 41179099, 121988295, 392332778, 355934174, 470941035, 279707320, 611002372, 373340352, 215353468, 82065730, 93679612, 106203625, 650172300, 14539793, 581745528, 112974792, 208204204, 139350756, 60630917, 93704520, 82539121, 60036667, 164143896, 476337512, 795023524, 531664863, 288278189, 900216431, 448367408, 147568723, 138330846, 608661913, 236550945, 420970077, 487154489, 205809176, 40419514, 106617776, 344575997, 33601603, 244193963, 235593803, 76064026, 769908820, 646159111, 98322019, 597988426, 156379286, 242823740, 2063579, 80604559, 80604559, 567302160, 619458188, 274797961, 200486577, 123315579, 136910733, 182421222, 374589389, 317531684, 121782667, 189168272, 92498137, 345308337, 313258002, 253117067, 81624998, 277706748, 315117190, 709437263, 9548237, 145055390, 145055390, 218653159, 235423811, 138116101, 498548745, 533580562, 79238961, 819171059, 971862935, 444202388, 12501761, 264436588, 670759322, 845144185, 160222513, 110326474, 218210758, 99013876, 593534259, 399140868, 384441989, 35360358, 24156548, 127541616, 560731285, 576173415, 225649617, 434873568, 41674887, 387363445, 367092679, 627650349, 939448610, 913071512, 170232493, 17871755, 301469918, 46571872, 432172882, 710261086, 541240180, 714158970, 305236273, 46256340, 362360478, 48625516, 355267245, 354235866, 566210958, 333753793, 282499902, 695543792, 514840242, 68717767, 242149615, 113036573, 321397719, 165929058, 566759590, 71589781, 407451180, 11578945, 337912622, 105863658, 739327453, 570119470, 535969185, 27173008, 189719484, 506073009, 32982845, 1777374, 411415379, 409638005, 297090909, 607743871, 820219244, 506917585, 192501183, 407103941, 393834289, 359822324, 765953419, 783808742, 581250020, 470768675, 37499963, 647187521, 705144721, 181781777, 466921236, 306292431, 195226299, 598082473, 6410485, 812318678, 812318678, 249197808, 283619373, 787503071, 57783333, 733090920, 46486226, 259044172, 45083653, 279879515, 185833798, 8338738, 230082527, 221743789, 145384321, 81947931, 292645221, 988817, 224385687, 224385687, 161051490, 510238804, 350047016, 220843230, 37069748, 336480594, 441707241, 129844801, 333913233, 622489894, 543119366, 148050276, 868946160, 208008747, 600126712, 771793844, 430902127, 185972982, 553410144, 738247006, 797915744, 777202015, 547525918, 301081474, 181742440, 141609896, 6973649, 896100625, 889126976, 54800451, 172698557, 428101155, 156152406, 173129376, 195960870, 787302597, 947010407, 911825513, 273465334, 169461209, 137166181, 237913859, 313133625, 80841152, 832631169, 527195551, 100118587, 427940913, 425276791, 429430940, 539766589, 278333667, 16350138, 276494704, 339675361, 12024097, 5261372, 465853082, 460591710, 409620652, 16692342, 37201048, 597430729, 447223940, 148008090, 106708285, 244984279, 191791505, 69647250, 372202169, 318015859, 377673103, 511928655, 127016478, 505389427, 479266776, 160505653, 3091598, 121662129, 118570531, 179451342, 871665239, 181822700, 99641876, 613228602, 67158817, 470542980, 218885809, 438930028, 414640396, 96916866, 299632445, 136702722, 155518916, 209343374, 235269372, 781519551, 111597403, 18504869, 99770492, 571688836, 151679690, 423645292, 63773356, 362322554, 716657268, 642002413, 162535313, 533053057, 45871101, 581044336, 13871603, 122173013, 484787390, 356227704, 266666112, 123858009, 286512877, 317093337, 378280486, 354011444, 332695511, 874190055, 206796587, 145674146, 81823880, 698798747, 689617069, 600716752, 496831199, 129724116, 91120642, 293569768, 43804176, 652627104, 314125401, 1356073, 83827590, 82471517, 263061700, 71105933, 717728701, 203897187, 95366281, 422268290, 457726322, 180669704, 157687972, 319622347, 231941025, 297542583, 30503326, 519344213, 335581675, 260489123, 213773348, 283716762, 552570351, 502708906, 52795134, 101567003, 70979615, 73634071, 350268444, 590296717, 146688643, 546892581, 516806309, 344150026, 549491426, 225461273, 116595083, 57369994, 288880548, 588592967, 288199219, 116470446, 734275707, 871831887, 445307115, 530410101, 598398476, 155330056, 124170201, 635901139, 46312759, 866056720, 110026809, 812034106, 641997100, 402419392, 164103356, 426035222, 23947140, 46839745, 149760276, 41776755, 197313663, 826036259, 876526290, 902235796, 54771343, 820304002, 635056792, 96136243, 467690483, 76033296, 31005523, 105262819, 188404967, 514956111, 591949235, 416779521, 441186040, 303228242, 382380551, 105491247, 292403885, 675954981, 28970859, 637023744, 469955581, 315354961, 400205568, 102272183, 295456135, 275110083, 428780801, 1826905, 283946966, 282120061, 198118092, 727135434, 834194056, 161105416, 735420197, 655011307, 245784056, 392556564, 480000370, 520269235, 119899359, 388964873, 313827514, 679083819, 52711720, 777541042, 174628439, 13332025, 149916, 340347279, 340197363, 226974360, 289918477, 57839419, 467804526, 54205695, 448008939, 873734143, 7876693, 706163101, 698286408, 706145906, 602306348, 318216560, 513535503, 536047637, 106397992, 411484548, 40543486, 384158829, 88535648, 399387165, 207725284, 507319844, 13554520, 170651648, 553324341, 58639607, 69970793, 11657909, 772115515, 687938909, 5346050, 256739000, 251392950, 206618213, 190729548, 854770207, 130766766, 476935505, 222731013, 870767791, 990301092, 189713842, 280359918, 297265717, 62038108, 202145738, 433870720, 44961248, 680181490, 676959943, 146682785, 301536738, 259454882, 110018404, 312660107, 54951264, 689401979, 523300058, 176885355, 220136544, 701804361, 191024167, 625776537, 418144453, 464227064, 814838936, 208690179, 332781352, 346485008, 524472140, 161718860, 395121747, 285591020, 341804101, 167337956, 425807265, 795084948, 673486382, 235057648, 30631118, 82457866, 88569065, 206902812, 69916371, 320063284, 442959091, 143483378, 288945443, 558784212, 395822023, 15742263, 293161698, 73501137, 157096920, 49621510, 2885127, 637506670, 637506670, 507048859, 414358644, 385118675, 160488457, 84094089, 347980587, 570072543, 279817125, 255306927, 328635334, 306909425, 130632027, 276651868, 153012055, 212688970, 568344547, 66900054, 81369944, 86392415, 774092062, 34790523, 606177982, 303283084, 103425693, 794068321, 275915745, 425784011, 383380078, 520852147, 46632047, 722426174, 114566263, 695638238, 161666776, 164393760, 255518526, 11863824, 239126416, 498639735, 88353350, 107945022, 166750214, 524809754, 216847875, 669314046, 602971768, 597490370, 287663197, 316813022, 915665199, 917442895, 37824736, 44110010, 131025158, 542262181, 97640564, 246445246, 244018421, 659093639, 150159357, 166185396, 6050952, 57013783, 57013783, 786718461, 174263266, 669776837, 647766019, 30780856, 178002923, 387729741, 38161642, 297608281, 1785816, 143169130, 143169130, 197437917, 278780108, 231291287, 119657351, 444742154, 720937504, 210433720, 107945973, 147822920, 165357874, 713585175, 70651962, 623883014, 725898724, 869878110, 191579339, 172824846, 6022589, 316591029, 310568440, 288110528, 233059114, 10963842, 264357339, 264357339, 15278846, 637833317, 54286464, 772564097, 181598917, 372480619, 7993127, 390896187, 382903060, 228974514, 302156903, 17132015, 447518449, 754816130, 775861336, 421736894, 501168463, 314352761, 321925870, 198078964, 413723295, 792105223, 69734513, 676093096, 21620727, 464421361, 61267136, 639363666, 523929567, 377095340, 423437330, 567124856, 419823405, 58759638, 504612521, 569434470, 9313962, 452989775, 443675813, 451569937, 37284522, 201188404, 424276143, 748939180, 141845698, 177933175, 553216394, 281469479, 178973288, 247569834, 380805767, 660997848, 110795677, 530168959, 613872615, 774426999, 776214768, 750638699, 680492144, 579567276, 628480531, 233684874, 73662328, 477778628, 184201318, 358247964, 72591089, 80918867, 565872494, 478428409, 240023101, 216370518, 198856308, 229849323, 141056031, 407961039, 278739342, 219266893, 676804919, 673836935, 561648493, 541712441, 5288837, 224009614, 218720777, 113950285, 618561259, 26257551, 708306496, 745979496, 503030660, 558537317, 446358543, 138789234, 60354226, 166545804, 392556172, 627771547, 722910248, 786545181, 203013360, 408848842, 483249588, 81711696, 528954785, 223864306, 653462369, 106379806, 217138453, 408823597, 187577966, 907536111, 737831706, 474689759, 316796177, 551658316, 500135863, 298339323, 303447218, 18481015, 126815317, 54135489, 462232365, 234651343, 366172922, 326332494, 91929016, 407513469, 291712661, 264715851, 181556719, 183423145, 570886670, 468889426, 405461599, 52694938, 50207938, 734141038, 488912343, 114564515, 189758043, 306828424, 383885967, 37272456, 668330949, 265394469, 233164860, 476459791, 221007180, 522180997, 480477683, 481996650, 792108704, 757386168, 854396356, 426507798, 309170933, 546277544, 560331963, 569355306, 571594465, 756740112, 141202165, 46288454, 279294125, 157780639, 753535681, 892778642, 807177078, 34777173, 417214830, 564264915, 401267681, 168689562, 284671271, 247209055, 176561002, 648837739, 359981023, 516230403, 879771249, 64815746, 5687458, 698635661, 692948203, 464995045, 10478353, 28876654, 18398301, 103355508, 147045580, 300690007, 52689589, 279093437, 310181167, 197519453, 499334471, 926002998, 482706449, 43873714, 424154305, 862698385, 754221864, 12396333, 472069205, 6768498, 100612455, 100612455, 303389228, 407563848, 506764898, 142823311, 1567532, 315696863, 315696863, 440494431, 793904650, 49501535, 277661171, 5373090, 102140483, 96767393, 257097257, 674351010, 705295301, 310168506, 72932635, 308209531, 584853123, 304010949, 385995882, 592331424, 513743638, 570172557, 69878767, 434965162, 246142287, 418612709, 659437965, 264474827, 189133088, 815362221, 781073704, 342729099, 56076774, 78841668, 396230931, 664385795, 97259728, 290170066, 14096146, 672192114, 244418667, 57684502, 753764667, 704979592, 249662286, 173787493, 61650618, 471634150, 155776075, 611429925, 572803968, 189125692, 451402510, 98714749, 715270628, 489884594, 445389948, 107366419, 283723275, 5052779, 248374583, 248374583, 317316741, 35778950, 655834460, 94018980, 446010549, 683600773, 672654464, 93184288, 868459252, 417451239, 355112671, 355330220, 117902966, 85246760, 441091040, 409883583, 122854013, 388477194, 561928907, 680286857, 725334071, 825916154, 536703584, 8956603, 450520631, 450520631, 875012960, 599630394, 114927034, 84119222, 193500528, 232367852, 500521434, 374769026, 349170372, 231823343, 572688937, 221685805, 13042988, 529020668, 385145065, 58766786, 602714798, 21456598, 691994502, 834635931, 717711369, 815797275, 47720494, 147850843, 177020953, 703396209, 95354676, 498885218, 161257656, 329415413, 455583823, 316135603, 790527570, 738683793, 363361985, 235784961, 592774093, 674650672, 866796286, 882915276, 500299273, 29581923, 503984823, 368630526, 43464221, 55432692, 477688532, 430909393, 194578475, 489318908, 522988348, 14067050, 379151619, 226166450, 160418743, 330919118, 596757831, 498923410, 615896541, 71859905, 330088290, 282855872, 262570528, 29735808, 214444412, 471883338, 935586975, 877412096, 700390239, 642671571, 576498777, 68485019, 353858777, 284602685, 187103019, 164063002, 227907586, 679161310, 130919098, 190798324, 762318313, 330226278, 232168485, 184048758, 362866783, 696993246, 391309157, 599223704, 660238633, 10147283, 379655346, 369508063, 225283256, 269214473, 585765101, 212668196, 60283459, 345424624, 424806264, 128222003, 577255722, 570097257, 14850165, 195579352, 210270967, 326447397, 32632596, 224256609, 154650772, 172223757, 425555701, 62799511, 566955561, 117081172, 94406574, 221738635, 345031616, 50222509, 491122305, 92433902, 34956409, 245332452, 660251868, 362801461, 180161380, 347332006, 239018305, 103952864, 428596403, 287875722, 449910264, 213768703, 261939661, 450529940, 396536549, 341297396, 171620822, 660863688, 421793261, 140492922, 195284823, 205270024, 212701785, 525606404, 844924811, 643186539, 264788117, 260590533, 598975498, 836326055, 417885552, 124505210, 205700206, 318932087, 153047923, 131164276, 298590980, 239256734, 118842275, 487976719, 387786666, 351222971, 182350625, 283793096, 351927084, 672801511, 594964528, 229013064, 326974111, 649044091, 853173184, 396625163, 227768443, 254902463, 332656458, 53653809, 579925810, 216775777, 481935081, 474177692, 51044284, 11718838, 420398482, 99886338, 45166134, 338857225, 216384888, 297764572, 102606309, 425638376, 73854009, 253536695, 580257925, 66237462, 680073419, 267961600, 306924585, 444500210, 480564282, 462834120, 496569162, 259167498, 346827750, 21825778, 364378705, 82319741, 416808844, 120749667, 413091692, 1094896, 174901809, 174901809, 183783894, 476282227, 220425678, 536240400, 459408116, 248782032, 709263998, 618101692, 351531918, 308681041, 319170980, 186071638, 162287281, 407001345, 230350993, 460171387, 163419536, 97698622, 169827035, 176050257, 234658604, 131339179, 338689529, 343688573, 464635211, 104593756, 318797651, 79887013, 410330385, 623880900, 592911156, 431007388, 188190743, 435915287, 481429552, 872603632, 859334801, 878427009, 802394134, 508955124, 554674588, 31902519, 504167174, 362297080, 209274510, 60087812, 419888505, 459369066, 406247912, 753670147, 258691456, 397884975, 529491814, 367229538, 146782872, 438518310, 889211230, 302360486, 441233238, 135155439, 25486674, 876831323, 260706458, 248441003, 397445205, 80355972, 486521027, 547866108, 277691360, 260358116, 336092963, 41310885, 32206469, 90855156, 379803300, 101384222, 51808013, 482509532, 532686802, 91179748, 202742960, 125499297, 469814070, 314151690, 637636009, 689205574, 308057838, 214553414, 143584423, 339564847, 426458186, 586140589, 405270326, 23480169, 26648665, 354090006, 526519543, 116050134, 263914681, 460538257, 96729595, 262153164, 418016044, 777146514, 740157257, 321909934, 262745510, 306883094, 152253668, 737229480, 182942528, 306043055, 268913826, 544574152, 106096157, 350345435, 101320734, 450730040, 181596794, 684409564, 691953967, 120663782, 224031738, 521936275, 615443899, 264749626, 474692513, 209942574, 170184065, 98981400, 406522125, 133939205, 131468235, 119069940, 262441065, 805396021, 417749015, 367689171, 93324503, 239601492, 143989240, 24605278, 116885215, 316100868, 431854199, 133681610, 269014389, 594856356, 884791100, 568394090, 532271482, 49025998, 393095504, 99169938, 14710857, 151098042, 191692086, 78998858, 156204281, 171003565, 722365955, 662319007, 446994811, 767997327, 758163831, 50114808, 68536248, 249321781, 65315539, 56010844, 183581515, 62463615, 499308967, 42572768, 220924360, 482776719, 158147838, 275844256, 327945888, 649243152, 609659209, 618748879, 453926890, 84109968, 402101814, 34687606, 569555423, 187505836, 80472983, 568019973, 412716169, 46522389, 233891109, 96131506, 156234294, 308747285, 438552534, 718692509, 598323801, 717868998, 349273427, 408725921, 328919232, 307334244, 781918301, 485414726, 268498532, 33688674, 391599942, 421135588, 881706768, 37064948, 84024140, 391423625, 282352336, 161225683, 510422870, 397495157, 9051834, 199864435, 190812601, 391116199, 79635926, 249835247, 190696962, 57037436, 196991461, 401827264, 475433562, 333363645, 390329062, 374667858, 151174064, 325357238, 321304079, 276095186, 723409157, 869740500, 255392024, 130222941, 369673004, 254246538, 593015532, 867026484, 57477313, 426584161, 192704469, 130413152, 120462520, 133673467, 85644075, 480761878, 256975061, 214554397, 191992709, 76769160, 4862922, 278551583, 278551583, 133005984, 49187428, 277997524, 122066013, 492304226, 406308295, 288271100, 571238644, 435305622, 132359167, 99582881, 379063124, 463331069, 126183066, 593644049, 202896017, 9080174, 151884597, 151884597, 626309544, 397374170, 84928326, 122199774, 701184441, 211521892, 185580731, 69627296, 150157184, 673085987, 534835336, 218353385, 171785930, 297613944, 34840772, 324245528, 247416500, 158090642, 288923224, 194003379, 4620262, 343648875, 339028613, 87314821, 399828052, 210043788, 112880760, 429074371, 467841164, 541996802, 101389696, 112715303, 19914376, 201250982, 190551503, 464313124, 378874110, 184249984, 74686139, 762479279, 148398732, 40732558, 418610235, 417012, 223405838, 223405838, 557825947, 112006258, 585347614, 337494958, 151334033, 89422718, 204133920, 182719936, 176738919, 349987339, 440647688, 524069461, 99340580, 159682962, 48962659, 483356517, 442999001, 72751111, 298648449, 323318726, 278253986, 28007326, 175853710, 556724083, 502309413, 528128106, 538251757, 594821514, 30110594, 955063776, 897566733, 20359963, 799611185, 448433191, 160251512, 197928141, 496224870, 516291150, 380780516, 31488090, 333356085, 99520707, 134193117, 484005216, 193624560, 473530975, 62328900, 386042987, 174597316, 138898208, 201373826, 380641179, 39278104, 441848882, 516412223, 397529368, 192787411, 164163887, 6218529, 186228263, 180009734, 722551198, 269922401, 226062829, 120984509, 469934511, 253606638, 151267288, 508016601, 745782923, 169806313, 372239552, 419874019, 470824820, 831297692, 598518445, 556742471, 607013334, 70410543, 562863382, 226982037, 345581008, 260872366, 152071114, 184868520, 440069430, 462919289, 337395997, 100540132, 473111279, 623671130, 316018609, 375753302, 439623591, 296393177, 290392852, 24765922, 365789609, 326194865, 278772874, 248012518, 328320285, 738511833, 316717774, 3344544, 666883901, 666883901, 543823396, 309283065, 242856991, 403175398, 560201621, 224718963, 182733638, 419113104, 127865776, 829956410, 19275577, 806807534, 186368870, 191856580, 654282234, 622992779, 127819347, 139282520, 202111584, 190619119, 118079312, 776808916, 6004724, 102004731, 102004731, 71783654, 735390305, 144516654, 301329073, 265005472, 324518344, 258679779, 458871089, 68262048, 79678583, 237029145, 250520680, 65647941, 431510208, 285670397, 282968659, 250580760, 381573092, 376896882, 28802382, 122584626, 81042310, 233577718, 472469529, 462613694, 293030357, 719504802, 531016086, 445763960, 206062248, 545630814, 19646889, 74371660, 286849056, 206647890, 326453039, 364296324, 751070118, 193202755, 311263365, 186148277, 83836693, 42546848, 183380525, 629524806, 287260915, 65164816, 167238710, 346623380, 221435508, 212499501, 391989064, 73963640, 327074422, 39761117, 812426381, 20122734, 647631616, 158754994, 8986609, 846021788, 837035179, 777835097, 805681199, 533716803, 584451120, 16237277, 482437838, 417566569, 536562452, 322085861, 361275002, 403478281, 521200817, 323074638, 212417974, 479562605, 371558388, 124150350, 350031076, 405578429, 167177527, 439145556, 73840754, 285336545, 794638369, 60091139, 156546928, 251065030, 163267086, 555204541, 80023992, 444464222, 608948726, 770677020, 399534011, 366760668, 117606473, 491789834, 531083184, 112839975, 339165063, 31305175, 4495125, 183089759, 178594634, 5153458, 317446382, 317446382, 560016775, 271674097, 269493948, 489501978, 582415230, 677014876, 733976607, 46989472, 790629764, 726515354, 631739376, 710955743, 542715277, 289900919, 410224041, 155668761, 592250369, 747316920, 25580535, 243189802, 37519771, 154072055, 304472794, 7765298, 633414547, 633414547, 43478132, 800407722, 154508166, 568884889, 446272175, 57227943, 150112556, 440340016, 18455276, 275704562, 80821045, 370000526, 293191677, 340634171, 227261493, 105054644, 710320576, 169129707, 565502644, 693142183, 390284729, 423428716, 884494672, 848206020, 193908846, 438878624, 167235307, 430234425, 250725945, 346657519, 300589087, 848524658, 93167860, 136475338, 400773544, 49950249, 230718779, 192237855, 108710499, 794207698, 855557105, 810408722, 368117170, 90261274, 253851290, 44947608, 393688490, 162687299, 205322038, 9041211, 107676226, 107676226, 302330885, 511811042, 281561926, 454734956, 229511198, 551378639, 62867981, 772154525, 320763257, 90484818, 338748524, 144132118, 226814853, 889379849, 265780862, 120504498, 73194099, 32039610, 70864495, 514876016, 369088075, 76413015, 407307966, 197331421, 382458763, 149908948, 194893495, 306360028, 256773894, 520064260, 861837837, 103838766, 518950880, 330039179, 115760959, 194081545, 31208512, 396514706, 70059342, 279987471, 196913827, 115800972, 43137384, 799306374, 442992030, 162659303, 115120225, 25963653, 561043791, 45525810, 505177689, 565089659, 514046277, 214260664, 578510269, 95214426, 458415009, 582266797, 166214307, 127380374, 195441329, 749201660, 856528366, 93791023, 741002333, 625457224, 101456831, 56702925, 803050345, 899454332, 835707094, 352206047, 134883930, 562935806, 36987042, 198239542, 315472723, 150469066, 373021894, 206573487, 211226723, 436903356, 513655325, 373839710, 11668433, 800878895, 705346653, 377299784, 186249557, 43956666, 463216999, 109572166, 264885550, 88262849, 78746742, 43559814, 262153752, 299427708, 123081357, 371481612, 222376247, 322071362, 686525566, 743139354, 571556975, 139572019, 131479242, 527788548, 850907733, 933660, 42350687, 41417027, 5191324, 818953449, 813762125, 379880074, 420433371, 987426844, 356931451, 37047514, 435484256, 713724054, 660984454, 144842089, 166490880, 1801406, 18648787, 16847381, 702331518, 113621067, 183135713, 521893042, 425565348, 25903737, 463629417, 733701868, 67433756, 538514234, 124634950, 251755784, 432197605, 402205249, 870220205, 876555342, 676903556, 230205297, 468058101, 634085639, 55007295, 89313093, 89322378, 74778933, 258506094, 480162033, 30191304, 166634920, 71981730, 316490741, 458034507, 380291470, 307637008, 345743454, 176046109, 130282199, 266248903, 515547, 34468085, 33952538, 16712739, 280107565, 73944790, 271455574, 122495771, 120245166, 676180433, 53957184, 629950803, 402694918, 580296316, 646005476, 187232108, 365193696, 289456269, 90583056, 47569308, 340975796, 436624755, 374070811, 124209432, 464939, 108800763, 108800763, 42096071, 135851009, 73609319, 428120295, 658330545, 410937445, 270129738, 402771741, 673602568, 202105877, 600864228, 504382330, 512452792, 126481103, 57249135, 281759838, 178289754, 410928976, 529328665, 255502407, 560421481, 542972219, 586452376, 379394707, 88091776, 49005092, 246915406, 261317708, 300125691, 326580884, 312393187, 231230589, 185618801, 747643322, 530008171, 362678640, 624126528, 17696991, 23154302, 267760386, 546295295, 453414747, 259429001, 145793529, 382831297, 318869188, 442441549, 773334944, 504615905, 68976688, 193883250, 682675013, 125177096, 209736715, 389696938, 401822416, 498587904, 825614299, 371025057, 238215605, 137355648, 272022090, 444834957, 35456586, 319121840, 638905081, 386582830, 465206179, 547567017, 579051757, 615543280, 73040739, 596632452, 798214898, 614001274, 326425860, 634462171, 424068732, 351542365, 249132514, 571983230, 949779336, 895307537, 187495691, 690933189, 791812724, 739200721, 388492611, 26508318, 246929530, 61943258, 622822387, 732943508, 503367446, 496212744, 670840995, 142285810, 41909274, 357418463, 546852159, 120431782, 527806808, 41467642, 394434477, 35949050, 243111484, 348216380, 171099623, 499576771, 7831591, 201527453, 193695862, 355517405, 101288390, 134567737, 181256039, 231330326, 343803768, 64270267, 86976351, 891992020, 140596370, 465558714, 578460125, 638205002, 363221295, 338872444, 96114359, 691997707, 249739180, 424085389, 151840754, 523923380, 38450303, 184564717, 608661218, 704182062, 740960682, 47876846, 755053863, 126485464, 90509942, 415820261, 344710230, 20651397, 281486715, 328808793, 516374159, 528940606, 270093452, 249429954, 103474929, 438442075, 294632016, 187881356, 11810702, 369097226, 47678, 6063690, 95717549, 6016012, 95717549, 95717549, 727116898, 554376165, 127852363, 281125281, 569802412, 172504343, 366732489, 181576243, 72125667, 88680559, 358514894, 187952066, 313143956, 481523895, 511197270, 40478019, 655940210, 4618210, 635712872, 631094662, 189278765, 292965009, 53173725, 261879732, 69741178, 242329859, 48028025, 317721516, 19379449, 192634980, 428537748, 477487521, 116029479, 619960302, 878111775, 104871765, 339503571, 7374738, 343234087, 343234087, 675748559, 453145656, 453945574, 411023322, 99355643, 10510985, 299704582, 289193597, 110233582, 169985031, 321297404, 63656603, 737034866, 306236847, 175410315, 411905918, 967271361, 432929703, 504129224, 207344091, 510830746, 35655684, 47395155, 32978478, 597259660, 447559366, 10936572, 433793728, 433793728, 901348664, 387671338, 95147445, 594822904, 422005825, 288947994, 355143411, 232426817, 487269312, 197571367, 57146864, 108659046, 206122062, 374098691, 967466931, 229574717, 161007959, 126846777, 574304605, 662599067, 130401749, 167336064, 63863270, 201978591, 32617862, 299994489, 429176374, 11761081, 181656293, 399087011, 274680599, 714703809, 164735736, 467350984, 19839251, 767777903, 261182593, 339833388, 293877119, 660877333, 527361149, 63536760, 36475694, 754779931, 843156744, 664113322, 86627465, 200223547, 738887571, 50370294, 167279023, 165682384, 32087604, 118396662, 300665368, 444110178, 339524115, 125339197, 26663469, 147382040, 428840855, 113715832, 451680889, 176935667, 95568574, 497553007, 43375586, 897260, 281383293, 280486033, 61286672, 95658321, 260242236, 463348144, 143101706, 430024578, 584379095, 832883228, 65063412, 520960935, 335501253, 24143659, 91351333, 437770279, 39087942, 154229086, 639507401, 412701244, 63769913, 226182404, 136453720, 75654729, 414178203, 383150474, 28083643, 571766958, 88767089, 304856025, 195062266, 154552422, 487643720, 356089861, 554707090, 474297997, 351240452, 796555462, 675670776, 537100562, 729777052, 385357279, 336522864, 89763082, 589738943, 403449697, 20728202, 258543398, 253307203, 200858491, 330740848, 689223193, 299763542, 546363002, 589699317, 391164382, 449546985, 501263582, 651713578, 778801930, 23607880, 740802674, 708300218, 399749610, 429692192, 435063024, 392881338, 103582848, 275971009, 370954292, 289885491, 261360722, 532903202, 181195888, 26134272, 548882797, 217886280, 21835245, 248329090, 134513018, 59821404, 89009692, 264818927, 232247205, 453056771, 221191039, 47243450, 487339728, 606217669, 572041354, 515002953, 78096275, 358717115, 338862419, 30523002, 64133035, 74516914, 235773608, 720590335, 325982496, 266845323, 576465915, 174734610, 242212036, 505389627, 80122158, 510439019, 332427045, 635114441, 824111200, 302234681, 464465057, 598721051, 207179607, 205637634, 200197297, 157318200, 195837541, 6287656, 719015952, 712728296, 643894100, 789562102, 962817707, 316584619, 73528276, 126426358, 783637, 160382993, 160382993, 372082790, 652054426, 353274037, 413630220, 39668850, 200044593, 299686168, 185273662, 601589528, 65206, 53361044, 53295838, 252172899, 111877509, 554593868, 79331409, 511417494, 70438656, 848552668, 550674040, 274532451, 42871953, 160586752, 40842947, 623153337, 490588829, 333244931, 214074257, 379925759, 85729685, 416624789, 198488451, 258712427, 676125291, 136987875, 299451365, 576810037, 150600595, 105344066, 65152047, 37004679, 773757258, 614743487, 148821118, 802024008, 651009945, 118224751, 738029637, 542868426, 51776060, 505841726, 208387800, 167919408, 174049982, 446401036, 238445793, 528997523, 388492194, 281352769, 317249932, 184441387, 545117949, 849267530, 198442580, 37931987, 386193686, 105515215, 153266717, 283960986, 277833154, 20895212, 576839896, 690625586, 453168147, 550411928, 629065851, 601744371, 718389690, 114732625, 281475710, 675475036, 363239542, 362910190, 899706381, 62945607, 594771102, 154671439, 508777478, 55520761, 873759908, 461423685, 28381130, 20711487, 15676912, 14995748, 126895434, 108653889, 155589327, 67049436, 139292038, 89120897, 6907025, 252823784, 245916759, 129766736, 307326891, 197081277, 745223132, 124793125, 424169308, 2845671, 229571021, 229571021, 81402926, 705638040, 206232212, 292851902, 290715185, 548371736, 190271715, 577298414, 168351599, 712384687, 597396518, 186725450, 216303848, 158535646, 640853308, 447163332, 11321328, 554913093, 243225272, 23826195, 279149143, 138031214, 194414163, 288374429, 362004740, 226624211, 642966832, 355941925, 79170001, 278829759, 777424483, 866875872, 393726375, 130217983, 144932350, 119720302, 394922787, 209099927, 82612643, 233885343, 316077369, 253389550, 356957756, 224719418, 551493106, 219830425, 275133767, 723857306, 212704827, 658786915, 177777116, 394484814, 161570468, 152038633, 198970853, 808555080, 405606191, 7776763, 91473812, 91473812, 214364982, 46109699, 677207119, 171560224, 753720701, 547536899, 673211105, 251348254, 533798530, 66064807, 302978635, 317199643, 450917294, 379913426, 442209598, 178970294, 704552775, 755102357, 174200747, 621000956, 727746711, 732204271, 290289760, 298469185, 672219284, 148882043, 597647246, 212021957, 4953066, 402256927, 397303861, 1849874, 370668212, 370668212, 132214429, 156702360, 681159827, 15138055, 140575643, 744479270, 125938298, 631190843, 406937323, 22423896, 534095190, 43485298, 649245248, 84276256, 873797746, 462672392, 305316996, 460388397, 484322008, 27835849, 179901896, 418364357, 557691283, 555733216, 400478771, 143635038, 295955025, 172863759, 379944740, 15266005, 207499890, 434727076, 701161901, 124466131, 251928709, 625186639, 424461566, 748867110, 860656639, 94665138, 496606424, 376824744, 811865652, 542807517, 306775308, 211753019, 475522388, 482514898, 184603647, 218714998, 616125625, 850470459, 64857618, 761676362, 221847711, 842053191, 369221203, 195112761, 193000837, 293052470, 145025566, 594801849, 85982795, 184356009, 573842695, 174526741, 713622824, 432550698, 302946524, 629357688, 255382394, 459053755, 41995787, 124620964, 124888467, 697385397, 579932191, 67396955, 733680960, 159310542, 938205742, 18041455, 7048190, 338134614, 331086424, 220954287, 467370128, 5653863, 101013690, 95359827, 215759708, 215506499, 661018047, 346564818, 583222118, 777757738, 66465837, 482036549, 56870358, 417245746, 323865958, 258450210, 321506535, 429401833, 23930121, 327139202, 609086162, 166148706, 538942517, 236728515, 5473600, 936662381, 936662381, 402164491, 39916960, 564356919, 316210575, 212025026, 540496724, 572257712, 96459410, 58059395, 814617712, 192925483, 125660292, 228768927, 310479565, 42356721, 261094532, 244433240, 451670086, 847282354, 511847057, 15953306, 511569400, 744229592, 748703356, 732121363, 499071695, 510952573, 280083822, 273770304, 57084937, 128699712, 376744803, 185246165, 504405059, 248828044, 130022126, 2032668, 529728325, 529728325, 219287273, 186215057, 328070247, 13337602, 365562163, 716580920, 811692920, 232959522, 503128383, 78144569, 335797884, 279855278, 372573778, 161462506, 377353769, 471283993, 213594586, 213624231, 258165022, 43829030, 15027404, 603534388, 185434906, 440394091, 396193893, 437231062, 506913352, 454038050, 143394438, 455736073, 271209034, 355561043, 504568026, 553660328, 495426158, 689599122, 210785290, 553887319, 136483456, 680675747, 11429620, 703109033, 357873520, 279879813, 470568947, 210362265, 246699250, 102877101, 84961201, 662270135, 705955710, 358614808, 288614189, 433340378, 178496167, 455459194, 131649610, 367124142, 282974216, 22658395, 81977231, 112821076, 47170682, 460861874, 171489316, 565735921, 783941797, 254178857, 456022383, 857446936, 23996729, 424763945, 138420463, 253912668, 359041085, 255391587, 126259501, 517752842, 810917279, 561434384, 3743425, 34665332, 34665332, 370892706, 642658414, 614786856, 393527935, 4699067, 285049899, 280350832, 39371796, 123675970, 31656862, 237717237, 272063043, 419986439, 221080364, 201924491, 204530684, 406216080, 768828504, 629743362, 96082407, 42115315, 935674419, 628276291, 319978537, 155481149, 44343563, 199855118, 503012281, 919247021, 481141404, 76410562, 424002124, 208336721, 85511557, 180859339, 294498897, 64699901, 57867598, 248704190, 147554446, 233224069, 532258920, 217517603, 390391324, 88528159, 208119330, 404253272, 289415880, 229718006, 481185981, 261879456, 559265871, 667413440, 51959637, 156383287, 137744740, 369263352, 95083040, 149023894, 801252168, 429737999, 8400920, 289477960, 281077040, 75549771, 277094195, 330970481, 428474332, 414825775, 772132617, 16694935, 142694266, 89655046, 79195064, 428797572, 322283880, 788506529, 610761851, 687207967, 257613872, 417306362, 165397981, 834245622, 228752363, 70879455, 207804359, 459694111, 407816852, 351890591, 594988220, 276853325, 15069673, 384750348, 586600509, 66733429, 456727714, 782857346, 677261187, 65517856, 127687270, 420564677, 287504041, 393523915, 236322311, 716783685, 418572730, 132066505, 154671971, 736806943, 185309601, 593003839, 682326638, 377765302, 7264824, 246147416, 246147416, 175561463, 173906883, 297619506, 207202085, 197154285, 436578062, 509408044, 103677330, 102632324, 424059946, 87814658, 222202037, 44924469, 298561520, 196852858, 41007382, 603632759, 65875237, 607222954, 73662183, 719412898, 423787756, 377859983, 829313981, 26915587, 383471842, 167767284, 262269149, 33884720, 108964611, 558061516, 166440254, 82328581, 407382693, 234920026, 284738650, 102753384, 237657442, 247236624, 502763444, 448762462, 60658137, 543888009, 617171735, 19101697, 653448159, 680454534, 79001255, 118441362, 378539767, 183537356, 319982782, 358989280, 199396097, 297134894, 365702959, 687565150, 513826032, 162346124, 508362927, 429675810, 199041309, 173819186, 263756135, 239199404, 152469072, 184061526, 217897306, 402702504, 282522170, 246749774, 854926769, 246922395, 500845219, 582392570, 618670315, 788950770, 24325967, 500971654, 25816013, 335572188, 703084723, 920684708, 19388770, 56283633, 112810027, 39903211, 911995318, 901091922, 859052265, 591346868, 1150708, 210258993, 209108285, 32530704, 762527167, 630397528, 303868713, 95571961, 305049085, 308093578, 333217582, 425050943, 376295587, 297289338, 39852423, 309184439, 394146661, 79255488, 199812014, 730242137, 495375247, 112350825, 85186985, 41922534, 269330866, 291080657, 681127004, 140494735, 846610833, 382744330, 277884719, 276039476, 416715030, 291664992, 33908047, 395728030, 227562300, 631424098, 144922379, 147515992, 564218242, 609165456, 763077322, 164477105, 236325134, 211236806, 398035492, 456571925, 201297555, 381279356, 919935618, 578281775, 390784796, 848600048, 100900951, 147121203, 97915462, 156670160, 410889324, 98483618, 454282943, 710713030, 580783567, 85967977, 557644072, 756872490, 917785188, 593920965, 380373812, 633435071, 340750296, 358282024, 453761580, 330881299, 567525394, 24671403, 32664020, 224428941, 365428125, 558150988, 747425696, 673232932, 283775130, 109223060, 266442917, 132885078, 240574666, 463761827, 705641951, 28943967, 79244718, 156575395, 432850610, 220884159, 484719703, 36847566, 224167645, 315860340, 506275948, 474634565, 24357289, 193371352, 322643441, 520080581, 228842212, 474098064, 887343375, 831742208, 474899038, 288713923, 775016534, 438011519, 138116045, 493824777, 282880472, 397829954, 100556812, 16214233, 28994320, 184202363, 217431365, 658168486, 495322027, 648484794, 626149097, 40279433, 396864562, 672137569, 794525522, 61551246, 657789774, 131588017, 510759034, 701780643, 120158225, 348096425, 874918144, 650951258, 11922447, 230960562, 64147503, 477929707, 143072789, 389127639, 575256760, 497308812, 40827357, 893040971, 354842591, 165679626, 23005932, 215402395, 122092827, 277177882, 55782382, 129779241, 599024275, 212276375, 287333159, 116649117, 34800609, 436070012, 975591527, 539224913, 459705205, 599140299, 600157061, 433567670, 62175417, 448933454, 332480395, 471291101, 534506122, 142833361, 326571247, 490292762, 687137452, 901008587, 371646849, 293442977, 568378129, 486020554, 51311850, 159990287, 723099310, 626351893, 646759280, 386512529, 538769063, 169375397, 117958469, 155181603, 54313618, 89442038, 142233180, 406592279, 41978771, 558327426, 157356672, 27025045, 170439756, 86540438, 508395641, 31308153, 415483985, 346472953, 722232752, 25729346, 545786159, 167381407, 807688827, 50480111, 657507991, 664214579, 63075574, 126896030, 294854374, 94578904, 758307773, 184018600, 420422013, 435681880, 622050325, 797172089, 320822687, 163248467, 365277907, 164099327, 14579683, 140308234, 105634589, 706807635, 394593111, 71674377, 28068413, 341870136, 353919126, 127186661, 350582042, 606505232, 411214664, 355119632, 155738452, 215594930, 805325270, 286884334, 143074946, 613413352, 892154171, 340779877, 588332548, 727801377, 595141057, 456535715, 457048592, 498467657, 237173501, 82375735, 736363715, 424509920, 410131805, 53869266, 412942493, 338733719, 565002278, 708590706, 421433426, 265837706, 92117651, 255955455, 183289493, 10119965, 254092934, 254092934, 158185697, 550540392, 561367150, 175309075, 358574780, 669043922, 542399439, 226755317, 323405112, 15403082, 886945915, 344371550, 472737449, 70832675, 544846717, 160459751, 440698537, 521393886, 541392035, 445900420, 527805115, 367712793, 513693450, 429414829, 357396584, 72083410, 519482655, 113451677, 537052788, 183226501, 73696737, 78143415, 663350541, 411865246, 379153450, 604121685, 692579875, 118324327, 362768156, 71842946, 209964929, 470329712, 569772980, 343575773, 181698102, 3979192, 346614475, 342635283, 261113576, 22824135, 183596624, 542259307, 81977576, 460386037, 182609253, 367745510, 32270232, 20999043, 179808378, 117543341, 137323137, 138731238, 747007520, 93884148, 782845584, 828227428, 38018279, 306130628, 361418166, 485501369, 629480020, 121492159, 614265114, 116863055, 203914964, 177845104, 268469878, 404152540, 333437441, 219704830, 160689130, 87760536, 319094822, 155894625, 76886950, 488835903, 601030627, 729535306, 671797493, 602181209, 124015935, 472308251, 262641482, 98355472, 382926666, 502684985, 118511788, 97614302, 289299243, 519210317, 62588955, 522312250, 716466018, 85393183, 34611998, 107599864, 245516601, 341272602, 463346785, 244408806, 536716095, 300733537, 12761214, 610191375, 255043028, 106891672, 493678586, 540069756, 118819118, 712853237, 224228743, 532857670, 93036890, 271710884, 29740645, 501361590, 542765214, 302562879, 143560662, 142068021, 88675524, 186509033, 571929446, 86995179, 75717188, 11581101, 853759109, 919757674, 766368597, 57792753, 343546815, 547244814, 895878770, 453370081, 272946270, 291865501, 1057647, 15575844, 14518197, 64060576, 379675424, 59751200, 703047261, 196969503, 340114255, 202828719, 256258817, 453328775, 435994122, 303732114, 23921388, 414021397, 308619130, 52542637, 529505257, 282043573, 244868914, 861408240, 428997255, 84914309, 83006259, 461563464, 457570091, 458042064, 206508714, 353720362, 297037510, 382641119, 233809107, 187380140, 2219904, 440364034, 438144130, 152501238, 421621322, 463775497, 245394371, 396040699, 614390544, 198306951, 575849157, 167666908, 51201770, 229217128, 462662410, 135105766, 706983061, 5604039, 337666149, 337666149, 73252853, 126154349, 35581060, 23960737, 197857079, 353532712, 27391875, 309001628, 323071749, 721607428, 601158107, 453303702, 83693509, 593341819, 128247889, 16977673, 196761832, 345904512, 4798858, 152265351, 147466493, 56216330, 130326246, 159819996, 446763892, 80024046, 179362191, 58052302, 744748195, 216808057, 243087203, 398307701, 478406984, 795974416, 614361391, 113672900, 225733053, 212588799, 92498678, 148723, 10952269, 532904295, 10803546, 532755572, 521952026, 555357995, 117166543, 634140626, 306277132, 1169230, 293561931, 292392701, 95678349, 31264840, 604315029, 292088570, 504821670, 632698897, 547070755, 29282647, 34120977, 321015190, 225922378, 683701490, 229468241, 357311755, 22533592, 81900136, 355749347, 339374982, 450077951, 809268066, 12872555, 727436508, 831601419, 70384363, 287306565, 665089785, 644314363, 27193766, 255844114, 371744798, 142154416, 382820954, 623514820, 630971163, 335298304, 26857963, 592063842, 846621934, 541826719, 31926883, 52778079, 256423373, 186102639, 176891915, 59341041, 415851817, 437524928, 150616878, 329172758, 563862802, 67545273, 191626980, 26205181, 224786088, 180810112, 220925224, 482668067, 181396849, 781642250, 440279617, 456696243, 606809512, 645826044, 467898939, 64832524, 341059334, 190877880, 256390916, 91814935, 138379021, 124565561, 376808451, 336913700, 338022192, 507751718, 438133087, 648838047, 738345479, 87363615, 140843583, 138549760, 442752, 309344064, 308901312, 390516834, 179128545, 28206271, 141828878, 224413311, 248062005, 568988878, 832196464, 652568768, 240689855, 450262855, 540111208, 54772981, 67311603, 129519569, 191307563, 248414211, 393765168, 74358045, 578995850, 98187583, 504496767, 632868207, 480592866, 569908432, 805793261, 448592587, 234511160, 435595348, 641070873, 36665702, 375875379, 242816577, 493724578, 245623191, 174216040, 80246325, 440557158, 639986163, 538370549, 74224711, 15942655, 518903200, 222874704, 392720278, 651058717, 166000082, 297396303, 77050404, 540889142, 481280728, 695019581, 505789950, 290036164, 355717163, 110825960, 500956836, 139564461, 224731836, 646950757, 119061867, 115461764, 854490075, 615192553, 640997297, 791647262, 156765617, 668278775, 154430885, 179862694, 331503132, 142709717, 291159231, 732850036, 866962076, 672840594, 40990241, 222806181, 923641578, 1416370, 755377341, 755377341, 542746059, 645701837, 678230831, 669062834, 842723610, 551766321, 320934388, 409632014, 217805927, 495270823, 77049605, 394922606, 256758770, 15910677, 48144774, 560765549, 797137387, 401524223, 300646763, 284283192, 58472206, 45201601, 96763508, 524368304, 591244457, 125553483, 299824905, 452289782, 195761269, 793157132, 818579769, 49017032, 661417519, 231749993, 444482609, 448913366, 48560484, 284888186, 416859471, 57130285, 197681380, 235701547, 487656710, 210582707, 43295751, 30161283, 21435530, 462097379, 196082135, 314875103, 609985029, 29870091, 569820261, 86925342, 544537401, 52691158, 63579859, 97220209, 315551455, 258407053, 765245515, 324079659, 370796849, 599070583, 439391477, 206086779, 67542111, 377923857, 426457748, 119451517, 269736705, 70863492, 418017683, 382858278, 261360339, 502938282, 821301507, 790231723, 301846445, 469496656, 766910356, 18894269, 203916942, 502139064, 14521263, 406457547, 226884700, 72403777, 26261299, 297151749, 938944414, 623172844, 507064904, 552845727, 143426286, 676438608, 11171399, 111758374, 97263715, 792458169, 680817265, 265043127, 291918326, 476969444, 416912335, 487591028, 82616244, 238962836, 387502952, 259943738, 626473378, 776741985, 538233306, 68307992, 6960688, 24608965, 24608965, 168505582, 173010466, 334538711, 224163823, 372840434, 39331272, 606438773, 27704417, 177714970, 117902463, 54803914, 210623082, 142577559, 265283640, 366888124, 4527718, 253750505, 253750505, 130089043, 71665262, 210913667, 56507024, 726132905, 518077076, 329272494, 515297339, 210054802, 140734212, 375292594, 696583001, 24898242, 111043950, 400880972, 286711185, 58772254, 553234126, 78350775, 104346967, 266282175, 350028922, 95324518, 75395483, 386993940, 601736584, 388045307, 147045606, 73916022, 701767697, 190365265, 165942453, 896058246, 61942995, 244035307, 79018500, 497498964, 25586585, 308506618, 329015216, 263120234, 307657571, 87541110, 886876860, 5120676, 161209432, 161209432, 24973636, 212997194, 190821446, 555460969, 78332371, 261601557, 445312186, 202347005, 21505703, 657289222, 85495703, 343929013, 187046393, 344665874, 151801078, 222636778, 501950116, 99198465, 738132075, 462980393, 102863046, 270898572, 128947849, 575948005, 550833456, 3384275, 10288230, 206615359, 10288230, 206615359, 196327129, 478023598, 629778332, 642661841, 394517457, 34691945, 67909681, 97575581, 351529699, 244434928, 239252757, 333994638, 278321037, 831357138, 859907789, 20042248, 291668929, 150227530, 207535744, 392068363, 191395667, 338856997, 317431213, 164673130, 403675814, 622166579, 86794858, 203699252, 266128438, 66430921, 314354922, 50389452, 266819700, 231354491, 62403832, 32970786, 43224624, 137567181, 644143133, 270935350, 79570643, 65992413, 181912907, 7295952, 650879643, 643583691, 304855215, 333155274, 26233791, 363329068, 480127585, 643320007, 326321665, 424262063, 29944773, 641976753, 352798482, 1454574, 278395446, 278395446, 282686542, 425394868, 66030203, 412511652, 158431258, 73280470, 521933221, 684717790, 25155187, 535324106, 428224176, 180697422, 90531616, 63590722, 505953680, 100828136, 316296397, 26380903, 457671939, 305178483, 685141619, 313276922, 66431289, 490110678, 223841644, 223780286, 690124253, 171306213, 239773173, 749117820, 602521437, 99475553, 816229105, 387584458, 218379364, 172310679, 784598401, 49564743, 637742821, 697305514, 131185588, 263232600, 293855281, 653778682, 32902307, 216752646, 337959801, 359937854, 52110840, 694434075, 780428951, 159981322, 97957933, 410498909, 224212238, 562354989, 637394749, 599503607, 277302006, 447071542, 63623839, 592349443, 486049107, 570454207, 388684200, 127786706, 78064980, 358843091, 16041432, 28307153, 141858768, 140990008, 199421230, 429811003, 952557009, 320176440, 384458499, 142728758, 358914691, 288699073, 8480718, 127483750, 127483750, 535262012, 593278548, 620374356, 751949510, 186854122, 2071911, 685188030, 685188030, 349283764, 304610037, 53126459, 378933977, 36467511, 252397004, 364285904, 734820833, 754117733, 95776644, 765949534, 146251860, 461909765, 1187114, 667763626, 667763626, 373682205, 581123849, 346819857, 90726214, 218555790, 275466708, 727614670, 182758803, 348902345, 297724419, 65793382, 750213414, 347033380, 185270660, 75352870, 153198442, 54843049, 411819723, 462937325, 277504058, 681795386, 158469680, 370346859, 103920609, 60997088, 112484566, 524345130, 187574393, 419393472, 662422639, 408624676, 417775654, 448212428, 4733852, 210144442, 205410590, 617304895, 178057602, 70405314, 420039560, 56600665, 636828646, 122834678, 110474492, 847895567, 17780858, 85323911, 181257030, 587259738, 745833243, 177916842, 633075994, 919781768, 758237130, 111634196, 74967395, 864095318, 24985936, 766565161, 424308627, 314565915, 529441601, 2181555, 351757795, 349576240, 322893294, 134696631, 166193351, 630856117, 546681631, 820558002, 17150634, 605849206, 232315363, 11791457, 419004103, 167560496, 193975141, 101206883, 407461423, 643832327, 140576608, 873380479, 902483628, 605913221, 274838957, 208907869, 65403401, 80997883, 147043723, 70291263, 8103497, 28929851, 28929851, 118978383, 637110229, 767433344, 754803456, 459506892, 483151617, 16576657, 562329332, 135373793, 502945548, 366930558, 159681935, 502905344, 395057500, 296034303, 423615435, 58777737, 87059484, 254560818, 480195632, 290222856, 145442520, 173701965, 388918849, 460467028, 197264038, 339768342, 476799193, 70291404, 467418313, 393958518, 299362922, 583427240, 104967391, 372146308, 542437878, 541581267, 669493825, 492691427, 1141085, 442861320, 441720235, 194385335, 455603051, 93169375, 405932171, 433996264, 459650914, 585916110, 17625394, 704997263, 829423892, 403571607, 215852613, 356540312, 436610351, 28318276, 195755447, 105832915, 429367147, 30466765, 39292996, 842063934, 400649572, 64387183, 168465096, 126363467, 453267932, 495408886, 669732339, 226075866, 673387715, 307637046, 397315983, 761359647, 853912337, 826118724, 831906179, 845552637, 627321031, 194215733, 239893179, 214290791, 306206252, 584623437, 385282502, 541236066, 137887818, 320592084, 55029259, 417212151, 93539363, 22388617, 756991220, 875768236, 592816536, 620044817, 78666359, 325802911, 107175331, 470927677, 109693761, 142600571, 214971849, 208616965, 190417862, 355374354, 333108297, 301209226, 159522613, 134099861, 232977755, 120482935, 467481640, 449917653, 397339721, 346693180, 531854637, 216704412, 140432609, 14248163, 685383919, 37735847, 376636221, 472518628, 344664932, 48690433, 587775776, 176493085, 632755738, 621054090, 583873155, 333009983, 177395593, 569115233, 833718093, 806456584, 96198999, 951502149, 215099007, 450465669, 239349487, 138012576, 185503266, 19479826, 207064321, 121002225, 51249038, 518776894, 388817921, 142746636, 214330901, 286842393, 87248052, 344771323, 388717684, 852168694, 292512880, 289878162, 175867746, 701103342, 69697068, 458935566, 113555631, 388219860, 57819051, 227558835, 106248824, 642266540, 460211898, 645954225, 694425972, 615995940, 463955442, 389205844, 153685223, 19185725, 415761675, 292319533, 10996216, 249756218, 238760002, 365911847, 281785664, 486554253, 168423148, 757387319, 585919202, 355332405, 554437074, 513675441, 866015611, 136368731, 305533480, 61307585, 341868117, 58220236, 147669426, 274426422, 104332494, 5182705, 167922504, 167922504, 53412409, 179361403, 21864618, 286537833, 466776538, 653881063, 69006208, 179878139, 357032859, 505355582, 617137717, 404440061, 49124195, 338713863, 540698385, 165143205, 383530336, 149347150, 271075756, 714626316, 381357989, 240527231, 341943925, 301842922, 349513741, 702325439, 59101877, 615287135, 403772731, 389299816, 804049, 8410449, 124285996, 8410449, 124285996, 124285996, 561789565, 739953065, 206738622, 394982505, 571926023, 252024727, 589960410, 313348624, 451246437, 551426007, 71297591, 67246834, 63552490, 117510327, 180372217, 220864543, 545919666, 53788884, 356029156, 505978749, 28519545, 217151033, 194855208, 425827725, 368549204, 204808931, 201619086, 754366224, 468158, 554715124, 554246966, 49645801, 787319458, 419534108, 374212802, 4442309, 808644281, 804201972, 827299233, 176143925, 250721215, 201599785, 116563380, 328900381, 145282726, 164049850, 842536626, 159105212, 92133060, 239963900, 92939433, 134296945, 497622696, 203447834, 422363821, 214787780, 426543947, 469986341, 302599202, 233791241, 489056609, 662609830, 605101032, 239095311, 340881276, 481134046, 709198666, 102077062, 62709461, 391500170, 307287411, 135453577, 465270608, 156179691, 7477812, 62905155, 62905155, 193244034, 607668253, 916716584, 918567772, 924852449, 850074464, 278263231, 359203698, 674271575, 244572064, 535612996, 55250538, 794825352, 855236222, 235784030, 640992293, 910796343, 384151293, 185582324, 430574032, 433952541, 584632665, 159637063, 152602662, 629925344, 234302160, 215216251, 465689183, 148773496, 282404938, 184300838, 795305549, 50024426, 183218302, 196113409, 427475755, 155037515, 399502938, 524772424, 287087393, 341584208, 436837971, 248065567, 183580363, 362645398, 523481290, 102259911, 31880028, 160639953, 50000256, 102927738, 597125897, 747201267, 473651615, 256728072, 338054850, 369572653, 286131781, 416547397, 692137748, 680095880, 638009870, 134379035, 497905017, 426450844, 816863600, 20621680, 153030120, 287798577, 645451049, 826883211, 9891078, 726715838, 716824760, 703508913, 622416790, 166667580, 250988613, 16109684, 266158088, 564511527, 427834118, 731147854, 817719803, 635539628, 343048691, 348356917, 281023080, 179780377, 554638769, 313338464, 443898847, 362782609, 479386124, 683125792, 173439883, 521545979, 562383057, 864871178, 616079197, 391014317, 264914344, 137443170, 777324185, 454478065, 251207680, 312609088, 128620929, 89888007, 588839513, 922431077, 446844356, 37022015, 224208685, 312321433, 65527697, 348446691, 571303976, 193284380, 172671727, 180113595, 350803260, 266687163, 150182678, 169913762, 86247543, 275275517, 41810201, 518516164, 156599808, 19576787, 264805193, 46801796, 561051198, 427154547, 81679239, 374978936, 10847242, 382685679, 382685679, 280003997, 6175376, 634675885, 628500509, 692024414, 181504811, 65128113, 8640287, 168824094, 160183807, 879576073, 367781978, 89001079, 416958910, 5480958, 447188934, 441707976, 359255572, 288142804, 296139572, 182914711, 736111416, 342136924, 282763010, 788721760, 738089942, 725883707, 592877404, 174235296, 109756414, 278231906, 189022378, 760103023, 695821266, 116672941, 42808936, 568467643, 17316247, 58504770, 744218863, 180700167, 595996476, 182409883, 401432985, 365993489, 572324693, 172549722, 53626617, 650418645, 642358544, 567848715, 130192233, 224318505, 27468900, 351703576, 380137456, 440969785, 499354663, 76495755, 135090881, 316597309, 16899343, 788976629, 87876478, 233668793, 346736220, 208100576, 65733483, 626687896, 84521078, 53943691, 130733926, 218627339, 88370414, 666065997, 564112630, 134641688, 742694013, 637115484, 177386428, 33979918, 33504915, 811546338, 9371393, 577771854, 568400461, 191269402, 827440014, 56091099, 426409037, 342801181, 177233588, 508818944, 324534607, 441757016, 672532347, 100231876, 78533637, 306712941, 248426181, 312072279, 40964985, 30836405, 255656376, 171518245, 259527291, 151908790, 525935475, 407525141, 26426652, 223375658, 45661942, 304820264, 308314575, 325616670, 551387899, 392386911, 211388066, 403338301, 266620182, 629876914, 27830895, 497574109, 271858035, 322458777, 159296900, 141424543, 21298715, 140514501, 290192836, 407833833, 155964376, 122331606, 73532266, 647234698, 656690000, 30063715, 178689051, 418830670, 282318893, 835636876, 734190899, 266739534, 178549179, 318953414, 415067050, 64371140, 457485760, 21931299, 62263216, 659787517, 28494499, 719517046, 495711530, 223382985, 426828694, 135765162, 645887975, 105696440, 28728330, 360082283, 116432117, 547246783, 579782981, 620745105, 307163103, 95427923, 116453180, 195161489, 38202058, 554784390, 424042203, 406536699, 926031932, 2077812, 777506669, 777506669, 282822926, 473635772, 360035775, 121598397, 240634928, 725217958, 67280847, 325499293, 384174931, 154033905, 202327739, 389263207, 305832787, 45618695, 13902263, 205717944, 301388425, 160285831, 450016618, 154187839, 598740268, 854156620, 67325683, 91379563, 120757121, 687860152, 113076289, 47071013, 95941080, 259436787, 303449959, 783436194, 234901608, 184324383, 711850963, 242420193, 470895346, 336397970, 303987730, 320345315, 336378360, 371559963, 399998479, 564143918, 131860654, 507154362, 170644526, 304657506, 339599130, 207406067, 342704280, 707419239, 261000917, 168666779, 641768743, 91177756, 521146712, 262138100, 72439248, 431098580, 391923070, 536545532, 514667188, 219002881, 281429762, 243531114, 167003754, 314019255, 673949559, 132732959, 593331764, 755139999, 92452680, 161161414, 842989377, 391378738, 317245493, 761270751, 387673263, 119275970, 509037418, 164280297, 40019656, 256144832, 66651720, 255833656, 313639919, 287274926, 197994856, 265747544, 155472476, 428529722, 53842441, 179258427, 25876287, 163941598, 70913334, 569624026, 226609996, 94195398, 496790338, 217764895, 308783902, 68178558, 244207569, 456512588, 338636431, 47321229, 343697423, 196269349, 458380069, 743749165, 751819643, 363957084, 188900048, 284587967, 376152116, 153745111, 39080486, 229969934, 14091243, 501152403, 311303582, 396001092, 396688183, 512024569, 43153062, 597886504, 83924956, 5888126, 563608406, 557720280, 620686973, 506159404, 85096517, 337279132, 92079109, 253567986, 455303846, 299649492, 112772384, 473726353, 403015501, 402562585, 66062790, 63434516, 456521681, 61610669, 336541436, 740376813, 487911642, 490777493, 745908611, 591386291, 573520388, 15800937, 128703645, 459641446, 687798224, 13429073, 25304171, 337970212, 301826417, 39403857, 159709681, 124364259, 529443477, 141845906, 28516716, 116288899, 15631378, 582899936, 846120930, 747416306, 427160066, 358301529, 195554889, 342312534, 308678852, 76154482, 371217128, 98287721, 194548876, 282859955, 41896924, 355883677, 321136183, 551198895, 791669304, 263961900, 91452958, 219874442, 501026320, 572128325, 197893137, 138526272, 45812891, 34262272, 131272660, 610942668, 118143495, 265559821, 200213070, 620786553, 670934447, 30409602, 589299629, 381357762, 265960118, 118841694, 80488962, 360700768, 357179218, 357544434, 440638509, 321769597, 36839257, 65618595, 425226432, 418986014, 747156760, 333752859, 309522761, 29737040, 165101932, 172707975, 222468947, 511290353, 48601404, 164496650, 318565716, 104814759, 155356511, 530838365, 500472496, 273911405, 176988976, 621502552, 715036249, 65945118, 660846928, 20255675, 646435401, 138357137, 297773919, 438173073, 312598956, 198696232, 355314246, 602913805, 686703409, 211718103, 132466099, 206383316, 123788968, 70146716, 71728638, 681766020, 853124235, 190630230, 646966378, 208547350, 551442779, 513693185, 305875342, 283059849, 164265523, 108488176, 52904308, 327390252, 177189807, 247012002, 153852329, 89773036, 89405310, 173709118, 143381847, 298589027, 435223597, 50702779, 454583265, 38471882, 157080225, 130050691, 500911760, 386784309, 481338333, 97603677, 622323899, 166421856, 295482003, 541078305, 230743183, 206096884, 723216755, 521377599, 161707455, 13087589, 396556279, 499099596, 55574255, 103737634, 50391423, 695195611, 115184166, 310384670, 264275810, 652550180, 232619817, 393896700, 36605243, 214269737, 115743660, 203793367, 412701885, 300116870, 746220398, 94165193, 741696907, 805478334, 580872176, 265320389, 67368265, 297017711, 182185936, 716964299, 121336350, 187579018, 74102357, 235305820, 191258746, 530110302, 158104388, 13072138, 223708519, 107258729, 14166417, 246289867, 17127505, 150981044, 208132209, 278951453, 457466010, 850484932, 774735162, 622095240, 28646557, 17160807, 118435682, 346140597, 260369238, 42903140, 63120503, 406054139, 198071774, 112480986, 376231205, 65258576, 457328669, 645941886, 550280883, 266418207, 290423109, 2899716, 108039901, 105140185, 464729814, 473962376, 389491717, 45537355, 267380646, 29832755, 478925781, 48616858, 678337414, 190049926, 228613721, 218981420, 452080248, 213149122, 182438427, 105713144, 211169485, 374814149, 302905590, 298745061, 555552868, 72819857, 342801578, 283546020, 172825137, 603912331, 728238904, 89044665, 616005917, 197518714, 785749626, 13458281, 473460653, 218339465, 190237394, 429770563, 181968104, 796618229, 222367281, 586465828, 587029059, 498672589, 769897653, 184561683, 487574447, 504281465, 196137511, 211706502, 155403041, 563109706, 52755930, 663615452, 622469921, 77596708, 798931629, 458741932, 240538654, 560883372, 196412363, 312722522, 359041108, 189091192, 524218099, 128352557, 350932424, 47705287, 530142827, 237431352, 830921912, 600555906, 476258241, 17612918, 102206347, 97821779, 228029150, 408302858, 507243255, 483413780, 224232711, 225185689, 268056566, 194804891, 678495155, 781685660, 562557031, 176806553, 419019122, 845010051, 581232575, 404061425, 704578004, 879770036, 78225695, 293205, 662910168, 662616963, 774856717, 819242062, 585925911, 277937218, 227013206, 101432834, 17297891, 293945793, 368575138, 306765328, 126350690, 329977881, 602439061, 697699016, 148815252, 7284123, 64924376, 57640253, 453568039, 83127635, 256383423, 241934580, 339622958, 692334545, 512371100, 482758008, 94750072, 612568808, 378175805, 290213984, 834459046, 837764172, 77867091, 394525778, 390926618, 130846791, 718866278, 688279862, 418100203, 153510508, 605373298, 663485308, 83304770, 203862430, 760559599, 235948011, 306491256, 181288599, 228451732, 115678530, 507397153, 601395248, 338391228, 375796843, 154158080, 614527832, 793916, 455087422, 454293506, 375903381, 47466802, 755242407, 603261845, 597538584, 861311287, 377652100, 53334487, 340331261, 663595923, 132424171, 686228069, 335914321, 282199047, 308664993, 153335133, 142368804, 102932096, 188806981, 56804228, 511091693, 685697928, 447529229, 31516407, 58248504, 95741832, 174413352, 19372564, 90435659, 156169769, 707130448, 253552384, 204794870, 72516383, 2938816, 412953099, 410014283, 5060039, 240579839, 235519800, 308240683, 372802328, 148763457, 87222747, 428693342, 410481357, 279854852, 579663037, 172203326, 436474688, 157487894, 792470238, 41662115, 791411513, 16290189, 298581273, 433731712, 559993365, 548573880, 543318607, 463348481, 370883172, 137141096, 570831795, 770269092, 867440395, 236507541, 449836470, 580511291, 30045443, 449447922, 345349919, 743769923, 101724317, 161568231, 192385745, 456963614, 348609025, 98480869, 271752908, 256134207, 6591231, 588946672, 588946672, 22763542, 72744130, 460408118, 381819009, 423759213, 246165805, 289343514, 164500637, 20458352, 545621347, 543423579, 273863655, 101146033, 115800083, 345712212, 364584625, 527550546, 693297952, 677885738, 95738752, 107625794, 387469708, 324458680, 150921666, 3111746, 61679746, 58568000, 23951913, 438437888, 226164605, 499044055, 202429929, 279962641, 162412907, 570997726, 86339684, 885183952, 604143532, 319119678, 49484340, 138624816, 76387538, 155955320, 115001059, 85997286, 56153409, 155490483, 105952252, 474136574, 96220597, 393418516, 425728365, 423114751, 337584753, 492665116, 91958544, 143006290, 593877501, 540702184, 294697981, 201228657, 235490839, 438604260, 77216748, 175388256, 272119443, 48986919, 108930743, 232648375, 57625219, 74374961, 94989516, 174197631, 192022375, 313877338, 7505542, 443801778, 436296236, 510746660, 92856263, 210378214, 236869568, 686455013, 235100202, 220107214, 373826059, 52759657, 542546702, 212700420, 277172309, 264998347, 546343118, 421116943, 790869235, 938147772, 266653731, 96511781, 301812660, 639149031, 48359031, 268890367, 188208517, 425995361, 893714977, 152911015, 154208045, 622626030, 603765614, 273254921, 257627627, 159729478, 608857005, 74810311, 449046794, 362210997, 379948889, 315443306, 59096042, 714098692, 665414151, 83688489, 778228860, 70701651, 780912405, 780618215, 246647786, 70216279, 652246771, 860323241, 368990903, 181443110, 82988256, 299284481, 585683261, 856889576, 49046726, 152813954, 248826486, 62677305, 493286832, 631993424, 696228397, 661960815, 544523898, 671454761, 688564825, 9033108, 76607050, 67573942, 265873217, 81128279, 253853782, 334004060, 117466260, 164284250, 126553945, 569121750, 265409152, 381915383, 251761938, 310739789, 722174169, 228180054, 301974818, 198302832, 422351301, 477597358, 947568359, 201681747, 443744025, 40303567, 32051307, 361918195, 224488224, 477967264, 187003132, 420991337, 7465510, 91096952, 83631442, 297910196, 1516320, 357794842, 356278522, 421537818, 28505897, 287805264, 215544415, 95119907, 569304765, 346751585, 269710964, 598808332, 298355065, 543529148, 188236121, 178258212, 125055030, 55257407, 616014244, 744200334, 43233289, 773810116, 91172807, 63573603, 164540393, 496514899, 243202010, 20492447, 20619635, 290386262, 238340485, 222852515, 96197985, 448130837, 319102609, 272870156, 79990004, 23829280, 542403421, 245525009, 400395196, 381660477, 654424856, 463863714, 473471930, 230916534, 360000965, 710426418, 78643425, 56141888, 267955748, 475595391, 361937215, 143071073, 164554081, 38944038, 169376639, 122053237, 469499622, 489306082, 170307574, 187816043, 187736434, 58726366, 927321360, 669053392, 531492534, 215906120, 57330117, 377113970, 789743910, 90056436, 78345723, 144566647, 929983904, 270383246, 435036199, 233791959, 155531175, 444463040, 44443425, 516843557, 121534013, 354734839, 74710954, 121691172, 365694118, 645574790, 157291468, 281971433, 317975137, 250073395, 510835379, 310573897, 357526519, 714161661, 522901252, 293014968, 93285473, 139927433, 206898010, 119104539, 360200535, 470394330, 208828840, 474506727, 13570750, 466470124, 809234740, 36391332, 781900172, 85550660, 663552020, 147238142, 69161718, 40673500, 268761852, 358229250, 58666744, 7898704, 79781604, 79781604, 168908692, 609505499, 336615722, 754451455, 81506972, 13821953, 127421568, 99769483, 227529217, 903487157, 32122581, 86216773, 882686155, 14632224, 774984369, 98394953, 335511921, 383818151, 188890896, 163831169, 588250829, 123946841, 268978997, 288888003, 153664104, 388178280, 96919020, 112957795, 441562054, 112189552, 700146039, 4250282, 346828983, 342578701, 138573776, 34482621, 166291850, 453467944, 196847265, 609086588, 95959606, 461041234, 65791939, 628788590, 676287850, 94134648, 282251470, 255825825, 595494790, 104298861, 209909984, 239882713, 453478118, 426843988, 88081069, 308035222, 547255149, 149818759, 168903793, 268787284, 77075762, 444703864, 538625637, 110053213, 200840841, 85221647, 297221100, 522480383, 764439970, 352242024, 64067836, 421741146, 114425013, 409246919, 11347364, 440951791, 168530368, 364676322, 9541331, 164028167, 164028167, 352961899, 782037158, 135603112, 108348832, 307806115, 54799754, 291881451, 184949113, 442127646, 304790305, 488312183, 809785230, 101215019, 410581257, 218173110, 454262567, 486767493, 48618999, 427191851, 236604854, 674047491, 182154730, 100466791, 171637455, 486425631, 8321589, 195958336, 195958336, 182758221, 761672527, 545445431, 712835568, 102335711, 139335541, 268404303, 308452743, 758592097, 846500738, 173104590, 435406085, 285112854, 315898077, 66713253, 531825202, 472904523, 580954043, 625973896, 540494880, 708682746, 346944020, 184610218, 119907568, 738906490, 931195211, 735345684, 610837979, 669400124, 388794614, 290343522, 207059250, 327984570, 218191960, 504337515, 406418090, 133986707, 290834067, 225496601, 262798388, 368251244, 529364390, 221642346, 130847919, 186497135, 332756786, 377008874, 827965203, 31237994, 422985943, 279965245, 389341873, 225781639, 4339362, 426534550, 426534550, 510883334, 608159161, 625536871, 154571688, 880908980, 422655178, 45053695, 73024591, 95917373, 28405678, 165412460, 63201743, 43928368, 583905721, 514409259, 325522386, 490663311, 693004923, 424744822, 93670251, 269174890, 221062636, 536080870, 511335543, 31416461, 3881232, 671066649, 671066649, 881132298, 557172962, 302496838, 922281052, 95610684, 219197924, 303852978, 109798429, 274580731, 82578745, 168584567, 245121845, 187786339, 79916098, 210921253, 492768254, 303844308, 83351447, 249093725, 436428368, 522671304, 674551948, 623539233, 140310434, 47872367, 385235563, 88337389, 146156856, 677183784, 24409343, 761623794, 495496695, 669306475, 168983695, 39415459, 60096346, 35408114, 368330795, 485604866, 497245256, 231552711, 134677380, 449527008, 510682723, 198652609, 522764327, 23086563, 620476613, 601973157, 344261217, 820206433, 13407473, 144945193, 307997855, 675569978, 193005353, 154709352, 289504887, 886442126, 637687821, 578411031, 27192058, 581610550, 241748660, 243806391, 260706551, 325029215, 206462255, 778442036, 53303776, 46862388, 895807671, 357828719, 549442831, 174617673, 780114897, 700704756, 193916353, 342714364, 197042274, 197188913, 133836452, 665731654, 256043119, 464552157, 491015717, 53051801, 35125339, 338065740, 458893847, 46491736, 129046956, 39675778, 76568189, 653236221, 496456194, 430501206, 714243066, 572740467, 657825523, 683518652, 654161727, 596247788, 110092760, 142292362, 308320127, 214575047, 436359646, 331562887, 301049264, 241166094, 37373889, 290272782, 395373357, 308797779, 112058477, 7065308, 28074074, 21008766, 397878575, 482319193, 475940707, 394032029, 177991344, 34140382, 225297348, 803578188, 56532952, 214991767, 35958557, 31216435, 136706104, 132864587, 509856799, 295287719, 279585679, 436467430, 459696280, 38587400, 238961173, 367471402, 410539355, 426005374, 44977953, 459284400, 321875911, 722984204, 742027354, 187911498, 202996401, 371779728, 411397251, 331810782, 58682722, 198062688, 292987521, 335375150, 727082494, 356629666, 207030153, 183899153, 258317169, 257408486, 403380768, 169274686, 166312147, 298484622, 136089654, 131472440, 235033035, 590873909, 98860506, 693613595, 36664263, 484946830, 383276096, 822644160, 725778748, 378036753, 357987803, 447830365, 190046505, 646072130, 241434311, 588239627, 28081953, 777305020, 81843583, 220627771, 346118578, 344804516, 533516097, 543079975, 61408767, 75121957, 39092801, 391046081, 98253370, 356943500, 616264991, 479015919, 364735987, 491257460, 115147410, 679987320, 169559919, 5764973, 86106490, 80341517, 473349708, 641698, 506416028, 506416028, 426545672, 464182669, 192970478, 22861205, 518996970, 730220862, 209243938, 145409523, 210173802, 440561742, 811223274, 95232322, 445070864, 107994514, 124844206, 260914022, 259070496, 439088155, 102198164, 126138342, 188815948, 28995351, 78974081, 395758523, 566079435, 268832031, 103259722, 369886042, 12298324, 86200183, 641323177, 437314675, 91931767, 34156991, 638250711, 585149999, 313240473, 417201183, 8005190, 242429567, 234424377, 272604997, 679433517, 107094593, 101771715, 854070334, 487427254, 144158445, 501794352, 493223255, 394335008, 490436686, 752444541, 515390735, 333334299, 194769284, 43922049, 58167390, 592232167, 85109423, 47595736, 282130467, 190348430, 351543425, 471740765, 260364615, 150004876, 390492002, 183645820, 367363358, 754388825, 144697468, 253482832, 21150840, 624969203, 54249930, 25586811, 474781301, 402758319, 330641639, 91949479, 463121802, 251700310, 250128674, 78166396, 532610229, 668857136, 935399990, 456509619, 515799379, 557793489, 123327713, 378680156, 53356752, 28838451, 64276052, 23173235, 81958490, 480013333, 19404771, 476686479, 763996387, 668299162, 384882586, 282781978, 950309635, 915882255, 769207742, 741443062, 111758243, 216869921, 487356183, 639306214, 609460821, 847345899, 154562484, 201398844, 144393588, 336657340, 4329382, 86375156, 86375156, 102688880, 89323236, 43433320, 642319713, 481498797, 495832049, 571452385, 153183391, 111901426, 485990011, 864206508, 824012872, 588832703, 327045534, 186374334, 507363484, 676173821, 523738645, 142277585, 473891083, 102876752, 283122818, 63832691, 291693317, 91246719, 89538967, 181799330, 151820789, 132640810, 675590736, 875260632, 827298487, 77044263, 621206207, 157531800, 124204756, 358956038, 596085043, 37281493, 484552046, 32281023, 463645750, 120648141, 254890942, 76238114, 161788370, 127110707, 170914846, 44869383, 297237999, 31537529, 207353013, 140539732, 672007723, 90262033, 228980056, 207999132, 915765057, 455382346, 19464892, 451076127, 223167555, 369123896, 85161902, 18075061, 528518563, 768719492, 19689175, 390702989, 46639583, 47891216, 20288553, 981142, 138530374, 138530374, 367410768, 737489997, 30519014, 72928552, 27765779, 48906317, 716923149, 332269077, 20834503, 379102646, 863917275, 568619027, 231248212, 146504551, 454708165, 86203280, 306767780, 659105626, 192342050, 833915737, 426070148, 280111938, 151925096, 309045728, 541908988, 186568793, 515438660, 48017159, 742708660, 1201500, 927416567, 926215067, 841250980, 852354449, 170750876, 528919867, 535579708, 110557067, 393164775, 467720700, 36751432, 123992169, 47085081, 445964753, 322395926, 20830616, 44962571, 911392545, 989888208, 729004577, 183955057, 413120033, 31969140, 375983011, 69509463, 229116171, 64498429, 144900054, 116873344, 115865969, 460050057, 136664931, 127434411, 550458321, 116915516, 638479964, 181061650, 449972425, 208694747, 57508543, 506260668, 340850272, 120534327, 233428588, 6582047, 68293220, 68293220, 8923111, 170120724, 170120724, 119283350, 200682022, 196565872, 542836732, 156162390, 274163114, 364445323, 143964950, 568723659, 914794389, 339078759, 387272481, 715031436, 154561315, 647451066, 505793403, 43950885, 27394101, 568554214, 34702794, 113356905, 277069043, 305239360, 87330493, 638488713, 819114810, 234217493, 260400242, 690404632, 456677646, 108475873, 361168886, 62706854, 400102212, 530649006, 502306939, 542018020, 481194802, 384378348, 30498725, 433841511, 72881963, 385990380, 205573725, 537377100, 55495547, 114343603, 547041143, 666501285, 367822446, 52892903, 523699799, 30945219, 348317497, 94193493, 143433047, 192379421, 530520142, 55163390, 836547591, 184953740, 78270452, 396358309, 16904531, 108497155, 308404335, 330163684, 614642273, 91985584, 210375794, 326604494, 361136091, 289462050, 183937561, 709502928, 527332, 227132834, 226605502, 680047349, 343765416, 276921181, 635453525, 507593526, 272330758, 340192263, 24723087, 194800790, 9823460, 628616600, 628616600, 769598778, 261117854, 544244400, 262397668, 173837851, 123852000, 507537824, 613444702, 703582993, 612703610, 122732429, 446347908, 528378603, 46942257, 657835974, 470486633, 325416827, 169922146, 269129486, 455976684, 732760114, 443997950, 306367970, 136388485, 216021988, 664719771, 435196954, 448492538, 329699794, 33138471, 314904263, 588211575, 337618934, 282317677, 255923662, 255084167, 34376446, 209342653, 145140945, 253605846, 95683785, 88093407, 667689053, 22305073, 478497400, 252236085, 199555951, 190006889, 221399380, 610684505, 470450326, 123384674, 532884961, 343316189, 175280604, 361049033, 390805280, 178395243, 185311060, 323664263, 135126768, 146695201, 704965353, 442191605, 352896494, 28115928, 354164990, 319318851, 249651114, 111210356, 67810426, 567652007, 110102273, 561069810, 339963500, 5706730, 97361256, 91654526, 66055293, 360830614, 4764639, 612002025, 607237386, 545590244, 490299171, 166225232, 436248442, 906261593, 860994697, 217400405, 614254103, 146471571, 567725792, 246993348, 391076246, 634150597, 201284113, 85494901, 87981272, 608692387, 13038042, 137515232, 640604064, 205792807, 342508360, 415605605, 373630167, 11598332, 491460758, 135291491, 128473792, 625524148, 737229946, 275048635, 411033711, 397454174, 263062662, 236160132, 373920252, 362342294, 234990799, 75221775, 524396013, 46195507, 458406435, 288440316, 638134813, 854069268, 574542007, 255746021, 209321418, 261448728, 310859057, 100886973, 401764235, 214798659, 518687835, 78959530, 498726272, 445228711, 16271828, 824858929, 452165022, 23181161, 195507699, 211319782, 50123668, 332031215, 293223168, 825348093, 26222810, 223425044, 202486715, 167273691, 600758107, 944288526, 601481445, 155341744, 233933696, 393982232, 83469708, 231813162, 201159106, 190285847, 781679546, 403208915, 35573025, 412615539, 655358918, 395868698, 122754477, 438888869, 360992373, 540809383, 79424914, 187617632, 67768582, 162640257, 333594824, 659323716, 116903066, 449810997, 5631726, 467645029, 467645029, 790494192, 114238893, 542928220, 86896628, 29937359, 616199985, 694831525, 113163663, 492128646, 72842177, 10677667, 294510870, 294510870, 383738033, 142499049, 84653958, 347242875, 40397936, 577867378, 684722096, 107161219, 595548282, 408882119, 340428238, 217523244, 331773478, 763823472, 291443403, 696901707, 392207284, 146140857, 231688811, 231095324, 17560128, 126119621, 658074095, 355499057, 256069515, 55857556, 79027859, 44721902, 570944507, 406900747, 273477690, 271493103, 245502149, 85288485, 5968369, 391891367, 391891367, 319853671, 44008296, 726334461, 722001875, 564156754, 74269917, 54242684, 70963800, 560501755, 666765736, 722498266, 14231261, 389997309, 467182312, 914630527, 226476221, 517025666, 611370920, 516367734, 244097949, 48724144, 419397185, 581150224, 91914156, 422775245, 480276507, 60980534, 565996438, 277836574, 157278762, 122497795, 765657771, 362739139, 436755240, 228819742, 12830763, 113250507, 216891392, 86596390, 516930640, 313727375, 14641205, 156252680, 419490434, 226290436, 69641663, 408228344, 498033708, 305922090, 198290812, 832888510, 424759786, 235369302, 188828215, 162938259, 203273399, 381521004, 234571758, 797596743, 889623614, 116030321, 693985170, 607191627, 299042616, 315948748, 213363596, 411286926, 251831242, 214169083, 357965663, 28914046, 326858114, 145529694, 55726123, 258546237, 163722440, 171577033, 694373623, 814262293, 391639193, 245024326, 151850493, 828621532, 558033833, 9772792, 537580243, 537580243, 748647873, 269581328, 273060038, 38654639, 719932658, 34516810, 16873621, 302232139, 43067615, 195159466, 571287709, 185737555, 311423380, 405699590, 236694890, 627400441, 398111059, 269848865, 244130923, 58795231, 130198141, 242323738, 132713693, 215676781, 263425730, 268243269, 229342662, 19701117, 273428129, 45629298, 75743493, 545611793, 187751152, 158159688, 44565380, 567460206, 236558802, 337270661, 739542394, 11471221, 788844130, 556808834, 249861183, 638341179, 412334951, 94063408, 397551362, 12815946, 249791567, 516796209, 347540354, 480212512, 135949609, 114407631, 609923914, 599851650, 691835743, 71280161, 656760502, 126311999, 114773948, 72549915, 234892165, 264412497, 464870349, 529497507, 32168304, 34142645, 384609394, 601900979, 242651206, 124884555, 294885357, 373790794, 679053382, 176564832, 94485109, 468701667, 669002585, 64900377, 234414369, 127999279, 226055014, 359275010, 44805504, 600235513, 354392942, 287281851, 538186072, 96987434, 709973508, 496424464, 472836779, 398185535, 235560933, 273253233, 320438011, 440450145, 194248094, 581414564, 220516609, 171163708, 702483387, 825686946, 532748330, 375192210, 92386623, 541623760, 326435698, 90073351, 543933601, 381279936, 370392707, 20622786, 42426979, 556286266, 86149323, 4571467, 112908817, 112908817, 537055040, 464057476, 298598787, 183169892, 89134726, 73386263, 52093939, 219673368, 627499870, 374859229, 313932095, 27839916, 142126851, 419707162, 746478795, 405413692, 119714822, 281584281, 19001470, 123304345, 380809251, 108459636, 13640857, 214879048, 674421342, 460129956, 140013639, 313951730, 93055746, 564847867, 348407349, 355426324, 650255645, 560859323, 306821025, 270122946, 160305717, 673702817, 23740384, 274786209, 203452566, 203742720, 647444128, 678345104, 122940052, 51102539, 204021386, 549736388, 411586088, 145615721, 8648005, 92456041, 92456041, 214319646, 333470312, 894061185, 781654034, 599222246, 435455865, 383677735, 364126790, 148677401, 297194808, 822940035, 683462492, 128712086, 1677891, 167234094, 165556203, 868487318, 423342258, 65518601, 115202364, 33055360, 3675085, 310175081, 306499996, 533467727, 167314744, 25140006, 640357514, 149194825, 220668878, 366819861, 172659312, 251433741, 390600003, 615910402, 28429728, 337847392, 22095028, 65112165, 187538303, 502901363, 56995338, 252508117, 83668430, 271056191, 116712257, 252246074, 181007649, 250480408, 258747802, 138394895, 497561580, 927625174, 823375125, 758490360, 60014228, 644837071, 615730541, 541976589, 230075074, 794301810, 230205490, 491662336, 468276950, 509072280, 105494225, 276476622, 101388941, 116886616, 9242714, 623509414, 614266700, 860244199, 302151752, 375915951, 302418993, 71111429, 79730054, 49898574, 241120858, 84460078, 577633152, 285284986, 102199465, 92497236, 363224544, 380379517, 697153197, 454232598, 72815717, 8772339, 381934036, 373161697, 695394160, 845574572, 62968650, 84757270, 84652559, 75515511, 483841239, 221841122, 355073342, 34229858, 292887286, 281031672, 213243055, 1748502, 39766492, 38017990, 201788285, 25736634, 565217726, 174733050, 290470669, 381063751, 661920434, 27437606, 215610257, 350764341, 579118828, 487162419, 202587402, 37913549, 507523533, 433384439, 397906429, 723418374, 24887616, 506523811, 627119346, 879116890, 205720586, 479555181, 111136998, 562321633, 431129569, 671200805, 858004479, 487911042, 530566463, 741654131, 118953073, 171716834, 166306892, 568681030, 94220172, 934478623, 224203096, 674315068, 156545188, 487083687, 506123575, 564476618, 220384602, 432247193, 441661813, 40475949, 240980669, 665483397, 112222268, 598036435, 65812664, 137345224, 389526816, 438085507, 155367438, 25860398, 264330838, 342214622, 484973299, 564075584, 404262561, 183691535, 247439847, 674759264, 223065940, 238399938, 516261565, 3484089, 629794418, 629794418, 336954203, 255170519, 609431037, 529041132, 710199485, 157395546, 220704404, 542916338, 196761349, 224100540, 664114840, 202608947, 119917463, 655523930, 167714286, 479088664, 4632887, 163594606, 158961719, 51828711, 315810099, 243204716, 799421804, 841249225, 143197072, 639606761, 480556625, 9147666, 153808037, 144660371, 181647249, 153773870, 484310504, 230273654, 45188241, 304129127, 8354846, 9009091, 757665112, 654245, 757665112, 757665112, 302483520, 157209384, 509651024, 712849096, 35527086, 570839817, 654955779, 341151378, 333061882, 557417837, 298787178, 221402327, 842616655, 166943360, 126847012, 319640435, 907259180, 238178387, 63579010, 547378317, 330169979, 240058053, 315682403, 652928000, 355378535, 277287921, 790253167, 774232239, 750309651, 459143792, 471465544, 400241273, 48931610, 292295517, 188984110, 432971638, 215748457, 333677677, 215693988, 478095545, 15207670, 72280849, 115814864, 268424798, 373754054, 616340363, 216376449, 142161121, 18725973, 59111940, 224347728, 726873989, 25278710, 50956871, 109942667, 106836749, 400672470, 385973174, 202871494, 394162680, 833935119, 169502932, 76488212, 163172619, 103354958, 324857391, 371869096, 290561126, 144330061, 744378443, 264686276, 15686584, 113079698, 508879179, 374992782, 150150965, 603621041, 73181949, 127018570, 318925715, 64422701, 196977360, 743307186, 517788121, 125127268, 149958313, 238966464, 613048082, 343476792, 384020507, 377618589, 710751622, 116938420, 484654525, 731010670, 171615441, 259069592, 21649243, 156299046, 263442447, 89336157, 284863527, 592597129, 108684728, 93405466, 110442606, 780338872, 596326656, 370030739, 412209376, 943831617, 304238025, 71938151, 510311801, 308744787, 457064020, 909921188, 179239302, 78797858, 514704026, 187309611, 838756742, 281725250, 344480466, 70638577, 240018466, 254114680, 512025595, 19511055, 110848287, 273489524, 318130632, 658110409, 590602904, 135147318, 499544337, 120722486, 268075885, 444408478, 76598650, 255893854, 519180968, 240158850, 413638442, 44433, 422876679, 422876679, 438436068, 716282507, 422046860, 166044674, 213732154, 31205859, 900399107, 525246573, 17264433, 322893573, 73701699, 48038145, 165765165, 255949104, 92975949, 251605913, 464537625, 418040836, 136532936, 84327597, 836907925, 539514963, 440901880, 511378870, 105781738, 4116776, 240245939, 240245939, 200329313, 25172503, 281195525, 543420605, 15705578, 494877131, 331537265, 354814564, 285594023, 107386247, 317133612, 213160271, 107321370, 364891669, 733723511, 444638888, 164031262, 114386543, 594676399, 544587862, 260145925, 548982110, 165183777, 509175478, 431767281, 211719383, 386154448, 355171077, 209343316, 462843423, 116275376, 483087730, 241012586, 674205734, 184012350, 527781, 51462787, 51462787, 627716169, 453096565, 18750923, 202124622, 571847143, 371242293, 64851952, 276345546, 133408295, 287286412, 398655901, 507874450, 928958239, 601143431, 351762041, 299406913, 539446739, 669178162, 388725422, 248697514, 848882328, 743297831, 255423788, 162109695, 571968778, 592923150, 198396512, 501255118, 776208230, 595227284, 713813536, 297140553, 186351446, 137901348, 742513037, 468412777, 591165676, 889757142, 810248197, 622258289, 28739625, 756842169, 524568725, 14009939, 384399492, 140737267, 311137366, 833491448, 707547839, 91882641, 48602613, 883138981, 223805798, 402167401, 348891891, 78021107, 876031498, 67579518, 55912170, 61721883, 98079929, 590261806, 222209534, 318753995, 67447163, 497062474, 54595600, 178201572, 796859496, 14504338, 696525528, 109517919, 651551380, 617657500, 376310241, 228568328, 244824670, 487714565, 428305847, 363239845, 100702844, 211638131, 203257166, 117677727, 521022885, 740580815, 303958156, 224596860, 376314989, 51444691, 176064718, 146536897, 9322790, 208570861, 199248071, 394135721, 898717745, 38763241, 484783823, 382528656, 372979957, 308806685, 345944990, 137241095, 89219925, 37525164, 198312199, 113893477, 166328299, 403202561, 468873359, 149473536, 579368366, 546632734, 223479399, 363101741, 319045773, 265808476, 773193700, 679474450, 154012512, 575715303, 53363277, 270006939, 632475699, 452657602, 224412918, 116205350, 76346916, 397851183, 799789558, 746229079, 587167463, 159406700, 231149828, 385072435, 115798386, 368991114, 375666248, 182780262, 431937983, 247750868, 476258213, 221058004, 525262978, 345142145, 240516400, 569547982, 71460621, 484084348, 111387167, 145406480, 204901335, 695653619, 795727443, 700430509, 10609022, 489390547, 478781525, 116995079, 403548177, 16987873, 253656406, 460729904, 448598363, 825473897, 840614128, 424597740, 319218380, 278265816, 318672136, 240884701, 15607225, 179730323, 641352120, 571038749, 358243028, 213419958, 254510413, 118863186, 434128946, 520226295, 307365057, 775760002, 261011922, 371081837, 432530986, 502866591, 428648559, 323675347, 14625403, 180199543, 176841738, 182781858, 251273231, 670386204, 275339392, 169351122, 263546116, 229380221, 252601991, 536690033, 126665206, 699395730, 472860935, 454195824, 374093762, 365844069, 437612580, 185175767, 6138068, 62553220, 56415152, 47537100, 704729244, 704222075, 750587448, 527714751, 10351123, 93494389, 93494389, 738210910, 272730968, 261256209, 291595717, 465137409, 540454674, 685176988, 41751117, 423310891, 204028660, 235697402, 111305022, 427793885, 60204018, 523462490, 58081435, 223568825, 735252500, 99472002, 311050894, 133508054, 44745220, 205201744, 528413652, 297115511, 72622780, 335795622, 430499140, 114268824, 37375608, 213045357, 885471538, 358078262, 432351482, 162475030, 171818572, 358837781, 405127946, 761212313, 572866106, 555272337, 267990380, 453585869, 374385416, 309403114, 641052026, 54452922, 539569559, 132198991, 352293521, 738205357, 694119735, 738396624, 756580307, 153227957, 66678668, 713480, 140714658, 140001178, 439717883, 162087057, 222340224, 169418534, 23301589, 20117211, 263866354, 261176379, 50670138, 425612434, 140022830, 240671552, 180050272, 62726656, 189359630, 248973675, 436190479, 652233094, 146229913, 549991194, 125162509, 251766889, 526499330, 403107202, 515728930, 120908249, 352731752, 361290401, 123785645, 666160998, 922677656, 299667053, 41500388, 59232241, 250630274, 156893981, 103174591, 232140969, 241930230, 250504681, 619220806, 31197382, 589160860, 13087580, 53774130, 19836723, 497252789, 531221353, 406598151, 114704794, 254833269, 433018249, 387517153, 84936102, 608390367, 202250695, 166711295, 6643384, 296291696, 289648312, 753977713, 627927937, 297176049, 110649133, 268873988, 78020724, 94678125, 94637227, 17095920, 114388551, 76949593, 274137443, 158431454, 497139968, 7044666, 312526476, 305481810, 202705843, 137427187, 52946562, 230890906, 183461589, 48224065, 417310712, 771296297, 543694931, 270700308, 319733141, 542405317, 576267762, 751004773, 95358253, 816285849, 512308107, 258364741, 90389170, 238428227, 154801394, 170807062, 59761055, 124670846, 200596831, 72269650, 356468150, 258729796, 144028675, 281662193, 82322171, 296130334, 47492027, 712203422, 205569448, 22617283, 449912225, 612888363, 200870810, 631294241, 665031325, 729766199, 7682189, 897136281, 889454092, 624847734, 613767190, 51744457, 78975421, 641309750, 185996918, 320026755, 311713196, 431345780, 981150774, 588687064, 307852428, 443297087, 381738264, 116697690, 183954544, 348845859, 502191749, 151896346, 13469724, 2134350, 644909772, 644909772, 7400900, 573673961, 566273061, 426662433, 217264445, 136021105, 353749637, 547103113, 347733634, 289831155, 85190805, 73359604, 658351740, 139705547, 541947960, 336699117, 468064106, 162906926, 129791499, 35258886, 648950642, 72659213, 574508831, 97040632, 413610101, 12657274, 170245454, 321056168, 319276367, 195455343, 211219263, 254832015, 48630041, 354189698, 320857636, 167379320, 126603847, 363936525, 591682218, 419031170, 17345613, 296423582, 711000008, 608622951, 660317323, 437907066, 437926364, 116054014, 385921906, 307083884, 438852765, 263457770, 439379533, 220451054, 47286518, 637302544, 782189132, 318185135, 61919386, 178908913, 169693357, 142100758, 82229430, 457877304, 840112470, 267761965, 493406936, 26611467, 711888236, 720288112, 753496009, 751847631, 788956947, 930029658, 211710223, 577926410, 432835407, 212611074, 627920547, 106387197, 241124959, 82982752, 313011159, 65800958, 612679240, 81140828, 274321496, 872892522, 243086088, 395790590, 665165941, 717648176, 316141843, 235306335, 678214168, 112720035, 94602915, 694073946, 108401173, 70359346, 385871773, 281360440, 541796686, 99103585, 881193978, 577840342, 534535161, 54161116, 453492242, 186475971, 173780509, 304712880, 382507582, 198839419, 216032278, 124046216, 139471536, 287454184, 240634901, 347713923, 184320554, 47847909, 549182551, 121368499, 624790961, 820497069, 128181092, 653233583, 67202075, 598601190, 80977987, 899361408, 578603487, 326431646, 600898426, 174846770, 468689408, 457972663, 56013559, 28240544, 15583614, 377852990, 173079198, 705892583, 361571177, 341368122, 76522592, 35159414, 194737145, 85350930, 7098271, 98244510, 91146239, 429998750, 108248306, 287745026, 8416517, 368968281, 368968281, 582973415, 841287131, 80097988, 714941793, 155067684, 726272899, 719537946, 60459559, 383233019, 158732913, 195262432, 436796748, 535695753, 251562066, 689412232, 456218209, 408961804, 401755826, 486146275, 54091844, 864926504, 237805065, 652043411, 656006204, 420546950, 621353067, 902569390, 187696211, 560876795, 20175511, 374044522, 501596629, 79263871, 661887221, 598834977, 385986202, 474203514, 692671263, 151289578, 251341936, 39221615, 157764924, 86435856, 404454766, 124968736, 773428417, 11310520, 416894610, 88606376, 216974841, 445247511, 376500471, 69287602, 210021847, 245805091, 268805958, 541397065, 554043519, 701574227, 120857590, 587462181, 554465257, 305337045, 173101657, 422965406, 835500307, 117953868, 544159314, 19212476, 433112788, 911686450, 324184306, 55894608, 57273140, 436952680, 106532359, 78625972, 622548388, 589064627, 60251267, 101513155, 237032941, 903792611, 255276881, 168745534, 694410988, 642577226, 738820644, 425727767, 327755097, 727205337, 85404525, 742428479, 8568998, 285367264, 285367264, 69480585, 423843078, 90434020, 143802162, 98228758, 235847292, 854342974, 786795357, 106849228, 226028188, 114737614, 394094310, 521806439, 713992838, 288238362, 21428411, 281821644, 619736296, 618700170, 222154519, 55688489, 284440938, 389510769, 262252649, 120089317, 254312838, 712890718, 136553644, 514387194, 329657248, 472582807, 250306087, 164126300, 97394418, 506309958, 635884694, 807249148, 346144442, 429082342, 893089560, 287317572, 258797036, 62372819, 413541661, 492762431, 106642109, 300375104, 507086398, 547294581, 532541765, 660306358, 16487174, 597450335, 636394113, 705508382, 447095934, 322179199, 777024002, 313801822, 144187602, 526349377, 126196299, 213664416, 298479079, 322925114, 92760092, 328509641, 574101139, 109497409, 281403820, 133511243, 438841135, 630610154, 572857418, 165072117, 2022556, 649257844, 647235288, 853238956, 254604531, 487784248, 327350765, 340608750, 143035249, 400041519, 247947334, 900895034, 413522974, 113447645, 81966175, 260676749, 108922353, 264687390, 579288808, 882272881, 817453254, 603001461, 103798559, 549493803, 137057464, 132090829, 177387483, 266884795, 725274057, 94310815, 701429970, 737787352, 187026406, 58237830, 85513906, 683562819, 529626203, 43754819, 356448736, 138669740, 410808405, 126673990, 583442500, 945360803, 229743122, 266896351, 315022341, 746166770, 739883666, 268289919, 458937506, 233381668, 721203182, 549925623, 253660834, 808451790, 390984995, 353924588, 147419273, 639496724, 399856263, 536663952, 918042203, 929563246, 31123194, 278863713, 240363598, 881452413, 52177086, 63268624, 184680894, 23624099, 245481198, 729533782, 341577556, 223828373, 477370980, 471516781, 626664796, 753920186, 113865031, 508531532, 216687462, 245724643, 86413829, 539215508, 660604619, 688491049, 193278963, 302284900, 68918814, 139769122, 268229068, 244430957, 480170877, 156301554, 216723338, 406973587, 171918188, 10830854, 580022765, 569191911, 667263113, 493260642, 173250744, 599690757, 74427246, 63687643, 706607372, 101911465, 44549085, 244875482, 276626701, 97217271, 225376183, 164000983, 742928544, 298270959, 26327749, 458947589, 620515058, 90609946, 610844367, 253206691, 381820225, 55929942, 107547280, 33906756, 257046247, 295000565, 466222391, 37394289, 145794827, 130019679, 239106971, 265329369, 307749171, 247194141, 210919818, 26085107, 53261522, 536812370, 723605076, 25843661, 10876096, 425873664, 414997568, 555632439, 727070939, 191965901, 236485552, 284496279, 547483544, 655594673, 421521348, 101083893, 167229812, 460311007, 289745507, 696768646, 812684253, 54395517, 685408198, 375386054, 401376617, 185134237, 164809302, 113753607, 257149041, 10006627, 393524553, 393524553, 158911432, 576707741, 723102482, 558515746, 256774191, 577244690, 611543194, 563923770, 80926093, 427056974, 77549830, 493809340, 46084108, 398886998, 392844989, 576854966, 116687059, 169656247, 99208958, 395727411, 65759544, 153916200, 443336308, 38278653, 59429299, 38797218, 171495751, 102393102, 378622895, 817842503, 228644382, 388854113, 216107626, 134901190, 477494360, 83928205, 260556952, 17074595, 594920605, 753993977, 238575885, 174864193, 432701936, 743315432, 420269802, 100546703, 340012703, 546219616, 120559816, 587756114, 101564698, 402322290, 314598600, 26321281, 548316748, 564520077, 84308107, 613779784, 136016148, 144942011, 535415920, 78887159, 27769630, 255376220, 476546925, 290460767, 670372022, 309734145, 121886113, 62253700, 360598767, 104035015, 7548076, 512834521, 505286445, 80219090, 33816291, 189219029, 584762162, 287815885, 25020799, 148597169, 70818206, 480193183, 747118540, 216464618, 475120294, 552336177, 405212770, 220355873, 482751376, 364992506, 134661920, 816808112, 520295325, 254873792, 286717967, 90138208, 544517098, 632311991, 71402590, 90770947, 92193631, 621731861, 61888767, 359316517, 187437893, 596232792, 776183816, 729592462, 820709262, 547278681, 298226201, 209803385, 344429941, 353385442, 699494318, 100353238, 383786692, 435140026, 37492986, 77609822, 497946882, 318366821, 197218655, 26051265, 235843836, 509853394, 715820613, 132668420, 40437276, 520141219, 826380107, 532060317, 25032251, 217862747, 781048649, 386299909, 444168342, 623010219, 567472313, 775326502, 49968105, 726338194, 794422315, 55447898, 763977825, 42839235, 760475132, 736101712, 399225842, 113452473, 350514249, 46355146, 680162222, 405251204, 354668490, 567664127, 144837217, 285869565, 300891148, 327503687, 133266564, 361032905, 77507436, 245822206, 78483087, 314037070, 411624101, 89873585, 208873087, 368683027, 96048161, 166566538, 221063266, 496157145, 246568656, 392139701, 157422503, 11932714, 43419827, 215511341, 63315353, 116262580, 707771170, 407222001, 597294621, 58023793, 820000827, 258149391, 141330011, 19511629, 507704127, 18715528, 128383306, 338974645, 49821776, 323662136, 516830120, 120632673, 46241303, 77328125, 392622036, 225177611, 487456898, 312427019, 178165555, 45609420, 134504071, 452144343, 359674345, 336653028, 38785424, 191681838, 106193182, 303114015, 514512326, 36883060, 48451434, 884173831, 459520670, 228176718, 665082126, 282013296, 475293382, 196028211, 613719024, 381270240, 239581237, 542604982, 34877791, 289208304, 648963328, 470438759, 273646022, 567423704, 123305035, 616133878, 709969609, 514756000, 238952076, 246793235, 646943307, 632907261, 18155406, 867600560, 831327261, 162401481, 10711530, 578161632, 578161632, 664552372, 487766672, 547355548, 461295610, 287776782, 537517509, 208581688, 845951965, 389930860, 159896090, 135591696, 648525361, 32345908, 829185594, 906523064, 217527652, 299614360, 332334091, 115098338, 351356039, 122093991, 32108183, 75316423, 801584745, 359136697, 353379106, 675297883, 781727195, 106299082, 21381930, 829708665, 451707227, 128418886, 21634873, 157551371, 210026346, 682990840, 148646275, 641987133, 249163548, 433279178, 82777569, 759907501, 356753137, 384481397, 322771624, 84501692, 49988906, 478249311, 629591273, 629131759, 649241095, 105255571, 154101752, 469418602, 228645323, 609175723, 339100053, 763633821, 103587642, 640924711, 12507549, 601260803, 27442786, 545752432, 11521033, 192268374, 386464402, 841651536, 821556976, 59989251, 462963123, 296900865, 641380151, 603130562, 146138432, 86725808, 394240287, 96822722, 455619015, 179670095, 233164963, 379447782, 357540374, 374931346, 340923988, 129218375, 88948547, 361359613, 509625094, 497815767, 20167124, 222188348, 818405497, 36072, 462023652, 462023652, 117847821, 194454312, 282551089, 392035633, 689980158, 272903916, 522579149, 139129457, 679217653, 685089039, 429578092, 176344722, 133696321, 700963642, 405356594, 73248185, 401349876, 13528923, 435539, 24010293, 23574754, 493658679, 294184631, 48470935, 43194431, 294749284, 332080483, 368650238, 256210414, 329830825, 380973260, 213520160, 406272970, 310878693, 351176662, 354370005, 605282242, 625837166, 667300419, 29140177, 464465557, 231821315, 736726607, 641857430, 897522405, 943983230, 284684793, 35123454, 270275099, 24167425, 848781880, 775414001, 165820381, 207282163, 542510016, 28248285, 393810179, 349975256, 244996997, 78525993, 184136708, 349393018, 307758476, 625571195, 59200097, 147650347, 623421053, 333379134, 285111411, 13283558, 22853873, 799646705, 384725510, 153423367, 478182167, 455375712, 80635683, 300635948, 297197726, 324749737, 303879738, 360360494, 642549382, 196667749, 658593273, 362400232, 370520207, 27680772, 268084204, 34404170, 441934221, 2925649, 541797324, 538871675, 279583105, 506672998, 497747727, 138658055, 7665044, 141096459, 133431415, 44533975, 556330654, 451674420, 560905422, 636301984, 321404896, 432161980, 647537227, 78936192, 676010051, 21659, 153871634, 153871634, 640617594, 239558533, 11645387, 161452495, 320224561, 238487254, 132447217, 497616171, 344831717, 168346027, 296188624, 301016141, 303339163, 695815333, 36850120, 426177778, 344228288, 329229148, 81607742, 180730403, 47748504, 712473923, 73570886, 742992602, 494473018, 222796539, 116651368, 248237281, 320019599, 221056703, 325247232, 339438401, 68782365, 75370364, 85914084, 51695069, 339479838, 540713783, 147837345, 165462791, 253984606, 347989728, 53430581, 341482903, 342457198, 304624776, 193667443, 251124805, 411046146, 415894120, 36811472, 157092550, 1654253, 551372353, 551372353, 128924774, 155202319, 195285880, 884632604, 13619336, 464659564, 47057332, 15044727, 125758547, 278575005, 752324642, 89353619, 110981445, 99981578, 44456359, 207489002, 289796117, 122009401, 429138413, 383847460, 509139772, 287592359, 531579479, 691092348, 726759799, 188605865, 434042469, 224559476, 295679258, 797093519, 914452668, 656864808, 46368579, 33390692, 362889875, 174571774, 330809904, 267360417, 68707801, 37073712, 518597006, 381872200, 201948404, 238073367, 182390077, 795345487, 783009994, 858518796, 367704574, 77272943, 144201651, 22570829, 360188413, 110635773, 276251541, 136959129, 752000967, 555504597, 193176570, 506353745, 155629918, 685664369, 432088173, 8377789, 283122505, 274744716, 15416535, 261319931, 160966826, 91431925, 430232031, 50329973, 64396164, 368330052, 568908250, 558543437, 405769260, 219055116, 252242464, 624240169, 554780904, 554251953, 725602501, 704812361, 95369899, 644727077, 449037800, 777973682, 587185473, 300096057, 346634527, 208353073, 251812034, 155519041, 279387627, 3205813, 215040914, 215040914, 43722737, 450133718, 458127906, 484327902, 510571978, 853276040, 229461146, 63957591, 81623726, 63265216, 307721171, 294785687, 341676689, 151768986, 561066952, 13799004, 133971804, 297246503, 543655003, 150085478, 564892216, 69101614, 489111703, 541238212, 89861716, 56064278, 404904663, 34762526, 471947258, 487697316, 830752138, 446656800, 190878743, 555978814, 311019958, 216661368, 269855592, 458861992, 230734802, 682307049, 225228293, 376986930, 683285337, 622451534, 113216397, 501562150, 487873898, 221794830, 666525212, 99926677, 469830039, 193961806, 34926760, 258342542, 249904071, 676308268, 26433081, 92213100, 67652157, 663278917, 196732330, 425161982, 53081647, 90438895, 3009239, 423941652, 423941652, 20579042, 365138521, 712203487, 208087128, 118511461, 107758914, 22359648, 347967132, 793261748, 932246456, 490967507, 90923526, 79276610, 8072397, 524911281, 524911281, 915079644, 421967542, 232291918, 144391952, 47249020, 5646111, 503833621, 503833621, 66792252, 48926498, 807654434, 887334930, 18241946, 423313995, 271017044, 220656689, 527914400, 138862212, 213850943, 58310300, 173037253, 366241436, 100688359, 7968625, 767205647, 767205647, 230269694, 38500491, 678572571, 48597573, 509909817, 336439322, 322062062, 270186465, 199324832, 175869270, 131583199, 399222117, 672333326, 862046731, 255090347, 106579852, 19562840, 483006528, 541902584, 110455800, 138091509, 141146771, 236671101, 156881925, 386797578, 231246399, 301006942, 616440141, 170806023, 157779364, 350301415, 143101364, 398962512, 180188586, 49691298, 174342369, 773149804, 881090518, 28555051, 547241363, 279925327, 489139223, 378214575, 481215081, 182829688, 414954045, 649525975, 528664684, 437806092, 461209607, 383372057, 57699860, 114016846, 401919841, 89984633, 103696461, 82354826, 805758300, 276273304, 458090828, 31067617, 384614819, 205620057, 284328672, 634248998, 739402601, 226676493, 191476048, 128583607, 540557013, 206582784, 35498699, 739586714, 29358569, 71624845, 448148915, 74423980, 297438661, 56580394, 44258099, 22233226, 215674137, 237693041, 433696002, 583862020, 149646109, 148570573, 387244087, 55668015, 448448843, 250410786, 19824140, 152327612, 129450243, 713986104, 104596787, 368816949, 493310307, 751654611, 200830311, 391740919, 555916053, 898221546, 713732270, 204684883, 151844828, 418750930, 262490296, 1349849, 55852703, 55852703, 367191478, 101037702, 217677154, 105789140, 13647732, 149420872, 37301532, 169106819, 434489482, 83325741, 703619526, 629323968, 384580863, 126014924, 77175117, 161183839, 237735623, 538988025, 222191757, 19191588, 166769652, 727593344, 81822383, 464474889, 272015381, 4724152, 504887169, 504887169, 426282653, 307097404, 96717115, 449144118, 381723836, 287971664, 61281081, 43126779, 445275337, 320962750, 47313134, 180415035, 228582924, 74973646, 114060801, 198931492, 5756986, 274592328, 268835342, 402221077, 948374859, 109127772, 754393853, 442240080, 324091147, 228984338, 35523188, 655485176, 136635645, 703415366, 145866261, 60639309, 618260370, 70843729, 841959914, 844455474, 714133355, 792175461, 637465883, 97446028, 502842126, 64160794, 64157216, 113452215, 531987188, 397689436, 86582725, 633345412, 33605137, 80881405, 15344260, 105814825, 110711933, 575232640, 667610152, 371901333, 284506452, 126751782, 308551632, 783978898, 34323568, 503696771, 248250698, 176329863, 622461468, 144331661, 495498240, 273147070, 27927631, 471587053, 128853583, 369098393, 462036439, 300812224, 156775331, 24813862, 67834887, 324316191, 49855234, 91313074, 281035528, 272335795, 605464941, 143684661, 322323022, 290529718, 430359490, 41747767, 390443738, 103113655, 181769859, 548523874, 275931062, 427090522, 357988768, 307031455, 810948138, 241864348, 318337057, 914840697, 839144891, 509693875, 99434649, 709885181, 116381239, 23437202, 486256234, 531090684, 562348591, 33453290, 619702504, 229779089, 203824202, 418897833, 619674038, 222814751, 267202419, 238636681, 306413711, 149585949, 231966034, 67586491, 261487215, 212260903, 119113543, 493455100, 32362777, 417817483, 946205188, 844455488, 90701188, 694901408, 435936017, 47449475, 129921927, 146722767, 306841792, 70747698, 714400895, 8791321, 503051840, 503051840, 102172861, 438040074, 448246129, 156760626, 149614179, 442476641, 935683556, 237147764, 593189134, 371536447, 114591351, 7593541, 406781108, 406781108, 450260296, 93862175, 481108638, 101363398, 517788622, 106199761, 39106093, 105309049, 263543563, 722939407, 59660097, 286285320, 35933048, 206980303, 42494115, 100190911, 96040167, 272826191, 456442414, 429181292, 10657742, 448490414, 448490414, 372226917, 19164997, 287138641, 224663763, 218788842, 116929567, 16614809, 378961821, 630995004, 32981898, 126108174, 715568597, 8532218, 140630019, 132097801, 421287743, 304948888, 282004623, 254359925, 684561168, 585549607, 48494650, 416672906, 462193952, 123479855, 157370630, 234629506, 239735087, 463813277, 11645719, 643916072, 150889820, 59732053, 216699218, 791701086, 43615696, 756693410, 809953868, 15078441, 569448841, 201558604, 100899408, 366758276, 157309208, 47325186, 131953241, 607873863, 267370922, 638451959, 109317671, 68961625, 467822542, 250413944, 321617816, 463814356, 834201489, 15524697, 670289060, 180784011, 528981436, 289289388, 310948720, 231328105, 566165902, 233694636, 291550622, 349921451, 177875129, 609638252, 346064812, 376580252, 668826420, 314794981, 269564519, 27191110, 238707955, 549795767, 462922126, 744258240, 519246272, 44690891, 378551682, 740364860, 341904669, 427475668, 857175610, 43493485, 765220365, 616589288, 262985898, 76356217, 22842170, 253214951, 426840961, 436343812, 257080951, 190621022, 564982022, 270938468, 151101175, 827708045, 888382506, 389413719, 172288444, 118854154, 164400358, 56520284, 46619656, 163728238, 48218960, 384147515, 819413625, 133650724, 414432891, 565654373, 104962972, 582095355, 243949660, 421504299, 469383657, 286076252, 329294243, 2695388, 838087319, 835391931, 807894015, 77003151, 251704175, 533883324, 682570486, 742147662, 408244668, 331207467, 87567415, 423617540, 619069748, 269517846, 9974916, 339977452, 330002536, 177218630, 237332368, 149962464, 576990497, 92874259, 25639086, 540357267, 201296720, 692260194, 634252127, 540025168, 37030021, 508917970, 190925622, 298490475, 370394166, 537133616, 623273075, 277414311, 4112968, 707020272, 702907304, 251063601, 233100245, 88202753, 288282078, 266405467, 351129794, 123791916, 252625279, 265696068, 203214556, 643279242, 492516708, 328724677, 109865343, 186631815, 199429540, 654883265, 606930303, 552647767, 76733200, 888696595, 595472133, 348708199, 14544623, 480608144, 553802940, 55609734, 8963556, 667820448, 667820448, 863578142, 70086869, 580668020, 645004557, 299990604, 369959658, 4547980, 577715653, 573167673, 219823828, 668170712, 643193591, 586522119, 670200757, 50942539, 418146562, 16698483, 426782957, 472861049, 265096932, 411572156, 4930690, 179686844, 179686844, 338978377, 165499686, 320583109, 685126166, 72453652, 194780106, 208087556, 741779750, 801713133, 365730725, 564726812, 397101256, 462450354, 886723522, 170094639, 650170252, 195966169, 563480928, 43659241, 32078257, 303792428, 56004217, 17591218, 480136642, 54250650, 489082903, 222812393, 171240023, 408855308, 250371073, 148248967, 508388003, 134330322, 267489838, 84812313, 184267023, 169104498, 225290046, 43162321, 598588896, 98594342, 48423798, 489999250, 291711894, 166314827, 348517790, 377677060, 379085407, 81252500, 167031142, 218403926, 284368621, 89174603, 717377305, 457880669, 556917551, 645724958, 564446060, 370135584, 393802934, 8562294, 768802604, 760240310, 8428917, 21291274, 21291274, 51348740, 27234276, 83103979, 255266092, 433001983, 396108016, 415230898, 377656186, 38259516, 628268287, 71277413, 637159170, 271321619, 44301013, 369197905, 122228079, 184618416, 595930615, 387033003, 299602360, 449555139, 341098479, 265722873, 52284719, 344730266, 420239886, 568018731, 646549370, 470097547, 592824851, 395996454, 441725788, 836518448, 415470965, 242211509, 170628033, 358249680, 77704605, 317729681, 373759559, 139574252, 68530591, 54648211, 719814256, 236103732, 14618116, 61059695, 215621221, 331063710, 124997302, 3027699, 237875155, 237875155, 653154029, 313540482, 186180510, 354546047, 664328893, 9630343, 25722619, 25722619, 456031994, 72976884, 639884595, 679408348, 14796591, 573289234, 222426690, 320299560, 374989445, 76941102, 347402535, 605719185, 721495507, 864292870, 319763715, 125572326, 185987014, 87922898, 268841487, 377489491, 183912778, 182467939, 644388784, 316090018, 300839598, 582852265, 123586797, 444505689, 141365462, 83362028, 309571495, 393381521, 164393543, 104747581, 400522719, 209192801, 67701748, 77866101, 609563198, 596232841, 277675584, 874615246, 398357770, 180064160, 356098073, 63920754, 7099973, 115110646, 115110646, 411774570, 47210761, 420946566, 251843760, 904940259, 253624848, 16286259, 45497806, 13993758, 202755075, 217271245, 12234047, 619638867, 399147021, 228593988, 223494960, 87498305, 214549086, 427781411, 163999117, 494449531, 719685815, 592835061, 313816453, 214005674, 21592060, 850565891, 736077514, 307712592, 367926555, 283874672, 266277540, 303479855, 212272452, 43043219, 506213660, 118837932, 53449877, 176868455, 593861678, 508561164, 574610045, 239267553, 223015149, 38669686, 18412055, 45488498, 576752933, 116326940, 118413885, 95958634, 131640558, 363519988, 803973251, 14987250, 484118218, 204459071, 67432614, 260162135, 253781393, 362053415, 30470544, 334043379, 646853663, 489542753, 468086070, 894773385, 497372504, 86542652, 264437647, 841816860, 306216430, 298839355, 786300803, 326610605, 432565014, 195554199, 267743971, 241424011, 689895091, 59782571, 795261682, 840994, 512037451, 511196457, 75885791, 124239133, 12244652, 99398643, 314642907, 241453426, 19884796, 414707424, 287765335, 269902433, 188882570, 282440618, 738383866, 832994493, 79489925, 268520237, 163595701, 416317998, 464327564, 259967868, 216303351, 237316494, 391340738, 30235589, 114030693, 144189290, 490552403, 416444920, 237908366, 410789026, 160754306, 364791390, 421912243, 386090912, 4371987, 184121233, 184121233, 543585348, 585379047, 285289819, 851725105, 545186954, 132984424, 77586800, 19211531, 411593471, 655912403, 160095148, 582788807, 345699484, 225030054, 569969131, 310129138, 126935061, 125288303, 73909470, 401003132, 772282648, 57312633, 9632001, 153778585, 153778585, 137489183, 577635988, 565752545, 378764712, 372350415, 256797923, 416391377, 230275862, 170578755, 281520839, 141660701, 557571569, 129430798, 294709570, 338254156, 56066832, 545943918, 206998642, 186035659, 300542275, 57138546, 368359077, 198792627, 219854917, 567104337, 534314489, 448186886, 218318961, 237568353, 816199875, 134365606, 168994164, 751156032, 220855037, 631962024, 649054793, 893049782, 335743678, 5403027, 349997810, 349997810, 528038657, 206000035, 69032432, 378857406, 342154975, 42463618, 7607823, 130298249, 122690426, 507718336, 61938730, 239853543, 536959829, 124016377, 168335881, 430837841, 319586343, 325655432, 700703969, 731397694, 691772660, 255491709, 349868008, 63266497, 218864091, 631355212, 777056725, 631807752, 100709830, 499960375, 417792717, 690509944, 872092911, 421730068, 411063795, 31285924, 474194100, 17691471, 652141824, 19317118, 264838706, 539852464, 399454013, 18131681, 144604822, 350161052, 368021633, 357929344, 614507605, 313836646, 451272166, 558166123, 224820665, 407519013, 61234900, 680773694, 787130947, 51968387, 854483748, 215342394, 63850225, 162675796, 233940476, 257310349, 663035112, 95786354, 360054048, 182615021, 161041432, 146784713, 229307289, 10900477, 80997576, 80997576, 202371352, 9553739, 342070633, 332516894, 124173203, 312422581, 115922872, 138030485, 14484307, 437224293, 114578698, 306605768, 476546766, 166300014, 420577353, 896728829, 966964665, 536948065, 204164420, 630958788, 617444883, 2593723, 555614255, 553020532, 249648310, 505613566, 118842446, 369961940, 139866481, 6653112, 504682859, 498029747, 188589110, 769810659, 735810698, 36015500, 431477304, 549194355, 857375377, 185375987, 493845312, 25269133, 311561480, 298568607, 366184957, 151451936, 392761626, 16740622, 189570029, 413237905, 514822058, 314741633, 831195984, 746460362, 731276997, 230583510, 178702413, 147709697, 60222881, 393685331, 484518127, 6732529, 142058215, 135325686, 831361280, 635629745, 421897773, 183283121, 59314914, 544776117, 282373919, 616637542, 949018212, 364522511, 39633874, 497551025, 31346281, 147667302, 8636543, 94407509, 94407509, 271478883, 366350044, 41567935, 39368129, 589455391, 354811906, 321823620, 156776191, 372380499, 312625970, 626351756, 43022715, 174018816, 314752532, 153096259, 599963717, 760037471, 74277070, 528081262, 385278511, 47949419, 676987157, 211341024, 44555235, 580239662, 101703395, 735578685, 535624405, 625158878, 95093602, 417972309, 449809069, 804874885, 195916811, 90806946, 117931159, 631384402, 227518319, 146649492, 185415440, 427751947, 350983726, 94890992, 325358457, 451287440, 127627914, 51974844, 818608051, 132368112, 142904588, 320427206, 204928573, 204430774, 56544571, 32300670, 132881178, 7976427, 287541718, 279565291, 105829087, 661484469, 140947917, 455815888, 467586432, 153934202, 305677817, 93882323, 167865135, 590379383, 175379972, 512663056, 317963801, 56412421, 179008854, 703109369, 138641361, 193957046, 872691263, 331498206, 228592146, 50159818, 24551317, 213464537, 310030789, 126696038, 512528479, 224726178, 288852550, 514161501, 594886542, 321971675, 385495152, 544024893, 725145491, 71988303, 9840, 22933719, 22933719, 771333557, 810528842, 633510405, 402685612, 60071615, 120567010, 184497021, 565272086, 271948216, 416383507, 613607149, 17773976, 15743165, 169453273, 4942755, 476181025, 476181025, 652281436, 24035698, 320491449, 57132424, 48710012, 294793770, 605407215, 686150708, 132814252, 681319303, 643598654, 380791912, 232619282, 503428539, 246930933, 788517964, 379820902, 92991087, 231177409, 117861739, 711691265, 250756440, 223435912, 203488890, 64454901, 54234964, 258396294, 288616468, 748728403, 380309687, 109164290, 520990963, 112901327, 314093248, 253688533, 107466383, 198815340, 339496366, 621310277, 243317242, 435752173, 43637687, 792432010, 247434697, 271734385, 106850221, 124550536, 360081033, 213702482, 9902693, 438506169, 438506169, 903712051, 767398090, 430088797, 194985382, 128089976, 67125856, 416165573, 277798556, 450054795, 450746893, 76283394, 596347455, 96366347, 478348062, 505421023, 892698037, 615753109, 189965401, 456570927, 707223403, 142060587, 9235178, 76086910, 66851732, 453494647, 175990497, 126254305, 426308071, 424246341, 251956307, 500231726, 332056005, 349838777, 197454580, 37242677, 224420350, 121059580, 311576783, 616527743, 29722038, 115376556, 32211268, 669022638, 822336021, 214996979, 657282593, 748181469, 459225381, 23466426, 214171687, 175791220, 87255280, 193412985, 46661861, 522733006, 914899612, 902390719, 537535785, 147110756, 13271873, 413972015, 144263132, 486157400, 468373641, 466052756, 470413336, 40443484, 50059955, 91672144, 668503495, 173630123, 686862017, 727789517, 71467805, 30193594, 424760764, 114090530, 124401647, 420061476, 603254524, 57690971, 406048082, 457175805, 111634267, 92261192, 26136679, 215870372, 75848335, 271555174, 825074997, 32478697, 110569505, 84375543, 476340363, 550687358, 714500405, 521244464, 372012949, 270294860, 492384714, 291812026, 625613266, 452948173, 143149480, 43379332, 295706247, 251828839, 124385930, 563820027, 163302055, 466921327, 607318932, 477285269, 235178722, 88889893, 229872950, 275440471, 159270602, 51791284, 192582264, 666154250, 536697, 429986443, 429449746, 33605331, 478420662, 677259805, 536802198, 388290381, 218958657, 784998751, 329472695, 197206803, 638702495, 27271425, 48230329, 135120329, 361263518, 397872277, 217807830, 230134370, 10909536, 498389251, 498389251, 950424725, 703375855, 681276697, 175191333, 78203870, 73327392, 88314382, 251161422, 255186057, 7419695, 240357311, 232937616, 148674233, 128489643, 159511850, 667095257, 586011206, 51038067, 357615039, 276928481, 836080092, 26577050, 740650637, 716799720, 435758761, 376784171, 488600950, 64641871, 43526472, 717943880, 468155021, 94838251, 198356949, 236786494, 53840508, 339986366, 478510514, 124097441, 27179131, 50575856, 506870656, 571760808, 355368190, 156570564, 15754693, 335106310, 581718760, 92810049, 47434098, 207389958, 203987713, 300154399, 33575464, 59419752, 156811760, 547547260, 871581700, 765668541, 56232647, 465131322, 684561446, 678559676, 479029992, 120665928, 301619724, 292378419, 251804523, 760073831, 14559215, 725879148, 55724873, 212082911, 238086583, 14289904, 157814442, 775590193, 403587314, 4355743, 356058269, 356058269, 336012334, 308571653, 827933619, 368021212, 245879346, 514449981, 476252569, 123945223, 11679847, 588465645, 415857146, 184277294, 130176572, 171121854, 220323153, 55726998, 321539863, 506046626, 379770846, 191555943, 130907779, 194432584, 508279465, 71449584, 42149241, 370910545, 307691669, 128222344, 252678210, 81144472, 540933844, 19009447, 149076639, 92273438, 55304021, 610191296, 395280568, 531122962, 581001508, 328114034, 449110350, 101938331, 338773355, 310779893, 300997230, 333308238, 570048847, 68074207, 140581350, 88429520, 104280671, 799154724, 454511389, 413595449, 790238385, 745232131, 192784240, 663427831, 508106503, 1202049, 127926563, 127926563, 354073421, 201134866, 523779868, 204160629, 69412209, 18252144, 248636966, 297891761, 163687936, 560189866, 501455291, 175249004, 395149951, 222557989, 42371233, 266881652, 58815139, 368032806, 9381408, 602699582, 602699582, 19870852, 107196283, 752507744, 867810001, 786025438, 71654721, 38952786, 310739855, 525708318, 797961964, 687325006, 520835010, 143673492, 109408368, 11119017, 109262324, 109262324, 528790566, 642764401, 657084750, 304793921, 377645584, 54707531, 334172136, 341524421, 694078054, 744905208, 144199274, 324246061, 103567894, 71728788, 162060321, 504228349, 720230058, 673502832, 426140756, 48554318, 206734, 135755371, 135548637, 20069353, 602769820, 780096583, 421080993, 101641400, 232052400, 524594021, 663894861, 34909610, 145822178, 142850732, 260986402, 65968097, 444665550, 401426259, 87253175, 43789671, 198424437, 803825441, 98341976, 690568770, 425465575, 181502795, 118898122, 27873470, 153981446, 391618194, 864163091, 626826781, 446579616, 627016748, 127371961, 224550232, 568192703, 6285118, 256639958, 250354840, 30548463, 155918702, 446910279, 645497929, 66754066, 260244740, 508009695, 253801275, 386112843, 448140395, 780118776, 290436503, 410232957, 311778218, 32602351, 138482643, 547976277, 351530410, 386532443, 109964000, 238270347, 338497338, 136169568, 138452596, 111439338, 280742355, 748360325, 352149773, 6370639, 441988601, 435617962, 440285692, 259764721, 510920609, 318765151, 496878985, 647336020, 569691506, 527049712, 18607744, 31743767, 375981445, 1924214, 83950602, 82026388, 41807126, 227746205, 3047431, 59344235, 59344235, 797208291, 909042433, 167100319, 408681641, 198680938, 287747423, 89229634, 276780053, 872764063, 555210906, 221964541, 157832774, 82238610, 109264075, 493401272, 178473781, 329454974, 467920189, 91219727, 428328568, 743033301, 17268424, 799344995, 389048518, 86637832, 231765789, 178212576, 484548604, 256981257, 36108904, 847457879, 791678927, 526035340, 131661465, 224491197, 357526220, 653444421, 95059985, 560818760, 509302125, 63727377, 455226024, 849978110, 600700519, 502061631, 745532545, 637164476, 644774000, 119446573, 398271847, 217884692, 303167453, 395906583, 279284095, 121392280, 373770119, 16656350, 661471783, 201398372, 56504822, 579635100, 79200799, 61371131, 310431560, 104490727, 244497795, 350248195, 61302648, 43955393, 160559852, 267674826, 241082295, 69929699, 189855328, 590768463, 185644275, 868038724, 673318015, 158467023, 519122344, 88404446, 181338982, 280861434, 86151601, 631714218, 104033221, 589959706, 88263812, 353023294, 365255230, 241137127, 200294189, 364876976, 138624425, 349585777, 98511322, 650515227, 115425890, 508077141, 525132780, 351342198, 469171424, 234060795, 386182927, 13594548, 98612754, 543258511, 29083915, 142639167, 196067496, 274014596, 92475313, 290469562, 682035585, 18394092, 266028255, 35587265, 138911922, 600895744, 363694686, 72404902, 139780249, 243398262, 153487430, 589874506, 69228659, 326232904, 213900318, 32757513, 465780863, 210185374, 927165662, 942376568, 52155648, 286120227, 337237536, 744611659, 92747814, 678781899, 272683712, 467739382, 206910052, 144457627, 643105930, 102182372, 10154550, 340506456, 330351906, 59961101, 306097837, 188004898, 357754214, 346775385, 535155459, 95128092, 296329863, 106798959, 258590869, 249092608, 722376670, 257083928, 424577396, 643043865, 10065727, 46112984, 36047257, 384070693, 207379709, 52984667, 335152953, 183610001, 723965272, 114644917, 64365954, 624309274, 296192916, 154511300, 315194553, 88902508, 300806932, 502966259, 355443951, 493974253, 26270279, 153266120, 90075811, 201211710, 459315520, 762867194, 215284214, 122112261, 298882629, 71420458, 32811149, 156897276, 101810430, 246390151, 823416861, 447148458, 137152094, 133637740, 403357227, 89609328, 60791810, 34100929, 373882800, 89809639, 48745375, 152218095, 774686416, 594745853, 468830564, 722032120, 348572698, 30826663, 191324803, 650264177, 555780752, 582556054, 809354458, 315950830, 121985363, 571649645, 304529269, 574755669, 53674866, 158947516, 594301335, 706981359, 19488491, 520172627, 490425719, 417209196, 158566016, 95233517, 206260339, 344574272, 759232124, 715338311, 688780304, 77489527, 456569793, 693320766, 955492949, 826811506, 804269847, 496103107, 509801810, 834408358, 130649248, 152167428, 216614933, 141400279, 162725224, 120290741, 784642, 730607494, 729822852, 242323535, 116705135, 245325898, 144718228, 869032026, 403580461, 481258811, 239014807, 352006034, 57981356, 245457819, 168615334, 60433294, 21397279, 104750659, 698773540, 495166868, 364246129, 30353188, 261153146, 171933574, 25700398, 749160179, 398790369, 158665308, 244889689, 946332986, 828865059, 141310919, 14187774, 319637964, 193037223, 174469860, 246637095, 35122167, 356435814, 305027619, 165556600, 445562281, 76063884, 22917673, 164885343, 547755091, 246053881, 393285533, 21400406, 536925606, 206139012, 476552251, 430117750, 59412736, 379218625, 604982164, 683473054, 132525343, 732108676, 552336077, 433775783, 71911947, 388138229, 602270143, 498361229, 399034160, 927157695, 236144261, 472070303, 226503572, 243621913, 578049619, 282595403, 15660638, 160245063, 150813907, 132338611, 322124156, 67790044, 292703886, 282549763, 21509995, 97415006, 676156648, 490723537, 240666720, 248315461, 260104872, 135104228, 562364997, 507817114, 202140572, 103352642, 325381096, 203255924, 289215375, 555999226, 103519951, 367619508, 191627472, 358175973, 131030454, 614926034, 808426896, 542864087, 247773984, 77345709, 108674863, 513856137, 49130006, 419993768, 56240574, 199701545, 359398329, 716193562, 525609429, 357399044, 343938710, 2350836, 604323840, 604323840, 78588497, 179409584, 169094382, 19878551, 381155427, 174873561, 260829221, 5940843, 117251773, 111310930, 470118873, 227126189, 100314555, 5909550, 118307762, 118307762, 131567623, 378248601, 258377175, 549346542, 357999464, 265386645, 11601223, 192030132, 168318894, 99231264, 143698437, 262089918, 545922192, 53560936, 417876477, 339496238, 28667791, 151576184, 573471989, 332496260, 517440004, 844644838, 283718549, 299769058, 265930203, 266208380, 804254989, 338212931, 236248322, 365742848, 49789810, 9956855, 368639622, 368639622, 216251839, 473470431, 280674967, 413768759, 801560464, 605391257, 535798578, 283601210, 316459507, 66437465, 338134566, 616662800, 10500876, 452750992, 452750992, 277728360, 314851457, 355708286, 128958519, 584468268, 514339086, 277418551, 602256765, 93657558, 774261595, 669382677, 353249135, 366896401, 853314882, 249160298, 230004176, 562728423, 550898796, 411283729, 136193136, 327960735, 65846451, 16879872, 185139565, 518575416, 237107322, 426392633, 148449450, 327432871, 131157079, 716511220, 663721143, 105593608, 647913361, 801303623, 48142938, 872168894, 13908106, 198187706, 160230383, 180762834, 458845072, 121214801, 74624152, 738240494, 206473141, 366710389, 93215585, 283403554, 548254553, 72888395, 169316432, 427714477, 639631397, 135191443, 387053640, 281818461, 197733230, 142809152, 229517731, 553236658, 586343324, 336611330, 256842527, 353618816, 620185547, 338069771, 95071566, 242888310, 208247487, 63946589, 482905844, 586317332, 604504936, 274221738, 5755536, 569532945, 569532945, 138950443, 541515565, 295672334, 263573138, 69811085, 151708801, 296825918, 79342079, 389725561, 346060407, 55307720, 116207100, 355030529, 709406162, 315377082, 511347956, 655002349, 605151899, 321806873, 134431900, 439428558, 172380061, 316110508, 294503522, 840373950, 290865868, 79934696, 34876016, 448029172, 64862955, 308109132, 617368479, 491997929, 221582175, 260267226, 55787481, 590067695, 551935040, 501864239, 86658518, 662910641, 755539031, 803043035, 24008427, 466430020, 4464734, 4464734, 240251607, 2885326, 240251607, 237366281, 202304929, 842039591, 184586430, 45714788, 379486685, 620835850, 85950638, 75305030, 531961135, 21636085, 140542747, 66321231, 430211696, 602067024, 399956665, 325260331, 605616829, 78306934, 446995042, 384207725, 493025345, 471777744, 25561828, 113128936, 114001838, 495365503, 407557430, 365236936, 121421074, 220270329, 23407760, 44069785, 614284019, 48603254, 106576873, 114378930, 556135097, 635686567, 257370768, 105040574, 260258608, 84921179, 39670507, 606786132, 782544899, 500156165, 197209979, 268037143, 669669447, 84087716, 521965971, 510356755, 529561754, 152287834, 158216374, 140253378, 392125070, 103315955, 154615210, 259057497, 344600326, 18723959, 27952112, 226018149, 213840254, 692466371, 549929974, 177692348, 325969709, 286691415, 48463294, 55986337, 299320567, 450943628, 54782465, 602880600, 896760905, 442285080, 405436835, 843639719, 148529597, 367642537, 503210780, 459995475, 446094054, 194224848, 124225552, 95448054, 471016811, 261921272, 288288637, 181562958, 223952348, 107388811, 138777203, 213988482, 19275333, 215290046, 307837404, 283960172, 195774297, 193164526, 64390145, 522445896, 635968088, 588136834, 248494484, 269703759, 106751456, 463282041, 814306914, 164472839, 59923012, 844675942, 864789195, 442182924, 448180019, 446102950, 104811728, 392185317, 661245451, 79977442, 503735955, 495843827, 436626509, 133547876, 2713458, 225143781, 222430323, 260785420, 729588039, 858461287, 243288217, 357721597, 980434899, 780144086, 78274765, 28789785, 2228254, 668930331, 666702077, 720817887, 336305682, 476230626, 211299793, 505092030, 762949194, 135788932, 351899827, 276292410, 453927954, 38871168, 702399995, 535768833, 139680515, 94785279, 297332655, 340516529, 631355703, 271082841, 24769052, 119289425, 402198992, 248567382, 470885646, 122476494, 480393680, 155352792, 725957459, 299992694, 276449973, 596149057, 269570649, 2108765, 203101499, 203101499, 647848039, 773789015, 759319608, 59565615, 43922862, 451359059, 77405550, 392058128, 897137812, 897553246, 631141419, 217627575, 267329881, 470421942, 267550646, 361900560, 513263937, 278984388, 304174980, 396568178, 382563858, 510817613, 36166928, 203309290, 24577008, 262507705, 663971253, 793002, 763440753, 763440753, 148679005, 160911021, 415542177, 78853525, 77280022, 62223181, 171227195, 195825728, 122039878, 177249393, 8518598, 314519547, 314519547, 220147409, 511200916, 53981864, 379064892, 388056653, 914894576, 443600908, 123360784, 240338425, 343572435, 566332113, 572365096, 170576012, 304450775, 230185261, 659375495, 864133818, 271284718, 279372840, 322148793, 770635116, 463613009, 303272308, 439202202, 5919237, 203918428, 203918428, 13019998, 614895910, 236693987, 269430968, 828423770, 133299273, 641896734, 84144233, 614092285, 602838158, 142794351, 188617610, 436421663, 350912269, 393808192, 43065525, 308257819, 82785706, 536332773, 185064629, 406177515, 290779282, 803383420, 99144533, 683143055, 691750833, 174682166, 191224491, 490045798, 501200842, 201760971, 183775638, 413479369, 487681202, 114097249, 265126358, 71320416, 67828293, 85025372, 389437529, 465895565, 212596637, 10784569, 148088886, 148088886, 86594178, 314199441, 480642980, 161676158, 149175045, 164082173, 296431404, 198724000, 216749944, 107495085, 232317229, 174991743, 311377328, 211039942, 7003274, 77032138, 77032138, 6052081, 43512410, 37460329, 270902041, 496567760, 64774980, 14561431, 236537562, 484026773, 708791198, 290478363, 305774934, 43221791, 153117744, 356048563, 248178739, 292278354, 340873899, 629105566, 385593844, 309924650, 580811067, 645995125, 350484572, 433890171, 672201722, 761422585, 628691801, 619792613, 311365015, 449585532, 529302785, 232095019, 206671401, 77364005, 178876627, 210942350, 555529206, 357858696, 389270798, 696837594, 577345879, 298730378, 737270315, 159759854, 322195572, 223471473, 159611350, 270200904, 140322359, 50209214, 28631351, 421836467, 134879548, 223829918, 240625672, 83790206, 461580879, 485251779, 273825327, 231531592, 362455044, 142837878, 274439479, 364628927, 69628876, 963896705, 746289990, 682562377, 348746119, 121873857, 33330903, 89947379, 198391105, 459379339, 76326857, 450235110, 12271506, 484389255, 249290487, 36058171, 605454550, 730271321, 753410424, 22533172, 389267519, 8463528, 153592906, 145129378, 221968789, 844499433, 35842558, 568518927, 337221304, 305207416, 452840002, 164550559, 257892695, 362149812, 36772625, 23014044, 89527542, 349191644, 403124768, 401314282, 899455182, 500741424, 361796458, 786050073, 64496725, 130051260, 37205409, 566299363, 239912316, 370323201, 882279747, 407113110, 204940605, 295013245, 165826562, 135860170, 522320148, 845339017, 831065028, 352331804, 4317002, 68372795, 68372795, 95658164, 81416493, 517835905, 335881809, 314336175, 373328188, 63324351, 475026396, 253933660, 1273796, 230121047, 230121047, 357993139, 473868778, 104361876, 596829854, 206004789, 835576041, 48688131, 87733905, 210095578, 514231263, 896066304, 968678551, 889556205, 33898389, 275502649, 152858646, 228685582, 307740341, 89235278, 323453296, 275098833, 3378639, 187110665, 183732026, 418570111, 199557156, 511485771, 124578689, 651801176, 65082780, 730178258, 253582357, 38594086, 31489575, 295262681, 56325510, 261026929, 262528226, 119096978, 378784631, 279647973, 855393743, 512031521, 607009483, 256820355, 316595405, 150403350, 244643412, 521713872, 743149950, 243002977, 6244263, 275087383, 275087383, 241286869, 493131705, 92627392, 702916997, 697077566, 41454323, 92419994, 308811137, 759570400, 11045393, 578971945, 578971945, 113442521, 555133795, 571037729, 466675789, 342986108, 264906911, 409761593, 80243795, 281570873, 95850522, 440374549, 428792978, 417590373, 292379867, 84262272, 323150730, 865241815, 555686001, 379091745, 315653931, 242989170, 585374934, 598005679, 558846588, 362594211, 3879334, 77766159, 73886825, 87996182, 48031802, 284055450, 570855304, 128143813, 821459771, 19263902, 523303009, 217671555, 585138412, 612793693, 673411673, 494671387, 433988859, 372415055, 265502787, 513710813, 231573565, 264042043, 300422255, 92129708, 323978655, 46868539, 580901047, 151693143, 86510222, 39848422, 412437073, 130542503, 128515808, 250795753, 338513043, 301808508, 718317518, 315901711, 321509197, 113276993, 780887320, 326361133, 461040734, 71268111, 753447257, 55656383, 535106161, 247015978, 400391572, 566156639, 554094987, 726540122, 415070354, 614743131, 442187741, 322176726, 721148715, 394805265, 427788764, 108582844, 317897259, 140318989, 42018659, 606028814, 605538013, 554777951, 319851553, 381449419, 365085758, 82064209, 346186854, 290971036, 384706905, 326927882, 488439938, 409090135, 175400204, 143486683, 467185293, 541039241, 46965743, 806123949, 603957225, 573013743, 313284667, 448484325, 86965557, 123464029, 176546839, 6471806, 886751817, 880280011, 918572851, 283675871, 113892893, 237186486, 23302145, 552994904, 591914048, 126939476, 508701561, 500256755, 388601773, 148245185, 220332604, 230276691, 305961997, 199043871, 237712449, 813395241, 29241836, 128065638, 16803975, 811457568, 512638411, 387978533, 400100334, 57470637, 218936275, 55360938, 158268392, 556668437, 321287420, 244908576, 21781183, 267531172, 511287159, 573525938, 325259666, 362703581, 334798191, 21906391, 401056828, 361298945, 170613253, 97764494, 85415370, 581919681, 616928199, 45520987, 638285726, 579577628, 214452479, 361514152, 218964420, 27725366, 578457886, 45377179, 104179326, 115664089, 689360300, 69336720, 746269779, 844087300, 408573501, 19606585, 351002679, 603995002, 1249117, 260596817, 259347700, 127062209, 165272057, 91092463, 119736938, 367447931, 158998314, 549723737, 365349591, 334434820, 278857816, 321131483, 148987767, 442662554, 468068884, 49068186, 344076362, 309657916, 135198923, 216627472, 320446952, 319550604, 4363278, 41822479, 37459201, 256072372, 635195732, 397270622, 492149109, 524656, 112553086, 112553086, 173276835, 137277408, 389644612, 78150102, 36099665, 31348989, 712411856, 4806331, 421004794, 416198463, 258181726, 531277500, 317475460, 251860502, 270022216, 454860615, 632628783, 568246127, 44363500, 416133137, 208482049, 464589718, 61330593, 341279419, 270889851, 344131759, 310031825, 322794965, 35204853, 112739150, 40196489, 589414458, 480818804, 422305436, 7793929, 171051998, 171051998, 56427535, 231277779, 487790811, 434417895, 440534157, 41211545, 243552154, 558774394, 137205738, 295081851, 569778708, 169886112, 55530657, 334753231, 13344035, 136424603, 11705669, 344977004, 86057428, 504024414, 611758617, 276052246, 25145992, 631644395, 403086358, 545223238, 361180601, 366896251, 14553974, 51510031, 769292110, 236098294, 213832991, 6745468, 384327291, 377581823, 295575777, 428019662, 36842362, 329347858, 76772284, 469236053, 349809029, 227910228, 80636993, 332021716, 132121258, 94422274, 272845959, 290257006, 514808249, 225581444, 19592845, 297058588, 838747893, 708981437, 159530895, 189534999, 414561627, 62246144, 29286957, 366280306, 40968726, 449209802, 119780811, 671552860, 310900579, 493663316, 312695264, 28633048, 298249581, 700067545, 471001115, 39477006, 369078793, 678094621, 21290971, 116322307, 844761291, 143048530, 310381741, 344342747, 135116268, 505151187, 322143578, 659120638, 485930834, 140850214, 374115149, 583987952, 356565177, 626157263, 866183154, 215493075, 577093481, 557945606, 505427918, 736351700, 207103861, 158600702, 131763606, 49434388, 179845376, 592960020, 455106690, 394741751, 523070483, 199324758, 434745700, 565887960, 254171305, 290033593, 634345097, 974457494, 127905801, 252647618, 174682468, 471635132, 80420838, 665009783, 303960562, 933642364, 245003635, 337898034, 170818396, 50657776, 230409854, 211769586, 153600595, 495328271, 321807640, 92160990, 362933683, 255662890, 746084314, 505750474, 48805201, 173231374, 165082991, 435710566, 554335739, 70738158, 560761276, 546307866, 298834285, 153915599, 254951842, 387050744, 261268461, 856395237, 836210429, 145477930, 596524673, 60349129, 666602794, 95093960, 37238869, 273956893, 269518809, 405527591, 201525261, 153471004, 433788138, 47082135, 229921962, 372768735, 636855499, 463898287, 190572347, 142542463, 502261191, 628380714, 543407829, 326525657, 353512856, 87509808, 15486311, 59693789, 472300061, 622071960, 351444602, 30623192, 609302382, 742425145, 756086872, 26636852, 840159107, 315770261, 59375132, 398190557, 749689297, 459832908, 406364622, 843213715, 609683190, 215378776, 252255105, 42192228, 199598621, 384720464, 728041519, 104377243, 143104311, 228299116, 436755761, 88896181, 612493683, 132366040, 301321772, 653283792, 262471064, 221144389, 441677282, 361375195, 102097354, 221891188, 99759714, 220951859, 182335881, 50198101, 711768092, 267135015, 329417472, 5275364, 629220539, 623945175, 140742962, 882590060, 500831064, 395514082, 555071110, 600234722, 756479410, 56211157, 827790003, 773942126, 422079232, 44006145, 450360027, 755240768, 755600068, 108882665, 162054352, 496739775, 82075684, 86024204, 58623877, 155667165, 136371450, 342638515, 576261905, 120003632, 534507254, 505123770, 207770506, 531463568, 76320053, 186368021, 231281713, 664562991, 287251012, 369433426, 177664810, 492071129, 289180403, 45253641, 364426846, 283052349, 380088228, 271459970, 325150102, 133321641, 9271802, 68473763, 59201961, 431774329, 330215520, 634446256, 198443301, 83649794, 486523136, 211547233, 506147261, 26612935, 427245408, 284574705, 27361802, 171862206, 699297329, 586232845, 705089426, 444400264, 332031427, 231988396, 520034775, 699029645, 168611552, 138082659, 62015531, 106120949, 622242834, 262765135, 154584352, 616898195, 288887143, 407946319, 822545820, 340810697, 61795071, 317825299, 505104815, 169542624, 557224486, 191307811, 195029342, 383816936, 14027463, 3480232, 221190586, 221190586, 29407315, 683053563, 580490285, 255473338, 361570608, 11912882, 303478916, 363306131, 164631448, 543711217, 28679278, 523786412, 685228729, 848303701, 755140207, 284380240, 140898655, 451749805, 4804460, 52932762, 48128302, 284020724, 120578729, 116318729, 79110450, 131409988, 103800627, 121560721, 97020679, 413495237, 799508335, 307423998, 214236858, 489341133, 78153222, 231150718, 506239569, 119206627, 420154968, 616122452, 285256851, 715485829, 597930360, 651416916, 18726337, 654143504, 766343858, 637733496, 15138854, 563816025, 61147656, 490762312, 308330199, 691712587, 341492912, 147941027, 35907018, 298483379, 504797906, 106919702, 700392921, 71857443, 550771699, 540520117, 661540978, 552008779, 562067600, 603870477, 566568611, 629687789, 94571033, 726913598, 120054214, 373867289, 219679074, 407877954, 861105666, 154916526, 213189106, 133880470, 86028808, 214007043, 566154068, 617301411, 647098706, 502988503, 145949716, 80231308, 141700193, 504715671, 656642882, 19980968, 923253084, 654888020, 536700, 369967796, 369431096, 7527242, 23457781, 23457781, 405187788, 686071141, 585416412, 214882922, 149723154, 311414702, 122103275, 483537431, 484573969, 485838168, 711988947, 181614994, 253629474, 430490668, 94161826, 677057067, 623975224, 191467822, 17395552, 413216829, 742880557, 36562860, 236467530, 544711132, 581997134, 769206665, 740096178, 285253394, 199836262, 165419786, 233535421, 670226493, 809932157, 932462904, 461235814, 512837878, 30486331, 215142238, 6993587, 79596463, 79596463, 192424246, 727971569, 473558539, 243138509, 323051243, 953852630, 286382685, 204105489, 781651956, 589491337, 186905221, 97951725, 435648624, 84088563, 145764822, 7066490, 8606792, 83721909, 8606792, 83721909, 75115117, 657479945, 829660689, 710518767, 195422903, 342843171, 119146091, 365915848, 904219357, 842436138, 255822439, 168671056, 367648507, 522151583, 862138513, 90312631, 9153883, 98399101, 89245218, 122818544, 41193455, 686831665, 214190018, 107658492, 113681826, 505516240, 393509106, 483103703, 213679409, 77923246, 810266588, 723747559, 32536012, 362686432, 589520795, 243927762, 124330505, 183471959, 62210368, 3502502, 301317555, 301317555, 57430145, 170381605, 621141014, 283727839, 264071767, 41240597, 172064445, 566266527, 594861155, 457574339, 125280691, 555988312, 230249268, 118312522, 224964576, 51336610, 347722635, 192974403, 147593687, 144178117, 316825050, 181280789, 548600296, 212833267, 24572119, 279176253, 651557722, 727344822, 750227722, 443344343, 158633816, 363916223, 74190557, 77210333, 52147072, 320150966, 510689352, 72434094, 852261017, 660201189, 176994678, 271206856, 736387590, 529410693, 37950071, 786512, 446106275, 446106275, 318243308, 448920682, 51614531, 317127753, 134171551, 491176154, 534651174, 523560122, 369726593, 288915322, 73072056, 107328390, 185670618, 552301064, 313281866, 24926234, 533813898, 453479345, 347308542, 180111371, 86579531, 272015075, 23959320, 29088497, 430734493, 90700007, 381587335, 7374545, 326669237, 326669237, 678590610, 730371131, 614599687, 104718690, 734754189, 181529590, 354328462, 470236349, 117135092, 12875378, 288056514, 173714448, 166704903, 169870598, 789308376, 225507918, 214233746, 28846584, 63824700, 202718841, 416095198, 128493547, 77918132, 178822050, 521771719, 308289766, 357026039, 239494790, 520472957, 19652491, 282189099, 505991671, 646020359, 159925459, 345225466, 45637785, 271150430, 141361898, 2441344, 704780228, 704780228, 277119782, 344132316, 665796438, 8471376, 704357412, 695886036, 451928754, 378418379, 127069425, 108315063, 95863676, 526877841, 778804227, 435725953, 9975274, 94060296, 84085022, 228988972, 662536106, 119457686, 645849833, 89539305, 415354608, 381420598, 40939451, 254338269, 503385884, 44293935, 711618241, 738207963, 58855990, 15784333, 2643718, 502672493, 502672493, 194999226, 294219227, 630241484, 616090865, 496596240, 280704432, 257324051, 608999419, 19028373, 629067752, 856036371, 888995206, 34414403, 369259151, 220561528, 71490611, 679115605, 431620004, 428273805, 95881254, 73805404, 135637733, 267858153, 345875178, 52975098, 413750670, 242301394, 650562233, 753224725, 842118116, 451776503, 386524158, 531662444, 186617121, 417333748, 103593264, 54309986, 548796029, 704969184, 391264030, 56011558, 36828755, 251548501, 318846071, 597652848, 670004317, 645608072, 451582283, 22626528, 426799676, 605308722, 343433316, 445654189, 12217761, 380368098, 343647792, 336921278, 200273348, 407614828, 616827872, 159817433, 613702071, 293735522, 328404349, 817838582, 672968118, 583670007, 830180000, 344685732, 137528639, 374097209, 570859899, 164805970, 244002275, 171682202, 167085093, 154239005, 755309127, 494518144, 94765213, 168767825, 244545594, 180204899, 484102327, 543510176, 107777370, 14650510, 73468388, 47099636, 11145561, 452731613, 482713310, 73276, 49679943, 49679943, 548763289, 640795971, 649794137, 13589597, 33054369, 143431283, 612921536, 671760040, 609304356, 151729507, 109895666, 125960575, 526829506, 86095334, 331081902, 248536092, 294389000, 88629773, 31150143, 195454152, 37305052, 129555255, 133895342, 184404337, 95502701, 412746764, 684708200, 108862263, 332198724, 443758301, 705397585, 538933258, 85418394, 617224603, 53640987, 610441054, 228332141, 643577936, 450509281, 355190895, 815646402, 449458488, 118391829, 168524487, 207221162, 222241211, 511728380, 491294076, 5578705, 183177268, 183177268, 48513412, 225771149, 229305199, 382154716, 209436565, 487547187, 464833361, 857921131, 405328282, 202127877, 101024153, 550884151, 79451177, 15688566, 275807980, 10639239, 219240164, 219240164, 40848979, 321889296, 579317574, 679251496, 536197261, 316401329, 179715290, 104897011, 547372977, 821420700, 410178118, 58583489, 516773085, 166507910, 717223825, 216113897, 493375491, 648468013, 204544894, 252479941, 141748729, 70500971, 10023230, 634720738, 634720738, 810266583, 852843863, 222823659, 303021754, 926475177, 579351056, 252605924, 14088798, 244932442, 261991304, 282610947, 399357773, 419130360, 281341570, 199325015, 176075254, 29386651, 207659562, 670494998, 705228439, 553838647, 306751352, 408691319, 79015571, 931620086, 558489152, 435277762, 82644446, 417261909, 267139905, 407819053, 22619176, 411924335, 256828919, 574566996, 758105703, 8531378, 837258509, 828727131, 838030289, 182054053, 205054937, 256996417, 326904521, 53779265, 317453591, 550584770, 81261676, 141847300, 132899796, 802434652, 6641300, 484370354, 484370354, 250746970, 585947265, 283825143, 232831538, 237043861, 351456100, 130954187, 13595493, 141470676, 154215962, 405268546, 42008328, 820183482, 8748873, 611624129, 602875256, 206016523, 4303991, 423438826, 419134835, 170425513, 50176210, 636695536, 155353972, 99813340, 350875121, 288862044, 15507904, 48109202, 223049840, 181820691, 32980735, 557175943, 896304041, 148405958, 41136928, 473001391, 246119256, 505448184, 111210207, 182331623, 210646263, 194055036, 384643208, 339551486, 160767256, 355325720, 536462443, 528513868, 126173639, 547922713, 289616286, 487518864, 477829842, 416835328, 110501455, 346478472, 98166903, 125169528, 338747752, 52094355, 3167468, 512759538, 512759538, 5040685, 225908676, 220867991, 292887077, 450598354, 241204800, 138327288, 221422466, 43059080, 794266555, 818210824, 274860808, 234995714, 807317336, 16356256, 869972581, 608777263, 501014760, 22930831, 101259135, 964294748, 861787771, 186026898, 146709669, 240248290, 275016765, 94547329, 318447517, 528498941, 151689842, 340100298, 56078437, 97926011, 250783403, 332889869, 346870741, 406957131, 868757620, 632813227, 232669475, 69433473, 581697452, 272872348, 475778571, 283672997, 398227949, 62667412, 797900220, 235422867, 312595693, 359453920, 20330722, 875912243, 367951038, 464982072, 322262711, 440052652, 238901098, 243175939, 73120654, 30114410, 266130276, 139735364, 156233384, 557053590, 626654153, 113445674, 324517072, 533611974, 572324130, 750505612, 468703537, 64335183, 45325729, 531160590, 469956292, 219610686, 188674466, 39613021, 235306305, 472353071, 722858601, 606995791, 77359548, 236042364, 3483443, 408890415, 405406972, 48504773, 479543889, 237666893, 547278269, 262252097, 146247447, 745815939, 454316237, 371219064, 186350601, 65783664, 783313877, 157567705, 541887618, 466770996, 598724515, 147745772, 143543210, 509801984, 730598602, 437719374, 272033480, 485493988, 846959700, 923737635, 579802025, 458788999, 221878740, 162523500, 382381117, 309793323, 436313023, 213893257, 47274263, 370507582, 224571508, 323286918, 149146613, 728881425, 687962557, 555238055, 791007333, 487794922, 416711575, 915876165, 768304226, 95797722, 180830647, 222867803, 522422582, 86336512, 25550928, 433135933, 366374065, 818701992, 59606076, 3887131, 305408589, 305408589, 432024834, 440562089, 240926728, 55592487, 616098713, 96362160, 68778594, 178556626, 148761007, 2573324, 217563591, 214990267, 55755746, 184347053, 550533376, 791151613, 542969592, 300112174, 541024973, 557821162, 898532550, 241645560, 286542392, 209216745, 460978517, 114973947, 61132294, 458509114, 243969568, 119931227, 522949893, 504952203, 332068441, 432950404, 457962118, 994779318, 74595846, 422005348, 53947719, 123158132, 354814345, 208800074, 33596292, 173593650, 513416331, 206933072, 148555012, 41996570, 414620931, 19637951, 97973801, 439442123, 354550901, 491461421, 365786764, 186611788, 240670919, 84015887, 267770003, 197305238, 174899446, 71700063, 85062600, 422486474, 241840369, 105911606, 509409682, 142444313, 360146074, 180467653, 320127210, 58419126, 371822330, 469389387, 389839050, 534914938, 252885127, 391295949, 398338302, 98524721, 262637753, 200802779, 21509457, 290669122, 410880060, 301286836, 206936411, 141660609, 477067672, 281462937, 516033533, 315483540, 385010821, 162416933, 712283173, 193206169, 393753930, 380381947, 191348139, 144426682, 758615779, 724113254, 46390652, 309535491, 182008461, 251876143, 280065965, 138413731, 348387568, 326751286, 43199443, 703429253, 434147839, 73910070, 579518019, 854278230, 752585343, 416599701, 76005275, 315416078, 89058336, 53231699, 611962430, 275560113, 317834772, 250725552, 206868618, 532446067, 94983675, 749603028, 11393902, 889061587, 835098431, 215355557, 323599777, 498793363, 245258717, 154111258, 96059308, 310662543, 210843859, 79098464, 408348224, 103742718, 458682716, 365327233, 217688382, 336084460, 338149648, 424472007, 26024755, 69133238, 261268783, 18645514, 887124485, 80679818, 16274967, 566300683, 73195562, 89163150, 231274024, 192529933, 652408207, 353814697, 32804907, 389906307, 407227685, 48467867, 420913279, 443421735, 364994441, 687773198, 8419955, 30152464, 30152464, 519345479, 677411221, 904304917, 586251155, 385058729, 171963425, 624238463, 214839354, 47971428, 66208327, 607313354, 851377005, 2236330, 86563374, 84327044, 233563780, 126940401, 201185499, 232686801, 27097539, 443925434, 19530005, 20416662, 553732552, 498409161, 455647484, 126579927, 506640514, 45998548, 279955456, 652966670, 155096636, 721462033, 388907284, 136120590, 198678491, 502498851, 9900852, 604167045, 604167045, 493695228, 539878949, 566836097, 357595758, 1928475, 29228406, 27299931, 25638420, 394411170, 71545738, 377836415, 234197424, 430837458, 153634916, 449477, 27605110, 27605110, 123000692, 839855704, 5755349, 603026842, 597271493, 640921451, 420709975, 272944410, 80269796, 553747023, 202411994, 26283272, 189521266, 527784787, 716809578, 493280726, 26286139, 619016571, 665595150, 730217799, 49340665, 153232831, 84247054, 156532837, 5731438, 548572449, 542841011, 560338713, 523638103, 285656089, 370133473, 561934290, 350453911, 45293402, 603253577, 696504232, 593256951, 206617190, 577406619, 673438024, 529238241, 422981617, 5538773, 148540101, 148540101, 167999248, 762220621, 146397504, 711041799, 44672566, 444883502, 86541437, 678864288, 488366461, 138447266, 97400881, 122198189, 310858824, 4972866, 714058353, 709085487, 745084110, 759422517, 242183820, 299243304, 376386792, 445052144, 767839289, 443247637, 389568661, 835552783, 123565354, 800260240, 596064282, 296653203, 41432797, 186408916, 312504304, 372736622, 327562450, 239809427, 526421065, 54950869, 579058326, 71032251, 449760923, 195738873, 281018810, 286316847, 302299102, 230376688, 137562478, 401698722, 501683981, 88028952, 132526012, 287207813, 397007889, 117568292, 160140833, 47791798, 173542039, 189435561, 83030003, 106761260, 330122121, 151079784, 151074537, 971888624, 42265007, 722984682, 504645058, 286427249, 204822988, 233448802, 101727695, 423307840, 203285581, 148706632, 506387962, 723184124, 90280939, 493006702, 140400243, 495942057, 209953402, 98774075, 704993488, 163670370, 178729592, 854951180, 279197673, 649451968, 127703340, 189435934, 424510132, 139468448, 433446287, 208822053, 60851015, 603826881, 940566251, 212368206, 545476585, 292865862, 254181509, 511587075, 644126394, 16083854, 652243155, 337821805, 148197209, 91856899, 294244822, 32266422, 477432839, 804028230, 556139745, 379052303, 684730771, 504102894, 77964200, 175157846, 554938169, 122850389, 208158586, 480838589, 267421025, 395110461, 81498343, 508554551, 444751971, 378706949, 161293336, 18477751, 244577075, 154647304, 450315538, 710766339, 28214712, 511576384, 1137243, 134939069, 133801826, 458280945, 361338923, 169764617, 120041095, 8423446, 207865688, 199442242, 38788380, 139417946, 502038605, 28642284, 676631765, 474341570, 193213240, 44214879, 240873027, 88453064, 158472158, 338520669, 92087715, 43542154, 326047853, 94335662, 135326840, 161859720, 182427406, 455628770, 512929107, 711032952, 247861536, 410893927, 475323431, 703687211, 85037373, 264723022, 88229639, 629668866, 777243593, 506988677, 547007578, 3788827, 595896810, 595896810, 627575355, 833429913, 80246473, 222336102, 243218126, 11050647, 360249013, 360249013, 550420047, 2893080, 286367797, 286367797, 420477576, 706962214, 709057711, 50356986, 186149234, 461575037, 37989222, 249055334, 27391952, 43202096, 328740294, 738609207, 566387509, 641733202, 972708681, 713924460, 458063129, 506176610, 190726159, 289354613, 368687624, 324582143, 511817781, 661498119, 70317788, 734929877, 41352862, 530830890, 116716774, 398496693, 275437743, 284685928, 496652689, 220287558, 789014261, 56501502, 229282706, 119283425, 323483603, 231917901, 471124587, 35574460, 219799915, 112425471, 85212764, 112719084, 145890500, 656123197, 186591176, 540877547, 15286835, 161008679, 100341279, 55870381, 237771942, 484395883, 599506594, 288880659, 101142291, 417556401, 158575908, 375414036, 244672218, 459463603, 329097225, 391586587, 425424637, 604147628, 92352315, 515965041, 294704766, 136787626, 94244460, 539156179, 24647634, 506035395, 304940546, 503008578, 91800786, 303199120, 326353639, 146656752, 74121064, 288866261, 836653375, 738664809, 591666951, 708881247, 435130771, 172787621, 344432550, 146490880, 145862678, 258019406, 271568371, 376274619, 177152579, 657742881, 88422030, 715583813, 273538571, 391795867, 453568250, 44961118, 117844090, 65187673, 397063496, 351430947, 283303365, 611516115, 630701611, 644867287, 301962196, 238326514, 627831637, 381212681, 127583551, 111948865, 75238237, 745403755, 783207395, 153853753, 362293195, 104477919, 220182370, 655070773, 84006870, 763856228, 127383022, 641467298, 147844539, 234960209, 80319834, 83403282, 55390866, 86145547, 679782646, 850758828, 710489265, 564492323, 788323159, 208834068, 643782779, 52830955, 512517257, 9061662, 338922837, 329861175, 4861741, 25367103, 20505362, 435790147, 78667916, 329310350, 287381586, 335331199, 330426819, 396467574, 488739185, 351402727, 168808286, 555909231, 627535946, 388284, 382373795, 381985511, 464084590, 690878017, 319630401, 240222366, 43439275, 422178738, 183805387, 228999029, 132051763, 505765409, 507912754, 143270975, 67402128, 123915509, 117917509, 215500406, 352352901, 490994926, 11068744, 206617066, 206617066, 268395580, 171685127, 27448174, 170179516, 412383507, 363399604, 345164010, 223146294, 438058203, 369774179, 822886195, 150304424, 562494340, 208064873, 35283984, 76571579, 395395321, 79477454, 319473944, 176438406, 280895465, 10593012, 538386335, 538386335, 365435136, 480087204, 369300790, 155038215, 33098448, 129017424, 327366838, 70859721, 77831156, 258432766, 110317674, 181125019, 437629705, 414866090, 56338313, 281438305, 401913575, 267175134, 184904804, 185208253, 840984047, 542938769, 256349348, 4777764, 259097988, 259097988, 498030486, 268446337, 241816889, 376176984, 38595577, 435028863, 356976119, 126096766, 76723866, 557658166, 452498309, 198371203, 646285813, 347393801, 207081267, 22309356, 693108587, 688381497, 141637390, 488387402, 204915663, 400025110, 102002914, 318300858, 713962062, 813940912, 658263643, 630535919, 886795004, 808154262, 705793719, 165599169, 189841847, 242763147, 71500374, 10855331, 70392729, 59537398, 236974499, 521279604, 249995174, 118264759, 237170375, 88730850, 753144692, 177174450, 574555037, 526374722, 3152398, 42219881, 42219881, 228663035, 679343427, 290894589, 138064134, 579430742, 777303071, 52248353, 374767311, 48047832, 156425339, 275446714, 55350810, 264509999, 364318308, 80718426, 171911783, 100488398, 240248725, 154013688, 257084767, 762568506, 367347376, 22814487, 338810630, 157463338, 285182249, 252506381, 128308268, 12223678, 377919288, 513326976, 707757686, 8662499, 676386435, 676386435, 469334872, 278575789, 228001600, 325708315, 329501897, 104867043, 123150903, 142089592, 217740152, 348556068, 514892518, 342078726, 734201296, 592481113, 379750448, 42701231, 330744955, 81449030, 647266526, 758316035, 140072725, 372874351, 633058877, 555008659, 294697523, 303543489, 144586081, 441925959, 453286651, 6017005, 79756025, 79756025, 163701523, 64747964, 348573702, 26604669, 528884899, 865522939, 18505700, 515856566, 50668138, 24691965, 406719843, 265462349, 46145581, 407135542, 607418185, 485301484, 114044560, 666245398, 489449263, 90569580, 422172278, 280779111, 588225926, 400712992, 180891901, 14166016, 606500326, 18263769, 750466298, 692786456, 899969, 307785176, 307785176, 209256532, 132852761, 265324126, 73358699, 140584900, 50995092, 42513355, 359207999, 101838838, 51855627, 2936880, 302284360, 302284360, 108868760, 286265543, 2795196, 8922804, 463442090, 6127608, 460646894, 454519286, 564546609, 381800694, 534096858, 664810780, 769838246, 22278904, 563102285, 520712811, 746242535, 224990851, 68863148, 87012190, 3711969, 303943303, 300231334, 261342525, 373390823, 16751892, 690198627, 459300316, 274716329, 191750585, 163748169, 531400083, 355668585, 266207366, 278704828, 49632247, 9478485, 380897244, 371418759, 83980420, 478763339, 341902719, 581931137, 680771493, 3469793, 355329331, 355329331, 104030279, 72194719, 771806639, 32933652, 653497415, 177116262, 125645046, 39915374, 360381779, 41599511, 181106238, 648415102, 104013113, 672521946, 583297328, 157933675, 204475004, 120168168, 408063187, 300738805, 188150074, 117152766, 730210024, 22197602, 348003790, 280467133, 411719527, 296472275, 147962690, 159400040, 98928993, 381768169, 804858180, 744182935, 338334883, 161926898, 120914418, 237287018, 8567275, 279530850, 270963575, 399084923, 194626572, 39662452, 322403671, 750598725, 70441412, 416689096, 315657376, 644454615, 1095989, 480608688, 479512699, 657252884, 367138421, 313595647, 473187706, 39448058, 579752014, 528220794, 93274632, 361132360, 191235231, 37853494, 268710476, 410017741, 437225623, 474808410, 48512487, 173183826, 109590108, 366428159, 367196022, 204832735, 138529080, 803857145, 165384905, 172934646, 557901233, 510825094, 491988815, 531763831, 865839448, 160599955, 264480163, 498167763, 576030336, 135565936, 448984283, 376056025, 132835460, 230844486, 52987983, 204983106, 166046019, 191612189, 831142512, 276491901, 113994535, 220756340, 604191462, 175226797, 180777372, 259490469, 24367213, 107490193, 727282220, 594353835, 110456761, 21099096, 512399331, 282091050, 226799642, 183098719, 20277522, 180524187, 90702522, 69653482, 489529101, 626708532, 330292398, 329208928, 99759381, 52701960, 625796852, 196083604, 473600335, 201369884, 152729005, 696314401, 124204807, 300595271, 628797893, 163696445, 496906643, 358494294, 400119746, 599061850, 849512815, 221306866, 177530275, 455453449, 292599003, 272206028, 181901652, 44670713, 377715865, 455118815, 654365406, 127334182, 418916278, 156957076, 665876198, 650000455, 136109485, 162665905, 62124108, 404469982, 96555431, 6056706, 107233341, 107233341, 259731129, 131694335, 252696539, 72839742, 584065651, 861703224, 906097125, 866165738, 762302017, 747948707, 514434494, 541524114, 458201897, 464743798, 653214683, 508433223, 1722909, 780462108, 780462108, 902782087, 47993467, 230454106, 410534868, 268189173, 890028086, 50035441, 62223420, 71710631, 48506901, 828653512, 17028086, 459005821, 70484333, 265275736, 174199212, 103904515, 639656150, 763330721, 132517397, 332332687, 21480290, 925357692, 195177887, 92437767, 25783542, 432879115, 513080930, 179850425, 96647499, 509133145, 4924587, 484645763, 479721176, 588808034, 83065762, 485520663, 86603614, 47337470, 308031005, 280907223, 818050537, 400464622, 204286642, 202137988, 177868558, 76704232, 62369612, 348276823, 436846760, 87202834, 309371021, 566141556, 2322431, 613586371, 611263940, 613825330, 17583713, 713916037, 14916964, 217355300, 289238241, 510543932, 246158931, 179635455, 566442169, 378026297, 504348735, 765551414, 344046200, 350060895, 645161377, 421852366, 254692675, 31098666, 364630363, 376785256, 204339203, 678052472, 635468570, 339388089, 43567942, 178403289, 587309310, 106080474, 297580834, 242193367, 30434818, 591672329, 404929411, 338565242, 440997654, 374640980, 52678792, 134534376, 475347234, 500379996, 238330134, 280207665, 457302736, 110883395, 779214171, 194026951, 657291468, 20101237, 829180269, 656880548, 47946144, 227688891, 375198980, 145831081, 418434014, 136317446, 413005843, 94485238, 18913742, 412073199, 527856828, 815591077, 611398920, 717243607, 232533841, 448685038, 129818122, 512300223, 803376666, 497475798, 102303282, 158834703, 393838864, 493250644, 594690244, 120020679, 325636192, 150746690, 361560729, 472136558, 539089143, 280394443, 403096685, 520136409, 544361579, 26965104, 484697996, 245871191, 517926574, 458350222, 179211799, 586992299, 693077867, 38934718, 86240146, 213544973, 343997362, 602150657, 326462777, 55999571, 107040104, 396046605, 724914589, 361956112, 144232357, 284090487, 417246291, 149407623, 285268166, 135204443, 213876714, 148857328, 97992581, 259076741, 373423861, 363638897, 144090440, 802075673, 733745698, 3264350, 407204784, 407204784, 270488488, 817170201, 633169713, 165791892, 199864100, 499938948, 633727214, 76913951, 779494623, 212740263, 350293559, 186569631, 198842712, 148943282, 926816902, 200053622, 53753676, 122622887, 89501682, 463941370, 3739039, 230884744, 227145705, 482859911, 521813966, 983587551, 335119695, 228841435, 5035266, 127726272, 127726272, 109236110, 93941901, 277748538, 354736007, 279492032, 527153978, 8893001, 215982325, 215982325, 726943778, 25110455, 686343496, 31297187, 611355363, 368054538, 372778, 14067432, 13694654, 405372137, 232801475, 329569846, 470740316, 330860537, 176581878, 365478788, 97969829, 624695729, 348517391, 496009302, 816674222, 43969211, 129979911, 514055706, 503920534, 146520947, 264870225, 599314579, 665830642, 403665492, 38599802, 215824473, 114986787, 411297406, 783263829, 742789061, 784326630, 351641035, 360040483, 356165085, 411070066, 563881673, 323717999, 156921268, 385846844, 766146399, 379013754, 170227060, 32150282, 145932997, 377816955, 877188888, 367614068, 417057221, 774635555, 172835614, 401251852, 233748622, 146295835, 727799494, 679405927, 1053611, 85544333, 84490722, 172510944, 33090126, 505003264, 316335097, 496912525, 706462753, 699728048, 90323019, 773028001, 74191686, 53160006, 598296566, 239323029, 833959089, 673547011, 809109895, 376852679, 147165599, 70061715, 447828906, 174506264, 150424698, 160042838, 344049175, 394033318, 92272237, 315594933, 164407204, 25430755, 205902319, 588494968, 114657297, 94973213, 493409642, 47704613, 103695546, 396027889, 277885639, 240559962, 123223618, 185783521, 35598116, 634989598, 828692137, 125480987, 693077492, 52560518, 18052236, 407718813, 111435015, 333925212, 418088114, 664677455, 546481392, 26544976, 363670645, 162546754, 497469195, 30524907, 38241441, 225987469, 120621687, 500321093, 830006392, 530478472, 229021970, 202039703, 76423023, 411086479, 544705248, 351235554, 48790831, 382401951, 789006365, 407792448, 447022865, 524119415, 605150246, 406866128, 124194124, 85264826, 375247646, 614211458, 55535217, 74897523, 7972174, 328819942, 320847768, 292220524, 16620447, 122615593, 88421290, 502804966, 5958955, 93818849, 87859894, 454571277, 188891123, 22281189, 93993339, 81423043, 107168654, 75408806, 315520330, 76908273, 30550386, 194931141, 551865041, 279623694, 99476527, 466935896, 620990576, 520617105, 591317564, 286404291, 197294730, 273208556, 316302864, 247148316, 6407080, 213707028, 213707028, 33968924, 497555482, 477957568, 192631706, 13508274, 227442593, 297012854, 53487910, 841452271, 58624910, 655398115, 31171171, 541143346, 635362027, 599804485, 73739913, 286266574, 467481836, 184581820, 439354400, 100402626, 171105496, 6967154, 518286725, 511319571, 233804694, 101635951, 306033949, 295015490, 307845638, 886637663, 73494926, 705613052, 95217689, 803761882, 350411570, 151549068, 169187245, 65747664, 787674078, 123628687, 833628956, 826347714, 781637217, 847588683, 817257561, 682762147, 591121933, 524096741, 270435020, 227272360, 623159619, 778735367, 361931967, 36890803, 313109553, 154792734, 183766225, 68635174, 37588801, 328881882, 128051180, 317639610, 63597835, 284910551, 580577608, 119668805, 121646425, 357516718, 256484998, 428963993, 249397737, 307635851, 48448414, 91256667, 37480866, 9804852, 214979332, 214979332, 588555059, 36031334, 489056748, 609409469, 294415488, 630269113, 167341408, 619857477, 487294807, 644583677, 926511376, 477828996, 414464478, 197412344, 178988927, 378692703, 934118294, 248084735, 654172369, 168390122, 290731231, 459321976, 262897727, 97438395, 97715329, 321600526, 32463823, 253132705, 796133230, 60655106, 515920342, 311369029, 101314020, 299837489, 257152943, 592938970, 288521376, 106222458, 362336609, 751814053, 384474149, 128718651, 198920641, 10835752, 385093986, 385093986, 63833970, 780047132, 375558103, 281790171, 29295699, 634042257, 58389224, 318968019, 573913787, 916418340, 360856356, 278629837, 680275505, 679431243, 688062248, 365005775, 149723386, 88337187, 443231452, 280838084, 247009160, 660138350, 256566227, 242393829, 128749350, 367635777, 685656295, 354400095, 465603286, 772543575, 730016408, 68018946, 652195313, 111666048, 279907541, 178112020, 186702887, 479890112, 231080544, 319551404, 826143303, 103439505, 224171496, 356929893, 62850402, 358835518, 715690032, 3277281, 66990659, 63713378, 561948321, 118069903, 642567711, 134450002, 661682871, 419177646, 44335264, 246661746, 92071586, 255732024, 341537661, 141952221, 635639614, 154397722, 38797922, 98887807, 68683706, 335292270, 118719386, 940988633, 522190977, 54699222, 232963574, 328393862, 279988531, 469221065, 10518673, 408836635, 408836635, 567709617, 8895872, 523256540, 523256540, 411517745, 792472311, 880077039, 903028868, 437086188, 433444518, 95937867, 567767402, 52099708, 254174072, 57204433, 25490455, 84885969, 59352506, 554280681, 75879021, 734537245, 22190041, 728478270, 758337831, 548070932, 253939574, 33377842, 129739556, 132269309, 277734398, 903844903, 632668182, 240907857, 299745962, 498116333, 466052082, 80116911, 558846873, 144176629, 100504863, 89958555, 495979413, 379804863, 436411067, 39125255, 40153835, 571817401, 293828629, 290142543, 142187326, 263846719, 150303944, 255701535, 595072028, 517593109, 774193513, 373590026, 143359849, 571733386, 537397386, 398598759, 56985602, 310818639, 38275823, 152723189, 417500619, 745505844, 615183769, 268491106, 235472362, 783693363, 697752790, 606673359, 119272773, 918524880, 534357764, 446931036, 412118917, 112031843, 62003205, 29177916, 33924049, 57205446, 175952337, 112358607, 10984763, 250840613, 250840613, 760723841, 124310669, 298211095, 209733707, 326983360, 395661548, 198135797, 262511312, 440166627, 608829095, 490134462, 365443042, 202365257, 685788251, 29688098, 241630854, 9376622, 616689042, 616689042, 171638830, 183619151, 448503472, 226168512, 795246677, 708260878, 236470103, 595075662, 810554562, 67727876, 887959617, 170416022, 699677337, 119392763, 38043242, 341244351, 341995660, 326572360, 185234127, 36760272, 443380667, 44974976, 245632864, 64873220, 328039237, 24712937, 449100538, 164209489, 74568782, 28143865, 348377706, 181278603, 587389282, 246876018, 547469794, 762012539, 760272955, 447401813, 202965193, 675689753, 948785969, 444907371, 303872758, 514731860, 714835526, 687657373, 321491879, 87553808, 673641994, 419262915, 92333069, 38500951, 197918125, 38341801, 330817885, 849969270, 722500894, 410712925, 32025460, 495415870, 32764164, 495270188, 240591724, 291987532, 259514036, 198316222, 425270158, 747938127, 715732780, 786553993, 112022592, 470689269, 79684129, 200002793, 163763005, 167782721, 284746449, 385498327, 573010563, 533339904, 8855704, 267456836, 258601132, 291686482, 113634337, 51516830, 236122752, 203072955, 439522811, 303553997, 274026323, 299113816, 275846504, 311903786, 61906217, 254604086, 214195524, 202805390, 456489316, 460776190, 395919985, 171194854, 100995453, 200865791, 256579775, 637505830, 160108708, 245074878, 111677744, 120369043, 12759447, 11808293, 370753323, 191300557, 472942248, 112677028, 390428995, 132593024, 705021814, 729520489, 4556865, 43825505, 43825505, 306829270, 64343275, 190260322, 210840457, 65179998, 76681200, 529002167, 109957605, 618207777, 135841467, 3222499, 38268854, 35046355, 44618015, 287709253, 555703184, 27378039, 499814100, 32571513, 32625246, 125842810, 23084660, 220447164, 463347748, 42030769, 92752489, 10392857, 861247578, 850854721, 81054629, 220508444, 171482897, 463003106, 289395956, 475606987, 383925619, 734397276, 376044400, 277448148, 93124814, 20948533, 363809329, 178268393, 79870228, 172942327, 742788158, 761797952, 169902300, 51412745, 192539812, 566347243, 474772695, 217304996, 164700276, 580425710, 57614128, 95266543, 802633443, 924676283, 646928579, 487069279, 367292903, 527107463, 303015981, 90540751, 19726728, 92535766, 461844213, 152358767, 49474535, 261327366, 314655681, 621259359, 215457262, 281025269, 580709078, 116702583, 1302891, 485603538, 484300647, 35461436, 83236837, 378824490, 93114207, 432819138, 27760191, 27723687, 154723789, 124598430, 155378775, 826608571, 505236211, 65762911, 172422473, 397842105, 371238125, 34476376, 55140312, 3703641, 337130864, 333427223, 124900148, 410320465, 473019997, 190547405, 561225571, 216415703, 525217588, 127955159, 193450199, 12818524, 76703285, 281762345, 368123782, 675965986, 576209846, 18391991, 499176455, 346647703, 779731643, 178282384, 887293999, 360898009, 102456234, 98187794, 52043874, 180238717, 358073022, 239869172, 379267115, 230118903, 271318059, 52416799, 285422877, 141800768, 153894306, 160592151, 832620051, 59017402, 676952551, 298435629, 448636620, 106375890, 531434046, 173527229, 41382606, 6207810, 128677662, 128677662, 183913131, 359087892, 12428608, 5296401, 45535146, 45535146, 574332505, 615553796, 525161483, 415824295, 125476587, 171563949, 483083155, 225267343, 38807005, 20319997, 225568740, 500679836, 508018298, 563132993, 655046433, 305593522, 621037399, 677822564, 160387448, 34313704, 481640289, 663773823, 389072190, 564042749, 27783773, 540277131, 117869532, 346581962, 654021184, 808751785, 158074773, 682275647, 550046243, 67014052, 597387487, 600726056, 55699854, 963240, 34034463, 34034463, 378797529, 367019869, 237214034, 345397916, 444995497, 43158113, 326565329, 241077017, 15213080, 292275084, 336512355, 120911747, 400767094, 202056399, 266484208, 106340837, 224984810, 185073313, 345459726, 409719213, 531823663, 155690537, 419584395, 468064815, 220136397, 535588136, 881580322, 493966802, 51404604, 290427924, 706998231, 661831794, 329918826, 562612778, 717634575, 462207363, 291277453, 33322042, 194771104, 688678283, 773643685, 255548164, 215132396, 574683676, 254470062, 164035312, 519571458, 28512246, 274210738, 110683915, 273814733, 468034879, 229807490, 416007214, 42951944, 99263083, 241536133, 97308552, 312255764, 75291102, 8482652, 10254453, 579403382, 10254453, 579403382, 569148929, 351512721, 348619292, 689696618, 63553588, 190206801, 554196478, 296265687, 395186608, 551221113, 297255600, 459668115, 828038635, 689102021, 711863981, 82657871, 57928437, 592263673, 547269549, 177680729, 285263049, 220578428, 493030661, 721893919, 739672423, 109907089, 60245094, 158697257, 122365126, 111449805, 626154214, 238885715, 425042956, 377117318, 34227715, 296839810, 718266454, 121435221, 273942711, 28641706, 207368870, 741740307, 327044625, 301026709, 809580877, 193078085, 268304269, 380495719, 282427497, 501762707, 653553068, 326959787, 456728677, 440099235, 212414334, 59690303, 120214927, 568839140, 323237956, 272161371, 569577165, 171008288, 259128645, 219959792, 350800153, 198784613, 25440830, 576620983, 393282193, 37829038, 145073230, 35357420, 163704750, 262483018, 663486781, 302515241, 358779305, 505507751, 413057376, 250536725, 258406848, 249267992, 749768276, 401141883, 119655497, 365173585, 624648623, 481436660, 47911635, 416746406, 135087653, 303356549, 179277522, 85292929, 399932595, 394776295, 322882455, 170098360, 6214232, 279290499, 273076267, 238499052, 398515497, 232875050, 322518136, 11092639, 88162735, 88162735, 802383597, 809491107, 832549722, 616829731, 56392652, 54854045, 137188580, 239067548, 365741971, 563276020, 341179156, 528874897, 266478671, 71493945, 298369601, 283043191, 427219668, 368390117, 32303865, 499556322, 144692243, 489215011, 120219846, 109610319, 815875040, 237138624, 57358595, 682554773, 317118173, 342683946, 25222661, 605513950, 527729973, 398972395, 496476178, 175807222, 15750612, 496686400, 28335837, 445098055, 687171692, 559265099, 107853104, 188921632, 809480175, 634998467, 128540652, 52935860, 520739415, 185229644, 36318695, 98119644, 410229620, 68137298, 161667348, 103417415, 505741581, 694126719, 312364261, 32416903, 101724379, 130427345, 375498107, 234509681, 137015274, 76612876, 11609898, 138423089, 230181636, 9338920, 71910739, 62571819, 5280206, 90669080, 85388874, 440496140, 622588493, 69124488, 754430867, 690584575, 450987271, 337097723, 96576015, 474088729, 627374174, 198411202, 681044450, 559869483, 34490444, 613293527, 509742199, 171810353, 357179106, 95058879, 48279134, 712130231, 713749654, 691768230, 67231668, 77675100, 24759759, 612953608, 160087296, 409417008, 443682719, 65502596, 116207241, 713861292, 677121047, 709603429, 365620264, 208464920, 557141503, 634104957, 195103475, 868847872, 511181617, 486279623, 444312811, 109407197, 261482348, 196600552, 340452100, 183102873, 242589307, 42191159, 100238858, 160059897, 892078005, 441339875, 9655357, 165522992, 155867635, 179661653, 62155423, 258086994, 678495431, 517023040, 317410390, 304638882, 422343638, 336768700, 178722316, 157219116, 834357820, 609974217, 145829357, 542928550, 15820220, 60738303, 173636072, 684141727, 386839093, 208997347, 493410053, 483949732, 200407012, 652180867, 11859919, 189312126, 435755604, 533320158, 46608673, 186926134, 300143426, 313364558, 109196489, 400858675, 289678203, 404007345, 495234006, 32389877, 148024502, 217880848, 48501085, 179957647, 421637155, 813405016, 180809985, 394098757, 424371494, 29907613, 88114771, 42503197, 112607918, 162434199, 318497466, 77593909, 175796541, 3507215, 190385349, 186878134, 163387756, 88665209, 283476956, 413329308, 722384287, 143390291, 623128258, 241807295, 376489869, 163043744, 377830850, 83561037, 162019720, 768760987, 294108601, 459376693, 123309769, 120334829, 22858517, 62077173, 209703115, 856900613, 564995369, 16193578, 318065004, 323419499, 266215050, 129791730, 68751344, 349889702, 528001904, 538231585, 61269375, 552796600, 63152384, 548929665, 476650605, 317532815, 371010279, 3220247, 472105403, 468885156, 263846610, 9558305, 693195719, 683637414, 129031918, 306323759, 415428718, 357973000, 761652829, 503651089, 156999419, 18684001, 232695921, 424818688, 178748434, 387056370, 474110877, 840027485, 756573964, 478303813, 497240221, 156467361, 648937082, 12479300, 747742762, 66265712, 815208139, 97465112, 168955521, 240912333, 323232782, 385052684, 91514719, 594354233, 464387018, 563799781, 226375690, 457959797, 402861165, 212451169, 266817183, 458654147, 901911648, 226547026, 127176627, 371241086, 515911549, 154633619, 377948459, 354040626, 370820730, 832130835, 789265757, 923440595, 346219231, 295298785, 16511237, 623431481, 593816035, 296185784, 2209553, 348699148, 348699148, 849444562, 178864412, 234066797, 282398610, 456938015, 330186386, 913726859, 347371256, 337873466, 729747678, 459462477, 109826350, 518571894, 225244096, 81802687, 634717884, 195908253, 38109732, 452503801, 32089986, 783167083, 328060515, 62564871, 497355513, 404583740, 72554632, 218864698, 39319967, 471761797, 20991687, 503294798, 575556391, 609216706, 69348074, 772427333, 656374253, 511596362, 581859567, 37874858, 106223913, 204410612, 383340442, 516316022, 6749672, 335964031, 335964031, 166042105, 189230604, 6611657, 931160807, 924549150, 511630592, 514820859, 831113913, 572509412, 252040187, 356166237, 341137893, 269465408, 541250503, 733623093, 122014351, 98992222, 207945202, 432552065, 390646017, 206411376, 227709066, 112392304, 239777145, 241759735, 266600721, 351684402, 658555478, 699220439, 477512006, 579626073, 494243683, 85865260, 272256324, 18355220, 287647024, 710447542, 673201920, 120324425, 17724212, 310103136, 62417515, 195879120, 737494249, 348074371, 569696534, 430647149, 257843117, 10416419, 66465906, 56049487, 474984241, 279392744, 230255771, 104416717, 79023791, 855615282, 115150793, 221284464, 275277091, 82999178, 210782128, 214701202, 381174429, 55268110, 433967800, 247278094, 79782403, 155778501, 40204737, 119315245, 98478188, 58077320, 231375412, 362707519, 442894090, 549573875, 135924854, 280428246, 6820052, 20890717, 14070665, 182940972, 423293544, 370590819, 547623636, 547415056, 663341108, 75467507, 142210986, 696511355, 435857599, 294922799, 542376873, 224786208, 421398694, 246852778, 194345380, 509149051, 96813313, 160165409, 275319825, 312936888, 43226952, 733104650, 424177576, 327764366, 416010542, 362165876, 567496252, 350794206, 48194111, 347345693, 243546810, 286387884, 277285922, 554740115, 341778484, 317966119, 294908139, 48425458, 198217691, 600008707, 414860071, 134374553, 554801859, 625758651, 618045979, 245738636, 275043975, 467615860, 401320350, 316898395, 606660060, 105590655, 370634926, 298521177, 93975784, 205415374, 497591376, 226886490, 258464226, 245914838, 419088662, 274274983, 376987329, 544485663, 285221758, 127278611, 567189932, 189340343, 590659513, 481840066, 378423386, 808716186, 526812832, 315363908, 302853420, 642946247, 337232016, 150619150, 147706178, 322698272, 493991350, 5943962, 577255724, 577255724, 507490632, 548395328, 722943784, 302966696, 132014435, 202624853, 50372284, 257159418, 8902625, 291326093, 282423468, 724159002, 208122996, 39160993, 134202658, 58147504, 499452710, 587803897, 374698725, 121280208, 177085675, 322945468, 141104048, 260212366, 518856776, 18625760, 5504428, 276660489, 276660489, 156542219, 480363759, 892984072, 63591581, 847999161, 686774285, 197254513, 119578051, 134445896, 152432689, 205882379, 310336067, 10822365, 163385529, 152563164, 192558440, 399381134, 71002388, 163300730, 415068249, 195582291, 366411938, 824315605, 559431790, 394770910, 521824352, 483616185, 99507690, 4416504, 473527495, 473527495, 347098825, 183692303, 70769960, 29940470, 224126516, 11652167, 105509514, 208767683, 445875148, 517820660, 484584360, 779736775, 699311171, 503200530, 6222808, 60732530, 60732530, 21388974, 711459303, 318950434, 237614260, 75092554, 685075421, 828888755, 367055338, 7734280, 7734280, 555781155, 5232367, 555781155, 550548788, 348528760, 100778313, 259265038, 6238797, 389484927, 389484927, 469902234, 23971345, 352780753, 224477714, 77616746, 498626840, 420686118, 235044259, 324158204, 162037787, 342296014, 123119422, 117115045, 17240684, 66836055, 166187135, 246889333, 68455182, 581991044, 490987148, 74088705, 338153088, 340874533, 286926188, 145033692, 88706028, 764365396, 129381343, 248657343, 416294692, 217770399, 5318436, 258896921, 253578485, 46917138, 93358038, 624479537, 250478624, 326733568, 495367587, 408721621, 295407487, 391897100, 552715991, 908742752, 872698857, 796667966, 23417408, 606581059, 284749403, 111971898, 199839992, 724623534, 2020049, 88374162, 88374162, 734659104, 711846699, 150388138, 373614665, 56815105, 387908035, 54672275, 224193152, 25127126, 533366756, 804658122, 150880681, 356622618, 500351980, 1759387, 273980413, 272221026, 42690189, 245388627, 577541766, 349287810, 198609128, 270727748, 384902170, 679715133, 398113210, 515873745, 656397346, 172470712, 420979141, 111539819, 561607381, 148722693, 411141239, 786413365, 778798502, 735335935, 37993266, 77532981, 717055586, 751579408, 772510247, 513470608, 47624413, 261155026, 73144574, 189744640, 345538657, 97410325, 371627371, 314051883, 3210615, 187439825, 184229210, 535884999, 547002676, 72791235, 745294658, 288795474, 67329703, 85518686, 50719859, 258878874, 331263334, 438642570, 50002686, 28827814, 225965451, 155677745, 185137369, 726147384, 562993446, 211115849, 625087326, 462434927, 94066521, 303234828, 340523334, 357609075, 323013514, 88470518, 413262598, 362410007, 387623706, 102397687, 225336246, 420973877, 83567004, 296217620, 229758052, 511480239, 95241930, 55220890, 514021053, 164361055, 74264017, 208921295, 386873443, 507561754, 256080896, 27259037, 11492551, 207428113, 85260425, 5283836, 214133202, 214133202, 305824088, 323171504, 619140847, 342743975, 253090648, 761237996, 377422661, 346271523, 363282603, 63367364, 256798757, 17895813, 79895832, 323810331, 171438777, 35221165, 489131371, 221910552, 331914156, 18790091, 825291212, 106279920, 368852393, 179042952, 365126933, 300321582, 769716970, 320851252, 152555522, 41671642, 277104923, 46960004, 62100335, 202973009, 2086845, 593475767, 591388922, 600678152, 537597918, 18031908, 69878557, 215182534, 214687874, 386957565, 729161971, 18507944, 880266554, 446005439, 168198, 183347856, 183347856, 306837824, 70185466, 398288572, 250256540, 719361817, 559285230, 368682490, 523273720, 337104073, 152300395, 582848404, 734649304, 604498601, 135049405, 137199509, 58908261, 108556552, 153675484, 356956750, 241273670, 331947916, 231565140, 492668077, 397005264, 215246929, 95681411, 402006889, 129538811, 288685956, 216726241, 234412881, 239986598, 107784676, 613765372, 305800694, 179025465, 5017814, 710673012, 710673012, 4921683, 11286532, 6364849, 560241623, 553876774, 579035573, 769893944, 58072008, 474457826, 328840010, 452908053, 584461001, 353176003, 203299797, 57689971, 299102745, 664901502, 40946759, 273132587, 92360335, 382921292, 509959139, 188371713, 132010437, 203761138, 306710366, 81370071, 438138736, 788463749, 813137173, 459078990, 333562628, 93512564, 398542638, 599984011, 743977874, 391768984, 7319867, 483802578, 483802578, 730931779, 203970098, 527106586, 415545376, 198019269, 171427070, 122224527, 187298737, 715251937, 569776857, 252868012, 84070042, 29787502, 36265687, 184992703, 27674022, 3968189, 385696644, 385696644, 384049830, 359617899, 272658453, 409201506, 555978104, 78214197, 442532334, 121680984, 447954562, 801207412, 69266371, 108676239, 172403318, 179494555, 55056214, 517224484, 601847887, 78897682, 211127755, 45897857, 91273016, 189146795, 177906494, 14851317, 561837804, 29436812, 302153183, 2894930, 149451200, 149451200, 354005390, 46669597, 404686796, 861229378, 425360180, 139763933, 412217560, 428903656, 180782086, 85143711, 557500177, 84338489, 243902674, 347811057, 603883316, 567686826, 290931880, 46152109, 75305941, 924918297, 733668677, 9397529, 518301125, 508903596, 69074678, 122491437, 819379062, 426110082, 328499078, 75221163, 789846598, 45352960, 223236329, 640348782, 365512889, 407908429, 432761531, 241769006, 32374144, 311894114, 116991102, 363386649, 18033117, 223701729, 400232449, 58642371, 144376246, 194117807, 841433086, 937981482, 142492652, 149579170, 206699971, 757227412, 756730613, 228793080, 152534320, 607276622, 520871028, 181870867, 66470648, 506502051, 281941065, 609672284, 726928026, 442941892, 22496512, 484452118, 354941990, 258950177, 697071126, 66232582, 476220287, 136639004, 554624324, 88884100, 597235337, 562500140, 116840654, 22339402, 87103352, 168288864, 579478742, 50978206, 805362560, 126420763, 106787858, 469541465, 200742984, 557315064, 243931265, 23535047, 345185845, 606140011, 277981151, 427218500, 16885557, 47024401, 609297148, 123414465, 345620017, 490338619, 344410459, 660657577, 456194820, 470625838, 557433728, 259630336, 194255491, 121486983, 113547910, 57856776, 244918657, 89176833, 194815010, 487189379, 337708681, 517010427, 479507364, 250118751, 405816115, 226560214, 76492315, 554074675, 326392855, 330090401, 799438354, 163544014, 667378041, 808640784, 624676348, 83833082, 536620611, 101037475, 130913221, 148096244, 322329842, 74603531, 255041887, 171989730, 266859504, 382385682, 658927879, 252218238, 157745382, 107277715, 34003819, 592285408, 152125135, 81719952, 199118622, 230238336, 105146051, 466383272, 749367426, 726665387, 24041899, 237849385, 191892848, 608681317, 844302610, 943738415, 805002979, 164609620, 128305081, 573855610, 721546516, 866178041, 362418153, 339109926, 374769051, 3743343, 63965496, 60222153, 40890237, 311872273, 394181926, 83646628, 422132218, 596222536, 576170, 401969558, 401969558, 174420503, 74618465, 140865488, 355195151, 276973727, 155755130, 359843104, 23837839, 121166251, 123368579, 228206029, 166941811, 489531813, 328130336, 355646904, 464946828, 117204460, 53130008, 53364483, 34838564, 101104814, 391426964, 60760279, 33570723, 80239011, 672564484, 386647342, 99023056, 442566671, 226368182, 409193382, 450810478, 52872484, 476622694, 291039544, 398625970, 328088843, 135660477, 260415465, 7644399, 310456736, 302812337, 193933569, 424241614, 436989774, 35519867, 5704444, 204611225, 198906781, 601355271, 671365335, 241340778, 238269899, 279254994, 313470857, 131583274, 297430115, 268935693, 326950070, 157023699, 33789169, 842857218, 495258575, 328305323, 549295292, 584619284, 169137005, 183789675, 566894026, 382019420, 187810096, 400808947, 710630778, 627374882, 724413031, 422454224, 137402995, 432195296, 120087712, 255757478, 387312073, 365977927, 588730965, 412253021, 388802095, 94559086, 149043410, 423592890, 73064325, 204427894, 343126477, 20735455, 91581655, 79581214, 89794590, 40342389, 110650270, 134665156, 270169320, 827645338, 287812272, 404031538, 707282793, 419479899, 389960014, 205558730, 23672342, 493821495, 43377233, 594480309, 146787609, 155076464, 281321462, 34019030, 42739149, 471828132, 648677208, 258208770, 31507326, 161363918, 450563745, 729974363, 550561342, 198850560, 690447115, 179842984, 175198100, 355180827, 312338034, 21831891, 452796324, 43508188, 478772749, 717216487, 113366657, 312232777, 141007671, 25677451, 472517655, 609030313, 651864041, 838390825, 262696167, 18399407, 246774843, 29142312, 515491638, 524972562, 323994401, 168256467, 343244752, 64342024, 39060939, 310218014, 206107698, 187766086, 483913579, 621316991, 288525564, 441763817, 242834064, 85167556, 475938992, 447826285, 254039155, 255823317, 691393082, 124433050, 785279570, 137208556, 19525210, 519480735, 133640345, 307015864, 27649685, 261949141, 476776134, 486682885, 434060302, 231660229, 227847069, 44531620, 767804970, 460826283, 324422416, 114153188, 384610041, 339618524, 334828511, 264868543, 803282961, 23285843, 465642192, 284111630, 492741914, 26521962, 126170109, 572895041, 897041947, 233568300, 50760984, 397391436, 91094708, 710523110, 17282893, 217955408, 144716158, 502483263, 293724347, 170060498, 548514490, 887969287, 361349541, 79483934, 315122894, 37637715, 62588277, 268044176, 422819402, 407046234, 295381410, 445783411, 444305169, 123517002, 385356585, 225775853, 746565122, 718599543, 525678921, 598707195, 88676821, 480376773, 300327723, 258239070, 72987228, 485478566, 556746739, 48302584, 470042694, 196925675, 160544981, 478969260, 382130535, 142074016, 222372707, 622887374, 326412419, 153055238, 224046219, 455226036, 667461353, 21861554, 852590826, 761481647, 543291194, 34947598, 649374584, 733348262, 133079492, 842685917, 122965048, 652303481, 533963992, 350413523, 361367471, 310487860, 506044994, 84377532, 191772709, 235758943, 683005403, 126492767, 81337145, 141209971, 306774323, 35215095, 279497425, 126192428, 631747107, 233791827, 177052993, 105648226, 409438357, 127429816, 480698078, 626856766, 522560771, 513315460, 424990176, 533605319, 54755356, 588470286, 364301107, 620537441, 178306217, 458388954, 639583974, 47052605, 100060171, 255897496, 306162274, 52323172, 125174846, 823839871, 282212442, 578329833, 85123685, 731650736, 248311088, 197697119, 845982364, 833618625, 309415625, 167246823, 144940496, 352135496, 241337061, 329990420, 380911638, 482072372, 607165340, 111671950, 456483990, 136873769, 265302974, 171663964, 621827672, 293218069, 544981311, 168099551, 44639254, 228873501, 197630127, 106666932, 485333426, 329947329, 479195788, 730737633, 321206905, 313511935, 536306196, 28951571, 524549411, 643926620, 10414354, 103502450, 93088096, 76655746, 388488256, 250850479, 366133238, 230966732, 174891258, 548964786, 714439231, 532184638, 6329768, 325632851, 319303083, 112402251, 385036529, 254284884, 346637952, 357234063, 244146385, 408550415, 146408775, 598197678, 567216083, 101278943, 555190391, 116855724, 307705487, 541032600, 119525236, 312040053, 58929907, 671151091, 119862844, 291214350, 310065717, 241136433, 61542363, 559859430, 27152718, 560649820, 642360282, 46611168, 363807050, 163446353, 616369472, 673741234, 240625670, 260391431, 136344061, 902898538, 159195062, 281701415, 56248271, 352552462, 418971448, 115265862, 657147846, 514162941, 287299301, 109869431, 781798984, 544839445, 286481515, 673539854, 124720983, 156179589, 38883452, 222886363, 272951391, 577952869, 454392743, 152763016, 241777878, 237971663, 162275519, 64531504, 121369783, 227302993, 232002986, 804753808, 798876648, 464779567, 26449122, 290891900, 598441971, 211123401, 159725212, 211092799, 402892436, 442499291, 121512291, 126060079, 314096005, 667651715, 185394142, 276891961, 146957074, 416023590, 91309799, 660175592, 696647109, 73384017, 29307959, 509098248, 363580094, 614219897, 934073797, 95977217, 51106218, 79211643, 42813639, 538044389, 567331652, 724108133, 876170987, 621530775, 224176883, 18172466, 185027949, 244843984, 402675414, 151910770, 399913499, 86034648, 297103636, 76983401, 392485675, 259662332, 32939421, 224574504, 681059786, 161954175, 109244454, 668078896, 31983613, 46451026, 572930802, 548606460, 272565068, 287556902, 34532233, 600645193, 117606407, 406197094, 90225754, 682203350, 709640397, 707869324, 309478436, 374196767, 52839974, 158628159, 468846990, 493689269, 237649278, 518710169, 960382943, 92457668, 249820363, 330623042, 136051929, 81878946, 431906707, 147212525, 80657998, 692486049, 149192678, 435618420, 130985980, 544171137, 758566604, 537841599, 38999106, 192056256, 206900500, 41431247, 346980797, 55974195, 501832337, 212993195, 5316936, 945321396, 945321396, 753022408, 545401406, 15090883, 76158648, 41767157, 90444933, 32886310, 474418897, 84137093, 167359902, 89696975, 307530268, 62509650, 270973508, 641313167, 465194321, 116760374, 69189788, 213197209, 473560909, 311815544, 331321023, 132524755, 236523617, 102196523, 97931863, 727949194, 809282582, 442401892, 325665694, 533969978, 4571818, 205089271, 205089271, 813932768, 114729219, 37026136, 80549661, 703856270, 346751600, 222561723, 2341635, 215738566, 213396931, 428536819, 474573797, 81509846, 155785754, 358258302, 88737629, 370948451, 133908765, 558308989, 676815395, 66466136, 56585997, 40801574, 187872853, 767993470, 755905818, 697243065, 464703962, 3008542, 164602031, 161593489, 191066572, 204959731, 422561425, 75289135, 545723651, 439189065, 187320620, 13299947, 480304777, 566385341, 262416119, 335488814, 16454077, 30212892, 96776850, 290181306, 147182358, 99262400, 451946492, 232292372, 34218680, 302888363, 299014356, 327706900, 154391302, 526037349, 71258499, 662101961, 51236956, 113756445, 326247989, 584120263, 249268598, 390337638, 79461330, 243137851, 238532501, 285277065, 274024742, 366269771, 39236937, 506535700, 13654852, 638365184, 695721892, 225576112, 326076616, 158498062, 459381287, 804582403, 866944137, 798131074, 280610755, 29469817, 383614690, 721955191, 280088219, 149628332, 210566755, 279843181, 531927579, 140527427, 277858021, 94564368, 449424497, 173760401, 435498198, 285838737, 10989475, 267894192, 256904717, 469805688, 855438322, 496128885, 182767516, 136800415, 458621280, 251240215, 509624015, 335129581, 180810382, 220151481, 11098020, 119771934, 119771934, 171182583, 155112540, 237998121, 609025988, 64173533, 830152350, 731402883, 367157595, 262819209, 638665096, 662520006, 614280105, 159076247, 383650036, 343405213, 48410522, 790353796, 370167341, 283536514, 563960367, 798260646, 79745560, 14569888, 481923998, 265873153, 329075262, 14799159, 55702243, 295789720, 608460147, 89372329, 317529107, 339839056, 812214140, 683100601, 256518453, 376639468, 104105362, 134715895, 516107182, 439428121, 758503416, 427608878, 497172643, 31597503, 66850884, 807792734, 595981363, 51083172, 288515627, 131941271, 35071574, 175886796, 440676625, 30900527, 94739335, 542778085, 197796466, 23768536, 299840849, 182784725, 498649136, 113458184, 131740952, 529172577, 143687390, 408718690, 347301292, 4542904, 495423853, 495423853, 70510680, 614206464, 424382019, 639791178, 338020893, 136091498, 194308785, 654696044, 581167547, 158044984, 61022798, 61949292, 120045, 296481634, 296361589, 424857872, 153419768, 356677491, 471536369, 113204484, 55188382, 550458368, 474389039, 849225618, 527975494, 539027151, 470929696, 385274581, 605427295, 51788504, 121015078, 194560803, 40261525, 75557128, 495476012, 331416650, 28439246, 6199103, 173842657, 167643554, 423163988, 358933642, 417616770, 445260525, 377021661, 75999456, 473055699, 110548750, 565956284, 252216919, 319916350, 7125870, 193299481, 193299481, 113947198, 38614135, 197022215, 257036790, 602642428, 158604414, 175578891, 21264151, 27971522, 531119275, 847959542, 385372316, 205901111, 59215154, 586808900, 682926992, 817287165, 806571883, 179970049, 82935368, 489298314, 142339585, 663444968, 84843990, 587316938, 98473543, 80256301, 188497823, 455942199, 503419609, 52487773, 317174468, 361115242, 902490927, 259353677, 213180668, 273880789, 128167644, 478490055, 189508189, 125277904, 208849850, 44297250, 663940484, 136372460, 943080228, 455724439, 493830695, 778723167, 214074247, 323454155, 300941321, 166567194, 24764293, 285273443, 464687857, 29061797, 159902439, 70475041, 157413969, 430260039, 252112823, 61717505, 264127124, 407074098, 294030230, 22842629, 102803391, 48790150, 190921808, 704257369, 429641768, 365194101, 22247546, 325561341, 211896782, 338694699, 235082484, 636372255, 157231241, 497471681, 865239207, 100992118, 439803258, 195948650, 346920159, 201921278, 43360753, 206611555, 105692136, 504961274, 544241395, 455990231, 349411636, 53943747, 153572936, 141507717, 668933824, 796421782, 558110046, 313666912, 92997762, 229134938, 60327736, 505324597, 9802558, 631655314, 631655314, 111453457, 569750485, 486609052, 104586867, 387655793, 137195564, 69164338, 235961349, 73476432, 334686249, 220481794, 600047222, 530173931, 537228842, 110790652, 226624163, 552533848, 344928283, 248684992, 504450654, 30539323, 56373298, 150306698, 558391301, 661331703, 370060008, 561897188, 841861999, 313472309, 263479439, 665050191, 151135467, 885680204, 373228463, 343814530, 424552947, 14511423, 407701413, 60287332, 797983159, 851325674, 120367992, 245408574, 136155942, 73220200, 401179921, 28331502, 212501028, 52669023, 535084325, 373826985, 111259129, 560360777, 154039615, 771577089, 797850998, 854076624, 918814818, 854213486, 100986657, 102691080, 112048177, 614322904, 386624041, 267647591, 787323897, 330514125, 464143033, 246171887, 271199648, 196599545, 52738143, 393035940, 363329115, 109149605, 260003991, 878825746, 498991564, 101106726, 158292042, 384325161, 5334765, 246950147, 241615382, 20243490, 150895779, 695426995, 802071330, 439893316, 455430786, 270257783, 121179427, 377822789, 586638376, 343412372, 99669305, 317133220, 125842592, 607355027, 81880838, 102591964, 844100337, 234071328, 672400763, 460415124, 150087459, 573840648, 61529787, 452925309, 350811246, 809409608, 387295822, 342024807, 777034386, 53146912, 195394228, 35190222, 337336623, 719125260, 332381122, 199506431, 258708450, 545353469, 240814543, 590389762, 171486660, 654322117, 536224251, 231636509, 413853429, 310259067, 559045682, 257488602, 6614709, 282502119, 282502119, 485063896, 460415762, 117591573, 204370219, 179250520, 98737152, 65948701, 186179514, 210577010, 404806494, 245693573, 297435079, 28034088, 203692906, 205723639, 150991133, 563383522, 17464285, 442936046, 227346150, 426976825, 205862029, 906281412, 779880738, 24798872, 776776272, 720356406, 114224912, 453866264, 204462384, 447077693, 28348452, 554831082, 11829358, 294926892, 275599861, 115998437, 71721549, 399696518, 268736465, 842071150, 868572590, 527715083, 235929681, 773035150, 498792153, 398253984, 627694929, 376013726, 212034566, 95667006, 359208935, 608235012, 163638785, 193970687, 511474501, 578749091, 460677020, 27891782, 142374542, 55563716, 575754908, 658250366, 279146072, 464253794, 345188789, 315468759, 218195315, 245244817, 801656108, 799644014, 121188874, 858452868, 830951003, 855673109, 742086397, 189062294, 849396723, 859586319, 830669655, 357142074, 58980614, 401187109, 976292720, 344733093, 212445036, 115184273, 218439097, 440194640, 307278639, 24910083, 291562034, 442273940, 288232653, 883228018, 682979690, 156415950, 14752516, 559465669, 189135078, 415790160, 61473310, 25568325, 463174898, 75624237, 94294368, 810293522, 475597195, 176521634, 63492232, 257269571, 581321140, 27843415, 362880867, 130333901, 447767114, 281683225, 159515866, 267761045, 255027201, 710820075, 723238278, 649535890, 266142581, 147629660, 26891935, 383790193, 148400315, 601954706, 823632246, 395100788, 211853426, 500702048, 71673798, 870557593, 814248117, 163424218, 626057635, 325304093, 157002544, 152156826, 295886961, 265699749, 665505289, 258824583, 226598958, 44908218, 313992623, 230405607, 343689727, 379764419, 208525134, 425940640, 321263201, 178894658, 209651169, 331003500, 17159563, 261276408, 500122369, 162934927, 258551607, 892355186, 845883616, 172303587, 498654040, 68352941, 235444647, 263070077, 415035891, 552307591, 603138990, 502603280, 622754186, 678897974, 160774934, 49530263, 792303862, 434030458, 131743671, 179040615, 448769771, 264731002, 67428459, 319244283, 496139032, 324087116, 429451091, 57838168, 310817349, 79383251, 157406474, 290261476, 231127438, 307330862, 382630928, 285930438, 96251375, 388746944, 439857780, 941505754, 539553781, 260198846, 542231746, 477057924, 427165763, 29703715, 184261327, 480363226, 90599582, 98873570, 370423037, 433556891, 189497003, 440551273, 122673444, 144025453, 154243459, 293567477, 173911262, 182183643, 23773161, 130749237, 227787816, 51212606, 362383775, 339739261, 52786336, 81344933, 316213272, 177685806, 86098631, 128818254, 286727272, 233123114, 127241496, 269865361, 125353217, 44141863, 521716890, 338246845, 411134740, 520247002, 785403748, 768046692, 702742738, 44607963, 377116852, 395223210, 384572138, 325836883, 520075776, 541951531, 11621228, 69863787, 698605309, 213142131, 92070557, 223137462, 295435962, 113869725, 184320260, 27696715, 653300770, 294760850, 53587427, 100902237, 177277984, 52382163, 411778725, 240640782, 139005674, 162458288, 289751293, 142114759, 454892457, 271374347, 728526277, 175253663, 36962993, 588668618, 712662445, 702523921, 70509452, 457584579, 111519161, 155240087, 565535536, 89539659, 387711859, 257887043, 78806465, 108265060, 149804174, 130722139, 187372121, 230613525, 123556445, 290141888, 22917185, 54495166, 539908168, 302196221, 500168091, 604874596, 196709843, 71362484, 407966154, 799485695, 18470009, 638587467, 28805820, 47639797, 538644893, 177978067, 813460121, 126113964, 118541042, 786519446, 487678934, 44160367, 107699043, 48187982, 669332872, 529662997, 302546899, 242487968, 170219358, 504176500, 335455183, 370166817, 727248684, 186270856, 55651102, 56533941, 539401881, 48405386, 744126548, 4560879, 401318763, 396757884, 499223465, 821115558, 9001513, 273965153, 273965153, 16535955, 242305417, 512072102, 163630828, 339429545, 392246378, 478602552, 81658126, 196317371, 522105203, 71127130, 241045869, 156597246, 311789997, 714867936, 431220414, 28652985, 502113331, 708613280, 105991467, 334885792, 419007020, 341437865, 109600845, 159656353, 431113916, 457264283, 207723043, 440858155, 595363438, 185198433, 602917938, 771245774, 2341157, 919845836, 919845836, 463750444, 480424597, 517414411, 238721316, 543113061, 603943343, 286158086, 352793895, 714967297, 835746227, 51599980, 583224616, 422288646, 85286982, 546407492, 123003731, 369499060, 125756357, 146812820, 702153056, 785705792, 33876794, 614764296, 671230741, 786324284, 247141703, 152077089, 62128287, 119536187, 461417711, 123833660, 758223546, 110477724, 461456015, 555849115, 28613355, 128139332, 629475307, 554691048, 91283168, 795951837, 6236305, 106321231, 100084926, 558360777, 52347478, 797317174, 969552666, 7265118, 242085037, 234819919, 20834972, 232106729, 76937343, 365142343, 39470940, 646050317, 478201602, 161509113, 572400083, 673079544, 143609077, 4912726, 495088036, 490175310, 107734934, 195372831, 301002231, 2528075, 706137676, 706137676, 36485864, 77525811, 681075280, 160514201, 142523135, 578816652, 649887127, 183834386, 866639958, 848549011, 102695086, 644309967, 560621869, 414668056, 164228183, 209645823, 82742453, 418006698, 334564695, 412959271, 62500810, 39330970, 9302594, 728635410, 719332816, 306678131, 78016555, 118293153, 501773642, 146088963, 60655069, 96023583, 4983445, 178092557, 173109112, 383758522, 293697852, 163374897, 257761210, 723526476, 31660017, 423532392, 12317204, 521793960, 607144374, 12156956, 615611687, 596396621, 236639232, 60776749, 133648612, 213323987, 439812326, 37005288, 109056280, 307789695, 977986, 329500240, 328522254, 542583868, 93192364, 715083815, 732468067, 272431642, 246313011, 674957927, 147230395, 439118224, 52369879, 697198015, 962623774, 25991570, 393851473, 147251900, 68285411, 488369393, 402427901, 92706368, 293315859, 266559088, 130408305, 91130400, 457107937, 410884164, 394605305, 766353099, 2050609, 421201298, 419150689, 472247896, 820879115, 394180306, 161071577, 539079314, 306869128, 426646861, 129774481, 539603801, 76384296, 591734544, 50615454, 620244044, 696494609, 787865798, 640571697, 297121703, 461994429, 497950895, 304318767, 679705311, 791055793, 158127599, 535760226, 171432920, 131763950, 323936899, 275263641, 616506711, 584122490, 273678121, 258095953, 778196563, 438197819, 164668730, 220083762, 677002503, 794251303, 60012923, 109693661, 47163890, 741228277, 52373192, 902935037, 914949098, 461064445, 155096914, 321569426, 819432224, 250017207, 63392977, 244747811, 272344108, 395931950, 209288858, 99034139, 427069264, 430446971, 190829293, 213566229, 531269371, 476289839, 458642628, 116820945, 32495135, 464932305, 333966596, 654239269, 57506717, 387856755, 303372886, 128667292, 59219746, 503573349, 729919537, 658503191, 468239523, 207740793, 33972775, 191667857, 255133057, 627075815, 198023698, 215745914, 358778078, 172292761, 425661072, 226738868, 375248359, 839598451, 62651005, 113349952, 658056613, 337795866, 300046463, 431457031, 147799129, 632954628, 498269601, 239918674, 445835765, 262868526, 41868464, 320038907, 110620823, 773959821, 731855975, 602127885, 564209194, 735204575, 116628117, 59831294, 193402149, 301419727, 230902581, 107103989, 132961886, 503367002, 556494951, 476697091, 738763062, 158835414, 47086075, 90839072, 692554758, 3514895, 643325702, 643325702, 388406253, 87600445, 436327429, 436811891, 92363862, 135566275, 441370043, 603779330, 13680454, 9303431, 33223863, 33223863, 620853337, 60985622, 764697086, 824834404, 308509821, 547169311, 118911180, 112282936, 413270943, 710792282, 399822973, 13516698, 441749136, 762183379, 571379372, 189971810, 149844968, 542661320, 65412047, 71552845, 65374811, 437286456, 421242100, 51179651, 174178102, 492698563, 946291799, 50348643, 908238614, 931062247, 902768692, 604488126, 599919894, 813903949, 661087209, 641762681, 98139311, 25009804, 457324556, 56047576, 561243084, 147425970, 221783332, 722418232, 123923721, 54121635, 125447492, 40288863, 393173211, 807705732, 871650366, 126240817, 530603476, 405555349, 345599978, 56719485, 286802268, 48464599, 100536999, 377694343, 79991897, 382866312, 278197398, 857065557, 219352168, 261507488, 953838172, 43578911, 236877149, 293579711, 408780572, 677690463, 16427671, 467530917, 16073819, 337083366, 492906119, 311544368, 238712979, 580594723, 685171239, 105870598, 138780692, 610762265, 907498121, 750144795, 243690260, 866785, 329138080, 329138080, 479689296, 90777359, 346867712, 410376610, 92391365, 279986883, 299278788, 49737021, 19827040, 512138904, 270800880, 214639888, 61166334, 20485230, 12850739, 198573179, 774805123, 72005255, 102813620, 87260155, 47623257, 102966550, 436476705, 11959823, 271605877, 359448860, 457299436, 158224322, 24340596, 16743448, 787248679, 846638766, 897956805, 315284492, 605743179, 672340091, 212347636, 523951842, 208776403, 274918219, 576778028, 95331934, 86836936, 891047967, 362234652, 73998489, 324675667, 702753320, 621480263, 240342747, 339592574, 59059088, 476572979, 502820362, 229054229, 153209882, 434081717, 232391087, 235970983, 333503032, 318516522, 404965733, 113493023, 323923015, 467796686, 155629146, 77491280, 476328424, 400038419, 479226985, 853683641, 468434896, 204673796, 483877430, 129402823, 168318226, 509166602, 157420585, 191071396, 456766047, 810769682, 157015367, 329978024, 40811964, 494056936, 776796262, 687173756, 76161390, 732851740, 872037478, 886807113, 637900444, 261599452, 282843609, 264526273, 468761742, 337730231, 423107011, 169189633, 67572557, 235930652, 156672623, 65755304, 15576999, 360767314, 397724297, 687484246, 439842967, 364945529, 637607399, 717696660, 361799030, 115682133, 235950805, 317780715, 812587345, 121456357, 756113258, 778126761, 436402498, 272148609, 179707092, 272751733, 656652407, 377689227, 343208818, 403274560, 361871495, 673910832, 275027137, 421503249, 158613850, 573713426, 140565842, 19811255, 448398011, 112478641, 360325678, 472625303, 876817114, 127859133, 665502480, 233360538, 190375340, 663769001, 731166327, 286664593, 518493443, 283425132, 449699976, 137209735, 79641368, 451399587, 61822877, 243377996, 31797346, 181400802, 615167382, 769224074, 874749793, 789024884, 426218897, 166076144, 392926507, 306622958, 531123963, 704465414, 406808825, 425551452, 721451256, 539681634, 526381675, 243916707, 171111842, 626713762, 176415968, 151046837, 712220535, 603534649, 409005758, 115458566, 174806017, 207833172, 656606001, 486374221, 402626975, 918113023, 750358711, 589819854, 436136141, 388984160, 13999255, 223253546, 472181192, 282330552, 466998666, 88307592, 14819964, 164061739, 520859618, 215516766, 359425059, 613978226, 455549783, 142630891, 473055881, 40394422, 655301210, 737967298, 481444877, 392256157, 567316052, 3341788, 163568640, 163568640, 156954292, 313508527, 406827808, 259486390, 595223260, 737503074, 118327978, 14115176, 189951261, 376051480, 834917099, 628530057, 41074602, 298820385, 328335198, 153414973, 359495106, 503260681, 566055972, 664312525, 270631466, 325192457, 195873079, 785142142, 155440260, 533803256, 316296296, 320354652, 176994309, 476087769, 66631380, 865396121, 185566755, 259480832, 172066506, 491266373, 510340683, 223812460, 82104113, 305861635, 208823787, 446047605, 99268707, 117322050, 615141628, 64762312, 102133638, 231059743, 266274855, 207826375, 246865420, 128173822, 590138723, 145343791, 313127373, 402323959, 459324987, 405622602, 68679585, 428406047, 27872104, 529890042, 303922725, 614600030, 660315981, 728514985, 255589723, 92031037, 517961313, 860640812, 846434695, 273177492, 595026139, 334170962, 130603365, 41995105, 377079746, 371638547, 372713650, 245049539, 521149493, 519269291, 145623983, 167737016, 531008298, 120933283, 417205557, 453254161, 334989602, 495632167, 842767414, 528006503, 462538292, 700768724, 127817513, 799081327, 796413951, 424600192, 166886564, 271007460, 54650461, 4755902, 178143852, 173387950, 216829858, 64203273, 233932939, 32479654, 236310515, 108250398, 314990940, 209554017, 775387630, 457856505, 146106473, 122141914, 414661307, 735021355, 296616793, 215992425, 489209656, 514492897, 562866910, 453670290, 150007381, 55495832, 698769497, 774802946, 413009982, 102085927, 435557416, 492206840, 320129424, 157029711, 671993491, 312248616, 144501989, 240451341, 249263872, 102803686, 82625252, 39903502, 142685983, 638167103, 891914488, 391851197, 435780741, 511336530, 470931869, 94721073, 865473760, 695948947, 423833213, 543570368, 788557923, 537524954, 346087662, 803285364, 592845173, 279025423, 491424776, 256977949, 177377990, 595817879, 101613919, 264757754, 231943891, 252493076, 852064701, 579455906, 363899832, 615976798, 394276157, 240174769, 83394409, 48046167, 363878868, 393954514, 284417880, 67242256, 141183776, 202565820, 216557704, 231389013, 4976739, 27867306, 27867306, 547302996, 678972328, 441528361, 350917456, 281397126, 15172563, 206402516, 313561428, 293018546, 212032329, 114309589, 148814622, 103667489, 945890, 877022875, 877022875, 611868026, 41524561, 469040833, 48522280, 410876225, 285399483, 508032568, 178945636, 419473948, 221581830, 196408358, 663599899, 321721532, 41700855, 192493298, 801190006, 222283613, 63207508, 271197819, 25048318, 504645078, 189171507, 528629291, 585733818, 306949769, 305279919, 80649710, 220942486, 413243365, 33233978, 150194459, 197217810, 219830438, 245519485, 478692642, 145720232, 145259896, 382146344, 405602383, 486279154, 748264896, 182202782, 132836977, 40243909, 592009097, 662148668, 240085485, 167345063, 187002779, 493522387, 728390883, 632061531, 359764347, 66404162, 40811057, 238495892, 417187438, 187350932, 859301508, 903475020, 791675610, 23154039, 552619183, 219517973, 317399136, 437435652, 73396357, 288452772, 469177246, 85322863, 173921255, 935096882, 444617595, 504053537, 157960311, 808060786, 762412956, 375865114, 480207926, 718722292, 264132279, 118139208, 63832246, 41451518, 544629421, 266711319, 383771104, 419661787, 456267137, 654448251, 223288856, 195462103, 253654831, 471733143, 903408804, 765754280, 645066860, 122269399, 638878920, 715578185, 567296380, 802345851, 743113423, 367509313, 266428996, 322083481, 622304639, 557151294, 837754301, 476755138, 129258909, 575178531, 608139790, 642383089, 76709643, 38861611, 416389170, 98354997, 285815670, 566087080, 413303919, 199700329, 254788127, 117497767, 92156167, 85165854, 40183714, 657691703, 165135204, 208844119, 452810722, 187530720, 339060962, 46445453, 455339571, 333142809, 371572939, 67179115, 92039368, 390647554, 550223611, 310064598, 304197232, 636465951, 321442319, 295664019, 760347528, 325880600, 222858906, 341286543, 328939722, 299231257, 455999450, 300801251, 159399720, 439281009, 449277212, 103024780, 496394105, 899281646, 228174513, 294495590, 476728438, 46752241, 713333003, 16042968, 616250432, 619970915, 448388201, 35536448, 349709611, 554845022, 43349747, 377625255, 485917425, 850488923, 726967922, 609503647, 502592304, 128708226, 355855705, 474335837, 354886293, 233452143, 215485529, 383314564, 232120166, 332862575, 476520860, 698048209, 170386858, 567399957, 571508497, 925789801, 735255912, 81538827, 176054414, 352840179, 181037443, 80877080, 21237732, 378770731, 284578053, 209973076, 377791499, 398697238, 65840063, 369487726, 731375313, 312251358, 525876602, 14056863, 178735481, 530014642, 27325817, 183592135, 331039547, 649966364, 415700026, 482111353, 418216998, 101891120, 422218484, 56529924, 553113541, 236139757, 148381765, 32887356, 628476362, 522841087, 12779291, 313107811, 85999598, 72974316, 896188091, 566855136, 77266234, 67224675, 24065299, 224039375, 203489493, 114072305, 317273837, 247938601, 517795107, 33316556, 545532201, 179785218, 525535024, 561990744, 145518940, 308358470, 288423161, 134252774, 426331317, 162327986, 378015698, 382257634, 953164226, 850148009, 479850463, 519436149, 138029919, 286270025, 85586387, 47185589, 290356730, 794348812, 831574989, 689409145, 198690191, 280901078, 150279652, 296834470, 695889484, 521966878, 187761944, 336543817, 86033883, 174740748, 52046371, 41038034, 118698662, 481385422, 495838629, 494153942, 322813796, 233001358, 761400279, 323667667, 140232321, 13310142, 176154110, 131828747, 165405328, 572000356, 485300745, 287049434, 307504526, 187025547, 22661062, 194739879, 286676679, 264521358, 171737237, 120500929, 369322011, 167685521, 125158902, 347387316, 356711722, 771024411, 702304935, 179839091, 262838786, 14042746, 150153911, 366814163, 4306439, 817781655, 817781655, 135043410, 56720159, 138852759, 102634437, 16253166, 391248119, 46947789, 148366437, 485139234, 617879561, 306095730, 203095763, 226354370, 149153664, 58263655, 91478787, 284722178, 231780920, 277676908, 386602071, 293612466, 355874067, 157113929, 451319348, 660749097, 298899190, 303972568, 428775326, 244789326, 296860686, 374949144, 117777109, 38245443, 32615376, 61637247, 11932814, 26576107, 610947122, 65709291, 430614677, 64591672, 305147789, 595705050, 554155779, 453116682, 72863285, 458269214, 126750868, 53457305, 876450449, 895698397, 278143735, 224951776, 266560403, 101098576, 293525069, 167342921, 505015886, 835656501, 437096817, 281071974, 360826612, 81648494, 244302689, 267435721, 795675778, 93498384, 21278433, 254056061, 235705381, 556183784, 239714862, 386216483, 854321046, 350403649, 295097107, 25406748, 356843208, 30401881, 306499581, 625593707, 89234167, 343721357, 381205318, 387662872, 266464117, 47950790, 530585226, 69249787, 53364507, 213708451, 755422743, 298804677, 536209157, 473392158, 212551400, 301567935, 44302565, 598327378, 425021775, 310533397, 522501, 376157033, 375634532, 284174463, 671508118, 26580551, 965818641, 404013754, 139541422, 20688611, 258246685, 301090308, 5228886, 100963665, 100963665, 30421530, 319253365, 180451169, 902072294, 859400525, 636238603, 194000570, 103382065, 84704731, 226527931, 23161530, 279274822, 216858740, 104494768, 231492985, 396059455, 525810358, 135276563, 539408001, 454105607, 249134682, 368890891, 173198473, 158722236, 636282507, 438862058, 202138602, 192529763, 206955042, 358310080, 314231834, 148375341, 636907536, 79185222, 787678789, 139035616, 216089239, 308552737, 190045311, 250337656, 265547315, 186403882, 552807490, 652348001, 428490747, 165768773, 297247703, 663937674, 136652080, 133953335, 470194259, 38197250, 751603393, 7195505, 29173203, 29173203, 121538371, 5269477, 340931765, 335662288, 283833805, 638423591, 803681044, 48631747, 501053267, 445795700, 184464790, 277632432, 901544962, 219962334, 427648387, 470048824, 278791855, 72737461, 102217915, 174100138, 32567101, 412160477, 29562214, 288200880, 190166617, 57084348, 191805593, 198150285, 573411248, 351815104, 129319257, 158130491, 353292188, 102041659, 390281885, 473515195, 241938054, 506123018, 655247336, 320146434, 230037558, 466446793, 15468398, 101445313, 613747956, 636368054, 452360807, 393807983, 648809333, 511818162, 134591400, 333102500, 212822512, 339330036, 316001828, 71776207, 58899844, 604724699, 59198873, 512319122, 206130586, 530721620, 855640473, 828311488, 4741634, 513243388, 508501754, 40069300, 321201662, 495287298, 99982255, 131511422, 468355907, 552730289, 242777554, 395424597, 39046696, 118704287, 184663475, 193752408, 458272361, 347156973, 695632253, 588088953, 628936321, 550292789, 40709044, 457982343, 630932817, 760436164, 395441405, 9215575, 264196159, 264196159, 274293668, 413820421, 202347016, 569829528, 45148439, 130810187, 297917714, 460836405, 420006149, 310676039, 211689570, 336302568, 267177552, 591652949, 156428268, 513074547, 6698500, 739951852, 733253352, 132888371, 153075417, 648091855, 668839873, 284912165, 161481706, 49577372, 427849838, 5776896, 287480681, 287480681, 55207245, 42686724, 196609124, 321144727, 403499592, 174426485, 32241180, 110295289, 111582932, 357433345, 303545898, 347173218, 392923598, 429286235, 152520268, 376897569, 134047232, 477606100, 44957795, 56604114, 415892120, 148717587, 321951453, 617469097, 51549632, 697954583, 668955449, 1010355, 99088847, 99088847, 31346191, 59568020, 801053282, 685419946, 140519531, 352753799, 328221064, 771281864, 42500956, 331359572, 529736016, 881177187, 86823971, 221986751, 703518524, 780663274, 171790609, 616585753, 143182848, 338935074, 111568443, 274595880, 355238490, 585794430, 553379129, 866361834, 73766257, 25326984, 200148169, 468529401, 834108586, 41461962, 850301280, 235810332, 260989835, 192999700, 661246206, 287715775, 533015466, 22141126, 560970728, 351098575, 154142502, 680473342, 701149969, 820320816, 97925745, 851193181, 488488600, 474484428, 490314343, 446995887, 625034401, 241103874, 226037699, 416871902, 64336995, 268091405, 362203501, 468626616, 513060027, 584721869, 454845935, 84399668, 202862718, 10688820, 623977161, 623977161, 540413238, 101017077, 107796364, 196436405, 489322844, 528160235, 192737592, 441769202, 333480106, 57549487, 192456587, 509798413, 83417139, 317992568, 217600408, 395806135, 479896787, 628355389, 449472589, 553980466, 363793566, 263077892, 533085756, 13185056, 546661970, 199218930, 293516325, 350565733, 539269491, 320433849, 153734721, 204192716, 5944855, 135393166, 129448311, 248444153, 369677535, 622279160, 432632376, 380084291, 78792251, 937038221, 134308989, 228919585, 374170823, 558763846, 757184940, 578291871, 25475627, 49021050, 396516133, 122918521, 572406281, 297552063, 117478421, 196753896, 250961470, 160113078, 798671174, 243246129, 7490176, 290956621, 290956621, 264342870, 107107045, 57791840, 166108712, 840398856, 170931133, 49180167, 68802113, 589761713, 350156590, 190300998, 385312832, 272790899, 172981285, 222172088, 354855551, 359033977, 219242784, 29462951, 331384168, 205961766, 353431966, 437482309, 624861780, 70571728, 10152262, 375329226, 375329226, 66303166, 171138270, 149806827, 260983473, 621048108, 622350612, 811047415, 320938092, 270154727, 345610197, 57146690, 442267357, 561914967, 78020369, 486526994, 226340745, 921335858, 621788363, 398973440, 243994303, 219427235, 26632701, 336299452, 26390883, 282739035, 44909164, 425433093, 90493903, 445267240, 85991055, 169280452, 577595316, 547536505, 308635773, 526883049, 43513083, 518949140, 26764432, 71589079, 322823792, 912328319, 537045784, 318542079, 456673667, 161610223, 774464866, 734318496, 795691012, 713370722, 62120927, 358211185, 14373719, 86812807, 382001298, 33393920, 482951202, 257310244, 234321373, 563116999, 66617707, 577374259, 13049914, 386398490, 505339186, 134482869, 559438860, 290768297, 83053141, 84595205, 52477223, 75660725, 52759046, 542080594, 38994516, 587926993, 107427442, 149894000, 303315685, 438949803, 320925910, 291318753, 78044734, 846530858, 935885915, 39387604, 251735936, 138408082, 665645555, 618284993, 670688253, 42128458, 584859906, 377415311, 195416802, 877852120, 898727899, 853416231, 290397651, 178330521, 122101280, 354355708, 111501638, 575769493, 166158087, 150489886, 24914889, 38574931, 149004367, 185015287, 195554531, 683918855, 603182122, 440756235, 324070038, 307640550, 44644482, 155471119, 326829898, 303132518, 232996592, 552620166, 73593211, 73651146, 11992111, 712963475, 418020669, 363542235, 767930478, 501633520, 183237341, 106906649, 582194789, 37255680, 141009326, 334436935, 749881795, 103163507, 216354509, 280543820, 394119056, 391055050, 362105457, 536569, 108855767, 108855767, 230850150, 15728346, 426824079, 92271867, 755826897, 569454258, 145519955, 36024810, 608300502, 176934127, 6339169, 6339169, 63046346, 3348134, 63046346, 59698212, 61037094, 444309103, 528074694, 410487529, 323812890, 685454084, 168041877, 483266280, 73712074, 153819383, 143102144, 126342442, 479719879, 461522004, 398031729, 877456534, 502428474, 382566713, 675402714, 849051496, 788430548, 279810819, 102869237, 362350063, 610663345, 277830979, 246920005, 312542474, 210018259, 386115219, 11709940, 28117192, 87375208, 268628609, 468325, 285305468, 284837143, 632958651, 309128227, 291302774, 53244993, 385065353, 138660873, 31267865, 626865092, 69964197, 938410058, 16418785, 576535327, 329554417, 416201141, 141527938, 22163430, 449088925, 123083344, 264749072, 311782488, 471303916, 188720056, 344600297, 209185091, 38147644, 4130728, 134030872, 134030872, 329558740, 575942180, 201711016, 352318711, 112011921, 60992092, 34467051, 116250972, 432394413, 481862701, 521533217, 528020316, 326181134, 483381805, 573838055, 171276270, 255185670, 180473667, 305792754, 696612788, 370086379, 351417671, 635464484, 452184626, 488974095, 566564232, 390885035, 89084659, 506385375, 311170796, 49872555, 282607275, 119943022, 50577316, 62658979, 138158263, 562872502, 731256971, 316966829, 308344997, 31369827, 136821396, 561881300, 172250340, 476200092, 186558873, 4161794, 343294076, 343294076, 434010797, 189113019, 391972055, 129263475, 260026728, 494892274, 161406572, 297898685, 272102133, 121626290, 802265868, 318470436, 92503294, 629326444, 718154526, 55411745, 642016317, 30464345, 522117426, 214737624, 135529366, 182170566, 441181668, 696514605, 117114123, 203223615, 325707463, 307633756, 343479656, 322079356, 3573282, 656662590, 656662590, 670552470, 70196136, 412812938, 81506149, 22078849, 306144685, 246334593, 686056516, 112053222, 603006338, 253793627, 151509407, 278898080, 543431026, 219090785, 198491783, 160487645, 237817114, 287281926, 121315793, 306178569, 162955875, 224468709, 580512005, 228577411, 73259626, 494842552, 379116914, 63134123, 122292136, 79247958, 413429973, 915093585, 280581517, 151304717, 123358303, 333625436, 167118514, 311704510, 141623654, 66574572, 177649724, 647675585, 221914752, 304364116, 796354100, 490515711, 184567561, 413087547, 537025647, 310781934, 190287471, 540742573, 811215520, 527611742, 531798986, 18170187, 632153184, 425361647, 273181573, 473901138, 464532626, 780049566, 37766382, 211732125, 25985970, 162043009, 61643377, 69480833, 205080536, 97851076, 432393310, 739336823, 642732468, 517909231, 299265502, 356667457, 563261892, 107029312, 735074047, 530644848, 2725629, 150880459, 148154830, 155242992, 369093205, 258035504, 26510421, 428517313, 131263966, 164147053, 575646523, 3416873, 506179713, 506179713, 26784324, 255720984, 77978971, 166711881, 283255091, 135525360, 418243964, 720463079, 836487195, 745805603, 590599457, 661389984, 61773868, 368577748, 291526205, 331596879, 365641958, 516091741, 187201990, 472324643, 52734481, 41762139, 454241141, 77973987, 215787031, 642035648, 1766298, 711020994, 711020994, 645860664, 584266086, 85051131, 153877239, 203290011, 322838094, 259006059, 448831121, 4516702, 281439168, 276922466, 51289609, 552808602, 706536209, 529498240, 757319076, 824372943, 412664243, 307918932, 466394921, 502018225, 53411975, 363385486, 125808925, 276817607, 278953810, 772488724, 771007543, 634644913, 62129861, 61103076, 326276225, 462517655, 74752636, 143693365, 200423408, 116793232, 249522516, 450233179, 69850522, 175866389, 518648377, 275407597, 354487465, 167033370, 193350970, 767205159, 76576884, 65478693, 193911515, 587469682, 537793914, 497828643, 106439740, 212911706, 96933876, 370035957, 352577310, 120173396, 568829430, 240520402, 420394487, 691633125, 106045708, 149106866, 543605331, 641630202, 221570970, 136873141, 287758712, 856931571, 7077089, 182285181, 175208092, 619645803, 316821467, 271723748, 276300413, 904493037, 753097664, 15287086, 58463226, 575250563, 427802481, 206879561, 750033248, 173918214, 488566822, 27264647, 119100945, 54775901, 430066385, 617052058, 747034941, 475104508, 265082125, 183756707, 94484496, 507499452, 358386399, 495411141, 285878589, 381126448, 620990080, 235204981, 102464001, 268507551, 85394844, 558264407, 154859902, 138929772, 109896647, 107917152, 397326172, 746872557, 8616663, 373731842, 373731842, 51864119, 48329508, 103704600, 14455744, 46309465, 274683174, 9033706, 149612663, 149612663, 562297847, 356489993, 200738129, 147675579, 305693884, 707345337, 365566636, 211915935, 557683674, 164327367, 332013335, 509490616, 183391477, 285663152, 20624525, 113056716, 135309824, 325636855, 381025994, 439333751, 59065193, 916471764, 643639944, 637876195, 185391792, 98755625, 291112800, 854259905, 391855041, 192445435, 87559947, 116209521, 137013208, 312929579, 286209141, 502039991, 606104430, 751527323, 818887656, 723332955, 533663151, 637711403, 34278988, 724070257, 649159124, 534832501, 283790373, 85732293, 375873863, 165367103, 375656935, 348052705, 247770724, 152190967, 13954210, 296567377, 235665771, 234708844, 545118920, 47336998, 423274042, 152993671, 494456594, 769345245, 909952183, 364318118, 323662537, 577754102, 431405265, 42175170, 414494002, 359277073, 132782454, 496428129, 287184963, 23889266, 101612743, 140664601, 230183876, 34736459, 64303085, 477131608, 183151377, 573200564, 313067212, 399895013, 618227129, 89716880, 250253662, 787650536, 175425764, 638720809, 25179657, 394526543, 39139134, 246750324, 14967244, 411510362, 212917698, 544783485, 190601994, 298263791, 374209267, 647345988, 521365811, 290861924, 390455442, 753486563, 989665981, 454777726, 317968249, 67017790, 460308073, 314391793, 881374497, 862046993, 352192354, 3829517, 291265956, 291265956, 165326930, 65402688, 100645719, 165302980, 407926208, 51379573, 562976929, 473090971, 386340274, 26490523, 869604109, 391472649, 21342214, 430444517, 273012243, 72977565, 95626240, 133621704, 643292584, 467243086, 276259834, 71147307, 65090879, 545288893, 174681703, 327432120, 74383990, 302253425, 188146254, 714159761, 185279032, 541615287, 593990828, 297347040, 116408084, 45896143, 75785198, 190394354, 572590789, 496352047, 546983059, 557117289, 589857357, 799375610, 639217449, 368666179, 82191334, 345012804, 566341830, 152227048, 134844084, 34616332, 116741208, 118059168, 174822975, 195870476, 231765314, 589104947, 491269276, 305437789, 292068139, 293787791, 316068973, 187002541, 90462722, 337827289, 628277682, 20628698, 114747517, 340890321, 1769941, 48629371, 48629371, 854628615, 910535700, 415907976, 339457997, 275444453, 261925859, 418583797, 438249967, 26067291, 283565853, 103503082, 625439962, 718265104, 110140541, 312222442, 2315296, 89708532, 87393236, 320796086, 603876041, 729678414, 639971107, 344059710, 307247684, 141496413, 262219920, 29997493, 833638615, 661768476, 386860462, 229203204, 475699489, 424678838, 110928464, 370118424, 133885946, 6651140, 52438697, 45787557, 509357171, 38948217, 736552094, 603472426, 500504191, 98652288, 613227455, 468260803, 160559622, 84177277, 140281443, 385023073, 235853288, 23689565, 663904572, 776447058, 587770037, 77407934, 598798967, 347879058, 23163241, 78928630, 292468641, 429818393, 598756131, 717642763, 189829059, 132446393, 737819252, 274710410, 655647209, 418104890, 573708483, 890147001, 758738391, 785084634, 599962444, 273996486, 388129769, 117017287, 610609990, 82694556, 767414858, 471423956, 202732424, 102798075, 665490643, 103167274, 865551033, 68567595, 396946412, 290579448, 163905447, 507745178, 158953174, 537881998, 384354708, 530763510, 459256180, 434334701, 395501751, 124262456, 357443999, 27922648, 149818232, 176696718, 603122558, 221923770, 792967735, 540393928, 270591396, 215017221, 837600159, 887049169, 388390816, 315895102, 129873514, 33141684, 402633578, 276229210, 124300066, 603400194, 224602871, 683982718, 318899676, 287936345, 403018895, 741177282, 721019393, 238009546, 485460416, 26850397, 265142938, 498442803, 266965301, 161286071, 610212725, 257939234, 401989802, 24252355, 164567342, 333720801, 46839561, 468421647, 568881237, 844367441, 629331850, 658875284, 779235115, 439274579, 154794760, 166026592, 487935102, 28500375, 16658400, 457740597, 252803904, 811828411, 908958606, 57007814, 835289191, 730549855, 631550284, 550037869, 555622844, 132642274, 282425807, 227435841, 330675152, 183074519, 26088550, 662388573, 749316885, 487556444, 430298728, 368298690, 238401512, 266388106, 585645610, 318968283, 165204057, 126112227, 21315662, 277739143, 272662591, 671477010, 226860178, 460167058, 810031728, 198639806, 527384565, 297102045, 264969098, 241225583, 8287636, 693508377, 693508377, 197232915, 113696357, 420897971, 13131170, 641194356, 236180031, 264280589, 593711614, 597996628, 458564374, 168606995, 165590069, 86977464, 157522602, 398884101, 86922494, 382517009, 597551226, 453088315, 111712431, 113559967, 698931884, 910397756, 415008315, 302075517, 552078666, 592896094, 414524937, 354899331, 669812, 716195945, 716195945, 84626576, 743309094, 619733060, 240413457, 236274150, 133022691, 645481621, 297233221, 72122389, 527427631, 859991348, 283928626, 106978470, 7269244, 64880591, 57611347, 147096069, 101298385, 615266115, 259694943, 643510089, 780842981, 609308050, 519437493, 180686543, 101878951, 704166861, 906638208, 619580053, 435136361, 122606592, 345373568, 257201001, 366064877, 48522791, 165766349, 524868325, 479480744, 129042647, 107544094, 746162337, 433955211, 439540924, 492294043, 656729794, 411857958, 224090018, 282951407, 300105043, 456518427, 246215641, 273145710, 131049402, 155642876, 175798828, 570228592, 232146163, 482669115, 609488185, 571753265, 545572212, 4264872, 476659441, 476659441, 21841992, 236330801, 337433524, 50058102, 109817963, 46995918, 548551676, 1970146, 262883173, 260913027, 260020624, 219671995, 278649675, 229845911, 220751445, 167987106, 795704674, 214173589, 66289842, 571236769, 41176554, 544524743, 228557413, 12351593, 259492711, 117637827, 86329555, 201159234, 536257813, 820694063, 767630202, 104551604, 316081574, 275696151, 223440127, 579151828, 480906684, 26960450, 249676156, 390054420, 27361213, 570223265, 219395741, 701971345, 520331573, 634989361, 329484739, 202451629, 243579251, 363496681, 570925891, 47513764, 98916243, 573365883, 24762024, 499973703, 302114806, 296178397, 669053562, 36086308, 255795964, 187084384, 384979849, 136700077, 595413189, 15797627, 580213995, 71370504, 711236735, 950898317, 151311626, 325283596, 162700800, 347558243, 361631109, 230381272, 20359869, 509668799, 313842780, 73782118, 268743435, 380251794, 360596, 21239722, 21239722, 306784580, 449488938, 162159634, 91394782, 669062170, 545139018, 115369037, 406062769, 150072595, 696437989, 288200356, 94244770, 216812020, 106568115, 210315923, 25854692, 444640381, 397706557, 30183957, 152323940, 307475697, 248474429, 101306244, 2922786, 45980260, 43057474, 36368284, 142793950, 67033573, 249237811, 569031286, 68128303, 221003833, 258657867, 667653656, 735222262, 494131195, 216139201, 776685546, 661646823, 66480270, 292757422, 162392351, 154132324, 199739330, 549462342, 800453882, 435720061, 151605399, 254669934, 921052790, 362834913, 563371968, 210477003, 321737227, 431303321, 566779786, 423189344, 551228148, 387468594, 671801927, 725828870, 750515707, 665218871, 89316554, 708008984, 700742001, 511578190, 755460420, 760318463, 160168270, 9793791, 351535456, 351535456, 571692990, 97895993, 442563570, 101399357, 291338430, 275845326, 379032558, 389953264, 702858505, 537423179, 18989748, 330344383, 661570223, 98989197, 745316310, 83792741, 13957149, 526341492, 543025503, 120822190, 634146011, 278212344, 448519122, 670314975, 324592648, 137487718, 273241332, 415267396, 24712772, 755059031, 718838376, 5881169, 118232873, 112351704, 57200705, 71748715, 787950206, 406223554, 15123606, 413251380, 869054936, 636329824, 194471725, 220794726, 641694334, 842496953, 600032834, 62574696, 197305488, 495155664, 219725939, 74655471, 365770704, 471239567, 412399544, 136389997, 601245887, 580279385, 217046253, 408450005, 431539176, 187861460, 23153515, 236958399, 206315626, 429300943, 340547881, 121056175, 180417636, 271722361, 184928308, 171702041, 269052444, 172909257, 725316774, 34965790, 401272140, 232845553, 605559690, 52667310, 396445418, 78634159, 355889665, 618981783, 78921671, 57861578, 310991554, 303509787, 87719043, 376644488, 212884378, 433866185, 23997707, 135717754, 753089052, 75786995, 233809389, 315419639, 48069698, 526487186, 74266389, 690555690, 831843592, 724979121, 608647247, 277310805, 406068802, 190428407, 139459577, 334800520, 50649110, 188151254, 394222373, 263615861, 101118246, 550173857, 229310451, 660833651, 895236721, 425523664, 383199022, 762498323, 603402020, 269051099, 90195032, 212257394, 67623295, 431947484, 810539274, 304060494, 174769866, 695287671, 423213052, 159100065, 229163561, 668309089, 706480676, 313082944, 288178497, 580572250, 194276614, 26648205, 202462402, 357499340, 40136901, 124655905, 305115867, 239308039, 369179812, 393062798, 594929968, 163559700, 380572303, 693301757, 197846227, 136963822, 552990430, 19112951, 556481014, 222211967, 694665865, 385218757, 130297825, 19883885, 224268702, 352197903, 537938140, 142112522, 550360753, 35749388, 677832298, 775782719, 736356305, 684657927, 22882035, 649092665, 659369095, 451227033, 188063691, 535954466, 536074004, 314943767, 278349267, 112490938, 182586870, 132314027, 278779716, 618244247, 5619901, 138989093, 138989093, 198331212, 664639151, 822549088, 355999636, 240325120, 515094022, 32435514, 245130418, 737538530, 5573318, 140893860, 135320542, 67459203, 182953757, 217153342, 777401922, 726608127, 204821032, 741900615, 56063993, 523553174, 238097049, 72202078, 71173487, 304821532, 677857376, 331131314, 229404252, 55598119, 97510831, 284973138, 105209128, 33410416, 302400125, 171566451, 444087640, 255798233, 241381279, 165964737, 331534318, 173119307, 99518966, 460867503, 531209008, 505183023, 577012267, 158721763, 250765069, 181204861, 105844388, 313330644, 284134202, 206733903, 118183560, 4445803, 217645951, 217645951, 532549891, 87448425, 422906034, 30417963, 473257783, 142975010, 14766009, 62080130, 1826249, 143167330, 141341081, 783972784, 593521394, 334749212, 253003407, 279021529, 426211893, 294034318, 271829677, 242264134, 35061898, 464955104, 308353100, 686773472, 472093803, 595395519, 462533727, 71666342, 179206598, 37038313, 613873860, 796675218, 623287680, 514538399, 527924097, 356612343, 236758377, 265173464, 302540089, 495472894, 703828353, 123167169, 384564078, 275554943, 98920140, 202646730, 10151567, 362606446, 352454879, 479545637, 443483410, 430450778, 102428503, 349428430, 143831284, 738005388, 817380145, 192740593, 644793849, 767829028, 571548748, 529618323, 42458692, 232105707, 616007442, 279342447, 339959916, 459214057, 70806112, 451201822, 46542096, 715600173, 313253968, 331582208, 183962072, 289344632, 191381420, 147745478, 99780880, 444360152, 189199650, 321961241, 362915504, 104354776, 104495582, 354972421, 338627216, 88461175, 334547753, 124854737, 106914676, 419955893, 560721982, 330470726, 198678563, 282219290, 721935802, 8338630, 333883945, 325545315, 42883104, 197349375, 97003504, 150569966, 65217119, 381021189, 282372858, 19476, 41125074, 41105598, 100843644, 447155033, 20813705, 136806012, 692068007, 407015478, 113520007, 373997412, 337519336, 76215439, 788344955, 242065915, 387353241, 163759514, 563195693, 36808811, 884721798, 454132956, 50853472, 207793677, 308568565, 188291168, 32836243, 528379475, 638052014, 404319828, 656771977, 761876246, 705940320, 125618496, 44030204, 6674037, 425782836, 419108799, 363878667, 456705284, 490706122, 123858617, 31097149, 45685152, 283358554, 264530724, 151144797, 134469786, 129803131, 371602269, 685399325, 453141776, 92783546, 8833651, 295600390, 295600390, 299411118, 273753363, 532785927, 703626939, 439396438, 261440446, 118699018, 478889874, 620733589, 388500361, 593798533, 550666013, 428642362, 523955278, 504675828, 706118448, 912302916, 720481676, 75868885, 25251147, 217875335, 194629982, 550737714, 582997069, 391305823, 89705742, 91026048, 269668766, 155953975, 76985143, 267437614, 216244487, 214218869, 208659698, 574834524, 186494160, 115244324, 377469222, 151486970, 671349267, 348253459, 198603109, 68343294, 158948223, 841870329, 661969436, 456513049, 531134399, 171926282, 198037422, 465009542, 289546684, 268534189, 11754916, 811033977, 527373182, 677171422, 610044035, 17351802, 60761244, 92633164, 120358867, 141973327, 4529162, 817420712, 812891550, 907890116, 277845585, 145371199, 66057093, 65468226, 485616769, 135214879, 91078226, 415809905, 168305289, 376154767, 849280049, 353799738, 246870976, 779047779, 207849442, 293216890, 102089139, 397671831, 126794757, 560854223, 109208115, 363249321, 654385941, 189286258, 319416203, 165200367, 229072163, 235381367, 603303182, 217546889, 651991382, 902462369, 318597207, 564052959, 445818225, 303497064, 70558890, 359498866, 28532519, 29649262, 313309020, 352635154, 147463390, 65343215, 173516213, 750507066, 629995101, 277701273, 321430287, 416685148, 286750794, 646131702, 589869569, 509286155, 200525445, 301509875, 132920047, 175063917, 215500759, 106513066, 1762830, 2100145, 599340510, 337315, 597577680, 597240365, 668115610, 546164427, 222447873, 863219845, 219828561, 307577024, 29697308, 519263188, 317415129, 115266750, 183458687, 251416924, 488728040, 413830522, 101320074, 48703097, 110040612, 235311622, 319916967, 380040557, 787892996, 724470191, 695261183, 835840691, 652970426, 649051109, 436216976, 484981677, 76479200, 539881253, 499559921, 45981053, 804992284, 496944188, 105242554, 98464099, 534463119, 519266014, 31537300, 48244328, 107450086, 452275938, 145166230, 18081235, 554190806, 154937224, 292019759, 322371682, 14790990, 644719409, 153908769, 461997089, 406673140, 385170687, 238879938, 498946823, 64390648, 77844078, 177870911, 153608633, 335045339, 352549180, 780179984, 253915621, 342177481, 751000475, 814033697, 341224718, 460740246, 471486519, 115418755, 455810331, 79118093, 177323097, 232319940, 59200953, 447251445, 360541754, 372611476, 797297186, 638353655, 227601020, 389630426, 163361991, 154369132, 102312493, 517708262, 163606419, 147217150, 215937634, 94565505, 341477867, 92081237, 253313979, 324612320, 124104659, 118886976, 483460834, 197875134, 34721715, 319031656, 42596311, 365452334, 66106166, 577014857, 306444736, 177111694, 75254294, 106605782, 68006363, 386881373, 427355571, 37913181, 30006395, 310008366, 63250061, 477432942, 626035193, 751906000, 740895411, 824876124, 523046995, 533522923, 229969221, 340777575, 254769049, 62158914, 145928469, 180731281, 733493237, 623235199, 483538104, 803374827, 842172586, 265746916, 38451208, 93860043, 444910920, 645135185, 853036952, 342010073, 531420410, 687412894, 87064147, 784132000, 460630618, 368650729, 780055856, 796154629, 661857330, 15572527, 487267989, 451271240, 413427874, 192718814, 394467619, 194695694, 221085661, 287150419, 75350448, 25737099, 627711978, 13419053, 804773386, 722187547, 665259427, 659733046, 19797798, 800775845, 740831164, 764076782, 581256855, 389888680, 584154327, 99196586, 550181877, 411879427, 187989672, 43428175, 348810709, 500514244, 791107705, 751402112, 144046420, 253607550, 659500260, 870368, 686593972, 685723604, 342632759, 337757664, 280726947, 235799974, 312770550, 169329043, 105859963, 139052799, 154969258, 437907901, 85332690, 566109009, 50553364, 292249032, 537080900, 761870524, 701114438, 294828067, 236709511, 744564761, 861118198, 6712068, 181288198, 181288198, 660436879, 837035179, 732930461, 763564271, 539024909, 122459101, 630356, 208756162, 208125806, 443100813, 626389893, 175853349, 138165986, 63555066, 135573497, 249787681, 308367837, 93677445, 19474222, 395899748, 129464596, 74456711, 50934151, 377451504, 569954549, 330387147, 342314911, 604842594, 196536532, 11359332, 365674535, 413312857, 693108557, 24337543, 600132984, 276662535, 202711735, 623944176, 503093355, 295661544, 17174100, 580440748, 365174120, 244893878, 182169687, 275591768, 377040789, 228517518, 187990822, 448241756, 456450147, 308936367, 529596831, 214528441, 38073009, 463160686, 161494354, 54520977, 896841311, 309263312, 439688844, 651037193, 148123824, 213866484, 77831490, 96063120, 73910257, 10445144, 181975930, 181975930, 241165304, 222260307, 474303082, 44946115, 41765438, 103770780, 723807039, 658439984, 282128117, 338286320, 58582151, 264181867, 601878107, 130438600, 158682973, 115843799, 696232341, 35273181, 319296639, 429072687, 69417111, 191751283, 381546422, 551049096, 502079678, 471890021, 190123566, 41182087, 181112968, 148135031, 341866837, 419909078, 94117598, 208763296, 119589724, 149315127, 72901628, 464080226, 285512687, 103305127, 42253744, 767579843, 262712690, 458773152, 158217694, 434196951, 264403108, 117805089, 419914427, 776673220, 150063964, 57746680, 555187296, 96301951, 133969020, 350610753, 117398573, 387697173, 141310703, 304784230, 145593554, 53023631, 43029953, 470803466, 547879509, 99626395, 721705411, 97687907, 280726652, 332863161, 228337402, 201815758, 11468220, 94810519, 125680516, 841898121, 350701857, 361020460, 580822467, 219179342, 236532784, 238415337, 362705180, 455395872, 105412499, 160011075, 301608340, 237939244, 337192256, 378161566, 96298085, 199886640, 49766723, 593134348, 876783511, 476216202, 347611711, 551828114, 74560621, 613050070, 175553728, 702783749, 597326671, 699587714, 510201379, 261647623, 208406618, 244573882, 593868076, 611380757, 9080884, 258365514, 258365514, 357985759, 125477784, 23625667, 192764413, 464905372, 60382675, 29694589, 141643356, 58597648, 125428177, 500509785, 142932697, 41728875, 110750112, 363100766, 239576223, 686271286, 375175773, 340573744, 538330945, 440829846, 105060273, 31973766, 195551378, 381206418, 635746723, 331732036, 125928114, 63699476, 72360606, 245846850, 689501358, 518518150, 286704150, 290941270, 388937520, 377736657, 70723992, 324446149, 183660149, 568022121, 354850957, 180449590, 288340731, 71857815, 626207625, 112199418, 547727886, 270924240, 3790216, 13913183, 13913183, 404542553, 350011522, 647753388, 209389876, 417590574, 581272509, 656725092, 611507154, 666631182, 375581070, 356060512, 306978510, 372065704, 45049236, 93963812, 637806349, 146382713, 312477605, 267752303, 354049515, 203674809, 20579377, 394925192, 298361576, 790564101, 529159539, 463575239, 486090426, 629827659, 744867308, 470242682, 356356687, 75289190, 769579447, 649491300, 183315890, 88053485, 52011502, 474489612, 118217804, 100526644, 245095809, 532229910, 245590411, 502640578, 548090718, 735265151, 767688983, 713284393, 764545329, 684807131, 770367290, 535879117, 81801313, 13353340, 366737835, 717089899, 259464351, 216221010, 292941758, 473080390, 503524931, 606842737, 98874505, 914552584, 300812728, 440865602, 750658713, 763780374, 702976487, 413197781, 20560820, 174324342, 227009615, 748894632, 685216116, 403866579, 292026049, 404164472, 466017786, 179812747, 793703726, 122012106, 207738827, 482407924, 109796439, 353412394, 691357365, 330543234, 416242683, 39184409, 623509731, 57517283, 34143077, 416957191, 238500289, 162705877, 259986804, 25005007, 880026878, 753254299, 803803470, 822357500, 692873761, 651409562, 291222657, 29939985, 459058664, 297052020, 114063810, 436458597, 808074796, 164805321, 791922656, 478433209, 566372617, 594619286, 467529328, 81044724, 4938793, 240678721, 235739928, 305360648, 270799724, 485438402, 88461221, 119021861, 135494279, 186418993, 428336890, 294696378, 536239781, 77916192, 655706678, 962157308, 576907665, 357597141, 441970815, 36512046, 134408487, 374112485, 500380201, 382388736, 39218687, 192115353, 221867460, 200850379, 388621860, 41209444, 121809720, 543594389, 204110278, 479629201, 667406858, 462215297, 159002500, 868242348, 734086385, 626779426, 91848545, 204524717, 248553183, 791187005, 68754867, 227849393, 42052973, 451808104, 373038083, 224815310, 319283135, 40297414, 144588432, 293385824, 53609864, 192872336, 197827893, 343867625, 46637814, 108504816, 135309463, 16566639, 182387048, 471126954, 130631584, 873074636, 668478663, 233058087, 39866230, 658803489, 37001751, 271482287, 357104748, 222172883, 423357500, 457615296, 62723148, 111597814, 82519700, 255919238, 510246672, 275560489, 358236800, 479883093, 835409454, 22586865, 835746265, 376543929, 549773222, 655820018, 383495091, 247386027, 654673164, 371257859, 557242405, 46104006, 157634598, 217347274, 478561246, 20625537, 283941438, 372261947, 706413519, 202939843, 54046305, 73454366, 755687735, 420642120, 211082765, 71602105, 104226879, 95122278, 114175583, 51147491, 307045871, 366397538, 146634064, 371478177, 6196462, 518372942, 518372942, 72975730, 690467637, 101160994, 77269472, 690452851, 231388566, 89117104, 8834974, 397265140, 397265140, 143670534, 76206879, 176032566, 375102747, 831221818, 461891881, 343775252, 451807175, 135228441, 276106528, 247172935, 332865242, 360458398, 130149254, 736129102, 317869752, 225175082, 331929263, 191276591, 308260983, 213018693, 34756350, 312754258, 394283708, 148918999, 591920895, 493519919, 319218887, 69899888, 500390584, 571380128, 300639782, 354515583, 143880199, 199621464, 57308840, 93731453, 65222559, 374805209, 480088067, 447299864, 78149872, 433829827, 376956313, 298774673, 18323695, 469051875, 109932097, 75925511, 16280998, 145790282, 493297713, 215958815, 349091124, 600767066, 12571305, 879606989, 629800321, 346292059, 619434132, 108722609, 317955565, 337531601, 11433987, 623399099, 175786987, 835675752, 413967107, 245173046, 487166693, 565426214, 395139736, 199785036, 84528219, 232610236, 415969982, 2280283, 297529166, 295248883, 444566940, 447963777, 715770611, 185727419, 467262383, 531298443, 530202595, 364311407, 193665689, 481300396, 843821578, 855424897, 324550957, 603532681, 726590955, 350747885, 283899968, 229441906, 203659730, 96170296, 25331144, 42630691, 558211881, 145794300, 144684969, 403296908, 525656663, 191285512, 23510471, 96523018, 50339698, 34871112, 162207461, 49706729, 330670165, 298482017, 44731615, 322459398, 190094750, 427398843, 80781779, 397462391, 513659539, 559308325, 188817691, 584981675, 194645081, 321251552, 316898561, 32925926, 553010749, 119613604, 239218840, 108176779, 531154040, 532981094, 447460336, 438764344, 505814912, 256945435, 307642225, 108110581, 589463845, 173517131, 485671346, 45614403, 672362186, 12988285, 187215962, 437571119, 429954106, 559117852, 709349142, 733117162, 817927103, 650871615, 307810861, 211791592, 173875470, 468499259, 828974947, 46351663, 259544734, 248960477, 740819255, 332589477, 406917469, 215603951, 111137713, 594893953, 35268509, 693283285, 698972092, 397456909, 368283708, 789147640, 41966480, 794950154, 362120932, 410318417, 179320572, 493351474, 515531121, 568730395, 85193939, 391219594, 54912166, 350671917, 271470310, 431222838, 721284831, 77108221, 81030655, 694292976, 873200655, 843462755, 154087849, 577026725, 228777356, 303589341, 204143100, 193280885, 221128517, 499403623, 282693951, 310180593, 43510206, 172037837, 198280995, 547254487, 724152457, 113958399, 792208209, 297002868, 72845795, 195745210, 348166412, 202590095, 110624657, 290161238, 165877273, 130557419, 291052010, 86685794, 860086625, 721889089, 504398508, 378454745, 370261003, 352032164, 101032883, 286886247, 301920434, 752239507, 687246014, 19691380, 93414870, 283081674, 949847430, 45834124, 946568945, 259164709, 186231844, 75994656, 206845816, 427497493, 82285039, 764562128, 422388009, 390500572, 216065216, 462606742, 167181226, 390366484, 759304115, 170024769, 432025628, 353331570, 157089116, 220995905, 144273864, 323556809, 855605600, 641447705, 251115054, 312520885, 657104341, 216773905, 226597863, 64973405, 7753909, 245547483, 237793574, 356338339, 37505815, 740766110, 51001793, 854878836, 616238248, 239989143, 9463150, 166627294, 157164144, 699979149, 869092344, 269220598, 45772817, 249969498, 900731504, 822886012, 400110840, 23570959, 77719737, 194191043, 202422932, 132351080, 204437768, 797656939, 477509980, 265936988, 50876124, 418731033, 339466067, 703165251, 74497920, 554130953, 251463904, 351664425, 557185028, 666903092, 425358785, 260996798, 282140531, 870615538, 380839873, 430414630, 721332788, 15641628, 188855518, 479000097, 133148659, 109727024, 651416275, 812711431, 293709043, 432864753, 49963887, 310968266, 397086181, 168709026, 562503861, 142500805, 284572106, 91862046, 742423046, 123359504, 34040674, 420082750, 350561976, 624681158, 29357117, 24523180, 441170307, 809690185, 372923166, 38905728, 50970300, 228382796, 522034723, 511389773, 530195587, 298601026, 413873567, 676761956, 19450554, 307315819, 211581714, 29342955, 31110398, 572690582, 707278556, 359301202, 31969502, 382694798, 41205569, 297761798, 120814151, 22943248, 438413169, 713186379, 446634796, 424757859, 145994155, 669144520, 400021107, 301262690, 60231035, 284660232, 262078716, 422902661, 762467877, 559023610, 418748832, 181986072, 305677750, 516311129, 507272951, 471275342, 590802096, 374511204, 298350259, 468494340, 35176450, 1643535, 928823457, 928823457, 675456126, 181356439, 312133379, 45447149, 823875887, 455933614, 135692208, 314384760, 6024736, 126727607, 126727607, 613074300, 533454133, 762348075, 203208550, 591005220, 217722763, 373720358, 243521464, 44747365, 372278752, 222013173, 416146054, 294411325, 105340103, 479964048, 212119551, 491707939, 849777111, 678578369, 72205542, 497090747, 110490549, 197820961, 297810537, 57356153, 65875697, 10717415, 395225991, 384508576, 91327751, 248442317, 365662249, 4747202, 700969289, 700969289, 273438024, 75919494, 51884278, 189394975, 57544710, 214777716, 212927250, 47905429, 648544919, 546626021, 342054024, 389710050, 426691347, 542819909, 112626237, 351977407, 284226326, 928974984, 44463496, 614885775, 45286364, 329126784, 584313038, 755196397, 206897938, 474228674, 803072433, 802460744, 146033587, 293486322, 401411527, 385251206, 325719508, 81273198, 874270052, 567498833, 367366712, 587489568, 323333903, 395865054, 113574361, 268667819, 80831567, 260155057, 246335909, 28533610, 217338976, 7911453, 721268333, 721268333, 208310796, 506440605, 575251223, 130571148, 851311407, 68032719, 471832807, 153217725, 133123724, 244365894, 375444398, 400272414, 277483398, 477494110, 229107298, 51704887, 262449362, 109464824, 21286504, 479771514, 572186717, 28328290, 432396261, 90579865, 262820835, 821449258, 879886480, 829360470, 194927198, 290563646, 60687975, 229464796, 719157830, 38635633, 253253682, 265741604, 51395511, 280375547, 214431471, 70875479, 503152439, 11999569, 251958501, 237174403, 47865911, 244365617, 133958292, 612509130, 771001320, 684433813, 458154559, 232258169, 90467771, 130932750, 519852074, 24078317, 304244495, 529178690, 39398094, 301503790, 731804796, 70038251, 695257732, 230938828, 347572955, 167273563, 36486900, 201799657, 215235770, 527692913, 74025101, 23640510, 794075523, 110456362, 951383220, 937743869, 779403671, 185434191, 241319228, 26160179, 268682056, 502516420, 178781805, 380278878, 292652302, 252083207, 536221299, 38044227, 104983191, 690074691, 223259348, 129812818, 182480675, 203767180, 446976199, 559184186, 152541704, 58198838, 165908039, 386842689, 13322498, 515514479, 312680356, 338536764, 631788894, 703635401, 482707107, 223865437, 29936835, 788727981, 793113585, 584300978, 82564729, 141645034, 274083227, 227884203, 264997284, 314847621, 656271183, 5882650, 312791398, 312791398, 299965163, 692799003, 699167476, 442057863, 12920538, 198961405, 239694880, 43026618, 655011167, 273703623, 385054338, 65321658, 556426400, 616817979, 352221077, 323321999, 68697603, 229867161, 257177231, 379797332, 469666152, 803540304, 33389748, 581581084, 30928798, 60786008, 158886985, 141939951, 112050692, 409420949, 401918609, 285387246, 18208141, 144801836, 292242157, 56452564, 140060820, 276798818, 550447591, 270195576, 623449083, 737207579, 685827948, 754525767, 754486075, 35403309, 101729888, 380679053, 329501901, 217841326, 131922097, 409794675, 533662103, 614493061, 810668126, 199759078, 250670396, 442158347, 363050960, 565511840, 210294304, 47401286, 94156853, 533458343, 400252751, 129378882, 146182983, 133195842, 415565882, 398400903, 122162568, 325867180, 574763397, 143222774, 166955523, 22619232, 522918921, 264153378, 478098786, 413546338, 297809720, 488636252, 776764159, 87595683, 162600254, 463933121, 228332581, 698578190, 395948939, 376689936, 553394737, 104437810, 250626419, 179177069, 389856919, 464532463, 305083084, 340544437, 650928645, 25437384, 371083308, 525581570, 894444100, 477230092, 195970287, 129975107, 575776401, 237944581, 223512830, 148366035, 46955360, 208716632, 259812966, 516073245, 80755196, 22506792, 192742769, 550771204, 541914691, 74574943, 243357480, 346139433, 541449404, 95383553, 22656661, 327716758, 251906056, 360438015, 404871139, 199138677, 221303566, 148109520, 8886272, 101303780, 101303780, 202782069, 295900488, 330238814, 128721070, 580075356, 75300657, 375148769, 471436659, 193864096, 161574227, 119000644, 330857995, 405725764, 335240968, 589966291, 84019418, 43057689, 392084523, 393804908, 352860184, 462821998, 452470183, 50233198, 236134370, 63069351, 30499631, 296907295, 207352022, 116483753, 590999914, 485768102, 285604113, 386206860, 316434988, 130091018, 223059538, 173016558, 82368784, 556362739, 335154013, 466359448, 57985080, 655900596, 23546454, 272497553, 316170934, 390254707, 353909669, 237443400, 671103508, 38798163, 765325454, 432839709, 200859305, 145763401, 159534073, 757882884, 361662925, 71211264, 648681703, 762920403, 27063222, 34689411, 177753845, 36127149, 128040282, 421515210, 857612118, 538136958, 144800125, 652825932, 124715801, 184203012, 143249437, 134589996, 167161320, 347239547, 240901914, 133284066, 30418692, 553608941, 70279392, 96239070, 303042712, 278311018, 33387852, 100937461, 330549512, 301975619, 177366950, 74324101, 372748437, 319272815, 700365605, 202937847, 117157389, 279083255, 23490589, 129987437, 596594172, 72655067, 52865538, 383815785, 193760543, 637926819, 771294500, 577350504, 30353450, 316737929, 151320373, 340847899, 114687885, 10523284, 447881578, 437358294, 384354241, 133433269, 465448941, 596139970, 240374151, 202542612, 469490605, 470038587, 268016226, 186438468, 185882009, 86556482, 349099683, 146850140, 69818406, 700247863, 309316414, 536103614, 4811803, 471754754, 471754754, 105403887, 245808952, 301572669, 195164631, 168690135, 150975797, 180087076, 557736783, 635976307, 40630014, 113682043, 920587003, 263830050, 471608011, 56046307, 298953228, 119079167, 167273712, 402601929, 260303814, 355312597, 299763047, 1547102, 443524710, 443524710, 798249748, 828211829, 867051507, 470069026, 297969165, 116589512, 146730534, 792333684, 56125905, 753335084, 629632624, 218551738, 368356079, 911245219, 73394860, 48880153, 627462353, 183741252, 662613114, 580581295, 219702799, 25964034, 383853169, 480873343, 134763963, 64090290, 554999112, 866367155, 409603090, 232524567, 203442818, 35208580, 133658777, 457097711, 248482219, 362744787, 654134197, 383594108, 390663882, 551662171, 163496762, 68678960, 121379317, 82603783, 104311500, 299096657, 97082034, 368209377, 478209836, 49038532, 666685424, 412473586, 482521514, 420547887, 179175061, 26484671, 61877558, 565488927, 413002578, 371700279, 387209067, 152599015, 146852708, 173719533, 96493560, 362047428, 295699461, 749721356, 758050793, 568282780, 71370403, 471446928, 588176898, 439342125, 481019188, 311858965, 27358619, 221314612, 117531535, 266510828, 377272734, 236963223, 305619245, 508890129, 131016262, 437051012, 17738880, 243414736, 304706965, 500310520, 931602164, 584933344, 435924059, 520970787, 565257137, 573297963, 121121316, 392095693, 136257473, 644302861, 181455786, 93385645, 439060284, 3218924, 806052855, 802833931, 891739554, 578290791, 66997844, 578466524, 90262163, 940540276, 491738089, 122641464, 149907200, 191348504, 269699823, 626936271, 952812812, 647807268, 363718523, 72445533, 584353347, 177245679, 209488449, 375989568, 396074227, 52716109, 588892156, 398859646, 221154841, 4868791, 700690835, 700690835, 543066736, 600831140, 585277168, 248450719, 231169705, 10969917, 54163209, 43193292, 838699781, 61930988, 696576653, 132587533, 366417771, 26624797, 80909414, 170191853, 113552402, 102258194, 304579872, 833644502, 290121751, 557540939, 27203160, 326632211, 215590615, 239037220, 128093141, 290509608, 517510632, 228723136, 194132123, 53326008, 754625105, 305927, 499099944, 498794017, 87650055, 5525101, 368710775, 363185674, 270632205, 336507452, 225451878, 449994908, 787895187, 76755188, 915166225, 534316764, 137975902, 247615818, 199133949, 119264651, 30750072, 156099358, 41171152, 697040059, 344767607, 176903671, 196431208, 276787306, 36543472, 188555432, 374237230, 586325012, 637635481, 715475631, 788995957, 609571505, 304627935, 453898866, 670292292, 47032207, 99244121, 132372651, 466628792, 731728576, 621987124, 583226735, 313439442, 5490839, 215157698, 209666859, 255245321, 717085181, 457089027, 399432977, 152627523, 826324787, 6925429, 133219141, 133219141, 162913662, 130387760, 411510632, 455042141, 603745019, 86240798, 332868480, 37336127, 137247451, 294033105, 156413770, 124038008, 526473827, 82149034, 145192898, 279459604, 586675440, 855518936, 678165530, 127573991, 309143859, 173483816, 295429732, 173392931, 161829587, 372943315, 143200637, 294229798, 104781213, 401997928, 73124449, 103571350, 110349893, 735652499, 124408179, 66069672, 526599561, 436078574, 140257308, 644705996, 611328694, 730984594, 252685321, 576746233, 33290400, 594668375, 135001910, 78618785, 158220806, 36430142, 102926958, 329765010, 506097879, 628307537, 464108964, 246919703, 580166554, 319446986, 141330886, 308543263, 39017588, 163022010, 429339297, 182238006, 279522793, 7526957, 415333230, 415333230, 542284512, 514702538, 461352354, 789807599, 60248619, 691712140, 113650852, 360333146, 591374169, 753851249, 386175250, 502208576, 243497151, 43138969, 147867257, 189104933, 38632594, 455404737, 280173384, 472495471, 342539516, 270711684, 633359350, 511505593, 67249942, 363754513, 237195797, 118489985, 179442912, 143263973, 292209418, 21479004, 397975618, 375260909, 513911951, 345086570, 805038537, 257674127, 367961703, 149723094, 75415705, 559691497, 820585063, 773823847, 730447556, 439555691, 336762770, 388699233, 79766006, 25490693, 255211060, 250826136, 343103595, 53333675, 400758362, 214592604, 24641132, 149363041, 685850883, 838063581, 692960504, 433404620, 207388589, 95002573, 213010718, 391587024, 627432280, 270800178, 762903239, 774319612, 125702558, 88949939, 31771497, 92924858, 356130075, 254241761, 124195977, 84024656, 113521145, 545560385, 330899975, 87432938, 445582499, 280464336, 529546660, 824818378, 539151797, 123908954, 118793720, 71642430, 113780651, 371128600, 221362823, 10970426, 597328468, 597328468, 471687915, 185979534, 89114786, 296034069, 69261302, 373573887, 163715836, 692074589, 839843986, 115708545, 372069128, 417470827, 397253333, 226533610, 507291900, 14964134, 471506143, 183338383, 112980305, 59219152, 381584453, 733541924, 336628836, 221004509, 460528839, 109762230, 145555268, 822793667, 927597782, 572455851, 21823490, 379180622, 357227979, 154213420, 421199354, 342276891, 444318001, 881289106, 824274772, 722085864, 166793833, 19084809, 294637901, 516815446, 384264447, 390125635, 245011997, 242972686, 514266933, 612884134, 251773790, 419731744, 75500353, 525417473, 149914857, 636101422, 302091494, 109564406, 236403999, 215292123, 12569846, 74555244, 394756989, 169074914, 517506990, 337502137, 163009582, 526512148, 697350818, 680092788, 798007320, 479107774, 461035421, 90938982, 251268144, 230242365, 634338534, 658095432, 287207783, 225356407, 148788732, 38697679, 23167857, 651841716, 446210088, 197430092, 23102846, 712302567, 45087885, 655275559, 376924262, 385219427, 301180015, 58498673, 350616648, 356789087, 57513289, 383346285, 22786175, 277967285, 326234909, 38463302, 485650649, 4806133, 231516958, 231516958, 533180475, 480248180, 79785381, 42586126, 28548908, 93581480, 468869130, 677154988, 340724668, 469061539, 419921619, 354444369, 698111652, 94188087, 390295654, 386909676, 187900854, 437983820, 240248412, 222843247, 54066477, 114360881, 28099958, 71030781, 418409736, 49063769, 522866329, 442464171, 528202331, 638109466, 123434159, 108194727, 49922134, 66247150, 124592536, 24847971, 494278672, 329419435, 69675469, 256280160, 529641559, 114386014, 917252041, 88108239, 124180483, 464561939, 10382225, 182649596, 172267371, 294364739, 521695987, 833125768, 857096258, 486857341, 561033362, 342469138, 387329842, 54130845, 492877555, 102551792, 279404888, 437634581, 60278130, 103337468, 318002466, 609713649, 272024591, 318681212, 4088722, 869693006, 865604284, 883065057, 9196529, 49670387, 49670387, 589214099, 473416674, 746387216, 541323148, 168120136, 102786721, 570475581, 705521494, 212645988, 406251219, 310662181, 177143264, 448724730, 414104067, 244725350, 261873971, 319621841, 810681476, 450723965, 85395389, 148645973, 134650257, 65079763, 241040158, 376840342, 447195931, 222552495, 211128316, 74367611, 616230305, 113719598, 679474930, 24082533, 358676054, 177689694, 519485017, 836683100, 957036704, 672430361, 61661991, 271589610, 147689815, 269047432, 425752816, 863921886, 51779728, 626014105, 378557227, 633109914, 461638853, 224387499, 490365637, 439124644, 225974162, 682061774, 272161052, 189367836, 105054079, 475099273, 147235134, 130613009, 87827999, 497750753, 493789714, 735279682, 293537146, 125250959, 650968100, 319635800, 512025534, 466078479, 289093084, 3569297, 583109246, 579539949, 497871366, 618422532, 540549810, 645685075, 67102302, 646100881, 516601344, 191328930, 360129773, 243982548, 21622640, 152322597, 39548492, 193524617, 373311208, 341212894, 645145326, 760779407, 594021286, 227994565, 449728501, 134426153, 709593223, 892897241, 182773742, 460134770, 57798821, 18721171, 147301512, 23836644, 36880157, 403519860, 116445649, 504383075, 420508659, 667998055, 126448099, 663389300, 740045429, 209778132, 161313814, 227088508, 268930699, 457920917, 638723622, 119459551, 468920890, 600620691, 100268549, 383383041, 449567117, 327165227, 148080291, 65789870, 647310773, 519102184, 97534719, 260194185, 56778093, 365580010, 332710716, 148870992, 34765053, 10162569, 106226894, 106226894, 97670810, 243836964, 471147378, 315871804, 548059275, 461961200, 8662941, 58238262, 58238262, 24291179, 240007378, 184412707, 644336656, 148958250, 92687872, 156256380, 648537691, 962361041, 960289508, 891605231, 61531358, 397257686, 301552478, 136586045, 483875631, 296156881, 510086946, 217741298, 565142254, 183033489, 468358167, 612294863, 259904469, 488584131, 301480493, 278558272, 540684464, 158608196, 110786994, 392580909, 325529666, 174597617, 514742225, 246551960, 288330394, 93203083, 436262120, 484880059, 678267950, 248440485, 488178842, 477037753, 216148144, 92448871, 503129013, 152122040, 19692871, 810974444, 624722600, 223951549, 431680589, 125734560, 739360518, 615961887, 514223069, 149309052, 604944671, 334455399, 50566621, 229425060, 848180116, 625938560, 41496782, 551783720, 132183986, 891888075, 137701956, 137762372, 301584489, 17311512, 41046466, 357235269, 562438122, 576486349, 146801192, 793489757, 522656784, 447123741, 631043491, 775266811, 575038971, 239074764, 221032285, 420165329, 112009490, 151051193, 667065106, 159356138, 132733919, 190337032, 99532402, 246180232, 186857563, 232344439, 180978392, 181866686, 320941776, 199189509, 510380460, 142053384, 342247701, 57584664, 145123170, 638357471, 381778668, 127570530, 659705093, 846173440, 42950950, 928984543, 421435898, 365656926, 33009648, 589615825, 161661278, 147897291, 507647246, 349839184, 116023460, 532756964, 452726700, 308169868, 230883323, 123964948, 120977352, 431342058, 836393347, 546038574, 81265148, 306752674, 515398652, 502963105, 42548222, 54842241, 488733871, 54739947, 273410397, 146389701, 119941881, 87764736, 420442698, 532496978, 560467291, 148044737, 392776578, 89755472, 528093694, 71601247, 839848211, 677799101, 511867493, 379404583, 75317105, 338313614, 264306630, 570357124, 169816274, 60183164, 720795750, 668443137, 741048694, 887817924, 435942599, 475739971, 80253982, 776307838, 276713214, 285501154, 777559273, 4937215, 692976423, 688039208, 330566700, 293054184, 663282373, 26918720, 646129995, 663871815, 674742412, 351994545, 95527602, 472676394, 683637412, 216793988, 288857003, 18312063, 618001842, 582421809, 445155984, 158426894, 185480014, 606455094, 19589905, 634247003, 52321350, 344477757, 43031681, 368112236, 51523243, 382287125, 284227716, 286187249, 296158290, 277835661, 42809031, 374894810, 617513847, 36010693, 105372209, 128758578, 44067485, 102200122, 304213474, 83675361, 62747008, 266189483, 553517485, 966507521, 322934524, 11180957, 618315497, 933599691, 58532588, 674418308, 57716931, 787854493, 620762686, 617223440, 935651020, 89339992, 237822230, 189231333, 175679421, 234757794, 408071192, 409701472, 416285718, 74154150, 215304306, 151028445, 364560933, 463342825, 291911738, 551226237, 29379011, 78705813, 368232324, 114189913, 34744234, 587354916, 158240289, 7077663, 393050986, 393050986, 178553836, 38659587, 261642854, 39242138, 78084491, 111264470, 30117756, 173208911, 145641058, 446380698, 274382037, 480348699, 41417420, 42745818, 804594980, 632110848, 6336985, 19427930, 13090945, 12979929, 17685079, 652058475, 780330985, 719908213, 289214278, 87885397, 151606150, 645852290, 66608628, 120351294, 767321061, 516516102, 87246287, 438038292, 249359020, 295974016, 204572686, 334235762, 346894229, 651595865, 737906201, 792816949, 158713383, 118788277, 70174404, 81827062, 549756853, 149160990, 128046820, 370192166, 636967933, 453934025, 732123957, 569162166, 287134123, 682741330, 110749983, 567519914, 373725586, 147887525, 101712446, 509938644, 475878539, 836961070, 18009338, 873449582, 52935948, 229081920, 225404339, 217657507, 118207537, 827716672, 614015002, 622018269, 781819991, 312705316, 37831303, 6597463, 75304585, 68707122, 283945039, 389284552, 500714449, 258118249, 537131558, 322683138, 322022361, 123467797, 98267908, 344551602, 433389424, 28706401, 84830359, 169453578, 572170474, 138132368, 397600549, 484349723, 254937201, 38663157, 357151175, 536800772, 215799988, 425354956, 225670705, 170955473, 597637782, 713925273, 449163429, 203241852, 483045602, 653460713, 160883472, 27446386, 357042952, 70563132, 319758026, 456345139, 14149530, 340411158, 212951440, 555051337, 715717375, 499460622, 39838121, 554053405, 226656297, 303223139, 382965621, 94909397, 856877419, 922307464, 640613922, 6402447, 540731047, 540731047, 463620063, 16431499, 395721312, 764880393, 271727838, 649416930, 281812329, 154423793, 738607068, 416338645, 227131534, 27416080, 83323854, 287083027, 166799248, 361043639, 651612800, 648239039, 623416526, 236535613, 30770926, 121010144, 11985590, 196596517, 437463968, 492517101, 293708391, 433033026, 197319846, 79345506, 312422912, 73109253, 476427013, 2590467, 660230923, 660230923, 93943137, 265811758, 213909096, 180421273, 623717752, 4863809, 627141334, 627141334, 386558374, 57361136, 270250831, 621122838, 278567512, 48239458, 529290080, 574943451, 408981443, 138621160, 474079972, 122199073, 26108075, 305888224, 128931192, 263978940, 355706909, 99412901, 413039513, 141411987, 343029854, 453655402, 207767334, 141973410, 73273129, 886928114, 699138374, 635308122, 484218288, 203324295, 75025085, 483491802, 714263092, 737343667, 20510982, 633692727, 594754013, 184081411, 396987174, 275759057, 487828983, 315804885, 159684590, 485895123, 761907970, 58862962, 70379299, 88937291, 110249924, 377554730, 173777811, 48838368, 490262160, 917722076, 118944312, 545942462, 22269683, 437079068, 600484072, 713610492, 798498621, 160787504, 157819856, 558614105, 731858804, 10562823, 14238372, 3675549, 245649439, 241973890, 533741432, 177688650, 174762181, 100052187, 193107750, 97550034, 300564179, 184917693, 248939224, 816708269, 345554580, 59674641, 482049676, 647910369, 278823473, 66606352, 22253433, 284450046, 23479975, 128066163, 23369351, 222589909, 5441135, 407169516, 401728381, 739454557, 496133964, 349624818, 392029153, 530700764, 60284725, 40108448, 53840753, 727989866, 591928215, 228874713, 45556817, 173557355, 206593599, 833454941, 385359024, 194162281, 157614244, 306918157, 335662268, 360418715, 284527280, 425270399, 192484906, 415517613, 282735182, 117050354, 464166293, 495649304, 568970905, 592925369, 673056485, 288370026, 101848854, 275216651, 546809626, 215863893, 115350238, 269682201, 21397090, 213427861, 100217643, 116598160, 213929127, 71703302, 49677622, 881246281, 696202874, 446165872, 416436956, 512840685, 1999189, 121684179, 119684990, 33277125, 248941080, 581240182, 230492176, 762220226, 767852049, 359770060, 291784920, 246649213, 173629828, 304514285, 324126941, 660755069, 5380874, 84819164, 79438290, 479944666, 557192352, 532679681, 226185690, 19134002, 17964207, 54662213, 181432671, 141548074, 86451597, 217646045, 499236612, 165031279, 4305982, 136709286, 132403304, 822456428, 742145299, 223940157, 147386015, 449645096, 634055402, 97198898, 680809034, 817223662, 777445714, 627548952, 355001676, 170199995, 344772443, 231675513, 195869451, 20990413, 583203987, 364623545, 324603503, 78014551, 91296350, 645693393, 187082273, 145688977, 64630440, 504976912, 710927703, 13972279, 583040064, 54028507, 37673624, 41659704, 249682816, 520391189, 168434646, 38957025, 396787216, 763494794, 83505291, 26242834, 814146070, 340743511, 508279732, 437400944, 463860755, 682603585, 63699349, 12439514, 577949546, 346140874, 63949139, 143989011, 771513805, 952734478, 569248426, 168626620, 448124733, 355824520, 375032222, 406745850, 481062473, 669018476, 451062343, 342136436, 705253825, 700335242, 18881125, 255487306, 255595332, 577101967, 150473993, 5557186, 505425802, 505425802, 60478264, 115869930, 508104722, 28430930, 277260221, 389176331, 516439623, 510266441, 214604679, 327401027, 365056928, 400873508, 61598801, 61626788, 239653342, 440670372, 351155964, 333007476, 303205652, 169944206, 220895245, 17166736, 4681760, 244711807, 240030047, 87660366, 70154886, 325981879, 7303667, 111394043, 104090376, 376853997, 319437416, 294741068, 143858886, 35376766, 391911041, 258150415, 332178559, 692326189, 2549754, 483482632, 483482632, 48070472, 190942139, 193366369, 491909371, 194290174, 16016794, 287146601, 209945208, 227771100, 318182364, 55520973, 259472630, 279531283, 333265126, 415033831, 311004754, 475301712, 80863122, 106173338, 330722320, 170567619, 14800783, 129619381, 269736468, 368549388, 211140851, 601644616, 262700751, 136472149, 323038156, 148981006, 109922891, 369590200, 133418845, 102762473, 487794279, 95391108, 166284368, 596597912, 682797298, 152907599, 690954546, 386251539, 321961127, 380667357, 156399554, 658265466, 680246916, 918942728, 134301772, 624598322, 79107328, 60611303, 600932330, 68909774, 547365448, 619039886, 794277570, 425467411, 137491045, 70268918, 193344920, 112625589, 367363345, 533630947, 240336130, 874901523, 963507883, 302264420, 261044162, 836363859, 854570509, 65031676, 841576274, 878250951, 703153375, 362661720, 251791016, 310042906, 978008134, 612369857, 467030842, 627168811, 349524831, 112480289, 210397491, 146248963, 621318700, 38958764, 42504188, 373938242, 549942727, 800386595, 399484303, 485475492, 693885426, 182978405, 324520882, 734999238, 757157692, 337564862, 107428985, 55775155, 19155362, 75885448, 238858542, 360996602, 205156562, 429688016, 122603366, 22488624, 457104025, 490724506, 379399014, 702166808, 15319301, 612963875, 39573178, 95907751, 786985379, 429234620, 209337504, 122275431, 219293702, 565820315, 58562065, 756973399, 15910210, 100208770, 873342840, 31628442, 303200996, 250750027, 44062704, 65310630, 212959485, 511128850, 103396373, 336357577, 299549887, 583456469, 436154284, 107882893, 52995133, 395616341, 703106504, 303615898, 34130553, 504122882, 247718165, 263501850, 130165166, 113563351, 121675920, 412258081, 418538468, 335778636, 809617096, 15765187, 402302007, 13232496, 141330831, 63437078, 135769522, 57170707, 370848873, 625989139, 355595363, 174135155, 403746200, 746752010, 24612934, 42777401, 115869214, 8041155, 725589464, 717548309, 175638559, 488868725, 172075079, 49473582, 142522248, 601646133, 508233491, 123973476, 530763082, 673038000, 87702031, 162730952, 125995148, 242634525, 249989885, 351285493, 511177055, 257102482, 445622147, 85609910, 357266521, 442618890, 254949275, 198962800, 52122858, 201508263, 548935741, 366919651, 231524937, 264896712, 134612397, 40113635, 371559482, 137995898, 473189949, 460166869, 662318659, 335852215, 192048480, 20886725, 300827767, 334582335, 648571785, 112940465, 119014149, 183275377, 532720290, 44437736, 172235595, 673716324, 66296998, 354213197, 74898365, 381006028, 91762231, 595173694, 260663339, 813256335, 225018340, 245910422, 30665161, 48322918, 273277963, 233623856, 150258180, 2460055, 251138325, 248678270, 614947841, 540176863, 291333700, 204044497, 72509628, 70601783, 176812741, 264842568, 100169251, 534343980, 743737012, 130679887, 864476161, 741227472, 603029495, 113260376, 450955993, 668634789, 322534526, 58673210, 202766799, 195464587, 422042919, 377106697, 547628820, 179456981, 164717043, 169741871, 173097511, 369050916, 339739660, 98515846, 52441468, 456487432, 676248380, 92582837, 306538964, 511866556, 315075295, 21160873, 317348509, 203544310, 20845769, 117384289, 146982996, 491558453, 422011662, 116693380, 727873717, 175222233, 853513623, 325219078, 238589444, 399430345, 541997446, 61112837, 503737115, 274319248, 89165229, 115781126, 577423401, 249915409, 327178651, 440272468, 21293148, 425993860, 215959486, 73088306, 745016956, 462321859, 103780711, 387388275, 164722762, 104767394, 274782795, 210057285, 416646374, 331158565, 377891551, 571749961, 407141535, 19651173, 105939555, 221988980, 228755390, 332753486, 556824075, 68817435, 794887028, 719043541, 141380702, 550267751, 201891259, 60733044, 25744504, 215689254, 46608137, 5537120, 628881183, 623344063, 285350284, 145136915, 112414725, 46446341, 553866058, 767514670, 79993782, 1963406, 210110150, 210110150, 304457754, 276645929, 156410934, 119293265, 269092615, 82483119, 37515048, 135194794, 110237303, 729336290, 207948002, 142739220, 235746858, 306670927, 129951969, 276112963, 57780243, 201638297, 538489458, 792237901, 583300209, 536242835, 449421294, 238747719, 9138768, 51272324, 51272324, 260841759, 95607605, 93491821, 222127684, 325594393, 20175358, 722376237, 591293220, 215873642, 250467622, 195620359, 207647709, 72096549, 743352829, 281098423, 105297687, 5342026, 121858570, 116516544, 269445910, 205050039, 422562280, 76060147, 633641245, 478058296, 336765928, 346397020, 210267663, 526493788, 492204486, 176433532, 212194534, 274067811, 332557082, 532311547, 690632509, 385813737, 522260967, 57423597, 81917078, 19471493, 267900989, 212710815, 549369570, 33359580, 791300397, 57787212, 514349978, 345329516, 179772605, 505490280, 105194048, 19746303, 123284512, 355798330, 51470129, 122852090, 148803188, 171222834, 459317425, 44673859, 46724153, 418070951, 189432015, 323044120, 317396325, 220336268, 572248052, 151386005, 466174479, 351179120, 211163247, 774434147, 569818324, 301880096, 281668677, 781643695, 932781324, 18109331, 841087240, 24774492, 113232974, 133378793, 529880745, 479594357, 343719675, 178122482, 336654577, 834286697, 705747095, 157542022, 187259885, 512952202, 337035345, 855303471, 665947519, 91453204, 446559037, 183540382, 235252341, 15567947, 71910223, 99733829, 14958516, 56931190, 254952147, 185105418, 9707732, 418396366, 418396366, 12036001, 662164524, 846394460, 528078220, 273165180, 39533858, 606735563, 734619762, 224638838, 74824243, 467289561, 695587246, 728091237, 506836902, 284388701, 14854363, 380962373, 821353092, 523723966, 539943151, 139228254, 114055566, 279388543, 319520061, 365212025, 435281798, 395837243, 302744225, 327616886, 91739832, 143135067, 253146228, 274067785, 334827755, 59743114, 418619440, 318304296, 62798130, 264783929, 155811491, 459698498, 3160261, 419224761, 416064500, 759821636, 286533435, 531663903, 357647494, 131933031, 310014396, 405158229, 323709903, 266468880, 252325562, 156258909, 149383503, 420180758, 575535231, 39550928, 5243077, 467075187, 467075187, 555450766, 538138268, 343073881, 601730963, 18427317, 29898214, 268732077, 222201369, 697848869, 505242764, 167449072, 114299370, 571387740, 49369949, 481516658, 414437959, 551504025, 58427901, 825055359, 723494315, 236862324, 644026497, 214423622, 60858357, 931638580, 102790222, 610403437, 67467302, 341691239, 247385733, 33371971, 21707082, 367234179, 407516155, 719626505, 178623429, 451972767, 162801200, 693730281, 197728622, 431032733, 38506475, 425618208, 194486688, 676648767, 185339842, 248748841, 326745323, 463352892, 100944028, 436442889, 572094351, 59358688, 135417271, 255548046, 33267158, 69276904, 398784597, 109197664, 733679800, 399251373, 489830124, 159781666, 68047033, 343665692, 536541454, 300296804, 148425849, 446084541, 820101777, 493066964, 274420769, 40320443, 345302883, 83795835, 196962792, 64341101, 435458223, 193781811, 654898888, 600325626, 440424865, 514868739, 272656157, 636083835, 637341843, 467347221, 184406725, 287692161, 976265074, 389790867, 357355993, 10408546, 539825155, 529416609, 170960223, 181239305, 36863230, 254019847, 229281706, 103602719, 263531924, 961629, 610193913, 610193913, 586470969, 294251947, 12140179, 535814115, 73093754, 680293028, 121700850, 520672919, 493508547, 772401969, 230520423, 277291915, 278496926, 532556434, 91872136, 436972304, 613093369, 349307995, 64610727, 108751108, 242168079, 162526218, 390743084, 344041478, 276240859, 273182445, 647243561, 290357096, 632440871, 911551220, 593519853, 148103906, 196143825, 121149495, 814116101, 552397928, 101484566, 284537876, 224148731, 88994379, 705284433, 318529038, 341915368, 229515999, 649987639, 483703817, 407782343, 274423121, 170990563, 375670437, 399350290, 219362212, 30972037, 49614564, 223339886, 448628652, 673651928, 171933641, 534133474, 549340432, 919619327, 803075445, 329610630, 275239857, 170098455, 712350507, 477583404, 47165356, 344340406, 375171409, 83484809, 164423759, 410389729, 549311617, 71074071, 118624248, 363021636, 106945851, 24015081, 9994799, 184565229, 184565229, 336640213, 353139864, 109703699, 22322860, 807166055, 645524315, 26409135, 218662109, 291955945, 488435694, 108951780, 254453158, 136151049, 31841657, 33558337, 613297062, 485712542, 15192397, 501458781, 753972036, 274950065, 494932533, 164895586, 658232528, 124650503, 190539707, 445247363, 919245283, 63106167, 686898721, 382767150, 550931770, 4700733, 669198477, 669198477, 218834392, 369331328, 620462431, 18712863, 498048872, 486553827, 365542440, 104485466, 482555541, 646420518, 60512271, 640058566, 368856698, 509722096, 350447922, 106011946, 56377092, 404356613, 584188438, 43724120, 490005043, 126944973, 246643700, 327199687, 47500258, 381250097, 82696770, 163494425, 419029370, 725383460, 525172769, 254997821, 573661893, 294303162, 353803584, 380042289, 354859048, 55350266, 633463263, 117835204, 493827586, 42849917, 56749445, 285926745, 664067494, 233426905, 548630082, 156040121, 218094677, 17422744, 387805005, 144186712, 309748117, 634201231, 657793421, 629009636, 118207957, 921930749, 611173435, 479730895, 791582211, 102385230, 465061393, 118228669, 17971131, 216026047, 443941242, 309190726, 284749618, 781160835, 635483076, 428236945, 690886344, 193062184, 282609377, 77330980, 364745464, 554090541, 41961385, 258806394, 184626603, 475392484, 81213344, 118428193, 190273905, 162942200, 137844902, 561035024, 426773824, 151766639, 471688011, 574264142, 349291636, 356762521, 639499325, 24046977, 219878886, 345608934, 40301291, 72858334, 656867390, 27849413, 159640089, 258587814, 397467664, 387254264, 799369012, 864030228, 507562840, 168605008, 328153286, 488073246, 73158341, 374689771, 8996361, 645985100, 645985100, 277647681, 54719126, 420446910, 832004572, 895765136, 439038162, 62495169, 160467920, 49238167, 173033607, 35902717, 471101433, 77568159, 272362058, 390226563, 508281628, 644259728, 80767751, 625978615, 164418864, 280553816, 214572356, 249394577, 289829658, 98562642, 873647434, 225679607, 233811795, 271542145, 162079950, 454254241, 196211296, 282662275, 612452368, 234911374, 763488504, 184529291, 128273909, 310755295, 147856332, 113023594, 108013275, 648812782, 557658276, 272336169, 575834040, 209691834, 324080382, 106922407, 597280115, 709425474, 588794695, 140295598, 526071219, 434088512, 462645550, 404526946, 131306250, 59377584, 41831996, 229110053, 295809699, 195486116, 313424136, 196456812, 38571931, 71420921, 137061456, 249464143, 4878146, 583389397, 578511251, 71477957, 327368839, 199760377, 259235962, 641908625, 394148954, 626751770, 336171565, 311983240, 36563443, 301958699, 6255326, 217573997, 217573997, 340989217, 901127087, 13413901, 33397969, 744137238, 62910173, 470422807, 692867055, 540149082, 560298567, 205852539, 7250446, 522812290, 515561844, 54646150, 125422643, 61141299, 508291579, 601933101, 25626410, 323713932, 12203158, 305304805, 580553821, 216223928, 54219303, 401760433, 91223008, 423463730, 805332884, 105447010, 654980436, 47807728, 161243190, 374481934, 270133909, 180221794, 210508858, 199651341, 90115869, 82958485, 54740939, 317603074, 543389408, 1997461, 57902220, 55904759, 405350544, 30097816, 439654600, 467636057, 377818352, 153017021, 857900370, 426394901, 461369899, 162768453, 166384903, 35842884, 187374629, 221810865, 104438194, 94753513, 630997748, 528446138, 365366944, 227327979, 371142258, 574099266, 211116770, 298743435, 580389526, 564724782, 274830091, 380877880, 762236389, 159039788, 207217936, 663159772, 241666221, 219990493, 320291837, 587280138, 656143174, 376253746, 244710961, 319826493, 16133247, 80105897, 580278677, 369699920, 5923470, 392163228, 386239758, 8654047, 220124421, 220124421, 16757092, 122695220, 92385306, 17307764, 284769557, 101202505, 310606965, 116640546, 816163700, 291278334, 291861893, 711882821, 657253573, 497912663, 151889759, 537151682, 315442251, 237726305, 574395724, 805887653, 797497366, 635755554, 158185519, 47705700, 673276088, 115048765, 485055665, 73731849, 216509914, 360730453, 50630680, 480107054, 300123857, 504396582, 366218927, 223376498, 69364188, 55413885, 757322878, 599390045, 520714474, 67060660, 246880487, 519036243, 133328755, 82819448, 834057616, 750609214, 90102364, 345865724, 401181539, 680155215, 817807526, 382866876, 168105970, 241089790, 429044961, 277338896, 99428161, 178594764, 236193386, 315936624, 537297828, 107701407, 94526638, 358431602, 72203607, 365138370, 14964876, 239789470, 309601442, 209720207, 332025632, 348227423, 179640716, 92876408, 96268697, 346932823, 428925767, 163537637, 554666778, 409824901, 449295950, 227446265, 237546205, 452625920, 412727516, 732264079, 246281599, 8180330, 14534210, 14534210, 676562775, 382850380, 312437208, 61436406, 546839655, 168417441, 477546670, 232143412, 143506556, 482212028, 222739151, 102515944, 4672319, 11699792, 11699792, 533485440, 57813901, 200045855, 562334522, 250579405, 130668535, 505130191, 6361090, 823735789, 823735789, 320091496, 174159629, 654377793, 67365742, 246741608, 154339521, 83731010, 45547229, 530051481, 543545589, 240818217, 42060484, 265738930, 5400715, 474641240, 474641240, 223262887, 619611216, 579110479, 729092352, 629621731, 96148512, 330903705, 68234099, 321060111, 228521723, 395101244, 894822614, 234893429, 296155448, 28403069, 268747848, 287040909, 374836920, 397425778, 201032596, 681508934, 669405568, 477761139, 254388028, 152697445, 584651870, 565247113, 108868721, 496956158, 645325319, 21196056, 183861967, 369847888, 737572201, 422059326, 46997751, 131188324, 502469672, 160761018, 5260604, 342256899, 336996295, 92343152, 290912865, 861983371, 350371647, 131816017, 486050320, 232054313, 580546142, 256971264, 127925508, 205581308, 353674670, 65761441, 461360411, 638768107, 272624666, 203774759, 53494371, 175977015, 87772386, 421372269, 870504248, 741429182, 449841411, 105300678, 323093424, 159432889, 207992200, 66350991, 144797334, 532513447, 77086869, 728882791, 156932850, 569561769, 285626666, 710522150, 286693901, 536749929, 745100090, 571531514, 577769106, 76296417, 395771966, 92639675, 177329318, 83175343, 534256474, 47878407, 613543568, 739435171, 420445759, 249795529, 23733177, 526193821, 306973792, 208439273, 395358923, 181418076, 381435723, 43528541, 406165910, 206731219, 665440907, 614080133, 99327326, 248000138, 146499579, 110936547, 254672396, 318159856, 133512586, 48238737, 165774600, 316914644, 555328224, 784917876, 512092447, 499259765, 481039906, 286822416, 732582529, 159178157, 396816932, 450189477, 415687611, 583591976, 514086172, 324083579, 635202531, 244420937, 78465175, 316614538, 605728817, 687079454, 273159437, 270587144, 613877755, 404654608, 239077680, 460927303, 89985856, 245760359, 27865679, 356683037, 61779861, 213614240, 228850537, 48697062, 294818527, 633886892, 296680019, 2243945, 306059051, 306059051, 545075933, 68903017, 666203668, 283624925, 198730956, 420899806, 62654351, 154398020, 8954066, 179826472, 179826472, 43681350, 126236795, 243428413, 476274777, 497015149, 544324298, 17704898, 757541279, 228901398, 40416937, 431552242, 895934313, 405649507, 63098604, 59399189, 372525274, 165371504, 372206011, 416341855, 104643949, 475194472, 296554764, 59895596, 290042300, 24170408, 500980782, 100410221, 96467048, 578031787, 249697912, 582032397, 738081505, 81891077, 339082219, 611930302, 899577221, 639823072, 65761147, 91624582, 24780877, 69979397, 6783295, 94604099, 94604099, 448733555, 309364258, 52963865, 368964071, 40164730, 24438630, 64129548, 427733079, 488119004, 145104398, 634595509, 290182023, 477283432, 535352722, 183264798, 519037786, 419708494, 216793210, 403726913, 69936474, 364441841, 17078304, 279798259, 415765825, 219430784, 99515763, 304431728, 259080730, 214270020, 126559764, 419063695, 377466264, 559326712, 485263665, 298045835, 101491111, 120808032, 35341290, 249618711, 677736591, 520657167, 154124623, 706075571, 689904971, 267300634, 432024664, 489677242, 295066307, 744120601, 893019538, 128885875, 173739615, 595095448, 282773715, 180498545, 506685229, 448597929, 440758203, 144419578, 170344608, 55827261, 616131327, 570358366, 207014380, 307673431, 391036496, 73766255, 24546550, 395351625, 187531272, 25032485, 636125116, 323960693, 376490866, 418169782, 292440005, 362052738, 699686945, 625106907, 652003330, 559364981, 122008033, 198953782, 65639564, 459809187, 109268633, 953838241, 843875037, 344985829, 503487414, 874001093, 185438535, 57903125, 101912671, 258948727, 413554857, 537358513, 499077046, 530936609, 852694747, 533093690, 20660715, 25845879, 430421785, 404667927, 108106644, 319205137, 369613459, 21101772, 235598621, 361231893, 73395089, 106372080, 56074269, 310540064, 460160271, 555074668, 211995658, 25375445, 513947766, 86456639, 659834735, 512429119, 308527813, 359346291, 79229097, 264270599, 19750504, 549455710, 525812217, 560208379, 99511039, 219377505, 757745662, 683250905, 66275742, 138640270, 189843888, 312977024, 64047376, 318269169, 32533726, 139377430, 695721838, 32928106, 825585252, 319855339, 149122634, 14669765, 565703508, 388562002, 523310532, 845872356, 184473577, 559334359, 808602755, 971418, 214959784, 213988366, 533524311, 72423103, 716506471, 657803285, 428612307, 14395713, 8069250, 539704404, 539704404, 83224604, 719014426, 811366945, 735789552, 94017393, 305395825, 941573632, 645038255, 503957701, 593482131, 325500991, 390940368, 136303434, 854887270, 773400896, 154800860, 50401877, 431498660, 290627773, 4246976, 374266956, 374266956, 1796702, 755804328, 755804328, 746227269, 170426866, 190703213, 768039650, 815107259, 528328567, 417792401, 845473864, 844291441, 75781826, 828704992, 618538834, 41991922, 18592631, 710018129, 153763986, 435089011, 113475313, 717694297, 466394750, 179642629, 163767408, 344229683, 766233137, 421013380, 484815228, 840484022, 320340797, 262319678, 135841676, 774709174, 159779507, 321165953, 37632259, 184634360, 112948647, 260895046, 99843523, 784987274, 812919496, 595546210, 526762990, 148923937, 61668209, 230430789, 59226089, 588512709, 569382136, 155381978, 287172089, 435914332, 232929184, 395001706, 487406604, 140430877, 8296852, 160880010, 160880010, 497793663, 101590987, 334539487, 390105135, 804733280, 560744857, 276165397, 194780223, 230791169, 24185014, 294335394, 869814301, 600198662, 192335870, 658723296, 802147398, 563520658, 350867435, 627394491, 269705284, 134191932, 582273888, 738604959, 20692939, 43665872, 543641659, 76450596, 277852732, 516061021, 426160661, 180832875, 477237737, 485457829, 81635177, 410807618, 49303387, 93443584, 288125757, 179247876, 165044351, 373346409, 249678167, 110055952, 222563916, 692205372, 408767908, 195180116, 470557241, 710408106, 542751327, 360705066, 24924586, 207967016, 676093744, 395836, 671839926, 671839926, 785891504, 627138405, 688025902, 573217629, 13975708, 134652582, 384007, 210492108, 210492108, 611740281, 625664702, 469637213, 625115520, 294733617, 160023902, 734000178, 354358815, 163251262, 509513026, 354875883, 304589176, 187106816, 886311287, 902397576, 172841027, 690972121, 825252556, 672189643, 659194787, 421045426, 163273568, 122736380, 75153030, 602219177, 101118572, 350776866, 403953348, 514133077, 575037642, 578896605, 223102169, 471907074, 79554097, 40357605, 452490375, 643345337, 102587667, 643076239, 313114850, 202473608, 85953890, 740888336, 671750457, 670778285, 441084807, 461929905, 156181736, 241013958, 532716314, 730893285, 45255463, 260523569, 242521454, 492793413, 812460488, 254240580, 146254918, 605397564, 44384939, 65161376, 303020578, 109941727, 538592026, 196683252, 448607384, 491677071, 331955728, 128555231, 382200219, 138977510, 610451263, 361146388, 437962290, 400363419, 246747572, 10227506, 105356010, 95128504, 201236521, 643301504, 395982249, 576870089, 140258957, 247374119, 691170784, 801877894, 83680034, 678622605, 689881106, 502807903, 641242640, 331052001, 398171441, 536581445, 123576457, 135899242, 696321094, 388404789, 60421221, 270941605, 261403450, 445376536, 78822389, 617650744, 71166749, 606188628, 255097524, 291245952, 53628703, 169513714, 400904058, 302828408, 496752244, 238358191, 194574647, 375594046, 163413989, 192221112, 132349846, 351523167, 876823596, 143993361, 446832461, 31333613, 226261270, 286364987, 163701524, 431226511, 352788494, 742789326, 704942758, 75957951, 73125594, 484735024, 40554641, 505524682, 313091260, 428085326, 87446912, 176476871, 358414297, 606652105, 176741058, 134895561, 91083199, 418230726, 370922732, 416015851, 171478139, 779476560, 477042665, 250986693, 336518445, 433928234, 218323937, 124224815, 103971110, 34858051, 41570393, 270972363, 178183010, 40482251, 3277507, 240464342, 240464342, 162130436, 836619309, 449522172, 190006590, 298630082, 268532554, 495438076, 82071713, 441562811, 169748164, 599836928, 674062867, 701290410, 243948781, 323418403, 20471671, 638623690, 805057971, 630452891, 1177562, 66279160, 65101598, 341951700, 447754253, 296457357, 53555074, 504072067, 54208818, 329428926, 129128070, 144910954, 578777178, 838514720, 221632745, 338312107, 872457991, 119990739, 175045891, 115513152, 354984550, 177497909, 337810010, 507922907, 261697951, 378482303, 672565242, 151425603, 33567796, 575153125, 682081717, 3977424, 269214068, 265236644, 244413736, 32234526, 270530870, 239627761, 171128297, 83059785, 435856053, 135242381, 258672044, 352758978, 403105625, 252212580, 150858231, 697686447, 845904884, 648170, 725483428, 725483428, 568438793, 188069847, 354414374, 41840705, 509966499, 558492351, 658941847, 188465512, 320492353, 52768632, 106737788, 155364151, 160766071, 176383788, 36784629, 228681153, 694072842, 39494615, 249531137, 503540938, 57238979, 786243581, 408566176, 277367540, 221672834, 94350779, 553637179, 841364841, 396678677, 396112133, 199489917, 282398033, 147037342, 356092064, 703121498, 57579353, 681275282, 136880647, 535958482, 282916271, 387575720, 71158081, 332209988, 914047523, 972536413, 593369929, 103209271, 137497439, 280076273, 35711563, 52294056, 634549102, 55856325, 649111761, 644137145, 781052242, 406440343, 475027606, 198592216, 477090543, 433323114, 65345242, 343884800, 669203685, 600859976, 96954340, 241276056, 148050828, 448430288, 732489970, 356859995, 129354490, 33784295, 303797495, 793986287, 24068015, 67023486, 127315729, 256421148, 440133466, 120578265, 654399514, 645882419, 134588532, 218217300, 35606398, 476028288, 507932203, 457926677, 682192381, 407465886, 254663440, 40749891, 684870875, 377081030, 20768971, 520997923, 92170944, 276961878, 296049015, 303382340, 163689243, 38990514, 537334612, 624707043, 415367390, 675943527, 130241764, 126304409, 311738823, 250265359, 641024751, 719169814, 11900834, 227450835, 726411983, 421868739, 66377315, 22843755, 443305005, 120042751, 39736323, 650734000, 501035185, 35699044, 207810698, 554067827, 646606534, 455923589, 525290589, 764138518, 761448208, 39756432, 329614943, 73489731, 322694665, 740886847, 161763514, 286048301, 298226430, 253246497, 248131424, 753302623, 15881642, 559860201, 81698726, 431307047, 534660978, 263088800, 211449176, 587361015, 296532370, 297121585, 46123702, 846503211, 27848100, 271404591, 667802509, 763681589, 319069565, 285209827, 779395136, 740878237, 645488201, 668839956, 419800071, 119401872, 318390172, 606165902, 25184501, 456155585, 313209055, 921488911, 268866481, 641618554, 681178066, 228389316, 551209177, 365674794, 542089073, 325649335, 294990196, 264911662, 14563005, 539193002, 299731088, 174717305, 179144474, 78714327, 322363651, 752042858, 143830943, 568852812, 276490333, 248862331, 31541323, 629497081, 470347840, 265477210, 401044468, 422640652, 474491821, 258173927, 173355210, 227173463, 503492004, 631758242, 84795348, 46424398, 76973795, 106077337, 608880560, 514399440, 525778376, 289686751, 113936372, 306494243, 770854201, 762606425, 319035312, 360809558, 46894703, 737521216, 802658681, 130900166, 264069023, 224514812, 191236737, 714495088, 634908517, 654811955, 804112948, 256952446, 123696296, 207253715, 291671347, 165150255, 438607786, 656216761, 300927357, 348064980, 109658390, 47464090, 258793816, 357861533, 430889857, 85324213, 180165510, 111879816, 263837401, 45995526, 253618945, 247664928, 808265554, 466440, 380406719, 380406719, 410208449, 42090596, 555003285, 379681844, 126916738, 449112184, 44728855, 17581146, 414451477, 255349064, 357167855, 787350448, 373120181, 178998746, 184564776, 454912165, 530620507, 105261170, 203266340, 426867414, 279316346, 416670009, 711613668, 651663824, 231936625, 195750537, 56705842, 509734955, 528496090, 28701160, 173074658, 392888076, 490335800, 78408614, 436639099, 58887542, 706219683, 128336319, 502167697, 129318320, 240336125, 132372901, 158235289, 179707372, 335499921, 290339187, 422811984, 311715723, 255709783, 306316480, 11367968, 139783293, 154437814, 351960935, 855768898, 66853077, 693885132, 179032451, 329487021, 575165492, 11733759, 737587554, 346702336, 24142249, 221664900, 333589809, 521378639, 808629457, 691812282, 281987734, 124843858, 61106328, 572439714, 550500925, 264633455, 93976969, 520334561, 348862214, 32131676, 474091669, 103277440, 368470856, 147063547, 163903254, 682576349, 483544833, 589462648, 673140846, 163123611, 237267252, 511854430, 154817109, 196903578, 272619616, 68268708, 436993967, 174450345, 627515662, 452524286, 37710264, 47848967, 420343223, 435709326, 301341907, 553554222, 226604460, 291671859, 329371334, 140093331, 353256445, 163819854, 81487175, 257979814, 214351476, 488189801, 930918653, 644871565, 446820006, 254559916, 491038886, 821637539, 490618561, 614926557, 14319817, 342426218, 500761340, 598167295, 334303294, 269901165, 53085570, 420290305, 373053339, 193038012, 592920453, 857475933, 839431275, 400400311, 28215027, 506969044, 659280352, 474548638, 24197106, 534422429, 214863906, 850630266, 487822483, 531652014, 296942467, 377564018, 245924009, 61304869, 609084572, 274741879, 339764134, 299891234, 312123395, 36836253, 48724286, 155122784, 191495209, 73089808, 521954952, 359593165, 440965661, 89649479, 698838357, 401685910, 401531907, 307942628, 396229162, 755685538, 65115309, 663700342, 490422254, 131373396, 25623947, 463184633, 632877466, 292959767, 274953166, 38765742, 559845680, 243835330, 802251038, 75632519, 165750029, 337069934, 371200874, 8818326, 36526220, 27707894, 361626526, 544801021, 408204113, 166483848, 60282263, 226205830, 485156, 70238693, 69753537, 771180697, 293410926, 200571309, 629788911, 748207376, 125126232, 316835058, 16067417, 259197806, 346536422, 264080383, 204170745, 719704860, 5434996, 98434560, 92999564, 492521256, 178420724, 275047483, 536391311, 82281895, 13040841, 305579640, 241585657, 567878923, 205544388, 525442214, 702534522, 64872299, 185599075, 21161482, 108853777, 369492392, 380503836, 559489148, 577594663, 692352626, 460597802, 250938541, 537124776, 348087203, 323965171, 183267956, 239720706, 33116600, 580877978, 468423043, 543101948, 877183610, 522962602, 435199552, 261843210, 100797543, 164850244, 240317024, 100928694, 496624229, 470300728, 504587296, 638178490, 611294951, 477267395, 320508501, 785397183, 588312548, 331941504, 189055990, 283588449, 74123700, 330069646, 39431643, 420354397, 361873908, 62751906, 399222571, 663805982, 761755839, 57594932, 10754612, 551459163, 540704551, 58874748, 56254665, 135068632, 685136545, 289236126, 426735930, 294911943, 12197561, 98564768, 308047724, 327922183, 349883716, 140550324, 322749471, 277580828, 25067814, 30323244, 412323073, 507809135, 719013124, 384124631, 355290734, 156251549, 40479762, 704735555, 87868448, 481480832, 98631881, 584624174, 479457606, 234115365, 90229521, 890297983, 622141352, 336315495, 844260244, 410178441, 170739225, 225880561, 426808649, 5816490, 639513524, 639513524, 142378117, 239636155, 165240409, 415691112, 371660115, 260477308, 144154454, 860854484, 80468339, 783694705, 144651875, 11718538, 241221269, 100359091, 147096070, 488077987, 705651680, 46885181, 424977574, 195388638, 243798258, 374147185, 618274469, 422863627, 12066393, 461094862, 312043417, 18849922, 309474274, 24683896, 127553148, 626411800, 525128853, 417270588, 50095731, 128599004, 189202243, 451293070, 130219176, 543097748, 349537274, 437147285, 103989333, 421301087, 531480641, 331653086, 223999931, 377746260, 776422343, 7617253, 29748253, 22131000, 784050803, 335304244, 91084246, 323821168, 451809556, 437779753, 356885030, 321976893, 200445209, 486219048, 588138672, 229617191, 162496386, 746060195, 267015834, 190293511, 263573236, 311065861, 557238851, 344498120, 131419458, 29677522, 672817253, 272647690, 1893852, 327972597, 327972597, 716613382, 45084392, 147991091, 498388708, 225553659, 200197362, 245756312, 369008698, 199705954, 65285778, 157951279, 664660164, 64834961, 834477387, 441935152, 297723089, 608370912, 223191203, 181069549, 453763548, 5196147, 29496997, 29496997, 124245142, 232175217, 109828028, 836320721, 904381544, 855596017, 509530688, 565939252, 266265038, 358959155, 299917549, 291200285, 646617691, 473613689, 574243605, 467810934, 103002445, 101621176, 367076002, 463656581, 227758405, 478146389, 134063806, 38790015, 511911789, 189292763, 525534221, 198256500, 220798387, 39525990, 483211425, 201762927, 501564442, 69129414, 490030326, 27585553, 121493709, 458797141, 216944325, 355323039, 54804349, 68930087, 201397334, 288257911, 303328490, 114413856, 253046985, 29786137, 284834657, 286972478, 498782494, 272292927, 156336213, 92611716, 25138395, 109920557, 443583860, 468117523, 29965430, 132934881, 355820116, 357694158, 50790047, 112138767, 124393319, 572065376, 62295925, 186385367, 7552522, 440598073, 440598073, 552020813, 34961953, 159287925, 797893973, 728116851, 46171246, 78115918, 534529387, 118883157, 304512384, 327434267, 422431832, 429019369, 475793789, 183688933, 50712801, 102118945, 219279564, 566156796, 371750115, 482023874, 71148470, 97096208, 391752198, 255494961, 631161683, 34109870, 65033604, 237338844, 13619783, 204053654, 487390542, 189587252, 821378997, 114039435, 265323713, 67268104, 40552450, 229730592, 426711950, 393178635, 296461032, 101018188, 234846159, 402350404, 525830101, 299398462, 598723464, 81711198, 527644864, 405856507, 93584366, 63625108, 408029692, 138115144, 5296497, 83567219, 83567219, 174205595, 630862771, 87418364, 421691525, 204755893, 197666912, 30196904, 478305647, 483488297, 101368474, 129094539, 140940502, 544768154, 293024101, 49780308, 141124523, 409269522, 161045742, 619953243, 634348761, 91248276, 158400329, 795343357, 681916700, 13718487, 613685273, 545143126, 307643713, 257230695, 473136212, 699733338, 25156774, 687082103, 1228042, 512741984, 511513942, 130177806, 51378582, 502222045, 588511867, 317491381, 63452968, 10020008, 72251968, 62231960, 800874514, 662901544, 569637541, 181868579, 397853739, 248351436, 92838723, 110843103, 234136362, 208051330, 228096161, 257482113, 113908739, 208890909, 173202631, 845430947, 509519522, 473649015, 249100171, 82341548, 225254128, 402849139, 233722737, 55461966, 128755625, 427502878, 44539597, 334224503, 382950839, 657360824, 81168618, 641785873, 688634528, 161423435, 237753508, 287274158, 291367552, 767542050, 43787804, 171767, 182489659, 182317892, 762468599, 378258708, 300511112, 543767184, 558257617, 98409833, 855564340, 633212544, 182897997, 690062571, 846853067, 198704071, 563758323, 600564381, 529891119, 197563588, 816631057, 279153983, 278889236, 461766616, 207128, 330635399, 330635399, 163075235, 92849996, 197702313, 687587757, 794180260, 431526816, 346428266, 169185994, 264580984, 413244998, 541585345, 757248277, 322288165, 115433737, 202958590, 455433893, 248154750, 835935823, 468561239, 288278194, 425547357, 79803478, 59013662, 319881033, 258461520, 314994004, 179863203, 588895007, 54563832, 774357385, 508122091, 483906743, 174953361, 185457336, 116814175, 352425366, 669212513, 42425103, 475373692, 50765598, 108155009, 371884814, 450742777, 229667022, 171884241, 228945283, 644727206, 592402458, 176479015, 487890611, 148854477, 226018578, 249336856, 325538445, 384516010, 26185949, 700808556, 161598472, 39140811, 215080691, 587254661, 144628980, 275833103, 231976700, 588580275, 152137586, 67144855, 168134605, 388244569, 68428875, 869422997, 63720052, 62088145, 216284810, 62364434, 311840835, 917682, 235076178, 235076178, 542484552, 180375108, 189152618, 285848399, 264363584, 679631947, 668558938, 2360475, 157722516, 157722516, 861317582, 369767492, 176899570, 408216330, 529615905, 230963312, 265764378, 170865121, 769759306, 639954089, 73054259, 16160257, 593937064, 435749021, 347423406, 352970796, 230926577, 55132092, 336028764, 39885651, 139781052, 178477432, 4722877, 867311463, 867311463, 251566510, 438574011, 162805355, 184629420, 437173938, 422350849, 283914797, 18253275, 49275688, 428325231, 293320808, 471903430, 745098436, 277294323, 3842870, 126507874, 126507874, 269154247, 294422245, 227543397, 944776439, 482780895, 317657832, 281154103, 311180866, 553509989, 634226972, 506768353, 205915418, 257253875, 263261029, 523759852, 815693367, 8936137, 98797975, 98797975, 265395644, 462952242, 383391743, 346139341, 303354653, 89316771, 411536289, 896909057, 600450086, 212562939, 426782302, 395598942, 648976847, 148379231, 690489999, 488436742, 679518136, 488100373, 20808434, 332888905, 179784662, 604780428, 319513353, 478131459, 73863865, 419895387, 104431967, 367673923, 531536711, 312231575, 280757434, 754496907, 94655153, 539118033, 602155625, 838266756, 326328120, 112462323, 156210668, 677153952, 51092702, 839844972, 315276860, 59416548, 410716027, 658991901, 276161623, 4279800, 397550961, 393271161, 376422458, 3816286, 173036158, 173036158, 366166310, 110621679, 79421064, 714676295, 227976290, 259033552, 27056725, 526461004, 795736013, 253551678, 65892600, 102232077, 29684702, 173163429, 207482991, 126461401, 215395836, 397748430, 192356212, 864973740, 881402509, 841173586, 417436943, 230662162, 92605508, 513315348, 145017360, 649000956, 333907260, 233478517, 89059153, 299216177, 696527458, 546123598, 200398219, 131724187, 94070758, 86651156, 430733952, 665325502, 313887333, 331957370, 155599841, 551253850, 716434669, 892975222, 518290220, 402083440, 83709662, 75336982, 194827939, 676695352, 241743271, 455045962, 677815852, 130634419, 564875170, 454367078, 119336158, 291212464, 134277549, 263514394, 236671733, 519488542, 131797473, 171153936, 311383861, 574276552, 599730332, 171964345, 103827364, 490806508, 406360013, 222466871, 210971292, 211156004, 555778930, 387773506, 277326171, 520332646, 7821985, 374718041, 374718041, 118720760, 464804531, 783858757, 43383496, 43693588, 488588782, 301720758, 250252099, 81696544, 135292217, 23046225, 304868823, 148662005, 244041325, 222256353, 94997867, 593860584, 390953448, 329498336, 560335192, 815137543, 977461457, 580573547, 310017220, 287052687, 327563277, 196791698, 66123287, 323659261, 313572162, 388998400, 685778520, 851695634, 374408262, 68805941, 445500176, 44967418, 49155541, 12344566, 211151342, 198682754, 167589807, 183172351, 319850286, 485528173, 331734984, 164738930, 87046232, 431365724, 222247757, 228153921, 539686163, 357050561, 77509595, 525450457, 127575851, 326900303, 430072129, 291348136, 29114873, 157492587, 139257489, 148957389, 511302774, 430856898, 54286240, 341268727, 426864253, 271852325, 703759030, 650975317, 172063412, 18084542, 288468418, 134564053, 398171270, 319836293, 41958206, 443020650, 592526229, 122024168, 21864857, 470967306, 245025059, 207467394, 144713075, 252651701, 343653558, 118984778, 708911141, 70081620, 412706778, 233358731, 21841965, 128819793, 81498971, 181543699, 792889773, 563937986, 282191886, 222507232, 562367198, 738359135, 675985264, 501704774, 163942069, 83486983, 67751278, 7013652, 84984923, 84984923, 466380732, 272672020, 479699687, 785531998, 249441167, 154446601, 464972783, 126737151, 230953046, 23955702, 60431725, 214591350, 197703099, 324968005, 657788377, 28130816, 346232328, 419420445, 96273540, 728930948, 430858734, 173121249, 16840441, 248986064, 110924473, 125162491, 423735745, 54745222, 246707849, 577058470, 58397556, 202184753, 464591686, 17497354, 264779228, 196336057, 471041192, 49219868, 522162387, 72885264, 394574997, 403243574, 378706148, 304146318, 112690263, 706329749, 6775315, 11087724, 82863539, 4312409, 76088224, 71775815, 229070053, 403247331, 231913564, 425418573, 625744616, 908725399, 328672657, 280447620, 236517537, 177851471, 105041394, 266788630, 533452839, 200048392, 340736385, 582505506, 397438645, 55934384, 364867052, 418443152, 225790928, 895286152, 854371458, 36049597, 52060253, 817819299, 622149902, 450321507, 374210466, 67176697, 309061461, 166524474, 270880957, 389706783, 73512082, 573050947, 499205726, 118413444, 33482287, 210046578, 17314132, 151715162, 722671954, 765910154, 67705068, 119552017, 711565432, 458066741, 713078198, 292123719, 480765153, 450650657, 7275302, 267160867, 267160867, 470074943, 596178135, 581370315, 792943933, 203840429, 686000786, 904122582, 464683629, 443251699, 30231626, 39304620, 588346702, 240868947, 208102578, 106250579, 508995447, 341310720, 543132968, 257677834, 72084895, 862142733, 350640236, 505931898, 511906892, 317401700, 256988539, 194752079, 211916934, 251841185, 457309158, 753809797, 83358972, 345681814, 31810514, 223287786, 455736133, 451767126, 630161065, 578674320, 25966774, 474035874, 29270902, 158585969, 32333863, 619266051, 260760748, 488873075, 541699354, 134388955, 7797276, 610300652, 610300652, 237964106, 381557831, 669427960, 680830825, 312032685, 375698156, 597687259, 674374396, 808168118, 311262331, 122556702, 104597804, 153357643, 618576852, 906410613, 170686016, 83985154, 37462885, 624495934, 194949299, 320102816, 298977027, 219455356, 242942290, 270019432, 282254903, 458766811, 374132660, 31614235, 174126267, 94708210, 233287601, 372683999, 905010308, 80914755, 620538086, 90358396, 694785642, 800449489, 44533487, 107365021, 559110083, 49633597, 302255675, 408511380, 344169782, 157157472, 297507634, 878102497, 871220315, 626503619, 168386514, 110015638, 373876144, 19297102, 137084557, 279318833, 192819663, 614031623, 889468969, 241895769, 111609946, 275171, 228495192, 228220021, 419290149, 31806243, 462537354, 238996495, 413213207, 200106494, 218865854, 668027306, 249810947, 415820917, 287047654, 671356816, 473911001, 257595437, 294340699, 646901598, 81513657, 610953963, 189813873, 701624339, 342645853, 214960855, 139898638, 668921550, 215838964, 69409056, 225855418, 481879577, 364823355, 488036575, 687830564, 651660839, 709792749, 663075188, 540911955, 491741087, 607081380, 647226889, 190053222, 139501888, 664570963, 889171648, 404788982, 504014929, 654766885, 117861323, 13745352, 191469005, 714472949, 539603921, 515010221, 484111082, 554177288, 209966547, 298882070, 145620350, 69588292, 872474492, 9731702, 122965535, 113233833, 299011354, 228446207, 67994734, 509789577, 324933710, 84311298, 572602421, 141165822, 290233715, 11038954, 163561597, 152522643, 33853648, 33980445, 190436344, 618689690, 191104637, 337770007, 203977009, 526224792, 502066132, 66610075, 3172525, 211330220, 208157695, 209763468, 97804175, 196869050, 222077338, 311072043, 121980331, 317341903, 885210090, 440184661, 177796056, 402175263, 158891665, 631305849, 722549353, 92915450, 636101593, 485445766, 167066368, 66069800, 278810152, 702090457, 119366524, 54185843, 41196746, 261166402, 32145533, 378592243, 301571666, 593231351, 338451907, 42298257, 57327478, 262428803, 419974144, 32500335, 529268473, 66903627, 332466609, 162659244, 492659958, 89699916, 15153574, 463181207, 564725744, 192321989, 711756359, 162378147, 106075942, 204392719, 71459130, 335394690, 115038966, 162648084, 436685176, 263255789, 185588440, 45130749, 685423388, 354000945, 37213862, 382196251, 511483969, 54074058, 23803686, 319313146, 8412312, 640776012, 640776012, 793905734, 434864223, 210224090, 217368205, 182293832, 646672856, 705835710, 329958954, 259671610, 378863804, 148401534, 426995218, 535341464, 508419625, 784214458, 332540100, 205851555, 344771445, 545365381, 256076272, 398237759, 35241967, 666537607, 83596855, 376757073, 45596727, 261717374, 341292850, 36255163, 387167003, 26784412, 248583090, 105172664, 126974553, 896169561, 534723613, 269312786, 161200115, 417188726, 342363290, 224518950, 555819332, 140908545, 625659174, 11022908, 49859835, 38836927, 583652993, 215781310, 494346955, 638523688, 367810279, 619703874, 911051683, 691524821, 173697120, 61703570, 283140208, 347065294, 186097685, 672610226, 257024684, 633330225, 60104613, 593311086, 291940026, 157891633, 252721269, 575647458, 525460417, 87653116, 198990436, 453670541, 386701467, 331908088, 503618543, 1549047, 516055610, 516055610, 571888238, 463195231, 777660425, 86280820, 713476691, 753432995, 426737165, 422496390, 612574596, 614190544, 467375596, 189234643, 96374375, 63125705, 257770065, 524395964, 424974074, 187886760, 94303617, 138794017, 97897712, 567557224, 458452750, 66856303, 374964263, 293654203, 260900403, 41957965, 777287869, 339964908, 477603967, 439077639, 336810580, 58624158, 118201803, 480040768, 298891736, 70632832, 151284667, 225945954, 75356180, 533123771, 797376656, 318697499, 162281761, 1307136, 533441408, 533441408, 549244021, 536255654, 653412237, 548644124, 381078448, 787199430, 56367473, 129770217, 438983818, 30696370, 405975021, 225128070, 186948348, 607913365, 102942249, 163653100, 723645841, 539936157, 126643612, 12386780, 465568105, 173831595, 18265612, 288427015, 759762544, 236971848, 126291745, 256919353, 29576875, 67636305, 343531463, 612090733, 855122627, 797441074, 76775200, 255650794, 409396753, 382878602, 38883481, 856123165, 106709742, 350312713, 7316151, 507565066, 507565066, 802550015, 529133080, 490711619, 619065626, 85207608, 87731922, 214060879, 522061801, 471655195, 480123959, 669902191, 130974900, 156071685, 204755379, 618990630, 608913385, 39279717, 436663879, 266867917, 266654822, 76786760, 538789682, 353531645, 385070885, 25722298, 182649515, 263185296, 418433934, 168864031, 75966577, 319276181, 733162740, 559770720, 47661391, 60150056, 217738877, 108455169, 532360195, 90431166, 654042506, 342681605, 443956481, 843242608, 148201551, 141649457, 326261267, 31193150, 38001225, 51741713, 736021594, 353705166, 435282738, 41880558, 6524231, 131224263, 131224263, 742783134, 20845119, 38756924, 116782025, 705303677, 466758740, 112785564, 639619818, 98448112, 562531058, 171309953, 367093676, 67539389, 259436868, 377212860, 426071330, 923477205, 611107248, 216993982, 53284363, 346171590, 278375859, 123878563, 273509524, 288484749, 184281273, 312576432, 645951232, 742336503, 134279363, 277373993, 129590157, 520889041, 197622279, 89815419, 78592611, 388140727, 229708704, 535011756, 52954939, 500766561, 251585180, 144766529, 548635100, 76626396, 144526716, 407783079, 611984841, 88853216, 421982363, 350743084, 45204479, 614066971, 296720077, 95414116, 658544186, 625752179, 352879459, 359591490, 43347706, 496997466, 138799072, 144754914, 593623754, 403375819, 456393415, 163845174, 392380370, 262422192, 192763032, 769655379, 30148261, 38234738, 29359280, 132246138, 704882432, 530206824, 530404533, 200955557, 154746932, 199338673, 127215697, 70433757, 369071020, 332804133, 38916077, 169076065, 357186714, 771474913, 14310970, 31056334, 620424171, 495457665, 449810445, 185923843, 215301669, 746016940, 58970593, 207489219, 205057403, 485041698, 23283590, 342601503, 493154738, 423480482, 81433465, 142067720, 191152496, 392137869, 23145056, 108315014, 104197906, 16317950, 607507836, 527783254, 190274091, 49651799, 209678133, 305602634, 139169845, 313445910, 489459142, 336222538, 197409481, 140315973, 20658708, 162024456, 488924267, 325628570, 138145003, 182984507, 432907640, 27537266, 268289964, 83749308, 274444057, 450922891, 755987049, 36793351, 165734569, 127668889, 258819340, 274007839, 501703054, 242131475, 82815534, 10786839, 476050339, 476050339, 752853349, 110997915, 124119499, 31320263, 660728873, 160661739, 628754401, 925600477, 889965209, 763577572, 712578498, 825381203, 683240315, 36256984, 326855650, 421483424, 31783856, 75783211, 289494857, 220465000, 886671103, 540472544, 415486751, 167246798, 669001672, 133298055, 19456425, 286529341, 149582510, 377344003, 131111571, 30347794, 227280270, 203840424, 383104565, 588666013, 683539937, 82522911, 160562785, 67254374, 80209879, 286592601, 283077684, 182458207, 266551092, 691432545, 311707714, 228371022, 169055048, 308049018, 290264119, 287175836, 85857201, 218331943, 172971350, 57139098, 684266716, 369013155, 351440564, 398786013, 302437804, 167448726, 477597526, 324591446, 254072930, 174732653, 155895603, 415219430, 31819390, 56107117, 747608754, 363814052, 24607635, 507239030, 780358448, 741412483, 702364645, 350395803, 70222932, 165794648, 254516934, 91163967, 86557796, 563184775, 79165719, 903526858, 799069791, 150789434, 548652275, 340214236, 736827447, 875811745, 170512629, 132355215, 403572787, 764500261, 748981402, 586835544, 136814892, 36446360, 139126032, 266685245, 539052721, 687875331, 699589326, 296057693, 409357739, 769359486, 478280812, 452512825, 310236157, 415072713, 626343632, 640117091, 176301271, 68980054, 275593522, 564150129, 200453774, 391533755, 570754667, 377953120, 143547744, 144406760, 374172936, 9603193, 769425573, 759822380, 224314707, 666658027, 163018365, 555368217, 735892292, 399641711, 227662940, 67832175, 733817616, 682673312, 54112432, 355623643, 50857605, 26047411, 468859992, 239756708, 414694702, 260956412, 401067056, 140298721, 439120677, 458689825, 182443481, 22085691, 256807724, 6280992, 381445268, 381445268, 512289351, 384684050, 49295516, 64309890, 179293629, 106142943, 62451762, 813728594, 734635115, 734101128, 121146498, 726010032, 298051234, 382137626, 136369895, 323607133, 119601988, 18829091, 431404968, 41260774, 85855320, 705051381, 313276720, 359768565, 112789481, 181831705, 245758202, 764925663, 68852702, 45495183, 326831723, 332532154, 786456137, 174437131, 594077175, 545085788, 258150879, 505656541, 87238795, 157034610, 544815402, 40173793, 286348024, 368554887, 604741497, 344375359, 295764989, 680342703, 7674139, 863113568, 863113568, 303651734, 362673628, 129366510, 1876396, 514939013, 514939013, 594547490, 649759396, 384288471, 166499384, 39413407, 209428264, 205241495, 141293837, 479922209, 324387593, 191312255, 219628076, 110642149, 223442210, 45965837, 183766667, 521651237, 210027680, 205668138, 248524949, 335764798, 247658027, 657376401, 313812873, 463258135, 589957509, 654167677, 626832046, 501064690, 62397970, 180115813, 35472553, 383669948, 668617826, 206549879, 419934067, 156474863, 137784518, 115792512, 17957864, 155535939, 233767609, 569925569, 206497185, 53454601, 905201836, 855689777, 139027513, 167470306, 198742389, 263414190, 659546907, 489149128, 496960725, 7448495, 27134006, 27134006, 234896601, 118318339, 178667003, 114228876, 77614716, 51848040, 654789817, 749818682, 612626850, 220260589, 294708564, 270341373, 226838734, 614523552, 51853812, 52228527, 779879365, 891355860, 350795964, 33414591, 407097085, 171109803, 192752432, 288358221, 457998671, 178536686, 555480123, 787465739, 11742640, 359869286, 152720748, 75545369, 275381501, 121545875, 473772240, 565793892, 226042236, 4758659, 39662292, 34903633, 228505479, 688909773, 870812354, 449887775, 116999783, 204899876, 144769341, 390202571, 670409287, 305192082, 303437390, 55288799, 100938945, 48652131, 250654547, 245055041, 610619548, 754242433, 483829194, 631639439, 520808756, 559970049, 648969335, 225554100, 327829542, 382752248, 629778917, 600473632, 92085209, 178124580, 326688751, 36453255, 170598573, 261919802, 593936142, 686146842, 273063368, 284154792, 19655244, 556266453, 168158413, 259945071, 17858404, 162219013, 382926003, 732478695, 61131921, 153753464, 361319529, 521110075, 252373342, 563775361, 445681619, 14826730, 89907460, 365423551, 414143717, 314179455, 794901470, 652966575, 210651799, 285718544, 61200889, 232924131, 364971297, 547136112, 124679669, 91452402, 212382207, 5089591, 21986861, 21986861, 488885152, 136045344, 435755145, 453281972, 130793253, 232368141, 398653971, 593486866, 9299066, 41472460, 32173394, 320033074, 536395416, 362256829, 125604206, 215791912, 94746547, 487965550, 30999180, 106298494, 388174688, 127380328, 526948572, 38724669, 199534943, 358133884, 292743494, 54297864, 669248764, 505674061, 160859153, 593572574, 245629722, 175748975, 134265106, 347188157, 248633771, 9311114, 201725651, 201725651, 65506300, 121288189, 347754398, 242806648, 731887383, 371255597, 2570678, 48825196, 46254518, 43127212, 471511507, 738243412, 433900509, 151599734, 315431944, 516514514, 334795871, 233767444, 114120687, 376189378, 42240886, 75496243, 382879037, 33995034, 571952021, 747212792, 625510834, 102083679, 335456301, 318054877, 350018306, 203196297, 153623747, 391668156, 526615009, 627829314, 420200965, 275248142, 119782621, 273940514, 226098201, 92241387, 223257178, 507653056, 32567566, 145456770, 384133555, 279657725, 604810291, 675245007, 421775961, 377218498, 678685814, 125774253, 56796015, 5713853, 55045765, 55045765, 378617768, 52637984, 437631873, 602077498, 167727270, 235383040, 176470844, 220919915, 9126013, 802749694, 793623681, 87517308, 678268726, 50169734, 538964085, 579156425, 863911118, 155774194, 25848807, 136187432, 382035043, 283486928, 64418190, 473003164, 312099011, 318234607, 145987429, 286794887, 448232298, 872980894, 925251850, 533338709, 230260736, 197160359, 427292804, 583352559, 139449247, 201802841, 493770146, 614037594, 360405246, 265823541, 281844520, 480230865, 530851822, 345777976, 4068276, 29369469, 29369469, 338607645, 119893592, 210742985, 42964796, 448871602, 609749330, 780909284, 12573000, 146918526, 680962604, 730522767, 346711354, 261479962, 9080981, 304956379, 304956379, 417629519, 324622173, 373349750, 51679936, 47810051, 207613229, 472162233, 76836884, 114304182, 622626016, 14149019, 112627938, 576485058, 100204599, 206740389, 8347189, 405465646, 397118457, 211162424, 544062312, 458977173, 554858607, 48149840, 677422228, 160165627, 233864527, 200609036, 523893528, 40991791, 188755945, 660454013, 675850300, 346526739, 176376779, 141130710, 539360897, 183853984, 175814623, 148873525, 11062548, 174996338, 163933790, 508173396, 315486534, 323274620, 56884929, 559679215, 695408340, 208181171, 347743888, 185391887, 540256415, 226845353, 370797115, 81773791, 538367225, 74300170, 218218932, 256434214, 107708382, 8810952, 441529848, 441529848, 287323551, 166748391, 489221418, 603043281, 171990997, 146080719, 550450436, 71095685, 587922142, 63759706, 283936833, 71954150, 239970948, 176516938, 353241824, 517374836, 410618901, 612670089, 84926138, 599861258, 296018623, 278515844, 494923350, 809578326, 259790458, 107128586, 445093735, 827327435, 750089083, 695624175, 91631311, 49858852, 250040777, 397479923, 223430268, 302986595, 477550550, 259603302, 303952257, 111508364, 23981859, 28480947, 204611091, 649321657, 175811239, 170545509, 922494740, 820828406, 45035466, 602260764, 259029400, 258707157, 391066073, 242951382, 631423339, 427144128, 690198918, 842699027, 57729329, 773740055, 800245204, 696464642, 687796636, 40139794, 617540683, 288545997, 280320033, 508473466, 184284386, 567390254, 407055186, 573341546, 99697393, 278924221, 155743531, 97877017, 287527109, 903380732, 322300679, 78123549, 415138323, 251532381, 567518686, 97144286, 831691938, 354902360, 173156681, 305703514, 520872563, 664624474, 699731934, 432271015, 234706522, 224580204, 416156147, 865645999, 615760262, 349659667, 504572555, 337992647, 328081848, 15002446, 21578957, 27445576, 499714965, 191876725, 276145378, 87298181, 624860975, 539398576, 395269341, 107837961, 288951722, 607478913, 55630094, 247079193, 36138778, 54721903, 396270243, 198177832, 409966527, 254371383, 410728875, 811970459, 897844973, 129935673, 494843541, 57066760, 515530382, 510208347, 494665291, 675476599, 26402452, 853350306, 834127384, 194000460, 594828768, 829691517, 37061665, 878595519, 956800320, 97053115, 253276412, 142869163, 211407900, 26813642, 929113851, 567605616, 438019874, 486974883, 563896573, 23592172, 503412292, 216790812, 166352908, 383095947, 741438035, 9692337, 153223806, 153223806, 710385720, 88771181, 202764722, 92372111, 153803697, 126085884, 337247821, 880191590, 299070742, 129005776, 89481072, 174747234, 555291769, 476087369, 153346333, 564277822, 240311820, 888190593, 426504790, 9884011, 291334404, 281450393, 729816674, 364301240, 472858647, 377233266, 73163530, 62392985, 553986617, 580266308, 68832639, 42709139, 485650129, 567578594, 471160569, 261015617, 512356776, 489403442, 125639471, 586964270, 932039538, 260139216, 155769295, 232003054, 530504549, 744705360, 23000192, 28338376, 346486559, 270335448, 395643313, 7569208, 143030865, 135461657, 773052767, 173554686, 387540267, 278672800, 203499920, 688460117, 220760203, 464060546, 77780975, 141131188, 788898810, 163812599, 506190607, 503066177, 590797115, 488545754, 110971082, 471012628, 325483265, 512107261, 316824504, 16522890, 356619373, 8950309, 838684365, 829734056, 271124353, 574822493, 887082609, 42284699, 454807251, 196245944, 203560425, 822938646, 875827673, 157856913, 490997146, 44603678, 25121222, 520402002, 338364225, 400661685, 26094218, 54321020, 153284954, 448280719, 205128160, 13790213, 153858014, 105510203, 184795686, 540470033, 284007225, 191397444, 373160281, 180384388, 191840495, 761651586, 92824172, 613380488, 29505992, 30889510, 110366829, 287534934, 283688552, 275491901, 592911146, 126307843, 40309892, 173816961, 178365160, 298780989, 321736030, 710392271, 569922253, 242753914, 334818816, 23926122, 237986760, 48448273, 161217915, 24915802, 286130110, 566086996, 327212452, 37168912, 75764916, 91731366, 545063228, 637095740, 435599663, 235854315, 411946068, 126636632, 134677045, 578179080, 483889665, 38134681, 458015343, 434812626, 79503181, 206274970, 130524744, 45157968, 36364847, 393566574, 344290855, 540629585, 208747515, 101590084, 40725352, 470936403, 117073608, 645650014, 407714383, 549187231, 643389074, 101161093, 127156155, 5295420, 229889586, 229889586, 202240641, 267723428, 16882158, 57102213, 139516437, 637871534, 453552594, 368883204, 328318402, 36982419, 352639996, 134972799, 67787601, 387487015, 629636664, 434583210, 614966589, 353001131, 4482302, 109117182, 109117182, 159441489, 208323615, 325177865, 259223474, 244630159, 577832723, 422123857, 351155014, 95931204, 479685444, 463383060, 662016825, 557912479, 59636115, 388012772, 138880292, 174205770, 39554291, 125375800, 632649408, 73480726, 391541196, 78065334, 3500188, 328741799, 328741799, 110483162, 474575699, 193470078, 201547092, 342718296, 98845908, 72821192, 677422317, 402647393, 248635610, 174052721, 385657565, 669352717, 47713360, 9323680, 885388365, 876064685, 276921778, 285504816, 572844048, 34633364, 181908454, 333737999, 490676586, 828489789, 725342958, 346316901, 4140579, 420472806, 416332227, 544014975, 190792137, 494035458, 140921603, 257436574, 402173415, 183352785, 495320308, 480591160, 271820945, 793894908, 329724395, 266882059, 577590788, 92288195, 2474554, 380815385, 380815385, 299682224, 104953663, 565398811, 73225265, 479970489, 62564680, 374787084, 500130675, 56734909, 952694594, 817146073, 78536498, 285302006, 231367372, 182567782, 86848048, 127598574, 517485914, 51174322, 41940561, 407602219, 229135904, 286247767, 311145236, 269895529, 191530289, 124303009, 205194194, 172336430, 21143836, 202396818, 9699844, 369904350, 369904350, 99064626, 65272155, 454357443, 345186038, 92750637, 187109829, 62069288, 37819486, 625169226, 153271256, 329201489, 269106893, 532912928, 437487856, 804889397, 124914199, 118886839, 331590062, 98242945, 2111445, 661970011, 661970011, 222743765, 492893525, 911050728, 898720372, 441384970, 122889771, 336069339, 273996801, 312098750, 367967277, 169070025, 52235480, 711388351, 670209644, 313685756, 186355559, 487631697, 280221096, 144571547, 224437147, 206924349, 153141403, 695321154, 314305533, 331971379, 583749244, 575668514, 250642960, 44553801, 348995107, 3549949, 9303087, 835240840, 5753138, 831690891, 825937753, 374133941, 148858437, 209456684, 15906105, 20157256, 532195254, 102439565, 62591382, 93806901, 605780097, 158482896, 456136605, 294263342, 161875095, 274656870, 565109230, 603767250, 23412574, 745825516, 369179072, 443649093, 857574363, 77855669, 29183796, 401668945, 277996250, 356826863, 221458070, 474298190, 44129839, 304952785, 110756014, 133094782, 112063326, 242402046, 847959207, 603859492, 145691055, 477819954, 186154374, 267291108, 35423614, 36207485, 336947669, 554544484, 305771531, 389949691, 30739778, 271886861, 395042594, 263262911, 233755593, 421003671, 41214406, 53222586, 234779199, 713153799, 874358115, 182890470, 740179402, 401538027, 551136921, 901656595, 225035328, 25295666, 431597622, 29313242, 458179353, 712241020, 781965805, 213083537, 519458886, 429664785, 919253705, 449212228, 124550081, 198003974, 499151454, 106997405, 149535232, 366102179, 574804725, 130346520, 246535063, 416610600, 27141225, 735982752, 710430097, 125858470, 421522833, 33356295, 566244951, 509430671, 413971357, 187958762, 158941454, 120096152, 754695417, 752653435, 289161180, 443766637, 314606798, 606085735, 814999004, 688406133, 826787666, 817320127, 73588185, 347175050, 108924914, 194088693, 596281019, 795794067, 838071060, 660900289, 562744117, 473288822, 22672137, 261881013, 312887136, 205394287, 124388121, 31132652, 149724172, 670947329, 75788951, 633931334, 812353745, 870214369, 389106244, 144509061, 232264844, 879260838, 463505209, 441404101, 455350513, 388441263, 244211955, 48391294, 712039161, 101365231, 813368898, 533018729, 156784960, 212811594, 594652483, 852601300, 115240088, 16434264, 177265582, 706958278, 519015692, 444507983, 97735631, 287037608, 658052498, 190588890, 600362650, 11945571, 406916632, 72283999, 377444225, 574312316, 604353399, 614426743, 249646565, 202173245, 101697214, 427907533, 1150658, 441078101, 441078101, 877616353, 757178612, 789772471, 279847904, 468662620, 380849205, 25037291, 434964118, 426837524, 186875888, 107196132, 77407989, 541102583, 394380685, 326094222, 40292204, 19645871, 689346514, 108917314, 841078982, 499790173, 335203093, 661841276, 746539842, 276168483, 83219272, 528375601, 636439597, 167672501, 171805763, 154726604, 819378373, 108927330, 861520407, 201895454, 85317909, 133193825, 578022616, 168616281, 309767762, 26952851, 480745755, 72645992, 160731589, 240273515, 375757551, 378967478, 621240594, 614429955, 477964689, 269293146, 96897015, 304188383, 24379606, 169737067, 156508043, 235584857, 36347538, 504153831, 210776973, 218387044, 696061528, 757117234, 622544003, 75180926, 111464659, 253399371, 540357037, 38509790, 543678141, 24245720, 264300535, 184624340, 80854661, 50500828, 396703868, 111314161, 282636062, 308299535, 820545525, 733869233, 654821940, 196744800, 165101645, 659581434, 605752603, 90780010, 209832134, 273592278, 470126462, 717031812, 95754337, 5400774, 415400429, 409999655, 24482484, 255122825, 87531566, 97128919, 95655572, 93869327, 92222453, 39894096, 212333665, 446770897, 35887467, 579162781, 394312666, 107783451, 64053357, 145653992, 254249894, 214315541, 892936217, 381330592, 589740739, 126783995, 706833816, 699191148, 759630345, 731989399, 131095784, 480803305, 157511805, 359959423, 566362382, 597621996, 226853444, 113287366, 210362483, 246789009, 266555698, 98266385, 194282646, 507404120, 96839223, 86443606, 118680820, 610396888, 40243432, 661802362, 796106704, 2460706, 231243245, 231243245, 236735037, 105700836, 164818635, 242789451, 200088197, 31776285, 799361897, 596790471, 450337516, 655836809, 835409941, 5431479, 16020459, 16020459, 38403918, 771091159, 154889392, 555396773, 29190550, 6013765, 304382708, 304382708, 136615110, 269677274, 142358914, 708537295, 850850944, 799825921, 271115083, 480335897, 42694187, 82867616, 402062374, 259599880, 207506167, 100180601, 129776256, 59756058, 208184190, 245030017, 152161070, 630743632, 95532832, 187383806, 217516700, 580907855, 279383180, 559809481, 10819150, 39745010, 28925860, 186263520, 72254736, 561464838, 175752773, 327479325, 205198110, 66192662, 102315044, 688634317, 727223340, 822329872, 58475902, 440501303, 445466369, 26066425, 317311535, 358080301, 106925538, 219935161, 251754623, 75016320, 386560921, 99207393, 510772419, 213027160, 806596995, 455273570, 501994845, 722119922, 23616175, 209477565, 353083874, 441807791, 434801405, 191684069, 277959174, 369620636, 176098355, 375716486, 76758507, 225969462, 94835795, 253188080, 478974007, 524870923, 511635203, 481435888, 279340162, 26296181, 204172761, 86418096, 373521515, 138828158, 494031473, 44003754, 195962244, 674638434, 510886580, 86457411, 436216824, 372537346, 834888705, 319651754, 506243822, 593455812, 626878792, 777941053, 185401332, 298842793, 568406332, 148057535, 300134091, 542467279, 516401947, 44579453, 293098615, 277994322, 526349292, 865899093, 381320369, 467529300, 141629220, 701293430, 460492967, 6750689, 400825150, 400825150, 250760111, 347031071, 481246373, 764970075, 49187964, 5446872, 80481125, 75034253, 80282046, 214772857, 312270518, 332022338, 612142256, 102227310, 94516327, 436221397, 87180844, 790735141, 734491090, 58505558, 941059981, 234963277, 557992717, 150228259, 149711918, 258501171, 519983982, 405631052, 58207667, 362585607, 432968936, 405261568, 604441497, 97646290, 53266730, 679898459, 513933102, 296877442, 593285948, 580263189, 607402377, 618107807, 832799158, 740276661, 445116816, 89467919, 388799764, 260376124, 610804628, 923399745, 272003051, 528497747, 747137622, 299579939, 301068487, 870828744, 949339838, 771041575, 194729424, 32974780, 358483787, 399322488, 668675684, 205814133, 293101228, 86561932, 665128154, 14573464, 488576217, 68128079, 22250210, 94066477, 11218671, 555065163, 152454323, 480413910, 333103321, 327821128, 152465845, 343950160, 238826625, 421723323, 43611946, 83194175, 167750834, 449714311, 458603074, 296941879, 290311509, 2217765, 7665602, 281066421, 7665602, 281066421, 281066421, 33956568, 172853805, 293921545, 472867028, 80296166, 527238674, 414561383, 168681916, 254539635, 413000133, 603003270, 774977313, 107682486, 256360741, 498859954, 10804401, 233377938, 233377938, 31604427, 133873657, 141726018, 350420289, 424729272, 506302097, 631959494, 343195095, 105788999, 76588733, 212934466, 261608794, 144100784, 359639467, 176387219, 380004315, 248345419, 267320598, 60597144, 500933393, 297689299, 237092699, 71799956, 285868392, 542710801, 231094547, 543685079, 107753537, 360990342, 71975142, 177723959, 141060768, 212614395, 643607407, 740617471, 1853387, 719984073, 719984073, 117840725, 230639333, 393882152, 647104424, 254921399, 27731944, 153531679, 114328694, 232436074, 211792146, 584567340, 166595558, 871315595, 400580033, 202541408, 5077932, 247797459, 247797459, 211883215, 168430580, 411175778, 764927692, 682783731, 384317389, 325749603, 352223664, 316563227, 163790509, 56764499, 62624009, 416609275, 650436530, 49514073, 407808664, 313975922, 472933583, 25495390, 517646394, 30433003, 368639159, 161078649, 237184992, 62735015, 305600999, 88892642, 363474929, 608502624, 113367504, 331330536, 715384305, 19995980, 593450263, 240508098, 704070901, 427790140, 155865011, 672566136, 780775300, 445513810, 388696885, 265092583, 177945831, 253251252, 176547690, 556133750, 530403410, 154043490, 280544708, 205100352, 180892119, 392145884, 368121446, 215196467, 704098210, 651415417, 158299709, 384823380, 440755832, 119811566, 224060345, 268470662, 434322248, 115524239, 268377181, 145956463, 594654502, 228337051, 2107094, 851496836, 849389742, 246438092, 254681591, 580069636, 267716337, 288728793, 46950676, 333833269, 405668561, 147336099, 402587497, 264002913, 12304051, 121294836, 357864073, 380594004, 270694633, 339499727, 170383214, 145596631, 557678334, 448791415, 258204870, 339429021, 684062355, 481931728, 154755659, 414827815, 885916327, 720436831, 153489984, 39958457, 667334903, 200344499, 409521340, 676755053, 337642079, 68198326, 216039138, 143693110, 526885637, 638507967, 142076806, 37946824, 725018052, 382008274, 217602115, 669671012, 453023354, 197613210, 155123933, 221649092, 475765583, 6574331, 10701976, 743380734, 10701976, 743380734, 743380734, 60392218, 414084364, 453390242, 376591667, 42315837, 201406984, 544330147, 213705617, 637003387, 767529921, 679420296, 664675315, 209990886, 85362933, 49886051, 132474555, 128477991, 110055193, 40072354, 186798830, 669608599, 34049975, 3269449, 891153528, 887884079, 781056705, 43509219, 635874243, 528724583, 527779078, 181067483, 144929294, 348709897, 640805783, 5800361, 611605056, 611605056, 344366015, 128895550, 608011064, 411999590, 185502952, 337482888, 420644128, 506957269, 459809064, 153875942, 28504106, 52839144, 412227689, 168524237, 125392621, 238965682, 41788170, 666199659, 209848214, 348277730, 456778067, 34984320, 216289957, 724104299, 627751928, 18882967, 642477590, 626169463, 140262593, 62429870, 798558930, 284309866, 75095911, 168721310, 129581887, 468534548, 504289887, 307934681, 112150950, 161502520, 287608641, 176859415, 183866691, 454535549, 720171084, 301125950, 47207646, 148424772, 241931959, 71067650, 188294056, 631641509, 238100744, 396933489, 215213647, 15939419, 239556057, 380413089, 586005419, 210710150, 452903537, 162700162, 308150030, 839415819, 675330868, 102408699, 68081197, 388342636, 241189797, 116955243, 41467307, 73999909, 554855584, 784268159, 710823366, 540192755, 642804433, 6772616, 287105773, 287105773, 241799447, 60043509, 91413448, 403824375, 856083661, 722263043, 764745705, 805858271, 109644158, 460194690, 437506607, 415350061, 159282656, 69978136, 401208075, 424893610, 54681102, 523208559, 335712509, 313114144, 149041514, 179967468, 301968335, 341830009, 14909042, 429781534, 693098961, 106829116, 727372335, 495988594, 664072484, 376136038, 407414117, 486653630, 99581567, 80649374, 629192483, 262577227, 190353171, 349420622, 51435625, 452013713, 805030052, 149449085, 188975843, 451410896, 515787518, 329801067, 49470382, 684189060, 224027694, 319432322, 14584805, 69419643, 42983422, 278648096, 49032961, 135037614, 347597752, 235871894, 151335917, 419853909, 14273891, 723725086, 206699393, 524160534, 496399570, 278319556, 467327165, 350482771, 430832244, 48771249, 255224016, 83816420, 603643934, 764067072, 517812679, 56966032, 130550732, 488514049, 149282394, 43928717, 145249183, 357040558, 707083513, 388713299, 85375051, 283140389, 199749394, 154864906, 309632079, 361807518, 114010012, 30769377, 199849340, 484974323, 964752824, 296429672, 215456692, 379096949, 516458690, 184875316, 184431138, 103645713, 456482113, 344056826, 284763561, 133433543, 151991671, 36291757, 83642394, 35786688, 146907912, 300263894, 377723239, 356435560, 434252002, 58394500, 882926236, 589272688, 55268553, 235660533, 754442869, 418478506, 30683379, 497958041, 122651059, 9235227, 84713388, 75478161, 238621644, 186614391, 290340378, 22261075, 207260926, 127434923, 272928564, 314359318, 966412950, 651427113, 157532671, 834038711, 311171213, 86731502, 5350093, 151327491, 145977398, 572015853, 368999541, 380241277, 18812249, 198334204, 474978330, 724053494, 72999215, 29958951, 437700161, 33538240, 257014692, 294452740, 284205527, 513188578, 690538205, 59897601, 699811735, 615374965, 665363305, 663703725, 480153331, 213109886, 356539761, 854032324, 704872635, 58443443, 568917737, 207100144, 444353566, 820278065, 106338828, 642234672, 347189620, 145005450, 394971147, 60742378, 315074334, 154255502, 182386660, 135015219, 520964011, 210342355, 32540576, 256518453, 382254086, 436469570, 175671499, 496495442, 247893414, 681024363, 445502811, 484521870, 110212459, 59889246, 124954989, 391128682, 197909373, 443369365, 695006283, 19640806, 203798619, 184228085, 91658894, 267839602, 378222505, 141493637, 523742016, 258622300, 357844294, 293855413, 155203803, 628085243, 102395598, 658539414, 279031025, 318867670, 382210292, 64716556, 194227557, 708681006, 156137100, 85145203, 182135061, 310051510, 392832761, 119237944, 231139291, 536274878, 255636389, 411141270, 271109457, 572246082, 416653837, 484823302, 739102608, 33858606, 63610851, 691380971, 710836078, 586172045, 557398574, 815174757, 644770333, 603242970, 273811984, 44816640, 178910094, 237730769, 524630152, 223679543, 77175852, 658474297, 641340110, 50896925, 174895207, 581370427, 184787648, 21882008, 468175377, 764491587, 259800869, 251665785, 10319955, 278709155, 268389200, 391168226, 18657685, 232525710, 26722418, 111861866, 254512877, 175000447, 322150862, 166437064, 436572236, 99291999, 701382929, 355840077, 96170812, 35533793, 214344497, 94897455, 418379308, 619798951, 309591432, 108265437, 739208953, 14311544, 801375669, 784989323, 381651219, 109641249, 27149034, 551812102, 65935916, 343282671, 392586309, 491416705, 191199705, 640308900, 146829198, 368256389, 481272645, 606455740, 654158671, 690244203, 755971029, 75187334, 59869931, 625442249, 186084668, 533642284, 96048715, 131891843, 555330376, 64000985, 19759770, 112406641, 36386671, 613426628, 82897013, 48875942, 360006965, 196127533, 633878924, 884306574, 917756462, 776387851, 137814692, 79594977, 147267641, 913964778, 381369899, 27956849, 128681652, 144693736, 605554614, 598327853, 255172133, 4192717, 121918067, 117725350, 247626951, 382851632, 432058336, 108219824, 32071434, 427953270, 286829652, 498915678, 84582646, 397451568, 297983552, 431677120, 149734854, 416013876, 278418387, 241938602, 530671095, 155832288, 49401196, 68385852, 391322754, 395371832, 21041836, 693160569, 546024047, 629819831, 511453594, 295928824, 184136648, 538405346, 573169014, 189217587, 29225674, 757140295, 802936232, 22017241, 773750894, 640133742, 115461169, 167917844, 342605181, 546589509, 213119668, 318614406, 297026546, 178476086, 302599318, 1477334, 519671799, 518194465, 227839465, 95469666, 63481089, 406758490, 640891097, 512510153, 308497900, 38451076, 308336336, 770898083, 521631695, 377945875, 155643824, 57581481, 118937902, 88564594, 83996736, 682027715, 504970475, 488196671, 584191683, 242800909, 13477146, 104490735, 115669669, 520752635, 112697305, 231735847, 444364845, 107588283, 807502812, 334730374, 282678451, 798021791, 862844121, 233428721, 156731271, 390854969, 1978155, 397857374, 397857374, 542465146, 890920455, 595751491, 356571251, 120320973, 147563166, 6239549, 274635150, 274635150, 229880626, 534829731, 181056510, 108553885, 163317157, 132324183, 332040802, 574608039, 194194654, 332998553, 534214226, 334917109, 497836375, 346279125, 125306152, 27752180, 663703132, 223026200, 233884454, 242912701, 211486751, 315630507, 508192374, 4926439, 762361990, 762361990, 734606073, 761519452, 45575476, 577445779, 477733180, 4919680, 165319280, 165319280, 112494642, 342525258, 130365963, 513474173, 521130936, 67263944, 608199742, 112180230, 333410801, 645061387, 35761762, 209159235, 502125613, 146155542, 328701718, 291411602, 242668983, 80939379, 539721645, 297012908, 341767917, 656705198, 466903132, 113862230, 15919388, 378821656, 504445931, 309667808, 137893432, 78239345, 467950690, 538760551, 392775374, 58479289, 170317219, 17610391, 65486849, 173551064, 705927988, 89966988, 219915985, 630909407, 38476148, 519112723, 177583575, 213642352, 637779721, 467013813, 504523131, 276843896, 295430371, 186180498, 70893797, 300942214, 100816892, 59053922, 623293199, 69730909, 68025465, 116428305, 193050469, 511847886, 635069596, 636074989, 664694865, 14140676, 29228852, 378691304, 32714191, 152558768, 460380021, 97245640, 137904468, 469979224, 766285730, 520303164, 239814451, 322781114, 528554138, 366692738, 304162292, 613380190, 821114352, 155643803, 532798087, 595889200, 118306934, 703610284, 407557392, 50568143, 406266626, 633932911, 692866985, 842343176, 442192583, 277508018, 485421674, 662431947, 580337069, 257698713, 333531223, 553045219, 307589821, 95333883, 317768266, 39089120, 551622284, 193712392, 398133462, 527204336, 41304236, 323580596, 437246492, 149906758, 228220617, 423601228, 138167812, 431966815, 1305299, 131429621, 130124322, 193306011, 157594103, 457468864, 548326146, 574958815, 278661566, 568829527, 125529086, 582788913, 554742336, 21784005, 271934342, 645076298, 250337959, 223803614, 370443085, 79977602, 335097289, 77735412, 77024055, 197920977, 335091804, 850988465, 841620066, 37347144, 199038366, 514066714, 230798961, 117121840, 110103280, 290482961, 680063869, 540727332, 384628281, 38137326, 384432001, 249429485, 33354127, 186465471, 689332311, 822893206, 316014898, 218898659, 41058940, 213032040, 308292699, 839017027, 817578428, 111756624, 64554007, 596192488, 664935326, 131449772, 36443608, 400557468, 451706513, 787842866, 104090126, 551120398, 96932377, 223607298, 446778093, 750719435, 216475545, 60774521, 673927071, 390727157, 68021939, 92118489, 401065326, 600421202, 282229017, 89663977, 384926983, 665272633, 677426230, 10662563, 505189694, 505189694, 200623899, 22208793, 346396750, 490687707, 263211840, 282281246, 413094313, 219012281, 159004373, 530977656, 71320950, 615782298, 168273490, 336242584, 226380173, 446490631, 658987485, 542081966, 46894682, 635824503, 549002700, 268658290, 749615705, 20524544, 496127975, 340864358, 405713768, 428410062, 72927686, 113938203, 578555290, 542017990, 727336407, 922555381, 579905028, 8455798, 354324384, 354324384, 294284964, 399927354, 921521319, 206959119, 36376036, 343366597, 103107740, 83798577, 495156068, 620322573, 120057441, 786932886, 245246509, 362500418, 261510155, 513442889, 686553755, 519082528, 216934187, 302939204, 654513858, 603422808, 48187782, 455371787, 197831974, 592333573, 180396379, 83105623, 132413500, 752064079, 124473264, 788962388, 121652329, 205453905, 417797803, 594665534, 73100016, 22957107, 656125, 776713898, 776713898, 299878996, 410592776, 578641806, 553553753, 101785477, 206840195, 292925870, 10462241, 14449668, 14449668, 283443770, 129621140, 558214879, 434673875, 264071006, 602770472, 109705893, 147927338, 164972023, 19171846, 177561172, 694999997, 687037266, 388125067, 232546627, 836290251, 387772255, 49331160, 97754900, 404979562, 287159527, 149068944, 155971064, 3034547, 226910986, 223876439, 375401047, 7832028, 465144532, 457312504, 50456728, 196703194, 195222646, 738249592, 552723132, 736113257, 866280532, 345124966, 98685712, 61764348, 64756161, 435385824, 485676489, 39733750, 299489169, 352186676, 864213569, 432356561, 218906344, 169665795, 893153681, 554267735, 380494490, 264120552, 413080951, 539168467, 265805078, 396302497, 79221085, 296402318, 225506634, 158096943, 94296030, 570238593, 450895834, 350658008, 46990988, 220988258, 46884699, 130245899, 440832038, 197819679, 624932073, 678828732, 328205203, 359505423, 106563611, 727566601, 28172811, 223854979, 483796787, 76547824, 297222105, 657427505, 179551312, 296838559, 133163863, 743039562, 163409942, 905978630, 789343895, 572793638, 592039316, 24992918, 277578683, 147384008, 414636548, 736292062, 200123277, 37530830, 71368238, 126103259, 143150244, 127815140, 290518808, 40644558, 318961181, 9413516, 417791463, 408377947, 110065341, 617809314, 92716118, 99534822, 357557871, 44563487, 407949423, 384061724, 9182337, 49015825, 49015825, 152408725, 46842726, 189733743, 121350253, 321446709, 664506600, 107199481, 514905473, 464209089, 436120575, 62150933, 570190957, 50244553, 842375037, 420651019, 106753904, 352288663, 172597318, 388645258, 523738354, 20948984, 547211198, 914039164, 221945340, 48922963, 285973825, 397962997, 46670224, 572919832, 317204871, 27368003, 743921127, 38130014, 131293965, 147270802, 368523689, 515504285, 355978109, 334613558, 255520956, 27591157, 22743024, 24050794, 480247741, 890088897, 753424971, 741596449, 260339808, 558662860, 491220558, 592362355, 354764900, 213566303, 131364208, 772797550, 57110569, 194067819, 524228660, 173202295, 439810577, 327158771, 648887853, 18429381, 227314212, 266465301, 715616561, 509006761, 107907266, 361040598, 749844027, 659172520, 40555474, 139971154, 363135857, 650739084, 62466046, 456619815, 266770172, 271151799, 172772163, 212044913, 775229584, 133456978, 787010115, 243582955, 497173295, 651565778, 419665932, 199884970, 813993819, 709769090, 581753430, 653748155, 484223489, 482945168, 287477668, 283399624, 117437300, 112338067, 41629925, 72353819, 147741392, 408404855, 718565039, 473076077, 360205011, 949353093, 432002878, 232781131, 39514426, 230926504, 381687247, 489888851, 354267680, 740649468, 514773135, 410305098, 829377525, 442877321, 382416048, 598322998, 48545022, 321910635, 537181918, 514805202, 119648072, 513268236, 579666826, 497122685, 173729201, 218880301, 271543267, 268606887, 163095785, 229796252, 417341497, 416005623, 162087915, 39197211, 389798315, 58249306, 114673595, 359176698, 637397261, 165512297, 120983872, 745365163, 626145921, 10746125, 240821566, 240821566, 581080925, 25592588, 187966376, 349659703, 4858926, 244773112, 244773112, 345988508, 327533483, 113496116, 253736816, 316973821, 394197483, 77926112, 415470498, 530453828, 88890588, 433053401, 170497727, 2111382, 510304731, 508193349, 63018207, 271066542, 416909332, 419448897, 314945255, 613097710, 901350073, 249060800, 77400048, 26153117, 250829745, 428515006, 473963448, 290762083, 759350395, 361389740, 282152701, 97911825, 624994764, 95141093, 9223191, 57799623, 48576432, 88749853, 520308470, 197210391, 261525217, 592013223, 422909071, 101122348, 552301532, 793500918, 709921660, 196384790, 10680255, 222876852, 212196597, 509206489, 415760864, 124968007, 269009300, 431430067, 152097075, 153767858, 341599397, 273350282, 691983996, 13552793, 666713802, 136125169, 650835096, 544300421, 150560069, 105949550, 77882672, 256956705, 363204390, 162836, 67373201, 67210365, 284278580, 169721561, 90564758, 350062048, 265624279, 97964806, 296892711, 214791598, 766430083, 252232637, 44306346, 397898827, 448802179, 211379411, 426816588, 481081216, 482699271, 862928979, 191375643, 113397336, 57449391, 229488650, 163917056, 263485156, 707185538, 95970635, 41719828, 401093506, 65030285, 58810379, 222664780, 104232302, 435945654, 598828207, 59815590, 177800176, 354684002, 227774403, 417081044, 3712537, 382501040, 382501040, 382472937, 65467354, 530619213, 535630058, 684917571, 108483778, 589023711, 344081022, 433087870, 357866203, 666681703, 11052429, 708088485, 708088485, 821438121, 547846220, 112265195, 542738933, 69943335, 688724950, 611618116, 702562986, 645195262, 475144680, 45254749, 528451113, 28187895, 44229590, 303405204, 2575098, 33048481, 30473383, 187202998, 255598990, 49898771, 344212251, 439115060, 804799971, 123427162, 13298229, 296818300, 291411724, 557229871, 196078681, 3846136, 376176855, 372330719, 42804038, 71204269, 109558875, 705469120, 151739027, 279993777, 220598564, 88805994, 134644805, 276646223, 341130671, 77432641, 165177495, 170257206, 72343471, 190853446, 330767647, 420448622, 830272166, 369459225, 165644069, 358912855, 467019007, 677750539, 71399917, 309954238, 217875678, 272635852, 466696013, 686195436, 236176264, 450490451, 486250294, 82091231, 364268723, 39588777, 336079615, 85776970, 461053736, 697521999, 611186652, 3748764, 171380431, 171380431, 488016541, 906590935, 130724083, 719886450, 372175890, 140477922, 171094044, 66971453, 594626386, 140378307, 254825486, 494224571, 317311164, 74048538, 589402008, 42631298, 429227683, 461998400, 771660155, 667325102, 114573752, 292845702, 186714267, 295285556, 349599794, 24735650, 786156065, 323267542, 274661139, 585069810, 520016307, 3670017, 126664374, 126664374, 412378608, 59955942, 250507637, 209793449, 173574702, 295276704, 375440533, 211129930, 81945568, 354394169, 113592165, 86473724, 280703442, 624043041, 281101449, 145718113, 263036060, 744580157, 375957026, 220081284, 320744508, 696350522, 310961148, 115547952, 53021450, 29566373, 38141493, 116326172, 455178513, 35864370, 876444366, 865166405, 501105897, 14406794, 391026907, 625196834, 675495382, 497403406, 382377869, 24952553, 69681681, 587628822, 380164612, 179477788, 675745669, 803552078, 781039831, 392932080, 82998686, 266637882, 188899681, 819055381, 19179421, 488313763, 60980450, 499131688, 151830468, 72973967, 88771881, 418087151, 424310354, 968903046, 350580929, 258400136, 563059289, 260557988, 152456702, 188406507, 959334798, 426802073, 307393820, 95197632, 144539613, 122829598, 355498018, 397588991, 777327834, 616427108, 659023378, 495941595, 652131785, 449078180, 513329131, 388558678, 374563781, 794135972, 647034121, 341163837, 690245693, 918944407, 634260094, 641809996, 661136739, 247436727, 182614215, 483015259, 290017748, 55379867, 120646655, 486784332, 143888507, 638046205, 332281267, 416444797, 110226721, 193457667, 394669700, 413159520, 485249020, 483064885, 8295993, 46236718, 37940725, 165852097, 465525222, 431066257, 392880373, 112484766, 33496111, 221392812, 568108622, 448308200, 340504565, 695263742, 414022177, 4966265, 375062788, 370096523, 98074011, 79491697, 40300457, 476538166, 291948017, 257275070, 226009305, 596737237, 208087107, 158616247, 435730834, 257386725, 257584146, 22642979, 221387324, 560555098, 464266051, 126698461, 185160027, 478939204, 725091089, 485240005, 518680083, 175377308, 109142974, 399488971, 220482582, 36512060, 245408429, 11791369, 883301561, 638460533, 55411521, 395789260, 182449651, 571061577, 2513639, 262390859, 262390859, 155257159, 402393985, 30417140, 156826706, 295562549, 221671046, 27994434, 610226084, 167861849, 542998219, 516450387, 116918631, 495495758, 4677175, 568597600, 563920425, 117326465, 518367840, 839247610, 612094410, 232376073, 949296, 64485909, 64485909, 45607841, 298104790, 231396735, 333292092, 242967458, 288794991, 44797900, 426547946, 94938329, 891661574, 80947615, 566400254, 264562598, 493279507, 159587091, 53131048, 290985355, 323842909, 435310810, 195621133, 505868029, 593388997, 173242309, 401559268, 549981219, 169508782, 638631112, 449005332, 303724235, 470565192, 810197592, 587457966, 240651549, 172232521, 9144419, 79494165, 79494165, 259032820, 932499632, 183631527, 664516491, 260900615, 129998101, 308580707, 98979228, 668988095, 28705159, 31068378, 685322481, 109797626, 321064970, 25645549, 739073305, 174558162, 385784985, 327301941, 603807345, 739214807, 199998808, 182192231, 204053798, 839753644, 362039345, 207643734, 50327270, 127556741, 358096173, 760261619, 124198497, 458382427, 401905499, 921318342, 420723461, 342432860, 365332827, 501782548, 386448309, 331613394, 360550190, 276949358, 96439287, 329329507, 195982091, 111482065, 406940257, 382460827, 543686533, 265714652, 26373041, 382285549, 668146249, 358589482, 352867561, 135979020, 37242853, 256991432, 73672793, 613545348, 347152831, 289168390, 64723341, 513496513, 201878646, 51954268, 46983110, 80179978, 661341781, 814353577, 624649602, 266136554, 248482067, 211223857, 18454674, 94231234, 154075488, 131770679, 438370742, 591739831, 243413964, 284057111, 498593514, 146828001, 688926346, 487848629, 559982857, 488917526, 22783578, 182658885, 41493830, 18157959, 9256384, 211855382, 202598998, 102057866, 769605709, 661016311, 402620114, 704564078, 332609021, 335933082, 527010249, 407839278, 652403402, 46443298, 234407192, 304365841, 612455051, 101285620, 770244619, 491517354, 294540178, 596197019, 460279524, 27956847, 270625432, 70392315, 153870111, 7589196, 905104174, 905104174, 49004070, 84340098, 147446, 52986252, 52986252, 67505776, 289399576, 442476729, 337441057, 102938066, 322034087, 22283055, 34689929, 190534019, 223129109, 274091690, 456930586, 409104892, 534448981, 295575281, 829731005, 836211488, 53282026, 751172990, 566988734, 597659648, 595909953, 254965386, 208099774, 628498013, 10004403, 398708742, 388704339, 486218740, 327158030, 574454189, 816903494, 98873884, 692522792, 381340120, 517674670, 675719628, 837458846, 967859959, 178614482, 763632072, 11654507, 897991428, 119297263, 753026823, 512698004, 74097871, 339095875, 125697577, 423875995, 337532017, 830866361, 660580716, 301769554, 486587117, 856191479, 642778769, 552816154, 136602207, 63077432, 10352293, 591147063, 591147063, 672265960, 97247553, 275647831, 507781261, 171337649, 36527862, 248386419, 346465123, 166135813, 90360935, 300083785, 324153885, 441270642, 135626129, 147968569, 485429753, 178677222, 371825441, 164773790, 18452686, 576243043, 783870868, 305259730, 149122679, 111336569, 199601882, 20978509, 763574322, 91162013, 703234671, 436014519, 218948727, 706272295, 434834138, 469917960, 638465278, 474451183, 705148941, 65872714, 271586811, 185921171, 141593856, 135295747, 527421260, 170304799, 585893691, 422537796, 416313471, 61539336, 115782759, 767992331, 864278613, 122678046, 214310568, 340087891, 293538315, 635407150, 445060337, 131864968, 349079987, 330835205, 9527927, 88130374, 88130374, 82197681, 228766043, 22922940, 343548388, 605629496, 618846306, 685323001, 39497938, 744948714, 480870085, 42745217, 13893086, 72481178, 452233059, 386228075, 200741313, 838159369, 360463002, 346845644, 228202915, 531053304, 560243235, 219881452, 499189148, 736662907, 391718986, 5162431, 52413075, 47250644, 221408942, 391336899, 238761558, 580200782, 566400317, 265166721, 245673045, 315106411, 704384752, 288371530, 360170346, 115453959, 683905255, 444896713, 313614929, 776676711, 658637465, 652960586, 155020811, 586143218, 451919792, 143296819, 220669782, 49679344, 309030114, 127465271, 192294806, 310926663, 143464529, 162731999, 810866160, 172452180, 675511282, 367692356, 442646459, 25411162, 771251142, 140746917, 325018026, 180645302, 584592382, 754637342, 767827885, 410356812, 228220686, 429594294, 112706133, 315877212, 341100454, 47613844, 270065841, 402141621, 114558842, 166033646, 655073436, 721180843, 468603353, 272869460, 26696871, 29989640, 45350329, 813403192, 17896036, 742477192, 57243443, 195300173, 578235180, 972249329, 773992887, 485962959, 561467499, 841643349, 100299892, 338964956, 44335696, 219745343, 548231426, 247055526, 296678383, 143935680, 168151203, 910247798, 731559527, 1864862, 54716292, 54716292, 55706137, 147222639, 92648286, 614210796, 272729971, 327092431, 508461251, 241564113, 415706907, 66202205, 49701474, 384267746, 202494425, 298007315, 534893611, 118952068, 29707105, 701465574, 381457508, 140726478, 147282095, 627229976, 391193268, 162897579, 305713655, 525060509, 215563259, 289042511, 89475007, 88109666, 200138677, 122849014, 56094822, 226784199, 345228605, 130057875, 338654148, 316593412, 746879529, 660316216, 147436397, 505521526, 444333758, 223828347, 29757190, 204215797, 234425321, 663116542, 636673020, 662925177, 121499428, 3549522, 19289282, 15739760, 508002157, 241765820, 263552199, 825308322, 852845204, 280976183, 7925175, 24538928, 24538928, 61787754, 380170944, 715629576, 138050068, 74993156, 397077556, 141436926, 434104980, 152493026, 21017473, 710823408, 532476965, 10693751, 31461165, 31461165, 141219233, 423497118, 123442672, 245260353, 367876591, 428219535, 60498831, 124681995, 332032069, 387835459, 104496881, 27950642, 143956121, 839763678, 41927949, 465800427, 432534141, 530234155, 385656151, 221020402, 199835143, 157342726, 391491072, 393257275, 241152375, 388969349, 32878818, 2999730, 72307937, 72307937, 218778525, 473947707, 52794996, 506503232, 14817091, 311939353, 146783727, 86212647, 267844436, 492806804, 381954831, 185149067, 275683104, 572500537, 34940842, 271243321, 543857786, 315039387, 185878732, 397162325, 215093061, 242295760, 538666749, 314452031, 149285099, 253655557, 488635551, 759655223, 231727981, 656166330, 683655173, 295962117, 301914950, 52914991, 841142490, 44847646, 541820331, 613269376, 764916619, 63870555, 55149337, 300501581, 20858865, 34268686, 73980739, 744359959, 93232031, 382790189, 385466437, 805973704, 735157410, 214744183, 540527667, 176730558, 215338907, 364367575, 47587584, 390321948, 39729960, 251936675, 729457048, 806277156, 281432930, 398637781, 61050385, 481315250, 480393593, 375379328, 155742597, 185622019, 87412956, 305887611, 73921201, 97428646, 330123795, 67640057, 416375426, 151771100, 734934655, 592296272, 306941580, 646815526, 316179005, 602881993, 464307498, 186460989, 37995477, 611989448, 338677641, 14474673, 92268613, 522349815, 875332242, 745268476, 691862099, 121386356, 92490648, 564756345, 390742515, 118213107, 233600097, 290650014, 251815830, 559329862, 12813056, 15031431, 726785220, 34370913, 264973662, 302106840, 43884981, 157123665, 591177904, 74868986, 73652982, 436573322, 179871221, 230935420, 341213775, 43633067, 9931705, 253517860, 253517860, 506605706, 376103025, 384197596, 502671544, 216283284, 391840925, 162916493, 203242886, 1924790, 691030559, 689105769, 434307528, 41778226, 57826778, 14157970, 138909591, 578321326, 219077643, 122823331, 352305691, 128070901, 673757616, 833088396, 460009690, 137314374, 156268055, 382055498, 4383982, 432512268, 432512268, 189941862, 602401466, 769192571, 678498804, 311261100, 378653989, 684128370, 110269815, 831645930, 53032958, 294009469, 623447773, 967961556, 542662962, 166592035, 296843828, 156304162, 107120386, 420756488, 177839137, 182713213, 146868983, 419686754, 291877003, 302349436, 181124320, 146835352, 65264912, 10661841, 30396787, 30396787, 43794040, 20213460, 149341493, 282392403, 241644300, 496957719, 230669961, 483464897, 668055, 725422597, 724754542, 13723483, 275975603, 396102694, 604078081, 205825888, 219048942, 276199544, 237343656, 46051985, 535665946, 122897573, 113851836, 401496222, 863609301, 505261959, 594130925, 242588334, 43954241, 752061692, 65203570, 314863159, 250780538, 243106559, 469370312, 236480387, 126196909, 17386838, 494679175, 228695048, 20340312, 380613894, 308088838, 324044724, 545091784, 801770260, 908784718, 650169114, 222658005, 510440166, 960269495, 195146372, 752436050, 862465279, 787583466, 732625536, 146099362, 96483248, 287123348, 823523125, 224251025, 344684490, 215102638, 127515196, 586036325, 25433352, 765365575, 223504124, 417972328, 442496195, 560397948, 845037153, 441067773, 51991779, 510484957, 731024845, 233996652, 306982301, 427311860, 298159890, 201045829, 25415565, 387891851, 53059979, 121600310, 248360756, 284474589, 608476054, 54277663, 555947265, 367112725, 718580169, 733281874, 716248596, 20896715, 334990024, 201103018, 749110003, 626713428, 162957566, 60322156, 623892495, 622835624, 109559751, 584138973, 528518910, 872044640, 859367384, 64408207, 591325111, 601734833, 173167303, 55320677, 262242158, 233180581, 134270797, 454438670, 642872511, 675449158, 172125668, 273319540, 270254029, 201182093, 564974832, 249044614, 607439860, 142253, 195438227, 195295974, 270810431, 420349277, 56858863, 571658885, 342448417, 280146874, 253969554, 120469520, 518216014, 157378164, 550316528, 231132775, 23107590, 385456508, 569184325, 279427356, 641464359, 480863363, 165203281, 224737972, 679466099, 252813189, 174344433, 312260748, 173770693, 112708252, 796789215, 449611035, 468027215, 836049971, 182241140, 689724612, 253719335, 677730705, 832616461, 130007245, 715437977, 270644497, 452782951, 431946179, 30360606, 220663215, 319388245, 240939685, 556432752, 442223881, 196699895, 272378642, 193455564, 4887954, 178119876, 173231922, 106249503, 120384680, 518494428, 412519951, 552729418, 105353413, 268008232, 386247208, 520728205, 141108561, 122677321, 588812465, 703952829, 68053085, 412297038, 136836275, 675527961, 337000469, 88157652, 150667908, 1464336, 555618188, 554153852, 857390838, 61983154, 121460654, 262609685, 448080089, 31539325, 218071947, 661892243, 183377687, 254827644, 58719098, 428768508, 3679373, 453685550, 453685550, 117412161, 523544625, 649678240, 73367757, 46477174, 192280051, 31866698, 49902110, 135832002, 562284562, 36166643, 488352128, 634786319, 707876606, 194253984, 837464049, 503614309, 532402309, 393748024, 322301239, 205769214, 105786995, 313408888, 413491737, 786610626, 437646504, 500712982, 348762158, 445244566, 183335204, 293058269, 194614539, 102249998, 265795740, 826608865, 228908391, 180759980, 530643983, 17471136, 639294841, 429810447, 389668220, 28225027, 331439858, 568939679, 211885980, 543013583, 719923119, 158589559, 107794911, 44687607, 81083914, 693716915, 662966835, 515842585, 557128377, 137807492, 565278553, 869330257, 142345518, 318138068, 370285256, 662569434, 255719121, 633311817, 168674326, 280119937, 43297252, 580549650, 463109364, 108181146, 275785180, 266274861, 320340194, 528327890, 573224747, 487129962, 19901419, 238752752, 617008628, 675985463, 877463956, 761527054, 737343759, 251525938, 40307401, 77940413, 108049842, 5629745, 379940185, 374310440, 202188969, 619302937, 128541948, 181388816, 560671740, 366918897, 95255449, 353363014, 18288223, 337390997, 398883098, 49810817, 50265192, 214802208, 274727816, 188976612, 117104086, 721002856, 823673191, 229433968, 523594866, 909294395, 961114081, 80789201, 405188168, 204780825, 1473240, 85242205, 85242205, 622258447, 97015962, 277590204, 283953063, 16585033, 44656317, 797345145, 420056723, 251327892, 474168425, 225196647, 1015609, 123242060, 122226451, 557879323, 86629251, 616357622, 494622334, 102403475, 454506921, 218956814, 206706569, 328853753, 44451597, 616176960, 23423806, 396258945, 16500431, 529058796, 806706825, 91913381, 17236667, 217216121, 182179433, 99933475, 50139846, 280796137, 93723714, 152322020, 219439857, 128646703, 489424612, 151590512, 652115503, 609348828, 20347990, 447544591, 287883869, 361888757, 120727167, 362045455, 162452651, 279989325, 126213729, 16628692, 122024774, 367227820, 29240673, 697688244, 680865082, 502599476, 121644831, 52134028, 517523012, 124170503, 99931251, 617580056, 599854753, 82171298, 489679088, 563113087, 45602801, 218717615, 138514674, 196468289, 262678932, 433753821, 257086619, 404618951, 124376825, 239944121, 547830186, 430353951, 500786048, 578698397, 577892180, 549667254, 44372130, 107885145, 320108783, 697522098, 225259159, 36359821, 513112930, 261671755, 293644421, 375491384, 502851700, 607448357, 171961502, 565903260, 275882536, 19926472, 118596802, 43614591, 175857591, 424740548, 378661754, 183240733, 285555338, 66207979, 121422708, 154294066, 198965866, 552995601, 43078767, 504814125, 153057446, 393366953, 43548717, 58612469, 189855508, 238086021, 555555419, 801740171, 894030902, 461927000, 405483826, 170600919, 742196262, 984475755, 25605048, 832750740, 208573454, 168697996, 387307241, 156172454, 2514440, 443634910, 441120470, 436983049, 577172846, 172566276, 447881354, 461043965, 49168598, 162246304, 586673781, 199418888, 313660399, 173235783, 457149444, 259414967, 417243751, 585480876, 300794414, 388945037, 573892977, 812992178, 787537693, 181422613, 53573720, 245283336, 370576834, 77252725, 74336104, 630334046, 1803611, 530903313, 529099702, 294829650, 342048175, 215294200, 452830425, 451445530, 191764105, 582863696, 380051179, 209423816, 294346883, 334769826, 199580699, 349369038, 47248620, 86012362, 104612089, 318578625, 294544255, 602915511, 822601999, 538132733, 634124291, 424661609, 246398731, 505447831, 143039244, 594510991, 391693736, 65085627, 112990755, 433663297, 288372101, 359077619, 831843519, 13157508, 527141657, 57570685, 240395649, 216672903, 184480356, 234377914, 288503346, 46381935, 515742725, 294121280, 349798105, 833097930, 400601584, 127477460, 286975120, 697768434, 445366127, 341716651, 603977708, 893573376, 900169575, 337578992, 368722416, 44663984, 659610069, 80362687, 554099008, 612167626, 365865801, 217801712, 180234317, 460048639, 232045674, 73501438, 129278391, 385818061, 800122416, 140681429, 237548462, 207756075, 12816045, 221671732, 29437536, 204106907, 307092523, 221685715, 337231080, 521756219, 200328565, 112982205, 447583208, 77074691, 737219509, 131735787, 427222045, 394937669, 82593436, 336071088, 433218517, 76808227, 64546245, 278521734, 56837820, 259061881, 218019741, 892822692, 35615023, 162782634, 20581455, 600100156, 4634805, 734103462, 734103462, 526674445, 501964861, 204070190, 294619365, 680346529, 243749750, 249602544, 85253311, 637158580, 417801706, 261209867, 165508557, 744087934, 43605599, 195059792, 579039792, 393732086, 147947013, 285949558, 43687525, 513333285, 511086381, 155969886, 109039713, 9426917, 794338427, 794338427, 878999321, 98313027, 694892645, 683194115, 651289860, 5376962, 94759938, 94759938, 381657667, 541299673, 705698158, 769807387, 89038786, 54795905, 337163167, 266484265, 278860151, 221219383, 279402190, 823079398, 589188995, 592736468, 249812693, 585135535, 943343920, 553422344, 211677087, 29381591, 17975991, 122726822, 52117902, 20572522, 25736901, 40825195, 434215944, 224254178, 492053139, 86813558, 34254003, 312832841, 184546221, 158536591, 105082479, 233351126, 589839651, 287132752, 250580242, 390366083, 404466294, 418902147, 436865886, 281419573, 380601177, 259677552, 10985685, 489013149, 489013149, 856734481, 157827559, 722629295, 734368448, 502095179, 568723728, 723258811, 716205317, 483907304, 4017459, 252231753, 248214294, 402779603, 111306741, 355674457, 745976446, 85296014, 451858695, 78021717, 523359084, 756408258, 155031923, 534253728, 300661714, 59762880, 338191811, 253014701, 400744991, 38994107, 72495242, 186267304, 551895092, 192254275, 257476076, 92645227, 429442653, 447309009, 711373228, 5360541, 49030619, 43670078, 63831044, 501227020, 332902663, 41812022, 407641822, 815650848, 669383796, 121409587, 391801085, 245193092, 223908922, 416928659, 57771980, 63439350, 447757032, 54181208, 262607989, 162694569, 585002843, 84006477, 619521619, 354271126, 309602132, 681707103, 222719764, 218799487, 354022346, 698470990, 139469290, 278506396, 297128635, 535081549, 159970141, 268493288, 759814063, 593086415, 591416960, 168564878, 247328297, 438547992, 639618093, 636622065, 695978602, 560198815, 142297909, 636834865, 175035046, 22021314, 818198805, 693305096, 112797940, 647575737, 35272644, 824326734, 2464049, 606965786, 606965786, 111961690, 51624224, 90852638, 257228230, 268817109, 859259544, 215733103, 227588693, 380292085, 106536558, 490897957, 592589334, 330224175, 290790134, 146818487, 27381516, 705070924, 575996506, 283793968, 163327681, 748606179, 482512669, 100578389, 226306145, 514740533, 725828644, 246660605, 58995232, 396509807, 117552588, 577850743, 64822568, 119378243, 277431913, 360585776, 17345002, 251850782, 168129862, 442915675, 113953431, 665831924, 659027922, 414435040, 24360716, 4776853, 372908368, 372908368, 26365145, 204733193, 23074712, 83872377, 435533746, 582550496, 86147397, 530667144, 162797111, 153666941, 71966115, 229928417, 548435719, 278310644, 135023592, 181090953, 534885566, 583719546, 267964304, 928891683, 10906468, 294928716, 294928716, 614187030, 577468628, 209190206, 248603926, 509317633, 365642891, 451058547, 368046170, 354431752, 448720406, 628342388, 213323427, 572482776, 547667611, 233550247, 416636341, 55531841, 35382719, 351812751, 196250811, 57589655, 125127768, 363460334, 575870400, 17995968, 98337216, 496781110, 320358644, 325428256, 280740004, 216322324, 256455567, 513892957, 384148088, 324054810, 448819664, 47111243, 193810863, 94851191, 526082878, 212055319, 9167568, 145777110, 145777110, 321890993, 10624852, 803310710, 792685858, 708289949, 109460271, 880047676, 9394904, 872860528, 863465624, 36583651, 737098185, 145493728, 698455348, 448214774, 26708545, 330606561, 69590577, 14892433, 226100642, 259172727, 170684009, 642022282, 460864298, 140577160, 274399128, 307271228, 913235885, 240629273, 262463803, 88307147, 113399367, 94852501, 340636362, 446077591, 475634913, 738158737, 387531999, 48799860, 145721280, 708218369, 161903892, 566364850, 692387093, 276792731, 241191751, 188243771, 272587702, 198600505, 376143504, 566610840, 128648895, 714407990, 74677213, 343180511, 122701427, 501692337, 46139666, 393135038, 96201698, 149956736, 215101060, 8530258, 760099072, 751568814, 198686625, 53235031, 341320801, 266090089, 39612023, 166966571, 801391106, 404166837, 585305679, 794689646, 187023969, 586678513, 276905493, 575288623, 217282934, 376784491, 32577975, 74684488, 374248061, 243948129, 54266741, 386275075, 240609977, 189724738, 213571083, 18701646, 671815232, 72815934, 674102845, 329173784, 443509337, 11912563, 691068262, 370762152, 509886030, 833435630, 75480911, 94425766, 425149120, 184673296, 55427533, 223936486, 739541007, 108365915, 677466003, 342869910, 309814507, 27599176, 151989744, 413105917, 308849069, 92586860, 572321803, 921312202, 1016890, 19701369, 18684479, 343937959, 173049942, 396987272, 260904197, 12750326, 52766644, 169125540, 344197070, 313167894, 333364512, 250019243, 166371809, 236368566, 805566661, 627017407, 266507274, 182309242, 648544061, 618618492, 697124760, 675790665, 18772999, 46006983, 35625292, 398693966, 606788408, 21753382, 804450711, 219594445, 124114052, 279605099, 410150302, 267057523, 423473078, 219964422, 741391524, 98004824, 250969243, 486065259, 309999627, 78216740, 474091278, 567721942, 273375559, 513043237, 201401315, 10312040, 231598898, 231598898, 41528319, 681721329, 236314191, 835307236, 825381884, 830171048, 170005158, 27769798, 88343142, 527273859, 475121977, 126328945, 401528758, 299703355, 439229345, 31963515, 145500556, 250259148, 84125693, 213998311, 209272485, 271591973, 218377899, 217520156, 455663523, 393344125, 10150722, 310647662, 310647662, 79000908, 212042672, 298120996, 239676754, 482920250, 216564757, 27494478, 227634521, 89983090, 26098634, 436344384, 725142082, 610748641, 280822026, 455388602, 25020745, 383020304, 175554133, 138991656, 509738366, 434316580, 213951134, 712545571, 650910937, 52178504, 225683633, 271177774, 120255392, 564548888, 153881668, 317333539, 478754861, 262299016, 518026928, 775321858, 671101210, 246475789, 333411395, 233179468, 30544104, 196771879, 336375021, 34213184, 58412451, 125501118, 981190102, 573214449, 11331481, 311008217, 24454570, 408626177, 452445183, 110920009, 53546351, 327234983, 146052071, 404901381, 343552259, 90079682, 318979272, 317379923, 564204967, 335857681, 216472493, 626903330, 432334538, 158960113, 590223124, 135524712, 49383703, 73537129, 278408533, 23631377, 185868264, 37952158, 126216458, 461487738, 280945758, 633704171, 646093721, 107209059, 103400937, 58174640, 63888520, 380152816, 285167055, 186212379, 189746701, 728987178, 730824267, 517378808, 647538029, 361565340, 318211139, 100915417, 43024064, 208164324, 629022400, 499109155, 746005211, 576281709, 206550497, 565988414, 95223407, 401367508, 146541242, 424090018, 351880714, 153178932, 211962226, 26426849, 735343935, 370717329, 408547422, 633778117, 351723302, 175625105, 206138765, 418662908, 190839978, 13538417, 198040022, 162569789, 191650466, 837222514, 367756578, 474833018, 36622126, 114118438, 247530807, 944171819, 483280075, 144099826, 87511777, 704489964, 424488897, 289457740, 412828181, 252489430, 116628200, 252776436, 154030485, 182851397, 240598689, 64460703, 570873987, 17861298, 257355243, 838340546, 668589281, 570602057, 69662561, 51332635, 611828152, 476387085, 272411130, 386302155, 108750281, 306764827, 277289342, 891443361, 866222491, 51069853, 247037611, 271970695, 629891310, 300630536, 221996763, 36725501, 32969048, 321200980, 220366204, 21328759, 259750660, 206249630, 521526088, 68536264, 389180935, 413798556, 74280370, 658178937, 704922125, 278353448, 454122689, 198608897, 519068828, 249826257, 75651116, 246523829, 90402789, 440426317, 121927351, 311241219, 59006126, 814490080, 780833798, 28279310, 672799652, 156626400, 567877004, 782594419, 831214580, 310255795, 6516497, 215593779, 215593779, 192692709, 498629817, 212848835, 52365297, 162755543, 267108594, 436504143, 115648135, 610374781, 99768149, 88379445, 3702859, 570915832, 567212973, 171421391, 612789171, 210228713, 197243376, 98451225, 783964195, 551798628, 171132753, 270107249, 134986342, 41175367, 16900827, 298544761, 135965130, 343368382, 130770153, 396150636, 171293754, 711383648, 684800493, 719317090, 378555823, 202248334, 381978529, 78256678, 222083752, 457185088, 514573162, 559041304, 511685943, 647717499, 632518540, 30610722, 633007286, 312270560, 332452362, 112009620, 755964150, 175822872, 237118385, 319870154, 96143162, 694335525, 647339341, 434707832, 336119854, 72596361, 238375382, 597778497, 253767403, 767161078, 119400430, 353835493, 309328707, 417151330, 431879962, 526094751, 509895151, 339469921, 231178114, 540703474, 569897326, 30114955, 311745932, 580086054, 674614706, 615300605, 456659383, 144640042, 78947965, 422506645, 629354190, 731504608, 15309854, 589542723, 515125408, 604940233, 39059851, 61548039, 131391759, 40690147, 145712959, 248462750, 50173405, 470236975, 291295838, 12764118, 233921657, 100242823, 221312005, 476385532, 448099203, 737896490, 99348713, 479104678, 343858478, 14518595, 36509391, 334359408, 161357569, 44037460, 117487903, 124532075, 118764875, 720165471, 742824497, 100338091, 123436029, 476716194, 10840359, 65244437, 65244437, 454514672, 209939933, 390848473, 412286929, 539132190, 155073142, 373224965, 513174592, 625519979, 83196428, 273134372, 228790807, 161731537, 243622347, 130078194, 567128453, 8569835, 16449119, 16449119, 238568715, 450812526, 417800520, 616339651, 253531025, 92276494, 86343335, 678264699, 76099641, 270448996, 103587120, 606566448, 53717262, 836868187, 239433492, 29386968, 335674930, 208529915, 446133497, 164931294, 6712908, 579283994, 572571086, 861135642, 916630631, 116111449, 343070444, 192976399, 184501130, 368169739, 293678121, 26790460, 288746794, 21693117, 438801972, 626510214, 350791991, 346451002, 534461306, 153482321, 139461627, 367716747, 27588883, 382892896, 106404410, 527812217, 218003740, 154497933, 434666636, 328240143, 280482555, 713191905, 415173561, 224040772, 707832658, 396691665, 437624079, 29725917, 473086035, 126941114, 142585634, 255102359, 217462668, 627537166, 319731359, 266361212, 340042405, 260038121, 624849221, 93454886, 417487399, 416539507, 106223126, 245993543, 238304123, 205507854, 420597782, 211759401, 145909776, 475799203, 197277408, 311189877, 402295317, 241454700, 709965562, 294291372, 285142474, 4325168, 342044773, 342044773, 138378113, 175143031, 279262989, 348975431, 554195975, 593187820, 44538263, 572930174, 177816525, 63352299, 169964667, 340109570, 559426117, 413563965, 383503615, 174474976, 132395665, 528238550, 114171550, 83760347, 668339868, 9469348, 149037171, 149037171, 513073405, 183868817, 166121591, 321418577, 439868397, 1683154, 412340391, 412340391, 606515170, 500405288, 177040455, 529901259, 322685794, 209829056, 255858451, 389467895, 301375927, 138015599, 93292819, 589478690, 40920782, 49615748, 55940036, 86458387, 524504934, 109849645, 208638978, 113420221, 525026817, 495630952, 144923932, 456935811, 174587937, 269965188, 113423989, 219845214, 77635840, 629364600, 230921230, 374640541, 156632791, 326358309, 393982551, 214256560, 400878369, 386895744, 508635899, 366867030, 167024326, 334003637, 564985740, 110050311, 197255775, 25928242, 226634173, 174718015, 661098176, 174367492, 163678105, 628377294, 142808049, 71088011, 18843055, 103481669, 219024938, 514296459, 598796178, 148766834, 143267254, 237703543, 116086204, 210813426, 639106978, 773389812, 254588661, 639586865, 619082743, 301005614, 223806047, 36895278, 133565719, 32921875, 636190628, 11014375, 20571041, 20571041, 501266509, 613154929, 717853432, 122725294, 742090885, 578590505, 690862721, 148063124, 30073964, 521547448, 445446803, 82621252, 609696290, 373181869, 176462292, 188987915, 258730252, 371504944, 341592566, 457005922, 44077251, 716820415, 325021861, 56017984, 494005203, 158624292, 954634805, 101193478, 96625394, 42106076, 228951502, 361307529, 195030971, 1225785, 394551080, 393325295, 28677595, 172513567, 293801892, 189143070, 417723672, 227163145, 369474790, 285327972, 281292707, 301025182, 57363943, 252264528, 404096004, 5683883, 509883866, 509883866, 171959647, 317295760, 365649663, 276269257, 17542899, 45061040, 211885990, 439871871, 124645528, 136578889, 93944126, 274013719, 322168142, 45963387, 248482061, 779002358, 463758169, 259104648, 349616824, 598759468, 127836646, 21129053, 305907263, 173995399, 479862778, 323557252, 205470231, 258657429, 434676975, 373861857, 21237895, 57310224, 363817014, 437658783, 712182148, 117983055, 430390150, 660130472, 656836360, 277489787, 354097177, 160932358, 227666416, 330715484, 633480854, 543099437, 207711034, 477877883, 702588561, 327699677, 434009975, 224118353, 99785573, 507121488, 720967061, 383829497, 183978119, 7727180, 667730111, 667730111, 89172453, 115995166, 36764074, 391346931, 18253259, 568864351, 794568470, 275281928, 293581544, 617185950, 119774977, 975469263, 528261071, 257183996, 621786277, 205624380, 515266961, 413657952, 354579102, 183257693, 302264828, 147523458, 241361370, 510510789, 542404946, 199153668, 307453374, 252422574, 106490537, 535281476, 947067703, 58970616, 766386777, 32672112, 635087729, 519581128, 385393137, 61875648, 384435088, 505036429, 34957647, 49635711, 72158031, 398963861, 64565617, 450808477, 480874470, 704660817, 96985770, 445741625, 130749309, 378982628, 25705291, 659414743, 849938663, 405737823, 8999884, 500250067, 500250067, 561042523, 166947412, 426514127, 820054228, 489427590, 553632613, 1831197, 679854440, 678023243, 276598658, 314371819, 407798885, 214420235, 672351314, 249526472, 108137976, 554150990, 345009800, 350496344, 44639784, 516486616, 184783576, 98982666, 367325274, 55896727, 423355783, 455019512, 370708467, 375147395, 832557010, 867122336, 401054389, 103436062, 357894895, 689417569, 229702771, 4052824, 255204300, 255204300, 20411382, 13219615, 766598890, 423926417, 343109576, 271542436, 376155897, 581999612, 14157259, 686086579, 214512821, 407676516, 600650360, 133282824, 523825467, 434920141, 177134714, 78882087, 219865158, 634160826, 262846042, 570584424, 183137425, 516405904, 125922180, 502226408, 18200231, 201929981, 337703044, 136322181, 877925251, 159156922, 220951761, 14942778, 96232247, 120794900, 296080729, 330193837, 262240798, 409853374, 484999771, 40642026, 753726807, 818452872, 670330961, 80308810, 219911245, 930931162, 209445077, 273121046, 239019675, 707529224, 531939522, 354581279, 243292814, 489551436, 150555648, 438291956, 476502356, 255977425, 838814496, 412653158, 72515344, 204235140, 254430518, 102873234, 302872462, 177615180, 234057386, 691846876, 35214944, 726088199, 453285913, 156630402, 464669871, 298861981, 9906688, 146626952, 146626952, 54343748, 590756253, 245467025, 424203490, 492584416, 163371122, 451267872, 318929001, 281124689, 263481797, 425093028, 187570423, 337343588, 137841233, 20100281, 105107544, 314269607, 342956773, 495231509, 32340140, 444730893, 407740646, 115921170, 253027683, 196716992, 220452203, 122332198, 156272005, 161022669, 266053257, 575876334, 544921298, 88238652, 162775029, 798536605, 524398044, 601094513, 63054473, 920082278, 46582807, 616982866, 309490782, 123782359, 650514154, 11269690, 6164513, 675193788, 675193788, 93802110, 456276199, 525065120, 160172780, 16985108, 491473591, 280224191, 2134463, 747931610, 747931610, 245294711, 127500067, 355328190, 529548209, 883861883, 313151713, 97912339, 391604552, 582132696, 61280328, 537655182, 49228675, 435809964, 477383405, 407880990, 91419230, 281691319, 582060375, 79281299, 465282085, 242274422, 792474187, 439695517, 378072578, 551059143, 309111161, 131649103, 428886579, 269483765, 175319010, 189517010, 300816104, 245169652, 151824958, 122613638, 530631774, 120918693, 15851126, 147393933, 529827941, 331209722, 103539569, 78214130, 242431327, 131433076, 461345722, 195878139, 102496052, 67910128, 321618704, 200772142, 141438879, 551263429, 560629452, 236429318, 349912190, 131338786, 207921738, 164592049, 346773149, 96527976, 486160521, 293078783, 175547608, 509015528, 214256062, 608220864, 298679326, 2991535, 49401600, 46410065, 28263461, 180024849, 565036384, 588613500, 512526199, 373129469, 257222424, 199746504, 48861530, 529250121, 283002743, 292267586, 224324330, 72143299, 139694096, 574365791, 123911052, 228277559, 802412199, 128502577, 344790713, 335796314, 41822021, 378904803, 177418276, 188611, 301751884, 301751884, 636728611, 225133161, 111125153, 115130433, 72496543, 252889078, 147392685, 333090466, 53050241, 576406288, 337704923, 237823215, 358104645, 533948992, 60398885, 89594214, 418122094, 254681948, 409414527, 84593916, 572635355, 28232080, 238650689, 415798370, 491158829, 344958462, 123428219, 220996122, 415737608, 135955851, 63566011, 709058219, 811688346, 342716104, 375297575, 804270059, 198659974, 593040576, 623304284, 139341105, 777226325, 417497954, 407765153, 527962687, 341518872, 10831093, 90079556, 79248463, 390547119, 247386211, 407190559, 177845048, 268770828, 465869945, 529379792, 785238873, 849452732, 243675923, 51233860, 555319042, 920097895, 731013066, 203147511, 5223734, 520930501, 520930501, 3110600, 146613848, 146613848, 497266, 21112326, 21112326, 152485059, 120523291, 496885482, 225509145, 104232395, 442443052, 755209963, 546082217, 120939032, 212991405, 192595621, 495246144, 454065374, 283315672, 354359567, 148932248, 85249848, 174073393, 179883812, 78093216, 175747565, 4401984, 607298285, 607298285, 53719794, 130807026, 684903, 561140321, 560455418, 408726463, 186201913, 350403416, 606371514, 710048469, 742359009, 494115894, 97078460, 310492762, 241969841, 149618331, 356564802, 388084066, 884623678, 781724650, 113033296, 574371982, 866939065, 301739538, 288685716, 348620081, 162269551, 32368348, 309434568, 687428709, 19945442, 53830160, 231495362, 634877118, 235368158, 419703070, 425434128, 688367648, 115208840, 369272575, 465018436, 233809080, 720633315, 402008600, 154434285, 594453955, 450410357, 435929762, 173313441, 50243031, 148446129, 523341233, 608547024, 729521048, 606407808, 184253249, 206651843, 427192174, 163743590, 769096737, 310495194, 296698922, 442629119, 411560242, 66601750, 505720392, 270105689, 184094130, 136565892, 314049704, 153292721, 862346259, 392304810, 379640161, 425746752, 144159366, 18123216, 210753220, 237160130, 129129701, 320860285, 22938673, 2728813, 231490972, 231490972, 245321071, 208202362, 427094533, 479266869, 357462077, 835829690, 339143817, 218227954, 460028611, 384100725, 251720618, 177094695, 353231850, 23932819, 200740746, 66626564, 96089184, 102783206, 39889141, 307406533, 90142502, 529750208, 442061455, 385361145, 353409688, 535624120, 365021941, 35184311, 298296638, 154603322, 80390890, 3332242, 60160015, 60160015, 248763071, 546073583, 716662671, 268508676, 433685864, 468863196, 397898534, 553004269, 159039796, 15218340, 525003680, 78554330, 159800525, 124278892, 353744877, 370649723, 523727421, 14310215, 229092138, 946334341, 261406685, 442120949, 450877232, 499790077, 327987835, 30273651, 24301308, 348443986, 865778528, 421538088, 384644223, 662638167, 42332648, 481819509, 214508224, 505283807, 873688617, 395378398, 494936797, 216687767, 557719538, 752857514, 77880075, 618429734, 190845027, 384097537, 519509807, 796154987, 61799385, 373080541, 195893754, 8941891, 54466585, 45524694, 522248685, 149442939, 784697207, 713785501, 545766405, 259606649, 241206422, 309053886, 321849567, 244093658, 210143596, 169691911, 135267077, 336711491, 747311448, 302883689, 33428980, 126926267, 471761106, 85919854, 566126645, 444258374, 75057826, 451029747, 136505660, 500649883, 242288844, 6109340, 374193044, 368083704, 519419245, 142877323, 517117866, 160789831, 805844466, 371347304, 447885441, 761730093, 173246879, 337498833, 637265536, 759382663, 109245675, 121286957, 387714002, 234335425, 248795395, 103184607, 737513573, 426068063, 147627103, 241509940, 55962601, 519314372, 626785690, 470901909, 480548718, 74406149, 283578723, 156616469, 169788993, 307263196, 456726711, 75486060, 11045477, 177783054, 177783054, 1655246, 746192642, 746192642, 72774482, 507796429, 260481092, 371612823, 193931196, 67348934, 239761749, 323991043, 112238351, 75722536, 516208261, 454182362, 392562974, 100474406, 212342138, 209947655, 99178411, 124969635, 89354494, 430886104, 747695140, 29471959, 615908946, 647866860, 141765671, 21080981, 48069578, 135744357, 871732440, 323075236, 550536715, 575599207, 568089973, 758957100, 668532123, 23752577, 490336517, 167041933, 400135748, 393183268, 650102385, 359299865, 274203272, 26828206, 316630407, 327349212, 507198290, 313207141, 23113583, 831131484, 934544046, 279175090, 130688694, 202809134, 270421821, 9694511, 851092711, 851092711, 746252766, 79156727, 28143486, 175157485, 25455428, 347806693, 90761200, 563086529, 440415308, 384106812, 187243443, 207308037, 46143202, 557213953, 46170740, 620717450, 408986793, 206477452, 54764307, 107622966, 58254823, 473721592, 723355770, 717457878, 32866559, 204549138, 741407161, 930162901, 164509638, 172356939, 910668254, 77961770, 221842617, 68738708, 132583885, 437142959, 9985088, 97708682, 97708682, 155787382, 13400177, 388903896, 68267867, 420810073, 382857906, 363863909, 86113872, 313475782, 436196427, 713251310, 530203200, 43301599, 494781457, 192876300, 92480771, 141354736, 229037461, 365870757, 310351822, 335288137, 193044693, 124428624, 463171739, 605871266, 382351321, 629788209, 805686176, 9549497, 389374051, 389374051, 396538674, 684546633, 244950043, 109490076, 248485169, 878355164, 107798257, 401647105, 210845362, 10387521, 10387521, 704644995, 4532424, 698789898, 698789898, 5486828, 92166404, 86679576, 157011594, 144418123, 513051863, 660980895, 387189588, 427701054, 90188416, 414722026, 128570873, 194131352, 72050229, 39197938, 412300662, 257579660, 458682116, 296843596, 255069674, 267249415, 615466853, 233977250, 15083438, 232828998, 144810357, 423986257, 213175074, 9866537, 410932757, 410932757, 303973296, 720494529, 765371993, 403980595, 71908100, 56264961, 379283152, 144407873, 190740311, 449626545, 466299691, 218128938, 452796492, 412979355, 586567469, 683195641, 171332608, 79400881, 54624633, 35904966, 209119660, 195355382, 525688928, 420548579, 439213503, 422564399, 46612500, 219731342, 347924758, 434366206, 746625801, 168008595, 731467630, 24112861, 321042788, 463916460, 587119101, 468586433, 727127188, 889746983, 14446202, 97554637, 47564046, 127583026, 1781649, 509827726, 509827726, 251460221, 364784499, 447739043, 115375894, 239257807, 412284796, 89483039, 175963240, 539377043, 18800019, 13946553, 18259827, 210948236, 247027028, 372523963, 205452977, 146710552, 70147769, 566197428, 29501855, 146315199, 132397037, 447573376, 284363453, 484442056, 64763704, 518701741, 897094511, 959647846, 404646583, 333100367, 379939554, 482220921, 144005667, 855147312, 285788112, 275451791, 199545032, 395410653, 621722871, 245787593, 326657170, 718122484, 17729083, 49440415, 15731793, 5986696, 556687541, 556687541, 234307573, 217670848, 183531886, 35093103, 305064688, 274513147, 113190647, 166217984, 161929072, 308523806, 606192694, 530507092, 13492724, 152371420, 316716748, 166068120, 299116336, 311992158, 237930131, 698265174, 241613574, 768367699, 31022671, 446341241, 505764772, 544081338, 209585105, 1944265, 766741355, 764797090, 434056838, 347935405, 9180391, 670107245, 660926854, 689237376, 9137722, 580103659, 580103659, 395090259, 602248847, 586774903, 92983794, 129607657, 206941548, 52146280, 552307907, 696560250, 753773594, 766717375, 321587709, 336101780, 411864317, 236742275, 801477522, 304251948, 262213686, 326133732, 411370448, 563249952, 468887809, 654293873, 839926462, 196194107, 91877091, 37615971, 558137876, 479084874, 316660267, 370255491, 185829492, 96482292, 320794016, 110337091, 32104421, 356619156, 185639530, 7085092, 51485355, 51485355, 101467516, 427543723, 530518819, 639357515, 849833489, 518818577, 98199547, 214724170, 79003409, 52170439, 120575465, 581058828, 114598733, 96819816, 790276057, 156686582, 197393571, 162698316, 165524417, 623017431, 36308141, 197537960, 803302955, 289187888, 653213437, 496493353, 457288149, 99469241, 65596076, 699051625, 42366880, 78415086, 13974250, 36626975, 643219060, 207210036, 111521007, 310142302, 327223960, 359342854, 480043953, 442187474, 842096793, 728605449, 756582476, 654828248, 6321953, 85703921, 79381968, 94038977, 156603283, 229183756, 208772186, 356521204, 710999194, 12354389, 117621003, 598405756, 432432084, 516411180, 400682470, 206529471, 246301604, 672394565, 650004746, 702470383, 134631987, 334461922, 119918492, 10875095, 23783376, 12908281, 351246598, 544067634, 224551736, 722764728, 306428520, 461133239, 589149628, 258385041, 949394716, 893040605, 164416382, 723266941, 267727422, 193561373, 796150729, 220592742, 543279080, 553487773, 500139441, 176413389, 293666314, 73718758, 177392337, 175873758, 313298704, 215378202, 40799244, 581551239, 156235657, 391296927, 736549250, 607600377, 715078259, 81954372, 930279715, 716583756, 315144463, 30986682, 225511995, 77736872, 165976866, 948007653, 15568446, 217812814, 47659439, 132233073, 152226410, 190266106, 497625022, 163447725, 583169667, 958725219, 727281110, 261006498, 190091310, 667783543, 156365462, 632629965, 183402003, 309851351, 259176891, 372064255, 505892693, 9271479, 43342903, 43342903, 164893140, 193385732, 68048997, 333710557, 124751912, 317823100, 711730821, 98321289, 736450763, 34692552, 205908001, 171199288, 387944040, 176289472, 735812353, 811623695, 784823155, 849009687, 367571691, 154637636, 113358799, 50002742, 256947517, 388542887, 589791499, 221676652, 129427460, 24430576, 13152389, 212230343, 48336414, 351746914, 163783351, 462216323, 329128908, 510848347, 676322645, 365709998, 343937401, 326087292, 304196431, 446379907, 48974439, 185801974, 307643692, 98404847, 306013663, 452871789, 171334560, 358708511, 833964446, 399865534, 312594619, 45972343, 48184831, 148830475, 176183624, 281739841, 569072626, 771494985, 856728335, 393994076, 568892422, 365304444, 527510633, 553990080, 312314468, 337580508, 481628197, 809284560, 296602226, 199730777, 841600075, 383589869, 37042930, 84348470, 296619731, 162389246, 138690963, 513133173, 751995148, 423939645, 166956336, 558596149, 848355346, 754468554, 605554152, 496633038, 281923654, 147813062, 94543560, 374219481, 791603007, 809609591, 501716743, 347396962, 185067435, 13621945, 173701721, 2455683, 216764020, 214308337, 730475352, 219334901, 910378827, 382338308, 503430870, 632771750, 9736608, 199061250, 199061250, 72580709, 338742407, 119719484, 579810088, 349113328, 59627310, 66723709, 18729387, 394874971, 93623125, 635391078, 686681762, 317283752, 126899470, 50148273, 460530804, 49518210, 98394264, 516900457, 238145026, 380475244, 639710180, 492302424, 172113863, 188637461, 93898604, 205047276, 351928464, 348939907, 451738308, 635401342, 672979950, 64036931, 149950516, 401744458, 381558905, 681343828, 204609328, 415388117, 527289874, 160552586, 114356084, 701837871, 733712781, 740996147, 100569704, 363191709, 181762924, 380351920, 348057970, 438060830, 359014092, 85793237, 153614347, 614630920, 236278610, 330111091, 187361627, 232296232, 373592733, 105486994, 580326465, 3032420, 342431956, 339399536, 416540781, 771881797, 186876135, 247546006, 419777179, 506420115, 726080060, 286671975, 11398029, 226808445, 267306557, 179603549, 252493157, 405079502, 568654416, 187184150, 272692467, 191467533, 746710104, 232698568, 142430111, 291056760, 628475366, 532541471, 158038820, 420407357, 477203235, 70070697, 124558745, 273771934, 385253772, 250463888, 82131904, 566288607, 280511537, 431096717, 409869148, 437454527, 757986008, 798444123, 510626261, 36553724, 347470658, 498905516, 28071268, 392886674, 743651362, 45678048, 2058645, 496074850, 494016205, 185042425, 490686253, 370404486, 292471829, 609899025, 774210227, 280736036, 261365495, 581092121, 203701201, 668115917, 9773149, 914046039, 904272890, 121923314, 761428144, 719521550, 249854158, 517579416, 501803478, 158233889, 137482505, 591904308, 8393337, 46142670, 46142670, 493974278, 419303787, 536638467, 258300746, 159688264, 212092060, 176336088, 220901849, 214065246, 254785347, 436764494, 31503415, 148049054, 601176905, 559705578, 605915138, 70999093, 822779974, 617732704, 384686929, 50200163, 349471516, 506319314, 767929474, 666627660, 489917384, 556193487, 39792157, 270090185, 215930763, 386538294, 68878805, 126901692, 45875515, 401106176, 12052713, 728477557, 893424587, 645115485, 338829750, 353016477, 251890625, 151663799, 435829467, 116892667, 768359708, 364070821, 302255500, 265927197, 133547193, 714747563, 252422726, 145015122, 295424038, 447852897, 559352774, 67429414, 437879423, 566167934, 261247500, 8394774, 236869449, 228474675, 182197272, 503075689, 531118276, 235391768, 282582186, 607679320, 162777563, 67290756, 338749726, 497142377, 203037397, 310558583, 708300387, 296054149, 328323868, 506849296, 205995852, 107602228, 646687753, 248064539, 294792483, 196555621, 241305112, 613575131, 485930973, 279905506, 490050911, 468339393, 333264049, 413549534, 112587309, 201320419, 58768638, 174450525, 690551400, 571963612, 227124170, 6690420, 422353634, 422353634, 179031021, 926284789, 359366693, 195668045, 14211836, 141648098, 652038173, 843154753, 157561872, 267624067, 339527443, 81672312, 48293674, 593806484, 246928876, 606032826, 728225136, 196576994, 872220932, 904318114, 893457210, 125633382, 430920826, 15013160, 23697587, 223768775, 676086927, 225402481, 31798262, 445343167, 463805574, 477628965, 877337003, 56929774, 588649927, 442455236, 262872869, 37709212, 629314048, 50926467, 211161229, 417063574, 339503862, 8859876, 564031337, 564031337, 281838488, 249758624, 379270317, 6954473, 29005703, 22051230, 208021299, 7271662, 510327769, 503056107, 174833470, 188429708, 366818773, 688323961, 50623456, 337305241, 41139810, 83765869, 522797662, 286700814, 473156245, 361316945, 310118939, 17709375, 108855234, 648863496, 85886209, 775993244, 550734969, 488936915, 281298873, 594593933, 162053702, 528249360, 441921747, 59253679, 232488961, 217391498, 136159366, 808243815, 100112328, 393154213, 553486607, 907170595, 769828091, 207204538, 345287621, 523672687, 109051271, 494798628, 258139715, 86658827, 39887444, 131653167, 132616573, 25072769, 367965023, 126930184, 252834950, 69596427, 699503177, 467767315, 239609810, 468398789, 507237301, 307790367, 195186765, 162105322, 977780701, 689704908, 472822187, 101961914, 253395829, 115217164, 96090480, 271160019, 279627967, 714985404, 496823510, 348675726, 27727126, 211293267, 164626095, 142490411, 166584791, 167587855, 167508034, 533273184, 10480712, 225576083, 225576083, 76432587, 100139856, 876442611, 848184019, 302831429, 285439079, 294349126, 887039655, 664932601, 494313715, 403190979, 553047547, 201140297, 99548196, 220915909, 321154352, 61734883, 212665791, 242901721, 87907354, 43336969, 294612471, 232360870, 114080827, 153242721, 596611796, 137647089, 130105017, 128674914, 408948025, 606809334, 4602939, 35156368, 30553429, 298141198, 186557818, 104763240, 28786550, 465455714, 212739675, 199560197, 199902567, 372384290, 489703802, 657470223, 709634742, 671532612, 451437734, 303052731, 141051145, 707930365, 13920928, 160774736, 810469868, 8218981, 452061962, 443842981, 396213925, 191436630, 485173262, 119518474, 155372858, 118865257, 588816578, 26757220, 625538548, 110719789, 851989836, 518519777, 365506274, 323375367, 251007943, 316961972, 749959230, 745287889, 180999420, 610441341, 503244534, 313084866, 182862764, 385282647, 537434175, 427682106, 669234805, 813307510, 87086181, 535252727, 219599422, 636413255, 822367306, 476796879, 356507524, 240283976, 198586865, 101020787, 87338237, 12265638, 189070649, 41720673, 30780917, 143605384, 447978401, 229374756, 21277088, 258725250, 236409380, 121414211, 164055897, 485323575, 105223739, 343172191, 92796086, 560587574, 360421200, 225655551, 262165090, 48351004, 552527227, 606772487, 595990529, 258128805, 44164276, 494717128, 642870871, 228819223, 351744495, 328290850, 19818509, 132791581, 437320830, 752759780, 290932061, 310202873, 853922021, 238198039, 701560630, 80190917, 311819815, 123853926, 448001233, 648185221, 279265277, 440483862, 44604359, 455148367, 82399355, 192669868, 619419019, 297712302, 159300791, 100212579, 386765347, 316706298, 285516948, 629752643, 563301935, 479808087, 388305205, 348310684, 220961872, 420532255, 175365255, 847919016, 25929095, 505536236, 224267210, 542211795, 477164434, 414950644, 708706451, 58769523, 348571459, 132241256, 258515519, 544110832, 609362530, 51247624, 499387339, 290000609, 125642317, 260753791, 176949626, 634901409, 113177855, 668400684, 656626635, 711400117, 942194047, 856155691, 125323121, 402437252, 16291632, 311986375, 48860706, 145627523, 139372681, 522581430, 212184955, 57586070, 574322662, 719703208, 542431877, 23327149, 591179410, 194341091, 650396357, 228601263, 79818233, 157206629, 374442886, 250897422, 61893590, 308316229, 165266245, 118246664, 371245569, 353930345, 39282229, 364666211, 88743070, 28498631, 407414576, 160760109, 27829557, 242588592, 88498672, 343127135, 581402913, 410018841, 216660656, 135663960, 20076663, 155750751, 145462160, 442277314, 31600496, 525352847, 35618038, 211692201, 269609537, 651749034, 89634382, 847900923, 699242922, 286718205, 407331376, 469762853, 182451790, 384498278, 415565324, 476411881, 42719617, 532253493, 704448504, 642488074, 117758515, 344281, 440990079, 440645798, 526688189, 344788152, 769722107, 768399097, 368403145, 414911995, 72388802, 90530101, 859648877, 145183991, 222102262, 131169709, 44753656, 425786979, 791338243, 810612123, 423823333, 284832474, 382060372, 547316765, 446226499, 170539579, 228568332, 584449403, 283896326, 229651658, 500711845, 184854591, 476902664, 466663361, 18452697, 247121239, 573248861, 2746649, 149584114, 146837465, 348313705, 145611897, 65911515, 292347275, 491487593, 515464992, 56319252, 141219694, 428391116, 592684598, 163764366, 399289723, 46311975, 596467402, 260412559, 24951881, 553656199, 536175035, 64673810, 386355517, 89865609, 733790265, 100169514, 743418994, 456959558, 224260922, 7857590, 21456605, 13599015, 147575559, 395908067, 156748328, 342938385, 225575518, 238175944, 142034896, 257553788, 360590844, 634372967, 38230527, 659165651, 855468711, 255418370, 53693754, 501911593, 284680880, 346839710, 440925289, 255549733, 383118705, 949597184, 110791537, 751322681, 447314827, 207130570, 46010374, 417400458, 657488038, 165483834, 585006352, 689883930, 681560513, 111001416, 334065766, 8697721, 101495367, 101495367, 520727201, 184904582, 667165033, 182105433, 418270935, 624323168, 145166978, 94174760, 237639225, 819921114, 177626466, 94180183, 116387798, 95493454, 750887701, 206918949, 401445043, 771163, 427284835, 426513672, 144319312, 167515652, 308372953, 17297235, 209381962, 513881149, 98036301, 300750349, 63542792, 341171392, 412562777, 174904161, 134482250, 260665983, 91853645, 242847355, 313001651, 682444435, 260285023, 425885411, 501436153, 180124571, 253791920, 169946940, 633322898, 154851272, 223875377, 178630405, 751064653, 33207338, 20408025, 449773434, 203326593, 444944826, 34942240, 451490603, 242665359, 20748050, 332595990, 393690240, 5971816, 428931214, 422959398, 212021331, 87847057, 339749582, 783740342, 694989879, 714747414, 119089307, 9864685, 417421718, 417421718, 215334662, 776145661, 452200519, 93757808, 96162111, 241679083, 684843496, 213180824, 134733361, 555573511, 413565970, 120543379, 264769832, 127282355, 448011317, 210158832, 697119581, 157662497, 323394233, 326543895, 538464037, 391108228, 394359680, 523940702, 347754697, 267028147, 501958959, 674818659, 109349503, 457241385, 560341231, 178125895, 194031635, 803523282, 590149515, 77897212, 27937909, 205087626, 129346323, 544157210, 40850669, 371677060, 148857627, 476635469, 346376687, 59466352, 101518633, 847721438, 225219759, 27017663, 178879041, 405678316, 88552364, 9776564, 332405419, 332405419, 64261553, 341986925, 35941734, 116622369, 21822734, 91563536, 56839635, 922825598, 546577333, 78909260, 492177283, 147780945, 731946559, 437105634, 66686353, 511189079, 795518107, 472587626, 69597216, 339151883, 744934043, 95560486, 400169, 305649234, 305649234, 331384622, 610388977, 213805118, 462575354, 402457057, 185836485, 370093425, 114854934, 401296861, 600664427, 463763983, 158205008, 25201284, 495384821, 741098193, 547460737, 258545503, 159075964, 104251028, 429272093, 933889461, 84071035, 771646949, 97280425, 60221346, 491318836, 238661069, 836828749, 287792281, 295417933, 448715361, 239943451, 300038818, 289385507, 4285643, 411443510, 411443510, 411060731, 337840925, 37531802, 184895912, 632328867, 224942495, 112303808, 520103482, 644031283, 182958476, 64769581, 40410495, 225561338, 70427201, 446789681, 644504744, 81488945, 375811301, 425795038, 131373037, 241434775, 131753641, 121254556, 381456581, 39146959, 21514610, 344821007, 431510114, 554323527, 259678339, 374591095, 66704040, 251913885, 298465109, 30313363, 202966702, 537181822, 312261654, 525582300, 88972776, 801951120, 917428424, 387609006, 151454290, 247775531, 822918511, 791047942, 336095255, 268250460, 695888952, 665543784, 134733657, 299695470, 240015347, 58290163, 113428120, 288361222, 797140302, 800981641, 359515078, 61627999, 188389091, 263692341, 203455070, 340581868, 423338311, 346140739, 271041959, 344656245, 154239036, 278190870, 133040600, 3195845, 306717234, 306717234, 89625849, 262029539, 417179043, 767791019, 452587819, 525007365, 609477979, 455877005, 205686185, 460548187, 165600828, 458930935, 115712226, 56393996, 354846911, 188706863, 423005351, 709972, 321428403, 320718431, 269384982, 142936026, 451039957, 850077813, 663240743, 746258836, 914556086, 611880252, 287415017, 611119121, 829831569, 298392264, 101379770, 551072616, 666016951, 761393272, 845638456, 818936345, 62271493, 534905074, 446740698, 92507993, 604322197, 106630724, 288277766, 603962588, 52642096, 142905884, 254995651, 289737655, 621847855, 559990456, 235511298, 18809626, 320018169, 155791791, 391744136, 210267821, 288340098, 433615738, 675267842, 363718, 751902375, 751538657, 465719448, 114079617, 78040205, 477162127, 889908038, 230815415, 251829347, 170050591, 486929924, 653532940, 65147724, 75579408, 544997080, 536056800, 28923603, 157643211, 214075459, 240500026, 389833482, 211344437, 310452027, 146317240, 288210186, 142863204, 109755317, 549520154, 562798262, 135017946, 130990486, 183494420, 75417113, 73385360, 217604961, 91767342, 27440708, 209061560, 80103470, 302713013, 414773656, 849377659, 473200494, 125746241, 223882427, 217844060, 92327288, 256399730, 82007845, 106576746, 584070239, 481550920, 308547951, 63755339, 591129838, 715518992, 771792234, 118115025, 264385579, 508665921, 105615038, 724864681, 767999789, 103808955, 27222876, 223203142, 379903584, 293847428, 38655056, 198651406, 715510146, 195960417, 18446929, 244733875, 131671552, 347662573, 432192427, 108243204, 803779916, 182339095, 720969840, 491768052, 336046025, 514713326, 153163332, 158246279, 389649416, 306783249, 98873890, 624122324, 137538582, 659858577, 328916078, 98004370, 153116059, 330963173, 756792300, 751581932, 791781389, 201325973, 423313674, 727182628, 895140410, 117484588, 766451782, 159653468, 612754362, 122874236, 27998618, 6493736, 225875226, 225875226, 676351912, 295346075, 407805933, 491239655, 105252915, 205444460, 553567942, 51113318, 30881552, 291018824, 376149819, 656897790, 223884778, 435260454, 526500874, 126849946, 232135365, 347368722, 387086064, 294236909, 304083195, 27466719, 142375944, 9919839, 463385029, 453465190, 148291903, 614401135, 157794850, 93361374, 119656936, 625381663, 82103250, 528378884, 347308815, 24434601, 505653575, 364225612, 221471397, 134156477, 983900359, 627998231, 240773348, 357157168, 454341462, 415048572, 384439200, 266241598, 221787347, 474658028, 65918338, 213172278, 263499675, 695566140, 333456221, 453852155, 499886556, 443544934, 38856808, 120058983, 850104535, 667565840, 2161364, 34760020, 34760020, 156966740, 190177776, 108944449, 237566239, 100182645, 494647643, 80345182, 110517830, 278831938, 275078583, 304891681, 578702155, 229639229, 34293048, 333591102, 47328991, 577103561, 187534694, 828299720, 885502697, 178380773, 306771250, 267101458, 7315043, 599869453, 599869453, 644788301, 613841598, 56457567, 661587434, 55324002, 93375633, 619871981, 118485749, 160044934, 588717791, 626621442, 585979783, 137166618, 299520686, 208072358, 240761779, 460523365, 833583333, 246412581, 505840901, 325381190, 529821988, 203926113, 657787408, 106027274, 41512381, 307304013, 484679711, 923883356, 425425662, 315900938, 180841066, 74204453, 94551317, 321748738, 391960616, 720372654, 207422496, 109660199, 86411351, 304272695, 240196311, 247775421, 683376018, 483559704, 105153245, 472739017, 399236789, 326954799, 229802242, 479752591, 785336247, 101354853, 347228476, 348497933, 793500579, 182625086, 462656262, 266795649, 51687413, 200826503, 323733466, 505304805, 459797463, 258011287, 206064870, 494515289, 85551983, 256807801, 205101296, 373278079, 91746851, 206770330, 266285725, 339297119, 85928378, 106650321, 340907564, 38307870, 854412759, 407596435, 316998057, 259970932, 412045983, 877476625, 33636925, 41324567, 387940420, 519446996, 757846276, 802220619, 95692621, 274856185, 579253447, 354983954, 370844435, 419171365, 383798033, 675566928, 207271723, 400714297, 501901910, 707337348, 296469779, 124815722, 691695868, 782621680, 769864494, 564256830, 551745273, 114807972, 411813542, 382246734, 562249477, 370907921, 26341197, 758171249, 130541942, 367749094, 121078338, 241811758, 395726608, 716163458, 440079620, 233277116, 53049516, 21384686, 158425500, 592870393, 145492997, 175133961, 324465002, 735775444, 189797158, 287918237, 124827913, 301625607, 474097027, 90307374, 457429555, 809208839, 874494154, 398536418, 24838277, 299828903, 49687841, 760859351, 35830564, 115585798, 812037948, 436764109, 209138696, 109673123, 191147775, 591263172, 221802598, 527017264, 142473463, 137001113, 164865027, 378024138, 571253645, 393813297, 126542455, 385782837, 173441559, 224277982, 127694934, 238537583, 190681032, 293353873, 235573899, 143042849, 146786937, 648124885, 30624275, 866968135, 138443783, 713462428, 155369221, 148406952, 360487935, 670010414, 481460127, 463415146, 28678683, 171424141, 241788322, 71526802, 616101925, 677602376, 183414973, 116771608, 109962840, 190904088, 28697477, 310936366, 213681198, 275598101, 300232791, 463250815, 641364125, 72469355, 162261568, 17923952, 443945645, 155864247, 188745875, 537679448, 361878377, 735267897, 738858199, 387586195, 431543492, 208203029, 391207907, 589216341, 48985503, 233547361, 89168094, 38947557, 91626323, 54189101, 495928046, 633729232, 249234140, 631891727, 116766582, 556119908, 204694129, 517877363, 223692231, 517089463, 456208294, 100214786, 5536037, 17137971, 11601934, 884925, 525519629, 524634704, 559711281, 287813993, 834922098, 124863628, 452912082, 185336549, 572530428, 90966505, 388439, 293342071, 292953632, 253086224, 185611927, 400515041, 73364369, 76724772, 149159764, 197303151, 602042543, 364040005, 432697056, 328253104, 289064656, 155977090, 163234061, 593264610, 489196339, 564224255, 112192756, 90190004, 525026986, 71789732, 585922517, 589397921, 16562137, 199103021, 551281435, 373508078, 151663889, 267180388, 243631151, 239770748, 391970992, 663260363, 68966957, 593875636, 307445442, 258671142, 269031929, 462924836, 754313033, 844361125, 575333024, 97386798, 418240521, 89212369, 381798670, 162158653, 155005079, 554087019, 273538675, 514404314, 135201026, 258544889, 324515158, 379615540, 161646093, 143266099, 500404679, 81142855, 499997590, 73380152, 359775475, 770672733, 726707153, 215133549, 295336788, 489126559, 209473769, 93218123, 382043625, 106586574, 411051064, 207685602, 156418303, 226251863, 484960079, 60682651, 223245785, 679937291, 687829635, 294627056, 220238788, 323586198, 249515134, 324633775, 255654972, 128807069, 26757063, 292649104, 403928984, 217478010, 133330096, 84398820, 259304543, 152990216, 89967409, 384268678, 397010854, 807221489, 71344616, 112040867, 681020098, 402404060, 264185114, 401270222, 198842439, 154796932, 435678063, 227166952, 240540160, 231683796, 602903822, 177526563, 631796821, 48422538, 246913937, 450384266, 262430649, 286509379, 562982900, 243628651, 787051976, 123088164, 377434471, 22282425, 15837887, 280526618, 493052392, 351563573, 469777027, 99544908, 148795868, 149172528, 703281432, 661810064, 302113998, 231947614, 68957730, 826309549, 781816917, 153339128, 465657030, 189118118, 138107962, 62207739, 344135485, 426368089, 353866126, 175306387, 607507401, 167348853, 669938112, 600399115, 230819395, 547129215, 348580662, 475663311, 219264832, 532238717, 81870098, 231225807, 655186657, 609631026, 73646401, 293008662, 269534395, 138044945, 672362570, 712152385, 777086261, 84402489, 290097723, 198281019, 48544474, 80785565, 289003230, 7909685, 622651285, 622651285, 474993812, 11217559, 360495575, 172122059, 49690764, 946592304, 319737594, 664443821, 603823929, 363019810, 314938597, 102628510, 399243114, 134361503, 241516850, 276324811, 36754939, 708428115, 600616556, 455945338, 417216662, 24676042, 506503484, 102945438, 468982941, 362365882, 684174495, 297070095, 509302278, 694179276, 350968964, 250617475, 498825830, 658713686, 14202984, 81315486, 208014871, 108479647, 279027528, 481389193, 125937841, 262829923, 381932482, 697214137, 416010524, 218106776, 527484737, 327333188, 562570326, 830148247, 3443552, 425869546, 422425994, 211120004, 2235026, 278607950, 276372924, 165808772, 383474943, 176359316, 382434423, 96364898, 238615707, 121902608, 106729399, 488604509, 437232846, 86629918, 173645094, 641042409, 504444249, 141888189, 429385399, 777872163, 725078253, 111720645, 290957700, 223559447, 146253558, 471101984, 580678141, 322371433, 60355058, 204289542, 120538440, 367926367, 152773700, 139130440, 234824863, 828215623, 428720464, 195873300, 343373994, 423253967, 14747043, 582106389, 587615266, 796698512, 635542587, 563666234, 238413167, 302166589, 340557249, 423646023, 198939993, 617156865, 174142426, 157909226, 22534816, 433777847, 847664483, 740698307, 628525953, 704114525, 893294547, 891707387, 43137144, 755362266, 182107643, 335938097, 780714610, 297897234, 454919004, 870566923, 199721880, 29731280, 672301824, 856583658, 32765187, 782629759, 542761393, 299129975, 215781946, 259953068, 63330800, 226525939, 278537824, 263208559, 180719853, 207533296, 579790738, 832651558, 108831609, 836503196, 963204532, 113810401, 856691020, 679230443, 371838558, 173386238, 130826345, 419594636, 445035923, 545971012, 694255924, 172987116, 286539089, 458719533, 368829320, 204175493, 629692346, 886429329, 798836037, 514838361, 455797333, 176825230, 290611448, 301639990, 268621725, 17487122, 621835748, 537562092, 618996725, 792912115, 255587996, 367824619, 886296712, 669141407, 14027748, 146676295, 143983851, 59286842, 86277063, 368545391, 638922592, 206342436, 269281451, 307573391, 105403465, 557345849, 379460486, 392892617, 33949459, 501010510, 128549108, 299730841, 33005531, 314737003, 312649635, 177905597, 132921327, 220647121, 122922820, 500679629, 283603666, 338370437, 670949631, 36777377, 34299653, 38992280, 90394797, 338002971, 173940114, 352636616, 844775973, 18120960, 756893444, 328158915, 11982948, 61790927, 393846905, 718294280, 391252198, 303105671, 877186343, 263306464, 415285786, 434759493, 220470983, 666959924, 623917175, 857835945, 870519623, 667873288, 455554868, 494467953, 521822664, 95344579, 618609091, 845152223, 49960222, 690507049, 354636524, 14574460, 359020982, 227585580, 447800892, 24138984, 321060381, 419465632, 35156927, 60205307, 99625421, 122761461, 78192526, 294980260, 323258025, 228749887, 56342791, 417159425, 106046364, 607556944, 439386353, 479103275, 69917243, 227847341, 313755594, 677465222, 464635804, 370456935, 29442425, 779448398, 11316920, 790077753, 261122767, 131388794, 75840503, 107332319, 19245343, 146731831, 565146173, 880309946, 280446819, 171488527, 173717241, 51649769, 130618751, 403351139, 725595768, 264319990, 429522186, 313993568, 154925226, 581843583, 686460304, 132104772, 705428721, 47011750, 475157266, 542615642, 251044829, 138534092, 236892, 768007541, 767770649, 179184937, 413847738, 231526450, 646456909, 404513162, 268445438, 629653855, 11849792, 91471859, 810391719, 124735816, 156180407, 28902722, 332864380, 186264665, 783237181, 626929023, 485449906, 407766781, 473735879, 184931093, 35823850, 159023305, 550789283, 671224920, 64830461, 393159945, 295366035, 6135137, 173463297, 167328160, 378668166, 564377997, 10045699, 284865481, 284865481, 446469089, 540693929, 236449352, 163166722, 197456023, 36968370, 138632852, 271797626, 246353759, 801246130, 387838556, 409659223, 15729228, 248849270, 105166384, 46792096, 90340511, 170727887, 642059807, 34298409, 397659800, 188133195, 53475717, 417449506, 83705725, 83129897, 99780361, 119235520, 137831938, 203712846, 509786059, 591949030, 278617664, 384252317, 686213266, 821761529, 849807305, 207610252, 46884606, 20135234, 314023567, 292997842, 171969159, 182974390, 620331209, 3638760, 357028171, 353389411, 193357178, 170799615, 23558519, 738840569, 919836614, 578343940, 165561966, 72555979, 411757614, 304046904, 365117055, 50241574, 166452506, 220716725, 367041691, 161864123, 391319519, 510466801, 532308503, 208415104, 580494220, 235232522, 239073629, 312345744, 324173306, 337222790, 333059553, 213776379, 344644767, 524399358, 146332061, 253048416, 520128146, 15261940, 257431952, 257007952, 82150841, 280595655, 27801216, 440887823, 250346940, 337636038, 113028795, 541264104, 52751906, 134353805, 614875850, 150396221, 168083662, 65256297, 557870524, 382110604, 13641695, 282184552, 194863725, 237266475, 361516365, 319444592, 240958970, 386742199, 500578982, 356916276, 159217508, 239540987, 325327719, 68817367, 728744355, 768560515, 470749239, 345994394, 478611529, 183526098, 440994249, 591030873, 437783347, 285918601, 123064091, 457071376, 87633443, 690053557, 345548252, 320622775, 58551448, 19225243, 893033625, 439900147, 422797443, 699360515, 73569728, 85900326, 213180452, 106316698, 212047684, 60311029, 607372895, 835639682, 661229464, 177253204, 17674239, 688712004, 621990061, 16684806, 679036259, 692231667, 630532880, 71655332, 425171748, 297124514, 540740094, 118467949, 10908425, 469193403, 469193403, 660837445, 73115810, 356613843, 34368053, 33207454, 520605486, 562914258, 229159582, 41620286, 56754176, 368272167, 273557372, 412512760, 97140669, 103603887, 14454066, 596948028, 174285472, 300509714, 829081624, 140884691, 332757801, 91155539, 180749683, 20232227, 115080749, 371780403, 636890592, 801419238, 458660059, 38956862, 145185692, 149256453, 406442066, 461330461, 539780743, 329849409, 93497471, 401342108, 544690369, 846028405, 702187941, 813185802, 795187262, 710956484, 64836932, 46614982, 556647110, 16913411, 171766034, 366157164, 752384923, 761277550, 2659073, 671271075, 671271075, 303443320, 305677845, 7685342, 37590460, 29905118, 528579015, 210193776, 152105297, 283218496, 398260558, 487256343, 588918921, 101501674, 842053917, 155732260, 49485810, 110840711, 786607256, 86835253, 545706774, 433083977, 172042261, 449612252, 245068268, 332925322, 210014118, 611920289, 726377766, 101866971, 63408303, 825978832, 476944187, 457589864, 480739554, 555096923, 971707392, 603580198, 191677291, 342319490, 234255010, 516840632, 219454899, 73034874, 98361523, 538455501, 178228513, 166244884, 920932325, 839850355, 173546473, 61682343, 255988106, 293411025, 80899910, 541848433, 229272817, 297449743, 234519910, 523101317, 135036868, 287056451, 44725786, 209574185, 485980209, 380511516, 63248189, 92118274, 58942843, 429749214, 205251597, 554025677, 240486382, 500898953, 285876531, 153841361, 213012392, 94982076, 649715682, 475547842, 47700831, 520329313, 89435965, 382375515, 115424018, 154246111, 342526732, 344889554, 141876233, 564317305, 509066345, 261282394, 388040123, 321624150, 155540893, 526690120, 74112102, 637734219, 934221630, 726512962, 144594260, 15268615, 606544774, 399560969, 29992668, 413006571, 274661893, 44005159, 603639580, 714381724, 168958948, 438031221, 236668847, 47932808, 90198613, 393297370, 136663893, 752229938, 263073304, 50956277, 118470497, 326094444, 268436678, 13292563, 630296487, 208325826, 418462331, 580186996, 180645794, 154027030, 44121623, 419840704, 389787820, 243523978, 11185825, 500010457, 150288755, 355567958, 293126155, 153237004, 500759186, 689428228, 10651521, 389947911, 379296390, 435651843, 86139468, 65018229, 34244834, 860897484, 79717780, 202120850, 339492379, 245829604, 557382335, 768690775, 394205381, 14678657, 438948775, 818751761, 764900477, 38093684, 83641685, 192727030, 112404463, 25416870, 182766774, 433398691, 235610929, 168422502, 97691337, 335904796, 513560369, 493634790, 704060119, 125390387, 48709564, 590059004, 568679714, 300084001, 443335677, 640543835, 194064775, 480270240, 752543568, 56736144, 30489085, 734577897, 496549912, 54722436, 38459609, 134281447, 842829795, 72754095, 784160911, 31771170, 614878806, 79768579, 59739998, 187000068, 353073891, 139602839, 273475840, 636670850, 415152072, 321441519, 10009439, 200752856, 200752856, 168980219, 339798830, 366687367, 140401307, 488766530, 189803586, 407112875, 142212581, 58388717, 244359151, 71711555, 288058229, 278498963, 293244331, 52124645, 62711445, 24701359, 779317889, 353120673, 92268333, 36229844, 400125676, 112463606, 194646568, 1267117, 381251015, 381251015, 175111767, 525324352, 841813480, 160392643, 380773808, 196641597, 83120423, 132033538, 383567279, 397593713, 839171645, 302062174, 40864949, 29798237, 396976606, 129571823, 367599375, 476569005, 164113701, 350167143, 200608393, 145200034, 54581201, 110533627, 84084375, 398703207, 162830768, 104117215, 39030539, 242933670, 92293321, 224751943, 290045073, 54626019, 114033111, 24268640, 335656729, 477703439, 556028261, 370261208, 313649687, 703845113, 609597800, 589147295, 249833625, 287773974, 255996605, 234417126, 38384082, 67819462, 627476116, 185381829, 343253724, 224535699, 129621787, 234970368, 418555516, 574100995, 678230994, 905813810, 177409336, 609884469, 637220995, 128941841, 43602393, 4585892, 299229450, 294643558, 12716617, 388224761, 23997713, 210040169, 203063868, 354499090, 23530614, 414193677, 535449104, 383011719, 261963007, 406213557, 85113066, 791797881, 866829362, 101155624, 525243119, 37905620, 262200352, 267548243, 61032931, 295912212, 18922469, 157255181, 125588444, 224553865, 104471390, 725293574, 944231277, 124346717, 54554380, 796373406, 608486110, 80901429, 193022980, 467609087, 272223272, 247413908, 514664622, 72106364, 49365893, 420134270, 407569409, 489995490, 17709999, 1841230, 75454888, 75454888, 241096931, 569130881, 281066784, 184274676, 585531969, 142558432, 304597225, 267238068, 225986008, 47815378, 178480537, 364473326, 680478405, 673019075, 818182196, 713789925, 487194146, 203211520, 272948863, 506051879, 444516699, 292296504, 750206806, 260669703, 638083055, 639194877, 579306324, 71372577, 411367722, 293651553, 766279684, 586570855, 307944587, 135714337, 373439284, 37116588, 207823419, 525042056, 119807494, 834112163, 418806276, 94275746, 8424838, 91586415, 91586415, 17369589, 174044383, 420225050, 43545126, 533885277, 256054646, 402145867, 248158815, 294381056, 281507814, 167675098, 405187973, 176922185, 171550902, 219354726, 198502997, 878183513, 446454094, 30682006, 384237959, 331420621, 221071952, 80478301, 327586845, 160176442, 823527695, 3174530, 594295390, 594295390, 109059444, 85422477, 433267459, 596012573, 99926982, 19721214, 226071957, 730221272, 180770331, 679338878, 18379579, 364075871, 362950661, 48314831, 470486344, 216286935, 694247124, 380578864, 401159326, 329888468, 398778638, 437846399, 428976548, 258874121, 608837586, 463792425, 17933412, 43316185, 119750928, 145255556, 173279903, 380077549, 232121575, 637410430, 707221860, 574741620, 53033024, 40542193, 303948882, 251448421, 174790675, 178799257, 328620049, 28896290, 137629782, 305714701, 26124869, 65027990, 594776486, 305274739, 833726953, 232148127, 413839091, 45008691, 343026252, 381492572, 772408744, 446804799, 257306325, 16065017, 808390960, 125038453, 252560014, 489149257, 594893473, 387945715, 198797404, 365645881, 170603860, 651430948, 75602004, 201392598, 111945857, 385776660, 773191213, 442430727, 394912160, 623566876, 464711781, 155468212, 559206229, 601899754, 876423050, 620574273, 147923293, 372280785, 202235082, 95444233, 310772891, 360174466, 107831451, 792816894, 277164414, 162020802, 251205527, 567911547, 35831349, 754065616, 108668407, 424858975, 293328975, 627157760, 527017917, 327190140, 390725272, 729616798, 811516612, 474436829, 345441507, 144355022, 36535976, 124093405, 129940343, 131901650, 126765802, 308387787, 231268474, 320452430, 732752305, 469898919, 201118126, 201364849, 493561473, 96353074, 829897441, 543037319, 73524463, 118727752, 54875637, 14386892, 58059355, 580073771, 211712126, 250643464, 384940267, 5093094, 720486698, 715393604, 493831803, 197523287, 716523526, 348706517, 483511411, 516027369, 360571389, 707934509, 398117075, 302062622, 55225223, 748661766, 95737634, 824718562, 307163122, 392600970, 187596776, 206652706, 2095925, 22876696, 20780771, 235363738, 23946163, 115997552, 39342992, 583368831, 67893661, 599787128, 128645485, 496195580, 527930193, 283091030, 697284675, 72299321, 598794805, 83051760, 159399412, 233823257, 62396027, 199577177, 49071066, 317274591, 319165580, 108320328, 209353887, 152480277, 563464404, 239269418, 34222033, 108166453, 328814727, 142023222, 107879975, 660403095, 549211287, 67989845, 21839276, 438945224, 408489219, 46280668, 355500517, 223244061, 597462082, 523609226, 534677727, 753653097, 472218605, 111503750, 42926583, 25102773, 449201936, 128938822, 474243252, 673584137, 705147380, 201684719, 253528478, 770967106, 261778701, 212360802, 526285877, 631728336, 421298074, 85116278, 150142156, 9102783, 259625449, 259625449, 588823693, 166781580, 260383144, 459767270, 76356533, 455263295, 175610056, 245136934, 118529966, 235586982, 274938680, 314427935, 580816675, 28510200, 299783761, 50706792, 69771945, 223232835, 548882524, 590336464, 181397660, 170710873, 796482158, 325366681, 58555561, 401126714, 825370315, 678185070, 283627180, 115798293, 81482652, 674167528, 425667851, 181730277, 438173681, 518089713, 496833192, 564254329, 338446192, 219219495, 619511261, 164854974, 42888671, 459218099, 305969412, 129370356, 102058433, 174322239, 123864078, 299022152, 138206628, 632235943, 475067759, 25451926, 306222157, 636901601, 401950758, 352286762, 112862187, 19159905, 467331350, 221128076, 406610362, 60493869, 89887093, 230318330, 166331396, 524558756, 804023920, 124988418, 505878071, 200284119, 300994198, 434123351, 455446710, 107007658, 626979450, 76009758, 269210083, 17389167, 511441916, 730691491, 119696719, 26815041, 877093140, 760878431, 103265356, 638801971, 389040618, 422673839, 476746149, 21583645, 399427267, 254574590, 416809217, 211997828, 31935480, 273699064, 132409212, 292187344, 202651424, 75338992, 259662965, 310046931, 334595884, 595390167, 331658829, 50333348, 204278912, 217706225, 767689886, 167200308, 117341600, 321612775, 563956460, 106626274, 261963064, 279156328, 38599627, 349609414, 612412136, 190963752, 225054294, 607616899, 889925380, 659645817, 227679630, 265596384, 145326354, 233199005, 45316649, 345192357, 521451278, 101562892, 440772835, 110100339, 44486954, 96758244, 517851869, 285300347, 7459981, 392268784, 384808803, 380202198, 269813560, 92705789, 401512189, 50978242, 178006956, 435391213, 817143128, 639953206, 115451372, 709007725, 360869676, 536108830, 86994257, 56649638, 918590032, 962080666, 132224123, 479470205, 13842619, 110973902, 314392397, 430631943, 683706406, 117227020, 623794315, 50623566, 124137621, 147370202, 28903764, 275507470, 865221185, 589490583, 152342972, 158887195, 150690474, 289114063, 355797655, 352675198, 73352745, 22685288, 268237437, 462456505, 194245812, 922226450, 559329190, 554166483, 755176449, 312267476, 462146781, 850320213, 697565484, 238490406, 3829880, 288512550, 288512550, 47697616, 203573502, 434901420, 58079108, 127328064, 266409158, 213464311, 370953615, 282093735, 118092777, 506772256, 219493996, 139320449, 495638966, 455686355, 11138593, 33035431, 21896838, 490333458, 166753583, 656396449, 825622984, 322962278, 149277035, 302886474, 715538389, 36847570, 594730641, 407433214, 651622309, 30292957, 146070829, 368209225, 169812771, 220958838, 365634849, 621190028, 259455162, 779119874, 123104804, 157039438, 35866314, 164911287, 254250133, 460341616, 393673311, 240992530, 114371433, 422090908, 254631629, 159838526, 654098264, 123942460, 533509012, 262642284, 101569244, 55802278, 452715750, 751299466, 675935156, 178358326, 588578401, 8984335, 481942284, 472957949, 79169711, 221618333, 786617977, 848010811, 887926007, 204490072, 640495297, 517025490, 117705856, 13883402, 139306934, 214390848, 44483024, 132801578, 150069981, 530347371, 458925571, 551648086, 903220795, 210621016, 135395909, 677589318, 632710765, 752721828, 822437366, 872395413, 860464718, 447130271, 208366731, 7601555, 37377532, 37377532, 90380496, 343094485, 687372592, 666936219, 622083108, 853926256, 387303731, 45458631, 190851461, 390325564, 184278166, 471762109, 211766808, 115854757, 128238029, 31088626, 191281525, 543300250, 612228742, 141482416, 197991661, 739602590, 31323498, 309368647, 233840652, 337742906, 452141764, 154237576, 91232876, 433374470, 491176976, 671697857, 46531274, 827707410, 564761560, 572502345, 180535070, 354753105, 204428840, 143617471, 476703226, 15522114, 439440056, 137274785, 43238080, 447020973, 707986195, 571959387, 162894968, 626871510, 263592434, 630993665, 376009374, 241361515, 612256743, 169664765, 243994071, 654151773, 357440459, 242498219, 352253685, 25254601, 47675, 235755069, 235755069, 644038417, 28437813, 227897553, 60246008, 682659336, 164021881, 217799653, 385774861, 430036218, 648307186, 59405238, 55931036, 79768770, 570182461, 420476351, 172541272, 82962116, 104671365, 338398055, 135220232, 85517469, 896374356, 348893559, 303471441, 316669522, 161628260, 369417109, 267311146, 95805343, 60350109, 278773746, 230273885, 188752352, 57453680, 259850293, 358458077, 193784795, 667046581, 165044779, 340346694, 118908599, 520600464, 524136519, 281018695, 430773263, 282114914, 323749408, 411480630, 928382106, 1273093, 54241828, 52968735, 443375512, 525525329, 911271109, 808582980, 879652594, 392552571, 326242599, 888479827, 160313829, 671565537, 395395829, 70118038, 65750362, 629401241, 944813825, 311138247, 114968390, 45068009, 184659943, 350402230, 96367493, 342774287, 213191038, 253960029, 58933436, 69550968, 568894734, 325182566, 589445087, 87908031, 664590665, 537703338, 22561563, 29583824, 311811087, 486448605, 75637184, 151104386, 92052186, 148725404, 691753353, 228617899, 110774133, 168905987, 350686612, 38721552, 221381360, 186811872, 7162441, 40881596, 40881596, 528515064, 286242840, 10250019, 349977972, 349977972, 274320792, 202583759, 142041770, 271009304, 465919315, 90953297, 22952701, 601709499, 136235778, 98958854, 943689168, 369270568, 426474367, 704688704, 640743348, 657164725, 398711597, 249419118, 294948678, 341260902, 445818877, 457612636, 128700764, 411087132, 17053882, 352047361, 394578260, 679979820, 18635978, 552717051, 202757238, 115123972, 248936883, 200948953, 58119846, 395619758, 227956837, 379691137, 36041849, 409109287, 75380280, 576168809, 702090602, 562485049, 451304357, 168945205, 296621397, 129090700, 673731971, 63223982, 596787344, 82716828, 395042997, 496004219, 674893622, 626167973, 227985343, 192186050, 8852268, 53479942, 53479942, 252253157, 454319868, 244308579, 75555362, 466776310, 335483854, 261956547, 651803470, 704297205, 42427345, 566802691, 273518905, 92614805, 409844859, 678853900, 59823886, 521562084, 234540029, 116645132, 520817299, 854775993, 456987440, 104075182, 200761250, 768948318, 63564230, 680715658, 557315525, 60531783, 849670637, 237177435, 110442779, 249655213, 266889157, 100180531, 308931039, 395300603, 505958998, 216985064, 291428481, 350016310, 103739674, 601960279, 674853074, 928572831, 291366325, 448609181, 19192327, 581915385, 552993979, 141958401, 522825871, 379680797, 510062218, 571003765, 393834074, 732323629, 42851339, 107879413, 853809077, 31453153, 447397182, 57358627, 172545990, 406763914, 511353219, 602150729, 236166369, 379862955, 428831281, 116503679, 386764174, 917605370, 235560168, 106906935, 800512880, 456989879, 39237223, 420082772, 71033305, 946996714, 903296400, 121261812, 420684106, 439342118, 22701965, 302452566, 394219463, 377833896, 376925572, 62650197, 839389715, 36359657, 741689732, 763046681, 799138344, 303835755, 293590924, 217300308, 198095323, 707137698, 230057302, 262952470, 491863215, 74867474, 541729229, 385822541, 103799036, 175867825, 98847148, 329599457, 309672020, 115014848, 92728275, 45469710, 23097690, 364390516, 1217887, 253683864, 252465977, 275382436, 33538309, 58758774, 263045305, 88883546, 352427352, 239394274, 444236344, 141739036, 452776016, 604347102, 259770649, 14447362, 1661399, 329260342, 329260342, 824857516, 522056863, 108799766, 27856939, 236020396, 571990088, 569184185, 286095207, 6705416, 654091945, 654091945, 3326824, 138958200, 135631376, 478995157, 374846628, 60908857, 136283368, 522991140, 558728680, 561233014, 781808971, 395419191, 332122381, 641505735, 86040259, 392201164, 714029540, 911802636, 242712377, 269419664, 129765259, 48408244, 63644387, 109328919, 234655965, 199163459, 31086463, 631059129, 411705506, 110435204, 344569209, 568739115, 48907225, 724522998, 422659316, 323278869, 192794678, 221148776, 330306083, 94123223, 537288220, 430541633, 345325452, 501357883, 625182718, 112602456, 209145243, 531131676, 624178553, 119439754, 87457460, 967342039, 110047082, 626532432, 16839893, 29578618, 479532616, 242755062, 77812738, 867388779, 516802051, 557387367, 329650932, 182334307, 470763047, 435778137, 354461599, 103470695, 390373316, 157421095, 182002885, 270139843, 18656782, 236886649, 387450383, 187339925, 339210481, 309975577, 312762572, 49265646, 365594097, 299129315, 812941196, 168589083, 228568935, 314184958, 394808523, 450527736, 421957004, 237740776, 324889527, 212218936, 78117408, 727642518, 417357215, 369871911, 873051474, 463909009, 352636430, 697479701, 244681366, 449694801, 765482854, 141250196, 306325160, 78626371, 516309675, 844185337, 258742252, 473874614, 642892234, 233376860, 114181548, 148579077, 809968557, 625377505, 151753199, 264832892, 231287055, 456387029, 957905773, 297499037, 78689971, 575276518, 280730379, 120100723, 203880235, 414960864, 306000415, 380836988, 407742791, 629682849, 679697275, 56052050, 227102781, 343137668, 366098928, 681638242, 24551102, 88431119, 836830577, 306980297, 450899294, 586457834, 531356317, 396922724, 254049456, 274241323, 191245299, 66759889, 671397049, 40469205, 393802042, 447114482, 853386117, 644206057, 702040120, 278759140, 53975380, 578453477, 289903382, 118666769, 331406859, 814543974, 567470376, 256863605, 316673185, 308950633, 93805280, 631016763, 244892311, 197632726, 233649547, 294169857, 512588659, 188022677, 663737605, 593622621, 762245763, 120394526, 103901375, 128459106, 402025262, 523547022, 122494794, 386425653, 104190304, 273736913, 29764680, 3019382, 366042776, 366042776, 536560070, 447695485, 293578061, 307872831, 223578547, 187043086, 654044296, 726461899, 422372955, 48018438, 126981266, 353867602, 745096317, 299748688, 461198736, 911819248, 921257985, 336760557, 530040855, 494569592, 234143117, 383699019, 440869648, 355088048, 508991493, 90181109, 762062748, 94117897, 58512307, 219535421, 427326418, 516240921, 165657506, 14319370, 646631046, 631115683, 632830533, 744011011, 207223548, 243126551, 135099941, 175458137, 273242204, 301200997, 28845634, 221378015, 162520300, 629017037, 616589700, 746201587, 163191099, 106059157, 32209412, 199371154, 861656047, 178375975, 152261661, 348902636, 882241266, 171074257, 370409678, 344133483, 675731393, 118686561, 175325980, 328387394, 417330410, 348696516, 191806734, 635613263, 6705285, 47303045, 40597760, 362914531, 327132362, 679701919, 435760065, 313655142, 498252096, 9776654, 700445733, 690669079, 106637189, 122313801, 378788086, 598968554, 169533392, 43671021, 328867196, 355297659, 73904563, 312217747, 9802526, 287963016, 287963016, 608535849, 195524793, 479505790, 470689046, 411150452, 363064127, 452762087, 929605024, 892733238, 62976139, 3383788, 384634819, 384634819, 207842696, 469318444, 415318673, 231173646, 99867677, 309201724, 45613031, 276060743, 79234650, 341441975, 303230689, 231433549, 185411506, 198472492, 280979065, 228052407, 50711329, 78929866, 205844585, 322708787, 514733200, 413904006, 272375147, 144143801, 290202912, 452474833, 34923268, 808143014, 576615895, 710956392, 647967228, 306205915, 602714554, 804374822, 130460495, 302164488, 260079345, 408471560, 353536024, 797628634, 803530714, 445682931, 201006801, 525160363, 98891372, 534065041, 78923542, 210555280, 206848271, 48515748, 168718512, 463150, 241256485, 241256485, 35989351, 317056706, 705406602, 749455849, 482718443, 433264336, 243394568, 51686809, 499013805, 302265723, 23917496, 299489486, 153225372, 637561907, 185069194, 591355498, 8832653, 533659623, 533659623, 16195497, 78363609, 326207036, 485786804, 190932470, 391723792, 81296391, 253448821, 23091807, 273299270, 244343907, 119756206, 665178637, 797288070, 624227553, 205098625, 450665488, 239433180, 70823385, 490702410, 92129087, 438923361, 112262745, 297383577, 288009586, 157248330, 116257392, 447655246, 583394452, 666826860, 297857051, 27430563, 230510232, 161949399, 328114181, 177643165, 42040794, 153390808, 344855159, 380611349, 391932399, 233965033, 423087142, 12012336, 131612378, 795639687, 518338720, 639145151, 866767187, 296971404, 286085140, 116364968, 381882746, 167078639, 273744236, 168358955, 604464339, 617814612, 202613689, 880249458, 650983295, 352829528, 1083864, 499230017, 499230017, 156308963, 850662177, 637412711, 317840968, 304276971, 460284896, 48684940, 220869094, 20424298, 373431448, 292446536, 233959788, 257166448, 408644839, 601622898, 338611242, 622766462, 213069476, 129471175, 676525805, 590559607, 397875365, 130701002, 72417363, 391806312, 172463585, 76321784, 206144558, 554603752, 27813861, 512144057, 360582108, 31975701, 459580319, 435605311, 764618593, 41498137, 556170981, 115979891, 222550556, 260686373, 516384953, 869490863, 663931098, 30675923, 266359253, 752507534, 162414187, 730076343, 320281726, 289697525, 240929149, 815619880, 745570157, 766261099, 105846956, 113662392, 121420872, 167119153, 212992864, 118770574, 415322964, 108135690, 199842177, 561973621, 116317798, 110952039, 23790531, 709935274, 755232805, 216500949, 177716848, 164116688, 753668188, 341184773, 362953699, 460032123, 65217331, 377871199, 796654916, 663588614, 137696257, 54026910, 118215156, 269033805, 60540390, 490146450, 426043010, 68780246, 17014660, 125129534, 673146899, 840218432, 531076, 40321022, 39789946, 807254229, 618826894, 378820841, 229979993, 390348810, 294886295, 333901932, 112601244, 118299085, 29516683, 100657330, 69850972, 29405887, 537863103, 60862155, 253003434, 347791128, 52745941, 680119870, 145269583, 127321649, 494229760, 144201425, 266622425, 496313791, 510083026, 491178432, 693832239, 763117606, 123474426, 151926239, 187654092, 270230570, 34143629, 224646815, 162941312, 158493028, 507060687, 181685875, 571619575, 711684784, 620789728, 185190475, 539647373, 708141868, 97919806, 674621205, 1932231, 473824538, 471892307, 73388013, 107307496, 35027578, 45447745, 81887311, 471102023, 232700915, 159015459, 248307565, 80253315, 98910213, 194121128, 102650553, 281741767, 92134467, 20804143, 155851309, 49143645, 182252351, 28859782, 318682948, 218074077, 330382677, 737460975, 897844046, 936076706, 93403794, 605706543, 95936884, 660216159, 298095822, 268387088, 357887829, 356722673, 347402694, 503887185, 343411195, 304403869, 232018375, 652136800, 204460516, 423551390, 375768208, 185633005, 577533414, 18278050, 884503675, 69967387, 387242268, 7841520, 277104936, 269263416, 700936342, 522102748, 471823394, 832211039, 31053082, 20362036, 36787815, 732413529, 673840187, 876889907, 274320810, 277334789, 718289566, 152931448, 147852111, 649550392, 300671800, 214172444, 251664996, 655433913, 167703321, 404983644, 78854650, 147561554, 342520485, 346739519, 69587207, 368714526, 123032379, 403391726, 152462708, 493638441, 445125494, 405805164, 628104935, 394972073, 117104434, 29309779, 429302611, 563180201, 122794857, 876927698, 785132665, 525927723, 670812346, 158823313, 64129544, 413370176, 302780759, 238865261, 670953743, 224403673, 636110523, 64580589, 711357709, 315318579, 320589439, 111430351, 218053766, 179318345, 243880332, 326748998, 116699253, 404395162, 557280620, 29110819, 299418584, 100913881, 30226078, 206944394, 153059220, 616734818, 661607485, 226414783, 370264242, 384609182, 351685514, 676053307, 269558842, 189103853, 370690317, 505978103, 151645831, 231506292, 41571349, 142443558, 72988272, 782359588, 90072192, 339878611, 217520934, 186328627, 5454228, 391972158, 391972158, 227569764, 534602223, 654437792, 240749812, 299167900, 498219355, 217063436, 407911777, 285223898, 116072539, 557474313, 612257702, 567867700, 187686899, 166695067, 303524330, 653985004, 472508861, 77856950, 65434119, 119251312, 123344857, 15897615, 40827519, 706980912, 552080622, 93470320, 169542171, 198054914, 165683928, 100671490, 33348114, 480572902, 152707700, 276979748, 125028370, 355500385, 196653208, 710500134, 346202792, 261655279, 434893711, 186391958, 318877286, 504557608, 103135133, 589427579, 837491782, 844241594, 34526652, 614554560, 184925057, 695629444, 133118007, 206475148, 317731689, 150968390, 566051397, 216639338, 595259409, 86201532, 380889180, 522175924, 471134270, 824231439, 859507161, 658692149, 568421750, 604581717, 195668187, 512033425, 367462020, 156883154, 204250511, 578029831, 579943729, 36952327, 4528186, 768354180, 768354180, 19983206, 573190778, 178418332, 512756973, 20866044, 200997523, 263569345, 566468824, 641376045, 44044587, 211018629, 5133848, 159912313, 154778465, 7042315, 292993901, 292993901, 337558405, 567648560, 221478049, 266823514, 438171205, 118128018, 684824561, 609594430, 5766271, 738191324, 732425053, 226380534, 519830807, 401647690, 18860181, 352248272, 724072696, 74123869, 823053170, 727698028, 39942998, 397174618, 112032454, 338855516, 230401012, 903233428, 595625732, 14400049, 20346467, 226713154, 376295223, 527956375, 599142805, 398953078, 285156172, 38136903, 316661115, 45890901, 125224514, 170312463, 281055161, 151036740, 981635154, 417731258, 390980717, 825286602, 629680701, 144579949, 163454208, 190325596, 691887460, 836355068, 107278593, 291040518, 679972739, 695809688, 582098932, 744032244, 145544035, 183839753, 27879254, 388643909, 364807970, 109121639, 908429535, 188386433, 169549821, 701993507, 482309650, 374595743, 12768785, 106035021, 407012705, 250154859, 690783725, 293964274, 278446210, 364597134, 339878527, 49204512, 151770959, 535744075, 235482684, 43664143, 850417779, 223271495, 252683487, 884303133, 22712602, 265672874, 135088782, 581694339, 46993448, 309870804, 408385869, 9260592, 127334239, 118073647, 411473288, 385005591, 309070215, 84641824, 347675112, 662703795, 111158703, 897960006, 17812871, 696278652, 171301153, 363663417, 331168524, 500512540, 123150122, 722909225, 40427986, 578456259, 382416834, 351774130, 547490250, 933997638, 186295358, 38515959, 215458700, 904317819, 57670635, 742451877, 321058072, 323494259, 508579079, 35027201, 468811275, 534147384, 749001552, 666529033, 227241188, 251554557, 49254297, 174921901, 93654233, 341738577, 761554659, 448912502, 253559213, 58301220, 165333552, 509872403, 345242229, 514613142, 79527351, 707420026, 285548544, 483435464, 578886015, 129204914, 242009870, 31017490, 270495933, 60621656, 314081772, 299935859, 264322007, 607907114, 718016710, 310431813, 187185061, 115324409, 151854420, 349967609, 446886408, 559346571, 306551586, 199692206, 161831425, 216626346, 205978653, 445024315, 240622250, 170978983, 7838160, 716741450, 716741450, 316681710, 591965246, 345045988, 255899567, 20460225, 278599131, 174588929, 141606630, 470221016, 375449501, 4240511, 360409227, 356168716, 437548480, 314934051, 116353487, 143744388, 308102816, 91185875, 713087839, 201156521, 746935440, 704232150, 148233527, 414556997, 214034677, 257448889, 284491222, 743842022, 53608184, 722986071, 64871079, 61323550, 180537, 757317623, 757317623, 650039255, 338001201, 582315150, 602291318, 339648147, 858864060, 400039924, 476157984, 446027624, 256747319, 594583891, 848877484, 679190002, 656097807, 56995633, 839948897, 159327982, 737813826, 17761503, 965308771, 258569551, 56783042, 176901814, 155005805, 364343472, 452949625, 439189054, 402932815, 302891826, 606958650, 287676515, 461635304, 572503601, 213267314, 85269384, 43423415, 217516305, 699438799, 329054101, 46108354, 86381703, 5924918, 462400726, 456475808, 112618134, 471368784, 544738482, 1568393, 786485737, 784917344, 678016623, 556006396, 622496967, 753073307, 537822645, 234911954, 21796650, 536169002, 34203918, 772129790, 646615777, 752363873, 846086824, 430698140, 476670711, 665142453, 233154020, 47531187, 369736884, 17138924, 252458712, 29271302, 117343937, 380378239, 534863307, 212050749, 78442172, 219384457, 518158801, 75486010, 683835575, 265666696, 9079555, 388520669, 388520669, 254909276, 379135125, 374878198, 409085579, 302895007, 421241644, 800695875, 641030774, 218216609, 343817836, 640927248, 510976512, 437385028, 497243271, 471179482, 162931197, 622158059, 76500207, 35132043, 195849321, 103126945, 718943968, 325270058, 200681168, 837575664, 727307725, 148970855, 89799722, 42055488, 199826040, 149735313, 182552056, 79956436, 640349194, 86578988, 582492364, 39964847, 3226019, 829240860, 826014841, 662680133, 37957681, 219148642, 62267608, 585896097, 24375896, 909209479, 373376575, 485740947, 382985581, 35559929, 400132044, 426299561, 195259583, 13332200, 306494116, 849015997, 778370876, 791784260, 574051716, 24172348, 172597221, 152144480, 310010903, 114526689, 71252810, 66053122, 156051146, 103894693, 570867030, 163320699, 125442674, 166055417, 618103676, 234312639, 831542226, 783638064, 703811751, 42556153, 661525446, 605697769, 31055574, 247004808, 242502065, 124718808, 150987157, 156236776, 873059982, 717881934, 269189195, 74966426, 460074404, 409092661, 278496467, 13612571, 518821802, 167545007, 306874013, 375018610, 95467968, 362232511, 142429739, 252938999, 527878795, 511535396, 155185670, 123054249, 376926036, 141264724, 99517005, 146201, 289992410, 289846209, 243981548, 154753591, 433684019, 67554392, 370794333, 295533876, 7182497, 260758347, 260758347, 400831331, 83731760, 488163053, 198576368, 212368720, 120295966, 194496017, 257598600, 36541683, 5462550, 452307105, 446844555, 359664095, 261786010, 111967379, 73887816, 691310693, 652238524, 567403657, 802934626, 684206303, 673367168, 820364077, 713572068, 199545359, 250305362, 216950641, 474067786, 247101231, 405835151, 215677356, 117310968, 21663575, 354355049, 68766304, 62039604, 283811770, 144146566, 596064650, 315598748, 72066571, 317800369, 250811885, 296933744, 420305307, 464739437, 70620230, 579294336, 106497879, 417805337, 36145309, 92118935, 874207713, 874529558, 722412473, 509756058, 520863966, 444025731, 502437254, 122572827, 680780530, 330972343, 221272025, 605002027, 730595352, 711183963, 889284140, 651897746, 156394588, 154242040, 395546341, 462240519, 555651931, 32663248, 341026164, 23623837, 432586589, 85448759, 258612542, 9772410, 703591174, 693818764, 167009129, 487297739, 52053206, 636543740, 425910962, 107514795, 277801198, 420649749, 336457315, 625748487, 34487095, 334854264, 282967659, 240310366, 228295099, 606142113, 841117883, 561058874, 310977519, 536232927, 246816426, 63423655, 241168438, 122018606, 58510097, 146502541, 92557860, 242427823, 284165372, 88276832, 323228241, 13387672, 76944716, 130496427, 356271261, 402282293, 377333816, 287519423, 220452420, 343983953, 740664031, 182406467, 247326320, 117043498, 232380998, 108443929, 19371055, 336681124, 573273134, 594561576, 130959506, 207508034, 254116253, 17132773, 406617608, 232996854, 200579476, 281115743, 451537121, 500175354, 42769860, 304529388, 331040097, 316697664, 124560860, 19215964, 389658163, 72694556, 514095488, 138027016, 616936018, 419644681, 115469111, 304485950, 250906797, 219834134, 462553331, 30713830, 317900686, 170774016, 133122450, 171163615, 75817140, 209870938, 193771409, 277677143, 126765220, 528189384, 108799339, 55165683, 82357926, 95122640, 81091578, 138021113, 60384812, 960655540, 70707181, 172314441, 134485816, 263050817, 410439417, 383682454, 211171448, 354575651, 945046280, 711179622, 374205114, 595264384, 600840999, 212649039, 272132125, 35145867, 707850400, 472015361, 182109404, 279647887, 94530902, 293858782, 52467791, 494492300, 410424382, 735350308, 776620862, 554846832, 337703855, 324840247, 92919028, 796284659, 59665727, 562244708, 237355019, 307128665, 448873554, 586445688, 557763469, 217530883, 43598788, 162006754, 719295477, 65171772, 114105972, 90275066, 634169910, 245570646, 309984631, 120515381, 2122948, 252097278, 252097278, 73900967, 326689540, 705907351, 153603391, 50744211, 417171044, 121741740, 182372188, 354125546, 250084211, 257305927, 662578000, 58739719, 497261466, 264535084, 106910859, 423624477, 423004160, 575175675, 352148821, 99553776, 193118837, 656665221, 641986861, 282225939, 248076364, 609525471, 486756756, 505876973, 119969294, 742008279, 406526071, 492085188, 783696465, 86897027, 876119737, 6440610, 682986746, 682986746, 474655865, 564561105, 391628719, 395192393, 585633885, 468782676, 112462462, 388735043, 177168056, 333165564, 784828114, 170731065, 233973193, 141425275, 425327396, 346275351, 348421146, 313049056, 188636156, 131086913, 111246572, 111530030, 69003539, 114696002, 511449347, 698520735, 512611501, 97780454, 363027355, 387222114, 220319205, 371043506, 283934938, 227167558, 318076364, 100558356, 480607551, 74235512, 195217332, 315940345, 521484505, 572032028, 93585008, 293315163, 103042762, 41887949, 337998825, 586494420, 204798839, 305248228, 542025269, 558633375, 469504304, 125484249, 892048361, 233415935, 600847452, 675468498, 128470756, 110126825, 446414445, 56390744, 568258220, 32935437, 660320158, 274583571, 124399005, 65857208, 269719527, 468620909, 170705885, 754672469, 40235009, 554941275, 330220937, 682620274, 534672730, 793223688, 116569010, 182927755, 256572330, 119631347, 16224967, 107087273, 176516000, 394838081, 791837301, 381636167, 297042470, 94973803, 506150927, 81939258, 41591515, 368143494, 704623592, 368046532, 430660983, 539107531, 195725298, 40415537, 265332020, 580884084, 485566763, 328007363, 652612732, 184137453, 468356779, 155494627, 181388001, 21411746, 388430666, 53569866, 664549002, 57523663, 61614340, 217008010, 668759252, 329935912, 249771270, 220406776, 73134297, 285384897, 7316928, 286775649, 279458721, 16204309, 354595715, 276812401, 191690052, 77747248, 119376851, 231280034, 896377094, 179817893, 79298397, 423785726, 273974293, 321795450, 633553046, 446588225, 189246404, 400865047, 949471790, 688376753, 197170685, 7525235, 184702546, 177177311, 185733813, 210447451, 678123048, 451514610, 175906926, 456113146, 278515499, 113263515, 240658704, 490816154, 554084250, 737598798, 155874561, 298888507, 305284368, 787045144, 511960851, 18317572, 78796066, 179988502, 779433588, 61705116, 534731230, 91298363, 166232030, 356710308, 215980467, 40203664, 389777080, 131238785, 165845378, 181967409, 458791659, 237691019, 102029287, 1556076, 213436760, 211880684, 67942325, 727299621, 231431247, 147118695, 70476487, 430882070, 402663544, 33794983, 404087024, 139157464, 397151212, 328432953, 715598415, 680858097, 155899958, 238215869, 334609445, 202278444, 23062565, 726872301, 116647447, 181240065, 816722423, 143342348, 580105882, 716358027, 14604983, 815062782, 588640899, 299275167, 583741293, 388655437, 67489397, 282170185, 265824184, 244275671, 543586576, 604162085, 438296669, 131596547, 104293646, 312822394, 75648085, 386418053, 328776474, 619792760, 186499565, 133617033, 268107465, 170310107, 163026761, 325847538, 173846281, 588361601, 310913008, 95064808, 520711431, 565448481, 326450771, 647901455, 157872626, 81006610, 357213487, 52768585, 71592355, 534370286, 586940954, 537699330, 610099493, 245797867, 693371846, 147213175, 900655192, 709962587, 535136384, 187499050, 6190695, 113767347, 107576652, 139815344, 335680133, 313617816, 610616326, 790537550, 106785996, 626583136, 138571481, 171762551, 210737934, 159476680, 761774835, 122570603, 200929794, 225048087, 128335131, 268333541, 46866218, 188273999, 260330604, 126394412, 21272136, 351796075, 325879978, 240590309, 73670780, 21304353, 252007499, 8986109, 370299668, 370299668, 19506524, 633421829, 493641736, 681676589, 217504038, 430861189, 702203219, 548792912, 318460609, 121568297, 109992725, 113978613, 540425703, 35428370, 837085112, 941248, 703824677, 703824677, 139146245, 545495273, 302690121, 83661872, 706537639, 402067447, 478482650, 758018159, 56486283, 632434925, 599857309, 60095574, 124755722, 414909815, 540801126, 747908866, 680551394, 98831585, 620373857, 577641750, 586571532, 541166936, 88942837, 479720983, 135878822, 494164885, 46068132, 157452383, 120387223, 453137035, 245480951, 350751919, 132070987, 126472338, 289343374, 155126312, 132781099, 190977929, 449341419, 38953261, 576626495, 52489622, 462064160, 119455392, 527076811, 625955755, 804255824, 200826182, 207170057, 581005935, 155938973, 262875807, 492441725, 417673543, 469809073, 610304333, 617835095, 451179280, 19746756, 31503499, 179393365, 572228923, 177518033, 112709272, 100472275, 368875121, 848714608, 601238059, 25344107, 139654933, 359021927, 401826553, 173322064, 85116687, 40727436, 274303464, 699278666, 53219211, 711200332, 400283873, 444756207, 576162284, 154656864, 75816653, 131835883, 199545738, 296216021, 63389265, 325772464, 476346974, 247057324, 407996600, 266701580, 193217167, 128438962, 469077799, 454625780, 302695795, 804792525, 461911114, 141108441, 214898397, 120579701, 446766258, 731205405, 886223707, 328787393, 8008082, 135397419, 127389337, 84359931, 340028193, 726747918, 534131064, 242299457, 466546283, 781147109, 29098643, 456548301, 54341745, 281815819, 123659076, 456676256, 277906680, 340213656, 246543441, 264184447, 455339761, 788819614, 134362112, 837937084, 861413114, 948104133, 566208988, 354420553, 836016594, 808571707, 358293969, 247447027, 58252917, 640171054, 205957978, 550981709, 820843815, 394384657, 355243508, 413080243, 251399546, 93918818, 193157422, 597014939, 437561712, 300051833, 738126761, 896173906, 472561304, 110695823, 260747851, 852398540, 961887391, 218624739, 312985104, 122547902, 373471178, 69922899, 329697466, 321628442, 157644202, 205670119, 608924950, 31128306, 565118478, 455677269, 11898090, 545059221, 311755537, 214743778, 723165455, 583136599, 374062225, 187449472, 475854190, 49906640, 369188087, 508790229, 14164687, 103806961, 253634309, 204029733, 510052505, 142010890, 56530332, 293682270, 81144512, 223842018, 557941153, 142437981, 154249090, 306540992, 333303372, 97321979, 569344603, 8041374, 748930219, 740888845, 602770611, 739386507, 628680103, 66043807, 28996842, 205479549, 107481198, 237558941, 68086589, 57814278, 643219045, 314477517, 348663356, 221350257, 479348087, 111445247, 824758714, 887696544, 271154807, 298380232, 534822220, 868355053, 51382244, 118641124, 714924452, 30379940, 437819355, 75151478, 299634440, 863766657, 382621907, 142217118, 78376126, 550602679, 692011884, 327554907, 75702172, 388347629, 792455365, 707461784, 145740022, 357671872, 178951226, 88730451, 123083260, 142074792, 788211545, 421369479, 541062710, 445497350, 54836882, 451896819, 554529790, 113914995, 100386333, 348040344, 155217879, 536118996, 419090708, 173079162, 490272454, 390060788, 580295214, 139722832, 106815583, 275708230, 394239935, 303058999, 32248597, 950432837, 505517889, 29496968, 348364077, 302465451, 242014916, 170643093, 167616217, 124509881, 75680326, 13060308, 188828630, 505922026, 162337948, 132738006, 480654276, 299404185, 40554010, 126340358, 449007831, 151594160, 423148730, 615426009, 708068814, 220935530, 157624988, 407034228, 42208735, 467301373, 170209400, 379135316, 65332495, 534369006, 250661557, 562809592, 63789410, 721093162, 68054437, 575330610, 60882000, 172158011, 153729451, 156506865, 146830522, 190264949, 13304933, 344222787, 333160541, 622712237, 76936886, 81233518, 251135636, 491408603, 98663907, 57688273, 295235796, 329790733, 183738922, 33611397, 516196950, 429802548, 355591314, 207368748, 190824129, 20705935, 83061818, 195504302, 495445669, 287008002, 158058727, 184946041, 369960309, 487650844, 688033413, 109699783, 52757974, 85809237, 58983287, 33536497, 153736543, 508080125, 271224749, 360385523, 503935721, 33698167, 109402553, 381954878, 160227057, 110353925, 482881968, 255754928, 269907718, 179324227, 260845900, 270868617, 300137836, 223659504, 526286699, 64546268, 655052072, 616680431, 134163679, 446211931, 229797974, 696985160, 747904789, 474971894, 22805239, 247466251, 313057314, 304802473, 553262763, 81603913, 217016245, 658533403, 744436445, 330482464, 45334472, 323509981, 174848024, 447711275, 209026426, 196969058, 20072455, 678753093, 828336775, 811501771, 293304688, 53801245, 213973967, 254704513, 67226231, 279470210, 755563602, 185531049, 35829687, 717191713, 837726132, 434303041, 370815016, 691747701, 182688818, 234289940, 324456027, 88551987, 424867445, 56359037, 121771051, 201196855, 240372994, 462877688, 27081594, 389637728, 49337001, 266215874, 467550470, 255699980, 504414275, 263040799, 356134000, 410243475, 542797018, 67068777, 629905475, 255482453, 322362136, 253670432, 29558675, 354075798, 575904342, 145875240, 675142856, 642524023, 403136500, 110523635, 532165950, 58399373, 684795203, 69577646, 235554142, 414471273, 486943525, 342486495, 486456510, 212488914, 206334344, 43397504, 675584956, 396492592, 72579037, 270384823, 114391665, 629350088, 319571562, 57085895, 251909103, 244038059, 571807024, 664256360, 854609779, 108929981, 859733785, 755563914, 69951414, 212235490, 89788600, 247613048, 401393049, 680231702, 541403676, 79779066, 393547851, 394835658, 562595908, 183422198, 457163495, 369809557, 158595009, 217895058, 425661575, 320863519, 74331811, 26035078, 150751654, 725117341, 325761559, 529245150, 183138074, 14444679, 401708157, 359465157, 207125063, 197581021, 246811911, 768266426, 268642833, 394744623, 628637997, 225659020, 369210652, 227100453, 37323509, 393653498, 519629317, 163962893, 478240978, 740441649, 183777606, 601293394, 146640734, 471841424, 218367697, 30593576, 325317625, 239516546, 137456015, 558314076, 619563579, 282362547, 534474073, 220255404, 111039144, 515784461, 495407831, 309172448, 355932252, 165087903, 509991993, 543804234, 608744816, 214107302, 118245087, 13582822, 237910810, 482024432, 130573581, 201032651, 141713456, 411157946, 508676477, 297277531, 104696734, 65432534, 44160629, 381732203, 354634865, 576859522, 879449253, 124113450, 98791461, 473410075, 21144509, 235557654, 337831007, 294694873, 587677385, 217746765, 290811316, 342144775, 795777537, 35365051, 553309919, 252039773, 677182632, 569207624, 183601633, 26616479, 532868722, 83348153, 121523863, 103786104, 571714552, 885823980, 962495378, 85656616, 705125457, 757234185, 198491541, 453553647, 403585310, 523335976, 656529326, 227677206, 138007502, 2423485, 53811839, 51388354, 428149408, 178980008, 60035889, 148572661, 480149050, 636637965, 175932839, 344111832, 289569388, 258869673, 337526114, 510898870, 596970504, 273115904, 119533980, 115661941, 17817584, 167399945, 551040181, 148342258, 495580692, 464747617, 210662373, 108406344, 31959121, 24545412, 168859613, 46536106, 40117673, 579965099, 302819155, 597440658, 405459971, 50908654, 92392926, 301839072, 16874472, 263592437, 896656265, 283723981, 451199343, 332418341, 64791561, 250646382, 738946324, 2517050, 27839272, 27839272, 712065119, 527298414, 22119171, 307217618, 153357674, 504525581, 663817624, 99879507, 34044358, 640960707, 85213466, 699534340, 67257966, 679549414, 408288351, 104892019, 229042549, 276129545, 801003696, 640280273, 267471384, 607580986, 226952674, 395150296, 257276001, 482754079, 187994439, 561923226, 234473206, 59604539, 402791842, 292489926, 405938344, 297925704, 310377389, 270165207, 538415991, 580182504, 719510562, 698191046, 272948096, 103263401, 350927797, 631754396, 723377689, 110858131, 37546918, 368288123, 373675945, 68992994, 95294404, 40260364, 499838149, 226255029, 134992330, 877535438, 640872954, 345831387, 155345677, 49213699, 467703968, 302558690, 33637215, 270341864, 176380870, 300113990, 125713544, 311025446, 793874598, 908462055, 518111611, 262815578, 102972784, 190551341, 101102053, 215329578, 788815853, 649560015, 549064516, 750155608, 957736664, 158428368, 184526248, 356058932, 638066371, 805195528, 253361930, 161043570, 291030448, 191293984, 71913455, 102867638, 718688035, 401073262, 200246688, 264997712, 376228215, 796931085, 225580891, 493491681, 840875677, 263136478, 159070278, 33193802, 482512669, 389404306, 283268039, 515144504, 575568515, 770659229, 71639178, 178768300, 608065005, 523615506, 106134269, 208358710, 17575547, 172971640, 440419395, 661804949, 91936036, 980911346, 884548, 442290469, 441405921, 430919315, 790322120, 422577090, 99081673, 369772251, 72854444, 5479653, 111277776, 105798123, 129488329, 422362072, 456959543, 148762521, 644744036, 325353814, 178697274, 155906028, 721176350, 817028825, 568592196, 51540364, 213314435, 302080557, 469639258, 183739185, 50126167, 189583908, 21875079, 276497395, 107884801, 549264818, 903722778, 17125403, 487406398, 503985924, 364342357, 403766292, 176809366, 705285294, 853847820, 764687270, 486507700, 75784496, 465209274, 672678105, 154224376, 837797086, 628876455, 206924809, 272482628, 603788337, 174474413, 118546007, 481038162, 710216478, 165110517, 23358929, 378039195, 92492475, 544397311, 569930903, 129444152, 467399973, 278949364, 143489467, 655665031, 531070839, 689430798, 939085368, 82483127, 346263279, 101287046, 83216579, 104249008, 213632490, 294631431, 358800764, 185346936, 283747677, 172439162, 355372590, 468198002, 120112666, 380506148, 489721842, 354453330, 106220734, 172988179, 156830783, 586104660, 92596467, 406497631, 32925417, 464213564, 253866721, 334084764, 437496312, 78847009, 39018499, 528706361, 316419318, 295937998, 374419848, 262244092, 761843417, 1206403, 797638966, 797638966, 553512976, 425428505, 394067883, 332049803, 909757255, 94956816, 504457544, 206359605, 255806089, 134053331, 373677489, 780463432, 815218996, 150962000, 938329335, 316044099, 82322352, 603942803, 669911983, 636616046, 75891732, 716635758, 239261197, 203813023, 446944571, 418362291, 567646048, 50187124, 74629927, 111740813, 659222184, 102387261, 326611080, 251699080, 344883583, 580612814, 176879735, 164094914, 665774306, 524595698, 130124168, 374552622, 27159887, 126094266, 632330520, 512821623, 335994453, 50284740, 322735059, 18423580, 41064283, 591115088, 217839942, 561023394, 164958676, 62488073, 757925219, 575799491, 128010421, 106535280, 248444298, 253584007, 688925469, 656669440, 877127004, 463237707, 210727242, 182936735, 384474442, 48427195, 185468793, 231759105, 547140412, 56342204, 715512953, 8197051, 472578508, 464381457, 381636594, 15886047, 56446391, 136611965, 50207713, 248219866, 34130920, 332217564, 154155649, 50873921, 135139502, 733835820, 213124544, 292401536, 87453973, 238924492, 102174672, 376625717, 371323862, 254930509, 647939767, 644004173, 157824477, 258752204, 160302590, 523545848, 871154183, 106410008, 563023802, 355005378, 141037476, 111242678, 499700405, 241015325, 217935504, 743553909, 365339712, 405831926, 38276040, 31424861, 800385785, 288983968, 40555926, 70040480, 327027580, 119396777, 274038486, 275340738, 107589294, 256147085, 110922294, 478450216, 39097766, 306526280, 515346105, 460829210, 285854112, 313406540, 149913197, 8577151, 386338653, 386338653, 2756070, 100791529, 98035459, 224153157, 145164250, 72783793, 361975780, 347010924, 690028816, 718829118, 753280556, 70473351, 40246911, 634129235, 17077727, 6597762, 253734444, 247136682, 755439053, 825412606, 212357356, 252131353, 448208772, 709650686, 596697099, 562615851, 37650227, 548570860, 311344009, 44376643, 249062028, 384392140, 211484783, 272044840, 203215481, 308740507, 226640229, 454201161, 151902934, 347731651, 609503994, 411461252, 701148909, 556867569, 148161894, 226039766, 240863336, 63551521, 178306289, 642350488, 380910754, 310548787, 695797988, 163055712, 114672579, 141558769, 417175932, 271260249, 43496546, 197055682, 230850686, 330547051, 403826500, 660960420, 503075842, 284101933, 281142410, 339104271, 192117081, 292952386, 408010482, 224769721, 146592057, 62989378, 319548988, 412016608, 134968284, 643148836, 601247010, 190124061, 157469458, 208162680, 313798460, 340522843, 360712165, 920744790, 139094417, 503205677, 572955710, 657286406, 37704157, 445192047, 68579573, 189883942, 215061633, 581122667, 148949113, 298194407, 485291989, 211522278, 288564785, 326436878, 25750414, 249346614, 170666769, 188824607, 711579559, 135333935, 128730916, 36499418, 334533969, 279467592, 861825778, 894231132, 303765949, 142771825, 111995478, 264928632, 448278555, 307914103, 289037569, 257326363, 547540436, 353528525, 472651594, 345769089, 206105147, 226912064, 11857910, 229791511, 268766812, 188519360, 142332066, 172663892, 209454762, 93823868, 326477628, 102716331, 792560797, 778052437, 245428482, 138956765, 292362127, 810588737, 85937680, 800976616, 50612052, 50840749, 516102435, 224722435, 376994322, 321914830, 307233731, 139586350, 179454658, 233177605, 617194299, 261975658, 433642433, 519244667, 63435006, 47164025, 272725636, 104452410, 43016386, 505786185, 348020302, 533202192, 67087242, 678656786, 575235886, 660333934, 221238977, 339177166, 594218976, 435577474, 678518256, 93816184, 516303855, 91029622, 421644230, 796359477, 499082948, 200434741, 222289880, 285262905, 444067027, 162484603, 375083151, 34575724, 614001347, 154375557, 120788347, 537140878, 118831016, 798582708, 228531183, 205619158, 59226440, 175110029, 670404311, 297361316, 384237879, 250177476, 439914218, 96406496, 950819342, 646080598, 490662419, 50610487, 200727994, 917405448, 310825990, 144184128, 351604622, 77533566, 421071891, 7756904, 274265625, 274265625, 326591952, 336313253, 555423955, 70675407, 275186317, 427483950, 530633472, 428480801, 168429477, 245277733, 322266030, 335084427, 497856953, 12567338, 6592447, 239599928, 239599928, 227672115, 101270136, 170148251, 265808184, 20959527, 345573150, 661494605, 714659810, 226733466, 103716744, 39690832, 3441139, 531373922, 527932783, 514235190, 218759954, 240420913, 298077004, 823466261, 658608202, 523813198, 356789269, 69824391, 86818666, 570442085, 706244803, 88354373, 785551813, 4788122, 10767165, 16141788, 5979043, 11353666, 5374623, 801341243, 795966620, 212744397, 273586342, 334666370, 399934929, 495195331, 156681762, 251682943, 719127831, 907914680, 645756697, 97722058, 654955495, 126462817, 167940420, 703896550, 351987908, 530444651, 691053807, 350878942, 40819541, 57924080, 155938825, 154214674, 225751961, 622001301, 281357899, 235070528, 57945936, 433221791, 667149403, 582919973, 362722149, 169447106, 755816029, 211155273, 666015249, 658257031, 171563379, 664194339, 271836256, 323727800, 119256963, 1236857, 56745729, 55508872, 515891246, 100316302, 160251297, 453559887, 281365811, 253946399, 284421803, 81244981, 336636694, 578068539, 181018823, 76252599, 297138043, 322817010, 464042541, 105018299, 226956210, 271428470, 36786071, 609194605, 641685702, 251610983, 325879863, 122369675, 81574459, 604360168, 155263043, 96104265, 567453337, 155411298, 543941390, 88692412, 453877945, 659699496, 374819214, 67521776, 356943063, 28040446, 144771563, 486800896, 44543867, 488810424, 892267852, 353558924, 266276381, 442982915, 180182106, 385004744, 823849428, 434380014, 446155598, 801223232, 263980545, 344924388, 390253125, 596559028, 242016262, 540350879, 504963835, 29395170, 462655573, 750426285, 106037131, 378926115, 79505616, 299010292, 671868904, 73301221, 127623220, 675892363, 125931621, 810177363, 332232187, 110040940, 259906018, 239047559, 198729329, 179746216, 717968682, 583806139, 450461353, 238148235, 444961543, 499675535, 45156060, 320071633, 29629510, 221505731, 398983030, 42495251, 753688573, 227992637, 140927613, 178143641, 158609649, 119922319, 86930781, 293299429, 62574872, 305720153, 20937051, 140537534, 144651105, 390902516, 832165545, 721238869, 118516082, 352256252, 356736917, 6855897, 381387114, 374531217, 440487299, 142095351, 37964066, 105471491, 69969941, 162749638, 124787124, 431502866, 86065660, 399782935, 113133956, 386827262, 419155979, 259317759, 8738851, 451905277, 451905277, 353673855, 288915905, 537226013, 349469796, 279395809, 196824132, 197957565, 796625478, 513637137, 106857195, 364949585, 32364887, 666828808, 425642149, 347911170, 36525720, 639869782, 714793969, 125713979, 176757951, 927317308, 61998216, 599522908, 600608116, 106677823, 680714309, 570349491, 30131032, 281953492, 314490583, 527761020, 23091821, 698693367, 145449467, 699773402, 366301112, 199232705, 380668017, 286876776, 56039715, 192767826, 212775462, 119501225, 46426673, 590322065, 228508363, 501543979, 465978862, 447131235, 605232414, 403043880, 484270013, 465763978, 63774363, 220184291, 627955646, 141434258, 223039779, 373048113, 126229238, 78897513, 349581983, 177383518, 166003030, 57960150, 527203235, 203224462, 366549625, 7649780, 339401973, 331752193, 284606924, 497714152, 452845023, 584694318, 849991904, 222579703, 25646428, 450710809, 199127014, 506560455, 178730028, 237046233, 339368909, 693653670, 204264207, 145465155, 321825037, 416637282, 570285776, 99353871, 46645269, 281510789, 142610051, 659237876, 22147718, 505547253, 124890668, 99060679, 171774482, 283761453, 277780285, 659375267, 727347009, 807162597, 389337095, 217367996, 674195939, 147802451, 97973293, 811299144, 610430632, 208703569, 539474876, 419579381, 256595977, 16522886, 740354817, 36030328, 7602221, 144043165, 136440944, 266689018, 300783999, 486813132, 148070653, 256291925, 259931468, 293242626, 354566251, 163371153, 264362119, 337021432, 644667944, 559957417, 368472002, 223376358, 885832247, 342844510, 83645664, 214417662, 74002174, 393076151, 572725509, 154216124, 105389168, 346398890, 427470109, 60073422, 218832055, 77979252, 138607290, 25869314, 190023402, 286891158, 57810351, 653572826, 157073418, 859518142, 190813776, 27348802, 516968552, 520609182, 205403395, 61474138, 87961665, 495935721, 395070047, 494379638, 110397451, 487785310, 263074285, 12447943, 83684882, 513168833, 116498660, 787594742, 60988504, 355721223, 196352680, 234468832, 458015120, 396140597, 479285513, 134848831, 493099833, 668914641, 293698856, 422500762, 135574435, 552959892, 628371425, 752815712, 119134607, 6982495, 54097215, 54097215, 792353643, 209980955, 210388420, 636194975, 723933417, 762567186, 451528785, 402259576, 702765986, 21753133, 709733716, 468430247, 370816795, 902747599, 707950711, 214901079, 310037823, 339859510, 388365207, 159945755, 95230746, 25687346, 562655902, 71080436, 718403482, 630188794, 392547032, 579799658, 479697573, 537244697, 360432755, 15296625, 386538844, 24303020, 51672912, 258031830, 196469489, 544094325, 524537367, 292932562, 278980288, 25578806, 87213413, 428285973, 12079894, 734608026, 131655880, 425389790, 173677426, 258697730, 869941583, 122856249, 204614411, 205106367, 247454462, 230328564, 96087670, 274503447, 790968054, 28881111, 77649601, 351072092, 17941477, 494040456, 327424532, 63454150, 270329657, 212305253, 53591939, 67561953, 245356942, 195388884, 116825011, 376180971, 318674055, 98471460, 236677730, 692569879, 174047773, 143898071, 202177397, 186386342, 829116303, 592543072, 69667273, 237398518, 288098068, 31179717, 397956021, 262863140, 146002452, 282828697, 805872338, 872519778, 295981289, 117399873, 108430680, 606938988, 301218524, 748009322, 445365098, 665113672, 970921312, 536182686, 335661676, 158069895, 600443114, 798142054, 69517030, 309018821, 409476028, 710834746, 537915849, 90542254, 355925093, 835475090, 729824840, 20176958, 521126740, 594608714, 661030294, 442900949, 610217616, 401741256, 289237768, 575543305, 379103956, 155574116, 290057329, 27738115, 831290839, 480358967, 374161910, 848831051, 312849121, 450452056, 121281061, 576573541, 91390183, 209655549, 355083511, 531290102, 154722677, 139536970, 93973121, 486462609, 339276773, 62480024, 737760859, 256501736, 129835376, 74459244, 509888459, 890787153, 859595697, 455751777, 27746440, 386069211, 59766848, 453296622, 328348828, 151782527, 359643405, 49220727, 146047015, 478347738, 72023734, 80063737, 210525610, 242923564, 240676676, 410300611, 405038842, 567990831, 924780724, 423064520, 352489225, 68624639, 875513077, 501277251, 389872455, 220794625, 350230157, 19790548, 425686700, 402156323, 27245311, 205408270, 428645183, 590823500, 202583593, 51571531, 147563272, 444249621, 595599647, 599553153, 167315101, 26029425, 325297649, 258984562, 13684241, 15878621, 163992713, 166685473, 593592109, 859167692, 11809929, 83567589, 150643733, 650920049, 400881852, 421908085, 463511927, 404972743, 375984493, 363166329, 556044711, 253334183, 676742409, 282050308, 425667849, 628401295, 789779513, 810755548, 245772172, 334136659, 254832853, 612781321, 692487266, 145180818, 313519906, 300297593, 677484992, 24818896, 790756709, 61361844, 175233929, 191979452, 323753395, 191117119, 339304674, 470875613, 86021353, 167744976, 208448019, 230776784, 298153021, 244028046, 55578522, 494267795, 430411242, 874497204, 22303932, 223951834, 555582966, 770921544, 771064952, 539183398, 223562181, 29205661, 855094081, 154267579, 560009371, 63103908, 283131507, 38302610, 64791344, 202380745, 574599671, 208198850, 397671534, 353633139, 250150940, 423901009, 291929712, 540780547, 79718552, 554421505, 37367605, 174384048, 512336442, 607644391, 200544755, 17911731, 418172966, 131415225, 125578265, 261479349, 190298097, 289302603, 348723183, 471608265, 281383231, 178932896, 47643930, 58994853, 127864991, 43773119, 156658954, 30270080, 95393019, 550114116, 593681015, 788988505, 467214027, 431084440, 174941234, 148112909, 440704719, 71395257, 15336167, 220865270, 108266981, 250381065, 240467731, 208715658, 26197765, 238507602, 387690743, 102294326, 746648776, 122266843, 420891435, 23160008, 256750174, 25021608, 139516906, 34350187, 456850373, 358936516, 150887431, 14998249, 415780715, 31988527, 177828502, 413190468, 163686423, 229013604, 201738439, 152505962, 348289941, 2777722, 137454157, 134676435, 132709676, 208406398, 150468758, 782160861, 710535527, 98421973, 486997647, 716081308, 189245043, 514049603, 186973710, 81221354, 67399602, 303400414, 406861286, 265129262, 420410472, 698392385, 217583028, 508148368, 840906774, 601819184, 537371099, 437351279, 158405362, 272540774, 267218109, 243206632, 216315379, 803264766, 835158320, 496763894, 414375538, 632618802, 112934925, 375635322, 581653124, 19320449, 82854610, 251607282, 480566908, 761833828, 294506106, 243734777, 684894088, 642826630, 157142613, 210335684, 55619228, 58003163, 236854857, 392992768, 649118044, 458917746, 217737835, 458117094, 1501933, 454499639, 452997706, 41226497, 36705929, 831004185, 42252383, 14357666, 82136105, 650587389, 76760640, 84136736, 35020109, 372181651, 624206658, 22972941, 325078019, 409585326, 369035172, 90996080, 680993, 130783174, 130102181, 140643969, 125860957, 573345264, 155316902, 631200374, 96842565, 410256115, 393443142, 395359032, 186669861, 209696971, 667020254, 166709424, 181155184, 816437852, 431231133, 247881110, 169426976, 398175220, 152048523, 568284415, 725731142, 114329352, 504081621, 304186359, 685174567, 31640374, 160668941, 14657605, 344099596, 315154021, 9105644, 658849901, 658849901, 264268972, 70814178, 750967280, 179640453, 409370310, 613176531, 814116212, 708300067, 384376192, 301547482, 461917479, 207119954, 184270304, 679617578, 775305036, 173975525, 724349043, 350318371, 581736635, 106158488, 725836796, 170024239, 327554514, 230349721, 458897164, 504741870, 8067539, 49930425, 41862886, 762043732, 668107945, 569520271, 139121420, 366221051, 135955599, 472001288, 13090564, 2453544, 208298928, 205845384, 725570496, 85676932, 695055480, 273742866, 90230705, 405989651, 674575684, 775190866, 843530923, 564421986, 506285840, 644684910, 147987385, 515644564, 387235100, 428951305, 541009696, 430971805, 307661338, 86116844, 396929964, 359295608, 375947925, 50002109, 525138422, 368671093, 25854057, 413627600, 179478903, 587906942, 906546136, 227583796, 48993819, 357653350, 654271798, 592648508, 309443626, 227231315, 135550766, 13772521, 497213118, 80174596, 79736502, 492409496, 147140424, 573042225, 368689983, 216462950, 261672861, 427444793, 285400153, 136441436, 11523358, 634859304, 224556280, 238838028, 126012171, 417361266, 638040590, 155096457, 72276313, 885944506, 849525845, 104968406, 256130641, 288488764, 227841893, 208741566, 311190148, 119088097, 110346279, 346083884, 788792279, 130305540, 518281904, 409235296, 49408225, 433142360, 488710518, 220333600, 16711320, 243403779, 522919331, 130520378, 222397553, 274100429, 438785933, 498732603, 197316728, 740252329, 354238596, 7848433, 193801040, 185952607, 15011906, 662238906, 362384035, 349865462, 657648181, 126116553, 81324750, 223051096, 13199108, 711817826, 380214126, 507989243, 116093157, 57848037, 59698896, 919349185, 873537968, 228705457, 49885466, 205788893, 843158575, 965930151, 274961664, 186249558, 409056836, 41883220, 328671585, 326336488, 257708446, 322135056, 633125087, 468091468, 470022435, 679393410, 107309473, 767759589, 953715742, 40091159, 699809530, 566054619, 532596479, 293677126, 264788489, 450813621, 502394631, 316992604, 77533872, 380894217, 587930817, 575498286, 329060189, 105389254, 379893589, 787221243, 400202999, 25157389, 200191279, 243571337, 337803859, 204751477, 205450770, 570383439, 316040664, 127977538, 325121539, 451044146, 558222055, 408097999, 183534819, 674503169, 646860538, 59964779, 187798662, 693834411, 726727095, 787106694, 239449146, 233331078, 221749674, 188852914, 138963769, 404182564, 210314860, 303732687, 23544597, 322829889, 832447379, 268329292, 139767463, 99764717, 303895177, 268074860, 654720069, 625890164, 144383424, 455553494, 301381260, 358047790, 601766040, 54733125, 116526882, 28344866, 500451534, 110712592, 12388204, 793581454, 36774763, 234610099, 226924797, 762600913, 228129961, 254028789, 848520882, 27302852, 16832972, 7617297, 934693771, 934693771, 244987259, 135099679, 355480318, 116618362, 189909970, 587577291, 154613422, 6293697, 112330588, 106036891, 236494489, 67762175, 81684521, 240044513, 518425, 150163126, 149644701, 513069106, 1411221, 417842904, 416431683, 246490464, 307022914, 565567452, 423824815, 52768593, 334260196, 13366729, 88420270, 27281673, 16384894, 12719878, 73185596, 183047291, 135555082, 71289591, 693583149, 78816593, 442807221, 480287343, 552789211, 422401890, 142785121, 238174191, 339887191, 833782306, 369467102, 467812603, 770990771, 127436382, 390753783, 428980952, 500781542, 17702820, 381304602, 734482863, 430644170, 274296310, 73263568, 291804734, 383231457, 13581362, 266016468, 95934864, 55657564, 287494099, 47668596, 476148087, 205321661, 79112608, 62493131, 58030241, 199964231, 181653779, 399513261, 419411155, 224199104, 145696995, 441810404, 45283639, 241566183, 517705598, 13197632, 780946807, 254636924, 134808360, 241184066, 252599491, 297487000, 290197188, 495021536, 425258402, 524701021, 582601836, 311095658, 357730812, 253584567, 855620368, 359743956, 115130758, 41909952, 107875046, 736312875, 841135435, 435552324, 377097274, 810091981, 541562166, 22561606, 322875458, 624038090, 619847858, 118100439, 188776849, 118161133, 27747802, 672325229, 830399274, 287747562, 390399877, 157121103, 766145794, 634264927, 82502457, 568659650, 319489457, 423242267, 175300988, 154964617, 289241342, 555605335, 160741342, 726262458, 45652756, 280856369, 352529335, 528123575, 262916403, 511105527, 298205041, 928815479, 898946766, 553208296, 516005209, 72317153, 344943353, 329118055, 677045654, 675457694, 169164290, 31241495, 241401184, 435923655, 171766617, 350247223, 198758664, 520248200, 627685146, 265599335, 26334024, 376743802, 16366591, 71920169, 114986503, 453306788, 273364731, 335748024, 569571451, 807057679, 587242323, 123077161, 71579550, 65543705, 123717840, 464873310, 265089382, 606577961, 481242750, 292789095, 678057046, 343261736, 358872871, 496775237, 370212805, 67716789, 32524808, 222506058, 193972669, 82873972, 140038516, 143218972, 158862084, 147444784, 170072133, 285907177, 88518481, 405500153, 522082080, 578258421, 646406933, 165715805, 249320999, 102355208, 94426782, 22939847, 136465649, 21616688, 48687015, 191555441, 571236244, 776083709, 8377549, 14541789, 6164240, 33917758, 27753518, 314468560, 402321448, 210915199, 12074312, 552047835, 331213018, 288792691, 604906881, 503562915, 582452590, 756912731, 776676828, 603871312, 371277627, 106702810, 387360510, 57130637, 650059443, 298159409, 246368066, 43857125, 103812814, 530638263, 255718199, 21592074, 203630150, 207472984, 256888816, 845955080, 689701652, 677709678, 500578278, 424014857, 523139084, 44026573, 379058089, 67678891, 756464605, 419518406, 89740925, 170264271, 214825593, 388042493, 34793518, 148132345, 708574029, 488366432, 131147809, 161820471, 212246207, 422318257, 627864925, 23123273, 357141883, 99186831, 277395128, 187266170, 122816245, 614496865, 238366676, 563055368, 656328664, 662770348, 149729985, 127952101, 268373341, 579194996, 281969776, 367269826, 68333945, 715281977, 326385669, 46772300, 252861803, 408852436, 42138184, 374400180, 110028412, 210842975, 559731497, 351251148, 27889993, 4655721, 409941969, 409941969, 420813492, 177163868, 33621706, 968463333, 77703301, 417225935, 15247886, 46071672, 479059734, 373763662, 433551487, 291001944, 398672252, 50152725, 596843145, 448072993, 604647327, 349694210, 37220756, 33830912, 160857073, 281728380, 384186165, 251007507, 225979753, 516347172, 5614307, 909243598, 909243598, 328026517, 571892419, 883217215, 410399227, 98985663, 558550437, 952197736, 283528901, 110643174, 572613478, 204648825, 742181693, 7808283, 57451443, 49643160, 217346258, 852755320, 98453761, 62921339, 438598189, 563411455, 29326142, 763938212, 63460946, 506051900, 317732807, 480715544, 332252282, 35034849, 139631683, 418126432, 391302689, 293794401, 851751296, 802537879, 60850714, 372323685, 86677010, 113048066, 122530448, 160469715, 224878335, 360305054, 399856267, 208945109, 79606209, 226937480, 56754455, 161799234, 391156921, 305094091, 48379425, 131227043, 464166159, 66768834, 368653351, 141903565, 71638022, 149432878, 413841608, 646636274, 882144191, 707371736, 538143972, 602949049, 82779495, 316989269, 70327523, 243148849, 544890066, 185362479, 480854650, 499047638, 265920382, 44222294, 501219578, 149869232, 86997523, 83904159, 455693480, 295493208, 859545419, 419382713, 489201827, 617977092, 57613560, 67017493, 84137506, 22783279, 430573502, 156306249, 119821926, 294676913, 114393689, 305210428, 194381873, 186931042, 628495248, 326370505, 195966704, 2885890, 444159325, 441273435, 230831517, 333165486, 2447117, 395587125, 395587125, 547429833, 397336682, 206526180, 313734096, 766548097, 564660814, 291976467, 417302530, 61496474, 94304211, 165447292, 181422221, 280568297, 7184154, 280550262, 280550262, 490427498, 464125434, 11965506, 560065632, 312015045, 276637529, 656911135, 983263796, 485841293, 205263473, 198140629, 1040508, 178192057, 177151549, 296550973, 26087829, 420539779, 361124924, 18067898, 735822213, 220485374, 691109411, 164690975, 413530684, 81649681, 61690029, 90271852, 454282464, 774298829, 926570623, 108428294, 729222043, 19921873, 71958304, 82327918, 716405797, 699941460, 399267238, 114798184, 509585855, 17234903, 6602593, 222754076, 222754076, 15351088, 457361661, 332140204, 310498846, 383114522, 602222988, 63369857, 55172651, 324015718, 171598629, 430969157, 32798679, 353115669, 194124631, 241192035, 60200160, 301574701, 109146468, 372165445, 266533716, 110869930, 89219222, 271762883, 471434964, 107370391, 280133025, 313663393, 210003321, 491191515, 80619214, 159255884, 631844876, 2594351, 159876858, 157282507, 569557667, 366115591, 114247576, 303587752, 47476085, 76328511, 282453861, 467129414, 710382640, 682219334, 421397816, 480037729, 103120032, 163186533, 275227826, 492663833, 154136319, 153826725, 479094580, 576854357, 392310673, 61830927, 655972171, 120247016, 182726636, 286355205, 41839353, 99049400, 851008745, 843382771, 493611225, 443755240, 400170908, 415296972, 655629191, 308082848, 474678156, 540226204, 460699341, 461450418, 516333027, 719354904, 465585230, 85885714, 308477417, 231315153, 172315175, 301880000, 1703995, 567355906, 565651911, 381719984, 463596336, 950410101, 88631058, 590358838, 303678796, 557875151, 329773924, 372990044, 696852360, 963468853, 121580627, 91550832, 342375977, 66514211, 261852640, 177559792, 268552769, 359466536, 583816975, 563053433, 115286279, 89586875, 332173064, 492199451, 342467866, 290428260, 45072999, 211395934, 7256942, 630037729, 622780787, 488912620, 115987238, 128933771, 6742676, 44868332, 38125656, 86618718, 135716123, 86003633, 76523064, 322625202, 579803383, 551737473, 730122194, 126964630, 200622730, 70843941, 553603270, 391525800, 532420617, 294858773, 283426893, 174823532, 414360418, 379015870, 39843786, 330982462, 535825420, 225013291, 177502240, 191814226, 100717278, 276299277, 614499509, 520262401, 259174300, 255758066, 2660335, 371212562, 368552227, 80130021, 301751383, 434553210, 331746919, 61493662, 240756907, 286690622, 158308451, 245111638, 728374211, 490596659, 204100306, 361814307, 551449233, 431317375, 271979673, 29062724, 567226, 307775319, 307775319, 685820451, 97394551, 296972038, 262603577, 695227604, 458684373, 283328296, 469585120, 59808538, 284005714, 121786471, 616393069, 229592750, 60523896, 75407129, 523703425, 95842176, 769254993, 573519393, 539032715, 626128926, 370809178, 58451856, 492658925, 537261006, 57929717, 531631527, 379496272, 307138443, 207786105, 552811483, 137090448, 88860071, 309115060, 461686278, 497446136, 708038584, 331292204, 60372670, 75361300, 35528936, 122500281, 306665990, 357372432, 517276809, 55483782, 11421351, 75956126, 55408620, 146281463, 71508754, 117827383, 152889621, 502217366, 595856530, 84611482, 266421353, 695696357, 150098564, 580983937, 255878096, 338998380, 343826620, 297518348, 104319139, 287257562, 359393365, 401835151, 322343254, 286635513, 128345110, 104230141, 241743905, 558778678, 103495599, 86786247, 290639641, 65032037, 3934992, 239478074, 235543082, 361923674, 259985899, 116242351, 135457636, 328868135, 895931116, 959431317, 367644896, 452663868, 615883102, 678404625, 60214043, 197690535, 506577559, 650829565, 650139233, 525652265, 41678667, 112087209, 209627984, 629936176, 33869768, 129878229, 193521528, 545885031, 48968318, 145840041, 654759361, 547139068, 343049761, 790228515, 325305396, 87208201, 163213755, 263799245, 32502811, 113373218, 166140232, 174726628, 260350891, 277258108, 454067564, 87238868, 759155065, 845224960, 130097424, 501902974, 381983674, 677480104, 246126524, 418906317, 553739224, 442925144, 135936136, 57196585, 124455543, 817150896, 410555035, 33470185, 338967798, 679226504, 495173197, 584539443, 295307227, 471992087, 62023098, 556200451, 241039653, 11056017, 572736974, 561680957, 141327262, 577187913, 684349394, 154352377, 316645119, 37720634, 177005242, 160827176, 129136223, 257115436, 254068654, 133206181, 20969636, 583152802, 722849140, 633905068, 858877565, 853024533, 286544800, 473856835, 98630099, 761958286, 88846242, 57530860, 224079733, 310811085, 652246813, 642368630, 90638192, 271414239, 955441576, 370227298, 143589119, 239664769, 131606213, 119274877, 704920411, 362298561, 589275367, 761469008, 45141283, 91476556, 226816888, 857672062, 905987534, 50990877, 638630692, 688198718, 80352059, 557004488, 215227725, 333613831, 162292712, 659770058, 382171581, 161003868, 162118369, 146980697, 459103545, 185629348, 204258770, 151647899, 69984977, 109953283, 212973278, 350043171, 123621676, 759583867, 372097172, 390024804, 58151567, 63563402, 657692852, 414364370, 133205321, 115193966, 48222006, 513509082, 728343434, 553860102, 284501238, 378714283, 380494824, 262873978, 386276146, 153293009, 293181644, 554273182, 22641696, 899057697, 154027346, 124057383, 559082261, 322087120, 249473049, 543445751, 437865724, 328949842, 110899604, 169356654, 391895131, 680671506, 431940414, 241410039, 356655996, 282787981, 440212280, 739044776, 196804570, 15683550, 414686392, 36052734, 278056324, 571609283, 267064241, 316078948, 449441707, 462185391, 485906647, 493467348, 55558214, 27693013, 43197595, 87103090, 556364999, 56487407, 402822180, 289049205, 578457432, 798296924, 248401368, 560387219, 32089625, 481010895, 233843116, 567577795, 240669891, 22771397, 196917295, 308381127, 309053018, 147708871, 84051799, 495192099, 112406608, 376595247, 135146619, 387008179, 307585291, 391175325, 335274803, 226367147, 594262631, 15941862, 451364214, 289456941, 280517465, 771685547, 446509481, 196460490, 436986893, 409197970, 177464324, 454222847, 60551778, 20548143, 103202754, 319471791, 370198066, 284830817, 68635934, 6903808, 634048416, 627144608, 225358964, 31412997, 365284914, 385171013, 19862930, 60819393, 480163439, 108118538, 247378044, 944553079, 147790727, 35992839, 528538658, 655923254, 589132268, 291117813, 879384452, 852262508, 378965037, 426520803, 408593257, 400766176, 206609438, 242874882, 48485063, 146889590, 277634588, 57214796, 138931480, 88006032, 598961231, 230112318, 149320914, 203376073, 688133290, 81961384, 49917883, 149697585, 194342650, 392730125, 370660325, 335068739, 342430847, 334544687, 164202240, 469252754, 213689656, 561597027, 264789794, 529379700, 368854954, 269917257, 439804886, 387656073, 664705741, 671739034, 371017378, 608043626, 756363076, 548444925, 18194985, 530548142, 29566899, 199376819, 314397583, 538137299, 92848687, 203256640, 2992845, 99324063, 99324063, 810450653, 151373818, 55680729, 604936066, 103919169, 699049510, 105920108, 109383749, 125376356, 487276210, 129145847, 367078099, 84784278, 181101381, 368024980, 517528896, 284571943, 825692639, 855928708, 76428879, 781140288, 848970636, 405519256, 93189961, 38474037, 239586531, 369182912, 293308144, 484763427, 863246465, 18366054, 3358389, 791133654, 787775265, 363179941, 126815094, 464686038, 112836090, 569990553, 113492549, 237339927, 404530606, 233627387, 454196928, 189734252, 732832193, 75151991, 374149704, 320252952, 786507633, 475732269, 367050084, 112281439, 209532431, 673920979, 91485150, 379958748, 522594520, 698590938, 111671994, 547933795, 434112165, 418581050, 26663186, 632180102, 29143444, 642161829, 515550483, 176530146, 348807728, 20960018, 454613895, 432345611, 456831076, 410729090, 409520618, 253525504, 78718558, 57743514, 292102536, 436043941, 552464051, 48630324, 661058512, 222320506, 827016033, 711651113, 35259222, 89041925, 483237487, 452181845, 372623294, 172449030, 385720559, 920743355, 129550271, 416076608, 2922619, 522336851, 522336851, 954225355, 762837494, 700499690, 280780955, 58775458, 308480297, 469024065, 534023947, 102379019, 49570540, 352244829, 215498664, 634554234, 653848494, 162508840, 846825119, 421364943, 375993315, 714306122, 474616248, 146822284, 182726414, 93632787, 358388074, 781177868, 208459953, 110685736, 486745963, 515824121, 369514727, 89505739, 38414234, 163039529, 148991165, 754247293, 226414743, 455357895, 403158209, 27413149, 556815901, 394075952, 184115493, 466922300, 85815953, 246445373, 411971952, 86897781, 332305707, 497251388, 267040020, 462661945, 320677959, 475429174, 362401775, 79125787, 551359366, 12855345, 200917615, 672018485, 351574636, 76202139, 203686459, 156095863, 283196303, 4854701, 32223299, 27368598, 129486960, 107953400, 821651779, 814024830, 146697592, 350132933, 558386009, 692739884, 109425047, 396292486, 335923708, 81814539, 388474399, 94565113, 201740686, 8199990, 82209895, 82209895, 703543069, 593315901, 311432205, 205476412, 243738063, 242894055, 172164255, 688245177, 78929255, 517026688, 86531149, 243868011, 378215674, 87221167, 318555013, 439119739, 173080450, 185802031, 371894447, 175295327, 116064270, 49351628, 180526448, 20433999, 143387549, 4805085, 422851638, 422851638, 166237009, 92698234, 544759290, 499460031, 348274207, 18768767, 631642627, 248838077, 151416447, 553083147, 602076552, 133557173, 402767572, 161703033, 583051395, 391356730, 18700961, 507783510, 539789402, 68852433, 229388369, 150126308, 160993737, 198388815, 39884369, 486115114, 488462979, 123024450, 93752467, 714291886, 77008961, 52429685, 433917827, 50160905, 62289873, 193599535, 346864526, 490072241, 203184467, 158900565, 110162743, 57639395, 314868540, 643876289, 252840140, 118705159, 93282140, 66450187, 80805427, 46992251, 144841027, 64474885, 403096464, 94280691, 5286320, 10343440, 926661811, 10343440, 926661811, 916318371, 300039161, 58427559, 446582307, 272888241, 378029568, 85466063, 340356116, 323404493, 422053484, 213390421, 11549261, 482165836, 74788351, 163847111, 351691756, 299679221, 349396781, 151452045, 681471784, 79019011, 566437889, 98524329, 194604454, 266340822, 560623463, 392084888, 16418613, 60584347, 633582120, 10818337, 619867066, 619867066, 598110313, 374725079, 15079524, 125282552, 11762347, 273043933, 341194177, 419942260, 318587807, 63188912, 291078261, 130647169, 8822903, 17054078, 17054078, 595907928, 559474717, 135467691, 684808406, 149290710, 201741914, 633820859, 748682242, 188815500, 247083946, 170916586, 642155036, 361123628, 510527806, 715462433, 457912993, 371266529, 111654477, 35858870, 25899681, 303591362, 100369233, 693011913, 518413988, 32451057, 146950822, 253360757, 266959007, 123328835, 699782926, 108056780, 463756866, 499710920, 679360959, 342090317, 325627224, 767268178, 253861642, 407554758, 439132605, 362260808, 857683323, 553936932, 370798192, 179546987, 287664030, 280739132, 731607791, 158219263, 131247378, 648811774, 168940271, 200199572, 19424762, 198046624, 638763462, 170275449, 338665477, 47607749, 231744310, 776364798, 71682560, 14564174, 605892338, 457658912, 198551486, 324714031, 36305136, 364432443, 423109474, 486065767, 92163790, 142750552, 189988368, 53139066, 711462903, 805262572, 182391798, 392371342, 347498777, 54476639, 243265685, 840198354, 142407395, 355530486, 167317293, 563493903, 402488638, 331562683, 600418974, 158534637, 394918800, 283401845, 152013575, 574975594, 606528202, 481003804, 173188665, 253716057, 720327871, 432596450, 217531276, 184770915, 185206531, 11997210, 89159171, 215105947, 297553225, 907198325, 21580391, 402262242, 245538060, 153130479, 456992819, 260901524, 197634503, 130284610, 21455802, 109782495, 743631302, 629883525, 185861177, 174963502, 425480761, 690857006, 255045038, 241600947, 178082484, 38885997, 71446227, 255576266, 71326672, 171371133, 151229927, 93382536, 332747500, 216455859, 748235980, 831773648, 35839647, 53827053, 472012113, 203495985, 71080405, 258674813, 622158626, 50265824, 384929146, 118192492, 542530079, 883123703, 871642536, 543592963, 128996601, 497952197, 574830099, 732187930, 101864024, 425954618, 131998741, 153527058, 506015281, 435993220, 419400744, 131261128, 50293914, 330494964, 533490911, 529619872, 232283987, 171274821, 578421085, 149434441, 320173244, 156377705, 88411087, 237790334, 2516462, 247510868, 244994406, 182426341, 698642938, 201505074, 18001050, 472025923, 249709179, 247801317, 631525877, 696483328, 94615191, 486462200, 115210445, 756075964, 506403187, 453905606, 290875823, 86813153, 254876255, 26577217, 317951974, 46230241, 40855623, 531517777, 27167717, 190127367, 88901988, 601395492, 541962184, 208129591, 189758170, 379792844, 249035759, 351412475, 109444038, 309740250, 44603230, 212609472, 107395561, 242459552, 251090198, 89424363, 507627662, 3910581, 422727431, 418816850, 718555909, 67690171, 503837975, 197295098, 45140458, 99091748, 478250886, 553665297, 320881625, 239001141, 164114435, 94792542, 212847645, 169416530, 264728138, 25530620, 332085306, 294779299, 276457170, 473212191, 176352844, 121385581, 585244695, 315098882, 217788236, 579171921, 98765938, 101388127, 255662510, 857000905, 626388492, 447100314, 668842733, 687566194, 615984326, 184045244, 248466235, 482162448, 383269528, 12565609, 22505486, 216504885, 547062428, 652316786, 317115305, 436563020, 475415422, 4884554, 9413237, 307553499, 4528683, 302668945, 298140262, 59464804, 55607078, 27431398, 61778582, 65074631, 711603634, 748569270, 47964570, 420106432, 430316092, 586467336, 108957797, 120547161, 81737330, 468823120, 13324185, 174289861, 532896871, 233360989, 508263043, 405825199, 454507646, 471772101, 32576864, 154192095, 341818609, 896376680, 358149164, 55363077, 154342171, 110181820, 230394525, 320623232, 170143247, 106868661, 807195429, 285047265, 220075083, 389720369, 825467536, 187052895, 35914869, 176507963, 214965978, 440956491, 160870439, 456623106, 172338169, 344512434, 198533415, 275855791, 520766904, 655890259, 523474343, 133834252, 7910141, 712774866, 712774866, 817785634, 132700675, 302502982, 378714848, 589980101, 203450620, 160985729, 257149367, 9855734, 444160730, 444160730, 78353372, 134051676, 395048150, 393565166, 523831413, 183632619, 421025670, 10592975, 423160821, 423160821, 20201871, 400430014, 680655217, 354832807, 403829336, 608190380, 211575446, 956842182, 225599087, 132879317, 681514042, 123091844, 212382440, 507416241, 214411170, 211999318, 30779690, 51374446, 337916680, 603609587, 169369892, 315104735, 171742350, 157751149, 47878339, 53178829, 247345409, 265250182, 609653360, 504528890, 90982590, 732139651, 283178596, 391413807, 526841339, 243630379, 276772459, 656084476, 818675206, 152009006, 48543408, 303359148, 24534979, 301756426, 587853381, 278285263, 327698940, 166069646, 528687273, 100268481, 392812648, 371480616, 549027935, 298944867, 250627166, 442695, 205110419, 205110419, 272937527, 139999645, 52349164, 291194031, 20481541, 3793385, 835371185, 831577800, 339916764, 347232328, 361197324, 320518995, 280604919, 196904506, 274605741, 302695466, 699651161, 671781036, 278787232, 16255904, 42228672, 341073896, 60896269, 450698150, 560638911, 273202617, 480831585, 96408882, 480325428, 19534853, 722127074, 834669046, 600409099, 198701719, 327531270, 369928811, 705369245, 206417032, 11679285, 516492982, 117542183, 296380145, 344323928, 464877584, 280965180, 183026212, 30041441, 187174651, 22969989, 245231337, 461906244, 698416076, 685549295, 668349727, 215632816, 203381070, 99081690, 299384460, 98355734, 170267647, 487423236, 45841656, 149389008, 55235672, 184000870, 298732688, 100952229, 13745753, 526890527, 661829100, 474116109, 283640827, 228359566, 299103792, 639883520, 853817792, 667083696, 169136541, 256496224, 265051070, 6646691, 276011853, 269365162, 79814116, 446649546, 540601862, 284600229, 502143111, 486965468, 212495716, 348026942, 417883668, 84010195, 772992582, 44028852, 777513142, 6775886, 720252895, 713477009, 193906224, 259597019, 174560289, 326648644, 708928997, 265279855, 137983915, 461584266, 688689030, 432149262, 487519287, 82084280, 13046132, 718166415, 196724025, 364620959, 663910200, 188658183, 211857337, 283295995, 181836656, 227873745, 323654533, 66326450, 712594494, 407925382, 344222000, 2854633, 597016902, 594162269, 8686784, 686407210, 677720426, 553248849, 507288186, 345274317, 481356575, 401766053, 55367142, 462464252, 617551554, 17139109, 18372949, 88416452, 375393514, 441721905, 178474798, 135377740, 58097321, 359699880, 331848305, 104939305, 76697104, 248691803, 622176347, 98985502, 356627838, 449573969, 852349932, 607437957, 723362958, 8696063, 967341180, 958645117, 28183344, 364941176, 303284737, 91379632, 184358473, 126241670, 34930310, 730811719, 406877299, 23966800, 67493358, 85147252, 255962889, 228128796, 77306375, 363387715, 39874443, 420798104, 934451917, 65365574, 687558684, 44245908, 324963265, 163765273, 388103356, 696236666, 974126701, 760970586, 189615442, 127634576, 279067977, 112897258, 192358116, 189841070, 61717757, 10725831, 846257003, 846257003, 10012474, 947617843, 937605369, 767959303, 38406001, 276567107, 437103852, 784033145, 148258761, 6197157, 578055286, 571858129, 304978623, 23829211, 384092095, 237951573, 478455639, 173215569, 98901238, 676473336, 381026877, 411329139, 11035134, 364925308, 353890174, 97379552, 63676044, 393761575, 627889743, 3894949, 596411439, 592516490, 191352568, 430259772, 130338370, 35710378, 715132450, 739049972, 23765619, 115469412, 751504422, 319117582, 135245326, 563660747, 518128654, 308265068, 271773475, 119529955, 56013974, 26256861, 593547789, 246416319, 159403012, 388957252, 122845000, 764552741, 544706092, 247664278, 55052642, 371232690, 319523734, 204931215, 609525530, 126347548, 75046614, 396991426, 405463462, 420316048, 272368388, 461712628, 92003732, 5720736, 5945816, 398284985, 225080, 398284985, 398284985, 290593995, 453667478, 145876075, 20325823, 662746322, 20844586, 215694403, 264368974, 263674040, 372092252, 586720037, 643015328, 362379111, 314197217, 405763778, 432071310, 145628349, 106745555, 232066195, 550040955, 598665268, 278664734, 389408509, 210844471, 496889493, 807981759, 128422404, 593003343, 497584590, 6291592, 179230682, 179230682, 76692014, 86387000, 12669388, 629159999, 32766353, 336522860, 80940584, 265621440, 639843104, 118742586, 584041158, 661028893, 922195789, 477277486, 119767435, 271897498, 719550642, 826798928, 57269402, 9863584, 667773093, 657909509, 242843010, 357260271, 142250450, 62691529, 146517131, 105711798, 621988836, 227730555, 349437439, 124729881, 203689001, 241684716, 399183376, 361868818, 93451002, 598752942, 62651759, 594572708, 162025974, 249381349, 194276618, 351299592, 490304020, 377228300, 411915228, 240193418, 328008162, 201630938, 546002414, 185552674, 265585876, 269171801, 96762927, 172222046, 243722853, 83700379, 245665556, 280312974, 230236393, 52103485, 328801256, 93789301, 700724476, 552564379, 51967326, 436663455, 128884407, 157958109, 40618169, 242885762, 98932555, 133363108, 84632422, 416874640, 262618196, 126204374, 34579575, 453686232, 532393980, 327038098, 225660767, 293651990, 23648129, 92326004, 218045999, 429547018, 135901070, 142474512, 558025689, 245729113, 642715415, 397651177, 232006979, 138659822, 522361822, 230116951, 699369014, 619268895, 558676787, 88616881, 185293122, 501853229, 134917736, 191872779, 171379600, 776529750, 140556605, 695622205, 385278998, 55423744, 236769148, 131690855, 460927205, 602577038, 154864640, 105778067, 97553030, 431673545, 357906194, 540876687, 121043410, 491255390, 572574230, 604933765, 536797982, 134585845, 684989972, 688927156, 148618183, 61768876, 298634716, 263829600, 246900676, 501367667, 33310156, 401923017, 328607592, 535437433, 39358750, 223442304, 410794471, 420311289, 466540708, 926882578, 41008270, 876004069, 412698229, 458292543, 647479276, 129953139, 310780020, 763646729, 900701566, 394778615, 30288407, 455457135, 34386440, 462047837, 407579888, 915065655, 529877656, 18041301, 59694514, 178519536, 117954628, 50219234, 412977929, 887385627, 613087750, 540558885, 61876881, 734455718, 185759320, 37075098, 144783797, 238150331, 97929395, 64285152, 205102887, 152842198, 460855586, 151978591, 127749558, 212226780, 310196165, 418849345, 459374216, 345615286, 607909398, 676090054, 24203958, 3797317, 5859820, 204561099, 2062503, 204561099, 204561099, 40902142, 779454115, 740060352, 191418651, 278790751, 537681045, 395128598, 375967319, 890810147, 824158371, 63862095, 578181652, 56173582, 260699546, 153726136, 369042041, 293421128, 164573649, 378353600, 365960297, 536684692, 295736213, 66554727, 187833799, 378630395, 35833367, 84853563, 221763473, 630777022, 41133186, 432846336, 112849782, 219159439, 173578194, 241527924, 275726546, 133751072, 31872945, 323670579, 86869835, 275660669, 626069935, 332194343, 111263689, 217303581, 112808381, 483068189, 345643996, 308208381, 537481108, 284836884, 262213903, 610081876, 61693127, 158849991, 155891859, 45485225, 488100838, 195544025, 28651414, 398836639, 320531704, 134342372, 88984529, 50894986, 118062236, 155632108, 156540174, 437727890, 558569297, 567163961, 444444373, 226173383, 742701712, 259631662, 100008696, 635841274, 699475331, 209163093, 91237554, 546816316, 544491134, 387900716, 553432655, 591970571, 282616256, 156435533, 199577201, 134475342, 278395292, 90090099, 590053999, 485541430, 359095860, 169090470, 168267534, 403306872, 514631399, 78048704, 54927194, 110039395, 25537467, 390545317, 485184337, 293905263, 397045473, 382049247, 114938472, 507131340, 51163192, 415511020, 70740178, 86641638, 461213552, 1876930, 112187601, 112187601, 423335947, 209581335, 58713430, 255376813, 796434657, 354162726, 106935284, 193216220, 19897442, 36681714, 260949884, 740932234, 594297863, 239158194, 224794106, 400211856, 363167949, 96212680, 474954978, 609981800, 702931379, 408135393, 124816873, 133763744, 302594122, 727155500, 60483496, 190207006, 193936261, 216123400, 692073547, 803976662, 360219982, 294452533, 704374180, 450615485, 144311916, 407685373, 615617113, 729058093, 504615917, 632136009, 191767291, 433705155, 221999753, 424574660, 498172509, 422015109, 584033964, 476210970, 393669710, 346302622, 348287127, 395002991, 509893334, 80345621, 186625128, 354488205, 116768446, 133233704, 382543229, 662688380, 711672199, 206323205, 260066809, 440888532, 228127186, 621506429, 427150339, 55124112, 98756489, 264066245, 743070855, 323064371, 161631039, 37878447, 63456965, 47369370, 333742500, 680667929, 21854033, 417084367, 292951441, 695142360, 710996291, 10415689, 28862695, 28862695, 38778170, 386661378, 357580273, 316422813, 314087321, 492644178, 284709430, 598750180, 200267564, 641861009, 169580874, 104087765, 65830116, 458543883, 165925032, 463830605, 50131160, 122557282, 516352514, 779731788, 74147810, 696947300, 250236323, 889309491, 638482854, 614907474, 272406280, 48834726, 469852733, 133135785, 738390592, 321068371, 357144391, 676909229, 812457953, 760021360, 50953586, 669196327, 53255711, 196263385, 743895873, 254987192, 402389891, 110663210, 202264277, 104105581, 486833018, 181816058, 353680439, 830462060, 245534707, 271325687, 125095033, 254734153, 366968151, 520319594, 418379857, 201237374, 164678066, 17655195, 698551, 437268177, 437268177, 682966153, 677371620, 31159483, 96538214, 453904184, 311402740, 255441974, 239361190, 347433318, 688116102, 759157500, 576455063, 146263675, 192011289, 38828878, 167650376, 186245481, 289591273, 178116518, 25718766, 332033770, 233907672, 54320639, 394987377, 676227395, 699438925, 286160949, 403353644, 257926768, 190986175, 173410045, 383947905, 289897851, 79382071, 632425656, 87554245, 173829561, 155303, 404471409, 404471409, 494414919, 582479757, 767781725, 518195088, 534087413, 265160037, 229961101, 299378543, 439553073, 536570622, 124960839, 377581010, 134256352, 91703393, 305185293, 463213191, 413142640, 64214349, 34355793, 465703630, 297141953, 1172761, 214299480, 214299480, 85230600, 600615213, 171106391, 172182771, 2397816, 38837504, 36439688, 21002227, 485553805, 86617552, 247042024, 131972006, 274774205, 453968575, 347001448, 229442811, 573249590, 184579060, 565406483, 177355807, 267887666, 215833981, 287309006, 90835073, 76064735, 447200832, 327425479, 247762907, 104957043, 98157950, 138865098, 181857147, 690916052, 398636274, 24984739, 393570036, 508937756, 360168289, 58629386, 249593650, 225583072, 396576623, 605635247, 745964275, 425806791, 59779427, 542979468, 148156144, 536063615, 166617642, 354295907, 176401125, 736281579, 779255464, 468447380, 296965780, 552215282, 201295682, 944875578, 168636634, 102555462, 149805610, 369839071, 600383330, 625485939, 742964352, 200166004, 268565872, 515225078, 419394088, 430547997, 773046691, 93959346, 149094544, 301972834, 110150028, 538321937, 207189641, 248884687, 278040855, 104661750, 564172672, 112297888, 164885452, 372649629, 798881046, 718625176, 219588020, 469925983, 45473829, 370905202, 126897196, 456308917, 489920678, 90393056, 18650585, 344688556, 277395888, 138937432, 230108728, 31098173, 204250998, 106757632, 401657116, 356971658, 888412877, 357436591, 62210740, 76926953, 50969676, 390470903, 466404665, 315525895, 407970125, 451468381, 854684281, 56164908, 698802380, 140645344, 584526452, 158145867, 565507169, 558122930, 463438111, 242878308, 64578911, 106380895, 64664729, 911053019, 204669160, 102021565, 44640993, 145760241, 672958909, 868107250, 715357406, 272223010, 187215817, 94807474, 158078290, 440636526, 557249248, 307071901, 567173338, 689361981, 542403339, 773684710, 436503380, 223901179, 390991262, 438864316, 198707286, 128565469, 734511769, 618829533, 202340313, 519994050, 521561957, 90213211, 343843174, 913403896, 172801452, 481139129, 242587666, 345198026, 649181343, 154502245, 365655512, 271510054, 433004172, 676160188, 650014833, 72941448, 220805821, 402953857, 6093631, 346973136, 346973136, 447222516, 166059185, 109774507, 380808712, 485821301, 15134788, 175099830, 477611910, 84087604, 549799630, 452458821, 461330513, 645157140, 20045183, 528602376, 412322527, 264786216, 516234155, 274770095, 663008899, 521335075, 112611969, 587767188, 591827280, 294811542, 904831859, 6668645, 859111980, 859111980, 384354743, 486733510, 505481766, 156526941, 286306419, 625740584, 448448241, 442220458, 297113249, 223604338, 91111366, 509249428, 146132789, 228500510, 177237745, 455661409, 420748825, 24483876, 371766304, 257008832, 769621670, 5838860, 197803493, 191964633, 385624419, 284875546, 472096818, 394458486, 755499390, 274882363, 151874666, 317210539, 63725596, 24498898, 226241956, 370860695, 658783161, 483451938, 322597745, 373173750, 414031682, 33589910, 93122198, 519976684, 64356310, 200721048, 404283340, 439650143, 702226927, 614752689, 700150943, 480864471, 1589582, 352657224, 352657224, 565035595, 295057317, 422106332, 146526156, 573413871, 669978559, 171701839, 781461720, 821798515, 18830185, 741840611, 387304466, 423973647, 495295436, 366927185, 501855132, 152218087, 659628462, 628981548, 91519658, 442019678, 155564327, 114966410, 570823424, 792533039, 790437815, 460998671, 290292391, 143697402, 309420058, 359381538, 465569402, 405485695, 320715242, 706951766, 65932513, 540068914, 413321134, 886274790, 474390645, 221273952, 709457155, 757258331, 28480118, 293899063, 95474758, 118262958, 30438121, 486012567, 99389470, 509688374, 278155876, 144600738, 392053761, 34483149, 223033070, 119384177, 78674542, 609805538, 86652006, 373374464, 228276468, 837204396, 335749126, 421281872, 485116294, 101465954, 227401417, 235990285, 401672089, 636284867, 94727009, 360169394, 313189585, 594885481, 125193395, 250569135, 429871962, 869495730, 649461126, 4713294, 75174470, 75174470, 455250998, 543978215, 245851046, 223775858, 671364008, 116270962, 353889002, 90225662, 192651242, 368558421, 472931891, 138362729, 367069063, 576528393, 10331599, 176617765, 176617765, 91163763, 21647001, 59837477, 70986030, 170850210, 191073010, 379721485, 223178073, 265752237, 469357399, 813252674, 476445886, 82666875, 206208958, 475882296, 625383229, 540534552, 588434691, 52816728, 717375268, 749786429, 913666304, 34717511, 811894031, 153699518, 96291504, 2412213, 589147600, 589147600, 275704516, 277230182, 305939769, 130925720, 341484882, 90995064, 784172237, 412766860, 488186557, 363896510, 253140983, 114588863, 14005213, 637973941, 638454863, 714976246, 136806674, 135148800, 723071204, 231103535, 554336476, 673261231, 758484532, 240981303, 179964728, 92357217, 341866051, 488089599, 129269160, 239625246, 151999420, 280553858, 67245631, 84617126, 463159943, 152541776, 126614576, 134737346, 139544390, 196329210, 248058927, 12297661, 643962845, 305295847, 301065117, 206199028, 164817460, 485408609, 478183930, 690658259, 854514188, 434132770, 405339994, 77078336, 71155613, 487545126, 650168146, 89598895, 373070921, 389481782, 702184285, 161724991, 217653120, 383109306, 266059577, 54550695, 465177717, 128001103, 2480251, 45654565, 43174314, 300507723, 208442827, 655049255, 50138474, 405315025, 518992601, 134024041, 807254147, 459325909, 372471405, 462669152, 75010308, 712453981, 675371650, 652481343, 374769622, 10479566, 189190343, 178710777, 16544790, 42389035, 609628419, 767238974, 773522948, 588292066, 216467944, 99530164, 412219428, 552336580, 407103519, 343752496, 353570731, 361714748, 301186743, 366898848, 13891965, 130010303, 164180308, 634212871, 687417563, 510664016, 582297215, 913737286, 262040862, 307479150, 411875717, 538278576, 565734005, 259086732, 653391011, 539291732, 190254303, 547314595, 602827404, 594543765, 645498487, 380223604, 246941570, 157783079, 349861467, 411977228, 32620751, 75481946, 333879553, 504627886, 722189532, 74094349, 67158148, 300503974, 358040499, 260125770, 370793757, 554141461, 648776278, 243307375, 35454001, 520820597, 920905602, 33816459, 304639337, 399653724, 227307871, 450512739, 145961616, 101470467, 647131555, 265253851, 222098934, 291097942, 274635728, 455836742, 420473856, 17904243, 246905364, 87594884, 603888942, 766992478, 142674488, 268633053, 42714142, 638466239, 129402151, 34717620, 94859601, 746063956, 837538863, 590634990, 997102, 154108571, 153111469, 470251996, 597917477, 482997231, 218818333, 73424771, 114122643, 669389577, 651430577, 38846223, 724626518, 829874703, 189372906, 444280216, 396703451, 18242220, 120459642, 158280477, 312574338, 179486026, 121896952, 108874441, 364131129, 92500495, 336606041, 923826463, 230557578, 299052471, 412117998, 501880748, 3741423, 584906755, 584906755, 568983541, 342007819, 42870363, 340274812, 892133589, 741613477, 601036908, 738274152, 173222006, 726275617, 470508140, 255054621, 793278967, 334970539, 584239583, 345784667, 550130571, 361875651, 115960121, 193988171, 225077950, 391309555, 634848436, 119599823, 161633068, 215303143, 74831460, 263266072, 14465485, 368256336, 266492862, 257620718, 550844781, 422690431, 595638129, 536568500, 321043744, 402450242, 245030629, 789712782, 812425362, 137630643, 351135111, 230896934, 17894157, 632742235, 202705331, 304135574, 57348205, 831934345, 80011858, 446925575, 106057135, 129551041, 185582285, 102146854, 366476954, 45892494, 209629544, 877242588, 591236326, 532802111, 54256773, 630860835, 95561873, 225158216, 257135434, 663907705, 678116903, 38512801, 480238594, 92511271, 241722116, 682992785, 143673090, 229968630, 83884510, 49046422, 291545625, 73520370, 264522197, 233967965, 128757391, 107771150, 191315044, 817791576, 129604269, 524013689, 617638201, 242570409, 275802166, 881501980, 711006533, 583492148, 64667283, 609982934, 171425259, 619284217, 5817475, 174285226, 174285226, 114248292, 369263130, 81204298, 409101189, 706271707, 550804122, 342910178, 804346892, 531110651, 72247239, 227057356, 388195960, 374572893, 149572124, 559008038, 410524944, 159438814, 183992516, 159367987, 441747289, 47064559, 593387503, 237162374, 145659982, 95014927, 49377305, 57287672, 99335539, 444504639, 509072272, 73428538, 124677559, 271630081, 533358544, 238033723, 336216474, 316349221, 303716738, 719093658, 172572595, 171346541, 788260749, 443468388, 289526306, 23168654, 103027515, 207135720, 726546421, 686105202, 528590879, 318545771, 298973995, 435623927, 294353737, 488674663, 608550647, 1210855, 862559591, 862559591, 469209084, 62435902, 131895775, 243279644, 387648705, 425482819, 3014, 443923875, 443923875, 228792559, 176706016, 632199513, 52255918, 505955224, 25346248, 538270974, 42457657, 104678148, 421648501, 588377209, 60290014, 432956376, 199549804, 462101142, 317860509, 268592580, 256560557, 609340986, 276730600, 349751741, 139516525, 16861765, 35754378, 177305031, 218423053, 168488486, 34553312, 489773436, 62952503, 224699675, 5307007, 50842010, 45535003, 383115854, 421006691, 79513872, 673071685, 826665568, 378943349, 270562422, 77754943, 457687968, 767829940, 605020100, 124362327, 500690897, 266370345, 235004807, 746694795, 126463804, 529716054, 740596778, 650249522, 255050908, 113808079, 499824264, 222112614, 579883767, 416279735, 354969057, 738419171, 183701145, 711485266, 626430712, 334857459, 784477151, 12596879, 242571843, 359099234, 614113651, 406922919, 374103218, 17584088, 187177658, 554119777, 123102994, 837862357, 440421479, 393991445, 365800044, 265052083, 570136642, 687094096, 342092810, 380582851, 658225259, 339598585, 190578335, 323071828, 550531693, 428064992, 42399073, 248739703, 5408611, 215087121, 209678510, 107287930, 285295476, 587430849, 4926427, 478573912, 473647485, 154197178, 106199996, 338580725, 32828295, 301947280, 334927927, 515024094, 199186868, 531440761, 969917939, 366929959, 6372360, 17849471, 17849471, 490649036, 252479843, 513250656, 729476427, 62340918, 610129839, 85237221, 211081036, 562073845, 133388768, 45764869, 156358858, 303063432, 402251457, 404569713, 506462902, 44117562, 510832732, 295372129, 423652635, 275716464, 5156758, 607655083, 607655083, 723574679, 298772369, 319828572, 374425654, 294183038, 404956540, 311182290, 96501127, 174005159, 409042287, 62234348, 29403237, 739142356, 315835343, 81974460, 171907820, 299259813, 466371127, 797964964, 319711767, 229893007, 210243611, 193335688, 196836788, 318579328, 324844260, 104835744, 194322522, 510102911, 422246900, 370047663, 438030527, 457743091, 451243476, 586783446, 325270438, 470217173, 762740654, 607944456, 567979895, 41209645, 251789879, 262654164, 724713656, 831477323, 525017125, 207899076, 10391295, 335499101, 335499101, 253593281, 537565100, 332062687, 48674566, 504215416, 49415455, 656603685, 406513061, 85601978, 14494697, 5358331, 16142865, 10784534, 712606208, 712606208, 481958450, 288641185, 486236149, 655551214, 32958312, 559017264, 190745662, 148477431, 355032346, 333066034, 22888292, 90439789, 260374872, 444815294, 143118897, 96445799, 266604205, 241636675, 491519185, 854388721, 17977887, 439917029, 124020814, 63420173, 260124235, 357953641, 636349781, 623648256, 859944330, 997133653, 964398914, 861206331, 880591888, 514745096, 408563350, 580117999, 142323829, 403105554, 570669675, 203523392, 738790632, 195242076, 719312091, 730352999, 24672059, 542755194, 658713486, 476378217, 165923948, 690575713, 295566850, 277427378, 805975109, 635637384, 288518289, 7813154, 517150309, 509337155, 355030997, 397341872, 254082905, 269778250, 80858222, 232549342, 638510194, 250193698, 587928880, 295054435, 246110884, 240534811, 497306390, 98510406, 373891621, 554525493, 99333920, 30614238, 242189541, 497124337, 87966045, 125481960, 652538168, 120917201, 746137404, 371486115, 343299513, 486917382, 53258309, 206011998, 237667585, 578381540, 18579557, 129446354, 856472278, 51422474, 23282029, 739510594, 434508268, 201255839, 160367283, 134955848, 770101667, 459928614, 520905758, 329349240, 102999392, 9236153, 379641491, 379641491, 377826556, 224386449, 343321220, 185690155, 38547412, 468452425, 67122716, 302724993, 228946605, 115224796, 33976529, 649477195, 67355701, 792021555, 393304617, 231987530, 157087822, 464419571, 69482365, 121923445, 11239025, 20175684, 164963277, 410307706, 576120288, 312566887, 126802532, 443769726, 502380209, 82519789, 130007644, 283173428, 1371721, 367566167, 367566167, 812573459, 473609932, 434975957, 844692666, 71630479, 136579361, 70387323, 397066959, 79301144, 289688158, 722283222, 362045069, 508979971, 12975673, 97388676, 122475084, 496202127, 462835863, 327065235, 210381049, 204429266, 85225250, 417342917, 16974260, 347423034, 379323463, 806591442, 744895944, 521786028, 33448376, 332455731, 262333495, 119463689, 442318688, 479315760, 196233275, 216982966, 272926337, 469734232, 726247538, 39658341, 798752489, 792945816, 608196111, 687454413, 320634437, 297588762, 171059480, 351898865, 152026821, 601660461, 68586170, 695942184, 48614964, 487559292, 295945169, 329651270, 699055362, 834241885, 198484322, 363131801, 167434092, 111939963, 86047926, 563162672, 890460634, 694317082, 426080644, 200245771, 615408597, 41995080, 480907081, 246574677, 218751964, 52194451, 641697188, 156467017, 399932266, 267522059, 31841423, 373580354, 971915561, 748504464, 45889495, 156381373, 12237161, 257844999, 719193641, 686599494, 397062097, 400096989, 306770119, 632672242, 458776343, 44374125, 298688222, 49910288, 235466640, 325354562, 146256503, 673425328, 324962373, 460303768, 215389454, 181473246, 836313831, 900470153, 922523279, 253402634, 262739045, 105356985, 481462451, 764092568, 310967461, 38349573, 382529872, 282977638, 345828284, 111437352, 180727545, 730142558, 71485326, 19254490, 226655389, 136027267, 157560575, 278563336, 13822486, 347516340, 550076867, 399268963, 751685567, 818588110, 17882203, 663807, 137454052, 137454052, 130489836, 469049694, 196224070, 494790832, 497204834, 326289115, 85169186, 224311549, 221437345, 241199504, 158077790, 65828471, 232743183, 798723398, 91616443, 145560692, 217502579, 89152760, 222447863, 258530909, 112761516, 441941027, 1308940, 803875457, 803875457, 110182557, 304856408, 23360044, 647894948, 843070457, 217119021, 19192234, 58357639, 351842840, 16919653, 125049028, 6201436, 389483060, 389483060, 517075565, 529343165, 165065708, 326600693, 196014145, 56141514, 217302633, 166306359, 367139295, 343997206, 73614648, 509502750, 446110120, 178048330, 51179545, 103716357, 320308119, 755394840, 340187591, 108549199, 255646613, 493367234, 111133032, 368406893, 305840908, 494099991, 165822957, 342317259, 56695222, 211134135, 103727092, 265250983, 650659487, 438647952, 691750867, 36196381, 778811453, 465658468, 171421675, 418205529, 585349550, 584249207, 174967430, 325553640, 329056264, 17797837, 803054405, 437694373, 159457810, 413310544, 163642044, 15020874, 136031287, 168396411, 124721224, 301533479, 696862852, 4335335, 329959169, 325623834, 112513570, 272016856, 290652828, 376860902, 93781254, 287525232, 253209246, 674860593, 362865570, 520466657, 54599128, 267005117, 238987177, 65832176, 651716208, 578292095, 468752719, 220448880, 505501546, 241823332, 23145169, 318558349, 665809054, 97092893, 388626997, 394441993, 914460702, 736768046, 17718954, 72288001, 725118814, 957195144, 11741551, 886554554, 501821847, 485928881, 694973222, 13489579, 412135177, 4979721, 103440376, 103440376, 146186249, 88720984, 563390375, 296151696, 9216612, 197152759, 187936147, 377269409, 308645935, 293669000, 160841454, 127176343, 304799083, 323381041, 190756370, 240573811, 72128406, 276307396, 98380042, 68349315, 84111131, 359590992, 274128486, 582835035, 72551890, 572970736, 217759570, 194773603, 290189693, 429057270, 77922507, 583656399, 764452860, 167230718, 123020259, 829599369, 469099263, 19795273, 226730714, 539541640, 653493068, 196184313, 47662458, 184441097, 694304082, 54117749, 127775156, 394789717, 107768273, 445690793, 33776806, 141771272, 722876127, 395273296, 109941093, 95533653, 14765585, 38931897, 194132934, 218556215, 821241111, 432709139, 129568365, 536186249, 162183808, 610063682, 390734754, 81474337, 225268954, 98146352, 498636257, 119357223, 743159553, 245527729, 318149370, 137853586, 183464600, 316595207, 888244136, 632304690, 118647014, 920002, 819077605, 818157603, 804533336, 336882486, 469591408, 683240633, 14232889, 97979689, 625812552, 173370029, 737462434, 577529249, 284463602, 445590112, 764634922, 668945557, 411814821, 310843907, 76999136, 607340482, 292248413, 111680376, 283080359, 94951628, 547708023, 330285644, 57774075, 63839696, 71774355, 476763591, 374726959, 322148741, 407076087, 445592383, 826870830, 73815689, 188259430, 8407327, 8407327, 326510872, 18760, 318122305, 318122305, 397184053, 10871059, 316872344, 306001285, 577723408, 495052321, 180256833, 6599748, 147257272, 140657524, 135282236, 235528713, 342780277, 12292983, 498001406, 841764701, 390974752, 51219741, 250170785, 91641311, 539654488, 109973743, 33711157, 315577606, 598451242, 598616421, 626811519, 87044390, 536941298, 313034016, 751600229, 70373373, 237293335, 246213413, 337972782, 43721694, 290117534, 331815060, 622611945, 558256281, 203268914, 542009668, 839237103, 58091481, 318162744, 206443372, 40297534, 275787037, 182989294, 135932826, 158299213, 219803569, 313481175, 367775278, 583539280, 331850787, 392873766, 8172914, 379630797, 379630797, 301750585, 2305062, 172740920, 172740920, 329213119, 149124554, 191144373, 19714134, 440424644, 732933368, 736447683, 484452268, 486030400, 334467822, 641369411, 757290906, 430316977, 535497024, 545417928, 548797470, 453242283, 550749990, 606112848, 302410151, 563431186, 450192285, 324163030, 619357515, 434684029, 151407021, 264925928, 276879268, 660587829, 6343042, 427993182, 427993182, 259516314, 291663867, 265062633, 511267634, 239545460, 131933310, 364004009, 93687572, 734660667, 479781416, 227458652, 251383911, 467635890, 638362101, 706928760, 270753033, 382890860, 253738127, 747309577, 234776469, 10231957, 348112294, 337880337, 119725461, 491230776, 420154697, 734579692, 59222246, 570861491, 582375024, 74946891, 63174344, 401806811, 246993710, 219074927, 569573137, 590636703, 146397654, 237949589, 204441657, 306010127, 499675104, 635810297, 122808197, 378104337, 327951098, 765341312, 226814683, 454070295, 522891372, 290179447, 273333188, 407461431, 137344140, 337163515, 443219278, 88063263, 456703760, 157404342, 240194065, 677071160, 379806664, 310412753, 174474264, 664128404, 154805780, 261738220, 708738071, 454543814, 13590101, 327443758, 437421238, 365301168, 487927223, 116132589, 711055968, 367425516, 310322387, 473443918, 80641877, 119272285, 226338788, 145336806, 162724076, 15213550, 222764071, 564991181, 533443313, 367960121, 299057549, 288225016, 220720668, 212266456, 185995006, 146502517, 359095276, 263678307, 65753765, 332623512, 195415957, 166756649, 338444689, 216346197, 894371054, 630970737, 283396027, 550129147, 62609682, 4504592, 267005929, 267005929, 341601256, 180041332, 624600400, 550911805, 630032573, 877829576, 849276782, 277240715, 50672650, 430350966, 418520329, 127955339, 309969868, 22457264, 824165446, 668155171, 77110490, 756845494, 295362434, 247448634, 151270856, 184532554, 67296479, 293938956, 927162243, 704396777, 466072730, 704099129, 244040966, 400552726, 638152012, 129908753, 680546613, 549584045, 625585344, 65725459, 93281932, 81882014, 225925653, 834301846, 407203780, 118608220, 274452026, 647116774, 101144997, 797240408, 736392359, 429147244, 550246965, 644004320, 326458040, 284005876, 547061598, 124708555, 109697162, 77143763, 536156040, 64565051, 362792088, 49515085, 247255093, 185734603, 87240694, 2004388, 192329589, 190325201, 16699157, 272621897, 443809780, 47504548, 727598254, 559322223, 123723209, 641871820, 755936214, 800405748, 139155350, 141576736, 164308375, 455420403, 311670176, 239841853, 382590810, 466743193, 194467953, 267412103, 606658862, 13602181, 468643983, 100268372, 301364204, 422577859, 128660737, 169087542, 182904521, 167522404, 30992276, 880412417, 47593225, 568729636, 346175616, 113054147, 265034159, 85304982, 60709677, 448400403, 373878595, 178089879, 595106701, 324550842, 166758763, 183673368, 256953575, 461862639, 870131514, 740011327, 67363996, 722187328, 114926832, 174501850, 562338621, 332839402, 354606585, 570904749, 727676229, 154028019, 145755385, 350205082, 856301744, 820259963, 615686408, 10040483, 374496436, 364455953, 68537294, 61463340, 139365491, 240438551, 6976997, 74239931, 74239931, 111883915, 345854007, 241018070, 141074894, 52502226, 246845443, 67076357, 367558325, 199020907, 339116118, 767513612, 556732149, 115365289, 362639148, 799621241, 54220269, 532936234, 44512003, 443291043, 56357955, 190866153, 371725528, 254501089, 337721382, 247580372, 58334814, 151731115, 29380016, 418721497, 15160952, 130143966, 293482205, 386498471, 254337306, 167392260, 97259652, 68060094, 63626275, 444142573, 764876772, 384255454, 351468452, 473326921, 244253915, 228760921, 535838256, 790402199, 441501488, 425561580, 635702308, 514121810, 68536104, 3307732, 137263035, 133955303, 689480240, 157785075, 137010534, 545009475, 220004066, 60479085, 173905757, 514957410, 48607517, 190077318, 156769612, 520689030, 202272890, 566014388, 74519136, 255919579, 38230929, 82606157, 586342936, 336617292, 524301233, 874895548, 288193830, 477647184, 705514419, 596242373, 244135701, 197519707, 421004320, 519060913, 121663642, 345898886, 462432192, 667457219, 431396334, 179445733, 3139870, 118790489, 118790489, 342173240, 301976562, 90323980, 63968327, 612106692, 255439693, 267249670, 389015703, 109494148, 611542979, 36490802, 274596416, 709016025, 405622521, 368215042, 363268472, 576137227, 55484413, 220005865, 206878204, 337376507, 485813372, 224652656, 111748244, 257526192, 131744730, 259177120, 186085486, 502826394, 52590602, 206973691, 164531927, 230044310, 83162859, 133805537, 351730071, 58797658, 210554796, 214285656, 381403762, 411110879, 262760804, 228526721, 193852705, 557759591, 631958493, 448195487, 185270744, 60316355, 86094865, 348471599, 72154098, 13996303, 419735767, 206613942, 291678310, 479142550, 671519423, 378903923, 235331490, 247480065, 403792641, 604033598, 79266595, 161417908, 585032284, 69215610, 11903265, 582842344, 246056860, 154993392, 118078260, 331851255, 146693359, 205007488, 61113527, 596541198, 238586279, 217980238, 258895439, 276314350, 403955055, 221057435, 307855899, 212702733, 280158104, 9642229, 270370687, 260728458, 336822029, 79564396, 565382514, 89777191, 460104570, 249535312, 210051567, 326616442, 346516904, 835505079, 428687033, 60645676, 159130361, 730498753, 952980122, 11013508, 372495646, 361482138, 231027163, 160922045, 232708259, 147106394, 511680386, 52133659, 66911503, 5164434, 13757633, 13757633, 46526317, 47305180, 307175294, 84732999, 274411566, 433769587, 17494840, 128554307, 487902990, 739388249, 106357779, 722960104, 141580856, 486961004, 732458570, 213817292, 664102613, 31850035, 176413352, 572948474, 8956344, 700142224, 700142224, 42331418, 492836717, 34157579, 58863814, 668267167, 726005374, 93081661, 309858454, 639142584, 737396829, 694807346, 382438755, 365594002, 774188653, 565100997, 229442297, 739726691, 727842034, 30892731, 873946599, 830842216, 419351975, 423707679, 421335279, 229172743, 83074413, 286844552, 566355419, 288881260, 91124099, 568682496, 294443547, 542612520, 641883820, 307783382, 746238916, 780299714, 890462, 164765069, 164765069, 121300453, 866679710, 407530275, 53338461, 323551275, 41165684, 462009565, 237819273, 230127080, 316203173, 327813409, 895819097, 248731689, 47565395, 405435657, 268597950, 292615592, 216767802, 325577938, 533467837, 796696466, 191196939, 8349264, 443775125, 435425861, 101481286, 770067249, 8964490, 626852169, 626852169, 63075551, 211972557, 91281317, 303208007, 161476638, 502876631, 477287883, 620594113, 205258972, 673477202, 181619971, 112342747, 312866391, 83907166, 306021599, 246452377, 497716655, 293036848, 180992674, 678664161, 502451799, 465842832, 915465653, 89795625, 1156371, 100998828, 99842457, 51609995, 159283639, 742408277, 480033420, 95599781, 181279825, 201357719, 401745486, 270197818, 43842571, 234672932, 24254362, 86734530, 254381014, 255958082, 471337914, 733559102, 930710697, 235538675, 103605804, 70454513, 552602733, 662641857, 762249199, 255566952, 62327089, 347043218, 41912624, 677578249, 16110358, 776298927, 835263665, 459266002, 127381279, 437485432, 165029414, 529481731, 358844618, 35309981, 231227737, 864901082, 13656522, 435722400, 197332611, 20972241, 292762353, 422924992, 645723006, 568472272, 715084659, 63053376, 609343166, 698930495, 56822767, 851200281, 70630142, 257086755, 229245623, 94982089, 187952315, 240513953, 673566292, 68723203, 514223380, 388393759, 263292267, 86872481, 170998027, 335677294, 359693093, 158719267, 104176335, 446101218, 154077650, 329572710, 259556084, 252018671, 549812314, 102405184, 212933182, 320899170, 74893659, 646372282, 183237200, 417940327, 580286261, 667170630, 601924976, 578353795, 150205155, 38640058, 96681697, 209178660, 177127678, 245614219, 679986142, 587947799, 207694979, 465750275, 855889399, 801892924, 470881350, 125237458, 452870160, 784097664, 229406388, 132538656, 169425890, 815990036, 346535317, 4554113, 317739300, 313185187, 903907813, 855785695, 149532102, 69346129, 392385383, 6171120, 688674688, 682503568, 631240029, 635674757, 167528066, 586813395, 158701674, 429553594, 400064710, 330053206, 103426311, 45463071, 473672934, 29526824, 101345818, 428665957, 177879820, 307509426, 47295907, 249538856, 64102050, 577435441, 826739666, 674873416, 147283871, 369853608, 177425380, 148636104, 169381615, 425875432, 626044897, 736838985, 593710825, 139776900, 901856485, 62407784, 91581932, 622419226, 129110245, 575336358, 250584053, 294902203, 290026189, 383342727, 819032142, 555547852, 105051009, 70021118, 441092559, 539776271, 179222236, 500979754, 875399494, 393899756, 224297540, 197544293, 755981671, 36488803, 770861089, 422647715, 409895157, 394085531, 334435798, 61119806, 58255964, 565647480, 607585089, 56145654, 86546040, 418886523, 91218987, 427876239, 279619995, 176695856, 31947313, 84514553, 242833149, 265887549, 141541845, 353168446, 106421870, 486576302, 42794349, 908416360, 262145501, 316260066, 212031019, 640657890, 522241205, 624876924, 251570848, 470327330, 432779082, 326092781, 353449295, 261169048, 642410500, 666432661, 21247716, 319676480, 294644978, 74093294, 658035037, 156328865, 680460814, 246884276, 327448170, 286113611, 214127261, 37061391, 137939782, 738635765, 294083297, 371018681, 827210124, 113297992, 11140795, 533306901, 209479418, 157973028, 264831525, 362981146, 646796904, 94114620, 205829971, 247153760, 374723028, 87668613, 265796386, 145668734, 342657214, 72627218, 492238284, 567809266, 554322878, 112748483, 432053087, 458479073, 453554581, 288000892, 311398268, 739221872, 447016652, 134050965, 158431080, 34049029, 757043636, 829073437, 500170849, 273478812, 126904585, 121514713, 89869693, 34424345, 264527395, 523424615, 201289174, 351196907, 622337657, 502748492, 400512992, 550358436, 378530548, 7726026, 331089033, 323363007, 389736166, 558458297, 436569947, 424325387, 417955649, 794894989, 74025453, 693580190, 376723918, 352912819, 349366371, 150695411, 286926154, 150363718, 196642646, 670465515, 603260776, 83239126, 552741058, 761555435, 348619583, 28739721, 102917511, 170163370, 196786610, 56166410, 741078917, 526525219, 38367021, 584347493, 689912171, 434779208, 186326738, 196996785, 556785631, 376522401, 11959970, 490603522, 118600426, 249519012, 412557958, 120571356, 21201256, 60170529, 85761127, 585932699, 706677609, 547813835, 136374349, 197052234, 324329290, 42321126, 10153447, 15022717, 4869270, 326479307, 321610037, 72788124, 256627525, 152398051, 335258507, 36485301, 98073339, 812131162, 531761962, 371739050, 113151657, 176366431, 678021461, 208070768, 533158117, 166436473, 562433810, 99018790, 691880437, 261296521, 443385203, 1072667, 776601281, 775528614, 359802173, 414757685, 528541219, 78829575, 45111544, 322330513, 234773205, 257484079, 296985920, 83918275, 164978732, 261438829, 632799207, 38105978, 322579412, 427449966, 184233829, 7750253, 455291922, 455291922, 337187413, 276342756, 506181379, 187525384, 269899311, 408262439, 429154734, 656987138, 28225367, 574268696, 534794972, 429339035, 419613720, 519168722, 190718093, 251023201, 85694637, 445989232, 7881888, 18484131, 18484131, 596485213, 46767679, 525819878, 377369682, 476857302, 523276380, 720537824, 650442923, 520108820, 273705687, 98929603, 205897194, 23308855, 672806701, 292213491, 174417103, 438358147, 767054696, 551437849, 203964651, 349783634, 407357835, 126063897, 243972307, 57952291, 202435477, 130480207, 9408897, 20954558, 20954558, 173692606, 514097845, 226826317, 176650770, 499817354, 569331727, 77778836, 406292440, 479816047, 333185053, 452157009, 350294475, 337300238, 215372441, 254090512, 32216164, 175071632, 457244015, 32525808, 91283781, 496330438, 212089806, 91241255, 315712658, 89756753, 356060881, 434560565, 733375157, 444156106, 503119063, 585199132, 188264237, 241942425, 429953127, 103523879, 237998549, 108328434, 286296980, 468758374, 36171817, 679403602, 562293955, 573946057, 42059333, 148940726, 233507663, 332234217, 306487123, 891637049, 286829601, 243014957, 378748877, 179796605, 43215834, 55095245, 525231793, 457362927, 163503050, 431643776, 186145533, 218185828, 8677267, 546617029, 546617029, 933197802, 601138119, 132815155, 136122436, 114766674, 335376097, 550360228, 177822350, 204349684, 457729561, 5154774, 134379578, 129224804, 340812495, 569341946, 177194213, 65330539, 27860230, 56342346, 74625735, 256214822, 321690612, 293009425, 577515550, 301240356, 380931058, 138317309, 129744511, 178562351, 140051203, 490220227, 37325026, 72116693, 90288975, 609922507, 96018064, 304198331, 544422191, 873877810, 831481682, 373042553, 523492038, 193065465, 720900227, 52314470, 877495415, 628171313, 69530873, 156012794, 422165521, 435451762, 13019239, 527771388, 440286142, 134060826, 457329607, 245963190, 157614135, 48560050, 199412141, 764618908, 66494011, 7894903, 57026532, 49131629, 538590425, 676504518, 88245161, 375149019, 101576697, 88881561, 14924238, 128232139, 135230463, 267318419, 72459140, 388945664, 660828155, 280196377, 233932643, 290870074, 335588416, 860466088, 698274042, 597543308, 35884591, 125968463, 788094400, 256932716, 38177982, 279492583, 255175821, 531853957, 5755676, 758784169, 753028493, 243289362, 269144096, 78040819, 319104878, 338265393, 330169448, 345230594, 281088338, 177886117, 345635514, 765376868, 537545449, 372185285, 202149117, 634267273, 470694681, 135808576, 4836041, 340368695, 340368695, 234822688, 683970477, 516212459, 135245287, 264418178, 698009550, 354571855, 138551797, 166005220, 867750431, 746117583, 157772204, 364411815, 171942956, 67028, 356971479, 356904451, 935288734, 816282971, 512824758, 271156775, 203720337, 92367137, 128980554, 299633409, 476989116, 489990312, 772188194, 285025158, 453463279, 54959113, 123434270, 323191494, 379514972, 423369918, 679154867, 744229558, 101336702, 866507627, 823235652, 653459505, 119897798, 558881644, 133101694, 358192399, 326828286, 149791424, 6793528, 64315651, 64315651, 493063408, 836754794, 844205216, 497164819, 189315140, 199039516, 197948160, 148202703, 472231932, 563591890, 481206250, 199315718, 24864470, 396836700, 383879975, 275296024, 163172974, 659837533, 27667591, 480758220, 371078755, 362170442, 327347473, 554089603, 657529791, 681861976, 111456101, 363556422, 857651699, 429683718, 367992108, 293200205, 118152761, 60365590, 236865458, 157636676, 254758582, 396194168, 237534556, 57046676, 280431716, 607640363, 106713277, 150518150, 178909801, 311464917, 598676266, 33188850, 54271070, 167987368, 390549564, 245492747, 300812143, 220090455, 751082298, 346960124, 39230563, 57506174, 306698176, 25980443, 40562324, 615305000, 327329798, 44967111, 79122708, 145827265, 134935817, 473616071, 32085415, 52781816, 473714156, 72830858, 273615840, 620938229, 155683456, 641607433, 362691197, 158773043, 556725480, 218923203, 148323588, 432345056, 774438596, 517170253, 321391953, 199788652, 132641103, 29110693, 93338060, 468509612, 41161043, 605697774, 112588881, 330054549, 583071946, 50380140, 682666220, 660665132, 543258443, 429685226, 67523219, 100098022, 101162478, 431182413, 532955389, 761544980, 104137681, 117226280, 304535454, 85253720, 249980306, 242974407, 3221121, 695134242, 691913121, 119942829, 286854377, 497001557, 819779865, 618701148, 88545296, 713153392, 21648669, 566840847, 177513848, 1819844, 191635632, 189815788, 238764965, 678920691, 738229868, 656958808, 78970266, 57028769, 27507790, 112215443, 474466775, 30931737, 525676092, 286574703, 149760906, 368845575, 415135823, 436419234, 488770312, 718973345, 605228407, 245541035, 130214242, 126179872, 291475991, 604537066, 774041183, 609530696, 136318574, 376651051, 78550742, 226774933, 798549211, 856691127, 751819127, 711546861, 257881271, 422356854, 559375859, 643157424, 151424958, 192467632, 232353370, 484549175, 465458918, 202765668, 264108969, 179024658, 405686155, 36384586, 6117849, 147453617, 147453617, 377692982, 896970292, 823990753, 669879314, 460909177, 147436659, 107874930, 606396401, 358543538, 558470501, 552684061, 202910626, 503140841, 184135260, 352682221, 218673317, 58594762, 157813382, 629243330, 297726212, 430429671, 106630959, 569321994, 874463, 23686700, 23686700, 89353190, 509844256, 376562678, 480212827, 160086320, 543672838, 310849223, 676044001, 32709425, 3394589, 871713163, 871713163, 167604675, 35047742, 276089130, 263801249, 148213530, 771383949, 621434321, 667740512, 413335001, 530870424, 619686572, 75361963, 631078057, 31130092, 522717599, 446250874, 803785852, 692174882, 759576188, 745602567, 398211938, 240500365, 646746925, 40289559, 16657087, 188922631, 11109970, 447293359, 436183389, 85043129, 415117268, 919909623, 254823540, 158375311, 803936011, 223426619, 485187219, 455769843, 540001553, 678978856, 325206396, 51013042, 280567473, 511156783, 111917486, 214345370, 273912089, 624391273, 198190699, 104082998, 135675879, 656150740, 792525256, 511731564, 545700102, 378543258, 95110271, 493069492, 72950738, 655461437, 652659887, 610994199, 694865684, 94052996, 805925372, 586910546, 86895034, 628031327, 446013087, 161935813, 58814176, 40936000, 509625827, 206079958, 86023456, 95467181, 532792979, 577302998, 219944776, 25686647, 66423098, 265807236, 256110663, 870263643, 682906678, 709390532, 368777888, 320452619, 38517258, 455184922, 142457288, 445591382, 555580840, 374873038, 319563343, 356394127, 87147129, 52178235, 527537328, 481110983, 175639618, 211835710, 135575445, 275478181, 92074172, 76156973, 193574281, 236606985, 204461287, 330328638, 53969239, 316683705, 385001974, 761338265, 208923829, 382312072, 31780504, 8042387, 824581236, 824581236, 5565548, 684534047, 684534047, 557629423, 229387979, 635113728, 494998686, 404879173, 520799104, 453346511, 134286426, 425792924, 282494800, 449431583, 500539470, 215432502, 433240897, 115355427, 486022532, 396487482, 885139179, 454595935, 200129678, 521756999, 543742938, 629297358, 40457989, 818922454, 47650115, 710798067, 553035820, 110037350, 14401084, 521158380, 287845651, 823642899, 54167809, 696667494, 684887757, 232379709, 118420484, 374002606, 595934638, 490120515, 251837948, 33064808, 79080611, 238380544, 290841545, 436185278, 48815871, 10264319, 85475346, 85475346, 159858419, 85284572, 143007939, 596697720, 913798263, 968848062, 656545279, 94255553, 529715188, 394873430, 318284715, 292042929, 36252438, 283433010, 264217087, 597609104, 372029077, 43940075, 28403322, 153091527, 770113182, 164008406, 14995166, 202291959, 240463049, 104025440, 666894441, 315695317, 416850649, 540450961, 84198393, 616906196, 706638864, 461170556, 75632486, 26690365, 225372219, 96086411, 683951495, 506269228, 185334408, 107097282, 160297355, 305522717, 858535233, 923798320, 672935102, 260445082, 128101421, 168048247, 89807108, 70601206, 679274622, 122529114, 241255232, 202302352, 378876441, 627010779, 535211595, 204855649, 589532972, 216152152, 355350899, 157606696, 109188289, 156924781, 330850923, 358511342, 416491840, 389929436, 435070418, 545287105, 282822687, 48013326, 353108306, 225052979, 168696648, 369768216, 368294032, 443088931, 300465780, 29167987, 395306182, 232533379, 150462495, 335516006, 219680600, 142213561, 360336945, 720130668, 633397228, 842776861, 701923895, 390341282, 54401786, 1439737, 551617904, 551617904, 657640299, 39949539, 407226028, 572074204, 510781684, 284849498, 114968933, 23236250, 662705, 383998978, 383998978, 600535068, 704860716, 21577981, 47940277, 139197616, 647124806, 292248407, 124464581, 158449179, 181387473, 188161701, 427847418, 99495785, 634164644, 149750850, 113895740, 228166763, 33586729, 172483738, 912249973, 191609163, 107210273, 240681850, 379662403, 693840038, 818374630, 380086301, 230059406, 52799988, 603163682, 105265761, 620086725, 71315114, 157407242, 135691651, 506375922, 82601722, 82015836, 781600483, 742910869, 618993155, 121280586, 233195736, 180895327, 673092440, 431979843, 454447921, 280446140, 342530506, 255365163, 98134291, 170624143, 145631813, 294647182, 214345095, 422813203, 47866335, 49147619, 173657957, 628583065, 79675115, 696549170, 429659810, 247639690, 6980339, 364481673, 357501334, 439180628, 26204026, 417887963, 557975684, 608540418, 621494124, 908870861, 329194792, 103295417, 182080991, 326151630, 226199115, 561884755, 576781235, 611020966, 314641503, 22010347, 204436392, 485618330, 223258414, 767100220, 606599733, 572396977, 822734147, 923973752, 684127811, 212025404, 460498914, 90427090, 457521927, 196388495, 407349813, 176553618, 196583924, 346336131, 460601926, 336315734, 469777905, 467572609, 44909199, 792796870, 112181014, 713156824, 85950353, 345256659, 458359852, 313496333, 410348263, 183774488, 181062331, 220397475, 346021735, 267661383, 240129812, 231358082, 475518264, 444790756, 228783634, 102334568, 196738047, 235625804, 87452862, 31627672, 232876349, 201267139, 407912842, 587772205, 377815518, 447611072, 757292164, 586023186, 141713977, 345961078, 385149892, 335687016, 601601612, 891199622, 279739218, 484720589, 575590163, 221165497, 411047402, 546281658, 198099787, 750652041, 970510720, 451338759, 341019675, 279334942, 287196724, 452212864, 441315081, 766457722, 834299602, 936606124, 9601124, 423910591, 423910591, 542471174, 913920024, 333657998, 266432309, 568719820, 164962286, 329847341, 353291150, 419961962, 260142599, 241748999, 886246080, 982665164, 595487049, 350414581, 329883812, 538191344, 404450607, 115050964, 298168746, 209154997, 515329505, 512093658, 69211154, 694713715, 529488210, 215462701, 383870935, 734979291, 397474673, 320392224, 32495015, 855747001, 101193912, 86814717, 112441372, 108140906, 534322329, 293652660, 497224196, 260228392, 426594531, 324296085, 354611192, 32658747, 242080293, 599749838, 606470182, 486188471, 691877550, 804653192, 212172396, 101192597, 351661486, 656245747, 117653826, 159980878, 212257893, 25932580, 147412738, 418834633, 402647818, 461797108, 128599539, 421938384, 50774436, 607753423, 14043095, 756850047, 729719240, 59589552, 16574571, 192420704, 97987559, 502772975, 432934096, 388309874, 739667477, 319640330, 188704350, 199888999, 231034994, 349861997, 427149115, 708854492, 689326742, 364744163, 255911536, 386812791, 560748112, 143958210, 863498472, 765008107, 18331228, 197271679, 197410499, 265873813, 27788340, 598917877, 594899466, 738980190, 129155953, 131013910, 534544234, 388303052, 369392683, 403976043, 220938906, 162147976, 160777962, 455447210, 95154391, 285345950, 375483593, 101695976, 399472591, 325276437, 622555466, 506225563, 664150392, 79623912, 513940237, 427786258, 662317422, 172771239, 62364260, 224933516, 509390949, 237486855, 531801599, 149744913, 286719278, 308243876, 131551174, 329838395, 39004015, 200676865, 336657042, 207796469, 409735531, 228559939, 204293608, 317637686, 835990917, 292674632, 484624021, 479183819, 386488127, 12738066, 428338517, 471758062, 699374669, 55135620, 67509466, 660918150, 283472366, 271118074, 82352011, 607093918, 363494831, 302666263, 403629757, 199799214, 760820775, 548204317, 616238727, 231717938, 176789780, 462160708, 478307448, 449960006, 869766580, 576409199, 33300826, 52302540, 266202862, 500152468, 427827985, 838639175, 365125283, 37387952, 503800235, 327199644, 148247838, 269961741, 428201793, 437385301, 299403284, 222147205, 406762365, 13892053, 631677159, 783603779, 102005740, 305192406, 437841065, 268066897, 508275742, 962672713, 183408188, 567552519, 162519895, 916393317, 82514534, 528094459, 263495753, 689349357, 644531114, 124323909, 763104049, 545820624, 506952091, 375578490, 18889263, 239511307, 475972294, 584253941, 100401184, 127377483, 476381492, 2400670, 48585218, 48585218, 344818550, 322195306, 33587399, 591010586, 843683062, 376021209, 211641469, 268884864, 317862688, 90261577, 640688487, 18696618, 46539743, 551597128, 144737989, 335852753, 183927241, 301547689, 635543848, 206404028, 522147498, 248958514, 283832033, 617349074, 711207828, 904059511, 890933630, 20075975, 57425752, 756646801, 531440897, 454033194, 579566204, 137942700, 244273330, 152096757, 85573171, 403450093, 4258475, 494266568, 490008093, 250595087, 482136648, 583798409, 751879697, 197841782, 71552849, 336117495, 898846450, 392769590, 527644372, 587029578, 513519410, 86827288, 795838643, 370428406, 516429635, 909413935, 640392176, 261093095, 370266943, 422272454, 344845275, 558867846, 567445496, 277037042, 146204970, 27746096, 114258401, 409205647, 686070646, 128530130, 211003028, 400522509, 47586010, 108065424, 628398294, 577518944, 424129799, 190097601, 122256179, 3834237, 421533820, 417699583, 929600617, 447717414, 102612429, 311562315, 231271940, 222869867, 20081426, 426696020, 465541805, 538959480, 113378436, 359058525, 290333507, 261405038, 525821682, 939221210, 52593566, 85524934, 90095562, 636804146, 487514575, 389874700, 299483849, 109076728, 73395967, 564066107, 338743737, 341174218, 540910845, 359427026, 56923974, 794525, 396501313, 396501313, 310579538, 215791816, 500097435, 426000047, 245623981, 434979073, 14268486, 779046885, 687377142, 830923777, 578559714, 282689549, 568734768, 274522464, 253265379, 161694815, 120575971, 112225909, 81443098, 34666889, 60865060, 234374215, 688475853, 809630843, 57063998, 318199270, 314817937, 650906448, 228322925, 84836879, 625717366, 72100217, 413102583, 353585995, 256797928, 37544298, 32783236, 17368219, 605168120, 422891701, 273919859, 366890390, 256235560, 353541683, 138143122, 541027782, 316466108, 165638386, 317097698, 175178329, 174965270, 209475564, 253906700, 316261169, 627038019, 367491491, 457076267, 537664092, 145915795, 55983810, 635488550, 30346083, 122695225, 76238853, 417745303, 344485962, 434493253, 332807432, 365039942, 634542236, 44863106, 121025128, 351759374, 282356500, 68787358, 123236391, 575018002, 689820625, 736470383, 606124514, 53821349, 201700677, 376427437, 216919791, 621950543, 58898446, 109743904, 397983642, 701864708, 432854690, 365936, 224784893, 224784893, 361916402, 644507643, 208409824, 393372760, 323638653, 208947576, 60197420, 163581354, 673963268, 137381121, 102189459, 255449212, 165899245, 254284425, 47986237, 780767486, 302071849, 139174268, 131650492, 471697504, 661806067, 455293008, 35035003, 101916999, 363585281, 4125930, 292427146, 288301216, 188843894, 252636394, 19777640, 385827503, 795862932, 38998905, 37289663, 181432751, 294942686, 465531789, 371080017, 754776646, 786528884, 330047325, 540903091, 775532901, 457582355, 33682315, 162399876, 626889436, 69488043, 788808718, 809558403, 142298011, 223352191, 365791206, 472015202, 197638389, 32048864, 341885092, 217227174, 536934124, 946428977, 562407868, 549834535, 879194663, 566621845, 407935767, 267520722, 280037729, 748565139, 596383346, 44626808, 236313229, 262765753, 364762723, 651356858, 678341804, 932289907, 444737641, 41109493, 242513363, 341920816, 186930305, 204309312, 397955230, 540375486, 102696445, 311155898, 295849416, 281404086, 241838361, 662853823, 431789031, 411790667, 192083577, 548557473, 28304720, 341347, 702151877, 701810530, 42733521, 757988438, 486064898, 263185957, 44049881, 374814116, 328368569, 589757437, 659138023, 299226118, 155469915, 286231704, 177086325, 22616318, 278503912, 51335796, 221355098, 98642711, 137722996, 567341828, 508121089, 186879533, 510831717, 680569396, 162575371, 288331369, 168134659, 368865120, 498753442, 291333814, 380665696, 139504601, 594616158, 182126240, 681636382, 173577216, 370646450, 417867672, 162181543, 490769020, 213102136, 367503783, 610811348, 66111487, 51066153, 32492441, 192022734, 201710056, 407580051, 138080636, 55625656, 4114527, 192541039, 192541039, 86468313, 209079446, 519575579, 438192119, 305388872, 332859565, 799307153, 287173433, 192157185, 126495459, 511092193, 21937386, 173495408, 211575601, 844873029, 27298817, 167407630, 57377909, 573491373, 438421130, 378114206, 420511825, 16849449, 152304097, 350186553, 243525099, 778439425, 587356455, 161267855, 118746244, 350947075, 418632369, 123000776, 292375470, 721601930, 932783552, 520904943, 35960428, 413848667, 143424602, 122306613, 599376540, 47149664, 334288778, 200506686, 41749482, 244808240, 79670766, 219458695, 516117473, 389430040, 331025430, 740366162, 422830143, 436093348, 527797892, 129165128, 46760747, 445242913, 462889546, 145230244, 312508306, 106823233, 347169715, 85964480, 189571573, 90574627, 608370256, 207724509, 521912720, 11385537, 384464284, 231197671, 677260863, 100260593, 750242672, 665956084, 599217292, 96926233, 621953479, 120771538, 133220146, 4270426, 100227436, 100227436, 149764439, 242907420, 95752938, 187381756, 525925183, 605315673, 285425570, 405732992, 133930686, 258001114, 634486402, 695363855, 565106486, 31972874, 460887820, 830624454, 156385023, 245291770, 146853473, 386962520, 52613457, 560371548, 638127790, 484341003, 99185366, 302973300, 134150735, 304490330, 511811767, 304625, 494772809, 494468184, 727467593, 46622376, 193368227, 573463642, 787561166, 820125940, 681925605, 617933118, 813517153, 829387037, 152188222, 669467251, 75540518, 830821191, 230138149, 331290828, 888275880, 613536757, 169031058, 268268324, 361560614, 138918580, 49730414, 200773735, 127067990, 475066055, 274747821, 590283124, 120013747, 411099180, 306379936, 127453745, 1707877, 130273609, 128565732, 710246327, 773307750, 148877157, 192165288, 7268906, 104145501, 96876595, 121113604, 54822975, 428887372, 474612729, 9479262, 121002976, 111523714, 100247573, 387368758, 1364201, 318194740, 316830539, 336641023, 774438007, 480123899, 266808667, 171160335, 164539656, 308643618, 95252435, 550149278, 414367512, 193572158, 624180522, 312440886, 237808795, 274252555, 389702151, 3887327, 57703509, 53816182, 542584799, 244877847, 177057610, 580886143, 174613546, 210715841, 16548072, 150253845, 94702106, 5966033, 431865140, 425899107, 145412450, 419626067, 246946606, 627216297, 173138698, 268544432, 302838136, 736919883, 192819080, 161570886, 557621838, 299689539, 29372365, 397130162, 482299726, 148292826, 517609931, 508167217, 206585731, 473180002, 67490543, 532250890, 11084127, 39200379, 28116252, 550282982, 80182780, 167009350, 481700012, 196704025, 924511598, 162047782, 599371232, 169520774, 936829618, 414411212, 547320752, 883263039, 10919163, 654672227, 643753064, 109061107, 105886325, 605134361, 299911849, 185831852, 313825923, 141580567, 234541244, 58167473, 254493659, 719267112, 479988647, 481336547, 445808618, 406557958, 700740489, 307332557, 397898625, 751771165, 151728177, 2258987, 114403735, 112144748, 476934951, 294156455, 100330422, 16257479, 196872290, 61661224, 131395185, 614278613, 362048135, 335700264, 41540991, 556142801, 144271539, 120976230, 161859122, 625811354, 362927423, 399981218, 169727825, 176351486, 540146609, 483032186, 771388028, 103466554, 328702217, 250979398, 770184261, 13424088, 614494477, 50050031, 578012259, 309265545, 237285325, 772057316, 769798572, 15275883, 549582933, 586913887, 619270826, 427319163, 254148762, 863986913, 413469232, 120101498, 139850423, 383850201, 154966620, 153829119, 455134374, 404074283, 483924656, 458649012, 48838192, 235061790, 658540340, 839671471, 856562243, 530830767, 532258555, 334533385, 363369863, 60585668, 504819511, 111988441, 538711807, 347933617, 246194699, 186769576, 272534101, 307452649, 281826170, 28906366, 68558386, 678427219, 207556020, 201888101, 214975538, 532289470, 510627126, 298579471, 750916976, 401526088, 329707461, 81743988, 93888218, 27073714, 5216597, 636152124, 630935527, 624620586, 708135234, 207144191, 156371537, 176949882, 588069766, 181491748, 658412844, 211406709, 64454038, 20700461, 247222467, 235886342, 371590854, 128749728, 329012974, 277376238, 258832742, 632442213, 510786405, 368006850, 200126859, 95596219, 194717827, 823077914, 598741555, 130577511, 27235235, 443355068, 457366399, 241064515, 130976224, 17955243, 445703987, 145863385, 227684803, 174777647, 280644990, 28069225, 381472705, 97000357, 270434248, 221852876, 569471761, 87664152, 531538277, 393598167, 398610738, 440620412, 226309950, 309157454, 277001555, 497903342, 281534864, 96755766, 327599568, 372696054, 250581245, 512781288, 510815864, 45560005, 701131624, 688486987, 682498169, 891761068, 852928837, 196977806, 947012, 233879478, 233879478, 507343630, 873884626, 157982103, 113372347, 658885864, 52573425, 49853209, 487925914, 333213797, 166583732, 586981455, 732336933, 499729105, 41995567, 33037402, 42490228, 170499432, 337037122, 419722031, 131342350, 362239295, 244116293, 61427237, 204032542, 217790025, 109840585, 220818762, 805900959, 738595457, 85159585, 108817421, 150596254, 707818093, 412407945, 10432692, 473144243, 473144243, 89271818, 147216004, 468323269, 405404656, 200836112, 129742811, 149001016, 33047376, 431632902, 606517812, 721707044, 207435534, 343352091, 211421821, 253639328, 254803937, 736780751, 799603804, 287762363, 230443447, 560098545, 628911364, 273138773, 456642183, 735844013, 672714485, 556841999, 101535135, 338583588, 452725880, 640885216, 56436712, 153753970, 265114500, 270350238, 282537201, 170457770, 121099254, 155436928, 243867545, 29420235, 112771588, 80784120, 263993430, 203991524, 247753648, 390034629, 642230840, 949837798, 643821207, 533432712, 857159462, 895268339, 202046922, 78131010, 688788037, 86201231, 359534498, 226199147, 486974333, 702242747, 766947744, 840702520, 149129455, 110908190, 542485074, 492440538, 96910780, 447416148, 134082391, 164981573, 101306353, 235966106, 844661927, 567303698, 13095620, 17192032, 396627598, 96034495, 695250532, 41098519, 554597338, 320809257, 284282165, 5691064, 314402837, 314402837, 824632063, 335889303, 279863872, 50014464, 120634333, 80684796, 206936928, 229703073, 608383224, 97359518, 816244239, 818218076, 450471971, 546849553, 623629790, 292703703, 221358244, 534934995, 281183554, 364992153, 532418095, 24017558, 214222873, 443441553, 978770286, 957826313, 659915212, 201420605, 68727253, 130990903, 384963598, 331726093, 274040868, 654684424, 18859817, 100698162, 190257275, 368777682, 422260781, 197818741, 405995069, 481539379, 283201884, 298727137, 302329882, 105516618, 565062020, 316120197, 259231836, 173382592, 126800551, 950592756, 669122649, 483921043, 65266749, 50058749, 701649425, 156708808, 376375427, 649334502, 325178099, 110975916, 641724806, 283539312, 149172385, 574140130, 157788898, 124256129, 236369074, 636427923, 146366833, 143460048, 471010493, 470400177, 280625609, 106602940, 731546678, 427497487, 351418191, 888589699, 793729198, 807171469, 566149513, 23632464, 330212805, 291857479, 442205747, 840130585, 46033722, 527551113, 149250388, 522987346, 201397067, 282998354, 527846456, 692909398, 538687439, 111305968, 159035926, 213449415, 823717702, 686652067, 236361554, 145894247, 18855575, 92181679, 136767024, 201637795, 372618520, 158741324, 457137681, 79327800, 757981713, 394076600, 295718348, 122512185, 626904948, 613059300, 473672808, 565904523, 847898442, 215869926, 640116533, 471263259, 498617756, 355545205, 148971141, 248337743, 322228090, 332162537, 164297788, 16691849, 449693803, 11431583, 255613254, 210472, 63571397, 63360925, 123336257, 18072482, 211220887, 700188145, 179362414, 698386404, 91071747, 249599699, 309990577, 307216352, 39170487, 160459988, 248278250, 928093286, 621020302, 82309654, 300730214, 176736714, 266566379, 282372090, 913782745, 358343601, 142514551, 45944704, 211779164, 181453147, 469735194, 471519736, 395736695, 461853604, 633382387, 446603942, 163331885, 123202586, 79921120, 624719799, 179576799, 134392582, 27106117, 469423973, 62397026, 166859439, 85872727, 325147837, 345002197, 797832758, 653161667, 687740647, 669955028, 44611940, 115925319, 525107128, 444190542, 60690558, 172511982, 329307901, 226380721, 743270991, 549535218, 336542482, 320154680, 257227612, 256435939, 369487412, 147003979, 2175957, 197894107, 195718150, 15657978, 171542108, 467620060, 22651653, 853752927, 641870236, 239756294, 839658685, 832160747, 714251283, 148868681, 29333995, 94421098, 186982968, 541201896, 31831163, 36662278, 183034264, 774779161, 102830034, 139596305, 883175442, 114079255, 543419628, 695110576, 722406657, 423604621, 311067840, 258163354, 169589170, 107037591, 227606726, 545095325, 636181791, 826435903, 769052397, 655707652, 533342206, 637601779, 618309563, 213106175, 94106183, 595828378, 574750192, 146627065, 10780501, 360792188, 350011687, 129201742, 560672529, 712734878, 346485771, 453151472, 865190613, 123160584, 161249412, 345761021, 757472496, 170624995, 31962162, 164694533, 400486317, 542380255, 130799842, 339316074, 399149905, 269239934, 366138463, 40617722, 665140732, 750940788, 507801743, 456677352, 683564916, 341236509, 28297916, 294138975, 147054011, 243407612, 226519625, 386506310, 122285296, 447871581, 486567324, 170735258, 78697134, 418891701, 220703288, 210676608, 74216301, 97975106, 231417988, 579099710, 718687413, 673004858, 95494386, 698261272, 726501240, 70508296, 292144636, 560165418, 424480182, 441202475, 515131054, 445558821, 507070888, 577237925, 436668263, 488258950, 922757727, 667571684, 129910275, 91085053, 53326988, 301593792, 182106933, 156972300, 67732106, 562249289, 136692147, 653716963, 621814336, 120422641, 726631384, 208032669, 327058583, 97882477, 193101559, 486196055, 480910597, 25012042, 186043843, 585403675, 777245668, 583477623, 26138810, 228978020, 367049669, 126823433, 158323167, 329360751, 108344043, 50355439, 51757233, 544697314, 176242667, 191734822, 193981339, 293992655, 325977217, 84598608, 57610857, 534135388, 311501701, 215989555, 504366462, 144095352, 102126333, 309032126, 153040402, 303413215, 93874632, 133178823, 39095673, 257387415, 493402893, 218259190, 56679445, 87384058, 173336557, 33059814, 276597805, 471967745, 702510424, 62974622, 122582089, 153384873, 812637651, 802558616, 814020061, 957643930, 241825392, 14032209, 462167352, 626353413, 744339968, 523163759, 48813041, 217726627, 517466260, 524007637, 15899878, 535819058, 3673225, 129749987, 129749987, 3800725, 534203954, 530403229, 346332450, 345669637, 282414608, 425227534, 508867539, 397838688, 252066174, 152471639, 799830681, 816390238, 489554531, 471825772, 935803163, 348039166, 588377504, 198194656, 171827577, 232344285, 173451414, 210152609, 236512854, 105423681, 280080337, 319436603, 458852697, 414998070, 504850772, 219559885, 314053110, 137300020, 435415155, 129935285, 302771185, 200127041, 816594822, 160402829, 130969667, 46784147, 173637014, 613518539, 909010452, 483535893, 154061866, 41109090, 390004862, 667578034, 662113457, 68852026, 242784418, 113999722, 81534465, 278071169, 65939039, 167300081, 712430078, 114560171, 620617343, 647310492, 497226564, 394731647, 143705916, 515227253, 363095780, 424042692, 91428735, 474553394, 362138943, 546425850, 697742426, 738910985, 195652892, 82329857, 489910204, 9048541, 346152269, 346152269, 87652582, 450796752, 927570897, 609649584, 457185775, 647067000, 239456472, 51347685, 125213948, 50499231, 145421614, 330897167, 169196255, 244013591, 137998269, 382454258, 501032203, 84907876, 303921380, 954748821, 576887893, 175195682, 459184106, 445174174, 339506680, 347522758, 856967364, 3846983, 88694609, 84847626, 540774778, 635847956, 181674817, 18475901, 61531177, 358428561, 430938017, 293434561, 498749987, 186517929, 252056569, 539716171, 96516106, 285248821, 93502220, 79034972, 531207885, 131790287, 463553322, 260544609, 67171475, 177735780, 33028892, 153272769, 684093039, 640261403, 146479929, 48078653, 33337483, 26069901, 390052116, 203640491, 424368722, 77985167, 576173139, 605449984, 616459625, 84335395, 604784223, 178724347, 44805556, 112304942, 93653462, 161602622, 817829118, 674810329, 723370459, 799050069, 695335161, 249882012, 441709740, 551879087, 632768077, 418388757, 246046050, 179257723, 399443636, 451151253, 391700527, 645307692, 628776804, 684942304, 62170328, 33705985, 180698414, 115139463, 198086413, 326839201, 194226731, 320516988, 710535600, 266244474, 213574920, 428060221, 101681397, 636685322, 782435359, 591793321, 296678256, 919568065, 455222924, 257906661, 467860247, 624241231, 354197079, 251552306, 135961745, 114504452, 37950371, 671624064, 680485550, 763587536, 501440557, 364139607, 95711460, 615043936, 617376713, 775909870, 51131466, 705964041, 291939293, 365096103, 198845655, 443303845, 552060990, 119163028, 202407589, 768393350, 489491539, 162835019, 312023743, 148971434, 291015200, 604664139, 226868956, 338595910, 154263289, 240884890, 830720211, 328099416, 59244840, 291496710, 234269170, 49715147, 254865535, 565413647, 31193786, 153760197, 38831536, 335754242, 69839737, 92673970, 706367140, 592137606, 328327719, 279691412, 532188503, 946167742, 171874064, 286199810, 280131356, 155553415, 336708378, 473094475, 149884674, 592244892, 84542813, 3881980, 78275444, 74393464, 55117947, 112122967, 546216079, 545417524, 171959325, 49931835, 832220909, 215771879, 230169252, 263735063, 321873631, 773709459, 156161542, 482691244, 492125301, 315180054, 261682095, 427049373, 148107998, 647216722, 103306367, 520822207, 47189051, 337872751, 72592058, 154271287, 272028682, 483962353, 422467011, 428633367, 711787811, 424456429, 549204815, 465279055, 420728080, 81821676, 340116156, 386911004, 435116919, 370339171, 215823027, 121152238, 36397420, 158236254, 223511642, 106733148, 386058965, 461034785, 524697412, 475620226, 107905604, 284784764, 258470444, 9251564, 423099386, 413847822, 539028340, 391795711, 283440112, 420609652, 283644407, 481638023, 69429356, 10480769, 221662848, 221662848, 369006848, 351569782, 6048062, 73589378, 67541316, 531524900, 940056491, 558053339, 223416926, 159238739, 2188245, 675483625, 673295380, 745122565, 546377850, 453209022, 235190587, 649702490, 626888967, 206652509, 250210281, 353245258, 540069725, 207445539, 57991337, 801064286, 255453828, 196004634, 588518089, 290894296, 231129373, 518668227, 540745328, 830915616, 457220667, 56277338, 68959130, 453513421, 56029661, 71779068, 803770913, 56822701, 427420660, 97561354, 292565, 533511922, 533219357, 289561920, 155162572, 513032981, 537914103, 149066372, 387241234, 209557884, 276790577, 279098663, 393381333, 745733910, 940219258, 112735155, 619109155, 650481594, 284414044, 40011209, 145498070, 297358033, 330385129, 124837474, 382872054, 65489664, 481476609, 185677484, 574169271, 136305613, 135374328, 444044233, 165686295, 503614081, 99535328, 20226083, 518076559, 736178400, 300876264, 406128585, 538851415, 11292409, 124749083, 29465382, 657754508, 314122269, 156181436, 691364426, 341237316, 251192860, 232924454, 379716210, 367961650, 161289846, 569365328, 98856052, 154763110, 506378983, 107043215, 441217108, 261475167, 226584610, 486011258, 180442262, 311319172, 430244588, 518963410, 246022065, 178976305, 930225987, 801486478, 847678012, 409295888, 13695126, 304405422, 365522798, 244384977, 481244800, 579093491, 635770076, 494919667, 145657431, 426599033, 632926574, 291520616, 538679708, 700954658, 133030278, 558724154, 279650871, 96877673, 227360943, 687769618, 702789145, 135140952, 429844584, 319582601, 238081103, 150025232, 69726821, 696636616, 195630554, 348730045, 551810220, 684059885, 642906502, 365286829, 580699899, 376259889, 261932495, 43875810, 75419314, 402576775, 325127895, 47868589, 682191227, 397552038, 486202426, 602979565, 12938724, 20412140, 77816319, 102131875, 496312352, 415010231, 484631491, 837089993, 76101891, 724617597, 194320794, 335445322, 453344826, 263398749, 412668102, 56417728, 815478133, 381688036, 27475765, 127844944, 96656602, 30592231, 386301669, 6691455, 272525473, 272525473, 24364952, 192602873, 115930184, 402674001, 251496655, 151756330, 271277317, 230439303, 272950113, 286201131, 182459705, 212655830, 231800237, 818505616, 573163094, 91170471, 345178256, 280556784, 401501104, 698309918, 734009636, 887143907, 201767665, 130745859, 835473104, 499503944, 93526324, 79051341, 333120213, 227499376, 199578557, 380813062, 7627812, 825088742, 825088742, 171080221, 551182310, 396995897, 323175247, 135665174, 465834525, 289209891, 62691039, 724380505, 632399921, 555294195, 180690786, 634569276, 480691652, 27096869, 419987387, 91872484, 717290331, 2525947, 207524282, 204998335, 162775239, 789348765, 28798560, 347783737, 407782438, 207342432, 379227229, 120912246, 287665210, 84016891, 212057444, 26714471, 70085769, 156320277, 189767934, 130915086, 259686747, 642774184, 566441098, 297919361, 191843695, 266823271, 153849936, 283663540, 5795550, 765522108, 759726558, 313217018, 194794552, 77244882, 867094347, 441933266, 324104460, 134109662, 506930779, 123543273, 58757384, 836111511, 32808466, 577064346, 542462628, 145534899, 10177765, 980903779, 970726014, 281989375, 4090932, 119263091, 115172159, 98744556, 661625314, 7578181, 526251461, 526251461, 103122208, 96400744, 143508231, 145598403, 347371893, 8625960, 840369756, 840369756, 345358164, 252819254, 61633026, 494889806, 152522756, 918047548, 59461998, 724622516, 91389649, 53716865, 50560162, 143567268, 303196088, 262627275, 413616778, 23936330, 43255041, 18772336, 539984390, 355468920, 249169947, 67019022, 60346064, 187801988, 310010709, 83599815, 226321680, 118540990, 269063155, 675496742, 413521659, 171105456, 299850687, 568783139, 760640007, 697797692, 100762600, 559049609, 142239216, 432219311, 68807597, 646013828, 161567708, 540076749, 651335272, 540554453, 429461891, 33169994, 347615685, 231873327, 86782352, 375348956, 221514607, 427819345, 728298620, 35249683, 256692742, 569461667, 553200196, 471468674, 113419971, 158951999, 214705248, 5822232, 261078096, 261078096, 449166616, 865481826, 237641324, 442682243, 334844424, 319511500, 370716932, 96016611, 634633507, 742474144, 407197816, 31202310, 68539311, 98264905, 88526925, 88278887, 365509283, 730143425, 176023329, 502606827, 137963691, 133200854, 130667842, 100916611, 223833002, 358548477, 422687715, 627848461, 43108333, 695741027, 512475, 347245932, 346733457, 219830098, 63883198, 441395587, 36692435, 380593718, 394969977, 94015515, 633779926, 601462842, 519369918, 61100323, 112143588, 23548580, 111911099, 876682897, 888952429, 651009322, 667140863, 500421542, 118735317, 423270575, 315101964, 118568620, 130814921, 5574591, 459619218, 454044627, 135788806, 293569484, 31536400, 209037760, 195556145, 434829046, 205575971, 171055148, 318586468, 246318578, 191139898, 719911531, 25161713, 663954176, 566324308, 343192506, 642320507, 205010868, 791039, 170861467, 170861467, 411215765, 251266369, 51879241, 407793457, 442967392, 407511691, 7837359, 62353286, 54515927, 698438660, 277331483, 132373253, 254937639, 664156498, 959723545, 739414778, 604338755, 503181983, 38224983, 25407789, 75769505, 76894283, 93823060, 91500008, 344310365, 211314550, 436890752, 105418271, 507868527, 548576834, 401244677, 2947667, 611141656, 611141656, 763908945, 111274974, 938773444, 68742947, 323956159, 545270080, 493593213, 294773728, 347676518, 54146194, 30660147, 28510582, 381956787, 118231611, 111995682, 762138235, 658768244, 4746054, 826053105, 821307051, 1356463, 330133124, 330133124, 79562007, 235373796, 464894702, 605052842, 102787831, 625701910, 783769982, 476484407, 195839589, 470668488, 554187466, 55098199, 81584158, 342716996, 285048350, 351389411, 418291275, 691179177, 116838917, 836905511, 3209546, 312003293, 308793747, 94033887, 355066926, 141066486, 39308705, 69744210, 133857840, 390903184, 103832872, 418653708, 444480660, 488548305, 95820749, 128515609, 593475929, 44403010, 82885321, 346818148, 186046424, 519777926, 133174839, 55236457, 640271246, 207458625, 119065582, 7353661, 467162829, 459809168, 268484119, 834028610, 208596901, 236346650, 199772081, 76103316, 116248545, 502644019, 660252568, 581714670, 73431452, 195723790, 76369047, 315953703, 503826569, 369945318, 307387296, 572880114, 547875761, 590979704, 36896328, 48835348, 29411488, 159787075, 46604603, 11512920, 178658793, 99188767, 352539687, 622372905, 108077202, 526137047, 277405697, 286069720, 619714200, 183609168, 681541529, 766158103, 471701795, 282030525, 569225240, 360966323, 585794608, 811358725, 4858302, 516558017, 516558017, 218501936, 435746473, 17454864, 180052155, 828393870, 311559387, 411491532, 213301682, 575192425, 344405286, 547691984, 828396677, 792742027, 550289333, 178118068, 489132059, 558368434, 124880230, 733480118, 154346097, 462184403, 39971776, 126160676, 556707818, 14808728, 777111298, 756131768, 728581493, 4750791, 176259146, 176259146, 294111326, 449404872, 950647626, 139184365, 626548324, 58734279, 130720685, 222651903, 42398795, 568411212, 109877969, 44307137, 674179377, 360681298, 39706685, 321350762, 583836134, 540719086, 67006139, 184813742, 191545635, 313087955, 72291535, 226882951, 301174576, 830088214, 158398049, 279095413, 290832060, 121074242, 834994571, 117827121, 217518311, 480454220, 270481144, 130385360, 512545409, 708487626, 882080139, 600395349, 529110497, 599537570, 360600062, 596172944, 576663651, 319559840, 445338365, 31707083, 93787416, 287758101, 96761828, 800955526, 118888879, 640283764, 369063984, 191361750, 189926238, 101389781, 384214074, 67728978, 299646290, 224869977, 449362682, 524075963, 360216466, 5915188, 18965480, 18965480, 224697555, 181679246, 187733792, 403551820, 187401483, 479594160, 450504515, 55114911, 373237495, 234516293, 312422596, 2647685, 356148775, 356148775, 368257033, 428416117, 483023956, 118648819, 643784177, 185882972, 129270155, 81105834, 465730610, 748207667, 288004123, 235000968, 172783184, 708344842, 155585950, 697947050, 206652481, 656485336, 590032067, 746847497, 238052299, 355972333, 488641686, 144272991, 335096650, 23697600, 360698152, 624657020, 2307372, 664150496, 664150496, 11631680, 49045258, 257033065, 105460333, 576825301, 248574470, 558181529, 148596594, 146520875, 485868000, 284191382, 284883823, 387946670, 110154622, 8292091, 542519899, 542519899, 604826036, 44254743, 414214195, 313458651, 106399983, 246279315, 712496720, 210156204, 742866931, 133685390, 210143857, 64708336, 460759418, 697689740, 793217944, 404140580, 447560647, 592001762, 42020515, 305303087, 231022543, 718899364, 97087345, 205155296, 218311405, 61208328, 423810155, 122096700, 193017365, 767229897, 153765169, 22568971, 690970363, 417145219, 421525273, 80180027, 672892106, 344108189, 65257549, 77054748, 312886262, 764494345, 385850699, 317285103, 155177139, 463309684, 586626284, 248770586, 161710115, 350635909, 60774272, 247200102, 727497016, 582052025, 274926647, 406485365, 237736323, 205564419, 701181109, 2184574, 614114171, 611929597, 110339798, 597834146, 524881247, 241731300, 142889933, 32365652, 235374830, 103531715, 130370387, 57659233, 502775725, 826966276, 194073878, 398929663, 110823936, 478217769, 58672011, 244975152, 253505227, 180138855, 2149557, 475003800, 472854243, 678625580, 313699115, 131447509, 431000193, 307133391, 348100891, 237639958, 516302521, 167477658, 221841090, 170206658, 33916210, 55128306, 51689324, 525693941, 599228673, 584435662, 23678326, 200805520, 193399342, 286711603, 126882505, 429853368, 190915185, 134677228, 562435251, 710789015, 499206568, 415659815, 265645556, 385113734, 173025834, 640958160, 81500725, 530645057, 156381996, 160416765, 318071108, 337423360, 516541109, 28271868, 752447658, 393775853, 496048575, 140515794, 95271309, 313694557, 338427296, 520081137, 149599761, 238076423, 281364640, 264483938, 381261808, 64438673, 63745086, 113684164, 588013114, 113448523, 531365044, 770272785, 267345515, 373263222, 446273786, 73748677, 571977563, 280903802, 489076198, 572062261, 248383167, 284554352, 204260862, 288008490, 411617591, 40664841, 310158545, 216276486, 640204061, 822188263, 527944543, 527098088, 778605033, 699242639, 24168130, 56398280, 689395754, 420926999, 90475880, 196096016, 102680114, 593376581, 725574951, 443851366, 287974986, 526730434, 442781890, 531674504, 23983040, 364958413, 148229876, 500099166, 269146830, 175120992, 94361800, 39311142, 80978156, 400652523, 198140224, 300013685, 25708506, 55367711, 810750490, 520363031, 260131055, 293039515, 9686237, 687185715, 687185715, 230988769, 420489584, 247003176, 236583972, 101902500, 425549974, 471083680, 449748132, 37251669, 845096842, 435580348, 85798222, 356900609, 157049662, 2507205, 278821873, 278821873, 315270886, 75267145, 200861152, 253490464, 415458916, 168455497, 213679990, 532579878, 102935707, 733603492, 148131084, 338553933, 185685729, 252730396, 195996675, 147850087, 216162509, 83376745, 309317186, 57998442, 306782221, 523950684, 105534200, 240594, 861265589, 861024995, 315340226, 651234899, 290813727, 31986824, 191217089, 385469069, 760893957, 207299533, 223660624, 139366804, 525125878, 133026743, 164394735, 721178789, 640461220, 487959198, 257762170, 938845590, 194359592, 606884934, 529616849, 437793079, 161895761, 129715722, 230414644, 146477173, 398076923, 221832760, 33325737, 125024825, 729852645, 250843670, 12999889, 482843566, 635696993, 405240877, 387024496, 327954145, 473028969, 38296964, 375299050, 64541806, 664628814, 20622071, 480700217, 56229856, 368319096, 440850294, 44990561, 810316630, 391311544, 69915915, 367179368, 693875011, 715152843, 250282348, 80107001, 582331672, 130770205, 377196411, 820561717, 732310217, 204750215, 368856967, 276508248, 144076202, 260835333, 121105327, 365595033, 165427885, 155546285, 116323268, 139325039, 151798112, 814298919, 699896562, 44096668, 635094139, 176970706, 177383966, 402881927, 247229032, 684380500, 411841122, 85030104, 141147642, 135225690, 726793980, 203036689, 175367198, 53363897, 480371558, 877158193, 212472129, 96153945, 256768257, 359592979, 816464661, 790737391, 364085941, 278653010, 544706423, 238866689, 59560972, 275316719, 198095888, 40920845, 242934713, 416972271, 147599686, 231332203, 301031331, 625959732, 937288250, 848061385, 583572888, 481725467, 304255695, 408269018, 581804795, 605489506, 592973884, 595952150, 697392538, 153882541, 500995597, 122852282, 591533902, 812929402, 571169686, 348977631, 369000860, 386503291, 270841924, 2016042, 13391691, 13391691, 345677657, 65489695, 297619585, 418874677, 281433328, 89743074, 629134704, 761687616, 13505270, 329725336, 471297112, 769100159, 342616036, 40496174, 197790192, 98873358, 559854239, 607261734, 43809106, 569542100, 166774881, 496120278, 196546302, 235397539, 218940718, 567002528, 262354116, 130787884, 293255237, 722350689, 574475170, 686058314, 62262127, 600592019, 731123993, 258598425, 245362746, 818621264, 4618080, 705087089, 700469009, 137359336, 272466943, 547148347, 34536653, 740414404, 316230188, 379804143, 589162354, 170642466, 284074043, 430984840, 124848901, 500629106, 399327335, 347977380, 515499764, 701492052, 8187126, 385653664, 377466538, 401968584, 437748410, 343974300, 5164751, 348075762, 348075762, 385642889, 152889978, 277780292, 280533121, 119478985, 107351908, 59186883, 313423692, 418099771, 2386965, 428245678, 425858713, 134696031, 21406615, 107694593, 180481405, 236695870, 544007454, 54430439, 842594984, 761257831, 522069373, 419711424, 150302521, 284190050, 21010641, 235157520, 519015080, 578181527, 97583433, 189443618, 429719405, 424909365, 169992537, 833454210, 804922384, 758996257, 813270314, 104230748, 354893301, 190453288, 69208457, 393283871, 213162394, 273780463, 22047515, 364810833, 115343513, 24566412, 429856750, 247994576, 453114357, 620169317, 262397708, 70535067, 258438061, 310220802, 36380150, 134636634, 218217337, 5191563, 217512874, 212321311, 339240102, 422317795, 270146057, 320940017, 66042029, 623842086, 65610815, 648269822, 533034774, 65306701, 506079666, 65281329, 363805221, 106740559, 266074648, 142690296, 127186317, 19488411, 567914929, 100319685, 259427887, 327520842, 466070404, 11375856, 250927056, 464348028, 152539844, 73173720, 97941201, 373667712, 446017742, 253069448, 127971097, 642648095, 562596982, 270137470, 104040462, 225926954, 145618459, 223944691, 271258285, 108838778, 175257004, 46054758, 376656444, 942267613, 639875290, 208169589, 407019165, 145814570, 272578113, 433084310, 539894838, 186948086, 782496903, 628221555, 436017789, 613882081, 858368963, 873011562, 567610734, 202233761, 246702948, 596150659, 689180118, 786594468, 268103087, 394994946, 747963669, 413136758, 78404370, 488084938, 112345201, 14438149, 745145584, 711247617, 787950901, 99747483, 374788058, 370341706, 709902977, 80706903, 144318249, 103428748, 74770943, 25005234, 409197845, 162864230, 7742100, 358823905, 351081805, 255549926, 337163058, 444348934, 98906516, 332373816, 494878881, 306222610, 586417026, 605502263, 598241498, 814202339, 944217616, 793937806, 133748251, 644568724, 223772513, 544602052, 216837817, 376727835, 353865659, 275000642, 492445590, 214291988, 86376064, 330255220, 561715616, 844708585, 684975351, 369469887, 562329159, 895127590, 590175876, 423192622, 386560112, 245573285, 482874679, 177177106, 84991358, 360559751, 320181520, 89833826, 23532632, 420743581, 149616532, 247293885, 165148778, 117802021, 612136029, 447049860, 83319179, 79593295, 250937573, 554626311, 756307478, 301782158, 138069331, 89094332, 178150008, 237854361, 212263816, 526704802, 373904747, 326573574, 56348321, 107982799, 729435495, 196495505, 253306411, 204172689, 52973756, 464447661, 33285575, 729643313, 498180785, 268491536, 780635841, 685208006, 433602146, 130345868, 377250989, 220458209, 483905318, 270943785, 320053841, 302415900, 69908751, 124111516, 492181910, 583856749, 351073675, 298414159, 227572242, 17632087, 489286163, 191971951, 32969653, 276555683, 120609179, 433089750, 58729662, 563969806, 768328707, 371616733, 225767641, 353995647, 563943907, 30224708, 206246152, 154922059, 34789825, 254894193, 159419176, 383832271, 562730545, 55913374, 649508468, 304274185, 608618539, 766143890, 322155223, 152688718, 151800649, 432206078, 706895390, 246163382, 342066138, 121330564, 490817880, 564935656, 536471033, 425040570, 598786947, 734376566, 736525289, 595572142, 330696160, 598640718, 820948115, 263253673, 384100994, 368797113, 400096506, 322713755, 589846120, 911217214, 797424818, 4147035, 385906030, 385906030, 104471092, 512444042, 17873091, 925084393, 555526445, 538768302, 760522282, 384672540, 560810955, 164572919, 681860739, 746016693, 631968349, 48692010, 467295598, 399194700, 132680420, 82906248, 399351953, 230648488, 423313835, 91961396, 114370723, 450212619, 236575525, 460470395, 252113627, 452883357, 289780935, 40871649, 206341799, 687933946, 553489468, 15607160, 621813645, 621795023, 78654033, 152024021, 427430613, 20287327, 161910211, 277063980, 200435536, 680655251, 412650605, 11649242, 106803589, 25223904, 49865329, 253998190, 443537024, 247548323, 565852715, 573508593, 149720300, 340771684, 192044752, 137227018, 499615338, 399065248, 754246256, 648507817, 13503220, 301480104, 295276828, 344164289, 349715813, 823836400, 278672418, 663295363, 394602476, 486934761, 652006027, 664249036, 771848373, 284943118, 338892559, 194894300, 188238984, 72439792, 52744882, 100140763, 120791990, 210918023, 319949463, 249324035, 229559586, 421247576, 151358274, 370881085, 25155723, 634276729, 77109186, 2207405, 588489115, 588489115, 342781555, 319344058, 919411611, 778545082, 782399243, 7993668, 33264091, 33264091, 473105134, 305579802, 154696256, 586846331, 241004818, 332663727, 20459284, 155986223, 417715469, 274652942, 33763284, 134981508, 235535398, 615557790, 90036588, 315800435, 76799503, 493400061, 259416534, 109672046, 319059251, 296816564, 536960683, 132043266, 23385535, 59224519, 389288758, 121842546, 474785027, 8505365, 811438413, 802933048, 337997905, 164014051, 294240272, 684532679, 94297954, 928040382, 867618171, 743929856, 494272827, 339900155, 82960770, 556608741, 113343886, 164947053, 659140144, 401060396, 283872963, 143983180, 101822318, 331729897, 67093568, 383590504, 191052934, 321663366, 394414088, 381374454, 255622598, 204068748, 39555680, 9970733, 70847490, 60876757, 813081360, 783663197, 467402733, 94503246, 379322128, 569177612, 848675086, 648159714, 136739629, 7743696, 514861020, 514861020, 780806387, 331696106, 192997939, 498456428, 384890900, 75517774, 222997341, 47513205, 392663093, 280164578, 593498402, 198769170, 182201962, 147629701, 255355139, 84431636, 15075394, 2935515, 13724464, 13724464, 182248278, 521779727, 585457140, 248008136, 888464758, 94773614, 193690878, 479604683, 698914094, 380209596, 188487272, 154140944, 151917156, 364241223, 346626984, 36668978, 8865456, 140226107, 140226107, 183374329, 33596875, 30054285, 844856780, 154087842, 297989981, 423254884, 104511526, 906302949, 591646135, 584151896, 430899985, 464125059, 816185552, 108165026, 569305679, 354912469, 645842202, 56707114, 317387185, 362875413, 74443151, 136895646, 482567540, 46891552, 146778740, 744784962, 3273604, 370047432, 370047432, 318604327, 626354287, 16491188, 218984018, 550017860, 34970103, 220322784, 54656864, 439405811, 146189635, 471464486, 821543178, 599109384, 648725476, 305218756, 331154981, 313779129, 127977397, 546801292, 304523604, 101302952, 523244821, 857357120, 688911698, 210583352, 223219406, 180225845, 541801054, 732640999, 514277423, 258979933, 193581662, 126952556, 86115230, 429148549, 138891251, 15535233, 174812653, 376251671, 84101128, 638418357, 440210812, 132785686, 184762490, 21870227, 177282594, 582654917, 865775790, 339437729, 225492338, 197561221, 86309618, 226911743, 207415803, 114326123, 478491085, 569064298, 172117937, 149316463, 380056357, 3047161, 285703671, 282656510, 344346078, 766794398, 791706644, 17675671, 118237399, 620247628, 814717351, 108005512, 708503024, 176753105, 689131750, 143072404, 296718625, 421060889, 397302041, 32807877, 495825198, 135319557, 482206784, 752452769, 59778636, 74502558, 167758406, 205556137, 126745419, 330637881, 250597903, 273708533, 881603178, 197231810, 130615063, 109280343, 61210956, 317484252, 13918254, 29446188, 192396217, 140578850, 229368045, 146222540, 176642925, 346104419, 549934753, 105191749, 86760918, 508006433, 786920501, 76622307, 153970723, 355361770, 352160536, 97400608, 307028968, 523915568, 408897889, 101767382, 176760078, 167431561, 55936970, 4358237, 151546108, 147187871, 660414606, 625037447, 120100814, 370209593, 440202885, 728555509, 285141437, 256341566, 30771040, 179368324, 563154776, 355746804, 168852748, 202402479, 112018271, 288622492, 611846009, 133830924, 58166234, 211509982, 375326161, 28751387, 259906193, 350725459, 149217564, 868224347, 1842337, 349446779, 347604442, 163964449, 16266130, 431576485, 771901358, 304256862, 486272385, 259168931, 10456301, 14253030, 14253030, 196335551, 311415245, 94006289, 141724284, 55956377, 368982286, 59194435, 357945818, 585364480, 64200444, 447054631, 449289068, 865524107, 627810500, 185797486, 34952420, 202251219, 491265532, 321534811, 379079818, 479743612, 420516587, 19704926, 327548991, 347466756, 100557292, 485915935, 275126399, 577545480, 575765506, 254371113, 122786155, 467431524, 446161881, 362126063, 693563645, 518278001, 554472512, 545726388, 39673741, 475232752, 748500246, 734890354, 521979045, 198540760, 224130433, 546037257, 773198902, 280594013, 306939262, 648194618, 473459070, 364767193, 425637382, 202027752, 2688398, 565176470, 565176470, 520762160, 193079192, 55368889, 404704774, 709902815, 742780528, 477808703, 38928513, 620360394, 213063565, 42611571, 398579485, 134121850, 375915238, 39349321, 83536994, 251448199, 538284744, 47142320, 107704931, 63700832, 533356219, 411502427, 23681018, 83449083, 98073331, 179277324, 330133078, 433717260, 83495939, 526275222, 13526762, 385739742, 697074319, 663763620, 497881921, 20798154, 388425014, 131270259, 102688183, 728972241, 94522462, 368591232, 176216231, 614297933, 828704058, 853056146, 832456995, 160852594, 406924798, 315217617, 817889585, 47533791, 543963915, 128661925, 627525147, 172403077, 509794742, 866978619, 609764004, 67739384, 19864296, 132522774, 94208679, 87394503, 376961444, 259018456, 195868553, 326026389, 48338243, 218760971, 111454331, 593941868, 487699019, 399501750, 505359253, 35227027, 363372648, 56113063, 221241962, 197381061, 87950442, 377987803, 21177369, 747140422, 100640091, 925933120, 47639688, 38329431, 685804173, 43015284, 708453326, 10332654, 347031275, 336698621, 357727482, 581217904, 91077049, 404433892, 218908226, 334604478, 17537922, 545272548, 136758573, 2671774, 34351753, 34351753, 115180482, 556730873, 499092592, 185652086, 614889842, 210638098, 757574545, 659167835, 42124216, 186582540, 217034347, 537371943, 454004013, 87010804, 247073351, 910332339, 482819486, 83854491, 430063075, 383352395, 128330379, 309973517, 688897882, 680172168, 143916210, 86278373, 296376735, 344004676, 36763794, 184508857, 244560860, 178785184, 44452978, 68501992, 303992279, 513030543, 600798294, 374715756, 207262467, 562158953, 836112832, 9685674, 397271723, 387586049, 479799457, 133391329, 57402249, 902362137, 922100085, 37257046, 948038385, 742644260, 110018342, 622588851, 202615673, 445503020, 424702674, 554274333, 566886003, 123917222, 378965327, 1456639, 534528960, 534528960, 258399159, 52416900, 235293770, 469867795, 75431479, 384227433, 410867899, 753725550, 72160649, 326354257, 173681514, 239580822, 546698806, 115660464, 173644531, 308726415, 951247326, 705841789, 364296710, 359672833, 707157952, 164980272, 555703391, 652901643, 533324324, 102478810, 504905962, 928106221, 8389557, 197995235, 189605678, 220965175, 513292978, 85916297, 241179458, 56506200, 667255991, 807082752, 636139260, 36316702, 843219636, 798011363, 126295727, 377305875, 3892043, 623516228, 619624185, 550132248, 321152575, 886986309, 943671292, 603889486, 115583088, 94364022, 42133498, 445274655, 327602640, 629483522, 121228547, 407781215, 118795241, 471982358, 274361647, 938511793, 420841285, 224302827, 262011364, 480749138, 635626324, 640200189, 87887830, 336275959, 90525718, 406848146, 219269117, 107760687, 409280437, 486324622, 301538304, 25111296, 123629453, 587565752, 38370588, 454158836, 11971775, 73311344, 304806343, 292736917, 317274948, 86597043, 543924114, 81421879, 19379429, 27160924, 169291481, 434636996, 297120376, 233720655, 473670227, 174772806, 409536468, 576578030, 58617872, 705015024, 34391674, 61822478, 491527941, 192920800, 816774380, 582783815, 322565236, 391427833, 240092708, 672988414, 532494433, 177964087, 370317119, 86640970, 146205297, 656643313, 258703936, 679514130, 506524777, 340661307, 208538684, 68009273, 372336696, 597103936, 351543606, 79182994, 368610861, 540232945, 521697214, 317576587, 405573294, 135868455, 579461305, 25292680, 116798304, 3712024, 16045671, 12333647, 151411245, 533663220, 177089543, 517140785, 220998643, 7360552, 619391228, 619391228, 56342072, 646500497, 19380667, 188200118, 140464936, 72865031, 31226816, 107669452, 36357832, 399501299, 21938327, 607540467, 69048165, 393234228, 382983276, 31621431, 315871441, 261772682, 181005395, 357164705, 710552875, 75755252, 228143053, 460938441, 339199479, 520614473, 4797277, 705071546, 700274269, 770584123, 417633455, 73189691, 94403155, 521401570, 393047218, 319687488, 37107337, 105995352, 240347685, 154977266, 326836666, 383059241, 533064685, 267076477, 278673525, 535499707, 171486765, 285690567, 1273170, 221551694, 220278524, 512588427, 811201241, 153145653, 287796061, 47151993, 407311104, 707805548, 73609078, 222120025, 504090009, 496979429, 429324621, 206702083, 146918867, 182300778, 780708356, 939718711, 318906935, 185717350, 228029511, 124961978, 113593790, 516282205, 586220264, 412383449, 279366260, 454525032, 471069912, 468011031, 327340525, 436785803, 650234844, 514225167, 15543621, 221788756, 51510003, 342114708, 521886867, 233410615, 196022062, 166124626, 626261804, 416154730, 1738214, 359904118, 358165904, 198700804, 518416478, 175121639, 263471382, 354909850, 233362361, 723753825, 431096203, 457522254, 735778573, 157068568, 946356516, 77567161, 638673115, 10020233, 179042230, 169021997, 359770145, 106140726, 331510724, 177258231, 120309083, 46660856, 65460773, 245584431, 370577423, 331110802, 101692022, 165170116, 429715627, 280933462, 591121559, 706726383, 174344432, 426117907, 413360518, 420155232, 230984635, 75310330, 187524493, 312307119, 237324203, 381525168, 248665454, 707534534, 546384671, 154019052, 110736119, 342396429, 188667216, 99869021, 46123671, 345735194, 76829984, 155650733, 563176069, 720188328, 243786345, 545901306, 81000924, 410484316, 311041832, 227654634, 562733413, 661571843, 6529652, 428400418, 428400418, 443734698, 2163860, 264233648, 264233648, 157326390, 123200270, 230493207, 127455, 11605102, 11605102, 443613276, 774752312, 749667875, 313561501, 304340993, 724650048, 293693633, 412550400, 842219850, 44970867, 283768908, 321121076, 407277387, 51605507, 7361545, 505591895, 498230350, 563752914, 648236837, 154981617, 464124526, 594784590, 290576980, 95671453, 325303381, 208368712, 478943068, 671231315, 386141971, 188083208, 233083181, 196950780, 362714575, 394186903, 593163863, 672474406, 32692596, 307587764, 242781101, 618424016, 44121695, 845670379, 904261157, 174563334, 417980344, 145550692, 315468829, 719266868, 44018295, 722222996, 36244593, 595245733, 378814996, 540440646, 764007960, 748098088, 626796871, 354753629, 163552182, 410881712, 16849876, 122788679, 319940093, 584938144, 500052497, 212001049, 42058105, 282351062, 93521870, 446590830, 456405601, 606497998, 563231506, 464812673, 145260611, 750026076, 582048132, 609538681, 260111308, 50215674, 112804907, 48508175, 75219629, 485281252, 155884925, 319802843, 521891886, 87458635, 398322582, 238056355, 223189158, 476813662, 606636902, 186618415, 347436236, 305091190, 325553967, 537734202, 128980244, 163445847, 540018212, 193858669, 19671194, 232340585, 68443373, 633896939, 751956792, 277567166, 238236445, 622937872, 283601826, 420123024, 396566423, 377473148, 318120187, 285152341, 31874595, 717434048, 347600378, 287655969, 740836204, 379167734, 72507089, 91084826, 316717577, 681876885, 607372696, 460345071, 549365369, 752101462, 324767161, 468530240, 892907769, 14347559, 302781954, 141435145, 95506147, 131860, 119037665, 118905805, 324316315, 121926190, 53328329, 29252456, 735645270, 126663029, 135931155, 86088964, 35210046, 450508427, 314830572, 289291819, 739694790, 64137382, 71975383, 312158966, 48649707, 537619697, 331729352, 262178555, 652184328, 598910137, 100930197, 208643878, 42384824, 47758192, 68274416, 254802772, 259551010, 529684040, 824693839, 378230257, 454708743, 894825128, 550344107, 572989860, 192732999, 717536396, 365052232, 153555126, 302070092, 122343842, 53548788, 63768055, 695860027, 478472788, 230002222, 327947024, 789675862, 216263771, 567988184, 697610290, 700173488, 585771194, 212048080, 133194541, 8420721, 569049733, 569049733, 34016742, 845694682, 797273958, 53740834, 81477196, 45683265, 129547761, 237902437, 537228789, 497891283, 53612143, 38159781, 157887270, 80328851, 468066492, 1357247, 261514624, 261514624, 86344925, 418384273, 238557348, 756914049, 804265604, 793386629, 311304410, 281416696, 693485046, 825687923, 564529161, 337272927, 311979897, 141471501, 119469780, 302849042, 379078336, 180820062, 702890772, 57903311, 444498623, 468214247, 427531669, 487890645, 62058881, 522665686, 594645435, 857445888, 241693237, 598370096, 687262538, 100210567, 527302372, 720124993, 133274911, 286822585, 440447532, 24288245, 258718893, 252634237, 58111778, 140977278, 8794816, 348182134, 348182134, 703001551, 477104954, 441554062, 140195729, 514096581, 117145975, 292299869, 280505180, 164210308, 260569879, 109685507, 810240343, 285346590, 79529533, 204903326, 341742029, 181356976, 298343953, 106305099, 751771564, 117956259, 54513316, 557936648, 155681786, 795752738, 648136426, 79944379, 263143598, 558517521, 253112520, 60012877, 473387336, 446064955, 465938804, 261783289, 326034304, 645384099, 158972591, 159646753, 37331401, 446675873, 215439607, 375404376, 248855133, 315585031, 351894897, 246590264, 484505737, 501656170, 201169873, 514235709, 346900233, 442037898, 509283917, 219433999, 461748765, 439800519, 31030447, 469968665, 132818480, 187045889, 63089665, 258250175, 387765649, 153448079, 291201074, 471702802, 278339333, 122096665, 294443558, 457497874, 494732070, 749009229, 669764823, 753927061, 827447762, 279713471, 74775601, 165519737, 189029647, 582453542, 843307320, 518800085, 147416054, 152309510, 36825617, 6417520, 194546524, 188129004, 13919424, 579898751, 821540268, 286810239, 317053273, 365511175, 31219093, 255981288, 22395817, 47104684, 81756366, 117097128, 256478408, 147917573, 32710639, 161752033, 111415627, 586820515, 944407887, 863006212, 529871055, 485955925, 487051108, 55195104, 78097495, 239916259, 567653078, 932713117, 87895336, 66243472, 327689253, 130521550, 122168321, 256089187, 169147954, 45584429, 480871774, 23170457, 634370250, 130402027, 225514976, 129043514, 356208644, 99252977, 45216072, 205165570, 218535619, 400061683, 342053220, 33476087, 15395907, 529865240, 231202801, 253552408, 343036537, 212173127, 308877941, 231582161, 166503602, 334658498, 98255861, 226355903, 199298789, 158906121, 274589298, 369331866, 526089944, 139256948, 124651248, 225206936, 137080886, 435887908, 188792831, 27363120, 251878784, 245404698, 2633911, 863759116, 863759116, 105786077, 62041176, 258318952, 68508815, 396971527, 622144618, 67332056, 215651949, 339245478, 57287089, 244562073, 854286568, 32818647, 110614266, 232178229, 205894075, 744934406, 262621044, 148871004, 559990861, 318751593, 508131380, 437828478, 18727536, 747008937, 448496417, 249310559, 597328245, 507120102, 493334545, 252931968, 251754280, 641980107, 482135205, 197642512, 455419157, 58894349, 29610818, 140848413, 399544084, 643671134, 648761585, 691926518, 80811158, 133698892, 132508809, 8379841, 103437193, 103437193, 67997195, 69147301, 7862639, 486899463, 486899463, 813132611, 334512265, 296261164, 419860820, 32060134, 102759083, 131957073, 10606212, 188809121, 178202909, 277446804, 405173946, 442131472, 482140249, 418385887, 430101469, 968948473, 386091020, 404862589, 296012169, 670393, 51912468, 51242075, 324208497, 245834999, 278771011, 191075979, 356895704, 115310578, 239795555, 213694710, 677521185, 21914103, 524392360, 32362413, 317989720, 62381584, 576505134, 212937425, 403259790, 25212286, 154716947, 39973952, 142912714, 304701766, 918923332, 661649979, 20134904, 410326725, 61189308, 531316954, 517517157, 182778254, 3506399, 136554759, 133048360, 74636938, 281871628, 848789673, 295799150, 160236068, 219791336, 351497039, 565248052, 602590530, 613558614, 610706762, 104693543, 216728842, 502799743, 148105563, 565672260, 7437567, 107019343, 99581776, 331367337, 204592838, 241410793, 858092723, 132497165, 270733706, 213603796, 213589276, 146933299, 684754269, 146934199, 107053069, 553998204, 677921594, 249755965, 370309374, 686545590, 346758575, 356481276, 589089213, 194378643, 222884223, 437354198, 734122073, 240757566, 212910297, 31648089, 97094334, 286438765, 226464183, 447499783, 223382002, 708032654, 775907230, 625390094, 716574847, 23039495, 95094742, 145905018, 732394400, 49203893, 121059588, 169761037, 384113454, 337054648, 23546775, 895034255, 764281041, 716374262, 725958337, 100818896, 146639102, 57018313, 377763905, 669060887, 228179469, 474156930, 516956994, 553501228, 87995799, 821662065, 386094458, 126675184, 212943182, 19870613, 76837840, 441200086, 900622750, 11499976, 472600374, 541790797, 84929341, 833447005, 547595636, 278406387, 445892332, 95817770, 394531020, 41430498, 272849461, 159867798, 290985617, 758848993, 649996082, 63584457, 597134400, 554948583, 299316333, 219917235, 285792276, 539959200, 321905084, 122949802, 384839937, 802335627, 781354689, 159985899, 562444195, 270516004, 322695172, 306881667, 912943901, 479757781, 465614360, 219544123, 668570910, 274159725, 169613199, 411822363, 35459355, 803638591, 453446807, 13009295, 446770361, 517788617, 299842553, 332279007, 76488469, 285869798, 83904274, 259721534, 164186772, 61750406, 459188777, 422588346, 9589695, 650671495, 650671495, 578723578, 161455280, 301398840, 163163176, 111811871, 87097295, 90797299, 704825981, 368658485, 388866156, 412644736, 41355986, 299634213, 294274036, 453274905, 100891380, 354162321, 37996560, 503374954, 422095221, 749122572, 109176723, 351237585, 111146156, 294366099, 180519988, 363158686, 530671433, 169236533, 790421909, 670568378, 426832162, 522467878, 651559236, 19486957, 135701655, 59130013, 647652678, 279236288, 601126451, 777652161, 689621873, 24070766, 763482142, 646493491, 409974224, 33890567, 448014184, 664796468, 44838014, 533477229, 275510856, 880917191, 597265635, 185548140, 244710335, 416245588, 920115365, 735417639, 709194114, 18146411, 286290690, 233307242, 722811177, 187927561, 46838013, 217950859, 166166069, 209636365, 211105732, 339550358, 188203319, 420484893, 298243826, 205808143, 674067680, 131777789, 274791033, 222493961, 211318163, 451148602, 285467290, 135359241, 361037417, 189573217, 287253777, 42377091, 114777022, 308751492, 187276351, 743955366, 78946286, 68743125, 274479740, 8341253, 292482649, 284141396, 589260671, 66890666, 402768893, 790084295, 717978892, 145896823, 471760774, 211346084, 364418636, 105437403, 551963955, 242233964, 362679621, 321162547, 447161636, 430511708, 333119023, 676348446, 600648994, 722023583, 657059530, 100374071, 555074491, 653553529, 285831795, 310070881, 453625735, 531702948, 178212776, 484436897, 653552425, 563164245, 342798793, 408711283, 452121184, 352194974, 729964092, 759534536, 568188813, 33389853, 451989100, 583271911, 19691384, 115530665, 272895202, 269830579, 2295848, 790551811, 788255963, 88010136, 120617707, 860030272, 146747801, 170833872, 916908258, 775246235, 567105938, 92121017, 520664313, 258653114, 40711505, 409908632, 556257057, 146582135, 237017908, 710409602, 559533638, 229170499, 157147658, 332831192, 37195055, 476329170, 503354417, 280384614, 33762834, 22906701, 123358741, 537268283, 168193496, 150018577, 241890876, 435400018, 169759995, 509339027, 73053090, 761505349, 377052256, 235015403, 305897826, 529460077, 567275077, 160764938, 293269596, 84358911, 77457865, 610580535, 438124589, 441965778, 554562875, 160908414, 656635436, 368481275, 35292727, 322528898, 777553718, 718885380, 388886975, 275882876, 111110647, 431842808, 517932207, 346953362, 492197213, 285541357, 262444530, 62461567, 211308058, 110630008, 668723502, 747780682, 702814383, 341998861, 306173388, 660224578, 760252595, 135425672, 127678130, 600919683, 213660789, 189051144, 69810940, 313621509, 50897387, 282401038, 594801441, 309027221, 620113982, 683895432, 394398583, 471973201, 63733237, 520996956, 323507404, 183250878, 85053418, 346245112, 118971300, 126791279, 188304308, 481159762, 419929270, 537235985, 340970707, 721177154, 349239459, 77421867, 131315120, 272936461, 596651765, 536617424, 277305877, 321579805, 577203872, 63423017, 516967104, 518216103, 231758375, 326873510, 113881464, 505127624, 545364114, 130178919, 288542682, 406000574, 299311801, 199341967, 680798608, 909966994, 865807090, 563896056, 233570899, 761930282, 159128454, 133248766, 446201832, 342144417, 323890648, 639766116, 627313386, 385693474, 46446584, 348094621, 146123859, 619932994, 450932766, 733388127, 63138842, 698322795, 543797280, 589476310, 80271120, 36449827, 23325681, 200056334, 271158729, 279001511, 684556703, 198532575, 259898473, 390545778, 213776878, 64102829, 412021712, 488762624, 456613924, 282596840, 297148831, 95256272, 498190269, 390563748, 232457532, 75124550, 1590561, 92069255, 90478694, 50339915, 240134867, 63125398, 145784169, 215740614, 72674683, 486354322, 817166553, 142950553, 607399851, 285614597, 565878192, 819085398, 800346324, 337029012, 165729936, 76679858, 123104886, 254991964, 175951117, 278884684, 342674944, 91174146, 153004705, 465732807, 40893392, 645428308, 769680548, 11768534, 42845008, 738884233, 778170882, 646523694, 476864053, 169491786, 420802616, 745180113, 57204133, 214065211, 430268979, 31499736, 70716733, 203242869, 62851877, 186135028, 466930699, 365680748, 116276750, 496980419, 455748411, 259602288, 744563325, 670873083, 255316446, 449415414, 271768086, 165270182, 29225782, 112426026, 910289877, 786717845, 64108092, 58949791, 774195300, 589340747, 278431548, 326943925, 160454537, 160357681, 238522329, 330894018, 723693061, 129200282, 426380310, 5336382, 34576136, 29239754, 162464923, 370679871, 59325094, 469467231, 322519497, 688576632, 445849023, 500326689, 894283271, 968969651, 309975846, 622489473, 125859339, 400370917, 85128734, 63019977, 514653182, 572537776, 500029899, 54746272, 287255429, 246637933, 122519272, 22745937, 163139886, 716258245, 370280458, 36526776, 233800608, 9759670, 48721323, 48721323, 529052191, 52889829, 437349414, 467183307, 313672245, 361327977, 430328982, 508770122, 282670559, 443642432, 321173131, 146156489, 350370059, 718678329, 31281224, 881634710, 4911294, 452458789, 452458789, 147220695, 66830746, 40183088, 111290575, 626976015, 3412670, 790644932, 787232262, 502817904, 34015845, 385885884, 283585033, 62488235, 101170600, 447306732, 466747632, 439429991, 156220949, 149620157, 299726855, 9452647, 326963573, 326963573, 869645982, 598094787, 610465803, 809564210, 522159857, 639385784, 185630120, 266049176, 141458483, 342418664, 421374997, 119732004, 681315747, 717012631, 447547764, 161131030, 472895804, 359384387, 141322848, 564033640, 36958927, 859918488, 614220617, 423732718, 233970610, 297296008, 266827344, 65022272, 238532162, 539422598, 29254883, 627637134, 238514313, 187458653, 464212549, 85528446, 61768486, 34128843, 233867740, 341430363, 383159392, 705063698, 39904521, 146652472, 316419435, 233392329, 3671077, 643569792, 639898715, 640874931, 59244561, 136395621, 149076655, 329425598, 228384022, 576506032, 149836452, 258629014, 53577955, 166492660, 154283936, 90150173, 382571175, 39201973, 162807252, 270839000, 351832441, 301359631, 227154788, 312120105, 190195053, 775303651, 724885425, 119415308, 593934371, 366851477, 170497926, 565888446, 308450894, 85004521, 425000738, 337515367, 166962956, 87676271, 416076929, 37064467, 136382304, 255857, 634795746, 634539889, 460844828, 275462851, 311605243, 301636502, 730947143, 609475450, 87293923, 37306341, 392961024, 368273297, 324002504, 400543927, 402108659, 783602998, 249860671, 142260043, 406944213, 132584355, 295448626, 68738348, 334490974, 155529097, 165294054, 759734948, 523489523, 24843028, 353551426, 725826982, 496989566, 169499267, 167724902, 322794185, 102435786, 105825875, 373346596, 273791218, 9642329, 149906586, 149906586, 56291610, 339377270, 300075730, 213786490, 208145961, 472391461, 363467271, 83233466, 253861421, 439744706, 21714575, 79567163, 5475751, 25447758, 19972007, 93792652, 124884920, 562298431, 170555750, 42325350, 114303731, 250140346, 44300607, 435536855, 243607062, 515131897, 616107436, 79244510, 720733579, 56403534, 532361781, 833470796, 440518168, 393072473, 465252173, 244401935, 325699322, 551331861, 490966213, 32655778, 516001294, 141320796, 576422533, 164962960, 456406384, 721617884, 113415355, 362156990, 298839425, 178473894, 73246318, 209854459, 560029133, 298376253, 255395415, 238339022, 358912775, 573069695, 368502752, 772523888, 498223362, 688945447, 846830036, 732987107, 776567984, 758405534, 62650885, 734915319, 84123410, 226890948, 593249826, 513740635, 533173745, 108311918, 71492133, 777835471, 254067226, 562134134, 130139933, 342732477, 589373506, 394671621, 146421246, 42489609, 186107510, 223087083, 199850240, 716753419, 257556369, 142879975, 395336574, 274292104, 553072336, 21943342, 496482434, 105534354, 613337233, 186551073, 567859465, 95622510, 643711372, 103497989, 70698816, 611795240, 414940942, 293067285, 161205843, 261814243, 34956739, 243718214, 251781362, 267535693, 397966713, 163174470, 46648523, 142676848, 502710451, 162921290, 492971004, 169157000, 812421969, 137644088, 152482428, 10828087, 22629534, 22629534, 626923334, 110059387, 594461748, 51141949, 379391612, 56044872, 64182810, 66069136, 127585054, 573691042, 274969676, 533289893, 256512054, 326799675, 259206925, 235631610, 47593128, 193782752, 140434388, 151526712, 76150249, 828991865, 484287427, 88426226, 46690802, 318025063, 139808283, 41311476, 46559268, 123900221, 283218969, 293057854, 266213975, 383063838, 30029811, 73979420, 660387667, 285631527, 244605946, 401822115, 99263190, 507180707, 670443596, 488207735, 134795780, 429130462, 436503950, 89019088, 65986350, 135695739, 518443442, 666694009, 324479779, 335492187, 1438869, 651196554, 649757685, 365733779, 269576622, 428116543, 494797333, 211802220, 294285669, 31628266, 396312116, 223297264, 386816295, 302156829, 310219458, 210836555, 290097041, 77505568, 648636872, 797657192, 180631452, 209473268, 101218486, 27455926, 495226674, 166880480, 82763680, 162008370, 450976607, 369453009, 269949585, 33082701, 71024240, 173453134, 201080379, 456032514, 54321629, 36093956, 731645912, 475674957, 35353776, 53448108, 138663483, 276418444, 365473047, 501104238, 4876715, 281007383, 276130668, 480806597, 223647447, 15788887, 382992676, 336476079, 29729243, 618740382, 146398569, 446688849, 273543465, 138273039, 38174122, 26764788, 3893726, 399525294, 395631568, 44280467, 139891049, 738753203, 550040308, 229834104, 578210052, 488644748, 664870404, 628283941, 144368592, 390095672, 190354865, 216522183, 179261373, 30611455, 205180953, 37138423, 408239852, 270853330, 571649824, 690253304, 217260495, 172173471, 261248795, 192606469, 301012092, 37497063, 428613712, 349896009, 300754984, 51340547, 643541060, 575176680, 683029249, 133742664, 81954887, 65923533, 372840158, 609071419, 602126672, 222393912, 78713087, 520853019, 485279846, 219870351, 157141245, 621270481, 94236988, 727174758, 204601915, 360867656, 144614951, 319613185, 644093077, 831602580, 555085554, 135359707, 535837499, 254669139, 173405774, 70614579, 276094582, 181904160, 390905405, 954492035, 117062924, 166754819, 362512919, 365109576, 670032873, 578318997, 42053511, 100650980, 145269496, 610088289, 85146714, 112699472, 178503626, 853700202, 18567584, 556954870, 586994511, 938266965, 76787798, 510824249, 86142673, 335063054, 758760824, 881690570, 550173043, 403827426, 448146408, 6763672, 225527117, 218763445, 124172041, 511256588, 170741184, 545602568, 154403920, 663537562, 836545708, 66085329, 812268754, 4720304, 400921436, 396201132, 54130995, 359701951, 89904830, 478538050, 673220101, 822112395, 779737984, 139867414, 279932646, 406853733, 19794474, 86255248, 500922664, 514871354, 842657621, 903837179, 279583322, 323065898, 980255407, 717352092, 160220931, 93122424, 449344305, 510811306, 168980548, 161937652, 597482882, 320423402, 320867805, 272905283, 535213786, 448734381, 20323635, 425918312, 109148601, 646818861, 246153549, 449797996, 438667085, 120755035, 243872878, 850515059, 227861652, 401839743, 270751384, 264199863, 603161258, 281723351, 217129508, 111856756, 310077451, 694514156, 113113007, 147848286, 159768762, 575688323, 772414494, 99999815, 869702581, 472692803, 178671906, 629404640, 44338206, 694403206, 44665840, 602787933, 184383479, 59721123, 159255331, 475538267, 239067742, 353908514, 26585245, 199130970, 727709048, 31578733, 144174344, 556887718, 266531147, 281077847, 468353184, 109683315, 434836813, 67505563, 134040673, 173273091, 71275529, 5747518, 685840185, 680092667, 283283289, 310928984, 516414224, 104767553, 250605755, 464851687, 517974388, 247857501, 369883835, 54435022, 470845478, 604143711, 222772225, 661230076, 689731142, 297698373, 540332128, 626491039, 98880043, 124271074, 686519702, 144865021, 35655984, 737148207, 19061269, 274288755, 559297836, 405217211, 61410262, 348994954, 107389992, 158263225, 610624196, 213318708, 454166261, 336554177, 260007487, 2040980, 643253881, 643253881, 684793480, 67688184, 275098940, 290959895, 68409273, 515920480, 695221543, 307508667, 608183207, 737276203, 111400983, 138864672, 100780157, 350421374, 428803270, 246805148, 181462901, 861049222, 630353685, 10223069, 631565282, 621342213, 14662475, 834783804, 494919564, 67770487, 71051477, 110048591, 320100695, 79658188, 217635740, 355946876, 304447615, 229661641, 501623835, 714581937, 720633697, 196816206, 197009168, 206468414, 254565911, 829251161, 196080014, 196739977, 429466777, 679090918, 225892064, 15592277, 52700424, 486107145, 296183161, 94250551, 146631086, 75831639, 582869815, 261599256, 504700024, 112376066, 154878018, 15456665, 18707712, 206137522, 346113890, 330545358, 342749007, 821077420, 675856745, 276287951, 162905754, 624968562, 509088433, 20080357, 177250173, 453062449, 227605606, 357169782, 400998980, 27446313, 183146983, 36882472, 259147171, 85143835, 341548230, 64455866, 200882720, 373302539, 686088306, 707195354, 394655778, 5796283, 473684399, 473684399, 489411777, 489272732, 44586188, 410655237, 63877931, 185597399, 85451317, 452549520, 465580199, 164172669, 159277937, 93628837, 34387838, 99863583, 383540345, 191521106, 120201093, 595444618, 512394527, 158961493, 362878204, 616946436, 243910457, 125295379, 87598923, 726323059, 797869537, 451693124, 361700464, 591211489, 205964721, 801001872, 77986884, 77637520, 35017269, 38630172, 619364778, 323137962, 177172491, 160907973, 221064982, 327877632, 572339074, 350014448, 18653865, 497970059, 34334972, 464448700, 155813051, 522811826, 624180868, 796893038, 585978139, 50445718, 468231306, 544943518, 288156754, 83681764, 105406408, 207785173, 61140019, 236329231, 220572482, 157554057, 50727928, 140349720, 766437896, 262314294, 180941336, 469265054, 420168910, 422292593, 29369933, 457740013, 210286147, 413239468, 87735983, 341020736, 228576468, 437938298, 168496794, 347838745, 168408451, 143464740, 384722988, 61610064, 267750512, 124913010, 46113091, 387606387, 311455993, 653954136, 372395795, 322056696, 209635032, 132662653, 403988098, 59770971, 75838005, 37966127, 523013559, 605728195, 565487256, 207025666, 254205522, 467253829, 19172365, 187583313, 82032909, 61948567, 245497306, 977083941, 460602570, 475591144, 15785906, 803962801, 530710699, 203701711, 253590610, 519357765, 59221640, 754251020, 202587201, 274015930, 16007609, 385870522, 931352374, 41662220, 332552210, 424478138, 431518857, 267529961, 393457273, 30294471, 152955761, 313073569, 540683513, 387366199, 239105081, 226955193, 180138975, 37070365, 472039929, 334890163, 687372631, 823682522, 257274558, 88289608, 502293190, 943025119, 635740997, 355454230, 34161805, 384337252, 44365845, 406390320, 676745730, 10686253, 543649461, 532963208, 511172835, 536348685, 353094509, 153116706, 464797028, 125661336, 172490303, 88326408, 622263332, 923452923, 781202804, 510289905, 193628511, 903926525, 623920920, 160913068, 287044592, 355105459, 527891668, 17583829, 514302111, 321450348, 480067702, 694454125, 572689350, 777907619, 816168024, 871012027, 156364239, 60386746, 753923008, 368585067, 258128887, 660190760, 423683299, 566088896, 138540309, 661719391, 279155958, 442399205, 811395382, 191535158, 329913881, 114426137, 387010273, 67395558, 194779127, 909068947, 189813276, 341951623, 266978792, 262021469, 563419290, 793986440, 537300474, 255269716, 269907827, 191110236, 350296711, 225181133, 81185504, 203916638, 388490069, 402528606, 664931073, 412983590, 409226968, 136689785, 155472227, 627371718, 580211319, 210263433, 77529505, 581529194, 227537991, 57177435, 273489121, 82489014, 781748338, 580186837, 597454623, 9302326, 376848554, 367546228, 166007410, 12217387, 158129351, 411211123, 8112821, 597414624, 589301803, 435326568, 361093438, 140124596, 100816092, 464861200, 16389881, 356216849, 876801080, 453510625, 369506873, 535422293, 262017650, 709569462, 118792785, 170721339, 62742604, 795490124, 19666793, 504117219, 225185420, 19035276, 141858980, 533732806, 53035544, 320582778, 235162524, 98146607, 437479520, 250324545, 374778295, 75606298, 169586963, 22593357, 35256674, 343266069, 3523156, 17171606, 13648450, 279829352, 193035011, 135208371, 105406915, 70443325, 584516796, 771831892, 133667995, 676674320, 293107510, 100119381, 18810386, 99126746, 44773885, 105866268, 40850885, 412638086, 294865638, 682966633, 585169487, 240595736, 285995274, 174999386, 295963071, 532488984, 588435901, 574662370, 94207474, 24281540, 568013969, 653755303, 365693048, 117609569, 264535416, 189788255, 316247157, 96467131, 177277187, 249003292, 56470591, 106278076, 513283512, 594875276, 59419696, 253569787, 376901308, 929070055, 622018582, 44523101, 108678663, 392438181, 667870725, 224890706, 189513268, 771084113, 178701548, 826535151, 163154250, 129022340, 68276362, 254565252, 640290493, 502252721, 256414362, 414525840, 606687074, 246669516, 58326646, 406434057, 1951152, 229455280, 229455280, 468726692, 529240732, 570341491, 268399488, 510475595, 42651363, 236978095, 191748509, 87364053, 104242338, 193834417, 55969973, 433884070, 540457787, 1102411, 453784369, 452681958, 392020302, 397993568, 324159492, 193781963, 429442349, 95682098, 201338144, 536815669, 34738745, 177709132, 79622625, 47615387, 218118178, 24136748, 132118357, 96121460, 713152685, 501101299, 177540188, 198557308, 281996503, 431337328, 411828259, 16626917, 280395997, 79057380, 41364194, 500480767, 272079746, 471134374, 309038634, 422801005, 863743858, 436839265, 446834663, 811390342, 599566398, 93401014, 183914363, 295808894, 101400516, 585308042, 668431067, 463863683, 39061907, 290510544, 132866312, 426424974, 94323863, 60331891, 78795160, 523118791, 612251565, 733776906, 345830941, 563625570, 107399871, 511460327, 396093220, 704903055, 4488412, 596139713, 591651301, 488651921, 85989017, 29413702, 461842974, 119611294, 323527961, 720115722, 893716043, 31575835, 450864361, 98757525, 538325192, 530337923, 112015522, 193518246, 754985, 370403626, 370403626, 38238848, 442841449, 483852809, 277491351, 70781496, 48511331, 127367457, 58959706, 463111220, 775331083, 851196741, 213985029, 295827805, 462848139, 186476503, 257753036, 912450721, 5499730, 897994026, 897994026, 503361015, 58559079, 439466896, 932341456, 523771295, 3805125, 361603913, 361603913, 618131780, 237480634, 219632766, 57503533, 256994238, 153277593, 101718459, 133667869, 140878811, 224883044, 250879058, 561618921, 530372251, 387345419, 101269988, 221473261, 718043052, 43659548, 692676831, 875183921, 58279403, 101826685, 24077418, 119651449, 1920836, 13586818, 13586818, 157362005, 655753024, 606627695, 98134840, 537184493, 596976501, 356529382, 18891990, 51817318, 22491110, 323352710, 28819032, 55712954, 788816210, 730898468, 154208690, 463440893, 186431983, 262189452, 157029216, 52209837, 300449781, 279081341, 46475968, 197494760, 138902726, 734629534, 498517194, 126772882, 479534476, 317563635, 230381099, 498588126, 560656298, 326911627, 95197293, 112334570, 2454317, 254214677, 254214677, 236781663, 19233329, 42764009, 435602571, 119612433, 67346763, 707312001, 711914150, 434405854, 647097136, 498204181, 395356638, 773792242, 640226109, 269125768, 144467219, 120348444, 88346564, 48111384, 665911404, 834835754, 547455433, 68931859, 154493929, 164562327, 411021473, 159995971, 789612550, 554355365, 68484757, 82348398, 664973482, 217843282, 374864918, 492946762, 330164276, 667799298, 200666021, 639970928, 552982839, 116643105, 715990805, 342042716, 5384370, 412925494, 407541124, 109487871, 386074876, 112344635, 382574265, 387532137, 147675537, 142337164, 449249543, 492336867, 495199624, 27197574, 36309909, 443326255, 544609561, 406001723, 52718254, 56802375, 109051750, 372386773, 131555050, 441667445, 368996881, 206804896, 117365483, 478625890, 346855251, 530272937, 630473254, 68386849, 351506800, 78694947, 500557831, 191629520, 455976167, 191826862, 118909890, 128181197, 215272360, 212725353, 148444700, 33761337, 420903111, 354969570, 151242370, 425747827, 258311810, 524768505, 60165724, 461456226, 723477283, 376167361, 77438932, 526788531, 210441371, 241995112, 163370970, 41399094, 487866637, 339288628, 143062950, 76038974, 478579548, 904668258, 834351014, 20915090, 772293864, 401615381, 215279924, 623642315, 422533437, 305095484, 387507098, 116984117, 590663248, 662775713, 177861046, 137597507, 459710816, 484516276, 461853679, 158424941, 645448818, 296681138, 636477376, 87301490, 624386302, 814451727, 665132786, 522834886, 685791668, 123936242, 702822034, 313266738, 486770250, 76794139, 10965963, 461271822, 461271822, 374841787, 286617699, 189554008, 744990918, 812953988, 461020184, 303287030, 293917964, 744243330, 488142899, 412219488, 51612079, 144048847, 354694124, 354326395, 211152451, 21736171, 425560638, 535685982, 112879497, 373206742, 178219401, 448636405, 287087702, 127384444, 113082804, 228939704, 318478732, 638232833, 612759169, 336118100, 201019041, 212492705, 896709011, 507512712, 41603090, 375330388, 86672383, 263048603, 260701405, 153660816, 28382333, 201058944, 42315086, 545443600, 219267241, 397151221, 488716003, 420642665, 483052985, 2656905, 54091104, 51434199, 157634934, 450844525, 57284191, 235766856, 25724114, 603118315, 641006183, 722468808, 727253546, 87843069, 168107208, 461595028, 1876442, 60076854, 58200412, 212552570, 314354390, 958121811, 896896305, 497406305, 178784716, 132522721, 244684684, 245262399, 395608232, 377988757, 680062732, 60351219, 355608899, 547206059, 362562664, 424944228, 722631929, 463848724, 483776243, 570432124, 497851310, 519218752, 137948961, 291328166, 94328751, 496107137, 172270717, 487071907, 546492696, 732004661, 210701221, 422454903, 398740667, 108620808, 24931246, 167530337, 315837794, 154239147, 719611371, 400311362, 232544261, 257459633, 416999092, 305689183, 338820003, 294301683, 59523481, 135966441, 41251416, 193239701, 54466518, 242996030, 453378336, 64783587, 303668727, 225425498, 222642094, 618694585, 615462627, 204040675, 1621824, 356396161, 354774337, 328433985, 306134034, 389619595, 105589427, 532798398, 63329374, 166155505, 307120480, 371837215, 196495719, 193148369, 151924232, 186117117, 80028938, 441371251, 20961519, 156515198, 8609902, 624232941, 624232941, 791985538, 165796839, 130257933, 363645375, 402924079, 793108540, 740771123, 95150231, 979019350, 5033863, 604819457, 604819457, 256405301, 509592272, 556025728, 870308109, 833164331, 766756852, 348284540, 296399677, 152185015, 233326904, 182972135, 516959219, 325841366, 37547457, 442257576, 165439620, 140270417, 388820079, 437353522, 27959816, 226970915, 217672918, 64394888, 174102729, 592874141, 45456134, 546091551, 578933848, 207845834, 486925813, 352464136, 601304268, 796117159, 85583804, 227020500, 54036493, 174809484, 481298564, 254149876, 211795235, 172294570, 60765493, 739529520, 138854266, 581671597, 119187467, 62179120, 467559032, 227305776, 272821149, 158079185, 606604155, 215404319, 15447631, 206888510, 89461455, 173031352, 326993706, 9091940, 281987842, 272895902, 574096444, 633708835, 14146789, 165429675, 593841747, 45478011, 602505144, 959726929, 361869881, 235787457, 775065976, 693172213, 392581518, 51871983, 143029432, 7065977, 97002182, 97002182, 430203351, 511468242, 687961152, 157352057, 9618826, 167652065, 158033239, 30367536, 314281189, 541487023, 587036551, 360981942, 160660785, 333580268, 415583368, 79543077, 189135642, 191715478, 74109169, 468033963, 353604767, 666810736, 18981204, 319326537, 507011052, 291639552, 490007535, 637497296, 9700892, 616355919, 616355919, 211479815, 18847581, 46165710, 369901944, 639145155, 499596883, 197470509, 246947959, 483951961, 244812952, 144048893, 491116105, 494544949, 80356996, 502397085, 533380724, 190111798, 223546889, 555914876, 174499959, 98181833, 99747966, 28966696, 319725215, 292365764, 507083111, 424308082, 404101743, 89154370, 331988315, 809983425, 251474073, 59892618, 89208212, 243108428, 558781960, 157620190, 112506828, 193081365, 630997894, 299264910, 105080070, 713290265, 96983892, 177955901, 372184907, 673047186, 248201405, 489096498, 832258645, 670911567, 240019234, 267572047, 238521304, 240883955, 393280645, 257520795, 57327259, 404007960, 527722444, 284130823, 5452376, 164934305, 159481929, 149726510, 527729339, 49441699, 133944986, 163193214, 62620713, 73339710, 314719090, 220062153, 273460988, 487562907, 54699334, 439347479, 444137610, 347073399, 311117278, 478335038, 119843852, 603537339, 113927842, 905355993, 407012977, 264529722, 623792638, 26770690, 714364888, 573449815, 67334174, 478456234, 52369086, 379299108, 205904212, 717894923, 201958012, 156008729, 241958215, 694420553, 497447514, 26500212, 286534383, 342833807, 696609402, 396702427, 501652258, 138009034, 107122659, 42009871, 189983096, 279044592, 55706791, 53450726, 86354140, 554532920, 543057563, 495630726, 186926165, 483630383, 515594660, 74649884, 48784475, 322465320, 942469951, 489256153, 226284428, 225037137, 333264358, 648433773, 745457159, 302916065, 403028877, 563849136, 444646814, 389322639, 45132519, 225144027, 178167556, 108244393, 423504968, 363769202, 199464305, 338964094, 528805908, 450836271, 12478364, 321914516, 118262452, 588481091, 18642563, 559588500, 109340663, 30232644, 115708423, 252483743, 689674756, 497216817, 641448786, 740732544, 287509617, 64428397, 36037308, 254395373, 377610959, 560357545, 425149085, 86696849, 303583018, 208989463, 326728336, 100644984, 127585545, 249833539, 236177173, 845727680, 742307629, 219969153, 325129756, 519416038, 623430149, 603622334, 17169999, 110427154, 439236121, 417076893, 945433297, 657009986, 284264765, 278278958, 141264129, 172198717, 122534079, 196538163, 291435624, 99459661, 83472376, 589335350, 218922158, 943429555, 98789377, 832857720, 814001174, 35348674, 348906150, 173106853, 609231796, 445844771, 36359769, 241131051, 173510868, 600142257, 531537746, 27192667, 792557499, 141633303, 537199348, 11594697, 322061626, 359159505, 545828863, 220138820, 385393963, 68992720, 209072964, 188195561, 328487114, 211061035, 241350102, 273446938, 30503961, 85676062, 265406292, 84691793, 94617830, 450681195, 245047026, 199964856, 959908691, 579183212, 381950342, 1356821, 610336975, 608980154, 781996007, 559532138, 461688465, 316569383, 349868352, 700680372, 767083153, 125585420, 525873155, 115243797, 70870861, 598992134, 548395674, 228062398, 472249861, 24705810, 250312750, 197434955, 186686222, 626595664, 538503448, 151404649, 358139106, 618164465, 309419252, 550149806, 50408031, 493188654, 183812783, 767911950, 47281720, 359432337, 434168296, 756059992, 610952902, 664262529, 501497729, 43036216, 152455605, 90196227, 80138494, 491749429, 73741535, 398065734, 254401669, 348209072, 552812795, 549506827, 366778612, 4178586, 404664050, 404664050, 2898775, 360643806, 357745031, 540466684, 669291063, 7620603, 27686859, 27686859, 208719238, 530193757, 128209680, 495581113, 365802735, 815574518, 266058844, 32597192, 18018744, 228282138, 119015954, 272336869, 456096203, 780507093, 454967985, 493732335, 835891925, 14965558, 21046508, 137589591, 53672103, 569604130, 23233672, 270518559, 565390604, 207909856, 42763335, 51021844, 18345875, 18185203, 154655751, 835218054, 746585718, 175413280, 226960817, 393454025, 525277226, 533880475, 67617761, 46547205, 417556182, 310363035, 169551719, 230225959, 161809106, 44121506, 645629242, 73276222, 281554099, 262414840, 163747798, 805200172, 684466642, 582072581, 1789124, 406445159, 404656035, 152652474, 481776863, 244542883, 77233274, 63993261, 432939745, 591355416, 466777417, 119906520, 67730761, 123348611, 275745186, 371881370, 206110645, 22225846, 640184314, 659458124, 102737580, 773795346, 689756423, 124514301, 578642486, 186404733, 9356624, 352356533, 352356533, 911087588, 448121902, 238326294, 771907234, 943210614, 515564090, 351894045, 401482157, 48716157, 130026864, 619853084, 606155362, 25152550, 109544132, 342011768, 81679422, 229688196, 525844828, 369122434, 47969297, 187969345, 192729823, 310049964, 543319170, 145507824, 420146652, 135515044, 745001767, 61830080, 414073014, 28165468, 270935652, 602452425, 233080620, 369915342, 229516315, 442929226, 295503109, 660773646, 578276823, 173992471, 332933805, 259567545, 385032070, 576681463, 638483208, 114424314, 633913536, 21562683, 863798385, 787606924, 240665908, 6308571, 541286690, 534978119, 217438970, 698579956, 310849419, 610788723, 562678596, 483103933, 421353754, 3639943, 420757814, 417117871, 627784435, 188693197, 160193000, 412855812, 164723473, 655284142, 41526687, 816529932, 287191414, 228689234, 37997232, 10203709, 515910567, 505706858, 64417110, 441796204, 188905386, 272484153, 180124457, 119406396, 80958273, 112807326, 747507737, 75207856, 379049186, 173465028, 30627023, 676823035, 446245414, 146762357, 264226048, 599323227, 64028594, 5030631, 266180400, 266180400, 485073789, 41202754, 646787352, 100621374, 160153279, 204174053, 417676789, 560027299, 814550747, 520998067, 146992984, 734523230, 463694931, 461984509, 708547794, 768739611, 109085119, 441926659, 181899007, 161533186, 64581893, 52514085, 572910922, 23857648, 156907352, 90754974, 198707723, 171130492, 528251553, 405503761, 484239399, 674962295, 331893322, 406764513, 729377220, 696678882, 28399425, 644748311, 683988538, 723141442, 117318622, 478127408, 550740241, 371103296, 86217520, 53276795, 402863756, 180329154, 1780770, 432296522, 430515752, 426516966, 309351279, 243338357, 149743801, 687422422, 262464472, 15745649, 165397447, 26075497, 440348097, 14603030, 897432713, 796920962, 16009265, 727331113, 406320435, 4352998, 447630213, 447630213, 596356765, 26829870, 226251195, 356607661, 104475589, 266909367, 170386277, 591290572, 436186134, 344744919, 436555822, 152701627, 457704124, 746822680, 79491760, 25207121, 220685837, 251770644, 435884076, 234376628, 76601837, 58817227, 151534624, 129073185, 349438532, 826451098, 32865468, 226540170, 207925293, 535973920, 377468040, 294511212, 433472074, 215377886, 470996174, 425600470, 434370141, 154737064, 467567216, 165397096, 230229791, 289507997, 294142727, 676807330, 927789038, 51532391, 207954342, 430122486, 56231406, 364089073, 21449242, 443472225, 8050512, 361761846, 361761846, 287203101, 419300855, 220784552, 6829982, 297950969, 297950969, 235713743, 298515019, 41289578, 244009733, 348952966, 540048692, 132372363, 114778130, 665882893, 929233730, 208601761, 119341210, 80651016, 177393454, 408586376, 222086145, 588245012, 273282953, 167349140, 158026210, 631348477, 747624693, 215100173, 65698452, 294414170, 409307519, 372959479, 416437333, 885370642, 777197874, 181492094, 162601163, 468268054, 160605971, 131619917, 44777017, 560663991, 95124884, 111985538, 173823835, 249669923, 598526899, 503611074, 278399089, 333804915, 213912234, 227476352, 29954969, 515126504, 29071617, 46697743, 110959309, 669502084, 50150415, 42434063, 305879739, 463807762, 252888212, 315777416, 322951918, 622433746, 941778486, 756481539, 66342977, 213163199, 622984888, 950569709, 510358822, 457824505, 559172854, 200263086, 152339045, 486763312, 420406936, 426251462, 301663694, 299785967, 267761737, 133772832, 271984324, 371303278, 702252906, 622185138, 95872619, 940617491, 197868020, 69405380, 541528789, 142323084, 154410607, 162005159, 256552012, 261036572, 748450683, 852430191, 55984942, 260258555, 24211602, 230952414, 108022849, 788394620, 857239389, 202628432, 112724957, 69699019, 1319336, 695337747, 694018411, 127777322, 717157400, 103986264, 796912859, 483251331, 448856596, 376396800, 344625622, 766126364, 94412485, 661093675, 698819318, 86489478, 628796498, 117493346, 17842448, 736883223, 53210410, 447755127, 17890255, 243249983, 57043793, 231949817, 447916465, 669950670, 198053403, 585882257, 454939403, 141671133, 26010494, 367102722, 202462543, 120275067, 444992361, 114014347, 127700489, 402489800, 122184518, 261332877, 525817039, 352818373, 15046731, 504281479, 350537239, 335573607, 646876499, 508064133, 264656602, 849737402, 66271704, 12391704, 124050521, 168013086, 46861697, 501436758, 254543659, 327108388, 451674879, 258539377, 174217282, 191682275, 269136852, 272171260, 714475864, 337350741, 427259242, 461093322, 417952687, 537493393, 60886528, 142962525, 251431117, 210479042, 39425794, 120829722, 251909873, 291583430, 438167610, 690839833, 11023343, 235810121, 235810121, 630748343, 841251804, 10936500, 875013048, 864076548, 71707484, 117359187, 679983101, 149715887, 435516956, 29701771, 223348633, 288355470, 301672097, 37350912, 605355439, 715078386, 727388356, 599159774, 174177182, 226103374, 64965269, 114289449, 207023155, 40854081, 162895770, 136582789, 355674353, 366496432, 477416930, 330438912, 257381399, 30611547, 112581919, 497528900, 173666400, 185852902, 256830233, 276219069, 129330141, 47781621, 248920734, 153355249, 162648580, 69576638, 348624104, 354843155, 530834392, 921941000, 464872788, 138209781, 243755647, 70211208, 290954342, 54805006, 97379355, 19805698, 17610888, 252709461, 167286628, 162329282, 354064287, 73997197, 509681043, 373486171, 44834134, 376532006, 130755859, 607423902, 252908541, 424066367, 435915042, 568657418, 411291634, 676870380, 801302849, 59198748, 847555580, 361892627, 414875171, 614424904, 251593484, 532045456, 831348876, 649782048, 745266953, 450149241, 81483023, 263844379, 447482985, 198452044, 534764244, 284009416, 133229933, 145419848, 549278684, 58393049, 481859757, 15660570, 52558029, 215007608, 209979375, 312947283, 169795681, 99417078, 138704443, 236269622, 516911020, 154454286, 287046214, 404867326, 201716305, 545154928, 121823191, 84056003, 213620316, 674858837, 247188189, 172063431, 73976877, 409457576, 108265557, 422394324, 583807416, 636551713, 45300911, 161762458, 35851419, 93007468, 200683091, 246528481, 139100624, 436348427, 32973597, 822047482, 870043808, 756608496, 278629985, 76123349, 306282088, 32647932, 165492254, 642737471, 188032349, 481853465, 781582839, 185379864, 25593621, 5604478, 422720262, 417115784, 425541172, 733066246, 523148437, 280862183, 14085653, 29090572, 513669253, 143097666, 264790070, 304529338, 357447382, 97863788, 385811520, 701517061, 212207714, 444225456, 652314638, 24810888, 668778498, 687978653, 31504734, 403484282, 40301385, 365074131, 862396959, 363860900, 502913709, 155397069, 233869692, 267501189, 328963603, 150497734, 166000870, 671238641, 21317222, 54623248, 248574622, 514881419, 769840232, 78850566, 677650433, 174155299, 155375150, 29302030, 35806032, 622122258, 613881749, 268375396, 440318142, 154869925, 176170398, 236253535, 185252285, 825150383, 603636930, 75041531, 273227633, 37862834, 661220407, 705068070, 61922983, 48372263, 15433442, 450246215, 594947003, 552552526, 223805609, 402452953, 548607571, 275327858, 180031426, 307015715, 106976886, 572745365, 46013585, 564774236, 203320187, 451745230, 54938430, 11364348, 150810911, 660477328, 359695785, 335379563, 553319429, 30833959, 18878260, 636779893, 98110595, 65202444, 129271431, 455723201, 333270300, 29124674, 396474151, 389956449, 818383909, 232644014, 615192312, 822786210, 658991595, 395504726, 497181340, 305999946, 65181164, 146298655, 269627402, 358767194, 155648726, 422788695, 676809485, 623993692, 311604142, 249224888, 723738131, 414016892, 29739613, 494828010, 100267822, 141473113, 626624493, 85239816, 646766427, 69366673, 138543451, 86281591, 818081249, 208694797, 270864026, 128266217, 53503973, 92375699, 189162428, 145468490, 270773512, 204274311, 305061543, 188949917, 245547847, 213454177, 197116964, 227079226, 55927390, 77534575, 335024376, 127816161, 642726004, 323415983, 145732390, 275156025, 73364002, 44833175, 261332368, 109403329, 141944017, 270509226, 322762599, 55233055, 113503671, 419513645, 553235601, 378571157, 643615928, 477916862, 447252990, 937056674, 44452251, 55141931, 948648960, 233069737, 159467729, 287497964, 629798013, 111327626, 330817562, 173840491, 462533798, 719811355, 419249816, 104026811, 10823568, 290310530, 279486962, 239587419, 653645527, 203077608, 245381934, 453312815, 258000506, 507197166, 263075883, 35059271, 526839570, 51829761, 800497278, 637845511, 234948577, 633781940, 346281348, 419224300, 543997746, 547910435, 390181973, 453987511, 476890148, 12906377, 87208059, 193932263, 859563541, 722674624, 433823699, 90128561, 16460883, 370928256, 285917981, 503697176, 530088933, 814544849, 637916203, 12629762, 553736407, 68050921, 107108968, 22192603, 192787578, 487200069, 111180848, 260423755, 517352069, 309286306, 282856122, 209429826, 165627903, 519407434, 102360355, 161618554, 398488691, 19987562, 455162092, 673994074, 355904799, 450658980, 192166188, 893088905, 263417036, 267405175, 841286114, 522652047, 127880951, 384701092, 241138575, 870081450, 434875718, 6519593, 364383435, 357863842, 71822833, 532491492, 156905850, 444782062, 461892213, 166400375, 82756129, 35206458, 192966391, 425378344, 199731607, 559902557, 897591626, 624807873, 591566696, 355310950, 376134773, 378409299, 485164691, 268143524, 189371187, 561793627, 28304368, 96656293, 668940056, 30738043, 397146612, 98762562, 224885035, 185902657, 26389606, 187420077, 152160507, 300019534, 404307219, 77760484, 236613983, 509671420, 745426986, 662545010, 361364020, 369370621, 818601614, 129379856, 300217260, 210579062, 395169949, 109417053, 388448245, 56681939, 452954481, 12964119, 442821753, 25421232, 305557241, 186644596, 154938526, 175656230, 170218393, 308008248, 587124018, 351425462, 203917157, 96922274, 258075918, 19116060, 447253981, 215438957, 180935483, 661923436, 72895030, 247692570, 735315139, 685308290, 629422803, 139731685, 98503143, 254112140, 401665839, 391680173, 82886775, 351847911, 367357221, 405580492, 57987537, 510404297, 13794782, 504061790, 460394414, 81106975, 41549496, 586085934, 129263996, 209197375, 413784809, 871479150, 915498503, 456222129, 313340816, 19877587, 151600549, 52428708, 291928693, 123338611, 128382091, 176684651, 345453197, 871384864, 51988713, 89480679, 250811858, 501928683, 724179796, 410415274, 116202395, 89701682, 105326876, 139774213, 431705191, 628905600, 84585337, 387683613, 349878407, 38459498, 797027547, 671683069, 574338560, 130886981, 16394780, 476582628, 20537124, 63936070, 18496804, 63187850, 610530681, 20999310, 391128829, 234014154, 158640672, 554771602, 349246999, 45022826, 737264198, 175739346, 451192154, 47715478, 648105743, 568525758, 48437826, 211697402, 137083877, 234736125, 128146056, 53535206, 242488085, 60838119, 407799883, 128331306, 65494198, 319943226, 187990788, 181576377, 327182781, 35471878, 417977864, 396426984, 342986823, 243257358, 231816842, 39875565, 72227116, 368751784, 311892554, 876085260, 12990412, 518304845, 331991954, 431975488, 321219609, 417984036, 367308910, 24560670, 123785890, 183311591, 548297148, 455990515, 33360849, 460932982, 953692150, 916925811, 192504483, 159330794, 711125426, 130419511, 337327907, 175552966, 127116954, 230218644, 268240563, 324597766, 326004397, 444526179, 475708144, 571633821, 366787805, 131737441, 521708868, 399838081, 236613309, 778233486, 452409461, 483439453, 781127082, 959365528, 990786138, 419480419, 333172793, 711234020, 621418961, 150291263, 335137071, 385944819, 335550809, 178174722, 35381212, 309179064, 293238293, 416655415, 171327069, 299244516, 38136254, 755711804, 354562975, 247888889, 632697346, 434443938, 209906817, 275633313, 291270801, 309529606, 585276233, 404850645, 369341639, 436589688, 3745647, 437699522, 433953875, 82647702, 668408601, 416448560, 11637219, 38094437, 393741229, 334808008, 323482504, 752548427, 491716195, 168080233, 299521717, 78852198, 28123402, 318800375, 140629868, 75781236, 138373927, 182764225, 246935003, 30000106, 33732046, 355029965, 888263486, 202254181, 513528059, 112414156, 233566992, 121645360, 71153282, 404238468, 716609663, 110272948, 702610751, 478688759, 238748701, 674084388, 182052331, 473430799, 86631695, 209776707, 199071416, 155102043, 336928250, 733388659, 137601325, 218921601, 320491706, 255906170, 17889934, 13938488, 155979900, 564143836, 389985659, 51977940, 26246424, 385349327, 617525273, 330261109, 308896091, 374063929, 500389822, 18350964, 361205344, 512381193, 848057464, 62721315, 100107961, 303720268, 393636227, 849503028, 797659946, 718379260, 466766572, 63453195, 171697881, 193877790, 131711414, 280505157, 126960088, 236817559, 319513138, 576456791, 539843333, 125511581, 332178454, 324001801, 202298249, 825975882, 319192967, 115957103, 323242162, 166665683, 604577872, 181243052, 710497444, 148437153, 582410681, 298572697, 298809323, 81368456, 74147051, 135416047, 285813142, 713751519, 764069270, 283479145, 24196694, 136585324, 317121609, 302839556, 210902182, 6092461, 342425239, 342425239, 713549350, 560956221, 265568829, 875019202, 37292985, 410152025, 77782574, 502338980, 451829714, 201383646, 138859088, 300660863, 697330350, 839716520, 6498472, 281419616, 274921144, 152562650, 27193841, 2651409, 423267199, 423267199, 901500532, 791103726, 263633661, 360387837, 414289086, 553950772, 203493951, 96674332, 641984102, 114941846, 61724859, 134212197, 222551866, 372161603, 282222705, 100732810, 703670045, 53013198, 34126844, 602043307, 160053907, 79335119, 258017143, 616711721, 520497794, 22119219, 183340691, 71160417, 85568329, 343563531, 155537090, 203693555, 535207874, 662042883, 666873153, 638668464, 222842788, 766734818, 302629710, 351975827, 295158202, 483196676, 81574509, 370929371, 95639198, 298312178, 268032886, 133368050, 15418120, 216764435, 124196040, 746933414, 422280208, 115497115, 484449870, 598435179, 657499051, 800995944, 103849528, 480522214, 333598805, 113170863, 222347208, 94158023, 322995950, 785330779, 249180591, 332184177, 294962760, 236955188, 55408350, 812913625, 57925999, 581032617, 254709197, 213607635, 139686450, 365320160, 477486960, 622345827, 535025876, 105568177, 412644774, 153624810, 669615996, 325116950, 420915384, 381742051, 130416362, 363473939, 113190175, 737672572, 807576075, 355870018, 269140027, 55931237, 115215951, 271591597, 274719207, 271827525, 363362423, 710264096, 256901645, 56190997, 218265356, 422605590, 443561767, 611208653, 273100315, 54446796, 346537927, 176174948, 380107560, 316084576, 646741874, 504711761, 185424403, 427759498, 784477447, 909355949, 740929565, 143347012, 290171240, 17368123, 474343036, 697390475, 156187113, 590169418, 193187952, 35992471, 726721020, 495477729, 170599496, 19302173, 43693882, 132916534, 685148443, 645120040, 457095537, 258312747, 46549310, 515643017, 320377128, 354593748, 403155263, 432022387, 692826092, 83630191, 107826205, 36659469, 265098308, 36589249, 246706399, 175891654, 623292085, 358003845, 440881730, 29104192, 46263323, 132007965, 285743445, 740463259, 45227909, 133392613, 302749251, 190733713, 550431810, 366994223, 61417146, 155578052, 627682721, 103809077, 385682599, 465291020, 770818361, 649133913, 295585328, 377675809, 434993114, 548462695, 186544318, 16533090, 497905033, 516760489, 727688048, 430681544, 287320545, 212906205, 253260761, 525514436, 583188776, 444170729, 278322182, 378723396, 137644302, 44495222, 107960069, 140667693, 308619273, 189148758, 650062674, 308724010, 50714402, 377120490, 636660835, 689733281, 238963803, 647070485, 232192024, 231353364, 433429095, 269662997, 405706453, 460042333, 808789697, 503383039, 4314840, 420191336, 420191336, 521290642, 406564588, 486879480, 97736171, 310344206, 593786620, 11758437, 20205906, 628520753, 191418877, 162451736, 265377178, 364260101, 50846293, 121555602, 85413339, 8920542, 444064164, 444064164, 531415049, 523616140, 397930024, 392277107, 303223416, 539951580, 537327599, 33400864, 228376914, 77853833, 336369525, 149470760, 34962555, 129417389, 3005012, 147261380, 147261380, 132580859, 44583788, 32625068, 401735190, 100747358, 84587824, 30895843, 473419829, 655615438, 65977810, 639954806, 887784659, 895421711, 599539177, 15184784, 408674227, 56203339, 527023258, 354149843, 165046386, 116204426, 243631467, 548259118, 7381836, 772610152, 772610152, 590072530, 631031953, 651565913, 204895219, 267180551, 165590347, 230966594, 472730988, 331660100, 408199758, 78907796, 101989014, 437871107, 51539481, 241104246, 185466810, 273175785, 194385613, 357191459, 596255382, 55807131, 306954778, 412237072, 378066941, 35518671, 419547443, 799395884, 311358391, 124790544, 253579190, 510522827, 431064278, 80329703, 145769914, 86573157, 434852495, 54348137, 105785863, 79047983, 194593883, 503875426, 233923020, 334738691, 256879519, 207447259, 97583518, 159618181, 24368241, 183618099, 128482090, 520387629, 77931665, 357460709, 771513064, 38528523, 77199081, 510028011, 407233022, 324981030, 102736454, 56906841, 172814449, 604142045, 719330794, 63241825, 259932048, 44414008, 8702308, 332206759, 332206759, 617531545, 41938845, 28920735, 405911952, 159886320, 176410115, 265815576, 766044, 305432198, 304666154, 186349204, 56145579, 330446486, 322497108, 55341973, 244674151, 192862546, 221041743, 276389697, 673557327, 594988814, 310482103, 392680930, 252250569, 40391550, 109585308, 130370660, 176181906, 124668545, 166517997, 249015017, 214743769, 427845841, 206711871, 363155966, 101024456, 251559826, 318434429, 122258265, 34871578, 326524018, 418580843, 696311970, 69505378, 707403727, 290240678, 194544019, 134937080, 421327301, 178880896, 143582459, 465748493, 392659721, 916335779, 475740912, 20538546, 112186006, 23205975, 246146604, 60272463, 480068532, 349165655, 97795766, 152235533, 42608719, 188418063, 684498738, 321670385, 149331393, 158910649, 130249629, 441958962, 751173435, 221176636, 923109498, 198296964, 716551077, 503251753, 37051457, 142398305, 255654433, 226621565, 32797157, 377877328, 746819214, 12184325, 280385465, 406044305, 660837755, 36928379, 623232140, 570478063, 166793902, 248181410, 128939835, 421857486, 356009026, 653216432, 122936837, 499649311, 275758075, 373044053, 313112095, 1312753, 577046329, 577046329, 523073529, 348818686, 460155385, 51311986, 305692372, 606091351, 57246834, 62712772, 322516152, 235357560, 754390699, 692832756, 215299754, 172004006, 71262804, 278989143, 381558532, 676900120, 130164064, 287069823, 169202400, 720546506, 748156364, 440617902, 178870880, 93140030, 327523985, 11929018, 201793550, 29935386, 433293425, 51863580, 338657547, 251848457, 288164480, 229095547, 91408311, 704732130, 167959691, 114785243, 388834002, 418840167, 760908829, 400119964, 174901201, 303183059, 455419841, 54477239, 110772684, 97344329, 513584057, 790507466, 102411609, 666928048, 82048583, 76865964, 32067807, 70920101, 313659717, 230149651, 479620784, 520714639, 365469239, 381978136, 690635314, 163829996, 70413275, 6588837, 182526597, 182526597, 91626858, 468656935, 267252157, 231168962, 723260527, 281571733, 108130234, 389387203, 146197451, 120143066, 461671963, 714238147, 123320848, 4224640, 791570611, 787345971, 550633726, 354803030, 659420894, 266831615, 33681560, 411174624, 40836537, 189754760, 494872868, 55968290, 73715378, 413061439, 448779379, 45280885, 588884591, 168966040, 895832342, 430561224, 328600993, 178615848, 809354290, 183483903, 168669907, 103457622, 375253692, 409558182, 214991734, 192244213, 411934894, 83626958, 72437381, 105006984, 76690790, 13497395, 312703796, 376088153, 646532072, 557997754, 183165526, 343588843, 292132917, 7997756, 753434066, 753434066, 728740053, 141701285, 91346501, 198950244, 355781780, 177000372, 276362247, 125502699, 361402843, 724730949, 724520885, 868208043, 905814871, 180440585, 454094913, 199908218, 20916749, 93496778, 191288524, 29463117, 336014950, 789957093, 538328120, 290771858, 217715525, 128325546, 323112994, 67294801, 268818848, 115515879, 457777590, 99373861, 46843617, 655383443, 210066820, 678780414, 238126618, 32310751, 455952794, 82070059, 668118901, 483065900, 360026695, 750828770, 319123469, 558285105, 845923854, 18083124, 614027706, 361463393, 289811264, 232209671, 674179845, 761767685, 70772671, 228337603, 135062798, 195452442, 328386565, 471776321, 377346987, 88692959, 431291954, 413609196, 635873424, 561889292, 83776716, 100279074, 330267112, 102803174, 47184750, 463298829, 794016164, 471690449, 248146177, 601720106, 523006154, 261109864, 16711463, 281544819, 110653815, 185662589, 636465921, 486941487, 549159364, 919538046, 231782790, 66045053, 675233506, 913970931, 466436209, 250511504, 315951537, 263252958, 162001198, 2939917, 301417665, 301417665, 118034899, 259136619, 279070050, 79194582, 561533418, 394327350, 273993648, 169592848, 72046537, 41658482, 525727780, 105294989, 43680674, 145067603, 148617371, 220585414, 28579621, 99059244, 244475818, 694083267, 247233732, 570686514, 819420070, 736489375, 479408947, 307819883, 433923325, 73966320, 432555420, 494012911, 638699049, 292812067, 447011455, 588203265, 294291557, 273167831, 78864271, 530595683, 114717486, 42238400, 45540446, 476022103, 505291655, 424332306, 58856396, 16104821, 710650045, 410851800, 441296732, 289616669, 595996552, 171021557, 737851934, 53572403, 129455421, 71471149, 659058118, 79586589, 229955842, 83460205, 72925250, 892214822, 90475128, 675914764, 29034393, 771956292, 250731943, 138529630, 42249045, 150851960, 247240273, 64251541, 321350603, 285817150, 271089855, 430310064, 943100522, 700734932, 146690957, 699202329, 28559299, 474330928, 545225546, 411797605, 420305372, 112347148, 211735250, 328328327, 3404007, 442257550, 438853543, 673201463, 238345020, 650529333, 332289067, 326531976, 78819914, 28358074, 6394639, 101103115, 101103115, 144405248, 130202739, 296958262, 475051624, 780579764, 121852893, 545835171, 629796620, 402531523, 188453206, 142726319, 533747276, 444731648, 311968097, 459747744, 527497858, 326388196, 504272515, 559164756, 48347791, 269355684, 220519211, 260210065, 153057482, 597689413, 868994342, 870454, 878474736, 877604282, 519200939, 138831206, 18715707, 589259240, 202792221, 47121159, 300866241, 502161335, 775526597, 453829318, 258745831, 17535092, 56706518, 374568464, 103983679, 273571927, 447474494, 44259806, 652671277, 897439622, 726865073, 356941247, 275247117, 290655313, 891462113, 590214707, 23002665, 406767956, 24014122, 188407176, 24795866, 330515347, 271863054, 180047300, 495186379, 2394767, 53133170, 50738403, 744579459, 253634563, 166085897, 417531940, 23203691, 558385891, 648376582, 476620976, 106692684, 582502380, 562577784, 497586181, 860363756, 343466196, 405043936, 467566488, 178028105, 161007255, 72917412, 516803732, 564271, 254695910, 254131639, 25126703, 561882318, 417988823, 330087463, 176943353, 276334657, 43607182, 577884483, 173390086, 38694291, 337138370, 366066967, 53179637, 46812342, 18238322, 606664279, 141335645, 589960836, 782885056, 601732461, 49374762, 241573192, 50435991, 285315835, 15052072, 103406062, 533929569, 303742667, 66726149, 393439863, 362377213, 192181633, 496709921, 728266981, 212563621, 325395883, 423747481, 107192835, 160312090, 42153405, 450766511, 174233300, 818663592, 215006856, 15174669, 687802200, 346750301, 322353511, 769857862, 275526649, 394346467, 247058085, 267981384, 144893607, 130024880, 44783240, 164776067, 403815975, 57174662, 259772803, 576339297, 532978389, 226645117, 172914733, 527548010, 293922238, 170902458, 103927838, 601329037, 225077015, 351071881, 286267594, 33319908, 312677980, 278383666, 789217302, 358715477, 147723076, 47939227, 244391151, 278837069, 285177875, 380070404, 187036504, 396223787, 177946379, 235743421, 217342213, 206687321, 516032601, 171736001, 153937867, 352259740, 272647495, 88636873, 135748641, 8585773, 246481240, 246481240, 659901599, 844800149, 238640007, 537650055, 737310443, 298094280, 293827556, 698337940, 406189542, 486833138, 773369189, 850964703, 47339765, 173620892, 457428483, 171527690, 449448203, 350548486, 659625812, 490151581, 633356933, 28753080, 99609802, 244482102, 296696529, 170647724, 273866886, 396895124, 104126204, 82991019, 496832154, 573162354, 168445223, 268167148, 326085500, 656236186, 730358227, 155037383, 72773445, 12525639, 22218406, 271571880, 286499655, 134244578, 388156225, 860832274, 869466741, 600901484, 42290412, 369331989, 269044632, 529285440, 362533456, 735411902, 386456487, 296785922, 657973303, 729025759, 598946558, 25086526, 535169853, 271635666, 465919127, 818085626, 189993052, 58533146, 395846041, 240014681, 761573848, 300253517, 9602089, 467479718, 467479718, 717425109, 171597056, 502196017, 246368290, 312449354, 539598207, 537899427, 38416423, 589936197, 252101941, 271045285, 23827578, 418728414, 518935215, 44954310, 335776714, 17479105, 99760004, 609591656, 363519149, 244535418, 305668208, 391097731, 670006960, 149787006, 548656707, 246781187, 388820125, 250098849, 726133092, 229992666, 88814527, 182732780, 178973777, 94351653, 154524183, 172338299, 332833670, 31572261, 594607385, 460264355, 228682030, 232462102, 97132661, 284033121, 481047117, 261840825, 306443760, 475086783, 588271559, 200512869, 102428785, 208120192, 180749185, 56526542, 214669118, 213835591, 400279819, 432687738, 508506915, 532501922, 399709501, 167895260, 51710621, 56067204, 554119998, 529572877, 290345980, 297004959, 38960294, 607547166, 949845294, 15757224, 943537887, 664788429, 518785658, 306743160, 286455741, 171669717, 247050975, 70711180, 166565077, 402411439, 340761337, 188735907, 747205925, 567218919, 307488210, 115932739, 95466770, 229996992, 257238554, 566237312, 239957869, 33755508, 88610866, 487904365, 7584005, 10118817, 193422096, 10118817, 193422096, 183303279, 737128022, 687786408, 319070249, 219562518, 203068603, 561980808, 114419402, 479890457, 125081821, 97049448, 250434816, 244193656, 44532942, 481758196, 410766790, 207938007, 76366383, 93078258, 921992145, 489534629, 223600830, 53806710, 438644012, 580751172, 197600571, 248867447, 411157759, 369851459, 39256856, 553021345, 26414350, 276049870, 472378861, 104884407, 79343820, 224678478, 70895337, 72063641, 276040231, 490211707, 324354401, 142011424, 786903333, 834492252, 762791992, 718534955, 166665103, 211573342, 702286229, 871863907, 88337651, 464029819, 32597335, 159306145, 353539616, 207531626, 304921663, 260983886, 132815129, 63323377, 713380048, 327177086, 178159662, 382901679, 38497001, 266613583, 666800419, 374913099, 238444546, 584667617, 181550711, 62399844, 225265789, 587847114, 5328988, 168336389, 168336389, 46076370, 156103417, 740150902, 809149450, 108274893, 542174678, 329804242, 389298565, 138703313, 767295332, 246710241, 627812025, 65438726, 683706006, 683419232, 47700665, 61531587, 208744909, 78871346, 17256061, 372128684, 345438439, 73498814, 697958793, 383684591, 316092436, 35220887, 478137218, 406780632, 271209355, 260579791, 49748239, 581069925, 162838905, 205697051, 45581891, 326687110, 154021276, 575103360, 390713837, 150449005, 725427946, 9560737, 850450614, 850450614, 811080519, 323452382, 332751205, 182845178, 164416573, 509849467, 699669279, 115540939, 782715071, 363466272, 136895575, 44553161, 321482792, 457236084, 611383486, 234018301, 240280744, 25144386, 675644623, 425717100, 501564050, 660303390, 598116410, 9012774, 541909998, 541909998, 143349462, 210360769, 472199495, 362386348, 25663052, 497651477, 192318729, 602323684, 87345289, 354746275, 185199316, 253473720, 27043937, 211182952, 87804430, 927935697, 674529543, 447621789, 112787196, 806972463, 275112184, 103655284, 423504644, 312851723, 272749134, 828116391, 119110911, 234299056, 559247393, 72282582, 296323788, 81323967, 584742667, 730308483, 698433383, 98435944, 426460654, 111829829, 13515624, 798932691, 725293451, 165397018, 506903265, 543129046, 765043055, 427945755, 284020125, 120528879, 4191386, 535709642, 535709642, 436252397, 340179394, 170734774, 296470195, 348719293, 272044396, 148775928, 666084057, 243447869, 97909989, 453804019, 155770131, 374499107, 93411081, 257042691, 56604500, 69848302, 276400931, 105070972, 134732555, 579705846, 240161315, 554041108, 484857025, 274049422, 14341753, 508807953, 380210629, 210750517, 408445785, 250404863, 209570564, 325880560, 248511433, 249791561, 32790592, 62990739, 18204908, 41974636, 346001692, 555079010, 5927839, 104574546, 98646707, 714862108, 92665090, 232744040, 414363818, 411645252, 417426620, 737232186, 53075265, 580280079, 439676719, 707690998, 584591207, 128262986, 237358330, 21285826, 413737135, 350045098, 197359210, 664470775, 218932379, 59813257, 45072782, 203831138, 204867929, 325900010, 312981581, 475651385, 560360852, 304419988, 379042022, 79105425, 311321265, 584884241, 86553015, 160549734, 247910342, 97627751, 216811215, 204726659, 159016486, 240451705, 140663508, 85563340, 432955303, 536784014, 205493021, 232561509, 485970708, 672605113, 619400202, 234932462, 337734925, 264660111, 188643798, 129742152, 18733995, 142464188, 415388453, 136913182, 708741857, 483490644, 464995231, 105595416, 625236713, 128041675, 87497109, 288365453, 355155627, 404381855, 230578422, 329866641, 62648755, 552732955, 288108419, 387621897, 882911116, 540455864, 184075474, 194281312, 489658982, 100377002, 527948609, 230016753, 194225859, 177579014, 148002872, 96883003, 132346984, 233648452, 133748026, 498835910, 85549004, 413843455, 403777657, 117264178, 314979579, 45735836, 4288895, 488539246, 488539246, 97820553, 165915655, 110125510, 362713150, 292591453, 227797589, 414851052, 264786598, 250025555, 5639609, 300854208, 300854208, 179652584, 290871926, 489993511, 466707806, 391177707, 467603682, 455938364, 286542657, 574986932, 97584714, 180561750, 396215025, 464938452, 30941327, 506590956, 958134740, 525852779, 140407326, 401205901, 638094516, 229427741, 218148191, 141384189, 152826860, 6892230, 39481359, 39481359, 218354176, 462394937, 12622955, 280452595, 867908453, 774973940, 743591797, 79495008, 687068645, 566077303, 501492345, 817706569, 429045986, 153159570, 494886938, 431958798, 311071012, 858109314, 376359861, 461246759, 973942306, 279816632, 373055112, 548332283, 75043085, 503209136, 2994804, 516997387, 516997387, 827753927, 152904590, 146837845, 121220167, 216763077, 43388094, 534999695, 213721411, 60901272, 89112180, 244879711, 21049161, 19108858, 108573770, 102247254, 295383063, 237467495, 543827697, 21638591, 778979472, 25767157, 450734243, 301051992, 555284952, 108782979, 23944478, 627988635, 252162713, 107646614, 632202087, 404577397, 424273950, 397241322, 338627927, 579559281, 135770465, 479098372, 372076228, 186491040, 524122774, 319929556, 307718748, 512240553, 78875637, 208465566, 390213407, 415558408, 476244226, 255992978, 192477325, 180948372, 759405757, 906812645, 738514903, 517517847, 38734153, 27500772, 543171757, 136287233, 208413488, 7798722, 678231076, 670432354, 133079251, 887518704, 392172474, 80757052, 87966251, 266348606, 544042948, 40381339, 625754450, 915975170, 92928837, 61043721, 121674634, 25493183, 84479129, 566734645, 470596269, 630552428, 210036114, 38633106, 107176721, 205759045, 355319392, 199329017, 50061658, 236579618, 544780240, 216072351, 382262320, 137829894, 34567065, 476557801, 209057379, 690025557, 556702288, 562086995, 803664211, 776449443, 462490685, 261949889, 382256658, 165963658, 21448979, 565855513, 9288729, 362623572, 353334843, 58486310, 150023977, 282507262, 323308004, 296722713, 518085764, 473188336, 21035195, 701412558, 75068079, 34487975, 10642479, 169506976, 158864497, 65008262, 601487816, 49389233, 655796066, 184419258, 645286626, 293764417, 95786725, 344362046, 204499122, 561760976, 297806608, 184858679, 50456100, 188234253, 660326891, 442589924, 125202653, 435807916, 231325538, 445534032, 395333479, 505036197, 340102670, 1934507, 419368104, 417433597, 552705955, 466612252, 78617245, 64591214, 66308679, 322979043, 296414292, 4929688, 205133219, 200203531, 181459620, 433978244, 238552533, 149079059, 291983771, 232714330, 53586677, 411503759, 372935530, 495371632, 96551220, 437393154, 909560711, 572884929, 322640769, 476044680, 639722154, 5689721, 508434824, 502745103, 560107348, 859045214, 367889448, 172060125, 269840274, 398438932, 20108954, 343690969, 260929381, 282005079, 371200625, 179542975, 113754183, 121261683, 148556408, 158006046, 35501069, 829031025, 715779526, 757637125, 107615733, 850144711, 599269607, 126335353, 195147380, 77075615, 73692729, 269189509, 326694920, 137106659, 426002476, 302498164, 527429158, 209142926, 95418243, 848936739, 106512456, 634393102, 17821803, 134010618, 90322109, 249825287, 545711561, 846790747, 279230995, 242830647, 185327856, 526826234, 645588240, 450470508, 78784110, 212677993, 40944470, 99613946, 381363108, 61728975, 227146031, 54031026, 187107830, 813908391, 170370125, 152742678, 387547378, 207312639, 255710396, 517253848, 404834404, 380569526, 524919110, 339024612, 636258427, 446021735, 432361927, 893135018, 375434169, 389495394, 89641040, 851642740, 588674895, 15796003, 292877536, 34919093, 388710789, 618254780, 94010857, 856140849, 720975176, 213586646, 118750977, 497898071, 301516494, 66958683, 142635233, 610660576, 126171552, 337750460, 228570183, 582229117, 108199628, 51067121, 865765589, 85776109, 729391823, 25302975, 884771607, 326901483, 108239329, 11846839, 252237688, 223933034, 436003308, 123235680, 72936235, 197094268, 11469977, 399815921, 47318521, 299177644, 67250830, 407579116, 920756134, 275415991, 201097193, 480151050, 824483993, 552717149, 7612514, 510143103, 502530589, 124559416, 832206834, 134518094, 969152484, 874173397, 698151588, 297901087, 59925338, 73543965, 202046271, 193935573, 549418054, 292673002, 362475034, 420200315, 68929773, 338535439, 489317327, 400468056, 627807958, 106737119, 220652807, 170065916, 73807167, 340362221, 106641025, 31345233, 192427834, 189399269, 626920839, 9681890, 141071614, 131389724, 178868634, 529926763, 497873991, 58896380, 23884666, 184946890, 69276522, 438342215, 12635238, 15107077, 321763328, 898014011, 91944292, 208765694, 504315473, 582395311, 138788685, 109583041, 222181587, 183348198, 786976986, 352770311, 247813576, 27505154, 252728775, 5130308, 40331482, 35201174, 180522189, 294605268, 222510171, 689664477, 356359128, 372947561, 322485457, 120224500, 507114070, 501987917, 347900383, 700471706, 81539477, 107564562, 770300383, 295519978, 284179502, 511151951, 267535396, 158009319, 105413968, 643291311, 129492374, 165090359, 342219399, 470650297, 535254777, 690875517, 633296577, 205183050, 45155742, 219174437, 477844392, 329667368, 145027257, 607460018, 296411651, 367031125, 678355657, 929078389, 536339077, 171792072, 370969947, 525662667, 283381824, 34799737, 558030999, 552926198, 588045311, 671565287, 240813248, 96299036, 8085799, 366331248, 366331248, 698612811, 670482662, 73370834, 395234030, 167182212, 336545092, 12015214, 437666260, 525805843, 35956599, 338782875, 102211693, 290824223, 154961189, 464574616, 255262677, 62274558, 83574258, 212788898, 604796467, 249881347, 11958312, 535804820, 18243702, 406809707, 264587984, 458377469, 138896797, 150034604, 501564801, 46294534, 145333212, 346307105, 155353907, 246351358, 534900391, 53833754, 295561852, 260359737, 480508046, 851930745, 805394099, 193403402, 291385781, 560406496, 64086941, 38591724, 230050017, 624996292, 815801496, 68771234, 571534243, 288803813, 429538788, 632311103, 240575281, 715336402, 706287712, 24099702, 88064820, 396141879, 562796870, 691666273, 318767271, 97804795, 24609462, 193732763, 21882718, 421449853, 83711927, 130932812, 43977191, 205400735, 232002442, 89459143, 15636278, 276064814, 126598816, 129716299, 29947782, 205283335, 84724602, 46346319, 284133467, 118500824, 731482069, 234316591, 59228267, 398573047, 705158526, 607787513, 249532159, 300587025, 274967147, 64866303, 183064679, 303025660, 274902333, 533466834, 536147955, 139609752, 318574504, 6489247, 254608312, 254608312, 96133840, 521268722, 148323607, 435221842, 443833755, 246382674, 152707378, 49468542, 367119614, 100595063, 689095004, 664951467, 35064316, 331414330, 10171495, 481477543, 471306048, 946186606, 454264235, 492211833, 776100889, 291940876, 282841181, 740855181, 874907183, 585178348, 172976086, 281472303, 87546498, 2015847, 4590091, 5504606, 301057802, 4590091, 5504606, 301057802, 5504606, 301057802, 295553196, 437261278, 705249937, 713038294, 585175317, 644270792, 354815922, 206949183, 96729520, 685749216, 446130834, 366950017, 182553056, 88642128, 247889852, 9609861, 360806697, 360806697, 567210233, 344869474, 375032892, 496643745, 35627058, 133255938, 190052464, 131506181, 132776030, 714551258, 601711413, 88352113, 394455003, 456688347, 104401841, 238566180, 262457813, 289270585, 220154940, 134150318, 355979687, 35026772, 154180487, 268240450, 209029377, 65207056, 432796733, 797953789, 350870989, 102554350, 256069109, 336233769, 154847314, 380507487, 212562411, 632039900, 325524181, 655774287, 418173715, 603896545, 6024932, 515357998, 515357998, 547987423, 684037992, 797671922, 902161480, 664731137, 25378450, 116782736, 491952179, 75211433, 528462966, 439781052, 246133662, 106544357, 110144013, 329791467, 711055727, 84950329, 637034224, 24959783, 555627473, 143438918, 41695963, 222165534, 31273785, 223915501, 89396985, 163151863, 21534479, 272748446, 403751188, 293883267, 674011271, 210372069, 297414580, 170532319, 67949650, 364156069, 180202958, 129568266, 217998943, 96278110, 473103126, 619073356, 219061028, 317690015, 153567379, 477650197, 469159102, 209540021, 663463865, 24999239, 702489241, 88269763, 400121192, 676050469, 248585329, 560158181, 588967344, 568615555, 701375409, 131264895, 212775905, 156001861, 101562477, 177199471, 232553548, 344748695, 203636104, 187467056, 227973979, 104408757, 69005890, 310323173, 411033366, 415132249, 35528112, 411251737, 499692390, 688020069, 819864062, 478119056, 68734596, 91651841, 458588677, 647188821, 107399454, 771563580, 704279706, 602661274, 333110808, 239885985, 633419120, 391246505, 526927624, 104142665, 764023055, 454106931, 343113827, 113252643, 772157539, 842672952, 798497674, 10658999, 367888226, 367888226, 420795220, 395811861, 3451212, 197598458, 197598458, 482402220, 438517026, 6606810, 213335650, 213335650, 352836198, 164479812, 571990293, 744709560, 712923716, 683308865, 332148416, 214294624, 73315206, 51737866, 65604460, 35568756, 435372056, 646244263, 626853589, 50747974, 61646129, 289804357, 452668057, 68256166, 495397225, 7984348, 7984348, 435557486, 903563, 428476701, 428476701, 124178487, 102506706, 348261577, 173553305, 311293448, 427228616, 505998691, 206869844, 674083203, 411872325, 68818777, 112610722, 276749495, 210870430, 16782469, 11142173, 91288297, 91119987, 517263554, 457666698, 218684759, 551020331, 232906800, 4192997, 618223198, 614030201, 658697089, 201555202, 916498557, 899226511, 87704719, 336633000, 316456768, 509832583, 606255266, 583766634, 27685676, 394590873, 132153697, 246853765, 37949832, 565020387, 903488545, 309604258, 156470036, 759353598, 711257858, 242801193, 584132814, 311548625, 450578371, 331284532, 530217985, 459649618, 708764308, 690119626, 104873951, 11960649, 47920076, 29925691, 492238288, 142701131, 16559957, 263467040, 447524814, 343004099, 66474692, 287644854, 95903299, 126426024, 81265936, 245437973, 682791921, 228567081, 569984946, 379476718, 556390095, 97388524, 558112323, 688013801, 144448813, 250586493, 173233160, 298031140, 525789472, 110611776, 375572689, 752740350, 228627400, 596685252, 584791288, 492710319, 710320268, 812158678, 909052827, 385269854, 535512753, 913971342, 105986734, 576114724, 167301781, 33299841, 267636945, 103214416, 472508744, 76837208, 1103301, 436675844, 436675844, 211162947, 398759216, 730167085, 89086285, 611203047, 72918742, 47076118, 467294292, 449634511, 216661198, 358623097, 203814290, 457888756, 816266589, 605638851, 234160125, 728270085, 142323209, 520121573, 801604973, 755764389, 636229471, 199875676, 909900765, 636839131, 226550299, 339556013, 49013858, 161372693, 164434481, 283733342, 103020419, 882481712, 905738128, 895409842, 659755043, 65718143, 671688185, 690374657, 154187251, 30543575, 860373949, 31139427, 98776410, 207961840, 118679649, 88682315, 354034034, 237224709, 474561015, 123815293, 74145464, 30610957, 230519636, 426483392, 787736894, 439688687, 402598889, 631238646, 670228147, 538793044, 171354807, 364924381, 575851802, 316419160, 465597739, 326922347, 268685627, 274467664, 13431764, 135206063, 193885284, 235015502, 155606676, 331466326, 42314069, 153950267, 95956127, 368599235, 407832282, 632475788, 501962589, 95847658, 624917648, 373755615, 382337704, 724829084, 701288021, 746280249, 323725918, 326170298, 550168338, 213730826, 129469388, 285567629, 75519659, 273626645, 4944440, 59189919, 54245479, 762589905, 759525108, 904837222, 269433410, 264552450, 44338198, 625240953, 643694045, 609403408, 214436545, 482772040, 811505431, 379724973, 258876538, 36292632, 449478872, 283114290, 237103920, 283426528, 122136830, 92625049, 391935239, 880056168, 355434112, 354572444, 37763591, 335662737, 329150941, 607538791, 557950868, 220465675, 105156402, 3778640, 223790164, 220011524, 99141527, 5095390, 215794522, 210699132, 55672513, 90839590, 445171312, 40650179, 118386550, 61091714, 13321604, 721562046, 227046824, 346312503, 74982536, 361573883, 498289151, 345056225, 411974786, 230902703, 466437087, 183676225, 28414956, 823793716, 306395015, 510586087, 734248654, 296723877, 215822637, 596542011, 33027885, 523210638, 558993864, 124303208, 586840896, 29127893, 47144519, 384316572, 104507825, 41465732, 216595195, 583446706, 613965906, 26215782, 191502873, 389722179, 366883935, 187958638, 80765329, 146279783, 343442202, 318252991, 517408576, 135780412, 251091437, 713781205, 331728074, 290230346, 710596403, 84331566, 55185683, 711437385, 881424708, 820737208, 763963404, 209542281, 186292819, 846725560, 758004622, 6795585, 52284365, 45488780, 219728506, 142232074, 154936132, 180640202, 151002088, 200677651, 145045596, 482899201, 350421967, 375674927, 473501235, 146303518, 60180243, 173299257, 522165338, 19926262, 77794415, 660530871, 517535879, 47652347, 29267887, 124350935, 39323422, 117594389, 130094226, 138020725, 201189093, 189871034, 222864822, 524212086, 539746719, 465088582, 128813042, 365859464, 414542153, 109104275, 146894029, 181329700, 425051448, 392534216, 227834885, 47839862, 236936221, 676837097, 885729672, 97308894, 354653280, 104721031, 90085089, 455561510, 545448126, 545749858, 48591936, 137002950, 145286663, 270712073, 848636421, 514250660, 1489312, 208560144, 207070832, 321683833, 324764529, 32681319, 208473680, 656367558, 346230250, 325760344, 546766523, 562093331, 109125323, 555607272, 258930786, 889456741, 856389517, 176019895, 99230925, 19237651, 354059871, 263076192, 73914121, 179556315, 233363817, 476560688, 11174069, 470212083, 346441352, 34324905, 412906349, 186529068, 271875180, 400734031, 92495564, 259659281, 516559193, 164115725, 492256985, 708373948, 509076124, 216235114, 226270709, 165414600, 396837985, 252260462, 417459147, 329582784, 70064376, 359650554, 81667932, 266237163, 111810225, 228003568, 111619654, 230891348, 550707234, 216087151, 83125511, 781015334, 250301491, 536841395, 552596526, 525073700, 9116550, 372612175, 372612175, 404322292, 273888257, 588932871, 766637762, 782240278, 630364077, 430042583, 55214841, 226941715, 420917201, 68411766, 313505153, 346925000, 316460248, 202633588, 130784615, 108318200, 21810190, 492449447, 535937325, 413614258, 38020929, 319420375, 211228127, 200390559, 363536041, 39563171, 68944634, 267186142, 596176277, 598757908, 411685669, 324381366, 412126049, 664975579, 516973717, 60573043, 166773926, 166102552, 232111135, 505558606, 705265, 939641776, 939641776, 127571402, 567151960, 54399332, 27066218, 95614912, 118422295, 453482788, 230018082, 474097243, 7491510, 265562220, 258070710, 392153411, 211648523, 36646470, 279787403, 448998855, 16968254, 116814784, 119977221, 382667671, 390816535, 224470192, 813474322, 213158260, 38758192, 166014991, 388895685, 274617554, 46331177, 660332945, 15908989, 639880223, 12688201, 299939568, 350946907, 516264983, 255898523, 399312553, 824262938, 68592948, 796568706, 59237565, 754424774, 852947795, 240042781, 144127317, 138749890, 35436086, 420553805, 74450852, 317864152, 718204053, 725231876, 551004999, 692749699, 59625327, 578553410, 164849664, 193035227, 228666795, 126780274, 143508501, 615559124, 373437117, 616709138, 881448466, 29903590, 268548986, 401685206, 344832584, 363320299, 102756002, 135860092, 484490501, 204373457, 269623174, 365692894, 826926154, 724503942, 459760114, 335199653, 82004259, 468586529, 14099526, 191347189, 705563621, 60817886, 639831068, 108400228, 214918678, 180487281, 193408397, 6124604, 333065014, 326940410, 70716910, 457601207, 133177159, 263231539, 587628297, 241092457, 877824673, 412008018, 266853903, 190971750, 891026731, 277706288, 236937371, 132097753, 303170975, 508974117, 224317432, 268278612, 447896181, 59245404, 113762372, 98710401, 679417372, 442390073, 183898883, 452853975, 21015420, 336397754, 24565880, 404786317, 729005126, 886965221, 160981478, 760843945, 587881148, 118579270, 339738625, 116413129, 728539535, 51252329, 130034808, 102784891, 124758041, 471159769, 185301087, 297808307, 363357282, 182585695, 138511169, 258034555, 630243342, 44529181, 294810710, 314607960, 233438947, 228741868, 412648511, 147313891, 783169511, 829047520, 651064448, 109558698, 52755366, 192376543, 125813761, 643649521, 93796454, 739280717, 125975521, 84729239, 164663285, 362588338, 721059114, 105020031, 675474528, 25484304, 18732585, 821560111, 2455390, 590527623, 588072233, 6641072, 231342406, 224701334, 75332062, 659603379, 826215113, 449122252, 98240849, 504465449, 610034983, 531638150, 217110960, 264074378, 468569651, 76585638, 470422680, 915738023, 285488207, 5108301, 582167974, 582167974, 54323942, 636298419, 144170603, 337801502, 338897606, 202463810, 215238837, 170361535, 669769382, 129563558, 306160651, 127643287, 506900608, 187989610, 429516727, 154612562, 512174508, 195639809, 675503981, 487864120, 622684819, 614662338, 19284016, 179477683, 304201930, 14022896, 109410884, 539570838, 215811461, 568853754, 84005371, 247610291, 240752660, 15106253, 797566154, 627880644, 340067222, 594508686, 327684385, 306828026, 583093658, 659049927, 489394853, 97715861, 565218600, 252216495, 88128337, 136836084, 680155298, 114713628, 105517685, 10292241, 97982206, 97982206, 742087019, 442327835, 46071961, 2808425, 311177792, 311177792, 107121271, 238680832, 462168668, 392511664, 552209913, 33699375, 630421609, 515663243, 263728320, 595686580, 104418809, 272971068, 588110139, 479992264, 281859301, 339812005, 677299176, 774931783, 612413482, 611000984, 716375696, 505672059, 529070705, 467786493, 180049430, 120221090, 522002554, 72758088, 413714144, 460466512, 107771602, 263671660, 167720697, 233492917, 122454817, 356197045, 616956620, 139820940, 600631613, 193846900, 547467241, 336038914, 462018050, 31968862, 15203934, 500701223, 645932099, 223922513, 897211286, 763869879, 77754076, 625011609, 214938963, 14278533, 21746079, 50630755, 145423270, 440374304, 220820228, 247180327, 280268179, 96272840, 58575369, 140787906, 1908331, 70337621, 68429290, 136143170, 657832046, 774733078, 318598208, 229240049, 40312215, 253780197, 418566858, 148464500, 513260598, 820007080, 709592154, 735838016, 799623848, 120948693, 311769310, 335965711, 478905109, 37169096, 706049416, 300351718, 193666083, 276181732, 634646277, 257315015, 101271266, 280768968, 53396858, 341881794, 222287787, 556791037, 501038370, 152451517, 541156755, 633016480, 46247125, 267030737, 497098796, 153597344, 163306746, 230870512, 416973923, 171177050, 51180912, 719555421, 91359678, 40096199, 208883087, 544003386, 157541716, 146907298, 236002882, 302093372, 243027193, 457627879, 77577636, 622638081, 535371855, 123752164, 299956812, 218415967, 812111017, 68313570, 475424200, 292946472, 148107398, 157910287, 100264656, 148318059, 276604394, 861091124, 902454869, 718874309, 354687315, 127725476, 212436635, 136754558, 644637945, 9523470, 72205299, 72205299, 554657796, 37065878, 7288429, 558810002, 551521573, 623976082, 819164717, 610721465, 473452720, 766186962, 449070656, 415782209, 192674988, 240333654, 699758492, 555620097, 150164885, 489232006, 668436996, 434043645, 226500062, 510728429, 254041647, 547493675, 86021049, 500687153, 499633616, 234485408, 544832580, 208966195, 349001056, 148845464, 196592815, 351166514, 261835662, 376655702, 304249208, 511462417, 212662625, 827362503, 291378700, 687940339, 287424496, 358170005, 84405536, 252700430, 195371530, 527144314, 462795219, 671972292, 319169144, 194937888, 74639675, 390633162, 148957655, 417452135, 150217323, 63884647, 514074243, 686467055, 712680977, 255346208, 217931077, 273959686, 649557873, 561522020, 190609569, 316808130, 247014838, 160599047, 202769326, 119958965, 275101097, 498999430, 945641821, 380622341, 219764940, 406039388, 4741642, 65760612, 65760612, 699362939, 234076229, 40248654, 22458384, 688963443, 206876936, 122173969, 236407363, 295505433, 455714088, 308131935, 56874201, 116291190, 249942684, 200179050, 712028142, 12965449, 447032660, 132418700, 503981922, 738531308, 216651515, 67845867, 406495778, 325286492, 287011546, 223201297, 586608829, 268229207, 210499200, 60094779, 495091093, 89637392, 561426591, 631859721, 14141572, 59832912, 239335255, 125138348, 221466133, 44555987, 16643572, 334868771, 249396308, 443828546, 232712585, 53878435, 64462015, 75853438, 504911718, 624193007, 246889768, 180785226, 445197356, 180736412, 293205701, 752857335, 135443043, 7876059, 425212532, 417336473, 174152376, 498169906, 583090192, 748991353, 905094119, 890222622, 65709501, 233174680, 123772153, 463730571, 71864798, 666422365, 88507253, 622385877, 20186169, 242752328, 53349089, 292642805, 54719146, 541302191, 200125271, 290211825, 279521396, 197327731, 153166821, 588259271, 605046094, 220467301, 546778031, 20534155, 524243173, 242846944, 43474359, 790071450, 829304092, 182167091, 525811078, 317361391, 383369785, 187895013, 132778217, 484196717, 329375389, 222801305, 866384934, 84443885, 237054985, 234585963, 69820379, 81678520, 257600141, 365685346, 537589651, 593911621, 778552973, 111222860, 546712082, 283663942, 129268297, 549883881, 39233088, 427729773, 169070137, 353470856, 302987865, 367137141, 101761593, 568992368, 281394186, 38482645, 585346973, 16044655, 40390535, 890749252, 918057275, 125328026, 26980826, 841992032, 340997527, 274565814, 68684083, 802426843, 87591998, 611207386, 182246402, 144820974, 91425774, 526410197, 848242589, 594485283, 648098917, 62264497, 278357067, 313986564, 108557557, 189338748, 394136174, 196359602, 354559059, 924721194, 17165097, 883723897, 164532791, 72609836, 300431369, 371653225, 910271467, 37056396, 228201522, 15872973, 505001264, 131676759, 138503630, 353634879, 399866731, 193367101, 185093161, 219554224, 125899218, 114655660, 211248702, 469764622, 633232715, 181810961, 299552972, 318833294, 79406426, 422528747, 203235900, 290551155, 228672500, 724403150, 702742234, 223210172, 429383028, 838324020, 892574806, 18726799, 840628700, 188069061, 628174326, 781173600, 107038613, 699250819, 549405949, 46964344, 367579323, 42457259, 338591244, 718122677, 117750434, 334731780, 420608470, 379313578, 24355258, 291097194, 601722843, 484207200, 505786455, 872120482, 15416741, 603225637, 128371043, 156338567, 300336796, 429963913, 594410641, 599282347, 601507978, 370057718, 495555135, 422169661, 141823319, 582106119, 793096834, 126937699, 597883041, 196133040, 251986744, 350093750, 20118176, 21472537, 444956880, 123356622, 751989924, 330162369, 14314610, 75225112, 45663031, 290701577, 67750371, 699272822, 633952110, 425496605, 214251285, 409405658, 705181772, 177351631, 582802043, 71876943, 422875133, 237918707, 176454068, 89728868, 169137972, 305460405, 11715113, 211673229, 410379199, 280637225, 501723690, 157874368, 661756532, 382715800, 460412081, 729327562, 404080317, 223585775, 393012707, 234721858, 42491410, 245550210, 174132935, 719557746, 19483541, 571409142, 4060971, 671838005, 667777034, 265774450, 256015692, 112127296, 32917964, 41410754, 642021164, 527973979, 519190320, 36853486, 344788237, 356663802, 474673644, 214362546, 145588250, 65875222, 722580669, 418173062, 9025354, 542559346, 542559346, 273848245, 503950061, 447501472, 369453805, 643241394, 207579134, 20399728, 420545623, 577546551, 457112667, 125344338, 364206257, 780876731, 931405553, 800913160, 600858320, 182406748, 203880320, 141462769, 443019763, 99407593, 367908888, 839581110, 380776950, 463684485, 324215979, 475415101, 348094239, 474442774, 185112727, 145806326, 277619010, 381717696, 164274828, 36583554, 245748439, 463773479, 160483016, 168855387, 548232257, 316935218, 356301664, 116955612, 193421694, 369255041, 48736896, 157248882, 425939828, 828248176, 321944664, 108512745, 110348600, 338681400, 96437871, 373120915, 487788384, 195950121, 113476662, 35896861, 377194866, 164330319, 415983861, 603489231, 81128348, 677430735, 481615720, 270383317, 158321785, 368339003, 30245895, 205283684, 95020782, 219269452, 173575534, 105847446, 61305076, 96744446, 188333427, 313585502, 411472669, 441286864, 909105599, 204804862, 221915436, 622588722, 244786794, 414682447, 584863251, 267007902, 283968754, 251038270, 525284698, 630015542, 11975085, 893639062, 152644848, 557040091, 46921649, 139656801, 405373080, 303720591, 19705738, 609901980, 77197221, 560275504, 767731988, 478917373, 437792899, 218806554, 97920244, 33822645, 383795860, 65477689, 490067299, 166586995, 208559599, 717899510, 409411528, 66767975, 93270235, 153162464, 127358908, 453760189, 22515726, 29431326, 634027245, 39181954, 845073848, 15201127, 509009985, 48285701, 257337630, 308460921, 542967505, 549312690, 531963004, 447397998, 245688788, 126800292, 97255053, 571442322, 486066857, 440373187, 151891827, 815022981, 688104098, 278719873, 49594657, 552562804, 396494743, 458985947, 766897045, 100698861, 878107301, 29644177, 647951965, 78892019, 149478323, 314221368, 612758718, 12736563, 4458560, 630592753, 626134193, 205450183, 137562853, 73579879, 159826142, 892644, 114060809, 114060809, 764160184, 504123609, 81985690, 262857960, 5051340, 391238593, 391238593, 124749898, 51095076, 362863364, 491596254, 165888946, 417597566, 75181857, 891236033, 97417902, 191201917, 518865096, 407362854, 75680596, 90015034, 290321353, 272516307, 854610706, 54849069, 87617308, 421622454, 442431657, 51169, 212975616, 212924447, 163465459, 60768402, 700977956, 188246502, 122737067, 225719526, 126107764, 627365305, 202564934, 96844030, 232459818, 491269504, 39454369, 388580670, 287650097, 731597107, 865012649, 7409319, 583621305, 576211986, 553409009, 166916416, 244177796, 234093657, 141464675, 479483765, 199100299, 387941548, 193951195, 526332505, 23930769, 375594182, 566364759, 239870863, 239457504, 505750838, 101895045, 208010871, 104666092, 183624863, 132075048, 422644114, 441632551, 62168905, 93171507, 510283370, 407899059, 209595066, 12313150, 102499350, 401988236, 375447443, 9695700, 132496531, 132496531, 449206630, 35261206, 127889160, 601468732, 521204564, 229412278, 798235269, 829791340, 481021077, 307532945, 531307142, 746739987, 670775092, 642837318, 600207345, 156280854, 108685743, 188747688, 699603534, 593459292, 326032421, 185419723, 608971510, 108270756, 17661511, 395747645, 519956640, 408260487, 138912224, 122235940, 536149966, 783375770, 273568837, 350885883, 32452169, 529247217, 66900615, 584352459, 241867583, 356416979, 278867714, 110270809, 9292657, 618626529, 609333872, 132252114, 325149574, 233034472, 10052566, 68757942, 68757942, 109984057, 622326103, 702884835, 117719009, 584081349, 321261838, 423330931, 882161198, 832716056, 177886448, 102608841, 327447301, 436101455, 135644416, 678738329, 155069385, 380399111, 193953043, 700758327, 756525946, 61617060, 115126989, 43823948, 522839586, 230778449, 559297093, 501147147, 419699688, 839948809, 349868391, 128549082, 295261126, 345991921, 311974646, 874368774, 338411056, 267184367, 552813805, 813302858, 119501368, 642950504, 6285611, 231230228, 224944617, 307592901, 510835254, 255279055, 514229016, 307383003, 164859556, 319143109, 340033249, 374823811, 25717754, 368812465, 464191933, 382557298, 663082756, 129499616, 457881344, 305789975, 565460132, 885044090, 401408380, 273964474, 19691478, 413735316, 129758211, 176423050, 596793205, 722787087, 59049738, 753510867, 133841307, 502458388, 653189201, 218724340, 275939534, 358872239, 23575979, 398433582, 184509725, 620337530, 363205271, 28626668, 197544429, 26043646, 196907341, 377109350, 401491042, 166808734, 443205607, 142449400, 422183136, 382814559, 779820281, 235946632, 187892539, 226358681, 230540792, 121384138, 210306475, 462068917, 240395771, 436836293, 808158191, 552514561, 130289322, 796322676, 675264828, 129211541, 694983471, 800791373, 100147641, 737117852, 620968248, 564320758, 277513744, 416463652, 504946479, 177045347, 24812157, 43565950, 132824559, 196976523, 169080339, 56360022, 22079358, 320857507, 335415244, 759332190, 80956093, 354658131, 181296846, 107106687, 675033718, 765340366, 583519052, 302728025, 902658667, 465340487, 307797154, 546560055, 140276791, 648081369, 622828091, 586219518, 386226716, 101688847, 320314698, 345822699, 690212958, 285823936, 125259825, 322322004, 727746406, 61113931, 624122909, 526473152, 204468725, 149408458, 17488597, 186290260, 93511829, 234949016, 72818950, 163034315, 468230849, 218816279, 19194111, 587995246, 346276564, 159759230, 288722458, 198992130, 220224975, 157418840, 330062241, 170094136, 458253219, 184816440, 135229900, 243395768, 540536938, 9038386, 295486469, 295486469, 7745714, 97270039, 97270039, 67734859, 292127383, 87236982, 196720744, 327863096, 418639238, 69116078, 395137602, 260241025, 478748436, 134565725, 206144882, 207829803, 775162633, 146616337, 460159223, 158214727, 250058712, 921988506, 613765466, 359881309, 135479590, 810962491, 729673360, 590894530, 33632285, 654782643, 719696911, 487075296, 273163995, 639159310, 170646569, 179409738, 30218702, 248647071, 156982959, 488886121, 538196092, 434453867, 406775490, 164783037, 491396839, 30575577, 381184446, 68745816, 461248741, 869061975, 248414540, 319373530, 229559047, 797865156, 677318791, 221705845, 307789091, 200461284, 72347731, 770920726, 345974598, 314483992, 422972120, 70721463, 505723687, 136390226, 418382640, 279483306, 382445924, 735600236, 146718062, 43109230, 254322151, 262446184, 19811524, 279407089, 275904108, 417357913, 13090713, 53220055, 121760189, 492858603, 41144225, 254206645, 232754523, 120823795, 87797451, 202329175, 5835171, 600045589, 600045589, 272837881, 14740097, 164499860, 237175982, 523519037, 720811107, 691678647, 211817659, 186520198, 437220527, 245121056, 78988515, 108555694, 275023484, 229506338, 651085187, 263557432, 278839791, 18531815, 243456813, 219787765, 299797408, 374009909, 129664390, 200455922, 311143483, 476407116, 284110306, 635456164, 137645608, 667918626, 578417912, 97855773, 205373837, 148973232, 304649020, 289195752, 106890375, 17150263, 6763755, 542248600, 542248600, 67599124, 77899235, 266062377, 308634378, 351585703, 247167703, 518335951, 170202251, 613299836, 711060927, 766796217, 651075557, 108705835, 294831614, 795324505, 587566463, 373935881, 614576133, 347045301, 525141124, 299060476, 121809614, 232082468, 13874938, 130526445, 515789202, 19701838, 877784763, 718220424, 25800527, 694897407, 88852476, 162726705, 348164876, 463737643, 53097616, 529739528, 23636393, 306344977, 481904888, 33911637, 248636060, 388403460, 612032015, 50896687, 277431394, 316381153, 211194768, 91015627, 646846076, 375928121, 63640954, 255537591, 63348458, 277438458, 170158874, 479244020, 509315356, 178965446, 924025121, 726401042, 425673406, 216440551, 5803671, 448610349, 448610349, 199003559, 533220009, 648352740, 736992113, 529992738, 10063971, 30117669, 20053698, 314543919, 607979944, 589363527, 85418436, 345835644, 163819799, 423653241, 47259848, 180473685, 362198948, 308685360, 393487875, 688957023, 545925567, 317883725, 83127633, 158953253, 7720036, 286288866, 278568830, 24744283, 95327190, 346075998, 213089991, 356640094, 699330354, 115623069, 560906951, 79192053, 648675565, 135638862, 151230377, 249773280, 203154642, 293320738, 437623117, 7394268, 116606560, 116606560, 245103242, 315109296, 183624421, 132200442, 55484763, 119330099, 367731958, 452429338, 80079662, 405642860, 348779801, 38481679, 661962776, 129413521, 71612542, 96738578, 49515177, 432393061, 533286910, 237641586, 185361297, 169110158, 244411637, 7812246, 508111808, 508111808, 837365877, 733978544, 861177672, 890496681, 51890147, 611086115, 410488112, 744381167, 286727651, 295849707, 653510667, 216339348, 187860117, 117684336, 748847539, 253616416, 103595798, 157024035, 400151204, 501571921, 252734096, 670656982, 202420927, 316006149, 733190156, 377189317, 445544229, 492523807, 354874351, 454962324, 559471167, 796359969, 645805421, 215517090, 364249146, 82291271, 532025469, 742573440, 89144260, 788936211, 425810554, 204685445, 23286841, 195798371, 293571960, 372100936, 788765796, 628019428, 126836026, 131676083, 544637672, 64982997, 16261824, 384207580, 133483226, 222998228, 556200036, 635167393, 172256502, 704180196, 3800069, 46999025, 43198956, 875829366, 362285544, 246996850, 47498084, 98444763, 576591732, 345317956, 57495870, 117685494, 514595562, 549473138, 648132493, 437665579, 324588795, 843800933, 250463561, 218341485, 404830393, 75989664, 137484983, 51640275, 822406851, 14255651, 150637065, 673541592, 293636191, 896204622, 348407306, 251997224, 119276126, 9437773, 348804990, 339367217, 656111831, 98120481, 35398752, 204666154, 300801659, 204632293, 509193727, 840744835, 41271041, 565636580, 126827948, 291452504, 837310573, 427437214, 237895175, 142796751, 55950005, 10039817, 744009719, 733969902, 801386603, 356642740, 199350211, 163417346, 134890281, 16141014, 254982174, 398347944, 740560922, 221853977, 106847381, 412080537, 196989089, 463499470, 466109563, 505501046, 800907558, 402677946, 141276425, 19597383, 522564587, 115584639, 164013522, 349854621, 31934112, 624455673, 2767521, 59102099, 59102099, 90935668, 32753273, 17442038, 94740269, 19747809, 35327576, 697769371, 935618494, 645021070, 138667160, 470322033, 539760696, 257661070, 593362807, 398105219, 333074025, 553412094, 266558008, 735802252, 125108271, 179191208, 32751073, 96419456, 523525144, 201933891, 357971269, 302554361, 50385176, 628635118, 813232407, 567136236, 141780139, 130072116, 737134942, 75600393, 131683111, 565205975, 64313460, 631646533, 272720419, 344430968, 63420380, 401108458, 195729297, 506770821, 486352259, 922296368, 663693208, 209682345, 130380363, 48799254, 2623401, 508703145, 506079744, 44761532, 20881154, 52090441, 329427849, 82222800, 615596887, 678949452, 508994361, 650248838, 884665270, 48812974, 334206247, 80610203, 444559892, 161333726, 205225775, 326624570, 254946851, 319974370, 289643741, 489986698, 42104809, 561194428, 723472852, 981264689, 1741867, 451069968, 449328101, 223786034, 143862828, 663058944, 334756483, 579659674, 782888272, 51683321, 141352702, 578990807, 296402114, 110074533, 476568608, 343441072, 166275666, 77153492, 62492325, 364050475, 359227459, 6567669, 616023001, 616023001, 186730106, 148661411, 125352535, 101984253, 10502978, 32800449, 32800449, 494808207, 262281158, 710599457, 100220377, 500049482, 80664638, 267001222, 108032837, 428230720, 322034099, 460867525, 18598888, 457294982, 243885701, 70252290, 523553516, 99412898, 213282721, 431519225, 71425919, 219195909, 498208459, 594697693, 274312345, 603266047, 84279581, 438011179, 383743556, 114094707, 286108103, 718695854, 640399250, 277828272, 408436705, 638156004, 186130773, 24378325, 328248901, 518382111, 140169589, 442658881, 74240367, 430641650, 848466060, 149299872, 617528886, 135176621, 265504042, 223908201, 257039110, 19894176, 140290570, 3933847, 375959398, 372025551, 707549169, 496703481, 285761075, 299525813, 185887358, 22387996, 225665403, 359785115, 604647595, 445695959, 259384064, 52045565, 369998340, 399589223, 477096436, 48526553, 404461419, 86162858, 129679633, 58395614, 362236305, 62419396, 21041250, 217329715, 889847684, 504998889, 183597354, 323071572, 298275231, 349010792, 622039817, 305581778, 135377724, 50510788, 566721974, 75668737, 467351841, 433916966, 601157374, 113578959, 60902000, 114102622, 36488114, 49698566, 346768427, 577829022, 63702839, 58205198, 360402623, 297861043, 381679058, 261278439, 234330211, 359127089, 429993422, 65885599, 430265908, 2830463, 32963642, 30133179, 207894113, 608650676, 376838133, 347306920, 781633318, 940916425, 23450106, 55598252, 402397607, 361434497, 110010709, 630241194, 340203268, 457856593, 876665934, 647412993, 528943371, 670333337, 635182144, 589814090, 36318545, 445078742, 212262651, 45850816, 53429443, 693471526, 752064260, 143092922, 818061007, 432474830, 298515899, 731140865, 490990547, 304876680, 345547011, 111002339, 126205529, 97838802, 3978549, 686191214, 686191214, 17744960, 229278092, 31614072, 502656255, 660453102, 659022293, 876615918, 366236801, 72748291, 160014180, 296430001, 377777314, 189351884, 23939480, 491234911, 731549504, 71462688, 551905307, 598181217, 559573752, 301883348, 94692275, 489295022, 388193212, 274305382, 356773550, 419335105, 32781546, 205205891, 657828551, 539687213, 51820529, 24052434, 308737545, 763690286, 499927007, 202196622, 657956671, 600947934, 843545057, 514849239, 368964971, 23019945, 734681015, 725090004, 224902592, 12997912, 353998135, 447644533, 645658353, 429493928, 563640731, 9871743, 610599466, 600727723, 254850564, 378105693, 730783542, 187248920, 14418761, 638179615, 131391252, 629943907, 895270702, 743725209, 694893049, 792238797, 365989827, 114203248, 315262276, 48554756, 924933646, 613911149, 283453131, 424457686, 91803559, 224842413, 61786877, 154398614, 235378808, 411716440, 106439832, 579788819, 514123226, 255836366, 170020838, 190161901, 133661039, 468045323, 77312263, 235567807, 468198929, 385771381, 321404252, 788641293, 840342141, 213422617, 99285679, 311828722, 745620148, 133491863, 239086226, 130907, 566375336, 566375336, 784609654, 568035255, 368047144, 361654848, 76549867, 205539230, 781807460, 781120584, 25978172, 924551464, 854009262, 564766504, 500545947, 170314171, 478222217, 52170022, 182872508, 446750554, 186340930, 194195633, 714893056, 761001120, 439538819, 411322593, 205379934, 214620209, 469473621, 260714539, 33001615, 333616517, 155481101, 244630261, 87969682, 144797827, 379473671, 423992206, 81230152, 6731227, 253439524, 246708297, 355978032, 257794824, 434124497, 859289776, 547950056, 270324766, 728176154, 319215461, 284600186, 129145879, 158288587, 613354731, 81651138, 70187242, 492040853, 148602440, 470823654, 464473623, 641678239, 798375292, 70762288, 236378878, 368379461, 156891626, 564769939, 275704593, 777753943, 326956917, 158317924, 535096963, 468594365, 59266452, 233219130, 697277101, 644592738, 692497176, 736553136, 197522813, 436509942, 392492835, 613246747, 164703459, 690283935, 850329975, 798420242, 504440689, 547240368, 366126698, 360255288, 205953902, 198612898, 506586176, 435393522, 652752877, 249777442, 204611775, 547966728, 332882183, 508377668, 415686466, 194541718, 576882179, 381814090, 129865074, 565687765, 256196104, 207786227, 362411094, 700625149, 436063591, 98178045, 196344441, 412809169, 830187595, 894630221, 370024506, 223487488, 422239602, 30529953, 132283315, 937961466, 755384058, 126660128, 307539394, 461757384, 63739998, 453607059, 110510009, 339842986, 342798913, 144108544, 82315774, 181552226, 509672787, 456350690, 492069526, 202489793, 23314268, 445525505, 58454775, 374952520, 571381774, 574393995, 111202419, 322494156, 370893219, 618670369, 551874621, 561013388, 106145910, 265721344, 559043434, 182348197, 4062835, 149610836, 145548001, 164218411, 417269202, 199259167, 136549971, 711157486, 127108869, 287035520, 44980788, 409437464, 471954858, 225743242, 214656271, 939765095, 625884106, 172372877, 217913394, 58716560, 164694109, 368849133, 567407825, 227673844, 338647342, 266429603, 518522606, 92814687, 118915624, 129694134, 13828099, 276694092, 674710551, 171460804, 423214050, 185672483, 506873971, 284426841, 458097401, 205566363, 2181172, 693924289, 693924289, 19944094, 841157432, 260082400, 187908388, 45100254, 422817052, 669620472, 301338450, 197146321, 183593361, 89462086, 618596392, 552270291, 418542922, 62895572, 221624602, 467264653, 854102306, 530819006, 526459077, 937451759, 340961921, 270453244, 37626525, 232202987, 615225889, 67717026, 484510469, 222706804, 515629849, 835155927, 642520670, 500105922, 108516197, 362279564, 689973031, 85784376, 267337028, 87249416, 253285605, 101592830, 231789107, 1300997, 368591070, 367290073, 333655762, 76043047, 13278527, 540847341, 422047656, 634839811, 840246144, 104900812, 336799443, 351951158, 169270621, 79242490, 672006981, 23957913, 758878992, 65722213, 450904549, 278062717, 283035011, 317920832, 512732314, 252254447, 434960577, 418997067, 433206653, 504340747, 238733994, 199154018, 338727870, 840280857, 41097866, 784189899, 231350339, 502206783, 643152784, 497533415, 89776224, 321674945, 463401306, 238457148, 168972689, 295036993, 697661263, 330140164, 286558482, 667558558, 561034502, 2650999, 401085450, 398434451, 571608707, 891900125, 627061821, 261641797, 285325940, 612635629, 545650757, 664347260, 76696947, 55178040, 447551634, 154352630, 440030379, 392483802, 477791374, 503663612, 266116736, 710103913, 172580152, 868821711, 845311353, 448251027, 568426187, 949959568, 200035099, 47264647, 466190832, 215063384, 684081201, 131283259, 350707000, 484277689, 153923697, 745365224, 419412995, 2945492, 472206132, 469260640, 913497614, 857384231, 451990363, 457801012, 561494216, 150991404, 660260170, 98942893, 124175826, 427091261, 133613922, 36939532, 283093836, 388101435, 456530906, 91417736, 525981153, 126913822, 93251500, 76557528, 56379901, 130574579, 313299539, 294248326, 363724633, 549197997, 9264111, 28214490, 28214490, 355079270, 79007717, 343227681, 5863873, 651977394, 651977394, 56768368, 47711740, 818706109, 319118990, 366149036, 394570495, 128917454, 333926238, 337150207, 157164192, 36505315, 54289106, 143792601, 798036573, 76163691, 39456010, 631686232, 113012449, 318982999, 125133918, 492222839, 188735389, 81699661, 403115713, 2707881, 411776029, 411776029, 780547367, 37255270, 198791243, 89239649, 367173527, 27422961, 324738837, 256925617, 20371776, 530505876, 446268651, 302871163, 163752087, 331719544, 45095307, 175545600, 147855899, 191951985, 231797588, 458978182, 470410305, 588339754, 539991206, 383021658, 450761652, 209375204, 69183308, 223185896, 67012314, 373858418, 324633141, 192164448, 445198239, 421894031, 661186472, 584687817, 274550132, 292726448, 9879983, 305045085, 295165102, 34437828, 516410262, 420504393, 738628599, 216880538, 145615604, 130195650, 929200941, 829447105, 95591773, 564987522, 682152703, 142136857, 4839552, 883402970, 878563418, 414859882, 129652597, 353949729, 320473076, 502582540, 105036462, 140704782, 14691588, 143791842, 114956265, 40244617, 294810835, 470387475, 960383963, 678103741, 663266080, 610172834, 250569930, 19644251, 499050180, 54897400, 494542164, 335059874, 584847615, 399992960, 675609172, 686381227, 204893856, 447779651, 161311050, 551191930, 749114122, 375951634, 346588637, 618292651, 26528008, 176067874, 443324604, 629142589, 782260136, 3900481, 293597977, 293597977, 379511604, 209521638, 37977927, 823966075, 289851946, 388211750, 524587403, 343370025, 527657996, 272314038, 534760719, 584305997, 36892150, 17345419, 548948863, 420939021, 149229379, 64857492, 433176078, 404216157, 277940253, 331262348, 274130779, 27627281, 388771846, 30808820, 452389012, 41817777, 702346946, 181750779, 36729330, 237060740, 602269174, 104310370, 16645347, 722596773, 651222314, 73247028, 982702515, 340907286, 511399219, 39357279, 542154904, 425520411, 693827487, 9860917, 153524005, 153524005, 95789372, 191347079, 232861041, 209452770, 141437487, 289148350, 1619222, 54207491, 52588269, 55161328, 508939963, 724560468, 907962191, 812313969, 259815769, 354326727, 41544035, 43593973, 711438859, 11637693, 268618769, 218018095, 8382106, 58320569, 58320569, 332368388, 47240247, 671222691, 170268348, 483929673, 347401626, 274911886, 37703493, 275836580, 312974645, 174986062, 311815659, 329363094, 507783218, 651589973, 237280421, 274573295, 4536708, 72243147, 67706439, 66268959, 284040202, 81706216, 144827785, 357901988, 802916268, 940375202, 580255233, 323920957, 257349446, 81178914, 24084231, 108457857, 221224273, 809616207, 654356299, 3299984, 123527901, 123527901, 6243801, 446161342, 439917541, 301147362, 321675555, 364578896, 645398085, 414971625, 307622796, 7024493, 868112400, 868112400, 369206107, 327504628, 107424292, 79354274, 821555341, 65059973, 17429404, 808688719, 352294491, 10323318, 213625299, 213625299, 31276899, 200418843, 6595006, 370804236, 364209230, 617779719, 660255882, 835958728, 629360115, 68154505, 602083472, 241015436, 217726925, 288555527, 532812052, 77626801, 506706735, 238608346, 180816589, 369495754, 251281704, 129303391, 870896541, 61181663, 464576488, 11128215, 231497467, 231497467, 256337464, 271068401, 114720665, 584183879, 235981248, 79191403, 820254305, 182586338, 280549230, 81934554, 131738144, 303699994, 85585848, 409165260, 459839333, 168524352, 116141393, 115224546, 111775845, 57507523, 127753273, 71100303, 293141248, 714230949, 17102905, 82409982, 636444789, 171457609, 344105454, 326890586, 80735930, 416613738, 496852990, 310589468, 10594791, 228828321, 228828321, 540703967, 157460042, 126751751, 471520969, 261501031, 542213585, 304248785, 162751429, 419426418, 174948364, 403594080, 198736356, 339573051, 444768089, 894575162, 255703346, 81633189, 57784506, 367766259, 126832946, 387806268, 421162307, 397489606, 178398371, 178712491, 138567362, 183807503, 16960952, 321344246, 592351806, 387326886, 648783927, 11895050, 101511353, 452717651, 22155019, 383241570, 644394481, 297812315, 249100538, 117209065, 384293928, 201621771, 304992390, 427097554, 666265206, 5606624, 716495460, 710888836, 60705485, 360576564, 586373448, 693999847, 146383057, 601044858, 611220587, 20675672, 755162925, 852153465, 327354326, 257717408, 26616803, 68652484, 168634991, 82717342, 270718015, 209414751, 353374773, 91334651, 296098663, 198276841, 258506706, 313660061, 148572603, 119255501, 275890925, 148848379, 47825603, 147295513, 97562743, 423293581, 247831274, 446086093, 249208609, 424038332, 457024988, 133508835, 398219385, 108288742, 685355949, 121115967, 37833008, 470824902, 541749169, 838898367, 303488845, 521940350, 376121298, 162409106, 305439530, 127681755, 6981221, 346067034, 339085813, 190162141, 269051629, 353908451, 355317580, 892258228, 669171784, 263258694, 442956281, 754152834, 109800146, 283816922, 162566650, 559868284, 241731449, 97012077, 557414817, 242884991, 472678549, 550975542, 121046620, 274178362, 665799803, 184930364, 258078797, 210455205, 430514184, 200930627, 73477909, 491538361, 451966301, 580086435, 374233212, 51733232, 264213576, 59361329, 145797595, 221336175, 259205587, 40641251, 134908215, 155420432, 567446547, 44596314, 25213805, 32651728, 210239738, 357631958, 599484939, 401185496, 538187711, 823343595, 96275964, 552013553, 600571876, 39857506, 768282545, 170143051, 174444998, 125479967, 725213860, 87689947, 546282076, 41405222, 200078746, 788747888, 50869284, 516954887, 147591659, 5895384, 468447641, 462552257, 886643463, 672656877, 146087465, 83176560, 563106704, 197014154, 418684808, 75718809, 825209219, 390131233, 278508270, 622371030, 344807723, 438747840, 44550893, 580793791, 450535286, 81360723, 134575527, 108290951, 110824303, 222480093, 605756166, 134139353, 239083644, 590171847, 368921155, 392854870, 785987881, 95849609, 88276768, 75429894, 695073828, 305746742, 496998958, 14217350, 126808053, 549741016, 14898859, 65580682, 530944259, 474208305, 458186871, 36300434, 523051624, 235932874, 384299635, 101172495, 114246860, 60241315, 297503222, 77979035, 254159826, 173931630, 656942566, 255676986, 71888192, 276891962, 531714374, 196309974, 205750178, 283240646, 115580991, 366886993, 958415133, 112683237, 11296120, 301972933, 369678618, 109507105, 60146983, 246792059, 217312292, 298909080, 598726166, 280920282, 121937677, 48142833, 102759968, 623939707, 222902873, 308765925, 289937915, 30937058, 531853875, 379846514, 666940015, 403659225, 604347019, 62722360, 146644879, 626853820, 67489547, 232064058, 79912670, 732581091, 280051121, 275896653, 688154010, 531081268, 154290727, 476652234, 290133785, 220424875, 150373488, 60202347, 182687550, 182222454, 214800571, 117886591, 455593543, 335615808, 215816529, 413945093, 210990012, 830965267, 511964102, 339540496, 63414607, 617812012, 166186590, 310167234, 372703564, 110530240, 103762621, 415781387, 357503088, 490925024, 124863352, 170064219, 61954926, 196029142, 8240282, 332914646, 332914646, 458141768, 43814295, 465950795, 76200231, 205876170, 237916509, 407420740, 225407502, 289113207, 575078441, 221850693, 215539572, 211987574, 326953277, 489672429, 302487446, 342204238, 469239897, 11525820, 462309764, 86599631, 44907609, 559183832, 320544555, 141746030, 400556241, 159198061, 462395050, 15985744, 261684680, 324052662, 906888059, 461277562, 96102764, 368158636, 133979144, 774337718, 520028415, 361504574, 211764994, 177274190, 79296288, 349827222, 575835847, 646265565, 213576186, 184396823, 718924142, 126494552, 359937799, 299060749, 2564738, 383196717, 383196717, 386822184, 161529751, 395991214, 62628880, 206838980, 745717688, 322770597, 387045273, 910612554, 447060773, 218155631, 478867456, 555518477, 604815864, 442174442, 93738275, 455475769, 535448637, 39753041, 74374090, 403212372, 291807625, 46718799, 71861545, 211719567, 817783971, 39055221, 775222733, 210860548, 213099616, 871639265, 44596394, 642502174, 688320762, 916861123, 880881784, 68541634, 449015384, 115286922, 308440633, 121128069, 674117417, 4655814, 707792407, 707792407, 170473778, 729753912, 693351448, 89532033, 325496046, 858765198, 8650785, 228142935, 219492150, 99900606, 564251706, 381430831, 370762158, 483215390, 355136132, 275532600, 199308682, 367822382, 138995657, 331403752, 118721022, 78078769, 141389296, 175535154, 269414611, 846300462, 430137980, 53538924, 125687893, 244666896, 215091890, 487946285, 749959964, 376634110, 48518614, 130670894, 542468649, 452050033, 36241323, 364326938, 670260804, 299648749, 220963190, 59824296, 705771159, 615725042, 507030091, 657100957, 797059870, 828933682, 703125716, 107784173, 484751064, 10881131, 184569893, 173688762, 536389036, 318113460, 290311535, 351762849, 468414904, 425713242, 365076941, 454106819, 121227216, 750923519, 857158411, 358038899, 440789983, 22006189, 179985779, 39913594, 243298448, 690874651, 46454224, 595691173, 480491415, 285727042, 82293891, 819222450, 95243283, 655107518, 387335682, 601294686, 245846253, 187333663, 107991997, 161406154, 263405007, 230463962, 360230100, 635744190, 519475810, 114775428, 83837932, 453571086, 248761544, 621915612, 79629642, 591543656, 127396227, 173273403, 286677113, 119924192, 120010227, 30721826, 304286517, 335284828, 544401672, 568201395, 308799210, 209314725, 529846404, 134936273, 235054762, 705442953, 149438686, 356171272, 65172881, 547597941, 892203226, 30386453, 195745227, 335545510, 379723577, 425473376, 90233207, 660250066, 24115247, 860218842, 42823532, 807391517, 416928680, 367311189, 21516301, 435982598, 79915314, 356637972, 183333404, 836570367, 367984599, 138178695, 347665484, 696402766, 456450112, 146198546, 220264887, 270801128, 275204721, 111076548, 467741199, 541061251, 201420570, 190290536, 607596503, 96714986, 301197503, 120266880, 99238330, 375177747, 18345572, 612951565, 203112674, 579600328, 671495423, 231349624, 621850401, 95479629, 513272283, 518392923, 34488096, 203156583, 163827171, 336988440, 77675114, 300255943, 395414810, 139273551, 40485387, 560217543, 546793988, 9538027, 139675149, 130137122, 562637502, 219272406, 220179622, 333000789, 283742537, 256142050, 34100420, 93106324, 161649624, 500760849, 581442930, 451475828, 320647105, 110304363, 66047624, 230376799, 875755441, 374327084, 49213212, 276617128, 598747616, 705356979, 28732007, 663236047, 351980996, 352143390, 226596784, 478624768, 337183593, 108724789, 309443714, 15593445, 394202064, 110917933, 317778304, 555160585, 49736109, 419491597, 98840984, 504064260, 79502449, 452684435, 315930865, 19495710, 617383530, 634902506, 3815504, 190334047, 190334047, 362042198, 7462423, 528467042, 521004619, 159156985, 559743411, 383074026, 201535646, 321020904, 244179460, 229643553, 39726036, 93981079, 312049511, 38535938, 265682510, 15819064, 10629580, 111256306, 100626726, 69784440, 236103927, 216231003, 535108319, 19732606, 251452553, 738228062, 217055743, 21164241, 719506655, 258232255, 292205819, 198787663, 256400795, 692491964, 118716668, 537847735, 642348331, 284896949, 490815017, 573533282, 186887470, 190321985, 1694457, 633377831, 631683374, 28982629, 120899910, 896679695, 743742085, 752693588, 612823762, 264031534, 422991452, 450008596, 204456185, 194852072, 463837372, 380320967, 433063612, 288079572, 192544547, 626148370, 732792503, 8977211, 781955813, 781955813, 557933587, 301520595, 677229964, 59688716, 439864374, 57082848, 577384260, 356757514, 101297524, 156886808, 33788539, 343356630, 456161328, 203692576, 514639566, 172528274, 164121606, 328102431, 262909885, 498772836, 303388045, 95603189, 534650458, 348496005, 777092661, 94565306, 809023712, 785808185, 856602801, 221411657, 503975459, 39215731, 171424585, 50112320, 44232717, 21769209, 147950099, 661006972, 150550313, 152856117, 617229634, 17824211, 653123171, 24373001, 590403230, 553816179, 108318725, 136395919, 363636585, 36269093, 13786659, 171116223, 311434750, 465841032, 702945753, 249418182, 282763511, 492134494, 107102951, 588266394, 541533411, 662564619, 800767694, 307938063, 321304175, 234746863, 781646314, 311078707, 948831, 275781766, 274832935, 317787399, 42904568, 610803743, 366197822, 155645972, 57057978, 329827544, 188058612, 215565034, 227537486, 120700459, 268591607, 897092391, 429452175, 98485994, 49206751, 275172312, 37402005, 25547957, 629058653, 138435068, 346169558, 79001670, 876642686, 567580831, 336060685, 52398344, 766232283, 533665333, 259906960, 501485904, 79198925, 732985256, 266446748, 10832034, 289366115, 289366115, 659517233, 637067756, 339423402, 264536184, 9517363, 914819453, 905302090, 394071617, 394525353, 712600970, 493094719, 21898817, 767232813, 441814478, 381823911, 582248190, 386863442, 658441518, 419473132, 87804608, 297876200, 428001507, 694508186, 552375995, 431617245, 292968288, 405124049, 778917735, 657978949, 547607886, 41411852, 266711807, 82062496, 359825266, 343294174, 718642533, 391651874, 437533070, 242064320, 166970882, 412637928, 88056622, 273257426, 180190408, 579741224, 347300881, 37591990, 485990178, 783220120, 274665852, 152909560, 237256547, 98960837, 738556099, 437698680, 48032968, 113694216, 613440112, 604484603, 368120971, 236602946, 671670872, 701664685, 13705500, 742380942, 936667101, 403637046, 222281534, 519503150, 192629209, 62487186, 23239923, 137157071, 409498860, 489101476, 673427171, 618494974, 348886628, 531368951, 583807314, 252312459, 211341912, 720595387, 681206747, 695565771, 831666611, 130744850, 892682183, 218353237, 492531233, 125723743, 18253700, 96175448, 184569859, 223827371, 179739334, 638403305, 423761871, 77914413, 60168432, 659571605, 103017821, 206683648, 331965003, 502257747, 208604445, 349766412, 668083072, 664233991, 897628101, 136213563, 445480573, 65050271, 88050096, 366084876, 10702722, 417269431, 417269431, 77439585, 668242490, 135426832, 242664553, 897512582, 742076150, 697235788, 853946010, 123858822, 28001223, 498503613, 57141030, 176799753, 165460905, 128599966, 581443798, 715609412, 245865950, 149409509, 329456864, 13955571, 218718813, 164561444, 17688996, 415413715, 450586360, 166362751, 38989674, 264936279, 76543320, 588499638, 740073, 246288569, 246288569, 25306256, 48080857, 816128925, 486063152, 71123411, 422164551, 143533831, 463758509, 564253283, 108568276, 404487072, 201351656, 193768164, 217048914, 213641615, 536487483, 465457718, 81444112, 168530464, 133433337, 15562423, 732055939, 369244121, 252656930, 712681275, 304938402, 364229368, 274446948, 203460395, 165150952, 497044803, 337873159, 759535785, 765012276, 410801189, 318605150, 9758776, 481951895, 472193119, 36668612, 560113080, 98272116, 635329033, 751643128, 508852766, 570321349, 659452780, 65089359, 328453449, 204417440, 256114527, 226477412, 174962207, 146307476, 123802740, 632386196, 982399991, 584920194, 117495212, 294639856, 717073820, 727896105, 442926165, 229668922, 60912579, 685218805, 194377394, 475448084, 658827621, 37698494, 283467780, 104610582, 528465703, 122720993, 266832844, 199542069, 149509152, 124264782, 520745787, 819869671, 290584534, 308077597, 74920738, 41795165, 54359052, 319874359, 166749315, 315646900, 251250212, 847767722, 194042192, 258888040, 36975293, 788635951, 342811432, 34123486, 136750898, 244692430, 221903726, 702855295, 545794714, 28488001, 388784726, 42304027, 151356342, 307948757, 262608622, 221638484, 90812108, 401845772, 140883043, 141459979, 355626192, 698477356, 477207713, 498725978, 35327055, 432919511, 148242110, 379770425, 279714859, 564933505, 948470241, 458339596, 159907707, 205710224, 133685172, 177078205, 152670433, 94002613, 5408971, 182815284, 177406313, 664799833, 966738179, 697996339, 317607180, 539990981, 70603454, 425594053, 178815744, 270196930, 335593550, 649107725, 499789800, 407719372, 6221788, 455728515, 455728515, 41876441, 117322116, 150763088, 131776319, 74757103, 556349748, 206469636, 190751447, 592375716, 53317377, 94755169, 578129636, 703893490, 59098566, 366746911, 236801054, 604031881, 573111440, 190751022, 552736980, 634693571, 360201205, 464790358, 816500060, 727132787, 443082637, 559053815, 5097713, 599073676, 593975963, 191898041, 334172608, 571508485, 711937997, 190586496, 29526303, 258601306, 416273078, 72142498, 410233811, 415473970, 151900649, 21152346, 549099255, 419096396, 444136356, 684058634, 91876798, 394906267, 63509765, 170646093, 451694880, 419203138, 567794066, 126296952, 232848954, 217717297, 286467769, 345423450, 152054497, 552394385, 115644774, 95363372, 671425127, 211556512, 210037625, 2532875, 364506513, 361973638, 338076048, 597610109, 170871862, 182476744, 138036207, 488302894, 142100006, 211426621, 235027834, 253542853, 41010468, 296813833, 374551507, 607789494, 724317602, 14373310, 475231808, 66560175, 192342479, 636247978, 839779186, 825110320, 746129904, 408148708, 320219359, 263346624, 33574376, 84996259, 67540755, 73231165, 283318778, 505823830, 500630062, 529759112, 203082766, 95547310, 286401624, 129153361, 473523306, 318627014, 410833770, 46939482, 292293915, 542436355, 231492501, 90717576, 214190175, 43669791, 58665391, 94818810, 97673912, 415143164, 241785089, 39196046, 634095155, 503015363, 170528355, 716566110, 371531967, 266926633, 763692880, 522463777, 363050877, 124596265, 781748310, 15783501, 118347649, 428693226, 209855550, 862889331, 766371826, 849322293, 661868546, 338754920, 263893594, 647558601, 609446750, 79595335, 11193486, 596558119, 83363515, 43213717, 28182062, 20824943, 278449746, 123721339, 122431314, 46817314, 640962951, 709171243, 289661319, 294994382, 734010547, 311439046, 12815528, 172703219, 237028322, 433685560, 173437247, 145423062, 156701411, 18197815, 461803685, 800526161, 577158996, 527356749, 234443196, 304059526, 616382077, 283414474, 122450753, 45460672, 277324168, 168370187, 31232852, 17586466, 575763497, 795448728, 160855644, 390285300, 215193161, 863876189, 10985742, 660743299, 660743299, 580715333, 286395034, 567126577, 837312893, 442592201, 277914250, 393186032, 152525290, 457093515, 178655415, 179986561, 280994493, 486976753, 75714639, 164751966, 20903577, 150281174, 28158375, 281770330, 648331307, 394912568, 121506058, 82995298, 73319603, 192341515, 101468131, 229855891, 181821070, 138245164, 515675511, 109353854, 3125204, 85202187, 82076983, 136613846, 396612662, 345191412, 854343326, 778629682, 473771581, 516660675, 755387061, 165664207, 265688013, 520006577, 509035518, 236559411, 104853088, 352350434, 268242516, 240599, 654939112, 654939112, 62933359, 460422141, 80825330, 225548071, 639940893, 143550506, 270483170, 292886856, 479660086, 625817273, 7079976, 169778171, 162698195, 300315119, 237006023, 90370617, 245383792, 3535048, 665895718, 662360670, 481286485, 232080496, 373587493, 145082336, 778049149, 477535014, 362106751, 109921081, 625129121, 693172833, 45224232, 508800281, 731357023, 443497344, 344742530, 200040932, 70077088, 396528742, 698140425, 131848389, 707527177, 115601918, 111055577, 229240077, 278491931, 146603022, 30163584, 456188801, 385104870, 586453606, 632402083, 177406687, 315614226, 285948130, 425605978, 364790296, 360281038, 210818037, 72813718, 328042781, 224955080, 85877566, 596549722, 211549292, 463938283, 250831356, 32957223, 107887683, 665851096, 52936076, 211416384, 3280703, 59053770, 55773067, 173262604, 191034583, 358223926, 604377620, 599615837, 225413921, 317270078, 169114028, 53643830, 568133338, 33066425, 538296095, 127103621, 221835462, 755533391, 12991302, 804827381, 553162437, 195325543, 316440831, 411582172, 200419638, 242255268, 56426115, 505088100, 308205474, 481366858, 30205370, 575022343, 81984317, 551226413, 834919074, 468484852, 437952289, 657773509, 259670260, 70676958, 275248622, 16474823, 334602896, 33818443, 343263520, 155798262, 378644492, 238196457, 566919060, 840795872, 116866266, 368788920, 264621641, 400039491, 240335876, 326527269, 45819270, 109872999, 469616657, 416258998, 657155316, 581700108, 254159264, 112916706, 220158711, 196451700, 199210897, 395335449, 110720920, 122885832, 364440109, 425152655, 479249564, 427389620, 168635376, 155604554, 275314320, 145478301, 251774017, 798139, 464006117, 464006117, 204687996, 350999614, 353551197, 450012477, 436184134, 400926760, 192093459, 245204649, 145066427, 130761430, 87428214, 90431682, 243546656, 260597477, 722956061, 282294020, 287777529, 412368426, 457938987, 462637436, 388958871, 224705658, 148899842, 367359221, 280649336, 86289709, 438447553, 372792432, 146261949, 17067236, 73809198, 473238455, 458058624, 252022455, 14937946, 51924341, 217889396, 753266184, 541880576, 528965840, 269555506, 520841541, 686308981, 17552646, 197293933, 67317220, 416692525, 798396538, 652194009, 144867238, 752907848, 89239043, 430927898, 509695900, 629508622, 212341794, 198952180, 670139877, 153721149, 73327589, 67371705, 721922258, 328388537, 240861408, 729015292, 624522132, 152026636, 106360364, 237433676, 93847348, 73999414, 473392931, 111906390, 208507472, 299302148, 336903036, 200344307, 579748632, 718077197, 403008006, 32356400, 542282409, 56065535, 312362282, 218581646, 342915449, 947850124, 493387612, 401141427, 824517608, 864875043, 527097925, 221582125, 518419617, 796319681, 736145049, 416811409, 466979731, 378028648, 471493543, 40133688, 624637721, 2469872, 592335506, 589865634, 904440276, 890795248, 542560513, 303492827, 304018619, 162428180, 119390703, 595067526, 341716724, 215943747, 405606169, 199331319, 66038170, 213630087, 815683729, 848990753, 766288358, 508090934, 395401305, 365955142, 272764181, 201536997, 15701956, 461777215, 435708230, 600186530, 313097709, 349877656, 338588821, 181857901, 607661064, 335305993, 403470708, 739895254, 385127917, 283530097, 315434394, 318309732, 671115204, 193872903, 259822826, 121771521, 212262994, 218103118, 1239182, 615317565, 615317565, 118020997, 741579548, 510214250, 11219934, 659036634, 868919140, 869405259, 866242799, 195937875, 231824643, 362028379, 673421294, 697108003, 192081137, 133633100, 467174702, 794940650, 493985564, 235028613, 203365968, 62146716, 265912140, 389678443, 767747333, 43616624, 946888844, 614322360, 191287759, 52134127, 250296632, 488902365, 261325659, 173955147, 350333470, 232484416, 530494253, 208710879, 104258152, 339818167, 312181737, 770210169, 613815752, 158540214, 312068980, 327500493, 451812927, 384053088, 487934927, 875816769, 55736339, 783377495, 231172599, 380874533, 41991135, 749736443, 38556671, 514500797, 457029941, 671279070, 433865525, 142504277, 39598944, 89332839, 24717449, 77968538, 275528311, 244683035, 181686045, 245570479, 195867603, 420865708, 477764946, 77396127, 414009441, 154097990, 554168415, 166372355, 27228001, 198820658, 244894497, 905553602, 579150402, 31329806, 229477861, 419356334, 337149851, 164691599, 488735152, 483775113, 504724315, 954431924, 521935664, 316060115, 129916493, 290409779, 82037209, 204715275, 439474949, 108360780, 210503317, 330027807, 171875890, 71105408, 67545288, 135314568, 321311951, 75594914, 607431462, 563024544, 162086671, 249468567, 293399055, 128255447, 465583590, 583387042, 3224377, 317701072, 314476695, 123150036, 660283568, 538308496, 234274568, 156310004, 665040568, 184055127, 7609162, 327423421, 319814259, 337121013, 135598798, 285799139, 517585896, 314305720, 246163558, 826172073, 19878015, 485772606, 296192029, 87468018, 87573494, 315213128, 284463791, 228624714, 24881215, 424405373, 316141497, 351903880, 86009399, 259221682, 403384776, 41900273, 118767315, 227485613, 846856095, 562129328, 226610584, 259430121, 93547045, 7123171, 116195497, 116195497, 66982852, 75128379, 104181461, 266696596, 740696522, 403998362, 7071292, 182991625, 182991625, 309655044, 531346126, 641981191, 635399320, 491838275, 471677921, 726664455, 430201373, 389545031, 884588719, 334687066, 329638256, 445826027, 354761231, 299122958, 341491038, 171197870, 64147918, 446295016, 475250483, 652260310, 183339853, 143480248, 321588870, 305037829, 340975162, 310545436, 194493419, 226494048, 89856121, 40468864, 545744509, 560003962, 144583550, 240721068, 184037585, 169106568, 595568837, 752405595, 117516195, 106054739, 141522903, 97889222, 96053636, 371508943, 119691488, 376486193, 263683647, 496637690, 406709884, 128879401, 172564729, 371427497, 644556909, 488298772, 259584261, 180592640, 393290419, 297293260, 674239873, 497729177, 729156788, 33167835, 884953832, 661820855, 665869004, 239850393, 140435545, 511227831, 431567753, 115036830, 21031318, 92689551, 401854679, 868075304, 607865421, 287007054, 43364980, 205775038, 61356617, 111228811, 926978241, 58831497, 492544468, 366658987, 365799551, 153050880, 382183033, 600308428, 18157871, 364693305, 496113940, 49845671, 411266837, 377797702, 597604271, 535404050, 229735231, 106028297, 100531097, 484752459, 435987596, 371304215, 650166609, 256272390, 445810950, 111118938, 139661350, 31939988, 277337272, 836171901, 953747335, 901439052, 232070140, 250554814, 436342568, 308897611, 201135726, 210960317, 24833005, 259320751, 286621060, 217038591, 155152785, 669330699, 148360884, 584880159, 946786521, 55894864, 21604034, 400376283, 129398373, 331945623, 519235283, 241450302, 577324031, 312342141, 590220984, 619516795, 145879806, 380804457, 848625520, 337754005, 170156422, 43042715, 11618221, 107140752, 210406912, 56883177, 333487264, 284816413, 355621325, 818246239, 105133802, 534795520, 86657690, 83413753, 502670603, 24532941, 493009656, 284710015, 132690453, 705403678, 108136507, 55899090, 31341836, 592561150, 483760003, 151262729, 210668137, 304647906, 785999730, 126308757, 33490349, 116887981, 49655527, 215530712, 449886527, 501003490, 78649317, 197941233, 276630880, 775780146, 439247086, 32819083, 167550587, 463266783, 694459398, 743289182, 296978435, 46480918, 277065624, 161264033, 43899089, 310944100, 67917382, 565998304, 732900339, 774111626, 856651515, 79083544, 338197024, 110970223, 4667989, 44917402, 40249413, 24376206, 617722218, 638529833, 356953603, 255117966, 252849229, 4838197, 80044066, 80044066, 85377923, 60621033, 67975266, 178660917, 617865878, 350478088, 178893350, 269937614, 264409882, 3294751, 259303950, 259303950, 49359719, 99127469, 6235452, 569542138, 563306686, 401906655, 351371490, 74457867, 114876471, 267500391, 467083950, 436542754, 482703345, 282822839, 159651929, 485341442, 71476177, 20761484, 246575005, 346745991, 164345212, 23470932, 344961371, 248406034, 355809006, 376766531, 495863321, 27083580, 237091065, 427747949, 333839044, 196657037, 446299922, 58508215, 117132039, 96818565, 744211919, 85491168, 483827276, 93803263, 91254873, 376268793, 645592172, 266028679, 435327512, 96697498, 92742559, 418143204, 59730577, 320896864, 258421666, 343962623, 284811056, 228056796, 9846966, 339021232, 339021232, 719363705, 449278959, 429553274, 369394950, 261928160, 408265731, 421698301, 111786313, 145900991, 70687102, 727893145, 359140087, 261265555, 100825573, 302545959, 31778343, 32633294, 4030266, 103302378, 99272112, 68584109, 329099325, 657446173, 877379150, 908077219, 141206117, 145050579, 857312289, 124956460, 425615861, 284747361, 26750431, 441625210, 265957683, 177220653, 294957752, 207238265, 711485819, 330929041, 273806273, 163944260, 306640816, 474859608, 99682362, 192739267, 378689684, 552158000, 207903258, 739769410, 281128439, 249877430, 62417764, 707102842, 279153263, 164238970, 438227896, 379517644, 433686600, 337174976, 244507985, 674674731, 133270263, 283296779, 400672134, 49437778, 416996678, 220479003, 473659860, 77577081, 186140984, 806901519, 599813604, 408072873, 19598466, 279513461, 326565159, 381652301, 131418587, 191554288, 607832358, 8488992, 279183233, 270694241, 447922538, 171812788, 462300134, 199711878, 56508455, 475872962, 116814524, 428675199, 627056154, 296139922, 248570158, 181187961, 27285129, 240215530, 246716452, 139832567, 203844500, 370528180, 589161476, 57974688, 35044554, 419565440, 174118606, 81931524, 274131351, 357248619, 674016893, 157041129, 882149287, 900700243, 589033414, 357420526, 76245008, 349137663, 283598, 82023043, 81739445, 68055960, 64714864, 319908870, 878946220, 565304273, 39221508, 592701752, 603117377, 16155, 21041105, 21024950, 13748734, 2638365, 49028079, 49028079, 90875223, 28188676, 305562741, 160394887, 31744623, 32952434, 160562265, 431895858, 474404653, 196475858, 286558453, 235972982, 102090730, 184751684, 636227949, 513513777, 298674687, 16135235, 35105441, 142952924, 135160733, 154089954, 251703960, 325780897, 137167658, 491043332, 37225274, 418071119, 361213277, 120051215, 45164394, 108614002, 308244763, 49045390, 383399837, 101486622, 190132722, 755373383, 62306607, 577285178, 442582577, 553738220, 233794448, 576226125, 450752520, 306661246, 61221649, 109775782, 407736749, 200617619, 304364456, 655482414, 235064353, 354118280, 47060065, 230509848, 472921849, 723127834, 500053310, 258522732, 341848014, 134257553, 719991355, 130790450, 14932415, 541872545, 495834481, 66188813, 162012981, 151782224, 305376510, 591107940, 547477418, 296510611, 470804016, 39987215, 61545292, 237173518, 178231564, 297163199, 152423822, 133124797, 327707813, 732536294, 681425948, 205408658, 83287990, 229427181, 362667400, 524421578, 525759899, 431241594, 246523302, 331397168, 397078841, 189145156, 15633630, 102265537, 426309172, 486469426, 9935152, 363487178, 353552026, 232351167, 369006781, 36944392, 332014647, 558915191, 347480325, 280487885, 89381864, 9960437, 47146591, 37186154, 367874742, 276796187, 193386601, 26447483, 246311100, 961668618, 841135690, 262569001, 90844425, 380934662, 28828085, 197261248, 584384752, 187254980, 137934222, 136227228, 46616546, 685588593, 519327195, 254335608, 749571038, 50273565, 304774847, 199767768, 471179329, 191372218, 167493524, 222920379, 236892862, 7675849, 100746818, 100746818, 546608133, 252201504, 277571898, 61509489, 157020355, 232623271, 245928586, 361940037, 283113647, 53190069, 467364970, 128121131, 569978500, 157093315, 79170793, 96787655, 526095169, 761885407, 34878356, 144933626, 300584134, 35389387, 402299971, 121684243, 392279551, 178201457, 352713896, 145562578, 787618897, 775897997, 148444652, 534810470, 173379032, 536374313, 399049298, 351127759, 870205388, 191205827, 123153546, 189397073, 252861949, 201633627, 226266686, 199588904, 525219063, 56034023, 349706482, 516398214, 108133799, 153647363, 228133658, 378844234, 657780369, 348188169, 104550517, 452818143, 862509422, 328982802, 145323537, 303657547, 303701478, 656715215, 729303179, 969828092, 192658475, 146544759, 772229026, 65213470, 362222289, 89795624, 283833931, 775780175, 349687346, 394774321, 13116721, 742335671, 219811339, 280693835, 482015914, 62571338, 452475751, 868625101, 635662248, 650381719, 590441315, 10303232, 508444294, 498141062, 559627244, 653827157, 705322931, 147775425, 184600752, 349280400, 160719087, 861656227, 538922594, 320152267, 239344800, 597624779, 367128067, 353391960, 359354574, 342808329, 335970723, 401125315, 507432146, 270367415, 680693514, 382663168, 90305514, 429450251, 27939558, 257914106, 119355117, 498466632, 69316040, 446201089, 418572242, 277846821, 270941701, 472112327, 258404943, 564800726, 329648288, 727301700, 401576382, 558605715, 778191113, 20246351, 30795856, 371242682, 253978366, 471100461, 262338540, 456267735, 453056121, 375077299, 526499570, 348570891, 302654115, 271459917, 128747188, 450488437, 320239346, 236902509, 253356206, 367105999, 19384555, 220964520, 412885973, 50177695, 235292378, 237318464, 397127232, 4161502, 88871585, 88871585, 497161045, 829548725, 850454284, 304355150, 43343991, 138981319, 113855816, 95168962, 152349849, 552524639, 755936968, 17573281, 290294441, 112498193, 62074258, 199964191, 215026202, 180346211, 359239083, 78825329, 449944006, 300374995, 43869767, 272714879, 813189199, 33132636, 475107588, 304303836, 287057520, 222645315, 400121935, 301205182, 457712847, 175041163, 75418474, 375051778, 487550727, 876333574, 851712372, 771009166, 597119911, 31779838, 220399706, 621383676, 537555957, 253110450, 548297230, 313959261, 250568873, 126757697, 466088293, 79439408, 5700285, 139713198, 139713198, 229299017, 210864393, 514827221, 685942977, 885370614, 857880297, 203657527, 528198144, 611046412, 713291980, 336593659, 569969050, 742319021, 689194119, 718579552, 551217691, 188050936, 299099145, 191260851, 317335728, 495531686, 79587907, 72110075, 87119528, 39792432, 274734528, 257373753, 733390569, 146601549, 384550797, 15056638, 370875670, 101925677, 207256593, 143041631, 109386048, 356828913, 323843116, 218975544, 187453467, 36965168, 642732419, 705876083, 162105009, 373105459, 448209379, 232974472, 352796456, 22909096, 259087474, 804477921, 408556849, 3428726, 121604017, 118175291, 504536086, 508768898, 160596824, 178784371, 272868724, 106807174, 728351146, 6252681, 245518441, 239265760, 28260982, 305387275, 22939516, 513441966, 329561544, 256140732, 121038471, 616149337, 500065580, 60240055, 234852447, 534429103, 484115426, 298634661, 599609882, 271651739, 118990179, 785093891, 94022868, 673940656, 294295621, 299340487, 11357187, 79030047, 307531123, 47220957, 481637017, 545617442, 233285487, 37452408, 214666146, 199071775, 618550168, 466066349, 472222284, 547826672, 61681354, 600988339, 783695872, 411351895, 141085590, 119706518, 239092713, 485728632, 480592082, 28840223, 430383647, 292033400, 347781540, 259443451, 346924461, 444314561, 16534089, 147923146, 519533232, 579333420, 702890591, 135916303, 169187096, 227245078, 25919696, 233512743, 376864052, 116596124, 316947380, 937037659, 920968024, 250504492, 22773459, 396081379, 175786978, 108231264, 344290839, 478304096, 363379940, 26880512, 436902481, 500965776, 510216004, 634332537, 219122463, 266459895, 571733882, 473717568, 391142863, 95350359, 411991664, 294109308, 157178890, 85969704, 198374947, 881440697, 221128530, 284305364, 4210113, 34233530, 30023417, 16431315, 251111668, 463238888, 149576169, 343649502, 360066106, 138229964, 267204899, 143353647, 292474972, 720377856, 76269851, 792833238, 17076454, 6509838, 67984197, 61474359, 413124146, 173235030, 304826987, 914660560, 97473146, 41300888, 50182363, 702364997, 15003583, 367935318, 82844389, 162413997, 167303294, 372430322, 434665843, 352201809, 159257802, 260688719, 222642653, 2174964, 538617371, 538617371, 434795348, 386867870, 347130464, 11781132, 296278361, 605508450, 640568108, 329689872, 37182727, 144356704, 144639166, 48679134, 288308529, 166218012, 646008387, 543494648, 754614653, 26568297, 523609967, 37849052, 396380006, 822013228, 953442752, 13323721, 442036629, 179057889, 603671586, 888574796, 249837845, 63638037, 128509688, 82262908, 368399022, 271649153, 101902107, 219465080, 606111910, 186841076, 333327397, 482016706, 842088212, 348399414, 521485854, 891465680, 713056585, 25009072, 53385712, 275206086, 399753399, 916639415, 64020963, 870418709, 138576805, 149845414, 334961629, 111775409, 127684244, 526837312, 336910566, 373464328, 196771782, 3424230, 594233717, 590809487, 473177759, 537114477, 19047956, 844289612, 41510664, 594637329, 38171305, 137739507, 237769973, 355545998, 113053557, 288326197, 31757731, 694136282, 792236467, 181032102, 192100508, 321820978, 87814985, 29104936, 97566402, 109551757, 463619760, 281374706, 568491440, 675379657, 684741994, 845532962, 341190685, 133509120, 201605902, 27632960, 75392084, 690361448, 328786144, 387256112, 240372533, 107932240, 98775462, 486570326, 544349064, 333161505, 628393811, 598696781, 781498622, 261006605, 390767053, 454471168, 287018570, 571361966, 602493678, 219734146, 171173893, 353186132, 312964036, 130410056, 390637198, 132045709, 501445804, 538931615, 911825027, 9196579, 746677337, 737480758, 688876965, 86697228, 246521847, 199057514, 618372437, 51163088, 629040936, 445172925, 230771262, 315113095, 55677692, 215538302, 142994045, 194562075, 146548770, 46149259, 32770840, 152607688, 964523956, 370410368, 165630782, 395828624, 50398015, 186221198, 197790772, 498429045, 638595491, 267562107, 501811009, 94373600, 98062596, 59099207, 714304913, 537265549, 321203702, 354172641, 10456222, 467139504, 467139504, 739897380, 462694998, 87701438, 257528936, 397909046, 120126567, 399578428, 754835025, 109277180, 5213274, 7198647, 498618587, 1985373, 493405313, 491419940, 175489004, 119934576, 121154850, 157723729, 487768076, 453755657, 266492191, 476592165, 277902088, 12972177, 253305172, 398755849, 915564954, 590341063, 583335547, 817379149, 426568421, 304733532, 813327591, 971910365, 753741555, 404564424, 61983532, 148146306, 254894057, 558832814, 689895555, 217384560, 291346408, 102734, 539781764, 539679030, 313011072, 219561311, 541739871, 779987645, 24453773, 574637152, 330533352, 847252537, 115603038, 293140261, 367995854, 291770460, 350754402, 944360451, 490187252, 225900995, 414353996, 69224433, 390922557, 562268361, 141142454, 630848307, 665281751, 311128006, 285267788, 268828842, 171611648, 142485394, 11084726, 380079817, 368995091, 79119354, 656908455, 623594400, 92517518, 778305667, 9572035, 694840640, 685268605, 40564030, 143393889, 434975901, 289214923, 153513599, 553862752, 601150360, 78554508, 159793175, 881744735, 268410579, 427448999, 719071871, 440775137, 27064001, 14405470, 162035001, 5035881, 54883063, 54883063, 102415157, 560916240, 152637221, 479315348, 350566251, 84322166, 281041218, 350850870, 288281455, 73329179, 252604984, 795190087, 59215581, 39621390, 75853958, 84777617, 228955754, 504838816, 642050759, 542100349, 304645784, 98789843, 69827170, 268095277, 436715117, 402321416, 296269948, 314912619, 64794293, 283662493, 121285359, 494337910, 189577201, 361682157, 437580324, 475886244, 56026, 8963310, 49098493, 8963310, 49098493, 49098493, 346609194, 166710677, 113975553, 106498114, 290596240, 132706058, 167088842, 77787680, 401037099, 264639455, 430093738, 442485582, 298617196, 49614725, 312708241, 309109636, 256217173, 235337710, 220876017, 509311824, 202541989, 382937525, 36692744, 217784248, 203266939, 594090004, 305862282, 69475388, 256288239, 210971780, 189849073, 877041921, 32145328, 529992999, 268646053, 74283940, 657365911, 673995471, 755443613, 760370348, 30544153, 109036826, 975451957, 405723537, 232813658, 91993145, 194786182, 426563524, 730534010, 836035970, 731650544, 536271532, 106832334, 198531715, 320899858, 265605638, 634890091, 320210657, 557162375, 809941094, 489172368, 137065428, 160784399, 201253060, 346167689, 151036695, 565412854, 283369926, 259277458, 99533117, 123902939, 6099333, 148834665, 148834665, 207549567, 78987368, 133510952, 106848106, 254603671, 990198975, 712876828, 180268107, 418263144, 184779487, 80016216, 50024781, 316820355, 475140996, 47245958, 338468180, 495750467, 190788727, 33747661, 305216560, 244104281, 809137862, 779836053, 185952194, 610233521, 389307060, 320041160, 80463119, 8165328, 536057419, 536057419, 183507659, 458425073, 1518384, 454001061, 452482677, 491240445, 246267907, 233428803, 452099729, 325732398, 363735213, 319359521, 185805956, 372385598, 223186792, 93178805, 248293851, 538746134, 688860235, 453793521, 308851232, 723195651, 532896979, 593358905, 569043002, 127051501, 119713665, 520854737, 170261663, 140959693, 205410338, 60959239, 9799761, 46657129, 46657129, 504077927, 145264372, 42454405, 355627421, 225575554, 942334023, 694286458, 456473416, 561499919, 44263003, 514630847, 666098146, 860100677, 816201144, 51058994, 551115537, 169846676, 403216236, 345688124, 425477584, 361088318, 350124438, 462083045, 170677268, 408315904, 550970042, 676268095, 40186910, 410587200, 127236203, 289833167, 51577666, 416571945, 29438917, 13404472, 88038624, 450870312, 97595036, 55597772, 344375855, 159308569, 458747317, 104715030, 238983507, 163396293, 222015268, 699794436, 912046406, 388661804, 187940951, 268176793, 305915968, 241283360, 419708135, 113312245, 281478762, 180878085, 113925048, 430729406, 121266035, 251790966, 156101207, 212832353, 61433877, 30562342, 679885661, 228772920, 508264896, 292148983, 146423252, 28984541, 60631399, 250824452, 82945320, 620941393, 16074519, 281642639, 57881836, 224095595, 399660521, 183771891, 215411472, 206864083, 280335864, 375069321, 82942735, 291351105, 784936190, 297118396, 84578025, 190794828, 106605377, 468677777, 222041358, 426909685, 172098284, 485294967, 458544221, 264156470, 512056630, 256886000, 158713292, 528658832, 1128361, 164038874, 164038874, 263164949, 244960073, 837404252, 5966331, 477178861, 471212530, 72844748, 133228753, 113924703, 452976883, 595345359, 489679525, 264285195, 654137867, 202687349, 679073137, 28702295, 438173996, 177243284, 653316347, 15942992, 134761861, 371960000, 156703589, 729828864, 215804991, 656992416, 7663873, 912985483, 905321610, 63842186, 392252943, 17009372, 130050644, 20609346, 40187725, 539653648, 845530338, 820534730, 447235881, 156112220, 195898620, 414976928, 380664937, 428863786, 77950774, 171311694, 378518912, 866296769, 85918673, 750077655, 467223735, 87061426, 460962268, 49028755, 501554920, 228061006, 122418806, 444383412, 213611510, 300526352, 16363027, 903219973, 722452937, 746775057, 216618470, 5163066, 629210993, 624047927, 817432948, 658973553, 314772472, 518206439, 305247791, 98138743, 156529053, 105316802, 144751879, 499810664, 138559553, 333864112, 122364862, 148537139, 6338132, 419848958, 413510826, 173082289, 709041921, 65171806, 697966130, 217030235, 80044891, 544837938, 574199440, 186930584, 395542232, 325801256, 576132544, 747234712, 52395361, 77087407, 281716021, 234546431, 303068096, 65344572, 701884018, 462540649, 418893324, 134937953, 104334698, 106551608, 338733821, 678664760, 589802611, 348874035, 320551227, 296347201, 9982171, 167099067, 167099067, 389098261, 461228659, 236609979, 507694175, 501659869, 415612371, 401300972, 321055755, 241089055, 154641, 309598596, 309598596, 481259437, 270644844, 170739984, 562595716, 675128523, 693585084, 294498970, 180221696, 47025138, 122023515, 2002710, 193775158, 193775158, 701854589, 189258382, 548351853, 689813497, 742942385, 682808504, 384103075, 184938767, 108913141, 337022292, 46663062, 31055252, 215729579, 716594179, 301978748, 432203051, 145937624, 698866782, 965849541, 298178682, 629699477, 32373717, 228973565, 296150324, 436054687, 273371875, 85518143, 331191008, 876417884, 27070252, 435291541, 480742511, 680073923, 573813875, 371080344, 193793989, 607622327, 621373206, 239603161, 501065647, 24036181, 376694896, 144263252, 595879287, 291176588, 45113102, 416747014, 160011079, 481062137, 154119512, 272918720, 403599632, 468261706, 210607921, 226664431, 625017351, 422636748, 403394312, 259492749, 269818931, 75912738, 771737301, 788533210, 524228593, 336242625, 913761130, 160459397, 323280244, 243791463, 232328814, 793211962, 503354609, 501224604, 9522172, 34874120, 25351948, 193707494, 39633101, 387177205, 103204859, 145941743, 349048258, 242993606, 794433793, 87218630, 947589118, 689120299, 481641978, 15395053, 708006277, 383794543, 328964667, 529900915, 320036688, 318536008, 347157140, 623965289, 44091566, 492260497, 28199884, 252983344, 132191336, 532196304, 154079291, 293350135, 339541738, 185532394, 167045319, 381985144, 267654047, 824157446, 140349382, 55458008, 735989702, 117153385, 704859750, 299902715, 21460733, 297041024, 559162486, 37267013, 712246382, 793586927, 82635792, 557714927, 298212459, 139525949, 226453447, 106716081, 256687039, 43775754, 198353494, 206696545, 246620635, 515240988, 801599708, 295460542, 263366273, 395277842, 86886084, 508156021, 112522280, 373076923, 220573485, 236501680, 307131065, 157104284, 83699343, 511833058, 592040370, 258069662, 21810847, 131828436, 433085196, 322849183, 143674925, 624979181, 161827359, 232122357, 161089731, 336773285, 595668522, 543524857, 97705893, 751884340, 336082238, 367391807, 376879125, 143149231, 162071486, 699223226, 849520366, 328382676, 216045562, 596594121, 97378407, 424888968, 451471797, 16180108, 891760227, 23526272, 55307485, 901701107, 665901036, 104501590, 157814974, 780706901, 683579127, 826107998, 81835295, 754958658, 262971393, 361212875, 777163409, 555842717, 468649144, 363755589, 45220964, 44858731, 254349320, 881101276, 221862085, 253623262, 51258710, 243974599, 62266520, 177988113, 163004463, 337501809, 647546741, 347316907, 60489128, 88565339, 371171897, 132904679, 205177384, 152425676, 234261755, 655888470, 591646186, 355927757, 357941263, 241616530, 116067892, 245314316, 679304727, 437421228, 153955025, 516325947, 437716346, 211162931, 103527026, 470631316, 369971348, 711683487, 651045044, 519440375, 738095743, 578798508, 344368522, 422601914, 115699506, 623948586, 397770506, 317927179, 180754200, 541260619, 166751710, 485337674, 291247184, 315403042, 114842082, 119886831, 210341608, 61916197, 432923212, 482642320, 788782497, 246226465, 481234846, 220694759, 107275084, 124322220, 822423558, 39104807, 517494089, 352411651, 492741643, 274536748, 438421057, 240898983, 128802117, 81776932, 302354221, 365681743, 462432292, 812761647, 880411826, 593854073, 337316029, 10617159, 615640706, 615640706, 672615231, 166462799, 64009104, 21722514, 27548235, 363976120, 21156247, 413085408, 250216271, 54179905, 612910979, 846420691, 428476564, 197023159, 312228681, 168266954, 87611974, 32754773, 801907911, 868592676, 799381871, 773766013, 287627764, 194053627, 188866291, 1783078, 173781246, 171998168, 199974073, 603411654, 469373286, 60376908, 266099804, 351332684, 186300000, 741603608, 370554351, 241163634, 227846124, 35706717, 310771595, 96771395, 113838599, 498100163, 714350022, 484591348, 316963344, 144772751, 187057852, 431936928, 745928454, 912617985, 773067384, 136620170, 394841131, 232839665, 826818296, 582315568, 435649254, 383451763, 231235228, 560784016, 392786994, 627756107, 21649757, 804136703, 511750792, 21498519, 270046151, 184074461, 80116144, 424592809, 645402042, 529118715, 78221651, 116321814, 150063697, 502540853, 557970519, 277339867, 62091383, 180424032, 254472918, 200607206, 616142288, 973009927, 249159862, 133721340, 398180292, 452211506, 714339195, 585009027, 31853349, 684061362, 225038319, 599343654, 528988995, 188715484, 173361645, 579175413, 5553864, 171483837, 171483837, 705628017, 464179558, 53266518, 696709804, 83631594, 724812109, 820022049, 675313550, 235351093, 89752765, 485173534, 549323544, 2112990, 664992513, 664992513, 199649224, 731194813, 149538586, 180558304, 286133288, 119992452, 381347205, 473180717, 142896547, 47432205, 529791776, 16334289, 176388964, 521816887, 60473398, 714702844, 475172781, 227617935, 285003225, 448356839, 701316913, 797636274, 484795203, 303070790, 302686735, 168709876, 212745902, 656732814, 835156168, 518190751, 280027354, 486766108, 202696422, 61590149, 591941304, 608057975, 59245839, 781514473, 731559199, 223802664, 276896415, 523501900, 904589295, 554633515, 93278686, 510704703, 628817038, 93166898, 256923932, 79575983, 305666811, 323860692, 431826132, 261540914, 179848042, 306042315, 40198183, 331051859, 532365384, 275768933, 253226746, 301216779, 420831079, 550507853, 48572640, 5667707, 307753312, 307753312, 822517684, 186147645, 752594152, 684716261, 27468517, 467706882, 148797439, 155065973, 122167735, 637141947, 149726277, 515527481, 302205160, 87050230, 591750303, 58745653, 412036558, 189056361, 355761647, 34136910, 659480713, 169707555, 321141053, 450861664, 589925669, 417106331, 10141747, 152359724, 142217977, 372764447, 196123115, 317740437, 352495738, 185204257, 16698700, 199984428, 25277444, 526321793, 299307772, 112803533, 127149027, 11155908, 250972781, 355170970, 99765803, 30428000, 190285828, 61439126, 258254850, 276925753, 163358114, 30209598, 598840742, 581776608, 246187632, 239827031, 74288203, 756470553, 311852374, 94717101, 541349482, 815359948, 534622145, 77609541, 388386574, 68171857, 256618807, 185865067, 410165353, 95389248, 229550436, 598327585, 287354109, 532342383, 308627649, 83112600, 421303377, 793855596, 69135015, 513900389, 288260953, 2550543, 94880289, 94880289, 156737680, 190370017, 191257364, 142277934, 345850766, 40349699, 432782679, 260313682, 333132604, 76723232, 229659693, 738071097, 868871221, 609834333, 142925619, 554926630, 431746560, 457753892, 67675733, 167369998, 57386970, 95977809, 142159186, 108556710, 599458291, 744994959, 706235822, 272421883, 196380111, 66255141, 102351001, 208859511, 563394646, 258944401, 171162112, 713845254, 674409390, 206486437, 530506384, 284398567, 615530066, 491160439, 50236052, 459688746, 606050407, 211273816, 397108981, 124753776, 298762392, 113584472, 161270059, 350243953, 123780805, 134061009, 337556130, 383160722, 242611427, 310082535, 83786136, 514072871, 21100312, 135119045, 289107429, 279947380, 270023361, 89636337, 70196655, 589905820, 464408000, 366164890, 329644092, 118990645, 474175497, 148941709, 122744160, 580429186, 671882676, 93307145, 558783787, 24903767, 604834548, 688501296, 106347159, 227906040, 120871452, 301504541, 134353288, 124550041, 328357451, 145467078, 32373362, 765523969, 22112434, 71105612, 256353659, 325603136, 630502338, 779691208, 964466644, 351149934, 112115947, 56083293, 755282737, 237138326, 71160182, 625173320, 758581466, 845051798, 886966611, 57528414, 802295495, 580271708, 270672494, 17733056, 930705046, 256315349, 394910060, 531879068, 435998266, 6757773, 12726068, 5968295, 492611414, 486643119, 604705268, 108159381, 107902370, 364455212, 550963661, 21743698, 74492847, 710058667, 599976459, 296944630, 299724128, 492847417, 51134448, 487145793, 559077311, 838266122, 561864170, 225041279, 407735675, 127658052, 128207246, 269776629, 63794328, 384265394, 529841133, 138903184, 212630056, 403074137, 336261637, 57624936, 717795771, 377316647, 63521433, 53401095, 395309482, 376058748, 381760296, 186814569, 93656853, 87430225, 425403282, 179439849, 73734395, 499587575, 470337834, 612882499, 391729700, 331567165, 306195140, 322201034, 802816357, 715859238, 517367564, 129368071, 799063058, 470830109, 56485782, 197894429, 207888715, 101548697, 687968405, 102536871, 95703829, 285193820, 145775767, 182209782, 327156257, 160981122, 339711510, 171998223, 261745392, 250465737, 11852574, 27971283, 619039908, 860090160, 517044478, 149951819, 165125148, 450250847, 76853564, 360644616, 324758874, 333775678, 366557623, 525110258, 413329271, 425763172, 888725559, 583610928, 182718015, 136575278, 794373838, 309160890, 289963906, 172923661, 393720785, 77208889, 219384861, 24160071, 274662463, 431272390, 145869605, 602193792, 170935375, 684179428, 551926838, 411755529, 266135998, 494610799, 265576627, 139766331, 149288796, 809348321, 216345492, 295575223, 102073717, 8367809, 325785766, 325785766, 154381436, 124934988, 364983929, 225877943, 354387479, 210193561, 215621238, 88497144, 501029280, 326056537, 913609140, 46125713, 700011524, 631625783, 225530376, 693924103, 537796539, 41779724, 392730008, 529988900, 257146247, 844260712, 461902480, 378072742, 760206764, 65655934, 665879703, 631622325, 732431672, 416748687, 62284830, 297426627, 116704708, 56267264, 311240426, 201341763, 70798377, 420060499, 13766608, 176253578, 327594494, 180065362, 50125352, 60677666, 485323274, 149422477, 277685130, 187159564, 689495354, 721311997, 572708843, 200133150, 125270651, 275182037, 168889293, 503028262, 232629224, 341470040, 327545174, 87691281, 216418540, 284477179, 155672, 119751135, 119595463, 435839677, 82114265, 246061930, 280395324, 292309929, 272447563, 339810856, 129592274, 541060372, 19736264, 110009225, 662215311, 500540711, 99525700, 803043913, 449685184, 395549343, 670919291, 411007401, 172178641, 169575145, 227800988, 109352040, 173542037, 318377356, 595948467, 874284903, 231380076, 51053536, 644838791, 671439655, 116575510, 244417699, 5569674, 534965313, 534965313, 510206920, 558746134, 160990471, 439731674, 408853180, 20891357, 341915897, 529588391, 494114323, 541786185, 19476612, 152416210, 214520437, 125403936, 323675812, 607158484, 680159134, 462744726, 203421696, 173641242, 311846369, 285671051, 656936469, 241394032, 505521881, 63355211, 272528792, 599779061, 791405019, 43745896, 432885510, 18196777, 140691299, 604551713, 425924294, 227298635, 199405726, 96122970, 247811263, 7221582, 525586912, 518365330, 812923980, 691002583, 572148930, 15586457, 679230132, 664599774, 715782269, 743067905, 92703018, 658555888, 789833019, 286690453, 224705202, 207843083, 68217076, 688604806, 654075334, 67108832, 209943866, 40445337, 115282068, 339393720, 329216399, 276346624, 473232283, 601874792, 262096341, 137360164, 393117473, 152719449, 455712975, 353912451, 358312382, 176955652, 164256378, 666221670, 278956609, 334585776, 320029449, 480834037, 898620941, 492784336, 334897556, 221817504, 106854772, 110247977, 242061841, 412716806, 621363214, 132000437, 53241336, 154946934, 247161149, 559708852, 511337450, 211378175, 145282963, 809316029, 412333077, 222447255, 22126869, 429458721, 390179268, 44180449, 54364033, 141906944, 585090471, 525731034, 10415642, 511605384, 501189742, 521932757, 581556094, 588654107, 372436072, 409802189, 816397423, 447661799, 334580426, 471838992, 154365554, 12915440, 285376781, 706400885, 318454125, 316585600, 614321880, 525816424, 360056516, 415669244, 227036587, 326059459, 277947311, 146629688, 441000250, 704526967, 109868246, 458011783, 424943694, 30635745, 577616465, 700823860, 722495675, 132885665, 648395839, 706529699, 234435284, 88000008, 439306700, 55128594, 476749047, 587487936, 427292317, 120385705, 259526793, 64961672, 359035993, 733129023, 83009628, 92783244, 721268070, 702813148, 823026169, 268437087, 82155590, 21974138, 266618247, 445584067, 13835046, 206340102, 378376869, 407808755, 766258107, 318745521, 371585372, 29459744, 63639200, 631495345, 145047132, 510211092, 734576692, 408842757, 486014698, 537928447, 630489319, 87503925, 852161363, 782814678, 621593530, 704002732, 193211426, 470567968, 518235846, 257344756, 242511356, 387764407, 319586710, 852754702, 95158153, 866039163, 248517068, 318184700, 576300363, 459976617, 809675039, 951450634, 199036577, 620565294, 768886283, 641143105, 461502688, 223872022, 210731963, 86311271, 273177894, 564987001, 63622613, 95335800, 373920780, 688665797, 955424179, 340639153, 221940771, 421846029, 605123343, 498927326, 530423894, 226682158, 644898002, 717466156, 747136703, 337073002, 85728832, 25780254, 379930319, 231063501, 210927285, 514542328, 243995092, 308775708, 747480153, 259945666, 297768820, 261652290, 154268983, 530217042, 327952037, 497351456, 404182721, 82243851, 553201306, 469101137, 385481726, 35575467, 320743856, 101180651, 457274858, 14938712, 708790847, 371875052, 227671487, 113416368, 43310764, 106094086, 201134037, 585443015, 806416002, 144344835, 774133310, 414814199, 294266689, 1770696, 100128492, 100128492, 61056824, 228151927, 244079202, 80201934, 73435190, 192139632, 373329015, 824858494, 516357440, 475622251, 796048076, 539583249, 366369887, 551203395, 126152422, 181095126, 733370597, 641181927, 152230753, 683224115, 39793157, 274455671, 332167382, 612329838, 256777430, 545041324, 421251521, 403718578, 255273767, 569743212, 742708843, 463249292, 377362174, 463993343, 252268288, 375596600, 317873876, 338493248, 114009114, 356688961, 146020967, 351939776, 349969132, 150149948, 12904200, 126008164, 330645927, 715324911, 546004253, 58167754, 25307377, 94477548, 277393109, 374656310, 419371658, 83669708, 168214250, 293261589, 466431083, 177716817, 672109970, 42662255, 672310312, 103646535, 596223324, 107933005, 790954179, 859314058, 38297801, 579599590, 277818224, 445861562, 480342343, 525603356, 378008902, 186809206, 208060073, 600989261, 253644230, 460373114, 133274322, 199714671, 332892632, 930957526, 820373632, 646714769, 157290118, 324879058, 239101599, 401600770, 276963680, 254423286, 360650627, 571242517, 7063482, 94764073, 87700591, 366985736, 396537762, 647047380, 105211171, 152330448, 364169403, 853967406, 463696748, 512410528, 248156661, 639578544, 48873301, 160840372, 40252904, 395687448, 12752225, 312578263, 194278638, 171503423, 567117136, 288587435, 499790623, 79342001, 665404812, 582583361, 333868002, 334705248, 57584909, 276667284, 244893932, 166098693, 256958787, 29270246, 432020272, 661266121, 157812118, 553030403, 457083051, 566700281, 234519461, 461637655, 316955650, 291963925, 593490073, 321541240, 36449639, 213850108, 63020212, 717187421, 552019461, 3516023, 301125190, 297609167, 193857966, 6093336, 329891017, 323797681, 237016815, 731773138, 220352033, 194981303, 26062541, 69682480, 761913046, 390205144, 109832319, 272953952, 227463835, 400503086, 52840846, 48535002, 506097003, 112873335, 151365490, 522049754, 837440910, 19920839, 714940383, 680586208, 96117565, 307267060, 139803214, 833118971, 62557262, 266930301, 213624962, 359267320, 203976089, 684984896, 379868143, 200154872, 69286180, 286311597, 431991395, 138564702, 165023643, 178365367, 39260592, 732487500, 76050845, 191957868, 104625448, 647952165, 564248886, 37379040, 139043752, 233715303, 379036495, 301333740, 184187598, 241345448, 88320363, 72682348, 164224639, 29278760, 616953241, 289413669, 252802874, 57517279, 635141793, 111267282, 580099604, 410089664, 550893664, 51142759, 216384298, 244701426, 254649293, 796210172, 574798085, 81477190, 309146992, 242508132, 694639787, 714584800, 631076853, 640805060, 742206844, 131098559, 68231198, 166298052, 577606176, 869602685, 363497717, 407908022, 282079, 292857459, 292857459, 11318596, 358580022, 662389244, 599457027, 275946309, 661919876, 261695532, 205476137, 449181076, 490548194, 613205156, 169584975, 412732921, 58710431, 533301609, 435726481, 216705090, 90790211, 762449035, 633916980, 175700923, 286202090, 518498719, 701800282, 50865360, 867624115, 888441078, 42601721, 545368516, 96642145, 72893732, 135742229, 494712325, 61763703, 342795080, 192462971, 600222833, 417742555, 47603991, 89099735, 165250775, 12405559, 142215156, 10820747, 561429786, 550609039, 565010454, 190394704, 160274056, 428780457, 298619166, 554503198, 267827720, 212562742, 255146988, 111209690, 526850517, 467202408, 244433526, 402805816, 405769659, 76156891, 2980114, 273021765, 270041651, 6944573, 776801684, 769857111, 723242970, 328990047, 14633567, 460160017, 3454201, 518678499, 518678499, 2240305, 98863766, 98863766, 624787143, 481496315, 262548359, 183049018, 221294349, 299324255, 287044918, 241652808, 81208846, 624990391, 673790874, 613256375, 56320963, 72505561, 492493384, 709770495, 680582999, 712393233, 269482824, 329946626, 145245092, 290337562, 261503387, 817721398, 568292223, 477827810, 734028772, 6729610, 684613692, 677884082, 504040268, 248227608, 100141633, 172197665, 137697130, 276167807, 329988907, 284286761, 34130257, 566508001, 865794297, 699673137, 53339638, 155442327, 317762155, 140555794, 58649429, 665875022, 651918851, 578122012, 162034695, 70847039, 650265621, 323684744, 498583906, 475050289, 346051445, 98210403, 599097232, 430801119, 521393143, 50578784, 601235610, 23398004, 224351551, 183514938, 534420557, 148225123, 92812041, 152554726, 45527337, 115602431, 293658566, 111283290, 177567545, 101314719, 333967559, 140533556, 38146423, 154704422, 662001731, 255313467, 127474558, 37002494, 415560592, 240604073, 113299966, 967469369, 472099884, 11307549, 467272976, 29709787, 892742011, 731945325, 18339585, 679852694, 215535153, 63966732, 21460702, 15460778, 90737453, 248842203, 854534543, 83725451, 854026381, 322899191, 60018935, 408473757, 347267781, 313462410, 536431104, 694361270, 659562465, 113564059, 126858871, 253768455, 140715595, 26212999, 372774932, 218321252, 702108318, 139383128, 267908962, 2607859, 413440987, 410833128, 538679182, 263720627, 320615255, 374229763, 612817212, 815306781, 164416149, 197811537, 595175146, 170919623, 94263823, 211380712, 782182496, 17000671, 554828573, 199498941, 463074156, 371415186, 510498473, 203979611, 290126132, 174339866, 41632139, 257896483, 208729628, 162531589, 478664148, 279754287, 536372356, 650530770, 251437988, 156227246, 222491384, 410358309, 692443789, 128405434, 574739077, 92525369, 163600738, 167608598, 29007553, 429016385, 369686574, 584889732, 595773447, 5554263, 326941750, 321387487, 388317726, 240054188, 385136412, 343891723, 366788044, 300489663, 279802879, 622898111, 294449162, 224369742, 378497600, 61346496, 116335109, 136793863, 41921032, 254718756, 97390993, 401765106, 231128529, 760100516, 820120234, 273249941, 63117396, 566729312, 626248524, 694399611, 553394703, 121701278, 129392961, 83763848, 414591942, 720217055, 391523742, 318738171, 109935952, 37459426, 296221638, 38169068, 453741400, 7248062, 763182097, 755934035, 150121504, 604393978, 445663664, 213030377, 358241411, 210396489, 277982723, 966958542, 25198789, 718011944, 522694599, 185813775, 770726620, 432253904, 318915080, 733628278, 34178947, 124059261, 688090581, 744701524, 437414980, 235937094, 95046409, 626915986, 164340333, 82538076, 650299659, 280608659, 319259927, 807184108, 1713025, 553135800, 551422775, 296023985, 392148340, 677362395, 848923799, 947578489, 915231299, 661040258, 518612780, 206176075, 265163280, 19243132, 297184204, 54041566, 538322379, 393353962, 280135170, 172079661, 773817137, 507218978, 308570159, 140817947, 493114472, 54687316, 219563741, 260913137, 422192587, 413114255, 684064415, 816502482, 855705132, 402119042, 162627433, 109736809, 237249762, 430566854, 169468712, 255551652, 346123856, 26864867, 541469751, 317152192, 410041246, 479815267, 226101899, 224200478, 423370881, 489337432, 329457379, 18466119, 48400272, 407044735, 226130117, 363310589, 68196145, 224394141, 336378084, 5299115, 244368830, 239069715, 554857810, 216115153, 286862461, 456269901, 656128057, 658696694, 569741800, 413160362, 337153352, 86990652, 547057306, 152413236, 355190246, 319958425, 177305261, 197826205, 54775218, 670441704, 152277167, 138181674, 766468422, 14559735, 422188316, 127473198, 384904849, 588674519, 785680170, 639211198, 205133561, 110540487, 410959839, 478079681, 138575145, 130727929, 599689080, 338383614, 537501256, 132176426, 759043195, 512553242, 96063449, 124071555, 112617839, 609648747, 669484928, 18744786, 39026593, 709604100, 586163014, 185504214, 73294568, 248957300, 778218492, 770589260, 654798789, 549746669, 58368514, 466134710, 440835892, 226136018, 679231201, 51513005, 113020414, 567555215, 725191131, 452870826, 381003151, 445022562, 387588528, 162984427, 428148041, 585051592, 767834238, 215627009, 76980865, 321813748, 162665333, 18572323, 261847766, 428733268, 610354580, 758628058, 232915141, 268855424, 481239146, 250151307, 183004827, 92295170, 131436954, 630245409, 95470027, 27788659, 668664293, 285238121, 373973712, 540167189, 545185894, 813216673, 788830023, 182940343, 185634048, 250937223, 713545190, 263906690, 299457852, 467023548, 16098937, 565514462, 28342409, 62056836, 2875445, 229387612, 226512167, 894863782, 448438432, 318864935, 10311006, 114805173, 114805173, 911127691, 275347225, 160274075, 428005969, 952974190, 251737628, 138975714, 60445004, 771782482, 11658357, 787854941, 678382413, 145601711, 670022536, 928828728, 389683874, 362616426, 445755379, 249570787, 21573279, 322624993, 1773198, 82984576, 81211378, 547047217, 499565483, 355428528, 845658680, 827590189, 18992591, 501818603, 127645070, 523547223, 426015632, 44223194, 424150020, 386694386, 30688103, 272779066, 155030491, 344371053, 218708335, 133608818, 573124438, 183633442, 492553553, 503304693, 397886277, 10810569, 95084147, 84273578, 737612464, 218030964, 209786335, 431880590, 30260710, 21450550, 894283572, 161087139, 675697483, 729819949, 621205574, 90458501, 367937750, 448811171, 134759873, 386955138, 72056150, 11390797, 123935556, 716185118, 410037961, 229096221, 295731977, 947071505, 724482029, 41896825, 171291726, 337989921, 847010573, 469091042, 394377060, 6356805, 112339179, 112339179, 182082237, 88788628, 452728959, 343854006, 755774378, 708516557, 816142918, 393138092, 208347327, 98411399, 447405801, 200330203, 339767207, 93481499, 62717995, 685217203, 295258418, 539702389, 496379321, 497499560, 804194015, 619077245, 458930657, 350108723, 27902372, 173327477, 392579770, 347476449, 274216148, 186770149, 226579198, 109628006, 124615781, 11245029, 94925803, 446235732, 270498722, 703218716, 35434568, 192804028, 291035994, 222621588, 290344972, 272225365, 417817940, 839505517, 10568188, 86257304, 86257304, 110672188, 823519122, 282837979, 470016088, 560314226, 718078669, 283333032, 337188804, 460884091, 632683451, 238669389, 15438461, 359015942, 125365385, 632805988, 560753788, 60489741, 278858625, 394179803, 580045463, 424370405, 64099004, 181615533, 59902199, 84851030, 590629954, 136387700, 541486831, 21296539, 567931819, 454946008, 300908779, 386386462, 299054500, 351095065, 652507428, 244342580, 258746815, 251669427, 266039794, 214539369, 373745378, 98919231, 405562024, 446298786, 616940075, 80221607, 625364780, 232156132, 27133537, 346212401, 520004650, 49727994, 373965133, 145516151, 54282952, 617439718, 379357969, 537207863, 595945428, 168609740, 4319858, 227044071, 227044071, 428339242, 924178701, 222086559, 157697681, 342925822, 81719390, 747385150, 518233641, 343593342, 17635224, 843983385, 246340997, 178433178, 279277690, 374690427, 339345948, 93069804, 71955645, 894383064, 577281095, 213054492, 382013794, 732715938, 629194760, 616643037, 244512666, 204930887, 264985190, 170158429, 216058566, 88307552, 262244580, 253918115, 380374335, 262082219, 476760390, 543534207, 617908115, 535102720, 322194163, 442237410, 197849616, 283312158, 295443833, 258617739, 84447186, 783634994, 181275725, 106587868, 132382696, 184563684, 374131526, 26764563, 517257171, 657295786, 2759454, 239929563, 239929563, 82284805, 669942263, 559914428, 317581998, 7185912, 474887823, 474887823, 752023680, 498952317, 261743202, 135367486, 152732534, 242178751, 279279753, 295818958, 118806614, 376353975, 368809550, 404680929, 649436052, 76700403, 700007490, 109366984, 874104084, 867435005, 213052786, 206004360, 438696567, 766629311, 86054830, 384993893, 386297816, 144921661, 167595005, 853000988, 21018967, 479147230, 279869437, 2846011, 340098934, 337252923, 457944313, 556975004, 533729477, 157293932, 792218743, 341931561, 596978034, 467428553, 19295181, 458911617, 642782731, 212794406, 332820195, 146167252, 289419954, 703564680, 433982035, 271077562, 636459167, 266701959, 563404542, 309155207, 574879908, 753612361, 432821623, 102518618, 517866178, 328195114, 117129198, 78705394, 676196995, 897969128, 718647468, 305348525, 340674935, 542301944, 579807334, 34989253, 636875626, 438762351, 294174432, 51171469, 167244256, 543028722, 898027815, 752156132, 191890938, 503591319, 133961606, 767990491, 102338999, 477667764, 136625862, 292003715, 377738375, 376152915, 432378151, 608418273, 203620412, 578367123, 685271917, 291278843, 372498641, 722385747, 792323646, 388799309, 449773560, 28789794, 572006993, 666505247, 404682091, 207525588, 155414731, 490967111, 103844431, 48702483, 45333918, 312766201, 907353822, 812661007, 454706781, 256183456, 672517888, 392919888, 320249123, 737595951, 267613448, 322689539, 509549678, 227246155, 439134128, 39554840, 290240403, 4074240, 192591052, 192591052, 806866120, 722761110, 155337177, 110379955, 237170268, 107467005, 148776564, 271071129, 51884255, 735708287, 74169045, 298858075, 126049012, 610785287, 366720920, 110889372, 185741515, 328693856, 468896868, 764221270, 337412449, 346679517, 339943687, 118790741, 260705420, 513557911, 570889863, 10225739, 361078391, 361078391, 468319063, 525426573, 662308572, 765898392, 677337963, 728943069, 90271576, 940963346, 292964084, 214415861, 121875488, 174683810, 342056833, 114046109, 641874738, 559534846, 198843159, 419826951, 15020840, 341130312, 56961010, 95571186, 101163750, 486751489, 11180254, 243625684, 679762886, 215939203, 82741659, 30682270, 553888362, 45851139, 655825497, 95560931, 508428406, 430275892, 67809461, 263063895, 64458089, 76525720, 23379957, 298906568, 44008152, 189634518, 3015445, 125131911, 122116466, 46189492, 352325004, 199297251, 28001300, 311360945, 26202528, 736029453, 841396598, 711713991, 125497340, 630371682, 108127707, 283474237, 543740340, 651034593, 594264362, 385931500, 340549539, 668512458, 683566317, 687860124, 739357917, 39028048, 272780127, 51832449, 130458332, 570834005, 104639003, 351478018, 264550478, 384789010, 83784425, 56593424, 138418980, 165316557, 258508947, 126751298, 889272999, 159551191, 335701869, 202291322, 586571594, 33079067, 266183972, 454987254, 421881935, 442222037, 944723653, 307120021, 10694795, 225304951, 225304951, 409134248, 159494251, 454269740, 670702951, 392589764, 142733375, 369097937, 591899567, 748940611, 644917993, 70231783, 505523196, 3463937, 268946503, 268946503, 525244584, 310602965, 104413021, 198100307, 298900804, 80728230, 622413660, 849823882, 20035270, 495480754, 428086230, 7257946, 336436828, 329178882, 167407990, 562075945, 203249533, 415979297, 276536652, 462472566, 857659447, 224070908, 388709171, 25771184, 206930872, 168003083, 319579744, 234298273, 546475405, 741254228, 632173203, 62942012, 833556815, 659552153, 370200419, 150871579, 436974087, 239722204, 77848852, 482054439, 148400317, 455393548, 156636940, 95163143, 343637619, 33963092, 81886011, 559175113, 394049792, 417899676, 816705630, 588015034, 290951334, 382429640, 83563607, 127379075, 84502496, 83182952, 705706508, 88923782, 742270363, 545067635, 143681169, 132058585, 657170372, 326979482, 633529417, 411433650, 289003950, 133907552, 56393047, 718750610, 887099214, 595730642, 550473618, 591783291, 553588771, 623865465, 521961411, 649665103, 66576319, 318630980, 227716180, 323616077, 296960465, 94212018, 257043322, 10501513, 35362760, 24861247, 20431390, 11983821, 349362157, 472726206, 742902085, 88445196, 724008133, 623542520, 373252833, 191218657, 283317868, 414963034, 723517332, 221401056, 102221285, 191079702, 144846112, 205409437, 488204280, 202630175, 689505727, 5146886, 512962305, 507815419, 104398076, 542082656, 536649328, 581976050, 533259278, 177211492, 213750244, 631016348, 409824717, 151972206, 186652849, 452860315, 476819751, 310933192, 287060510, 39356146, 381569591, 358685228, 297763781, 601687841, 145204071, 849314081, 891627834, 115315899, 137763153, 158913479, 141244504, 136358959, 94012558, 419767954, 105040785, 103749201, 54240947, 48322840, 66469938, 462401843, 376724979, 254618692, 802631988, 459365416, 313100372, 460132567, 346080701, 131895622, 279113498, 42129376, 622577359, 524311505, 708568349, 880159212, 714444912, 755769869, 778237753, 38430883, 12959905, 149193545, 152089450, 500026621, 326249766, 356226289, 10925227, 346602494, 335677267, 581528640, 887447741, 479370102, 161562462, 169782813, 77522942, 131069338, 304193913, 2164807, 861112119, 858947312, 421055358, 226857131, 250985252, 735829408, 468912977, 584127879, 136160905, 633036181, 265106979, 443861154, 93186462, 150730189, 417871422, 510114314, 479932638, 279231066, 554575039, 659140125, 190974299, 529279984, 330455797, 146789381, 471179214, 247232270, 536935367, 399470439, 435197190, 273274731, 659547054, 579084604, 303714034, 122638336, 159173390, 197577504, 125996764, 884864377, 289287898, 53412822, 37879061, 755071516, 154576487, 135444541, 290127233, 2565501, 945829330, 945829330, 130845257, 520561039, 285738224, 364466848, 168452973, 559703989, 135704507, 128840522, 232045559, 17872369, 281213130, 226568769, 299204879, 257187351, 341910395, 334797452, 324425520, 428379572, 437299285, 58909408, 301533087, 816912785, 589336054, 339310553, 346435784, 151530652, 573550864, 352897332, 9670695, 114260715, 104590020, 82957044, 664083700, 159966556, 158302936, 159490392, 814704770, 199407566, 257383235, 329530844, 629616812, 462428117, 468202463, 746552395, 540477363, 305461919, 128211157, 306629819, 211534474, 220748315, 65479674, 167435661, 255501986, 178587981, 533480168, 164659514, 113598558, 351211989, 197928688, 261972513, 54513542, 8816604, 593716226, 593716226, 142725435, 105407284, 446468822, 247483216, 598156311, 698438358, 575876540, 107579407, 389496205, 176747555, 587021304, 250847084, 51491812, 624965161, 232718535, 911507515, 288445481, 100453672, 421880761, 64820482, 706322938, 47015838, 98763490, 679994636, 835861501, 668456299, 585099966, 243602107, 135441516, 89307471, 552237960, 691434181, 732352126, 144618782, 622401183, 646614834, 898813714, 33556347, 566457084, 145391733, 142114910, 30298301, 225153353, 771841899, 201292365, 51706362, 112069018, 714362057, 63688039, 792016766, 237940523, 433519166, 136942712, 45357224, 404546053, 266870814, 28033370, 219301195, 142477085, 114979453, 18734997, 109157182, 163471622, 330393275, 270700679, 210914472, 124647433, 66655130, 7372586, 278833369, 271460783, 738629303, 864885771, 30436149, 693187372, 569249227, 327285734, 502209978, 587905202, 44289764, 83453235, 535625297, 227030672, 285861529, 9130758, 113249669, 113249669, 197657025, 66483185, 583466010, 175305677, 267819504, 520515633, 34898734, 79699201, 479620460, 85033422, 259859896, 407454542, 766309167, 830742385, 457792531, 340458556, 871143906, 296006302, 206535771, 685458439, 858085278, 21921633, 86054039, 713959779, 326119114, 284005942, 243669038, 403060534, 7014655, 702261401, 695246746, 604542633, 183943369, 289153213, 625405731, 782596911, 452154368, 390274174, 296793063, 389261235, 184601621, 57941625, 47832548, 472235919, 463128649, 178392373, 841470047, 832490863, 659291001, 226316137, 267049531, 614988587, 303144113, 561067186, 128149211, 117236117, 3852201, 251267438, 247415237, 269120919, 100927553, 612566989, 90713690, 398479012, 752478221, 466600987, 64316490, 166731820, 671473163, 2266374, 551293735, 549027361, 105170756, 78600711, 732371592, 278932004, 7064278, 253060911, 253060911, 557981131, 56863793, 214749780, 77210383, 96004352, 315314409, 162687145, 169374473, 17943319, 87667727, 70583870, 358551506, 688965336, 261941418, 317664569, 419487912, 250981353, 581240144, 154234300, 52917599, 719251214, 694683750, 111692001, 201257787, 196032105, 262411409, 548648229, 448208983, 319273913, 193315035, 160759866, 73433859, 287722102, 518435765, 98892841, 30382210, 239992555, 221625722, 641941130, 362891104, 249950934, 194408015, 424795044, 577726183, 679959181, 925487717, 876948322, 340432107, 23269149, 194357026, 159955261, 195078794, 499899804, 740063293, 649467430, 20465856, 292857371, 143335419, 340881867, 499584848, 361030341, 434083889, 437406222, 343953821, 737818843, 727446801, 376715706, 272718318, 169400220, 674918545, 511228034, 474259157, 533051280, 20375436, 74632384, 284118241, 27294606, 454420787, 285571364, 187546621, 31938000, 147415727, 251692137, 658386653, 373284748, 47612948, 471950313, 355589345, 396988715, 271322669, 569496936, 665215511, 794455566, 123907222, 531713814, 546042932, 31769811, 441175428, 492748092, 52741595, 570364926, 273363659, 535562393, 380310367, 417250191, 460174364, 101951349, 30602210, 88619532, 362176437, 744828883, 445032652, 323929329, 60459920, 439420957, 84450364, 262472844, 70532179, 91116988, 408902542, 86635882, 474624024, 15327428, 120750982, 611319230, 737120375, 444652208, 200365486, 378966381, 546714987, 225264829, 320049005, 162653435, 136470762, 102317027, 146351030, 41627244, 125554868, 21463806, 261556844, 316860587, 249895050, 788943811, 196500241, 75275996, 60556364, 417482158, 143970803, 22809880, 415389144, 421110746, 352502194, 185332656, 527835190, 61970198, 682044318, 56218712, 550713966, 168043428, 222172090, 18415833, 254734040, 503454810, 803729860, 26916753, 207610952, 111666157, 210076096, 282197288, 917329648, 161422037, 323656635, 461743057, 333849718, 531640012, 57696446, 142250771, 661858050, 225027243, 341582724, 306420780, 14264937, 626671826, 87462737, 481421326, 159274272, 16325300, 648402008, 631086508, 446910832, 657494311, 36274327, 35107209, 719869217, 311275760, 174742694, 198161867, 793730044, 515335907, 65652743, 269688205, 320465845, 50364233, 90700377, 211142487, 322603568, 34476665, 80236216, 344574194, 939177030, 619463309, 70283342, 13503041, 175397724, 115153330, 201673980, 465294094, 509362307, 703269026, 1516815, 281606180, 281606180, 226154721, 370404184, 120906998, 198447997, 146048308, 63662664, 177719828, 239819930, 330481664, 555084227, 53126590, 733681094, 235898039, 90018072, 357796956, 268109544, 905978111, 720668314, 323412163, 10757868, 335593852, 335593852, 43863979, 351375405, 351238592, 431619854, 176562100, 506691276, 499595339, 189107416, 353648382, 761954598, 28845193, 747374691, 551535594, 97995978, 62236191, 419356668, 147725665, 73888237, 530513631, 571036468, 494817930, 485110571, 569169183, 838918136, 141221509, 103007215, 28446145, 83095131, 381179799, 310554789, 378595998, 500605903, 711589245, 586412210, 508447368, 791679873, 352087156, 137547932, 38535518, 205491279, 156046557, 160366533, 158636440, 123686683, 70242874, 268982272, 695278092, 670549341, 537969748, 304845774, 191500854, 159655172, 93961512, 119339685, 327893377, 61040117, 693314901, 810622040, 87723115, 736956456, 313260965, 382663126, 32305793, 179984218, 321094843, 117155435, 262765828, 349480814, 28183935, 653585812, 76039333, 304524344, 802313956, 269290245, 598376693, 282038599, 571074945, 519561528, 265997495, 490248014, 519185241, 360141226, 369871600, 176541447, 69448965, 766171168, 467934158, 388543483, 107533656, 773063602, 642613456, 154103238, 235405230, 273539378, 276106251, 87759181, 263703597, 168710724, 398890296, 785292366, 253811386, 608152234, 470977676, 489296838, 398501987, 380381913, 505685028, 124890016, 675856946, 497477681, 460745483, 875451157, 304705415, 204671892, 22782508, 536687806, 75432363, 330706142, 94627717, 42068332, 118827516, 239169140, 543123483, 221364759, 906140215, 33831905, 2328706, 762038680, 762038680, 133250684, 709174428, 117593161, 138019060, 199025089, 497218354, 459984990, 94234534, 642279279, 32563038, 502959140, 70658499, 445315086, 291045816, 109074311, 475258953, 843183152, 935404600, 870621400, 473748820, 189614628, 344949852, 207080729, 112255136, 449568523, 345213099, 537949623, 26602900, 3608092, 458459906, 454851814, 393867007, 240458192, 458775849, 792558351, 682466068, 533524379, 41263492, 594705624, 353062680, 377252419, 51051050, 764473614, 410670483, 221076180, 237730765, 474500346, 679649939, 27471316, 23399509, 372735118, 72796021, 46873042, 74988285, 732767240, 84477611, 558466479, 188611490, 371163426, 83433608, 268522033, 681598024, 300124431, 182784233, 339637123, 807585911, 851175529, 386022494, 329282554, 33591420, 701042033, 187531198, 255856369, 411628755, 654384751, 670534858, 87146105, 254560600, 104963961, 159824772, 393093752, 96793811, 63297249, 39331050, 13541127, 323541785, 586415067, 418142183, 342017269, 542869793, 123994533, 209030577, 379279296, 578445731, 703903005, 23049262, 68738273, 492408925, 198429978, 125156964, 160673531, 506406417, 388788004, 339696685, 669301335, 150769652, 49034858, 22401371, 502500201, 217738277, 146844412, 226546844, 127539211, 249416999, 500066346, 70893978, 58620154, 224480464, 406528270, 408173251, 660329075, 845702451, 47648623, 178834073, 437245629, 607035830, 453707129, 169255494, 53855154, 337825444, 552012178, 131786086, 579026494, 479744113, 338799312, 601983623, 160260171, 305210732, 472093620, 553686455, 70251234, 125720144, 935351675, 744522384, 205157687, 231640185, 71319080, 201993880, 24463106, 114375240, 339506436, 42186343, 491949367, 552191478, 228768551, 200216450, 201644904, 306482784, 43398456, 531990792, 198976816, 120273877, 77903899, 86357325, 466778638, 333361476, 315269651, 253887311, 267114563, 177736071, 381615497, 406912969, 492980193, 634366253, 113856317, 737493410, 114985851, 697086641, 252577893, 361472859, 235888806, 359647189, 101233432, 613282174, 184283897, 70820566, 130299896, 416828445, 235242810, 229557277, 44913566, 88344502, 17735211, 660899383, 177180638, 160105125, 458840106, 204697661, 95871423, 159728494, 336598227, 203623236, 167383112, 216346246, 449410715, 219479094, 332745092, 728828710, 709392935, 58312690, 70741794, 554929079, 627790271, 216061600, 36390327, 82443968, 120242150, 80328638, 28661992, 197241466, 438905827, 686777694, 551368303, 347163483, 110279850, 84199286, 45289694, 359049973, 189165213, 122487979, 271990815, 412945110, 270823511, 164682628, 47099731, 25898741, 261863163, 595297966, 696873283, 99067819, 62781166, 766769012, 678324567, 305292047, 183588725, 7231288, 718947023, 718947023, 585586613, 192190573, 49057332, 434746103, 92847223, 290249362, 769066285, 744540136, 659740401, 313628490, 330443456, 26978720, 379120186, 396192906, 169205367, 213860347, 522816492, 101152057, 230154698, 543666627, 264222337, 206143341, 473241397, 580909072, 193600697, 290922203, 519088976, 94162552, 378038016, 141530847, 346748508, 765136363, 258835073, 224082675, 478235885, 256463724, 113986860, 580542171, 440328398, 479309761, 68772988, 40942637, 643644596, 624806069, 255214863, 112441895, 329081237, 490241022, 714377913, 122482056, 74077063, 703038405, 34051918, 533269841, 372307789, 503113370, 757353985, 839274902, 353762822, 325136182, 358343082, 122234762, 303940906, 555094188, 23222791, 188743236, 808226218, 94280643, 26695438, 34734131, 436034775, 573131880, 599870017, 194995798, 587120731, 295658584, 42231429, 106607946, 166517811, 415437867, 414993818, 169710436, 270912317, 1619200, 120746764, 119127564, 539755446, 286166974, 306702232, 174516331, 243916303, 309944053, 138157868, 46487135, 109115479, 219929236, 260051534, 13899421, 496716566, 56051732, 287844520, 77749244, 258518699, 85190541, 482910114, 739394282, 349690330, 355994959, 716276502, 760307593, 104270081, 429656438, 323767329, 466227034, 32543475, 142451738, 306158139, 161551348, 372603653, 261889128, 388190776, 657866195, 90127987, 32859959, 7358875, 223646004, 216287129, 183923803, 166753030, 52739739, 583465875, 733337605, 249775244, 351800124, 214094912, 609710775, 649397248, 613350700, 26703713, 352895551, 41919423, 30714421, 257801121, 9048829, 585305633, 585305633, 818619725, 312460430, 222353047, 819447747, 793738754, 503949811, 340470825, 285963299, 563239252, 780743254, 887699269, 954887734, 599283463, 478505311, 303764616, 44531815, 168412452, 418993043, 541701101, 450182790, 13895906, 524053862, 810532025, 669403731, 53081369, 723603240, 507764507, 251967441, 229645056, 902298973, 678727892, 15097769, 185674822, 760253518, 145603214, 43246109, 346504993, 224556998, 161432900, 588585415, 83252913, 464515847, 213859521, 121245622, 50756531, 496718990, 221492926, 556484692, 276671188, 330277469, 632943087, 420461514, 309007026, 52119540, 64512091, 92642588, 818068905, 489387301, 50663428, 431955442, 125161096, 326859856, 263823433, 485207727, 313100745, 181998309, 260790571, 86297953, 475519892, 201297440, 277287829, 162480606, 90198355, 671871964, 938051509, 346303109, 371281040, 617439848, 443526931, 174709832, 785512490, 355103385, 321879220, 429183492, 202992300, 614511056, 203652453, 522550482, 267842860, 692419019, 359413102, 389610370, 16197344, 329099145, 334358307, 460157177, 416752043, 345536545, 169894963, 368118726, 274023955, 116707246, 612708179, 418667188, 126899863, 157038127, 293865549, 591281655, 163145682, 736373281, 492125387, 415213114, 208225465, 471293081, 419610600, 393267375, 76879111, 850442452, 603570616, 146263742, 887225230, 107163640, 466856292, 437058816, 97269945, 360974236, 70112111, 187894674, 22142911, 491939330, 99672567, 436897700, 117559459, 48259457, 657174754, 411540668, 640754881, 688748832, 539207064, 283082583, 383038219, 347720953, 61233259, 314786035, 69711097, 901796311, 529578775, 320038098, 642004352, 253068118, 63659181, 542379667, 118875173, 239283407, 403519131, 541110830, 598342829, 462571980, 213601955, 464694072, 43819681, 283514145, 142209768, 143052173, 324986804, 349490646, 914302347, 328418521, 222994604, 337677573, 490596538, 268782086, 243054582, 565956921, 247615620, 549649475, 216245372, 397121095, 520901906, 434228514, 396662096, 625488163, 234229441, 7803369, 201406700, 201406700, 412585192, 605634204, 601563581, 609165288, 5958231, 683040158, 683040158, 577388830, 306271511, 462714881, 494260261, 16146477, 617447440, 323593368, 569627652, 115548426, 287286685, 328761168, 718017971, 24592286, 955121988, 403505800, 463470334, 838958398, 922624675, 243552723, 369889408, 243418139, 347196701, 933335046, 7048024, 575805809, 568757785, 363432141, 272150641, 188369931, 381693986, 219426131, 393547518, 575950847, 299114002, 384157648, 121604534, 752846139, 685172344, 65274771, 505879133, 25416776, 710301748, 605550537, 140683454, 653719491, 37034069, 155400125, 20896020, 574457990, 769794710, 623463318, 74904898, 365940340, 159563320, 239894303, 618862117, 374286501, 14924958, 466691307, 519055474, 206178568, 124501937, 179958346, 200314507, 783485707, 366414446, 232223155, 526627401, 90203998, 439544376, 88415261, 270128081, 395573679, 652945310, 240715784, 255606900, 203723956, 318737136, 308603432, 432007801, 353625605, 538218743, 145948677, 198939445, 128483712, 292032861, 164955769, 620131694, 253680885, 343106823, 104468027, 117632894, 37140963, 372610121, 694093950, 232437138, 392120606, 681053240, 207616337, 292764967, 659996281, 359082331, 48153986, 139002111, 431154575, 581447383, 182845592, 140796194, 323333086, 243172651, 253465013, 343628110, 431683724, 431639939, 265621414, 101208279, 70586204, 196377802, 430085904, 471010982, 73938524, 419622238, 217088754, 291608883, 393907920, 783284813, 358790499, 83554624, 263669304, 17411700, 101099822, 435062141, 6471897, 159135484, 159135484, 119397240, 399780252, 43650260, 380756341, 45706800, 256480328, 416466761, 159746313, 43929790, 29286902, 122457940, 77590488, 595537053, 450541536, 797723195, 598680926, 170958900, 579596583, 209866500, 305345951, 162297617, 165570630, 587946665, 765824158, 154350892, 95161137, 22016544, 192880266, 141944972, 96981634, 252202044, 490329783, 21393337, 239871895, 825488584, 745258340, 658017911, 335326514, 342279004, 65077347, 43428680, 28543384, 154828664, 516011905, 268850516, 78711819, 168573942, 79771695, 207813160, 402686634, 217331777, 347223811, 496831204, 277870034, 261195643, 679269119, 408176, 302987156, 302578980, 41144621, 88574292, 94025557, 307707808, 307455047, 365584407, 203210216, 339424561, 239103974, 523214, 42449787, 42449787, 198135021, 546566313, 485140753, 589589753, 547430258, 7113733, 98001956, 90888223, 192971467, 69669400, 188160976, 382845759, 286669108, 152658159, 152574647, 602063222, 685750508, 101138524, 405462471, 457120281, 428910895, 183742288, 574429118, 825052383, 213962358, 256656380, 761835050, 9817432, 645075263, 635257831, 18433814, 756998050, 348146362, 250508744, 252798996, 249876782, 245538434, 289847305, 449994797, 366033536, 92335006, 496386669, 728186509, 79825648, 66287828, 449601458, 140607255, 719682645, 753658058, 316404, 444164664, 444164664, 116241262, 185088949, 460539588, 665205300, 727353388, 571370164, 537269820, 208495964, 129184585, 57083282, 262693360, 481668200, 517315348, 295612927, 500248266, 645044754, 401982998, 461560016, 587243433, 177697384, 403952229, 676797564, 697776290, 858392341, 666744882, 269797092, 223450447, 435654639, 405417119, 59599100, 301159672, 40993948, 437461748, 837448434, 67605267, 27361042, 817915804, 359568240, 598509205, 208901759, 655529911, 862783115, 253385720, 652427062, 904715594, 29754402, 863647921, 76487168, 21041283, 438867213, 21642459, 444815539, 311148055, 353624601, 597603082, 157450040, 234636773, 644925399, 554167073, 195155532, 3472372, 360384591, 356912219, 223543236, 423371740, 700164932, 578681037, 265521216, 4020961, 275224363, 275224363, 59394917, 518056615, 18837120, 379138713, 41047768, 33882341, 345633919, 68042315, 54608420, 220015448, 339934564, 640056026, 460875166, 544117316, 213888493, 18267474, 163979585, 94153865, 390504935, 206731503, 160500817, 81702917, 133602102, 99956512, 84416230, 52956683, 574267475, 386193703, 46865333, 441207885, 167855822, 72988489, 656990170, 294618692, 570319482, 299305576, 335350632, 77105580, 754777499, 657669757, 549053335, 227209798, 133287421, 201927392, 291979587, 260256464, 280728224, 440555207, 749338322, 667596859, 281429526, 296658310, 602383850, 306019196, 384523812, 121097499, 817780750, 127581011, 223820434, 331464269, 80978460, 77775323, 157938490, 288802782, 345684434, 9540689, 195938115, 186397426, 668720425, 741689647, 66155906, 166833010, 438849661, 226140323, 789996384, 18647425, 22421521, 822482144, 642965638, 252340968, 280705277, 303998266, 541085439, 918387713, 386903807, 197497482, 295994134, 421388051, 158599681, 398922636, 195385530, 234610472, 171460545, 379963450, 576480638, 394068950, 334416903, 658937486, 36910814, 217867023, 362488010, 141456664, 99753403, 190491875, 150894057, 107995529, 523285263, 528624039, 129822482, 572996333, 629746299, 335432248, 254187142, 461801692, 318940300, 454470187, 242294807, 335715535, 753807761, 153793283, 352465778, 440263173, 872868128, 861709311, 229194392, 140293061, 694600487, 663771117, 563531491, 484042707, 245476622, 677269779, 196877080, 167864480, 338332619, 80709154, 752744477, 619998242, 286430327, 771341249, 357030491, 307764365, 496902463, 529410394, 115151542, 17662306, 572048223, 167953328, 1321738, 29345610, 28023872, 558333011, 364651852, 312606726, 571818793, 124607445, 37887922, 617876522, 584109005, 431519228, 476058538, 129323653, 819080694, 403063417, 217205824, 12180008, 109782908, 349740304, 604067301, 772307558, 303685662, 174125257, 424601063, 160726780, 792913684, 12667257, 579202411, 20411812, 604524797, 931361986, 779229196, 485127873, 235758215, 84550797, 500101755, 958864425, 67514504, 351338670, 270767227, 327143871, 43914163, 216439409, 69127464, 6486031, 161693372, 155207341, 411615236, 404348981, 82987690, 586503736, 521706162, 176070939, 657471283, 392500573, 239013823, 524029446, 72945773, 252564039, 210011823, 233471902, 225175052, 631544994, 400697345, 57264912, 222117939, 126085395, 396518487, 625998828, 173236310, 122421471, 387868471, 418172889, 70123483, 79786384, 32912611, 525757538, 152364690, 115925166, 657297646, 615034399, 125949779, 735552070, 279773427, 363176993, 104742679, 40646536, 42110673, 617795472, 824790357, 872935590, 238820188, 42096846, 23967838, 45438367, 30977692, 330567564, 301843193, 276733696, 905986185, 969953390, 816948616, 262312196, 264459245, 58973572, 134050918, 87099313, 448649, 42334420, 42334420, 380846724, 356216921, 149067159, 132850728, 293010881, 366311957, 362454827, 188186212, 592102331, 261709065, 33619841, 137829705, 240407272, 380096239, 588865152, 275024446, 91445809, 164716387, 170614813, 179986340, 697545897, 20145458, 619476295, 249428732, 480955441, 223018475, 111454530, 381249853, 3959812, 79304106, 79304106, 131833903, 8119631, 192475155, 192475155, 144037102, 429319866, 574334358, 190939132, 765638084, 37084831, 253664532, 109958160, 338889482, 220620053, 401220440, 136969830, 545740508, 407510819, 101008793, 240039714, 667507669, 919487799, 467662787, 475514061, 376413706, 209612053, 276396398, 150548593, 148109435, 228334210, 212002968, 350779226, 321969679, 22390823, 74926482, 274069494, 109071665, 137490246, 391823622, 356544723, 537324791, 105964138, 43810441, 813018985, 637594403, 590790680, 460090415, 68666166, 293856274, 304177658, 441547203, 33255886, 647604854, 207271858, 793280096, 852367575, 580498172, 7582916, 54719240, 54719240, 292075938, 234533159, 93522460, 716548128, 319644231, 160090602, 456771840, 727522403, 175080970, 495361181, 295296172, 329635524, 438992246, 304778258, 386990915, 687058522, 683145621, 144824246, 519983655, 325684406, 692062581, 98131939, 317621236, 371341817, 749537403, 59016976, 122312797, 667185257, 175868614, 211199362, 255500540, 293111255, 764977285, 326147329, 291648153, 610671674, 86315090, 71988922, 54861354, 42115054, 82456038, 289231264, 476487810, 192478374, 371296891, 536849668, 94859974, 548905699, 341589693, 367899406, 191184785, 386222206, 391553994, 504676198, 791504455, 135513318, 236849394, 465262176, 16016198, 27044933, 390190445, 81597511, 513864667, 685215095, 436730855, 600477310, 894631517, 777231620, 559202719, 501388524, 554431275, 406436611, 18620299, 49504596, 293397832, 588251282, 93072988, 73194458, 556156764, 169859781, 252291623, 446713188, 300357939, 536764170, 294024650, 295787201, 302309497, 540932401, 319765896, 184721547, 459119257, 150606785, 4405188, 497107378, 492702190, 297738374, 18379276, 256086649, 250055998, 183307486, 461592297, 504068187, 6543448, 216449649, 216449649, 242379205, 434125213, 256542890, 235089002, 487513829, 199448383, 475001588, 920132762, 732611672, 267506367, 82796290, 374737968, 518961139, 81258354, 208431349, 719541129, 332128518, 389383428, 148966234, 693550570, 170375159, 478863350, 166180172, 697382469, 830188870, 731935852, 491517202, 54476521, 366036287, 142486046, 428280987, 336515454, 453251776, 693446826, 606224604, 149360804, 47996247, 272437438, 15460304, 264534722, 52043257, 657076309, 535756907, 538564949, 234270046, 322182692, 100576053, 123967145, 367668691, 854549522, 565569657, 310828174, 438196610, 361931081, 228262823, 251774748, 16190462, 496551427, 107352032, 264722887, 157465539, 98639755, 240692803, 347284990, 504887046, 285787723, 6131574, 229160893, 223029319, 148441297, 252278743, 217820630, 358314879, 421660734, 66368368, 520919713, 41055601, 229932321, 50888654, 207624902, 908706245, 525582845, 393931115, 613991417, 76010007, 331955767, 332795816, 75056504, 199743151, 45759963, 488195769, 153621376, 513778956, 637105826, 44095746, 497911764, 45342198, 544425663, 129657184, 654879379, 24818830, 476578030, 514331792, 364311516, 168336835, 128975212, 292420913, 369829763, 370282017, 152223368, 233732333, 184895058, 193043567, 170967548, 186446995, 668699930, 348048, 267683827, 267683827, 390829090, 341462598, 582550573, 117373061, 183200432, 356061209, 107438345, 175180112, 387630716, 534146794, 61524220, 368933946, 92254441, 475340351, 511302843, 360201347, 692927031, 113426567, 719311445, 664775727, 105127710, 88192510, 746445562, 17304426, 460680668, 100785843, 90644413, 138662129, 266532774, 960873482, 131754220, 671318228, 61187696, 495429672, 219309125, 152519885, 146668573, 236014328, 114789159, 323585290, 260826381, 199428420, 699460798, 458588243, 73554017, 32253098, 473639349, 335475419, 324254241, 325815645, 231025129, 109381373, 238018076, 563745815, 3302271, 178184685, 178184685, 495764172, 179399972, 98946473, 26733068, 799431608, 28507871, 83770435, 671358901, 252027719, 343685762, 199151318, 351997483, 590130997, 110371576, 863705116, 891976233, 112778373, 587018975, 641914897, 543448039, 298032481, 105994839, 94892372, 255188570, 364365147, 5887725, 692282359, 686394634, 677826943, 557147999, 263299261, 546363642, 800949445, 43783558, 614528992, 229512011, 35622968, 187478463, 22267805, 696770464, 628235058, 26451985, 358975459, 256383947, 423110347, 206871770, 298419851, 65060993, 75152027, 338966097, 752671757, 672137394, 780848065, 863445557, 789657639, 638527735, 335525423, 308997807, 16435968, 139599341, 51356611, 222679369, 162627266, 561335180, 339280734, 246924540, 327742803, 15148284, 112902987, 482187684, 695957610, 657389382, 295910255, 309410633, 478212129, 368172454, 160270706, 78134369, 314551321, 152257909, 556526914, 506859473, 303803261, 156533103, 138101487, 303830530, 4244067, 103214743, 103214743, 231206574, 24850958, 20333293, 171981832, 156351328, 481221264, 174634780, 88759768, 749925484, 241400013, 255136012, 72963562, 60743984, 543552500, 411217538, 543902710, 523116394, 405561714, 35112733, 652362975, 553876082, 182237394, 263237151, 575743682, 456472935, 135457685, 22728063, 319986025, 471669957, 334435214, 482032244, 49628155, 253810109, 368203649, 211815132, 671644855, 261588129, 485935416, 280658020, 246250419, 581897880, 271430785, 86319147, 225452045, 313645007, 594334158, 464013683, 135918805, 643915944, 565625590, 478460492, 89612310, 363690798, 270035868, 281746367, 316449126, 53263891, 626933537, 901193528, 211906855, 309941341, 431162981, 802704624, 705518565, 520328344, 353104427, 506122153, 577630514, 107269159, 141319426, 515570873, 760701097, 344668871, 316435553, 82901329, 622307189, 299276356, 387335328, 44146834, 704950308, 229433661, 535884337, 6634764, 297790831, 297790831, 455058609, 561205843, 536317186, 510703612, 181445027, 77227397, 131100454, 62810401, 741592949, 730550474, 463957386, 241222135, 14418235, 570457973, 176597983, 431625822, 17417503, 338430055, 17354788, 774680144, 133875559, 347782428, 92715332, 121100516, 120759755, 123074752, 2498713, 115410367, 112911654, 671486106, 556876982, 270829046, 234531549, 440903605, 79922678, 776698452, 532015405, 289281672, 705200621, 206715154, 103043941, 315115344, 148395329, 392949997, 255158672, 61182280, 436172243, 229008984, 777791127, 87133613, 675484862, 449930767, 229108066, 253565853, 253810301, 711773090, 806147459, 327678607, 288156779, 216957789, 536004764, 70424901, 418612973, 333089668, 43657704, 129685260, 204660908, 218405402, 150086317, 125814083, 72249503, 440874296, 76737861, 576115087, 97635138, 48143280, 304836486, 471693208, 70673895, 100977060, 605329882, 196331125, 687412578, 550277451, 681474418, 288952106, 135514235, 274411534, 318517122, 426639284, 352215434, 716078233, 415841852, 512364817, 647373537, 268919230, 6011488, 630428686, 630428686, 415133749, 24972902, 411527214, 351519225, 567790668, 868591935, 357889483, 439411611, 31563002, 484913350, 302946354, 228486813, 159785088, 462325235, 306830540, 400405944, 282377234, 239602364, 557326052, 113435721, 223811572, 371570219, 356162547, 189930181, 310500474, 179819449, 454083189, 47494826, 638355065, 61446928, 399627691, 238982018, 67612098, 468071939, 413461626, 60384302, 134543167, 205931458, 61564008, 743943681, 70130547, 532727065, 98936844, 162880918, 154319786, 191931074, 156316025, 533356947, 542670629, 167734429, 265685117, 688440973, 326581806, 153710907, 527844678, 298524719, 310583258, 761325811, 22344432, 121026897, 655856986, 139923497, 538188516, 367305466, 456584126, 58254845, 96855637, 262528962, 661669867, 219200083, 227296437, 505850441, 539869622, 133069899, 132221779, 74950674, 529759371, 302076876, 794107280, 613219239, 158270951, 225931588, 491964805, 478115, 9343886, 503256004, 9343886, 503256004, 503256004, 31607893, 169001913, 380694740, 70369061, 212052321, 246342991, 77613806, 262823407, 258639220, 77513394, 240272968, 722082440, 314126988, 165377467, 363525041, 121755436, 412176582, 742793641, 480086914, 601314962, 435268195, 271261930, 251265925, 44465241, 201377372, 553536439, 555207012, 606518750, 272336680, 218774743, 603389532, 651453255, 258480868, 543887109, 326160383, 483111587, 234963766, 62545687, 10090694, 121629554, 121629554, 22904916, 900145546, 842986250, 705807439, 118760162, 386077616, 400914104, 369945481, 337791132, 52023077, 213177745, 711208740, 172166892, 100660616, 188156719, 154092818, 87414202, 240740407, 289642598, 28136220, 433130067, 79717431, 324195299, 181468087, 295796070, 251636189, 400268699, 284825048, 268785353, 412343982, 405470795, 270657742, 42910566, 548414853, 375406190, 487570854, 793130068, 491564876, 98319068, 381620290, 394712618, 725968116, 253757211, 203589587, 185456032, 617856278, 214887625, 47583308, 417784563, 429315065, 423075017, 753019970, 417729483, 31242350, 493453874, 760979345, 72610802, 694639834, 552862302, 216965548, 362184232, 337288316, 127971735, 647155255, 593602162, 24040028, 204581245, 626538582, 294681338, 372571047, 406111547, 105818979, 212025034, 162729969, 41469710, 172831942, 120042320, 589050907, 200598331, 693077542, 573364009, 231335031, 174969729, 80617082, 651066746, 100134858, 3113486, 446230159, 446230159, 242789253, 593041498, 551930236, 96996032, 330592151, 510034285, 408816131, 480588641, 176686781, 323777619, 693936090, 389320707, 316409323, 105748041, 324026252, 638908587, 598311193, 668921009, 148827188, 7417211, 642938047, 635520836, 735718848, 641208201, 506936073, 536347411, 678276373, 307040035, 256732488, 504951723, 46078160, 168333545, 521049906, 436718610, 238981901, 609733593, 622486081, 289035709, 204295364, 180986909, 127426816, 194096407, 435972294, 719109727, 208949443, 503890953, 363983911, 397749189, 354012793, 342301922, 215073645, 471457089, 100201510, 289523343, 156222499, 265371446, 245647262, 191998996, 302666604, 107422534, 154713556, 38975082, 49637930, 253081132, 75873062, 690909746, 650048794, 17954128, 15750476, 53861883, 16269122, 253737969, 338597166, 85252267, 161631700, 742291435, 370491219, 578732650, 514642341, 182536661, 589221901, 860063977, 288100974, 12526382, 574031218, 874876216, 354653062, 614804512, 277946935, 288732397, 386141295, 287043536, 119210965, 586877370, 394851798, 87103815, 528064578, 331501984, 238553125, 221824583, 856940952, 552002305, 161162898, 222999507, 20480888, 280241671, 353575342, 57071070, 278694553, 92614985, 154936971, 310858037, 307635893, 250652483, 188953109, 396326822, 161501852, 407081298, 496348412, 546815560, 527194709, 127667420, 214281402, 238794194, 600308745, 194247514, 103213145, 188269664, 10920272, 100938616, 100938616, 156022918, 147760352, 126318037, 171565674, 82274737, 475814222, 345879848, 311151133, 544805452, 302033246, 159704342, 679935086, 378732517, 39502131, 547347129, 544239029, 80984824, 269509883, 192503699, 178664351, 140457380, 145654508, 226816231, 279557448, 741206915, 51663203, 324401327, 167224389, 230873525, 139684736, 133855301, 211398762, 387391048, 492146516, 248740126, 406768460, 843934438, 216260048, 576273690, 270256878, 347502055, 450266381, 194352180, 76944642, 558395836, 227016396, 225456686, 533853611, 670178762, 97254150, 485416835, 214154004, 915489714, 823125034, 148758865, 96345887, 520042239, 40904189, 104618355, 104911112, 379379337, 574667066, 410936864, 200339452, 415769194, 414625910, 259593626, 143330004, 251743798, 341190395, 116690423, 260762774, 505834996, 38846796, 741065912, 100682992, 108240320, 456722147, 6318249, 609416767, 603098518, 113996524, 240176416, 242301383, 284883049, 198073405, 98665432, 226677799, 153269111, 148993110, 403527817, 179956116, 340099345, 337890938, 815827555, 97077149, 80867062, 9589918, 213361747, 203771829, 531557933, 47345598, 497010117, 319081411, 360501268, 518140250, 352443450, 35414296, 234461985, 440945666, 302470398, 281905862, 436061702, 579345450, 270127145, 71543763, 108057779, 325505270, 64866836, 478749703, 47482887, 717327077, 84689340, 249968760, 445573391, 490158733, 399436534, 57641495, 201193705, 150919318, 589806172, 458465394, 435422533, 52824331, 63287372, 364634476, 40764692, 320538451, 27331984, 162209074, 73117296, 368609848, 273909912, 553844373, 661040412, 15581206, 151259459, 41547570, 121874431, 232148591, 685900703, 441797962, 150255977, 209320775, 335505558, 623056951, 518963545, 234754796, 188956431, 399137297, 79377104, 467545275, 587034962, 892588548, 872980982, 610641202, 267305362, 234517055, 204436362, 23248, 322080289, 322057041, 624053704, 158972877, 479998165, 148512021, 163937273, 331238638, 631535530, 300705612, 277077207, 22186147, 644535417, 524449989, 9606245, 293018907, 283412662, 167387384, 214770068, 84040816, 360638714, 95040351, 124733483, 90478572, 775640782, 206400565, 653947625, 489807778, 56539251, 663704288, 408920522, 144670771, 88499579, 517578139, 679089531, 230884713, 215465613, 389175183, 94749490, 462721016, 38005118, 176184698, 298888090, 113775098, 440334396, 358297814, 280138522, 158771606, 218790438, 277642862, 146023682, 94603699, 424408770, 389158064, 9491567, 58331481, 48839914, 2301387, 478179007, 478179007, 871617397, 596585554, 284463883, 468711604, 104886222, 42635866, 11494543, 569368315, 554757450, 370410079, 30971027, 428530515, 110602221, 10590571, 932139176, 921548605, 511881134, 179609645, 10274694, 270520347, 260245653, 691775882, 93768546, 268103541, 288166592, 568746498, 683776093, 38532357, 728588043, 412606098, 222051740, 761911544, 298829230, 55115766, 73564172, 172730937, 476507584, 735850622, 725591296, 254332611, 61643158, 331332265, 454465099, 429627141, 521759865, 127478083, 467578382, 182228104, 211660558, 4863807, 597129262, 597129262, 809973843, 74622091, 375647050, 421323866, 507252519, 25440311, 405901634, 278184192, 306787719, 512707681, 81470110, 578301453, 456464909, 577068174, 427183692, 420320801, 96381103, 190137332, 349335372, 252559853, 300444353, 127027874, 225724994, 606128430, 743738792, 205187492, 343506164, 44080435, 654068496, 359305731, 381086138, 170542307, 625313578, 17507557, 256462421, 110210851, 150635730, 86265072, 11966842, 841588659, 859075694, 209143033, 39653116, 377421991, 125613480, 219978507, 218016078, 206011830, 35818495, 51671059, 63701477, 6573305, 441635869, 435062564, 525126118, 90158677, 117064800, 319326676, 428302583, 222772523, 224608376, 104158650, 463750518, 9924525, 403119717, 393195192, 622478708, 910985841, 294589379, 212536306, 146754815, 160516184, 231774749, 646751089, 33849095, 639763171, 502607762, 239032002, 756757933, 565972875, 93464087, 373171929, 424576213, 292049171, 262166328, 785713168, 502004434, 25650145, 486973347, 669418069, 207826891, 218863136, 186304536, 203226547, 560949680, 470830082, 473248497, 571752279, 31738266, 138718376, 22533701, 234866807, 546312222, 285023544, 175657904, 469751851, 88801682, 293468143, 354254152, 244082505, 393651002, 313833485, 229038644, 381213279, 943141437, 554731507, 420935045, 699583827, 695562029, 877014566, 382973418, 430400644, 581902655, 485312295, 444741382, 362699864, 909299947, 196985822, 515661943, 61823245, 549412067, 63661768, 661112502, 643496506, 73151092, 475367227, 177637325, 134655821, 934068911, 782877731, 6514819, 230321045, 230321045, 154937058, 425884523, 163263020, 152591722, 282250278, 717838802, 299752236, 67044705, 53710444, 551864075, 162087289, 46631870, 1958830, 585749484, 585749484, 548752690, 472183139, 178059190, 942000042, 567808803, 207537435, 26075316, 161330322, 69225406, 213435262, 519613070, 525310350, 102389191, 6666343, 10333188, 149460089, 10333188, 149460089, 139126901, 265296323, 12244360, 22054442, 283895612, 289498043, 760553600, 18482658, 336563823, 98622819, 3993280, 128729152, 128729152, 304953360, 721974033, 518577507, 533092258, 224308543, 657750361, 474993435, 283837983, 507809124, 710128733, 34701643, 233629049, 687619134, 694165349, 41142153, 638145349, 39168052, 159846915, 70295433, 416376105, 25806325, 204528860, 777510489, 38854009, 317378778, 289430631, 637503590, 253700109, 285881957, 74027637, 153103561, 170120906, 932642551, 374233280, 60006377, 137558200, 133181955, 285584582, 127619953, 150888432, 38623022, 694049725, 607297240, 689380353, 815615369, 4509621, 500996113, 500996113, 313905834, 469682090, 552051588, 561231822, 71695456, 728831131, 540122508, 564033433, 336716649, 425181897, 60415730, 165400142, 350539257, 40818644, 274176448, 108451503, 107197177, 405859986, 221130525, 262928510, 229397303, 652334322, 36293143, 544410252, 67957463, 144965487, 553947179, 349613595, 474283442, 520387955, 546504380, 18706700, 20302814, 360842627, 406068707, 188233288, 608940403, 671860324, 651738857, 260979703, 154616511, 431376575, 969049018, 892197854, 317570606, 217372821, 213616789, 335488005, 702093834, 463632579, 256029090, 645701607, 122101770, 642260140, 119839100, 972673427, 263332025, 407488268, 316516193, 534022077, 888969198, 196352177, 579299920, 189563798, 626355668, 396521899, 211696411, 305919901, 212103992, 97959833, 161445487, 728624178, 348105220, 242294207, 276536790, 579821643, 870166917, 33987350, 315011805, 194705646, 349101932, 305190123, 495676592, 276597207, 109194842, 324876708, 320614205, 388661733, 164629211, 126093527, 163820166, 453564395, 531184387, 208034986, 491361151, 860265895, 410460744, 502642414, 821257652, 290167816, 311025467, 79108335, 576048482, 704700392, 708302463, 668267343, 528814093, 223531258, 205773970, 140633555, 408996156, 265554351, 261358890, 357433119, 544701137, 228709121, 51524992, 176001741, 861404631, 270591362, 173998859, 745987753, 209943037, 303969188, 473150448, 93793145, 705697574, 201384014, 226115147, 606199284, 244281845, 302016002, 239354384, 169063424, 308133647, 581729229, 286308686, 229541628, 114934141, 42782499, 300608324, 36187976, 444950753, 298314383, 107115966, 500059777, 669731576, 218249917, 93228603, 553289396, 338375049, 502990553, 702945339, 742053328, 560453778, 448614991, 53488804, 571249868, 201248810, 320117439, 58942254, 216108750, 230266724, 40265563, 339305140, 157214532, 328985828, 156929217, 366595112, 559181142, 564165144, 299573614, 377503688, 725852498, 395473075, 446996581, 522959991, 129934055, 203265889, 3144184, 256739846, 256739846, 4797462, 742809671, 742809671, 278213728, 305987208, 646554448, 159133599, 114939873, 49666933, 116837091, 41859603, 112145355, 19239894, 270034274, 346677134, 9599349, 202462268, 192862919, 409359960, 57345222, 507471389, 339435164, 169141189, 300942745, 156481350, 583723008, 146143380, 205092836, 540808714, 632822569, 479189431, 242668448, 448198698, 70243380, 129709655, 189157711, 50271513, 681964573, 907657055, 38280002, 543096504, 548983973, 207988587, 741723680, 14743920, 892443253, 594626478, 445370807, 122437675, 10557624, 433053885, 433053885, 220845351, 6705960, 577704546, 577704546, 662486542, 130128776, 753595248, 425243503, 370658959, 160869448, 821187051, 226714440, 702894633, 57221020, 180027573, 437443159, 150573453, 93527468, 32879599, 356691334, 474976740, 266859268, 52991571, 291689639, 173947444, 173054237, 655783648, 660748796, 398058425, 408008467, 198671329, 82467636, 29742012, 240604115, 22887554, 221084666, 187253983, 37966332, 195436366, 351091934, 472865895, 88734838, 253460139, 39979448, 297706479, 62841059, 149709971, 468303755, 74736129, 111187469, 472992651, 78834826, 279965090, 623298454, 103284647, 338284937, 319586603, 497284030, 216643530, 5216916, 805390839, 800173923, 624056103, 120843022, 584483954, 909015801, 887634071, 831541599, 168361396, 651659548, 814441419, 649566021, 199843618, 81827629, 74081206, 23440303, 539890579, 668586804, 35686209, 153009568, 275256434, 13090625, 272263206, 446208063, 19606678, 34831626, 366775358, 256936347, 110876239, 512637261, 822610780, 485544233, 508361969, 45071285, 79220804, 646392252, 50170608, 163320944, 541889597, 367536455, 172328599, 309015, 383675272, 383366257, 766711893, 680252109, 603403581, 81454230, 29302276, 42114757, 55804487, 601284670, 32860942, 116991755, 85190736, 284880184, 556552999, 35691067, 124808542, 246194735, 43722976, 580152350, 429192637, 89443614, 277746578, 400763566, 465754498, 267165788, 19295493, 50158916, 674038438, 893389933, 117090885, 36212605, 11456688, 131314398, 166931058, 142976819, 619895240, 65079574, 342321552, 335545822, 533783851, 88406622, 396253000, 59095473, 556798544, 444766261, 331592632, 668687768, 632873145, 768904918, 749401731, 435415037, 132810853, 586020629, 152058364, 771245545, 644202071, 162366685, 682989873, 123748802, 288483249, 31995277, 108261964, 82937515, 217842537, 275935047, 404245719, 523423278, 266855620, 19206747, 363475224, 672481070, 290113636, 164138153, 531723732, 910661907, 815210418, 332574395, 370547473, 34930286, 72733309, 640286137, 108006238, 281784086, 95240390, 237542415, 162986482, 796747428, 818377975, 13487849, 128372472, 126793832, 483330552, 17601145, 662128736, 82073543, 210590914, 290221308, 286449869, 352007675, 91513046, 135948190, 266441068, 185664648, 254948321, 166810114, 194374334, 121355409, 412969267, 454306601, 315744596, 2447643, 497255043, 494807400, 31022479, 132577403, 81572373, 602315583, 644534366, 55398435, 775684901, 615586342, 604465197, 365570550, 361729062, 103570463, 766961311, 659885445, 483066488, 608160844, 7791337, 253765067, 245973730, 247078266, 467099665, 591965431, 460889211, 5623805, 82704165, 82704165, 682664564, 629942476, 569768490, 43087386, 12810137, 466014861, 434776829, 741054767, 401525031, 546143710, 73276834, 680353325, 199148448, 260209288, 389922510, 235927430, 650184906, 511421544, 304831678, 208842163, 8154479, 324571737, 324571737, 290953341, 116883367, 55379657, 435598412, 45737379, 364666676, 596904138, 755049051, 765141370, 478969348, 28813639, 215977767, 484591693, 227224049, 797160976, 199559383, 567143408, 228300965, 175454269, 224925799, 585843963, 436837994, 464837864, 112822934, 45456612, 110255030, 125671705, 388526920, 471540803, 86272407, 263653284, 350105600, 678683692, 235380863, 264426243, 459192421, 552216027, 576265285, 444339963, 137684813, 585179540, 853745768, 711331878, 58315410, 308460445, 202922928, 575402115, 525548611, 193667343, 194632217, 451180843, 122292890, 27477285, 52601157, 88422331, 561291896, 131717587, 555453927, 306906930, 235969583, 243049155, 65237485, 584597488, 398325963, 721776, 427158802, 427158802, 278058250, 185981265, 168875609, 566080754, 504092340, 356711970, 450408074, 52000624, 326010037, 204936803, 194893085, 464863352, 952167571, 685745694, 381753552, 482241547, 438837364, 558422528, 363707903, 107158648, 463235435, 871407502, 675223093, 302043381, 27791646, 411021094, 927687541, 693285404, 86594615, 209911463, 94766620, 195650758, 53481546, 31350920, 491672244, 54548859, 122390433, 253210486, 804625188, 315859880, 15986811, 368720630, 261193199, 518698925, 359333069, 212339070, 481270434, 625633905, 141105436, 744369308, 17384066, 602379193, 401562304, 202783963, 762912398, 540525257, 104031859, 39836080, 275138563, 487615483, 742032260, 861961449, 915127922, 418794329, 260205903, 180835771, 395640094, 40723014, 75231637, 641840843, 7075428, 179853624, 172778196, 796134964, 92996741, 8361064, 539979890, 531618826, 596787615, 108869838, 317137277, 87581084, 265447752, 37558302, 704799883, 677027833, 576637863, 650554263, 229807542, 382621193, 268556271, 362120766, 558082941, 337780229, 322316982, 384295373, 192279576, 57398194, 802174453, 955740864, 13751356, 320758722, 403680435, 117651932, 881278386, 975156959, 423365895, 106049686, 139841590, 458306714, 28169912, 357207191, 359516818, 577018215, 485986443, 381247240, 831468995, 592613729, 111702660, 548076044, 186933161, 277168291, 173602449, 203979172, 88550121, 211731231, 241910461, 289647056, 600119558, 368666802, 104579962, 72396915, 98290388, 114551306, 172234430, 425154203, 428602155, 740404394, 46552794, 601339779, 291442150, 292876730, 718002756, 219127802, 230494720, 126785058, 191146218, 462993531, 616667426, 520172395, 580260633, 331457940, 439332197, 222526260, 225994662, 21040038, 359866877, 159344970, 148282090, 82738398, 167414939, 94860966, 210350623, 142226313, 231136522, 704295967, 776624014, 26832480, 7286448, 720048257, 712761809, 120358008, 528096682, 74129710, 55075141, 600981850, 91386195, 678910534, 470754160, 428914840, 136430621, 356499552, 72414621, 211523157, 217248945, 840795313, 148238729, 324664007, 244570159, 215664879, 139683374, 268557823, 238909879, 47640740, 226408709, 292376651, 48496152, 220714668, 43399636, 140264685, 366752895, 472020168, 196550654, 17814531, 298003819, 449799524, 477859236, 305418591, 179664409, 184103816, 412221323, 305409764, 359193664, 159437654, 675289267, 289443154, 512162242, 151699198, 192350989, 283975077, 160785090, 195744468, 38707864, 139753508, 26158095, 654669821, 199648027, 678464985, 312596909, 540028885, 229775543, 671644181, 190627986, 507683267, 196998915, 437934673, 445549182, 269515835, 229822899, 625486706, 103064962, 121009527, 151134218, 529552664, 521821749, 395910699, 19010776, 84408793, 42615554, 441720416, 236534248, 384511509, 762367319, 180687211, 486243672, 3634087, 256982085, 253347998, 212982965, 217049983, 310516833, 364536511, 406146869, 396838284, 388063501, 628099210, 480701634, 175360321, 477424323, 219406655, 336869732, 253512143, 607301705, 831997864, 289794210, 57530430, 16723044, 19915182, 66010656, 673806511, 89264765, 597945048, 526057423, 77898692, 683142179, 378476293, 106901087, 416003749, 446472439, 30098497, 133600882, 370581103, 460322487, 205464696, 315202181, 524353424, 29297914, 45028834, 313100798, 389674517, 48389262, 702077824, 503296582, 208825970, 56002466, 162211822, 178075742, 279570203, 216272777, 97089888, 124106923, 132238091, 76726440, 362653615, 392540535, 31758909, 159135918, 238114855, 276619085, 26061155, 453140545, 461077892, 211405660, 156315636, 59122832, 631036332, 327908080, 169477514, 184081814, 631991561, 815076399, 471508838, 440032124, 95565861, 17870002, 383585286, 13910450, 199653657, 672415228, 61265084, 546128620, 182974699, 22043393, 566698013, 662371179, 533645850, 427897729, 313204388, 258882199, 742425443, 706718853, 775273030, 673808567, 157584651, 31519346, 283445421, 112690892, 194473796, 18850951, 191434497, 829428717, 370050615, 347902023, 523458059, 71292883, 262866068, 642608458, 509616268, 444410117, 163962664, 208609416, 401117727, 410448563, 190958277, 307864909, 782657661, 779144968, 744291795, 835860973, 219135702, 303344562, 213840101, 830239717, 547302457, 34595394, 211824731, 420135679, 18595347, 185509588, 220022840, 626939610, 29761259, 476592207, 109808903, 23086871, 426943611, 553537981, 437739650, 415976076, 25318254, 453202645, 61439301, 502359132, 393146688, 841709894, 883682198, 505602545, 179313420, 522379766, 72156688, 283795050, 479405434, 704018340, 546656712, 525508888, 101047772, 143580328, 117124545, 584950580, 552047065, 15278745, 66903521, 518225738, 83552605, 361923244, 123179584, 246277186, 316806451, 55291220, 353272959, 714821887, 51535258, 594826461, 19911699, 162375451, 517619986, 594742592, 246936374, 855916553, 706000711, 25528795, 658165777, 305944601, 221804168, 46593874, 669089338, 310140535, 42379618, 45868767, 255664299, 266652699, 67871496, 378306709, 580940782, 763361846, 913900346, 748412491, 22231898, 532600618, 467362902, 151544830, 160993547, 102460429, 105931030, 217549699, 85623979, 665233231, 559973647, 231298160, 299767127, 714348391, 534188151, 79585587, 547220375, 355727733, 435062620, 765005972, 345137495, 115590634, 498115297, 382659098, 121993638, 293893271, 284943608, 139470624, 228672825, 247133887, 23130786, 34470652, 44795319, 321291448, 498266869, 266804882, 443795255, 57281956, 286023865, 196075780, 506619975, 60296641, 198911802, 54099659, 86255238, 693589083, 941840845, 947969278, 411281804, 321588836, 718030588, 718954288, 565055192, 618166182, 649012013, 19262925, 108447789, 838399238, 494833477, 343016375, 253515387, 167310779, 148774412, 177936792, 242808638, 112746031, 349368437, 126550976, 157191801, 438925756, 203902752, 168731108, 150465354, 232420572, 406998512, 189080997, 23860126, 398833009, 12248388, 542014465, 435782608, 229620864, 95058670, 391625899, 472377563, 204913527, 89796079, 217661422, 55211023, 440709257, 653891366, 195258944, 46107382, 294230491, 627878350, 86385239, 612225528, 55141934, 805822467, 79102368, 314372148, 54523425, 1093987, 121266495, 120172508, 242271484, 11843001, 373632520, 170805717, 737763144, 752095672, 498224664, 118296095, 415513926, 783057562, 913821611, 502083588, 328897012, 167103782, 589361907, 219535216, 20642480, 188574379, 463624307, 33635635, 43860094, 313015999, 100962419, 26885815, 101233961, 854975421, 7775390, 529492901, 521717511, 41056592, 48820263, 58717856, 35073479, 31436142, 692258250, 566897235, 228977259, 226440954, 389267006, 233747566, 19089355, 406419239, 538134685, 198822311, 241873454, 256064236, 434997365, 46905111, 545887796, 717278586, 601837901, 666846377, 33894920, 548153821, 172782027, 432812657, 290093470, 182525537, 83578467, 586329977, 230772397, 367744539, 568961765, 363557641, 330516720, 445128354, 283309982, 180674309, 393965137, 501709857, 423491631, 75356801, 274481824, 10971904, 548204547, 548204547, 316045770, 67664213, 152358970, 4455472, 539895644, 539895644, 692706146, 380270728, 283769146, 393986359, 204487740, 554142493, 782065535, 811210418, 248136916, 695803917, 537017616, 158991239, 373635378, 14888111, 359911792, 175418126, 181107755, 200615276, 434958764, 277722941, 94390949, 28735645, 617126824, 358137601, 89610266, 568493511, 72583247, 586317943, 424814660, 510815047, 759898074, 797240288, 400547295, 324532031, 139829194, 408435896, 40943929, 303957803, 221721169, 103908831, 156936864, 236273861, 50226774, 127907852, 43810579, 370038450, 50406720, 767509946, 150847436, 23208581, 515929786, 350995603, 261892740, 6001570, 461804819, 455803249, 310968146, 410337765, 53316837, 273580161, 143769074, 136264341, 37516680, 183688471, 26200036, 874199, 1137380, 321313801, 263181, 321313801, 321313801, 5146845, 262068814, 256921969, 256988295, 907813063, 166407161, 44271230, 348530700, 139005238, 153731340, 251286345, 27814759, 201360077, 309829946, 408545145, 62819776, 18807881, 724610987, 97299917, 38464198, 91705079, 317438962, 167686676, 143054359, 67011645, 81174422, 475801034, 809141076, 548644579, 238762280, 265999935, 684820987, 610686172, 14377365, 592723705, 271767488, 523074101, 847119823, 750513775, 56381395, 570206826, 366996553, 100041894, 381012509, 481012889, 736243794, 1118691, 93158104, 92039413, 178118396, 335175476, 2290198, 195929442, 193639244, 322633111, 174947703, 508058526, 203506385, 140309603, 249609608, 160871613, 680361967, 710792684, 625258426, 52606771, 278104922, 228613788, 111915962, 204895791, 151469157, 142364998, 289102918, 369332348, 164588073, 180669875, 1661859, 438090803, 438090803, 440975088, 734059876, 875206545, 640516558, 572574697, 127083681, 653512913, 597065153, 111838773, 32692999, 526468867, 505832967, 484771110, 554416591, 212387977, 42997538, 150669727, 260296304, 304788902, 590587517, 683188046, 483443239, 350759410, 20789425, 560903466, 615298676, 854654921, 145455256, 198105831, 231206101, 12306159, 117227193, 530734426, 231334511, 147400615, 378915346, 48235272, 113979733, 383934243, 830609004, 853197515, 135598357, 807064939, 334356727, 333721413, 579518932, 475338556, 689471514, 25832652, 595122212, 400808791, 171225105, 247270679, 441677145, 144044512, 86587630, 284035231, 167824561, 274695081, 214715942, 79287793, 336600438, 123694904, 155399760, 274183263, 296771724, 518981787, 421505521, 2341663, 478075750, 478075750, 134948799, 347099869, 18474022, 159738797, 149963161, 783079440, 448460463, 109755354, 351563313, 363349257, 38142423, 48455451, 1584086, 387442571, 385858485, 727300845, 662935375, 482811158, 179045711, 246455257, 302401767, 723448589, 693918786, 278920871, 145180082, 607484600, 735804194, 672534921, 95218460, 173371310, 414280909, 773937230, 324541143, 130369473, 114611590, 197518131, 244731727, 572895857, 269833440, 378878372, 260967786, 413180930, 546890830, 104801511, 545147332, 34594294, 4886184, 124572000, 124572000, 71082038, 419005783, 208754937, 249714839, 426337236, 288170194, 133071843, 23898131, 337213115, 251389442, 323934164, 529466984, 245377937, 33057166, 351938796, 347833541, 615959349, 643497308, 222638842, 94940132, 134309465, 153907930, 48000426, 705406016, 38719847, 925328735, 813190295, 204032956, 303350074, 197708172, 52092434, 9672417, 406911924, 397239507, 3801291, 226201017, 226201017, 146194324, 627331919, 358461285, 256444857, 137894565, 550060655, 410204886, 44964300, 539412642, 498921746, 438299816, 216063449, 82895359, 286731021, 322293729, 287143988, 338442457, 128598412, 149190223, 32292339, 20113124, 786644563, 4172571, 187480939, 187480939, 17393670, 189149529, 246317046, 137646072, 99749619, 134446283, 198823685, 81514221, 55421980, 692105115, 469423157, 423652970, 64519840, 31539511, 409602635, 443697016, 235737088, 65021883, 281485427, 292815417, 181010032, 645536535, 31750118, 120951840, 403008352, 22229631, 344167436, 105727640, 678927305, 381127180, 400933653, 436271254, 155780530, 387830040, 389174626, 68867005, 76296960, 207573911, 104863578, 681105612, 433830510, 184001421, 482648046, 447414036, 119000688, 54887602, 206456742, 114695184, 512777888, 20139070, 248915497, 626377905, 37025598, 398390409, 10070961, 249944176, 239873215, 747000945, 549655170, 426983911, 460888850, 11281288, 29633506, 154816526, 741360963, 492785637, 290417886, 405843487, 252116641, 420235000, 213644406, 185645142, 355572650, 189434920, 169985783, 448764251, 73499602, 427570426, 334792774, 300021857, 593292970, 673547560, 544574621, 405776298, 510542145, 106036599, 311150766, 249291417, 249921620, 40664210, 53155393, 348977303, 340497391, 177818851, 521430023, 41824277, 213455404, 102670077, 379091593, 482445193, 66025023, 499182165, 304182571, 178830277, 454084557, 602084981, 564524655, 120878584, 757887337, 48701457, 15995357, 87879517, 321039209, 314929876, 1813079, 625928342, 625928342, 546719897, 376934368, 319904161, 15644605, 382362664, 1960106, 183145044, 181184938, 175569457, 534254836, 218991931, 5368262, 24063582, 24063582, 443883115, 411974442, 57570717, 583727331, 438405408, 339417602, 8030293, 128332932, 120302639, 520382161, 1200471, 412555113, 411354642, 365466945, 279887358, 616209602, 265905021, 97287943, 34697745, 197194252, 255442093, 82043791, 150552813, 262560269, 832308428, 76914818, 535335047, 5095459, 551202990, 546107531, 800633182, 550360952, 12484473, 456763794, 137641992, 430957804, 174342124, 547441832, 409504756, 692284429, 644400923, 405329127, 490851102, 249328866, 122920464, 158408116, 185087499, 89680066, 366870761, 552459780, 587934081, 325352914, 374110148, 619524223, 137126131, 110182162, 692180525, 742904799, 74965234, 566296215, 35894617, 340195605, 82756926, 81444383, 86407482, 168610157, 361244186, 205716183, 195637248, 300767670, 54360573, 654268984, 241772087, 381614234, 109407255, 58488771, 356245063, 245876181, 395082538, 338164503, 296855552, 339436417, 64051114, 236811135, 74680919, 76557050, 45505720, 822084082, 423472375, 44559420, 207358716, 193505260, 333126974, 347405232, 517969127, 187311263, 388884356, 108921813, 259396921, 487465217, 550972501, 127338966, 591355289, 90065691, 133561466, 70163730, 215628842, 622533739, 565021778, 391756994, 425020308, 354969956, 336361454, 47547674, 481857455, 477118764, 160909066, 494521553, 906598895, 373258428, 29126991, 473185789, 786966237, 698124099, 42838309, 144401837, 246681686, 569471905, 550025534, 527848315, 340319423, 413520930, 375986363, 357616057, 334074533, 178605535, 176347705, 138425438, 455459866, 862653329, 30105480, 510769905, 133102929, 578099553, 43930890, 529840598, 71024388, 111781241, 719710621, 105933573, 153841416, 492707310, 52943677, 212933073, 137795349, 94029723, 165812921, 352647522, 47715665, 863962641, 564532033, 526793191, 741018181, 236211225, 46378184, 39211320, 254966033, 462247273, 9451109, 480836736, 480836736, 543049235, 16984828, 325871535, 464227550, 410363453, 231005257, 391138965, 245890001, 94265213, 56597617, 177318752, 526822380, 567171644, 97560659, 253267706, 357765869, 464944539, 257030450, 202912000, 140307317, 424542656, 855247485, 262582017, 11721401, 302258261, 292655723, 383090215, 14751217, 168781667, 758553704, 745711249, 875110304, 241602738, 320471276, 174435561, 167597709, 318320812, 782874818, 45400040, 59420209, 35558110, 931601053, 822477103, 655212364, 431608383, 226332772, 16300855, 59204731, 51824272, 313973245, 56992304, 305841088, 246624669, 144866743, 548726815, 553899751, 323277696, 296894184, 563058531, 293092659, 127070213, 481000165, 272405291, 461529161, 390990963, 413389140, 603506928, 110040692, 365132550, 565932385, 214983559, 302254755, 141343812, 8839180, 127889875, 127889875, 365526744, 106049978, 362132019, 746084433, 631635514, 61298912, 171635815, 457188056, 18947625, 382865129, 398117540, 490299069, 330253943, 154381209, 69935229, 507592321, 176790818, 387575406, 562708901, 345197143, 294888936, 378833483, 604182960, 285321295, 64704902, 162108143, 300550500, 119864555, 421020036, 376093565, 209654317, 101953390, 285444175, 612888215, 142836036, 727950978, 932665005, 447178731, 327370316, 468100153, 109216149, 480847001, 347887156, 458135808, 578324662, 669296987, 24327395, 315870181, 271376691, 665886025, 234474217, 139360923, 1197146, 806555133, 806555133, 157041555, 123094355, 110983180, 629349951, 275291230, 20295818, 58505184, 247858573, 667829717, 486776360, 168848050, 154086207, 550777609, 265485634, 447381938, 779163441, 820255873, 89822973, 351664635, 47580243, 156167922, 284454141, 92757696, 33046837, 576322960, 469673972, 56308307, 690414375, 619265338, 512905328, 96896610, 329001973, 325030645, 482072896, 432668223, 452255587, 459789489, 225347940, 326242952, 72503281, 85435727, 44868486, 474582383, 29452027, 367383131, 269059107, 187754934, 167534750, 637299011, 809758172, 308633851, 193041707, 601282527, 166437249, 306257366, 758497908, 40366631, 416984916, 165982950, 86244210, 104332101, 316316574, 865194060, 266214589, 562835727, 579780925, 109899547, 160363703, 172330587, 163496614, 180179993, 443474526, 453970742, 102191224, 510948499, 562516967, 665439384, 235892209, 190768822, 593770268, 438108459, 107933455, 262473942, 85891157, 694055251, 127848392, 185069129, 515260863, 723702040, 898277536, 656837564, 686821519, 507577223, 6118024, 221374138, 221374138, 248005677, 417708157, 746655530, 208862509, 412174717, 76109409, 303710826, 163366879, 62808442, 592457493, 226181069, 88367143, 29386065, 386091727, 73817621, 506674557, 43886001, 790712314, 7846441, 693592721, 685746280, 5764149, 622970388, 617206239, 133968589, 143288523, 722191449, 602370143, 423315107, 244950789, 543991315, 60404968, 902006295, 526858271, 65607047, 191221963, 210111228, 236355658, 556342889, 618744708, 27946138, 270532865, 191467465, 280861753, 179895351, 80008359, 39739167, 228746857, 722235907, 608105492, 169490985, 693733153, 681826019, 312876136, 238264714, 3018821, 562352199, 562352199, 800859079, 885661900, 330551648, 586785910, 551007113, 195617109, 201756028, 238549118, 403219773, 22254229, 189049291, 415617609, 263602434, 327607613, 28676963, 560607052, 600038937, 191521224, 452696498, 918113898, 304782032, 313304033, 675245963, 22256058, 600080319, 308417110, 212903220, 60161164, 183236853, 322334460, 489599672, 485773704, 264434256, 728831129, 197676124, 40739335, 306251662, 162332630, 330024603, 374318956, 782688558, 704175977, 110150642, 366118327, 513288744, 304879150, 363314454, 442407236, 356262531, 663789128, 560607782, 396752669, 91271793, 152640576, 44558161, 408867020, 91512555, 240301552, 176443762, 410412749, 73357633, 633162599, 126937592, 42113755, 228103979, 91549678, 545078983, 381905505, 114073708, 610639561, 868562616, 197767581, 101751381, 47207201, 296934161, 122846179, 12082070, 373831952, 79290802, 419351281, 137861755, 274994729, 6862639, 155794058, 148931419, 611201466, 703904370, 223956468, 421877056, 876898610, 21490275, 254999758, 192975644, 214438080, 555762847, 831302633, 321276528, 104360630, 315100115, 435797627, 459546598, 35604760, 745425771, 64040463, 58082136, 440466904, 47980246, 219036695, 818512620, 221282770, 223209134, 243393264, 694114652, 727535196, 73675191, 658544865, 391471250, 176962528, 173116650, 334183071, 94993453, 322658009, 187208399, 499906057, 460426255, 298999769, 11627267, 348466519, 769815481, 587297587, 667657693, 92303843, 819448967, 764369084, 810847514, 654772289, 462934988, 9039173, 264832052, 264832052, 31043237, 180177406, 26649097, 677934302, 646261147, 134975156, 383384717, 811692533, 317390598, 292312950, 412972888, 54132267, 316963466, 114325721, 134352469, 824740685, 382245631, 430890478, 78955997, 373362648, 171128494, 342921503, 599408363, 421505108, 683586866, 369371475, 336035255, 410503070, 384051572, 385723646, 126532216, 193567043, 235714073, 152948567, 384690812, 684590450, 309296790, 335505388, 500375825, 506340229, 579737657, 503834932, 34174395, 392450144, 12303445, 441065126, 150123952, 600702411, 13238848, 836392645, 36317837, 30798123, 670305697, 5171544, 189565141, 189565141, 121372109, 110934931, 233611648, 48289393, 188998073, 572043049, 559254845, 219345874, 455979626, 108011305, 568264883, 97809774, 154219095, 321111269, 51978094, 174514284, 102159504, 486529798, 264129517, 347999225, 153063276, 5742939, 383487782, 383487782, 650668025, 87055748, 463406699, 654021481, 53627044, 83010388, 329699002, 380779634, 209157826, 138082541, 281752056, 831465595, 744873216, 403071208, 155362815, 319944980, 339994833, 466315438, 809218387, 342457264, 317853953, 664705329, 482572564, 208581851, 331452773, 590557169, 567155307, 58824787, 401599086, 776858734, 231893992, 658168440, 805785198, 526684101, 208858492, 28926105, 36400377, 304974709, 118648158, 283071977, 324993514, 244019933, 130880773, 181516817, 98300937, 276822976, 112448526, 245156070, 606922161, 73411515, 572193029, 295008045, 105958670, 332578378, 108600199, 230148857, 447824266, 2762524, 65035738, 65035738, 752985269, 537755261, 57370661, 307797284, 167335980, 441990896, 32049242, 32025301, 479007403, 67827980, 317813264, 605337697, 233619540, 743094694, 343999580, 415314099, 608484222, 51273048, 167488301, 623484931, 684249501, 110927539, 552922681, 119305477, 778556142, 453426362, 27091306, 424845127, 657055953, 777859560, 940660769, 474288371, 52474023, 24046270, 391438064, 387904728, 294244529, 573099493, 367545975, 34020403, 261186542, 633380156, 258162658, 362976157, 541867585, 277744185, 73174907, 312290404, 131735031, 337009709, 46240165, 39217510, 55742286, 79372041, 434764839, 312988904, 185973688, 86981449, 313720011, 125912932, 400271514, 416529220, 385118791, 115149943, 104703119, 532920986, 886273025, 92986805, 745008377, 120353240, 23870865, 531448689, 67982255, 56390015, 604694638, 497193143, 117862752, 320835243, 864779292, 313818418, 329047114, 88786510, 150145396, 164160761, 72233096, 383893064, 34466566, 257134006, 269940408, 271521387, 443553673, 376354481, 211203090, 258629637, 640988612, 385048715, 133629003, 313103107, 249646592, 210757255, 202094202, 470399385, 269249980, 665062403, 886944658, 714975051, 112069247, 257918386, 246948330, 635804197, 91502066, 700529973, 576973098, 75074203, 380660702, 310220580, 806048442, 167310939, 300388112, 115880890, 171057959, 156206919, 521259097, 300797684, 129055416, 529197150, 477635358, 567550340, 32276197, 453030157, 557714718, 91330548, 467891156, 40422367, 333094784, 653798401, 5944862, 445010380, 439065518, 291169279, 93228225, 474050124, 228234616, 336668628, 346178712, 206087992, 297345936, 73312727, 350083141, 9651934, 149455928, 149455928, 77325434, 89960575, 445707213, 213904789, 528454036, 217074215, 713963727, 497576588, 84467683, 375003353, 340539858, 447521084, 523162492, 200557347, 602701726, 9788356, 355969415, 346181059, 93526636, 375030205, 921326813, 479719057, 226128043, 98823956, 113146421, 423227088, 651183717, 522348273, 107983871, 97709025, 35098756, 345466475, 607547104, 266611157, 247475852, 110522017, 307014000, 125937252, 700775053, 37127169, 131799063, 34911672, 292982954, 23942181, 243457759, 59787092, 303319196, 16638704, 172241903, 258725749, 256791736, 18302967, 337459701, 359914032, 127825439, 586200158, 20190375, 268592394, 523728600, 335307199, 14503971, 267764846, 429834826, 782708143, 902599332, 206022103, 693228775, 462999324, 478692214, 532622655, 110027723, 192800332, 308632167, 4115254, 333471075, 333471075, 168842681, 522602110, 393774187, 162015310, 47483508, 284123064, 127779200, 393590017, 331008247, 43125117, 414790521, 507242425, 530249776, 798727831, 695364355, 81428151, 422139606, 270349370, 327787883, 139699680, 738481761, 654620355, 86477717, 394315011, 40304106, 138143014, 835165324, 191495180, 794044757, 507663173, 344988332, 110145688, 325924465, 383853106, 115812476, 3497318, 143441486, 143441486, 363632156, 228298961, 182824858, 647257042, 574488074, 406565566, 79341762, 82762072, 202552590, 512456200, 434918220, 196277066, 609295062, 112368744, 239861618, 529746517, 161439812, 211906185, 841472911, 828069029, 66698590, 362889456, 59056545, 29894961, 415076592, 311127634, 163234908, 210048303, 63931854, 55181627, 725684864, 263488072, 543005943, 251093867, 376757565, 574642068, 590686926, 753585181, 234887900, 128159045, 146956531, 152681627, 314305524, 123226373, 578788010, 341387252, 259475542, 354503287, 548570712, 345741133, 75436208, 362328743, 173686087, 438366885, 807929015, 180515825, 199779140, 270419430, 281634912, 524254611, 13395629, 313276061, 541945200, 387157348, 105612951, 252241977, 391792217, 878650020, 81268553, 726523897, 38501284, 34076379, 181718488, 305753546, 288917826, 37950622, 557510661, 840874482, 150674641, 268042571, 513361843, 905462592, 637123278, 47466808, 180857243, 222257338, 74590499, 649443218, 820218752, 420089560, 478202995, 115384557, 67559172, 337175314, 107445317, 484477443, 440980998, 202126273, 44358520, 340870293, 427078914, 155598852, 593321620, 372449179, 324170493, 147524303, 375649967, 295846351, 376299249, 271490428, 495777809, 853848847, 703166271, 211167950, 143838014, 30601224, 150023290, 522851026, 247202588, 167665833, 68254275, 517619901, 189564710, 200186905, 213887785, 202042953, 717724776, 65404478, 753983862, 323749849, 199311365, 265159117, 126507870, 129361334, 337458732, 275291323, 157162523, 544443211, 223912567, 185492325, 490602113, 317247935, 336134311, 654344277, 106797178, 689729169, 285961468, 334037029, 409957100, 229141835, 78192823, 166458810, 734301072, 130074172, 389239048, 176378057, 569722960, 60489114, 86998105, 689358266, 623712611, 841929874, 712274600, 172501382, 171514553, 539457830, 29954511, 550421387, 810138244, 899623198, 666747213, 575423335, 656844792, 66496493, 200804339, 245196600, 99825923, 70972566, 430557001, 568450708, 463616143, 326614475, 25868849, 313430963, 96748196, 250687850, 491222340, 189059997, 11326461, 326181140, 460452782, 314346051, 225411433, 442518997, 40905795, 597208440, 218175990, 32407662, 416972167, 206421693, 34609411, 365347338, 218929, 654406969, 654406969, 74630868, 712086649, 707571722, 290695482, 317365475, 841525397, 647864074, 80270985, 733134045, 805262778, 451319879, 150946030, 224116923, 216002641, 762688282, 109293707, 98047501, 539422653, 831567332, 87075714, 803491412, 25132566, 663184988, 42129056, 315326751, 229445124, 114801337, 244864726, 71960590, 390016611, 204922746, 40085119, 693920141, 608780531, 26160469, 250037045, 873618991, 539388152, 62350482, 111475684, 314406766, 330907100, 249582864, 266417109, 535731292, 678229259, 44766614, 263243756, 45513152, 115790028, 152406251, 367245657, 27967474, 531757507, 232094584, 538189487, 138549777, 462482735, 343086787, 514236315, 191627407, 851237173, 495869655, 322385770, 119609919, 281151234, 335289864, 344504243, 372541974, 115535661, 353622297, 726058994, 433119721, 145961219, 362398656, 235711977, 647873883, 755901920, 138480422, 298363852, 483255587, 305023828, 18084966, 24253448, 226448177, 275736528, 391983343, 530393975, 150618466, 287293800, 449727350, 148609477, 142541944, 620658836, 88067592, 148578517, 48877383, 420172386, 359212208, 23594884, 18391567, 115997161, 265236880, 951033276, 866648912, 139711361, 71145813, 725299178, 793726883, 52139127, 643333941, 715021161, 126741341, 141858676, 442113039, 590221128, 447944410, 287153418, 214241834, 554974132, 339400122, 141773746, 654339300, 32500705, 598901585, 71879133, 320296002, 382631467, 97147137, 75788071, 86643624, 403431844, 302842129, 231805135, 255008241, 438423610, 35395493, 376172551, 257843047, 149448075, 722737703, 466101105, 299097266, 792525936, 841515319, 783571187, 241856547, 335746704, 242306730, 551735126, 184498246, 115138673, 75235750, 313611857, 688577735, 17464847, 329243156, 98687393, 213565079, 473553543, 465834005, 605493811, 461632745, 664786469, 447141431, 156226185, 494974189, 460348759, 38243609, 375878867, 725775797, 188627810, 77578412, 265277238, 79156962, 41987454, 138442233, 390241167, 21063760, 75259659, 51244199, 73996963, 643978977, 558561952, 74685713, 256755116, 77526985, 5484323, 367969566, 362485243, 206899129, 487583659, 521930263, 190675034, 23358999, 795451483, 812910879, 30628425, 554377968, 566447482, 328846672, 298655189, 448083900, 228189099, 643407350, 33840040, 496666604, 43639643, 10268056, 13936480, 3668424, 55133037, 55133037, 52956261, 55240439, 270312257, 27602979, 173833342, 506908739, 60086729, 525343160, 734817617, 876923743, 624135840, 156321229, 64318485, 48732650, 454329823, 366976479, 480807446, 701397322, 503365559, 176678304, 78733879, 76631500, 294983342, 46021579, 305442147, 813985265, 318068544, 246448232, 329979201, 39522330, 41510708, 17166853, 33670422, 35688095, 54754576, 144641326, 166575577, 228018669, 88823387, 479073479, 252275378, 200643077, 15040290, 694997366, 570975427, 47771442, 374520857, 461540035, 396900204, 536349404, 637046720, 314976315, 488136574, 226757319, 524290967, 738577651, 675696921, 533552216, 637849742, 432788955, 574334544, 15662668, 27810837, 487042261, 80455249, 402561834, 227793401, 226049362, 13761729, 337486870, 132230920, 333281329, 462211971, 143493118, 493246819, 515091430, 684786296, 155371466, 471407535, 221119460, 450804741, 434872446, 304126423, 335504952, 663329325, 65804034, 357335546, 117303412, 401441135, 449327130, 177237897, 194161741, 488069073, 530424584, 721050045, 319535217, 66849391, 417182726, 23237751, 879548580, 414918997, 225188158, 398378742, 41660788, 7055065, 319407377, 319407377, 530003057, 139057595, 372745971, 305542141, 41569534, 331322532, 48403418, 171373990, 39301943, 585421138, 721279838, 190617151, 118765069, 18506142, 428738902, 250652874, 223412891, 220349346, 447823765, 595972458, 231317928, 265473008, 120613155, 229709275, 239897518, 273675824, 94364082, 499639545, 537527276, 250427164, 419658376, 408097181, 190291773, 282356860, 495892474, 406274260, 222849431, 673379514, 781401899, 58054600, 84138 4