200000 584954599 414176665 219019040 864540415 322422557 587716830 426426559 491519133 202926042 378988244 344160114 7768417 547244141 565739079 792001827 373824073 527788427 269099489 182269358 9209581 850248872 493800976 143958415 574506160 404689002 644282517 805212497 252406006 391598429 717661784 959537142 36351503 707093248 300925194 290236561 932155026 840280821 420181515 111892516 864900706 788398917 413696277 660255418 448884698 342118465 258290759 941042204 613417588 445882273 855893431 974669364 379348535 801849781 568861601 121860567 580991398 834996553 78385453 389556780 806653661 718262269 470021770 515538533 814700160 234391456 110331255 546523559 76223707 863339445 809055601 704451114 18937438 954012680 244119313 359652627 958095978 10410551 207009340 359892821 899128351 379708826 469060994 846165574 905253298 264775997 56767993 424384910 546763753 634914951 464857599 278707249 669863178 442500 309452081 581591883 580871301 475065844 390157265 697845779 243398731 691000250 117897366 126304156 600086821 530190367 106728345 776989702 35630921 834756359 882314771 53044986 748526713 957735687 429909372 925429594 385473482 96520100 936118227 641520286 140595699 7888514 686436564 607052447 101924465 311613827 525506584 95199033 170259658 343079241 23140833 533432986 199683423 246160962 605130895 398323861 370341260 216737197 535234441 392078817 409132591 525026196 201364781 19177632 343199338 485754477 699407040 38873540 839199948 446002370 977191401 784555813 679470938 249283484 149963265 247482029 767261845 593841777 980794311 928432019 653770180 258771147 773026501 69978663 582192368 830913255 897927381 150803944 207850019 703490338 390277362 517099794 786957753 896005829 948968606 622665057 314856446 870545265 972747812 422703552 844364119 886277972 519381637 810496765 375025043 472303613 743722833 711656934 839079851 121740470 882554965 756933503 500166117 469181091 992804011 206408855 896606314 44398002 488156417 101684271 609694581 678750356 235952717 191997215 859015953 149122586 642120771 117056687 990642265 269339683 752850205 931314347 667941626 620623408 829832382 371061842 701808980 969505193 809175698 500766602 376826498 635755630 681392490 243278634 78265356 795604737 816501615 118497851 517339988 753570787 847006253 827190248 199323132 72620797 950049479 362054567 48841591 631191944 55807217 53645471 885197099 762698159 604650507 53885665 491399036 668542111 43317129 200524102 790080275 756933503 319540229 758734958 668422014 221661174 396162115 312934894 569101795 195720222 577628682 572584608 554570058 705411890 459092943 238955142 163053838 394841048 519141443 935998130 664098522 653529986 806053176 386194064 660976000 732914103 184671298 486354962 394841048 956654814 384993094 712377516 337074391 890121076 498484759 543881425 410813949 451046444 444321012 592280516 920385520 118617948 869824683 728950902 231148837 535354538 479749627 556251416 823347144 424745201 27224131 213854869 863819833 690159571 203766721 109970964 689919377 895285247 990642265 684515012 819624137 319420132 463656629 323263236 958936657 545923074 284592002 177465478 80787393 645123196 404208614 628669907 279067540 295160538 515538533 691480638 710816255 275104339 876309921 691720832 489357387 597324590 744563512 398924346 271381332 992323623 409012494 594682456 85351079 884356420 720063724 112613098 183350231 376706401 561175393 883035353 294079665 291077240 335152839 262974542 415017344 578109070 768582912 725588186 967943932 225504278 586635957 54846441 655451538 955573941 750568362 764739808 120299306 632513011 230308158 893723986 572704705 995446145 712497613 164615099 919304647 378627953 338995943 914380670 2484149 727269544 578469361 979833535 913539991 259251535 535474635 716460814 548445111 772065725 116696396 622905251 140715796 131348230 606211768 222141562 421982970 529349688 958936657 549646081 800648811 423304037 856373819 35270630 211212735 590479061 36831891 33829466 368299611 295881120 506050870 925309497 677549386 408412009 682713557 727990126 441198490 273543078 700728107 770264270 627829228 318099065 872226623 410453658 718262269 916542416 606692156 879072152 203646624 428948596 605851477 444200915 565498885 281229286 368900096 168818494 432551506 598885851 97480876 801009102 383431833 408171815 854212073 15454625 98201458 345721375 595042747 859856632 790920954 539798127 304648201 806293370 891201949 186232559 682113072 496803401 29385877 160651898 173502277 384152415 715860329 951850934 706492763 403848323 526107069 888679912 592160419 651007949 592520710 70459051 585675181 939240749 540758903 654490762 465337987 294319859 323383333 7768417 962659664 390997944 317978968 869464392 750568362 796445416 43677420 344280211 775068150 817942779 428828499 926990855 879072152 494041170 512055720 922427169 451646929 511575332 210972541 652449113 807854631 126544350 867783034 24341803 236072814 24822191 900689612 182749746 664458813 312574603 45358778 557932774 314135864 445642079 245200186 343319435 125943865 666620559 517339988 740119923 664458813 808335019 994125078 337794973 756693309 700487913 317378483 479509433 789359693 678630259 693882578 369260387 317378483 820825107 699527137 655091247 799928229 215776421 545923074 976470819 598405463 958696463 356169814 377787274 832354419 187313432 720183821 412615404 905853783 849408193 215055839 202805945 279547928 606091671 919424744 378627953 378507856 254087364 758734958 259491729 328787698 916422319 111772419 353767874 267057840 927471243 831633837 205327982 748046325 51363628 364936895 784075425 170499852 593721680 755492339 428588305 424505007 714899553 411054143 513977272 423304037 821065301 51363628 441798975 570663056 606091671 836918105 305849171 53885665 639118346 511575332 970586066 372503006 505690579 996767212 39353928 977911983 224063114 320741199 390877847 720784306 274744048 118617948 87512825 547604432 452967996 454649354 730512163 705531987 583273241 601167694 375265237 237513978 440477908 392198914 804612012 58329254 787798432 863579639 131468327 536795702 78625647 411894822 687277243 415737926 13172782 827790733 526947748 691240444 678390065 426186365 757654085 224663599 769303494 772065725 596964299 750568362 327226437 271741623 979473244 202805945 38393152 408892397 624226318 165695972 828871606 699046749 50643046 434713252 454168966 75863416 256249110 63133134 826950054 917863483 434232864 591439837 159571025 561655781 461374786 561055296 743602736 311854021 968544417 834996553 243278634 145039288 584714405 797286095 857454692 116576299 152245108 304167813 201845169 517219891 599126045 650647658 764379517 418500157 802690460 617861177 285672875 411894822 379949020 16535498 648005524 443960721 968904708 364456507 357610978 756573212 950890158 326866146 749607586 934797160 742882154 378748050 128465902 389917071 704331017 615098946 367218738 268378907 245800671 151164235 687157146 428348111 721384791 211092638 457531682 99522525 16535498 658694157 255408431 32028011 369140290 858415468 335032742 641039898 180708097 573785578 312454506 285672875 152605399 7167932 41155383 795004252 844003828 94358354 957255299 183470328 532952598 763899129 587836927 964941507 969144902 833555389 381270087 438196065 452007220 103125435 372142715 809175698 682353266 488756902 865140900 520102219 441558781 529950173 313175088 508572907 996767212 500286214 933596190 830552964 983916833 402287062 36231406 240036015 129306581 326265661 464377211 88113310 18937438 654130471 784555813 843643537 892042628 130027163 369140290 144678997 557332289 521543383 330829347 819504040 131468327 61932164 309211887 538957448 35751018 37192182 944525017 898407769 614378364 929632989 708774606 197881968 520822801 817582488 678149871 599726530 831393643 928311922 956414620 201364781 749847780 435313737 50643046 60731194 46079360 408532106 719943627 290837046 682953751 823106950 512656205 292158113 907535141 872586914 119458627 880153025 708294218 248442805 154286757 624826803 427387335 818903555 519741928 634794854 731833230 322542654 544722104 714779456 811217347 248923193 158850443 134710946 634914951 524185517 761857480 512175817 310052566 733874879 887719136 370461357 447803825 181548776 474825650 243158537 290716949 61812067 403968420 509173392 911858633 847126350 460293913 781193097 539918224 758254570 546883850 247121738 151044138 762337868 98801943 870184974 979833535 49562173 125703671 699046749 893603889 517099794 281349383 180948291 680431714 211573026 439517132 785156298 900329321 945365696 956174426 506531258 262374057 481430985 759935928 281589577 80307005 218898943 800048326 219499428 257810371 199323132 135431528 384632803 672024924 764980002 741681184 687157146 220700398 890241173 120779694 391478332 329508280 381630378 396402309 170499852 933235899 924829109 585194793 918463968 243158537 488636805 758734958 333231287 981875184 214935742 235952717 654370665 663738231 611496036 55687120 280148413 595643232 521303189 186592850 692561511 32268205 492600006 405169390 488396611 338395458 735676334 229707673 216617100 712617710 808335019 585915375 165335681 961818985 612697006 144919191 310893245 122100761 246641350 265736773 789719984 58089060 57368478 872707011 610054872 972627715 802450266 116816493 678990550 140835893 771825531 998808861 421502582 877630988 160531801 611135745 957495493 841962179 504129318 33589272 263214736 432791700 429428984 333471481 833435292 464977696 271021041 370701551 105887666 683434139 501487184 436634804 532352113 323863721 207369631 977911983 104926890 426306462 593841777 926510467 517940473 150924041 594682456 656772605 621944475 630831653 723186246 641640383 998208376 331309735 515538533 275104339 172781695 180708097 740480214 146840743 596844202 946806860 161612674 978392371 286273360 110691546 718142172 783835231 615339140 904412619 548925499 253486879 955213650 943083853 714419165 439997520 211452929 616540110 329628377 435674028 938279973 193318282 70939439 345481181 186472753 789359693 803170848 921826684 86311855 222501853 752970302 92676996 491519133 601888276 820224622 12572297 351005643 77905065 476507008 14013461 348963994 761737383 152965690 9089484 569702280 618461662 393279787 668422014 623385639 893723986 452007220 208930892 554449961 813979578 504369512 295881120 218898943 422223164 77424677 233070389 718382366 63613522 939841234 224423405 4405701 161492577 280268510 42596547 188634499 864420318 239195336 602728955 776389217 584594308 15574722 560695005 67336529 790440566 60370903 435914222 999889734 802690460 653890277 317858871 984277124 651128046 982835960 684394915 853371394 459333137 217337682 581591883 188754596 362294761 658213769 975149752 854692461 932275123 470141867 283391032 147561325 31067235 491759327 369620678 500526408 639598734 922427169 910057178 150563750 838959754 628790004 155848018 741561087 527668330 779151448 364456507 331309735 173502277 691240444 721865179 7167932 146480452 495122043 103245532 370461357 882915256 747205646 183710522 61211582 453328287 594802553 685715982 558052871 301765873 733994976 245320283 155247533 579189943 599366239 97240682 962899858 378507856 631792429 405289487 835476941 908616014 724387216 467139442 756933503 478428560 555410737 263815221 495362237 628309616 861417893 384392609 753210496 943203950 706853054 781793582 503528833 2964537 98441652 927831534 517580182 526587457 565739079 158009764 842682761 63853716 872226623 999169152 786597462 911498342 767742233 945966181 735796431 140715796 806293370 129186484 879192249 841721985 945365696 206649049 788278820 245320283 301765873 23741318 879312346 120419403 950770061 962419470 334432257 374904946 149122586 921226199 124022313 69137984 859496341 183590425 499805826 404088517 759335443 966142477 572224317 637316891 381750475 301525679 996767212 200404005 980794311 810016377 479149142 322062266 246641350 761737383 441919072 467499733 259131438 210251959 821425592 686076273 595643232 378147565 789599887 614138170 644402614 805572788 686076273 110811643 926270273 505930773 315216737 978512468 657493187 656772605 39954413 369620678 408772300 66375753 946806860 263454930 733274394 857694886 910177275 9930163 90154959 130747745 698926652 777229896 509293489 713578486 357250687 234631650 748526713 607052447 458012070 774107374 781313194 882795159 16295304 171700822 106127860 610415163 964941507 683554236 775068150 364096216 717661784 869584489 530910949 423904522 12932588 624706706 36711794 37312279 750568362 321221587 402407159 611736230 246040865 926990855 19537923 255048140 163654323 885797584 599126045 876069727 14854140 639478637 781193097 319780423 820584913 790320469 593241292 600206918 540398612 230908643 994365272 107929315 153205884 188874693 501847475 146480452 92436802 469060994 617380789 579550234 747686034 251805521 900209224 520342413 858055177 261293184 29626071 661936776 632873302 23981512 384392609 117657172 314376058 842922955 991002556 59770418 258891244 482391761 934556966 244719798 339596428 521303189 386794549 838239172 802330169 218658749 67937014 182149261 329388183 672024924 798847356 462575756 196560901 683193945 175664023 910297372 898527866 583873726 826950054 965061604 282550353 341277786 756092824 492840200 468820800 180347806 535354538 398804249 183350231 524906099 317378483 293359083 462335562 332991093 366738350 554570058 448044019 443600430 45358778 597204493 999169152 241957567 782874455 760536413 370221163 684755206 316177513 523224741 227786121 351486031 502327863 991843235 554810252 62172358 606211768 72860991 443360236 900089127 250964842 764499614 113934165 675507737 799928229 872947205 501847475 926510467 464137017 300925194 765820681 312454506 680912102 203766721 2724343 91836317 93157384 53285180 375745625 353767874 140355505 686196370 514097369 749247295 25903064 290476755 501246990 788398917 540758903 502688154 197041289 793322894 911138051 735075849 173021889 526827651 640439413 776989702 245440380 959296948 587236442 866822258 720664209 526947748 9209581 405409584 752249720 895765635 561775878 719343142 442759751 590959449 71780118 381750475 539798127 912819409 342478756 341397883 66015462 530190367 393760175 72140409 236793396 212773996 314496155 339116040 774227471 306689850 439036744 160771995 943203950 49922464 996887309 199082938 377306886 814940354 500886699 119338530 764739808 10290454 652449113 417539381 844244022 709134897 22660445 187433529 90034862 888199524 841842082 725107798 641280092 181188485 604290216 689438989 808094825 458132167 391718526 453928772 403488032 415137441 462095368 172181210 500166117 360733500 964821410 159571025 763418741 701448689 834155874 712257419 746845355 742762057 426906947 553969573 813859481 976590916 140595699 747085549 802570363 919064453 45959263 547364238 597204493 617380789 214095063 14974237 790920954 430750051 764379517 323263236 946086278 542920649 375625528 84030012 737357692 20498699 642601159 661336291 730992551 26143258 327826922 7167932 443960721 941642689 54125859 914620864 914380670 715019650 233190486 566699855 618581759 542560358 868143325 331670026 645243293 462695853 629030198 84510400 281829771 412855598 860577214 895405344 361574179 419701127 937199100 836317620 708534412 312934894 447443534 862618863 266937743 542320164 749847780 122701246 413696277 200404005 669863178 844484216 321942169 127865417 552888700 589878576 797526289 68177208 308971693 972387521 471342837 841601888 612817103 524185517 918704162 517339988 207850019 260812796 354728650 308731499 376946595 687277243 710335867 929993280 159090637 828511315 272462205 904772910 25662870 331309735 473384486 865741385 402166965 684274818 270180362 596844202 962299373 547844626 801729684 973588491 869824683 68537499 217217585 143117736 272942593 846525865 751529138 544602007 394961145 916902707 359532530 906214074 440357811 543641231 471703128 410693852 449845474 221420980 560574908 609814678 494881849 91235832 89434377 274503854 650527561 580511010 932875608 597804978 994245175 869464392 675147446 193798670 583393338 8008611 180708097 680071423 666860753 704571211 520942898 705772181 842562664 921826684 13412976 185031589 242437955 966382671 164735196 103966114 264896094 794764058 970225775 334432257 174102762 532111919 128826193 916062028 759455540 937559391 551687730 76343804 551567633 688718407 160051413 974549267 51964113 980193826 188754596 130387454 92676996 481791276 194399155 92436802 963860634 827670636 89914765 990762362 340196913 501847475 154166660 776509314 36951988 319059841 270300459 59290030 618341565 890601464 607412738 457171391 250724648 624466512 718022075 206528952 213734772 142277057 169058688 482031470 101684271 615699431 560695005 42116159 665299492 641039898 332270511 110451352 590479061 733874879 698926652 446242564 423183940 343679726 340196913 804972303 649206494 44277905 62292455 300805097 868263422 888800009 887599039 385833773 155487727 352326710 353047292 874628563 345721375 307650626 182989940 525506584 950289673 93637772 692201220 455009645 655931926 809535989 315697125 327346534 343199338 157649473 660135321 627589034 437715677 978152177 871385944 101804368 516259115 301525679 468340412 116456202 462936047 348003218 665779880 371061842 715259844 738558662 695684033 298883545 70338954 532232016 673946476 20258505 816021227 26743743 874628563 142036863 371302036 688478213 848207223 210131862 755972727 545322589 495602431 357610978 337554779 238354657 266337258 837518590 704090823 583153144 258891244 697365391 690519862 314376058 267778422 607532835 496923498 108289606 796085125 791281245 944525017 36351503 917503192 152485302 382110766 963019955 734235170 30947138 540278515 283751323 113453777 723666634 84270206 453328287 188994790 113934165 27344228 130867842 502327863 602969149 951490643 325304885 992323623 501847475 148041713 251205036 496443110 155127436 185031589 102885241 573425287 266097064 996406921 329748474 229227285 161132286 178666448 493921073 960377821 815060451 7288029 362534955 876790309 561895975 314135864 530790852 291797822 855052752 169298882 748406616 351125740 171220434 92676996 716821105 834396068 71900215 796085125 498965147 375865722 368539805 361814373 206048564 74182058 355929620 691600735 371422133 851089551 402287062 817822682 515538533 80066811 882194674 276785697 93037287 346081666 91716220 773626986 26143258 590479061 566219467 402166965 314496155 882434868 366858447 344040017 191156536 774587762 599486336 436874998 600086821 20018311 892042628 626508161 257209886 246641350 45598972 206048564 546763753 855413043 839560239 169418979 675147446 156328406 819383943 21699669 218538652 733514588 447083243 476747202 395921921 802450266 284832196 900449418 739399341 155127436 707333442 348363509 342718950 654971150 676108222 508452810 22059960 895525441 551327439 842202373 680671908 507852325 327947019 155487727 463536532 744683609 930113377 493080394 790320469 339956719 72260506 185391880 89194183 142757445 144919191 825869181 104326405 989681489 808575213 830913255 972027230 375745625 597204493 74542349 658574060 21459475 444681303 3685119 623505736 731232745 115495426 534273665 816381518 792242021 977791886 543881425 567420437 123662022 476146717 391838623 771585337 779751933 537636381 180948291 181548776 114294456 230067964 479629530 495362237 787077850 766060875 968064029 206649049 458852749 860337020 781073000 625787579 891201949 799207647 671064148 830552964 538356963 823587338 331670026 623385639 720183821 665899977 631191944 20138408 758014376 366738350 502568057 566579758 239555627 72500700 647765330 349204188 457771876 173021889 188034014 20018311 871385944 725347992 49562173 385833773 344880696 187313432 919184550 114054262 680792005 443840624 611616133 262013766 95319130 701808980 432071118 557332289 777470090 76343804 809776183 886518166 293839471 245560477 431590730 265256385 847486641 454048869 506411161 243278634 635875727 78145259 966262574 227185636 155727921 699767331 281469480 33349078 548325014 950770061 938039779 323623527 110571449 224783696 300444806 663377940 659775030 97480876 140475602 544962298 693161996 505930773 241957567 609454387 108409703 988000131 68177208 812058026 608733805 749127198 422463358 446002370 277266085 334432257 624826803 42596547 137833468 657373090 968064029 2364052 110691546 553489185 869584489 48241106 764379517 292158113 10650745 82829042 758254570 102885241 430629954 158850443 380909796 701208495 883755935 714178971 480470209 274864145 957975881 837158299 740480214 664699007 784916104 677789580 706132472 899488642 714299068 838959754 700968301 95199033 410093367 740480214 965662089 334912645 449485183 15334528 790080275 466418860 124262507 526467360 790440566 515058145 577868876 867182549 889280397 936958906 995566242 749127198 582432562 670703857 410213464 930473668 511575332 293959568 614978849 127985514 464737502 159811219 49442076 77544774 66135559 479509433 891322046 78865841 191036439 126544350 491158842 11131133 202306 419220739 99402428 513496884 447323437 646924651 899128351 605971574 210852444 834996553 958336172 706012375 482511858 111292031 852170424 866942355 914740961 632513011 535594732 501967572 951370546 324103915 64694395 853971879 798847356 591079546 314015767 366738350 563697430 21459475 390517556 764259420 91836317 605130895 362174664 262974542 947287248 48361203 981995281 493680879 741681184 335993518 155127436 83429527 376466207 737717983 937319197 466538957 140715796 450325862 576788003 283631226 557212192 241236985 288675300 341758174 909937081 391118041 326385758 760416316 398684152 684515012 205087788 927591340 100603398 660495612 911138051 180227709 823707435 489717678 800048326 701448689 66856141 76223707 668542111 37192182 32988787 566219467 827790733 547964723 53044986 307770723 458492458 881834383 875349145 344520405 704571211 767742233 837278396 237513978 403968420 44638196 521783577 374064267 541719679 439397035 1643470 270300459 303086940 331069541 188394305 822266271 104686696 458132167 56527799 787678335 354968844 349924770 561175393 101083786 267538228 729551387 243638925 398684152 839199948 787318044 847366544 25302579 872586914 5366477 962299373 799688035 141436378 590238867 282430256 29025586 24581997 963620440 91115735 807374243 268138713 727149447 101804368 122340955 154887242 41875965 792001827 322662751 416578605 457051294 803170848 416458508 971066454 829351994 620022923 776749508 31067235 191036439 747565937 327947019 952811710 812418317 808094825 291557628 680191520 205207885 156208309 530790852 814339869 693402190 583033047 565018497 965782186 430269663 17856565 382711251 116576299 396162115 790440566 396762600 840761209 740240020 793923379 535714829 590238867 141556475 683073848 406130166 517339988 366498156 307890820 427267238 96640197 640679607 276665600 322782848 517820376 467860024 535834926 110931740 513977272 539077545 827790733 44998487 61571873 915821834 678510162 658453963 534033471 180588000 295761023 278106764 780472515 635635533 886037778 872707011 256489304 894324471 59770418 248803096 696644809 697365391 885677487 621103796 188634499 412975695 65535074 599246142 935037354 223582726 456090518 191997215 45118584 371542230 657853478 323383333 37072085 324824497 29866265 975630140 848567514 802690460 965181701 297562478 739879729 225624375 106848442 657853478 287354233 760296219 157889667 352566904 215656324 81628072 499925923 741440990 40314704 512896399 778671060 868143325 999649540 872827108 431830924 580150719 618461662 764019226 82708945 247361932 51363628 439877423 528629106 800048326 690880153 498724953 650647658 210372056 218658749 409132591 591079546 887118651 250964842 217217585 414777150 417179090 544241716 560334714 588437412 440958296 347522830 838959754 436274513 654971150 351966419 441078393 160892092 741801281 544121619 271381332 567420437 577148294 736877304 30346653 263815221 66255656 722585761 503528833 541959873 275945018 862979154 808935504 573905675 30706944 222742047 745404191 210972541 325665176 532352113 599966724 394360660 904412619 488997096 135911916 850368969 367819223 77905065 608373514 825148599 353287486 250364357 516979697 168938591 218898943 284231711 488636805 871025653 32268205 296361508 441798975 604050022 413576180 452127317 385473482 157529376 761377092 255528528 157889667 443840624 600206918 814700160 125823768 863339445 937799585 179387030 551087245 169659173 488276514 829832382 351846322 862498766 409132591 978512468 416938896 842922955 956054329 411894822 496082819 895645538 122340955 580991398 890000979 762337868 907775335 560214617 807134049 537035896 51243531 206288758 592400613 902370970 973108103 705171696 976110528 944885308 677909677 461735077 539798127 76944289 120059112 81387878 674066573 374304461 419701127 235112038 337074391 216016615 314135864 990642265 333831772 3084634 381029893 984637415 926150176 108649897 600327015 170379755 526587457 925189400 849167999 868023228 346922345 487916223 661816679 190676148 61091485 98801943 909696887 810376668 6447350 405889972 133029588 90395153 955814135 800288520 802450266 888439718 315817222 569462086 947167151 580511010 612576909 852050327 250604551 946326472 525746778 794523864 481551082 869224198 660135321 53765568 915701737 17976662 768943203 81147684 692321317 406850748 659654933 696524712 193318282 550486760 940561816 859136050 687397340 187673723 573905675 594202068 219379331 748766907 485033895 194158961 199803520 392319011 791521439 520102219 802570363 911378245 323023042 859976729 589278091 872947205 805812982 573905675 823947629 636836503 901890582 876309921 186352656 660735806 539437836 360373209 749487489 945365696 672985700 756092824 401446383 18697244 673586185 37552473 582192368 502207766 118738045 256369207 100723495 459333137 903211649 133149685 72620797 2003761 630951750 496443110 5486574 568261116 297802672 235112038 945485793 370341260 3805216 610535260 368059417 842202373 536795702 389556780 819864331 851209648 682233169 210251959 769783882 360012918 616900401 79466326 253727073 404208614 5006186 166416554 559013647 41155383 916902707 405289487 320260811 779151448 640439413 973828685 323383333 662657358 643561935 630231168 152845593 711176546 578349264 500646505 875829533 429068693 157769570 75262931 385713676 312454506 95319130 725107798 484073119 568861601 927471243 375385334 361093791 553248991 840881306 399765025 225504278 693041899 571023347 57848866 272101914 637677182 138794244 114294456 146840743 22300154 526827651 672745506 460894398 884716711 43197032 289996367 207369631 108529800 368059417 352446807 697845779 735556237 37792667 989681489 108049412 146720646 101203883 432791700 388596004 79826617 414176665 767502039 336353809 146960840 395321436 535834926 202325557 439517132 979953632 29746168 322403 717181396 290837046 239075239 67937014 970105678 327106340 844484216 707933927 925189400 799567938 688718407 312214312 421982970 668301917 781553388 352206613 935517742 97480876 766180972 116216008 531871725 805812982 112012613 761617286 450566056 521663480 631312041 205207885 90995638 155968115 678269968 808335019 203046139 419821224 464977696 385233288 677189095 283391032 438676453 354488456 266697549 684875303 574506160 616540110 303567328 139514826 647044748 736396916 306089365 925189400 209531377 559133744 508933198 513737078 114174359 606091671 398323861 338035167 315336834 81027587 328547504 946206375 557692580 161492577 394120466 704210920 231869419 449004795 182149261 3324828 684394915 69017887 196440804 249763872 885437293 586996248 25182482 61812067 11371327 362534955 768823106 298883545 753690884 198722647 688478213 985237900 84990788 902250873 778671060 644762905 240876694 448884698 455249839 117056687 325545079 34189757 850729260 153806369 699887428 443600430 196560901 120299306 614738655 937199100 853611588 788038626 74782543 499325438 851209648 835476941 921706587 801729684 70579148 951730837 5726768 204367206 7167932 253727073 323503430 953892583 782514164 589758479 869704586 863819833 971306648 303086940 866702161 520582607 441919072 700007525 427387335 79826617 133509976 399765025 454289063 803771333 600927500 847726835 804852206 403127741 72740894 873427593 72500700 235232135 290116464 659534836 522384062 668662208 14373752 140955990 132068812 150203459 160171510 976590916 693882578 462095368 228146412 454649354 172301307 391118041 482031470 164134711 795124349 936358421 815180548 895525441 849167999 285792972 339476331 912699312 28305004 497523983 556731804 90395153 613417588 395561630 216497003 615699431 620863602 457531682 751288944 326145564 711656934 721745082 228146412 153325981 482271664 951370546 657132896 210131862 359292336 269099489 758134473 188514402 205448079 898047478 603449537 990041780 232710098 614498461 952451419 753450690 912098827 123662022 554690155 688598310 195359931 198362356 344520405 387515131 725347992 568020922 905133201 191396730 317138289 978992856 972027230 232710098 366618253 849528290 576187518 768943203 327346534 174823344 431470633 830192673 727990126 465097793 644042323 340677301 109730770 662897552 766781457 678390065 711897128 724627410 539798127 429669178 396882697 18937438 485153992 386314161 957495493 339836622 850248872 77905065 463536532 3324828 93517675 36111309 728710708 624826803 79586423 3324828 112973389 200163811 986078579 328667601 460654204 850489066 563096945 85831467 634434563 897446993 112493001 634674757 863219348 500766602 593601583 137833468 324464206 577748779 296121314 528869300 377066692 37792667 971666939 58569448 50522949 557692580 829472091 104686696 428588305 450806250 78505550 360493306 661816679 825148599 540518709 795844931 878591764 753450690 516139018 294800247 188034014 377186789 330228862 552888700 15454625 57968963 952931807 377186789 651488337 769063300 95199033 892523016 42956838 179987515 342839047 782874455 163894517 42356353 55326829 770744658 441798975 611976424 415617829 616900401 889040203 119578724 954493068 521663480 622544960 132909491 661456388 292998792 721384791 852170424 298283060 11131133 351606128 637316891 181308582 189114887 207850019 28425101 708414315 766421166 78265356 340677301 201725072 27464325 611856327 263815221 412014919 251084939 805092400 15334528 613657782 873427593 220700398 340677301 789840081 943444144 964461119 742281669 919905132 596123620 51003337 201004490 280628801 506891549 313535379 93877966 441798975 498965147 488636805 923147751 607532835 510854750 330228862 280028316 426306462 412975695 372022618 237273784 175664023 511935623 197761871 790680760 961939082 505090094 704090823 140235408 374184364 85230982 695563936 14253655 302606552 504969997 147801519 661816679 451166541 764739808 691360541 402287062 571383638 284832196 469661479 427387335 461614980 479989821 180347806 648846203 725828380 33589272 345120890 317618677 615459237 573665481 339476331 72860991 676828804 361694276 432791700 926990855 529950173 819143749 333471481 674787155 397603279 340677301 799567938 679831229 773386792 947767636 63133134 835356844 433031894 659654933 984036930 800408617 607652932 827670636 708174121 752730108 159931316 920986005 339236137 65174783 176024314 839079851 377306886 642961450 398924346 935757936 682694 789960178 455249839 535114344 267298034 325665176 921466393 308971693 981514893 72500700 9209581 238114463 954132777 166296457 921706587 389436683 923868333 587836927 214095063 640199219 828271121 338515555 481070694 581231592 367458932 231268934 256609401 652929501 398443958 587957024 232109613 630951750 709134897 701688883 804251721 636596309 294560053 37192182 624586609 359412433 70459051 682353266 540999097 470141867 639478637 520342413 787077850 557812677 224063114 848927805 63253231 923748236 884356420 656892702 591319740 83189333 333591578 807614437 289035591 194038864 951730837 59049836 375025043 855533140 834636262 258530953 256969692 792602312 78385453 817582488 556611707 837638687 56407702 564177818 580030622 641640383 638637958 89554474 959176851 298763448 380789699 289155688 593961874 819023652 417419284 586876151 529830076 968304223 913660088 874988854 393039593 681032199 612937200 714659359 669262693 309932469 538236866 93157384 484433410 390157265 481671179 115975814 983436445 42716644 970586066 36591697 597204493 903692037 498604856 859616438 959056754 820945204 424865298 723906828 178666448 189355081 650167270 969865484 836077426 952331322 265496579 676708707 736156722 771225046 792482215 517339988 65655171 726308768 415737926 693282093 666980850 96640197 893363695 660495612 630831653 40074510 63493425 237393881 304528104 605371089 82108460 409733076 547844626 502568057 342358659 51363628 947887733 669382790 507732228 967103253 577748779 677909677 944885308 364576604 500286214 134590849 703850629 930713862 986438870 307650626 405769875 694002675 903932231 247842320 30106459 352446807 124622798 470502158 383071542 706612860 255768722 382471057 917623289 957255299 759695734 552648506 281229286 499805826 571143444 342598853 152485302 440958296 311493730 23381027 231028740 695563936 29866265 756092824 580631107 993044205 862618863 156448503 615219043 401326286 542800552 581471786 862738960 113333680 87873116 459573331 673826379 737477789 881233898 662297067 932395220 420301612 326986243 881594189 122821343 137112886 392679302 331670026 430149566 154526951 130267357 959056754 640919801 916302222 575587033 774948053 346321860 31187332 307770723 304768298 404328711 830072576 410333561 54966538 844244022 903932231 33349078 633593884 74782543 175063538 129546775 555170543 597925075 719823530 175063538 537035896 164855293 13533073 56047411 957375396 694242869 326025467 320981393 33949563 49321979 382110766 754651660 131468327 290837046 545682880 602849052 145159385 847606738 999649540 41755868 814459966 699046749 258170662 712137322 932635414 128465902 135551625 194519252 299363933 53285180 307890820 863339445 108169509 739159147 539918224 75262931 457771876 103846017 157649473 491278939 1523373 202445654 252646200 605130895 256729498 461134592 606812253 402046868 528869300 46559748 315937319 90635347 733034200 749127198 54245956 221781271 467860024 110811643 160531801 962419470 730151872 262854445 45719069 335032742 597564784 91596123 107448927 762578062 985237900 41275480 127144835 204727497 354608553 469781576 801609587 189475178 61812067 390277362 932755511 178306157 373824073 297442381 182629649 357851172 14854140 579790428 467499733 398564055 900929806 268378907 836918105 500646505 775908829 690159571 504849900 817702585 346441957 730992551 780952903 24101609 110811643 11131133 629990974 578589458 641760480 329988668 42836741 263214736 563096945 637557085 165695972 443720527 833435292 537516284 586155569 328787698 15214431 459333137 253366782 524786002 518781152 275584727 946926957 198242259 641039898 948488218 92917190 638157570 372983394 685115497 907535141 757894279 337915070 558893550 462695853 5486574 427627529 131108036 333831772 777349993 922547266 568020922 956534717 370941745 349444382 406850748 602248567 847726835 2123858 716100523 868503616 265016191 467259539 345000793 631552235 660375515 361093791 3084634 803651236 104686696 449605280 356410008 104326405 918704162 226224860 602488761 348243412 331189638 886037778 57728769 26983937 188874693 243638925 277266085 632513011 864780609 386554355 260932893 726068574 234511553 85351079 977671789 780352418 491999521 813619287 767622136 241717373 457531682 933836384 649566785 837998978 760296219 834756359 737357692 381870572 386194064 28785392 30706944 498845050 403007644 63493425 462455659 903331746 225023890 908255723 769423591 761497189 164615099 989921683 364456507 268378907 718742657 811577638 269699974 570783153 551687730 593841777 249883969 593601583 386194064 142637348 721865179 868023228 577388488 287114039 689799280 5606671 545562783 238234560 433392185 925909982 825508890 374064267 823707435 71539924 505570482 998568667 28305004 867302646 327346534 638277667 715740232 893483792 464617405 947527442 810376668 583873726 452967996 23621221 562376363 848327320 299243836 155607824 629510586 8609096 178186060 408291912 446482758 807854631 340196913 561655781 397963570 75142834 478068269 379708826 304528104 111772419 175303732 117657172 613297491 993404496 886037778 571984123 180347806 965181701 562736654 104686696 133389879 790080275 563217042 694002675 420301612 11491424 91115735 201364781 349324285 714659359 894204374 227906218 692321317 603329440 75743319 770024076 24702094 175423829 792962603 934196675 420061418 413936471 944044629 75383028 540758903 289395882 181909067 317498580 33829466 262494154 833435292 55807217 875349145 856854207 966382671 782754358 854212073 752850205 4045410 511455235 514457660 993284399 98922040 311253536 522263965 447563631 945125502 519621831 167257233 687397340 739639535 752850205 217818070 630471362 373703976 16775692 951010255 762217771 917262998 752009526 338275361 486955447 461494883 884236323 378748050 514817951 586996248 900809709 672385215 984877609 427987820 73221282 683794430 757293794 449725377 254447655 974789461 578709555 12332103 324224012 592280516 146000064 709014800 575106645 911378245 88833892 567780728 763058450 643081547 966142477 987519743 65414977 401086092 532832501 742401766 890121076 780472515 3925313 208450504 49682270 632753205 892042628 869824683 826469666 948248024 532712404 540278515 145879967 290957143 535714829 113213583 292758598 398804249 333111190 338635652 903571940 175423829 451646929 4165507 236192911 351726225 762337868 587116345 10050260 274744048 509173392 63733619 69378178 114414553 853371394 777229896 991002556 262974542 268739198 564177818 81748169 646083972 877150600 864180124 973348297 459453234 94118160 49081785 382591154 659654933 252406006 862138475 266697549 397723376 846405768 129426678 588677606 835476941 802791 295040441 337314585 384032318 565138594 951130352 524665905 329508280 774107374 953412195 696404615 646204069 369380484 22420251 813138899 662417164 970345872 21699669 572704705 685475788 37792667 107208733 477227590 347642927 2003761 513256690 369380484 740240020 21819766 160171510 160051413 463536532 729431290 744683609 593721680 578469361 388475907 11371327 991482944 693041899 25062385 404448808 967463544 164735196 912218924 170740046 984877609 632392914 807374243 821185398 66615947 292158113 316417707 327706825 337674876 698926652 764019226 810136474 356650202 304287910 576667906 458372361 120419403 554690155 534393762 463056144 942963756 537035896 337314585 449485183 938880458 778070575 44638196 794043476 318939744 388355810 306209462 451286638 215055839 364456507 239675724 65414977 382350960 941402495 42236256 333471481 906694462 510614556 547484335 198842744 254447655 559734229 784315619 762818256 875589339 792242021 682113072 616660207 694483063 666140171 535114344 575346839 224063114 844964604 270780847 750087974 90515250 118257657 648245718 972507618 709495188 66736044 688838504 110451352 150443653 221060689 610054872 283511129 883155450 474585456 257930468 852410618 435914222 726188671 352566904 335753324 595162844 403848323 513496884 380669602 125703671 239315433 191276633 175543926 674186670 590479061 804131624 951010255 729431290 245080089 710576061 474945747 508572907 347883121 256008916 949809285 484193216 359412433 718382366 150323556 467619830 906934656 496563207 750808556 636476212 825869181 296001217 816861906 537035896 213134287 744923803 285792972 334312160 286033166 682353266 177225284 30706944 590358964 327466631 133149685 368059417 477347687 998208376 556251416 416218314 954372971 349324285 902491067 69858566 56167508 765100099 669622984 150803944 136032013 979233050 100483301 190676148 915221349 203646624 811097250 423784425 87873116 801249296 977671789 491999521 308371208 85110885 932034929 255528528 796805707 402166965 676828804 844123925 831033352 40074510 803651236 826950054 442639654 568020922 944404920 181188485 120779694 667341141 991242750 910057178 19658020 470382061 470021770 60731194 15935013 660735806 698446264 69618372 641880577 198482453 786117074 949328897 289996367 354248262 104806793 790440566 309091790 300324709 572944899 977191401 701688883 182749746 919064453 953412195 21939863 793683185 10050260 688117922 296361508 855052752 698926652 583393338 834035777 883996129 381630378 505930773 773146598 36711794 568261116 710455964 673225894 812058026 454529257 677549386 392919496 911978730 889640688 31187332 250124163 588317315 335152839 908976305 44998487 569582183 370101066 31547623 535234441 799688035 584113920 961818985 331429832 698686458 521543383 262854445 727749932 869224198 215175936 155487727 454289063 182749746 33709369 309692275 954733262 529950173 192477603 171100337 935517742 166536651 890241173 810496765 974068879 237393881 969024805 573545384 197041289 569462086 651848628 237634075 365417283 804011527 708894703 913660088 304648201 491038745 652449113 153686272 875589339 482752052 336834197 43917614 173382180 713098098 358571754 620263117 728470514 137833468 58449351 590479061 577268391 727629835 581832077 941402495 506050870 537155993 836317620 325545079 796325319 469301188 861057602 510734653 838839657 758494764 646924651 389076392 959657239 613177394 311974118 112973389 686916952 416458508 194999640 487555932 897687187 604530410 396882697 768703009 351125740 365777574 469301188 218898943 709254994 77784968 127745320 939240749 647645233 465337987 151164235 329988668 745163997 940201525 677909677 260932893 116576299 411654628 863699736 585194793 705652084 119218433 74302155 190435954 500766602 498604856 546163268 618701856 118137560 320621102 698926652 599246142 345601278 256489304 564778303 144558900 728350417 248442805 774827956 543280940 857814983 988120228 529109494 314496155 214575451 680431714 432551506 656052023 571143444 852410618 683674333 831874031 282430256 516499309 472663904 74662446 319300035 20979087 813979578 583753629 378748050 981154602 907294947 2243955 467980121 976831110 374064267 50883240 319660326 566339564 135551625 991482944 843763634 860096826 946206375 224423405 899488642 991122653 944525017 314736349 215175936 603929925 714058874 600206918 999529443 899488642 72140409 62652746 113213583 294680150 446122467 294199762 284712099 216617100 381510281 858055177 554089670 517460085 828751509 924468818 258410856 842562664 252285909 692081123 898167575 80667296 346802248 708174121 862498766 133389879 473264389 321341684 480470209 646204069 714779456 821065301 872346720 888439718 654250568 455850324 82708945 854692461 661456388 397603279 622905251 220580301 993644690 985117803 919905132 544481910 959777336 967463544 459933622 476026620 127144835 824187823 536555508 272582302 559974423 504489609 701088398 801249296 635035048 323623527 923988430 671064148 697845779 558653356 448764601 903692037 737477789 538837351 873907981 968904708 923147751 197521677 208330407 329868571 324103915 238114463 113093486 107929315 427867723 415137441 187073238 980794311 107208733 789719984 291557628 503048445 563217042 144078512 904893007 480830500 97961264 599005948 601407888 497163692 177225284 29505974 66615947 411534531 968424320 332030317 104566599 403608129 334071966 77664871 638998249 940321622 397843473 651007949 199683423 726669059 203046139 319900520 130627648 759335443 545682880 449004795 239195336 886037778 188634499 108890091 560815102 412735501 427987820 920745811 160892092 664218619 182269358 368779999 529349688 969144902 810496765 262013766 663257843 246160962 511094944 619422438 423424134 511094944 212293608 861658087 160892092 350525255 431830924 288915494 289395882 571743929 435914222 655691732 656772605 217097488 62652746 14253655 134951140 518901249 816141324 560214617 669502887 326025467 269579877 801849781 552528409 133870267 421022194 628069422 150924041 266217161 502207766 663137746 672505312 525986972 580270816 173021889 495362237 222982241 999409346 179266933 44998487 881714286 23621221 329748474 716821105 94118160 469301188 130507551 200524102 717421590 630591459 642601159 678029774 561775878 886758360 568981698 947047054 714539262 39594122 932875608 369380484 598285366 587116345 581711980 1643470 171580725 765700584 33829466 788278820 983676639 457411585 322182363 953292098 712017225 724507313 893483792 441798975 727029350 170019464 887238748 216256809 692681608 194399155 307050141 699767331 984157027 893603889 877390794 511935623 324344109 21579572 806053176 786237171 568621407 206048564 594081971 317978968 525266390 610895551 416098217 231869419 903812134 815901130 144678997 563697430 212293608 647885427 445161691 146480452 72380603 909937081 827550539 121380179 24341803 757894279 841121500 701328592 748646810 947407345 179627224 875829533 703850629 620863602 672385215 574866451 208570601 254687849 471583031 462695853 899969030 915461543 534033471 841962179 106488151 183110037 727870029 797045901 919785035 262133863 502087669 354968844 46679845 483953022 151044138 327466631 37912764 159931316 942123077 843763634 789599887 682593460 853491491 240636500 247482029 471943322 105527375 980193826 151764720 357851172 452127317 360493306 559854326 69498275 458252264 200283908 917743386 643081547 228026315 720424015 733394491 348963994 450205765 160171510 824428017 843043052 895765635 20618796 9569872 58449351 932034929 205207885 719343142 439757326 778550963 351846322 202805945 184551201 416098217 435193640 662897552 467499733 663257843 874268272 812658511 858775759 566099370 169418979 606451962 252886394 265976967 399284637 330709250 639238443 589037897 746124773 155247533 345000793 682473363 202685848 708054024 270540653 964941507 876670212 974429170 394240563 704931502 76944289 357010493 629270392 765460390 59049836 627468937 981034505 20018311 702649659 546163268 479509433 993644690 821785883 102765144 939000555 473864874 586876151 863699736 335633227 120299306 983196251 299604127 555891125 418500157 630951750 575587033 821665786 954493068 522984547 261293184 643201644 711777031 341998368 444681303 252526103 737958177 852170424 105767569 702649659 123061537 263454930 35150533 755492339 103605823 152485302 102044562 402166965 402887547 213854869 396042018 691600735 407931621 152605399 806773758 197161386 183950716 82348654 589037897 979112953 413335986 68777693 353167389 462335562 719823530 28425101 624946900 337674876 765220196 687397340 92797093 908856208 755011951 870184974 835236747 219499428 72140409 933355996 862618863 191156536 430629954 805212497 764499614 334192063 975029655 453088093 806053176 829351994 13773267 821785883 720303918 361454082 913059603 574506160 751649235 978392371 882314771 130267357 996406921 626508161 75383028 550967148 397242988 374304461 241236985 661696582 71780118 628069422 634314466 273422981 818182973 17135983 50763143 962659664 507251840 873067302 404929196 810136474 856013528 811937929 142757445 991603041 605250992 122100761 41635771 313775573 463656629 290596852 201124587 601768179 763899129 596243717 502688154 971546842 638998249 209651474 759575637 289035591 895765635 39594122 29265780 881233898 369740775 726428865 203046139 996406921 180588000 566339564 723666634 122581149 137593274 353767874 207850019 189355081 928432019 776389217 431951021 288675300 544602007 964100828 714178971 487195641 586155569 663257843 157409279 145159385 641280092 338155264 635395339 928672213 304888395 955573941 427867723 809055601 311133439 526707554 428948596 461735077 297082090 761377092 332750899 170860143 153446078 681152296 258050565 39233831 12572297 956174426 629870877 161612674 962059179 579790428 190676148 373824073 920505617 294680150 611616133 557092095 939360846 641640383 443720527 322422557 417539381 78985938 76223707 461014495 93757869 40074510 376586304 326986243 100002913 46920039 642481062 158850443 527548233 234631650 397843473 699767331 402046868 175904217 839920530 474465359 735195946 77304580 5966962 155487727 853131200 776509314 899248448 293479180 374184364 747926228 754171272 530190367 594322165 372743200 969505193 780952903 826829957 16775692 165335681 886518166 454769451 359652627 975870334 957855784 789359693 244959992 748166422 935277548 442159266 35510824 273903369 685475788 223582726 93277481 338515555 669983275 198602550 922307072 149602974 755132048 53285180 988960907 44998487 620383214 774347568 574506160 388956295 536075120 388115616 778671060 820344719 844604313 910057178 50042561 944885308 864540415 628429713 195720222 972147327 449365086 800528714 391118041 163654323 83909915 17856565 687517437 48961688 531391337 849888581 484553507 346922345 905253298 409012494 22780542 349084091 283270935 115255232 356289911 427027044 878231473 461134592 485033895 488997096 485394186 844604313 868143325 844484216 583753629 65054686 932995705 844724410 317018192 595162844 516259115 270660750 106247957 813979578 456330712 271021041 790920954 358932045 945725987 585194793 361093791 203286333 384392609 956534717 554810252 491759327 750568362 568981698 90875541 754891854 850128775 175543926 884956905 33108884 503408736 582192368 378988244 302126164 108769994 562016072 445882273 538597157 679350841 980313923 935277548 796085125 535474635 182989940 770144173 994004981 147201034 470862449 195960416 15574722 26623646 647525136 677189095 243158537 121500276 977791886 246281059 177105187 498724953 621343990 139755020 978632565 886998554 549165693 983916833 604290216 701688883 255408431 107929315 560094520 745884579 952211225 442159266 227065539 344640502 665659783 67696820 811937929 550126469 321101490 47400427 549766178 637436988 921106102 52564598 699527137 892282822 940922107 45358778 674667058 898527866 843403343 296361508 320260811 308251111 497403886 674787155 784555813 579790428 218898943 474825650 186953141 320501005 947167151 631312041 467860024 737357692 70459051 489837775 478908948 486475059 52804792 907415044 259491729 407571330 479389336 750808556 498124468 561175393 984637415 316898095 384512706 968904708 490678454 684515012 706012375 635995824 659775030 201845169 169418979 180347806 449605280 853731685 172541501 767261845 833795583 982235475 593961874 109370479 195480028 516859600 444321012 984277124 960618015 173262083 880153025 279187637 899848933 994365272 192597700 792962603 738078274 486234865 124983089 634074272 656292217 395921921 227425830 767862330 841962179 985117803 409252688 520582607 189715372 868383519 942603465 606451962 145879967 37072085 761256995 680431714 438916647 644282517 369500581 653049598 571623832 298883545 194399155 850729260 102885241 210852444 337794973 378387759 855893431 548445111 286513554 229587576 665059298 458012070 112613098 325665176 961818985 958576366 789960178 89074086 418860448 938520167 728830805 324944594 697485488 278106764 865260997 803050751 891562240 158970540 930233474 168578300 467259539 820945204 376946595 724867604 901170000 69618372 477948172 645003099 165215584 70338954 448884698 231389031 798847356 744203221 446362661 318699550 886878457 624466512 452367511 698926652 504489609 644402614 428708402 798607162 679831229 904532716 643081547 886758360 813138899 579189943 14133558 294680150 341157689 720063724 491879424 147080937 234631650 654250568 878952055 518300764 479629530 975990431 273543078 776869605 145039288 913179700 939360846 657252993 646204069 82348654 216857294 487555932 458612555 174222859 775788732 671544536 162453353 85951564 957735687 517580182 741200796 211452929 370701551 532352113 71900215 730512163 99642622 993524593 510254265 299363933 37792667 526107069 914861058 72140409 691600735 867662937 938520167 577628682 291797822 86792243 598525560 352086516 74302155 437715677 615819528 42956838 368779999 861658087 604290216 911858633 233550777 465458084 464617405 840160724 557692580 897567090 635155145 935878033 347042442 951130352 249643775 343199338 120419403 170740046 656892702 689559086 296841896 949088703 275824921 894444568 339716525 574866451 274503854 472784001 556011222 359772724 126664447 730632260 885557390 667461238 774587762 508572907 150323556 695443839 661216194 889280397 937799585 28425101 134831043 734235170 608853902 276065115 7648320 301885970 983076154 274744048 208210310 502688154 230668449 131588424 336233712 492720103 379708826 741080699 2123858 653169695 912459118 240036015 39954413 803651236 762578062 421622679 188274208 831753934 232830195 989681489 467860024 229587576 137473177 673946476 868023228 405649778 818783458 206769146 170860143 811577638 914981155 670583760 773266695 396042018 309812372 722105373 345361084 133269782 599966724 787558238 82209 204487303 273302884 331910220 637076697 68897790 32388302 683193945 296601702 288074815 474105068 914020379 702769756 884356420 643201644 377426983 577028197 137593274 8128708 107569024 567540534 736637110 301885970 789719984 847606738 271381332 289155688 704571211 600447112 926270273 69618372 776989702 512896399 290116464 744203221 684154721 481190791 892883307 895405344 165575875 478308463 908616014 258050565 486595156 236313008 843523440 730392066 974789461 64334104 873907981 932515317 714659359 833675486 846886156 661816679 475426135 835356844 306809947 544361813 878711861 413215889 657373090 887839233 432911797 337794973 995926533 695924227 466779151 927591340 343919920 458012070 21819766 535474635 661336291 524545808 818903555 107809218 350765449 298403157 940321622 320140714 617380789 847366544 155607824 2243955 891081852 882074577 813018802 527788427 260692699 475065844 120539500 439156841 226344957 999649540 864180124 872106526 589638382 373944170 79466326 526587457 855653237 672385215 393519981 699046749 765220196 102404853 719823530 559253841 491639230 229827770 87032437 642360965 803170848 369380484 853731685 973828685 956174426 561655781 807974728 670463663 632513011 491519133 631312041 213614675 451887123 653890277 572944899 159450928 101804368 753570787 176504702 16295304 492840200 674667058 706132472 800889005 547844626 233790971 883635838 104326405 926870758 587236442 305729074 28064810 240156112 978032080 841721985 187433529 850128775 718862754 325545079 752730108 57608672 891922531 851329745 614018073 948127927 18336953 9689969 209411280 154526951 74542349 179387030 250244260 346682151 102524950 382951445 577508585 379348535 103245532 902370970 652809404 417899672 347522830 394360660 339236137 370101066 685115497 746244870 901049903 912939506 20138408 995326048 68777693 665779880 724147022 605611283 74782543 299363933 755011951 205688273 856734110 306930044 431590730 63373328 372983394 443120042 28064810 352206613 629150295 518901249 713338292 457891973 201604975 920865908 158370055 29626071 329147989 270180362 777590187 785876880 256129013 818903555 590238867 417299187 737838080 225023890 830673061 685836079 417419284 362655052 578349264 789840081 498604856 82708945 591439837 765220196 39233831 386434258 45598972 175784120 814219772 179146836 488756902 586035472 379949020 472543807 432431409 987039355 86672146 951130352 43076935 79706520 517099794 222982241 72620797 32988787 665419589 105167084 691240444 932395220 103966114 93277481 905973880 650047173 140715796 466418860 706973151 411054143 492119618 52084210 844724410 782273970 483832925 692081123 401926771 445401885 25903064 102044562 128826193 41035286 459573331 847366544 561895975 237754172 581952174 936598615 534513859 3805216 416218314 405889972 515538533 354728650 114534650 630951750 219499428 635635533 346922345 226465054 23741318 742401766 57968963 469541382 607412738 416938896 498724953 80667296 518901249 420902097 92196608 500766602 787918529 718622560 775668635 66976238 774587762 297802672 485153992 441438684 802810557 673225894 954012680 329868571 480470209 907775335 315456931 285672875 973348297 783595037 538957448 617620983 725107798 298162963 385953870 674546961 966742962 51603822 13172782 891081852 145279482 765700584 881954480 503889124 39834316 981755087 693161996 712857904 417058993 784916104 959056754 534874150 856493916 10290454 502568057 94238257 550486760 15574722 660255418 226585151 303207037 63613522 960978306 915821834 413576180 314135864 984997706 928071728 319179938 426306462 828151024 66615947 321822072 281589577 784315619 4405701 219739622 929632989 473024195 396762600 940201525 185511977 253727073 979353147 721985276 648846203 269940168 561295490 493921073 652329016 773747083 292638501 678630259 722705858 318339259 944765211 635035048 333471481 508212616 787197947 371542230 253126588 221060689 869944780 464016920 389917071 461254689 121860567 477948172 798246871 789599887 843283246 93757869 162693547 21939863 828391218 702289368 433392185 590959449 657493187 641640383 72260506 636596309 805332594 246281059 274744048 377066692 464857599 825388793 859856632 495722528 297802672 95199033 42356353 583273241 954973456 419941321 108649897 922547266 69978663 362174664 632873302 748286519 714058874 939721137 440958296 224423405 237153687 57128284 63853716 55086635 404088517 442159266 136752595 126063962 422943746 829351994 53044986 356650202 769183397 682713557 784796007 81267781 286273360 723066149 779511739 109370479 669983275 253246685 134951140 70098760 485634380 58209157 438196065 860697311 688838504 171100337 679951326 754411466 632152720 727509738 928311922 498604856 795364543 282670450 222021465 871385944 741440990 366257962 683794430 683314042 129066387 611496036 369140290 360253112 865501191 59169933 658093672 301165388 75022737 44878390 276905794 891802434 814580063 377306886 325545079 596964299 780592612 509173392 318819647 805572788 478908948 422463358 268018616 5126283 165936166 550486760 195960416 577868876 220820495 682593460 600807403 92076511 448044019 736757207 615699431 513857175 851690036 727870029 107088636 710215770 11371327 923748236 461614980 170379755 823227047 9689969 182029164 39834316 656652508 850849357 32628496 52924889 850609163 976470819 587957024 626267967 457771876 761377092 473024195 510374362 756092824 578109070 755972727 278226861 386073967 638878152 18336953 215656324 395681727 474585456 790440566 841601888 54125859 274984242 304888395 443960721 618701856 672385215 79106035 799567938 370941745 486595156 20618796 738918953 366257962 840040627 176384605 714178971 51483725 738078274 684635109 837278396 633954175 569341989 764019226 966983156 25302579 610775454 32388302 279427831 113693971 992083429 944525017 144438803 478308463 969625290 40674995 17976662 691961026 387034743 554329864 341277786 715019650 31067235 732313618 252646200 324704400 309331984 308010917 721985276 695323742 250244260 240636500 45478875 71660021 923267848 283270935 194038864 292758598 896846508 561415587 84870691 318339259 608613708 230428255 869464392 80427102 648966300 851930230 225624375 351365934 184671298 158610249 884956905 70098760 125223283 713458389 358932045 470982546 497403886 386194064 882675062 687037049 174703247 1763567 899008254 270780847 774107374 57488575 514457660 233190486 25903064 281349383 671904827 105647472 819504040 697845779 289275785 133029588 180227709 687037049 511215041 667221044 95439227 610775454 752489914 685595885 338635652 91956414 150323556 847967029 112733195 315577028 546043171 325785273 135911916 275344533 866101676 46799942 800408617 243638925 832474516 468460509 390997944 4645895 12452200 501126893 288194912 737357692 681632684 404929196 682593460 897326896 873427593 351125740 319780423 447803825 438075968 128946290 940922107 35510824 705411890 57248381 643201644 285672875 139634923 556131319 818062876 718502463 582792853 698326167 792962603 212533802 698806555 117897366 635155145 499685729 859496341 699887428 466538957 874268272 567540534 369740775 201965266 488636805 255288334 298162963 245800671 663978425 761737383 104566599 900569515 240036015 626147870 670223469 260812796 425105492 90755444 633713981 752850205 943444144 953292098 453568481 332150414 555530834 180828194 319660326 314135864 118738045 355088941 73581573 422463358 380069117 593241292 806533564 261052990 169298882 563217042 777229896 178426254 178186060 144198609 587356539 594802553 236913493 601768179 534633956 424985395 229947867 37672570 555891125 733154297 925189400 812658511 212533802 886277972 865861482 588917800 15814916 5126283 131828618 480590306 113693971 313175088 879672637 585074696 868383519 406730651 494401461 353887971 338755749 846165574 804131624 846285671 281949868 974309073 339596428 808815407 650287367 25422676 539918224 802690460 130387454 100243107 280148413 882554965 873067302 809415892 333951869 263454930 670703857 126664447 148522101 749607586 933115802 798126774 511215041 43437226 135671722 438196065 24101609 271861720 588557509 999769637 133630073 75503125 422583455 454168966 182149261 831033352 973228200 819504040 385473482 867302646 237513978 17496274 120539500 758134473 50522949 444561206 80787393 959777336 918704162 503168542 335513130 496683304 303807522 634554660 837038202 152605399 435433834 922307072 732073424 700848204 120419403 235232135 485514283 215416130 971426745 733754782 327106340 864780609 335032742 806773758 840160724 444921497 688117922 885197099 359292336 495602431 213014190 512896399 954853359 841241597 59410127 847967029 72620797 323383333 344400308 204607400 389436683 481791276 238474754 499805826 293599277 40434801 949569091 170980240 832834807 73821767 239675724 719943627 882194674 958336172 419100642 605851477 37432376 495001946 244839895 810496765 953652389 890121076 239435530 830072576 857214498 682833654 130867842 440357811 181548776 849167999 532111919 896246023 683314042 303687425 280028316 21819766 420061418 692921802 20979087 879192249 379828923 442279363 527548233 347642927 330108765 555650931 89314280 475065844 816501615 814940354 990402071 569341989 903932231 384632803 819744234 341638077 308491305 915341446 482271664 389556780 917142901 202085363 81507975 239795821 918103677 743963027 855413043 950649964 268859295 68297305 573665481 985958482 428348111 458852749 167137136 636836503 222021465 881954480 565979273 316777998 177465478 84270206 521062995 68057111 664458813 348603703 802810557 425826074 61331679 869704586 266937743 802570363 594562359 180467903 354728650 400005219 797165998 86191758 264055415 779151448 498004371 566940049 509413586 913179700 717061299 656412314 257570177 942123077 336594003 519862025 453448384 561175393 84510400 752730108 934436869 392078817 558653356 71299730 766661360 726188671 318939744 939721137 299363933 801489490 72620797 63733619 790320469 719583336 306089365 161132286 643081547 224423405 992203526 154647048 85471176 845204798 930833959 434352961 944525017 152004914 4285604 229227285 599606433 195960416 958936657 220099913 830192673 190195760 407811524 634434563 289515979 289515979 744923803 635035048 997247600 27464325 497403886 536315314 295881120 453088093 30947138 127625223 815180548 219859719 328307310 66135559 431951021 375385334 349924770 356410008 279547928 692201220 363495731 831153449 820224622 101083786 671544536 604530410 892883307 503769027 983436445 687277243 759215346 160651898 127865417 130867842 255648625 114174359 846645962 935998130 84750594 882314771 352446807 833435292 647645233 511094944 159691122 109970964 225864569 419340836 141556475 961939082 826349569 38032861 426306462 244119313 521903674 479869724 855413043 830913255 891081852 537636381 624706706 501487184 819023652 220940592 535834926 745404191 183470328 57368478 666740656 404088517 587476636 66856141 256489304 382951445 322182363 258651050 911138051 7408126 571864026 583993823 619182244 906934656 71179633 537396187 718862754 264775997 695443839 884116226 144558900 303927619 940321622 263695124 192117312 518300764 798366968 571023347 553248991 841241597 866702161 817582488 284351808 778550963 369020193 354608553 174583150 856373819 188514402 648726106 215175936 620263117 476747202 387995519 138914341 163894517 756813406 599966724 276425406 413576180 650407464 199443229 141916766 141436378 955093553 256249110 399765025 464497308 193558476 830312770 862738960 991723138 283150838 12452200 945966181 952571516 221180786 32988787 802450266 975389946 401806674 964581216 846525865 436754901 850609163 634914951 811697735 505570482 804612012 73821767 301165388 565258691 354368359 621704281 375385334 935157451 33829466 844364119 662056873 115735620 554810252 114894941 790320469 375145140 119218433 533673180 195960416 767261845 539197642 55687120 559734229 862138475 7288029 430389760 772546113 447203340 601167694 913419894 395561630 344640502 684394915 421502582 930113377 771945628 247482029 395201339 532352113 789960178 329388183 80066811 964341022 610295066 359172239 495722528 272222011 580631107 335393033 701208495 863939930 207609825 452847899 266937743 543521134 461374786 178306157 302126164 637917376 550726954 881954480 795004252 178546351 645723681 397122891 414416859 432071118 686316467 384752900 30947138 219859719 108769994 522263965 891201949 371662327 747565937 902731261 360133015 763899129 622905251 743002251 47520524 694002675 441798975 105647472 779151448 709134897 93397578 479629530 785516589 753330593 32508399 139514826 341037592 138794244 802930654 531511434 558893550 729551387 893603889 290837046 215656324 492840200 980794311 943083853 69378178 823947629 991723138 207729922 746965452 52204307 118738045 212533802 147681422 54966538 719102948 505210191 525626681 1763567 618221468 311613827 493320588 63253231 180227709 526707554 603569634 833915680 314255961 664338716 242197761 908135626 610054872 582552659 95078936 275824921 899969030 929152601 797406192 323383333 164855293 299243836 992323623 657373090 16295304 958336172 947887733 360613403 229347382 597084396 323383333 557572483 865140900 539918224 894324471 720664209 888079427 646324166 465818375 545082395 816501615 985958482 353167389 163654323 841962179 505330288 533432986 390877847 382831348 263334833 725588186 159691122 28545198 984517318 542320164 464377211 114054262 674066573 275824921 634194369 10890939 339476331 460534107 273543078 225744472 365056992 35751018 929993280 333231287 315096640 46199457 417539381 557692580 879792734 489837775 193318282 210972541 295761023 263454930 131468327 858175274 254807946 191636924 46679845 931194250 885077002 687517437 710455964 475906523 657132896 643441838 387995519 328787698 844123925 795124349 545322589 792001827 929032504 327346534 923628139 420421709 672865603 955573941 852530715 462695853 719102948 954613165 57248381 158009764 876430018 693161996 680912102 569341989 865140900 274263660 654370665 901890582 524906099 620743505 74782543 504969997 17736468 344760599 725347992 249523678 646684457 598645657 400725801 869584489 37672570 733874879 71780118 689679183 94718645 186953141 115255232 815540839 433512282 546763753 545442686 62172358 23621221 343919920 73221282 991362847 9689969 369380484 720784306 5366477 792962603 177705672 477107493 596483911 538837351 118377754 124022313 83909915 911017954 164254808 35991212 380429408 744083124 238714948 475185941 382951445 238955142 968904708 830312770 307890820 889400494 223342532 300805097 941522592 776389217 314976543 992083429 190556051 275704824 798246871 555650931 860096826 638758055 980674214 173862568 333711675 774347568 424985395 611255842 218778846 277025891 876910406 548445111 89314280 801249296 303807522 891081852 660255418 886878457 868503616 404689002 842202373 555290640 689919377 241477179 500046020 672865603 312094215 587957024 21819766 766180972 600927500 58689545 197761871 658574060 293118889 131948715 534994247 227185636 680671908 852530715 698326167 332390608 929152601 775068150 723186246 487916223 543401037 899969030 659654933 149242683 12091909 175423829 189234984 637076697 305008492 821065301 162573450 546643656 231629225 337554779 380429408 692921802 651368240 640439413 355569329 609814678 229347382 205808370 948368121 364216313 794643961 257570177 885197099 319660326 881474092 73701670 663978425 636356115 509173392 865501191 600447112 237874269 365777574 262854445 511215041 194399155 957375396 23861415 452847899 50883240 713218195 169659173 178186060 624826803 576908100 307770723 841721985 221541077 832714710 75503125 286633651 263454930 493440685 786237171 879552540 455610130 907174850 707693733 865260997 9569872 801129199 744923803 310893245 237513978 883155450 340917495 101924465 291077240 821905980 94598548 833195098 281709674 155968115 7528223 245920768 327226437 328907795 648606009 89074086 490558357 82949139 396042018 959176851 130747745 916662513 141916766 177825769 139875117 751048750 448164116 88713795 179026739 154887242 418380060 446002370 381750475 609454387 573305190 658814254 658213769 134110461 224063114 524786002 450806250 777950478 682713557 611736230 407571330 393279787 532111919 468220315 212894093 363615828 556131319 521543383 409252688 486715253 549766178 237033590 162813644 444321012 957855784 338275361 749607586 114774844 156568600 255048140 410693852 753450690 598165269 929753086 188514402 336473906 66856141 214575451 859256147 920385520 462575756 45839166 643441838 743362542 448764601 436034319 441198490 989921683 170139561 596604008 438796550 578109070 880633413 77304580 212293608 296121314 908616014 601287791 373944170 375985819 927951631 591920225 900929806 719703433 188154111 455610130 186472753 206769146 516018921 969865484 836798008 195960416 528509009 244479604 999169152 43317129 297442381 522504159 302126164 515778727 547003947 516018921 752970302 51123434 867182549 935157451 216376906 591439837 700487913 41996062 899008254 523825226 461134592 614618558 645123196 292158113 828511315 680071423 680912102 187913917 936838809 419460933 135911916 652929501 462815950 674667058 465097793 690399765 460173816 319780423 83549624 493080394 684515012 361093791 264295609 686436564 378507856 498364662 218418555 342959144 30586847 46799942 65054686 240876694 163173935 909336596 107088636 934196675 859256147 782273970 172061113 231629225 580390913 254928043 439397035 314015767 847846932 206048564 641280092 279067540 207009340 1403276 595282941 504129318 981875184 84270206 92797093 781793582 809656086 454769451 468460509 298403157 611616133 579670331 582312465 89194183 766301069 785036201 796925804 569582183 768342718 790200372 421262388 115855717 785996977 688358116 360973694 89794668 127625223 449124892 108409703 258530953 693041899 80667296 732553812 29385877 911858633 534273665 930713862 72380603 505810676 393159690 916542416 210972541 151644623 726789156 408291912 350885546 76704095 396402309 896846508 262253960 204607400 58809642 503408736 28545198 897446993 992323623 28305004 196320707 337194488 228026315 843763634 463416435 883515741 96880391 65775268 373463782 572464511 293238986 70819342 914500767 453808675 501847475 758734958 339836622 288675300 948488218 889520591 925309497 76343804 187193335 101804368 865140900 335753324 149122586 242918343 851569939 939601040 817822682 254928043 764739808 306209462 866582064 72140409 363615828 309692275 389316586 932275123 314616252 521783577 494521558 407211039 717661784 752489914 520462510 611496036 200163811 352446807 487555932 769063300 969385096 343559629 626748355 40915189 492239715 147681422 97120585 876069727 15094334 258170662 685235594 362174664 506891549 456570906 703850629 339116040 74662446 691240444 775188247 940201525 412014919 304408007 310052566 166536651 824548114 681152296 394961145 117416978 637917376 523464935 268859295 583513435 620022923 265376482 114414553 626388064 290596852 646804554 34309854 152725496 592160419 378748050 343319435 764980002 131108036 617861177 677429289 603209343 170139561 707933927 98681846 510854750 392439108 963980731 978032080 121620373 293719374 552528409 117176784 669983275 929873183 985237900 765940778 615939625 817942779 208930892 60250806 740960602 832474516 896005829 98681846 389917071 814580063 216737197 146240258 533192792 950409770 300084515 87512825 16295304 505930773 56167508 195119737 381029893 62532649 72020312 683314042 912579215 609814678 951250449 516979697 595403038 731472939 418740351 80787393 422463358 546283365 318339259 345240987 440598005 486354962 184791395 796565513 198842744 247722223 896005829 688838504 522624256 247842320 237153687 802690460 341517980 131708521 692321317 87392728 345601278 423784425 550847051 773386792 280748898 983076154 627348840 853131200 941162301 386794549 608733805 14734043 82588848 829712285 10410551 886037778 783354843 395681727 582312465 737958177 662297067 774587762 230788546 535354538 304528104 332510705 5726768 21339378 957015105 41515674 167977815 893964180 331429832 888679912 306089365 153686272 312934894 670103372 651848628 583033047 577508585 206168661 290116464 669983275 790920954 382951445 751889429 135911916 977071304 983796736 801489490 727629835 572464511 659054448 972387521 199563326 438196065 245080089 614858752 926390370 921466393 278106764 955814135 40554898 185752171 874988854 800408617 103605823 199563326 839440142 227786121 126784544 13773267 204607400 324944594 998448570 618581759 395321436 186472753 349564479 213494578 513376787 184311007 116095911 44277905 361574179 783955328 657373090 222021465 199683423 209171086 178426254 738678759 914380670 416218314 929152601 169539076 974669364 235472329 444801400 320140714 413816374 98201458 675988125 675627834 803290945 520942898 875829533 618341565 424745201 353527680 494281364 947647539 1523373 609694581 19898214 569341989 51123434 639838928 692801705 994845660 587596733 23621221 341397883 880873607 905613589 760176122 752850205 297562478 805452691 515178242 218058264 939480943 267057840 455369936 236553202 303927619 183470328 455970421 322542654 525266390 429428984 696164421 892162725 959897433 515538533 453568481 37432376 825628987 491879424 702289368 803411042 964461119 109850867 449845474 262374057 951730837 302366358 840040627 936238324 684274818 200163811 29626071 103605823 650887852 429188790 326986243 706252569 846045477 60370903 766301069 678149871 529469785 931794735 526827651 517580182 433151991 784555813 23260930 747926228 640319316 894204374 559133744 697125197 215776421 363015343 177465478 791641536 308251111 372623103 375745625 103245532 761377092 214935742 29866265 83309430 942483368 154526951 766301069 802930654 521903674 983556542 455970421 937559391 114414553 140835893 118497851 983436445 592881001 809535989 23501124 951730837 616780304 345721375 241957567 363135440 41275480 345120890 539678030 977551692 613777879 592760904 639358540 25302579 732794006 128465902 103725920 508452810 698446264 701328592 520462510 429549081 210492153 310532954 319179938 968184126 844604313 930954056 617140595 454289063 112613098 498484759 420541806 601648082 595763329 425345686 660135321 28785392 42956838 29145683 323863721 885437293 267538228 115735620 795244446 507732228 230548352 343199338 245080089 831994128 679350841 702289368 259972117 181308582 35030436 81868266 934677063 118497851 538116769 495722528 638998249 333111190 987279549 310412857 178306157 884356420 943324047 665299492 363255537 997007406 451286638 121380179 739279244 111772419 182989940 103725920 262734348 430149566 678269968 479869724 707213345 557452386 645123196 754771757 39233831 48841591 355809523 146600549 893723986 898287672 519741928 451767026 422703552 873067302 353287486 476507008 49081785 761857480 114534650 214575451 649326591 603929925 228506703 697725682 928432019 450325862 897807284 318939744 461254689 619422438 724507313 470021770 404929196 337434682 791401342 790440566 48601397 384993094 300925194 683193945 187433529 479869724 266097064 368539805 296721799 548325014 725227895 918463968 921586490 293599277 830913255 102284756 572944899 776509314 59410127 772906404 172421404 770384367 29145683 597324590 865621288 152725496 185632074 59890515 847006253 75383028 200163811 324344109 533072695 483592731 432551506 644762905 684274818 582792853 201965266 151644623 179987515 965421895 676588610 708294218 449124892 303807522 984036930 232710098 440598005 183350231 253727073 19778117 671544536 225143987 610174969 424144716 774948053 317618677 342238562 840881306 736877304 901290097 1883664 340677301 218298458 174342956 309572178 298042866 934196675 618341565 446843049 17015886 687997825 498244565 767381942 799447841 563697430 738318468 69017887 935757936 40194607 325545079 475786426 683073848 307410432 3565022 440838199 335513130 582912950 813739384 269579877 329147989 304888395 653049598 471943322 926270273 332630802 368659902 701568786 25542773 726308768 305128589 244719798 298042866 470382061 65414977 210011765 41275480 705051599 888319621 833675486 432551506 328307310 814459966 39474025 190435954 488396611 437355386 474945747 703130047 764499614 41515674 715379941 714178971 780592612 473264389 647525136 294680150 534153568 32148108 355329135 196921192 19417826 715620135 45839166 711656934 890601464 115015038 895885732 81988363 924709012 6807641 179627224 55446926 82829042 506651355 351005643 837278396 954493068 457291488 429789275 225264084 153085787 802450266 460173816 450205765 634314466 490918648 870785459 749607586 163774420 36351503 150563750 836557814 428107917 797646386 358811948 194158961 948968606 608013223 681872878 651728531 362174664 333591578 804371818 59770418 190075663 173502277 426186365 566219467 441919072 359052142 323983818 567900825 73941864 630471362 307410432 52804792 345961569 419460933 846405768 179627224 744683609 516139018 654730956 694963451 631552235 682473363 962779761 986198676 133870267 20858990 44157808 769903979 643081547 105527375 482031470 361574179 108289606 127024738 990882459 436874998 600807403 39594122 176624799 464497308 825989278 338755749 121980664 307890820 865981579 260932893 249523678 504249415 220340107 624826803 793563088 197881968 442039169 60971388 882074577 13052685 935878033 535474635 384152415 882194674 620143020 500286214 111532225 352807098 1163082 13172782 548204917 775308344 30346653 577868876 148041713 174102762 572824802 733034200 94118160 251205036 578829652 68537499 147321131 570783153 42956838 507492034 596964299 265616676 51844016 605130895 200764296 813379093 638878152 236673299 238714948 541599582 521183092 967583641 600086821 212894093 1523373 322422557 575827227 981755087 746845355 456931197 619302341 221781271 884116226 128105611 192717797 501367087 155487727 422343261 535474635 509053295 534633956 151044138 659534836 540758903 513616981 566459661 427267238 153085787 518060570 139634923 568981698 520702704 661696582 99642622 878711861 980193826 734715558 398083667 960497918 557572483 834756359 568861601 425826074 85230982 873067302 33949563 746845355 32988787 510974847 576187518 124502701 58209157 861537990 607412738 178546351 596724105 466659054 730632260 449725377 401566480 630711556 596003523 575226742 462455659 931674638 852290521 54726344 647284942 840761209 645243293 221781271 480590306 813258996 872707011 70939439 813619287 364336410 708294218 470021770 921946781 111292031 668061723 569582183 349444382 566699855 823707435 186472753 370461357 680071423 683314042 323863721 704691308 935637839 354488456 252165812 504009221 674667058 352807098 527308039 736396916 462575756 979593341 386554355 163774420 692801705 953292098 638037473 529349688 82708945 322662751 890721561 661216194 2003761 791521439 551567633 243999216 387755325 918463968 558893550 983676639 258651050 447203340 777710284 697845779 286033166 388716101 529589882 166176360 236072814 187913917 967463544 593241292 164615099 575707130 135191334 586035472 469301188 809295795 189234984 308371208 164134711 163774420 752970302 534513859 86071661 569822377 25062385 577748779 322542654 488876999 964821410 486835350 562736654 47400427 782754358 89674571 852530715 433031894 108169509 479149142 744923803 105046987 268739198 746485064 691000250 474225165 961578791 881353995 113693971 498124468 545322589 839199948 670583760 846645962 71660021 476867299 290596852 256129013 177585575 679350841 707693733 178306157 142997639 431951021 551207342 70939439 4045410 242437955 634914951 470862449 84870691 874868757 877871182 602849052 161012189 677789580 432791700 315697125 991603041 202306 245680574 418860448 761977577 368659902 560454811 922787460 739879729 247482029 597324590 436514707 1643470 775788732 306809947 855653237 374544655 379588729 925069303 193918767 646924651 164134711 407090942 87392728 272462205 328187213 634914951 395321436 198602550 523585032 516499309 477948172 539798127 114894941 450325862 802330169 165816069 178426254 680431714 798366968 514457660 35630921 202926042 411654628 193078088 111412128 858295371 509533683 403488032 918944356 40194607 970465969 994965757 782273970 922907557 627829228 542800552 780352418 518300764 181068388 785516589 783474940 5126283 486114768 278827346 983436445 345240987 242918343 265256385 846045477 517339988 141796669 875229048 518901249 370701551 316177513 242437955 348483606 383431833 749847780 144919191 423544231 520942898 973948782 966742962 555891125 306689850 739879729 819744234 632513011 121260082 421142291 205688273 297922769 778550963 565138594 798847356 408532106 387875422 638037473 693282093 778070575 97721070 938159876 143117736 278346958 997367697 111652322 7047835 180588000 700247719 522624256 392198914 946806860 40194607 614498461 79346229 20018311 493440685 744323318 840881306 87032437 211212735 202306 69498275 300685000 886157875 512896399 260812796 113453777 458972846 713818680 238955142 672024924 140475602 838359269 745764482 769903979 865140900 709495188 478908948 244119313 964341022 866221773 680912102 272222011 20018311 955453844 44998487 618341565 494761752 428468208 50162658 89194183 53044986 982355572 773146598 385353385 868503616 862859057 502207766 139995214 593241292 816861906 640319316 439156841 926030079 770264270 868263422 768462815 45478875 17376177 754651660 365417283 371782424 974309073 78985938 103605823 623145445 520102219 939841234 623625833 318819647 658453963 945125502 365537380 901410194 961818985 903571940 551687730 128345805 414176665 532712404 423424134 479989821 536435411 506531258 188394305 136632498 622905251 402166965 102164659 765460390 769063300 423664328 818903555 796565513 119458627 554570058 930473668 528629106 707213345 58449351 82348654 83309430 780712709 9930163 666380365 400365510 702769756 305969268 216497003 852650812 892162725 974669364 369980969 639718831 720303918 736877304 281589577 92196608 796685610 436754901 267057840 350525255 377787274 215296033 845444992 312454506 737958177 10050260 820945204 80427102 450325862 579189943 120059112 876550115 691120347 851329745 634554660 490918648 131948715 548084820 545442686 887478942 320020617 203166236 684034624 130267357 602368664 720904403 814099675 540879000 542320164 896005829 157409279 683193945 31187332 312334409 271621526 695443839 336954294 224063114 495602431 916062028 270300459 347162539 278707249 776629411 422583455 90034862 460414010 693402190 371542230 478908948 8368902 241477179 801249296 184311007 22780542 477707978 345961569 145519676 495242140 161132286 876910406 727269544 365657477 422583455 642120771 862138475 767381942 310172663 701448689 586395763 658814254 457651779 397963570 598765754 847246447 314496155 612697006 404689002 861898281 627589034 709615285 20738893 106007763 814219772 414536956 569942474 294560053 942723562 613177394 101444077 25903064 270540653 710816255 467259539 365056992 26383452 730872454 642841353 249163387 733154297 268138713 857694886 334312160 793563088 66255656 717541687 337314585 562616557 289996367 916782610 409492882 373463782 663618134 213254384 228626800 207369631 363255537 874268272 956414620 130747745 585194793 868984004 822026077 28064810 255288334 966022380 997848085 467379636 619902826 349564479 293839471 178186060 284592002 793322894 413696277 301885970 799087550 644883002 720063724 735916528 503168542 64814492 491278939 850609163 940441719 7167932 708054024 983556542 339956719 406610554 910657663 599486336 826589763 413335986 947887733 465818375 499685729 747205646 83549624 777470090 399524831 542800552 18697244 960017530 296001217 849047902 450566056 960137627 524545808 310653051 62052261 137473177 654010374 776028926 323743624 718022075 69137984 608253417 772305919 710215770 36351503 461014495 237513978 55206732 96880391 926750661 402287062 920865908 647765330 978992856 983076154 697485488 655451538 945725987 296601702 949088703 804371818 574746354 773266695 264175512 37432376 415497732 889880882 309572178 595763329 492840200 719583336 142637348 378627953 193918767 184190910 695684033 141316281 381870572 214815645 939841234 858055177 575106645 398564055 744323318 380549505 807614437 379949020 32508399 157169085 400725801 34309854 78025162 138313856 332270511 146720646 903692037 419460933 145879967 510494459 536795702 226465054 352566904 219979816 945005405 467499733 310773148 846285671 906574365 935157451 116456202 63973813 706372666 604410313 280148413 415137441 270780847 38993637 121019888 280748898 969865484 239195336 674426864 815060451 700127622 435794125 953051904 388956295 78745744 904652813 142397154 322182363 926990855 500646505 361093791 129186484 173622374 763418741 438676453 562856751 573425287 849888581 824548114 780832806 526947748 326866146 796445416 911258148 948488218 272342108 296841896 158730346 658814254 843403343 431350536 20378602 345721375 307770723 171460628 559854326 435073543 880873607 953892583 74782543 183710522 344520405 177225284 93637772 814820257 194759446 834035777 62532649 936838809 668181820 458852749 711777031 381630378 660735806 653409889 294439956 322302460 586635957 394600854 915821834 923267848 27104034 68057111 968544417 775908829 336834197 184671298 301525679 839320045 238594851 591800128 74422252 952451419 734715558 316777998 753810981 761617286 179627224 429188790 154647048 32508399 200163811 337554779 246521253 371302036 460293913 91115735 678390065 231509128 990642265 50162658 800168423 543401037 968184126 650647658 585795278 503288639 944164726 532352113 432671603 22900639 379348535 655571635 315216737 811217347 763899129 49442076 669262693 347883121 577028197 826589763 283991517 501246990 644762905 430389760 114774844 461614980 952331322 475786426 904172425 418380060 917743386 422943746 347763024 27224131 831393643 538236866 276185212 598045172 267057840 562976848 804612012 602248567 411654628 69978663 850128775 309452081 449365086 693161996 740840505 366618253 562856751 676708707 760296219 305248686 743002251 155007339 746004676 901410194 134110461 628910101 713098098 419941321 716580911 761256995 220460204 116336105 230188061 278587152 431350536 992563817 41875965 705171696 306329559 819263846 783595037 946446569 622665057 355689426 327466631 163654323 725588186 365297186 691360541 961698888 418380060 576788003 87032437 824668211 964100828 587716830 506771452 463656629 591680031 216977391 472904098 180467903 832114225 386914646 242918343 53044986 494041170 935517742 890481367 53885665 373944170 414296762 739759632 498004371 157289182 130747745 595883426 326265661 817942779 174703247 623145445 191757021 694963451 733634685 792962603 172301307 228026315 792842506 540278515 899488642 296961993 352687001 802791 379949020 163294032 346201763 173382180 489237290 242437955 407571330 303207037 471703128 553609282 430870148 885077002 780352418 301165388 968424320 601768179 523825226 952931807 956774911 128826193 127024738 128946290 215416130 859736535 507251840 61331679 472183516 539798127 653770180 449485183 961338597 281349383 847006253 465818375 893844083 938279973 154046563 73701670 599005948 244239410 155247533 206288758 565258691 787918529 803531139 260092214 281589577 794643961 383792124 221781271 322062266 646083972 5606671 738078274 395681727 486595156 16295304 318099065 714539262 776149023 137593274 251445230 516139018 603329440 159571025 427267238 640439413 622424863 722105373 823707435 331790123 618701856 953652389 16415401 916302222 346922345 878711861 150323556 568621407 993644690 647164845 428107917 415257538 48361203 18817341 586635957 996046630 502447960 118858142 326866146 299724224 572344414 996647115 754171272 838599463 295520829 272702399 308971693 113333680 303447231 302366358 890481367 466298763 438196065 411414434 875829533 30226556 225023890 732193521 437475483 664218619 342718950 505090094 558653356 298042866 647765330 365657477 692081123 671544536 652929501 643682032 539437836 348843897 569221892 157409279 112733195 275704824 625066997 394600854 450926347 984637415 822746659 215656324 411894822 240996791 458492458 743242445 299003642 228987091 377547080 194158961 201004490 877991279 722225470 39233831 97120585 618101371 879072152 725468089 985357997 292758598 908015529 363856022 179507127 419100642 148281907 573425287 391718526 788038626 976350722 166896942 812418317 775908829 655451538 651007949 811577638 730392066 145879967 442399460 470622255 945245599 491759327 827550539 268378907 842442567 376706401 384632803 717301493 23140833 314976543 857574789 204607400 520822801 515418436 645723681 327466631 196680998 115255232 190435954 963500343 117897366 491158842 599366239 322782848 884956905 638157570 926030079 696524712 82108460 683434139 756693309 905973880 999049055 852410618 996046630 321461781 896726411 873787884 344040017 846525865 363856022 97120585 762578062 418860448 629630683 454168966 11011036 115375329 362174664 812298220 298763448 142757445 782994552 840881306 470021770 905253298 7768417 341517980 143718221 607893126 190315857 620143020 463776726 525626681 76463901 375025043 801849781 524305614 438556356 920265423 129907066 373103491 705892278 826950054 500046020 146000064 602969149 772426016 378868147 735676334 940802010 470862449 495602431 559734229 360733500 389196489 836317620 998088279 396162115 991002556 182749746 952811710 933596190 580991398 867302646 587236442 181788970 867182549 719943627 428948596 343319435 942723562 227906218 917262998 724627410 336834197 448044019 305849171 103245532 962899858 291437531 169899367 943324047 130387454 222021465 22780542 547604432 170139561 328667601 826589763 917262998 183230134 598525560 668061723 624946900 304047716 476026620 40074510 484793701 820464816 684274818 15214431 328427407 586155569 21099184 31787817 597925075 965061604 194639349 762097674 329628377 453568481 419340836 688598310 467619830 255288334 503528833 733514588 508332713 854812558 819984428 396642503 453088093 328307310 829592188 382350960 901890582 361814373 506411161 352807098 890961755 57248381 726548962 386554355 636115921 186232559 25422676 629150295 553369088 687517437 795004252 865381094 692321317 259251535 782273970 86311855 377426983 693041899 228146412 711536837 837158299 392078817 419821224 982835960 876550115 231749322 552888700 252285909 521663480 27584422 707813830 687997825 598045172 795604737 949689188 473264389 683674333 558773453 213014190 438916647 552528409 151164235 188994790 608253417 268018616 749007101 166896942 310172663 133750170 353647777 472663904 326625952 128345805 614858752 656292217 84030012 202565751 561295490 3685119 161012189 902491067 384512706 654610859 105647472 442279363 38873540 976831110 607172544 847126350 229467479 715500038 706132472 386674452 849648387 325304885 890000979 132309006 818303070 985598191 35030436 449004795 411294337 652809404 392078817 611375939 880393219 810016377 5246380 359172239 870064877 209291183 370821648 958696463 727749932 760416316 264175512 596964299 738798856 123902216 73581573 461975271 773867180 980434020 690639959 309211887 804491915 769783882 444921497 821665786 302366358 215896518 350645352 867422743 387395034 525626681 229587576 392319011 723426440 252886394 752129623 161732771 859015953 991723138 316177513 913539991 847846932 67096335 835476941 320260811 887358845 442039169 991723138 404568905 251445230 708534412 865501191 684394915 35871115 999649540 170619949 542560358 883275547 464857599 983676639 193558476 17496274 970586066 337434682 375625528 922787460 670103372 558172968 583033047 82209 485514283 454289063 60250806 270780847 362895246 432911797 772065725 963620440 112613098 635275242 997848085 860937505 444801400 451646929 44638196 717421590 477948172 336834197 24101609 928672213 512656205 819383943 391838623 687997825 680431714 643201644 910417469 885917681 284712099 253847170 134951140 827550539 234151262 341397883 861658087 128345805 16535498 310172663 841121500 687637534 350885546 849768484 276425406 471102643 355809523 302246261 151044138 766661360 898888157 921226199 813739384 404088517 131228133 140595699 588797703 80547199 209171086 91836317 508452810 734115073 602488761 773026501 582432562 835597038 192597700 126304156 546883850 22180057 517700279 985117803 637677182 933596190 384632803 235592426 608253417 915821834 973948782 414657053 647525136 624106221 821305495 14493849 991242750 640559510 875349145 115255232 801969878 956294523 207489728 650047173 983316348 582192368 212053414 971787036 582192368 128225708 247482029 487435835 564778303 824668211 667581335 889880882 69618372 945485793 804011527 791761633 805212497 534754053 734235170 63613522 367218738 940441719 625427288 586876151 363856022 834756359 609334290 829832382 694362966 131948715 387274937 343439532 711536837 9689969 815180548 136632498 64334104 81988363 714659359 630471362 570783153 484913798 140235408 490918648 839680336 864780609 335993518 748286519 302366358 647044748 978152177 751649235 988120228 173021889 639478637 596363814 872226623 93637772 615339140 983676639 274623951 75022737 652569210 279187637 871506041 895165150 538717254 528268815 62532649 165816069 18577147 568261116 75503125 288074815 731352842 302606552 266697549 125223283 858055177 635155145 635275242 341037592 780952903 828751509 633593884 767261845 522263965 400965995 642721256 988240325 774707859 602608858 31427526 201604975 312934894 255648625 104806793 369500581 924709012 884716711 623505736 323263236 535114344 902611164 953172001 15214431 258050565 915341446 19658020 400005219 986558967 991723138 309572178 88833892 32148108 640559510 558413162 332150414 612096521 788759208 619062147 216857294 222261659 213494578 733754782 192957991 978032080 623866027 400005219 825388793 970225775 847006253 714419165 990762362 330469056 944525017 360853597 356049717 827910830 126904641 180828194 70939439 392198914 42596547 447443534 200884393 92917190 869104101 594442262 963860634 694963451 949448994 116816493 974909558 950770061 175543926 612817103 849408193 649206494 506050870 353887971 815901130 969264999 650047173 269820071 732673909 770144173 919544841 163894517 849888581 60250806 76704095 251084939 143237833 649446688 946926957 473504583 746364967 917383095 72860991 99282331 663498037 841721985 883515741 716220620 207009340 295400732 714058874 397843473 759815831 979473244 489357387 854572364 187793820 488036320 612817103 631792429 518781152 987639840 109850867 228866994 801849781 405529681 748766907 385113191 682473363 455610130 497403886 503168542 786717559 757173697 100963689 721504888 151404429 532232016 879192249 460894398 338635652 997968182 343079241 294920344 291077240 26503549 932995705 380789699 995686339 439997520 932275123 627949325 756933503 194639349 940081428 554570058 516619406 747565937 161852868 550847051 13893364 635395339 336834197 512295914 661216194 984877609 66615947 863939930 375745625 309692275 240396306 660735806 263214736 620503311 234271359 447323437 576667906 222141562 797766483 806293370 774107374 794643961 409733076 669622984 341638077 782874455 929753086 196801095 169659173 933235899 461374786 922547266 158730346 53885665 786717559 432191215 273783272 23381027 854932655 376946595 665899977 651968725 175543926 598285366 804371818 858415468 446362661 145759870 633954175 36351503 49321979 156208309 780352418 356650202 614258267 496443110 24942288 498364662 428708402 740720408 337434682 744923803 873187399 270060265 502447960 55927314 116936590 828871606 515418436 586155569 109610673 102404853 507852325 313895670 870905556 108769994 235832620 195600125 36711794 439276938 320260811 91355929 647885427 403127741 219139137 392799399 539918224 111532225 264295609 907174850 850969454 57368478 71780118 974669364 488396611 719463239 615939625 429789275 720904403 676468513 553128894 841962179 981514893 83789818 554209767 957135202 762217771 240036015 95078936 187913917 908015529 792962603 767622136 784435716 963380246 469901673 785756783 112973389 834876456 127745320 723426440 828871606 356650202 340677301 970706163 948248024 998688764 89914765 654370665 180467903 462815950 270540653 646204069 207369631 902851358 168097912 907895432 716220620 133269782 506170967 610655357 438556356 891081852 222982241 401686577 559974423 658093672 529229591 527668330 804371818 303687425 140355505 584594308 642240868 568621407 924588915 37192182 196560901 281229286 741440990 250844745 446602855 227786121 678390065 712978001 681392490 818903555 276665600 600807403 759455540 933596190 754411466 688238019 121380179 800528714 933716287 704331017 272942593 664458813 663377940 566459661 400965995 77905065 639718831 908736111 683193945 764379517 669743081 239315433 392919496 253606976 394000369 171580725 226344957 909216499 942483368 788278820 271261235 296721799 874988854 951610740 255768722 12572297 199203035 877030503 237994366 487796126 273543078 807374243 134831043 162093062 332991093 757654085 120779694 803411042 340557204 133990364 882554965 117296881 990762362 252766297 182989940 56888090 204607400 155727921 817222197 285913069 103846017 933716287 46920039 898047478 381750475 626628258 974789461 175784120 195359931 413816374 694002675 118738045 210492153 162213159 539918224 192597700 361574179 827310345 406970845 625066997 388355810 988720713 514697854 422823649 140475602 540758903 622304766 525386487 741681184 711897128 395201339 734595461 468940897 572704705 520462510 773747083 7408126 70218857 162813644 726669059 703250144 156928891 228146412 920625714 657493187 598285366 857574789 941402495 89074086 260092214 535474635 256609401 411774725 127745320 441438684 997607891 983316348 966622865 796205222 651488337 301525679 104206308 741200796 548445111 673706282 985478094 358451657 213734772 599486336 407931621 848567514 944765211 912218924 65294880 799928229 77664871 503528833 27464325 639358540 378387759 976470819 719703433 283631226 770384367 377186789 10170357 164495002 938760361 44157808 960978306 592040322 677789580 293719374 767862330 395801824 696885003 446722952 875469242 833915680 535955023 389196489 702769756 3685119 136032013 465698278 623505736 399164540 64214007 215536227 402287062 291797822 493440685 41035286 252526103 260572602 476987396 67816917 518901249 532952598 366618253 811337444 940561816 648726106 666140171 896246023 529589882 985237900 909336596 212413705 290837046 663498037 519501734 556011222 732914103 366858447 11611521 566219467 209411280 969144902 909216499 437115192 365056992 507131743 348243412 457411585 969985581 148882392 327226437 641039898 250484454 5006186 886037778 926510467 10290454 426666753 960618015 212053414 22059960 296241411 923027654 820705010 588077121 8248805 440718102 681392490 457771876 678269968 675988125 104206308 825628987 862498766 508212616 556371513 699046749 255168237 341638077 486354962 715019650 832234322 468460509 352326710 27344228 697005100 993524593 175423829 871626138 487315738 586635957 425105492 745524288 626748355 307290335 507011646 455850324 212533802 496323013 20498699 586756054 669382790 555290640 202805945 505210191 795124349 776629411 484553507 833675486 699286943 571503735 604290216 116576299 130627648 296121314 563096945 200283908 130747745 907294947 240636500 695804130 782634261 588197218 346922345 801249296 926390370 170499852 897206799 182509552 472063419 92676996 385233288 69017887 375505431 156928891 703850629 470742352 856373819 523464935 711416740 54726344 914380670 143958415 646204069 294319859 977791886 481310888 154887242 321461781 743602736 85110885 199323132 516739503 244599701 587356539 991723138 185511977 243999216 520222316 675147446 468820800 530070270 646204069 375745625 882795159 377907371 257570177 163534226 540758903 862258572 984036930 326265661 571023347 306809947 101323980 528989397 959417045 618101371 77784968 816861906 604170119 532952598 273302884 664098522 762097674 554449961 811817832 140475602 759695734 171820919 668902402 428468208 750928653 158490152 999169152 892282822 715139747 595643232 156208309 559013647 313895670 321221587 526347263 270420556 186352656 879672637 635035048 211332832 66015462 305849171 524906099 818783458 797766483 881594189 12332103 611736230 861417893 583153144 65535074 628189519 351005643 462575756 189715372 310773148 544962298 136272207 495362237 658934351 531511434 820945204 344280211 964461119 797045901 962179276 351726225 634434563 843043052 389796974 54846441 986679064 343079241 260572602 381990669 305368783 845324895 981634990 666380365 156688697 50522949 41155383 818303070 307770723 676948901 635275242 676828804 391598429 330108765 950770061 830432867 884716711 385953870 354968844 393880272 85951564 988840810 453448384 216136712 201004490 65294880 411774725 852650812 717421590 401926771 737717983 876790309 585074696 862378669 93037287 451286638 942723562 215055839 907054753 28184907 314856446 482271664 805332594 628549810 479869724 911738536 608013223 331069541 746605161 93157384 149002489 266577452 991482944 191156536 273302884 661696582 32628496 862498766 288795397 908255723 583753629 685475788 682694 891562240 155607824 286033166 308971693 63373328 836317620 430990245 770024076 225984666 604770604 432791700 275824921 207970116 648846203 952451419 304167813 837878881 831033352 112132710 285792972 981514893 989681489 841121500 45358778 639598734 987880034 997607891 535714829 436874998 856614013 176144411 498364662 175543926 808815407 88233407 158970540 680912102 149362780 206168661 346922345 717301493 952571516 363976119 414657053 49321979 614978849 320741199 329268086 738198371 917863483 45238681 354728650 142637348 208690698 517700279 379228438 743482639 810496765 727990126 335513130 998208376 463056144 690519862 16895789 590479061 365417283 429428984 203046139 215536227 256008916 391958720 460774301 270660750 189114887 140475602 508452810 501607281 863099251 594202068 233911068 874028078 774107374 891802434 371662327 522624256 362895246 804371818 38633346 508092519 779511739 805812982 363735925 151884817 914500767 521783577 642721256 659294642 149002489 825869181 153926466 18817341 624346415 43797517 312694700 457531682 705772181 90755444 824548114 942843659 311613827 339236137 691600735 168097912 473384486 345240987 862378669 486715253 216737197 22780542 642240868 324464206 344400308 90875541 783715134 332750899 707213345 623265542 364216313 258170662 62892940 595643232 419701127 527788427 506651355 994845660 15334528 761737383 559854326 764739808 969144902 310052566 507371937 337434682 923508042 54966538 919304647 359772724 714659359 299964418 531871725 132068812 561775878 111412128 329628377 631312041 732193521 595162844 700968301 856253722 688358116 640799704 267778422 363856022 558293065 540518709 481070694 855533140 790800857 124862992 222862144 573785578 403367935 541959873 593121195 66495850 669382790 585915375 375745625 807614437 563817527 403488032 551567633 855653237 280508704 247602126 834636262 179146836 321822072 328547504 75983513 766301069 607172544 135431528 332390608 669262693 889520591 759935928 418019769 335272936 94118160 811697735 889160300 487315738 719102948 712737807 192957991 401686577 642240868 528749203 201244684 519501734 90034862 109970964 936358421 916182125 936718712 129426678 225264084 701448689 900809709 168458203 618701856 359172239 712617710 303567328 22780542 412975695 684875303 368779999 106488151 908375820 646444263 583033047 733874879 886758360 701088398 256969692 2604246 730151872 826950054 219859719 66736044 55687120 624586609 197881968 678630259 442879848 810256571 236192911 294920344 921826684 600567209 924468818 297682575 683314042 878111376 343079241 695563936 756092824 763658935 497043595 488036320 754051175 902010679 268979392 298523254 324103915 285552778 846405768 458972846 923387945 822866756 549045596 725828380 33349078 100843592 418740351 337314585 789119499 905493492 452727802 445281788 376946595 185391880 790920954 85951564 644762905 183950716 101564174 783474940 512416011 859616438 858535565 719343142 663377940 528388912 586035472 827910830 64814492 955814135 970105678 689198795 915701737 209291183 695443839 118858142 4765992 304167813 128706096 551207342 79706520 594802553 472423710 376826498 946086278 551567633 270420556 815540839 44998487 599126045 861177699 573665481 649566785 325064691 617140595 492239715 914981155 365177089 625066997 914981155 885077002 7528223 461614980 722946052 499685729 996406921 200163811 396522406 400725801 5006186 378748050 115855717 764980002 30226556 873067302 97360779 556971998 189955566 624586609 797406192 809055601 948007830 205928467 649686882 675147446 752970302 423183940 219139137 903451843 639718831 334672451 758374667 447083243 536555508 102645047 223702823 608853902 677789580 33709369 603089246 863939930 605491186 797886580 279547928 363015343 735195946 769543688 246761447 999649540 537876575 170379755 467499733 352446807 178666448 658333866 397963570 713818680 981875184 803170848 636956600 428228014 753330593 693522287 78985938 360253112 63973813 59530224 360493306 917743386 211212735 257570177 854692461 69137984 614858752 736997401 29505974 111051837 905733686 189234984 165575875 289636076 389796974 607052447 61571873 689438989 806173273 448524407 698085973 667941626 784555813 263094639 676708707 467980121 172301307 203646624 506651355 174463053 108529800 130987939 943203950 624826803 194519252 242317858 696524712 308491305 881474092 197041289 183830619 762578062 529109494 836317620 18817341 170860143 996527018 29746168 610895551 302366358 747325743 169058688 517460085 401326286 703370241 373223588 703850629 42236256 709855479 247482029 133389879 302246261 76944289 867422743 46319554 264535803 576667906 287234136 215896518 898047478 461614980 877871182 140475602 439036744 562016072 201124587 892883307 583993823 504729803 122941440 424505007 289515979 647885427 728470514 364216313 684635109 213974966 119818918 276545503 738318468 404809099 211573026 105767569 943324047 814580063 834275971 433512282 837758784 676108222 249403581 953172001 957135202 857694886 150683847 123541925 58929739 759455540 481430985 143838318 852891006 230788546 534153568 628069422 900449418 256489304 53285180 915701737 389436683 557932774 322403 761136898 436995095 456811100 542680455 42236256 921586490 761617286 756092824 161012189 435674028 699286943 638517861 49682270 699767331 745284094 286873845 187073238 160531801 201244684 76343804 996767212 742882154 503648930 281349383 679711132 477587881 158610249 60010612 454048869 172181210 456330712 207729922 561295490 166536651 118497851 621103796 210251959 435073543 440117617 255168237 191276633 974549267 307170238 168818494 671424439 507131743 14133558 240516403 979473244 445041594 199803520 466538957 881594189 546643656 282910644 87392728 35751018 691600735 110211158 180708097 294560053 214215160 702049174 48121009 776989702 416458508 20738893 678750356 628309616 707333442 978032080 155127436 442500 63853716 202085363 956774911 322182363 771945628 706012375 994845660 307530529 60491000 920145326 273302884 494161267 598285366 39954413 991242750 295040441 665899977 665659783 589157994 224543502 989921683 538597157 933115802 832234322 966742962 708534412 33589272 74662446 540879000 682353266 80307005 860457117 174342956 452247414 809055601 314135864 290957143 431710827 414056568 99522525 687157146 545202492 532592307 28785392 960257724 492119618 699767331 273783272 65655171 325304885 364936895 656172120 527428136 761016801 481190791 187073238 769063300 875829533 642601159 168458203 665539686 126544350 884836808 729070999 323383333 786597462 708534412 131948715 114294456 972627715 470021770 653169695 472543807 74782543 681992975 760296219 292278210 457411585 417179090 560574908 180467903 903812134 743963027 828030927 908495917 585434987 702889853 644642808 127144835 281829771 533072695 335513130 223582726 583513435 993044205 821425592 529830076 502928348 705171696 435433834 503288639 648365815 960257724 604410313 349324285 310172663 978392371 686796855 719343142 441678878 367218738 168218009 834516165 111171934 828151024 859616438 748887004 489357387 132549200 726308768 293719374 681152296 514097369 586635957 100723495 137473177 838599463 935037354 766541263 665899977 828391218 555410737 700007525 669983275 172901792 311373633 209531377 562376363 143838318 322662751 456330712 77544774 771345143 231028740 511695429 604530410 537876575 446122467 25422676 556971998 539197642 824548114 204487303 48000912 216857294 56527799 638037473 441078393 552408312 223102338 482271664 648966300 735316043 225384181 250364357 207850019 207249534 386554355 308971693 7408126 145399579 690159571 202805945 471703128 622304766 225264084 11251230 569942474 817342294 376586304 821185398 901410194 660015224 546403462 492239715 139755020 164975390 670343566 32868690 834275971 140115311 706492763 401206189 991482944 592040322 220099913 378868147 9089484 335993518 456090518 224663599 586275666 262614251 98441652 650167270 601407888 972027230 79586423 550006372 328187213 18697244 261893669 847486641 431951021 536435411 220460204 636596309 932995705 469661479 547124044 240036015 508452810 407931621 262253960 942843659 344640502 608853902 624346415 262614251 985117803 534393762 643922226 307890820 640439413 476747202 365777574 755492339 602008373 160411704 313655476 410333561 5126283 877030503 224663599 712257419 6327253 867302646 668181820 161012189 898647963 656292217 28064810 859856632 9089484 29986362 527548233 223702823 345961569 60851291 76463901 636956600 171220434 834275971 462695853 482031470 74302155 564297915 84390303 655331441 776509314 63733619 854812558 437595580 715500038 986919258 65414977 294800247 782153873 461735077 706252569 480470209 774827956 648125621 736997401 621103796 814820257 106728345 512776302 81988363 574746354 341037592 164615099 581231592 589878576 435674028 280628801 879552540 440237714 145879967 881113801 881113801 560574908 169298882 548084820 912819409 654971150 394000369 367338835 577388488 802810557 344760599 869104101 199082938 131228133 722946052 868383519 922066878 862018378 443480333 70218857 202085363 803531139 897807284 216016615 801849781 257089789 442519557 151764720 561415587 167857718 428828499 192957991 928672213 880633413 482151567 387395034 950409770 636716406 678149871 328187213 872827108 816982003 441798975 784796007 937679488 502447960 541479485 403488032 742762057 711296643 232950292 419220739 657733381 730512163 933716287 975029655 72140409 183110037 131588424 519141443 90875541 897086702 776989702 759815831 43917614 607292641 500646505 116095911 726308768 936718712 699647234 488276514 647525136 985478094 325184788 763658935 278587152 103846017 700007525 961818985 862738960 859015953 396642503 458852749 394480757 944645114 183470328 258651050 49321979 882554965 447443534 843403343 901890582 799688035 511215041 146600549 96279906 696644809 729191096 342839047 661456388 452127317 805572788 330469056 699647234 484913798 851089551 299964418 512055720 198002065 785276395 883275547 498604856 847486641 922907557 737117498 86311855 221901368 417299187 375385334 534153568 54606247 746845355 346562054 205207885 309452081 550847051 154887242 202805945 735436140 400365510 52564598 254687849 10650745 525986972 976230625 271381332 680551811 573425287 467259539 180467903 8849290 639959025 650407464 559494035 567780728 66856141 289035591 867783034 225023890 7167932 585434987 153446078 556731804 309812372 834636262 809896280 579550234 842922955 843643537 236313008 851329745 468100218 889640688 867422743 66976238 418620254 150083362 891442143 178065963 385353385 142757445 360853597 99762719 116336105 441678878 396882697 734835655 446002370 5966962 568381213 155968115 124382604 370461357 908255723 475426135 497884274 250364357 742401766 491158842 300444806 676228319 317378483 707453539 323983818 983196251 86311855 214335257 679591035 182869843 121500276 386073967 823106950 3204731 395081242 86552049 528028621 123181634 778791157 368179514 991963332 296961993 538837351 582312465 712137322 64093910 745764482 869584489 264295609 563457236 132909491 291557628 314616252 508452810 250964842 230668449 579069846 661816679 100843592 299484030 559253841 36111309 515778727 66495850 349804673 743842930 421862873 382591154 943684338 940081428 359292336 843883731 109730770 218538652 807254146 788879305 19658020 499085244 708534412 688598310 967943932 833795583 302966843 3565022 21219281 909816984 936958906 563457236 201364781 450566056 680792005 273663175 869824683 339116040 394720951 541719679 727389641 258530953 499205341 367579029 997848085 561175393 758014376 412615404 325064691 202685848 628069422 348723800 746124773 50763143 847846932 930353571 683674333 878231473 200524102 461254689 21459475 190796245 917863483 526227166 217818070 663738231 360733500 891922531 362534955 518420861 741681184 243638925 618341565 902491067 957135202 46079360 247602126 475906523 338755749 277986667 633954175 305368783 237634075 14373752 390997944 945725987 617020498 963860634 115135135 528148718 766421166 41275480 516499309 209171086 244839895 74902640 771104949 282910644 214335257 702649659 224903793 859856632 610054872 443120042 715259844 335633227 888679912 766060875 570542959 719943627 476747202 837158299 168097912 316417707 158009764 345721375 733634685 753330593 288435106 27824616 78025162 867422743 550847051 499925923 647044748 641520286 326385758 963019955 347402733 957615590 622064572 425345686 514457660 765340293 976230625 4645895 324584303 125583574 721024500 163774420 942002980 989201101 872226623 265376482 110691546 380669602 946446569 225984666 238474754 725468089 192477603 943564241 690760056 594922650 298403157 832834807 132909491 235832620 763899129 400365510 418139866 818663361 193078088 109010188 804852206 12212006 776389217 79946714 587957024 209891668 993284399 540278515 305488880 751769332 487315738 198842744 475546232 561655781 978272274 384512706 28425101 342478756 334552354 947887733 32388302 712377516 194519252 7768417 990402071 137713371 64934589 183830619 391238138 859976729 431951021 971066454 573185093 109490576 507371937 229587576 971426745 393760175 66495850 179747321 101203883 960377821 607052447 977311498 492960297 252406006 374784849 199803520 958216075 467499733 996406921 769303494 964461119 948248024 412975695 388956295 719102948 295640926 238594851 710455964 532712404 501727378 514817951 919304647 807013952 15334528 336473906 370821648 192117312 991482944 999769637 125943865 76824192 586635957 4525798 9449775 453808675 772185822 613537685 315937319 362414858 304648201 477467784 268739198 80066811 609934775 30947138 449124892 318819647 543641231 657373090 890841658 884716711 364336410 865381094 699527137 254807946 334912645 599486336 76223707 213134287 488997096 422583455 635515436 704210920 252045715 249523678 194879543 944525017 901530291 286513554 251805521 738918953 848207223 719223045 195119737 652809404 469181091 729791581 550726954 815660936 995446145 17256080 949689188 261533378 686916952 661816679 811817832 184911492 206889243 111051837 304528104 334912645 169899367 24461900 139394729 39474025 14493849 37912764 547724529 454289063 30827041 568621407 338875846 666020074 384872997 356530105 778430866 486354962 319059841 28305004 151404429 553128894 783595037 962059179 955213650 721504888 428348111 362655052 777710284 869704586 870545265 792242021 620983699 756573212 500166117 660015224 473264389 396762600 452847899 795124349 49802367 599486336 530070270 453328287 277626376 267898519 187433529 38753443 779631836 135911916 789119499 877751085 921826684 599005948 598045172 572584608 725468089 679711132 589157994 287474330 453808675 933235899 425585880 835236747 347402733 377426983 235712523 436394610 952691613 622905251 289996367 537396187 823827532 719823530 690760056 932034929 464137017 859496341 740119923 503168542 145039288 864780609 460894398 471943322 620743505 258891244 359892821 923147751 453088093 865741385 346802248 832714710 156568600 354368359 10530648 940201525 938880458 287234136 102044562 165455778 896005829 196320707 246881544 861177699 550246566 528749203 176744896 171460628 903571940 456811100 755252145 966262574 394240563 380189214 648966300 339476331 15694819 38032861 11251230 581832077 552168118 27224131 504849900 399164540 280508704 62892940 470982546 865140900 957375396 40674995 646684457 737237595 369620678 519862025 620623408 543641231 187913917 902731261 720303918 323863721 386434258 647645233 397483182 747806131 826589763 753810981 674066573 292998792 500286214 946086278 346922345 477828075 700007525 510494459 851089551 442879848 255168237 498364662 444801400 279067540 857094401 905373395 283631226 184911492 470502158 328427407 929272698 972387521 13412976 298162963 186232559 237513978 8368902 642961450 202306 803651236 787558238 33949563 153205884 256969692 602488761 865501191 670103372 362414858 33469175 866101676 896966605 276065115 305729074 248202611 600206918 154046563 936718712 968664514 294800247 608493611 888079427 248682999 505690579 186232559 869224198 625066997 964581216 550366663 38393152 220460204 428348111 426546656 92556899 100483301 993164302 498965147 9810066 327226437 472423710 978512468 495842625 124142410 908976305 131948715 155727921 684394915 281469480 88353504 518540958 608133320 417419284 514457660 18216856 397963570 395561630 925789885 143478027 439757326 802330169 507371937 997007406 494761752 479029045 207729922 405889972 846285671 127625223 825869181 398804249 273062690 757774182 982475669 588917800 90515250 507131743 439156841 983796736 386794549 906334171 285672875 317618677 89314280 96039712 638637958 445882273 211933317 754771757 175303732 859136050 336594003 655451538 433272088 370701551 909816984 675267543 868743810 416938896 427747626 241837470 314015767 262374057 2964537 590599158 740840505 413215889 329268086 216737197 263935318 328067116 727629835 687757631 513857175 809535989 867662937 353407583 924829109 601888276 790440566 21099184 871145750 942363271 747686034 564418012 936838809 24942288 330829347 625187094 830673061 942963756 98681846 817462391 357971269 922547266 848807708 700848204 114774844 256969692 995085854 292158113 152004914 422343261 275824921 397002794 848087126 27824616 877270697 401326286 739039050 215175936 95439227 959296948 833795583 225744472 44878390 695684033 78865841 303327134 56287605 678390065 472063419 995085854 510254265 472663904 418860448 822386368 699046749 834876456 987519743 835116650 495482334 154046563 556131319 505330288 643802129 659174545 519982122 815180548 472784001 919664938 203166236 654730956 73221282 759695734 334672451 65655171 807494340 54005762 310292760 798487065 702409465 968784611 483712828 127505126 546283365 668662208 394240563 84270206 700367816 69258081 353287486 556851901 904772910 553849476 59650321 129666872 264655900 223702823 649927076 997487794 808935504 530070270 611015648 230308158 550726954 204367206 968784611 654010374 615339140 132789394 878471667 641880577 704691308 172181210 740960602 339716525 234871844 12212006 700487913 268499004 853251297 725588186 871265847 475065844 616900401 669262693 567660631 271501429 541959873 681032199 629990974 507251840 936358421 66976238 20979087 564297915 755372242 440838199 878231473 690399765 643561935 24942288 115375329 255168237 756573212 719343142 348483606 252285909 280028316 608373514 60370903 51003337 11251230 148161810 276545503 953652389 168818494 12692394 44398002 493921073 567060146 717301493 723786731 279067540 687157146 932034929 419340836 313535379 91115735 979713438 577628682 130027163 627108646 463896823 34910339 45598972 816141324 676348416 293118889 574386063 447803825 539678030 122220858 762818256 488276514 946086278 41875965 703250144 286993942 109610673 555410737 418500157 4285604 336954294 336594003 997727988 38513249 989321198 821545689 11251230 26503549 136992789 998568667 336473906 907775335 842442567 901530291 459213040 323503430 423063843 879072152 755132048 465458084 333111190 763538838 104566599 476026620 147561325 389556780 908135626 875829533 113693971 382711251 607773029 906334171 837038202 943684338 373703976 132429103 871626138 827910830 56647896 167737621 786357268 853251297 582072271 1163082 542560358 625907676 311133439 971306648 909336596 875108951 224543502 15454625 951250449 903692037 413456083 672385215 881834383 56047411 495482334 939480943 123061537 30346653 873067302 61691970 971546842 457411585 132669297 530550658 922066878 825628987 759935928 718022075 244119313 781793582 415617829 525386487 759575637 134230558 635395339 72740894 300324709 631312041 78145259 79466326 424024619 498244565 342839047 704451114 797406192 430029469 695684033 408772300 268018616 568501310 310893245 989801586 732673909 524665905 449485183 848807708 607292641 353167389 431230439 648846203 831994128 415257538 883635838 153446078 109130285 390397459 49201882 442159266 478548657 316057416 900569515 199803520 899969030 374784849 745644385 274984242 61091485 574386063 692921802 405049293 8128708 376946595 981995281 826349569 86191758 401806674 59770418 894684762 441919072 367098641 953412195 774467665 391598429 869584489 980434020 129186484 537876575 456450809 65895365 774827956 533793277 247361932 346321860 617620983 327226437 471943322 670103372 206288758 454529257 410213464 7648320 463176241 300324709 188154111 58209157 535354538 282550353 480950597 795364543 357971269 97600973 552648506 156448503 957735687 819023652 965662089 841241597 127865417 784555813 676708707 413696277 359172239 74182058 840521015 977911983 634914951 951610740 721745082 831513740 675027349 678149871 595883426 179627224 674546961 41996062 471823225 36471600 388836198 959296948 509773877 463296338 818903555 557332289 659294642 108769994 514217466 340196913 36111309 83429527 588797703 719102948 591079546 704451114 180708097 408412009 298042866 767381942 273663175 606451962 693642384 109970964 955333747 391238138 389316586 57248381 192597700 765340293 414296762 946926957 654130471 694603160 519862025 375505431 288795397 262734348 551927924 485033895 276665600 114534650 530310464 618942050 88713795 592760904 470982546 996767212 757293794 534874150 5846865 388235713 435433834 652809404 156448503 980794311 330348959 536795702 158730346 283511129 76824192 7648320 138433953 519621831 107689121 530670755 635515436 336353809 957015105 69978663 116936590 42836741 426666753 165455778 452607705 603329440 786477365 709975576 733274394 641400189 640079122 16055110 763779032 310653051 369500581 434593155 94238257 162213159 701208495 457771876 610655357 678390065 345240987 545682880 131588424 139154535 995806436 344160114 825028502 514938048 305368783 154286757 837158299 203046139 939480943 770864755 249763872 520822801 864420318 802810557 200764296 73581573 485994671 180347806 713338292 226705248 890841658 290837046 17376177 147441228 323863721 977671789 531271240 584234017 930833959 198122162 193078088 744683609 837158299 156088212 858775759 363495731 13292879 705531987 18216856 448404310 729191096 663017649 209171086 990882459 109490576 799808132 211693123 791041051 124142410 245680574 502568057 287114039 119458627 964341022 568981698 622304766 668061723 243879119 647405039 681512587 493320588 198722647 804612012 151284332 931194250 972867909 978872759 600567209 106368054 352326710 833915680 19057535 942483368 403247838 269219586 87152534 906574365 19297729 68057111 476386911 377787274 975630140 729791581 973828685 529349688 474825650 587716830 685115497 932275123 934677063 678149871 808815407 107929315 943203950 427027044 987759937 954853359 399885122 368179514 73941864 71059536 111292031 158370055 306089365 85471176 843883731 779511739 237273784 360613403 953772486 747926228 467619830 217337682 674066573 452367511 23260930 946926957 965421895 267177937 755852630 357490881 820705010 886037778 800408617 480950597 901290097 84750594 194999640 214095063 545682880 899008254 490798551 499805826 170499852 768102524 870905556 288795397 935878033 810496765 477587881 33829466 792001827 814820257 878591764 144438803 782033776 374784849 885317196 900809709 818062876 671304342 290356658 795965028 267658325 59890515 834035777 233790971 877630988 859015953 929512892 200884393 519501734 869464392 835957329 935757936 681152296 200764296 956414620 750208071 776989702 870064877 541839776 194999640 813138899 265496579 266937743 127024738 902491067 452127317 932034929 920145326 891081852 452847899 81507975 441078393 683674333 844604313 39353928 922186975 481310888 273903369 575707130 524545808 601287791 927471243 919304647 381029893 586756054 549766178 67816917 219259234 759455540 229107188 968784611 273543078 567900825 388836198 972988006 180107612 564177818 472183516 756333018 907895432 928912407 303567328 958576366 545442686 790920954 524065420 45959263 158129861 303447231 463416435 333711675 677309192 734115073 606451962 175664023 690760056 63733619 321101490 144919191 403247838 158249958 32868690 935998130 155487727 252165812 430149566 681872878 540638806 735075849 862138475 618581759 436514707 489117193 335152839 908375820 300444806 971426745 65655171 648245718 238594851 584474211 293959568 561415587 320020617 612336715 619422438 312454506 391718526 108769994 379588729 709735382 106848442 849888581 883275547 798847356 374904946 6927738 766180972 983076154 403848323 824428017 595763329 672625409 952931807 204607400 17135983 258891244 910777760 91716220 27344228 545682880 341157689 294800247 493560782 271021041 936238324 884476517 350285061 712978001 710215770 494161267 107569024 920986005 349204188 120779694 96400003 228386606 801969878 354248262 592881001 282670450 184671298 37552473 367218738 204006915 532352113 919905132 72981088 432911797 111051837 947047054 124022313 309572178 821065301 155607824 642000674 692441414 253967267 1643470 934797160 262494154 359172239 596363814 185511977 699166846 958216075 320981393 505810676 959897433 931314347 459453234 549405887 982115378 930353571 23621221 85351079 684515012 965181701 359412433 919905132 307530529 334552354 415017344 716460814 22180057 114894941 859736535 816261421 194519252 335272936 888920106 35630921 214935742 513977272 564898400 630831653 229587576 774467665 519381637 693041899 920385520 776389217 436995095 90755444 223582726 343559629 663257843 851810133 31787817 235832620 98922040 12452200 666140171 504609706 96159809 939000555 238955142 69017887 188034014 844244022 402767450 715860329 289515979 795724834 511094944 205448079 425705977 580871301 977071304 750688459 382110766 663978425 69618372 441798975 270780847 57968963 168578300 488516708 817822682 13533073 792001827 370821648 236433105 96520100 669983275 732433715 279547928 833675486 634434563 691840929 504489609 53044986 905133201 210732347 653529986 900929806 464377211 743482639 51003337 843403343 59650321 217697973 151764720 916422319 114894941 970225775 861778184 391238138 828871606 509053295 950890158 989681489 799447841 32508399 168097912 555530834 16535498 972147327 828151024 969745387 802570363 124022313 74061961 735436140 691120347 735195946 686316467 322662751 906814559 455850324 986198676 575707130 767502039 119098336 525386487 742762057 584474211 870305071 124262507 619182244 17616371 650287367 734955752 242197761 975149752 325184788 525866875 634914951 721865179 344160114 492119618 790800857 115375329 762938353 309211887 893483792 826950054 291557628 135431528 592280516 625427288 444200915 562597 716821105 302486455 230908643 481551082 694362966 357851172 48241106 385593579 36591697 838959754 569942474 508092519 597204493 383431833 79466326 880753510 618942050 587596733 393760175 95199033 268378907 619422438 752009526 957735687 735916528 626988549 987039355 981154602 771945628 943924532 478188366 691840929 631191944 293359083 649326591 410453658 83429527 573665481 251805521 566459661 979953632 353767874 620143020 382711251 562136169 787678335 319900520 511575332 963380246 277266085 510614556 336594003 269339683 984036930 282670450 219859719 316537804 130267357 716340717 93877966 360613403 941642689 915701737 495242140 701688883 43677420 396402309 2243955 529229591 669382790 560094520 246160962 350044867 559854326 842082276 134110461 158490152 911618439 284832196 903211649 327947019 15094334 24702094 73341379 761857480 132429103 369980969 476507008 89794668 349084091 767742233 580030622 388836198 386554355 715980426 607412738 857814983 818663361 652449113 35270630 395201339 648966300 505930773 386914646 65414977 619062147 220940592 269940168 625907676 412014919 248682999 516259115 107569024 464857599 528989397 193318282 631191944 436874998 386314161 48361203 611736230 177705672 219619525 446482758 281589577 540038321 407811524 273783272 758014376 725828380 200884393 151884817 272222011 36231406 688238019 251205036 183110037 482872149 979233050 473624680 467499733 159931316 692681608 379108341 461855174 461134592 264055415 847726835 960497918 920986005 961218500 760656510 378267662 626988549 964461119 399885122 932995705 136872692 248923193 356770299 200283908 762337868 220460204 564778303 362775149 113213583 506291064 333111190 518661055 416458508 920986005 989201101 152365205 2364052 182269358 326625952 242798246 255168237 813739384 672145021 276305309 393159690 69137984 539197642 641280092 48361203 628069422 98681846 742641960 255408431 646204069 926390370 26383452 124022313 170019464 798246871 107328830 574386063 496323013 419821224 387875422 141676572 471342837 180828194 154046563 768943203 980914408 814099675 686076273 300805097 28545198 988240325 682353266 750808556 785996977 823467241 881594189 995806436 366378059 242077664 831273546 236192911 333591578 951971031 532352113 177345381 308131014 843283246 626147870 377426983 329147989 442639654 124262507 574866451 566099370 911738536 887118651 546763753 984877609 633113496 789119499 770984852 491999521 970105678 868984004 392198914 421382485 581231592 371302036 409733076 992083429 711416740 112613098 46799942 513136593 592160419 679350841 550726954 550967148 33108884 831994128 886037778 312694700 915941931 776389217 583873726 14253655 274383757 562616557 879312346 368059417 284351808 998208376 122701246 219739622 615939625 458732652 722345567 374424558 956174426 906814559 440838199 55326829 209050989 411414434 758494764 688718407 310653051 467739927 649206494 104446502 595042747 69618372 801729684 698446264 335513130 820104525 686796855 493800976 27464325 388836198 862979154 388716101 471342837 228987091 412975695 963980731 954252874 824668211 637917376 13052685 426186365 574626257 861898281 452007220 717901978 198362356 498004371 111171934 578109070 927110952 85951564 771104949 156688697 310653051 150203459 81387878 447683728 609334290 245800671 519381637 503048445 69498275 39353928 430629954 225023890 173502277 462095368 455009645 437355386 896366120 820344719 113213583 517820376 978632565 396042018 495482334 555771028 50883240 925429594 25782967 294680150 896125926 132429103 139394729 425105492 953892583 461614980 51003337 851569939 83909915 862378669 864900706 543521134 432551506 464377211 34069660 61932164 325545079 954132777 416938896 999889734 128946290 785276395 179747321 536555508 146120161 262133863 157409279 144799094 267298034 964461119 551567633 922307072 868984004 514217466 427627529 534513859 137473177 620263117 883515741 339836622 978992856 614138170 712737807 415377635 335393033 835236747 731112648 879672637 6327253 927831534 793202797 826229472 903932231 798607162 643201644 229467479 673586185 24221706 472663904 208930892 506050870 556371513 386194064 118978239 481190791 572104220 950529867 505330288 660255418 347162539 69378178 915821834 375745625 864900706 505930773 322403 511335138 597804978 729551387 924588915 235472329 315456931 498965147 758734958 104806793 360493306 207970116 60611097 510374362 409492882 423183940 871025653 695563936 319540229 745524288 200884393 802330169 878111376 124983089 866101676 878111376 62532649 955934232 619542535 395921921 451646929 445882273 78385453 240156112 689198795 697965876 775068150 580631107 175303732 539197642 578709555 115495426 891322046 920986005 370821648 426546656 640079122 710576061 391598429 695924227 337794973 330949444 683674333 714899553 478188366 856974304 119338530 613057297 337074391 329147989 823106950 682833654 515898824 208450504 580030622 444921497 974549267 994965757 144198609 661576485 4405701 734715558 824788308 77905065 233310583 525026196 244839895 978032080 591559934 374064267 78745744 918343871 755372242 802930654 739999826 845084701 498604856 902250873 731713133 771705434 529830076 724147022 355929620 423424134 251325133 984757512 441318587 238234560 757173697 41035286 430509857 97721070 923988430 715379941 533192792 212053414 62052261 850969454 476146717 553489185 479869724 308371208 226705248 890841658 290837046 982475669 207009340 774587762 147441228 479389336 298162963 975389946 649326591 377667177 166896942 757894279 366378059 377907371 455730227 586515860 991242750 340677301 522864450 360133015 432911797 134110461 796445416 794283670 526827651 318339259 848447417 602128470 368299611 931674638 85230982 373103491 17736468 6207156 460293913 675027349 44878390 113934165 569582183 706012375 90995638 146000064 805692885 358211463 770624561 227666024 813499190 421742776 232950292 887358845 289996367 431350536 213854869 397603279 970706163 850489066 322062266 539798127 560094520 795484640 159571025 407811524 153926466 780232321 479029045 893844083 858175274 878471667 61211582 228146412 22059960 721504888 142277057 481551082 816982003 198002065 114174359 164374905 128585999 547844626 885317196 783474940 83669721 668662208 848087126 707093248 120059112 332150414 838239172 390517556 821065301 591199643 72140409 349804673 347522830 986679064 329027892 593601583 997607891 108049412 974669364 616420013 660976000 296841896 776749508 140115311 57128284 47160233 182629649 56888090 77784968 902611164 64334104 732673909 399044443 714659359 296001217 309572178 615459237 581591883 546043171 123061537 619422438 581832077 990762362 758494764 231509128 519261540 270540653 792482215 378507856 84390303 810616862 580871301 996767212 169178785 618821953 424144716 463656629 606331865 242437955 17736468 237393881 756933503 871145750 876670212 37072085 381510281 581111495 140115311 781553388 400725801 86191758 947887733 273543078 904412619 685595885 241597276 494041170 960858209 615819528 622064572 811577638 344760599 291917919 126784544 225023890 983916833 595403038 475546232 864180124 931554541 446362661 957615590 281949868 232710098 994725563 693041899 448044019 396402309 691961026 634194369 535474635 969865484 992323623 722225470 406850748 29025586 106728345 297922769 984757512 613297491 348243412 252045715 790440566 458732652 949569091 776749508 219139137 450806250 216617100 532952598 401566480 709975576 331069541 495482334 40554898 310773148 151884817 754771757 824788308 768342718 243398731 427747626 10530648 49802367 467259539 539077545 694603160 777710284 407571330 757413891 415137441 374184364 166176360 849528290 735676334 673225894 210732347 1283179 33108884 186833044 296481605 169899367 688478213 163053838 253967267 806053176 294439956 828030927 701929077 837278396 431350536 788879305 328787698 385353385 728470514 733514588 856493916 782874455 492479909 568020922 239555627 255528528 397363085 56287605 303807522 826109375 927591340 300204612 232469904 948728412 579430137 532592307 334672451 165575875 136992789 413936471 863819833 159571025 518420861 636716406 974309073 175423829 421262388 980193826 149602974 245560477 728350417 403247838 819504040 183110037 793563088 335272936 399524831 907174850 557452386 890481367 326986243 382230863 347763024 64093910 252406006 148402004 658934351 615098946 809295795 353167389 654971150 548084820 350885546 440357811 571623832 960978306 122821343 732193521 28665295 468100218 411054143 792242021 571263541 815420742 894084277 607652932 585074696 934556966 573905675 508813101 278226861 227425830 641880577 505810676 918704162 31787817 165936166 111412128 304648201 428708402 747926228 215416130 79586423 135551625 302246261 335152839 475426135 907415044 174342956 765220196 605731380 507972422 319900520 126424253 995085854 986318773 393640078 449965571 485274089 429789275 928792310 867542840 559614132 75262931 810136474 349084091 126664447 672625409 401926771 966863059 501847475 848447417 73101185 334071966 426546656 213134287 64814492 312694700 594562359 342478756 621464087 176744896 372623103 394360660 113814068 853371394 466899248 743362542 339956719 956054329 728470514 822026077 963980731 412735501 786717559 812658511 304768298 834035777 790560663 259011341 72140409 283030741 769423591 225504278 79106035 758975152 622304766 115495426 729551387 286513554 557572483 820344719 505690579 646924651 998808861 121980664 332870996 784916104 694002675 284471905 936718712 639838928 270420556 462215465 483232440 608493611 77784968 215175936 619782729 700367816 764379517 312454506 489357387 946686763 966622865 768703009 380189214 41635771 319540229 624106221 647645233 359052142 999289249 611375939 263935318 387875422 20498699 50282755 660735806 54966538 933355996 378988244 660976000 430509857 617741080 594081971 452007220 278587152 171580725 771945628 59650321 801489490 399524831 251805521 211573026 856253722 37792667 410693852 472063419 139514826 772185822 23981512 328667601 825028502 341517980 578229167 369020193 376586304 694122772 704331017 579910525 293599277 445521982 150323556 784195522 675387640 234991941 446722952 283150838 902010679 127385029 619062147 75503125 118497851 642240868 9089484 602248567 850969454 212653899 294079665 450566056 78745744 19778117 781313194 907775335 239075239 854692461 147321131 763538838 429909372 750688459 469781576 328187213 370581454 238714948 227906218 158249958 721144597 206288758 563217042 521663480 635515436 886878457 645603584 765820681 96640197 365657477 942363271 769903979 717061299 215175936 390757750 765940778 889160300 904772910 461134592 396882697 586515860 36591697 249883969 864180124 200764296 266577452 112493001 58449351 390277362 436274513 594802553 825388793 460173816 500286214 594562359 937919682 763178547 926150176 657012799 8969387 948007830 746845355 454289063 212773996 345601278 886518166 758855055 721865179 556731804 464857599 876790309 460293913 948848509 907054753 674186670 476867299 601648082 918463968 213254384 540518709 27704519 216016615 681992975 99522525 111772419 776509314 861417893 59770418 270300459 962779761 572224317 277386182 429068693 352326710 406850748 789119499 610775454 623385639 107929315 921346296 886998554 608613708 6207156 543160843 25422676 577628682 836677911 326265661 52564598 728350417 50282755 682694 328787698 714899553 8008611 161492577 944645114 176384605 48961688 867662937 403367935 113934165 722705858 295640926 392078817 338395458 454889548 73101185 234991941 528388912 439517132 837038202 622785154 660255418 516259115 261533378 273903369 785036201 353407583 609934775 457531682 186712947 66976238 869944780 233911068 87993213 59530224 849408193 48361203 535594732 743842930 449124892 30226556 742041475 57848866 275104339 845444992 110331255 858295371 923628139 999169152 259972117 38993637 77784968 216737197 684274818 848567514 225984666 336353809 645603584 258651050 719223045 812298220 45839166 992443720 467619830 460534107 42716644 512776302 544962298 227185636 431350536 599246142 355809523 559494035 614498461 401086092 397963570 686556661 359412433 484913798 743002251 899608739 792362118 803411042 258530953 64814492 650767755 817822682 212053414 495001946 554329864 59169933 307650626 543761328 85471176 339236137 35030436 863219348 317978968 304287910 559013647 713818680 996527018 983796736 301165388 803170848 32148108 439156841 35390727 502207766 506050870 35630921 464737502 983676639 516739503 443240139 541359388 749727683 663017649 36591697 51003337 49562173 278587152 301045291 660375515 860577214 390997944 878111376 853491491 846165574 474105068 15694819 844123925 678269968 409012494 784555813 107208733 963380246 294439956 679230744 899248448 508813101 519501734 469060994 101684271 567900825 481430985 566699855 466899248 705892278 764499614 441318587 175664023 328907795 897807284 388235713 84030012 664098522 296121314 521062995 82949139 263334833 749487489 593961874 602849052 134470752 971907133 233430680 149602974 675627834 582552659 231629225 979112953 92556899 79346229 958936657 578829652 529229591 975269849 987880034 379228438 386434258 151524526 637196794 248682999 979473244 706853054 316417707 461254689 890481367 38032861 913539991 987639840 760656510 709615285 619422438 554570058 251925618 245920768 993044205 148041713 535354538 768823106 288194912 249643775 510854750 636476212 179266933 794884155 583633532 113453777 851690036 567900825 314015767 256969692 89914765 801729684 869104101 758374667 212293608 995686339 149362780 201124587 633233593 251205036 693402190 141556475 726789156 843163149 827910830 230788546 48241106 674066573 754771757 959176851 433632379 869104101 891802434 865621288 749127198 570302765 910897857 211693123 870905556 134230558 299123739 591199643 928552116 896005829 45598972 597204493 966742962 126664447 21699669 95319130 218298458 639238443 519261540 280148413 135671722 326746049 686676758 235112038 519501734 379228438 769783882 981634990 902851358 53165083 911138051 669022499 141316281 488876999 48841591 437115192 657853478 74902640 169058688 386434258 162093062 432071118 356770299 634434563 765460390 60491000 611255842 479629530 827550539 90755444 286993942 39233831 169539076 440477908 967103253 115255232 196320707 858415468 513136593 280748898 844604313 852050327 603089246 914260573 324464206 405529681 157048988 316777998 243398731 845204798 310172663 447443534 572944899 708534412 242798246 290716949 615579334 57968963 269940168 860096826 547844626 86311855 329027892 66976238 978632565 156928891 183110037 161612674 597925075 82708945 818303070 64454201 315937319 73461476 756333018 798847356 307050141 999289249 221180786 677429289 813979578 622184669 545082395 902370970 929632989 183950716 834275971 257690274 128105611 49081785 525866875 333831772 467019345 248682999 601047597 54726344 73941864 957855784 593481486 862738960 614258267 640079122 960137627 985357997 96880391 583393338 700007525 914020379 441198490 189955566 981875184 516499309 557212192 217697973 774227471 338155264 476987396 247962417 899128351 369980969 44758293 329988668 890000979 977911983 706973151 839079851 957975881 7288029 239795821 607052447 685956176 940201525 365417283 734115073 881233898 642360965 658453963 331790123 21939863 282790547 558293065 159571025 638517861 284832196 909456693 279668025 547964723 112012613 728470514 792121924 764259420 283991517 666620559 913900282 705051599 879792734 93998063 786477365 801129199 67336529 849528290 378267662 38633346 237033590 710816255 943083853 169418979 620143020 578229167 701808980 584234017 481310888 13653170 461614980 718382366 606932350 742161572 298763448 326265661 549525984 568621407 904772910 993044205 859496341 614498461 981274699 172421404 179987515 268619101 415137441 104086211 772786307 693882578 515898824 118257657 47400427 803290945 910537566 814099675 61571873 447923922 670343566 292278210 617380789 615459237 969264999 549766178 615819528 74182058 132909491 383311736 783354843 232710098 109490576 319420132 220940592 669022499 715500038 562256266 48841591 861537990 919064453 666020074 677429289 505330288 26263355 80186908 947647539 144318706 709975576 601047597 243518828 603209343 223822920 32988787 56167508 503168542 534153568 590959449 9089484 119698821 215296033 830312770 385113191 652809404 494641655 588077121 223943017 288915494 368179514 699527137 452127317 11851715 703370241 543521134 609334290 795844931 505330288 170619949 60130709 688718407 166776845 316898095 465458084 643561935 261533378 865501191 946446569 711176546 308611402 59530224 663377940 139394729 638157570 17616371 746244870 512175817 610895551 139154535 327466631 81387878 619302341 806053176 826349569 974309073 225744472 575947324 812418317 64093910 875108951 738918953 503288639 478428560 431470633 20858990 634194369 685595885 107569024 586155569 294199762 437235289 180347806 250484454 137112886 662777455 684154721 808455116 991603041 496443110 522864450 682593460 635515436 425826074 975750237 765220196 661936776 280388607 883275547 994965757 173982665 597684881 758494764 302246261 811097250 278467055 91836317 63613522 410453658 864300221 151284332 562376363 829952479 547844626 75983513 959777336 335152839 638517861 41155383 573785578 950529867 929272698 75863416 397483182 915461543 708054024 728950902 153446078 629990974 381270087 831994128 162333256 949448994 959056754 815420742 57128284 601527985 3565022 110691546 916422319 612697006 222021465 391838623 301165388 431951021 442399460 985598191 248923193 564177818 741080699 865861482 488036320 369980969 876069727 180708097 137112886 962299373 707333442 554089670 756453115 168818494 712377516 615699431 619782729 170860143 131948715 370581454 552768603 819864331 734355267 339716525 230428255 70699245 118978239 134710946 891802434 673706282 482511858 899608739 779031351 563096945 922427169 222862144 857214498 138073662 409252688 459693428 76103610 684154721 708174121 341517980 859376244 399404734 210131862 318459356 702889853 202926042 384392609 34910339 873187399 508572907 174823344 961338597 815540839 520342413 700728107 565138594 887599039 159811219 11611521 527428136 846886156 641640383 376346110 554089670 924228624 83189333 233790971 190435954 685595885 975389946 110571449 57248381 999649540 848207223 232469904 919785035 527428136 254207461 332510705 981875184 287594427 416938896 784796007 644042323 392799399 966022380 937799585 886638263 161012189 332870996 292398307 291557628 548084820 507011646 579550234 569221892 468340412 299604127 644402614 616299916 193558476 87993213 415137441 760176122 190556051 373824073 657973575 719463239 973708588 457651779 714299068 552768603 970225775 819744234 126424253 580511010 405649778 40074510 204367206 260692699 242197761 381510281 149723071 38993637 61932164 615579334 455730227 144078512 282670450 111171934 121139985 574386063 597564784 699286943 896726411 418980545 985117803 423904522 107208733 886157875 990161877 973828685 533793277 883635838 758374667 460414010 198962841 63613522 368779999 970465969 983076154 824668211 317258386 916782610 520462510 424625104 990882459 816381518 881834383 118137560 570422862 675988125 359412433 830913255 270660750 538597157 336954294 479989821 425105492 159931316 126063962 946326472 891802434 551087245 443240139 372142715 167737621 70939439 868623713 431110342 274383757 207729922 452367511 651968725 393640078 995566242 370581454 965181701 721865179 617620983 557812677 414296762 711176546 776149023 833555389 431350536 620022923 937439294 557692580 168818494 818182973 764379517 504009221 592160419 249643775 606451962 656652508 969385096 997848085 131828618 501487184 860457117 350885546 975269849 847246447 205568176 162093062 83189333 975269849 625907676 136392304 944885308 416338411 150683847 509293489 76583998 266217161 32028011 686436564 227305733 42236256 957015105 643682032 730271969 38393152 568501310 27944713 997367697 616780304 740240020 83789818 278467055 14373752 529709979 237273784 723666634 238234560 506531258 275704824 113934165 663257843 810977153 482391761 95078936 142156960 611736230 821305495 412495307 475546232 986198676 213614675 849768484 38032861 225624375 876430018 850729260 734235170 788398917 686916952 571503735 210251959 545802977 654130471 807374243 835116650 988480519 490798551 21819766 542920649 207249534 788639111 402887547 551927924 289155688 653529986 105287181 352446807 407090942 840280821 493080394 911618439 486835350 850128775 905133201 314376058 521663480 518180667 579069846 120179209 65895365 843883731 703130047 979833535 218058264 354248262 358932045 24822191 19057535 320260811 600206918 259852020 821665786 478308463 802330169 972147327 583273241 935517742 510254265 890841658 869944780 688358116 83429527 661936776 598525560 443120042 362294761 199803520 247121738 477227590 588197218 667581335 568741504 759455540 220940592 80066811 912819409 160411704 282790547 224903793 630831653 615579334 236192911 931314347 411174240 176504702 47520524 506291064 637076697 876670212 201004490 249763872 296481605 945245599 487435835 160411704 996887309 716100523 179026739 310773148 337074391 51964113 306209462 158970540 491278939 313295185 888439718 814099675 513616981 276305309 849888581 409252688 72020312 235112038 990161877 292758598 942843659 310653051 53285180 690039474 446002370 333831772 782514164 240276209 415137441 58689545 763418741 121260082 538356963 310653051 58209157 165695972 89674571 536075120 503288639 483953022 328307310 443600430 154767145 800168423 926390370 465217890 168338106 506771452 128225708 722705858 767021651 619782729 553849476 764739808 260212311 108289606 836557814 993404496 193798670 313655476 443360236 18096759 79346229 527908524 384632803 115975814 909816984 255528528 538356963 617861177 959537142 901410194 400365510 338995943 925549691 145639773 951370546 678630259 333711675 211452929 487315738 241357082 570663056 565138594 864780609 256369207 5126283 562976848 663017649 144558900 47880815 454769451 918103677 766901554 896005829 948007830 283871420 734115073 855052752 194279058 7648320 457651779 704691308 878831958 931434444 185752171 720183821 748766907 527067845 332991093 942963756 214095063 424625104 454168966 910657663 783354843 880513316 648966300 898407769 880873607 92316705 307050141 455249839 787197947 602608858 740720408 616540110 819504040 378868147 70939439 116816493 287354233 605971574 974188976 293959568 777349993 730392066 609214193 443240139 513016496 274623951 920865908 103966114 586876151 454889548 209771571 5006186 88953989 183830619 32628496 794403767 639238443 181068388 914500767 457171391 100483301 522624256 325665176 944645114 630591459 168698397 243518828 500766602 780712709 532472210 352927195 607172544 128585999 225744472 206528952 536795702 903692037 376226013 270300459 225864569 595523135 23260930 756933503 818423167 158850443 464016920 741320893 937079003 370821648 3925313 173862568 305248686 207369631 937799585 855292946 499565632 55326829 728350417 313295185 109610673 586395763 420061418 412615404 203286333 690039474 49682270 454289063 761737383 684995400 724987701 523945323 106848442 691600735 213254384 860697311 491879424 602248567 589398188 909216499 15214431 559734229 527187942 988000131 447923922 537996672 429068693 837038202 229947867 565138594 168938591 100963689 918463968 569582183 519621831 722585761 22540348 622785154 366017768 353527680 443120042 50162658 843523440 279668025 4886089 885197099 270660750 133149685 151404429 134951140 548925499 188994790 615579334 267778422 34670145 870305071 224543502 798607162 925669788 758614861 412135016 958816560 245440380 89794668 638157570 916422319 54486150 737237595 51603822 501487184 389917071 969024805 971546842 827550539 220220010 822386368 783715134 872346720 354848747 900449418 937319197 415497732 2243955 810496765 856253722 235832620 13773267 188154111 793322894 713458389 213614675 305488880 715500038 674306767 425705977 953652389 128345805 352086516 464857599 715620135 149963265 977791886 883996129 147801519 363375634 99402428 729070999 186592850 690159571 481310888 915101252 861898281 334552354 116216008 61331679 157649473 761857480 788879305 929272698 172181210 302126164 343799823 310532954 2844440 824668211 695684033 852290521 210251959 611135745 122461052 270420556 291317434 889400494 510614556 914861058 66375753 555050446 814339869 937799585 868743810 415257538 976230625 794163573 889280397 677429289 305008492 980674214 178666448 901290097 210251959 573905675 450566056 870785459 736997401 545082395 77905065 251565327 624706706 670703857 273422981 474585456 448284213 131228133 460173816 978872759 309812372 74902640 722585761 601167694 703610435 206408855 8248805 984036930 630231168 406010069 606932350 12692394 298162963 429188790 893603889 326025467 810736959 131708521 797526289 31067235 436514707 552288215 349924770 662297067 921466393 642601159 53645471 877630988 138674147 150563750 759455540 653770180 451046444 586275666 62892940 202565751 199563326 634794854 715139747 519381637 251925618 234271359 976230625 371061842 770264270 874388369 100483301 835236747 465698278 177705672 409612979 425946171 32388302 659775030 211452929 942363271 565018497 224183211 555050446 905733686 868743810 341758174 269820071 857094401 59049836 148642198 719823530 726669059 587116345 768462815 147201034 562376363 205688273 952091128 436514707 273062690 581952174 867422743 366498156 294680150 6567447 885917681 928311922 412735501 232710098 935037354 791881730 845685186 585675181 146720646 485994671 950649964 351365934 528509009 925909982 407451233 87753019 590358964 758734958 314736349 734235170 945485793 763658935 866582064 151044138 659174545 700848204 232229710 572824802 948728412 601888276 984157027 948248024 66856141 476867299 209531377 477587881 608253417 598645657 573064996 430269663 848927805 717421590 106968539 516739503 137833468 638517861 451646929 468700703 469301188 800288520 52804792 928191825 394240563 96400003 924348721 498124468 352566904 886277972 485754477 435674028 581111495 766060875 706492763 531511434 793202797 608493611 737477789 732914103 728950902 732313618 519021346 299844321 557212192 369980969 197041289 26743743 614138170 767141748 701208495 217938167 524545808 189955566 569582183 477467784 452007220 422943746 335873421 825148599 154647048 297082090 14493849 235472329 106247957 714419165 561895975 757413891 302486455 898527866 18336953 766781457 553248991 635995824 230668449 854812558 364576604 958456269 708894703 567540534 611736230 585675181 365177089 35030436 764619711 826589763 315336834 840641112 523945323 36351503 265136288 379949020 93277481 260932893 608253417 826109375 170740046 414056568 746124773 906934656 622665057 222982241 998808861 600567209 257450080 639598734 905013104 319540229 399044443 977791886 95919615 873667787 669142596 454289063 231509128 233190486 198482453 534273665 712257419 164374905 148402004 240636500 239915918 566699855 502447960 841121500 155127436 93277481 571023347 509413586 860216923 952931807 181548776 432791700 176985090 891201949 842922955 407691427 985838385 728590611 171340531 732313618 536075120 880993704 834396068 207850019 254447655 881233898 657132896 636716406 40795092 221901368 446602855 959657239 707093248 806773758 948608315 382951445 840040627 670944051 605731380 770864755 130387454 774948053 410093367 709615285 273663175 793442991 503168542 536915799 159931316 127505126 729791581 714539262 583153144 620983699 16295304 176264508 703730532 193198185 724987701 597204493 873307496 703130047 954252874 590959449 148281907 321341684 422343261 976711013 689679183 309211887 744203221 446002370 582552659 33709369 98681846 439757326 119698821 631191944 440237714 634674757 237994366 706252569 336954294 343439532 415377635 526827651 673586185 662657358 366017768 2724343 127505126 269099489 204847594 25542773 759455540 216136712 757533988 80307005 751529138 474345262 626508161 527067845 255768722 809415892 712617710 337314585 191877118 371902521 920265423 162093062 992203526 212533802 978272274 204847594 179146836 656772605 448044019 417058993 127865417 722345567 579310040 936958906 338515555 219019040 223342532 770024076 71179633 695924227 484073119 823106950 763298644 845204798 182149261 449845474 533793277 838479366 848087126 969264999 82348654 872226623 446122467 467860024 170259658 191757021 199082938 747325743 395801824 776149023 170499852 899488642 166776845 970946357 456450809 636356115 480710403 784675910 396042018 270180362 539317739 756092824 115735620 590118770 688838504 734355267 742762057 747085549 168818494 467980121 560695005 890000979 792001827 157409279 587116345 83189333 945485793 245320283 506050870 708414315 836798008 389676877 940561816 836677911 381630378 919304647 705291793 455369936 272462205 760656510 363495731 409612979 847726835 253486879 402407159 535354538 384872997 557332289 992683914 39594122 204247109 719102948 818543264 88233407 886398069 762938353 730392066 297682575 463296338 180227709 891081852 606932350 939000555 502327863 182869843 645123196 152845593 914380670 55927314 306809947 768943203 99762719 372382909 30346653 732914103 410213464 820104525 37552473 69618372 945125502 323023042 644762905 704210920 570422862 337194488 265736773 437835774 187073238 326025467 915101252 403968420 225624375 300564903 837518590 891201949 642360965 115855717 252766297 653289792 733994976 504249415 977431595 818303070 440838199 436514707 181788970 152125011 4285604 666740656 824908405 711897128 109370479 135191334 116576299 855653237 256249110 766180972 689799280 33228981 926870758 590358964 753690884 294680150 437475483 669142596 537035896 983436445 647164845 266337258 406490457 698806555 785996977 190435954 875469242 432191215 802930654 530190367 311013342 399164540 239315433 684635109 345961569 891802434 883035353 328307310 246881544 800648811 149242683 180948291 115135135 983436445 732433715 352927195 843403343 998688764 197161386 175784120 147681422 299243836 956774911 752369817 764859905 961458694 587236442 743242445 798847356 81988363 721024500 300685000 940561816 574746354 684635109 72380603 900209224 215896518 480230015 12091909 592400613 410213464 296721799 549405887 887839233 144678997 710215770 267898519 46679845 363615828 549165693 373944170 114414553 474345262 794523864 280148413 247241835 9209581 177585575 246641350 79106035 806413467 260092214 94838742 119818918 774707859 543881425 29746168 275704824 16055110 498965147 867542840 574986548 463176241 118858142 161732771 481671179 611135745 827670636 352086516 757654085 511094944 175063538 760056025 66856141 122701246 364576604 499085244 473504583 751529138 245920768 2604246 789239596 623265542 31667720 76944289 937919682 845685186 279427831 587236442 318699550 507852325 879072152 339116040 718742657 455009645 157169085 560695005 898647963 246881544 31187332 572464511 963620440 971546842 282310159 371422133 955093553 536435411 584954599 913059603 54486150 243999216 184791395 824548114 38513249 358691851 731232745 26623646 26383452 887118651 57488575 454289063 410573755 777950478 137353080 833675486 214215160 929753086 483953022 390997944 478308463 434833349 10170357 572224317 366498156 510494459 333231287 864180124 246160962 409372785 164735196 772546113 173141986 703490338 449365086 833555389 323263236 293238986 972387521 130987939 149843168 466058569 675147446 845444992 277025891 939360846 891322046 682473363 696764906 546163268 591319740 596724105 836918105 747445840 495122043 166896942 321822072 351846322 312574603 988840810 425225589 914500767 508212616 262854445 874388369 282910644 382711251 678269968 544481910 32508399 29145683 719703433 863459542 909696887 299123739 424865298 137112886 377787274 296841896 618101371 974188976 57608672 223822920 861898281 954132777 670343566 953772486 497403886 609094096 115375329 390997944 158730346 26383452 699407040 644522711 154647048 132309006 212293608 952451419 777950478 337074391 616299916 397363085 449004795 786237171 86311855 156208309 845084701 439637229 673345991 109850867 80907490 177825769 507732228 623866027 532952598 226705248 896846508 866942355 204847594 713698583 626147870 945245599 67696820 612216618 395201339 932755511 3565022 261293184 553729379 975510043 614978849 23861415 450686153 853491491 558052871 875709436 359652627 700367816 304047716 450325862 595403038 218178361 935517742 185992365 426426559 136512401 863819833 898527866 80066811 549165693 903812134 339596428 156448503 918584065 885677487 367579029 992924108 944044629 457411585 236673299 31907914 51123434 591079546 36831891 848687611 184911492 446602855 218778846 636236018 293118889 136992789 619782729 133509976 177825769 614978849 317498580 158970540 66015462 818903555 846645962 475786426 882434868 84750594 17376177 645603584 80186908 58209157 648846203 468820800 624346415 107328830 577868876 571864026 931794735 766661360 701929077 973828685 807854631 944885308 980794311 512656205 804371818 885797584 57848866 504489609 591559934 516739503 502568057 993044205 752009526 958696463 772065725 151284332 798006677 51123434 224783696 307770723 138313856 737477789 581351689 141316281 374784849 380789699 636356115 375145140 3324828 882915256 962179276 464016920 758494764 171340531 221781271 836677911 470261964 81507975 495242140 504369512 19177632 804371818 753210496 795844931 178065963 161372480 511094944 57728769 866221773 622905251 448044019 332150414 387395034 339116040 736036625 940441719 132789394 684274818 476507008 513016496 110091061 468100218 299724224 174823344 969505193 371542230 363976119 377066692 923027654 855653237 214575451 18457050 279307734 262734348 816501615 570542959 820705010 453928772 292758598 184551201 809175698 852650812 328667601 466178666 949208800 65174783 697845779 657493187 818423167 23621221 564538109 146120161 84630497 590599158 696524712 353887971 205448079 485153992 714779456 845685186 111292031 345961569 607172544 519741928 253967267 963860634 801969878 716340717 458852749 59770418 724147022 452607705 182869843 199683423 988720713 863939930 311854021 740119923 790800857 49442076 513136593 584354114 396042018 970465969 965782186 995446145 142036863 263454930 679350841 696764906 487435835 149242683 152965690 218418555 243999216 207729922 848327320 592881001 761857480 879792734 291077240 650527561 705291793 850008678 538837351 103245532 305368783 963980731 223582726 186112462 738198371 317978968 50402852 315096640 163173935 338875846 320981393 738918953 822986853 88833892 397603279 581952174 10650745 202085363 12452200 431230439 535234441 757894279 966863059 681872878 387875422 917022804 187913917 674667058 326746049 857935080 11131133 510134168 147441228 714299068 601648082 769543688 129786969 810256571 650047173 167137136 882434868 416818799 877871182 277025891 558773453 730271969 404809099 866341870 743482639 271741623 497163692 798366968 202685848 202445654 160531801 389676877 52444501 642721256 48000912 98321555 72020312 758734958 905973880 132429103 679831229 130987939 94358354 808455116 217097488 604410313 113333680 464977696 253006491 972747812 942963756 353047292 770744658 687517437 546043171 878111376 882074577 495962722 157289182 604050022 403608129 765820681 412375210 136872692 23501124 942363271 217697973 284231711 1163082 314616252 956534717 753570787 823707435 346201763 305248686 632993399 692561511 428468208 868984004 76704095 717181396 89434377 707693733 215416130 648005524 390637653 302246261 441198490 111051837 543521134 786477365 504609706 466899248 878591764 735316043 814820257 684394915 17015886 606572059 928071728 16655595 452727802 808575213 547364238 606331865 436154416 915461543 735676334 76223707 240996791 694963451 816741809 305729074 606572059 50402852 229707673 458612555 220940592 605250992 459333137 388355810 881834383 162693547 668301917 889880882 518180667 826349569 466298763 942723562 153926466 563337139 985117803 899848933 360253112 605130895 802810557 506651355 774827956 305128589 667581335 915341446 853371394 493200491 253246685 945365696 669983275 721144597 901890582 416578605 488396611 726068574 730872454 512175817 289756173 470141867 49081785 318219162 793322894 607773029 127505126 632633108 683073848 68177208 693282093 646444263 804251721 960257724 466298763 199563326 214815645 727149447 342118465 35510824 284471905 593481486 195600125 737117498 36591697 626988549 944284823 839440142 860577214 840160724 727269544 524545808 750928653 759095249 756813406 425585880 550847051 810376668 192717797 386314161 778190672 255048140 349684576 212293608 746244870 462695853 277025891 45478875 183950716 457051294 240996791 110691546 673586185 576067421 456811100 702049174 776749508 236192911 446482758 671664633 418620254 64334104 792722409 27584422 92556899 110091061 438316162 917383095 68297305 720183821 683794430 100843592 496443110 799207647 304768298 996527018 682113072 461134592 372022618 406490457 854692461 993764787 771104949 338995943 103005338 308611402 295040441 400485607 952691613 704931502 817462391 498724953 531871725 436995095 129907066 91235832 216977391 68297305 696164421 19537923 850248872 386674452 918824259 229227285 688117922 726188671 736396916 987399646 398924346 86792243 519621831 227906218 786477365 163534226 250124163 417539381 924709012 366618253 435553931 847246447 911618439 148041713 697365391 798967453 210852444 274503854 859256147 218898943 247361932 544962298 44398002 245680574 867783034 865381094 993404496 826589763 334792548 862258572 429428984 484433410 889520591 56888090 355689426 808214922 861057602 586635957 610415163 704331017 943684338 457411585 235472329 478908948 803531139 365657477 220340107 694483063 830913255 847366544 200283908 108049412 79706520 627468937 63133134 902370970 192957991 378748050 62772843 154767145 79106035 983316348 427027044 465458084 245080089 712617710 921946781 481070694 100243107 691840929 689318892 996527018 490077969 823947629 199203035 988360422 523705129 253847170 228626800 128225708 403728226 584474211 826109375 345961569 355569329 220820495 289996367 214095063 650767755 88473601 721985276 862018378 636115921 537996672 129907066 849648387 409372785 728350417 937199100 162093062 370821648 688117922 229587576 939000555 138433953 678149871 406490457 551567633 425826074 365297186 559494035 900689612 290596852 377426983 667821529 296241411 818303070 565138594 753931078 623866027 796085125 550486760 183590425 237754172 833555389 607893126 43557323 990642265 653409889 743242445 118738045 159691122 993404496 662537261 82588848 596243717 239915918 249163387 958456269 523344838 678269968 226344957 568621407 36351503 899969030 587596733 369860872 192477603 273062690 877510891 562136169 547604432 284592002 431470633 274744048 814580063 185031589 860457117 391478332 644883002 81988363 241597276 948488218 180588000 460654204 344040017 362895246 598885851 731232745 704931502 376586304 568981698 51363628 809656086 639238443 850368969 57248381 611616133 18216856 534513859 738918953 979953632 76583998 872827108 174222859 794643961 983436445 181068388 376346110 278226861 224303308 959657239 390037168 521903674 68177208 370461357 481671179 4886089 401926771 160051413 787438141 716220620 87993213 173141986 548565208 458612555 850248872 604890701 177585575 115375329 506891549 955213650 384152415 167257233 636716406 394360660 432671603 861778184 216256809 87032437 129786969 580030622 581471786 299724224 470862449 15574722 643682032 562496460 240876694 84270206 7528223 985237900 30827041 742762057 601167694 572224317 752970302 726308768 954613165 910417469 429789275 172541501 420421709 34309854 874988854 477587881 643321741 984757512 919905132 358691851 740480214 72380603 458852749 609574484 335513130 26023161 598765754 95078936 544962298 695443839 665179395 468820800 296841896 115735620 753690884 853491491 982355572 242437955 202805945 704931502 543401037 924228624 886518166 424505007 413335986 413816374 935998130 703970726 986438870 242558052 158730346 38513249 361814373 65054686 705652084 33709369 408051718 403007644 739159147 355929620 266697549 378387759 447323437 622304766 278467055 372382909 287834621 333831772 359292336 466058569 578589458 872106526 819023652 416338411 19898214 870785459 207729922 905013104 767622136 101564174 491639230 981995281 304768298 818663361 810376668 678390065 224783696 571984123 901770485 153446078 606331865 290596852 973228200 698806555 226224860 105407278 3685119 160651898 367338835 937439294 518901249 638157570 688598310 526347263 432911797 377907371 444561206 653770180 820464816 637196794 693402190 300324709 854332170 127024738 810136474 919184550 246040865 604530410 666980850 488276514 685115497 863819833 378147565 635875727 982956057 130987939 730031775 849648387 693041899 234391456 558653356 12692394 123782119 963980731 326866146 874268272 774227471 352086516 862018378 974789461 533793277 408892397 719703433 191877118 930233474 218178361 723306343 715379941 148882392 314736349 392919496 115975814 742762057 872707011 963740537 391718526 852170424 133389879 482872149 797766483 554329864 785756783 279427831 730752357 546643656 554930349 811217347 156448503 635755630 828391218 179627224 203166236 302366358 50883240 818783458 646444263 680671908 877751085 5606671 515898824 312574603 776269120 174102762 273783272 279908219 685595885 518540958 500526408 880273122 566699855 505930773 802330169 314015767 489357387 280148413 36231406 470742352 198722647 204967691 576307615 149843168 212053414 771104949 860577214 45598972 464737502 402407159 16055110 705531987 138914341 662777455 729311193 807854631 774827956 954372971 633954175 897326896 41395577 428468208 123541925 324344109 374904946 196080513 23741318 231989516 32628496 288194912 724987701 578469361 440357811 912699312 105767569 690399765 810376668 215656324 16655595 7288029 494161267 479269239 42716644 981634990 731472939 311493730 67336529 630111071 673586185 383672027 859736535 368179514 370341260 684274818 146120161 417659478 713218195 156328406 956895008 513857175 755732533 571984123 706012375 479149142 671784730 107569024 49682270 360493306 18937438 740240020 119098336 113213583 896606314 830913255 67336529 925309497 942483368 341638077 331670026 95319130 417299187 888199524 251445230 316297610 22300154 4886089 635875727 725588186 52924889 290356658 856974304 633954175 451046444 856614013 866221773 858655662 933355996 344040017 816141324 809055601 418740351 23981512 274984242 643081547 234271359 532111919 909456693 502327863 918343871 26503549 925549691 844484216 40314704 827910830 624826803 749247295 947167151 364216313 434833349 685956176 121740470 293238986 907895432 541119194 983676639 535594732 271021041 510014071 202306 636115921 858655662 56167508 963380246 926870758 625547385 950169576 877751085 955093553 193198185 218058264 525506584 719223045 826229472 577388488 966022380 523344838 421382485 764859905 982835960 34670145 282430256 143117736 600206918 254687849 989201101 285312584 42836741 664218619 282790547 219859719 812898705 196320707 118858142 194759446 346682151 617260692 315937319 488876999 732073424 759575637 433031894 18817341 680912102 950529867 104086211 147201034 328187213 118617948 876189824 911978730 855172849 747806131 938880458 938880458 977671789 679470938 27584422 518781152 329388183 384872997 803050751 949689188 983316348 469181091 447803825 977191401 370461357 801729684 428348111 320981393 480350112 653650083 586996248 703490338 219379331 554449961 698326167 580871301 60370903 921106102 595763329 292038016 649566785 753330593 431350536 365537380 953892583 565138594 18697244 940561816 101924465 700728107 999769637 514938048 303927619 415257538 304408007 23861415 286633651 740240020 992924108 520822801 507612131 942603465 502207766 530550658 834035777 780352418 918824259 170980240 924348721 943564241 569221892 118858142 52924889 207489728 726428865 863579639 336954294 497523983 9569872 366257962 436154416 114894941 56407702 629870877 435553931 240396306 633593884 762457965 177825769 661456388 702169271 407811524 868383519 461614980 483352537 759935928 402287062 993644690 560574908 928071728 543521134 222381756 239435530 622665057 492960297 835356844 798006677 997487794 806293370 540758903 503168542 579550234 509053295 457411585 569582183 572944899 651728531 306569753 32868690 999649540 967103253 296841896 222141562 191156536 172901792 679711132 345240987 923147751 724267119 758734958 37792667 420301612 537516284 686436564 679230744 637076697 834756359 11491424 935157451 851329745 931914832 460654204 532712404 694002675 208690698 156208309 657853478 715500038 653650083 168458203 893723986 796085125 906454268 415737926 263214736 195480028 382951445 25782967 57968963 651128046 828391218 750208071 218178361 137713371 895165150 657012799 115615523 658333866 597084396 696885003 933596190 201364781 712857904 540879000 462455659 46920039 464497308 571383638 505690579 538837351 950529867 425585880 782273970 409252688 653409889 755972727 609454387 185511977 907895432 958936657 282430256 480710403 521663480 728230320 550006372 999889734 651848628 631432138 901170000 672265118 52564598 14253655 241957567 146720646 172781695 307290335 531871725 275224436 286033166 534513859 365777574 677549386 377066692 286633651 365177089 719703433 428828499 706732957 432311312 922066878 749007101 17736468 409612979 518781152 900209224 79706520 682694 905133201 571743929 576547809 369140290 478428560 109730770 740720408 320501005 545082395 261653475 837398493 843403343 36951988 384752900 195119737 603689731 402287062 101323980 598525560 25782967 827070151 865861482 133990364 721264694 230067964 285072390 713458389 780592612 591439837 149242683 506411161 502568057 603089246 156808794 204487303 171941016 711897128 695563936 729311193 276905794 349444382 531871725 957255299 892042628 515538533 564418012 401326286 173021889 768462815 126063962 552528409 674546961 35510824 484193216 176744896 589878576 860577214 770264270 931674638 617260692 260692699 573545384 449605280 662657358 455369936 719463239 656892702 32508399 807734534 858895856 123061537 700367816 403728226 31667720 807013952 315937319 965421895 143237833 763899129 576667906 44998487 358811948 520702704 841481791 659534836 453328287 897206799 324584303 569582183 111652322 434473058 717661784 158129861 409372785 586155569 3324828 631191944 957855784 930233474 218058264 622304766 484073119 610775454 451286638 417659478 774707859 235232135 935157451 741320893 925789885 774827956 556491610 342839047 557452386 19417826 724387216 856854207 408051718 731593036 706853054 439397035 748526713 731232745 187073238 459933622 888319621 267418131 136872692 730512163 320140714 107689121 6687544 976230625 789239596 364816798 940681913 908135626 67336529 640439413 405409584 132429103 554329864 539798127 521543383 89794668 118858142 606692156 597204493 145039288 765940778 433512282 686556661 504369512 197041289 669622984 948488218 907294947 826709860 325184788 401806674 690399765 333591578 967463544 190075663 597204493 533793277 523585032 261653475 572464511 514938048 455009645 444681303 732433715 401206189 67336529 26863840 764980002 852170424 996406921 130747745 612456812 416338411 414296762 782994552 69017887 62292455 369500581 135071237 211693123 798126774 583873726 505810676 758975152 430269663 441438684 536315314 781193097 125823768 566099370 499325438 551327439 998328473 369380484 125703671 521303189 48841591 652689307 89074086 233070389 405769875 367218738 275464630 265136288 686676758 260212311 234631650 199683423 851209648 382230863 338395458 574746354 818783458 623505736 669382790 771825531 755492339 359052142 684755206 220940592 346922345 523705129 299604127 268859295 184190910 931314347 882795159 516499309 667461238 620503311 502447960 983916833 934436869 709134897 639718831 679470938 633834078 9930163 814940354 628429713 344520405 219259234 868383519 856734110 407451233 300925194 454409160 730872454 82468751 125583574 975630140 69498275 314616252 472784001 403127741 775788732 794523864 147681422 123782119 950409770 945966181 949448994 456570906 479029045 808815407 276425406 216617100 373824073 574145869 565258691 545442686 418620254 23861415 138674147 546523559 590238867 972027230 385593579 126184059 391718526 441078393 31067235 671064148 254447655 820464816 836437717 767261845 58089060 822026077 96400003 104806793 850969454 461014495 616540110 107569024 682473363 88593698 940561816 461254689 725948477 982115378 679831229 756573212 726548962 330108765 908976305 584113920 806773758 357971269 371422133 718382366 860457117 505450385 904052328 11371327 251445230 500166117 833795583 767381942 654610859 265136288 849288096 638878152 798727259 213014190 875589339 736757207 162813644 293118889 382110766 42956838 21579572 131228133 501727378 663618134 690159571 29505974 209050989 623625833 578589458 524906099 491879424 139634923 795724834 93397578 541839776 62292455 676348416 477948172 850368969 905853783 403127741 806413467 947887733 22540348 401446383 182389455 23501124 927591340 152845593 275945018 784315619 727509738 139634923 521903674 450806250 84270206 624706706 588197218 56647896 211332832 719343142 915581640 763899129 874508466 356289911 324944594 771225046 406250263 995806436 323263236 76343804 114174359 4165507 602608858 779751933 80667296 759335443 914260573 258050565 798006677 922547266 321581878 494761752 215776421 190796245 325665176 141076087 350405158 292278210 465458084 418380060 721624985 213374481 533432986 72260506 515418436 581711980 782874455 326025467 322403 750568362 869704586 440958296 22540348 111532225 207970116 859136050 390757750 795844931 985838385 40674995 643201644 112613098 569822377 174102762 813138899 557692580 331309735 395321436 930713862 850368969 757894279 342238562 726188671 500886699 953051904 683434139 126664447 520822801 952331322 487676029 684995400 653169695 62652746 169298882 166776845 542079970 377667177 927231049 65775268 141436378 165816069 822146174 481070694 606812253 859376244 324584303 54125859 476627105 24221706 64694395 689799280 500046020 219979816 257450080 342238562 779631836 903331746 91355929 668301917 228506703 539437836 655691732 61691970 2364052 200644199 565979273 22420251 766301069 706252569 240516403 8128708 400005219 454168966 198002065 523585032 785996977 131228133 541119194 75623222 488636805 36591697 157769570 261173087 613777879 117056687 890121076 903692037 456450809 218778846 469781576 200043714 534033471 901049903 198602550 879672637 250244260 255048140 326385758 967583641 695684033 136992789 771345143 274984242 979953632 227065539 351966419 48481300 782033776 560214617 902851358 315697125 697245294 541839776 787558238 445401885 256729498 72140409 228987091 867062452 219379331 412855598 183470328 740840505 782874455 67456626 431230439 903331746 685715982 802330169 118377754 141316281 433752476 652088822 583033047 333711675 984877609 45839166 441078393 454529257 825989278 403247838 244959992 353047292 793202797 105767569 420421709 922427169 948248024 629750780 871506041 65775268 338755749 187673723 306569753 596363814 700728107 849528290 702049174 233430680 964941507 826109375 451526832 916782610 752129623 722345567 752249720 235592426 49802367 315096640 821785883 785756783 912579215 489477484 616179819 118738045 382230863 760536413 297682575 762578062 349324285 385473482 395921921 25062385 752249720 878831958 507131743 868623713 111051837 184791395 691720832 519741928 348243412 509173392 377787274 773506889 975750237 517940473 540638806 661216194 503648930 201484878 559854326 742401766 402407159 624826803 891442143 588557509 963500343 395321436 301165388 357130590 163534226 407090942 596123620 29626071 491759327 486715253 234751747 946566666 267418131 323023042 990762362 991963332 918584065 526947748 925549691 447323437 819864331 807614437 329988668 462695853 993164302 826109375 263094639 421502582 786597462 974789461 804131624 707813830 459213040 168578300 965541992 357370784 372022618 182029164 96279906 292518404 153686272 93397578 191877118 375025043 636476212 563337139 277386182 124382604 277266085 831273546 2724343 405769875 993524593 421142291 654971150 675627834 882795159 889640688 479749627 435313737 656172120 179627224 679951326 559614132 574866451 793442991 636476212 127264932 283511129 538837351 607652932 692801705 426066268 60130709 152605399 384392609 81507975 862738960 917262998 848207223 690880153 779271545 10650745 319900520 508452810 152125011 446722952 928191825 233550777 333111190 757774182 941402495 159090637 84030012 898407769 719943627 843643537 323623527 917983580 792962603 15814916 80186908 655931926 504969997 589518285 954012680 123902216 480109918 208810795 226705248 374064267 348243412 223943017 934677063 981394796 76944289 3444925 77544774 919424744 223102338 597804978 304287910 739039050 953652389 117176784 676108222 929032504 406730651 412495307 40314704 222501853 529830076 293118889 686196370 587356539 392439108 118497851 606331865 198002065 676108222 820344719 395921921 921586490 911378245 432551506 449605280 662657358 344760599 189234984 354488456 115255232 516018921 279067540 754051175 835476941 133750170 58209157 490198066 438316162 452127317 761136898 486475059 745043900 894684762 633713981 845204798 786837656 842562664 873067302 654971150 385953870 670343566 904772910 606331865 272702399 38393152 540879000 818303070 603209343 830913255 528869300 931434444 300324709 232229710 276545503 814459966 5606671 351846322 217697973 208810795 418980545 505210191 966022380 574866451 349204188 927711437 745764482 268018616 596604008 445762176 865741385 115255232 34309854 978752662 322403 931074153 329988668 406010069 334432257 757053600 478668754 23501124 55687120 441798975 629030198 451046444 393760175 271021041 684755206 899368545 49321979 401566480 909937081 815300645 432911797 408652203 990161877 22900639 22300154 662297067 227666024 88593698 167377330 371061842 460414010 118858142 297562478 6327253 881233898 99162234 480710403 116816493 223582726 430389760 8488999 693882578 153926466 897326896 482151567 128345805 27224131 93998063 526827651 177585575 146360355 880273122 899608739 810376668 562256266 383071542 117897366 793202797 973588491 33349078 597684881 137473177 332630802 906934656 276305309 411054143 672625409 304167813 163774420 182269358 621103796 781313194 313535379 661936776 840040627 351486031 783234746 971666939 499085244 22059960 36111309 499085244 271141138 846886156 655931926 914500767 213734772 964341022 840641112 113093486 981394796 708894703 813258996 47520524 709615285 142397154 693762481 273543078 194879543 669022499 573185093 957255299 398804249 823106950 161732771 142397154 321221587 823227047 878831958 718982851 415858023 467019345 477707978 485274089 223582726 616660207 960618015 103245532 958816560 792482215 199803520 1283179 951370546 810857056 948127927 552408312 464257114 94598548 962419470 179146836 838599463 116696396 964701313 661096097 703610435 319300035 984637415 196680998 483232440 235832620 260692699 450325862 248923193 652208919 880153025 178426254 209891668 579910525 585314890 239555627 506411161 689679183 801249296 469301188 114894941 727029350 179627224 916062028 792242021 98801943 201965266 381029893 603689731 953172001 37072085 786117074 724507313 506891549 557572483 104326405 955333747 40074510 756453115 146600549 614378364 703730532 228987091 743963027 700968301 212053414 491038745 621584184 815300645 761977577 513857175 213254384 376466207 879912831 798847356 157649473 567300340 622184669 576067421 221180786 505570482 955814135 751168847 327586728 98441652 402527256 262614251 313415282 266817646 941882883 202325557 382350960 793202797 944645114 978752662 179747321 136752595 388836198 69137984 161732771 792121924 759815831 943684338 520582607 437955871 11611521 329868571 585795278 414897247 971907133 687397340 576187518 604890701 815180548 251685424 606812253 63133134 527668330 612096521 705171696 882915256 758014376 78865841 672505312 133149685 818543264 285192487 613177394 759575637 939120652 667581335 590959449 287594427 289996367 921226199 14854140 634314466 860817408 452967996 811337444 189955566 803411042 65294880 882554965 780112224 989921683 554209767 547364238 651728531 484793701 592280516 121019888 56167508 500646505 949448994 410934046 687637534 499205341 844604313 249043290 20498699 550486760 336834197 525866875 40915189 529349688 759575637 605010798 938760361 160411704 595042747 141316281 18457050 912939506 38993637 438316162 972627715 710335867 917983580 880993704 35991212 464377211 904893007 639959025 567300340 162933741 741440990 696284518 172301307 25182482 566699855 952931807 948968606 967343447 514938048 20858990 60731194 879912831 795244446 654010374 662176970 922427169 705051599 237033590 555771028 478548657 112372904 818062876 781553388 986558967 958216075 50883240 645123196 446602855 888199524 813258996 326265661 81507975 931314347 526107069 269940168 724147022 107088636 937199100 233911068 93757869 81748169 828391218 618581759 100483301 131948715 810496765 129186484 485033895 601768179 177465478 206889243 530310464 106127860 908015529 123061537 448044019 842082276 49562173 893123501 732553812 953172001 311013342 984997706 217577876 487555932 960738112 258530953 762457965 445762176 938640264 727149447 120899791 47640621 68897790 473264389 865981579 64934589 315577028 836918105 593121195 78625647 974309073 994845660 65535074 590358964 404568905 725468089 376706401 835476941 497644080 305488880 711777031 710455964 709975576 307650626 794283670 154647048 267538228 491879424 834035777 896846508 251445230 264655900 329388183 904652813 451767026 415978120 944164726 33108884 505210191 929632989 819624137 752369817 29385877 812538414 419821224 107689121 551087245 47760718 662537261 287474330 210251959 277266085 967943932 128585999 547124044 813499190 760776607 457411585 479389336 829111800 769183397 486595156 154767145 938400070 878591764 736877304 549525984 917262998 69498275 240996791 170619949 732794006 681632684 848327320 74902640 14734043 850849357 273302884 300084515 821065301 935157451 189234984 758975152 35510824 244359507 655451538 903571940 119098336 984277124 753090399 954012680 977191401 247962417 132549200 341638077 793442991 634794854 593241292 59530224 840160724 826229472 697605585 965061604 826469666 701808980 902130776 36231406 535955023 219499428 460414010 688958601 21579572 440357811 610775454 752369817 636836503 302006067 292878695 571023347 335272936 679831229 646083972 355449232 212053414 110451352 665539686 727149447 948728412 566699855 481911373 439397035 315456931 185271783 262253960 896005829 134350655 79346229 140115311 749967877 420061418 660735806 470982546 673826379 479269239 479389336 908015529 471102643 596844202 337194488 586035472 544722104 78745744 721264694 969264999 836197523 594442262 617620983 51363628 741320893 707933927 601047597 82829042 299243836 348243412 739879729 738078274 411654628 844364119 228386606 769063300 5606671 584354114 21939863 473624680 446242564 957855784 194759446 596243717 408412009 779751933 399885122 780232321 761377092 298523254 8609096 755132048 898647963 381149990 523104644 572944899 943083853 221060689 3565022 257329983 118497851 347763024 958336172 340196913 506531258 518420861 133509976 948728412 38513249 196680998 991362847 415978120 643321741 630351265 766060875 118497851 484793701 166896942 321101490 309331984 480590306 331670026 681152296 892883307 721384791 514097369 378027468 454289063 421622679 904652813 716701008 925789885 871626138 771825531 407090942 667341141 966622865 484673604 812658511 54005762 417299187 757053600 454048869 250844745 239315433 341517980 553369088 52444501 868863907 214095063 440237714 851329745 267418131 175664023 257089789 808214922 932515317 439997520 234031165 937199100 225023890 50042561 483592731 53044986 484433410 753210496 634074272 913900282 384032318 574746354 609814678 360733500 226465054 581231592 171460628 753450690 862859057 877630988 716340717 286153263 548685305 998568667 886518166 54486150 247482029 958095978 397963570 929873183 602008373 646204069 141676572 329988668 605010798 844003828 647525136 125223283 560094520 213134287 904532716 390277362 515178242 351846322 383551930 879552540 13653170 402767450 36831891 138794244 70459051 336473906 241597276 453088093 785756783 866702161 878711861 967943932 287714524 307770723 109850867 559854326 872346720 657252993 857454692 120779694 638998249 571263541 520102219 922307072 486955447 336353809 744683609 278106764 709134897 842202373 232590001 527187942 74662446 442500 737357692 176024314 387154840 12332103 778911254 676108222 537996672 806653661 699527137 498845050 910177275 899248448 447323437 628910101 848447417 374064267 99162234 54606247 23381027 328187213 206408855 806893855 962059179 622184669 411054143 289155688 242918343 590238867 400005219 599246142 18096759 865621288 344880696 9449775 778190672 167977815 302006067 305488880 673225894 606932350 865501191 176144411 476026620 43437226 276425406 558653356 321942169 508813101 354368359 178426254 911618439 549525984 433992670 991242750 812658511 977551692 62892940 405409584 108769994 905973880 876910406 145159385 256369207 880032928 737958177 128946290 966022380 55086635 82108460 20979087 521183092 245440380 504729803 529109494 180467903 719703433 678029774 38513249 841962179 327706825 464737502 768222621 276905794 203766721 457651779 517339988 52684695 874028078 731112648 482271664 513136593 579550234 931554541 394120466 561655781 616540110 648245718 621103796 875349145 327706825 461614980 778430866 252045715 372983394 50883240 677669483 76824192 406610554 200644199 949929382 624826803 807614437 352206613 719102948 45598972 172661598 50282755 59650321 992924108 202805945 735796431 292278210 693522287 122941440 216617100 470021770 329268086 296241411 427387335 284592002 32868690 546883850 842442567 35150533 987159452 961578791 168097912 398323861 468100218 669382790 827190248 228146412 293839471 608373514 511335138 997367697 393399884 239675724 902370970 709975576 681872878 142036863 25903064 753450690 322542654 623265542 917142901 289636076 740360117 537756478 832594613 476867299 786117074 238114463 191757021 584714405 957375396 152004914 163414129 880032928 595042747 659654933 642961450 563096945 64214007 467739927 631672332 641280092 603689731 802810557 632152720 873067302 314616252 333591578 622665057 16295304 190315857 362534955 854091976 51844016 651848628 314616252 285192487 847366544 250604551 712978001 96279906 945966181 746845355 649566785 59290030 286633651 136992789 105407278 846766059 628309616 964100828 748887004 643561935 16895789 304888395 379468632 288315009 213374481 99762719 391118041 950049479 245560477 43677420 619902826 657493187 445041594 543761328 462695853 528869300 994004981 788398917 948248024 567780728 428828499 199443229 424144716 280508704 616660207 324944594 770984852 272462205 963740537 87632922 888199524 537035896 842322470 246641350 745404191 796445416 665059298 728950902 278226861 204847594 90034862 882194674 984277124 151164235 871385944 23260930 155607824 294439956 710816255 106608248 34550048 16895789 188274208 89434377 138914341 578949749 215055839 85351079 297322284 173742471 239315433 338395458 578109070 328187213 9569872 687997825 592881001 437595580 242197761 389316586 560334714 585795278 665299492 787918529 249403581 297202187 796445416 731953327 494401461 779872030 153806369 817462391 647284942 916062028 391238138 961818985 98922040 189114887 695323742 886638263 990281974 211092638 940321622 191156536 539557933 779631836 817582488 926750661 981274699 491038745 152725496 398684152 386434258 271741623 288675300 387875422 750087974 612817103 840521015 671304342 451406735 729311193 160651898 242077664 111772419 80547199 841481791 985357997 110931740 447443534 648125621 251685424 708294218 797406192 109850867 523585032 411894822 67576723 332270511 580270816 409012494 784315619 177225284 532952598 666740656 982475669 710696158 684515012 220580301 99762719 170259658 4525798 458972846 969505193 399164540 277746473 136752595 539197642 849047902 303807522 665419589 996767212 158850443 670103372 702049174 786837656 67937014 506651355 14613946 241477179 416818799 936598615 859496341 621343990 703850629 976590916 600927500 3565022 437955871 796085125 54726344 2724343 796325319 947647539 542800552 259131438 705892278 789359693 807134049 839320045 633473787 798366968 945005405 379828923 156448503 597444687 44878390 235832620 903812134 10050260 817582488 513136593 256249110 280628801 126063962 338395458 637436988 537276090 135911916 564057721 4165507 439877423 931434444 81267781 649086397 547244141 812538414 945846084 647525136 146720646 603569634 446602855 443360236 612576909 532712404 328187213 921826684 204967691 585675181 703370241 413936471 818423167 185511977 106968539 852770909 435313737 611255842 66856141 169418979 949448994 580150719 440958296 210011765 34309854 934436869 738918953 150443653 684755206 190075663 343559629 518420861 507972422 424144716 237033590 253606976 818783458 280748898 462575756 475065844 9569872 260932893 231509128 110691546 857454692 388235713 368779999 498845050 110091061 66736044 17976662 496923498 596844202 752970302 723306343 96039712 132789394 249403581 516379212 4285604 698326167 572704705 541839776 879192249 884596614 359052142 848207223 767622136 858415468 99762719 626748355 140475602 83429527 38873540 942483368 818303070 944645114 232710098 29025586 509293489 554449961 928792310 696885003 458852749 150563750 256008916 348723800 282910644 975149752 181788970 490558357 422103067 825028502 485634380 257089789 572344414 170259658 667221044 265856870 874388369 17856565 215536227 743482639 27464325 188994790 318819647 982835960 703610435 566940049 38152958 353287486 591079546 305248686 290837046 138914341 787678335 335032742 905613589 172181210 677309192 384632803 484433410 15454625 397723376 376226013 673706282 349204188 691360541 178906642 813258996 274383757 366017768 182389455 904052328 773386792 849408193 787438141 550126469 536435411 810016377 353407583 191757021 181188485 884716711 231268934 863699736 607412738 406970845 111772419 52804792 445762176 77905065 215776421 480230015 720183821 269099489 72020312 317258386 842202373 971907133 711536837 615459237 607172544 983076154 156928891 579189943 868383519 165936166 955453844 961939082 55326829 414176665 727269544 962419470 990762362 121019888 299243836 914981155 194399155 813018802 779872030 498604856 381630378 10770842 714539262 435553931 303327134 786117074 611375939 389316586 962299373 816741809 423424134 44277905 491038745 555170543 94118160 182869843 96159809 879672637 497163692 866101676 251805521 85591273 37912764 612336715 149482877 887719136 619422438 596363814 959537142 354248262 924108527 229707673 257930468 717061299 105407278 451046444 894084277 113814068 983196251 510134168 584594308 48841591 185752171 953412195 130867842 386674452 196440804 511935623 677189095 885077002 804491915 971066454 625787579 781793582 738318468 760896704 55567023 535834926 822746659 585675181 912098827 134951140 562256266 733874879 392679302 116095911 250124163 790560663 986198676 846645962 445401885 362775149 604410313 473864874 360133015 775428441 406970845 405529681 613657782 505570482 903571940 365297186 487315738 168698397 23020736 725347992 732313618 220580301 703850629 209891668 165215584 638758055 67816917 909696887 819504040 240156112 40434801 542680455 326265661 462815950 334071966 546403462 110331255 616780304 233190486 791881730 661576485 626147870 922066878 550967148 131228133 64574298 747085549 305608977 545202492 639478637 498724953 836437717 416098217 135791819 392439108 52684695 387635228 955333747 851569939 853611588 785756783 638758055 853971879 439997520 494281364 593841777 24101609 892883307 66495850 94718645 273903369 293959568 264775997 249283484 155247533 79706520 891562240 602248567 432431409 702649659 116095911 235472329 580631107 896726411 227425830 819744234 859496341 666500462 83309430 225023890 165695972 447683728 548925499 868503616 737237595 593001098 609694581 838719560 17015886 440117617 977551692 309572178 809055601 763418741 176144411 776269120 903211649 122701246 945846084 337074391 857814983 898768060 309091790 414176665 388836198 635875727 516619406 952331322 992083429 351966419 128465902 408772300 381029893 167737621 323863721 431830924 29025586 98081361 531871725 14013461 652208919 118137560 443720527 238835045 420541806 654730956 57368478 813138899 671664633 399404734 837518590 9689969 330228862 500286214 221420980 993644690 845324895 402166965 404088517 42476450 673225894 308611402 82468751 908616014 795965028 916542416 107689121 907775335 838839657 218178361 489717678 102645047 888920106 681392490 456931197 908135626 652329016 520582607 305248686 114774844 240156112 421022194 336714100 240516403 740960602 535955023 487195641 728470514 113093486 338395458 481310888 337434682 621824378 629750780 814459966 527067845 621944475 917863483 479989821 37192182 718382366 723066149 65054686 211573026 212293608 612096521 156928891 19297729 831513740 543280940 228146412 703850629 144919191 495962722 292998792 666020074 77424677 495602431 66736044 12572297 22540348 574626257 939961331 684515012 930954056 69498275 687877728 113093486 812658511 791521439 461614980 701929077 590118770 770864755 5126283 712137322 306809947 160651898 210972541 323983818 862018378 676948901 545322589 584113920 713938777 101444077 620623408 920505617 671664633 182869843 981514893 267418131 576187518 742641960 830793158 263214736 103005338 426666753 455610130 365417283 819624137 954132777 605971574 886157875 668061723 767261845 275704824 774467665 910057178 939240749 784075425 71660021 247241835 531391337 997007406 645003099 11731618 824067726 259131438 972507618 842682761 730151872 847606738 741681184 570783153 16895789 22180057 995566242 667581335 740119923 296841896 473624680 332991093 810136474 28545198 583033047 359772724 324344109 433872573 920505617 313775573 731713133 17856565 52204307 130867842 364456507 721504888 893243598 421142291 329508280 968064029 773747083 896005829 634674757 680431714 87993213 884476517 64934589 527548233 180588000 831273546 46679845 201004490 722705858 634794854 537396187 473624680 467499733 876430018 151284332 442279363 765460390 776028926 852170424 536435411 167737621 961338597 514457660 880993704 337434682 716941202 106848442 86552049 251445230 416458508 226585151 727029350 88833892 514577757 158129861 104446502 535234441 647525136 64093910 524185517 150203459 175664023 762097674 226705248 631432138 574025772 272222011 596363814 347162539 136872692 943083853 473264389 992443720 718862754 627468937 846886156 21099184 866822258 865020803 118257657 303207037 368779999 825989278 687637534 811457541 401326286 560815102 182749746 739999826 372262812 841121500 85591273 405169390 134350655 557572483 846285671 503288639 43917614 479629530 853251297 93637772 480230015 897807284 389917071 808695310 158370055 683434139 887358845 627949325 201725072 81748169 187553626 756453115 377066692 223582726 755132048 891922531 14613946 124142410 182869843 583633532 825869181 942723562 819624137 766060875 661456388 822026077 917022804 751529138 293839471 369260387 686196370 561295490 199203035 872106526 266217161 949809285 230308158 893003404 888319621 593961874 207850019 117296881 769903979 100843592 566940049 908736111 732673909 728710708 50763143 989441295 719223045 758494764 601648082 596363814 634434563 331309735 55206732 484673604 31787817 111772419 716941202 230188061 466058569 110211158 763658935 240276209 929392795 488036320 63253231 679591035 865861482 774227471 125463477 289636076 463056144 471462934 982715863 721144597 655451538 574506160 249403581 765820681 194999640 168338106 255168237 769783882 524545808 117416978 481190791 251805521 222261659 312334409 910897857 440598005 160171510 642721256 268378907 12692394 394600854 900329321 377306886 12932588 492840200 146720646 456570906 73341379 483472634 628910101 618942050 218178361 723426440 381750475 665659783 898407769 795364543 749607586 609454387 937919682 306569753 314376058 378027468 611135745 803290945 78145259 739159147 626027773 787558238 488156417 452847899 105407278 62292455 149723071 360613403 501967572 26143258 935397645 993884884 103245532 536075120 875349145 645603584 140955990 993764787 224543502 681872878 854692461 959417045 666740656 737597886 787918529 929272698 3204731 838479366 922427169 876430018 510974847 863339445 35510824 855052752 476747202 471102643 942002980 83669721 259491729 541239291 684515012 822626562 18817341 718622560 891802434 32388302 772906404 972867909 651368240 87032437 205087788 423904522 779151448 627228743 952571516 843163149 945846084 217097488 64334104 91476026 979953632 491399036 823827532 5966962 635035048 797886580 548204917 663377940 361333985 257450080 568501310 920145326 722585761 557332289 41035286 317978968 298042866 283030741 234271359 396402309 354128165 822866756 195840319 497644080 220220010 956774911 651488337 848927805 95078936 180347806 634794854 330949444 880513316 75863416 402046868 725227895 877871182 993884884 108529800 586876151 862018378 574746354 741440990 42956838 381270087 789960178 21339378 965541992 105887666 385473482 490198066 452127317 671904827 273182787 245320283 41996062 919785035 787678335 968424320 925789885 246761447 711656934 302726649 787798432 403968420 265736773 393039593 384993094 27584422 840160724 849768484 764499614 920865908 76463901 128105611 636115921 380429408 835597038 766301069 899248448 102404853 298643351 191276633 580150719 276905794 517099794 169779270 554329864 454529257 47160233 800408617 960497918 37192182 374424558 236673299 52564598 427267238 853371394 478668754 701328592 933115802 737117498 104566599 394360660 994605466 879432443 573425287 670583760 442039169 158610249 603449537 60130709 361814373 725107798 802089975 859496341 970706163 211092638 560094520 296121314 272222011 124862992 592640807 259011341 8368902 112853292 272582302 222261659 644042323 661576485 310893245 956054329 750448265 469541382 355569329 105887666 617861177 718502463 886638263 586635957 748286519 142156960 120299306 374664752 800288520 868863907 887719136 54726344 431590730 438556356 806173273 405409584 307770723 534754053 611856327 114534650 88833892 819624137 131948715 260212311 393880272 767982427 901290097 346922345 528148718 986679064 987759937 458132167 462936047 576547809 332630802 293238986 722585761 529589882 454409160 315937319 489957872 613897976 524906099 260092214 215416130 428828499 181188485 302846746 239555627 746725258 1643470 778190672 284952293 656652508 802210072 647405039 442519557 392559205 31667720 160531801 25422676 519021346 710335867 894444568 259491729 126304156 70699245 334792548 344040017 984036930 709375091 461374786 465578181 62412552 888800009 639478637 258050565 991603041 858175274 343679726 956654814 760896704 610174969 221300883 820825107 745043900 406010069 121019888 428828499 841481791 137593274 435794125 276905794 441558781 740960602 769423591 549646081 776989702 613417588 693522287 561415587 111772419 272101914 466779151 450686153 540879000 39714219 884596614 897687187 66495850 632392914 71059536 496923498 464977696 704691308 440718102 460293913 568741504 514938048 79346229 648125621 433392185 575106645 417659478 284592002 419941321 837998978 719463239 321942169 665179395 548325014 525866875 415737926 378507856 565618982 816741809 312814797 285312584 881113801 832234322 858055177 29866265 643441838 583993823 692201220 486475059 37192182 931914832 200524102 542680455 736396916 827550539 69017887 679110647 593961874 158009764 543040746 693041899 788759208 181428679 71900215 745404191 668662208 186472753 630351265 514457660 700247719 506411161 63733619 188514402 458972846 542680455 738558662 41755868 307530529 951130352 923508042 265736773 383191639 764980002 160892092 253006491 909216499 330949444 714779456 15814916 24581997 311733924 366378059 966382671 720303918 637557085 519141443 119338530 845565089 906454268 465458084 343439532 578829652 548565208 348603703 197161386 986198676 695684033 692441414 895285247 384032318 45719069 494761752 758855055 379228438 258771147 546283365 58449351 829952479 20378602 920745811 96400003 193678573 814339869 231389031 861537990 550486760 907775335 894804859 872827108 415377635 113213583 248923193 771825531 564778303 108289606 857935080 594202068 343559629 730752357 555170543 300324709 77784968 289756173 621343990 788759208 495962722 70459051 204247109 149843168 47880815 148762295 555050446 319540229 930233474 299964418 457291488 132188909 184551201 762818256 655211344 641640383 906214074 743362542 129066387 126424253 686676758 295280635 399044443 782634261 400965995 532592307 546883850 726909253 207249534 239675724 585795278 501727378 74182058 846165574 315817222 202085363 142997639 149843168 931674638 82209 521062995 705531987 899128351 907054753 724507313 741921378 486835350 224423405 431951021 692201220 660855903 254207461 984157027 965181701 123181634 931074153 658093672 888439718 134110461 792121924 936478518 111171934 925669788 541599582 126424253 265016191 688478213 728830805 905013104 560454811 291917919 572584608 432071118 790920954 112493001 880513316 992683914 713698583 622665057 884116226 967823835 417899672 350885546 258891244 25062385 672505312 477227590 596483911 605851477 507492034 428588305 922066878 63613522 914861058 17015886 470382061 364336410 127985514 456090518 387995519 581591883 704931502 814459966 697605585 690279668 875589339 980794311 58809642 536075120 205207885 93517675 133509976 524425711 177345381 374904946 316297610 126784544 614738655 694483063 206889243 820584913 640079122 50522949 305008492 784195522 80907490 515658630 355569329 63253231 271741623 549285790 473144292 194038864 608853902 990642265 649686882 400485607 73821767 685956176 846886156 807974728 440718102 581231592 828991703 263815221 272582302 234511553 985838385 404568905 917262998 946326472 471703128 22059960 411654628 132669297 40915189 627709131 452247414 800408617 316297610 748046325 844364119 264175512 167857718 840400918 207970116 87032437 674186670 314376058 874868757 189595275 68177208 836077426 950529867 715620135 338035167 143838318 749367392 267778422 718622560 484913798 791641536 659775030 628669907 575587033 34670145 15694819 175183635 755252145 693882578 993284399 9089484 41755868 425105492 189475178 391358235 251685424 295520829 247361932 904893007 389796974 326986243 850489066 476507008 386434258 932275123 634794854 314015767 276065115 71660021 754771757 690279668 359412433 901049903 850128775 748646810 215896518 842562664 20378602 449124892 169418979 21699669 347282636 684034624 334792548 694963451 364936895 991723138 892042628 473264389 7648320 551567633 35270630 828151024 460293913 663618134 223222435 705291793 541719679 771705434 989321198 836077426 702649659 813739384 218418555 53285180 485153992 59650321 235112038 153686272 68897790 818663361 98081361 721745082 281829771 540398612 599966724 548565208 790800857 711897128 620263117 956054329 255168237 232229710 981514893 782033776 250604551 932995705 960978306 845925380 880393219 871265847 166416554 479269239 669382790 520462510 796085125 822506465 220340107 642240868 113213583 645963875 261893669 239675724 408772300 714659359 243759022 554209767 602248567 160411704 260212311 970465969 959657239 523945323 738678759 992924108 430990245 798126774 597925075 188514402 988600616 596243717 646444263 166416554 901530291 560574908 770144173 467860024 679591035 995326048 89674571 535834926 737717983 87632922 182989940 505450385 734595461 883996129 442999945 550726954 228866994 870064877 623625833 513496884 419340836 315456931 867903131 534754053 312214312 538837351 850128775 694122772 282190062 577268391 52324404 421502582 410813949 813018802 298042866 206168661 667821529 396522406 500166117 32868690 883755935 137353080 309452081 988000131 177585575 354848747 401686577 895165150 672865603 994245175 546163268 871866332 318939744 897807284 846285671 968664514 449485183 63373328 393519981 476266814 329628377 366017768 226705248 155367630 471583031 306569753 68057111 84870691 82108460 675868028 960257724 17256080 794163573 30106459 242918343 106127860 713098098 618341565 591559934 971306648 362534955 946566666 553609282 601047597 127625223 922547266 767742233 46920039 269699974 331189638 678390065 913299797 473024195 555290640 701929077 190916342 640679607 109970964 752610011 60731194 291317434 165095487 495242140 151044138 898768060 804011527 935037354 85351079 58089060 261052990 920025229 675147446 358691851 230067964 874388369 768823106 995686339 954132777 270540653 139995214 741200796 311493730 732313618 850128775 862018378 480830500 426546656 190075663 558653356 584113920 303327134 896726411 400605704 272462205 361694276 399284637 320020617 470261964 437475483 513376787 197281483 821065301 939360846 649566785 440838199 470261964 279547928 805212497 660495612 370461357 836077426 714659359 609574484 296601702 875469242 310292760 445161691 22180057 143357930 738318468 516259115 758494764 655571635 667941626 773506889 477828075 177585575 694122772 491759327 182029164 547244141 887719136 905853783 871866332 199203035 427627529 85230982 698085973 694603160 677909677 528028621 689559086 232109613 566339564 564057721 618101371 976470819 842922955 2964537 611856327 167737621 100123010 330589153 709014800 291077240 145759870 586996248 795724834 606812253 676468513 656892702 401806674 193078088 61331679 31067235 497764177 409372785 182869843 877871182 173742471 96760294 906574365 34550048 284351808 146840743 963500343 61812067 325304885 250724648 792121924 420902097 405169390 113333680 691961026 204006915 296721799 531511434 811457541 605971574 156808794 870064877 445401885 470862449 214575451 649686882 939480943 493800976 302246261 326625952 342118465 901770485 788278820 167497427 533072695 883035353 396762600 755492339 719943627 895045053 605250992 618101371 796085125 33949563 287834621 44398002 957495493 543160843 735676334 70098760 830192673 458492458 235712523 14373752 814099675 30947138 462575756 344280211 264175512 803771333 954132777 946206375 628910101 921226199 547484335 947767636 605491186 200644199 801969878 900329321 530550658 20498699 136992789 730031775 556131319 426306462 76583998 688238019 210011765 60851291 642961450 570302765 803651236 174463053 363135440 923027654 102164659 86191758 878471667 548204917 261893669 858895856 607773029 214935742 989201101 530190367 479869724 304768298 131108036 577628682 799207647 672745506 744083124 232830195 389917071 110811643 569221892 249043290 212293608 804131624 515298339 781913679 390277362 126304156 422223164 444321012 967103253 989441295 338035167 728590611 451166541 719463239 98801943 113093486 270660750 944404920 754531563 723786731 530430561 836437717 600687306 992683914 303447231 711296643 208810795 481551082 779031351 502087669 879792734 897927381 474465359 259852020 752129623 9089484 510014071 221300883 990522168 926630564 532232016 413696277 498364662 489957872 976711013 55927314 283991517 893844083 220340107 808335019 627589034 507371937 999649540 153325981 448644504 820344719 621223893 930473668 559854326 67816917 687397340 838359269 820344719 314736349 472063419 835717135 93037287 279668025 482872149 638517861 969385096 753210496 326986243 194639349 140955990 978872759 858055177 425225589 653169695 935157451 872947205 614258267 559614132 737597886 985958482 310532954 623265542 657613284 711897128 339356234 86071661 561655781 213014190 142637348 383792124 361213888 271621526 442039169 3805216 660135321 203046139 417539381 242798246 144678997 795724834 627589034 102044562 665779880 860577214 981634990 147561325 356650202 675507737 636596309 273543078 311013342 281349383 523585032 283991517 211212735 104206308 650887852 395681727 525986972 344040017 169779270 262133863 963140052 9209581 201484878 823347144 914140476 587596733 3324828 887238748 382951445 155607824 517580182 308611402 388235713 383551930 261293184 463176241 559734229 680912102 553369088 577628682 298523254 587116345 20618796 646804554 850729260 712497613 183470328 246641350 186712947 456811100 683674333 831513740 32268205 248923193 817702585 107208733 613777879 650887852 713938777 696044324 576667906 927351146 86431952 41395577 908856208 449004795 465578181 204967691 884836808 737477789 9569872 877150600 928672213 425345686 743362542 919424744 257450080 644282517 585795278 958216075 526467360 510614556 840280821 10170357 773386792 795004252 691840929 812418317 19537923 228386606 354248262 56287605 745163997 306809947 168338106 466538957 25302579 541359388 158610249 832474516 865381094 857574789 690159571 772786307 388355810 307290335 935637839 803771333 646924651 745524288 448404310 962419470 158129861 7047835 61211582 261173087 964821410 874988854 954613165 559494035 750448265 481070694 747205646 472784001 721144597 679951326 641880577 767502039 439877423 371902521 887358845 973228200 484313313 841721985 527548233 546883850 409973270 385113191 765820681 911498342 491399036 287474330 33949563 912459118 760536413 667821529 50402852 725468089 500526408 840280821 586635957 169779270 685235594 972027230 902731261 659054448 408412009 183110037 600807403 586635957 804852206 574145869 215536227 752730108 832474516 307530529 339596428 725468089 538837351 228626800 144558900 835236747 479269239 463896823 245200186 383431833 879312346 667821529 486595156 179747321 38633346 363856022 87032437 633954175 314255961 450686153 818783458 872346720 572704705 477107493 487315738 503889124 142877542 376105916 976350722 67576723 465217890 877510891 869704586 839680336 789840081 799928229 127024738 456450809 985718288 9209581 136512401 249283484 340196913 546763753 635035048 522864450 740840505 541119194 865501191 116456202 108169509 159931316 868143325 133630073 8969387 325545079 554329864 116696396 208210310 897687187 635155145 415978120 283270935 516259115 913179700 447683728 158610249 158730346 340797398 892282822 676828804 206528952 796805707 502568057 999409346 231989516 940681913 37552473 452967996 572464511 412735501 798727259 836557814 513496884 920385520 239555627 372743200 244839895 773987277 356049717 31667720 312094215 164975390 447203340 92676996 498364662 867542840 236072814 684995400 457051294 270300459 329868571 739639535 390517556 226344957 326866146 46799942 292998792 498724953 567540534 148402004 555891125 51844016 726789156 58329254 424264813 353527680 165695972 570182668 335753324 77544774 713098098 324824497 952451419 193198185 494641655 213374481 737717983 277266085 401686577 78865841 20138408 551687730 551087245 108409703 833675486 901770485 551327439 998208376 564778303 320140714 975149752 258891244 685475788 975870334 435193640 254928043 401206189 612576909 169899367 938880458 516379212 53525374 7648320 770384367 165695972 413936471 355929620 420782000 515898824 366378059 360613403 74182058 192717797 465938472 885317196 733754782 428348111 821305495 387995519 739039050 240516403 930713862 362414858 651128046 909216499 863219348 626027773 207489728 251565327 168097912 50883240 280628801 876430018 657132896 212053414 237273784 368059417 715980426 429188790 983196251 515298339 718982851 92076511 969745387 798366968 120179209 644162420 588317315 63973813 185632074 482271664 795844931 363976119 633353690 941162301 45839166 960497918 746725258 812298220 505210191 954853359 989441295 411534531 535354538 938279973 797045901 61571873 146240258 503889124 518901249 165455778 4285604 482511858 826109375 876550115 123061537 273182787 258891244 439276938 902491067 581351689 768342718 695563936 199683423 923868333 137473177 879312346 514938048 483832925 649566785 421022194 4405701 574746354 942123077 279547928 115375329 311373633 636115921 163534226 997127503 805933079 483232440 985838385 711056449 738678759 420421709 231629225 438436259 844364119 324944594 452127317 619542535 734235170 54606247 10770842 662537261 919304647 64574298 938159876 259251535 540158418 151764720 992924108 547364238 607532835 783715134 715379941 628910101 743362542 249763872 270780847 346802248 120179209 854212073 969505193 920745811 361213888 312454506 473624680 861057602 192597700 269579877 154406854 728710708 287354233 773386792 942723562 522384062 881714286 109130285 717781881 512536108 224063114 845925380 826109375 469661479 621584184 498724953 279908219 58569448 767742233 549045596 535955023 701929077 765580487 512055720 764019226 225744472 164615099 441078393 51603822 228866994 767502039 302606552 952811710 847126350 852290521 700608010 845925380 535834926 122581149 596604008 885317196 246641350 310292760 820464816 159811219 396162115 139394729 861297796 214695548 993764787 516018921 212653899 198962841 943564241 835597038 297802672 872707011 861417893 111772419 901770485 572224317 75623222 438075968 997247600 632392914 570542959 185992365 308731499 456931197 523224741 721985276 410213464 603089246 501367087 563697430 129546775 519381637 875829533 686316467 537636381 618221468 251325133 503528833 321461781 66375753 490198066 962179276 802690460 202565751 980794311 568501310 900209224 645843778 366978544 398203764 459813525 453448384 470261964 920625714 999289249 448524407 517700279 37432376 71059536 36111309 431110342 758494764 922066878 388475907 363495731 960137627 787918529 722585761 512776302 600567209 192357506 683674333 906334171 537636381 485634380 750688459 171340531 11011036 412014919 131108036 527308039 807013952 752730108 7528223 411894822 64334104 467379636 843163149 866461967 8248805 292518404 6087059 660255418 282790547 387635228 353287486 657613284 460293913 98441652 204367206 193558476 447923922 111171934 695443839 845805283 884956905 967703738 610655357 550366663 594682456 958816560 287834621 351125740 509533683 655691732 288915494 517219891 840160724 931914832 439757326 994725563 747445840 236313008 252406006 397363085 497884274 178786545 886157875 433872573 659534836 413335986 891081852 36591697 675507737 662897552 119578724 627348840 425585880 642481062 995205951 674306767 417179090 292158113 884236323 777710284 976831110 305729074 963620440 822266271 372382909 973948782 692441414 91355929 82708945 826709860 197401580 562597 898167575 44758293 259731923 66495850 676468513 911258148 101684271 923267848 315937319 59650321 774827956 878471667 260212311 486475059 722825955 477828075 456090518 366378059 90755444 316657901 624706706 655091247 491278939 347522830 238234560 281109189 532232016 722705858 619662632 794764058 134470752 977671789 104686696 858775759 720303918 443120042 775068150 119338530 658213769 535114344 816501615 849408193 382350960 421262388 928191825 923748236 332150414 515298339 598765754 96279906 827550539 238594851 493320588 234991941 39954413 658574060 256369207 258891244 663858328 534273665 498845050 382230863 109970964 80907490 882314771 416458508 188994790 567540534 604290216 471102643 429909372 749007101 118858142 124382604 977311498 95559324 318459356 919785035 226945442 415617829 728110223 559013647 221180786 424985395 849528290 276185212 495482334 466779151 744563512 757293794 573545384 427267238 528028621 332750899 50162658 437475483 562016072 215536227 780592612 863219348 126664447 771705434 451767026 868743810 109370479 527548233 211092638 269099489 526347263 962779761 564297915 456330712 455970421 677789580 331910220 956895008 211933317 531871725 377306886 44398002 474345262 464137017 261413281 720424015 985357997 734355267 938279973 438075968 946086278 967343447 429669178 538116769 532952598 33589272 714899553 176504702 157769570 98801943 700608010 373223588 484193216 260452505 894684762 635875727 850609163 809295795 612576909 238114463 955814135 888800009 168938591 708894703 692081123 955453844 408051718 256369207 112372904 608733805 271501429 752489914 214455354 175664023 923387945 133509976 679470938 672265118 448524407 689559086 332991093 430149566 672265118 469060994 987639840 129066387 820825107 113213583 717301493 188274208 982235475 814940354 465938472 323743624 275945018 469060994 401446383 670944051 703970726 604530410 122340955 950529867 698566361 384872997 420661903 674546961 596844202 776509314 862138475 477707978 105167084 314015767 577508585 164975390 779151448 109250382 668902402 387875422 524786002 720784306 604050022 806413467 753090399 766060875 708054024 746485064 531151143 1883664 182629649 595643232 367338835 415017344 889760785 223822920 698206070 668662208 63373328 601407888 512776302 153686272 532712404 540158418 522864450 622424863 883395644 415978120 142517251 823587338 906694462 121860567 596123620 622064572 998808861 304528104 496443110 798006677 215536227 813979578 964461119 803170848 959056754 870905556 94718645 484073119 192477603 427987820 491519133 916902707 95679421 539437836 693882578 433512282 202805945 9810066 707573636 984517318 443240139 688238019 848927805 24101609 719102948 530670755 350885546 206288758 670463663 414536956 688238019 777830381 422343261 778671060 151164235 661456388 830793158 139034438 916302222 763538838 145039288 678870453 216617100 556011222 368299611 848567514 263214736 96760294 275464630 245320283 514577757 412255113 345961569 864420318 205087788 203526527 541119194 506050870 772065725 657613284 984997706 78745744 831753934 389556780 907895432 526947748 824187823 735676334 767261845 358211463 872346720 81027587 91115735 273062690 79466326 273302884 408051718 548445111 387875422 208210310 710816255 379828923 191036439 599846627 755492339 178786545 95439227 211332832 42716644 221541077 777950478 991723138 160531801 560094520 77304580 496683304 362174664 418259963 357851172 744323318 826229472 334192063 562597 726428865 200644199 592760904 727870029 610895551 503889124 126904641 205087788 205928467 565138594 982235475 794523864 276305309 23020736 682353266 826589763 651728531 417299187 826349569 293719374 559494035 418860448 557692580 273783272 893723986 826229472 536675605 171941016 26143258 526707554 460534107 803531139 170860143 9569872 566339564 238955142 841601888 351966419 958336172 366257962 77064386 421022194 981154602 88113310 5486574 723906828 433512282 811097250 946206375 708654509 174823344 272462205 375385334 663738231 103005338 370101066 728230320 746965452 982235475 10650745 504369512 122100761 235592426 126424253 751769332 77664871 195960416 591920225 285072390 273062690 350164964 280748898 454649354 700007525 47400427 650407464 886037778 818062876 617500886 200283908 591800128 605250992 396282212 274744048 682953751 201484878 403968420 583273241 669022499 296481605 148402004 37432376 703970726 766060875 712857904 52324404 632753205 741921378 900449418 368779999 155487727 957015105 563217042 2364052 511335138 645723681 202685848 497884274 22900639 831633837 845084701 242077664 363135440 235232135 407931621 31667720 952571516 21459475 188754596 583033047 209411280 753570787 204367206 515898824 645603584 306449656 407090942 586155569 695804130 69498275 401566480 865501191 656772605 213494578 54606247 767982427 201845169 358091366 124382604 974669364 70338954 637316891 292638501 606211768 286273360 197521677 362534955 307650626 352206613 652088822 461735077 428828499 738318468 451046444 4886089 769063300 120059112 188754596 729671484 989561392 513256690 727509738 866221773 719223045 458012070 484313313 113333680 882074577 487796126 823347144 302246261 584113920 913660088 267898519 911618439 152004914 156928891 827670636 837998978 579430137 398564055 766060875 921226199 954853359 440117617 983796736 176504702 970586066 594922650 710335867 492239715 432191215 948488218 111171934 436394610 807374243 829592188 263334833 297562478 867903131 943924532 187313432 63973813 300564903 485274089 562376363 893723986 111652322 342238562 151644623 928792310 204006915 153205884 215296033 441078393 928912407 626147870 25062385 987039355 244359507 988240325 574025772 961698888 288675300 430509857 489237290 535594732 347282636 11011036 877390794 808695310 610415163 843163149 159931316 815300645 274984242 639238443 747085549 41996062 262253960 222261659 24461900 230067964 642721256 192957991 377787274 950649964 509533683 793442991 346562054 361694276 694963451 819143749 680551811 417299187 920145326 613537685 601648082 779271545 626508161 599126045 234031165 586275666 936118227 365297186 439997520 41395577 840521015 357731075 98081361 729551387 786117074 495722528 656652508 423063843 314496155 469541382 555170543 415137441 468100218 641640383 487195641 140235408 150563750 613297491 229467479 439877423 495362237 149602974 517940473 526347263 682113072 755132048 511815526 549646081 540999097 119098336 746845355 674667058 335393033 883035353 911258148 50042561 198602550 72620797 459573331 460534107 450325862 974068879 315336834 39233831 893964180 379828923 588797703 597324590 482511858 167137136 473984971 372623103 430870148 34550048 485153992 263695124 136872692 279187637 852770909 633834078 886878457 656772605 783835231 32508399 163774420 599126045 544962298 858295371 772786307 433872573 79586423 189715372 421502582 924228624 112493001 90395153 808575213 824668211 299724224 65294880 724026925 715500038 572224317 771345143 676228319 463056144 225384181 830072576 617140595 426066268 391838623 578589458 445521982 796565513 376706401 376466207 320741199 552408312 359652627 396402309 685475788 817102100 118497851 582552659 773747083 199683423 662056873 669743081 847606738 44998487 323863721 268018616 384632803 138794244 991362847 265616676 144558900 783474940 456691003 257690274 154887242 300564903 442399460 906454268 148762295 560574908 595643232 366137865 244959992 178786545 170860143 773987277 207009340 48481300 74302155 616059722 731953327 632753205 471823225 923267848 252766297 803771333 65655171 417899672 578109070 623505736 593121195 125223283 513016496 362534955 114654747 21219281 564898400 904172425 9089484 565138594 16655595 172301307 731352842 20258505 577868876 798847356 447923922 632633108 737477789 72740894 295400732 959176851 759815831 450205765 417058993 311854021 628189519 3204731 81628072 202445654 556851901 526707554 302606552 18817341 546163268 572584608 61691970 785516589 837638687 570062571 981634990 257329983 345361084 385353385 434593155 319420132 523224741 83669721 779751933 132669297 500046020 36711794 814099675 261173087 516739503 526827651 131948715 297442381 638157570 304768298 475786426 362895246 768102524 34189757 929873183 672745506 501246990 583153144 162333256 637436988 336233712 866341870 992443720 51844016 569822377 988240325 437715677 951490643 723906828 954493068 354008068 344040017 111772419 780712709 753450690 52084210 518420861 905613589 337915070 791521439 717661784 827070151 266577452 526587457 3444925 818423167 621824378 856854207 324464206 949088703 341638077 268979392 311013342 15935013 322403 222982241 185872268 802690460 29385877 696644809 888800009 351966419 781793582 356770299 300444806 607172544 424264813 51363628 143117736 248442805 192957991 675988125 215896518 108529800 644883002 597925075 698206070 90275056 164975390 727749932 247962417 494881849 833675486 807854631 51003337 41035286 220340107 328907795 627829228 748526713 719823530 520942898 636596309 74542349 661936776 566459661 138554050 264295609 929632989 65414977 677309192 630591459 272342108 307050141 386914646 102645047 309692275 417299187 747085549 904772910 265136288 283030741 359412433 381630378 697365391 813859481 70338954 105887666 528148718 685355691 786477365 313175088 544481910 931314347 988720713 738918953 857935080 357130590 409973270 909816984 822626562 648125621 256129013 814099675 21339378 447923922 686676758 185632074 151404429 548805402 843523440 896125926 626027773 754531563 460414010 550847051 294800247 455009645 232469904 760536413 621704281 706252569 447203340 615098946 879912831 674186670 548685305 169178785 950890158 736276819 681512587 647765330 687277243 544241716 411774725 315216737 521183092 613297491 403728226 929873183 317258386 431230439 276185212 941642689 391238138 508813101 930833959 704210920 925309497 198722647 789239596 945125502 225624375 377426983 655331441 374784849 41996062 283751323 116696396 836197523 738678759 81387878 517219891 757293794 262253960 476146717 687037049 839920530 856974304 761857480 614738655 379468632 722705858 339356234 486475059 122461052 23741318 661576485 10650745 613417588 166056263 159450928 32748593 592881001 29986362 970105678 780112224 586876151 910297372 236793396 569942474 29866265 620743505 899969030 831153449 710936352 332750899 770264270 518060570 290476755 89914765 470622255 859496341 775908829 702889853 936358421 219139137 455129742 129306581 939120652 66015462 897446993 668422014 424985395 370461357 700848204 115015038 299484030 166776845 270300459 924588915 191276633 112733195 12812491 29866265 184190910 19057535 153205884 671904827 19537923 902130776 62052261 816501615 401326286 814820257 618581759 691840929 833315195 915221349 857214498 503408736 322302460 401806674 482872149 366858447 796325319 808695310 248803096 188394305 37672570 497043595 96400003 580871301 543881425 60731194 990522168 340196913 638637958 128946290 391238138 94238257 829952479 858535565 537756478 875709436 143478027 387995519 998568667 513376787 176264508 39233831 894924956 329988668 482271664 786597462 266697549 731953327 489117193 370101066 574265966 824067726 79226132 815420742 114174359 675988125 530070270 251445230 369500581 992203526 672865603 412495307 709615285 733754782 847486641 178426254 440838199 970345872 17376177 361574179 421502582 186592850 947767636 252526103 505690579 887118651 206288758 148762295 592280516 232229710 630471362 409973270 532472210 257209886 454649354 223222435 225264084 856013528 835597038 98922040 843043052 294920344 672265118 226825345 767261845 950649964 712257419 905973880 146120161 776629411 81147684 761857480 495722528 845084701 294920344 843043052 893603889 271861720 926750661 141076087 321581878 199803520 584714405 755612436 431710827 48721494 366257962 119578724 833075001 392559205 648005524 598765754 712257419 197041289 503408736 894204374 805933079 853131200 971787036 39714219 97841167 584354114 336714100 96880391 319059841 891682337 571263541 714299068 237754172 138313856 466178666 349684576 485874574 574626257 457771876 597564784 97841167 552048021 462936047 653529986 22059960 950049479 533192792 137713371 993644690 549766178 103605823 956774911 930833959 854091976 313535379 914500767 193078088 146000064 954853359 348843897 840280821 650767755 946566666 447683728 48961688 516379212 285792972 784796007 40314704 907535141 729070999 444801400 292038016 167377330 834516165 629990974 658453963 887959330 649806979 860577214 462335562 268499004 610174969 275104339 333591578 749727683 702409465 63493425 651007949 45238681 814099675 8368902 117537075 809415892 257690274 545802977 767982427 72380603 767982427 846645962 820344719 398323861 646684457 865501191 739159147 311013342 356289911 684274818 767021651 496683304 843403343 459092943 488396611 595042747 537516284 1643470 382591154 326385758 660615709 822626562 712017225 884956905 45719069 329868571 42356353 414536956 751769332 705291793 844604313 401086092 771945628 676468513 846525865 623145445 915221349 424985395 639598734 646444263 544722104 801369393 864060027 84750594 797646386 417299187 943924532 445041594 250844745 685475788 891802434 205688273 638277667 233190486 994365272 382230863 731472939 348483606 567540534 620383214 46799942 670703857 670703857 731713133 968064029 968184126 723186246 81267781 868743810 346081666 134590849 974309073 731713133 571623832 694362966 996286824 483472634 943684338 416458508 432671603 406490457 21699669 579189943 937919682 882675062 181428679 43317129 491038745 410813949 994245175 849288096 219859719 823106950 118137560 596844202 656532411 83429527 466418860 809415892 940681913 609934775 325785273 655091247 119098336 536195217 144558900 380909796 316657901 304648201 263935318 102164659 164134711 84750594 779391642 544001522 776028926 478788851 716460814 81988363 567900825 525266390 231629225 571143444 640079122 518420861 129907066 352566904 108649897 282069965 413816374 218418555 841601888 684034624 279908219 483832925 897687187 632032623 419581030 209050989 219859719 934316772 112733195 271501429 117296881 890841658 772065725 989801586 159811219 842802858 245560477 468340412 58329254 6807641 982595766 769903979 311013342 311133439 584113920 123782119 348363509 363976119 54726344 200283908 659775030 947767636 244839895 399044443 506531258 591680031 833435292 735195946 887719136 860937505 24221706 559373938 847006253 606451962 358811948 481551082 707213345 805092400 110331255 608733805 244839895 778911254 230908643 800408617 966382671 352687001 254207461 816741809 653650083 907775335 384632803 921586490 470502158 43437226 747926228 526347263 444441109 673105797 619782729 283871420 171700822 942243174 771945628 864300221 613777879 545562783 52444501 810016377 469301188 112733195 467619830 893964180 221300883 69738469 97240682 777710284 915221349 23140833 927711437 848087126 718622560 297802672 396042018 573305190 467139442 741200796 215416130 437475483 490678454 346562054 323503430 19057535 105647472 811937929 885677487 585795278 666260268 434713252 909336596 541839776 622304766 856974304 678750356 845204798 225984666 15094334 438916647 142156960 686436564 617500886 89794668 154166660 25903064 994725563 394120466 109010188 470021770 770984852 548805402 438796550 844484216 89074086 264415706 225624375 568381213 48241106 87753019 315216737 48241106 120299306 996647115 757413891 606091671 477227590 667581335 558172968 520462510 40795092 252886394 176985090 460534107 781673485 216857294 234271359 363375634 136152110 61932164 518300764 554570058 14133558 639358540 70819342 749607586 631071847 740360117 600206918 435914222 8128708 381990669 31547623 610895551 662537261 235952717 299844321 147441228 372503006 300925194 534273665 568861601 170980240 983556542 637677182 659414739 720664209 991122653 13893364 697365391 821785883 584354114 775668635 190556051 685475788 26863840 505330288 555530834 660615709 77064386 657012799 668422014 595403038 869584489 291437531 360733500 494041170 579670331 742521863 670223469 807374243 273182787 158249958 380669602 611375939 265496579 891081852 2364052 571743929 518781152 733994976 939360846 836918105 242798246 450085668 671544536 424505007 59650321 30947138 527548233 661936776 383672027 130147260 487796126 441919072 504489609 158850443 10170357 782994552 252526103 375745625 418980545 919664938 838839657 736517013 299243836 224303308 386794549 376946595 500286214 113693971 342959144 54245956 387154840 25782967 761016801 23861415 901770485 945846084 568261116 811097250 442639654 399044443 673826379 52324404 996527018 990281974 993284399 562136169 700367816 749727683 117657172 462575756 485634380 111532225 503889124 977791886 419821224 839680336 622184669 456450809 382230863 821425592 795965028 369980969 660615709 635755630 749367392 467379636 303327134 289876270 426426559 879312346 470141867 830312770 87993213 493080394 713578486 454529257 541119194 678870453 632753205 838119075 320260811 878351570 837878881 458252264 48481300 988240325 636115921 260332408 8969387 5726768 644642808 471943322 842322470 537035896 278226861 954973456 607292641 539437836 161972965 797045901 279307734 729671484 476146717 237874269 877751085 479869724 312934894 158370055 589638382 926270273 532592307 674907252 215296033 913179700 951610740 545562783 656172120 802930654 883395644 829952479 551327439 244959992 740960602 727749932 47280330 291917919 762097674 686796855 964701313 398564055 751529138 876069727 740240020 546043171 132309006 303687425 512776302 332030317 52804792 443360236 756573212 354248262 210251959 596724105 244239410 97000488 647284942 567540534 113093486 139755020 585074696 473384486 880032928 763298644 9569872 253727073 378027468 631792429 743722833 210852444 534874150 132309006 349924770 387635228 556731804 157769570 685956176 561895975 966382671 776028926 387395034 333831772 511335138 328307310 748406616 471943322 57008187 453808675 25062385 785396492 278947443 63013037 179987515 913299797 855292946 547844626 916542416 925549691 23140833 435794125 739999826 787438141 532832501 22300154 852170424 761016801 251925618 55927314 843763634 444801400 615339140 252045715 294680150 490198066 448524407 656052023 876790309 718742657 695924227 97240682 541839776 961939082 407571330 750928653 539557933 425826074 589998673 439276938 843163149 862618863 156808794 207489728 884956905 76223707 208690698 931434444 890961755 725107798 38152958 268859295 130147260 600807403 723306343 266697549 453448384 738918953 984277124 563817527 770984852 335513130 24702094 988360422 503288639 15454625 829111800 735195946 569942474 599606433 688958601 169899367 682113072 737237595 441798975 869824683 468820800 903091552 828391218 448644504 310412857 431710827 498364662 10890939 926630564 575827227 245440380 75142834 550847051 440357811 362414858 751529138 925429594 709134897 686076273 681032199 962899858 484313313 740119923 437955871 561415587 573064996 641280092 387635228 754531563 558172968 384272512 640439413 441318587 496563207 901650388 739999826 42956838 498004371 174823344 276785697 736396916 842802858 322182363 483352537 799688035 835356844 131948715 797286095 295400732 25302579 314856446 113814068 119818918 167617524 384752900 101564174 724987701 459573331 377667177 795604737 422223164 482391761 185511977 521663480 473144292 664338716 96279906 266097064 846405768 875349145 593361389 757774182 96880391 385233288 578109070 39594122 375985819 12932588 243278634 506291064 837278396 851329745 191877118 363615828 517099794 469181091 21099184 446963146 143478027 267298034 732914103 131948715 513256690 571503735 707453539 965782186 658333866 836437717 927110952 58329254 133630073 967823835 420421709 841361694 8969387 848927805 906814559 981394796 624466512 704210920 27344228 686676758 98922040 902851358 166296457 182149261 392439108 766421166 285312584 191516827 301525679 149723071 568381213 733394491 979713438 809415892 662657358 536555508 98561749 810016377 419340836 563457236 631552235 973588491 545562783 748646810 457171391 133630073 303687425 479749627 407571330 294079665 787798432 917022804 521303189 645123196 281349383 783835231 899248448 536555508 265616676 880032928 801249296 921826684 764019226 390757750 11131133 675507737 103365629 841001403 198122162 665059298 435433834 366618253 911258148 605851477 171460628 681872878 523224741 116456202 641400189 859136050 31667720 221180786 806653661 244119313 144919191 483112343 335032742 237994366 975269849 818783458 80427102 808815407 623866027 151284332 314736349 9329678 835597038 983316348 447923922 943804435 582672756 717781881 133149685 198122162 971426745 438796550 756212921 710095673 529469785 45598972 129426678 469901673 927110952 56167508 604770604 574506160 251205036 111772419 302966843 678510162 145159385 245440380 51123434 297802672 888079427 544481910 294319859 495242140 451526832 262133863 704210920 341998368 117056687 957735687 712377516 818903555 380309311 705772181 813739384 517099794 891562240 234631650 457291488 397122891 56167508 381390184 19658020 133509976 57968963 475065844 55687120 551207342 245080089 419941321 926870758 288194912 686436564 15935013 313175088 18216856 490438260 258290759 873907981 566819952 398684152 106247957 553729379 195720222 593481486 670103372 353767874 459213040 739519438 919184550 406970845 636836503 574866451 294800247 603329440 802210072 841481791 263454930 996527018 220940592 264055415 674546961 710335867 686076273 371662327 12932588 265016191 852050327 40434801 562856751 959176851 187193335 441198490 472423710 79826617 795844931 921346296 344760599 312454506 877751085 53044986 930833959 650887852 341517980 108529800 643081547 556731804 268859295 817462391 28184907 202445654 974789461 413215889 633113496 556371513 995085854 611015648 619182244 639838928 475666329 247842320 900689612 13172782 816381518 220220010 82708945 722105373 315216737 215776421 293118889 531391337 767141748 404809099 422943746 323623527 447083243 850368969 160771995 45959263 631912526 814940354 17135983 175303732 163414129 955694038 564658206 18457050 709495188 706372666 463776726 817702585 841361694 688838504 384632803 682953751 427387335 74902640 260692699 808695310 947647539 175664023 9569872 647645233 470021770 259251535 689919377 847486641 681872878 659895127 730872454 597804978 258290759 107929315 689318892 629750780 305488880 427267238 945605890 476026620 357010493 62652746 638878152 363976119 331549929 728590611 961218500 638157570 897927381 713338292 16655595 328907795 712617710 168698397 57968963 538477060 832354419 259731923 970345872 50042561 742041475 125703671 852290521 923387945 141196184 711416740 461014495 738918953 778430866 633353690 242437955 212173511 418380060 8368902 388475907 622184669 185511977 668782305 315937319 458732652 674667058 882314771 875829533 327106340 70699245 407331136 10770842 11011036 279427831 625307191 737838080 334912645 597684881 845565089 494041170 178426254 558893550 849167999 707813830 518180667 964581216 322542654 2604246 748166422 475786426 224543502 869824683 908736111 663858328 229107188 873667787 623385639 922186975 869944780 470622255 101684271 789239596 432671603 744443415 762337868 345841472 589998673 752610011 237273784 618341565 670944051 583153144 26743743 416098217 72020312 57728769 241717373 452127317 649326591 667581335 71299730 384632803 645483487 984036930 379708826 372262812 130387454 429909372 777950478 948968606 240036015 556611707 822506465 360012918 881353995 207970116 316537804 186352656 977311498 963260149 98321555 738438565 619662632 138674147 902250873 760896704 266577452 747445840 617981274 222261659 78025162 179627224 719463239 56047411 116336105 179507127 515658630 849167999 700848204 662897552 821185398 82108460 131468327 577028197 927951631 257089789 85951564 800048326 939360846 722105373 275464630 408532106 184911492 32028011 399644928 429308887 167857718 125223283 53885665 309932469 175063538 469060994 116456202 346201763 691360541 207850019 402527256 871866332 55446926 172301307 591559934 822866756 18577147 427747626 26263355 373703976 527187942 801729684 571263541 795724834 88473601 907775335 913780185 565739079 414657053 733154297 460293913 532712404 707573636 676588610 245920768 780352418 956294523 833195098 235592426 336113615 382471057 203286333 30106459 449365086 260092214 325064691 73821767 820104525 835356844 347282636 7288029 229227285 804852206 362775149 788759208 93397578 741801281 834155874 75262931 685115497 581111495 363615828 494641655 271861720 539077545 301885970 807734534 487435835 637797279 316177513 719102948 262374057 287114039 613177394 282670450 572584608 185632074 634314466 129306581 334792548 475426135 720664209 773506889 759455540 366498156 624346415 333351384 949088703 14734043 569582183 473024195 197281483 133870267 565859176 388836198 143478027 302486455 978872759 700487913 296241411 30106459 731232745 695804130 31187332 594802553 905253298 13292879 998088279 867903131 887959330 830432867 990161877 897206799 978152177 92917190 57968963 292638501 952451419 637797279 415257538 385233288 636115921 209291183 249403581 23501124 793683185 287474330 479989821 557692580 550847051 214695548 850128775 21339378 565979273 578469361 919664938 402647353 207970116 856854207 582912950 545442686 629870877 215416130 489957872 154767145 274383757 360973694 809175698 667941626 193198185 788879305 957735687 660015224 311733924 113453777 54846441 726548962 714539262 154767145 525026196 49442076 349444382 38753443 29145683 870184974 410813949 798967453 448404310 126784544 558533259 932995705 244719798 333831772 944885308 763899129 616299916 472183516 731833230 198002065 438676453 707813830 462335562 601407888 441798975 763899129 341878271 423183940 95199033 938159876 542320164 890361270 45358778 356169814 51243531 426666753 812298220 1763567 831633837 341998368 502447960 568741504 139274632 403848323 62412552 112252807 862138475 553128894 591079546 69017887 854932655 454289063 940802010 326145564 844123925 668181820 823827532 901290097 707693733 777830381 468700703 764619711 267298034 862138475 228506703 869704586 257209886 235592426 483953022 450686153 71299730 276665600 859376244 638157570 100243107 386314161 526947748 761256995 828030927 786237171 493440685 949929382 327466631 332150414 592640807 371302036 304047716 992563817 760296219 602608858 653049598 534033471 88353504 191156536 962179276 656772605 825028502 3565022 667341141 516619406 703970726 930593765 901290097 354248262 44518099 284471905 689559086 285552778 224063114 929632989 148642198 542560358 666260268 456931197 588197218 813258996 969985581 496082819 449725377 573064996 84750594 442519557 69738469 408291912 635515436 258891244 752129623 801609587 997727988 930113377 120059112 974188976 901290097 127985514 354488456 497163692 594682456 85471176 570542959 900209224 618942050 40674995 194038864 781193097 412014919 995926533 54846441 365056992 745644385 990402071 152845593 511815526 56888090 449485183 137232983 691360541 491999521 880633413 132669297 598525560 862859057 814940354 916542416 115135135 271501429 190916342 659895127 496803401 133389879 192957991 924829109 280628801 988240325 9209581 240756597 695804130 799207647 936598615 124502701 44398002 408291912 951370546 204006915 858295371 599846627 493680879 412615404 402046868 651128046 524906099 694603160 270060265 726428865 409012494 645003099 26023161 101444077 312454506 459693428 294199762 494161267 446122467 790800857 229107188 745043900 931434444 170980240 850969454 845565089 618701856 881113801 967463544 922427169 781673485 108409703 209531377 249403581 120539500 350405158 475306038 660855903 300204612 960017530 343079241 109850867 459213040 417659478 661816679 575827227 750448265 585194793 573905675 33469175 593961874 574746354 793683185 710335867 656772605 183710522 120779694 948488218 346922345 226224860 63853716 266217161 876189824 84510400 763298644 645843778 494761752 904052328 610174969 170980240 553849476 767862330 358331560 692921802 608493611 68657596 178786545 968304223 973588491 193678573 426546656 970465969 182389455 370701551 436274513 992804011 72620797 128706096 278827346 673105797 893603889 595883426 562976848 271981817 601407888 103485726 48481300 296481605 280628801 475426135 222862144 756453115 4645895 258651050 936958906 566099370 703850629 644883002 248202611 14854140 401446383 149242683 27824616 367579029 55567023 930353571 300685000 890000979 186833044 418980545 755972727 888679912 621824378 879552540 679470938 334432257 264055415 308371208 72500700 554209767 360613403 896606314 824067726 559133744 291797822 761136898 604650507 206168661 444200915 910537566 123782119 277386182 595282941 66375753 792722409 923267848 22900639 498364662 917142901 658814254 727870029 200764296 478188366 104326405 766421166 558533259 653529986 575947324 535354538 694362966 583393338 469301188 141436378 904893007 759575637 161972965 971666939 247001641 284832196 565859176 830673061 846285671 372863297 27224131 871025653 33349078 839199948 503889124 872586914 883635838 621223893 682694 361093791 738318468 190916342 427987820 737838080 660976000 772305919 986318773 946566666 497403886 867302646 525026196 668061723 338995943 35751018 481551082 760776607 239915918 449485183 820945204 939841234 971306648 760296219 333711675 55206732 813739384 767381942 223943017 665779880 631792429 565979273 669743081 358091366 623385639 711296643 838959754 399644928 749607586 216977391 462695853 604650507 795244446 378988244 966142477 768703009 808214922 107208733 851569939 445161691 35751018 612576909 261653475 475786426 883155450 945365696 919544841 121500276 806413467 912819409 875949630 142637348 214455354 338275361 250364357 678630259 347642927 409973270 597084396 525146293 574145869 9449775 228146412 791041051 966262574 145279482 837278396 148522101 317018192 123782119 555530834 888800009 194038864 544121619 114894941 100002913 148642198 76343804 190315857 554089670 93157384 985718288 382831348 293599277 257450080 798246871 782514164 421502582 343319435 182389455 404448808 739159147 630591459 998328473 342598853 404448808 432191215 786837656 51603822 529830076 734115073 927591340 823106950 518540958 38633346 106728345 740600311 369740775 450686153 664819104 934917257 577028197 265976967 387274937 652929501 66736044 494641655 140715796 893964180 555410737 537035896 443120042 83909915 89074086 555410737 124262507 73341379 89794668 687637534 326385758 317498580 39834316 409132591 114654747 922888 480470209 150323556 388596004 806773758 181668873 619662632 659414739 88953989 634074272 559013647 949569091 685715982 43557323 693402190 152605399 987159452 195600125 421502582 145879967 49321979 340317010 697125197 206408855 613297491 669262693 938880458 698806555 471222740 125823768 873787884 172061113 249643775 296961993 631191944 945605890 470742352 198002065 753450690 774587762 857574789 597084396 107929315 224063114 199803520 775548538 258771147 820825107 739639535 591199643 765220196 444080818 728710708 551207342 547124044 45598972 907775335 183230134 756933503 653770180 394240563 862618863 44638196 891682337 310773148 513616981 746124773 87993213 318099065 722225470 127024738 317018192 215896518 442039169 129666872 628910101 759935928 480950597 840761209 277626376 319540229 727870029 35390727 626868452 549886275 726909253 533673180 50402852 266937743 497283789 625547385 311733924 124862992 636115921 659174545 868263422 825749084 27704519 185391880 497523983 458852749 162093062 558293065 155127436 224663599 59169933 74662446 363495731 237273784 629270392 627829228 220099913 689438989 319179938 292038016 804491915 220700398 675747931 21579572 14734043 685115497 645363390 362895246 458372361 269339683 437235289 308611402 852891006 859736535 256489304 194999640 945725987 539798127 530190367 801009102 688117922 545562783 859496341 686676758 959417045 705051599 207729922 552888700 3444925 67096335 416938896 544121619 362174664 219859719 298763448 773626986 610295066 875589339 201124587 169539076 997727988 425585880 831753934 835236747 364816798 510494459 478548657 248562902 893483792 345961569 425946171 36591697 80186908 22660445 963620440 621944475 837038202 820464816 81748169 921106102 18457050 554570058 602728955 452247414 168218009 651128046 429188790 959417045 405889972 890361270 796205222 73701670 107689121 750928653 451406735 899488642 366618253 53765568 158249958 587596733 957735687 296241411 740360117 688358116 466538957 937559391 194279058 340076816 755612436 700608010 794043476 82228557 732313618 444441109 751409041 449124892 514938048 20258505 646924651 871866332 145279482 444321012 347522830 744563512 515178242 29746168 995926533 148882392 491639230 286033166 603089246 410813949 125703671 908616014 709375091 235352232 973708588 778310769 24461900 527428136 334192063 297562478 681872878 993164302 797045901 151284332 833435292 523104644 903091552 654010374 843403343 575827227 993164302 67816917 143117736 755372242 969385096 652689307 473264389 326625952 604290216 453928772 600447112 525986972 589998673 213134287 762938353 806293370 206649049 998208376 704451114 205087788 835957329 923267848 284111614 550847051 548204917 813739384 653890277 90995638 936118227 39594122 507492034 52924889 574025772 866101676 156688697 594442262 843523440 417299187 664819104 226224860 690399765 981755087 372262812 452967996 900449418 393760175 421262388 753090399 250604551 324103915 784796007 864780609 85951564 263454930 679230744 612336715 80066811 932875608 362174664 799447841 810616862 836918105 395921921 79826617 902491067 651848628 133149685 326265661 125823768 547003947 292158113 489837775 589398188 124862992 578229167 590839352 66976238 257450080 986919258 718622560 688838504 234751747 397723376 921946781 492720103 70699245 973228200 740960602 398083667 521183092 647525136 556971998 816861906 450926347 884836808 356530105 596123620 651608434 479269239 936118227 769423591 181909067 667581335 733634685 774467665 958336172 740240020 668181820 644642808 149723071 865140900 39474025 914380670 597925075 581711980 873307496 953532292 746364967 128826193 919064453 982835960 288435106 438916647 159450928 972988006 416098217 802089975 421502582 111412128 530910949 42956838 226705248 682694 531391337 192957991 853971879 669262693 756333018 495242140 87873116 901770485 370221163 216256809 446242564 639959025 588317315 25302579 679350841 875469242 759815831 625787579 508693004 129907066 347883121 206528952 612937200 313295185 310292760 3925313 602849052 110571449 378267662 891802434 237874269 621944475 505690579 553729379 526947748 17616371 16295304 910777760 923027654 428348111 336113615 499805826 639838928 671784730 58329254 377426983 229227285 891081852 697725682 849648387 34189757 265856870 393159690 529229591 379228438 282430256 465337987 460293913 251445230 989921683 830552964 30226556 979112953 282069965 735436140 385713676 361694276 665779880 188274208 984036930 234991941 714779456 875469242 439757326 912699312 651608434 769183397 223582726 237754172 771945628 407931621 925669788 212293608 131108036 818182973 552528409 566579758 691840929 257450080 996166727 460894398 488276514 715980426 753931078 609814678 395921921 456570906 760056025 385713676 720784306 479389336 778070575 323023042 939721137 498604856 33228981 844964604 259731923 703610435 624826803 402166965 882795159 838479366 192717797 195119737 410813949 226705248 791521439 501967572 774587762 921706587 110211158 174943441 602248567 127745320 584113920 193918767 544602007 481671179 22300154 825388793 680912102 787077850 3685119 461975271 768222621 555050446 768943203 55326829 363135440 812418317 921466393 478668754 935517742 666260268 992924108 469661479 61932164 498845050 916902707 740960602 454048869 242197761 202325557 106968539 412014919 428948596 765100099 258170662 728590611 586275666 899368545 221901368 601407888 170499852 103125435 51243531 92316705 494041170 871145750 483352537 266577452 874508466 142036863 827910830 829832382 556731804 391478332 668662208 84510400 17376177 381870572 127505126 821785883 166896942 743602736 354128165 725948477 799207647 980313923 518781152 968784611 328907795 293238986 304167813 640319316 470862449 896486217 488276514 587236442 902010679 412495307 554089670 671424439 868143325 669743081 523585032 694362966 780952903 165215584 392319011 959537142 423183940 95319130 802690460 650647658 254807946 732313618 775188247 192117312 191276633 616299916 876550115 276305309 599966724 484433410 704331017 979593341 737477789 159571025 360493306 499925923 138193759 244719798 78505550 628429713 282430256 433992670 96400003 366498156 125703671 273182787 913419894 348843897 209651474 693282093 977191401 935157451 216256809 865020803 582792853 99042137 549045596 335272936 958696463 363976119 945005405 446843049 871025653 175063538 552408312 590238867 905493492 141916766 42116159 954733262 48121009 963260149 464857599 227906218 890481367 909216499 434713252 594081971 422223164 833435292 339476331 534513859 426066268 498244565 952691613 414777150 215416130 384152415 97120585 564538109 945725987 950770061 946686763 647765330 338155264 226465054 247602126 82348654 778310769 857935080 440237714 817342294 305368783 147561325 346682151 465097793 21459475 782273970 602248567 336714100 271621526 249763872 935637839 570663056 770624561 475906523 141316281 553128894 168218009 340437107 4045410 497283789 591680031 313054991 214095063 785996977 308971693 193798670 316537804 813258996 343079241 256969692 28785392 164735196 23020736 54726344 405529681 195960416 597084396 420902097 353527680 736997401 33349078 690519862 497403886 416098217 886638263 5126283 280508704 231268934 619782729 700007525 289155688 545802977 994845660 42836741 854692461 4285604 5606671 87512825 776629411 852891006 265256385 806653661 909937081 794163573 351125740 599606433 129907066 109490576 356770299 208090213 967223350 616059722 82829042 886878457 703850629 521423286 12212006 284832196 968904708 475065844 111171934 253847170 500406311 520462510 320981393 731352842 817702585 338395458 156088212 105527375 318459356 932275123 259972117 463776726 67456626 840280821 134470752 912939506 482151567 879072152 992683914 338395458 795604737 4645895 662777455 91836317 137833468 458852749 493080394 419581030 668662208 568981698 389917071 763178547 238474754 442639654 227545927 225504278 444080818 960978306 892162725 41996062 471703128 302726649 167137136 617500886 358691851 129546775 86071661 177945866 870305071 75503125 372382909 808094825 822746659 895885732 181668873 70819342 174943441 153205884 863819833 944164726 274503854 845444992 672745506 907535141 269579877 498845050 169298882 304768298 945846084 832354419 614738655 605250992 905973880 661216194 806053176 200884393 872106526 515298339 24341803 594802553 774827956 563697430 662056873 741921378 941402495 813258996 437595580 21939863 916662513 474345262 864180124 770264270 800768908 846045477 75262931 609814678 500046020 303327134 158370055 189234984 46679845 234631650 252165812 642000674 662897552 318099065 600086821 436514707 238114463 453088093 10530648 389676877 757293794 390757750 192237409 986198676 97120585 886518166 367819223 882795159 993284399 66736044 703730532 631552235 314496155 192597700 579069846 347642927 761617286 229467479 802330169 861898281 727389641 939961331 140715796 946326472 560695005 862498766 236192911 993884884 889760785 637677182 623866027 329988668 975870334 519741928 216256809 386073967 929993280 967943932 979233050 734715558 373944170 15334528 183230134 955573941 1403276 168218009 758734958 417299187 240156112 255528528 473024195 969024805 110811643 107689121 627709131 339836622 36711794 397603279 534153568 188754596 259972117 510014071 858415468 473024195 777229896 871025653 508933198 772906404 965181701 938520167 973228200 197761871 794764058 995085854 89914765 250124163 684875303 899848933 501727378 979233050 723666634 888199524 32388302 905733686 969745387 625307191 88953989 547724529 362534955 853251297 15814916 541359388 47160233 18096759 862498766 501967572 109850867 704811405 219979816 207850019 267658325 258170662 519501734 244959992 728230320 14373752 64334104 840521015 805092400 410333561 309692275 656172120 265256385 768823106 524545808 746605161 325304885 800889005 618821953 960377821 781913679 524425711 94598548 914140476 934076578 317018192 621944475 877150600 562736654 469781576 87993213 908015529 182389455 608493611 752249720 865981579 702049174 758494764 388956295 241837470 25542773 338995943 697125197 657973575 456210615 677189095 705051599 569942474 501607281 873307496 855653237 795004252 419460933 57968963 303327134 938159876 170980240 821785883 999529443 578709555 338995943 861057602 113814068 809776183 119338530 556371513 758614861 3805216 312094215 808214922 471342837 250364357 167377330 946206375 283751323 767261845 686556661 483712828 923988430 473504583 232109613 547003947 854212073 324584303 932995705 724747507 318219162 465578181 510254265 976350722 248082514 554690155 32988787 795244446 197881968 245200186 403608129 822986853 50643046 71419827 963019955 253967267 596844202 506891549 169058688 798967453 12212006 634554660 960618015 44398002 543160843 770504464 147921616 499205341 790080275 665539686 394360660 835837232 348243412 64214007 111532225 411294337 643802129 844244022 918463968 252406006 488756902 928552116 208570601 653169695 114534650 306329559 677068998 992924108 275584727 670103372 442759751 29265780 173742471 113814068 534153568 954012680 572944899 745524288 56167508 602608858 237994366 970345872 179987515 510014071 756092824 355689426 668422014 307890820 882434868 319179938 654370665 839560239 505210191 962539567 387395034 307410432 947887733 61451776 86311855 126544350 995205951 556611707 135191334 305488880 694843354 517700279 105767569 206649049 792121924 903571940 211452929 180467903 650647658 931794735 322062266 767141748 17736468 883515741 110211158 341758174 850008678 701568786 889520591 51363628 225744472 251445230 839560239 996887309 699527137 715500038 28905489 173742471 945125502 121019888 722705858 335032742 765100099 169298882 534393762 265256385 901290097 359052142 567300340 210852444 412255113 114294456 16895789 879072152 820825107 971546842 379949020 992563817 714539262 98681846 94598548 403848323 23861415 455730227 710455964 276065115 703009950 826829957 276785697 366257962 543280940 906574365 446843049 566099370 746965452 198122162 610054872 495962722 439877423 466538957 248923193 208570601 146360355 787197947 948848509 371542230 784916104 87152534 611375939 333351384 308491305 325545079 929392795 84630497 1763567 375265237 8488999 765340293 646804554 241957567 14133558 103245532 378507856 184190910 420181515 123902216 115255232 98201458 197281483 125223283 229107188 462095368 304408007 709855479 16535498 651968725 916902707 528989397 817462391 551807827 46439651 880153025 786837656 861778184 927831534 721384791 154647048 383311736 879552540 731833230 686316467 969625290 284952293 374664752 476266814 54726344 425946171 414657053 573425287 14974237 520702704 534033471 583873726 460894398 644762905 697365391 701208495 58089060 259852020 569341989 33228981 878471667 785996977 977551692 974068879 19297729 608373514 300324709 589638382 305969268 128706096 2604246 130987939 482391761 666260268 211452929 107328830 574506160 510974847 217337682 653049598 852650812 299484030 564538109 790920954 593121195 770384367 244359507 501727378 471943322 371902521 746124773 868863907 314616252 654010374 769063300 346321860 576908100 103005338 875949630 835356844 930954056 640319316 740240020 605971574 608973999 937079003 582912950 23621221 396882697 59530224 10890939 252646200 279668025 703130047 725468089 2964537 843523440 577388488 431230439 591680031 173622374 204247109 964220925 335993518 988120228 828151024 617861177 126184059 326986243 529349688 855653237 110691546 14253655 497764177 8488999 822146174 261893669 617500886 554570058 764980002 591920225 645003099 49081785 906334171 334192063 368419708 393279787 895885732 36711794 162453353 322542654 219739622 270780847 126784544 399164540 990522168 588917800 41035286 721745082 90154959 99522525 905133201 874988854 103605823 601888276 204487303 378748050 762818256 453328287 820464816 977311498 201004490 606091671 164374905 185992365 615459237 475185941 690639959 731112648 663978425 798487065 786237171 285072390 685355691 159691122 336594003 691240444 761857480 81628072 439757326 941402495 316057416 209651474 731953327 239555627 881954480 119218433 684995400 743722833 350765449 295761023 148882392 533312889 141556475 193198185 564418012 36231406 417659478 750087974 564538109 798847356 317258386 731953327 709615285 345721375 361454082 895405344 639959025 446843049 990041780 722105373 100243107 956414620 277986667 760056025 575587033 298643351 225624375 306209462 120179209 427507432 697965876 344760599 139634923 363015343 475065844 942123077 421142291 317018192 65775268 441438684 739519438 359892821 757413891 147921616 632873302 179026739 502568057 173141986 850729260 74182058 177105187 553849476 947407345 512175817 627348840 228266509 758614861 838479366 314135864 906334171 384872997 411294337 214455354 607052447 698446264 676108222 310773148 253967267 873787884 568861601 49442076 124622798 334432257 677789580 227185636 196801095 68777693 725468089 323623527 110211158 280989092 856974304 700968301 411054143 955093553 343799823 126063962 296001217 239075239 730512163 442879848 634434563 631912526 305849171 499325438 167857718 267898519 687517437 740480214 806893855 44998487 432551506 21819766 868503616 146120161 329388183 622665057 176504702 404088517 901049903 648245718 733994976 276065115 39474025 259611826 226344957 850729260 105046987 405649778 92917190 386914646 899008254 288435106 774347568 300564903 824067726 822506465 609214193 355209038 806053176 626628258 594682456 705772181 289035591 169659173 545562783 945605890 103365629 23861415 920505617 993524593 282670450 503168542 183350231 117537075 592881001 404689002 81748169 303447231 525746778 863699736 110211158 775788732 812778608 545923074 287354233 60971388 777710284 106728345 565018497 402887547 761977577 129786969 788158723 955934232 224063114 196921192 49201882 110211158 795965028 437595580 368539805 972867909 245080089 220820495 248803096 946926957 615339140 109730770 572584608 640439413 203406430 807734534 81267781 327226437 234031165 474825650 377306886 596243717 725708283 198482453 229227285 483832925 936838809 18216856 495122043 942603465 83189333 593001098 852410618 579430137 662417164 837518590 758855055 767982427 627949325 332510705 390277362 454048869 778070575 948488218 915341446 709134897 373223588 788278820 454769451 640199219 719943627 870905556 157889667 468460509 997607891 452007220 459453234 816021227 623145445 638037473 221781271 584474211 265376482 481671179 473144292 408171815 24341803 733274394 629150295 480470209 534393762 425826074 313054991 503769027 768342718 16055110 120299306 273903369 302366358 312814797 661336291 248923193 583393338 309572178 866822258 962779761 394120466 704090823 431590730 159210734 845324895 112012613 390157265 282910644 105767569 805572788 57488575 589278091 585434987 458132167 486234865 756693309 221781271 210251959 106608248 249643775 746965452 570182668 350645352 173141986 338875846 192117312 847246447 264415706 249283484 895405344 223822920 643682032 23621221 996527018 517580182 507972422 269459780 29505974 67696820 27224131 720424015 507612131 519141443 875469242 391838623 954733262 440477908 101083786 379108341 466899248 448404310 606932350 33349078 608733805 379828923 443600430 39113734 241116888 787678335 815060451 62772843 234151262 933716287 394360660 762097674 122220858 282430256 850128775 865140900 512175817 813619287 876670212 369260387 379108341 870785459 497403886 407691427 127385029 432911797 189835469 893483792 760776607 144678997 851930230 698566361 428588305 322302460 939841234 382110766 279307734 833195098 969144902 898407769 725828380 354248262 12932588 821545689 677909677 64093910 855172849 634194369 803771333 220340107 644282517 222982241 192837894 284111614 893123501 366978544 411774725 683794430 290116464 937439294 558052871 611856327 598165269 33228981 801609587 738198371 219859719 35630921 471222740 588437412 168097912 726188671 929392795 781793582 503769027 314255961 594442262 484433410 127024738 874028078 668662208 442159266 647645233 710455964 969625290 808815407 879672637 916542416 196680998 103485726 591079546 341037592 110451352 88593698 593841777 35751018 575226742 986078579 218778846 469661479 753210496 724987701 767742233 214215160 428468208 497644080 335513130 15694819 693282093 383551930 897206799 789599887 489237290 16775692 802210072 983556542 403007644 483112343 917743386 709495188 951130352 400365510 814099675 490198066 435073543 455850324 907174850 18697244 945846084 435553931 36711794 894444568 59049836 23260930 472303613 104206308 268619101 280989092 941882883 730632260 685836079 6567447 359772724 574506160 599966724 524545808 926630564 628790004 328307310 109610673 14493849 628309616 246401156 888679912 426906947 139995214 374304461 325064691 142757445 244479604 998328473 215896518 262494154 569221892 939841234 625667482 181548776 714299068 648125621 907294947 169539076 555771028 731833230 75743319 702049174 147921616 467739927 754891854 49922464 443240139 299003642 599486336 915461543 156328406 268499004 840521015 404809099 104206308 84390303 516859600 814459966 902250873 239915918 938640264 531871725 764259420 708774606 513977272 372022618 349084091 143838318 776028926 971666939 460173816 182269358 291197337 782994552 226825345 946926957 968304223 350164964 968664514 158610249 748286519 367579029 722585761 223822920 802930654 925069303 852770909 639358540 607292641 171340531 251925618 599726530 185151686 141796669 779631836 747926228 68897790 254087364 121380179 145039288 327106340 276905794 466659054 651007949 714058874 533432986 798246871 529469785 222261659 491999521 682473363 507492034 876309921 975269849 758614861 812658511 882915256 121139985 7408126 316657901 718982851 553489185 788398917 274984242 582912950 817702585 260332408 868383519 770984852 156568600 519741928 45238681 214695548 726068574 453088093 374424558 438196065 701929077 63373328 952091128 189234984 413215889 122340955 255528528 336594003 478068269 799327744 758734958 883275547 387034743 837998978 257810371 605130895 695563936 189595275 281829771 511215041 182029164 881954480 982715863 41275480 530430561 773386792 429428984 346922345 62892940 592520710 878231473 310893245 108049412 967583641 605010798 607532835 953892583 815781033 642841353 464617405 602368664 323143139 707333442 746124773 934917257 427027044 626508161 510134168 366017768 747205646 600927500 788158723 563937624 6207156 419941321 887599039 860697311 279307734 617140595 717301493 805092400 468220315 427747626 66615947 917383095 414657053 907655238 968424320 700127622 426666753 698446264 552408312 131588424 135551625 684274818 82228557 246281059 374784849 434833349 714178971 903812134 470862449 755612436 798246871 912939506 591559934 574145869 909456693 659174545 25782967 896005829 255528528 992924108 729911678 703850629 161372480 584954599 649806979 651007949 149963265 542079970 375745625 530670755 253967267 939721137 312574603 230788546 842442567 683554236 767381942 66976238 943924532 243879119 910057178 185872268 577148294 641880577 373223588 239315433 967703738 366618253 482872149 155247533 57008187 568141019 420061418 384872997 781673485 423544231 76824192 421982970 587957024 635155145 739399341 716701008 514097369 123061537 860817408 408171815 778310769 743842930 67576723 112613098 460173816 783234746 890121076 575346839 754291369 641159995 275464630 239795821 854332170 189715372 276785697 860457117 349804673 101684271 451526832 626027773 826469666 781193097 518420861 368539805 387395034 336834197 574626257 635635533 815060451 715019650 442159266 400125316 38753443 96760294 262494154 146000064 901530291 169298882 498845050 325064691 870545265 575226742 14133558 687157146 928552116 996887309 776509314 593361389 235712523 330108765 150803944 118858142 513977272 365297186 613897976 441438684 324584303 349324285 817942779 222021465 326505855 430750051 810977153 943203950 508933198 175183635 352687001 289275785 131228133 749007101 541119194 111532225 357731075 283150838 759815831 679831229 912098827 81628072 549165693 337074391 13052685 778070575 280508704 515538533 4886089 77184483 726308768 845444992 17135983 613417588 969505193 548204917 369140290 42116159 448284213 1042985 100963689 147201034 470141867 649806979 38273055 6567447 757413891 673946476 14854140 905373395 587236442 57368478 41395577 246040865 881353995 690039474 4645895 345481181 195600125 265496579 604770604 706492763 874628563 177345381 871385944 276065115 449004795 442279363 540518709 356289911 279788122 890361270 14854140 827070151 12332103 928672213 683314042 506651355 644162420 935998130 308491305 934076578 539317739 813379093 818182973 37312279 121860567 166776845 584714405 241477179 603089246 190556051 28905489 296241411 381510281 997007406 426906947 771585337 768222621 629390489 82588848 120179209 929632989 310773148 691961026 856854207 934196675 236433105 886638263 436154416 50643046 144558900 724987701 49081785 190435954 686196370 228626800 137232983 165936166 808214922 439036744 647405039 114414553 99402428 322662751 891802434 71660021 588077121 247121738 83549624 498364662 51003337 96159809 394720951 383191639 649446688 167377330 708414315 970706163 112973389 17616371 788879305 837638687 341157689 932635414 115735620 41875965 155848018 975870334 694483063 142637348 332750899 809295795 388475907 108049412 116936590 856854207 644042323 326986243 95319130 925069303 345601278 546403462 651488337 9569872 752249720 718742657 66856141 964581216 21819766 914861058 382350960 702289368 995446145 77784968 273663175 868263422 290837046 84030012 658453963 277266085 685956176 42956838 985237900 964581216 875949630 130507551 615819528 126784544 271861720 982835960 981034505 5846865 171580725 443840624 189234984 424144716 644162420 591079546 383672027 683073848 868383519 468100218 962659664 530550658 310893245 770024076 209891668 393039593 266337258 695203645 914861058 619902826 667581335 514217466 807494340 344040017 528749203 939240749 102885241 379228438 847126350 936478518 739519438 610775454 790920954 498364662 571023347 21699669 800889005 16295304 723306343 214095063 1283179 232590001 108409703 638637958 120779694 459693428 489837775 659054448 361454082 989201101 613897976 619062147 564898400 417179090 969264999 946446569 895645538 572824802 852170424 149843168 660375515 197281483 783595037 342238562 235592426 316898095 584834502 171100337 549886275 64574298 693282093 448764601 909096402 770984852 505810676 865981579 136032013 213734772 944885308 288074815 67937014 103245532 732313618 289275785 976470819 238114463 191156536 179747321 177225284 328907795 368179514 107809218 375385334 535114344 312214312 989201101 164495002 836918105 880993704 465938472 868383519 815660936 158490152 656292217 881954480 410813949 675387640 841001403 378267662 481551082 554690155 977671789 812418317 525146293 747205646 108769994 425585880 964701313 710455964 221781271 639959025 857935080 175303732 975029655 312934894 834035777 712257419 620022923 387395034 720544112 123181634 678390065 776149023 923868333 464016920 396762600 971066454 21459475 184671298 762938353 448284213 357610978 352446807 98681846 784315619 648365815 367458932 770744658 782153873 135551625 663618134 651728531 799087550 787798432 99282331 956294523 463176241 671904827 292038016 725828380 384752900 163173935 723546537 33469175 709855479 451166541 577028197 561415587 750688459 754651660 575226742 44638196 93877966 623745930 194879543 538597157 175784120 165936166 700848204 922427169 382591154 569822377 529229591 973108103 608853902 91716220 428948596 527668330 816381518 957615590 94958839 271861720 668542111 270180362 215896518 158009764 421742776 460173816 550606857 347162539 364816798 601527985 534513859 60611097 1042985 236192911 359772724 579670331 737117498 308611402 846405768 525746778 49081785 460053719 554810252 72620797 302006067 220580301 885677487 560454811 814700160 778190672 626868452 507612131 366257962 142397154 446242564 670343566 208570601 752610011 854091976 701568786 268499004 218058264 290837046 685956176 966142477 919785035 68537499 658934351 347402733 797406192 940681913 348963994 567300340 632633108 64934589 180107612 778310769 526227166 566940049 173742471 605731380 513376787 145879967 248562902 133990364 132429103 992203526 670944051 635995824 240156112 522744353 36471600 448404310 946326472 778070575 418019769 865381094 697125197 645003099 64093910 555771028 180948291 59650321 216256809 511935623 907415044 335393033 936118227 778671060 882554965 56047411 75262931 660855903 67096335 639118346 446602855 88233407 575226742 11491424 560214617 514337563 676708707 321942169 630471362 639478637 586275666 828391218 802791 789359693 554690155 560574908 577388488 538356963 157289182 779631836 510974847 50402852 140715796 821065301 679230744 818783458 13292879 86552049 517820376 116456202 724026925 781553388 301885970 734115073 691240444 291197337 684394915 803050751 397723376 91596123 690399765 270060265 983556542 371902521 386794549 868023228 263695124 901890582 988600616 306449656 371181939 103725920 342118465 847126350 936958906 624706706 906454268 554810252 220580301 167257233 761016801 670223469 829832382 370701551 646804554 171100337 922066878 686316467 159811219 737597886 479749627 190195760 158610249 874388369 30466750 630351265 468580606 24822191 906694462 808335019 523945323 608133320 307890820 59770418 158730346 871145750 709014800 408291912 143958415 735916528 483112343 205568176 212413705 569462086 792001827 787678335 855413043 82209 886518166 454168966 477227590 63613522 806053176 561055296 749247295 98201458 296241411 90995638 804852206 912098827 638517861 852290521 962539567 468940897 40074510 802450266 299724224 850849357 368900096 112252807 205087788 537516284 941882883 417659478 683314042 67336529 851569939 213854869 636236018 601648082 529709979 247001641 913299797 245320283 784796007 227065539 732073424 276185212 404088517 675988125 106247957 325545079 160892092 986558967 465097793 543160843 381870572 780472515 485874574 604410313 773146598 980193826 567660631 727269544 135551625 795004252 754891854 538116769 561415587 362775149 338875846 728710708 48121009 394720951 701328592 277025891 28305004 862859057 886878457 406250263 719343142 818903555 593961874 19778117 252886394 765940778 928552116 30466750 623265542 473984971 352566904 44878390 617380789 126184059 648485912 297442381 896486217 907895432 804732109 658453963 479629530 971306648 931914832 396642503 63133134 372142715 614618558 440598005 421502582 722105373 461254689 943083853 315937319 268619101 264896094 95319130 985117803 504849900 482872149 448044019 805812982 698446264 683554236 856614013 702889853 495242140 128465902 770744658 964341022 567060146 576187518 600447112 749487489 851329745 200644199 743002251 246761447 726789156 496923498 181308582 995446145 890121076 309572178 384152415 433272088 579430137 274984242 805933079 476627105 854091976 592040322 270060265 967103253 992683914 365657477 120899791 408652203 577988973 530430561 669382790 771225046 190075663 194519252 465938472 523825226 316537804 178306157 519381637 398564055 936118227 244239410 450085668 709014800 351365934 478908948 318459356 645483487 67816917 682593460 396762600 394360660 63013037 824067726 916662513 900209224 15094334 390877847 144078512 896966605 356650202 26263355 327466631 347402733 76944289 166296457 457531682 15814916 333231287 165455778 998448570 65174783 482151567 964941507 742161572 632152720 847967029 22300154 479389336 993164302 17135983 435674028 275704824 203286333 883876032 475065844 347763024 710215770 292038016 449725377 291437531 223943017 838479366 862859057 335032742 273302884 256609401 300925194 273182787 113814068 432311312 33349078 120899791 244599701 693762481 529830076 176264508 542079970 108529800 812658511 575346839 995446145 619302341 800288520 763658935 414176665 622424863 704210920 806653661 737237595 17736468 726428865 356650202 252165812 594442262 648245718 233550777 784315619 376466207 272582302 228026315 470622255 218058264 105767569 841601888 421622679 873067302 904412619 959056754 527067845 60611097 275104339 922307072 752249720 970465969 317738774 517940473 578349264 866101676 818543264 39233831 470021770 585434987 295040441 991843235 913660088 413335986 961578791 1763567 531511434 817822682 528749203 153806369 6567447 633473787 640319316 878231473 228746897 20858990 134831043 478908948 927831534 586635957 972627715 216256809 341998368 11131133 183950716 882314771 826950054 900689612 44398002 850489066 981514893 450806250 658453963 611135745 597444687 739159147 396162115 370821648 914981155 436514707 776269120 902731261 691961026 691840929 353287486 521423286 211573026 740480214 943924532 890361270 86552049 560574908 141796669 950770061 345961569 474945747 347402733 549405887 406730651 513256690 993164302 582432562 302846746 927231049 350885546 794523864 914140476 335633227 764739808 747565937 623265542 444321012 410573755 471462934 642841353 881233898 15814916 837038202 940681913 290716949 589037897 785996977 913419894 826950054 27104034 40434801 381870572 564418012 334912645 396762600 845324895 140715796 604410313 948248024 814339869 683193945 594682456 232229710 515538533 983676639 74422252 109850867 859616438 364336410 287474330 593841777 84270206 687517437 20979087 986318773 831513740 637797279 420061418 692321317 53285180 300324709 948368121 88233407 843163149 195960416 706973151 187193335 211933317 123902216 32028011 603329440 385713676 27224131 208930892 519021346 618701856 893723986 84870691 272222011 774587762 477347687 418259963 477707978 383191639 515538533 602608858 347522830 871145750 318579453 520822801 116816493 483472634 520342413 922427169 160051413 921466393 686556661 627589034 76704095 534994247 323863721 275704824 401446383 955934232 803170848 861177699 406970845 730031775 938760361 730031775 681512587 647405039 557932774 511935623 88473601 706132472 807734534 399164540 661936776 518060570 205087788 877630988 834996553 300324709 614858752 667100947 648245718 511094944 263815221 450566056 553729379 866221773 844484216 375025043 345120890 561175393 644642808 482992246 247121738 3805216 423424134 18937438 441078393 103966114 138674147 875349145 197281483 21219281 834275971 692681608 175543926 848567514 424985395 128225708 943203950 515778727 423304037 50042561 304167813 988480519 212413705 550006372 53285180 43797517 256249110 426426559 952451419 103245532 359892821 865260997 508092519 557212192 390517556 30706944 332750899 206769146 663257843 970465969 755972727 949448994 3805216 75743319 540638806 938520167 885677487 501847475 104806793 339596428 740600311 718382366 198722647 576427712 926270273 271741623 570903250 515778727 939120652 56167508 669382790 416938896 715019650 741681184 916062028 944885308 548084820 577508585 245920768 870785459 937079003 504609706 928552116 690279668 589037897 196080513 400845898 879072152 644042323 75262931 669382790 86191758 147201034 607652932 370341260 943684338 730031775 106608248 459693428 304528104 634314466 760296219 139154535 711536837 694002675 603209343 122220858 842922955 674787155 262013766 562376363 71179633 438796550 902971455 802089975 7888514 996767212 629390489 261173087 455850324 450325862 161852868 313295185 125703671 377667177 499325438 4045410 191997215 721745082 843403343 423784425 998208376 11851715 803651236 108769994 565258691 384152415 822746659 676348416 110451352 849408193 533913374 92076511 267538228 339356234 768462815 194759446 197401580 381270087 592280516 122220858 618341565 612456812 991843235 917863483 842802858 131588424 961338597 934917257 373343685 490077969 868503616 959897433 897086702 103846017 400605704 872226623 664819104 800528714 824668211 710335867 745043900 98561749 211693123 979713438 742521863 801129199 575587033 329388183 952091128 201604975 866341870 72260506 317618677 361213888 993164302 339356234 423664328 371662327 101804368 366738350 565258691 691000250 190796245 367819223 965662089 173382180 386554355 813499190 867783034 642240868 220340107 687037049 126063962 646684457 443480333 179867418 744563512 310412857 513376787 188154111 61571873 36831891 577868876 137593274 385953870 794403767 713938777 434593155 25542773 695443839 368779999 688598310 983196251 334071966 943203950 466779151 581952174 674667058 47880815 528028621 665539686 69017887 336113615 962059179 864060027 584234017 607773029 206649049 929152601 862618863 536195217 597684881 931194250 757173697 679711132 896726411 60491000 921826684 177585575 448884698 220460204 778070575 715259844 266817646 150683847 264415706 507371937 439397035 948728412 587476636 651608434 176144411 606572059 738078274 59410127 964581216 581952174 13172782 934436869 700968301 720183821 937799585 127144835 650047173 742401766 256969692 997968182 919424744 111171934 285072390 374184364 816141324 987399646 645123196 606331865 703370241 271741623 518060570 410093367 552408312 11851715 841241597 52564598 935517742 124022313 681992975 531991822 876790309 210131862 895765635 476507008 187193335 8128708 876550115 852050327 931914832 676228319 495602431 716220620 572224317 265016191 144678997 106968539 193318282 968064029 267298034 353167389 881954480 812418317 379348535 5366477 222141562 866461967 99402428 618942050 345721375 459933622 576187518 519141443 389316586 122701246 326625952 976470819 76824192 962779761 120299306 474705553 600807403 125703671 410693852 582552659 64214007 2964537 488036320 21339378 422943746 560574908 972387521 786477365 503528833 406850748 292398307 685235594 645483487 749007101 49442076 27104034 55807217 75503125 811577638 16655595 872106526 502447960 458492458 107088636 855773334 227425830 828271121 512295914 918824259 964701313 145879967 5966962 57608672 161372480 507612131 734235170 151884817 824067726 550847051 751889429 941162301 70819342 482752052 766301069 755972727 686796855 719102948 575106645 242437955 557212192 48121009 741561087 751288944 508332713 873187399 190435954 972867909 199323132 599366239 155247533 285192487 793202797 687037049 72140409 950409770 52444501 522744353 244239410 562976848 668782305 328067116 605731380 193678573 396162115 824668211 953892583 262734348 603689731 178426254 415858023 808214922 244119313 874988854 876550115 344640502 812418317 439517132 154767145 736757207 86552049 929993280 542920649 590839352 296601702 321581878 741080699 920265423 874508466 542320164 2243955 479749627 47280330 9569872 550486760 808214922 332270511 566339564 376826498 972027230 937799585 902370970 932755511 434473058 582192368 761977577 378988244 103725920 206528952 173021889 74182058 887238748 240636500 938760361 914981155 952211225 981755087 513857175 599486336 277866570 992804011 483712828 77544774 415978120 961458694 968304223 584954599 887599039 316657901 819984428 673946476 280989092 498965147 285072390 892523016 205327982 54846441 296361508 194038864 968544417 856253722 154526951 603329440 693882578 764499614 963740537 791281245 555170543 503528833 340076816 253727073 241236985 532712404 96640197 460293913 928432019 636716406 907174850 907174850 579189943 441919072 964821410 147921616 510494459 825028502 276785697 764739808 880513316 94838742 193198185 689078698 277866570 335993518 785756783 107929315 123061537 676588610 958816560 894204374 897807284 485634380 7408126 767862330 697845779 573905675 130747745 357130590 880153025 797526289 321341684 297562478 214455354 513496884 163774420 954372971 653529986 403247838 631552235 81387878 953532292 259371632 683193945 266097064 111051837 608133320 341157689 237153687 879792734 565498885 245320283 561415587 313295185 478068269 632993399 982956057 644642808 997247600 53165083 265256385 648966300 102284756 629030198 521663480 751288944 632513011 548685305 37552473 172421404 674186670 875949630 652329016 834035777 576908100 606932350 245800671 224663599 356410008 71780118 541599582 697365391 87032437 729911678 212413705 841601888 691120347 905733686 792602312 629270392 192597700 263935318 715980426 666140171 282910644 639358540 944525017 677429289 599726530 833795583 132789394 758734958 314976543 41755868 662297067 179266933 935637839 80787393 92556899 817582488 754411466 95199033 233070389 871506041 185031589 861658087 804612012 105407278 188874693 638157570 274383757 298883545 787558238 352446807 325304885 824908405 440237714 504249415 305368783 659174545 901530291 739999826 873187399 492359812 396282212 727389641 513616981 959176851 731713133 218538652 163774420 854452267 547003947 537756478 803531139 222742047 864780609 372262812 47760718 519021346 584954599 571623832 636476212 883635838 945245599 920025229 263094639 607773029 666260268 2243955 104446502 586635957 785636686 925309497 864420318 926390370 947647539 429188790 683674333 789599887 606812253 182389455 948728412 646684457 921346296 395561630 822746659 79826617 80907490 768462815 39954413 599966724 922907557 815180548 673466088 511575332 164134711 101564174 944044629 897927381 111772419 180347806 942123077 452367511 639238443 614738655 5606671 5486574 436995095 371662327 314135864 605130895 62412552 171700822 231989516 126664447 688598310 187433529 151284332 885317196 131828618 524786002 704571211 670463663 798126774 999529443 716220620 610415163 627108646 135911916 928311922 307410432 877030503 97961264 85471176 575587033 943924532 854932655 429669178 659775030 664338716 725468089 631312041 65294880 295040441 836317620 695563936 102885241 914500767 97120585 637917376 737597886 534033471 710455964 253006491 231749322 602008373 409492882 262734348 576307615 402647353 483953022 861177699 49802367 650047173 298283060 511455235 311733924 349804673 713218195 88593698 148522101 430629954 247962417 981755087 904412619 820464816 473144292 688238019 977191401 791641536 646924651 875108951 303807522 337314585 203886818 894804859 805812982 777710284 647765330 177705672 746485064 806773758 572824802 912459118 655451538 942603465 214095063 17736468 69738469 888920106 437115192 96520100 29505974 24461900 728950902 905733686 383672027 803050751 418740351 252526103 964581216 327586728 841842082 328667601 884956905 244239410 301765873 846886156 119338530 628790004 510734653 342358659 189355081 181668873 420541806 244719798 996887309 20378602 576067421 321701975 505210191 855773334 26263355 315937319 155247533 287954718 346081666 927711437 696044324 366378059 58209157 833195098 922427169 766301069 552888700 556131319 711897128 846165574 689799280 565739079 503769027 882074577 587116345 398203764 319780423 780952903 343679726 682113072 161012189 400005219 881113801 982595766 237994366 402647353 663618134 967703738 758014376 695804130 687997825 95199033 39714219 200043714 157889667 62772843 674546961 100243107 409612979 26743743 319059841 884596614 881353995 752009526 269579877 971306648 663137746 813258996 758734958 596724105 596003523 376586304 8008611 273422981 687037049 869824683 474345262 78385453 938640264 538356963 584714405 824788308 26983937 491759327 690279668 833675486 222261659 730992551 232950292 580511010 488997096 978872759 693642384 253486879 847846932 676948901 718622560 103605823 845925380 664699007 344520405 215776421 330949444 442039169 746004676 295520829 511815526 165095487 406490457 381390184 1643470 283030741 556251416 919544841 944765211 158850443 109370479 111171934 7047835 463536532 123782119 862859057 422823649 595162844 597804978 582552659 495842625 36951988 332390608 904532716 65174783 611015648 316537804 589998673 305608977 450806250 546643656 718382366 395321436 869344295 577868876 404328711 833795583 492119618 592280516 2844440 533072695 699767331 690279668 712617710 736036625 992924108 684154721 943444144 270660750 651128046 393279787 325064691 499085244 189955566 250244260 416818799 300925194 830432867 419701127 49802367 664699007 612336715 472784001 446482758 714779456 782754358 465097793 454409160 375625528 60731194 940681913 293719374 157889667 971306648 67696820 57968963 589878576 233070389 532111919 471703128 84510400 27704519 84630497 625187094 694242869 773867180 777349993 713578486 330949444 322422557 520222316 561655781 372022618 738438565 379468632 709375091 725588186 94118160 800528714 738798856 430629954 72140409 650287367 292278210 562976848 936118227 716941202 354368359 597324590 15214431 921826684 294319859 86191758 505450385 409973270 607532835 481911373 150083362 309692275 644162420 151524526 802210072 339356234 443360236 552288215 591800128 856734110 458132167 838119075 625427288 918704162 455009645 855773334 164735196 689799280 398323861 484073119 860337020 556731804 758975152 705291793 999289249 727149447 935757936 405169390 482031470 378267662 387875422 316297610 489357387 183110037 948728412 597444687 390517556 135671722 592040322 155487727 693161996 317378483 759095249 347282636 593121195 988840810 124382604 76343804 132068812 788278820 367579029 432911797 835957329 547364238 517820376 242678149 50763143 302846746 630711556 93877966 709375091 763418741 419100642 607292641 485274089 847846932 735796431 781673485 996527018 529589882 147201034 214935742 407811524 152245108 790200372 369860872 557092095 262374057 257089789 594081971 694242869 390037168 63973813 314376058 482511858 577268391 930233474 638637958 859976729 277266085 851449842 926510467 72740894 307650626 916182125 483232440 261773572 918824259 137953565 991002556 485033895 734235170 143117736 782754358 103365629 359172239 329748474 537516284 299003642 363375634 149482877 152125011 739639535 278106764 103605823 963380246 166536651 935878033 899488642 372983394 810977153 980073729 253967267 265016191 74302155 66015462 926510467 790200372 10050260 54005762 898047478 355329135 229587576 300444806 374784849 520222316 167617524 65775268 706853054 155968115 435914222 871626138 778310769 775068150 597684881 942243174 161972965 188874693 488276514 90515250 522263965 820344719 276425406 484073119 657252993 26383452 222982241 902010679 218778846 691360541 527668330 626988549 972507618 583753629 942603465 510254265 676828804 815180548 927711437 991723138 135431528 749847780 954973456 415737926 492600006 322403 112853292 169418979 416218314 456931197 64934589 179387030 648005524 623745930 920745811 859256147 519261540 335393033 788398917 698206070 524906099 199563326 781193097 952811710 832114225 558653356 614618558 741080699 883755935 460654204 738798856 163894517 352927195 592280516 471342837 474825650 716100523 658694157 58089060 362174664 935037354 339956719 897567090 796805707 453688578 264655900 931794735 793082700 558653356 992083429 475666329 918103677 53645471 810616862 944284823 530430561 363856022 290476755 750087974 992924108 966262574 408412009 623625833 694723257 901410194 648846203 966863059 709254994 609574484 11971812 65174783 758734958 480350112 733034200 646684457 732673909 576067421 998568667 865621288 544962298 719343142 78625647 129186484 202205460 562376363 153446078 687517437 281229286 11011036 252285909 825869181 380189214 195720222 476266814 494521558 147321131 638637958 48601397 619302341 454529257 610535260 497043595 653770180 593001098 753330593 392198914 319300035 951850934 69978663 91716220 389917071 864420318 382711251 594081971 626388064 562856751 68297305 682833654 387395034 287834621 500046020 459453234 482271664 141916766 521663480 146960840 22059960 367218738 588797703 264415706 583273241 255768722 816501615 717181396 309692275 36591697 189955566 526467360 692321317 368659902 965662089 289395882 327826922 139514826 310412857 647885427 420782000 903812134 915701737 850609163 363735925 513376787 398443958 707213345 376706401 628309616 119458627 842682761 400005219 949448994 17256080 314255961 53885665 438916647 307410432 816982003 244719798 396642503 751889429 49922464 371302036 659895127 49201882 965662089 850969454 632272817 154526951 138674147 836918105 753330593 688598310 920745811 982355572 900929806 416338411 403127741 363015343 56527799 216497003 436995095 838479366 608853902 252526103 81988363 522504159 22900639 659054448 860216923 486715253 23861415 128585999 520342413 977071304 879192249 822866756 812298220 231989516 509893974 35871115 744443415 32748593 927231049 371902521 556251416 283270935 997607891 620022923 968904708 194399155 936598615 600927500 118257657 886277972 438436259 398083667 178546351 46559748 470502158 377907371 995205951 308731499 267418131 199443229 400125316 100363204 535234441 658453963 736997401 427867723 909336596 803891430 54966538 948368121 340917495 76824192 758614861 503889124 326265661 788038626 279427831 985598191 207850019 758254570 126664447 554690155 611255842 787077850 872947205 724627410 316537804 935998130 822386368 853251297 742281669 23260930 906093977 269699974 40434801 937199100 238354657 580150719 920385520 782153873 790680760 321581878 952931807 80066811 812538414 636476212 204487303 202926042 901290097 898768060 715139747 953412195 216857294 699046749 856974304 962299373 616420013 32988787 359172239 49922464 805212497 545562783 816021227 852410618 83069236 225384181 113093486 764139323 200644199 322403 327947019 384032318 854692461 958095978 455369936 875469242 11371327 915581640 231509128 561055296 85591273 201244684 206889243 226224860 725468089 384512706 164374905 67096335 589157994 26023161 654250568 430750051 655091247 228746897 736036625 350164964 428107917 531631531 1643470 937799585 459213040 877630988 25062385 169058688 955093553 80066811 143237833 954493068 690159571 723186246 421862873 262133863 711656934 56888090 308731499 277626376 508332713 14133558 225984666 973468394 462335562 852650812 271621526 38873540 120539500 976350722 635155145 575707130 203526527 834155874 202926042 469901673 814700160 62652746 640439413 436514707 160651898 169899367 200163811 8368902 283511129 468460509 52684695 205327982 773747083 608733805 473744777 706853054 366137865 345120890 817222197 186232559 850849357 496803401 524545808 128706096 87753019 558653356 701088398 479389336 92917190 13653170 412014919 669022499 624226318 331309735 340196913 73461476 514457660 735676334 807614437 413215889 674186670 850609163 908015529 744563512 591680031 56647896 418259963 953652389 718022075 9449775 123181634 292518404 98081361 562496460 684154721 959056754 330228862 173262083 778070575 764019226 253486879 729191096 346441957 505090094 28064810 757413891 842082276 431830924 115735620 27344228 7408126 863699736 180828194 710215770 551447536 515778727 646083972 888319621 197521677 516139018 952211225 287714524 263454930 299484030 317978968 722946052 356289911 843883731 671904827 760296219 162573450 216376906 672865603 528268815 152245108 545322589 390877847 280148413 930233474 376105916 663017649 251084939 330589153 980313923 75623222 632392914 866101676 173021889 700007525 777470090 221781271 233190486 160051413 632753205 137473177 367939320 337314585 63493425 273783272 784916104 631312041 534874150 781673485 629990974 817222197 562616557 776629411 456450809 879072152 836437717 24942288 521663480 371061842 448404310 867062452 607893126 567900825 442999945 719102948 521663480 465458084 547484335 79706520 825388793 308491305 636476212 120779694 804972303 76583998 39233831 280388607 703730532 533553083 72620797 138794244 94118160 970706163 949088703 600447112 888079427 669983275 495842625 890961755 76103610 610054872 947887733 513857175 223342532 524545808 679230744 336954294 481551082 867903131 349564479 481310888 881834383 574866451 782394067 410213464 886518166 251565327 761857480 17856565 994605466 977071304 784315619 834396068 192357506 770264270 491999521 412855598 517940473 277986667 764499614 172061113 74662446 106247957 844604313 274383757 427387335 441798975 697965876 986679064 382711251 236793396 574746354 895885732 165816069 814580063 562376363 272822496 833435292 599246142 871746235 316537804 738318468 538717254 929993280 495001946 653770180 899008254 369980969 111051837 82468751 67456626 960497918 903932231 687997825 243038440 851690036 823467241 149843168 313175088 305729074 689919377 279668025 168938591 801249296 215296033 33228981 388956295 519741928 308731499 99882816 884716711 946206375 851569939 574866451 726548962 461975271 134230558 651248143 15334528 996767212 83549624 19778117 344160114 753570787 782754358 442519557 700127622 531511434 97000488 673466088 576547809 948608315 454889548 948368121 566940049 52444501 742762057 605611283 560454811 890000979 318099065 951010255 687397340 729671484 933235899 911618439 486475059 571984123 93757869 572584608 477707978 109970964 262974542 835837232 367939320 454889548 466418860 368179514 36951988 417779575 912579215 573064996 982355572 790440566 296001217 267057840 131468327 531511434 573665481 170860143 345601278 983436445 745043900 877510891 532472210 856253722 534033471 954012680 790080275 174222859 435914222 717061299 623025348 774467665 201004490 729671484 251685424 698446264 493080394 966142477 612216618 824668211 167257233 18096759 980073729 206288758 969024805 772906404 337554779 732433715 456811100 680792005 15694819 793202797 965782186 13533073 112853292 956534717 353047292 823347144 180467903 549525984 678269968 323023042 21819766 739639535 469421285 556971998 706132472 146000064 199203035 966863059 401326286 16895789 369980969 287834621 786957753 503889124 646204069 301045291 77424677 173982665 904532716 949569091 389676877 613297491 985958482 899608739 917383095 90995638 417899672 37312279 431710827 927471243 146120161 59169933 282190062 309091790 148402004 618942050 293839471 712737807 879432443 126184059 121019888 238714948 912459118 596604008 31667720 592881001 856734110 835236747 732553812 152485302 144078512 354008068 103005338 542440261 11371327 667341141 231389031 116216008 46799942 151644623 615579334 115735620 901770485 956294523 182149261 619302341 558413162 954012680 402767450 240756597 707333442 869344295 352086516 244959992 259852020 884716711 59169933 83189333 268859295 395081242 32268205 230308158 288435106 547244141 857334595 907415044 933355996 687397340 520462510 321701975 436754901 512055720 646444263 7888514 638157570 733274394 234751747 743842930 26503549 459573331 214455354 337915070 489357387 745644385 517339988 127745320 604410313 156328406 817342294 757654085 26743743 149002489 60731194 568861601 101323980 774707859 196921192 317258386 607172544 430389760 981995281 110691546 864660512 440357811 344880696 896005829 114894941 518420861 105407278 986198676 118978239 825628987 163294032 998448570 150323556 519141443 183950716 655691732 727029350 372503006 727749932 636716406 186712947 684755206 919064453 392078817 295640926 94958839 923868333 199563326 724147022 701208495 704331017 195840319 484313313 816021227 965782186 441198490 585555084 569221892 631552235 293238986 773506889 924468818 70699245 447563631 435553931 569582183 257089789 450806250 853611588 425705977 932875608 291557628 519501734 143718221 648125621 299123739 434473058 821065301 730271969 301885970 532952598 776509314 605250992 435073543 288194912 265376482 262974542 594682456 402046868 54366053 622785154 408532106 839199948 77184483 690039474 844724410 631552235 766060875 769183397 332150414 776629411 481190791 345481181 788639111 975269849 955333747 33349078 392679302 225023890 17616371 562136169 997007406 723066149 321341684 851569939 341878271 998088279 533432986 920025229 156328406 741320893 181909067 971546842 66255656 205327982 57488575 524545808 243879119 841962179 52804792 972747812 16895789 406850748 855893431 77184483 701688883 766301069 57248381 469541382 770624561 501126893 581711980 681632684 460774301 736036625 324584303 969745387 195840319 181068388 281469480 71179633 437355386 784075425 279067540 352446807 638157570 945245599 438316162 671184245 671424439 188994790 298403157 117777269 585434987 514817951 607893126 654610859 251805521 351486031 280989092 312214312 560214617 976110528 785276395 758734958 204607400 891922531 93277481 303447231 576788003 228266509 690760056 74422252 732794006 527788427 757654085 614978849 929272698 227305733 255168237 835717135 482631955 125343380 639118346 792842506 385713676 521903674 745404191 569942474 546283365 576908100 513616981 376826498 373103491 850489066 665299492 771104949 45478875 53044986 569462086 757533988 444561206 389436683 13773267 953051904 775788732 572344414 53165083 617140595 439997520 957495493 892162725 482872149 347883121 834396068 4886089 7167932 430269663 676708707 345361084 954493068 362655052 719223045 598885851 518420861 929632989 916662513 149122586 631552235 125583574 499685729 852891006 113814068 58809642 241837470 259251535 292278210 279067540 627108646 865741385 362414858 191036439 891682337 532352113 302006067 708174121 223102338 554209767 756212921 386554355 737717983 148882392 957735687 498244565 203046139 254447655 599246142 930593765 381870572 839199948 564658206 450806250 487916223 437115192 776749508 507612131 32628496 987279549 568020922 871506041 263334833 771104949 684034624 943804435 351245837 903692037 859015953 455009645 205087788 386434258 85110885 656532411 131108036 905493492 889400494 180227709 606091671 448404310 179987515 992563817 366137865 798126774 798847356 126544350 400485607 591079546 801969878 705772181 205928467 495482334 95319130 93157384 960017530 76463901 403247838 512055720 402887547 138193759 525026196 353287486 697605585 114174359 523825226 460053719 361093791 249043290 354848747 928311922 351125740 928191825 122941440 634194369 835236747 577028197 587836927 741801281 456090518 168097912 193558476 747445840 72380603 808935504 285672875 36231406 515418436 690039474 722225470 195720222 555290640 958336172 801969878 581111495 369380484 310532954 248682999 354368359 419941321 172781695 391478332 111652322 399885122 589638382 283270935 324704400 68177208 586635957 107328830 581711980 764739808 33469175 617861177 362534955 993884884 401926771 109490576 894804859 686916952 500166117 452847899 409733076 246641350 68897790 180828194 447923922 855413043 125343380 895285247 717661784 747926228 759575637 742521863 879312346 562496460 967463544 115015038 397723376 247361932 218058264 797406192 320380908 152725496 273302884 146480452 934917257 935517742 608613708 570422862 810496765 726548962 226945442 454529257 477707978 935157451 476747202 352206613 631552235 527908524 155247533 398083667 732313618 414897247 649686882 13893364 207489728 689078698 578109070 879432443 557932774 447923922 410093367 470502158 306809947 929392795 542680455 808575213 335152839 108769994 36711794 145639773 46799942 718142172 938039779 290957143 826109375 534994247 378627953 35150533 488396611 806653661 643081547 55326829 758975152 993404496 804011527 539437836 730392066 750087974 406490457 823707435 35510824 216497003 724747507 131828618 480710403 623025348 439877423 328307310 475546232 980434020 877991279 601527985 976711013 828271121 322662751 84270206 593361389 130387454 539437836 880032928 285192487 485033895 810376668 731833230 743242445 719943627 503648930 747445840 543040746 940681913 12692394 960858209 516499309 56888090 988960907 304047716 132188909 437835774 773386792 738798856 273783272 505330288 432791700 500886699 21459475 558172968 739999826 768703009 229827770 402287062 60851291 362534955 655931926 354848747 221781271 716100523 346321860 108409703 756092824 980193826 32628496 598525560 378868147 503889124 508092519 36351503 396762600 989201101 932635414 204367206 13893364 432191215 328067116 750328168 808935504 147080937 965181701 123301731 440477908 475786426 829111800 230548352 656172120 10890939 774948053 501367087 903812134 949689188 948968606 634314466 329268086 803050751 591319740 790440566 213974966 588677606 213614675 175423829 867182549 577748779 526587457 961338597 88113310 234751747 450445959 540999097 386314161 431590730 413816374 154166660 78505550 167137136 895165150 91956414 932515317 223342532 231389031 633593884 434352961 699407040 100723495 819143749 406610554 83909915 345841472 565859176 719463239 232109613 192237409 261773572 12332103 168938591 211332832 454649354 735075849 439036744 865260997 85831467 880873607 869824683 906093977 106007763 335873421 180588000 424384910 865381094 482631955 7888514 903812134 282910644 278346958 713338292 630471362 110451352 310532954 579189943 62292455 981514893 405889972 75022737 714178971 630231168 106728345 38873540 27584422 580030622 667941626 545802977 142757445 201004490 853131200 320501005 570783153 846285671 493921073 622304766 690039474 833195098 47760718 207489728 404689002 812778608 266697549 37072085 133389879 674787155 330709250 60130709 203166236 1523373 239795821 833555389 261413281 599606433 879072152 62172358 672385215 841721985 708414315 872586914 680431714 332270511 531511434 379828923 349684576 573665481 613057297 311733924 885077002 346562054 997968182 129666872 557092095 433872573 180828194 132429103 129066387 786237171 78745744 776389217 738078274 886638263 625667482 759575637 73101185 699527137 612576909 703490338 848447417 279788122 515658630 85351079 617620983 396162115 251685424 909096402 290957143 124502701 812778608 588797703 794403767 201124587 652088822 627348840 361333985 349684576 312574603 325905370 194279058 536795702 603329440 975750237 576067421 763298644 849888581 533432986 833795583 370341260 94718645 651488337 137593274 814820257 658213769 594081971 410333561 69258081 198842744 961578791 470141867 161972965 755011951 194038864 277386182 255048140 226945442 57848866 172301307 799087550 583513435 983796736 519141443 885677487 164975390 973228200 811337444 34550048 801129199 299724224 685836079 297322284 330228862 499565632 741440990 358091366 11131133 789239596 199203035 24942288 499925923 792001827 63373328 209651474 65054686 274383757 728230320 42476450 467259539 995566242 435313737 417419284 381870572 365056992 614498461 489237290 829832382 96159809 709615285 841962179 458132167 887118651 351125740 840761209 745163997 565378788 444801400 455610130 759575637 574025772 489357387 148041713 296361508 172061113 482631955 676468513 113333680 98441652 596363814 960978306 355088941 883996129 761016801 793442991 750808556 370701551 342598853 140835893 56287605 562136169 698686458 120539500 525746778 498004371 912218924 488156417 810736959 517339988 239315433 96039712 820104525 383191639 206408855 370821648 723546537 463776726 611976424 430990245 500526408 668782305 216737197 375265237 119338530 795484640 197281483 641640383 516379212 246641350 437835774 498124468 214575451 71299730 344520405 795484640 417659478 131588424 786357268 289876270 318459356 45478875 108049412 782273970 311373633 473624680 771465240 352927195 698686458 495722528 61691970 196200610 322902945 618461662 285913069 836077426 56407702 360493306 370941745 234391456 430389760 961218500 519261540 554810252 365177089 175423829 213974966 373824073 919544841 887358845 624706706 555530834 337434682 606091671 153085787 921586490 874268272 959296948 560695005 538236866 715019650 988360422 123782119 483112343 145759870 874508466 35270630 93157384 746244870 823827532 203646624 36591697 998088279 743602736 340797398 340557204 620743505 636476212 923387945 670944051 401926771 199323132 223822920 554810252 49321979 816982003 982115378 269820071 161492577 540518709 270780847 541119194 782153873 938039779 498244565 765220196 276305309 623505736 840761209 101323980 736276819 801369393 459453234 494161267 900089127 164254808 932155026 287954718 740840505 806773758 136392304 180948291 411054143 111292031 432551506 917503192 69258081 957255299 663498037 163053838 19417826 338395458 85951564 220340107 43797517 26623646 971546842 62532649 953172001 483352537 487435835 292758598 642000674 651968725 186112462 747565937 627709131 833675486 849288096 723426440 927831534 819624137 95559324 611496036 960858209 972988006 301645776 770624561 746244870 349684576 249403581 757173697 756573212 944765211 308611402 164975390 393640078 406730651 27464325 206649049 598045172 388596004 326145564 844724410 171100337 554810252 510734653 320861296 459213040 614138170 41515674 709855479 499445535 479989821 35270630 792722409 194759446 595282941 673826379 649806979 552648506 655451538 567540534 224663599 761256995 83669721 237994366 650287367 668181820 42836741 715500038 19057535 834155874 393760175 923868333 705171696 832834807 311013342 407691427 170980240 564057721 259131438 789840081 202685848 610174969 628790004 396522406 511335138 784555813 549285790 156688697 261173087 407331136 528388912 417058993 898527866 619422438 664098522 625547385 913299797 857454692 288194912 377066692 997607891 306089365 860577214 896366120 769183397 952691613 16655595 370701551 553008797 310893245 120419403 414176665 256849595 956174426 632272817 104446502 320741199 792722409 691961026 96520100 817462391 676708707 904052328 13412976 699887428 621944475 611015648 598285366 727269544 213734772 979353147 455850324 459333137 132429103 137713371 512295914 920625714 114414553 41035286 342238562 40674995 731232745 710095673 30466750 157289182 850008678 149122586 149963265 841721985 994365272 68297305 970345872 477467784 894684762 780712709 333711675 613057297 241116888 44638196 942723562 566099370 843283246 676828804 145279482 314976543 24341803 162573450 844724410 986799161 814459966 97841167 254928043 744443415 834035777 462575756 25782967 160291607 644883002 5126283 31547623 886518166 406490457 504249415 134470752 19658020 972747812 230668449 649326591 297442381 113093486 437595580 856373819 54005762 887478942 883876032 828511315 177345381 163534226 575466936 180828194 732313618 760536413 571864026 468940897 502087669 540158418 203406430 34550048 135311431 185632074 731232745 179387030 82209 453448384 433272088 64574298 144678997 148402004 366498156 623986124 249883969 295040441 651248143 415137441 528268815 604650507 765940778 214335257 288555203 29746168 792962603 833315195 899969030 377306886 150924041 250244260 684274818 708414315 685235594 797766483 662297067 989681489 650767755 67456626 306449656 543641231 777950478 973468394 112252807 450806250 891922531 925909982 348603703 84150109 953772486 668782305 950289673 587596733 561775878 113573874 638637958 600447112 75383028 403608129 19898214 369140290 681872878 657853478 589157994 184431104 281229286 452967996 847967029 24942288 829231897 135671722 81147684 756092824 799087550 501727378 405049293 634434563 109490576 225264084 289996367 127264932 243518828 94958839 924949206 362895246 878351570 836557814 153085787 859136050 790560663 812298220 81988363 956534717 745644385 795604737 156328406 457771876 35270630 674426864 772185822 32628496 78025162 493560782 141676572 984517318 570302765 734595461 825989278 795844931 903692037 355209038 212533802 877150600 963140052 976711013 837518590 153446078 952571516 999289249 37792667 938159876 200043714 381630378 844724410 229707673 764619711 577028197 733874879 341638077 246641350 992083429 708774606 270660750 568621407 57128284 212293608 926990855 650287367 147801519 264655900 267898519 40795092 596483911 60370903 942723562 173021889 221901368 894684762 107328830 480590306 846285671 354128165 251205036 830673061 202565751 619302341 716941202 675027349 547604432 349084091 744803706 567300340 898527866 330108765 68417402 755972727 162453353 160411704 124622798 665899977 967463544 725948477 433992670 840400918 527308039 15574722 944525017 765580487 545682880 892162725 482151567 708054024 981755087 135191334 247482029 387154840 25662870 377667177 607893126 535354538 444561206 554810252 614018073 755852630 312094215 932275123 33108884 529950173 796805707 409733076 365297186 719223045 119698821 640919801 922186975 206889243 906454268 311733924 885197099 269099489 982355572 215536227 391358235 403848323 398924346 510974847 88353504 991122653 383912221 872586914 641159995 943203950 547124044 10890939 585795278 29385877 897927381 535594732 531151143 780592612 788398917 204247109 203406430 935517742 371302036 431830924 976110528 49442076 981875184 694122772 983796736 75743319 917142901 878952055 27824616 11611521 777950478 664699007 446362661 699286943 242798246 995686339 268859295 324944594 278346958 489117193 705291793 27584422 820825107 203646624 333471481 302126164 143598124 873787884 618821953 112372904 263575027 568741504 385113191 424505007 203046139 103966114 63973813 791041051 833195098 640439413 762337868 676708707 440838199 611856327 394240563 593481486 845444992 827910830 866461967 950409770 540999097 376826498 492479909 34550048 324704400 425705977 720063724 462335562 81267781 981995281 847606738 797766483 352446807 447923922 768222621 25662870 163534226 3444925 330949444 996046630 722105373 712017225 389556780 858775759 576908100 729551387 216497003 862498766 433632379 952931807 679831229 752610011 269219586 309572178 507732228 231989516 715500038 816141324 860216923 615579334 915581640 466058569 245080089 87512825 611375939 34429951 367098641 967343447 765460390 360733500 428348111 800048326 383311736 413215889 275344533 459092943 169899367 203406430 93277481 584113920 480109918 373103491 570663056 997127503 542079970 747926228 213014190 337674876 128706096 674667058 646564360 551927924 774827956 978872759 458732652 708774606 391478332 34550048 258891244 433992670 708534412 95679421 684394915 243879119 130027163 119578724 506170967 935157451 150323556 692201220 715980426 461134592 86071661 728230320 124983089 804612012 674426864 222021465 467379636 494521558 817942779 441078393 400485607 628790004 833315195 530550658 165215584 776149023 75142834 452127317 868984004 332870996 293599277 599726530 579910525 994605466 837278396 286873845 211212735 62892940 604170119 605491186 138794244 355929620 259611826 893363695 345361084 409132591 108769994 967343447 51603822 698446264 390157265 200043714 783354843 669622984 478548657 828030927 897927381 48000912 296721799 627709131 849167999 304287910 887118651 869104101 863219348 601287791 428828499 429188790 930954056 613417588 270180362 57608672 508452810 168218009 897206799 507852325 806293370 891081852 773626986 615219043 611375939 135551625 581832077 125343380 998328473 265496579 357851172 769183397 339356234 46559748 853251297 969024805 115735620 796565513 732313618 501126893 391718526 730872454 32508399 456090518 418380060 600927500 239675724 920865908 214815645 282310159 828871606 993644690 942123077 540879000 577148294 371782424 258170662 221420980 299484030 423304037 943564241 398924346 43917614 243999216 408532106 685715982 424745201 257209886 519501734 453568481 721624985 493200491 224063114 784916104 602128470 189234984 50162658 827550539 314015767 282670450 252045715 612456812 573665481 260812796 896486217 682713557 925789885 748406616 171700822 714299068 258410856 655451538 436995095 460774301 16775692 236433105 186232559 438796550 699887428 823347144 332150414 479149142 50883240 953172001 890721561 781793582 281229286 293118889 853851782 40434801 963500343 13052685 555650931 205688273 407931621 966142477 631191944 443120042 528148718 774587762 35030436 986078579 558653356 32268205 174463053 564297915 771705434 469781576 522624256 766781457 36951988 697605585 442639654 214215160 517700279 350645352 46079360 218298458 489717678 263094639 700487913 958336172 221661174 707813830 424985395 614858752 254207461 552288215 430870148 929512892 205207885 82949139 501727378 330108765 190195760 226465054 861778184 725107798 528869300 514337563 863579639 145879967 138193759 517940473 977671789 308010917 568381213 289756173 972627715 845805283 988240325 451887123 508452810 97600973 727870029 784796007 551687730 165215584 692561511 927351146 123541925 326505855 67576723 612216618 171460628 105287181 652449113 528509009 281469480 313655476 225984666 234151262 86191758 854572364 221781271 841241597 920505617 603089246 757533988 688598310 660135321 642481062 706252569 586035472 595523135 194879543 265856870 669743081 213134287 368539805 924588915 279788122 828751509 788398917 141916766 43197032 695924227 515538533 95319130 540879000 377426983 779031351 470141867 105407278 777229896 628069422 654610859 440838199 680792005 337915070 681032199 497884274 332870996 167857718 403968420 403007644 478908948 498965147 477107493 586155569 960017530 685115497 975510043 115615523 846525865 97841167 28305004 956294523 649446688 355209038 966983156 379348535 754051175 299724224 865381094 511215041 388836198 758855055 240636500 584354114 533072695 370701551 591920225 43076935 215175936 817342294 510374362 967463544 320260811 649086397 216977391 184791395 375505431 325064691 376586304 903451843 49321979 751168847 310052566 73341379 39594122 501487184 213374481 886277972 821185398 17015886 481911373 656772605 227786121 861417893 911498342 312934894 774347568 548325014 135791819 653650083 221541077 43797517 249643775 5966962 386073967 852650812 779031351 392679302 472303613 485634380 712137322 977191401 536915799 634794854 299243836 964341022 94478451 101323980 95319130 702169271 352807098 761256995 722705858 519501734 114414553 794643961 606572059 424024619 490798551 249283484 754411466 102885241 531751628 538957448 696164421 150323556 858775759 11971812 503648930 339476331 151644623 32508399 839920530 711176546 448044019 5966962 832114225 928792310 973708588 739639535 219859719 583153144 925429594 246401156 333111190 887478942 520822801 811937929 323623527 927351146 156808794 516979697 537035896 786117074 963380246 992083429 295040441 149242683 663858328 861297796 824187823 46439651 245440380 329988668 347042442 759935928 861537990 303086940 959657239 454048869 788278820 396162115 471222740 366738350 530790852 131828618 243999216 192237409 151884817 402527256 396522406 72500700 551087245 833915680 438436259 360733500 601648082 652088822 787318044 942243174 519741928 365297186 8969387 867182549 46799942 902250873 173502277 102404853 86071661 591680031 784315619 454048869 672505312 163053838 169539076 616660207 436874998 727389641 395921921 452127317 22780542 511335138 767622136 718022075 509893974 345240987 687037049 107448927 813138899 81267781 908976305 103485726 762217771 604170119 453568481 76343804 114054262 443600430 797406192 897446993 170139561 566219467 299484030 955814135 772786307 532712404 308010917 605731380 485033895 715139747 574866451 935757936 478308463 662537261 449725377 866702161 985838385 124862992 563337139 323623527 799327744 655571635 460774301 362655052 299484030 383191639 723786731 304167813 895405344 401326286 680311617 22660445 109730770 905853783 528388912 490558357 696164421 439877423 116336105 118377754 884116226 438316162 256969692 227906218 918824259 504609706 481070694 665659783 538236866 663858328 128345805 461614980 392679302 717901978 815660936 384152415 522864450 903692037 139634923 766781457 287354233 798006677 55446926 52804792 100483301 695203645 446602855 39714219 124022313 637917376 865981579 373463782 851449842 915701737 54726344 425465783 888439718 859736535 442039169 477828075 837878881 339956719 803411042 543521134 859736535 673826379 191396730 301645776 67937014 12452200 737958177 29265780 208450504 804852206 762578062 24341803 896125926 589157994 762337868 234751747 783715134 288194912 254327558 396522406 624346415 911738536 742521863 888199524 609694581 305608977 27824616 462575756 955213650 904652813 220580301 640559510 308971693 275584727 852170424 729911678 396282212 443840624 886037778 529589882 569462086 649086397 309331984 39474025 771104949 110331255 825268696 578349264 98681846 148402004 163294032 755252145 974429170 174222859 478308463 658934351 947887733 959417045 393760175 188394305 425225589 783114649 712617710 715019650 495602431 170259658 431350536 35390727 847726835 844244022 28305004 689078698 951850934 656772605 842922955 52564598 190195760 283150838 188274208 270300459 485274089 509653780 406610554 752730108 910417469 878351570 78625647 718142172 939721137 718742657 434833349 411054143 28184907 570903250 516379212 128225708 349924770 16055110 526467360 32508399 770864755 998808861 426306462 175664023 115375329 735916528 190315857 911498342 254327558 430149566 859376244 267778422 311613827 316177513 531271240 578949749 316417707 766781457 943564241 177345381 811217347 344160114 922307072 158009764 325905370 466418860 94118160 582072271 901170000 145879967 512416011 821305495 101323980 100723495 847606738 275464630 863939930 452487608 592160419 890721561 679831229 262374057 965541992 635035048 298042866 675387640 269219586 147561325 737838080 155127436 502568057 418139866 597204493 334432257 315937319 329147989 49201882 863699736 298643351 481310888 889160300 738318468 437235289 970826260 129186484 588317315 828391218 2724343 237153687 718142172 711056449 761737383 13172782 568381213 78865841 427147141 416098217 8248805 990281974 46559748 645243293 991723138 268258810 902731261 304768298 939841234 356410008 434232864 211693123 116456202 87632922 185992365 687757631 522504159 390157265 705652084 140955990 780232321 358211463 884836808 184791395 170499852 834275971 721745082 568261116 678990550 430269663 399644928 560935199 104206308 597084396 931074153 903692037 258050565 525266390 774587762 624346415 257329983 9810066 667821529 193318282 869824683 907294947 616420013 985237900 852891006 433272088 80427102 18336953 106968539 643561935 637917376 464497308 935998130 872226623 939480943 446482758 570542959 336233712 741921378 164374905 392559205 819864331 880753510 828991703 200404005 151044138 609214193 17496274 412014919 628549810 489837775 125343380 816141324 550967148 453328287 881594189 11851715 549886275 447083243 950529867 112252807 215896518 261293184 257810371 610054872 516018921 654370665 626628258 49081785 505330288 291077240 102404853 6207156 397963570 214335257 798967453 648606009 209291183 601768179 361093791 866702161 73941864 568381213 233550777 317378483 398804249 843523440 574506160 133990364 880153025 736997401 568501310 8128708 778550963 351365934 590118770 974549267 628309616 411174240 306329559 251325133 775068150 241717373 694963451 878351570 326145564 397603279 206528952 498244565 665779880 921346296 627468937 521903674 86912340 873667787 136632498 459092943 747445840 802930654 357851172 251205036 417779575 870425168 998088279 856614013 549766178 38152958 739879729 999649540 37552473 180347806 486354962 701688883 498004371 736517013 788999402 947767636 74182058 572224317 433151991 686796855 27584422 326145564 690399765 364456507 796085125 717061299 6447350 794283670 441198490 969745387 844484216 462335562 867662937 321101490 133269782 787077850 636476212 757173697 367699126 810016377 825989278 239915918 469301188 466058569 150803944 476026620 696764906 57248381 988120228 133029588 350645352 875349145 640439413 530790852 413816374 94598548 634794854 50643046 104446502 218898943 488756902 639959025 535234441 826950054 813379093 489957872 239555627 896726411 237874269 778310769 76704095 668422014 181068388 281709674 249163387 829111800 843043052 18577147 861297796 813379093 528989397 381149990 365777574 599606433 195720222 704090823 436274513 897206799 588317315 709254994 275344533 942243174 854812558 423424134 227065539 904893007 142036863 831273546 338515555 455730227 784796007 769903979 485153992 351125740 84030012 334071966 120419403 772426016 996046630 664218619 795724834 264415706 496082819 480590306 304167813 513977272 989561392 94718645 451526832 108409703 378988244 398564055 87392728 534874150 708294218 250244260 17256080 648485912 454529257 373103491 772426016 498965147 367218738 125223283 628910101 155968115 550246566 264896094 642481062 454289063 21819766 984517318 773747083 804732109 157169085 32628496 860096826 912819409 889520591 347402733 937559391 853971879 83669721 427987820 669743081 103005338 749607586 157889667 839920530 16295304 921466393 403848323 70098760 539918224 478068269 606211768 422223164 785276395 70218857 575707130 449004795 960497918 843883731 314976543 669382790 50282755 572824802 232590001 160651898 996887309 446122467 11731618 522984547 335513130 502447960 945846084 423664328 912579215 303086940 151284332 773266695 117296881 459573331 562856751 912699312 235712523 672625409 487315738 52684695 570903250 754531563 312094215 424505007 937679488 210612250 850008678 24942288 893123501 377426983 510254265 891201949 371782424 301165388 485634380 984277124 845805283 103365629 905853783 222742047 953772486 442759751 666860753 719823530 267298034 636476212 6207156 69378178 330108765 756933503 955213650 903812134 765700584 795844931 499085244 255648625 48361203 789960178 821545689 842322470 525746778 137833468 777950478 802791 770984852 106488151 30947138 138914341 305969268 695083548 194759446 566339564 273783272 726669059 632032623 489957872 305969268 462936047 996527018 43677420 721624985 651608434 703250144 766060875 554690155 378027468 358571754 135191334 876189824 733634685 954613165 758374667 556731804 390637653 739879729 667341141 305729074 56527799 939240749 209891668 961218500 323743624 582192368 995205951 594322165 443840624 795124349 541959873 623505736 806173273 676588610 856974304 476747202 402647353 576427712 977071304 552768603 380789699 105046987 149963265 691360541 37552473 260452505 600687306 984997706 822386368 745404191 421862873 1763567 381149990 148161810 974669364 212533802 79586423 817582488 433392185 862258572 938640264 147080937 333351384 134710946 519862025 75863416 160171510 340797398 718502463 388355810 82348654 530190367 626748355 320621102 31907914 36831891 609694581 136512401 148642198 204967691 502207766 839440142 380069117 576547809 287834621 80667296 909576790 937799585 470982546 984517318 537516284 501847475 912098827 330228862 48721494 981995281 676948901 953652389 80186908 987639840 852290521 60851291 751168847 307650626 643201644 293599277 749367392 293238986 778550963 35510824 55446926 467259539 650887852 107569024 58329254 948007830 84990788 334312160 247602126 869944780 903571940 145279482 939360846 404568905 792362118 76704095 110091061 233430680 344160114 21099184 318339259 502688154 646804554 175183635 482271664 437835774 222862144 890841658 628189519 166656748 38393152 248322708 878111376 459333137 568501310 203766721 175063538 684635109 502327863 773146598 328307310 396762600 994485369 815660936 14493849 751889429 366137865 635755630 602128470 829832382 6807641 702889853 502087669 6087059 133509976 475426135 631071847 538116769 394120466 502688154 450445959 736877304 403848323 530310464 674546961 386914646 763418741 127625223 861297796 210732347 730271969 419340836 875709436 851329745 541599582 579670331 647044748 651248143 512175817 541119194 58209157 126544350 469181091 5966962 568981698 177105187 494761752 724867604 338995943 993524593 394480757 402287062 365056992 642000674 710335867 427507432 507852325 453808675 665179395 966502768 456330712 822986853 483232440 752009526 675747931 504369512 248682999 101203883 25782967 758734958 378627953 957495493 731232745 607052447 752249720 919304647 434112767 598405463 237273784 639478637 376586304 440958296 156448503 907174850 599005948 566819952 574145869 232590001 634314466 981755087 596003523 965662089 893363695 451526832 891322046 840400918 337674876 796325319 853491491 890241173 141916766 411894822 91235832 404929196 467980121 178906642 510614556 9089484 643441838 469901673 516139018 760056025 925789885 98561749 739279244 69137984 208090213 42476450 530070270 256609401 203526527 790800857 364816798 863699736 66495850 272222011 377547080 649806979 589758479 47760718 292878695 991843235 990522168 107088636 486715253 914981155 923748236 804732109 59410127 26383452 374784849 656652508 461254689 566099370 888800009 193678573 419100642 953532292 982115378 575947324 962299373 632633108 836317620 587596733 777109799 617620983 789239596 138674147 925189400 483953022 103365629 254207461 897326896 968904708 464137017 319540229 270900944 805332594 118257657 575106645 305729074 766901554 35390727 27944713 254567752 747926228 7528223 770144173 764379517 564778303 894564665 109250382 775428441 519501734 592160419 102164659 450926347 327346534 566459661 301885970 505090094 372983394 565618982 456090518 186112462 923387945 824187823 987639840 497884274 657012799 51844016 410093367 852530715 699046749 297202187 974188976 29626071 854212073 496923498 256129013 129186484 264535803 476627105 964701313 634674757 179747321 906214074 442039169 38152958 763658935 941162301 352927195 47400427 611976424 288675300 552048021 921466393 490558357 457291488 250604551 690159571 656892702 460414010 836798008 644162420 392078817 887839233 886157875 884956905 768703009 993404496 671064148 411054143 154526951 663377940 116336105 690159571 681272393 224783696 566219467 178065963 910657663 370821648 976951207 274143563 819864331 778190672 104326405 734835655 471462934 263695124 966142477 246160962 119698821 315456931 316177513 321822072 849288096 121620373 244599701 302966843 698566361 338875846 178546351 400125316 286153263 377066692 387635228 175183635 6207156 662417164 90154959 301285485 370461357 686436564 159210734 37312279 26023161 357010493 808695310 604650507 435914222 678390065 500766602 120539500 205207885 972387521 934436869 547604432 219619525 604290216 503048445 672265118 835116650 385233288 522984547 164254808 759575637 764499614 594442262 977671789 284471905 884956905 244839895 171700822 142997639 449004795 183590425 245920768 344400308 600687306 131228133 754531563 677909677 783474940 180107612 148762295 979953632 840641112 831874031 759575637 4405701 821305495 715139747 716100523 387515131 770744658 818783458 435313737 93397578 242197761 24581997 717301493 454649354 409733076 665299492 421382485 934196675 421862873 170499852 200644199 764619711 112252807 808935504 911618439 208210310 655811829 42836741 117296881 487315738 31427526 547364238 707813830 692561511 810256571 409733076 624826803 291917919 974909558 733754782 898287672 237634075 707693733 977311498 395561630 22059960 596844202 354848747 458372361 329508280 228386606 252766297 648005524 977791886 916782610 584714405 860337020 221420980 53405277 174463053 723426440 372623103 2964537 994965757 668782305 95919615 319540229 885197099 52084210 56407702 906334171 194279058 915101252 655091247 793803282 111532225 305488880 882675062 62292455 205928467 232109613 217457779 99162234 169058688 464497308 616299916 147080937 239555627 108529800 386914646 653169695 172061113 849768484 877630988 274263660 669502887 175063538 7047835 275344533 505210191 505450385 982715863 697485488 746124773 556491610 715500038 46199457 670463663 935277548 63253231 68897790 757413891 91956414 351726225 712257419 192837894 161012189 25782967 125103186 155727921 940081428 19417826 72981088 761377092 167377330 176864993 384512706 424384910 814940354 342959144 230428255 930353571 808335019 541719679 719343142 230308158 476627105 920986005 116936590 376226013 871506041 905733686 437475483 206408855 529469785 484913798 145039288 784675910 323023042 148882392 922787460 255288334 422703552 519261540 47040136 572584608 834516165 630951750 210732347 352927195 214695548 636956600 733634685 901890582 534754053 412975695 316898095 112613098 89554474 872226623 93998063 672505312 20618796 637196794 354248262 785876880 830793158 944885308 646804554 175183635 959176851 367338835 428828499 688478213 699647234 124022313 778070575 528028621 861297796 727509738 928071728 498364662 201965266 435313737 609334290 219619525 502688154 877871182 708654509 331670026 727749932 160771995 378868147 703850629 641400189 728230320 360853597 268378907 670463663 904652813 80066811 11851715 342118465 279427831 589758479 827190248 301645776 756333018 945005405 966983156 30346653 499805826 860937505 591319740 564057721 503528833 917863483 837878881 179507127 137232983 692801705 107328830 869464392 304768298 328427407 388596004 722465664 154286757 3565022 239555627 695684033 568621407 396282212 535354538 790080275 749487489 325304885 335753324 200644199 565258691 821785883 151644623 16415401 308251111 691720832 669382790 544481910 285672875 397723376 180467903 332270511 834876456 535234441 323263236 51243531 488756902 409853173 121380179 400845898 796565513 208810795 219979816 249403581 956895008 92436802 632513011 237874269 489117193 816261421 37072085 45719069 15094334 684875303 855052752 909696887 776989702 321701975 897927381 558893550 141796669 573545384 508332713 323503430 377547080 560815102 471342837 798366968 283150838 214575451 421982970 901170000 972267424 604530410 642120771 304888395 574626257 158610249 652208919 405889972 430990245 848327320 818303070 368779999 25542773 313655476 182749746 828151024 60491000 91956414 430389760 948608315 642481062 362054567 24341803 461735077 450325862 3324828 806893855 993764787 495122043 857814983 808455116 348843897 422943746 93637772 882915256 32988787 832234322 52444501 646804554 502928348 139034438 410333561 249523678 421982970 723906828 271741623 742161572 879672637 678750356 272222011 989681489 111292031 86191758 145159385 805092400 773506889 993764787 965662089 465097793 932995705 439036744 252766297 951130352 2484149 352687001 735556237 340317010 134831043 667221044 529589882 375985819 928672213 159571025 216857294 830913255 73581573 677909677 382110766 394961145 186472753 219139137 637196794 382230863 127385029 417899672 281109189 146360355 59410127 633473787 988960907 567060146 505330288 537756478 176384605 994004981 998088279 799928229 459693428 841001403 459333137 102164659 247001641 368419708 845565089 484313313 334071966 813379093 292278210 850248872 560574908 180107612 524425711 105287181 322403 174342956 334672451 969505193 424865298 208450504 356890396 691600735 816141324 920385520 878351570 228146412 651248143 542920649 590839352 682233169 159210734 606091671 483592731 85471176 738198371 329027892 655691732 65535074 921346296 697725682 606812253 348963994 176864993 917262998 516018921 358451657 944525017 967823835 323743624 839920530 794043476 659054448 221901368 615219043 586756054 968784611 423664328 729911678 466298763 874148175 198002065 557212192 368659902 63733619 250484454 224903793 1763567 741921378 547124044 490798551 144799094 691000250 130627648 688478213 896486217 611856327 168338106 879432443 235352232 638878152 687517437 236072814 506891549 624826803 618341565 948608315 960497918 838719560 165335681 608973999 141196184 530550658 626508161 222501853 863219348 116095911 402767450 149482877 733634685 611375939 875349145 937559391 342358659 915461543 101684271 968424320 600086821 765460390 53645471 752129623 615819528 301285485 857094401 502688154 222742047 952331322 439997520 774948053 667221044 143237833 939360846 215656324 8008611 35390727 700367816 819504040 534874150 427987820 93877966 942723562 557572483 11731618 24822191 885197099 323503430 802210072 998088279 687997825 682713557 710936352 556491610 469781576 392799399 162813644 309211887 859616438 648005524 749007101 380189214 345000793 358211463 905013104 664819104 405169390 182629649 989321198 750448265 271501429 88833892 134831043 48000912 88833892 606932350 248082514 355329135 986078579 945725987 193318282 503889124 805092400 519862025 611976424 163534226 421382485 649326591 419941321 767862330 711296643 249043290 588437412 123541925 729311193 836557814 79346229 784916104 666500462 53765568 810736959 911978730 734955752 88713795 145759870 785996977 373223588 772786307 96039712 632873302 820945204 122220858 799928229 101684271 758254570 407090942 849768484 330589153 765340293 182509552 275945018 210852444 514097369 653169695 486835350 720424015 321581878 609574484 543280940 828751509 9689969 709375091 213134287 311733924 408171815 972747812 405049293 94358354 690639959 282670450 195720222 804852206 953892583 495842625 777109799 824307920 968304223 461855174 565859176 292998792 398083667 575947324 920505617 192837894 574626257 989321198 629630683 419100642 683073848 638878152 533673180 626027773 350285061 663858328 973468394 750808556 298042866 996767212 793322894 356890396 603329440 702169271 946446569 662897552 26623646 585314890 40795092 378988244 739519438 521183092 198722647 381630378 947767636 550486760 644883002 644402614 975510043 169779270 619062147 950649964 596724105 802089975 845925380 990642265 591079546 984277124 356049717 965541992 964821410 590599158 484193216 892883307 864180124 338155264 922907557 70939439 187313432 210852444 395921921 77304580 837038202 974789461 942243174 3324828 268979392 412014919 128465902 920865908 275104339 250004066 434473058 835837232 79226132 332390608 88353504 444200915 40074510 651608434 580871301 485033895 720063724 984517318 48241106 609574484 679350841 926390370 340797398 72020312 548925499 807374243 888559815 203286333 729671484 701688883 654971150 895285247 501006796 95919615 407211039 785156298 552888700 782033776 685715982 217337682 927351146 98081361 438075968 812778608 381149990 762818256 77544774 498484759 501367087 879192249 258891244 763538838 764379517 520822801 728590611 841001403 284471905 300805097 782033776 342839047 384032318 47280330 826589763 980794311 600206918 216376906 254807946 884356420 443240139 931314347 970706163 842322470 541359388 862859057 528989397 357610978 449605280 459693428 202445654 403488032 773987277 253967267 659294642 767261845 830072576 681152296 831273546 543160843 449244989 173742471 206528952 903692037 102765144 278587152 833435292 269940168 678029774 697605585 488997096 434833349 460414010 558293065 988480519 43677420 277266085 770504464 980674214 194999640 968064029 29025586 342358659 862498766 777830381 526107069 51363628 534513859 383191639 353887971 323503430 754291369 311133439 446122467 477347687 590238867 991242750 561415587 295400732 682713557 233911068 884716711 411534531 834756359 859616438 350285061 984036930 633113496 104566599 840641112 72260506 118497851 898167575 799808132 980794311 343079241 655331441 982475669 54125859 841962179 186712947 643081547 500286214 376586304 395801824 616660207 904172425 749607586 707453539 973348297 48361203 282910644 267778422 597204493 865981579 100723495 475786426 108409703 548084820 473504583 729431290 49802367 587476636 253246685 637316891 981034505 133509976 161972965 642601159 217217585 420181515 49802367 956174426 478068269 564538109 608613708 686796855 738078274 860457117 568861601 373583879 705411890 302246261 214575451 266457355 334432257 923147751 799447841 20138408 837398493 701208495 232109613 883515741 835837232 74782543 288074815 813379093 380669602 462936047 831513740 950409770 49682270 579189943 716220620 69258081 937439294 491278939 3685119 903692037 155247533 123061537 898407769 48361203 673225894 473624680 640919801 920145326 594202068 245560477 388596004 43197032 806533564 679350841 403728226 415137441 291797822 39834316 382110766 682113072 349204188 368299611 585314890 697725682 958095978 39714219 219379331 598045172 38993637 430509857 699527137 508933198 33949563 508693004 974909558 228987091 873547690 429549081 248322708 972988006 939601040 702889853 970345872 668301917 300685000 69017887 473864874 54486150 782634261 476026620 262494154 49922464 952091128 960978306 437115192 980914408 953532292 476386911 920986005 1763567 409612979 128345805 470261964 537876575 781193097 152365205 684995400 686916952 109490576 560815102 98801943 846645962 801249296 415137441 652809404 470622255 696164421 435914222 878471667 193438379 421262388 550126469 921346296 504249415 181308582 291557628 588557509 743002251 19417826 675267543 32508399 957615590 87152534 470382061 420541806 630711556 149602974 358451657 798126774 711897128 793803282 75142834 692921802 359652627 932395220 308010917 845565089 552648506 498244565 448164116 341878271 556731804 241837470 692561511 73221282 572944899 748766907 943444144 301765873 911017954 252886394 140835893 58689545 899368545 475426135 67816917 587716830 653650083 74182058 794283670 50763143 457531682 354848747 697845779 370581454 825388793 877270697 469421285 741681184 395921921 496323013 217818070 333591578 721384791 733514588 859616438 293479180 59530224 914380670 931194250 154046563 999649540 204247109 517580182 299363933 903692037 951010255 403488032 797286095 699046749 721504888 268619101 14493849 72740894 420661903 896125926 786477365 815781033 576307615 309932469 780232321 773146598 717781881 433512282 519141443 897206799 440237714 186833044 692441414 427027044 506411161 462455659 146960840 559253841 404208614 447203340 523945323 821185398 907775335 491879424 855172849 419340836 636716406 87993213 449605280 576067421 299243836 17015886 686196370 899368545 526827651 385713676 612937200 675387640 197761871 117056687 831273546 710816255 283991517 260692699 226825345 570062571 961458694 824187823 286393457 368900096 806053176 220940592 529109494 824428017 164615099 203766721 36111309 680551811 82829042 417179090 679350841 96400003 672145021 696404615 187673723 851810133 868743810 265856870 70098760 850609163 306930044 339716525 509173392 211332832 235112038 887959330 159931316 327226437 131468327 344640502 38513249 67816917 853131200 878831958 320020617 968544417 68657596 516259115 707333442 873787884 192717797 1763567 927351146 378507856 180588000 357010493 870064877 380069117 185511977 663978425 498364662 57008187 863099251 624466512 154647048 490678454 405289487 697605585 485514283 734835655 897086702 654370665 97600973 577268391 49682270 72140409 605611283 33709369 941402495 469781576 559734229 455850324 636716406 658213769 285792972 943804435 384152415 228266509 858055177 900089127 692801705 42116159 366257962 968064029 191516827 259491729 804491915 714058874 384632803 387395034 658333866 775548538 45719069 601648082 245320283 131708521 518661055 861177699 723666634 508933198 694362966 4525798 277145988 908375820 400245413 277746473 510494459 302726649 49201882 615098946 645363390 601768179 480350112 546643656 467259539 64093910 94478451 856253722 466538957 727629835 989441295 73701670 323023042 736757207 603929925 426666753 592160419 322902945 352086516 679711132 899728836 15694819 490077969 273783272 170619949 328427407 144078512 659414739 377667177 754771757 799567938 890241173 484313313 915701737 68897790 525626681 174102762 245200186 441798975 155727921 305488880 555410737 848567514 17736468 174823344 276785697 582312465 362414858 25062385 619302341 270780847 97120585 252526103 73221282 715139747 74302155 684755206 640559510 698085973 1643470 447803825 642841353 540758903 80066811 585074696 506411161 939360846 667581335 906934656 701929077 741200796 69978663 104206308 779271545 140355505 853731685 926150176 929753086 100002913 283511129 312694700 985958482 914500767 999529443 64334104 929993280 1163082 621343990 412014919 516259115 177705672 972747812 523464935 881714286 781073000 379108341 792001827 701328592 679951326 711296643 264896094 847246447 388836198 297202187 434833349 435433834 887959330 751769332 493921073 402287062 231028740 994605466 597684881 188514402 509893974 635635533 797045901 412975695 127264932 906454268 664458813 449365086 389196489 806773758 721985276 184551201 666140171 364336410 514337563 721745082 74422252 14373752 474465359 521062995 502447960 251565327 924949206 463776726 751048750 246281059 314616252 657132896 92436802 546283365 826469666 485274089 521062995 108769994 537396187 851690036 465458084 611736230 119218433 806293370 985838385 807374243 258530953 955694038 960137627 642120771 970345872 483352537 729191096 989081004 103966114 896486217 888199524 245440380 222742047 675387640 691961026 464737502 610895551 343919920 234391456 767381942 362174664 635635533 80907490 447323437 956534717 999529443 371542230 203046139 935397645 254928043 634554660 651007949 145039288 775668635 115855717 18457050 800889005 638998249 545682880 6207156 846525865 559253841 781193097 440598005 974549267 743842930 958456269 230788546 38633346 15694819 265256385 841601888 424865298 379708826 649446688 806413467 289636076 842442567 501847475 945125502 477948172 442639654 452007220 39474025 629270392 471823225 819263846 720664209 148762295 102524950 593001098 920625714 515778727 636476212 926990855 355569329 191757021 399044443 362775149 295040441 910177275 317378483 319420132 402527256 462455659 91476026 777349993 506291064 215896518 779751933 664578910 833795583 75863416 198242259 772666210 127985514 709375091 322782848 800048326 418860448 170740046 419460933 864060027 41395577 313895670 882554965 4165507 917022804 693282093 232710098 651728531 801609587 134230558 970946357 462455659 483352537 543401037 68417402 767381942 271381332 781313194 615699431 821305495 490318163 122701246 800408617 155607824 955573941 436274513 851810133 239555627 779872030 683314042 233911068 961818985 723546537 881594189 805933079 841241597 897807284 255528528 271141138 330589153 861177699 920265423 578469361 455490033 945725987 489477484 988120228 664098522 92316705 140355505 257089789 135071237 471342837 240036015 863579639 48601397 761497189 897807284 358932045 589998673 799567938 795364543 254567752 137833468 571503735 860096826 562616557 680071423 694603160 494521558 236553202 388115616 399044443 446122467 653409889 994365272 318819647 686556661 48361203 759215346 103005338 275104339 253967267 871866332 829111800 426306462 440117617 763658935 518661055 833195098 311974118 184311007 705892278 339956719 54606247 846645962 262013766 90034862 88473601 377306886 526587457 347642927 989921683 688117922 594442262 895045053 550606857 191396730 435433834 344520405 901049903 838839657 326385758 494401461 228626800 109250382 703730532 88353504 127144835 610535260 278947443 212293608 826589763 193678573 108649897 524065420 551327439 550606857 346081666 48361203 198842744 441919072 943083853 862258572 798847356 784315619 723906828 129546775 721504888 611736230 449725377 240516403 336954294 608133320 966022380 777830381 778070575 255408431 511215041 730031775 666620559 300685000 13412976 9689969 439877423 607292641 882915256 116936590 734235170 218418555 113934165 293839471 729431290 912459118 612576909 662056873 320260811 279187637 151524526 185391880 255288334 739279244 591439837 311613827 974549267 335753324 313775573 67336529 10170357 723066149 420902097 820584913 81267781 314616252 165455778 815060451 734115073 859015953 881714286 562856751 440477908 740600311 60731194 886157875 532472210 405649778 701568786 439997520 730512163 556011222 56888090 308251111 143357930 66135559 107448927 152965690 104206308 553369088 531631531 192237409 29505974 697485488 827790733 460774301 480470209 432071118 569462086 786357268 535114344 64574298 928552116 658574060 984517318 616660207 255408431 985838385 390157265 824908405 154166660 790680760 406370360 460894398 399164540 995205951 48721494 541599582 983676639 964941507 78145259 886638263 926390370 813739384 434112767 256969692 607893126 645723681 269459780 444200915 558773453 394961145 707573636 171460628 914740961 703250144 213014190 359052142 195720222 726789156 637196794 665299492 337794973 551327439 963860634 747686034 899728836 93757869 967223350 332750899 604410313 674426864 202805945 157529376 931434444 608373514 378748050 982235475 678990550 17015886 672145021 198842744 575106645 600086821 44758293 18336953 657853478 54606247 735075849 334312160 536675605 330108765 715139747 870305071 568741504 577508585 758494764 728710708 595763329 273543078 901410194 156328406 375025043 899488642 955453844 641039898 813619287 809295795 918103677 444681303 444441109 69858566 473744777 44518099 692081123 635275242 717061299 466418860 433392185 685355691 96039712 171220434 141076087 128345805 955453844 634674757 194639349 782874455 415497732 770504464 380549505 790320469 86191758 162453353 423904522 925189400 493200491 562496460 770144173 75983513 930113377 827670636 149723071 361694276 39594122 974429170 454048869 530910949 33469175 630351265 157169085 637917376 487796126 822866756 217457779 733874879 792242021 13533073 851569939 682953751 112132710 906814559 234991941 403127741 504729803 312454506 410453658 384152415 23981512 995326048 785996977 257450080 133029588 113333680 679831229 289275785 516859600 387875422 786357268 522504159 44398002 23381027 473624680 11131133 328667601 502087669 69618372 748166422 773626986 166776845 926990855 737357692 946806860 770024076 111532225 976711013 955093553 859976729 998208376 891081852 973228200 316537804 221541077 299604127 496563207 297082090 145039288 548325014 207850019 933235899 116456202 154406854 156568600 254928043 552768603 614498461 614618558 117777269 391238138 978632565 662056873 280748898 778310769 878591764 10050260 213254384 811217347 754291369 70218857 457051294 755972727 212773996 759575637 472063419 502447960 389676877 758855055 409132591 317378483 972387521 343079241 742161572 410453658 618101371 100483301 123662022 524545808 174463053 881954480 808094825 973588491 654010374 489837775 773266695 697845779 351365934 678269968 365777574 646924651 349324285 87753019 222621950 345000793 797045901 887719136 885557390 619902826 980434020 358571754 862859057 777470090 601648082 403127741 354728650 695684033 37312279 171580725 800648811 600807403 939841234 110091061 71539924 856614013 637076697 120059112 97480876 314135864 568621407 874388369 22059960 898888157 738078274 547844626 34189757 574265966 981634990 355209038 762938353 424745201 163894517 452367511 205808370 981154602 597444687 476146717 566459661 731713133 136272207 574145869 826589763 973108103 726669059 810016377 139634923 505210191 173502277 515658630 797646386 500406311 942843659 85230982 238714948 388836198 743482639 308251111 126544350 149482877 3805216 873427593 452487608 694603160 604170119 171941016 876189824 590118770 545322589 796325319 203166236 739399341 828871606 900689612 31547623 924228624 211693123 440958296 737237595 800768908 133149685 948368121 315456931 955333747 919304647 395921921 494401461 592520710 951610740 178065963 422703552 762457965 346441957 727509738 594562359 869464392 24942288 565739079 67336529 421382485 866341870 348603703 849408193 177225284 326625952 543160843 536435411 922307072 814339869 847366544 103005338 928792310 487195641 604650507 689559086 957615590 935878033 509173392 96400003 638157570 763899129 884956905 90995638 798246871 521663480 687637534 945725987 21339378 262253960 775428441 354728650 192357506 573545384 453688578 491879424 514577757 935037354 439757326 636236018 587836927 817462391 433151991 509173392 793923379 390397459 558052871 945846084 583753629 620623408 376706401 913419894 282670450 100843592 862018378 149602974 60851291 877871182 277386182 439156841 170980240 509773877 612456812 216376906 492720103 187193335 961698888 672024924 596363814 203526527 458852749 372623103 193918767 96760294 560574908 676468513 31547623 951490643 285672875 436394610 496683304 437355386 736997401 418139866 845204798 433632379 975510043 919785035 918824259 408772300 487075544 596123620 46679845 437355386 263094639 601888276 875709436 45478875 801609587 145279482 978632565 670823954 575466936 779751933 453448384 85351079 754171272 257329983 302846746 549405887 463536532 563937624 703250144 490318163 418500157 456931197 637797279 50522949 461134592 220340107 342238562 803651236 228386606 266217161 492479909 466659054 711416740 323383333 797045901 959897433 889880882 582312465 314736349 247361932 945485793 810977153 807614437 235952717 868623713 434112767 811697735 470742352 870425168 552288215 923387945 392559205 526707554 60971388 383792124 660976000 988600616 974549267 370461357 210732347 758975152 346441957 669262693 332870996 102524950 673345991 108769994 98801943 889040203 712737807 719823530 244599701 473624680 998808861 220460204 152004914 496923498 514217466 60370903 496443110 603089246 336113615 814580063 896005829 481310888 176864993 283751323 875469242 408772300 991843235 364936895 584834502 117416978 17976662 367338835 234751747 709134897 827190248 466659054 233070389 773626986 835116650 231148837 476386911 451286638 927591340 443720527 648125621 531031046 509293489 99882816 707813830 469661479 896966605 723666634 339236137 279427831 351966419 761977577 272582302 647765330 275945018 814099675 721384791 82348654 530070270 507972422 44277905 771104949 258410856 437115192 836798008 144078512 525626681 794884155 805933079 344400308 326505855 84870691 940081428 274263660 472303613 550126469 987159452 996286824 698806555 969625290 648966300 359652627 625907676 660255418 430389760 112613098 734955752 345120890 643802129 49442076 96520100 969024805 140355505 103125435 704090823 623265542 475185941 339716525 791281245 92797093 325064691 840641112 108409703 912459118 877871182 302846746 430269663 390757750 265856870 735436140 546883850 378027468 628910101 46319554 942363271 209171086 739399341 961218500 509173392 954733262 429428984 692081123 168938591 522384062 230308158 828751509 878831958 501006796 957375396 719102948 304528104 612096521 345481181 222501853 646564360 529229591 369500581 112973389 832234322 310052566 193558476 238114463 607652932 876790309 698446264 245080089 706612860 669983275 491999521 692081123 157529376 160892092 442500 108529800 570663056 358091366 201725072 926150176 604170119 826709860 445401885 416218314 325304885 869344295 359532530 900809709 274864145 316297610 660495612 877030503 896246023 415617829 418019769 324224012 572464511 916302222 575226742 772546113 12212006 400965995 300564903 326145564 659534836 580991398 824067726 768342718 872106526 758014376 783234746 434593155 758855055 712857904 210732347 86792243 540999097 139995214 849047902 691360541 47400427 39233831 832714710 20618796 538597157 24702094 362775149 158009764 902491067 492840200 742641960 299484030 396762600 280989092 439757326 332150414 446002370 612937200 109850867 688958601 45358778 918824259 968544417 51723919 710095673 328667601 515778727 746244870 118617948 209291183 631312041 142036863 427267238 611616133 121980664 86912340 126784544 28305004 697365391 229947867 861057602 916902707 521303189 725948477 970946357 867062452 793082700 439997520 295881120 399164540 765700584 655811829 187673723 927591340 277506279 212653899 237994366 583393338 314255961 569702280 981154602 393159690 557092095 906574365 64334104 828751509 199203035 29986362 922888 965421895 199683423 803891430 847606738 173382180 850729260 571864026 469421285 889520591 423904522 449965571 204247109 893964180 730392066 2364052 182869843 468460509 810857056 848807708 289035591 879912831 609694581 4285604 839800433 753570787 305729074 354848747 735676334 364936895 456931197 799207647 572944899 602728955 158370055 314015767 532952598 250844745 949208800 788639111 980794311 642601159 865260997 91836317 850849357 458852749 439156841 908856208 446482758 752369817 273422981 626267967 502327863 431230439 420661903 993524593 262854445 110811643 691480638 500646505 296001217 159571025 180467903 883996129 501607281 411294337 188634499 439276938 203646624 424505007 962779761 928432019 2484149 159691122 896005829 865981579 590479061 974789461 669502887 13653170 553128894 507612131 993404496 351486031 189595275 447803825 375025043 582912950 684154721 252045715 677189095 881474092 100123010 627949325 397363085 459092943 627589034 858295371 717061299 729311193 952811710 165816069 799327744 59530224 53525374 721745082 745404191 516859600 889040203 406370360 428228014 11731618 984997706 947407345 501006796 935037354 704931502 906694462 247361932 20979087 18096759 376466207 737597886 779631836 840641112 709855479 515178242 429669178 885437293 532952598 828271121 680191520 75383028 588797703 806053176 231749322 375265237 63853716 177345381 531871725 186592850 130987939 196320707 283030741 81147684 379108341 665779880 96520100 487555932 232109613 502568057 662537261 807974728 776509314 497403886 902250873 603929925 134590849 728590611 296241411 897927381 279427831 195960416 960137627 342718950 477227590 249283484 405409584 189955566 109850867 2844440 107088636 315577028 962899858 560334714 563217042 766541263 933836384 755732533 171941016 22900639 648966300 320861296 579550234 963860634 458972846 189475178 381870572 663377940 694723257 102765144 873427593 977551692 494401461 649326591 410213464 791641536 663498037 404208614 472904098 279307734 939721137 647645233 879192249 507371937 114774844 447683728 80186908 854212073 465578181 27824616 327106340 501847475 509413586 562136169 235352232 165695972 753210496 643561935 864660512 950529867 113934165 401686577 178065963 423784425 136512401 746485064 810496765 70819342 83789818 155367630 847126350 314976543 877510891 786477365 693762481 357610978 134350655 153325981 764619711 602368664 212894093 266817646 195840319 653890277 54726344 288194912 702169271 614378364 331429832 228506703 347763024 172061113 313655476 278827346 31667720 806653661 870064877 568741504 741200796 212533802 539798127 181548776 144318706 36831891 845805283 728950902 530790852 183950716 979833535 893243598 291197337 687757631 340196913 158850443 870545265 778911254 80307005 432791700 2123858 376946595 717181396 61812067 988960907 888920106 829351994 556011222 227786121 809896280 458012070 415257538 98441652 279788122 592760904 710215770 93757869 337314585 984517318 262974542 103125435 556851901 422343261 868023228 738918953 445041594 105407278 467619830 350405158 872586914 848447417 421022194 842562664 681752781 32508399 783595037 110091061 642120771 638998249 41875965 427387335 648726106 606932350 390757750 253486879 612576909 284592002 469421285 97240682 361213888 153566175 559974423 719102948 413456083 709735382 801249296 120539500 626267967 225984666 223102338 278707249 883996129 809175698 388115616 43677420 479629530 195119737 662417164 154406854 173141986 836437717 654851053 905973880 357130590 388956295 302246261 644162420 393519981 300685000 674787155 606692156 620143020 29866265 511094944 51363628 682113072 913419894 464137017 63733619 773386792 59169933 426906947 8368902 290957143 645603584 789119499 656052023 844844507 219019040 560214617 42116159 539437836 258651050 354728650 354608553 492479909 838839657 348483606 842922955 465097793 723666634 945005405 169899367 149002489 157169085 527548233 469901673 620383214 551567633 324344109 157889667 663858328 884476517 760536413 515298339 172061113 44277905 298643351 397483182 294920344 192957991 386794549 856373819 947167151 5846865 433752476 687757631 344280211 210972541 346441957 639718831 879672637 947167151 984757512 948608315 586395763 800048326 970706163 30947138 200644199 671304342 879912831 280388607 191276633 827670636 322662751 395081242 58329254 221300883 616059722 789719984 567900825 756453115 54245956 323263236 149723071 403608129 150803944 506050870 110931740 417779575 109610673 987399646 808455116 46559748 972867909 833675486 545802977 431470633 816982003 291197337 328187213 861057602 402046868 629150295 240276209 723666634 548325014 985237900 730392066 907054753 473864874 705772181 630351265 2364052 130027163 599366239 222862144 390517556 633233593 706372666 829111800 190315857 856493916 992203526 678149871 912699312 863339445 335393033 748286519 674667058 194519252 72140409 574506160 779391642 613537685 632513011 889880882 191036439 442279363 290476755 959657239 969745387 803170848 808455116 947527442 588677606 462575756 809776183 484793701 490558357 709975576 500886699 196200610 615459237 425105492 414296762 712978001 53525374 72500700 195720222 660135321 557332289 967463544 994485369 201604975 257209886 575226742 294199762 340317010 766661360 51603822 121620373 922186975 615579334 392078817 213614675 175784120 876069727 690279668 98081361 969144902 504969997 181188485 287474330 986919258 599846627 971907133 179987515 918343871 89674571 510134168 192837894 369140290 294560053 949689188 403488032 398684152 874268272 640559510 578349264 137593274 526587457 109490576 389076392 911138051 387875422 927951631 330228862 660135321 347883121 312934894 250004066 233070389 701328592 526467360 898047478 169779270 942963756 871385944 357130590 197881968 418980545 906334171 338395458 851930230 336233712 482992246 390397459 826829957 950649964 981394796 588317315 568141019 578949749 465337987 46920039 893243598 562496460 356530105 443480333 114294456 84150109 407451233 545322589 487555932 221060689 675988125 900449418 179987515 225143987 29145683 560935199 27704519 322422557 477227590 119098336 627829228 574746354 705892278 453088093 430149566 546643656 819504040 477347687 651968725 716100523 211933317 662657358 338875846 770024076 283270935 350525255 126544350 129786969 71179633 87392728 967223350 463656629 666380365 416218314 836557814 246641350 143958415 383672027 303567328 548925499 473864874 298042866 421022194 699046749 755732533 335152839 66135559 262854445 631312041 681512587 906934656 886277972 884956905 928552116 727870029 660375515 170139561 622785154 444681303 571023347 897927381 8729193 353887971 479389336 804852206 853371394 848447417 894684762 483352537 244239410 940561816 561895975 941522592 905133201 625187094 352566904 188394305 230308158 930113377 389076392 595523135 863339445 328667601 189715372 951730837 70699245 952331322 633113496 126544350 801729684 361213888 532712404 397363085 60731194 535234441 691840929 316417707 255048140 388596004 149843168 278226861 327826922 949208800 240276209 951490643 808214922 313655476 395801824 917983580 623625833 633353690 478788851 244479604 263454930 203526527 576307615 374664752 420061418 174823344 16895789 202445654 754531563 615579334 992323623 872827108 930473668 119218433 102284756 499445535 960618015 241837470 412495307 84630497 800408617 624466512 583873726 344280211 788278820 116576299 602368664 26263355 229107188 330469056 566219467 99642622 61571873 386434258 36351503 211452929 752249720 635635533 725948477 246281059 412975695 796085125 905853783 341998368 859616438 515418436 106368054 352446807 508092519 79826617 809415892 292158113 757413891 51964113 932995705 610295066 581711980 301045291 400245413 956414620 678390065 971066454 969505193 743242445 984157027 128826193 903331746 227666024 720784306 110211158 234991941 677909677 193438379 492840200 744563512 546163268 860337020 260212311 986078579 336473906 794643961 924588915 604170119 808335019 907535141 741440990 985718288 689559086 270420556 137232983 112973389 198602550 440958296 485394186 366858447 241717373 892523016 985478094 623145445 57848866 493680879 619662632 758734958 75863416 923988430 593121195 69137984 212293608 154526951 545082395 934797160 979713438 657853478 660495612 691720832 906454268 418380060 490318163 828631412 523945323 869704586 216857294 185031589 572584608 775548538 491038745 190315857 814339869 68657596 202205460 81748169 718382366 23140833 965902283 320621102 101924465 313175088 345601278 471102643 689078698 880273122 673345991 451526832 881714286 893483792 555891125 82228557 431470633 842682761 830312770 366257962 660375515 763658935 786717559 941042204 424264813 187553626 216136712 327947019 937919682 965061604 67816917 122461052 311493730 955694038 219379331 739279244 914260573 490077969 947047054 155848018 907415044 901530291 308491305 84390303 369980969 857454692 268138713 41875965 272702399 689318892 12452200 490678454 911498342 752249720 717661784 682713557 680311617 86672146 294920344 967343447 363135440 570663056 611375939 349684576 803170848 780832806 231389031 514097369 50282755 331670026 952931807 5726768 663858328 692801705 335633227 653650083 104206308 487555932 127144835 222862144 717901978 848207223 626267967 876670212 630831653 283871420 784916104 426906947 87392728 457891973 401086092 166296457 308611402 252165812 985958482 743842930 801729684 773386792 191636924 800528714 907655238 593721680 109490576 763779032 915701737 389196489 554449961 485754477 304408007 313535379 588797703 209651474 726188671 13052685 505210191 825869181 965782186 136992789 994725563 899008254 758374667 350525255 327947019 648365815 823587338 636476212 153686272 654730956 637316891 634554660 940201525 546763753 470622255 423664328 748286519 853611588 467860024 911258148 602248567 987159452 937439294 150323556 591319740 664578910 190916342 259251535 480590306 798847356 143598124 112853292 21219281 829111800 695443839 237033590 598885851 404448808 962179276 553008797 29866265 576908100 779992127 774948053 629870877 530910949 700247719 873787884 453448384 448164116 742882154 672024924 254807946 118137560 468100218 353887971 296841896 835116650 623986124 660495612 951130352 732193521 186232559 579670331 669622984 583153144 737958177 121980664 318819647 733994976 385113191 677549386 645123196 688718407 737838080 191516827 296481605 972507618 500646505 387154840 695563936 765340293 765820681 923988430 651608434 363255537 163774420 563577333 109730770 396762600 553729379 648485912 691720832 144678997 206769146 490678454 205087788 284712099 958095978 304768298 969505193 730632260 216136712 868623713 807134049 704571211 472663904 16055110 978632565 753570787 532712404 2844440 935998130 427867723 446843049 313415282 185752171 840400918 109970964 566459661 442279363 798727259 494641655 754411466 462335562 64214007 399284637 798607162 849167999 419941321 174703247 152965690 843283246 147201034 115495426 993644690 250484454 736757207 304648201 76343804 795484640 372382909 198362356 169659173 574626257 524786002 134590849 420541806 131948715 437715677 734835655 617981274 407451233 772305919 589278091 936118227 37672570 731472939 829351994 115495426 475185941 823347144 805692885 973108103 332870996 906694462 785636686 587476636 797646386 225864569 934076578 94478451 49802367 380669602 897687187 793923379 386914646 281589577 290716949 779271545 755372242 461494883 583273241 481430985 377787274 344760599 502688154 446963146 797406192 965662089 67456626 512055720 327947019 966142477 290236561 19898214 582672756 804972303 632513011 311493730 573305190 468100218 607412738 437835774 409132591 858175274 420421709 763178547 6327253 295280635 575827227 861417893 190315857 817462391 863459542 537996672 497403886 17256080 654130471 703970726 498364662 672145021 838359269 534874150 391478332 388355810 752129623 554930349 163053838 751529138 419460933 753450690 274744048 137713371 123421828 742641960 717421590 714659359 989081004 635755630 947647539 524786002 970946357 583513435 873667787 948968606 857935080 243398731 273903369 366738350 244479604 275104339 490318163 942843659 175904217 48361203 529830076 894684762 292998792 263454930 42356353 51243531 442639654 814099675 291317434 663377940 853011103 865741385 346081666 501006796 86552049 864780609 288435106 204847594 452007220 966742962 589998673 570302765 803891430 848207223 902491067 920625714 145399579 160051413 232469904 928672213 247722223 730151872 582912950 144198609 674667058 147321131 602368664 721504888 850128775 525506584 664458813 232830195 738318468 339356234 921706587 275584727 292398307 992924108 244959992 277986667 566579758 927110952 184070813 953292098 438196065 426666753 202565751 353407583 813258996 873907981 420181515 1163082 696885003 821425592 59410127 13412976 855653237 378868147 779992127 657373090 161372480 860577214 714419165 465698278 526467360 66856141 648125621 735195946 187553626 317858871 879912831 498364662 63613522 230308158 394961145 546763753 134831043 227906218 16175207 573665481 855773334 288795397 678630259 981634990 931074153 890841658 454409160 994965757 613777879 259972117 646804554 871385944 687157146 103605823 49562173 584834502 63733619 739639535 190435954 36831891 864540415 555650931 606091671 14013461 517820376 63733619 65535074 768703009 484793701 420421709 311373633 559253841 930353571 980794311 353647777 720424015 459092943 583393338 248803096 149482877 872106526 806533564 46559748 7648320 831273546 132549200 519862025 866582064 640679607 649446688 607652932 567900825 699407040 875469242 592881001 111892516 429308887 932635414 775908829 697965876 252526103 476867299 871506041 62172358 126664447 149963265 6807641 38032861 200764296 966382671 478308463 81988363 798727259 364336410 716220620 866221773 964220925 397843473 266937743 892042628 614618558 767862330 293719374 292758598 798126774 754771757 442759751 80547199 286273360 400485607 557692580 849888581 51603822 17616371 330709250 805692885 1523373 230908643 612576909 958216075 410453658 929873183 386194064 94358354 720424015 944885308 105767569 16655595 473624680 267778422 421262388 935517742 403127741 118497851 341638077 68297305 250004066 545082395 596243717 189715372 61932164 800168423 466418860 766781457 561655781 636716406 591920225 337434682 606572059 933235899 663498037 998568667 993404496 200163811 626868452 552288215 771945628 619662632 696284518 624586609 831994128 631792429 297562478 3444925 648365815 633593884 296481605 502087669 978512468 246040865 102044562 977311498 416698702 381510281 738438565 139995214 536915799 923868333 644162420 20018311 547244141 267418131 350164964 535834926 736156722 223462629 697365391 164495002 816381518 341397883 491158842 598165269 750688459 983676639 142397154 84270206 726068574 6087059 280989092 149002489 121740470 464857599 951130352 631071847 852530715 360493306 766421166 77905065 872466817 132188909 900809709 713698583 817942779 791521439 739039050 26623646 372382909 150683847 963860634 632993399 970946357 25302579 960858209 955453844 154406854 207249534 957495493 320140714 445041594 69137984 529830076 478308463 246281059 21219281 596363814 801969878 766781457 698446264 118017463 146120161 188994790 308010917 454769451 334912645 64934589 992323623 887238748 581231592 646804554 876430018 236673299 794283670 193078088 992563817 247241835 494041170 71419827 242197761 470622255 387395034 183950716 945125502 926870758 174823344 469421285 4645895 58209157 150803944 562376363 368419708 58809642 901170000 332630802 908375820 908495917 940561816 703250144 489477484 602248567 220700398 800168423 376826498 327466631 34910339 746605161 364456507 781433291 462575756 864900706 197761871 495722528 48000912 764739808 466659054 858175274 28545198 51844016 4645895 768703009 695083548 775668635 544842201 467499733 930954056 965902283 890841658 219979816 798126774 483112343 486595156 189114887 412855598 42116159 757293794 471222740 845685186 780952903 293959568 726428865 260092214 920625714 860096826 531991822 141436378 501607281 792722409 986198676 777349993 795724834 592160419 985237900 804131624 416458508 566219467 287474330 579430137 969865484 175904217 137833468 901170000 40314704 446722952 475906523 355689426 615219043 713938777 535474635 910897857 744323318 153806369 834996553 71660021 837398493 305008492 188274208 437595580 133029588 985598191 68537499 57608672 14854140 219979816 614498461 509413586 923868333 686796855 113814068 884596614 876790309 973828685 41275480 83069236 487195641 828631412 220340107 290116464 867662937 744683609 325184788 554209767 640079122 324704400 6807641 690880153 994965757 941522592 950890158 410693852 787438141 12692394 380309311 900209224 725708283 880393219 714659359 318459356 5726768 426306462 739759632 6687544 943684338 949088703 41155383 142757445 738438565 491519133 191757021 253606976 813619287 631672332 365537380 927471243 469781576 543761328 841962179 262133863 616179819 667701432 545442686 306449656 277506279 530910949 875589339 534393762 768823106 313415282 568141019 49321979 713938777 93157384 930593765 929512892 450566056 717181396 603809828 702769756 307290335 461374786 20618796 365897671 478548657 69137984 122220858 239555627 416938896 41035286 246040865 698085973 364216313 605971574 670823954 176864993 957855784 209291183 343919920 129186484 755372242 459213040 995806436 315937319 528268815 459693428 792722409 460414010 754531563 497043595 223943017 86912340 961578791 612817103 93637772 490438260 969745387 803531139 400485607 825148599 19297729 320020617 990281974 65294880 19537923 348843897 496323013 953652389 101924465 858775759 758254570 748286519 606812253 521663480 715980426 827190248 808094825 562376363 375625528 8488999 530910949 723186246 946566666 281229286 901290097 706853054 52564598 859376244 681032199 40314704 290957143 15694819 452487608 892042628 939480943 747926228 657252993 331910220 148762295 785996977 402527256 844484216 308851596 342839047 169418979 725828380 626748355 745284094 962779761 136152110 417179090 471703128 511695429 131348230 89074086 240516403 235712523 188274208 316057416 70819342 404088517 739279244 476867299 785516589 640919801 636836503 163173935 313175088 340076816 57488575 325184788 557332289 121380179 695684033 822026077 857935080 236793396 697605585 983796736 216857294 932395220 350525255 598285366 401926771 195480028 488636805 878471667 633353690 555771028 865260997 688958601 244719798 265376482 821545689 27824616 729671484 293238986 682473363 713458389 297802672 675627834 970465969 899608739 173502277 569582183 919544841 80667296 343079241 528509009 440718102 361574179 871145750 498604856 969024805 465938472 98441652 136752595 168818494 615579334 179026739 355929620 960137627 171220434 220099913 643802129 194158961 742281669 321101490 704811405 863939930 160051413 914260573 508452810 301885970 956895008 451286638 688238019 731833230 577508585 476386911 335272936 248442805 835717135 552048021 524305614 697485488 471703128 903331746 781913679 484673604 838359269 444080818 252165812 693041899 470382061 918944356 213134287 146360355 205087788 350285061 800528714 923748236 13653170 716460814 827790733 548445111 309211887 3685119 370581454 128826193 982835960 726789156 875229048 694963451 314736349 440838199 686796855 183230134 662176970 691961026 936118227 819984428 21099184 687397340 925789885 562736654 757293794 642481062 725347992 247602126 14253655 38633346 638637958 71299730 57008187 476867299 931554541 327106340 847126350 148882392 743362542 660495612 28064810 673826379 697485488 588197218 602488761 255408431 400845898 767742233 326385758 717901978 140955990 850368969 151764720 553849476 33469175 65535074 658694157 50763143 972267424 667701432 621103796 884716711 960137627 755132048 817102100 33469175 237153687 464377211 13292879 960978306 898768060 655091247 432551506 73341379 255288334 328667601 474225165 522023771 399044443 348723800 717541687 479269239 540518709 774707859 562736654 39474025 604290216 885797584 744203221 440838199 424384910 605010798 337674876 634194369 910297372 237033590 761256995 289756173 254447655 207129437 636596309 231148837 519621831 450205765 632873302 967943932 996046630 608493611 972387521 786357268 969865484 300444806 78985938 78745744 8128708 123662022 15214431 284952293 895765635 226945442 533312889 513857175 932755511 692561511 809415892 699527137 982595766 19417826 230788546 28425101 433872573 72500700 740720408 752610011 764379517 804491915 180227709 160651898 167497427 253126588 151404429 923748236 229467479 642601159 230668449 700127622 849768484 465938472 410813949 960017530 996647115 557452386 198482453 579310040 971546842 769183397 357971269 331189638 912819409 158610249 623866027 62532649 374064267 685836079 699647234 74542349 827430442 689679183 522384062 435794125 790920954 796805707 591559934 224543502 697125197 748646810 18096759 173862568 538597157 540638806 872466817 803771333 467499733 452847899 653529986 274984242 839560239 349204188 189355081 821065301 502808251 145159385 934196675 902250873 897446993 712017225 709495188 164014614 891802434 26863840 663137746 858895856 382951445 553609282 623505736 312214312 387395034 547364238 819263846 36951988 706372666 70579148 250484454 930833959 896606314 63613522 186472753 551807827 891922531 481791276 468940897 746124773 862018378 630471362 570783153 566699855 341157689 443120042 399524831 564057721 557692580 452967996 442159266 788278820 217217585 520342413 908976305 961218500 296601702 441318587 870545265 846045477 311854021 695563936 219259234 362174664 254207461 219499428 938039779 900329321 321221587 578229167 192837894 886758360 321581878 895285247 674667058 636356115 817222197 494521558 260692699 819023652 195840319 798847356 401086092 585434987 109610673 567900825 105527375 479029045 56647896 157048988 159811219 913299797 121380179 609454387 104326405 811577638 441919072 142997639 774347568 447203340 427627529 621584184 965902283 426786850 648005524 80427102 999529443 58209157 882554965 7528223 613777879 32388302 15694819 65535074 545682880 457291488 227545927 864780609 869104101 314976543 601287791 641880577 604890701 523224741 580751204 784675910 858775759 873787884 578829652 17616371 775548538 678870453 622064572 518781152 271621526 917383095 111171934 932275123 445041594 86552049 375985819 162693547 849528290 733754782 270180362 633713981 885557390 878591764 313895670 885077002 31427526 616299916 371181939 838119075 902250873 101924465 658694157 299003642 574265966 656412314 104686696 279908219 425585880 879192249 650887852 811217347 902971455 107569024 10530648 912699312 806173273 411894822 903812134 670823954 586876151 925789885 601047597 645603584 124502701 957495493 790440566 820945204 667701432 200043714 16055110 844844507 312574603 365657477 60491000 513496884 811937929 346562054 190676148 219619525 865260997 129066387 756212921 898047478 502928348 251084939 666860753 154286757 763538838 818783458 999769637 694242869 512896399 769903979 112012613 329748474 767982427 591559934 691120347 535114344 435313737 711416740 921466393 619662632 261653475 664699007 154166660 583153144 763538838 252406006 123181634 862138475 534033471 835837232 312694700 815781033 29746168 389316586 986679064 212533802 2604246 707453539 10170357 508693004 612456812 725468089 513737078 629750780 711176546 619902826 121260082 105767569 675387640 463536532 208930892 755011951 674306767 554930349 277025891 812898705 804371818 966262574 506050870 321822072 396042018 831633837 912579215 27824616 999769637 772185822 96159809 632873302 285552778 473384486 186352656 837398493 565378788 175423829 998448570 616660207 40074510 34189757 696164421 312814797 97240682 381630378 190075663 140835893 803651236 549766178 494281364 598405463 283511129 284231711 85951564 901530291 985237900 401566480 310172663 391598429 258050565 536795702 885197099 910297372 759815831 297082090 695443839 136752595 166056263 243759022 226825345 733154297 741320893 145879967 369260387 358211463 153325981 377667177 935517742 398564055 727029350 344280211 293719374 978752662 874268272 147921616 445882273 851089551 231629225 617020498 793202797 190435954 79706520 963380246 459213040 553729379 323503430 402166965 741440990 175183635 801489490 900689612 736757207 928912407 407691427 729911678 442639654 723546537 275704824 8008611 280508704 28425101 222381756 415137441 172541501 359532530 608493611 570062571 932995705 905493492 492359812 641039898 534153568 922307072 672024924 822626562 718862754 274023466 808695310 620383214 4645895 452367511 358811948 545802977 723426440 354368359 907054753 604170119 158970540 489237290 535474635 408171815 997487794 49802367 479749627 933836384 326986243 975149752 954973456 796565513 718622560 965301798 608373514 534874150 218178361 982835960 343199338 908135626 452607705 712857904 174583150 615219043 421742776 365537380 643922226 696885003 593721680 828631412 843283246 823707435 982475669 333231287 493200491 764019226 673105797 325304885 880633413 759815831 298883545 890481367 904652813 323263236 427867723 430990245 684875303 652689307 95199033 5246380 80186908 437475483 198122162 257450080 441798975 572224317 461254689 41275480 486354962 746605161 343559629 89674571 236673299 769183397 122340955 940201525 317858871 80066811 193318282 547364238 570062571 675507737 901410194 632392914 915821834 273182787 253847170 466659054 298523254 680191520 20618796 714299068 311253536 968664514 116936590 744323318 736156722 40074510 204367206 215416130 98922040 641039898 738678759 557812677 390877847 289035591 112372904 262614251 588677606 478428560 573064996 437955871 72020312 180708097 949448994 460774301 942843659 610535260 712137322 149602974 263334833 728350417 867062452 598405463 846525865 918463968 401326286 110331255 57488575 999769637 281589577 694843354 524305614 75383028 254567752 822866756 240516403 667821529 59650321 305248686 781313194 344520405 841481791 84270206 229587576 300204612 369620678 183470328 103245532 151164235 109130285 861417893 499445535 557332289 280388607 624946900 544361813 58929739 955213650 269940168 617380789 461134592 473504583 923267848 85110885 346922345 191997215 35510824 173622374 239675724 629870877 369860872 681752781 698926652 811097250 671544536 506771452 737597886 478908948 68417402 509773877 363735925 417659478 584474211 213134287 458972846 340677301 334552354 277266085 561295490 768222621 438316162 429909372 533553083 844484216 412615404 576427712 903932231 631672332 846165574 675507737 833675486 69498275 561055296 962779761 884836808 269579877 886878457 111772419 845685186 723426440 961218500 366978544 345000793 537276090 94238257 99642622 569582183 932995705 993044205 358331560 573305190 60851291 49562173 406730651 785276395 59410127 384032318 550366663 795724834 232710098 728950902 458372361 325785273 356049717 496202916 371061842 347642927 701929077 937319197 499085244 195960416 246761447 552048021 428828499 345361084 945966181 325424982 834155874 356890396 944765211 465458084 324944594 44638196 207489728 299724224 547964723 980073729 744443415 801849781 344400308 417058993 346802248 40074510 541239291 605250992 254207461 316417707 569822377 430629954 140955990 10050260 612817103 295400732 990402071 346321860 723186246 523945323 347402733 429789275 847246447 172421404 854091976 797165998 618942050 978272274 835957329 333471481 288315009 795124349 640439413 605731380 833555389 236072814 190315857 948848509 108289606 308851596 298283060 7768417 928311922 735796431 794884155 791161148 716220620 644402614 445642079 49081785 553008797 403848323 502568057 666980850 164975390 699887428 556011222 450205765 469661479 101564174 418620254 559974423 170619949 299604127 978032080 392319011 255288334 908255723 513376787 862258572 389196489 789119499 619542535 853971879 847126350 223702823 844604313 34189757 362655052 457651779 926270273 270060265 158490152 812898705 173021889 598525560 466779151 103725920 425345686 390757750 880993704 394000369 135671722 553128894 327226437 259251535 488756902 705051599 222501853 268739198 474825650 44998487 824187823 279668025 289636076 156088212 691840929 18817341 848567514 145039288 861537990 91476026 22900639 413936471 734595461 449965571 973228200 730031775 855292946 721264694 419581030 806293370 753931078 434953446 110571449 636836503 670103372 254207461 350525255 812298220 264415706 787678335 610655357 88233407 463416435 576908100 474105068 731593036 611736230 830552964 126304156 985958482 476867299 843043052 422463358 91355929 701929077 761857480 261413281 829111800 265256385 41035286 519741928 301645776 188394305 491038745 57248381 41395577 259011341 571984123 870785459 795604737 588677606 465458084 192837894 712857904 244839895 652569210 410693852 561295490 249043290 256609401 959537142 730031775 300324709 103125435 960618015 163414129 97841167 679110647 186712947 35751018 560695005 418860448 603449537 453328287 644042323 186112462 882314771 973948782 758855055 354368359 940201525 504249415 224303308 122701246 547724529 432551506 928311922 925549691 123301731 173502277 36951988 288915494 672745506 468820800 902250873 187913917 641760480 931554541 348723800 866341870 341157689 517940473 199082938 648125621 352086516 863339445 68777693 414777150 270900944 518300764 498965147 563697430 67696820 541839776 446122467 713818680 73701670 998928958 379949020 457531682 226945442 432551506 808935504 899488642 587596733 623745930 211452929 882434868 18096759 515418436 50643046 955694038 506651355 137112886 977911983 788639111 445041594 554930349 484913798 234151262 345601278 797045901 593721680 345601278 678630259 874388369 741801281 472183516 323743624 538837351 967823835 394000369 429188790 716821105 611856327 18336953 992924108 51723919 203766721 997487794 427387335 653529986 740240020 55807217 938279973 590118770 774107374 606211768 836077426 166056263 687637534 191396730 858655662 915341446 777109799 984637415 838839657 491759327 121620373 266577452 4285604 510974847 167017039 161132286 111412128 592760904 858295371 675627834 926270273 150203459 737357692 840040627 67937014 417299187 926510467 84270206 163654323 633834078 501727378 923628139 873787884 228746897 310653051 502207766 470622255 843523440 723906828 917503192 69258081 832474516 713458389 580631107 636356115 687877728 441919072 561895975 629630683 924468818 394961145 447323437 476987396 441198490 841962179 32628496 71780118 624826803 951971031 217097488 28665295 27584422 208810795 861778184 636956600 416458508 408652203 792962603 429188790 20618796 540278515 914981155 107569024 727029350 760536413 949929382 741561087 782033776 269459780 901890582 466659054 776989702 648606009 862498766 446482758 560695005 890361270 321221587 654610859 466178666 763298644 389796974 995806436 634074272 729551387 65655171 969385096 637557085 79586423 914260573 744443415 501246990 275584727 390757750 634794854 850849357 194879543 35270630 938640264 307290335 88713795 49201882 829592188 404448808 917142901 102524950 771225046 967823835 583633532 363615828 268378907 326746049 190556051 697965876 223102338 982235475 768102524 516739503 36711794 239435530 712737807 286393457 540999097 448884698 604770604 45839166 345000793 656652508 764259420 131348230 392439108 967823835 48961688 664218619 626027773 860216923 993644690 669983275 435794125 641280092 998328473 747085549 344760599 206048564 914861058 176744896 760296219 120539500 418139866 606091671 251565327 823587338 310773148 395921921 632993399 584113920 979353147 425585880 767622136 806293370 627949325 129786969 584474211 67576723 518300764 331790123 733034200 434593155 437235289 968904708 703130047 512295914 177345381 404208614 310412857 972507618 497764177 155127436 32028011 372262812 97240682 132188909 40554898 951250449 541479485 81387878 721985276 213494578 837158299 226344957 591559934 158850443 639118346 982235475 895765635 73101185 211092638 235832620 184791395 245920768 601287791 141316281 303447231 601768179 224063114 233790971 649927076 257930468 365056992 118497851 907655238 542200067 709014800 99762719 568501310 769063300 147080937 860457117 713578486 119698821 48481300 336353809 859616438 69978663 143958415 425225589 938039779 361694276 402647353 506531258 818182973 713338292 852650812 308611402 379588729 874868757 699887428 913059603 354728650 764980002 282550353 994125078 129306581 55687120 27704519 543160843 182149261 35390727 229347382 238594851 495962722 430269663 188394305 105767569 463296338 687997825 372262812 216497003 261052990 348963994 739039050 712857904 46799942 994725563 798487065 315096640 848927805 126784544 374664752 802210072 841481791 361814373 820825107 5486574 346802248 775908829 835476941 549405887 979112953 940802010 244359507 945966181 648846203 49321979 767261845 788759208 963980731 548805402 365056992 286513554 15694819 945245599 652689307 239435530 725227895 501367087 559373938 466178666 112493001 79706520 246761447 97120585 510014071 404568905 570542959 969865484 199683423 828751509 761377092 682694 519982122 475546232 318939744 242197761 25903064 692201220 70819342 6927738 988120228 202565751 807614437 291917919 972507618 390277362 898527866 194399155 672145021 277986667 30346653 234031165 955934232 635875727 459092943 895285247 975269849 676948901 167617524 20018311 348723800 124142410 636956600 412735501 483472634 60370903 657373090 205087788 744683609 565378788 634434563 908736111 542320164 152965690 349084091 810496765 314736349 864780609 992323623 133750170 989681489 156088212 309452081 991242750 777590187 969745387 443840624 630471362 771825531 170980240 749007101 255888819 728590611 324103915 686676758 117416978 340677301 892763210 134590849 774587762 67816917 709975576 502568057 477948172 734355267 633473787 800048326 298763448 848447417 321942169 609694581 181068388 143958415 352927195 53285180 892162725 957375396 691240444 46679845 563817527 31667720 769303494 433512282 927711437 163774420 677189095 582552659 87272631 208690698 522023771 667581335 736396916 169058688 681152296 675988125 805092400 305729074 157769570 635635533 510734653 629390489 452367511 868623713 388596004 757413891 289756173 659654933 654971150 168338106 692921802 310532954 933235899 121380179 854812558 584474211 111171934 208090213 161492577 436874998 323263236 699407040 221420980 953051904 883996129 149843168 239075239 218178361 635155145 420421709 374424558 321461781 373944170 837278396 484673604 64814492 233310583 210251959 698926652 216857294 355689426 207009340 933596190 720183821 112973389 425585880 773026501 778671060 954493068 122461052 290716949 233670874 150563750 445401885 466058569 43317129 791641536 652088822 144318706 173742471 152845593 548204917 589278091 672625409 286513554 706612860 471342837 38633346 106247957 90034862 123181634 519982122 37072085 825989278 210972541 436754901 106848442 547844626 580030622 839560239 663377940 570182668 210612250 910297372 274503854 40194607 106968539 109970964 239915918 793202797 903812134 506411161 932635414 958936657 846045477 161972965 330709250 415617829 641520286 860577214 981634990 463896823 338395458 124142410 472063419 542320164 239915918 88113310 152965690 588197218 117777269 237513978 862859057 622064572 248202611 127625223 287354233 709495188 495001946 529830076 766541263 114174359 759815831 674306767 658934351 369860872 424625104 735075849 796565513 271141138 603569634 913780185 348243412 390517556 796805707 74302155 691961026 614258267 711536837 974429170 132429103 369860872 738078274 524065420 981394796 600086821 20498699 574025772 299964418 485874574 74422252 623505736 979593341 78865841 701929077 135911916 689679183 774827956 619662632 314976543 626988549 840881306 589278091 367458932 651968725 86311855 195119737 784916104 745284094 392078817 275224436 629990974 560334714 80787393 99642622 963740537 347642927 288074815 162453353 63733619 568020922 86552049 322062266 659534836 139154535 295160538 226465054 420061418 227906218 471102643 356289911 514337563 739279244 413936471 905253298 732433715 825749084 2844440 441798975 637436988 786957753 581591883 338635652 96520100 954493068 947167151 26863840 68057111 688838504 719583336 665059298 521423286 697725682 889520591 262013766 629870877 725468089 530670755 589638382 327826922 284832196 704931502 66856141 493680879 144799094 25782967 627589034 41395577 358691851 648485912 403728226 799567938 957135202 149242683 815781033 302846746 316898095 187913917 456450809 69858566 403007644 547724529 493800976 614498461 88353504 571503735 131588424 227185636 405049293 507251840 639478637 530550658 377547080 503648930 887839233 381630378 73941864 672625409 331549929 941522592 151044138 386914646 780232321 617380789 151644623 337674876 822626562 589878576 466298763 31067235 975630140 984277124 10890939 574746354 184551201 617981274 662897552 649086397 281469480 485994671 394961145 402887547 204967691 729791581 927951631 193918767 509413586 419220739 823707435 347522830 546163268 889280397 60250806 212653899 983796736 32028011 453808675 853011103 424144716 546163268 424144716 961338597 322782848 307770723 139755020 278587152 424865298 605010798 993764787 716460814 950169576 891802434 9569872 336473906 952211225 101083786 883035353 558052871 351606128 819864331 555650931 622424863 485274089 897206799 268979392 599486336 66015462 468340412 606692156 459573331 543280940 223582726 879912831 785516589 604530410 5966962 752850205 932515317 461614980 156328406 707693733 147561325 618101371 624106221 917863483 962179276 691840929 583993823 345000793 192837894 592400613 845685186 144558900 104326405 266577452 698326167 51723919 202085363 943324047 840280821 230308158 673706282 864900706 562856751 680311617 556731804 92797093 102284756 834035777 985958482 779631836 394000369 165695972 764499614 911017954 346802248 394480757 240876694 384872997 883275547 738438565 975750237 276905794 516018921 85351079 660495612 326746049 674787155 409853173 756333018 37192182 508813101 408892397 399404734 895645538 834396068 975990431 866341870 706132472 903812134 795004252 217577876 396042018 89914765 991723138 103005338 202205460 457291488 942603465 39113734 760176122 330949444 844364119 294560053 102885241 155968115 758374667 644762905 674306767 326986243 127625223 741080699 926750661 866582064 446242564 843523440 996767212 274023466 415137441 41275480 104086211 478428560 666860753 415617829 414416859 465337987 109130285 527308039 928912407 494761752 326505855 390877847 602488761 922307072 927711437 642360965 7648320 126424253 819263846 488876999 174943441 506170967 956774911 311613827 453568481 919785035 412735501 65174783 127264932 586395763 361454082 822866756 336954294 236192911 328787698 330709250 795844931 977311498 673946476 310172663 208690698 624826803 281829771 431710827 207729922 929512892 816261421 685115497 818062876 995326048 793202797 210852444 818903555 538597157 853971879 318939744 831393643 212533802 528869300 416098217 21339378 386434258 635755630 307170238 204247109 642601159 865981579 86912340 947287248 57848866 192957991 792602312 901770485 711296643 228266509 488516708 953292098 709254994 987159452 766180972 319780423 16055110 743122348 639478637 940681913 624346415 439877423 981995281 421262388 709975576 338515555 395681727 416098217 280268510 85951564 997127503 340076816 373944170 88713795 566219467 502688154 129306581 789599887 562016072 742281669 326505855 257810371 133149685 169058688 419701127 988840810 780352418 635515436 176024314 125223283 436514707 474465359 606331865 866942355 603809828 851329745 579069846 710335867 383071542 297682575 217457779 830913255 265736773 337674876 194759446 817702585 238354657 258651050 222621950 146720646 846165574 379949020 944645114 175904217 640919801 653409889 372022618 308851596 757894279 851209648 895285247 62772843 726308768 649566785 878591764 380309311 715139747 131708521 259852020 684875303 95919615 329027892 657252993 652088822 497523983 117657172 561055296 845204798 803411042 43557323 391238138 194519252 764019226 581952174 436514707 367098641 543761328 367338835 905613589 920625714 289275785 424865298 33709369 407931621 707933927 45959263 969144902 804371818 483953022 943444144 551087245 507732228 816501615 694483063 127385029 84630497 239195336 203646624 320861296 51964113 540638806 54846441 369860872 20378602 101924465 458852749 650767755 885437293 300564903 511695429 277746473 112493001 524065420 408652203 398443958 651368240 952571516 203286333 645123196 459092943 353287486 224663599 876430018 925309497 260212311 14133558 889520591 917623289 207009340 962419470 715980426 893844083 480109918 913179700 777590187 311733924 267418131 692681608 692441414 750328168 842082276 425105492 227786121 445882273 628910101 764379517 928311922 985357997 270540653 422343261 188994790 269339683 248562902 31667720 368659902 114054262 347162539 916902707 688117922 510014071 756573212 686916952 47400427 745163997 771945628 499805826 928071728 946086278 530430561 890721561 503648930 180107612 821545689 576788003 674546961 520222316 683554236 689438989 557932774 873187399 667100947 746605161 364816798 776509314 69378178 357010493 641760480 348003218 666740656 824668211 858175274 445521982 601527985 848687611 728830805 800648811 735796431 200043714 214935742 373824073 756212921 396162115 644762905 353887971 955093553 959176851 608973999 808455116 483232440 251445230 448764601 951850934 801489490 222982241 291917919 760296219 385113191 143478027 375625528 81748169 17616371 711536837 756212921 147801519 195960416 49802367 321942169 997367697 748887004 172421404 434232864 682713557 617260692 371782424 689559086 104446502 524906099 549045596 294079665 628549810 146960840 223222435 629510586 709615285 250844745 128105611 570783153 243638925 792362118 18336953 479869724 865140900 61691970 22660445 539317739 972387521 728350417 450926347 268619101 459092943 376706401 911618439 508933198 390157265 623265542 96279906 895525441 597324590 641039898 806533564 442879848 40434801 573545384 476627105 208930892 272222011 347642927 356770299 445882273 831273546 507852325 665659783 943564241 94238257 881233898 26863840 290837046 641640383 358571754 703130047 4045410 214335257 719343142 972507618 525866875 581832077 196560901 427147141 305128589 576908100 11971812 506531258 911978730 173982665 75623222 931794735 666500462 322182363 832594613 356770299 463176241 557932774 977071304 309932469 584354114 769543688 237393881 75983513 96039712 580991398 915701737 519741928 711777031 450205765 905733686 264415706 576547809 344880696 569101795 969745387 898647963 408892397 512656205 679831229 883635838 600927500 411894822 692801705 644162420 49922464 315577028 844724410 86912340 673345991 73341379 637316891 597084396 675267543 691600735 152004914 625907676 382350960 578229167 188994790 307410432 857694886 756573212 402527256 462575756 424144716 331309735 767502039 722345567 679831229 777109799 171580725 953652389 419100642 562136169 470982546 506170967 729431290 860457117 51603822 285913069 441438684 846525865 972387521 939240749 355449232 936238324 457651779 931194250 232469904 219739622 755492339 45118584 680311617 176985090 680912102 633954175 192117312 453568481 873187399 526707554 964821410 48961688 313655476 958696463 276065115 7528223 716220620 133630073 354848747 175303732 384272512 384872997 426306462 663498037 750208071 916422319 8248805 385353385 385593579 564538109 189355081 461735077 150563750 779631836 187313432 785396492 760176122 422103067 852530715 696044324 369020193 892883307 145879967 200764296 102885241 718502463 618701856 160411704 135191334 8849290 281469480 755252145 852290521 486114768 51844016 627108646 543521134 339836622 482992246 32148108 374184364 121380179 48000912 174703247 577748779 853491491 264535803 390637653 834275971 33469175 647284942 217457779 373703976 961218500 614378364 39233831 169418979 645483487 602008373 301165388 448044019 48361203 459092943 834996553 771705434 240276209 206408855 673586185 150203459 550366663 492119618 282910644 793202797 482031470 178306157 632753205 840400918 256008916 420421709 403127741 473984971 712737807 187553626 990041780 702169271 60851291 305248686 622905251 807614437 414897247 540398612 790440566 334552354 449244989 174342956 591439837 428107917 295400732 932034929 32988787 665419589 879192249 80427102 708294218 643561935 419100642 585434987 910777760 965782186 12091909 525506584 18937438 93757869 249523678 537396187 708054024 337794973 794283670 125583574 216617100 654730956 996647115 297442381 800048326 685956176 763779032 373583879 798006677 926030079 17736468 953892583 569822377 416458508 593121195 660375515 644762905 98201458 970465969 373343685 993644690 240036015 883876032 329508280 483832925 665539686 281949868 482031470 977551692 660255418 114054262 552888700 143237833 668061723 75503125 120539500 205448079 374544655 198722647 653049598 512175817 313535379 112132710 709855479 133149685 986799161 419701127 959176851 283150838 838959754 837038202 788519014 84870691 939601040 598285366 702169271 92676996 870905556 927591340 629390489 188874693 915101252 559253841 550967148 885917681 548565208 292278210 484553507 648365815 635515436 195960416 645843778 282430256 448764601 944525017 379949020 481911373 234151262 13292879 110811643 878831958 8609096 597925075 53165083 637917376 257810371 447443534 920025229 740240020 338755749 938400070 839320045 420902097 711897128 427867723 15094334 409733076 614618558 346321860 289756173 84750594 658814254 59530224 473864874 781673485 660375515 343199338 982115378 833675486 651128046 973708588 294439956 745284094 963500343 45238681 872827108 643561935 240876694 51844016 25542773 48481300 394120466 113934165 25903064 471823225 183470328 324824497 194158961 555410737 298763448 745524288 403247838 881113801 601167694 954973456 748766907 295400732 311493730 186953141 52324404 187673723 642240868 567540534 627709131 872707011 360973694 922547266 318339259 675147446 559253841 431710827 403367935 75863416 278106764 983676639 516739503 959056754 642240868 104686696 952931807 559494035 36591697 638637958 179627224 339236137 587596733 864540415 807974728 780832806 578349264 743722833 349564479 172061113 74542349 660495612 438916647 594682456 785156298 309812372 69978663 905493492 541479485 533913374 13052685 444561206 551207342 582792853 291077240 258290759 230668449 449365086 704451114 540638806 715019650 33829466 637557085 150924041 17496274 241357082 430389760 712017225 462815950 581111495 815781033 294920344 416458508 371422133 421502582 345841472 29505974 537516284 67336529 257450080 533673180 906694462 825869181 678269968 659414739 794884155 200163811 925429594 220460204 178666448 962419470 188514402 470021770 524425711 376946595 417179090 492960297 516859600 244359507 263695124 267538228 584954599 298523254 198242259 870184974 895285247 182269358 467019345 853491491 720664209 742521863 783354843 487916223 349084091 318219162 245320283 151404429 810857056 595763329 333591578 501126893 817222197 810616862 682713557 903211649 960137627 359772724 208570601 177585575 863459542 812778608 669622984 528268815 531271240 697125197 539197642 304047716 896966605 247962417 389556780 985958482 397122891 141676572 815420742 343679726 801729684 924348721 862738960 978872759 113093486 769903979 456090518 529229591 28305004 732794006 902130776 298283060 445882273 478428560 667821529 148402004 744323318 785876880 142757445 886037778 70098760 505450385 85230982 493680879 845204798 112132710 753450690 516499309 202325557 289395882 992683914 247001641 917503192 810376668 417779575 964100828 345120890 716821105 306089365 433392185 977671789 127505126 106007763 337674876 941402495 548565208 438075968 934797160 583513435 617981274 984277124 770984852 704090823 911978730 726308768 856854207 32628496 153926466 335993518 434112767 435674028 237874269 662657358 780472515 322662751 741561087 492239715 919905132 3925313 355209038 639718831 969625290 32508399 598645657 330589153 782634261 997127503 832954904 957255299 360253112 130387454 643201644 145279482 752850205 871145750 59169933 530070270 738318468 182629649 676828804 418740351 127625223 29866265 296361508 492359812 59530224 995566242 503769027 886277972 460894398 834035777 613297491 120059112 401926771 714299068 686796855 931914832 291077240 425585880 424625104 410453658 569822377 998208376 623866027 527908524 624466512 232590001 196921192 933355996 581952174 649086397 860697311 841361694 834275971 322062266 87032437 852410618 6567447 546043171 567900825 557452386 454168966 859376244 856253722 419340836 932875608 563217042 255288334 832954904 453208190 639598734 983196251 780112224 249043290 481671179 488756902 274383757 366978544 311613827 954493068 645243293 96520100 540999097 184431104 378147565 502087669 592280516 531151143 928792310 220580301 987880034 66495850 681512587 18457050 973348297 698806555 853491491 906694462 848207223 194639349 71539924 850489066 801849781 369740775 852410618 166296457 840881306 285192487 225384181 804011527 753450690 887238748 179747321 386554355 927831534 678630259 667221044 355569329 547964723 709014800 368659902 250244260 264535803 288675300 219499428 903211649 857814983 741080699 53645471 865621288 439156841 403247838 35991212 810616862 129426678 164495002 301045291 633834078 616299916 46920039 393640078 328307310 541119194 403007644 136632498 898527866 236433105 947167151 432791700 89674571 801009102 770144173 311133439 285792972 441318587 813859481 104086211 240036015 492600006 20498699 465818375 577148294 664578910 562856751 347883121 962059179 401086092 754051175 889880882 642841353 369620678 672265118 265616676 1403276 187073238 252766297 10770842 360733500 830432867 116696396 388235713 220460204 888319621 167857718 766180972 867903131 329868571 423784425 5006186 372743200 128225708 261773572 495242140 361333985 235232135 599126045 574626257 720303918 285792972 916062028 880393219 318939744 831994128 241717373 661576485 696404615 296961993 303927619 217097488 586275666 580270816 661936776 29145683 976470819 426426559 192717797 203286333 435914222 1163082 797886580 667701432 295040441 737838080 252646200 848687611 168097912 566819952 387395034 322782848 494881849 825148599 70699245 905973880 662297067 226104763 512656205 212173511 654730956 743242445 62772843 751048750 201244684 742641960 111292031 390877847 254447655 248923193 558773453 464377211 738918953 83549624 466899248 655211344 574986548 121260082 702049174 342839047 392198914 952331322 940561816 642000674 844724410 341998368 71419827 317378483 659775030 185752171 467619830 223702823 815420742 333111190 484673604 411534531 277145988 467019345 599726530 722345567 73941864 666860753 304768298 662657358 305008492 476386911 439637229 570302765 916422319 918824259 393519981 413936471 539557933 712377516 252165812 290957143 169659173 128946290 330949444 768703009 278346958 334192063 194759446 32268205 885557390 507371937 528989397 137473177 987159452 854212073 984757512 806653661 517099794 18096759 677909677 315096640 583633532 359172239 387755325 984637415 879912831 513977272 429308887 276905794 873427593 758975152 503168542 465938472 178065963 691840929 97360779 206528952 234991941 731953327 808094825 182989940 639118346 995085854 302006067 359172239 124382604 333471481 241236985 64334104 36951988 950289673 172781695 32868690 962899858 954012680 784435716 681992975 213374481 990161877 429909372 471462934 193918767 755132048 226585151 481190791 134951140 859015953 315096640 777950478 885917681 947527442 726188671 978872759 985958482 969505193 897326896 136752595 552528409 688838504 573425287 757774182 502327863 558052871 456090518 833075001 51844016 373824073 828991703 226825345 640199219 852410618 822386368 276425406 378267662 447683728 928311922 858655662 494281364 485033895 361934470 262494154 514337563 634434563 252045715 440958296 823947629 927591340 618101371 147801519 154526951 934316772 393279787 604650507 213854869 607893126 161492577 930593765 493320588 547484335 134951140 327586728 355449232 485394186 23260930 338035167 155848018 779872030 43677420 509053295 27584422 99282331 137593274 155367630 65775268 31787817 809175698 719943627 834155874 38633346 923027654 380909796 198842744 123181634 148882392 582912950 664939201 455610130 520342413 901650388 694723257 988360422 586275666 873307496 680191520 535474635 576908100 671904827 466899248 955093553 882314771 977791886 824668211 5846865 436274513 15814916 849408193 497764177 419460933 773626986 556491610 341157689 575346839 130387454 913059603 407211039 521303189 490077969 233310583 82348654 95679421 269099489 364936895 510974847 804732109 547003947 861778184 693041899 674546961 791641536 104326405 698926652 462095368 482031470 441078393 206168661 204367206 590358964 536915799 219019040 983556542 696524712 499925923 930833959 594081971 303207037 267177937 860457117 422223164 879072152 945605890 160531801 9449775 34309854 407331136 90275056 37312279 825749084 20738893 199803520 171820919 550967148 678029774 930233474 740480214 95559324 637196794 891682337 515058145 342598853 145159385 415497732 146000064 753931078 957255299 949448994 644762905 64093910 176144411 141436378 324824497 698326167 160291607 593001098 283391032 871506041 138914341 378147565 730632260 256489304 716460814 340437107 430149566 560334714 963380246 631792429 3685119 736637110 551207342 441078393 993884884 212413705 71179633 627949325 328547504 419821224 685595885 965662089 900809709 57368478 598525560 995085854 288675300 79106035 626388064 417419284 294199762 20018311 218898943 802450266 577028197 965421895 494521558 575707130 100243107 683073848 907535141 40554898 767021651 366978544 716100523 830673061 92436802 238234560 848567514 685355691 376105916 943564241 280268510 720904403 207970116 715019650 565979273 192837894 652929501 964941507 224423405 907535141 622304766 344400308 288675300 376826498 908015529 404689002 87873116 509893974 117657172 759455540 843643537 699887428 338515555 67456626 375505431 618581759 575106645 58089060 655211344 889880882 513256690 619422438 317738774 619062147 680311617 510494459 946446569 793563088 326866146 521303189 681392490 585194793 994965757 515658630 931554541 424625104 973348297 683073848 678750356 801249296 886878457 294800247 598765754 719102948 797406192 418500157 781913679 497523983 291197337 229947867 863579639 488876999 397723376 993764787 540278515 600206918 987519743 859136050 995806436 447803825 523104644 967703738 298523254 90034862 63973813 138433953 319780423 278346958 955333747 749487489 609934775 768342718 977191401 933716287 729070999 255288334 426786850 990882459 107929315 68057111 688838504 810857056 187553626 590839352 882314771 625667482 445281788 745524288 971186551 788038626 170980240 194999640 524305614 138554050 263695124 68297305 303447231 675988125 877630988 909937081 727629835 435674028 282310159 161132286 87272631 582432562 585194793 323143139 776989702 815540839 193918767 837518590 381149990 949088703 284712099 757173697 729311193 943444144 165455778 207489728 934436869 696524712 75022737 995686339 354608553 151884817 603569634 207009340 210011765 605250992 975990431 872466817 667701432 782153873 176384605 586035472 514817951 310893245 769183397 602488761 113814068 911258148 461614980 224543502 536555508 424144716 48241106 998568667 54726344 956895008 331790123 371542230 986078579 172421404 882675062 77064386 188034014 255288334 482271664 816861906 574746354 384993094 378387759 642841353 386314161 77905065 607652932 327706825 656652508 980794311 801369393 984036930 885797584 612937200 764859905 999409346 245200186 359172239 829231897 192117312 929632989 969024805 271501429 968664514 704931502 693522287 401206189 604050022 578349264 743722833 306329559 17015886 174823344 928552116 329988668 559133744 908856208 20738893 326505855 291077240 637196794 385113191 799207647 235232135 113093486 202325557 868743810 274503854 528028621 507011646 499685729 934677063 601047597 414777150 344520405 307290335 152004914 789719984 441919072 56287605 275224436 623025348 234031165 959537142 206649049 163173935 542560358 665419589 899969030 580511010 351365934 421262388 171340531 282550353 867903131 23981512 567060146 734355267 528989397 173141986 321942169 997968182 918343871 601287791 847006253 898888157 387034743 221420980 354368359 115375329 955573941 211452929 254807946 856614013 258050565 687277243 221300883 911378245 27704519 443840624 712017225 574506160 225023890 235592426 464857599 602248567 592881001 543521134 827910830 90034862 322403 134470752 897086702 36591697 558413162 579910525 798126774 993524593 165335681 152004914 33469175 804251721 645843778 302366358 868143325 221541077 937319197 513376787 462095368 578589458 461014495 558052871 410093367 594802553 611976424 447923922 372382909 978032080 850969454 296361508 449845474 544481910 463776726 834516165 883035353 576788003 434352961 729191096 753330593 356049717 130027163 43797517 276545503 713578486 146840743 498604856 234991941 224903793 577028197 776989702 545802977 822386368 968544417 277866570 638637958 566940049 966742962 94478451 786117074 518060570 13172782 515538533 395321436 290596852 953412195 183110037 440477908 240516403 526947748 772906404 21459475 126184059 602248567 622905251 487435835 757293794 733994976 853491491 422343261 602728955 658453963 208090213 52204307 706612860 574386063 687997825 774948053 208330407 425826074 873187399 731112648 335753324 577148294 827790733 804131624 808935504 920865908 937319197 478428560 883755935 164975390 156088212 454529257 219019040 629390489 30706944 895045053 500166117 797646386 77064386 560094520 896726411 162813644 127625223 784195522 773386792 110811643 641159995 95319130 551807827 735796431 967223350 187673723 264896094 769663785 758134473 455850324 707333442 385833773 55567023 859856632 305729074 96039712 634674757 847846932 318339259 740240020 719463239 400125316 804732109 440237714 286873845 302126164 723306343 735075849 802570363 68057111 237754172 182749746 641640383 264055415 131348230 722225470 452847899 290116464 70699245 715139747 230788546 960377821 847126350 16295304 730632260 225624375 720784306 60851291 955573941 327226437 405769875 47400427 330348959 320020617 468460509 240516403 174102762 381750475 369500581 822146174 192237409 91355929 16415401 207369631 541119194 20858990 810496765 787438141 426426559 271021041 745764482 162333256 769543688 727029350 724147022 844964604 647284942 824187823 127144835 318939744 309572178 457891973 120299306 586275666 505330288 282069965 354008068 484433410 80427102 884956905 603449537 430509857 525746778 570663056 727749932 104566599 586395763 400125316 582432562 699286943 861417893 319660326 761377092 688238019 308611402 914861058 574025772 651248143 240516403 848567514 995686339 441318587 308971693 296241411 518901249 998208376 272582302 128706096 207489728 41515674 553849476 547244141 429669178 104206308 694963451 900809709 230788546 512776302 804972303 214335257 350164964 877390794 800889005 955814135 691120347 805452691 956895008 493080394 755132048 166416554 21579572 914620864 313535379 285072390 487676029 952811710 956414620 57488575 147921616 710215770 911738536 533072695 246641350 990281974 571623832 923868333 339596428 763178547 681752781 826469666 146000064 87993213 137473177 672505312 742281669 463416435 366618253 983076154 482872149 151764720 433632379 825628987 443720527 823707435 83069236 359292336 990762362 945005405 804011527 765820681 680071423 498124468 131828618 159931316 437595580 552408312 538837351 268739198 419701127 413095792 237393881 11251230 952451419 704691308 112973389 413936471 749247295 111532225 83429527 262253960 814940354 562376363 928792310 748406616 474465359 858295371 350765449 736276819 483232440 611856327 450325862 949689188 200404005 454289063 129066387 399644928 69017887 48841591 248082514 686916952 938760361 676468513 257690274 406970845 660255418 385593579 284952293 597684881 963620440 722345567 685715982 859736535 146720646 311253536 764019226 260332408 650647658 207970116 618701856 29866265 725107798 570062571 622665057 320621102 894804859 959296948 508212616 138914341 823347144 564297915 794884155 243638925 648726106 356770299 573185093 636836503 36591697 684875303 244959992 70459051 580751204 642961450 310893245 840040627 652689307 430750051 354488456 50643046 42356353 174943441 190796245 341517980 920986005 686316467 332750899 285792972 98681846 278947443 468580606 363015343 269459780 788999402 741080699 653770180 957255299 709495188 552048021 544481910 535594732 105287181 758855055 47160233 648846203 990642265 969985581 568020922 179867418 919304647 598165269 378868147 291917919 62652746 969745387 445642079 601287791 643922226 827430442 130747745 500286214 973828685 38993637 679470938 213854869 383431833 202205460 309452081 755372242 512536108 440237714 542200067 681632684 544001522 244719798 139755020 425225589 591800128 965181701 252045715 984036930 665419589 562256266 247602126 617981274 914861058 454048869 646444263 420301612 368299611 35510824 888079427 729791581 884116226 588797703 207850019 191396730 939000555 240996791 719343142 910777760 266097064 272462205 70459051 378748050 405169390 85951564 266817646 494521558 112252807 506531258 519141443 508452810 598765754 661816679 481671179 920745811 799447841 119338530 767141748 727990126 972027230 324224012 125223283 25662870 59410127 790320469 789599887 920145326 981154602 86071661 749607586 992683914 44758293 104206308 689078698 609814678 888079427 733994976 11731618 485754477 728230320 283030741 494041170 678870453 559013647 207970116 270900944 160531801 94118160 778190672 965181701 176504702 80427102 346562054 194038864 578829652 261893669 655451538 609574484 73701670 480230015 528989397 431470633 950409770 527067845 857214498 457531682 62172358 747445840 594442262 515298339 498724953 574386063 16535498 367458932 465698278 831393643 557692580 798487065 372983394 954853359 113693971 450806250 280628801 271501429 118497851 815660936 62172358 939360846 337434682 220460204 224663599 314496155 945846084 390637653 457771876 447203340 609094096 815300645 15334528 155968115 332390608 978032080 322542654 277626376 844724410 432191215 138674147 374664752 891081852 287594427 581231592 688478213 103846017 172181210 893003404 430149566 650767755 489237290 244239410 190195760 430269663 769783882 52804792 95439227 506771452 450686153 310292760 109610673 501126893 648966300 887719136 187673723 844724410 144318706 451406735 431590730 832354419 651728531 591559934 37312279 846165574 332750899 149602974 419340836 266697549 775428441 906694462 798126774 12692394 655211344 916662513 243278634 471462934 21099184 781073000 487435835 508452810 590839352 790320469 810857056 813979578 142637348 271381332 253486879 714539262 687877728 900329321 321221587 626508161 193078088 389196489 734115073 188874693 267898519 633233593 812178123 489837775 382110766 673105797 906574365 920625714 430269663 932395220 115855717 224063114 797165998 651368240 102284756 199563326 739519438 181668873 695323742 755612436 6087059 766421166 172901792 167017039 932034929 785876880 972387521 291557628 173262083 887719136 84750594 418259963 386794549 932515317 538837351 890481367 651848628 525866875 762097674 942243174 221661174 120779694 142397154 188994790 143478027 631912526 696404615 837038202 735796431 341638077 104326405 410453658 554089670 49922464 791401342 638637958 722946052 750808556 697005100 335272936 858295371 980794311 826709860 989561392 711296643 783955328 977911983 634794854 427147141 363615828 667941626 127625223 58809642 441318587 716821105 755972727 537035896 606692156 165575875 565018497 696524712 727749932 624706706 146840743 375505431 666620559 372623103 480830500 595282941 704331017 519261540 833315195 975510043 345000793 841241597 220700398 157649473 371542230 846525865 363375634 883515741 737597886 184311007 744083124 149963265 212773996 93157384 881714286 841361694 994125078 420902097 862258572 547844626 297442381 630591459 790800857 168338106 991242750 303207037 739999826 494641655 278467055 129066387 914740961 43437226 467139442 345000793 961578791 15454625 150083362 571984123 609934775 874028078 801009102 828991703 64934589 193438379 627829228 491158842 661096097 247361932 683794430 774227471 40434801 796925804 310532954 535234441 988120228 270300459 330949444 55567023 299844321 445762176 670343566 270180362 200163811 562616557 58569448 499565632 580150719 706732957 217577876 37312279 790680760 801249296 7648320 409612979 845685186 474585456 808695310 618221468 815540839 867903131 149242683 636476212 350285061 557212192 518300764 788759208 575827227 362414858 919785035 903331746 813379093 463296338 688238019 849288096 559253841 549886275 736877304 193678573 862738960 508332713 819383943 455009645 943324047 847606738 458612555 352326710 692441414 954493068 980313923 498364662 390997944 293359083 779872030 558413162 304167813 770024076 422703552 371782424 601768179 791641536 35630921 404809099 138554050 188274208 847726835 548204917 448044019 811337444 191036439 468220315 793322894 935998130 994125078 714539262 230428255 765820681 664699007 635275242 22900639 483472634 192477603 868383519 211933317 221300883 984757512 910177275 785036201 421862873 784916104 646083972 890841658 431951021 677669483 609334290 686796855 407571330 931074153 410093367 83429527 792962603 483592731 785276395 5486574 647284942 816261421 588437412 541479485 346682151 556971998 953051904 563817527 173742471 882194674 698446264 672865603 775788732 878111376 442639654 369860872 616299916 32028011 188394305 19177632 691120347 398323861 26503549 231028740 485514283 761497189 721144597 782153873 971066454 453208190 415497732 964100828 467139442 412855598 267057840 691720832 191636924 856133625 732673909 453928772 226945442 977551692 882434868 960858209 275824921 972867909 525986972 281109189 126784544 121260082 88833892 664458813 632873302 47280330 178186060 333471481 999529443 678149871 93157384 493560782 437475483 302006067 266817646 577628682 278106764 561295490 865381094 212533802 873307496 317138289 612096521 655331441 822266271 462095368 143357930 256609401 142877542 435674028 610895551 784675910 129186484 103485726 816621712 330589153 103966114 903812134 727629835 851690036 161012189 284592002 678390065 413696277 178786545 15814916 839920530 656892702 296001217 808455116 903331746 295040441 388355810 935397645 566819952 105167084 336233712 333951869 101564174 382350960 666380365 486715253 409733076 168818494 368299611 282430256 972267424 457651779 316417707 861057602 948968606 881594189 470862449 8609096 363015343 11371327 470141867 63373328 88353504 692681608 263935318 452487608 220099913 712978001 705652084 909816984 592760904 804491915 605851477 928432019 669622984 432431409 47760718 289756173 332870996 913660088 972988006 743482639 102404853 261413281 385593579 144919191 296481605 972747812 832474516 516739503 212653899 993044205 913299797 248202611 98561749 958576366 15334528 990882459 75623222 585795278 566099370 222021465 136032013 731593036 658453963 61211582 937559391 717061299 817102100 118137560 33228981 418259963 54966538 482992246 462815950 702289368 434473058 496443110 486354962 363735925 402046868 929512892 79586423 313535379 724507313 777470090 102885241 185632074 237033590 372022618 82228557 486354962 108169509 127625223 45238681 532232016 396522406 35510824 943924532 90635347 726068574 892402919 183590425 335513130 442500 136152110 476627105 90034862 240516403 885797584 511695429 659294642 503288639 182389455 688478213 435313737 16655595 856253722 520582607 868023228 521543383 206889243 77664871 738438565 698926652 815901130 454409160 411054143 137473177 599966724 368539805 458252264 497884274 773987277 263214736 955333747 611135745 832474516 160171510 772786307 655091247 750808556 150563750 937559391 726068574 602608858 852410618 417779575 350645352 130387454 361333985 277746473 618221468 218898943 604050022 804011527 78025162 653770180 529830076 153566175 462455659 240396306 559854326 368179514 944645114 657252993 751288944 258530953 521183092 916302222 355689426 841361694 571864026 171220434 484793701 567540534 713338292 870305071 841121500 538116769 236793396 891081852 648606009 580150719 882915256 697725682 874628563 793442991 859856632 253606976 678750356 990161877 928552116 800288520 914740961 779271545 919544841 227786121 586635957 446482758 967943932 551687730 175303732 522504159 258771147 1042985 968184126 50763143 444200915 335873421 657373090 980674214 626628258 621464087 722465664 63613522 171460628 704811405 918103677 283030741 385113191 752730108 87152534 57008187 920865908 568261116 526227166 694122772 422343261 875469242 701808980 179146836 414416859 226585151 323863721 428228014 795004252 605731380 820825107 885077002 127985514 449244989 737597886 727029350 934196675 694603160 985718288 340196913 662297067 247361932 809295795 611856327 426546656 550006372 362775149 712377516 58569448 107208733 580871301 650047173 52444501 97841167 946806860 866942355 680431714 810496765 69738469 863459542 854692461 196560901 52564598 989561392 191877118 609934775 189595275 297202187 182509552 443960721 868623713 491158842 923868333 886638263 789239596 563457236 643922226 735676334 139154535 526107069 926510467 209891668 880513316 398083667 180708097 173141986 332270511 566099370 574145869 297802672 67336529 879552540 621464087 962059179 127985514 839680336 608253417 664578910 896606314 770384367 29986362 410213464 79586423 277746473 215055839 409012494 18697244 924709012 207489728 962419470 512896399 576307615 932875608 740119923 25903064 351846322 622064572 560695005 334312160 210612250 513376787 501847475 408652203 3925313 163294032 992203526 718982851 107569024 453088093 914380670 240276209 530070270 682713557 471583031 519982122 563337139 505810676 198962841 413696277 739879729 873547690 995926533 51483725 110811643 449124892 191757021 790920954 391958720 226945442 718622560 839680336 955814135 201124587 890361270 641039898 561655781 276665600 685715982 676588610 126544350 512416011 946086278 362174664 266697549 106368054 97600973 447803825 181428679 101564174 984277124 77064386 939961331 314736349 209531377 847726835 995085854 15454625 476507008 33349078 439997520 263575027 362775149 549045596 504729803 413095792 297082090 210251959 218778846 321341684 24341803 556731804 565258691 34790242 215055839 543881425 487916223 574626257 733994976 237754172 105407278 690279668 979473244 373463782 456931197 240996791 656532411 182149261 453448384 305729074 97120585 218538652 470862449 306089365 63133134 245920768 239195336 731593036 199803520 729671484 274263660 34790242 459693428 642481062 709375091 468580606 375505431 135431528 786717559 618461662 70939439 172061113 642000674 919184550 566940049 132789394 531511434 646804554 2243955 307530529 319780423 308971693 170860143 380309311 986438870 346081666 518661055 625187094 980193826 818423167 37192182 284592002 517219891 158850443 687157146 823106950 675627834 308251111 153325981 542079970 725347992 513616981 802089975 432671603 295640926 617741080 86672146 782153873 409012494 10170357 882915256 783715134 370101066 898888157 585915375 10650745 361093791 37072085 405289487 746605161 339716525 735075849 4285604 837878881 232830195 160651898 984517318 587836927 913539991 174102762 262614251 619902826 822626562 836077426 825508890 159811219 150563750 806053176 435553931 869224198 784675910 28905489 283991517 700127622 751769332 278106764 852170424 900569515 753450690 513737078 417299187 840400918 620263117 863939930 902250873 528509009 3444925 792482215 435914222 395681727 399885122 419941321 764619711 651968725 648485912 615579334 841601888 264175512 695203645 440598005 420782000 401326286 168698397 222621950 545802977 448764601 446482758 734715558 106007763 292518404 179747321 647765330 888319621 922427169 979112953 778911254 31787817 722105373 139995214 492960297 742521863 828271121 110691546 873787884 138914341 742882154 14613946 215296033 777109799 261173087 758975152 541239291 175423829 738318468 466899248 241837470 408772300 19057535 594682456 571143444 258290759 65294880 133029588 423784425 363856022 569462086 891081852 940561816 205808370 104566599 345240987 933476093 230428255 493921073 152125011 960377821 270900944 369260387 975149752 854091976 864180124 204127012 299363933 938880458 942002980 161372480 132429103 518661055 659775030 206528952 659775030 144678997 243398731 389196489 895165150 626027773 870545265 242077664 893723986 897326896 980434020 335873421 252165812 637316891 367939320 306569753 488276514 464377211 107088636 22540348 295160538 255048140 212173511 722105373 51243531 761617286 378748050 287594427 415858023 964701313 338035167 40915189 795244446 545322589 609094096 262494154 457771876 494881849 660375515 638157570 51243531 85110885 622665057 818182973 767742233 686676758 136392304 396042018 767261845 724147022 1163082 631912526 846766059 477347687 709735382 596964299 387995519 729791581 736517013 152485302 309812372 518901249 104206308 752369817 623745930 812658511 569702280 894204374 552288215 110571449 827310345 212053414 129186484 543881425 954012680 799087550 152485302 410573755 194999640 305128589 341638077 371181939 360613403 435674028 676948901 470382061 946206375 397963570 244599701 929272698 271021041 917863483 470261964 153806369 564658206 935878033 466418860 260572602 864540415 735316043 233070389 387755325 666020074 128706096 153566175 914981155 71900215 626147870 605731380 202325557 214815645 464377211 280989092 100843592 278106764 476507008 329268086 294439956 400005219 686316467 382230863 899488642 313054991 227666024 674667058 53165083 171100337 182629649 939000555 522384062 24461900 617741080 671424439 924949206 875469242 754891854 158129861 426786850 393880272 216977391 232229710 355929620 826709860 712497613 86071661 497403886 16775692 56767993 675868028 242918343 266097064 135791819 829231897 909696887 894444568 903091552 988840810 188874693 941642689 362775149 481310888 46199457 397603279 303927619 832474516 185511977 133269782 462936047 413335986 931554541 322062266 944765211 239315433 708414315 604050022 801249296 503528833 992203526 236793396 805212497 510014071 992323623 381510281 33469175 607773029 368059417 45839166 335032742 501126893 915701737 463776726 450686153 587716830 357971269 422823649 912098827 745524288 199803520 105527375 787558238 331790123 963500343 32028011 441078393 605731380 621343990 358211463 889400494 682593460 967823835 381990669 273663175 852891006 318099065 917383095 672625409 778791157 572104220 324344109 912218924 291077240 951850934 704571211 242197761 289756173 851209648 608853902 893723986 398203764 170619949 213614675 654610859 168097912 624946900 656892702 456691003 405649778 314135864 452967996 770264270 254567752 882675062 417299187 535834926 527308039 252526103 765460390 235472329 684755206 128465902 888199524 145519676 541239291 975630140 669262693 499565632 566339564 158249958 256489304 653770180 269820071 967103253 541479485 641520286 474105068 667461238 194158961 397002794 865741385 586635957 705772181 225143987 983436445 763418741 930954056 38393152 772546113 559013647 52684695 685836079 798246871 960858209 744323318 594442262 357851172 451286638 900209224 176624799 556491610 307890820 840160724 284231711 691240444 150323556 374664752 189475178 355449232 587716830 798847356 112493001 109250382 800288520 363375634 889040203 264415706 205688273 606932350 492960297 346321860 299123739 120299306 229947867 263454930 668782305 14493849 173622374 218298458 977431595 846285671 847366544 25302579 529589882 843643537 128225708 367098641 318579453 410333561 199443229 182869843 208090213 124862992 752489914 532472210 166896942 688238019 837038202 269579877 798126774 804491915 296961993 895765635 293719374 58929739 963260149 318219162 784796007 358211463 923988430 603449537 102885241 299003642 614018073 126904641 53885665 837038202 84990788 723546537 126063962 419100642 255168237 458132167 958576366 881954480 946086278 476747202 153446078 949689188 95919615 133389879 132669297 106247957 419941321 774347568 611375939 971186551 844364119 284952293 841721985 718022075 639478637 294079665 443240139 612576909 426786850 39954413 856734110 85951564 687037049 727990126 637677182 294920344 312454506 414176665 985598191 374184364 69498275 970586066 412615404 266097064 798246871 851209648 550967148 994725563 130387454 841001403 251325133 59049836 178546351 292518404 789840081 713938777 548805402 931194250 434473058 128465902 339956719 266577452 187793820 927951631 685475788 429549081 420301612 512416011 812658511 245320283 367579029 802089975 756813406 99762719 894204374 750688459 726428865 398203764 249163387 840521015 434232864 194759446 48721494 642360965 287714524 439637229 390157265 738558662 383191639 314976543 47520524 113573874 248682999 105046987 880273122 363015343 568621407 582192368 36111309 648365815 624586609 130507551 247722223 411174240 156808794 144438803 333111190 344040017 137593274 993284399 916902707 604290216 785996977 542800552 721384791 956774911 311133439 576067421 349684576 311493730 245440380 243518828 48000912 858295371 894564665 803771333 571984123 402647353 486475059 602488761 725708283 242678149 125463477 902491067 714779456 169659173 20858990 373103491 470982546 514097369 527548233 635755630 875229048 523464935 383071542 315456931 638157570 540518709 105167084 691000250 75863416 642601159 189234984 617861177 503648930 805692885 822626562 200764296 142637348 767261845 387515131 363495731 523464935 63493425 617861177 740360117 490558357 54606247 648606009 12452200 265616676 495602431 904172425 267898519 437355386 977311498 702169271 430629954 73581573 587236442 741440990 98922040 446722952 447443534 964941507 4285604 114534650 315336834 53765568 708414315 664218619 169899367 817702585 983196251 459453234 572824802 477347687 27944713 961098403 767742233 385233288 374184364 937319197 17736468 409733076 739399341 951850934 914740961 16775692 42236256 378988244 42956838 730151872 271141138 450205765 151404429 659054448 173021889 170980240 76463901 571503735 629990974 815660936 769663785 651368240 996647115 91235832 622064572 775188247 874028078 692921802 844123925 324344109 810736959 935998130 452727802 898407769 253606976 375145140 814099675 184070813 291317434 853011103 350164964 157048988 588437412 965301798 20378602 840280821 14373752 666380365 618221468 760056025 453088093 348123315 323743624 268979392 460774301 828391218 971306648 573905675 859496341 834756359 901770485 24461900 962659664 437595580 877871182 236433105 436394610 412735501 130987939 667581335 885437293 51003337 266217161 993764787 246521253 516499309 674787155 498244565 30106459 198842744 937439294 883515741 651007949 264896094 402046868 401446383 136872692 353167389 748046325 117416978 415497732 864900706 715019650 965181701 678990550 875709436 142757445 712497613 57368478 759935928 957975881 503408736 752610011 22900639 978632565 514577757 306569753 440237714 694122772 429789275 527548233 571263541 729431290 261413281 152125011 761497189 658814254 992203526 173502277 30226556 713218195 447443534 802810557 728950902 307770723 938400070 909576790 886277972 192237409 981154602 898407769 658093672 952331322 356049717 195720222 884116226 991242750 11851715 670944051 763538838 411174240 326145564 363015343 32508399 800889005 870064877 55206732 108890091 750328168 455249839 694242869 52924889 443120042 581591883 746364967 185511977 152845593 148041713 849768484 624586609 6567447 125703671 486595156 607412738 628069422 406850748 701808980 666620559 421382485 99642622 557932774 529950173 187313432 852410618 914981155 613177394 925429594 111652322 134710946 43917614 92676996 893844083 698446264 596844202 400845898 357490881 366137865 788759208 643321741 137593274 909096402 568981698 869464392 767141748 633713981 324464206 188634499 504489609 259011341 630711556 319780423 113693971 719583336 932395220 924709012 308251111 984277124 583273241 887478942 367819223 902250873 357731075 428588305 556371513 310893245 778911254 927351146 703250144 747325743 269820071 657373090 641520286 94718645 713818680 895645538 210372056 202306 272342108 951971031 798006677 401566480 448404310 48961688 707333442 565018497 915581640 597324590 373463782 864660512 615459237 535114344 211813220 481911373 340196913 857935080 123782119 923868333 67216432 129666872 883275547 911017954 149482877 81387878 611255842 345481181 491999521 756453115 701328592 124022313 374544655 912699312 977911983 565979273 418860448 594322165 647164845 558172968 52564598 440357811 253126588 276905794 678390065 49442076 937799585 999889734 655211344 913900282 206288758 711897128 760896704 677189095 852770909 152845593 724507313 437355386 359172239 820825107 139274632 768102524 416578605 654730956 332991093 418259963 954853359 602608858 826709860 331670026 620743505 603689731 28184907 617500886 118017463 249163387 317138289 472423710 894444568 737717983 981514893 456931197 715259844 673826379 302606552 337915070 154767145 969745387 32028011 568861601 972627715 605010798 147441228 28064810 498484759 83429527 602969149 46679845 849528290 224903793 677309192 295280635 420661903 2123858 356530105 527308039 451406735 241357082 363735925 677549386 284832196 671064148 146120161 740240020 856373819 489717678 123782119 201845169 23981512 679711132 902731261 977551692 720904403 74782543 119818918 422343261 146480452 328787698 585555084 778791157 597925075 787678335 900809709 723906828 164014614 524065420 78265356 410213464 269820071 732673909 447563631 516619406 288555203 711897128 495362237 473744777 842802858 154767145 113333680 656292217 350765449 167737621 535354538 834876456 844724410 753450690 711176546 36471600 821425592 768582912 239075239 45358778 662657358 265736773 809175698 75743319 380069117 723426440 699166846 316898095 777830381 926870758 147080937 550126469 249283484 726068574 235232135 503889124 464016920 567060146 696164421 332991093 674787155 302726649 988000131 728830805 114894941 992563817 901410194 919544841 588317315 763058450 686196370 246281059 122100761 776389217 763178547 856133625 668301917 932635414 127385029 508092519 343799823 482271664 426186365 552408312 503648930 902971455 200764296 395801824 593721680 183110037 579910525 49922464 851930230 886398069 81988363 882554965 470502158 19417826 943444144 364576604 6567447 160411704 551447536 161492577 259011341 145519676 173742471 138914341 223822920 629630683 445882273 210852444 516499309 580270816 226585151 13533073 255408431 521423286 98561749 93998063 531631531 682113072 72020312 505810676 240636500 709615285 942483368 29505974 384272512 977551692 961458694 645243293 295160538 306089365 439156841 846525865 942123077 403488032 276905794 590358964 291317434 527908524 890601464 734115073 532232016 941162301 219739622 390637653 183950716 214575451 153325981 557332289 994725563 227906218 895885732 253006491 328427407 807974728 562496460 412975695 450445959 688718407 802089975 394841048 252165812 666020074 204006915 734595461 194279058 674546961 952931807 601888276 254928043 590599158 882434868 155127436 669382790 41035286 817102100 464137017 10290454 814700160 373583879 843043052 693642384 614858752 785396492 395441533 468220315 826469666 33108884 192117312 795004252 749247295 618341565 592280516 909576790 737958177 861778184 565979273 42116159 498965147 20858990 909576790 964581216 876910406 632993399 566819952 228866994 520222316 729911678 442879848 423063843 190195760 378027468 624346415 211452929 155367630 982595766 230188061 393760175 41755868 640079122 267298034 653770180 428468208 541599582 754891854 192837894 414897247 970946357 147441228 497644080 729551387 692081123 97480876 359412433 473384486 313054991 618221468 127745320 162453353 905013104 517940473 735916528 608733805 980313923 780712709 510974847 75142834 833915680 514577757 131228133 56767993 64093910 373103491 574386063 825028502 475906523 78985938 902370970 283391032 347883121 334071966 65775268 484793701 272462205 519141443 536795702 589998673 606812253 193558476 129426678 753570787 701568786 999529443 240756597 740600311 539678030 57368478 348003218 629630683 757173697 641280092 100243107 47400427 333591578 381630378 837878881 363856022 441678878 456210615 238835045 423904522 62412552 29986362 452247414 874268272 556251416 997367697 205928467 182509552 169058688 828391218 212533802 326265661 554930349 97721070 729070999 420541806 695804130 447203340 426426559 58329254 252526103 913419894 895645538 478908948 843403343 511575332 182869843 473624680 820825107 28545198 247361932 413816374 338035167 12212006 236433105 880153025 646924651 228626800 65535074 733154297 753810981 400965995 161372480 210131862 673946476 912819409 746845355 683073848 169899367 452367511 681872878 413816374 292878695 228266509 307770723 773026501 467259539 265976967 936598615 223943017 82949139 527908524 687877728 224783696 467499733 509893974 875949630 927831534 767862330 13773267 955934232 153926466 733634685 443600430 93998063 872106526 853371394 536195217 946686763 348003218 959537142 482872149 535594732 741440990 534513859 188634499 337674876 576187518 946566666 833915680 966502768 602608858 656772605 739999826 454289063 80427102 553969573 175183635 230428255 78505550 162453353 797646386 402407159 397002794 754051175 275704824 893723986 843763634 625427288 611375939 992323623 851329745 652088822 395081242 452007220 102765144 598165269 742882154 645603584 140955990 736517013 163534226 891562240 455369936 725708283 591680031 623145445 821425592 30827041 925309497 291557628 201845169 369740775 569822377 787438141 851569939 449845474 850008678 59890515 823707435 201124587 849288096 711056449 896246023 657373090 528629106 545923074 93277481 277626376 498604856 152725496 322782848 592881001 503168542 803651236 179507127 207729922 90275056 620143020 763418741 321221587 73461476 539918224 86912340 467980121 298643351 859976729 821185398 87272631 414536956 647284942 771104949 495242140 826950054 989201101 516259115 460534107 978632565 478068269 50402852 249283484 258410856 728350417 941522592 103005338 940441719 354248262 233070389 576788003 70098760 890121076 89554474 730872454 268138713 240276209 862258572 740840505 376346110 921706587 442999945 689318892 26143258 453688578 397122891 449845474 217217585 30586847 148161810 988000131 191997215 373583879 560334714 531031046 218898943 351606128 430629954 806053176 806053176 804371818 227545927 254567752 466058569 959176851 736396916 752970302 504249415 767502039 645123196 926870758 131588424 373944170 416938896 495482334 309932469 831393643 460774301 929632989 48241106 887719136 615819528 116576299 936958906 771465240 215536227 888079427 931194250 828991703 157649473 510734653 357130590 651728531 123061537 75623222 24341803 477948172 911017954 229107188 40434801 764019226 695203645 516018921 486475059 165816069 731953327 653169695 320981393 910057178 310893245 112493001 381510281 796085125 627829228 61451776 690519862 906574365 844604313 563577333 458012070 351245837 640799704 462215465 467980121 336714100 908015529 839680336 720544112 591920225 708894703 947647539 881233898 105046987 139034438 19898214 105407278 684154721 443240139 370461357 241116888 833315195 357971269 386314161 631792429 100963689 811937929 510374362 4765992 443480333 791281245 790200372 850248872 522624256 506531258 300204612 429909372 205207885 270780847 734115073 291677725 458492458 179507127 342118465 794163573 521543383 175063538 768582912 544121619 700127622 67816917 820104525 649927076 558172968 206889243 348123315 137953565 198602550 141076087 66375753 485394186 324224012 741561087 24341803 611976424 531271240 492600006 657012799 384152415 466058569 214695548 34189757 216256809 745644385 599846627 149843168 205928467 318819647 244839895 729311193 37552473 472784001 623025348 99282331 112973389 476627105 938880458 570182668 519741928 515418436 610535260 75383028 542320164 58809642 78865841 493080394 327826922 879912831 778791157 96880391 991122653 700247719 216617100 829952479 66015462 712257419 462455659 800168423 808695310 897807284 648365815 486354962 654730956 192477603 924348721 529109494 15214431 270900944 594442262 907294947 565739079 686076273 911138051 142397154 656292217 53044986 409252688 118978239 48841591 442399460 729791581 290716949 597084396 994605466 213134287 623745930 868383519 876189824 259011341 538837351 495962722 757533988 158610249 717301493 658453963 260452505 357490881 370221163 367699126 716941202 90395153 338395458 205327982 72020312 83069236 181428679 90395153 598765754 947887733 682353266 415377635 429549081 653529986 972507618 644642808 790320469 390397459 5006186 610535260 733394491 857814983 237994366 478668754 197521677 547484335 452007220 517700279 700728107 36231406 471943322 951250449 673826379 307530529 772065725 969505193 468700703 303086940 655811829 679110647 74422252 747325743 763058450 982956057 606812253 939961331 424505007 855413043 912098827 771705434 132309006 460414010 857694886 979953632 259852020 419941321 471342837 943203950 793202797 971306648 88833892 926030079 133029588 73221282 590238867 840160724 722345567 171340531 345120890 648485912 576908100 911498342 812898705 889520591 574746354 310893245 887118651 453088093 651488337 589998673 203526527 361694276 441438684 485033895 777349993 490318163 925069303 126063962 554930349 274023466 818543264 941042204 36831891 628069422 278827346 229467479 814339869 364216313 118978239 574265966 844724410 435313737 603569634 253006491 985117803 386194064 41395577 58929739 321101490 577028197 331910220 538356963 790920954 62772843 552768603 69017887 99162234 944525017 854692461 611976424 234391456 732193521 918343871 302126164 672024924 335993518 709615285 15694819 591800128 371662327 681872878 792362118 600687306 199082938 448884698 657493187 692921802 686796855 35991212 189355081 704931502 532111919 713098098 411054143 437715677 973228200 833915680 296601702 41996062 912819409 563457236 496443110 149482877 509893974 2484149 640799704 489717678 845565089 865020803 395561630 472423710 985237900 468460509 479869724 669502887 328667601 607052447 130507551 749607586 334792548 823106950 91956414 978632565 530190367 332150414 833075001 947887733 58449351 402046868 907054753 844484216 210251959 785396492 392919496 489117193 237754172 345000793 90034862 117416978 863939930 678510162 265376482 890361270 994245175 212653899 822266271 764859905 8008611 76824192 447443534 555650931 364336410 567660631 87512825 179987515 484793701 387635228 704090823 174102762 45118584 898167575 835356844 303927619 827190248 468580606 681752781 21579572 421622679 655571635 854091976 30706944 301405582 425946171 577268391 672625409 759815831 687037049 936838809 980434020 920625714 966022380 965181701 231749322 801369393 284231711 300564903 343199338 67816917 212173511 916422319 342959144 584354114 211452929 901290097 876670212 521543383 678990550 790200372 794884155 878831958 983556542 293959568 172661598 257570177 597564784 434473058 626628258 150563750 606091671 747205646 801009102 576067421 23260930 322782848 139154535 738918953 187193335 580631107 133029588 317378483 859736535 526827651 240396306 15814916 709014800 671784730 305969268 928672213 838479366 83069236 440357811 316657901 953292098 24581997 551927924 785396492 740840505 627949325 751769332 932635414 909336596 273783272 374544655 759815831 567060146 540398612 587716830 358571754 853731685 66375753 3084634 897927381 118017463 754651660 390277362 141196184 424505007 970225775 818663361 65535074 351125740 828631412 245080089 542680455 385113191 904652813 411774725 381870572 61331679 288315009 848687611 566339564 560094520 394961145 343319435 337794973 886638263 681512587 795965028 624106221 231028740 216016615 48841591 791161148 702529562 744803706 551327439 190916342 676348416 648966300 376706401 831753934 47520524 148642198 44398002 648005524 376586304 804251721 173141986 172781695 636596309 125463477 381029893 22180057 502928348 334792548 162573450 953172001 353767874 799327744 7408126 562616557 247722223 562016072 282430256 548805402 108649897 424745201 476627105 26503549 33108884 36711794 988600616 992683914 316297610 112973389 237033590 527187942 608373514 410573755 140955990 296601702 71900215 126184059 740360117 754411466 660135321 681152296 702289368 53165083 750087974 925429594 649566785 537516284 901290097 220580301 359292336 636476212 137713371 480230015 511575332 712978001 543280940 541599582 314135864 361213888 192837894 433512282 898888157 73701670 214455354 469421285 298763448 845925380 373463782 866582064 377066692 994245175 220820495 283751323 693402190 47520524 953412195 504969997 162333256 422703552 321221587 371302036 455610130 118497851 772906404 978872759 406490457 32388302 258410856 778430866 300685000 927471243 121380179 111892516 324224012 517820376 9089484 142757445 283150838 774107374 642601159 482992246 727870029 166536651 199082938 335272936 545682880 147321131 771345143 653169695 540518709 390277362 808214922 68777693 968064029 891442143 617861177 428588305 744803706 178306157 602969149 708894703 53285180 71660021 246761447 12091909 255048140 375985819 997968182 588437412 188154111 168818494 944284823 772666210 617500886 949569091 456931197 272101914 268979392 911258148 256249110 743242445 269459780 8008611 132549200 310653051 399404734 944044629 390037168 132789394 977431595 63373328 309211887 685355691 328667601 961098403 225984666 667701432 956895008 61331679 102404853 342238562 932995705 252646200 838479366 546523559 683674333 559013647 596243717 75863416 827190248 865861482 96400003 977911983 284231711 535114344 615819528 429909372 930954056 607532835 90995638 573545384 7047835 718382366 829111800 635515436 132669297 338035167 975630140 830312770 771825531 725468089 430029469 769303494 425946171 679951326 421382485 886878457 256489304 146360355 192357506 428948596 605130895 235712523 36111309 901530291 798246871 674186670 211813220 730392066 394600854 519381637 733514588 927351146 660735806 101804368 111532225 628189519 23020736 61691970 932155026 544481910 847006253 145759870 632633108 852410618 28665295 866942355 474465359 877751085 319780423 793082700 731593036 355329135 555891125 719223045 747445840 975630140 226825345 933355996 838599463 294680150 501367087 501487184 756092824 13893364 392559205 479149142 835236747 965061604 879192249 80186908 490558357 211573026 676228319 66495850 672505312 917983580 826589763 587957024 104806793 310532954 668542111 790680760 938880458 970345872 618341565 231749322 55567023 673466088 310893245 418740351 860697311 96039712 546763753 943684338 701688883 166536651 95078936 188634499 336954294 203286333 787558238 256008916 117657172 226945442 43197032 683193945 760536413 196801095 316057416 308010917 917863483 654130471 92676996 779872030 758975152 984277124 860937505 568861601 918704162 543881425 959417045 413095792 4525798 450325862 764499614 7047835 949929382 480109918 120419403 714299068 967463544 395081242 886518166 744083124 962899858 201965266 722465664 611375939 526827651 933596190 816141324 610295066 550006372 784435716 427507432 56767993 152125011 361694276 750808556 554449961 729551387 698326167 646204069 805933079 104926890 772185822 70819342 496803401 350645352 158490152 138073662 858295371 43317129 66255656 732794006 152725496 745884579 666140171 456450809 439877423 98201458 175543926 781193097 953772486 203286333 749607586 493800976 851089551 889160300 881353995 16295304 675627834 92917190 365177089 315216737 785516589 381870572 789479790 958576366 198602550 652329016 601527985 691480638 287834621 325064691 167977815 907895432 138433953 267898519 160171510 238955142 452607705 375745625 158850443 812058026 242317858 437835774 480109918 68177208 112132710 961578791 483472634 746965452 544121619 387154840 89674571 881954480 443840624 324944594 342238562 778791157 93397578 872226623 382350960 817102100 744683609 112252807 771585337 625187094 897807284 975870334 876309921 202805945 573665481 656772605 646564360 578589458 929272698 79946714 31307429 220340107 876910406 790200372 121139985 354248262 641880577 823467241 88113310 517339988 557932774 420902097 875949630 268378907 756573212 857094401 438796550 685956176 265976967 265856870 412135016 54245956 107208733 100123010 844244022 432791700 319540229 893483792 393519981 831153449 344160114 930713862 593961874 119218433 297922769 2964537 608493611 13412976 145879967 73941864 527067845 425105492 44638196 868623713 879792734 460894398 141916766 749007101 265616676 156808794 216497003 404328711 50162658 666500462 244479604 157169085 161132286 20018311 727509738 202926042 344280211 743963027 315697125 803651236 856614013 179146836 340317010 938520167 95799518 526467360 815660936 891562240 623505736 603329440 305488880 197641774 358451657 196200610 266337258 134470752 508813101 211452929 573665481 975630140 62772843 196080513 387995519 429308887 356289911 903451843 484673604 175063538 64334104 923868333 560574908 862258572 816141324 852290521 790560663 175784120 583633532 934917257 298523254 648966300 357851172 180227709 126304156 574746354 506411161 816501615 754051175 829351994 924108527 646083972 36591697 481190791 382350960 827670636 290596852 757173697 840641112 734595461 572464511 944404920 896005829 728950902 262013766 502568057 509293489 811937929 556011222 362775149 318939744 965782186 852290521 547844626 751529138 957255299 558172968 169178785 747325743 380189214 363015343 841721985 825508890 478908948 881714286 746965452 592760904 847126350 868984004 684515012 210372056 49201882 132549200 377066692 939000555 494521558 668782305 429789275 357370784 230788546 405409584 923387945 586515860 532472210 782874455 625667482 617260692 565859176 855653237 985357997 281229286 256249110 260932893 433392185 828030927 117777269 378387759 77184483 29025586 68537499 946446569 474585456 482151567 15334528 482271664 348843897 302006067 270780847 169298882 39233831 406730651 622184669 784675910 949328897 330949444 305368783 232349807 36951988 643561935 570903250 778791157 793683185 989561392 774107374 420301612 598525560 538116769 30466750 40674995 923387945 681752781 454889548 689438989 498724953 912218924 109850867 304408007 968424320 487916223 580871301 743482639 457891973 772065725 270540653 941882883 944164726 423904522 116336105 500046020 828871606 307170238 81027587 611135745 847726835 964941507 366498156 717661784 340196913 364336410 865381094 57128284 652329016 361454082 613177394 798607162 832834807 301645776 967103253 782394067 377066692 591079546 845324895 773266695 188994790 516499309 617861177 376826498 976831110 983076154 228626800 5966962 414176665 403968420 684394915 264295609 107208733 956174426 358331560 902491067 19057535 495362237 819143749 447923922 225384181 800288520 600327015 60130709 797406192 159090637 693642384 513737078 744203221 895405344 483712828 84750594 11011036 740240020 101323980 72860991 774347568 799928229 247001641 997007406 712497613 914861058 681272393 465217890 504129318 865140900 549646081 874988854 585194793 592400613 228987091 219739622 847486641 201004490 51243531 190916342 233310583 195840319 424024619 235352232 160411704 671064148 528989397 237033590 942963756 80307005 867542840 281829771 839560239 661336291 571864026 905373395 792602312 13653170 54846441 18817341 904172425 793683185 849528290 983796736 879072152 761377092 530670755 421142291 545442686 566940049 186352656 647645233 57248381 845805283 119578724 749967877 600807403 507371937 106127860 250484454 804131624 668061723 392799399 687397340 932995705 486475059 87272631 289395882 903331746 865621288 390277362 325064691 501727378 996406921 455129742 967463544 515418436 293839471 609214193 310292760 886758360 948007830 254447655 874748660 953892583 433512282 114174359 780232321 399524831 432911797 135431528 846645962 154046563 17256080 189835469 936118227 325545079 475306038 42116159 589157994 517580182 631312041 380429408 706492763 674787155 522143868 87152534 21459475 382230863 124622798 275104339 370701551 328067116 761256995 808335019 127264932 275945018 821425592 865140900 61812067 260692699 204367206 356169814 688117922 833195098 876910406 633473787 416938896 264415706 213374481 414176665 967223350 557092095 27824616 477948172 583873726 409132591 223342532 212173511 766541263 184911492 591680031 411414434 969625290 703250144 878111376 285432681 3925313 49442076 995806436 495122043 874028078 413816374 159811219 859376244 908495917 660255418 406610554 684154721 720784306 99042137 978032080 214575451 197281483 55567023 183110037 897086702 505930773 818182973 420782000 591199643 803411042 854091976 180708097 842802858 548445111 452607705 840400918 794403767 792602312 285913069 66015462 565859176 752369817 23260930 9209581 918103677 231749322 284712099 721624985 192357506 282550353 364936895 758134473 577388488 269579877 463776726 973348297 164254808 781433291 290716949 744683609 961939082 191396730 458132167 116576299 340797398 727509738 802791 331549929 893363695 54125859 898527866 852650812 672145021 20979087 302126164 800048326 435073543 960858209 725468089 610415163 89194183 194639349 844003828 40674995 694002675 664699007 531871725 316657901 473744777 779631836 71179633 49442076 197521677 844724410 10410551 975029655 585795278 862018378 523224741 819984428 754051175 711897128 901890582 121740470 557932774 622544960 949569091 613417588 601888276 635875727 617981274 713578486 563457236 929032504 2964537 836918105 33589272 246521253 299363933 914020379 8368902 891922531 535594732 860937505 78985938 792121924 700968301 348963994 788038626 527187942 433272088 310893245 737237595 752249720 793803282 946326472 923027654 235112038 132549200 917262998 420661903 999409346 15574722 704090823 776869605 541959873 571263541 347402733 426666753 182029164 883755935 178546351 956054329 80907490 203646624 910537566 172901792 223462629 773867180 838599463 897446993 781673485 952931807 111412128 781553388 453688578 483712828 801249296 219499428 356650202 88233407 718382366 206408855 689078698 746725258 946926957 870905556 655451538 623145445 66015462 279427831 13773267 544001522 639478637 115255232 425465783 957735687 229587576 618821953 653169695 346562054 729431290 47520524 4645895 133630073 159811219 294800247 332390608 666860753 882675062 687517437 173862568 855052752 393640078 388596004 461735077 764139323 908255723 170019464 591199643 513616981 883996129 39714219 676348416 326625952 763298644 804972303 988480519 47040136 585434987 835957329 742641960 82348654 533312889 89794668 405889972 557932774 158129861 627468937 588917800 817102100 969024805 905973880 901410194 638878152 417779575 485153992 315456931 599126045 51243531 155247533 562616557 790920954 240156112 40795092 86792243 507612131 901650388 287354233 280268510 542560358 862138475 988840810 243158537 673345991 764259420 187793820 836557814 478908948 350645352 802690460 407451233 969985581 597444687 38873540 216857294 926990855 521303189 749967877 280868995 366257962 736276819 59890515 642481062 343079241 80066811 580511010 653289792 309932469 21219281 495842625 333831772 142637348 805812982 103245532 468460509 56767993 10050260 347282636 511575332 141676572 944284823 415137441 406490457 5006186 58809642 964461119 778310769 628069422 561775878 989681489 651488337 575466936 842322470 52084210 755732533 606091671 930593765 802450266 240996791 64934589 545682880 489717678 720664209 61571873 176624799 383311736 274503854 75983513 370341260 802210072 358091366 844364119 767982427 67216432 630591459 447683728 449365086 290596852 878831958 147201034 407811524 652088822 107689121 427867723 25182482 9689969 13533073 119338530 681752781 939480943 393640078 92316705 528989397 256729498 782514164 688718407 573305190 178306157 244479604 32028011 173382180 374664752 891081852 907415044 365657477 561415587 215776421 369020193 282310159 466538957 951971031 150323556 947167151 446242564 632392914 776509314 324704400 9689969 353647777 143598124 930473668 534273665 234871844 320260811 927951631 743002251 940201525 495001946 791761633 435914222 235352232 151404429 286153263 501126893 720303918 578109070 560214617 67216432 760416316 728110223 961939082 13533073 556611707 752730108 756453115 522504159 489597581 187793820 849768484 238354657 75503125 48721494 565859176 273182787 704691308 545562783 81027587 48361203 172781695 635995824 748526713 482992246 682353266 796445416 548805402 483112343 427627529 587356539 962179276 478428560 476386911 806653661 779391642 739039050 549285790 82228557 389917071 530430561 8609096 928311922 657853478 831874031 110211158 746124773 417058993 404208614 747806131 746845355 915701737 540999097 829712285 453328287 582432562 214335257 86552049 807134049 687517437 729911678 556611707 97360779 851209648 902370970 20258505 878231473 650407464 692921802 257209886 546643656 252165812 600687306 671904827 620863602 650047173 444801400 394000369 449004795 506170967 728590611 451526832 335393033 377907371 549525984 252045715 781073000 120299306 255048140 560815102 234991941 205207885 752369817 994004981 813859481 882314771 319780423 496923498 270060265 469421285 557572483 814580063 30346653 506771452 255528528 282190062 638998249 302726649 472904098 606331865 653650083 257450080 876189824 751168847 589398188 556011222 535114344 3084634 676468513 592760904 681632684 726308768 431830924 759215346 152725496 127865417 516499309 728110223 319420132 435674028 555771028 823947629 608613708 553609282 428708402 299604127 279668025 436874998 690519862 414416859 602248567 85711370 795844931 272101914 718862754 981634990 758855055 898167575 466659054 24221706 61451776 432671603 721384791 531871725 101924465 923147751 592280516 795124349 698326167 264175512 22540348 630351265 688478213 155727921 14854140 847486641 157649473 600447112 338035167 538717254 505450385 551207342 184070813 441558781 916302222 520822801 192117312 744083124 78145259 700487913 107328830 428948596 635035048 604650507 488756902 237393881 276905794 288675300 573305190 870785459 781193097 613177394 50643046 309692275 755852630 699407040 15094334 580871301 998688764 127745320 82468751 414416859 991002556 501487184 708774606 699407040 620503311 943203950 217818070 9930163 2364052 365897671 870064877 938400070 754411466 849888581 18336953 636476212 785996977 877150600 135671722 346802248 343079241 115495426 34189757 852650812 168698397 578349264 324464206 166896942 506170967 227545927 153446078 178786545 323503430 593121195 180347806 566819952 350525255 692201220 293118889 616420013 143357930 679831229 215656324 434112767 771104949 171460628 807854631 439997520 928672213 459213040 447923922 646564360 971546842 42476450 93637772 581231592 661696582 678269968 683314042 73221282 400605704 25182482 223582726 128826193 419821224 57608672 462815950 832714710 755612436 183590425 367218738 73461476 416938896 342358659 362655052 444801400 610655357 15454625 945365696 656532411 754171272 482752052 391598429 543521134 712978001 321101490 881834383 570903250 703610435 245800671 487676029 376105916 453688578 945725987 163173935 359292336 293238986 952691613 669622984 63253231 419340836 354488456 813979578 245920768 746485064 423904522 569341989 498124468 589278091 839680336 669983275 560695005 899969030 269579877 825628987 965782186 749247295 782394067 457891973 428348111 261653475 960017530 142757445 152485302 203166236 576788003 590358964 849768484 204247109 918223774 346201763 566339564 196801095 714058874 814459966 793202797 66255656 444321012 353407583 824788308 892042628 220460204 435193640 24822191 687517437 758855055 529950173 660255418 543641231 881233898 560574908 303807522 510614556 867662937 760776607 786837656 874748660 744803706 488756902 91355929 530910949 745764482 532111919 783234746 625787579 590599158 166536651 526467360 185511977 341878271 476867299 384752900 468460509 987759937 390037168 962419470 492479909 992323623 148161810 113333680 703730532 706492763 964461119 880873607 27104034 157409279 98922040 999409346 792482215 912218924 892523016 533793277 753931078 949328897 605851477 866461967 540038321 731112648 180588000 240036015 721144597 150443653 455730227 224183211 553248991 930233474 308010917 588557509 930713862 109010188 560094520 352566904 610655357 693522287 25422676 899008254 801009102 712978001 944404920 151764720 391718526 587476636 206889243 307410432 710215770 622785154 918343871 628669907 167857718 28184907 523945323 47040136 58689545 274383757 40194607 556851901 463416435 821185398 953532292 229947867 125103186 249763872 504129318 325064691 55086635 811577638 639838928 473624680 309932469 637917376 948968606 848327320 792482215 516859600 516619406 975870334 761617286 39233831 371061842 68657596 99162234 534273665 451406735 142637348 37072085 338035167 452607705 668662208 394720951 963380246 113934165 448164116 338515555 983316348 744803706 973108103 635635533 665419589 295040441 121380179 4765992 41875965 456570906 527788427 479869724 710936352 487435835 717061299 49682270 12332103 135191334 746364967 81988363 601287791 49201882 467019345 697965876 176744896 880273122 237754172 454649354 294680150 1403276 314015767 572704705 63733619 506050870 768222621 753330593 568861601 293599277 680551811 302606552 598525560 25782967 141436378 491999521 213374481 576667906 208330407 690279668 218058264 159691122 273903369 333231287 348243412 411294337 658574060 203406430 698806555 926030079 810616862 811817832 416458508 897086702 238835045 336473906 827310345 782394067 637557085 768342718 546523559 169659173 755492339 342358659 407931621 132309006 717541687 7047835 16175207 839560239 509053295 998208376 944044629 80787393 427027044 171580725 13533073 138313856 670103372 782994552 302966843 531031046 739879729 711897128 856373819 272942593 583033047 487916223 686916952 921106102 740360117 178065963 597204493 802791 627228743 351245837 623505736 270180362 771945628 432671603 666020074 344640502 13773267 695804130 680191520 218418555 242317858 188874693 300564903 779031351 118137560 183230134 816861906 582552659 358932045 564778303 624106221 104806793 671304342 710455964 750208071 580270816 437235289 3204731 810616862 757413891 191757021 631191944 737958177 115615523 491519133 886518166 269339683 166776845 977311498 755612436 161972965 840280821 21219281 91836317 554329864 375265237 49081785 912579215 358811948 632513011 747445840 4886089 655211344 86552049 846405768 418259963 936478518 949809285 450085668 489117193 635515436 577748779 228026315 713578486 890841658 283270935 615699431 703009950 56888090 834756359 749727683 524906099 351606128 30346653 841481791 825989278 169779270 109130285 650887852 126904641 226344957 835957329 262133863 510494459 268018616 396402309 117657172 565378788 371422133 119939015 71059536 185391880 535474635 221420980 933716287 284592002 297802672 118858142 583033047 947767636 90034862 716100523 705411890 38633346 652809404 822266271 165095487 681152296 366137865 802930654 873907981 13653170 541239291 80066811 369020193 177465478 717061299 217097488 247121738 490798551 25182482 216256809 880513316 311733924 164495002 311854021 755732533 785276395 772906404 630351265 326385758 141796669 233430680 559974423 290837046 680311617 298763448 706252569 912579215 414777150 261653475 705531987 355329135 400005219 866702161 145639773 406610554 167017039 122941440 284351808 607172544 240276209 712137322 342598853 61091485 933235899 127024738 452127317 854212073 580270816 759575637 153686272 610535260 820584913 89194183 287594427 788158723 23861415 53765568 964581216 412014919 511335138 235352232 225744472 274263660 821785883 633353690 26023161 350405158 795364543 753330593 305008492 356650202 405529681 290356658 710095673 466779151 517580182 405169390 383551930 107328830 102404853 793442991 399284637 200644199 560334714 260932893 161612674 726428865 107689121 713698583 149723071 652088822 967703738 429549081 263454930 459813525 352566904 226945442 722345567 603329440 880633413 602248567 890121076 795724834 182389455 781553388 25062385 4886089 881954480 449004795 125463477 85351079 451767026 201124587 22059960 909336596 633233593 777830381 459092943 191877118 945485793 891081852 527428136 865501191 293238986 218778846 180948291 893483792 557692580 551927924 391358235 96159809 858415468 20979087 456570906 920865908 472543807 856253722 181548776 357610978 433992670 977071304 176864993 256249110 571984123 246641350 707333442 502568057 948848509 281349383 656292217 467739927 572704705 253967267 687277243 588917800 935998130 640079122 902971455 49442076 234511553 703610435 853251297 691480638 87873116 327106340 240036015 380789699 211452929 350044867 525626681 527187942 73701670 268979392 277266085 612456812 750688459 45598972 233070389 55206732 832954904 398323861 625667482 416458508 965301798 975990431 794764058 426786850 305849171 274744048 607172544 967943932 850729260 401566480 588197218 732553812 924588915 478548657 166536651 351846322 427507432 345361084 73941864 572704705 372743200 106968539 506651355 295520829 203886818 345000793 479509433 320741199 875589339 678269968 962299373 382110766 858895856 39594122 100123010 86912340 334192063 340677301 290236561 830913255 497043595 650527561 301525679 339716525 792722409 645963875 111292031 842202373 886998554 486835350 655091247 323383333 474705553 486595156 798727259 818543264 725347992 223342532 898167575 129786969 480710403 577628682 284111614 704210920 428468208 945125502 422703552 288435106 529469785 652929501 488516708 837878881 854572364 588557509 498845050 624346415 225384181 26743743 385473482 873907981 266697549 532712404 55446926 971066454 384392609 120179209 934076578 658093672 124502701 143958415 206408855 279307734 684034624 907174850 95078936 384272512 557932774 854812558 441678878 482151567 125703671 414657053 679230744 63133134 855292946 206649049 488156417 447803825 279788122 767261845 181428679 225624375 997607891 750928653 992443720 957495493 642000674 48121009 831153449 685235594 484073119 176264508 340437107 690279668 706732957 593361389 709495188 407331136 69618372 580751204 129546775 153446078 209050989 798366968 671664633 994965757 178906642 943444144 443960721 801969878 401566480 323983818 823347144 525026196 96400003 255288334 904532716 887839233 566940049 148882392 356530105 875829533 801489490 520102219 40194607 565138594 20258505 544001522 842442567 199323132 861658087 446362661 772065725 415617829 375385334 325424982 752129623 629870877 296121314 293719374 397843473 119338530 579069846 465578181 284712099 656652508 739759632 28665295 591920225 928071728 750688459 396522406 715259844 746004676 214575451 173502277 17976662 757894279 367338835 468220315 122701246 694242869 39474025 931914832 975510043 483712828 62772843 698085973 341277786 322182363 705772181 711296643 369020193 294079665 267057840 117897366 953652389 305128589 75022737 260812796 575466936 160051413 332991093 706732957 550246566 273903369 183590425 146480452 516499309 783715134 684274818 698566361 821545689 432671603 427987820 852050327 204727497 918343871 721985276 732313618 437955871 995566242 163534226 764139323 938760361 195600125 106848442 589518285 372623103 463536532 448404310 956174426 194279058 414296762 573665481 739639535 137953565 499205341 117537075 25782967 787438141 562856751 766421166 349564479 925189400 687997825 977791886 675147446 114774844 136152110 931794735 918103677 995926533 951971031 589278091 297322284 172301307 469901673 854692461 761497189 98561749 647164845 661576485 222501853 122701246 453688578 685475788 522744353 416938896 118377754 470382061 474825650 186592850 110571449 570783153 289275785 120779694 556731804 245440380 256369207 432911797 655691732 285312584 717901978 600687306 993164302 990882459 113333680 860697311 575346839 744083124 35751018 437595580 963140052 698206070 686916952 293959568 467139442 493680879 467739927 244119313 697485488 51603822 933355996 986438870 568020922 749127198 611255842 863219348 578589458 948728412 670223469 24822191 516859600 857094401 726188671 902250873 213854869 590959449 154406854 390517556 118497851 92316705 755492339 639358540 384872997 55927314 877390794 297442381 421742776 257329983 816982003 683794430 516259115 216737197 701088398 336834197 865140900 990762362 11971812 684034624 192357506 57248381 974549267 383551930 241957567 521183092 264175512 166296457 321221587 23981512 789359693 542560358 718742657 960858209 177585575 11251230 462936047 809175698 278587152 301165388 711416740 157169085 767622136 404689002 831753934 733514588 279908219 658934351 95919615 182029164 803290945 507011646 968784611 783234746 58329254 295040441 262854445 635515436 925429594 175303732 570903250 313535379 394961145 158730346 158610249 98561749 277746473 651488337 185632074 500886699 135791819 226465054 550126469 879552540 420301612 97721070 135671722 919184550 432191215 702649659 859015953 287474330 841001403 85951564 136992789 213254384 604650507 233670874 726548962 510134168 200283908 589878576 205207885 557332289 617861177 866942355 424144716 369620678 902731261 287834621 398083667 128345805 417299187 762337868 103485726 109370479 513977272 149963265 83789818 475185941 570783153 791761633 216016615 179747321 633593884 119218433 502447960 564898400 171460628 217938167 525986972 736276819 71780118 10290454 970225775 448284213 155127436 590839352 926030079 753090399 752610011 557812677 611135745 498484759 645603584 534994247 925069303 560935199 862738960 782754358 955093553 98681846 24942288 620863602 194879543 167377330 225984666 376466207 388716101 323023042 286033166 167017039 271741623 739999826 709254994 542920649 60851291 263575027 286273360 264535803 9449775 471703128 118377754 573064996 335753324 69378178 109010188 932635414 194519252 375265237 963500343 859376244 429308887 111412128 316057416 642721256 576427712 544001522 9810066 429068693 68777693 315216737 381750475 547003947 502327863 605130895 748406616 561655781 448164116 649806979 595883426 925429594 805572788 488876999 887719136 166416554 486234865 175423829 144438803 675267543 463776726 492479909 703250144 457171391 347282636 814700160 746004676 445762176 804972303 827910830 196440804 205087788 67216432 141076087 374784849 557092095 527428136 773026501 990161877 337434682 859496341 646924651 793563088 267778422 682353266 835236747 454649354 188274208 774347568 828871606 330348959 675147446 176264508 486234865 675267543 128826193 118377754 486475059 679350841 74182058 785276395 894324471 330949444 199923617 501006796 578349264 440477908 486715253 804972303 875589339 193798670 235232135 899488642 394961145 73221282 426186365 534033471 422343261 144678997 924108527 509053295 902611164 147921616 821665786 283270935 103365629 461134592 761377092 458012070 335993518 612216618 785876880 726428865 209771571 75863416 681752781 415257538 764259420 43917614 712617710 320140714 873547690 23981512 175303732 539077545 350645352 724987701 860697311 894084277 946926957 717901978 241357082 925309497 406850748 262494154 917863483 968304223 507972422 838599463 582672756 95919615 934436869 700247719 369020193 840641112 107208733 895765635 151764720 797286095 247962417 963980731 872947205 590479061 447443534 878231473 875949630 496202916 741200796 977551692 601167694 294439956 12812491 524786002 532592307 75623222 457291488 952811710 9089484 340196913 951730837 290356658 617380789 845805283 671184245 194038864 954372971 16895789 526587457 784796007 187553626 146480452 63253231 805692885 747445840 859976729 863819833 782514164 382350960 321221587 60130709 129186484 803651236 154286757 414536956 915341446 441438684 484073119 588077121 394000369 945245599 238114463 396042018 785996977 334432257 365177089 492479909 119939015 652088822 230308158 62772843 770024076 633353690 293238986 242197761 494041170 695563936 789239596 359892821 66015462 58569448 990762362 492600006 877270697 326145564 122581149 781913679 237273784 92556899 551807827 244959992 537876575 387034743 705531987 195239834 26743743 959296948 915581640 935157451 539678030 160291607 750208071 157409279 994125078 697245294 42116159 155607824 559494035 476026620 636356115 565378788 513977272 717541687 26503549 641039898 204127012 219739622 937919682 775788732 819744234 868383519 167497427 698926652 236433105 387995519 396642503 952691613 920986005 584954599 843523440 966022380 601768179 941642689 931314347 195720222 560574908 259972117 578829652 461494883 74662446 580150719 251805521 644042323 502087669 637076697 99522525 650287367 238714948 749487489 436634804 838959754 553369088 835236747 20858990 384152415 178306157 142277057 500166117 768342718 604290216 200524102 554089670 587716830 230067964 643321741 310172663 216617100 403848323 469541382 489957872 585555084 231028740 540638806 925669788 448644504 963380246 378627953 472663904 332150414 786117074 498124468 241116888 353407583 38993637 759215346 26263355 50282755 175543926 342118465 135551625 962299373 794403767 555410737 191156536 52444501 499565632 607052447 177225284 106608248 733034200 237874269 985598191 109730770 284712099 88233407 237273784 863579639 112973389 159450928 27704519 126304156 223342532 137232983 439637229 585434987 64093910 167137136 114654747 407211039 54005762 749247295 960618015 324464206 667941626 834876456 872947205 418620254 999049055 536555508 802810557 801849781 897687187 677189095 829832382 296961993 455249839 139995214 594202068 388475907 776028926 365297186 883515741 592881001 8248805 947167151 281949868 669022499 870905556 378027468 599606433 50162658 978632565 615459237 743722833 573425287 951130352 36111309 782754358 42476450 82108460 589278091 629390489 518901249 146240258 712017225 951130352 626988549 909336596 133509976 962179276 782514164 403728226 437235289 957615590 419100642 120419403 304528104 147080937 225504278 853611588 94478451 599966724 311733924 483232440 135191334 5846865 395561630 531871725 999889734 950649964 487676029 857454692 922547266 954252874 878711861 70939439 91115735 20258505 502327863 990882459 381870572 483832925 838599463 226465054 846766059 705051599 208450504 306689850 311854021 386914646 592881001 978032080 86431952 951010255 725588186 919424744 811337444 255888819 648846203 20378602 253606976 789119499 448884698 460894398 202445654 328787698 22420251 771585337 816021227 575587033 278467055 84990788 877270697 66495850 848927805 516139018 354968844 750568362 429669178 847606738 667100947 387395034 378027468 917983580 966262574 142757445 975269849 498724953 674066573 761256995 609934775 439397035 235112038 747806131 320621102 822266271 810256571 669863178 514938048 246401156 868023228 828030927 576067421 639238443 295881120 751048750 368659902 611015648 610535260 488396611 945365696 411654628 726188671 750208071 386194064 892162725 472063419 945725987 460173816 445161691 686916952 269940168 408892397 366738350 237393881 346802248 216857294 826349569 848447417 578589458 65535074 479389336 113333680 103365629 557212192 543641231 518300764 232229710 818062876 530910949 959537142 844244022 23621221 467499733 344280211 751409041 808815407 159811219 647044748 719463239 28184907 696644809 562016072 164134711 120059112 478548657 595883426 515778727 729791581 524665905 335753324 622424863 67096335 305368783 176624799 954252874 743842930 486234865 432071118 902611164 492720103 554089670 694483063 17976662 256249110 624706706 488156417 254687849 41755868 62172358 336353809 47040136 937919682 443240139 623866027 720183821 234511553 391238138 657252993 839800433 164855293 21099184 800768908 615819528 888199524 71539924 233670874 690039474 964581216 674066573 663137746 686436564 991002556 746965452 59169933 209291183 131468327 424144716 999769637 793683185 102044562 32868690 498845050 884836808 292038016 8248805 346081666 477948172 900809709 632633108 285432681 779391642 424024619 115495426 103605823 229467479 700968301 528869300 338155264 305608977 641039898 209291183 991843235 179867418 677549386 371061842 921346296 155487727 735195946 297322284 116816493 981034505 634554660 805933079 659654933 637557085 450205765 487916223 236072814 965301798 666380365 269459780 804011527 360012918 128826193 401566480 620263117 103725920 339236137 463776726 746364967 363375634 531391337 586155569 957135202 551207342 128105611 911858633 157529376 693762481 213974966 427987820 484913798 857334595 106488151 874748660 382831348 724147022 999769637 434232864 536555508 575226742 987279549 148762295 782273970 284351808 464617405 631912526 298883545 2243955 757293794 72860991 208210310 726789156 939240749 201244684 52564598 740360117 610415163 791881730 873067302 834155874 307770723 872947205 858175274 773266695 862378669 362534955 828991703 408652203 482872149 340797398 762457965 952931807 979112953 55687120 258410856 176504702 242798246 772906404 302246261 638758055 492119618 307650626 877030503 596724105 683434139 368299611 279307734 873547690 116095911 685355691 716580911 932275123 98321555 972507618 129186484 218658749 337915070 204727497 246040865 853971879 621343990 965541992 351726225 305128589 857814983 636356115 391838623 35390727 960017530 279427831 118617948 516139018 716340717 798126774 986318773 956654814 522263965 712257419 142036863 201845169 119458627 21819766 226705248 647164845 876430018 962419470 730992551 63733619 999529443 249643775 624226318 150924041 82468751 747085549 634914951 508572907 882074577 465938472 858295371 227545927 48121009 913539991 769783882 577268391 786957753 440477908 769543688 676108222 887839233 369740775 719583336 444921497 678630259 308731499 880993704 616540110 998088279 577628682 699286943 702529562 787077850 339236137 766421166 351005643 299964418 286873845 247962417 523224741 378748050 618821953 148161810 597684881 94478451 294920344 518781152 716460814 877270697 868984004 178065963 176024314 217577876 974789461 476867299 343919920 663618134 483832925 130267357 592040322 927951631 110571449 278587152 427147141 847726835 306569753 79106035 594442262 347042442 295520829 703610435 757053600 428588305 841001403 849768484 913419894 353767874 78985938 807494340 244359507 968424320 893483792 459693428 426546656 952451419 82348654 729671484 882194674 770144173 911498342 474465359 550366663 815420742 838839657 641159995 789359693 524786002 456450809 498364662 430269663 179146836 238114463 231749322 442639654 235592426 72500700 503288639 921466393 580751204 783955328 428708402 548685305 969024805 717301493 207970116 268619101 417779575 3805216 76944289 765220196 703370241 612216618 863699736 815420742 672265118 616540110 402287062 232590001 926870758 248082514 18937438 525386487 53885665 575587033 274864145 69978663 265136288 504729803 807374243 717421590 225143987 684154721 498004371 865140900 276425406 472183516 178786545 260572602 107208733 90635347 471342837 445161691 819383943 287594427 626388064 875709436 889040203 78145259 568981698 51363628 916302222 698806555 575466936 146480452 464977696 33108884 415137441 222501853 58449351 676468513 301525679 121139985 190796245 907655238 317978968 691480638 182149261 245680574 682593460 339596428 971186551 88713795 923628139 677189095 49442076 680431714 468580606 37912764 88953989 196320707 891562240 795965028 580871301 299363933 504729803 252165812 216977391 318219162 213254384 369740775 889520591 348963994 389676877 936598615 267778422 160411704 351486031 30706944 811097250 303807522 447083243 506651355 756212921 62172358 156928891 519381637 458252264 981995281 390157265 87632922 507371937 415137441 825148599 703370241 104806793 738078274 217337682 599486336 192237409 463896823 931914832 908135626 813739384 402647353 898527866 582192368 800528714 83309430 320861296 237513978 654851053 4765992 883996129 335393033 65655171 133630073 303807522 854572364 575226742 134590849 852770909 159811219 629030198 566699855 37552473 891802434 145399579 215656324 131468327 123902216 518060570 107208733 657012799 849047902 610174969 257810371 381510281 631312041 515898824 586515860 882795159 571984123 24942288 853731685 33469175 323863721 678029774 507371937 883275547 483832925 175183635 834996553 371542230 86191758 404328711 536795702 315937319 910297372 382471057 817702585 706252569 959657239 456210615 293839471 102645047 496923498 3925313 888800009 286993942 905253298 838479366 974909558 362895246 761497189 67456626 326385758 601167694 42596547 317858871 496923498 961458694 802330169 729191096 63373328 675868028 702289368 294319859 310653051 495242140 228626800 930353571 602728955 645363390 841001403 364936895 579430137 295040441 175904217 351726225 217217585 156088212 491759327 279908219 908976305 367939320 773386792 888079427 69017887 836798008 689679183 501006796 739159147 251325133 866702161 351846322 17256080 71179633 222862144 605971574 725828380 518300764 156088212 871145750 375385334 2964537 527428136 991242750 898768060 241597276 292038016 440477908 305248686 241477179 677549386 375025043 523825226 53525374 366378059 281589577 395561630 765460390 248923193 963860634 147441228 455730227 337194488 32628496 115735620 722465664 252285909 642360965 334071966 681272393 506651355 651968725 287474330 541119194 113453777 554930349 657132896 74182058 865981579 534273665 256008916 137232983 375025043 339956719 178065963 674306767 363375634 562616557 304528104 11611521 905253298 130987939 475065844 161252383 146360355 637076697 255168237 707213345 293959568 900449418 549886275 889880882 77544774 644162420 678390065 850849357 905133201 107929315 850609163 28184907 869344295 500406311 529349688 955814135 531631531 544962298 825749084 499445535 306209462 366257962 327466631 579189943 753810981 46079360 868263422 752009526 757774182 403367935 271621526 911618439 289515979 785036201 503048445 60971388 774107374 256249110 355209038 141676572 874748660 551447536 740480214 431710827 399404734 25062385 150203459 10530648 346441957 407811524 662777455 875349145 350645352 67096335 953772486 580150719 758975152 491278939 846645962 977911983 129426678 169899367 932995705 370581454 838719560 276185212 438316162 204847594 545562783 832834807 783474940 839079851 673225894 510014071 638998249 639238443 48121009 727269544 669863178 606091671 621824378 725588186 645843778 193918767 838599463 627468937 308251111 10890939 329027892 932515317 118738045 69498275 660735806 209291183 317618677 114774844 6687544 959176851 415858023 601768179 576187518 668542111 757654085 501847475 889640688 991122653 643922226 474105068 187193335 693522287 398083667 143357930 399765025 446122467 224663599 710095673 863939930 173382180 355929620 689198795 332150414 443360236 934076578 354608553 346201763 492600006 947887733 633233593 255168237 853491491 933355996 57848866 394720951 809055601 104326405 707693733 998208376 10290454 307890820 121860567 761497189 168458203 970826260 548204917 296001217 1042985 98681846 712857904 761737383 770624561 937079003 27104034 100002913 4405701 233670874 439156841 559133744 951370546 716701008 49562173 17976662 897687187 195960416 497644080 70218857 875949630 949328897 43437226 22300154 285192487 843763634 86071661 827190248 728230320 59290030 588557509 593001098 772185822 436034319 450445959 236673299 968424320 516259115 849768484 35150533 356410008 362054567 856734110 976230625 817822682 16655595 489477484 914140476 533553083 165936166 442039169 20378602 522984547 217818070 587116345 308131014 730512163 213014190 131468327 245560477 148762295 610174969 336594003 145519676 256969692 727990126 835236747 546523559 718982851 405769875 568381213 545442686 254087364 317378483 935637839 5246380 865861482 221541077 658333866 846405768 617620983 106007763 946686763 202445654 434112767 243398731 465217890 722585761 902130776 144438803 802930654 803170848 378387759 143598124 882554965 307050141 617620983 112252807 967583641 511695429 995326048 383551930 598525560 925669788 439757326 747325743 34069660 748166422 981514893 701088398 814099675 696044324 296361508 3685119 585074696 357010493 881233898 908736111 500886699 447923922 56527799 303567328 381630378 140955990 300564903 811697735 253727073 183350231 656292217 201845169 388956295 431230439 276425406 188994790 174463053 950049479 516139018 165455778 843283246 445161691 247361932 244119313 109250382 296481605 591199643 486955447 679831229 958576366 539197642 329268086 802930654 297442381 62532649 484553507 305248686 656532411 102164659 854091976 632633108 386194064 56527799 824187823 638878152 383672027 110091061 737717983 534033471 662657358 819383943 908856208 409132591 712257419 953772486 283991517 451046444 223702823 101203883 426426559 194879543 844724410 661816679 141556475 132188909 906574365 444080818 214815645 371302036 804732109 365177089 921826684 362775149 203526527 762337868 903451843 543761328 503048445 561655781 216617100 263334833 31187332 486234865 832714710 90995638 249643775 675267543 675507737 851449842 575827227 101203883 845565089 791401342 48841591 20858990 813979578 634074272 9089484 596724105 902370970 995926533 191276633 47520524 169178785 933956481 550366663 529349688 243398731 68537499 78505550 35150533 408772300 258170662 337674876 813859481 609094096 227065539 549766178 245080089 203286333 312694700 93637772 879792734 931434444 828030927 279908219 826469666 404929196 803531139 719823530 485634380 960017530 883035353 402166965 709134897 525986972 538116769 152845593 189355081 508572907 928912407 888079427 777349993 661576485 135551625 802450266 354128165 633233593 908375820 89434377 687757631 247001641 169899367 843763634 566219467 868383519 263695124 893363695 798847356 242798246 843043052 954973456 252285909 206168661 353287486 712617710 506050870 911858633 343079241 275344533 926150176 694603160 350044867 979953632 992443720 764379517 841481791 102885241 613417588 796805707 159090637 328907795 124622798 345240987 761617286 915941931 593001098 203526527 285792972 131708521 792362118 88953989 601527985 657733381 106728345 538477060 296001217 938400070 790560663 430629954 908255723 993284399 405289487 746605161 130387454 540758903 112733195 793442991 519021346 939841234 849288096 203166236 562256266 134831043 576427712 646684457 928432019 229707673 617620983 596724105 871626138 71419827 269339683 488156417 242317858 264055415 510974847 405769875 431350536 685475788 840040627 347763024 114054262 391358235 494641655 90875541 566699855 847246447 352086516 388836198 484913798 350885546 604050022 977191401 655091247 812178123 124742895 734835655 274623951 393039593 444321012 770624561 925189400 464016920 102765144 40194607 74182058 771825531 502928348 267778422 174222859 21819766 504249415 845925380 666260268 527668330 161492577 410813949 988000131 828391218 172061113 832714710 962779761 486234865 504249415 70218857 562136169 344160114 270540653 367939320 993524593 576187518 144919191 768102524 203766721 930833959 860577214 52444501 224543502 385353385 339116040 73821767 67576723 940081428 235352232 499445535 58809642 130987939 271741623 924468818 778190672 205688273 773867180 922066878 587716830 604770604 482031470 725468089 795724834 999889734 275704824 746725258 635755630 651728531 873907981 673105797 387274937 518300764 979233050 303327134 120179209 450325862 34189757 529229591 795965028 348723800 11011036 528869300 384632803 22780542 589518285 442639654 664699007 339116040 16895789 776989702 990522168 705652084 17015886 979593341 938039779 188274208 407211039 784555813 563817527 255528528 928792310 987399646 20979087 123301731 329388183 800168423 922427169 361454082 339356234 16655595 639718831 48961688 940681913 103485726 232109613 639598734 147681422 155007339 216977391 412975695 262614251 200283908 844123925 793683185 133990364 278226861 193198185 255528528 361814373 763058450 71059536 694963451 807494340 57488575 298162963 191516827 436034319 774707859 444321012 985117803 587836927 104086211 565138594 202685848 30346653 129186484 838959754 850609163 764019226 84150109 709975576 695684033 325665176 739999826 878711861 498845050 357490881 373103491 99402428 963620440 106127860 705772181 413696277 778911254 218298458 961939082 783354843 5486574 135191334 290236561 171100337 651368240 375265237 754171272 409132591 563577333 974429170 591680031 179146836 916782610 182029164 115615523 12091909 913539991 988960907 103125435 393039593 397723376 505450385 51243531 688598310 141436378 542800552 385833773 704571211 894564665 981154602 332270511 909696887 621944475 819624137 973468394 17736468 642841353 825869181 839199948 347402733 515778727 125823768 459573331 783474940 384272512 863219348 29505974 225264084 673466088 705411890 64934589 400125316 462335562 545202492 145039288 651128046 359772724 678990550 372863297 127865417 785636686 50402852 956054329 599005948 352566904 677669483 712137322 756813406 375265237 132429103 733874879 72260506 624946900 755732533 62052261 794043476 405769875 663858328 250124163 831513740 305729074 476747202 998688764 160892092 921346296 610295066 352086516 159571025 1403276 162933741 486114768 831393643 602248567 77304580 650407464 485274089 144198609 495722528 440237714 883155450 595763329 168097912 887238748 462936047 887238748 388355810 929753086 402287062 711056449 367458932 342478756 10050260 568981698 534633956 252766297 206168661 419100642 825508890 437715677 166416554 178186060 706732957 560214617 675747931 601888276 757774182 146840743 554810252 19417826 830913255 112613098 368539805 768462815 918343871 873547690 786117074 921226199 776749508 903331746 742641960 896486217 3565022 988960907 147801519 749007101 67937014 402166965 559133744 178306157 49442076 48361203 639718831 449124892 825268696 63613522 751649235 533673180 892402919 714659359 409372785 625787579 407571330 383551930 728230320 772666210 540879000 183470328 504249415 853011103 930233474 536195217 231509128 723666634 994845660 205568176 607652932 40795092 913179700 150203459 418259963 402887547 31187332 84030012 219019040 433151991 518901249 108529800 90034862 151284332 55446926 47280330 488156417 716100523 48481300 719943627 135071237 280268510 778791157 133870267 898287672 882915256 650887852 697725682 656292217 186833044 686676758 789479790 926510467 736036625 787438141 69738469 7408126 51483725 996406921 733994976 600327015 458492458 149002489 785516589 578109070 89674571 125703671 116216008 490198066 576067421 825028502 976350722 94718645 672385215 603929925 952811710 759815831 357370784 230188061 387755325 833795583 896005829 433992670 790080275 573425287 875108951 728350417 634554660 449004795 233190486 254207461 835957329 213494578 979833535 989321198 456450809 240276209 613657782 615699431 903692037 603929925 192357506 724507313 857214498 941762786 728710708 111412128 905853783 128585999 815781033 782514164 890601464 179266933 959056754 947167151 548805402 264055415 4645895 929993280 756333018 469781576 412495307 568741504 783955328 953892583 884596614 685115497 437355386 340437107 747926228 538356963 554449961 25182482 599606433 51243531 501727378 527067845 626748355 499685729 282910644 616420013 643561935 695684033 817942779 912339021 3805216 915221349 316657901 356650202 848087126 504969997 900329321 407811524 304648201 384993094 136032013 363735925 550967148 914620864 408171815 637917376 369620678 556851901 928071728 953051904 133990364 161492577 761857480 446963146 999649540 558653356 838959754 794523864 424384910 366738350 495362237 248682999 982835960 840881306 494761752 140715796 523585032 199082938 339236137 981394796 923147751 707333442 551447536 12572297 967223350 629750780 559614132 133990364 860937505 228146412 55206732 718262269 637436988 895165150 399044443 165335681 927831534 31787817 282790547 973828685 148161810 648606009 419581030 70218857 767502039 27464325 153205884 882074577 729431290 448644504 151644623 315096640 371061842 729551387 708534412 438796550 942603465 246641350 880993704 892042628 609214193 152125011 71900215 903451843 287594427 32388302 297802672 889640688 93637772 557932774 9329678 891682337 739519438 545802977 56647896 365657477 223702823 398203764 702289368 802930654 333951869 483953022 986438870 11731618 923387945 580390913 208210310 121260082 268258810 816501615 888800009 834636262 16655595 920265423 493800976 926750661 103365629 275704824 190075663 348843897 517700279 298403157 786717559 826709860 608613708 309572178 112613098 174102762 631912526 119939015 233790971 335152839 527187942 729671484 710576061 625787579 63373328 245680574 541959873 665179395 689438989 132068812 295761023 565138594 704090823 159090637 334912645 566219467 179987515 732193521 884116226 673946476 384392609 776149023 851930230 382350960 861297796 679230744 204967691 996166727 83789818 413456083 878591764 63373328 441078393 271501429 873067302 696524712 500886699 50162658 110691546 501487184 420181515 811937929 294439956 238354657 364336410 158610249 819984428 842082276 345841472 51483725 131108036 330589153 925309497 419340836 369860872 129066387 328187213 660255418 532712404 23621221 83309430 29025586 357851172 996887309 985598191 488396611 885797584 63613522 692801705 517219891 333951869 629030198 234271359 276545503 90154959 662297067 740119923 229587576 919184550 559013647 262013766 237754172 218658749 465578181 800048326 290476755 795364543 557212192 108529800 9089484 941762786 949208800 723666634 578829652 709014800 939480943 742521863 585074696 544602007 915461543 911017954 141676572 255048140 273182787 785756783 643201644 94358354 884476517 243038440 427867723 812178123 358691851 29866265 416338411 401806674 124862992 170019464 914740961 722465664 139875117 353287486 666500462 610415163 975149752 883635838 661696582 141316281 880153025 26143258 634554660 809656086 404088517 680912102 432071118 190796245 825148599 667941626 215175936 115495426 413335986 267057840 23140833 583753629 631912526 379348535 559614132 497403886 77905065 47160233 260812796 189355081 192237409 725227895 131948715 840761209 926750661 148522101 349444382 70819342 386434258 785036201 582072271 342839047 451166541 130027163 892643113 483712828 772666210 977791886 161732771 239555627 817582488 148882392 953051904 936838809 648726106 656892702 70939439 244239410 618221468 773266695 320861296 19057535 276425406 996286824 809776183 176024314 539678030 69258081 108169509 985237900 874628563 47040136 956174426 154887242 623385639 529589882 793322894 443480333 646684457 976470819 994845660 699046749 88353504 315336834 342598853 353287486 488276514 446963146 776389217 880153025 589278091 379828923 939841234 79226132 462575756 533312889 578829652 660855903 198602550 708774606 186472753 904893007 415377635 775548538 376826498 340196913 614138170 529950173 58329254 246401156 937199100 554329864 450806250 85951564 770744658 138914341 792001827 718382366 899728836 181308582 908015529 308371208 837998978 765220196 412855598 867422743 453088093 206048564 793322894 69017887 888920106 454409160 263094639 515418436 528989397 939601040 763178547 135791819 622905251 625907676 535354538 313175088 185151686 793563088 62172358 402046868 565378788 427507432 333471481 501607281 62652746 799327744 916542416 754171272 92797093 15094334 347402733 277626376 300324709 696044324 433632379 903932231 613777879 112372904 790080275 626748355 584354114 926630564 501967572 6087059 288435106 477948172 187913917 33709369 315577028 879432443 348003218 798487065 189595275 353287486 340317010 514337563 911618439 175664023 476987396 948248024 308131014 455490033 184070813 2844440 801969878 242317858 741080699 34429951 108409703 790200372 321461781 442759751 851209648 463176241 191516827 423664328 726188671 895525441 277626376 99762719 72140409 987159452 22900639 38273055 709975576 263094639 448884698 243638925 223462629 750208071 303687425 666740656 227185636 343319435 109130285 410813949 266937743 510254265 694963451 95199033 665899977 764859905 2484149 149362780 991002556 328907795 699286943 281349383 415858023 150323556 855052752 76824192 677309192 448884698 361814373 417179090 974789461 339956719 937559391 683073848 625427288 701088398 924348721 843163149 191276633 966262574 598525560 958696463 819864331 736637110 626027773 400605704 514097369 950409770 406250263 613417588 959296948 617260692 513857175 415858023 429909372 764259420 251925618 664578910 172181210 812418317 204247109 700608010 56407702 982595766 833315195 29145683 131468327 381390184 680551811 33949563 437595580 117056687 150924041 777349993 234631650 555410737 396522406 990402071 912339021 443840624 800528714 550606857 727990126 674546961 584234017 358091366 467019345 272101914 753450690 275224436 419100642 779151448 729791581 920385520 531511434 888199524 386794549 824307920 660735806 841842082 104806793 328547504 918824259 370701551 869464392 754291369 539077545 872707011 795724834 515538533 88353504 544842201 611015648 941762786 499445535 558172968 863699736 146720646 460293913 871746235 641760480 959056754 917863483 112252807 127625223 851810133 117777269 780952903 917383095 860096826 866582064 222261659 378627953 439517132 205087788 46439651 186232559 644642808 828151024 256849595 883275547 280508704 413335986 667581335 876670212 210011765 701088398 537396187 994365272 902370970 608373514 401326286 69378178 531631531 456090518 875829533 375745625 168698397 617741080 617260692 473744777 980794311 171941016 984036930 580270816 583033047 328307310 530070270 697005100 415858023 445521982 145039288 919184550 678630259 479269239 652449113 169298882 646564360 228266509 426786850 570903250 96640197 257930468 207970116 49201882 295040441 928552116 291077240 899488642 674907252 284952293 65775268 556491610 807494340 654851053 489237290 999289249 107328830 785876880 54726344 991242750 77664871 129786969 730752357 866942355 588077121 63973813 738678759 969625290 596363814 823467241 75262931 657373090 334912645 414056568 199683423 505930773 427987820 214095063 196440804 565378788 836437717 564418012 620263117 452367511 424865298 952451419 43917614 163053838 874868757 783354843 346922345 730512163 752850205 654730956 841121500 3444925 458852749 79946714 76343804 32388302 538717254 326625952 810016377 103125435 491759327 305008492 354968844 333591578 936958906 401086092 462095368 149843168 862138475 112132710 386554355 101804368 340437107 993164302 826829957 140235408 112372904 608373514 9449775 636476212 854812558 277626376 138073662 172781695 580511010 929753086 862138475 211813220 263935318 275224436 365657477 249643775 250244260 422703552 70699245 769543688 19057535 673466088 590238867 502808251 781313194 265976967 943444144 388836198 479629530 300685000 101924465 538597157 675267543 988240325 992683914 986198676 548204917 390997944 926150176 415377635 833075001 164254808 29626071 81628072 91476026 783595037 927110952 459813525 700608010 176504702 540879000 642721256 295040441 916422319 660375515 510374362 77784968 29145683 588797703 525746778 242558052 531991822 621824378 584714405 183470328 343679726 863339445 562496460 825148599 661816679 525746778 407331136 171700822 445401885 639838928 800528714 786117074 958816560 278707249 406130166 673345991 370941745 412855598 896125926 945005405 292398307 30827041 685115497 619542535 146960840 217938167 364576604 95199033 461735077 527548233 932395220 988480519 102404853 257450080 580751204 329868571 458612555 576908100 451406735 215896518 948007830 199443229 996887309 32268205 245800671 436874998 446122467 671544536 838359269 132549200 380789699 128585999 67336529 481911373 507732228 22660445 968544417 999169152 631191944 986799161 825388793 403488032 838959754 362294761 889880882 472183516 247602126 505570482 550366663 966262574 749367392 199923617 549165693 975149752 519021346 478308463 980193826 382591154 120899791 821305495 98441652 57608672 980313923 997367697 392198914 353167389 544121619 928311922 657493187 27824616 122461052 193918767 959777336 34790242 306329559 391718526 415617829 569101795 221300883 94958839 47760718 253486879 293719374 827910830 256129013 605130895 809055601 442279363 144558900 353767874 577388488 946446569 74662446 254447655 507251840 759815831 275344533 767862330 992203526 115615523 330348959 630111071 194759446 490798551 712137322 48000912 646204069 634914951 518300764 960017530 552528409 810496765 285913069 659054448 988840810 715139747 815660936 72500700 967703738 979353147 106127860 157409279 735316043 506050870 361574179 922427169 401686577 269579877 687757631 269940168 358331560 638037473 139274632 931554541 914740961 12812491 405409584 889880882 662897552 865020803 930233474 915101252 253606976 990882459 859976729 590479061 851569939 312454506 454289063 433872573 467259539 89314280 716821105 641760480 440958296 761857480 969625290 917743386 495482334 684154721 175183635 459693428 756212921 360253112 513256690 107088636 586996248 32748593 613777879 726068574 310412857 598045172 861537990 624586609 412735501 629030198 879912831 385713676 189595275 372863297 144318706 825989278 979593341 731112648 35030436 561175393 795604737 83549624 875709436 310292760 15935013 841721985 439517132 655811829 492960297 863099251 46439651 777229896 923387945 890721561 815660936 897086702 173021889 172181210 532592307 981875184 863939930 722705858 268739198 149002489 164855293 825148599 68177208 543881425 13533073 690760056 322302460 715379941 608853902 161012189 960978306 486475059 626147870 48961688 448764601 186112462 635995824 925909982 702409465 655091247 335513130 881834383 237033590 925069303 205928467 694963451 416818799 819984428 681392490 693041899 104326405 761977577 192477603 94358354 240036015 691360541 124862992 455249839 791881730 899368545 115135135 935998130 278947443 756693309 286273360 659054448 163053838 871385944 877270697 129546775 561895975 144558900 742281669 552888700 901170000 11731618 983316348 367939320 98201458 425585880 682353266 839800433 805933079 583393338 172181210 577508585 793563088 170499852 194999640 980193826 220340107 685115497 965301798 602248567 582672756 945245599 478308463 882675062 557572483 8008611 240156112 884836808 703370241 110931740 294079665 997727988 697965876 542800552 720303918 296961993 522384062 551447536 583873726 359532530 576187518 706012375 80186908 679591035 135671722 570783153 908015529 714659359 852050327 709014800 823227047 840761209 364936895 364816798 783595037 110931740 637076697 298283060 307050141 47640621 413456083 884716711 252766297 361934470 963500343 679711132 570302765 596483911 642240868 991963332 7167932 591920225 365056992 224063114 176384605 188754596 122941440 793563088 467980121 682694 393039593 181068388 959537142 930954056 966742962 742641960 948368121 979833535 396042018 510734653 753810981 767381942 75983513 590479061 255888819 131588424 222742047 163173935 201484878 751889429 28425101 919064453 398323861 842562664 678630259 650767755 563577333 134350655 190916342 172901792 996046630 688598310 44398002 184311007 750087974 434352961 707093248 92676996 4285604 755492339 37192182 549165693 325184788 210372056 486354962 123782119 251805521 281229286 317618677 824187823 498965147 317018192 600807403 302246261 13533073 792722409 795484640 848447417 566219467 371302036 194999640 981274699 569822377 47160233 746364967 123782119 381149990 263695124 887959330 109250382 498845050 411774725 297562478 768823106 404929196 337554779 353047292 570062571 442519557 826229472 186352656 599246142 359532530 382951445 5966962 631912526 740840505 660976000 982956057 346321860 104806793 8609096 261773572 745884579 39474025 90755444 981634990 633233593 302486455 901650388 363495731 8248805 889280397 946086278 754411466 865741385 827550539 949569091 139034438 951971031 189355081 793683185 927711437 72740894 445161691 462215465 140955990 118738045 794283670 358331560 819624137 992563817 249523678 578109070 519741928 120539500 625427288 444441109 799808132 532111919 769903979 751529138 695203645 870184974 138554050 761497189 502087669 72860991 341397883 343679726 681752781 218298458 262374057 480830500 663257843 306569753 631672332 852770909 687037049 289756173 669863178 884716711 925909982 824548114 589037897 729671484 955573941 83669721 367338835 437115192 327466631 192357506 536555508 665539686 123061537 124622798 516379212 110091061 196680998 394961145 107208733 988360422 869944780 549525984 840400918 519021346 370941745 252646200 704931502 931074153 406970845 15694819 822986853 30947138 908616014 457771876 561295490 276665600 519982122 719343142 667221044 492600006 376826498 47760718 410813949 713938777 954613165 912339021 303927619 860577214 978632565 961458694 810857056 658213769 680792005 679951326 617861177 751889429 423063843 855773334 487796126 408171815 454649354 523825226 62412552 783595037 735195946 10530648 485514283 608133320 747085549 623625833 670583760 340557204 229707673 161252383 254087364 878351570 537756478 362775149 970946357 631312041 40194607 280148413 166176360 778310769 406730651 652809404 833675486 706132472 978752662 222862144 339236137 634314466 91355929 872947205 645123196 315456931 368539805 699166846 443240139 471222740 423544231 69978663 946086278 167857718 694603160 990882459 183230134 563697430 539678030 108890091 255288334 474825650 490918648 74182058 136752595 41395577 993164302 319660326 56527799 146480452 964220925 411534531 442279363 500766602 670944051 297562478 394000369 940802010 722345567 617260692 138794244 950169576 663738231 631191944 996286824 920025229 914981155 803891430 107448927 407571330 612576909 905013104 332270511 773867180 142036863 833915680 760776607 647164845 818663361 818543264 551087245 306089365 25782967 715379941 540158418 612216618 857574789 972988006 359292336 501847475 119458627 632633108 773146598 888079427 613657782 38633346 793803282 590238867 848687611 219859719 639358540 440237714 930233474 813619287 414176665 617380789 973468394 742161572 992683914 848567514 960858209 189715372 750928653 603089246 456090518 166176360 946686763 520462510 696764906 745644385 605010798 281109189 353767874 461374786 321101490 508332713 854332170 42596547 586395763 518661055 370341260 649806979 976951207 206889243 596003523 127745320 972507618 32028011 497403886 849288096 144318706 422223164 157529376 406370360 781553388 335633227 108169509 431470633 984517318 84870691 229347382 645603584 890241173 285432681 90034862 888679912 763058450 42356353 747686034 779151448 862258572 402527256 527187942 748887004 344760599 935878033 998088279 241116888 963380246 149963265 406130166 555050446 761857480 171100337 58569448 226224860 853731685 45478875 700007525 42956838 782634261 971546842 684515012 409853173 840280821 379108341 49081785 252766297 418500157 400845898 332870996 277746473 284471905 479269239 73341379 387995519 119578724 637917376 38873540 548445111 464377211 279908219 724387216 161732771 552408312 22420251 893844083 428107917 361814373 731472939 523705129 302846746 36591697 839079851 777349993 599606433 349804673 857935080 597444687 581832077 382711251 743842930 143718221 150323556 535114344 227425830 461975271 821065301 656532411 941522592 415858023 407691427 422343261 59650321 132429103 411294337 245800671 639238443 702769756 500766602 229107188 528388912 906574365 728350417 157289182 102645047 81868266 705291793 440237714 488997096 524665905 247842320 123902216 532712404 961098403 587356539 29746168 690399765 897687187 313895670 883035353 452247414 705411890 293599277 859736535 325424982 960618015 938880458 688117922 562496460 402046868 500286214 149362780 934677063 976590916 114294456 74061961 942843659 152125011 531991822 335873421 363976119 376586304 482271664 374184364 525626681 930353571 321701975 499925923 106368054 973828685 112132710 584113920 296961993 281589577 63133134 334312160 61331679 740720408 454769451 410693852 812178123 539557933 952571516 74662446 245680574 919544841 431590730 27464325 674907252 754051175 79586423 796085125 554089670 112012613 483953022 693882578 535714829 513977272 652088822 799928229 534153568 163654323 678029774 305128589 565018497 166176360 807013952 887599039 585314890 688358116 351245837 505210191 440958296 262374057 112493001 697725682 538957448 390037168 340076816 381990669 881834383 536675605 398083667 682233169 357010493 828871606 576307615 875229048 561295490 215416130 942483368 555771028 387755325 776629411 713458389 482511858 51003337 655331441 456210615 723906828 357971269 956534717 561655781 319900520 955573941 899969030 359412433 603089246 897687187 794403767 299724224 194639349 787798432 463056144 745644385 533553083 50883240 122941440 695083548 509893974 294680150 915821834 117056687 762698159 930713862 876790309 828391218 640919801 531751628 108289606 34069660 973948782 953292098 970345872 629750780 967223350 4765992 244359507 561295490 168578300 504249415 388115616 55807217 516979697 244599701 346441957 196200610 573785578 586876151 152245108 708174121 221060689 55567023 904652813 476867299 995806436 353647777 437595580 489237290 546763753 118377754 975750237 820344719 700848204 194879543 76583998 73821767 219979816 558773453 341758174 99762719 73341379 120539500 784195522 764859905 307410432 697485488 29866265 396402309 969385096 895045053 281349383 45478875 935397645 490558357 604770604 772305919 166056263 150083362 849408193 314496155 667341141 594922650 63493425 88953989 966983156 545442686 702529562 971787036 874148175 88593698 472784001 531511434 38873540 662176970 687157146 249763872 352566904 660495612 85831467 980434020 13893364 799327744 75383028 459693428 712017225 908495917 45598972 691360541 220220010 181068388 96039712 903331746 649326591 772065725 136032013 605491186 223102338 693522287 564177818 73221282 495362237 106247957 477107493 798607162 692681608 201244684 194158961 792602312 617260692 279547928 510494459 117176784 485033895 828271121 379468632 710215770 946326472 31547623 352927195 475306038 871626138 317258386 293238986 773386792 764859905 676468513 745043900 368179514 204247109 92196608 121139985 600807403 648846203 307290335 473624680 716821105 902851358 532352113 196560901 413215889 306930044 798487065 97480876 323143139 321942169 965301798 569942474 568381213 877751085 330228862 723186246 110091061 288795397 15094334 659294642 515778727 133750170 783234746 850609163 871866332 654730956 194399155 85471176 113814068 87512825 483592731 645123196 202306 915461543 883155450 143237833 705531987 763058450 522504159 78025162 929152601 450686153 298042866 94478451 559133744 553248991 100483301 510494459 107929315 359412433 711656934 825749084 584354114 987759937 144438803 803050751 218178361 595643232 194399155 747926228 896125926 722946052 481911373 642601159 839440142 816381518 532952598 221901368 616540110 72860991 418380060 463896823 359412433 825749084 479989821 542320164 347042442 689919377 198362356 832714710 653529986 356049717 834756359 145399579 804011527 782153873 680912102 703250144 953652389 268258810 907174850 533072695 495722528 166296457 760416316 423063843 247361932 136152110 533913374 718502463 109130285 14734043 134590849 976711013 838359269 66976238 568020922 916302222 93517675 729551387 202805945 337074391 376826498 54486150 409012494 487315738 914500767 684515012 785636686 23140833 798727259 457411585 632873302 138794244 655571635 115735620 170980240 772906404 879072152 826589763 137353080 799928229 948488218 647405039 724387216 342839047 21819766 536315314 275584727 211452929 260692699 582192368 284231711 257209886 977311498 784195522 103725920 751769332 933836384 67216432 464977696 547604432 47160233 834756359 651488337 846766059 146840743 89314280 529349688 783354843 152365205 777590187 115375329 791881730 594442262 13292879 572464511 808695310 823347144 94358354 478428560 94958839 772065725 337434682 580270816 219619525 59530224 24702094 644883002 975269849 740119923 898167575 227906218 2484149 877030503 861417893 922787460 600687306 892643113 681992975 561535684 101804368 472663904 286273360 201725072 883876032 317618677 518661055 948248024 682473363 508332713 8969387 168578300 626748355 131948715 111772419 86672146 416938896 423304037 941282398 146600549 186112462 346081666 762097674 25302579 198842744 436874998 409132591 770504464 308371208 328427407 146360355 992924108 25662870 14013461 497523983 125103186 43677420 261052990 295400732 609934775 723186246 11011036 99762719 559854326 64694395 526107069 822626562 571143444 665059298 485994671 902370970 647164845 285072390 681272393 624826803 723426440 132669297 643321741 456931197 713698583 13292879 792962603 556251416 929392795 808455116 449845474 193078088 412135016 70939439 877751085 388235713 377907371 567180243 676948901 317378483 157529376 151644623 685715982 521783577 540038321 691961026 357250687 759935928 526347263 845925380 54366053 839800433 620263117 534273665 587116345 65535074 362775149 921346296 850729260 252045715 289275785 156208309 249163387 562136169 60010612 564297915 707813830 606572059 727269544 926270273 846766059 779872030 595763329 775188247 608253417 488276514 314255961 460534107 453568481 376586304 991242750 113573874 384512706 430269663 272222011 71179633 899969030 565258691 962779761 280388607 74061961 11011036 755852630 184671298 22780542 464257114 423424134 608493611 143117736 763779032 266337258 508813101 96640197 944885308 221781271 127745320 73581573 823827532 761136898 584234017 525986972 356770299 34790242 974789461 473984971 416098217 56287605 616179819 341758174 220340107 318939744 943924532 273182787 896486217 528629106 283150838 828631412 39474025 706853054 514457660 792842506 30466750 254567752 702529562 761016801 660976000 915581640 5246380 85591273 438436259 241236985 270900944 903692037 680431714 965782186 844364119 278947443 510734653 830312770 681392490 822746659 523945323 153446078 981755087 192597700 963500343 552768603 986558967 693041899 237994366 47040136 750928653 481190791 124622798 846405768 44277905 115255232 346802248 742281669 74662446 308371208 160892092 326025467 290236561 776989702 554930349 818062876 106968539 657252993 869704586 812298220 487435835 534754053 656292217 633353690 583513435 71780118 479269239 64334104 153806369 959777336 584834502 160892092 662777455 787678335 929392795 436274513 634674757 498484759 978872759 235952717 976230625 860457117 810736959 349924770 121500276 443360236 91836317 189234984 292998792 821305495 947767636 898888157 679591035 465818375 697005100 495122043 11851715 743362542 693642384 559253841 356770299 155727921 581351689 461855174 208090213 775548538 886398069 831033352 160531801 397483182 47520524 628189519 839800433 482151567 303567328 281349383 43197032 421742776 845805283 934436869 540278515 441678878 134230558 382471057 655811829 411534531 623505736 505330288 49081785 468940897 428468208 851449842 637196794 424384910 730992551 265496579 370941745 638157570 335753324 349324285 88233407 531991822 779631836 720664209 839800433 793803282 285792972 630471362 992323623 547124044 930113377 731232745 728710708 122821343 349084091 487676029 608013223 207729922 291437531 164254808 740720408 220700398 548805402 169418979 981514893 414056568 299724224 945245599 105407278 68297305 299844321 152485302 835957329 380549505 201965266 302366358 250244260 430509857 746485064 871145750 779511739 377907371 684755206 803891430 977791886 535474635 296241411 775188247 965662089 610775454 837518590 886518166 343679726 89074086 16775692 10770842 268258810 323263236 932395220 569822377 169178785 392799399 774587762 806053176 192957991 880393219 693161996 871385944 721504888 135431528 462695853 642601159 814219772 634074272 463536532 367579029 141916766 41635771 723906828 537996672 171340531 190556051 886638263 551087245 846886156 920385520 810977153 737958177 657853478 586876151 585555084 404448808 820104525 777349993 408532106 758374667 8729193 769303494 563096945 915941931 633473787 499685729 663017649 400605704 996887309 536195217 375265237 304047716 322902945 279187637 576187518 926750661 951971031 204727497 317738774 615819528 988720713 518180667 804972303 261413281 986198676 212894093 386194064 492119618 886638263 703370241 353407583 678029774 164254808 556491610 388355810 496443110 315456931 390397459 58569448 171460628 527908524 517940473 238835045 174463053 148522101 70699245 485394186 979233050 527187942 701688883 886998554 437715677 939480943 430149566 759575637 121620373 606572059 484913798 490798551 944404920 575466936 339836622 164495002 868383519 450205765 318939744 204006915 980434020 326986243 816741809 96760294 530310464 154166660 602008373 134110461 450806250 254327558 572944899 968544417 685115497 914380670 417899672 503168542 393159690 721384791 366257962 629990974 825508890 876670212 60010612 25542773 55086635 404689002 357370784 743242445 42236256 655691732 408772300 206288758 534393762 392319011 57248381 263214736 637557085 608733805 451046444 267898519 188634499 228386606 269219586 607052447 708174121 114894941 899848933 606692156 935878033 735916528 288435106 910657663 598405463 126304156 160651898 580150719 254447655 591680031 728350417 637917376 176985090 28545198 575587033 250364357 550486760 961458694 658574060 186232559 360613403 839680336 396642503 343439532 395441533 319780423 250844745 978392371 515898824 314015767 168458203 457771876 492720103 983436445 693642384 172541501 902250873 723066149 186112462 294560053 849288096 150083362 891922531 959417045 286993942 783234746 523585032 374904946 792602312 617500886 158970540 264535803 711056449 68657596 760056025 605971574 981274699 792722409 504249415 386914646 476507008 447443534 542680455 79706520 187793820 240996791 948728412 812898705 208330407 969745387 126544350 254807946 410693852 242437955 386554355 90755444 363135440 740360117 141916766 557092095 606932350 669142596 377426983 1283179 658574060 502808251 771945628 480350112 394000369 500526408 37912764 101804368 577508585 2844440 171100337 506771452 535714829 131468327 349924770 4405701 693402190 97000488 640439413 840761209 150443653 621944475 965301798 232590001 60491000 664458813 169539076 249163387 227185636 154046563 754411466 65775268 558413162 666020074 403608129 533312889 530190367 349804673 945846084 988360422 320621102 178546351 167017039 567660631 470141867 756212921 454889548 140475602 739639535 123421828 762818256 769783882 258530953 558893550 761977577 473384486 407211039 655691732 216376906 11251230 752369817 626508161 645003099 141076087 898287672 467139442 328667601 392198914 154526951 993884884 8008611 911978730 73101185 832594613 844123925 931434444 99162234 825989278 899368545 481911373 321221587 451286638 632513011 945245599 240396306 998208376 952691613 792242021 133029588 207489728 556131319 673586185 929032504 524065420 976951207 537516284 960137627 443720527 784195522 150443653 333591578 867062452 187313432 496323013 401926771 843403343 463296338 55927314 263454930 324344109 806653661 498965147 448404310 626628258 964581216 220940592 834516165 583513435 530790852 476386911 508693004 874028078 577388488 409733076 700367816 688598310 340437107 544602007 665299492 827910830 188874693 923628139 88953989 262974542 13292879 385233288 715259844 477347687 130987939 944044629 112252807 729551387 34429951 338275361 559614132 291317434 433752476 310412857 678750356 923387945 876670212 559133744 102885241 29866265 970225775 849768484 43917614 314015767 385953870 653409889 528268815 347042442 582432562 124983089 249283484 352807098 400365510 687157146 335393033 403728226 183470328 261773572 412495307 881353995 996767212 88713795 825268696 611015648 622064572 48721494 972988006 773146598 89314280 737717983 939721137 326986243 210612250 406970845 137593274 226465054 2123858 598765754 972747812 202306 553008797 314736349 744923803 715740232 336353809 438196065 773626986 725948477 336594003 824067726 927471243 745764482 296121314 761256995 275104339 316537804 878351570 563337139 693762481 604410313 185511977 503408736 781553388 751288944 7047835 280868995 898047478 489357387 782994552 571503735 518901249 921706587 129546775 390037168 664218619 850969454 612336715 215536227 145759870 155247533 633233593 738798856 874508466 488636805 71059536 330949444 130147260 217818070 498604856 698446264 381270087 973948782 999409346 392799399 395921921 690279668 701929077 381270087 958936657 740600311 793563088 787438141 700848204 860577214 446002370 668902402 961578791 450926347 89314280 4645895 669622984 49562173 474585456 734355267 551447536 293238986 827430442 732914103 662176970 990402071 570663056 916182125 258050565 859496341 279187637 67456626 984277124 125823768 904412619 643081547 550726954 301285485 604890701 96039712 514697854 858535565 352326710 942963756 856734110 49081785 574746354 124742895 329508280 888319621 329868571 644883002 330348959 798487065 718862754 393159690 131108036 967103253 874028078 439637229 224423405 106728345 166176360 736757207 25302579 67336529 642000674 74902640 782153873 282190062 408291912 858655662 856734110 844964604 662657358 771705434 991242750 382110766 773146598 429909372 709735382 15334528 471943322 473384486 809055601 500046020 891682337 936478518 709855479 158850443 360733500 122821343 528028621 135911916 311733924 444921497 316297610 94238257 261773572 988240325 371542230 921466393 607412738 924949206 372863297 65895365 377426983 192957991 739999826 673105797 760056025 148522101 744443415 317258386 794643961 70699245 104926890 187193335 537035896 660615709 618821953 71900215 627829228 35510824 743362542 809055601 57968963 792362118 973828685 62652746 394360660 273302884 388596004 218898943 996286824 370341260 474585456 12091909 711296643 945966181 695684033 620263117 699647234 21579572 386073967 373703976 263815221 91596123 32868690 342839047 715379941 723306343 790680760 505930773 994605466 762217771 445161691 512896399 269579877 310172663 675387640 653770180 919424744 110571449 287834621 197521677 41635771 210372056 640079122 387635228 269219586 804011527 547964723 816141324 618821953 196080513 397002794 5846865 438556356 913419894 391598429 216256809 432671603 374064267 855292946 845324895 312934894 644762905 368419708 557092095 422823649 10170357 510614556 651728531 721504888 83069236 529709979 141676572 591439837 555050446 667821529 794643961 10410551 462575756 242437955 795604737 708054024 105046987 465337987 470502158 73461476 907775335 522023771 857334595 693882578 966382671 157409279 571984123 135071237 154286757 652449113 195960416 187073238 816621712 951850934 905373395 679831229 724987701 309692275 110691546 621464087 687637534 853131200 581952174 872827108 571023347 997848085 667941626 264295609 421262388 122220858 840761209 388475907 979353147 743602736 995566242 883395644 753690884 641640383 975149752 59410127 855413043 149122586 570542959 251925618 738198371 919304647 38032861 129426678 272702399 467980121 846165574 6447350 253006491 457291488 57968963 997968182 733994976 586876151 687637534 359772724 254447655 845685186 552888700 385353385 531751628 212533802 94958839 745043900 678990550 326505855 33108884 610895551 174823344 285552778 33469175 28305004 168097912 9810066 296481605 584594308 418259963 667461238 97600973 282310159 697125197 85951564 774227471 757173697 147441228 60491000 728470514 156688697 885437293 537155993 799808132 442999945 611375939 757894279 896606314 385113191 305128589 455490033 91836317 706973151 583633532 662056873 191877118 928071728 805212497 743963027 124742895 542680455 661216194 108169509 918463968 381270087 917142901 601287791 713338292 788639111 514938048 832474516 921466393 919785035 967343447 573785578 799087550 877871182 852650812 197521677 986558967 253847170 611496036 541359388 184551201 932515317 108890091 930353571 170860143 567420437 217697973 231749322 506170967 217457779 67937014 845204798 572584608 132309006 298403157 178906642 444921497 242918343 462335562 774227471 593961874 332270511 491519133 378507856 938039779 666140171 531391337 431110342 835837232 400965995 45839166 936838809 450686153 531991822 593841777 661336291 562856751 956174426 217577876 270660750 539557933 673345991 55446926 646924651 394360660 818303070 728230320 146120161 821665786 206408855 837518590 288435106 298523254 36111309 52324404 392439108 611976424 478548657 185271783 980674214 571023347 52084210 734835655 406370360 683554236 739399341 914020379 665899977 590719255 752850205 747325743 96880391 556971998 77664871 268018616 489837775 768703009 209291183 596964299 975750237 865140900 301525679 632753205 975149752 643561935 168698397 749127198 742521863 252526103 636956600 71299730 282310159 801489490 41515674 40074510 488997096 478188366 628790004 949569091 820464816 248923193 893483792 872466817 13292879 794523864 144318706 838119075 663858328 901530291 108529800 87392728 691961026 989921683 915341446 674426864 290716949 799808132 490077969 162333256 318819647 60851291 473864874 517700279 495842625 473144292 132549200 619302341 101444077 320020617 60250806 69738469 179627224 588437412 496683304 113333680 222982241 928071728 359412433 814219772 966983156 335753324 453208190 378868147 860697311 388836198 579189943 299844321 515058145 310292760 550126469 234391456 343319435 443720527 541719679 563577333 987159452 971306648 777470090 921106102 133389879 847967029 693402190 79346229 356049717 863219348 866101676 222021465 859376244 447083243 380309311 274984242 54245956 739999826 440958296 698446264 604890701 977911983 922667363 912218924 902491067 163173935 382951445 113453777 521303189 172181210 684755206 528749203 194639349 883155450 745524288 5846865 204847594 557572483 902851358 467019345 248202611 210251959 365056992 137112886 16655595 894204374 834876456 373583879 743002251 164134711 204247109 368900096 53765568 764499614 61331679 430990245 127505126 162813644 784675910 334792548 585555084 286633651 702289368 601648082 406730651 263815221 974909558 779751933 686196370 554570058 108529800 364696701 451406735 849047902 331910220 669983275 176144411 642240868 714779456 507251840 145759870 645963875 385473482 912699312 588557509 975510043 98801943 121860567 360733500 623625833 752970302 814099675 635395339 136032013 112372904 199923617 438796550 457051294 38152958 751048750 743842930 888920106 845565089 144558900 949809285 197281483 509533683 812418317 337674876 718142172 923147751 395681727 476026620 61091485 577508585 287354233 290716949 871265847 966502768 270180362 129546775 755132048 697965876 519381637 802690460 454409160 677909677 662897552 116095911 361574179 259611826 597564784 715139747 43557323 159330831 277266085 10890939 814099675 398804249 407451233 418139866 427507432 155487727 162093062 486835350 707093248 576427712 912459118 375265237 629270392 596363814 119338530 426066268 437235289 393039593 273903369 713818680 201124587 170980240 209411280 427387335 954252874 218058264 248682999 299123739 500046020 878111376 731713133 984277124 916782610 837518590 802330169 479869724 917142901 99402428 276545503 697485488 758014376 356770299 110451352 315697125 104566599 611015648 858175274 350525255 468100218 388836198 356770299 6207156 473144292 298283060 522864450 759215346 487315738 21579572 473264389 792962603 941882883 869944780 729551387 114654747 84270206 403968420 485394186 630231168 536075120 168698397 39113734 389796974 549525984 998568667 444200915 244719798 705291793 38273055 340437107 696885003 233670874 766180972 674426864 766421166 615939625 497644080 984397221 850849357 688117922 537035896 902250873 262974542 243398731 475666329 369980969 785156298 873667787 926270273 602849052 935517742 192117312 502207766 839800433 92797093 391598429 188154111 852891006 143117736 349804673 930473668 46799942 406970845 63613522 201965266 864420318 366618253 601047597 413936471 556011222 12812491 332991093 211452929 866341870 3565022 954012680 702889853 478788851 646083972 910537566 381390184 182269358 132188909 248442805 77304580 288315009 859256147 475185941 73461476 823707435 177105187 447683728 395801824 745284094 455369936 5726768 968784611 601047597 406970845 256489304 431470633 133269782 584354114 366978544 799327744 821185398 736396916 478788851 642360965 926030079 352206613 789479790 314135864 908015529 83909915 442399460 136752595 126184059 682694 754411466 582912950 73581573 882314771 459333137 967703738 368059417 89074086 228266509 62772843 51844016 534994247 609694581 346081666 662176970 493921073 78385453 675267543 342598853 56407702 139995214 663738231 677429289 987159452 703850629 429549081 243518828 890961755 327226437 504969997 786957753 594562359 991122653 262854445 923508042 156928891 854332170 791761633 932515317 844964604 449365086 397843473 368779999 294920344 755011951 672985700 488396611 515538533 778791157 911258148 39714219 565378788 623986124 119939015 278106764 903692037 23381027 663618134 831153449 584234017 558293065 134110461 982956057 863339445 482752052 404929196 751529138 727749932 357971269 432311312 104446502 206288758 477107493 159330831 713458389 730271969 579189943 874628563 721865179 67937014 363856022 594802553 659294642 939721137 164855293 977671789 532111919 928792310 990281974 506771452 567180243 667581335 214695548 744803706 206048564 961098403 485153992 458972846 543641231 343199338 427747626 706973151 750808556 906574365 904412619 670103372 104566599 899368545 636716406 750928653 44157808 766421166 800768908 456691003 333231287 919304647 397843473 289756173 639358540 592040322 222381756 717061299 542680455 489237290 853131200 739399341 171220434 632753205 505210191 157889667 423424134 890841658 744803706 47280330 91956414 445762176 750688459 287714524 159931316 431110342 237874269 823227047 975269849 853251297 570542959 210972541 171340531 596123620 607773029 574386063 373703976 634314466 534393762 23260930 762457965 660495612 111412128 571743929 653289792 852170424 525266390 239795821 55086635 414416859 323983818 411774725 973348297 18216856 641640383 27704519 844724410 959657239 233550777 759695734 456450809 891682337 850368969 554930349 853011103 868023228 488036320 785036201 800648811 371302036 63133134 675027349 430990245 136992789 572824802 221420980 667941626 539557933 911138051 866942355 461975271 815420742 477347687 293959568 720424015 277506279 415737926 360253112 557092095 109490576 801489490 848327320 204487303 37072085 873547690 351726225 876910406 407571330 631672332 37192182 178306157 634554660 410813949 778911254 854692461 855653237 857935080 113693971 813379093 714779456 92676996 301645776 729551387 66736044 762217771 850368969 10410551 450085668 752129623 530910949 283270935 795124349 40915189 923508042 723906828 648485912 639478637 595403038 978752662 951610740 982115378 988360422 596243717 777109799 528629106 580150719 313054991 960497918 462215465 262133863 441438684 771585337 699647234 161252383 958095978 983556542 309331984 103245532 60731194 844244022 217457779 494161267 348603703 517460085 348603703 18457050 874628563 605491186 132068812 344280211 681632684 811937929 539197642 432071118 587356539 642841353 901170000 873067302 222381756 537756478 678630259 131588424 130627648 720904403 421862873 50162658 705772181 365537380 865260997 699286943 454649354 538477060 155607824 686916952 70098760 502447960 50402852 371782424 139154535 295640926 319300035 458972846 436394610 218178361 337434682 703490338 684755206 112012613 959176851 99642622 66375753 598765754 545082395 3685119 886037778 238835045 716821105 614258267 616299916 238955142 672145021 546883850 438556356 572104220 517460085 657493187 595162844 443480333 917262998 59410127 533793277 476026620 353047292 270900944 428107917 173502277 782634261 567780728 587596733 935277548 107809218 464137017 659054448 299724224 338155264 826349569 155487727 349204188 389917071 208810795 613897976 88233407 653529986 98801943 536555508 692921802 700247719 790200372 499325438 251685424 240876694 83669721 264535803 227906218 768823106 309572178 289395882 813258996 775068150 426306462 252165812 192597700 672985700 333711675 727149447 20618796 219379331 710335867 657613284 446122467 225143987 544722104 196320707 624106221 455850324 311974118 233911068 204967691 117416978 793563088 132188909 34429951 237513978 886037778 435674028 775428441 689679183 499925923 306569753 476386911 528869300 330348959 761377092 413936471 431830924 843523440 305248686 214215160 807734534 834516165 405769875 318699550 625427288 464137017 228866994 471222740 643321741 835717135 310653051 904772910 896246023 397122891 529830076 544602007 800408617 428948596 762097674 421862873 482271664 7047835 184791395 537636381 228987091 113333680 134590849 445642079 478668754 540278515 980554117 679831229 984277124 756212921 996647115 404929196 152365205 184791395 143237833 362294761 753450690 953772486 122220858 179747321 832954904 392198914 198122162 26143258 682473363 687157146 363495731 274864145 246761447 873787884 700848204 693402190 315577028 105647472 852410618 981514893 333231287 502808251 374904946 177585575 944284823 546523559 621223893 807974728 931074153 858775759 871626138 885197099 410934046 912218924 567900825 597444687 189955566 469541382 987519743 36351503 805692885 873787884 567540534 284592002 342598853 438916647 301405582 420061418 144078512 866942355 692081123 470862449 664098522 471703128 104806793 366257962 85471176 914140476 62772843 176144411 591079546 860577214 805692885 214935742 914861058 504129318 679230744 277266085 253126588 159210734 819504040 965782186 481310888 214575451 426906947 381029893 240156112 341638077 739999826 960017530 479149142 397963570 391478332 680311617 230548352 299964418 154526951 399765025 978992856 28665295 319059841 893123501 734835655 560695005 609334290 864180124 551087245 415257538 293839471 76583998 483592731 168097912 604410313 262494154 971186551 290957143 316777998 93637772 293599277 745163997 853011103 336113615 194999640 367458932 79706520 958816560 544722104 861177699 577748779 830072576 568981698 138073662 90034862 489117193 937079003 518540958 741681184 366257962 240756597 537276090 948127927 202085363 891201949 207729922 424505007 999649540 78985938 755252145 408892397 151284332 378027468 156448503 149723071 526707554 851449842 707693733 863939930 717181396 447443534 167017039 63853716 151764720 524185517 518540958 63853716 428948596 91115735 36471600 101804368 720904403 940561816 785396492 761737383 190916342 675027349 585555084 225384181 499325438 607893126 434713252 974068879 680191520 26383452 533673180 144438803 638277667 631912526 547244141 682713557 490558357 828631412 300925194 675027349 284952293 447563631 320501005 922186975 257089789 744323318 283751323 653049598 390157265 164975390 790920954 860216923 324824497 602128470 705291793 320140714 885077002 405529681 841121500 882434868 284712099 408171815 262614251 225984666 189234984 428107917 678390065 120779694 451406735 552528409 939240749 295520829 51964113 867783034 606572059 973468394 506531258 668422014 382350960 141316281 771585337 339596428 954613165 401566480 365897671 199082938 140355505 727629835 685355691 208210310 244599701 373944170 195960416 323743624 494401461 795124349 611496036 712497613 364816798 546283365 562616557 991362847 620383214 25422676 487676029 210011765 137833468 168938591 76824192 523945323 469661479 605851477 608613708 426546656 118137560 835356844 315096640 234271359 350044867 650407464 138914341 178426254 367939320 348363509 351486031 580751204 677789580 104806793 108409703 840040627 34550048 280388607 562136169 971066454 183710522 974669364 855292946 839800433 425946171 206168661 671064148 219259234 462455659 621103796 674186670 507251840 115135135 243278634 465097793 97961264 406850748 258771147 33589272 372262812 614978849 638878152 341397883 159090637 593481486 184070813 352206613 865861482 505810676 88953989 687517437 685595885 614498461 452007220 319780423 214695548 511094944 274143563 564538109 299964418 321942169 377907371 375865722 279668025 502327863 213494578 529830076 909456693 571383638 507251840 678990550 317018192 140235408 173862568 201845169 15814916 754771757 627589034 538957448 542079970 291197337 340196913 265376482 959296948 500886699 929632989 112493001 224063114 414416859 546163268 800408617 94238257 596363814 352927195 921106102 198722647 264295609 500886699 656532411 384272512 931314347 515058145 762097674 996887309 402887547 284952293 698085973 445041594 506050870 851810133 778791157 723066149 5486574 659174545 230067964 896005829 585314890 981034505 853131200 941882883 194999640 10890939 711416740 427147141 485394186 334912645 901770485 739759632 687157146 96880391 99402428 937679488 103005338 491158842 499085244 954613165 94118160 964821410 302726649 672985700 321581878 963740537 175183635 316537804 723186246 204367206 715620135 682694 172181210 170259658 691961026 237513978 396042018 879072152 675507737 502808251 363255537 391718526 178065963 200644199 229827770 959657239 795724834 960257724 246521253 209891668 550847051 764859905 202685848 352086516 733154297 652569210 731112648 561295490 118738045 551927924 472663904 59049836 168938591 792602312 675868028 353287486 370461357 118497851 990882459 13412976 260452505 174222859 187193335 856493916 489237290 765340293 916902707 173622374 418740351 815540839 200644199 791161148 394240563 917142901 540999097 197041289 164374905 174342956 107208733 319780423 741320893 383912221 153205884 391478332 437115192 126904641 690639959 440718102 758614861 802810557 137473177 226344957 61932164 465458084 786717559 571864026 595883426 914380670 827430442 198002065 556731804 571623832 308010917 883275547 532472210 798126774 362775149 288435106 776989702 170980240 429669178 161372480 54366053 256849595 54366053 402287062 474465359 254928043 263815221 948368121 851329745 445161691 251565327 638517861 967943932 311854021 737838080 204967691 582912950 115375329 472784001 84150109 596003523 432311312 602969149 864900706 156088212 23140833 123782119 90995638 655451538 425946171 159450928 87392728 697605585 640919801 915941931 633473787 83789818 157529376 557572483 64934589 40674995 999889734 311133439 717541687 828391218 222982241 214695548 807614437 509293489 102284756 461494883 534513859 135071237 864540415 648125621 371782424 863939930 331189638 444921497 494401461 439637229 425585880 271141138 919304647 837758784 475306038 91355929 299964418 161732771 974429170 31187332 89074086 967103253 854932655 613297491 430269663 320501005 112613098 363255537 194399155 231389031 856373819 427147141 691000250 21219281 462455659 272822496 583513435 88353504 438196065 964220925 941762786 225143987 485033895 809896280 86552049 794043476 248442805 215896518 262013766 399885122 806173273 809175698 431230439 364096216 713218195 118137560 877751085 494401461 701688883 963620440 752730108 84030012 681752781 246761447 680671908 448284213 510014071 47880815 527308039 681272393 958336172 768582912 708174121 765580487 872466817 37072085 703130047 871746235 692921802 705291793 133509976 957495493 430509857 845925380 315456931 171580725 81387878 148762295 792362118 164254808 29986362 792962603 933836384 826349569 800168423 596003523 274744048 315336834 280868995 218778846 461735077 726188671 688117922 187433529 979233050 402527256 645003099 838479366 564177818 241957567 145279482 873187399 397843473 647044748 818423167 487796126 38993637 907895432 761617286 830192673 975389946 83909915 881714286 389076392 376706401 511215041 585194793 963860634 1283179 171100337 320621102 568261116 26863840 873307496 749367392 274383757 241357082 533913374 712857904 543761328 146840743 12932588 699407040 800408617 157409279 82468751 371902521 248202611 47040136 761977577 496923498 649806979 42116159 69738469 471823225 543761328 893844083 9329678 666860753 668061723 593721680 792001827 588797703 896846508 802690460 294319859 79586423 463056144 904532716 398203764 51363628 949689188 145639773 689318892 74902640 285792972 822026077 150203459 605731380 251325133 750568362 580390913 900569515 184551201 347522830 434833349 215416130 222021465 43437226 706973151 377787274 861057602 88833892 871265847 969625290 4165507 247602126 604290216 351125740 426546656 627108646 354368359 913419894 207369631 823106950 273182787 191396730 629750780 597925075 276545503 25542773 727269544 754891854 344640502 701088398 41275480 476026620 621944475 395561630 726068574 257209886 110811643 846525865 634434563 593481486 893003404 24461900 595403038 132909491 433512282 248322708 909336596 674787155 86552049 515178242 476987396 442759751 232229710 962779761 761497189 717661784 92316705 266337258 347883121 478308463 332870996 872346720 322422557 745163997 949569091 554570058 191516827 754411466 712857904 441318587 8248805 698926652 494041170 610174969 398684152 588077121 605731380 544001522 631672332 920385520 498364662 970105678 341878271 493560782 146960840 810736959 702169271 232229710 502688154 357010493 730632260 862378669 216617100 103245532 875229048 540518709 219499428 678149871 484193216 251685424 799207647 711656934 96760294 324103915 332150414 146480452 172061113 281709674 547124044 112012613 346562054 79106035 774107374 520102219 857334595 426066268 242558052 762818256 27224131 197401580 2003761 490438260 756573212 875469242 305729074 874748660 594202068 304167813 743482639 857454692 759095249 485754477 571143444 715259844 708294218 841962179 350044867 733634685 727870029 513256690 696044324 196320707 252766297 714899553 583273241 862738960 610054872 924709012 689438989 869824683 584954599 604290216 79106035 106608248 397723376 574986548 571743929 290236561 642240868 248562902 86912340 123301731 975029655 406010069 112493001 461134592 844964604 254087364 195239834 691720832 450566056 971787036 635875727 46079360 883755935 359172239 646684457 84390303 91355929 233670874 934316772 818783458 469901673 234031165 336353809 390277362 292638501 65054686 477828075 893964180 14373752 324464206 369620678 620143020 755372242 567420437 422343261 98321555 555410737 830913255 663498037 649806979 779872030 415377635 242317858 358091366 186232559 278226861 229827770 287234136 504009221 991122653 406490457 439517132 706012375 247962417 985117803 997607891 861778184 814580063 845565089 383672027 645123196 900329321 259611826 703490338 235952717 689198795 597564784 916182125 398203764 643561935 197161386 310052566 211933317 217097488 826589763 977671789 852770909 851209648 38032861 96039712 365897671 332750899 965181701 535114344 397963570 113814068 727870029 385473482 553609282 396522406 121620373 217337682 462936047 44518099 308611402 254327558 31787817 681872878 919064453 996767212 651848628 576547809 162093062 562496460 310893245 989561392 415017344 347282636 71299730 60370903 877510891 345721375 137953565 776869605 2724343 431590730 911017954 369860872 699767331 259852020 563577333 856133625 947767636 776149023 770264270 117777269 3565022 804011527 354608553 914260573 198602550 643561935 886638263 21459475 364816798 852170424 336233712 236433105 334912645 477107493 599005948 743242445 45719069 36111309 434833349 289155688 488156417 343559629 68297305 717061299 597324590 405649778 205327982 814099675 748887004 284712099 919905132 478548657 895645538 672145021 326385758 845444992 841721985 345961569 579910525 360853597 329147989 270060265 421382485 215175936 706732957 381870572 762698159 781673485 9329678 263815221 979953632 978872759 953772486 626868452 577628682 848447417 662176970 729070999 711656934 77905065 48121009 277506279 941282398 582192368 457171391 185391880 906334171 933235899 974188976 825628987 113333680 343799823 348723800 749007101 367939320 395441533 663137746 660015224 232109613 859376244 517460085 29505974 402527256 3084634 20618796 375265237 433872573 318219162 104566599 532712404 82949139 889880882 299724224 742401766 708654509 245320283 275704824 188514402 790440566 373223588 471462934 397963570 444561206 23020736 458132167 34309854 71780118 64574298 162573450 598405463 953172001 419460933 870905556 523344838 630831653 377426983 8368902 834996553 777590187 125583574 422823649 419941321 415858023 767141748 36711794 773266695 343919920 624466512 57368478 347642927 497403886 625907676 786837656 766060875 842802858 788398917 761857480 296481605 635995824 859736535 192477603 789840081 649806979 684635109 653770180 968784611 67816917 613057297 649686882 765700584 130267357 270540653 978752662 512055720 482031470 641880577 366257962 384392609 404208614 498604856 105887666 666260268 708774606 590599158 999169152 165816069 449965571 549405887 129186484 41755868 157169085 316057416 540158418 549045596 267418131 44518099 314496155 216016615 592760904 420301612 19177632 176744896 244599701 599486336 233790971 495722528 512656205 510854750 364216313 42596547 684274818 405649778 419340836 648485912 431590730 897567090 805692885 320260811 244719798 246040865 366017768 679470938 387635228 296601702 121139985 939601040 951730837 455249839 664819104 78745744 790200372 268138713 501727378 853131200 853971879 982956057 577868876 982355572 883395644 525746778 115135135 285072390 839199948 648606009 888199524 700608010 208090213 660135321 889400494 836677911 810857056 231148837 983196251 21459475 329388183 403728226 312574603 258290759 963620440 738798856 595162844 497403886 137953565 132429103 194879543 831874031 912579215 905853783 909456693 524665905 684755206 828391218 363255537 267538228 480950597 134350655 611015648 350645352 660015224 739759632 355569329 523585032 292638501 942243174 896125926 862979154 755972727 841721985 89914765 146600549 102645047 482511858 927711437 846045477 559854326 400005219 916062028 648485912 632392914 255648625 631432138 848687611 583513435 250964842 109130285 35630921 397963570 490438260 58449351 622424863 555170543 190315857 178546351 850729260 553248991 820945204 140355505 597084396 497043595 985838385 193318282 720303918 885437293 160651898 141196184 754291369 888800009 942483368 610054872 720904403 965662089 766421166 509293489 80907490 262253960 320020617 216016615 167377330 706973151 242077664 596483911 512656205 550606857 560574908 751288944 320140714 644762905 983316348 55687120 574866451 578229167 268859295 593361389 62172358 263094639 721024500 579189943 163053838 871025653 75623222 462095368 117056687 851690036 266577452 624946900 585915375 91235832 637797279 995446145 887839233 604770604 662897552 938039779 280868995 411654628 137473177 122220858 792722409 137833468 869464392 610415163 941882883 300204612 777950478 767622136 439637229 54245956 601407888 196320707 297322284 414296762 515298339 33108884 739399341 956054329 930713862 978392371 55086635 148281907 419340836 306449656 795965028 503288639 402166965 484553507 695684033 810736959 995926533 202805945 221901368 631792429 455490033 605250992 648846203 518180667 184431104 610295066 824908405 450085668 177585575 153205884 45719069 565138594 101444077 286273360 77905065 668422014 412375210 2964537 964100828 551567633 686676758 640079122 404088517 171941016 136512401 997127503 202805945 756453115 23260930 149122586 573064996 441558781 903932231 43197032 214095063 218058264 84870691 187073238 642481062 433992670 992323623 65775268 921466393 802690460 840521015 227065539 260212311 463536532 865020803 541479485 556971998 21939863 514457660 251925618 415858023 113934165 801009102 620743505 535594732 239435530 375025043 298403157 505330288 348243412 826589763 774707859 173862568 613177394 413576180 241357082 699046749 486114768 966022380 608013223 6447350 524665905 459933622 98321555 373583879 256249110 938760361 87873116 629870877 630951750 207609825 122701246 421262388 150203459 505210191 948127927 675027349 907054753 734115073 833195098 440237714 333591578 483352537 794043476 126424253 210251959 634194369 472663904 854692461 190075663 791521439 10890939 606091671 229587576 164254808 210011765 8488999 746124773 218418555 31187332 262974542 298403157 423544231 898647963 364216313 717901978 447683728 990041780 294920344 621343990 421622679 730392066 177945866 450445959 515418436 512055720 801969878 623385639 964220925 566459661 297202187 589878576 371181939 305608977 589878576 21459475 776989702 390157265 691120347 917262998 479629530 152845593 393159690 975990431 72260506 415137441 549165693 494281364 648606009 403488032 859256147 104086211 808575213 99282331 64454201 584954599 88473601 6687544 661936776 806653661 290116464 779151448 622424863 302846746 807854631 587596733 647885427 464977696 612096521 599726530 812058026 471342837 935277548 47880815 724627410 713218195 814940354 409372785 896125926 196200610 552168118 578229167 741561087 687757631 955934232 200163811 35270630 25782967 308491305 955573941 962659664 455249839 287474330 840521015 192717797 455009645 21099184 942002980 525146293 628910101 214455354 447323437 343559629 121380179 688478213 894564665 477467784 673105797 607052447 925669788 974909558 863939930 256969692 691961026 560935199 820464816 768342718 986078579 566699855 264415706 765940778 715139747 853731685 574386063 247602126 296361508 657373090 689438989 866822258 825989278 616660207 100603398 56167508 407451233 437235289 165936166 739399341 748286519 748046325 586035472 449124892 324224012 129306581 318819647 240636500 190676148 161372480 641640383 534874150 94598548 620383214 677309192 868863907 17976662 697605585 953172001 120899791 322422557 12692394 150563750 560935199 777950478 217938167 551087245 324704400 640439413 579310040 521062995 315697125 774227471 259852020 198602550 717781881 873667787 202685848 29626071 152004914 516619406 593121195 827310345 247001641 742281669 508813101 255888819 981394796 845204798 677068998 212773996 634914951 542680455 63373328 769063300 568741504 260212311 727509738 957855784 789719984 734355267 872466817 47160233 80787393 631792429 978032080 837038202 831874031 137112886 637076697 562856751 296601702 8008611 337794973 46439651 462575756 822266271 829231897 380909796 681032199 37312279 841121500 371542230 735676334 360373209 696164421 318099065 501607281 280268510 32268205 510254265 197041289 989201101 508332713 488396611 945365696 103605823 344640502 457171391 839920530 229827770 963140052 517820376 560214617 314976543 767141748 440838199 740720408 867422743 135431528 412495307 484073119 217097488 300805097 43076935 748046325 373824073 892282822 443600430 181668873 822026077 878231473 308971693 885077002 137112886 153325981 726068574 34429951 951730837 513376787 386434258 445521982 264175512 682833654 650527561 33589272 588077121 355689426 393039593 547724529 383311736 730752357 686436564 547484335 154046563 969625290 70098760 993404496 722345567 445041594 517580182 626267967 943684338 498124468 743122348 900569515 642601159 117296881 654971150 153566175 553969573 880153025 197041289 335753324 35630921 310893245 171580725 331429832 718622560 953892583 928071728 311613827 993764787 747205646 528869300 139034438 801369393 327106340 706853054 237153687 282069965 510614556 210972541 514577757 69017887 488156417 355689426 170860143 842922955 611496036 89074086 161852868 116816493 150443653 247602126 96159809 411534531 230788546 453808675 181188485 709975576 680551811 484433410 448644504 250244260 831393643 533192792 225984666 899848933 226705248 463536532 322782848 334792548 118017463 853251297 144919191 777710284 517820376 53645471 734715558 869584489 228626800 151044138 728710708 508332713 310052566 220820495 549886275 997848085 456931197 661216194 567300340 53765568 366498156 32268205 177825769 652449113 210492153 671544536 359892821 779391642 117537075 763298644 529830076 95199033 793322894 284952293 398323861 178906642 365657477 200043714 396402309 380789699 402767450 656532411 360853597 902491067 597925075 141196184 995806436 549886275 56287605 662537261 873067302 323983818 68297305 286393457 576547809 7768417 375385334 758614861 830793158 907174850 736757207 310773148 640079122 986919258 649686882 321942169 823227047 102885241 531871725 493440685 576067421 747806131 231629225 179146836 183470328 38273055 662897552 695323742 76463901 840160724 608613708 819023652 524305614 474225165 61932164 677429289 732794006 910777760 387034743 480109918 943564241 246881544 899969030 883035353 139394729 416338411 985117803 764379517 29385877 43557323 408772300 283030741 953051904 723426440 616540110 729311193 339716525 92076511 535594732 993884884 558893550 768102524 682353266 862258572 38993637 48481300 606692156 573185093 42716644 432911797 185031589 26263355 673105797 199923617 576908100 338035167 304408007 164014614 892523016 233430680 627589034 792001827 117777269 660976000 686796855 364456507 92196608 281589577 557692580 817102100 690880153 545082395 194279058 417419284 85831467 862859057 546883850 586876151 116095911 914861058 860937505 561415587 67816917 452967996 162213159 80907490 483953022 891442143 477587881 634194369 72260506 732794006 327586728 923868333 946926957 419100642 282190062 662176970 631191944 133750170 114894941 198962841 557812677 791761633 625066997 802930654 313054991 381270087 975149752 495722528 51844016 305008492 609454387 41635771 849648387 925429594 523705129 521062995 661696582 746485064 608373514 697005100 23621221 585795278 417058993 115975814 505330288 105167084 327466631 648606009 110331255 735796431 96760294 51003337 474825650 545562783 558893550 304648201 402887547 148882392 559013647 30586847 439156841 702769756 435433834 818663361 102645047 430870148 929272698 645123196 380069117 859616438 682953751 735676334 265376482 576547809 754651660 478788851 98441652 887839233 555290640 152845593 739879729 987639840 912459118 513136593 335152839 297442381 254807946 110211158 836437717 3084634 550006372 674907252 892402919 895885732 886157875 976951207 693041899 215656324 329027892 209171086 581111495 26863840 400125316 430149566 260932893 353167389 699407040 815901130 362414858 395801824 112012613 232469904 744683609 440958296 910417469 951730837 120059112 774347568 505570482 265016191 883275547 479749627 129306581 564778303 40194607 633353690 229827770 963740537 295761023 701808980 31667720 515298339 816141324 339116040 596123620 124742895 583993823 330589153 172061113 49682270 383311736 766901554 970706163 148281907 393880272 455850324 188274208 548325014 449004795 887358845 730752357 943804435 469661479 602008373 458492458 434352961 192237409 923387945 62292455 87632922 278827346 651608434 138073662 985598191 445161691 171340531 610174969 810496765 257570177 878711861 65535074 61812067 996527018 151284332 81147684 64334104 237033590 569221892 190315857 38393152 385833773 690039474 324584303 282910644 215296033 449365086 637316891 733154297 220820495 210972541 843643537 72620797 947527442 826950054 305729074 40554898 620863602 753570787 326746049 490318163 72860991 281109189 109850867 276905794 271501429 42596547 625787579 356169814 865501191 502808251 566219467 120179209 397122891 482992246 388355810 875469242 385233288 877030503 631912526 773626986 655451538 556131319 214935742 312694700 142036863 378748050 694002675 217818070 805572788 65054686 742281669 382471057 797286095 317138289 170740046 392919496 506891549 617380789 948127927 384752900 856493916 786597462 853491491 898287672 769783882 27464325 359172239 747205646 199082938 454289063 400245413 953892583 539437836 214335257 415377635 679110647 835116650 448044019 786837656 608733805 1403276 52444501 142637348 337194488 310052566 215536227 651248143 856253722 189355081 110811643 838119075 355689426 489477484 784675910 713938777 913179700 295520829 936958906 36951988 900569515 736036625 305729074 6207156 776989702 770024076 995806436 277145988 828511315 107088636 303447231 622665057 950529867 808575213 236553202 8248805 804852206 703730532 22660445 856974304 94598548 458492458 216617100 342238562 833435292 675627834 320861296 507251840 425225589 439517132 598285366 795484640 370581454 666380365 231268934 816141324 208930892 922066878 240036015 109370479 100123010 128585999 965301798 81507975 182149261 454409160 173862568 971426745 791041051 336353809 919424744 870545265 843283246 789239596 247842320 331189638 748046325 848447417 627108646 116816493 830673061 178065963 714178971 842922955 60250806 827670636 314376058 984997706 641760480 265136288 5006186 869584489 38873540 416578605 738678759 445642079 267057840 34069660 558653356 19177632 247962417 729070999 819864331 771465240 600687306 150924041 942723562 380309311 888559815 128465902 101323980 207129437 114054262 232469904 472183516 379588729 240276209 729070999 557692580 768582912 546043171 794163573 746364967 314376058 887599039 338875846 944885308 651848628 464857599 270420556 747325743 988600616 40674995 547604432 376466207 480470209 749367392 547244141 767982427 263214736 814700160 120419403 661816679 409132591 759815831 811577638 503648930 682473363 966022380 67937014 559013647 230668449 111772419 405529681 831753934 138674147 458252264 323503430 932275123 61331679 579790428 359652627 725468089 45118584 527908524 301165388 127144835 53405277 713818680 6087059 234871844 57848866 601888276 121019888 785996977 593961874 695804130 188154111 749487489 85591273 608853902 756453115 198362356 615939625 841361694 69978663 768823106 346321860 44518099 470622255 740720408 179266933 961458694 618461662 942603465 139514826 72740894 39353928 710335867 436874998 981274699 580150719 795004252 20498699 822626562 154406854 512776302 219979816 340917495 23140833 564658206 878591764 113814068 883275547 834756359 71900215 224663599 321701975 627949325 331309735 308371208 899368545 374784849 477467784 399765025 75863416 393279787 198482453 993404496 915461543 210492153 999289249 529950173 569462086 966382671 664578910 711176546 722585761 555650931 798487065 195480028 579430137 513376787 446002370 75983513 891201949 272342108 492119618 481671179 120179209 916182125 678269968 68897790 423784425 515298339 969144902 101444077 615819528 227906218 52804792 372142715 144919191 80547199 474345262 127505126 489957872 231389031 456090518 569101795 813258996 441078393 146120161 874868757 949809285 230067964 152605399 395561630 169418979 210612250 719223045 869584489 968304223 488997096 439877423 275344533 497884274 780232321 871986429 231749322 194158961 757654085 334432257 290837046 981995281 517460085 491639230 704210920 213854869 612937200 470742352 582672756 805933079 626748355 605371089 376946595 667341141 363495731 244359507 215776421 871025653 23741318 592881001 498244565 316297610 289035591 142156960 812418317 614018073 794523864 625307191 656052023 313415282 540638806 972147327 801489490 301525679 439997520 442159266 192237409 358691851 250364357 573064996 406250263 494041170 841481791 317138289 420541806 322782848 547724529 569582183 78985938 971186551 617981274 611015648 522263965 91115735 197401580 12692394 700968301 675387640 689318892 254327558 807614437 210372056 948728412 41515674 286153263 907535141 595763329 516018921 254087364 280268510 1883664 560935199 119578724 888920106 535114344 717541687 892042628 151644623 371782424 387875422 157409279 311253536 429549081 910777760 900929806 622785154 397002794 517700279 288915494 678990550 319179938 318939744 571383638 40915189 38753443 513616981 332270511 417299187 406490457 235952717 629750780 287594427 472183516 222501853 497764177 984517318 794643961 774948053 472663904 26023161 573905675 785756783 695203645 655331441 157889667 111412128 129786969 580390913 153085787 661216194 119458627 759455540 75743319 635875727 815180548 843403343 156568600 614618558 361574179 330108765 752850205 454168966 374904946 469661479 698085973 659895127 832714710 568020922 304047716 267778422 472423710 641520286 602969149 62172358 425826074 6327253 971546842 668542111 165215584 44277905 887118651 218058264 904652813 764619711 238714948 352206613 738198371 297202187 419941321 300444806 82228557 639478637 14493849 104326405 35630921 23621221 651608434 18336953 315336834 561295490 663137746 316177513 561895975 664218619 783835231 918824259 367218738 281829771 568861601 500166117 323743624 534754053 187433529 343439532 633113496 69017887 65895365 595162844 230548352 837998978 300925194 720664209 475065844 676948901 68297305 412735501 243158537 306329559 159450928 327346534 689078698 590479061 405169390 302486455 975990431 168338106 550246566 695804130 534754053 800648811 799327744 173262083 32268205 916182125 739159147 521062995 401806674 953412195 905973880 988120228 571023347 367458932 287234136 935637839 718742657 164374905 833195098 55446926 876670212 472183516 140595699 746364967 433031894 72860991 873427593 844964604 322902945 874148175 195960416 567180243 933235899 200884393 75383028 300805097 669863178 350885546 605371089 783474940 831753934 110331255 475546232 894084277 830312770 645123196 670823954 125703671 646083972 963019955 963860634 54486150 62892940 148161810 54245956 983196251 147201034 919664938 791281245 86792243 519261540 637316891 105767569 826950054 981634990 271861720 128105611 17256080 962299373 950890158 400965995 343919920 932755511 567540534 700728107 252045715 977551692 512776302 235712523 479389336 844484216 726428865 599486336 882314771 556131319 4765992 216737197 981995281 470742352 652809404 716701008 233430680 222501853 731833230 657493187 498124468 253246685 951730837 437595580 174102762 769183397 423664328 271021041 891081852 253246685 395321436 353647777 821545689 593961874 824908405 434232864 130027163 994845660 103365629 525266390 944164726 366858447 29505974 516379212 922427169 515058145 669622984 504969997 246401156 277266085 703730532 868503616 387395034 262494154 154406854 355569329 535955023 583753629 232229710 475065844 273783272 978992856 176744896 614858752 746244870 712857904 958696463 217577876 121380179 895285247 642721256 888199524 84270206 706973151 415137441 474945747 713938777 236433105 247241835 625307191 91836317 578589458 444561206 939120652 620503311 76223707 939601040 36951988 463176241 920145326 538356963 50042561 956654814 181308582 508332713 333471481 104806793 479029045 225984666 569101795 271261235 107088636 235232135 715740232 449365086 214935742 980193826 786357268 243759022 973108103 642360965 92076511 907294947 188874693 234391456 853371394 389196489 63973813 719943627 988960907 315096640 655211344 22900639 342238562 173382180 409252688 101203883 100963689 140955990 644042323 217697973 297322284 115735620 807494340 433392185 342718950 62772843 61211582 702529562 207850019 418860448 411774725 63493425 258530953 835236747 60731194 117537075 992804011 45238681 60130709 390877847 224183211 866221773 122701246 517940473 220460204 16415401 656532411 734955752 161372480 21339378 195600125 642240868 679591035 44398002 111532225 421142291 82209 209891668 116576299 614738655 698926652 771585337 148402004 270060265 153806369 758254570 244839895 339836622 1523373 437115192 675387640 502087669 517339988 681392490 739759632 232109613 226945442 41275480 100723495 650887852 425946171 853371394 355209038 657733381 269699974 16055110 590238867 34790242 549045596 134230558 469060994 845925380 993764787 836077426 336714100 479389336 70819342 385353385 507732228 145399579 617620983 506291064 666740656 684154721 235952717 230668449 877270697 338395458 375505431 804612012 109490576 187553626 366498156 838719560 259131438 665539686 601287791 746364967 544121619 219979816 906934656 188274208 336113615 228146412 67336529 190556051 501246990 891802434 126784544 48841591 967103253 216617100 799207647 331790123 970706163 640679607 426186365 160051413 481671179 966502768 969505193 700968301 556371513 176744896 93037287 666620559 247241835 746845355 441438684 607532835 430870148 828511315 274503854 191877118 417419284 731232745 283751323 782153873 541719679 732673909 242798246 113573874 190676148 265376482 422943746 514577757 576547809 216016615 650767755 613177394 74662446 956774911 142997639 709014800 559373938 257690274 204006915 363735925 400125316 591680031 534033471 23741318 870064877 797526289 2604246 31907914 140715796 231869419 10770842 733994976 944404920 445161691 30226556 508813101 671184245 55446926 540758903 100963689 99642622 468580606 529349688 933476093 442279363 677309192 677068998 182869843 477107493 287714524 389676877 719583336 731232745 285072390 682113072 27464325 2724343 338755749 299844321 879072152 379828923 400125316 196680998 295881120 249523678 458732652 796805707 985117803 843403343 691480638 889760785 515658630 779391642 210732347 583753629 46679845 254447655 196200610 238714948 285792972 677549386 381510281 797406192 677429289 225143987 905733686 503769027 9329678 580150719 678149871 576547809 282310159 987759937 758855055 838599463 965662089 544001522 422583455 610655357 170619949 617861177 514697854 736396916 728950902 56647896 962179276 178306157 749127198 3324828 280388607 303207037 949809285 853611588 972507618 247121738 495482334 879192249 843403343 859616438 307890820 85831467 573064996 851089551 198122162 437595580 320861296 240876694 359412433 174342956 126304156 195600125 92917190 694483063 746124773 491399036 98081361 800168423 369740775 92556899 882915256 392679302 672385215 31667720 205448079 574386063 287594427 270780847 3565022 655571635 432431409 303207037 758494764 132309006 729431290 854932655 47160233 327826922 827670636 395681727 239915918 330829347 305128589 135191334 344520405 391718526 116696396 690639959 169178785 174583150 499085244 313415282 722345567 8128708 720904403 577628682 238474754 415257538 110091061 426306462 288435106 215536227 872226623 750087974 15814916 482872149 561535684 810376668 752850205 323023042 566579758 198002065 788759208 710936352 390997944 778550963 99522525 770024076 689679183 565378788 951250449 809776183 847126350 169178785 601648082 165335681 814940354 80066811 255168237 663738231 180467903 513496884 562856751 74302155 443240139 685956176 959176851 887238748 825869181 935878033 914981155 957855784 975269849 373583879 201244684 636716406 559614132 555410737 474345262 891802434 947527442 506771452 910657663 410813949 243278634 387995519 325304885 598285366 540999097 986198676 344040017 974188976 960978306 985237900 739039050 56767993 816982003 997247600 836317620 856373819 366498156 445161691 846285671 877510891 254447655 765220196 214935742 985237900 758254570 902851358 712617710 268619101 236313008 313054991 86311855 581471786 619302341 717661784 700848204 22780542 271501429 446482758 198602550 621103796 204967691 960978306 792722409 119218433 989201101 360253112 296961993 724627410 281229286 366017768 280508704 917623289 939841234 249043290 993164302 468700703 947887733 628429713 142757445 607773029 137593274 161252383 165455778 376586304 253246685 593841777 323863721 373583879 706492763 467499733 676948901 88713795 756693309 282790547 258170662 289636076 838599463 758494764 85471176 756092824 162813644 191276633 859976729 419821224 829952479 999649540 182989940 143117736 138914341 833315195 383071542 605130895 582072271 703730532 455970421 511695429 683914527 716701008 572704705 347642927 612216618 193678573 946806860 60250806 118137560 675507737 417419284 846045477 123541925 389796974 844244022 634194369 564297915 796925804 247001641 635635533 823947629 125943865 6567447 540758903 112012613 79826617 977911983 387635228 995326048 864540415 771825531 293599277 130267357 59530224 966502768 96279906 440958296 143838318 693161996 920025229 160291607 41635771 178065963 923508042 985598191 876430018 356169814 388956295 966142477 873307496 787077850 383431833 172661598 74662446 986558967 292398307 187073238 46559748 842562664 651128046 576067421 710095673 848567514 478788851 771465240 210852444 10290454 458732652 937679488 890241173 496683304 747806131 77905065 994245175 738918953 439276938 694603160 578229167 622785154 890121076 807974728 829351994 635035048 292398307 753690884 180828194 378387759 586395763 695684033 115855717 488156417 300444806 187913917 636716406 444921497 694483063 481070694 174703247 918944356 454289063 643561935 171700822 607172544 133630073 259251535 83429527 112012613 129306581 514697854 533312889 316297610 881834383 357971269 15814916 701328592 418500157 569942474 271741623 147921616 653049598 880993704 805812982 823947629 272822496 444200915 725107798 127985514 893844083 986438870 658814254 177705672 712617710 677068998 596724105 503648930 798847356 340437107 936478518 764619711 51844016 206528952 786477365 187073238 875349145 55807217 712617710 656772605 615219043 467619830 42596547 669382790 950529867 517099794 551447536 411414434 747806131 37672570 90755444 617741080 768703009 648846203 382951445 460173816 399765025 511335138 776389217 577748779 61331679 738678759 597204493 502207766 201845169 936118227 125463477 979233050 445041594 962419470 882194674 223822920 373703976 990642265 941882883 651968725 54606247 644162420 614138170 843403343 891081852 711536837 218658749 595883426 833675486 843403343 562976848 480470209 796565513 845565089 663137746 115015038 652689307 133630073 197881968 456450809 841601888 15694819 374304461 984157027 853131200 192477603 558653356 942723562 187073238 666260268 909216499 405289487 486234865 849288096 918223774 228987091 426546656 958936657 286873845 838719560 789599887 257209886 491759327 2364052 767261845 256609401 9930163 178065963 200043714 876069727 333951869 736156722 343439532 714058874 308851596 496082819 197161386 806893855 877630988 101083786 607652932 362655052 975510043 181788970 302726649 176624799 437595580 513616981 698926652 123541925 64694395 819984428 69258081 868503616 92917190 154406854 768102524 79946714 355689426 27464325 621824378 44998487 227666024 513496884 364096216 364096216 826709860 444200915 990642265 608133320 488276514 952331322 924348721 838119075 349324285 143958415 994965757 642240868 66135559 305368783 14373752 163894517 224543502 574145869 922307072 151044138 429909372 494761752 963740537 4405701 46799942 238835045 476507008 530550658 253727073 362895246 969985581 19417826 359412433 776389217 320140714 884716711 405889972 649086397 441318587 261653475 447683728 664939201 675747931 837398493 436754901 803531139 159210734 186712947 363375634 702409465 683794430 554690155 267177937 945485793 251925618 464016920 336113615 683314042 723786731 882915256 697725682 858535565 709975576 902250873 947527442 22300154 494521558 856734110 850368969 687877728 545682880 431350536 635395339 538236866 315817222 657252993 460534107 981274699 339236137 65174783 64214007 994965757 571143444 875108951 516739503 224183211 336233712 95078936 111892516 792121924 105407278 29265780 763418741 318819647 513737078 204487303 97721070 626147870 125943865 714058874 940802010 543040746 806773758 175303732 133149685 271501429 980914408 583873726 352566904 890961755 623986124 682233169 319300035 169779270 475426135 943444144 248923193 75743319 898167575 113814068 689799280 783354843 991122653 258170662 36111309 550246566 189475178 121380179 478308463 36951988 208690698 726548962 301885970 78745744 850849357 724147022 69858566 60010612 426426559 537636381 486955447 110451352 858175274 593601583 225624375 204367206 157529376 204607400 887959330 326866146 934196675 863699736 520222316 511335138 921826684 211332832 85471176 191877118 868984004 494761752 61211582 271621526 233790971 125343380 534393762 260092214 289756173 42716644 993764787 90395153 211813220 896005829 715740232 146240258 176985090 230548352 255768722 169178785 791761633 502327863 684394915 857694886 959176851 855773334 130027163 189114887 330228862 720904403 436514707 653770180 889040203 403608129 169178785 852650812 525626681 601167694 153806369 54005762 436754901 553489185 479749627 450566056 624826803 440598005 716580911 288435106 575707130 344280211 666140171 900569515 388716101 461614980 686196370 562616557 935037354 625307191 405529681 901530291 305128589 360613403 664939201 135911916 386674452 820224622 898407769 78505550 439276938 546763753 676228319 973228200 347402733 817342294 896846508 496923498 529229591 446122467 976350722 808695310 121139985 661696582 360253112 919304647 617020498 234031165 212053414 425705977 449124892 792602312 958095978 853851782 19658020 210372056 529950173 383311736 454769451 910417469 138193759 25662870 313295185 636596309 747806131 82949139 97600973 264175512 594081971 194999640 626267967 530550658 672625409 294079665 460173816 84630497 749607586 690399765 34550048 853611588 675747931 426066268 335272936 272822496 55206732 477948172 306449656 790800857 633353690 345240987 509773877 486955447 362174664 966622865 964461119 767982427 493560782 454529257 378627953 413576180 746004676 735796431 527908524 897206799 448644504 147561325 443240139 809295795 311613827 279307734 577628682 378027468 160291607 181668873 316537804 950529867 463176241 281949868 706492763 194879543 19898214 798006677 828511315 502808251 371662327 480710403 449244989 729191096 999649540 177225284 385233288 630711556 117657172 381270087 654610859 631312041 928432019 752369817 256129013 87272631 257690274 45598972 90034862 937199100 733034200 37312279 283511129 868023228 176864993 717061299 192957991 836317620 804612012 892643113 163294032 123061537 702769756 55807217 424384910 932635414 447563631 844244022 206528952 254087364 316417707 278947443 329388183 12932588 256849595 53044986 614018073 442500 259731923 958336172 287354233 964821410 614858752 942723562 538477060 460894398 126784544 117537075 87512825 919785035 356410008 987639840 744803706 221060689 540879000 696764906 167497427 664458813 226705248 469901673 288795397 663618134 134350655 678269968 687757631 792482215 351486031 770384367 941882883 299724224 4765992 375625528 11971812 739759632 670463663 376105916 119458627 833435292 790800857 860577214 949569091 2003761 452607705 320981393 153806369 203286333 210612250 72500700 207489728 89434377 658574060 462695853 787678335 468340412 577628682 629750780 905973880 916182125 100843592 371302036 634914951 93157384 493560782 727870029 880153025 982235475 207970116 406970845 632513011 699286943 101924465 315336834 694002675 704811405 850849357 286153263 81748169 288915494 963019955 139755020 477828075 786597462 206408855 142637348 419460933 361454082 612216618 576067421 388716101 339716525 48121009 525866875 915701737 113934165 955453844 310532954 729070999 44638196 765340293 149843168 356650202 520462510 401206189 693882578 445161691 444200915 119939015 404568905 788879305 407691427 298643351 496803401 11851715 497884274 540398612 24942288 594202068 347162539 804612012 13172782 823106950 663498037 276185212 99282331 464257114 112973389 195359931 467980121 883155450 783955328 828871606 130867842 798366968 392319011 845204798 327826922 551087245 992683914 133269782 299484030 479989821 148642198 174583150 837638687 942843659 999889734 318579453 446002370 298283060 648726106 838359269 167737621 34429951 55927314 488636805 983196251 753931078 375625528 37432376 414176665 23140833 235712523 302606552 27584422 659294642 939961331 635155145 712978001 479869724 244239410 267418131 236192911 760536413 92676996 341277786 849768484 411894822 209531377 591439837 477347687 575947324 553248991 490077969 504009221 457171391 619422438 670823954 746965452 381510281 267298034 365056992 395921921 560935199 918223774 972988006 97240682 298042866 551687730 543641231 400005219 63613522 379468632 810977153 593481486 728350417 346562054 447923922 230067964 277386182 753690884 402046868 638878152 269459780 684034624 848087126 748286519 133509976 712497613 644762905 360253112 437475483 670823954 494521558 592280516 396162115 537876575 59290030 470502158 811337444 723426440 221300883 407090942 114654747 906694462 813739384 40194607 858775759 820224622 996527018 422343261 390037168 190676148 764379517 687757631 339956719 485634380 511935623 783354843 270540653 185632074 253606976 169899367 902731261 403007644 915821834 970105678 456811100 516018921 210612250 577388488 122941440 374904946 966502768 420061418 561055296 643682032 629390489 90395153 335032742 748887004 111412128 974789461 562376363 17015886 484913798 103125435 181188485 167737621 877871182 819504040 360493306 790200372 339716525 39474025 3685119 816621712 953772486 163534226 43797517 95319130 282910644 161732771 617260692 250604551 19177632 87993213 702529562 775068150 629150295 831633837 195600125 51243531 267057840 912098827 997007406 786117074 473984971 721624985 457411585 168097912 458732652 364936895 888679912 4765992 385593579 894804859 651128046 425465783 307530529 424144716 584594308 164855293 569582183 642721256 644402614 733994976 52564598 536435411 320741199 624706706 327226437 812298220 440237714 951250449 565859176 874028078 441678878 161612674 563217042 552048021 3204731 321822072 867182549 116816493 357971269 534754053 949328897 377306886 556371513 709855479 254447655 222021465 289996367 236433105 193678573 925429594 490918648 19177632 867422743 723786731 877510891 894324471 172781695 840400918 828271121 58929739 897206799 112613098 409012494 951130352 141436378 554449961 416338411 354248262 163414129 867422743 543160843 805452691 171100337 356410008 171580725 76583998 266457355 785996977 939240749 7768417 253126588 111412128 258651050 918824259 809776183 707453539 788639111 528989397 210251959 699887428 597564784 844244022 585314890 457771876 489117193 693642384 355809523 938279973 85711370 989561392 974429170 15814916 990161877 168818494 729911678 686556661 910057178 157529376 546283365 788519014 801009102 549886275 101564174 763538838 754291369 294439956 516018921 696284518 80787393 395561630 627709131 532712404 940441719 340557204 760056025 634674757 874988854 779511739 942123077 603449537 626748355 776629411 727509738 360613403 965301798 969264999 227666024 542200067 57248381 313415282 287594427 459573331 109250382 627709131 348363509 591680031 47880815 891322046 480230015 338035167 612817103 722105373 799087550 361934470 9569872 196200610 162093062 877991279 956895008 75262931 203406430 156088212 397363085 826709860 113934165 136152110 533192792 999409346 888679912 20618796 203526527 583873726 998088279 152485302 264415706 207369631 160531801 253006491 367939320 421022194 479389336 28425101 72620797 260812796 973228200 848207223 5006186 496923498 167617524 733514588 436154416 116095911 459333137 165936166 330589153 481310888 54245956 820825107 854332170 605130895 482031470 267778422 942123077 234631650 460654204 731352842 556371513 305969268 74061961 984997706 955814135 693642384 497523983 612456812 734715558 538957448 80186908 43076935 407211039 155968115 643321741 599126045 646444263 594922650 348363509 470742352 98681846 230067964 813859481 450566056 361093791 141796669 181668873 528629106 19537923 293238986 836918105 713818680 307650626 234631650 947767636 395081242 642360965 733394491 299123739 616179819 475426135 755852630 688598310 979112953 611856327 605010798 908856208 337554779 224903793 328187213 687277243 379468632 850729260 519862025 933476093 457051294 182989940 145399579 688598310 718142172 195239834 854332170 376226013 108529800 921346296 769663785 81507975 415737926 880993704 413936471 491278939 128946290 640439413 728230320 656172120 221420980 819864331 856253722 822866756 633834078 167377330 24822191 940441719 42476450 726308768 232109613 193318282 719823530 181188485 379949020 593241292 192957991 957975881 330228862 694483063 300564903 373703976 999889734 714899553 924468818 960137627 907895432 16295304 435674028 94478451 33108884 830673061 293839471 529229591 645003099 54005762 682833654 387154840 841721985 643441838 37432376 387995519 893723986 448164116 292758598 911498342 40074510 381390184 605371089 846285671 948368121 402407159 71299730 162093062 730512163 266097064 967943932 314856446 311253536 381750475 307770723 250964842 899248448 928432019 982835960 660855903 209171086 392319011 263575027 196921192 924468818 56767993 945605890 402287062 557812677 422223164 955694038 237153687 182269358 978272274 890601464 563457236 862859057 233310583 396282212 596724105 808094825 423904522 646924651 220700398 27224131 978152177 907054753 411054143 486715253 355689426 258170662 242558052 308010917 396762600 563337139 550967148 320861296 6087059 724507313 622785154 194879543 553369088 440958296 124622798 884596614 906334171 779872030 837398493 444681303 737357692 343679726 305248686 23981512 271981817 222261659 288675300 564658206 838839657 392799399 866702161 775548538 951730837 697245294 257329983 539798127 976831110 479509433 709014800 847246447 452727802 767622136 35630921 682713557 925909982 329868571 705171696 633473787 696764906 98321555 977431595 75503125 70098760 722705858 713698583 288675300 660135321 446242564 572584608 800528714 216617100 338515555 11491424 554810252 182869843 454289063 807494340 353647777 959417045 282550353 388836198 419581030 19658020 850729260 176144411 355088941 497163692 251565327 194279058 928912407 177945866 545923074 542079970 30466750 402887547 522023771 671904827 404568905 879312346 51363628 439637229 515898824 796805707 202805945 42596547 369860872 701688883 782394067 623145445 638998249 692081123 278947443 22300154 708414315 515418436 83309430 355809523 880993704 735316043 75142834 163294032 580150719 957615590 395681727 146720646 995566242 206288758 257450080 533192792 400725801 643201644 273422981 422463358 388836198 918944356 462095368 88473601 322782848 408532106 523585032 254087364 22420251 556731804 937319197 618461662 410813949 811217347 707093248 783595037 888199524 181909067 788639111 865741385 157289182 703130047 93517675 559854326 259852020 494281364 907174850 335753324 986318773 293599277 97721070 345000793 103005338 307770723 502327863 271261235 921226199 182389455 865501191 263575027 65775268 507371937 766661360 978872759 371542230 134110461 335753324 999529443 700968301 574386063 666380365 411414434 932875608 659294642 902130776 171941016 312214312 544602007 864780609 95199033 852290521 198602550 570783153 86672146 335993518 599606433 485874574 808695310 685475788 668422014 547964723 991843235 447203340 465578181 601047597 204006915 343319435 277626376 674546961 173982665 318459356 545322589 157649473 771465240 760416316 433151991 227185636 938159876 561295490 327947019 915581640 780472515 569702280 285192487 930113377 648966300 546043171 976951207 584113920 642240868 459693428 385953870 590238867 717541687 880873607 361093791 812778608 94718645 631672332 309211887 251084939 835717135 677429289 78505550 881954480 437955871 76463901 141796669 400725801 562376363 44157808 332270511 381510281 676948901 888079427 909816984 198842744 111652322 32388302 263214736 16775692 22180057 330949444 552408312 524065420 831994128 418500157 110811643 676948901 291197337 579910525 527308039 69618372 597324590 670343566 690399765 72981088 743602736 433031894 525266390 238354657 158610249 176985090 615819528 155848018 468700703 710095673 743602736 656172120 225264084 79586423 713578486 4165507 659895127 108649897 611496036 591680031 772906404 840040627 500646505 118738045 824788308 401326286 189715372 354008068 119818918 476747202 327226437 430870148 885917681 306569753 14253655 961338597 160531801 433992670 111412128 294079665 123301731 796325319 834035777 383311736 574986548 811577638 631912526 682233169 178186060 375385334 560214617 212773996 673225894 669502887 391358235 645363390 803531139 113333680 696885003 863099251 7288029 217217585 61091485 418139866 382471057 359652627 717301493 866101676 74302155 80307005 256849595 167737621 378627953 516018921 375025043 207009340 688598310 998448570 668061723 406010069 133269782 4405701 686676758 234871844 351486031 691840929 211933317 364096216 805092400 391598429 431951021 793442991 461254689 931314347 296721799 251925618 734955752 849768484 605130895 354848747 762818256 934436869 121980664 747926228 584954599 156088212 760776607 926510467 930233474 802330169 833915680 917383095 319300035 236793396 123301731 99162234 421742776 820344719 276425406 319540229 553609282 39594122 602128470 75983513 444801400 147801519 758374667 446122467 197881968 413215889 14133558 160051413 508693004 576427712 391958720 932875608 613897976 404929196 868503616 675267543 966742962 883996129 645243293 964941507 421862873 563697430 6447350 277266085 22900639 240636500 788759208 113093486 341998368 383311736 38152958 439997520 910417469 890121076 128706096 747325743 582192368 53165083 78745744 811457541 627829228 816861906 393159690 639358540 588077121 79106035 923988430 379708826 332150414 584234017 196921192 940081428 696524712 864660512 573785578 320260811 248442805 154286757 363735925 650047173 752249720 713458389 660495612 643081547 605731380 94598548 670343566 186712947 347642927 968904708 687997825 224903793 155367630 157649473 72260506 446482758 534153568 407090942 515898824 828391218 861177699 283270935 394841048 767982427 782273970 339956719 905733686 833195098 671664633 339116040 684515012 3925313 421622679 77544774 761737383 91355929 191036439 783715134 87873116 581231592 686436564 953051904 788519014 632032623 823827532 671184245 428348111 108409703 626868452 597564784 656292217 512896399 629270392 774707859 432911797 594802553 702409465 875108951 227305733 400245413 62892940 51363628 264295609 200884393 782514164 5246380 678990550 209891668 625787579 944765211 87392728 485634380 151404429 528989397 704331017 677429289 218418555 277386182 623265542 846405768 174222859 756092824 534273665 18216856 346441957 701208495 224183211 378027468 517940473 364816798 49321979 433512282 589278091 224303308 943083853 561175393 949569091 574145869 161852868 540638806 218178361 136392304 965181701 662777455 500526408 182989940 971907133 244719798 984997706 517820376 866461967 409252688 331549929 55927314 919544841 188754596 956534717 501607281 93998063 773386792 848327320 836918105 488396611 909696887 762337868 494281364 65775268 428948596 659895127 182629649 203646624 854692461 820584913 691360541 217337682 248682999 917623289 931434444 211332832 865501191 917623289 413576180 890601464 355449232 357851172 207970116 380669602 587356539 244119313 539918224 589638382 412495307 878111376 21579572 443720527 257450080 476987396 765940778 371181939 102645047 468100218 161012189 85951564 176024314 897446993 465337987 995085854 746244870 939480943 293959568 285792972 816861906 140955990 623385639 486835350 689919377 116456202 337915070 762337868 684394915 288675300 934196675 317138289 418139866 172061113 282550353 113093486 220580301 623866027 744443415 266217161 831513740 792602312 945966181 825869181 813739384 66135559 894804859 323863721 484313313 11491424 909336596 982355572 10170357 549646081 417779575 447563631 573064996 749487489 256129013 311733924 325785273 696404615 70939439 674787155 884836808 848927805 82228557 130507551 262854445 633353690 829592188 874388369 476266814 482151567 985117803 985117803 691000250 120419403 927471243 597324590 207369631 251565327 496082819 570302765 671664633 172061113 413456083 392559205 384752900 961218500 849288096 590959449 657733381 443360236 962059179 569822377 906093977 557212192 409733076 377426983 738558662 637797279 837518590 404208614 206048564 902851358 837278396 766901554 797406192 387875422 823587338 838239172 656172120 575346839 67216432 979593341 999289249 832114225 31667720 683314042 988120228 963019955 908015529 485994671 393399884 616900401 563457236 36831891 4045410 859616438 43437226 552288215 951490643 294560053 425826074 423544231 584714405 941282398 204247109 220460204 440117617 79106035 562496460 835236747 855533140 176624799 688958601 654010374 524786002 985237900 259131438 403848323 427867723 129546775 397363085 585675181 754291369 716100523 51123434 883035353 997968182 315336834 132549200 349444382 171941016 494161267 720904403 109970964 502087669 573545384 494641655 161972965 605130895 771345143 765820681 756453115 180227709 81027587 183950716 744563512 70699245 421502582 93397578 545202492 833315195 326866146 792842506 643922226 158730346 73221282 776749508 280508704 407571330 446963146 268138713 758614861 115615523 666860753 81507975 831994128 223702823 456330712 586756054 146360355 829952479 729311193 517460085 589998673 177945866 863459542 170980240 973228200 733994976 563937624 708414315 420181515 133269782 439637229 829952479 394720951 875229048 692681608 427027044 193438379 164975390 5366477 890241173 266097064 802791 24822191 166296457 349564479 616179819 359412433 178546351 229467479 571143444 898407769 825388793 781073000 450686153 498724953 182869843 663257843 471222740 127144835 469781576 23861415 603209343 544361813 355569329 382110766 750808556 775308344 493680879 697245294 92436802 547364238 843523440 187673723 930233474 344880696 81507975 837638687 954132777 886638263 834636262 873307496 898167575 528629106 516139018 795244446 425826074 286393457 811697735 528749203 782634261 389196489 50162658 555290640 911498342 538717254 678269968 726428865 754771757 173262083 479269239 492479909 879072152 594442262 693642384 259972117 477587881 103846017 398564055 853131200 725588186 329388183 989321198 361213888 194879543 710455964 761377092 715500038 488997096 440357811 882074577 310893245 204006915 57008187 590479061 62172358 818182973 426066268 672745506 820945204 503168542 94238257 778671060 767502039 788759208 289996367 168938591 320501005 304167813 744563512 645603584 48721494 395561630 159691122 238594851 343559629 462215465 673225894 223822920 678630259 988240325 666500462 450085668 368059417 742641960 586876151 258891244 670463663 141916766 121260082 986078579 127865417 447563631 106247957 643081547 706012375 869824683 667701432 629390489 734835655 115255232 889640688 132789394 863219348 624106221 486475059 8969387 159450928 751769332 361814373 279067540 271141138 926750661 434112767 653289792 192597700 954973456 586035472 978632565 529229591 777950478 546883850 728110223 851449842 990522168 254207461 726068574 543521134 647284942 356410008 73101185 807254146 250604551 659534836 780232321 615579334 817342294 294199762 934316772 693161996 312334409 896125926 266217161 936718712 879432443 173742471 692081123 673466088 756333018 628549810 862979154 95199033 379949020 146840743 627829228 142277057 782514164 106728345 465458084 341517980 242197761 156688697 347642927 557572483 980193826 796565513 479989821 859856632 246160962 37192182 805452691 745043900 920025229 754171272 696164421 617741080 855413043 199683423 680792005 301765873 610415163 563457236 59290030 275104339 406370360 103966114 162933741 708414315 473624680 732193521 544481910 564297915 909216499 318099065 333111190 743002251 831393643 797045901 215416130 78745744 366017768 954012680 598285366 598765754 842442567 649806979 450085668 869944780 962779761 632032623 977071304 5606671 991843235 829351994 722105373 263454930 938520167 452367511 858775759 330228862 691360541 879552540 808695310 413095792 714178971 104206308 3204731 214575451 907174850 889400494 33949563 786957753 557332289 170619949 239555627 359532530 52924889 457771876 689198795 845324895 398083667 985117803 35630921 659054448 834035777 902611164 815540839 543521134 927711437 187913917 26863840 941642689 541239291 839680336 102645047 311253536 569702280 8609096 148522101 417899672 372262812 826229472 612817103 808094825 444200915 537155993 274623951 911738536 333591578 969625290 399644928 469541382 875949630 120179209 967703738 740480214 961698888 927471243 226825345 304287910 119218433 485274089 134831043 830072576 367579029 137953565 311854021 926270273 333831772 223582726 170019464 7047835 407571330 164374905 338635652 305849171 779271545 292878695 997007406 774587762 835236747 119818918 678269968 445521982 977671789 286993942 602248567 540398612 474945747 965301798 50282755 471342837 206528952 204127012 715740232 190435954 94598548 93037287 727149447 594202068 616059722 178666448 126544350 569582183 907655238 365537380 213134287 49442076 631432138 593841777 654971150 917383095 899488642 160651898 588437412 944885308 3324828 329268086 872586914 783955328 37192182 739159147 427387335 334312160 259972117 554930349 670823954 672385215 761256995 77304580 994965757 291797822 624586609 685475788 102404853 349564479 121380179 984036930 691240444 376946595 17736468 119098336 811097250 416578605 653409889 123061537 86431952 51844016 531271240 515298339 345601278 200884393 495242140 27704519 686796855 167737621 349684576 99642622 517700279 355809523 339596428 650767755 336834197 949448994 889280397 947287248 963740537 765100099 233430680 227906218 759455540 710215770 236072814 233070389 582312465 7648320 825749084 402166965 107208733 555891125 617380789 401686577 378988244 365177089 130267357 382471057 297802672 234271359 262253960 337074391 867062452 931074153 893844083 773266695 232590001 485634380 467139442 956534717 792242021 112372904 583873726 757053600 565859176 514097369 18577147 490438260 892402919 60971388 440718102 232710098 621103796 110091061 835717135 28665295 993764787 803050751 464857599 732914103 340317010 776028926 539437836 104566599 779631836 537996672 325424982 364096216 790440566 665299492 347763024 208690698 851329745 750448265 155247533 599606433 910777760 980193826 565979273 482151567 978632565 737597886 20738893 525986972 96520100 6087059 775428441 100243107 955814135 267538228 692081123 640319316 284231711 671304342 699887428 282910644 643682032 336594003 299604127 609574484 358211463 247241835 206649049 217938167 230428255 406970845 204967691 297802672 71419827 963500343 350044867 679350841 547124044 186953141 103005338 565138594 110811643 508332713 499565632 541599582 971546842 395921921 935157451 48481300 68657596 608493611 866702161 335152839 895645538 378748050 100603398 540999097 977911983 306209462 107929315 975269849 617500886 829712285 335753324 829472091 858055177 782514164 272101914 551087245 475786426 341638077 158970540 834516165 395801824 95439227 164495002 854332170 552408312 917262998 398924346 506291064 282790547 763658935 838719560 311013342 158970540 516739503 308010917 694963451 410934046 928792310 865381094 959296948 459693428 949689188 916782610 124742895 705652084 737597886 923147751 352446807 356289911 725347992 503648930 777229896 848087126 45358778 188274208 452007220 691240444 485994671 339596428 535834926 877510891 911978730 220460204 560214617 525626681 191156536 698806555 364096216 941762786 180828194 822746659 111892516 494401461 357370784 853491491 610535260 554209767 212173511 759695734 413335986 695083548 307770723 160531801 217217585 133389879 656172120 932875608 266097064 723066149 875349145 704451114 298162963 636236018 51844016 305608977 544001522 452487608 884716711 550606857 820464816 715379941 742762057 642120771 471222740 510134168 791881730 947767636 854812558 649806979 531511434 861898281 134470752 606812253 163894517 768222621 341397883 824428017 850489066 244839895 324224012 913660088 269339683 625187094 925549691 271501429 878831958 298403157 891322046 40434801 453688578 479149142 484433410 857334595 183350231 149963265 643561935 457171391 761497189 906334171 827910830 889160300 86311855 381029893 326986243 479749627 764859905 961218500 964341022 986919258 624826803 750568362 493560782 801849781 205688273 724387216 124502701 808335019 133149685 817222197 455369936 670583760 783234746 94718645 747085549 399885122 605130895 273302884 921586490 861177699 811217347 77784968 416338411 410573755 584714405 529469785 157889667 698806555 215296033 99642622 528028621 942363271 879072152 570542959 288915494 264175512 29265780 657973575 300324709 750808556 780712709 783835231 270780847 986318773 744683609 397963570 273062690 19778117 235712523 189835469 243038440 247121738 538116769 557692580 943564241 301165388 466178666 431710827 579189943 631792429 89554474 232229710 937799585 237874269 624826803 307410432 284231711 942483368 490558357 767862330 982956057 944765211 765340293 159691122 815300645 541119194 232109613 393760175 552408312 803771333 346682151 793923379 415858023 399885122 883515741 460654204 513376787 325905370 953652389 420541806 452967996 202685848 961939082 984277124 498244565 956174426 730151872 135671722 638397764 602728955 782634261 690519862 125343380 783354843 836677911 826950054 864060027 412255113 208930892 471583031 332870996 410813949 460534107 893003404 200644199 205448079 226825345 833195098 538236866 939240749 642000674 707093248 355088941 462815950 280508704 885077002 451526832 282910644 664578910 109130285 647044748 820584913 479269239 959897433 111051837 882434868 91115735 820584913 906694462 459693428 219019040 481551082 789359693 466659054 231268934 321101490 500166117 48361203 876550115 18336953 109730770 808335019 32268205 372142715 197641774 4525798 121860567 751649235 41875965 35630921 670103372 750688459 720544112 669022499 343799823 490798551 538837351 850128775 665779880 618581759 876189824 369140290 530910949 480109918 625787579 646204069 981274699 866822258 481671179 401686577 136992789 390877847 691720832 395321436 715620135 486955447 973348297 541959873 907535141 721745082 708294218 108289606 227305733 360493306 526347263 237033590 350765449 410453658 340076816 18937438 46199457 308491305 215296033 835837232 360012918 756693309 86311855 579430137 796325319 557332289 630591459 238835045 278827346 596243717 136992789 914380670 872586914 405409584 366498156 114774844 905253298 318099065 429909372 535354538 995686339 840761209 681392490 418500157 199082938 733514588 58809642 634194369 292278210 212773996 17976662 443600430 49682270 151404429 642481062 818303070 399524831 351846322 893723986 895285247 307050141 239075239 999409346 147561325 839560239 380549505 205808370 993284399 568141019 670823954 437955871 432791700 637557085 893964180 23741318 620143020 673586185 95319130 998088279 952091128 459092943 768222621 493921073 488156417 206168661 169659173 378267662 424505007 543040746 963740537 422583455 522143868 728710708 671664633 291917919 722465664 108649897 390997944 839920530 38273055 198602550 632392914 761256995 315577028 776509314 202926042 133029588 102885241 266697549 678390065 36351503 438676453 442639654 877270697 643081547 861177699 973948782 118858142 175543926 537276090 202085363 32148108 493200491 570302765 995205951 884356420 294680150 599366239 259852020 893483792 352206613 831033352 289155688 618341565 303567328 218418555 737958177 180828194 562736654 19537923 230668449 94478451 209651474 300564903 745284094 901170000 265856870 842442567 752730108 528869300 706012375 709735382 137713371 380789699 680071423 102524950 70939439 323623527 442279363 624946900 551207342 942363271 409132591 109250382 610415163 537396187 238474754 79826617 501487184 442759751 127625223 909696887 521423286 184551201 249643775 79946714 490318163 472543807 584354114 371902521 864060027 207009340 740600311 997487794 719583336 356410008 439997520 958696463 396762600 610295066 969024805 948488218 48961688 575707130 359772724 366378059 668902402 682233169 262253960 664819104 165215584 999289249 772426016 898047478 458612555 821905980 407211039 167137136 403968420 117416978 982115378 248322708 187553626 819864331 902731261 330589153 309692275 553369088 106488151 193558476 112132710 188754596 465938472 644642808 921106102 554570058 707693733 847846932 436514707 424264813 782874455 118738045 114174359 284952293 748406616 187073238 246881544 531751628 311013342 117777269 950770061 401326286 111412128 456570906 659895127 445521982 403728226 685235594 909096402 695684033 121380179 119098336 298883545 673105797 284231711 615819528 680311617 957495493 520222316 422223164 32508399 33349078 391118041 703009950 308371208 868863907 51243531 30827041 709735382 865981579 76583998 330829347 376946595 733994976 9209581 676468513 90515250 930233474 102044562 701568786 998448570 976951207 519982122 341517980 492600006 418860448 41755868 29145683 296721799 812898705 542800552 497644080 246761447 734235170 996887309 887238748 131348230 713338292 709014800 990522168 638998249 615459237 553369088 718142172 884236323 823827532 253606976 907535141 531991822 581591883 121019888 163414129 581471786 923748236 562976848 885557390 69498275 781313194 824788308 931674638 567180243 417899672 355809523 974309073 659895127 876309921 10890939 830072576 432671603 445281788 14013461 294800247 358091366 214215160 432311312 268018616 440237714 480710403 917983580 420661903 785516589 946086278 144198609 69618372 959176851 491519133 444321012 556731804 305729074 272702399 391718526 406490457 563937624 954853359 237393881 445281788 261293184 568621407 337915070 624346415 137953565 939240749 524545808 823587338 755011951 327586728 636956600 852050327 852530715 286513554 836798008 524065420 193798670 39714219 986679064 950770061 875709436 352927195 638878152 118738045 50402852 396162115 117897366 949929382 168938591 276785697 711296643 478188366 633473787 274744048 419460933 719943627 384872997 653049598 611616133 632633108 747325743 720183821 749367392 189835469 275344533 865381094 237994366 517820376 574866451 477107493 682113072 39353928 140235408 126063962 774467665 495962722 808455116 924228624 519021346 369140290 425826074 921466393 284351808 712257419 357250687 425105492 706012375 312814797 511215041 986198676 2964537 710455964 666380365 140235408 760776607 614738655 128585999 531271240 949208800 9449775 850609163 568741504 667100947 999169152 500406311 228146412 326625952 556371513 715980426 36831891 560935199 698926652 249763872 969264999 301525679 351245837 996527018 581351689 989441295 219379331 203406430 692201220 43797517 501607281 672865603 274263660 209531377 63493425 489597581 854932655 41395577 198482453 914740961 648606009 553609282 226945442 551807827 349924770 50282755 568981698 925429594 608853902 798246871 215656324 819864331 226585151 12812491 210852444 973228200 235712523 686796855 685956176 768462815 238234560 729431290 910537566 420782000 435914222 278467055 568981698 327226437 99402428 363495731 258771147 742161572 575346839 597084396 696524712 114414553 381870572 729671484 65535074 134590849 604530410 379228438 102284756 586635957 259491729 111051837 324464206 978992856 22780542 260932893 538717254 529349688 420782000 621704281 610775454 17976662 810496765 426546656 263094639 704691308 344400308 492239715 493921073 600567209 425345686 507852325 498724953 880273122 296241411 864420318 805933079 649927076 503889124 551447536 864180124 221541077 730031775 404568905 38513249 933235899 434232864 500766602 541359388 673345991 860697311 680191520 15094334 258530953 778550963 950409770 706492763 152365205 850849357 850609163 989201101 954853359 400605704 214215160 475306038 29265780 830673061 964581216 898287672 372022618 2604246 997127503 531151143 662537261 188034014 30466750 432551506 943924532 77184483 124742895 70699245 889160300 51243531 890000979 867903131 847486641 148281907 402647353 388115616 84030012 131468327 763538838 495842625 182629649 920625714 207129437 891081852 722825955 755372242 887959330 621223893 38633346 121980664 457891973 993044205 132188909 506050870 995566242 527548233 65294880 186592850 461494883 46079360 608613708 815300645 493440685 407331136 604410313 993284399 754051175 220340107 388596004 182269358 278346958 864060027 727149447 215175936 886878457 394120466 86672146 642240868 694002675 644042323 665779880 221420980 224903793 24942288 138674147 11851715 538477060 245200186 682593460 481791276 118377754 699046749 424144716 398924346 577868876 822626562 904652813 290356658 533913374 246401156 483832925 653770180 726308768 504609706 396882697 450686153 510734653 440838199 148281907 969865484 35270630 764259420 990281974 48121009 623025348 429068693 719943627 172301307 184551201 164735196 672145021 133269782 991723138 964941507 912218924 403848323 187793820 203046139 178426254 891562240 735436140 359412433 906454268 785156298 84390303 665539686 378748050 910297372 770864755 191997215 264415706 942483368 196320707 280268510 954372971 443720527 844364119 275224436 7167932 634434563 435794125 790680760 179627224 198242259 962299373 485994671 646924651 37312279 577628682 227425830 8008611 601287791 966502768 629510586 915701737 60370903 712377516 334192063 234151262 905253298 575106645 32268205 478308463 935277548 607292641 562856751 829832382 21579572 245680574 35390727 9930163 331910220 863219348 337194488 620383214 80066811 546283365 948488218 801489490 931314347 462936047 790920954 809295795 691720832 329268086 979353147 443840624 912579215 463896823 785276395 78985938 653770180 815901130 366858447 340437107 432431409 666020074 379828923 256969692 945245599 110211158 428107917 954973456 262734348 106368054 382230863 785516589 576788003 62772843 196200610 758014376 996406921 827070151 930593765 770144173 230308158 720544112 203166236 669382790 728110223 685475788 561295490 972027230 130627648 240636500 396522406 856974304 580390913 268499004 106608248 827550539 131588424 886037778 91115735 241597276 753690884 161612674 953412195 232349807 723186246 422103067 76223707 451286638 746244870 513977272 263454930 361934470 708174121 925909982 20858990 947047054 546283365 681272393 506411161 700487913 646083972 776269120 650767755 977311498 824307920 34069660 467619830 709134897 502808251 24101609 762698159 899969030 824788308 594682456 520582607 354248262 828271121 820344719 232590001 870425168 776509314 922307072 815781033 660976000 124142410 345961569 506291064 820344719 760536413 148882392 333591578 640919801 475666329 650887852 136872692 298643351 901290097 633353690 733034200 54726344 827670636 200644199 23260930 279908219 415137441 652689307 253126588 621944475 317738774 217217585 190916342 540158418 123541925 157289182 54606247 718502463 327106340 594081971 629510586 442500 129786969 766541263 575707130 502688154 261173087 844484216 765100099 436754901 528629106 813979578 692561511 883755935 46799942 629150295 39954413 295761023 322782848 374184364 806173273 35030436 303207037 563217042 706132472 819984428 549045596 877510891 519501734 219259234 140835893 536915799 448884698 596123620 76463901 629870877 380789699 392198914 963380246 432791700 796325319 716460814 874988854 809295795 378627953 294319859 356890396 432191215 988120228 77064386 358571754 480950597 726188671 678510162 462455659 848327320 453928772 714899553 806533564 259371632 623385639 707453539 378147565 407211039 449845474 193438379 212293608 844724410 986078579 612817103 3565022 542800552 935037354 368419708 55807217 258050565 297682575 612456812 225984666 431590730 449725377 969865484 633954175 906214074 880153025 768462815 412255113 254207461 191516827 721865179 405889972 321221587 111892516 834155874 150083362 615699431 974068879 489357387 581351689 229347382 912699312 864900706 92436802 248803096 777229896 763779032 497884274 505570482 880273122 472423710 730752357 580270816 15214431 588557509 999289249 584113920 508933198 946566666 549525984 997968182 514697854 19898214 860457117 511695429 391718526 988840810 732073424 700487913 791281245 137232983 76824192 574506160 983676639 410813949 340076816 913059603 20979087 311974118 891442143 845685186 555530834 346081666 742641960 577268391 491999521 831393643 229827770 359652627 253486879 873427593 418139866 108769994 845444992 562597 40554898 843523440 54846441 204247109 374544655 833675486 143357930 16775692 662297067 601287791 126304156 24101609 748046325 372983394 964581216 772546113 458372361 477467784 129907066 476987396 695804130 419821224 44157808 1883664 23381027 91836317 158610249 636956600 394480757 191396730 779631836 187793820 702049174 290116464 752249720 12692394 105767569 73461476 352446807 758494764 769903979 336954294 584834502 964100828 44758293 225984666 155127436 625547385 792001827 940922107 833315195 154526951 499805826 656052023 28425101 314736349 799808132 795004252 320140714 620743505 245680574 671904827 903331746 674306767 245440380 297682575 663498037 867422743 688838504 30106459 5486574 704691308 255288334 661936776 845565089 840521015 415137441 469060994 251565327 95559324 726188671 355809523 307770723 591199643 122701246 883635838 737357692 771585337 753450690 744563512 615098946 513376787 546763753 813739384 140955990 887839233 364216313 82949139 63853716 22059960 514217466 788759208 197881968 11371327 309572178 233310583 908616014 55807217 180107612 201364781 652329016 276065115 515418436 953172001 678510162 120779694 49922464 375625528 749967877 939601040 202306 61691970 333711675 999889734 598405463 711176546 987519743 956054329 33949563 987039355 335393033 784675910 643561935 584113920 238594851 972267424 142877542 961098403 992323623 375145140 945605890 794884155 198122162 644282517 337074391 868863907 984277124 815060451 383912221 193918767 835597038 793442991 588317315 626628258 708414315 22180057 624826803 842922955 138794244 245320283 763779032 230668449 299484030 208810795 669502887 161612674 973468394 280148413 882194674 262854445 883515741 540758903 876550115 986679064 557932774 289275785 275945018 250484454 199683423 510734653 101444077 487315738 190195760 269820071 481911373 859976729 912699312 546883850 487555932 748526713 895165150 772666210 39954413 704571211 493440685 108169509 317858871 70218857 459333137 97600973 155367630 366378059 574386063 728110223 886157875 586756054 928792310 546043171 85110885 295040441 978272274 502327863 441438684 756693309 678390065 369380484 996046630 644522711 945966181 246281059 74542349 253967267 616059722 352206613 684154721 100123010 77184483 934436869 257450080 756933503 847726835 819984428 745644385 196801095 446722952 288194912 922888 140475602 783354843 808935504 347763024 483832925 800889005 794643961 708894703 121500276 700728107 7047835 212653899 508933198 524545808 672024924 25542773 438196065 440477908 436514707 324344109 252406006 38753443 486715253 537516284 538116769 919785035 663017649 513977272 704811405 127625223 80667296 98561749 751889429 844964604 805452691 548685305 896486217 377547080 789239596 530670755 993284399 38993637 508332713 600927500 72260506 435914222 521423286 110571449 74061961 394720951 950289673 813619287 90395153 140115311 908495917 920265423 469301188 698446264 196921192 302726649 106848442 120659597 943444144 75623222 795364543 629990974 871265847 11731618 254327558 375025043 974188976 435794125 891201949 265616676 839079851 261773572 802570363 393159690 848207223 112252807 832954904 227425830 989561392 56647896 747445840 979953632 348843897 743242445 283270935 610535260 928432019 741681184 239435530 169899367 724387216 540518709 676708707 234271359 988000131 70579148 58089060 954973456 135311431 631672332 9209581 642240868 699647234 527548233 760776607 913900282 57848866 450926347 566579758 903692037 677669483 570542959 72981088 978512468 163294032 300444806 725948477 258050565 263695124 445401885 284712099 290116464 527668330 488276514 607052447 176264508 745284094 591199643 121620373 445762176 576187518 927831534 561055296 413095792 389076392 969264999 249883969 270540653 304408007 568141019 235352232 690399765 744083124 25782967 503528833 945005405 185992365 458132167 857094401 294319859 829952479 85831467 454529257 659534836 699166846 525626681 899969030 849528290 878952055 184311007 160411704 466418860 113573874 848087126 839320045 339716525 580390913 331069541 857935080 883035353 721144597 342118465 265616676 491879424 784075425 414897247 968304223 989561392 527067845 37912764 352206613 263575027 712377516 563817527 581351689 135191334 648005524 454289063 357971269 508452810 514337563 386554355 67216432 947167151 314616252 721384791 956774911 915581640 231389031 952451419 587836927 97240682 818182973 914020379 500046020 660255418 389196489 882434868 912339021 699286943 894084277 459092943 637557085 444200915 956414620 979473244 404689002 765700584 155007339 655091247 585795278 609334290 885437293 358331560 12692394 667221044 702289368 318699550 846525865 978392371 606572059 573785578 126063962 56767993 946926957 104686696 129426678 710936352 902130776 520342413 378748050 71539924 763779032 410934046 828991703 735796431 802930654 221661174 356890396 789719984 798246871 403247838 643081547 359412433 870305071 639478637 528028621 840400918 190315857 512055720 406730651 289395882 97961264 253727073 692801705 430870148 827790733 857214498 983316348 154887242 284832196 626508161 758734958 948968606 18697244 970826260 926750661 21819766 384993094 67816917 743242445 729671484 906214074 610655357 724026925 232830195 923988430 73341379 589037897 551327439 948848509 547844626 521783577 817582488 616540110 630951750 678390065 101203883 506531258 142637348 879792734 397122891 967823835 414536956 287954718 803290945 609334290 758734958 869224198 402046868 715379941 231389031 136752595 56287605 34189757 409973270 541479485 898167575 599726530 888319621 654971150 496082819 309211887 300925194 77184483 580991398 433872573 202085363 634554660 530550658 870905556 504369512 810857056 919905132 964821410 798727259 848927805 81988363 61691970 484313313 474945747 457771876 476266814 770504464 203886818 377907371 465097793 875949630 887599039 509293489 856253722 699166846 996286824 206889243 877991279 174703247 628790004 702289368 204847594 570663056 931434444 352807098 183830619 424865298 384993094 31547623 86191758 347883121 746845355 16415401 441558781 267418131 837518590 88353504 59049836 615579334 338155264 910897857 665299492 593601583 253967267 591920225 286753748 539437836 414296762 595643232 199203035 980434020 635155145 366257962 562376363 481911373 960137627 938880458 190075663 353887971 39594122 573185093 313054991 335152839 167497427 253126588 95439227 373223588 840521015 750208071 452727802 969144902 280028316 468700703 678630259 141796669 949929382 703610435 179627224 221901368 376826498 859736535 638758055 377066692 822266271 502808251 715259844 19537923 28305004 323263236 863339445 492600006 905013104 584594308 467139442 135551625 291797822 306569753 726909253 142517251 947767636 989081004 349564479 463776726 39353928 865501191 884836808 491639230 581711980 743482639 191877118 794884155 31787817 696644809 453208190 912579215 128465902 794884155 813379093 18697244 73581573 998688764 691120347 695203645 971426745 985117803 303447231 188994790 449605280 815660936 505330288 429308887 132068812 242197761 722825955 735316043 571743929 960618015 247842320 428107917 87753019 873667787 102765144 647885427 552648506 257329983 438676453 2003761 793803282 21699669 386914646 751649235 242918343 138914341 750568362 416818799 646204069 445762176 360613403 187193335 6927738 669983275 655691732 475906523 382951445 764859905 976711013 244839895 943924532 392439108 458492458 685475788 73581573 413936471 901170000 358571754 979593341 820705010 645243293 780592612 845565089 172421404 605010798 345120890 267418131 203286333 347042442 127865417 365177089 631792429 441798975 920986005 547844626 686196370 888079427 85351079 761497189 101083786 113213583 587957024 560574908 918704162 783114649 627228743 29986362 604650507 131108036 625066997 33829466 378387759 606451962 332390608 36711794 297202187 305608977 20618796 757533988 518180667 868383519 508813101 997968182 148762295 832714710 936718712 378507856 238234560 412014919 385593579 591920225 550606857 232710098 331189638 156928891 912819409 980073729 504249415 328907795 674426864 568381213 780712709 133509976 268138713 400245413 260572602 434352961 737597886 836197523 963260149 302846746 179627224 250604551 899728836 95319130 774827956 75863416 2123858 810977153 306569753 810376668 366498156 748286519 168938591 803771333 992924108 641640383 707933927 409372785 805452691 712137322 972747812 52204307 375985819 738678759 913660088 775308344 434593155 861658087 358811948 505330288 743482639 96640197 709495188 594081971 129426678 791521439 336233712 174463053 176985090 985598191 161732771 966022380 601888276 964581216 809776183 294199762 971546842 279187637 531991822 174703247 246641350 455730227 166656748 757053600 220460204 719223045 738318468 746124773 349684576 586635957 258170662 623866027 945245599 105647472 885917681 231869419 359172239 626267967 569462086 132669297 78625647 429669178 20738893 510134168 196921192 2844440 360012918 141556475 706372666 463296338 66135559 569702280 812658511 69858566 369620678 184431104 593481486 924468818 384032318 507251840 711656934 452967996 129786969 716100523 60010612 513376787 982235475 61812067 673466088 961338597 473024195 640079122 124502701 835957329 64934589 520702704 609694581 92316705 336954294 345000793 154406854 810857056 912218924 220460204 690519862 873067302 583633532 477467784 359172239 918704162 770024076 426306462 251925618 545562783 436514707 889040203 87993213 145759870 681752781 204127012 205808370 953772486 883996129 159330831 373103491 469060994 189835469 269219586 245200186 559974423 420181515 672145021 301645776 351125740 234991941 536555508 880273122 739279244 158129861 181308582 834636262 90635347 282310159 131348230 645483487 991963332 293118889 318819647 954252874 220099913 79346229 478788851 850368969 770624561 369020193 929032504 639838928 918584065 281589577 256008916 426426559 476747202 594442262 629630683 197641774 4765992 735916528 952211225 886398069 174463053 347522830 334672451 298042866 794403767 648365815 153926466 120539500 654010374 880633413 265136288 231268934 928552116 404689002 419701127 121019888 6927738 781433291 550246566 208210310 792242021 124742895 254087364 43317129 765220196 958936657 202306 208810795 517219891 894084277 36231406 95199033 419340836 634914951 691720832 396762600 693882578 850609163 576908100 35871115 341397883 387755325 185391880 608133320 277506279 116216008 689559086 616059722 60851291 900209224 850609163 202926042 168338106 280868995 496443110 773867180 221300883 25662870 121980664 394360660 679230744 475065844 412975695 913419894 442399460 438916647 818303070 58689545 333231287 453088093 11611521 233790971 283030741 337915070 400005219 248322708 425826074 12572297 87753019 566819952 701448689 632873302 678390065 217577876 331069541 968904708 745163997 375625528 855773334 227906218 114654747 818543264 846766059 763298644 913059603 823947629 588437412 88713795 300805097 514577757 651968725 264896094 130267357 639838928 37672570 468340412 793322894 801849781 102885241 258891244 615219043 50162658 651848628 758374667 980434020 689198795 159450928 958216075 173742471 757293794 734115073 320861296 339116040 519381637 643682032 871025653 393880272 58689545 801489490 315216737 440958296 162573450 892402919 57488575 894084277 569101795 744203221 533312889 739519438 617620983 482992246 268859295 415377635 447323437 314856446 229107188 241597276 325064691 673225894 423544231 930713862 243999216 151044138 950890158 657373090 360133015 491038745 394600854 105887666 97841167 647885427 72740894 264775997 520822801 402407159 170139561 819744234 620022923 627589034 985237900 876430018 743602736 836437717 871506041 537035896 555771028 862258572 819744234 646564360 683073848 932635414 881954480 207129437 559494035 953051904 742521863 237033590 504369512 354488456 282190062 751409041 828631412 965902283 193558476 702529562 792842506 657493187 743362542 277145988 244719798 486234865 994965757 95559324 478548657 160051413 921946781 531871725 315937319 760536413 812058026 949809285 960257724 49081785 129426678 722225470 995205951 640319316 454168966 327947019 556011222 69978663 544121619 689679183 431110342 889400494 966382671 834996553 610895551 487555932 771225046 812658511 741801281 27824616 875349145 871265847 29145683 120059112 990402071 194519252 258891244 206649049 542800552 811697735 145879967 835356844 336353809 887478942 31187332 155727921 912699312 329748474 572584608 409372785 611856327 991362847 448044019 901770485 619422438 415737926 611616133 234511553 678630259 584954599 152245108 361454082 417419284 700728107 219259234 173862568 472904098 57008187 529349688 791161148 475546232 129186484 565859176 561535684 779631836 590599158 597804978 606692156 264896094 668782305 374304461 651007949 250364357 121380179 604530410 764259420 941642689 418500157 274744048 300925194 445041594 195480028 409612979 80427102 676948901 78505550 731232745 496923498 243759022 937199100 222261659 207970116 286753748 426546656 209891668 927591340 642841353 948248024 224183211 381870572 943924532 520102219 344520405 324344109 842922955 821785883 150683847 446722952 809535989 819864331 942843659 822506465 237513978 109850867 891081852 951490643 802450266 358571754 286273360 861417893 204487303 573425287 329748474 927351146 448404310 837278396 659534836 784796007 864300221 528509009 853251297 593001098 927951631 351005643 631312041 131348230 798967453 7047835 218058264 383912221 499805826 263575027 627348840 979833535 106127860 832234322 424745201 383311736 73341379 504369512 98561749 985237900 490438260 716941202 507371937 461374786 525386487 473384486 542920649 980794311 455490033 239075239 264055415 237153687 200764296 394841048 51123434 472183516 864420318 199323132 695804130 12692394 497283789 272582302 643682032 327947019 137833468 917142901 181909067 418620254 987159452 607652932 248322708 424745201 228026315 237513978 680671908 224303308 303927619 147561325 467980121 754051175 365537380 258290759 724147022 862859057 808695310 322902945 85230982 461374786 546523559 754891854 494881849 803411042 451406735 802570363 410934046 108769994 178306157 994485369 139995214 448884698 934316772 821065301 395201339 649686882 292758598 670583760 217457779 207249534 285792972 85230982 342718950 537035896 259491729 912218924 81267781 611496036 789239596 394600854 597324590 133149685 249283484 250124163 743963027 558773453 218778846 361454082 912459118 466659054 400005219 127024738 218538652 303207037 284471905 837278396 387034743 2604246 880753510 680551811 611135745 72500700 659895127 676468513 229227285 985478094 550126469 788158723 425946171 774827956 123902216 867182549 141196184 221180786 916062028 824788308 958095978 132909491 853971879 579670331 471943322 823347144 384512706 438436259 445882273 691000250 113693971 283150838 674186670 236793396 779031351 591800128 283511129 24341803 182989940 378267662 694002675 983676639 816141324 661576485 813138899 137713371 944525017 74302155 929873183 498364662 38152958 21459475 73701670 928792310 836798008 196921192 520942898 718622560 662417164 47400427 241957567 957255299 355569329 762818256 72740894 60370903 215296033 205928467 602969149 813138899 61451776 296121314 23861415 452967996 357010493 240636500 357130590 350405158 987399646 482151567 971787036 390277362 935277548 174943441 809896280 610295066 523104644 1403276 567300340 932755511 611496036 680071423 835957329 738678759 117416978 601768179 772185822 978632565 891442143 701808980 170980240 500526408 871626138 16175207 947287248 940441719 648966300 93517675 918584065 760416316 479509433 899488642 950049479 799207647 755492339 414296762 440958296 597084396 515778727 530910949 384632803 802210072 841481791 276185212 968904708 257810371 97480876 769783882 648726106 396882697 318939744 642721256 65535074 667581335 430629954 441678878 482151567 762818256 564297915 26983937 528869300 361574179 898287672 23501124 711176546 564778303 954493068 390277362 508212616 875349145 52084210 691000250 5846865 525266390 8609096 78025162 370941745 725708283 806533564 152245108 890241173 621464087 626147870 881474092 499445535 908495917 359052142 65294880 544602007 447803825 589758479 857694886 674426864 842682761 591680031 301165388 929632989 4045410 138433953 454769451 403968420 584714405 361333985 494521558 990402071 702529562 350885546 608013223 139154535 91115735 69017887 548084820 837998978 129666872 28305004 788879305 839440142 678750356 418139866 729431290 790200372 86552049 788398917 927351146 565138594 660855903 15214431 417419284 498604856 64214007 612096521 738558662 645843778 754771757 61091485 903812134 989081004 845324895 684635109 941642689 457891973 562616557 715139747 289515979 845324895 910177275 265136288 408291912 160531801 303207037 722345567 21339378 367098641 955093553 128585999 368539805 484313313 823467241 27944713 473864874 185992365 964461119 917863483 59890515 211573026 722105373 133750170 452007220 347642927 126784544 85831467 867783034 233430680 427387335 825028502 902370970 169418979 302246261 274383757 240156112 316537804 629270392 989681489 908976305 907655238 93877966 481070694 415978120 509893974 474105068 976350722 643081547 374664752 101564174 637677182 145639773 163414129 672024924 886878457 22540348 386554355 401566480 287234136 130027163 903451843 248803096 759695734 750087974 555410737 608133320 228146412 685475788 917022804 720664209 399404734 900809709 579790428 929753086 946566666 539798127 127625223 202085363 653169695 444200915 314616252 945365696 805452691 348963994 854091976 969985581 425105492 270420556 994365272 399765025 551447536 184551201 869104101 772786307 740119923 344520405 430149566 569822377 427747626 661936776 881594189 65294880 146480452 542200067 715139747 65054686 672265118 801969878 257810371 400605704 99402428 801609587 972867909 980914408 473384486 30586847 729191096 306449656 304047716 335393033 993044205 794403767 740720408 646444263 179026739 394600854 721144597 262013766 809776183 393039593 882314771 757293794 335393033 135671722 43917614 585555084 300324709 176624799 82348654 942243174 263094639 345601278 939000555 381390184 79466326 809535989 543040746 662056873 680311617 299964418 502928348 802930654 914740961 772666210 269459780 493680879 631071847 878471667 357731075 464257114 677789580 541959873 830432867 922907557 600927500 629390489 528148718 685595885 911618439 372983394 27104034 489117193 154046563 631191944 947287248 344520405 924348721 10770842 733994976 323263236 515298339 904292522 184190910 268378907 707933927 726669059 684154721 940321622 223342532 66856141 576667906 170860143 317018192 479029045 334312160 102284756 135311431 17616371 422223164 556011222 296961993 384752900 370221163 233070389 233430680 565618982 431350536 406970845 571503735 677909677 989441295 724507313 904412619 967823835 69258081 841721985 716340717 243518828 934436869 150083362 809055601 310773148 459813525 938520167 463176241 916542416 49201882 142997639 385953870 207369631 620983699 867542840 349444382 132549200 417899672 97721070 5246380 993764787 55567023 385713676 582312465 770504464 725107798 506771452 963500343 998688764 787438141 919664938 510614556 175183635 957615590 533312889 689799280 277986667 521903674 711056449 81988363 919064453 128826193 99642622 742641960 210251959 16295304 121019888 961218500 438075968 246401156 142637348 261413281 671184245 782273970 280508704 95919615 208450504 607532835 895405344 663137746 882915256 394000369 187913917 467499733 639478637 433992670 89794668 367699126 143718221 221180786 967343447 186833044 279427831 421502582 373463782 704451114 881353995 14854140 81027587 739639535 213494578 3204731 192117312 317258386 545562783 176264508 241597276 591079546 295881120 167617524 298162963 297442381 265016191 394240563 118858142 663618134 182389455 767141748 264055415 336954294 746605161 932155026 554690155 840040627 517219891 834396068 203286333 444441109 397603279 527308039 523825226 457171391 710455964 357851172 471102643 566819952 824428017 290476755 8008611 570062571 368059417 992203526 881233898 883996129 882434868 410333561 956534717 216256809 203886818 601167694 612096521 440838199 384272512 623625833 810256571 23741318 334792548 171820919 231749322 891802434 646204069 444801400 966742962 313054991 579310040 267057840 964461119 756933503 137112886 900089127 220340107 428468208 202926042 289035591 954012680 839560239 488516708 499205341 426426559 897807284 656052023 96400003 214935742 109970964 214695548 879552540 780592612 980434020 615939625 765700584 573305190 975990431 902851358 984637415 415858023 803050751 844844507 650887852 755372242 563577333 32748593 162693547 725227895 557092095 252646200 651608434 586756054 628910101 589878576 837758784 305969268 394961145 320861296 522023771 574386063 963860634 174823344 190195760 238234560 306089365 78505550 648005524 436514707 438075968 613057297 320981393 643081547 576427712 732794006 32148108 317018192 497163692 709495188 758254570 335152839 966382671 940321622 517820376 197161386 114174359 987399646 761737383 843883731 387154840 831153449 426546656 674426864 90275056 93877966 213614675 174703247 109970964 149362780 41875965 429308887 89554474 823106950 539557933 500166117 151404429 785636686 719343142 62172358 980554117 415017344 876189824 44638196 471703128 976831110 385713676 396042018 428107917 248322708 988600616 121500276 930713862 426786850 952691613 365297186 2243955 511094944 755852630 644402614 744923803 617260692 555050446 358571754 535594732 452007220 506531258 439757326 859376244 118377754 976230625 880153025 7167932 275704824 475546232 750568362 674186670 563937624 195840319 445521982 469781576 12692394 320260811 30106459 105167084 486114768 228866994 664338716 926150176 347042442 332150414 371662327 254567752 814940354 843283246 509173392 653049598 518661055 874868757 978392371 37312279 314976543 506050870 360733500 848447417 299243836 858055177 895285247 515058145 295640926 783234746 112973389 300805097 720544112 921706587 27104034 209411280 470261964 717901978 966742962 213254384 768823106 349684576 92196608 225624375 31067235 221781271 398323861 817582488 865861482 187433529 344160114 139274632 987399646 789599887 866582064 649086397 356289911 667221044 51243531 765580487 390277362 100002913 669502887 189595275 848447417 28064810 621343990 106007763 371422133 345841472 683554236 403127741 311854021 781913679 629750780 479629530 820705010 912579215 604650507 363375634 919064453 439397035 126184059 980073729 297442381 80186908 800048326 927711437 903571940 903812134 960618015 861778184 768943203 767502039 274383757 667341141 603809828 668782305 122821343 246160962 530190367 986679064 453928772 180347806 344880696 57848866 298162963 619422438 483712828 463776726 783595037 18697244 119338530 848447417 351846322 967943932 486114768 646204069 605731380 772185822 22900639 99402428 880873607 154046563 223943017 207369631 937799585 744443415 5486574 666140171 234031165 590479061 772786307 632272817 606692156 843523440 565258691 126063962 106007763 876069727 511815526 397723376 519381637 242077664 521663480 908495917 160051413 941042204 201484878 613177394 831273546 781073000 543881425 867542840 6327253 688958601 724507313 806653661 255888819 798727259 732553812 90154959 174222859 112613098 976711013 8488999 111532225 3204731 372382909 743602736 375865722 968064029 575707130 123061537 72260506 945245599 855292946 783114649 581111495 822746659 17135983 77304580 999889734 39113734 104806793 868503616 529950173 835236747 174823344 432311312 27944713 346081666 989321198 50282755 852170424 629390489 988480519 850729260 190435954 928311922 479149142 690039474 143838318 881353995 896366120 975630140 892643113 155247533 712017225 284712099 300444806 756933503 598165269 885317196 656292217 567660631 131228133 732673909 364456507 26743743 314736349 118978239 580511010 400125316 916302222 495362237 851449842 108409703 746725258 955573941 82708945 227906218 939601040 973228200 691360541 520582607 732433715 250004066 782754358 410573755 284832196 508452810 318939744 811097250 110571449 193678573 460053719 256489304 97480876 62412552 699166846 30466750 116816493 246401156 495122043 462455659 888559815 200644199 996647115 13533073 129426678 396402309 720544112 356289911 549886275 987759937 409252688 492720103 541959873 755011951 32148108 286993942 254567752 219499428 807013952 214695548 654610859 744563512 924228624 4285604 526227166 302246261 711897128 501126893 702169271 417779575 905853783 529589882 696044324 328067116 250604551 998208376 566699855 210372056 986078579 991843235 527668330 957855784 760536413 388716101 534633956 779151448 724147022 448764601 788398917 944885308 665059298 262734348 227666024 801849781 811577638 920745811 576307615 184190910 63853716 496923498 146960840 938039779 440237714 163294032 926510467 345481181 907535141 733514588 521062995 963140052 767141748 939120652 397843473 595643232 439156841 345361084 315697125 782273970 775908829 761256995 447203340 219739622 518420861 316777998 352446807 637436988 746965452 183110037 60491000 689318892 547244141 943564241 945125502 756933503 375505431 773026501 710576061 607532835 395681727 297442381 902611164 817462391 460894398 357490881 486595156 626508161 394720951 367579029 890361270 237273784 269459780 969985581 444441109 89794668 356289911 435914222 828751509 346081666 390277362 694963451 215896518 567060146 941282398 606692156 521783577 730151872 248322708 574386063 33589272 537996672 27104034 974669364 78985938 673345991 202445654 888439718 356049717 494401461 397002794 47640621 311854021 7167932 38993637 620503311 862138475 525746778 994485369 933716287 139755020 938520167 279908219 458252264 461254689 589638382 199683423 609454387 604050022 488276514 643922226 341758174 742641960 991122653 869224198 447803825 964461119 338035167 570422862 996406921 982235475 662176970 32868690 626508161 439397035 990642265 213974966 360613403 628309616 474705553 253486879 414897247 166776845 387755325 91355929 88833892 792482215 655691732 789719984 819984428 385233288 218178361 108649897 740240020 980434020 827430442 102404853 848327320 796445416 557692580 901410194 976831110 541119194 94478451 361934470 62892940 696524712 556611707 566699855 297562478 473024195 80547199 299964418 11251230 337194488 302366358 52804792 920865908 369860872 548084820 22180057 737117498 939120652 4045410 319900520 389196489 139394729 913299797 233911068 329508280 767141748 657132896 307290335 473384486 494281364 27944713 179867418 719823530 241717373 102404853 612216618 501847475 951850934 456330712 786357268 315216737 86912340 560094520 280508704 984637415 779391642 133149685 556491610 475306038 408772300 325424982 824187823 529709979 766781457 545082395 710576061 163294032 682833654 731713133 856974304 177465478 528989397 745884579 683434139 498604856 171580725 897687187 925189400 774827956 553609282 454889548 129306581 176504702 711897128 198362356 528869300 360012918 16295304 479989821 727870029 401686577 948248024 702049174 561535684 763779032 730392066 353527680 610174969 442759751 838959754 639358540 977311498 236313008 278467055 936238324 46199457 265976967 991122653 560574908 439397035 726188671 752850205 279908219 592520710 358691851 884716711 889520591 166656748 658333866 527788427 189835469 275344533 761617286 298883545 161732771 442039169 320140714 647765330 314736349 958216075 354488456 425345686 558413162 982235475 488036320 642481062 559013647 973108103 984397221 773867180 209411280 684394915 138313856 951130352 249043290 921826684 267298034 199443229 939601040 25782967 311613827 558653356 988720713 583393338 686796855 706612860 565138594 118738045 561775878 339356234 987159452 860457117 209050989 903211649 12692394 620383214 133029588 916782610 121500276 328427407 713578486 527548233 954613165 223943017 424865298 648485912 391238138 503889124 488516708 10530648 558773453 61091485 423784425 62172358 653650083 144678997 363255537 590599158 903812134 670343566 576788003 195119737 86792243 707573636 363135440 327466631 857694886 44277905 798727259 207009340 527067845 281949868 284471905 848327320 793442991 850128775 790320469 890961755 131228133 656772605 211693123 618101371 865140900 313054991 828991703 66135559 110091061 810736959 25182482 956534717 10170357 947887733 598165269 977191401 464977696 610655357 835356844 147201034 255288334 642481062 120539500 298162963 282069965 465698278 237033590 13773267 18216856 294800247 993044205 980674214 169659173 123902216 205327982 121500276 260212311 572224317 956654814 935277548 253126588 206288758 995806436 71419827 890601464 12572297 843163149 167737621 61932164 475306038 952691613 444321012 520942898 971787036 899368545 920865908 917623289 426426559 441198490 841241597 733034200 241116888 914020379 568861601 492840200 906814559 583633532 586635957 459573331 914500767 859376244 880873607 121740470 365417283 786237171 757173697 442879848 525986972 560094520 886277972 75262931 647645233 29746168 262854445 404809099 59530224 546283365 831033352 5006186 78265356 445041594 346321860 634434563 971546842 257089789 813018802 473384486 519741928 580390913 889160300 283391032 235712523 934076578 789359693 467860024 734115073 607172544 433272088 213854869 674667058 202325557 592040322 168938591 180227709 586035472 960137627 844123925 194639349 849167999 197641774 545322589 159450928 599726530 778671060 346201763 387755325 199443229 148762295 776509314 906934656 322782848 164975390 117897366 721865179 688358116 44998487 300564903 755132048 194999640 683554236 645483487 782394067 212413705 176264508 948007830 22780542 56527799 861658087 918343871 527908524 88713795 798246871 110691546 653409889 626388064 584834502 273543078 519501734 782994552 59770418 81147684 983196251 182989940 904652813 609094096 590238867 712377516 52684695 909336596 731713133 67576723 285672875 228746897 781673485 117777269 565859176 77784968 438916647 161492577 229587576 974909558 683434139 747806131 446602855 211693123 108049412 605371089 86071661 293479180 513857175 538356963 311493730 794523864 554690155 883515741 636716406 945365696 944404920 710576061 517460085 827910830 553969573 881954480 928311922 190556051 532712404 399885122 284952293 314015767 984997706 759815831 863579639 75383028 5606671 16415401 223943017 665299492 527067845 732914103 179987515 174342956 984757512 443240139 724147022 32748593 457651779 322182363 29025586 863699736 333231287 362775149 111772419 808335019 345481181 759095249 624346415 579069846 363255537 318219162 767622136 698085973 732433715 581231592 7768417 406970845 907174850 621223893 887358845 567900825 990522168 682113072 507732228 355209038 829472091 964461119 14013461 779511739 142757445 672024924 168338106 983196251 865501191 154887242 136632498 854332170 635155145 927591340 465097793 683914527 113934165 913539991 473864874 326265661 977671789 205808370 286873845 728470514 444921497 473024195 24221706 590358964 420661903 360733500 86071661 829832382 756092824 433392185 372382909 945725987 478548657 717901978 923508042 841241597 190195760 539437836 784675910 89674571 597444687 937079003 113934165 24702094 315697125 238594851 288915494 869584489 557332289 392078817 415858023 34910339 746965452 810977153 926990855 49081785 481070694 137833468 97120585 223822920 9209581 198002065 211332832 563096945 952211225 999289249 443720527 875949630 666140171 409733076 37192182 275584727 596724105 883035353 617741080 584714405 562976848 747325743 561415587 310292760 922787460 576307615 962179276 215416130 25782967 833555389 69618372 707573636 550967148 24101609 468220315 264175512 43437226 818903555 959657239 210011765 933235899 841241597 341638077 789719984 154526951 987039355 62172358 797286095 740600311 430870148 235472329 984397221 743482639 218898943 705411890 521783577 94718645 325304885 852290521 719102948 163173935 158249958 720544112 928672213 298162963 758855055 953772486 893483792 282550353 877150600 531031046 805572788 199203035 41635771 651368240 835356844 573785578 369020193 270540653 225864569 826950054 778911254 476507008 761016801 534874150 170980240 266697549 889880882 207489728 200884393 841481791 655211344 535234441 843763634 514577757 194759446 99282331 274984242 499685729 846045477 767862330 884236323 997007406 563217042 837038202 571023347 180467903 829111800 965181701 466538957 530070270 511094944 886878457 888319621 87753019 826349569 611496036 380189214 283631226 164495002 679230744 847726835 903932231 375505431 728710708 774948053 207489728 843283246 197041289 364216313 837038202 260092214 190315857 325905370 782874455 289876270 958095978 434593155 905973880 372863297 481551082 839680336 433992670 704210920 377426983 477107493 898768060 63133134 82348654 227065539 176504702 488636805 23140833 901170000 232590001 300444806 450445959 215896518 243999216 236313008 692201220 307650626 486234865 976711013 160411704 117897366 425946171 70579148 613297491 50763143 407691427 80186908 825869181 376226013 97240682 232469904 115615523 518661055 366498156 330829347 869944780 139274632 924468818 801369393 497884274 113453777 395681727 698085973 164975390 986318773 823467241 510494459 611856327 637797279 561775878 58809642 144198609 320861296 136152110 252165812 587476636 446122467 594202068 543521134 617981274 981514893 381149990 343199338 789359693 340317010 923748236 349564479 909096402 623745930 694362966 905853783 582792853 423664328 550006372 704331017 619662632 738678759 944525017 494161267 378507856 772065725 437475483 318579453 283150838 924709012 867182549 437835774 94118160 959417045 305128589 382230863 48000912 899969030 892162725 52084210 613777879 330108765 994004981 360373209 167017039 859015953 859616438 510734653 46439651 85230982 114174359 751048750 295881120 759455540 509533683 997247600 535354538 945365696 41395577 996286824 756453115 700487913 823106950 839800433 981875184 259371632 475185941 371422133 557332289 700007525 762818256 72620797 803651236 478188366 204847594 51003337 578229167 745043900 892042628 694483063 862738960 566579758 598165269 228506703 964461119 156208309 861057602 370821648 128345805 140475602 816381518 827430442 816141324 360493306 259371632 541839776 252886394 527548233 181548776 168458203 474345262 974429170 232109613 215896518 791401342 404448808 768222621 652449113 742882154 654851053 284231711 671184245 938520167 593121195 397242988 595763329 557932774 601527985 986318773 479989821 604530410 404689002 728710708 11371327 426306462 286753748 495122043 458012070 400845898 619062147 496443110 635755630 288315009 683193945 891201949 2964537 883996129 72260506 988360422 378868147 2964537 460894398 875229048 136752595 721624985 590238867 466538957 966142477 224783696 550486760 971787036 923628139 741681184 241597276 802570363 953652389 274623951 629990974 673466088 668301917 282550353 735195946 566459661 404328711 724867604 742161572 28425101 605371089 73221282 276905794 704331017 392799399 739999826 75503125 564057721 463536532 159571025 940681913 778190672 840160724 820224622 133029588 446963146 614018073 803771333 24341803 212533802 324824497 232590001 151164235 570903250 773146598 401206189 952931807 964220925 443120042 753931078 495242140 936118227 389917071 511815526 84750594 405169390 206889243 595282941 275344533 451767026 907895432 228386606 751649235 8368902 784435716 176504702 987639840 478908948 396642503 599486336 363255537 42596547 662297067 573064996 212653899 976470819 130747745 794523864 195960416 23981512 585194793 30106459 542440261 380189214 228866994 324704400 437115192 917623289 535834926 985718288 561775878 821305495 346682151 174703247 828631412 117296881 367939320 722705858 945005405 264415706 200884393 822626562 733634685 967823835 209291183 627108646 35991212 604530410 841601888 979112953 526707554 193918767 281469480 681992975 170259658 515898824 771104949 788398917 65174783 667341141 854212073 246641350 931794735 311133439 747565937 321942169 687877728 24942288 439997520 632392914 502447960 826950054 748166422 802330169 592400613 329508280 458132167 282190062 777950478 239675724 241116888 857574789 473024195 912939506 558413162 476146717 54486150 772786307 590839352 633353690 471703128 228386606 241597276 137713371 955573941 969865484 161852868 66856141 821785883 286633651 750808556 204607400 707693733 948248024 419581030 73821767 452127317 363735925 858415468 628549810 788999402 553849476 969264999 4886089 841842082 172661598 484553507 621223893 564898400 810857056 698806555 863699736 367098641 400245413 640679607 515658630 191997215 608373514 787438141 473984971 573425287 924108527 809656086 117897366 210372056 316777998 346081666 991723138 705892278 270180362 683314042 645123196 599005948 200163811 585555084 252886394 815781033 194999640 340917495 586996248 899848933 513376787 6327253 986198676 672865603 969144902 792602312 491759327 441318587 331670026 330469056 257209886 592760904 70459051 341277786 21219281 413456083 195359931 522263965 602368664 344880696 527067845 563697430 998088279 764139323 676948901 981634990 963620440 309572178 437475483 559614132 179987515 314976543 78145259 641880577 939480943 25422676 715860329 234391456 352927195 219739622 498965147 196080513 886277972 803290945 963019955 966262574 548325014 833555389 201244684 442159266 713458389 925309497 141556475 243759022 775188247 440718102 602608858 127385029 763298644 204247109 801009102 770624561 296601702 986438870 173862568 129786969 199323132 592400613 77664871 314015767 512055720 2123858 208810795 862378669 856974304 847246447 392799399 997367697 429669178 522744353 560334714 477227590 735556237 487916223 980554117 825989278 724747507 35510824 398924346 583993823 624946900 38032861 936238324 274263660 937919682 316657901 449845474 195239834 237513978 830192673 370341260 745163997 206048564 267057840 734355267 629510586 205327982 459213040 842562664 120659597 211693123 324944594 583033047 236793396 760296219 913179700 781793582 605250992 708774606 988840810 709375091 523104644 415377635 66615947 676708707 944885308 120779694 664699007 134470752 645243293 220700398 730632260 756212921 60130709 417539381 553609282 280508704 938640264 228987091 780952903 55567023 961939082 697845779 980794311 795004252 772185822 961218500 696524712 384632803 611736230 614978849 556611707 550847051 920145326 50763143 174943441 610895551 740600311 900929806 651368240 379708826 203526527 205928467 884836808 339836622 64454201 38513249 374064267 678870453 942723562 525746778 479389336 970586066 908976305 927351146 502928348 437475483 844844507 727149447 975389946 188514402 658213769 634794854 670583760 91115735 386073967 919064453 53765568 959897433 583153144 828151024 869704586 332870996 839079851 234631650 775668635 622184669 282910644 769663785 540518709 782634261 777830381 333231287 993884884 881233898 325665176 783354843 622184669 271741623 237874269 748166422 711536837 659654933 508452810 301645776 651128046 789840081 227906218 451646929 947647539 262494154 681032199 24461900 61211582 679110647 22420251 294800247 338515555 139514826 377667177 100002913 436754901 796805707 885197099 461374786 667341141 667581335 24822191 326385758 570903250 415497732 536795702 844604313 463776726 989321198 360012918 551207342 460293913 859376244 649566785 874748660 826229472 409492882 757293794 680431714 3444925 167857718 896966605 682233169 981755087 931674638 704571211 686436564 777470090 938760361 567180243 753810981 372743200 577628682 634434563 630951750 547964723 212053414 136272207 913059603 776749508 45839166 64574298 121500276 744203221 553248991 170499852 868743810 996887309 760536413 127144835 483232440 452847899 375625528 842562664 864660512 259131438 155367630 594442262 857214498 237513978 556851901 741801281 413696277 55206732 349564479 364336410 627108646 816982003 884836808 289756173 59290030 865020803 336834197 26503549 44398002 860096826 992563817 681872878 782033776 472663904 859496341 865621288 75022737 81988363 995926533 446002370 951010255 734595461 722585761 792362118 826709860 364096216 53645471 165095487 426186365 937679488 648005524 457771876 222982241 499325438 263815221 552048021 523705129 601527985 288194912 522143868 902851358 909696887 29986362 460654204 357851172 228746897 317858871 49201882 864420318 38152958 254928043 235352232 50282755 388956295 43317129 602368664 686556661 129186484 66015462 706612860 625307191 909696887 164735196 237393881 110931740 698566361 450806250 23260930 61451776 127625223 544361813 343679726 107809218 590479061 673466088 936718712 956054329 747325743 941642689 962059179 80787393 490077969 722946052 426786850 809295795 109730770 403367935 460293913 203406430 734355267 564898400 928792310 215416130 315456931 740840505 72740894 297922769 875469242 662297067 793803282 777950478 187673723 734835655 899488642 562136169 146480452 960017530 965421895 528268815 126544350 628790004 217097488 40554898 134350655 247842320 743362542 650287367 735195946 49081785 696044324 50643046 9810066 850969454 396402309 840641112 367218738 948608315 609094096 981634990 854812558 248562902 666620559 850489066 582672756 639358540 41875965 900809709 905493492 357370784 661816679 783354843 936598615 147321131 538957448 219139137 267057840 725468089 797526289 335393033 86552049 339476331 794643961 463176241 423784425 580270816 223462629 330589153 400605704 717781881 43677420 328547504 471703128 808455116 265376482 516499309 995806436 241837470 851690036 82708945 974549267 62172358 659654933 393039593 877390794 207609825 315817222 429428984 682953751 667221044 520582607 641880577 865020803 456210615 365657477 790080275 935157451 6207156 760416316 923988430 501607281 854332170 399404734 866702161 509053295 311013342 413936471 337674876 327706825 163534226 206168661 729671484 476386911 705171696 852530715 12091909 901530291 843283246 44398002 55807217 757533988 544722104 184190910 774107374 584834502 160531801 408412009 329748474 256969692 947647539 885677487 250364357 340196913 771465240 416458508 118017463 35270630 536075120 413456083 20498699 907174850 865140900 868263422 523825226 559734229 593121195 837518590 83909915 881113801 688718407 350164964 156928891 141436378 342718950 46920039 160771995 608973999 413936471 365657477 853611588 591680031 817102100 11131133 562736654 943684338 977311498 352086516 68657596 732914103 496323013 17496274 819984428 563337139 883996129 113934165 966983156 234991941 742281669 723906828 94118160 843283246 144678997 926750661 717661784 26023161 558893550 51123434 248202611 575106645 996406921 635515436 990762362 776509314 215536227 391478332 480470209 906334171 186953141 886998554 314015767 599606433 243879119 63253231 751649235 196080513 910897857 949689188 326265661 536435411 213854869 18336953 232229710 681272393 253366782 271981817 75743319 367098641 876189824 19898214 751409041 329268086 57848866 496563207 46799942 718742657 796085125 53645471 869704586 438196065 649086397 760056025 259972117 883035353 464977696 154046563 260452505 528148718 340196913 139514826 371422133 171460628 486475059 656892702 580871301 80307005 926990855 799688035 416578605 402166965 855893431 258651050 106127860 920025229 297442381 251685424 57608672 713818680 564177818 110331255 53765568 938039779 235472329 845324895 970586066 644162420 460293913 637196794 740240020 664939201 719102948 885797584 773747083 278467055 954613165 749727683 990281974 949809285 23741318 548325014 155848018 58689545 805692885 615459237 57968963 295280635 476867299 556251416 288675300 970345872 218418555 484793701 579189943 935517742 330949444 442519557 337194488 639238443 165816069 602008373 369020193 408652203 121500276 101083786 621704281 155607824 794163573 764619711 814459966 744683609 965662089 978872759 872106526 13292879 68297305 995566242 355449232 501246990 488756902 234031165 86191758 702889853 334552354 34069660 811577638 608013223 158129861 838719560 537756478 887719136 507612131 458732652 525626681 751529138 207609825 286753748 20258505 946686763 470382061 623265542 62772843 154526951 588077121 611015648 353047292 90755444 984877609 742882154 329027892 383431833 573665481 747085549 136392304 158850443 160171510 32268205 728710708 520702704 58689545 703610435 830793158 351966419 978032080 83429527 949809285 125223283 760536413 668782305 809535989 317858871 356289911 579189943 595643232 443360236 271981817 666620559 326025467 386073967 111171934 374064267 200404005 427507432 448044019 314496155 914620864 984637415 84750594 176144411 106007763 253847170 989561392 406490457 561775878 999769637 460053719 583513435 423183940 473384486 393519981 373463782 273663175 237994366 714299068 388956295 86792243 43197032 455970421 9329678 955814135 255408431 201965266 74302155 370461357 866101676 992443720 529709979 205808370 464617405 686196370 296841896 48241106 912939506 435433834 259852020 385353385 233911068 704451114 22300154 756693309 844724410 861417893 481430985 352687001 357731075 498724953 118497851 910657663 458252264 483832925 992563817 837518590 17976662 641400189 581351689 514217466 258891244 765940778 811577638 321581878 822026077 973708588 663257843 727509738 59770418 876189824 174342956 369260387 356289911 273062690 671064148 218538652 147080937 83789818 721024500 360253112 813859481 484913798 953292098 829472091 932395220 138193759 531271240 520822801 490077969 811457541 889520591 706372666 233430680 109490576 103725920 261173087 545802977 399164540 349804673 848567514 301885970 676588610 913179700 415377635 545082395 712737807 422703552 811097250 343199338 177105187 975870334 764739808 630591459 744203221 87632922 357130590 564658206 574386063 573305190 649446688 680912102 199323132 26263355 814580063 616420013 29265780 843283246 803531139 270060265 793202797 213014190 738678759 189234984 551927924 593721680 290356658 41275480 900089127 671544536 960257724 271861720 116936590 389917071 959897433 250124163 378387759 246281059 921466393 162213159 533553083 949328897 527548233 890601464 352566904 269219586 209771571 447803825 645123196 770504464 291557628 867302646 220099913 891562240 498604856 107929315 957255299 614618558 163414129 285432681 641159995 600327015 895045053 26383452 707453539 403728226 353527680 574025772 798487065 323143139 288435106 232710098 794643961 652569210 77424677 247842320 48241106 863339445 907895432 121019888 948848509 697125197 892282822 748766907 216376906 164014614 194038864 684875303 462455659 375865722 415617829 297682575 561775878 233430680 582072271 457891973 295400732 91115735 182629649 924468818 894324471 5006186 478428560 960377821 403848323 722585761 714539262 170019464 402887547 200163811 552408312 163053838 973708588 171580725 535354538 5366477 242437955 733634685 96880391 528268815 115975814 751048750 814820257 786117074 739159147 15214431 176144411 94118160 820464816 785276395 845925380 773626986 904052328 49201882 137353080 718982851 342358659 774587762 138794244 824187823 699767331 451526832 133750170 119218433 521783577 294560053 606692156 23621221 936238324 977911983 89314280 311613827 366137865 930833959 57368478 996406921 757293794 841121500 306329559 800408617 140595699 946686763 623625833 516018921 197041289 308851596 327106340 451767026 219619525 221300883 971426745 915941931 850368969 89794668 60130709 582912950 81628072 77905065 832594613 55086635 562616557 834996553 806413467 445161691 408772300 396282212 124022313 297682575 839680336 593001098 764739808 668662208 409612979 346441957 227906218 953172001 485634380 818182973 886277972 905493492 718502463 935757936 385953870 672985700 653529986 336353809 607652932 949929382 550366663 41395577 61091485 649206494 533432986 394120466 729551387 79946714 72020312 386554355 454769451 39594122 851449842 727269544 886638263 463416435 159571025 435313737 362054567 82348654 941762786 395801824 232349807 442159266 657012799 442500 935277548 699166846 814580063 412375210 604410313 637797279 865020803 804251721 105527375 393880272 419701127 675387640 82209 281589577 760536413 316777998 289395882 162933741 158009764 732673909 646804554 353287486 695083548 599966724 229347382 954733262 85951564 38753443 498484759 167377330 250724648 441919072 347402733 119698821 658814254 555050446 122941440 709855479 200764296 50282755 795724834 592760904 322062266 52684695 696044324 985958482 107208733 960257724 927711437 560214617 423063843 243518828 364576604 258651050 318819647 372503006 509413586 427147141 249283484 951370546 348123315 532352113 94598548 166776845 87392728 414416859 309091790 576667906 453808675 652088822 292398307 542920649 538957448 249883969 684154721 500526408 16655595 702769756 171220434 545202492 280028316 307290335 513136593 63853716 900809709 251565327 768462815 232229710 381990669 517820376 937559391 303567328 257329983 382230863 338995943 201364781 959657239 561055296 973948782 6927738 293118889 470382061 89434377 703610435 383912221 845925380 348243412 212293608 252886394 363856022 848327320 429789275 692321317 328667601 903932231 519021346 49081785 900929806 378748050 478308463 745884579 944044629 451286638 295040441 322182363 870545265 743722833 85831467 967583641 596604008 65895365 869584489 647284942 914740961 332030317 227185636 5126283 587596733 750928653 276905794 958336172 581471786 922186975 588557509 832714710 159571025 983316348 388235713 10290454 761857480 910657663 993044205 271621526 969385096 298883545 344760599 447443534 731833230 313054991 678029774 619662632 677669483 858295371 235232135 278467055 80667296 856854207 217938167 691961026 464257114 144919191 251205036 38273055 894684762 812778608 484073119 317738774 464257114 395561630 596964299 892883307 275224436 708894703 186712947 548925499 963500343 657853478 882434868 514457660 397122891 204967691 159691122 409853173 985117803 117176784 845084701 522864450 261413281 785996977 592640807 442399460 575587033 402527256 201364781 686916952 776509314 297082090 530070270 125943865 128585999 160892092 543160843 22900639 728350417 988000131 808094825 629270392 972387521 649446688 789960178 578589458 739039050 89314280 921946781 285552778 743602736 722105373 374064267 482872149 371181939 352687001 720063724 140715796 611135745 415497732 531511434 226585151 494521558 969985581 536555508 357130590 259251535 533312889 441318587 173742471 452247414 508212616 899008254 32988787 456210615 897206799 731953327 872586914 848927805 161612674 247482029 467379636 53765568 337074391 781193097 774347568 873547690 870665362 38393152 538957448 733634685 25422676 931914832 434352961 214095063 728710708 771225046 279307734 705652084 732313618 142637348 567420437 298523254 949088703 5726768 150924041 692201220 289876270 595403038 9449775 858655662 340076816 999529443 47280330 252526103 164014614 306329559 87152534 761857480 806533564 930593765 869464392 495122043 249283484 573185093 467139442 770384367 71179633 550847051 109370479 548685305 110691546 144438803 140715796 829832382 801489490 339836622 980193826 980914408 965782186 890721561 263575027 42116159 235472329 814219772 332750899 389316586 908375820 671904827 709615285 382110766 96880391 318219162 510974847 795484640 73341379 904652813 271021041 861177699 129666872 83189333 315697125 328907795 514337563 535474635 286273360 976470819 323863721 593121195 933115802 38633346 147080937 111532225 928071728 137353080 276785697 469060994 368179514 422943746 876550115 522384062 30947138 652809404 802089975 792001827 271021041 115855717 523224741 682953751 493800976 410934046 499805826 452847899 301405582 474225165 460293913 629510586 206288758 240876694 253486879 990882459 492840200 626267967 876189824 127985514 416218314 879192249 580991398 857214498 864660512 567900825 673466088 562597 739759632 203766721 545923074 887719136 457291488 529469785 365897671 304047716 871265847 679110647 420782000 81628072 325665176 86912340 691000250 539798127 859015953 686316467 362655052 771345143 625547385 231629225 627348840 447683728 531031046 373944170 599606433 105887666 194279058 212293608 870545265 684274818 116336105 875829533 37312279 831513740 76583998 460894398 375265237 120059112 591199643 266697549 446722952 963740537 698806555 486835350 207249534 915341446 827310345 588077121 684875303 30947138 341758174 551567633 79706520 366257962 502808251 909456693 925909982 144799094 532832501 478548657 886638263 277866570 541119194 912939506 272942593 991603041 704571211 105407278 353167389 775668635 456210615 579790428 982355572 491519133 195119737 91355929 612096521 525626681 767862330 803771333 87753019 594802553 211212735 600687306 743963027 294079665 491519133 35751018 926630564 687157146 544361813 540518709 73821767 494761752 455490033 743362542 31067235 476507008 205688273 304528104 176864993 230908643 761016801 786717559 759695734 221901368 519021346 546043171 59290030 283991517 359772724 825749084 246040865 565859176 372262812 327586728 339596428 56527799 753210496 978632565 543160843 320260811 971787036 197401580 714178971 173382180 633353690 716340717 195600125 639718831 397122891 807013952 322662751 623025348 682353266 147080937 16055110 15814916 32268205 141556475 272222011 407571330 134710946 249523678 197401580 282790547 887839233 903211649 495842625 608853902 800648811 881474092 588437412 739759632 533913374 424264813 37072085 76103610 266457355 99642622 492119618 238354657 550847051 991122653 719823530 737237595 130027163 155367630 456570906 227906218 316898095 261533378 69378178 856974304 784796007 491519133 464977696 126664447 858295371 524665905 463536532 40194607 650407464 628189519 227666024 762337868 739399341 283751323 888800009 884476517 828391218 151044138 226344957 634074272 638758055 470382061 209411280 372983394 26623646 410573755 170259658 956054329 871265847 366498156 924468818 136272207 92436802 607773029 114054262 114654747 569582183 430990245 530430561 707573636 127505126 473864874 911858633 320981393 174583150 172061113 299363933 786237171 28064810 732073424 160051413 684515012 753931078 483712828 43076935 914620864 16055110 726789156 239315433 142877542 187073238 146720646 511815526 129306581 747926228 118978239 765940778 776509314 355449232 932755511 747926228 574626257 875108951 720063724 691840929 936238324 700728107 569101795 185031589 1163082 380669602 908495917 552408312 446843049 519141443 600206918 897086702 379348535 383311736 339596428 10170357 770264270 308851596 336353809 489357387 426306462 710455964 317618677 339956719 176624799 661576485 73701670 12692394 278226861 665539686 390757750 302246261 446362661 905733686 789840081 85591273 985838385 887719136 19778117 585555084 683314042 278226861 43197032 153926466 69258081 815420742 65054686 983676639 876309921 625787579 521783577 115855717 34550048 720784306 670463663 989561392 631552235 534633956 775428441 782514164 964941507 496443110 94838742 981514893 485394186 47280330 519982122 538717254 28785392 974789461 473624680 117897366 176144411 490318163 228266509 766180972 68777693 918103677 946806860 921946781 886398069 168458203 847846932 754891854 485394186 799567938 449725377 689198795 641640383 856013528 403728226 396402309 827790733 466418860 683434139 431230439 960497918 550606857 72140409 695203645 405289487 819624137 784315619 303447231 495482334 152845593 491399036 69378178 991242750 929032504 703490338 488516708 947047054 961218500 134110461 732914103 636476212 382831348 207729922 726308768 354728650 916182125 451887123 80186908 773146598 134710946 705652084 213734772 770864755 825749084 107809218 664218619 878831958 799087550 505090094 119698821 553849476 855172849 608853902 773506889 329508280 176624799 706132472 118257657 683314042 397723376 880873607 498004371 254928043 566219467 926390370 500046020 89674571 300564903 763058450 547003947 603089246 275584727 89434377 812658511 29746168 378988244 974549267 43797517 808094825 567300340 635875727 365417283 194519252 485274089 626628258 79586423 131948715 770384367 836798008 317738774 812898705 797286095 474465359 260212311 565498885 748766907 570422862 71179633 580150719 992683914 96520100 135911916 612937200 335393033 653770180 896246023 959897433 677909677 436754901 881834383 234031165 735436140 462815950 341037592 66495850 857214498 456450809 7047835 9089484 176985090 64694395 452487608 10650745 960137627 729431290 203766721 309331984 657493187 457171391 215175936 529830076 421862873 83429527 91235832 930233474 951730837 521423286 803891430 909576790 624826803 667461238 198122162 729671484 723906828 664578910 808214922 734355267 347162539 580511010 788759208 170379755 937199100 815781033 127865417 828991703 771225046 697245294 980794311 410093367 805212497 37912764 268258810 67576723 927951631 915701737 256849595 856373819 901890582 828751509 641159995 978152177 691480638 795844931 739879729 304528104 117056687 11251230 172301307 285792972 81267781 566099370 124862992 994965757 965902283 430750051 507492034 947887733 400605704 295280635 546283365 410453658 241477179 682713557 27464325 980193826 932275123 988840810 773867180 873667787 900569515 137833468 495722528 365177089 698206070 487435835 459333137 168338106 965541992 840160724 222862144 818903555 381870572 11011036 698686458 948728412 640199219 628549810 998808861 318339259 60370903 722345567 311854021 519381637 350164964 576307615 598765754 631432138 439156841 45719069 742041475 524545808 282190062 333231287 763899129 711296643 445161691 39233831 626147870 72860991 20979087 266937743 840881306 411054143 220820495 839560239 431230439 374784849 711897128 329027892 17256080 279307734 379708826 828631412 15574722 945605890 130747745 742281669 979593341 385233288 829832382 731112648 829592188 15454625 131828618 330829347 223943017 473144292 17976662 847366544 830192673 369740775 359532530 249043290 78145259 53645471 972507618 699046749 137473177 276185212 80907490 399644928 43797517 185031589 220220010 840400918 895765635 720424015 902010679 720784306 723306343 55086635 613177394 324103915 755852630 353887971 995205951 114534650 909336596 490438260 838359269 369740775 659775030 519501734 294560053 241236985 745644385 803411042 989681489 951250449 331670026 544361813 330949444 921346296 207369631 563817527 188154111 528509009 290356658 892763210 551567633 144198609 988720713 177825769 744203221 953532292 817702585 322403 86311855 571263541 80307005 732313618 647044748 834876456 548084820 843523440 121980664 30106459 858175274 291917919 400725801 545442686 824187823 343319435 931314347 376586304 293959568 830793158 659654933 383071542 259371632 842682761 611856327 444321012 823707435 932515317 351005643 504969997 130147260 422343261 891922531 123421828 780712709 432191215 504249415 305969268 85951564 262614251 637316891 93517675 849288096 657012799 839320045 880273122 381510281 992443720 462455659 29505974 171100337 253606976 288915494 734715558 972747812 598885851 362655052 824428017 643201644 39474025 644042323 731232745 496202916 324824497 776749508 346802248 429308887 86792243 677309192 588917800 256969692 57488575 470261964 369980969 544962298 15334528 119939015 312454506 574506160 685956176 39353928 887599039 416818799 843883731 631552235 615699431 789599887 193918767 664218619 553729379 130387454 702289368 100603398 374424558 154166660 927351146 997968182 815180548 676948901 825508890 816621712 237153687 995686339 38273055 660375515 264175512 983196251 393039593 401566480 502928348 627348840 815180548 183110037 773386792 202325557 426426559 274023466 987639840 416218314 989681489 818423167 582312465 117296881 720784306 29986362 298042866 305608977 29025586 422343261 928432019 277866570 910777760 177105187 232590001 960978306 769303494 241717373 795484640 53165083 574025772 518060570 617861177 367699126 541479485 222141562 60731194 416338411 573665481 252766297 982235475 203886818 405529681 630111071 661696582 432791700 133990364 206528952 793683185 918463968 698326167 303687425 182149261 366257962 703610435 456090518 177945866 583393338 786117074 341998368 384272512 851449842 122701246 347522830 472063419 162573450 369740775 953652389 515298339 383311736 911978730 201364781 622064572 830312770 509413586 560094520 400485607 459213040 567060146 491399036 692561511 335032742 136752595 696404615 854932655 466298763 918824259 768703009 541839776 81147684 600327015 20498699 339236137 845565089 50763143 248082514 802791 791401342 237513978 100243107 919785035 977071304 93757869 374904946 821065301 617140595 856974304 442999945 736997401 36951988 537876575 236553202 519261540 233430680 508212616 723186246 602608858 448404310 522864450 783835231 576788003 730992551 159811219 944044629 943203950 996767212 247482029 338755749 332270511 201965266 726669059 944645114 588077121 58329254 179747321 577388488 661576485 682833654 433992670 233070389 501727378 971546842 976711013 492239715 197401580 508813101 177225284 942243174 637436988 774827956 427747626 925789885 519982122 697845779 377547080 376466207 234391456 792121924 38633346 81988363 359652627 686436564 864300221 254567752 119939015 945005405 578109070 380669602 599366239 991963332 614138170 757173697 56047411 892643113 389676877 982956057 160892092 12932588 198002065 423304037 850489066 826349569 228146412 312694700 373103491 461494883 734355267 193198185 794283670 594081971 153205884 549646081 700608010 729671484 635515436 33949563 238594851 698806555 139995214 548325014 951850934 750328168 630231168 685115497 281469480 847486641 223102338 717661784 677429289 48241106 296241411 87512825 239795821 50883240 88833892 231028740 624946900 765820681 52564598 66015462 149602974 973348297 67576723 945245599 363375634 733394491 952571516 22540348 494881849 224663599 466178666 151884817 933716287 312574603 106848442 31067235 94958839 918103677 265376482 988480519 162933741 452487608 100002913 773386792 670583760 704331017 301765873 527428136 419100642 122821343 910537566 628669907 318939744 82468751 611375939 187673723 884356420 553008797 344400308 611976424 95439227 501126893 33349078 637677182 649806979 631432138 244239410 331790123 613537685 940561816 74422252 816982003 112733195 337074391 493800976 845204798 711536837 877150600 338155264 584113920 480230015 333591578 103485726 474825650 575707130 974789461 446122467 447323437 466058569 579910525 420902097 243638925 230788546 814700160 98201458 319780423 746004676 73221282 805332594 150323556 208810795 304888395 949689188 898647963 882554965 191636924 774227471 699166846 332510705 252165812 590358964 975990431 982355572 814940354 162093062 220220010 458852749 201364781 841361694 838839657 505330288 864420318 151524526 13292879 881594189 866822258 584714405 968304223 926750661 248442805 321942169 963740537 19177632 780352418 418139866 36831891 874508466 656292217 928432019 115495426 207489728 238354657 503889124 689919377 613177394 761857480 700487913 293719374 216016615 621944475 984397221 131588424 886277972 584594308 489237290 770744658 809415892 161492577 586395763 112973389 994485369 97120585 438556356 27104034 559013647 188154111 552648506 249283484 392198914 855172849 929392795 273783272 643802129 257570177 194879543 199082938 103485726 67937014 138313856 444080818 501607281 308251111 48000912 918343871 108890091 988120228 300564903 97600973 359292336 687277243 748046325 999289249 295520829 5606671 995446145 493080394 515898824 396762600 791041051 889400494 891442143 943444144 461735077 809055601 876069727 813619287 396762600 741921378 107448927 101924465 897326896 786477365 289155688 620383214 216857294 260812796 175664023 847246447 454289063 175784120 893964180 853251297 829712285 402287062 895765635 74182058 619542535 879192249 419100642 715379941 514457660 231389031 63853716 649566785 95199033 325184788 747085549 736396916 916542416 200043714 905133201 965421895 279307734 769663785 414296762 532592307 530310464 125223283 365897671 444921497 279427831 184070813 247482029 526947748 235112038 733514588 94358354 162573450 880633413 836317620 975269849 155607824 978032080 808455116 368059417 538597157 862738960 332030317 552408312 761857480 264295609 647164845 779992127 629510586 861417893 919424744 982595766 449365086 356650202 440357811 956654814 940922107 415858023 625787579 848447417 465818375 811457541 873787884 214335257 13292879 851089551 717061299 889040203 353167389 936958906 528509009 903451843 452487608 583393338 338875846 701328592 896726411 412135016 54366053 229107188 650527561 946806860 472303613 880032928 255528528 723426440 961578791 78745744 846045477 706252569 327226437 131828618 447443534 659654933 938880458 655931926 249403581 558893550 933235899 673345991 359532530 945365696 401566480 900809709 298162963 667821529 666260268 179627224 899608739 538356963 912699312 80427102 145879967 223943017 814700160 442039169 985718288 745404191 301405582 873907981 273543078 465097793 325304885 511815526 888559815 582312465 200043714 453208190 258530953 901170000 878231473 352446807 798727259 405649778 647765330 849167999 632392914 343439532 215416130 369500581 375985819 898047478 14613946 205327982 16655595 600086821 800648811 807974728 202805945 797286095 267898519 754771757 347763024 248442805 759935928 985838385 82348654 686556661 730031775 95919615 102645047 222982241 458612555 906934656 824307920 652088822 186352656 996406921 51964113 268979392 781553388 389917071 911978730 80186908 740360117 449965571 915461543 462695853 609094096 882194674 177825769 381390184 564538109 517580182 401086092 331069541 819624137 56407702 186833044 811937929 535234441 495602431 356890396 285432681 28785392 848687611 452247414 351125740 6807641 390757750 627949325 616179819 402287062 466298763 378027468 445041594 844244022 847726835 684995400 934917257 984157027 24581997 993644690 3565022 435193640 351846322 306089365 112493001 46920039 216136712 727029350 170499852 257690274 311733924 954372971 401086092 289996367 492239715 436394610 335513130 501367087 307530529 897086702 15574722 79706520 26623646 439156841 403608129 778550963 698085973 983316348 732433715 916422319 262494154 246641350 794163573 583873726 93998063 318699550 590839352 887959330 13292879 469301188 962899858 358091366 818783458 85110885 404568905 86912340 900449418 288435106 431470633 162213159 587116345 228266509 673466088 477948172 569702280 611616133 574265966 898768060 286273360 272462205 365537380 213734772 700968301 601047597 381750475 626748355 607052447 142757445 165095487 940201525 841481791 505090094 916542416 498004371 134110461 41875965 37072085 547244141 11851715 509053295 977791886 870305071 967463544 64934589 139755020 779511739 399404734 268258810 880873607 225384181 712017225 259491729 439276938 242317858 742161572 653890277 575226742 817702585 551687730 477707978 628069422 831273546 622905251 321101490 324103915 115135135 758494764 784916104 915941931 241357082 517820376 111892516 46679845 74662446 280508704 961458694 860817408 931074153 664819104 289515979 71780118 361093791 422943746 77184483 899248448 289155688 817102100 565138594 826109375 53645471 977431595 706732957 336714100 6087059 238114463 717421590 771705434 877510891 527548233 479629530 395321436 504009221 684995400 879432443 23981512 441798975 669382790 598045172 253246685 997607891 838959754 136392304 171820919 729791581 498604856 841962179 640919801 386674452 970105678 98561749 131348230 149002489 686556661 445882273 780352418 522984547 171220434 127625223 697005100 441558781 743963027 977791886 7047835 143117736 748526713 653529986 858295371 730271969 384632803 872707011 734955752 448764601 698566361 636115921 362054567 594802553 366257962 924949206 17856565 45358778 412014919 934797160 575466936 704571211 823827532 142877542 684635109 42596547 506771452 756573212 898647963 742281669 606812253 538236866 707213345 21099184 497644080 681512587 302846746 761857480 907294947 793322894 254447655 595643232 66495850 886518166 18937438 793803282 836798008 495602431 196320707 10770842 126904641 444801400 87272631 633834078 402287062 59290030 467019345 681272393 886398069 702409465 824428017 374304461 896005829 972747812 528268815 179266933 754051175 518661055 204967691 465818375 700487913 405409584 571143444 102404853 943804435 856253722 920865908 450085668 342598853 928672213 251205036 168338106 97841167 700127622 393399884 627468937 829231897 343199338 684635109 787678335 597204493 433992670 88953989 933716287 542680455 985117803 502327863 488036320 599126045 536195217 227545927 156688697 224543502 291917919 871145750 552648506 450566056 360012918 50763143 966262574 398323861 390397459 169298882 248202611 270180362 778911254 52204307 766301069 979953632 244959992 829592188 898527866 679110647 555891125 69618372 124862992 288795397 591199643 941522592 167017039 468340412 432791700 281349383 213734772 123662022 379588729 628790004 718502463 291077240 5006186 828391218 731593036 955453844 742161572 207129437 87512825 292398307 806653661 360613403 135431528 973588491 640799704 802450266 940321622 564297915 820705010 815180548 135551625 827430442 703490338 378627953 250964842 597564784 46559748 274503854 663137746 559974423 994725563 786117074 135551625 412495307 350525255 173382180 776749508 293839471 122701246 749367392 945966181 414657053 159691122 457291488 760776607 533072695 568020922 558653356 299123739 31667720 257570177 331549929 894204374 653529986 209050989 823467241 371662327 363255537 976350722 586155569 98441652 47880815 603329440 580871301 776629411 46920039 223943017 628069422 89434377 256249110 880032928 67937014 954613165 529229591 381390184 680071423 364456507 646564360 72140409 943324047 445161691 129907066 612817103 535474635 767862330 330228862 290236561 55567023 367098641 188274208 20858990 823467241 286513554 933956481 425585880 228146412 552888700 907415044 372743200 479629530 66856141 81027587 815180548 747686034 387515131 552168118 755732533 30466750 319420132 399044443 291557628 573785578 764379517 377667177 985117803 656532411 395561630 423664328 99042137 944044629 21579572 630591459 982715863 835837232 139514826 649806979 718022075 284952293 944404920 116696396 488516708 674787155 711656934 228146412 911498342 142156960 714419165 199803520 909096402 861898281 332870996 133750170 59650321 917983580 885317196 467139442 262614251 883275547 27224131 523464935 866582064 332150414 859256147 193198185 662897552 756333018 893003404 677309192 799207647 175183635 303327134 152485302 71539924 51844016 74782543 932875608 609214193 852410618 746244870 886518166 793202797 797286095 651128046 706732957 424384910 653890277 47040136 216617100 729911678 95679421 859136050 726428865 363976119 391358235 650767755 260692699 985237900 270780847 402046868 558052871 813859481 294199762 132068812 641280092 898287672 235592426 284111614 358571754 272702399 336473906 172301307 988600616 904772910 787678335 370461357 180828194 294560053 334912645 961698888 957975881 202205460 870905556 897326896 807494340 883755935 110691546 44277905 990041780 130027163 508452810 232710098 279067540 963740537 17736468 632873302 858895856 590238867 577028197 572464511 25662870 875229048 589157994 465458084 286513554 158730346 337915070 95199033 808335019 124142410 365897671 123541925 330108765 493560782 445762176 535474635 455369936 234511553 100123010 814820257 900689612 792121924 611375939 346201763 941882883 950169576 933596190 280989092 352086516 498965147 570783153 647765330 559614132 991482944 73101185 598165269 80066811 948728412 298523254 496563207 757053600 302966843 819504040 69137984 273783272 314135864 143478027 913059603 490198066 528869300 802791 615459237 814820257 875949630 274744048 416938896 252165812 936838809 91956414 622544960 425225589 762818256 433151991 378868147 354248262 417179090 504129318 4886089 266697549 417899672 239075239 391958720 119338530 676228319 645483487 568141019 483472634 904532716 630831653 53044986 564778303 425705977 194038864 641039898 144919191 728470514 387274937 141676572 675507737 682713557 192237409 801129199 884116226 59890515 582672756 280748898 448044019 988840810 890481367 885917681 199082938 164374905 438436259 731593036 529109494 93397578 456450809 537756478 258891244 41515674 265856870 101203883 483352537 58089060 909576790 727509738 749847780 320140714 446843049 761977577 979112953 132429103 768342718 776269120 112012613 291077240 438556356 502087669 24101609 497764177 614618558 72981088 836317620 539678030 614258267 608013223 307290335 9329678 616660207 48241106 233430680 302966843 594922650 402046868 408652203 325545079 742521863 390277362 850849357 950529867 594802553 39954413 623866027 691000250 399044443 484793701 896846508 674667058 93277481 41875965 800168423 522384062 944404920 333711675 614258267 881714286 467739927 797646386 389316586 364576604 961338597 889400494 360012918 299243836 675027349 321942169 158009764 906093977 504969997 693161996 318339259 935037354 639718831 56287605 842442567 287234136 455129742 218538652 93877966 491999521 925429594 300685000 143478027 957975881 47520524 629270392 974309073 964341022 314015767 182269358 129666872 339836622 986318773 398564055 56167508 282430256 35630921 934076578 772065725 442999945 654851053 255768722 764980002 228386606 43677420 45118584 539317739 352446807 897326896 750928653 734715558 863099251 158850443 785516589 337674876 326025467 596964299 648966300 992563817 276785697 925189400 55446926 488516708 666020074 178426254 203286333 409012494 922667363 29025586 392919496 148882392 15935013 128706096 831633837 760416316 87512825 425465783 708174121 978992856 624826803 770744658 890121076 14133558 759095249 334912645 893363695 668301917 770264270 545562783 535714829 165455778 853371394 596243717 659174545 191276633 202205460 792242021 388596004 213374481 603209343 221541077 685595885 750568362 759935928 227425830 34670145 150203459 358331560 477467784 589278091 903571940 896005829 112012613 491038745 307410432 185632074 365897671 376346110 878231473 712978001 837038202 515298339 528629106 952931807 597925075 707933927 215656324 20738893 270060265 960137627 554930349 676828804 589278091 160411704 350164964 274864145 638758055 971066454 262013766 679110647 317978968 324824497 334912645 288194912 265976967 763899129 770504464 697125197 240396306 163534226 57128284 294800247 92556899 526467360 935878033 735796431 100603398 5246380 526347263 939240749 292278210 292998792 401566480 141436378 675747931 634554660 801369393 914140476 742281669 579790428 945966181 954613165 885917681 678750356 888199524 490918648 603689731 874508466 190916342 766661360 360493306 20018311 235952717 105167084 217097488 372983394 607172544 682833654 376946595 757173697 469541382 435914222 131588424 369380484 441318587 935157451 715379941 35630921 925429594 445642079 595643232 470141867 593721680 457411585 888439718 389796974 787678335 542200067 884716711 169659173 405169390 853611588 823587338 649206494 895045053 366257962 73701670 680191520 198842744 371061842 5966962 332390608 822626562 272702399 745404191 267538228 966502768 896366120 977431595 13533073 673225894 890961755 852290521 698446264 864900706 36951988 533312889 220700398 39233831 21099184 302246261 589758479 971787036 776869605 330949444 401086092 211573026 350405158 266097064 887478942 615459237 883996129 205808370 614498461 357490881 170860143 751288944 679350841 244239410 913179700 513016496 328787698 139755020 585194793 919064453 353887971 92556899 469541382 438196065 480350112 199203035 869104101 205327982 509653780 827430442 436995095 753210496 538597157 835597038 551447536 801849781 223702823 260092214 289515979 608133320 982956057 281349383 961338597 692321317 956174426 867662937 619902826 735075849 22059960 299724224 539918224 138794244 172061113 230428255 541479485 483352537 470862449 366378059 375265237 831874031 106608248 556011222 84750594 71419827 151524526 219259234 612096521 749127198 432791700 113333680 394120466 268138713 416218314 834756359 877751085 657373090 760296219 117056687 42716644 576667906 176985090 485153992 541119194 558653356 528749203 708534412 999649540 46199457 306329559 980313923 85471176 682694 407211039 133870267 501487184 481911373 470021770 42356353 391718526 288435106 937439294 602728955 247842320 721504888 379708826 28785392 273302884 424865298 613657782 801849781 695443839 89554474 344640502 414296762 272462205 814459966 581111495 608733805 791161148 798727259 660375515 495242140 241837470 126063962 98321555 956414620 943324047 735436140 229107188 28184907 659054448 329508280 725468089 820104525 952451419 779992127 189955566 46559748 802450266 499805826 760296219 414416859 434112767 628910101 623265542 805092400 285672875 198602550 849888581 861658087 925189400 181788970 835116650 567900825 471703128 506891549 795364543 478188366 31907914 704571211 611375939 726909253 65174783 952211225 469181091 583993823 777229896 30586847 791521439 485634380 133990364 967583641 161132286 648365815 296121314 85230982 670223469 332270511 655451538 984277124 657493187 604890701 524786002 935157451 518540958 560094520 599126045 632032623 16775692 614618558 441438684 160291607 740480214 606692156 148642198 952811710 487555932 492840200 268378907 476987396 611015648 311013342 952091128 788278820 732794006 318819647 231989516 97841167 368299611 674787155 602728955 569822377 552528409 427267238 491519133 736276819 47160233 187433529 16415401 479749627 438316162 610655357 876430018 907174850 432911797 602969149 52804792 283511129 579430137 533072695 551567633 769063300 16775692 437835774 311253536 575587033 458132167 750808556 104086211 870184974 129666872 762457965 602728955 669743081 168938591 345120890 810016377 633473787 601167694 367819223 337434682 727870029 594081971 559974423 225864569 8729193 379468632 563457236 398083667 955453844 160051413 763538838 93277481 166416554 883755935 587957024 341397883 440117617 408652203 554089670 77784968 556731804 678750356 885197099 725468089 79346229 196801095 895285247 927591340 177105187 639598734 184070813 707813830 123421828 720303918 989561392 919544841 876069727 508452810 595282941 812538414 795844931 290716949 435674028 309932469 321581878 993284399 969505193 51123434 305008492 246761447 371181939 865741385 304408007 155367630 525386487 807494340 867662937 231629225 118377754 198482453 81507975 364456507 884716711 110091061 311013342 362655052 581832077 99402428 195359931 78625647 563817527 320621102 652929501 10890939 203526527 888800009 885197099 457891973 823347144 729671484 688358116 183830619 835116650 807854631 262374057 282310159 584234017 272942593 300805097 727629835 533192792 108529800 673946476 317378483 652208919 211813220 828871606 127625223 705051599 825028502 67576723 694242869 727629835 884116226 10170357 874508466 132309006 419701127 52204307 554329864 498364662 314496155 319900520 539197642 457771876 81988363 400485607 230308158 512295914 957015105 697965876 59770418 740360117 626748355 202685848 216737197 243398731 898888157 314255961 215175936 824307920 330589153 95679421 208210310 679831229 625787579 364456507 118017463 828631412 621343990 917623289 20018311 257810371 549405887 545442686 235832620 287954718 775188247 511455235 236313008 324103915 767862330 521783577 235712523 229707673 731953327 954613165 335873421 218898943 532111919 884836808 126063962 568981698 505810676 317618677 406130166 40194607 133389879 553969573 413335986 560815102 681152296 715019650 787798432 909096402 650407464 762217771 260452505 446122467 218778846 329988668 625307191 945966181 359052142 419821224 859976729 702409465 593601583 416218314 502568057 959897433 984157027 623025348 148882392 317858871 249283484 933716287 601047597 400365510 357731075 280148413 25903064 379828923 768462815 542560358 661336291 654851053 518300764 288915494 820224622 357130590 422943746 352687001 375745625 65054686 414416859 692201220 232109613 468460509 861297796 728950902 985958482 818543264 864060027 92076511 692441414 309572178 390757750 924468818 426786850 752129623 885197099 120179209 78985938 761617286 266337258 187433529 391358235 234751747 446122467 689318892 242678149 879672637 686916952 485874574 434473058 27704519 474825650 995205951 23260930 18457050 722946052 381390184 947287248 644162420 404929196 764139323 548204917 455369936 523104644 817342294 332270511 180467903 564177818 789719984 823707435 851930230 386194064 719343142 705772181 628910101 785036201 921706587 369140290 722825955 828030927 24822191 981274699 617981274 52804792 385593579 532832501 678390065 279788122 490798551 318939744 834155874 667941626 764980002 816741809 301405582 81988363 162813644 604530410 923628139 140835893 887358845 116216008 358451657 940321622 240756597 559013647 104446502 796205222 925069303 76944289 559734229 626147870 596724105 659534836 549766178 531511434 484433410 186352656 944645114 302846746 363375634 572584608 361213888 31787817 628429713 638758055 487435835 499685729 845805283 296961993 475065844 589758479 364696701 802330169 536555508 691360541 229587576 603449537 199563326 682113072 743362542 184671298 407691427 673946476 420181515 734595461 608733805 729551387 798487065 789119499 448404310 32508399 821905980 194879543 562856751 277866570 880633413 756933503 153325981 848207223 258771147 866702161 579310040 619542535 381149990 384152415 10770842 52804792 629150295 997848085 342238562 894804859 955573941 303687425 199803520 764619711 935637839 968424320 240396306 387995519 682113072 986198676 461014495 136032013 723906828 475185941 158490152 327826922 898647963 801009102 924829109 580150719 835236747 95199033 820945204 895885732 472663904 572824802 381870572 849167999 405769875 40314704 558172968 211092638 501607281 584474211 898647963 757894279 740119923 929512892 176624799 449244989 890481367 244839895 470862449 816021227 908255723 614378364 965421895 158730346 77424677 211212735 603449537 758134473 621944475 570542959 463056144 96039712 295761023 582552659 325545079 75262931 588437412 443240139 623385639 551327439 920265423 857334595 862979154 660495612 268739198 381390184 555410737 554209767 795724834 400845898 807494340 969264999 494761752 668181820 511094944 797766483 204487303 167857718 432311312 265496579 120419403 132549200 803170848 397483182 981514893 781193097 834756359 201124587 845925380 419100642 174222859 772185822 984397221 409372785 715500038 406610554 250004066 859015953 453088093 414176665 213134287 914380670 306089365 614138170 802089975 637677182 313295185 61812067 262374057 980313923 308371208 281829771 735916528 972267424 214455354 540038321 319179938 957135202 479989821 395441533 283511129 704691308 113573874 631792429 802791 621584184 290957143 947767636 887118651 769543688 794283670 772906404 191997215 147080937 666740656 931194250 758975152 879432443 515658630 424505007 922907557 952571516 179627224 613657782 683674333 668662208 484913798 854332170 512536108 226104763 432551506 970586066 389676877 431951021 292878695 565378788 706612860 30947138 360012918 140715796 623986124 112372904 792842506 406010069 102524950 816621712 240156112 27224131 434713252 771225046 357130590 852891006 191276633 218538652 424505007 281589577 38152958 701929077 761256995 944765211 848087126 560815102 829712285 70338954 223102338 415978120 697605585 942723562 725828380 530670755 83549624 581231592 74902640 531511434 964821410 128706096 369740775 823587338 297682575 373703976 791881730 602608858 276905794 562597 649206494 260692699 522864450 260932893 487195641 278226861 252646200 812778608 685595885 611015648 211933317 697365391 84990788 32508399 434833349 869824683 37672570 102524950 223943017 235832620 464857599 703730532 833675486 812658511 408772300 546763753 14133558 967343447 604530410 240516403 166176360 437115192 597564784 973348297 443120042 533673180 842802858 104566599 312694700 972747812 546283365 743842930 35751018 962419470 165455778 696284518 957255299 875829533 396282212 407691427 31667720 593361389 555170543 797646386 482631955 836317620 790080275 167017039 443240139 481791276 864420318 944765211 731472939 397242988 373824073 401446383 377426983 971546842 119939015 598165269 587476636 46439651 417539381 675147446 441558781 827790733 168578300 727990126 357250687 314736349 183950716 450205765 157409279 983436445 622785154 336233712 393399884 555530834 315817222 429188790 727149447 474465359 786957753 654250568 583993823 614978849 124022313 359772724 37072085 65294880 688117922 249643775 529589882 925549691 831513740 703370241 245200186 180828194 55446926 672265118 937559391 364216313 686316467 827310345 353167389 386073967 478188366 124382604 400485607 13893364 32028011 496202916 31427526 522023771 515418436 599486336 148882392 255288334 963019955 297802672 278467055 112853292 24101609 833315195 777470090 325665176 499685729 531391337 166056263 651608434 697605585 55446926 132188909 60491000 816141324 291317434 322782848 396402309 89914765 101684271 245680574 954372971 239195336 351365934 843283246 801849781 168097912 5966962 167017039 520822801 384872997 334071966 80787393 743963027 405889972 280868995 623505736 427507432 699407040 30346653 770144173 855292946 795844931 821305495 698326167 912819409 57728769 996527018 487195641 540758903 258651050 277266085 713578486 336954294 816381518 284111614 303327134 201124587 822386368 344880696 338155264 759455540 976110528 409372785 644883002 804852206 562376363 76103610 951730837 669743081 4765992 363976119 920625714 189234984 19778117 884476517 548685305 34429951 840641112 613177394 242798246 921346296 69017887 737477789 943324047 831753934 760296219 12091909 855893431 385473482 246401156 728230320 799087550 398804249 865621288 96159809 19057535 597564784 184311007 480350112 440718102 292878695 997127503 812178123 540999097 676108222 222501853 716701008 597684881 761497189 487916223 926510467 97240682 865981579 479269239 867662937 225384181 843283246 256729498 536915799 595042747 598165269 950770061 811577638 144799094 294800247 184190910 873067302 959056754 228146412 448644504 315937319 149843168 487315738 267418131 568141019 749727683 205568176 341517980 110211158 713218195 148161810 479629530 90395153 730512163 352086516 735195946 685715982 42716644 749727683 671184245 141076087 135191334 139394729 391238138 688238019 912459118 665539686 713218195 494041170 40554898 125583574 875229048 721144597 413936471 97961264 489957872 694963451 182869843 81628072 283751323 556491610 367458932 295761023 953532292 160651898 362414858 85351079 489957872 354248262 277626376 347642927 462095368 758374667 582912950 529109494 452367511 809535989 510254265 349924770 926630564 192477603 564057721 759335443 132188909 982835960 982115378 21339378 95439227 560454811 968904708 344400308 247842320 563217042 624226318 569101795 568861601 6207156 680551811 453688578 687517437 222862144 196680998 448884698 349444382 542079970 561055296 779271545 123421828 207489728 754051175 642961450 9810066 249763872 318099065 334552354 204487303 295160538 882675062 992804011 138794244 329988668 328667601 915221349 422943746 363976119 709134897 701208495 770864755 768102524 894564665 205327982 714058874 974669364 690279668 156688697 510134168 465938472 863219348 434352961 172421404 955573941 105407278 807134049 234391456 492720103 163894517 701088398 366738350 412495307 358571754 141796669 25542773 455369936 998568667 829592188 6687544 743002251 169178785 670944051 436514707 139154535 306569753 998688764 443360236 982115378 117056687 171580725 412375210 446482758 450085668 104086211 68297305 834516165 381149990 354368359 396762600 250124163 198242259 906214074 884236323 977671789 298643351 316898095 387875422 75623222 134590849 638277667 527187942 249883969 76824192 592520710 649927076 75983513 909576790 772906404 802810557 147080937 750087974 811097250 7288029 720664209 340797398 747926228 760776607 233190486 108649897 435794125 583873726 455490033 651608434 275104339 660375515 552408312 449845474 523464935 109130285 679350841 198242259 374184364 622304766 873787884 67456626 514097369 1883664 238114463 186953141 755132048 916662513 593601583 343439532 742161572 640439413 8849290 268499004 973948782 773506889 540758903 653890277 365777574 553008797 60250806 988240325 360133015 900329321 351726225 594922650 122461052 440117617 160771995 642721256 66255656 341878271 479749627 925909982 29265780 758134473 337314585 7648320 985117803 182389455 93637772 613177394 375625528 878231473 413696277 526107069 74662446 834756359 252406006 912339021 15334528 55807217 914620864 210972541 904893007 992563817 97841167 667341141 752970302 936358421 416458508 976831110 687157146 581952174 543761328 788999402 506050870 104326405 388355810 479149142 10050260 561055296 447803825 841721985 673586185 617741080 547244141 510614556 359532530 496202916 324224012 478788851 235952717 869824683 839560239 784195522 806773758 344040017 102284756 81868266 35390727 644522711 475185941 30586847 147921616 573905675 456330712 385473482 794403767 715860329 420661903 730031775 170019464 379108341 292518404 165095487 912339021 556491610 366137865 522504159 563577333 873547690 952211225 722825955 880032928 408652203 719703433 366498156 27464325 320621102 788038626 39233831 204127012 716340717 445401885 480230015 387995519 320621102 28545198 891201949 579069846 169058688 86672146 528989397 977431595 330108765 762217771 579430137 320861296 277025891 839800433 165335681 876430018 65655171 429909372 765940778 906093977 111412128 550126469 192357506 733754782 485274089 420421709 943684338 363735925 272222011 892402919 536555508 145039288 901530291 911258148 24702094 814580063 318339259 516018921 374304461 518060570 911978730 213014190 294560053 650647658 103365629 962299373 982235475 854452267 379348535 940802010 372022618 302606552 664699007 591199643 121139985 742882154 205928467 7047835 347042442 152004914 494761752 392439108 396642503 892162725 509773877 298763448 166416554 588197218 503168542 777830381 580991398 768462815 234511553 141316281 636476212 272462205 487916223 388596004 309692275 474825650 527908524 286033166 199443229 416098217 803651236 149843168 595282941 951971031 396042018 807134049 474225165 232469904 884236323 925789885 617140595 784796007 295761023 696524712 165575875 29505974 473264389 536555508 204127012 900089127 563096945 436154416 895045053 424745201 883755935 959777336 384993094 553609282 943804435 123061537 352326710 122701246 909456693 954733262 706252569 12692394 929873183 723666634 556971998 220099913 697485488 478908948 299363933 357010493 751769332 836677911 76824192 969505193 10650745 640199219 167977815 962419470 674066573 536315314 811577638 171100337 877270697 919184550 997247600 394480757 560815102 94238257 581591883 731352842 203886818 713818680 668061723 531031046 357010493 98922040 184070813 310773148 451286638 47160233 222621950 727149447 33949563 257690274 937679488 764980002 648245718 430509857 581111495 41875965 825989278 199563326 803651236 397002794 953051904 63013037 121019888 847006253 715860329 100123010 83069236 875469242 146960840 200764296 952091128 945125502 266817646 813258996 570903250 674787155 380069117 278467055 610895551 801489490 312694700 863579639 639238443 391358235 172541501 63253231 580991398 930713862 296121314 685715982 597564784 113333680 948728412 642601159 981634990 674066573 64454201 266937743 60250806 680431714 470141867 903211649 251084939 951010255 469541382 675147446 699046749 638998249 338635652 978392371 188274208 534513859 449244989 451526832 261413281 176144411 409973270 966742962 758254570 981995281 773747083 912218924 355449232 646804554 608133320 735075849 428948596 375625528 625907676 437235289 984877609 571383638 885077002 133750170 891562240 990041780 166536651 734835655 356770299 398564055 297562478 280028316 811097250 801489490 659654933 973708588 610655357 676948901 618461662 498724953 256249110 492479909 714779456 479029045 563096945 111772419 767862330 89194183 450445959 874028078 246881544 331549929 131708521 415377635 556611707 720063724 439276938 324103915 482631955 291317434 851449842 113814068 765820681 843163149 896005829 901530291 261773572 518060570 431230439 783354843 895525441 821425592 360973694 498724953 923027654 832714710 647164845 2604246 759335443 663978425 704691308 943924532 213494578 762578062 651488337 583513435 267898519 275824921 303447231 428588305 553128894 431470633 396882697 53285180 658333866 421622679 50643046 47400427 83429527 702529562 912699312 179026739 635995824 253727073 573545384 587116345 839440142 890721561 341638077 506411161 889520591 387034743 232469904 685115497 475666329 816621712 766421166 947767636 20738893 954973456 256729498 15454625 887358845 85351079 53165083 62172358 802930654 854692461 519862025 746364967 401446383 550246566 620743505 177585575 974429170 773146598 379828923 433272088 330709250 818423167 353167389 114294456 792962603 453568481 837278396 955453844 24822191 981394796 63013037 125463477 418019769 321461781 491158842 825508890 21459475 128706096 396402309 573785578 769303494 228386606 335633227 45839166 866101676 430269663 514097369 566819952 382591154 759815831 44398002 572824802 749967877 777470090 147080937 596844202 479269239 107569024 866582064 485874574 433151991 148762295 631432138 876189824 351125740 969144902 358932045 241957567 383912221 980193826 858535565 498484759 46079360 739759632 478428560 686436564 246040865 231749322 904893007 626267967 793202797 90875541 896246023 440237714 909816984 130147260 860577214 945245599 348123315 751048750 170019464 643802129 62172358 584834502 684515012 22660445 686076273 940681913 690399765 341878271 126904641 274864145 557572483 529709979 330589153 504609706 889520591 558653356 739279244 556611707 605971574 280268510 16655595 27944713 374064267 593241292 469541382 585314890 903451843 770144173 15694819 476627105 55927314 512536108 217217585 353287486 73941864 405889972 996286824 613537685 434593155 632873302 959296948 95919615 390037168 265616676 175543926 448524407 430629954 597804978 508092519 759335443 630951750 785276395 641280092 581111495 67456626 448644504 796925804 84870691 792722409 970946357 645963875 619182244 753450690 798006677 636236018 48601397 184791395 194399155 714299068 162933741 99522525 57128284 910417469 13172782 168338106 521303189 540158418 545923074 988480519 491639230 109490576 449485183 162093062 793322894 320861296 665659783 553609282 164495002 40674995 754531563 20498699 238714948 58929739 478068269 813859481 196200610 56888090 84030012 767502039 38273055 885197099 660976000 384632803 408652203 62652746 621223893 841001403 356650202 135911916 948968606 989081004 940441719 749967877 441198490 707933927 791401342 575947324 636596309 670944051 660375515 182149261 290116464 826109375 400125316 170980240 388956295 430269663 72860991 825749084 573545384 21939863 130747745 211212735 882074577 103245532 583513435 439156841 103365629 266457355 713338292 763418741 293839471 10650745 375745625 963260149 364216313 603329440 139154535 979112953 539557933 268979392 884476517 779271545 367579029 196801095 824187823 726548962 446722952 306809947 954493068 744563512 705772181 161612674 906694462 640679607 436514707 78985938 488036320 391238138 817102100 730872454 250004066 248202611 369500581 298403157 967343447 776509314 117537075 215055839 565498885 800408617 630711556 270060265 902731261 574866451 129186484 764619711 665539686 294439956 477347687 666260268 838479366 907775335 726548962 809776183 253727073 808335019 74422252 610054872 365777574 155968115 390157265 522263965 740840505 235472329 503408736 909216499 344040017 66375753 870785459 724147022 57848866 952811710 309572178 705652084 224303308 312574603 306569753 853131200 915101252 52684695 751889429 55206732 77424677 746845355 739759632 283511129 79706520 226104763 717421590 519141443 384392609 565859176 141076087 611976424 967463544 216256809 717901978 571503735 427267238 517580182 163654323 383551930 600807403 329388183 934196675 904772910 116936590 921346296 155127436 567900825 57128284 541839776 308251111 169178785 143598124 442639654 361093791 754531563 322902945 779271545 992083429 920745811 63613522 844003828 200163811 664578910 216977391 952451419 643802129 555891125 953652389 840280821 928311922 656292217 107328830 247121738 463536532 286273360 555410737 749007101 569702280 465818375 418980545 393760175 656892702 360012918 907775335 77664871 273903369 778791157 160651898 368539805 618581759 397723376 891201949 391838623 971426745 143718221 409612979 968904708 680071423 995566242 834516165 720544112 66736044 965541992 742521863 900209224 277025891 620263117 348603703 749967877 944645114 430149566 813379093 260572602 359292336 943924532 831753934 813499190 685475788 559013647 386674452 611015648 89194183 832474516 89434377 517820376 809415892 791641536 794764058 297682575 607652932 76583998 980554117 336113615 659174545 960497918 619662632 364936895 755132048 978392371 55446926 247482029 38873540 209171086 208210310 598885851 889280397 14133558 482391761 401446383 706853054 966382671 836317620 421742776 896246023 586035472 163294032 94598548 537756478 208330407 541479485 902971455 935637839 155247533 688958601 224903793 420301612 873547690 289275785 1163082 672145021 936598615 633353690 225624375 136272207 775188247 620743505 649686882 729911678 99882816 323383333 357010493 185151686 6687544 417299187 317018192 663978425 587596733 229947867 903932231 969024805 829111800 898888157 124502701 169899367 480230015 294079665 50763143 592160419 734835655 166896942 541599582 156088212 262614251 772906404 838839657 387635228 959777336 567660631 530670755 328907795 795724834 561775878 430149566 552168118 922307072 727029350 609934775 265976967 647525136 714178971 718142172 952691613 623505736 344640502 253967267 318099065 526707554 827310345 784435716 54245956 889280397 112012613 706252569 486475059 34309854 703370241 127505126 19297729 193558476 475426135 753090399 577988973 663257843 20979087 387274937 923147751 6807641 881233898 274023466 760296219 741681184 209171086 619302341 847486641 303447231 478668754 233430680 337674876 649326591 237273784 443720527 82588848 227906218 589998673 727870029 96520100 616299916 180347806 911138051 959296948 410333561 79946714 576067421 519982122 904652813 696044324 616420013 398564055 771345143 921706587 338035167 680671908 25542773 912339021 748646810 352566904 809896280 306809947 189835469 134951140 653409889 116456202 952451419 366257962 57368478 831513740 194519252 304287910 99042137 938760361 749847780 153806369 509653780 335032742 662176970 392439108 724507313 97961264 457891973 548445111 114534650 688718407 493080394 862738960 605971574 63733619 859856632 37192182 385113191 818903555 329628377 164014614 614858752 313535379 550486760 717061299 35390727 498965147 886157875 17135983 775188247 616179819 78505550 606932350 380189214 142877542 11851715 703130047 676948901 913660088 70579148 916782610 661216194 12212006 76944289 15454625 318219162 339716525 933355996 147080937 711296643 776629411 96760294 842082276 98561749 499565632 814339869 363015343 188754596 431590730 12572297 16415401 71780118 232229710 643802129 399524831 729551387 533072695 649806979 615219043 687037049 802450266 821065301 309812372 60851291 539197642 181068388 581471786 874028078 714659359 505090094 219139137 213494578 35390727 232109613 477828075 544001522 552768603 690279668 718262269 800889005 715379941 572944899 476386911 31547623 481430985 271501429 18216856 855052752 635035048 948368121 908135626 112613098 704090823 704090823 814940354 489117193 257810371 12091909 31427526 609214193 771585337 478068269 29025586 169539076 426186365 664578910 967823835 908736111 115975814 933235899 151644623 781793582 165455778 476386911 662897552 123782119 930954056 992323623 724147022 356650202 477107493 352807098 289035591 445762176 203406430 291557628 859496341 81868266 496923498 492840200 469060994 412975695 60010612 251325133 183110037 756333018 819744234 155487727 377787274 969745387 639718831 508813101 695443839 334071966 182869843 92556899 667221044 968544417 391358235 21099184 221300883 362775149 53645471 877270697 830552964 171941016 57848866 792362118 996166727 153085787 977071304 374304461 563457236 266457355 327826922 499805826 641880577 778911254 63013037 628429713 70218857 361093791 573785578 292518404 486354962 806293370 34550048 206889243 815420742 165215584 33829466 799327744 922547266 886157875 916782610 118377754 526227166 247962417 114054262 142156960 425585880 958336172 733394491 89554474 344640502 477707978 958336172 786477365 743122348 2484149 846285671 115615523 985958482 345961569 644642808 473384486 27824616 41635771 900089127 553609282 348963994 65414977 785756783 146960840 591439837 191156536 856133625 620623408 856133625 297682575 859736535 200283908 330829347 81267781 232229710 384392609 498724953 266937743 919905132 156448503 67937014 441198490 910777760 219379331 743482639 665659783 456450809 335513130 212773996 574025772 380429408 933355996 86071661 437235289 567660631 973588491 443360236 510494459 411414434 130987939 481911373 532592307 404328711 176024314 485634380 720784306 968904708 862979154 892643113 793683185 567660631 505690579 945365696 313655476 447683728 823947629 925189400 205688273 350044867 782874455 294439956 953532292 55927314 385713676 171460628 458972846 447203340 523464935 719703433 98801943 832594613 555771028 808094825 474225165 163894517 675147446 363135440 42716644 938880458 418139866 988960907 670343566 648005524 661576485 9689969 990281974 888679912 601768179 284111614 178426254 994965757 810016377 863699736 881834383 389796974 640559510 896486217 967943932 779271545 792242021 782994552 716941202 269459780 526227166 839920530 913059603 106608248 804732109 519501734 821545689 334912645 637917376 502327863 268979392 915101252 255528528 879072152 539437836 490918648 437955871 826469666 693882578 276785697 724867604 83309430 156688697 634194369 26263355 252045715 92797093 297562478 767381942 171820919 647044748 989801586 195720222 102885241 468700703 653650083 622064572 213614675 834756359 667581335 543401037 447803825 827190248 78865841 811697735 71419827 719823530 453568481 663137746 351125740 747205646 827790733 710215770 155487727 598525560 706252569 41035286 415617829 974549267 815660936 417659478 961218500 88833892 836557814 723786731 74542349 919304647 577388488 404689002 301165388 651848628 466298763 889400494 2604246 521543383 183710522 180467903 619542535 999289249 928912407 426666753 380069117 480590306 861898281 871145750 587596733 397483182 456811100 205808370 97480876 494881849 506771452 260932893 751649235 167977815 885437293 949328897 773146598 329748474 608973999 14253655 706732957 428348111 861778184 282069965 680071423 505570482 150443653 67937014 214695548 537516284 359292336 607773029 346321860 569942474 359532530 339476331 699407040 680071423 199803520 352807098 172301307 365177089 264655900 255528528 270900944 527908524 916062028 53885665 788639111 581471786 359892821 226465054 420061418 472904098 816741809 664939201 868743810 160051413 467379636 506531258 154526951 696284518 744683609 639118346 785516589 980914408 47280330 956174426 391358235 150083362 868383519 194519252 556971998 378387759 211813220 699767331 648966300 922186975 60611097 802810557 644522711 891442143 403127741 14013461 500166117 516018921 191036439 94958839 64454201 937079003 603089246 469661479 705772181 837158299 803290945 208330407 970706163 332870996 79106035 398323861 466178666 902130776 372863297 601407888 77664871 192357506 121500276 805933079 875229048 758014376 950649964 795844931 558172968 975149752 879792734 153085787 686796855 337554779 854212073 153566175 996046630 990882459 614018073 669022499 760536413 188874693 372022618 4285604 263695124 255648625 398443958 215416130 393039593 853371394 886518166 539437836 247001641 349444382 948848509 724267119 385833773 395441533 390517556 81387878 882915256 245440380 239195336 333471481 845805283 133870267 40194607 19537923 756933503 242918343 103485726 372743200 264175512 716220620 174943441 298523254 238594851 177705672 446843049 773386792 905973880 181068388 596363814 503528833 182509552 266217161 361694276 831513740 983316348 975269849 523104644 271261235 507011646 50883240 202445654 262374057 914380670 380309311 602128470 606091671 4525798 977791886 974429170 337794973 430149566 192597700 231509128 395201339 948488218 683434139 363856022 870545265 688478213 393880272 67456626 327826922 638878152 298643351 221781271 778430866 276305309 289395882 291197337 982595766 33469175 510974847 713218195 158610249 322902945 588797703 235832620 604770604 284231711 808575213 213134287 525026196 267418131 79586423 430870148 787678335 464016920 844244022 917142901 532592307 722825955 804491915 963620440 141556475 868023228 93998063 153566175 424865298 457771876 269099489 116336105 594802553 240876694 97360779 439757326 850609163 365897671 228266509 331429832 691840929 716460814 328307310 761617286 860337020 108049412 122941440 843523440 108529800 685956176 950529867 105167084 672745506 125583574 481671179 515898824 49321979 206288758 388235713 431470633 628429713 334672451 922547266 204727497 239915918 938520167 850248872 135071237 830072576 189835469 665059298 232469904 200884393 790560663 898167575 594682456 335873421 42236256 285432681 568381213 932275123 232349807 75142834 12932588 165816069 851209648 139154535 184791395 426786850 707693733 636956600 26023161 696404615 484433410 807374243 331790123 144318706 929392795 974429170 384152415 592400613 68897790 139514826 444801400 162933741 674066573 994845660 511455235 936238324 462455659 485514283 536675605 383431833 506651355 897807284 502327863 795844931 347642927 756933503 709014800 32508399 858295371 498484759 560454811 218658749 957615590 732914103 977071304 697965876 385593579 358331560 513496884 209771571 899848933 998088279 95319130 5366477 940441719 111412128 60250806 918463968 36711794 704451114 324344109 541359388 674186670 931194250 448524407 208690698 18457050 310773148 863459542 716340717 517460085 451646929 883035353 359652627 874748660 616780304 91355929 482631955 998208376 884716711 26983937 17616371 905493492 282790547 66736044 102404853 73701670 852050327 730392066 108409703 887839233 133509976 306689850 246401156 884716711 54486150 505090094 1523373 48000912 320020617 634314466 820224622 912098827 989201101 175784120 399644928 101804368 500286214 764619711 592280516 349684576 903692037 776749508 126184059 18577147 210131862 449244989 893123501 303567328 113333680 938520167 904893007 142397154 495962722 135071237 214335257 172061113 166536651 34069660 824307920 80547199 503769027 36831891 649927076 618701856 549525984 68657596 613177394 383071542 464737502 62052261 867662937 138794244 438916647 298523254 341277786 949569091 166896942 275104339 293719374 578589458 471342837 447203340 192837894 191877118 882915256 235952717 553849476 556491610 143237833 173021889 543160843 767502039 330829347 691360541 313775573 347402733 340917495 554570058 96400003 789119499 495242140 367218738 490918648 689919377 677429289 739519438 234031165 745644385 75863416 873427593 333231287 758734958 48721494 906574365 251445230 201124587 940681913 187313432 732193521 650287367 320260811 452727802 885677487 348843897 833675486 360493306 2123858 736156722 142397154 270900944 600447112 533913374 165335681 645003099 160411704 366858447 912939506 192837894 753330593 46559748 354728650 779511739 423544231 445401885 113213583 830072576 366618253 339716525 544602007 227305733 6447350 338755749 234391456 925669788 768222621 72860991 799928229 45959263 844724410 235232135 711656934 518420861 734475364 107328830 258771147 920385520 34790242 334792548 668782305 367098641 348483606 251084939 353287486 893363695 116216008 890361270 25422676 272702399 470862449 529229591 587356539 323383333 602608858 82708945 814820257 433392185 946926957 97600973 449365086 549525984 573305190 65895365 96640197 827790733 762457965 45959263 358691851 758734958 882675062 206048564 109250382 830793158 384632803 428468208 690159571 219499428 187433529 722105373 635035048 131588424 611255842 942002980 768582912 7768417 602728955 173141986 289996367 409612979 626628258 846766059 978872759 503048445 231629225 81387878 760536413 822026077 597925075 130987939 10050260 18216856 749007101 198722647 312094215 747085549 197641774 178426254 799567938 402767450 510614556 686436564 674306767 122461052 988720713 842082276 227425830 638397764 218178361 943203950 132549200 477707978 701208495 788999402 679831229 518300764 439997520 362054567 521303189 300805097 659294642 59530224 957975881 877751085 724747507 921106102 642721256 762818256 965421895 853491491 493200491 754411466 235952717 170980240 290957143 976590916 307050141 698806555 546643656 893243598 527308039 260092214 992323623 465698278 444921497 828271121 298042866 865140900 718022075 168218009 346441957 909336596 842442567 316657901 754051175 210011765 432431409 832834807 530430561 954493068 384392609 311373633 400845898 770624561 114174359 996767212 370221163 308731499 532472210 526227166 194158961 146480452 243278634 646804554 125583574 628429713 529950173 856974304 359292336 853971879 195840319 6927738 456811100 220820495 702409465 519741928 390877847 1523373 896246023 867422743 905493492 655091247 230548352 34309854 737717983 9810066 33829466 833795583 440357811 942243174 632633108 382471057 210251959 298643351 626388064 613657782 195480028 301405582 519501734 513376787 256969692 559133744 334792548 892643113 481791276 516018921 191036439 686916952 514097369 502688154 376226013 288194912 392799399 964701313 813619287 945005405 370941745 611496036 681272393 465938472 949809285 433031894 3444925 617500886 684875303 87512825 472063419 563217042 198122162 311133439 276065115 55687120 75743319 576067421 110691546 776389217 94598548 897086702 397002794 711176546 107328830 969745387 478788851 428828499 109130285 182869843 81868266 762578062 903331746 736637110 877871182 939961331 254928043 487676029 92436802 994725563 957855784 518661055 289035591 428708402 37432376 83069236 700487913 744443415 636716406 552648506 675627834 358811948 229347382 178186060 579550234 751649235 67336529 213254384 741320893 5726768 138554050 215296033 286273360 914620864 991843235 351125740 705171696 907895432 307530529 508092519 538717254 192837894 500046020 446722952 687037049 588917800 6087059 453448384 920385520 864900706 960257724 331189638 485634380 455009645 186833044 29265780 363495731 448644504 791401342 284952293 916182125 813739384 394000369 573305190 485514283 467379636 544602007 292398307 398684152 191757021 346922345 432911797 594442262 154526951 430029469 649446688 364576604 755732533 944885308 980434020 911738536 896246023 239795821 271741623 133870267 670583760 537155993 935517742 50883240 541719679 144919191 86552049 715500038 6927738 480109918 665179395 124262507 149002489 231509128 120419403 521062995 419941321 845805283 55326829 744803706 653409889 41395577 183350231 688478213 962899858 887599039 634914951 58929739 80066811 528749203 314135864 542920649 225023890 128706096 86311855 968544417 847846932 658453963 263935318 784195522 646564360 177705672 508212616 909096402 962899858 65174783 971546842 625427288 291077240 890841658 310773148 92917190 143357930 968544417 587716830 126664447 219139137 246761447 710576061 330589153 895525441 158129861 456090518 52084210 765580487 938039779 384872997 890481367 947047054 990522168 255048140 275344533 584113920 364816798 351125740 335272936 21219281 51363628 754651660 97480876 968304223 328667601 801609587 985718288 19297729 837158299 406250263 696044324 909937081 391958720 515418436 738198371 528749203 54366053 968664514 679711132 569221892 82588848 554449961 496923498 581351689 856493916 28064810 947647539 332030317 601527985 7888514 871866332 103485726 911978730 961939082 259611826 846766059 277746473 903571940 527308039 705772181 638157570 326746049 150683847 85230982 171820919 784675910 179266933 505810676 555050446 722465664 679591035 523104644 61571873 436034319 555410737 936358421 213974966 168578300 767622136 635275242 442999945 967223350 761617286 613537685 75262931 844003828 970706163 88113310 137112886 631912526 197641774 635275242 526707554 811097250 81868266 554329864 151644623 8008611 806533564 702529562 397363085 588557509 711536837 909456693 588317315 443120042 497884274 940081428 363856022 234991941 704811405 578949749 484553507 278346958 261413281 552648506 163534226 528629106 516259115 640559510 112613098 659414739 836077426 310653051 540758903 973228200 922787460 105767569 66495850 674787155 917983580 790440566 677189095 30466750 422583455 608733805 457291488 53285180 429068693 63853716 480830500 512536108 883275547 214455354 190435954 723066149 700367816 280868995 563697430 536315314 836437717 421262388 694483063 644402614 771465240 541119194 895045053 74182058 83789818 280868995 351726225 855172849 26263355 55687120 89314280 178786545 57248381 514097369 199683423 699407040 925069303 116576299 497283789 457651779 197641774 891201949 322062266 534513859 393159690 236553202 757654085 421622679 876910406 762698159 150563750 415137441 990882459 544121619 327586728 146600549 53645471 226585151 752129623 291077240 347642927 309692275 224423405 463776726 12332103 204607400 239075239 134110461 469301188 424745201 294560053 673946476 948127927 874508466 614138170 884836808 215776421 128946290 435313737 26263355 48481300 405649778 844724410 172301307 673586185 668782305 25542773 188754596 243638925 110091061 530670755 928432019 816741809 468580606 970826260 572584608 147801519 790800857 333591578 980794311 469301188 893123501 385233288 20378602 611496036 876430018 448044019 812298220 472303613 279187637 114414553 66135559 237754172 188514402 561175393 776028926 847486641 938640264 669863178 619782729 65655171 117897366 491999521 153085787 836077426 300084515 337194488 340557204 999649540 12812491 498604856 297562478 248923193 294560053 177945866 800768908 716821105 519741928 494641655 461975271 160771995 501847475 613297491 731472939 627348840 82228557 83909915 410813949 972147327 353167389 278346958 700968301 253967267 476987396 142517251 849648387 400125316 475065844 743842930 307170238 355088941 304648201 469901673 663498037 279067540 497403886 537516284 859015953 494401461 217938167 823587338 389436683 44518099 58929739 37552473 383912221 219259234 969264999 326986243 122821343 917262998 415497732 696164421 999289249 315577028 198482453 617500886 904532716 76704095 271021041 336353809 979833535 821065301 146720646 191516827 257450080 352927195 649086397 520702704 767982427 376346110 9449775 468340412 558773453 255528528 743722833 263815221 907895432 911378245 46679845 319900520 115975814 588437412 981154602 189595275 984157027 206048564 190195760 867542840 660375515 420782000 942603465 849528290 473264389 203766721 113573874 847006253 361814373 329988668 15454625 226825345 227065539 169779270 935998130 280508704 199203035 11731618 322062266 992924108 444441109 488516708 570903250 250244260 695924227 690399765 243759022 611255842 45959263 130987939 29025586 572224317 830673061 5606671 646324166 784195522 732553812 179867418 183110037 751889429 532111919 731472939 135551625 466538957 273182787 596483911 414777150 945005405 2844440 233190486 855052752 714539262 594682456 315937319 334432257 11851715 359652627 80547199 645003099 751048750 675868028 161732771 500046020 224183211 689198795 812898705 49562173 205688273 752009526 266457355 179146836 974429170 70338954 469781576 844003828 904292522 585675181 317258386 705531987 52924889 85471176 761977577 527788427 278827346 582192368 481070694 700728107 282310159 973108103 824548114 662417164 984397221 626748355 372623103 749967877 324704400 335873421 25903064 86552049 496803401 873187399 185031589 243759022 770024076 40194607 870545265 455369936 61091485 181668873 853731685 170019464 189234984 156448503 960858209 795844931 55567023 226465054 185151686 298523254 243638925 781073000 437595580 435433834 161012189 419941321 236913493 643441838 600567209 224783696 275224436 766060875 812298220 263695124 425826074 663858328 225624375 803651236 868143325 262013766 525746778 618701856 645843778 77544774 322782848 72860991 932515317 258290759 387274937 861658087 870545265 820584913 322902945 307050141 359292336 980073729 43917614 569101795 240036015 287594427 210492153 339596428 102645047 194399155 408532106 837278396 32988787 250364357 699166846 911017954 457651779 728110223 236553202 734355267 470502158 412255113 759335443 124983089 838959754 136872692 315577028 71900215 813379093 638277667 676588610 523585032 454889548 367098641 63013037 374904946 917262998 672265118 331670026 830192673 577988973 668181820 917503192 16055110 996647115 822986853 687397340 478668754 799447841 822386368 889640688 404208614 378267662 934797160 479509433 716821105 306930044 429789275 356650202 307170238 747565937 85471176 444321012 72260506 866101676 369020193 712857904 989801586 771225046 888559815 648966300 492359812 364336410 206048564 349084091 664819104 970105678 359412433 932875608 481791276 823947629 829952479 687037049 421982970 438796550 150083362 913059603 973108103 971666939 807614437 60370903 203886818 587716830 268018616 133630073 971666939 314616252 772666210 751769332 957015105 97240682 314736349 949809285 48481300 504969997 382831348 901049903 28184907 747445840 31427526 158490152 743002251 516259115 809415892 312334409 739279244 712497613 802930654 690039474 87632922 884596614 394000369 982595766 158970540 565859176 102044562 341157689 176864993 988600616 20138408 52444501 389917071 82348654 663498037 758975152 822626562 568141019 798727259 490678454 515418436 709735382 803651236 467739927 22780542 769903979 514217466 140835893 118137560 983196251 179867418 534513859 824428017 322302460 774227471 199803520 533913374 339236137 805212497 394240563 819864331 410453658 997247600 912339021 377426983 479989821 809055601 149362780 628549810 497764177 677669483 720904403 860937505 366858447 29145683 360493306 359652627 357610978 397603279 345481181 402287062 542680455 635995824 38993637 454409160 469181091 801849781 939240749 530190367 480230015 889280397 880873607 206408855 862738960 809896280 408652203 895045053 672145021 379228438 354728650 665179395 187433529 39474025 709014800 37912764 156568600 927231049 738438565 804491915 34309854 847006253 579430137 24702094 797526289 811937929 835957329 929993280 759215346 389676877 972147327 185031589 13893364 475306038 773506889 942123077 390037168 734115073 135791819 881353995 722345567 163294032 918103677 116336105 350765449 646083972 347763024 775308344 153446078 10410551 954733262 975269849 974429170 916182125 64093910 296481605 252406006 440598005 786357268 356530105 219979816 237033590 471102643 46799942 854332170 523585032 245440380 369020193 648005524 431710827 471462934 42716644 582792853 101804368 837758784 71900215 504249415 842682761 516859600 298042866 837398493 794043476 860457117 753570787 78025162 393880272 171100337 992804011 201725072 166416554 458492458 918944356 885197099 291917919 159691122 408412009 348363509 554209767 601287791 269579877 624706706 302606552 254447655 973468394 888679912 739279244 510854750 5846865 978032080 737717983 818303070 368659902 979112953 371902521 595643232 269940168 236793396 948728412 101444077 683674333 575947324 423183940 131588424 335513130 903211649 493440685 675988125 321221587 761617286 451406735 376105916 544842201 49201882 368299611 792121924 705652084 866942355 299604127 579670331 611736230 853011103 846045477 371422133 443240139 757293794 798967453 659775030 398564055 498244565 663498037 724867604 319540229 718982851 63133134 217217585 448284213 232109613 753931078 560574908 550126469 904532716 558413162 172061113 220220010 328067116 947287248 323263236 616299916 86071661 345120890 648966300 972627715 950529867 338995943 552768603 509173392 338995943 25542773 793803282 21339378 973828685 565498885 895765635 565979273 800889005 957135202 46199457 745644385 286873845 566940049 443240139 771225046 605851477 259491729 756092824 335393033 535354538 786477365 259131438 719823530 473864874 791041051 209651474 188154111 965902283 911498342 853611588 899608739 496323013 56888090 606331865 843763634 539918224 738078274 923628139 259131438 143838318 219379331 69498275 249763872 426906947 347883121 289155688 866461967 349684576 886758360 529709979 765460390 500166117 722225470 617140595 340196913 356770299 557932774 539197642 511575332 932995705 19057535 422943746 245920768 831153449 470622255 396642503 164975390 880393219 798847356 516379212 847846932 5726768 719102948 314135864 1883664 215296033 541239291 805212497 385233288 635875727 492119618 809776183 537996672 51844016 881594189 143958415 411654628 967463544 638758055 67937014 39474025 402887547 564177818 726068574 517580182 257810371 566099370 407090942 362895246 975029655 182869843 257810371 888199524 646564360 321221587 24461900 855653237 979353147 461254689 939601040 940081428 547364238 223462629 255288334 964821410 885317196 22780542 535594732 432551506 448884698 186352656 706132472 293959568 487796126 463656629 983556542 591199643 808935504 381750475 567900825 893123501 697725682 45478875 101083786 527428136 89554474 341758174 291317434 980794311 503648930 182269358 292638501 429428984 624346415 411174240 458612555 441678878 715019650 367819223 634074272 752009526 854091976 555050446 638397764 375745625 386674452 841601888 35510824 195720222 142637348 863219348 729070999 392319011 220220010 799207647 319300035 106368054 196080513 43197032 403728226 329388183 673946476 859976729 664819104 827790733 963019955 996166727 278467055 581832077 297562478 668181820 283391032 242798246 509293489 178065963 417539381 913419894 76583998 864420318 915221349 641280092 951370546 272342108 751529138 881233898 964701313 522984547 703490338 778791157 854332170 882675062 985237900 326385758 954012680 948848509 770864755 533432986 580030622 829351994 719343142 730151872 733034200 986198676 813018802 806773758 134590849 972507618 800168423 874868757 466779151 292278210 985237900 749367392 254207461 878231473 890961755 163894517 117296881 899608739 953652389 739279244 873787884 732073424 624826803 201965266 820825107 662777455 237994366 243398731 679230744 604890701 171460628 306449656 964220925 47160233 501727378 469421285 933836384 803891430 116216008 536915799 671664633 8128708 470021770 69378178 997367697 666140171 12692394 591319740 652208919 814580063 77184483 220220010 462815950 756092824 882074577 894324471 990522168 67816917 127144835 74302155 506891549 453568481 102885241 698566361 397122891 351846322 540758903 813739384 211573026 834996553 216857294 473744777 265736773 201124587 574626257 585434987 521903674 586756054 253006491 707693733 822866756 80547199 694603160 694483063 993764787 808094825 505930773 452007220 764739808 500046020 477587881 685956176 97120585 154887242 820584913 938760361 832594613 869584489 199203035 459333137 811337444 505090094 641520286 831393643 799928229 494161267 232229710 554810252 80066811 264295609 534754053 631312041 203406430 949809285 39474025 438916647 394120466 678870453 982835960 106728345 672024924 288915494 497644080 638758055 653770180 370941745 517219891 714779456 998208376 403608129 147080937 959176851 485033895 251685424 312574603 532832501 936838809 199923617 529830076 101684271 157289182 588437412 134831043 238714948 60370903 98561749 829351994 816982003 718622560 153926466 409733076 172061113 237033590 721745082 805692885 587836927 258290759 190796245 681872878 251084939 581351689 126304156 860216923 684635109 784555813 702049174 387034743 421262388 209411280 30706944 806053176 509773877 460534107 221661174 740840505 370581454 898768060 530790852 5366477 685836079 787438141 377667177 843043052 993764787 841361694 149122586 531271240 556131319 225624375 783835231 857214498 94958839 202926042 176504702 369500581 86191758 772185822 217697973 462936047 881594189 31787817 562736654 21939863 730752357 480830500 588197218 342598853 198602550 425946171 36951988 80787393 112613098 741921378 71900215 5006186 116576299 289996367 374904946 485754477 736036625 94358354 91836317 540158418 557092095 733754782 824307920 369140290 606692156 731112648 786837656 230188061 304648201 362775149 801609587 773747083 888920106 269099489 102645047 954012680 381750475 254447655 416338411 76583998 178906642 685836079 410573755 362775149 625547385 276065115 61091485 945725987 865260997 895405344 738798856 303807522 188394305 149242683 732313618 132909491 849528290 997367697 322422557 531391337 582792853 75623222 798126774 473264389 807854631 790560663 174463053 97721070 784555813 370701551 968544417 487195641 739759632 271141138 974188976 466298763 274984242 174463053 306089365 587236442 750808556 571383638 371181939 210852444 134470752 371902521 710696158 887238748 845565089 2964537 772065725 417659478 33949563 589398188 122340955 499565632 953892583 125223283 529349688 153686272 205808370 151524526 812538414 837878881 33709369 205087788 843523440 525746778 52204307 694603160 293359083 358932045 886037778 873667787 247001641 120059112 255528528 202926042 679591035 540879000 15935013 772305919 517580182 86552049 262374057 248082514 567420437 801849781 734115073 109730770 860096826 106968539 236673299 321581878 790440566 459213040 315456931 487315738 522263965 571864026 515658630 479869724 931194250 34189757 931314347 307050141 433031894 816861906 860457117 679350841 295640926 7047835 207009340 417299187 638517861 694483063 931194250 15334528 510734653 36591697 746124773 139394729 724867604 841721985 792482215 613657782 562736654 258771147 581591883 201364781 386314161 909816984 173502277 942243174 677669483 993644690 743122348 231268934 186112462 259852020 632633108 229347382 20258505 137953565 981514893 506891549 935157451 735916528 711056449 446362661 964220925 975149752 922907557 917142901 958576366 318699550 184911492 873307496 913299797 76463901 583393338 302366358 867542840 963380246 198002065 165695972 941522592 691600735 81748169 391358235 737958177 994965757 895885732 638277667 598525560 176264508 275104339 669382790 812898705 572944899 227305733 996286824 91836317 320140714 458612555 687637534 917983580 775548538 543160843 162213159 956054329 291077240 548084820 311733924 708654509 884596614 440357811 910657663 806653661 639838928 686556661 581832077 546403462 112733195 578949749 963140052 313655476 35630921 609094096 619182244 928552116 155968115 663618134 492479909 320741199 771225046 733394491 984036930 159090637 24822191 146600549 692561511 843523440 337554779 145879967 645123196 888559815 44758293 320020617 228626800 570422862 940441719 135431528 447323437 493800976 741561087 626988549 960137627 133029588 518420861 431470633 378988244 981394796 378868147 41515674 720904403 993644690 787558238 570302765 279307734 337794973 255168237 341157689 62412552 994485369 142397154 195480028 871145750 804732109 289515979 663858328 25903064 715379941 718862754 513136593 36831891 935757936 871265847 708894703 860937505 926030079 965782186 114294456 152965690 308611402 268619101 18457050 981755087 363976119 258050565 682694 243999216 106247957 848927805 849408193 550366663 921586490 597084396 534153568 280508704 106608248 231629225 840280821 453208190 58329254 813739384 966142477 710455964 354008068 161492577 734715558 356410008 690760056 209891668 875469242 662657358 166296457 295160538 60130709 562496460 349084091 475666329 550606857 352326710 12572297 354968844 500646505 230067964 760176122 826349569 282430256 572344414 396282212 753810981 749007101 93037287 925669788 589037897 99162234 989201101 431951021 72860991 432911797 893844083 448884698 224903793 79826617 142036863 67576723 174703247 518901249 632513011 468820800 534513859 475065844 772065725 546883850 52804792 359412433 632873302 977911983 147801519 367819223 578829652 498604856 519862025 375265237 545802977 198722647 66255656 700487913 293479180 364456507 335272936 795965028 892282822 56167508 63493425 427627529 38753443 515178242 554089670 729070999 712857904 634794854 376826498 895285247 766421166 399404734 449365086 571023347 256849595 451046444 659654933 885677487 946086278 349084091 730512163 17256080 300805097 432551506 178666448 320380908 744443415 329027892 361934470 444080818 607773029 438916647 478188366 266457355 135311431 235952717 593121195 955573941 622665057 310653051 292878695 873907981 178306157 916182125 12452200 247121738 701448689 83669721 736036625 809175698 5846865 377667177 709615285 172181210 187793820 906093977 475666329 394000369 635035048 345961569 703970726 94238257 230188061 872586914 898167575 395441533 460654204 865861482 201484878 653890277 336834197 37672570 650647658 983796736 772906404 22540348 162333256 24702094 2123858 556371513 326986243 685956176 421382485 388115616 786477365 330949444 709134897 672145021 768342718 331670026 642360965 528749203 667581335 468820800 804491915 901410194 347402733 256129013 751649235 559854326 122581149 924949206 889880882 387034743 255648625 606692156 295761023 923988430 690639959 705892278 646324166 185511977 159691122 443720527 818783458 128225708 529950173 130387454 536795702 145039288 264775997 146360355 64214007 567900825 139755020 475786426 169058688 215416130 592280516 650887852 614858752 620503311 575707130 875949630 610895551 540758903 592520710 490798551 135551625 285552778 894204374 4886089 963140052 680912102 306689850 140115311 700968301 458132167 176744896 340917495 574145869 891322046 969264999 726428865 474705553 46319554 551567633 956174426 150803944 362054567 314376058 993524593 417539381 856614013 669502887 721024500 377306886 576067421 376346110 150563750 329147989 155127436 161972965 372022618 515898824 263935318 921346296 480830500 539678030 358811948 326145564 51003337 406850748 374664752 486715253 838359269 824668211 164374905 652088822 144799094 386194064 277266085 333711675 842682761 599366239 210492153 111171934 668181820 604170119 725468089 402287062 335753324 439036744 77784968 214335257 60851291 311373633 587596733 688478213 551207342 122461052 421382485 204367206 47160233 634194369 484193216 601287791 505210191 561055296 226945442 209411280 682593460 572104220 230908643 905253298 140475602 964581216 810016377 580991398 306449656 886518166 135911916 452127317 816501615 694483063 679350841 491158842 846525865 734235170 185752171 461494883 151884817 961939082 840400918 254567752 5606671 798487065 835236747 238354657 492239715 64934589 524786002 985598191 1042985 915341446 75262931 620143020 373103491 406970845 721504888 144799094 478428560 730992551 92797093 834996553 868863907 812178123 28545198 422943746 996887309 620383214 544481910 443120042 434953446 460293913 15574722 456570906 477227590 857094401 786117074 140715796 241357082 288074815 672024924 981755087 678269968 636836503 280388607 70699245 905373395 233310583 615819528 826709860 859856632 963019955 431710827 858295371 95078936 664098522 797766483 63613522 730151872 567540534 367819223 885797584 15214431 896846508 799688035 336594003 135191334 720664209 16895789 735556237 912699312 233310583 894444568 401206189 754171272 751889429 689318892 681392490 770984852 311493730 784195522 242437955 780112224 941402495 862859057 557932774 429909372 671424439 527308039 145279482 4645895 621223893 427027044 84510400 813739384 586035472 404088517 992924108 320380908 196320707 4045410 387995519 206408855 371422133 282310159 497403886 859616438 641760480 953051904 757894279 839079851 378147565 408051718 388956295 854572364 769423591 664338716 333951869 302126164 35390727 59890515 711536837 514457660 207369631 106968539 246521253 161372480 112733195 665539686 467619830 588917800 807974728 369020193 333711675 548805402 263575027 973828685 308010917 886037778 639718831 916062028 647765330 949448994 503048445 941282398 488396611 944404920 175303732 901650388 789599887 715860329 119698821 58809642 355329135 869704586 27224131 296721799 465818375 39233831 919664938 667100947 580390913 695563936 403007644 423904522 333231287 853491491 289395882 185151686 93998063 652208919 33829466 943804435 815660936 718982851 130867842 482872149 315697125 571143444 301885970 249283484 921706587 662056873 793322894 263214736 406610554 674787155 581471786 464257114 266337258 219019040 268258810 857334595 430870148 447443534 483712828 840521015 905973880 161012189 981634990 300204612 794764058 433031894 820825107 265856870 557332289 985958482 838359269 646324166 843883731 222381756 107569024 947167151 757654085 442519557 920145326 329027892 317978968 860697311 681872878 627949325 555050446 415497732 424865298 226585151 639358540 65294880 531271240 423784425 542920649 776389217 144558900 644162420 790080275 30346653 283631226 450806250 255648625 751288944 928672213 138433953 558052871 400365510 281469480 551327439 835236747 952571516 696764906 727509738 620863602 740240020 916782610 343079241 376946595 217697973 425705977 710696158 555530834 963140052 898287672 211933317 614498461 136992789 48241106 931794735 11251230 446963146 691480638 693882578 134710946 274383757 320260811 978272274 833315195 420782000 931314347 787318044 814820257 287234136 600327015 378748050 894204374 429669178 839199948 330108765 457291488 545442686 229347382 981634990 664338716 901170000 529229591 809175698 888079427 728110223 204127012 151404429 330829347 222261659 525746778 755852630 385833773 405649778 151524526 316297610 969745387 385473482 311974118 192117312 493800976 916302222 318939744 960618015 746364967 559614132 164134711 766060875 963620440 238594851 589758479 404689002 354488456 659534836 638998249 844484216 714178971 451526832 844724410 301525679 78745744 770384367 164134711 40434801 540158418 210251959 639598734 617140595 94718645 158370055 729791581 97240682 465337987 516499309 740119923 439397035 940802010 949809285 746965452 732794006 544241716 933716287 959777336 600447112 964701313 48000912 882434868 192597700 506050870 587836927 531151143 767502039 54005762 696164421 500406311 594081971 290837046 913059603 826349569 733514588 864540415 283511129 320741199 226945442 457771876 41875965 476386911 805812982 71299730 768582912 671304342 361574179 796205222 174703247 548565208 316537804 274864145 487195641 799688035 624226318 428348111 766901554 42836741 196680998 424745201 74542349 209771571 840400918 18937438 151524526 501126893 905013104 33589272 51603822 354128165 53645471 74902640 744803706 200764296 687997825 47160233 249163387 372022618 417899672 624826803 935157451 798967453 164615099 808094825 950169576 269339683 803411042 495242140 76343804 92676996 502207766 567540534 247361932 126784544 712497613 846766059 302006067 127745320 7768417 223102338 973468394 559373938 770144173 849888581 845685186 347042442 896726411 588077121 564418012 574265966 25062385 782994552 269459780 652569210 352566904 205808370 609814678 985598191 911258148 434833349 371782424 152485302 92316705 26143258 838839657 990402071 81387878 630111071 182629649 141916766 436034319 148281907 771104949 11011036 337674876 123421828 913780185 721745082 215175936 869224198 969985581 137953565 433512282 861778184 321701975 396882697 808815407 434232864 12932588 309331984 305608977 62172358 504729803 111171934 431590730 208810795 483592731 892523016 463056144 668422014 643441838 313775573 525746778 134590849 118617948 828030927 639238443 14013461 398804249 302006067 838959754 421742776 332510705 543521134 598765754 766060875 60491000 312214312 293959568 812538414 399284637 34069660 164495002 991242750 620983699 217577876 789479790 854091976 436874998 180347806 68537499 549165693 768582912 939360846 100843592 997727988 723546537 733394491 841121500 321701975 787918529 559614132 398083667 25903064 284832196 829231897 209531377 243759022 983436445 663017649 629390489 289155688 532232016 715379941 678029774 707813830 31547623 54966538 976350722 184311007 328307310 930954056 711897128 904172425 571023347 576547809 235712523 829351994 720303918 661216194 108409703 897446993 942723562 168218009 90154959 707933927 210732347 389917071 326145564 508212616 763418741 479749627 61331679 409853173 99282331 664098522 783114649 74422252 984397221 95559324 131108036 86672146 325064691 381510281 638758055 251205036 823707435 508452810 883996129 426306462 88713795 935637839 837158299 940922107 985598191 22300154 533432986 248682999 808214922 949929382 808335019 553849476 975510043 69017887 397723376 436995095 693041899 143718221 450325862 21099184 582072271 770264270 922427169 133630073 345841472 939721137 821065301 649566785 595763329 841481791 871145750 264295609 850008678 27824616 933235899 822986853 514217466 393880272 100963689 105167084 797646386 45719069 491519133 784916104 410693852 656892702 6927738 907775335 909336596 734355267 403968420 172901792 259131438 105767569 866341870 179747321 663978425 12091909 382471057 768342718 256969692 212053414 634794854 596604008 248442805 172781695 773626986 182149261 750208071 505450385 538236866 891322046 69137984 529349688 612096521 724747507 5486574 224663599 130507551 867422743 239435530 956654814 164975390 348483606 31307429 789840081 142397154 298643351 753450690 593721680 926990855 695323742 97841167 988240325 386194064 618701856 306089365 904772910 647885427 733634685 428948596 845444992 765940778 798607162 901770485 805092400 185992365 982835960 281109189 110211158 870184974 705772181 724387216 885677487 509413586 251805521 71660021 172301307 991963332 331429832 193798670 56407702 929272698 956534717 958696463 778430866 567660631 681032199 311133439 787798432 947407345 865501191 657613284 91596123 338995943 376586304 454649354 784916104 969264999 353407583 930233474 417659478 154166660 285432681 239315433 429428984 838479366 240636500 266937743 849408193 680671908 112012613 731232745 621584184 861417893 488756902 812538414 384993094 985958482 157048988 741080699 671784730 789960178 237994366 560695005 642841353 838359269 512536108 442500 515538533 431951021 211813220 891802434 511935623 33469175 631312041 881834383 243999216 303207037 395441533 246281059 257329983 302246261 634554660 865981579 991482944 865861482 653890277 785636686 331429832 490318163 627348840 974909558 252285909 322542654 477347687 368419708 232950292 508212616 865741385 148402004 626027773 173382180 298883545 959897433 480710403 983076154 797646386 591079546 799087550 548084820 464137017 198002065 966983156 456691003 426066268 320020617 923027654 919544841 642240868 220340107 16055110 852770909 61211582 519621831 689198795 827550539 814099675 440718102 398684152 736396916 43437226 915341446 415017344 386314161 523705129 119338530 240156112 351005643 165575875 902731261 358932045 682473363 118137560 853731685 332390608 229587576 476867299 544722104 315697125 178666448 915821834 565258691 135191334 670103372 141556475 369740775 247722223 698566361 271261235 737117498 425345686 283991517 426306462 56527799 359172239 622064572 759695734 19057535 602008373 530310464 115495426 472543807 898287672 366738350 205448079 904652813 443120042 255288334 257690274 753330593 689078698 267057840 976831110 974309073 389676877 957375396 981394796 444921497 447923922 602849052 727269544 632633108 51723919 587476636 216857294 799087550 969505193 773266695 760176122 671304342 220820495 453088093 210372056 777950478 669983275 133990364 58449351 664458813 160291607 119338530 121500276 11011036 179266933 470141867 698926652 315697125 557572483 616780304 135911916 164975390 628429713 874868757 793563088 124502701 333951869 391838623 788879305 592040322 415858023 985958482 222862144 576788003 238354657 920505617 448044019 269820071 22300154 583153144 885317196 101924465 471943322 136632498 727870029 76704095 320140714 968424320 507972422 201725072 971787036 463176241 563577333 838119075 98201458 985838385 303447231 789599887 655211344 268258810 191396730 751649235 59770418 341277786 497283789 805812982 789719984 715620135 954973456 633713981 102044562 240396306 604650507 686076273 216737197 836677911 239675724 570302765 103365629 896966605 584234017 853851782 998808861 314376058 930833959 770264270 82468751 263935318 398443958 259611826 980434020 110691546 161612674 351365934 960497918 409252688 678750356 99642622 991122653 309572178 5126283 761136898 632392914 847246447 22660445 120059112 155848018 938640264 524425711 276545503 852050327 35630921 150803944 551687730 408171815 85831467 305248686 679110647 197521677 601527985 155007339 252406006 31787817 206649049 11011036 89554474 489477484 930713862 962539567 865621288 606692156 331309735 295040441 339956719 905613589 524305614 845685186 77424677 252285909 604650507 24101609 140595699 797886580 621343990 431230439 651728531 965061604 523344838 976951207 14854140 356049717 352086516 633473787 222501853 78985938 496563207 793683185 988120228 669262693 572584608 745163997 626027773 469781576 335873421 972267424 521543383 162933741 481190791 23741318 433632379 914620864 480590306 858175274 86552049 316177513 97841167 580991398 63133134 37312279 817582488 259731923 580150719 367579029 296961993 94598548 751168847 841241597 64934589 231268934 438196065 693282093 848567514 880513316 62892940 118137560 414296762 321581878 218058264 191997215 975269849 109490576 744323318 216016615 288435106 582072271 557692580 510974847 565138594 125703671 229587576 911618439 762097674 327346534 747205646 681272393 288675300 971666939 90275056 943564241 698206070 863819833 295640926 374304461 501246990 707813830 449485183 191516827 748286519 628189519 272942593 350285061 757173697 654010374 384872997 112853292 671064148 786717559 967943932 658814254 534033471 634794854 642601159 944525017 733994976 794884155 663377940 219859719 941162301 317738774 625427288 750808556 974549267 110571449 81507975 641640383 738078274 944164726 401566480 624346415 386314161 20738893 113693971 693642384 15814916 932515317 286873845 795484640 725828380 285312584 734355267 489957872 467379636 883515741 452247414 800288520 24341803 198362356 961578791 629870877 763418741 745524288 568861601 504129318 90154959 286873845 828030927 262614251 902130776 619782729 353647777 681032199 928792310 400365510 562136169 742401766 355088941 764019226 210612250 900329321 69498275 136272207 175183635 486475059 29265780 455610130 703730532 687997825 811577638 983796736 513256690 67216432 709375091 662417164 163534226 755011951 871626138 395561630 195720222 580991398 297442381 377066692 273182787 574025772 529349688 841481791 881714286 720664209 56047411 319059841 940321622 226705248 706612860 149723071 827310345 556371513 394961145 341277786 626147870 505690579 231749322 914380670 574626257 953532292 925309497 257450080 391718526 657973575 798366968 361213888 102404853 76343804 803290945 911498342 951250449 79946714 470622255 557332289 393640078 930353571 322782848 154767145 215416130 170379755 796565513 956654814 878952055 695804130 158370055 342118465 800528714 298403157 636115921 576427712 152004914 411414434 627228743 513136593 624106221 155007339 281469480 825628987 519021346 272462205 860216923 690760056 539557933 753570787 214095063 807013952 589758479 6567447 762698159 844364119 433272088 542680455 419100642 280388607 820464816 670463663 748526713 880993704 569101795 448404310 519261540 756333018 430870148 19898214 908736111 974188976 846645962 596844202 821185398 559734229 936118227 435313737 214935742 899969030 230308158 614258267 868743810 656412314 871385944 445401885 702289368 218778846 591319740 447083243 145279482 441438684 243759022 30466750 744443415 728950902 659775030 699286943 195600125 425345686 19778117 475426135 556371513 78265356 3805216 486955447 519741928 377186789 830673061 747085549 645603584 493800976 404448808 211212735 296001217 995686339 823707435 367579029 422223164 785756783 432191215 432191215 516619406 782153873 192117312 740960602 15694819 870665362 980434020 679470938 658333866 723306343 388716101 941642689 255768722 112012613 952691613 165695972 350525255 35991212 771345143 706853054 723306343 142156960 412014919 883275547 228506703 870305071 235472329 932755511 733754782 322542654 53885665 394120466 778430866 819383943 211813220 848927805 846165574 402767450 127264932 880153025 764379517 928672213 277266085 743122348 934917257 493680879 274503854 409612979 738438565 326746049 168097912 182629649 587236442 688358116 251325133 787197947 274744048 680551811 615339140 982355572 697125197 639358540 30466750 805332594 699407040 855893431 389917071 817102100 440718102 677429289 251925618 192357506 108409703 725347992 63013037 327226437 549285790 803891430 723066149 592280516 692081123 390517556 180948291 223222435 484913798 582912950 750688459 581351689 813859481 572824802 244959992 634674757 349804673 96400003 311854021 979833535 17856565 81387878 835597038 877270697 852650812 553489185 347402733 727749932 797766483 77064386 653650083 713098098 667941626 485274089 194759446 642120771 470021770 474105068 794283670 389316586 247842320 992083429 580751204 790320469 513136593 795124349 383311736 416218314 44878390 485994671 743002251 537756478 468940897 314616252 958336172 459933622 186352656 374064267 48361203 572824802 781073000 526467360 504849900 203526527 472663904 615699431 875108951 916542416 416458508 965301798 27104034 626748355 916062028 965782186 103846017 253847170 174943441 549405887 61331679 6207156 598885851 310052566 821665786 228266509 598885851 355449232 86071661 551087245 630111071 621584184 654370665 229947867 330108765 959176851 500886699 296121314 810616862 593721680 853971879 128585999 429669178 713098098 299724224 152725496 724147022 735316043 205207885 752489914 89074086 499205341 513496884 142036863 617380789 856013528 28305004 748046325 922888 534393762 154887242 158850443 881594189 314376058 934436869 186592850 41155383 630591459 327106340 410333561 449004795 279788122 757654085 123541925 342839047 463176241 536675605 620863602 134831043 984036930 584714405 462335562 858775759 14253655 124022313 619542535 470502158 524665905 638397764 130987939 326145564 762337868 707813830 961818985 837158299 408532106 727870029 712737807 585074696 978272274 672385215 822626562 49922464 436514707 647044748 12452200 710095673 657252993 230788546 520702704 73341379 745404191 142397154 402046868 956174426 685355691 953051904 621584184 148882392 891201949 953652389 741440990 554449961 302246261 541239291 121260082 579189943 740360117 32028011 281949868 367218738 430269663 627228743 206889243 277866570 32028011 768823106 106368054 503168542 928191825 697245294 401206189 527548233 915221349 503408736 391718526 756212921 589037897 65054686 580030622 621824378 6087059 536915799 121860567 843763634 201725072 695443839 749127198 302726649 289395882 994965757 99642622 486835350 270420556 502688154 798366968 713458389 775068150 189475178 464016920 911258148 148281907 311613827 616660207 256129013 920025229 333711675 399284637 851089551 301285485 969264999 662176970 906454268 608013223 838479366 356890396 636476212 700007525 813979578 539918224 164254808 767742233 31667720 149723071 500286214 182629649 64334104 45238681 625907676 487796126 805692885 909336596 444321012 848327320 709254994 93998063 162693547 367939320 645723681 833555389 797286095 436995095 495122043 301165388 5966962 605851477 422583455 296001217 26983937 426666753 10530648 340917495 420301612 105046987 757654085 203046139 151644623 125703671 539197642 138914341 358091366 566819952 305488880 716220620 972507618 501126893 154166660 993164302 353527680 796445416 222261659 758494764 220099913 570783153 723546537 74662446 681032199 917983580 700608010 627589034 255648625 325184788 206288758 604530410 865260997 799567938 762698159 285072390 19658020 236072814 474225165 190315857 320981393 22300154 871506041 510014071 730752357 607893126 633954175 509173392 498484759 636356115 207970116 633353690 776389217 956654814 314376058 953892583 725468089 446963146 673586185 495842625 462815950 840641112 655211344 186112462 842802858 926630564 51964113 695804130 324944594 253727073 453208190 332991093 67456626 532712404 447923922 983676639 211332832 935037354 948488218 828871606 772906404 260452505 727509738 916902707 993044205 159691122 690279668 792962603 495362237 423664328 383912221 60370903 649686882 372503006 121139985 680551811 295761023 336594003 602248567 927110952 137112886 771945628 40915189 659654933 745404191 453328287 276185212 181308582 530430561 276665600 967583641 975149752 439517132 928311922 977431595 194759446 482992246 848087126 522984547 138073662 163294032 611375939 205928467 565138594 362294761 315817222 538597157 879432443 774227471 194999640 677309192 792242021 261173087 838119075 676708707 633113496 346922345 947287248 435193640 362895246 10530648 907415044 337794973 287954718 483472634 109730770 575466936 35510824 191396730 555771028 562856751 269339683 34189757 907895432 858655662 968784611 883755935 228987091 859856632 310292760 39353928 636716406 268258810 461855174 78265356 546643656 409132591 443960721 233310583 36111309 646924651 500286214 79226132 76944289 715259844 596844202 50522949 883275547 510494459 55927314 537035896 453808675 29986362 421982970 635275242 762457965 219739622 801249296 283150838 423904522 819864331 960618015 956774911 822746659 774467665 925669788 109250382 393880272 544241716 965301798 26623646 873427593 517820376 859856632 963740537 168938591 922307072 61691970 907535141 47880815 208690698 847246447 605130895 259611826 848087126 106127860 914380670 780832806 381390184 353527680 523224741 384993094 783234746 19177632 207970116 357610978 182149261 869584489 293118889 780352418 34069660 280148413 362655052 133269782 712017225 276545503 18937438 537876575 542440261 820344719 973108103 496563207 234511553 984157027 369020193 900929806 636476212 765700584 455490033 328547504 84990788 90875541 404689002 219139137 393640078 411174240 302366358 482872149 415497732 453088093 268859295 809055601 994485369 101564174 988000131 855292946 356049717 746725258 93998063 790560663 291197337 105887666 682713557 48241106 51123434 865501191 666260268 316177513 744803706 202085363 481791276 711056449 592881001 890961755 132309006 57128284 199803520 943564241 286753748 268018616 163654323 440237714 945725987 813619287 126544350 289756173 768582912 178306157 142277057 792362118 374184364 477948172 916902707 409252688 132429103 365417283 359052142 395321436 150683847 119218433 85831467 453568481 383912221 785876880 556371513 156688697 260212311 809295795 965301798 597444687 273182787 747806131 613177394 438075968 188754596 768102524 226705248 5726768 904772910 195960416 394841048 92797093 981995281 62172358 848087126 182389455 944525017 880633413 916902707 753450690 115735620 459333137 328787698 469541382 763178547 973108103 892402919 153926466 127505126 72981088 486354962 205327982 298523254 396282212 287834621 891081852 932995705 994845660 295280635 463536532 823947629 600687306 382951445 330469056 649206494 545923074 946566666 209171086 214575451 620743505 746965452 789840081 801969878 950409770 827070151 349204188 346201763 924829109 166896942 709615285 876670212 841721985 673946476 364096216 442759751 694723257 648125621 832594613 790320469 855893431 946686763 272342108 762337868 315096640 880393219 6927738 110211158 354008068 242918343 295400732 417899672 353647777 740720408 576788003 818783458 609454387 420301612 398443958 847246447 417058993 962659664 962659664 969745387 191877118 981634990 945725987 915821834 154887242 489597581 274023466 462095368 975990431 574386063 698566361 646684457 208330407 476146717 480109918 537756478 462215465 188394305 102284756 276665600 390037168 282430256 871025653 64454201 563457236 217577876 626748355 250724648 838599463 396642503 642000674 861177699 363735925 427987820 924108527 146360355 143357930 242918343 437595580 565618982 143958415 549525984 389076392 576427712 762578062 263454930 730872454 861537990 444681303 516139018 217457779 917383095 477587881 452127317 668662208 962779761 942243174 422823649 657613284 736517013 457891973 724387216 375505431 487315738 287114039 642360965 337554779 434232864 364936895 609814678 448164116 875469242 265856870 595403038 962899858 81868266 170019464 939120652 247722223 412014919 66375753 714419165 259852020 432551506 955213650 112733195 185632074 345841472 412014919 602608858 379468632 535114344 963019955 230308158 596363814 9569872 196320707 369500581 242317858 942843659 294680150 972627715 26863840 428107917 479629530 620623408 290596852 824668211 99522525 743963027 130507551 837638687 467499733 506891549 763538838 307170238 929512892 76103610 639358540 579189943 972627715 915581640 461374786 785756783 628189519 85230982 564898400 665419589 60250806 991723138 305849171 307890820 902731261 299003642 324103915 286993942 133029588 124622798 361213888 684274818 32508399 920265423 755972727 963140052 509893974 94718645 277386182 357731075 648966300 317738774 592280516 711296643 323263236 758014376 230908643 221180786 487555932 692681608 60250806 105046987 724987701 83309430 332270511 446843049 607652932 531031046 398323861 336473906 871866332 237994366 795484640 773266695 393519981 274623951 728950902 352927195 242918343 648606009 841361694 160651898 559133744 857334595 612937200 159931316 307890820 596123620 653770180 289515979 729311193 774107374 95319130 446722952 193798670 976590916 808094825 277866570 882675062 852891006 73821767 780952903 265016191 860937505 480350112 64574298 155607824 690519862 841361694 79106035 819383943 610174969 110571449 944404920 681512587 172781695 23861415 377787274 989921683 927951631 610775454 355449232 724627410 228746897 271141138 71059536 482031470 351966419 422223164 359292336 122340955 109610673 66135559 905373395 800408617 137713371 775548538 27824616 917262998 692921802 604050022 822266271 46079360 438796550 938640264 417779575 697365391 107929315 127865417 202805945 2123858 448524407 697245294 125583574 796445416 523224741 242077664 654490762 497283789 312454506 530790852 736036625 749127198 278707249 517339988 430149566 20979087 702769756 520462510 147441228 273302884 958696463 252406006 23981512 761256995 115495426 67576723 633954175 167737621 548685305 878471667 314376058 817462391 961939082 226945442 43437226 419100642 349804673 775908829 582192368 373944170 693402190 646444263 704331017 246160962 998688764 798487065 596964299 868743810 919424744 940081428 876069727 78385453 550366663 939721137 480350112 205207885 473264389 314976543 854212073 431830924 949448994 637316891 898888157 297202187 37432376 645963875 324103915 528989397 248682999 172541501 234991941 74422252 643922226 92917190 707213345 523585032 958936657 59530224 856614013 425705977 586635957 293479180 498124468 906454268 522864450 401806674 253606976 580991398 637316891 730271969 331790123 687157146 859856632 444801400 921226199 306209462 437715677 939841234 678630259 882795159 599606433 873187399 940081428 836197523 865381094 979112953 335272936 320020617 389196489 798967453 674787155 103725920 313054991 312454506 700968301 838599463 392559205 933596190 793442991 602728955 254567752 208570601 450926347 888319621 813979578 243879119 172661598 854932655 508332713 254207461 429068693 36231406 366378059 865621288 296601702 460894398 75383028 817102100 231148837 4405701 333711675 830552964 130387454 477347687 760536413 171340531 171820919 533192792 565859176 877751085 924228624 665659783 441198490 164495002 476627105 302606552 49562173 810016377 966622865 458852749 861537990 149122586 755612436 330108765 283991517 249523678 102044562 508452810 895765635 93757869 110931740 876069727 185151686 365777574 328787698 260452505 796085125 514457660 702649659 215656324 95799518 500886699 959777336 127144835 786837656 216016615 430629954 285552778 179266933 275945018 238234560 917262998 885557390 530550658 627228743 536075120 907174850 245440380 239675724 466659054 255288334 767502039 608493611 425105492 233911068 903091552 861658087 437115192 825749084 17256080 126304156 393519981 226465054 393039593 129666872 265136288 924949206 198362356 289275785 254567752 386434258 323503430 937319197 292518404 441438684 732794006 427387335 444561206 642240868 291557628 567060146 923508042 62412552 278346958 378507856 118257657 592400613 879792734 836437717 979713438 987039355 950649964 782153873 815901130 530670755 677309192 253727073 318339259 968424320 388716101 946686763 195840319 839680336 92917190 757053600 180708097 692561511 999049055 47640621 757053600 710696158 229707673 356410008 992443720 906934656 502568057 974429170 473744777 346321860 746725258 144919191 219019040 287954718 365657477 764859905 660976000 235352232 36471600 927591340 992203526 975750237 817582488 642481062 61331679 773987277 673706282 744323318 788879305 642841353 915101252 993404496 17976662 681872878 981154602 669502887 851930230 828030927 932515317 970105678 878591764 234751747 751409041 702769756 56167508 41395577 613657782 280388607 358811948 743602736 94118160 7888514 152485302 579069846 888920106 966983156 848927805 527788427 739639535 297682575 874508466 123061537 295881120 973108103 825148599 54606247 55927314 299123739 618701856 355209038 176504702 940561816 50643046 978632565 796325319 94718645 575106645 3204731 478548657 313775573 243038440 173862568 65054686 246281059 776749508 266577452 658213769 710576061 164975390 933596190 917983580 779511739 801849781 53645471 719583336 837038202 619062147 671784730 637436988 783595037 574265966 30947138 123421828 749007101 544962298 145279482 43317129 915221349 206048564 257570177 993404496 334672451 66255656 201725072 832594613 38032861 432791700 944164726 38273055 435914222 251445230 714539262 634194369 125583574 990522168 55446926 845925380 474225165 650887852 340677301 447563631 994845660 28665295 116456202 7047835 759215346 261893669 789239596 889280397 900449418 60010612 876670212 367699126 965421895 663858328 133630073 423664328 893363695 479629530 109490576 325064691 514217466 426306462 593361389 127745320 778791157 722465664 67096335 62532649 27104034 959537142 1163082 528148718 48121009 702649659 998928958 738438565 336714100 320260811 413696277 815901130 102164659 200043714 494641655 721264694 24341803 487075544 877390794 452007220 355809523 976951207 643081547 525026196 533673180 480109918 921226199 859976729 155968115 414296762 815300645 993524593 316177513 800048326 37552473 140235408 525626681 224063114 801369393 694603160 461735077 242317858 815180548 729791581 97120585 681032199 494641655 249043290 799567938 449965571 434112767 668301917 249883969 166656748 393039593 542320164 173141986 975750237 198722647 901890582 460774301 755492339 358932045 320380908 549405887 576067421 260812796 136392304 572584608 881714286 355088941 178065963 981875184 488036320 649206494 12692394 70579148 113693971 19057535 992203526 121980664 841481791 142997639 167017039 646444263 564538109 459573331 946206375 56167508 624226318 293238986 352687001 292998792 958936657 869704586 648966300 210011765 487195641 939480943 425225589 761256995 651608434 780832806 342959144 617380789 759095249 371422133 484793701 752129623 274864145 49682270 771345143 43317129 145639773 55567023 951610740 78745744 99882816 144318706 900569515 225744472 959296948 672385215 536075120 130507551 390757750 270420556 645963875 4645895 120899791 35390727 207609825 166056263 62052261 342598853 80066811 167017039 815180548 925069303 488876999 915101252 242077664 652929501 19297729 562856751 257570177 27464325 655091247 619182244 809055601 433392185 907655238 40314704 186712947 603329440 90034862 654490762 511094944 143838318 335633227 455129742 923628139 809175698 675747931 676468513 537396187 716580911 465698278 312454506 135071237 248682999 973708588 10770842 650047173 392319011 179387030 998688764 142637348 55927314 296361508 69498275 816501615 269699974 332870996 151044138 246881544 966742962 206769146 331790123 823707435 949929382 344160114 561535684 261773572 669863178 962179276 343319435 484673604 385233288 441919072 900209224 276065115 259731923 353167389 32748593 282670450 554690155 464857599 319420132 356049717 446362661 980193826 588317315 495242140 774467665 569101795 83549624 444200915 74782543 836077426 920865908 221541077 802810557 832354419 385113191 390757750 823947629 548084820 80066811 64214007 677189095 659174545 305008492 888199524 231509128 401806674 456330712 966863059 359412433 53525374 682833654 907655238 268859295 612336715 18457050 476026620 607172544 539197642 747445840 141676572 156808794 110331255 378027468 365537380 990522168 920025229 444321012 763779032 518661055 801129199 111412128 806653661 959537142 570903250 886398069 752009526 183230134 122941440 430269663 265016191 684635109 839440142 581111495 328547504 609334290 431470633 906694462 129066387 934196675 884116226 602608858 70939439 824428017 252886394 914740961 845565089 81147684 982115378 940441719 995205951 580511010 165695972 48121009 423664328 782033776 251805521 436754901 125463477 674787155 125703671 424505007 955453844 643682032 811937929 191396730 283991517 135911916 701808980 380429408 426306462 946566666 663738231 446242564 166896942 532952598 469060994 697245294 848687611 26503549 485033895 883755935 923628139 770864755 965181701 124862992 912459118 477587881 520342413 137353080 615579334 480109918 595162844 565739079 225384181 46920039 204967691 28905489 212413705 994004981 195720222 361454082 281829771 808935504 722825955 464016920 306329559 895525441 238835045 388596004 943564241 949809285 802791 525626681 226465054 933115802 582192368 371181939 751529138 277266085 284231711 900929806 703850629 362294761 561535684 711176546 278827346 450325862 992443720 440357811 567180243 476026620 294680150 635755630 501126893 684755206 409853173 7528223 741080699 928311922 3084634 961338597 964941507 633713981 398203764 394120466 657012799 7768417 424625104 48961688 784195522 228866994 13172782 561535684 329868571 617380789 178426254 830072576 1403276 746605161 359292336 820705010 837158299 695684033 193438379 170259658 261533378 965782186 856493916 738318468 942002980 225864569 422223164 860577214 531271240 955333747 536435411 475666329 275464630 617981274 330228862 424625104 788278820 576788003 390877847 9930163 748646810 610415163 122941440 433632379 141556475 415497732 403367935 978032080 95799518 553729379 920865908 749247295 312694700 961458694 90755444 88233407 162453353 573905675 73221282 957975881 864780609 480830500 652569210 751649235 929152601 974549267 847846932 343079241 29025586 560935199 829472091 980794311 147321131 416938896 490798551 877630988 59530224 630351265 195480028 460173816 130867842 571864026 264415706 49442076 948248024 772906404 203166236 128465902 132309006 700127622 841361694 480230015 873787884 75863416 899248448 914020379 524185517 387034743 247001641 691240444 173982665 857574789 197641774 989081004 935878033 921946781 664939201 460534107 906694462 271141138 302726649 352206613 936478518 309331984 516018921 325424982 848447417 695924227 249043290 726789156 708894703 334312160 772185822 591319740 164374905 147201034 8849290 615579334 407211039 991603041 511935623 750808556 516379212 485994671 530430561 131828618 542079970 880273122 182989940 713578486 605731380 979833535 112853292 984877609 24702094 781553388 839440142 93397578 144799094 471943322 796205222 90755444 889280397 555771028 457531682 561655781 995806436 187193335 15574722 234271359 901530291 499565632 638637958 742762057 271021041 113693971 655931926 41515674 97841167 129907066 621223893 562016072 702169271 272822496 406490457 778430866 756453115 353287486 649446688 664578910 789960178 341638077 991482944 424505007 859256147 226104763 626147870 233550777 726548962 398323861 246160962 636236018 686316467 545082395 253967267 440117617 488636805 766301069 856253722 976711013 45358778 937319197 74061961 630351265 60611097 277866570 551327439 501487184 973468394 971306648 114174359 689198795 754171272 227185636 507371937 353527680 531871725 84030012 204727497 493320588 370101066 212053414 764619711 169779270 373103491 588437412 969024805 303086940 694002675 777710284 143838318 442999945 362534955 220940592 773386792 896486217 718142172 689438989 813499190 894324471 543881425 839199948 263935318 593721680 343919920 117657172 17015886 375745625 1163082 456450809 700007525 335393033 695443839 512536108 11971812 195359931 255888819 577868876 764019226 706732957 808335019 613657782 338635652 695804130 756813406 801969878 667221044 982355572 187793820 921346296 456330712 270660750 707813830 728110223 582912950 723906828 259972117 393640078 658574060 634074272 955814135 586876151 703250144 320140714 380909796 342358659 331189638 898047478 141076087 247121738 476266814 153686272 631672332 642360965 332630802 81628072 812778608 387515131 923508042 402287062 262854445 469060994 320020617 946326472 330589153 756333018 284231711 641159995 299844321 304287910 474585456 543401037 713818680 637797279 299604127 879072152 257930468 512295914 169899367 92436802 272462205 533192792 591920225 74542349 645963875 418980545 84390303 31427526 85351079 561295490 297682575 73821767 537035896 302366358 899488642 934556966 550246566 942723562 132549200 980434020 140475602 35030436 272702399 489237290 908015529 512055720 850969454 656052023 526227166 808214922 940201525 185872268 75623222 325785273 230788546 973348297 931074153 576187518 988840810 974309073 871265847 329268086 594202068 280508704 304408007 429909372 25903064 987519743 141316281 141196184 285072390 823707435 476627105 275104339 697845779 533072695 926030079 896486217 61932164 900209224 924228624 9810066 875469242 988240325 544121619 878831958 4405701 169779270 284832196 409853173 445281788 245920768 195600125 118257657 942483368 530430561 467739927 581711980 265856870 271861720 104686696 754531563 520822801 85110885 281709674 652208919 887959330 676828804 294800247 800889005 643321741 401566480 787197947 394961145 154526951 214215160 680671908 457291488 913299797 605250992 26023161 164495002 619182244 982235475 774587762 454889548 750568362 150323556 917383095 441798975 871626138 504849900 160892092 74422252 345000793 452607705 318459356 813859481 483712828 93998063 85591273 83669721 908856208 948007830 820945204 25903064 926390370 113333680 270780847 584354114 76463901 543641231 41875965 319300035 620383214 950409770 977071304 645003099 413936471 948968606 305008492 25782967 123662022 989201101 327466631 808094825 811097250 663137746 942603465 112493001 426546656 655451538 751409041 975269849 852650812 170860143 380789699 576788003 824307920 702049174 47640621 530790852 932875608 766781457 158730346 175183635 341157689 424985395 939721137 453328287 238835045 217457779 917022804 866341870 374064267 721384791 896846508 507371937 671784730 568621407 146720646 464617405 479149142 397002794 292758598 384392609 457411585 377907371 234271359 844484216 436754901 706853054 526347263 380909796 537516284 179867418 547364238 746725258 163654323 36711794 561295490 141316281 423784425 563457236 813859481 709735382 420181515 23140833 788639111 495001946 671784730 891682337 142517251 550486760 332270511 535114344 434593155 519741928 12332103 566699855 151644623 249043290 212293608 439517132 161732771 817462391 859256147 890361270 150924041 258290759 287474330 186232559 332270511 509773877 193318282 315937319 378027468 810496765 108169509 737237595 489237290 340557204 890241173 188274208 12091909 355569329 572944899 667821529 620743505 656172120 962659664 41996062 90154959 467379636 463896823 226344957 373944170 149242683 310653051 803531139 575346839 929272698 744323318 973468394 747205646 178546351 672145021 329147989 550126469 808935504 920025229 42956838 67456626 556011222 273663175 544241716 715980426 980554117 899969030 78985938 565498885 733034200 604290216 478188366 762457965 143838318 800768908 243879119 890481367 233190486 45959263 133029588 231989516 747085549 688238019 921106102 765340293 920025229 121860567 114654747 463056144 728710708 681872878 124142410 499685729 338035167 974669364 703850629 361454082 58329254 501727378 596604008 79346229 10650745 333591578 21819766 198002065 778070575 793923379 976110528 703850629 120539500 265736773 321822072 604170119 512416011 729671484 648606009 110211158 434352961 515898824 233670874 647164845 365297186 538597157 503648930 264655900 662417164 167617524 309331984 417899672 199203035 400845898 585194793 235952717 511695429 255168237 434232864 583513435 884116226 167857718 146000064 192597700 967703738 732794006 83189333 466538957 427747626 717661784 490558357 885197099 374784849 826709860 103966114 143718221 776869605 631912526 239315433 298763448 720183821 880513316 701208495 560334714 181788970 855052752 66255656 42236256 401086092 337074391 234511553 743722833 552048021 877030503 472663904 157409279 266217161 939240749 212773996 327947019 90395153 314015767 779271545 996046630 25422676 445161691 90635347 610174969 731953327 340317010 755732533 200524102 270420556 713698583 443480333 833675486 717181396 93277481 383551930 513376787 303207037 44638196 989921683 632392914 397363085 133509976 394720951 410813949 38152958 682473363 830552964 245080089 742762057 510374362 219019040 577388488 278827346 750208071 821545689 343199338 361454082 474585456 754171272 930713862 555170543 277626376 897326896 273903369 162453353 954252874 944284823 46319554 753090399 467379636 988600616 822626562 303207037 529830076 356650202 965061604 922787460 596123620 958576366 400365510 848087126 883635838 237874269 393760175 277866570 859136050 242678149 943804435 373463782 598165269 250484454 24702094 259011341 19537923 681272393 766541263 62412552 788519014 689198795 691720832 365177089 463056144 992203526 795844931 630831653 816381518 888079427 528268815 74782543 306809947 924588915 535714829 887358845 210732347 960497918 614018073 927231049 743722833 932395220 834396068 738198371 785876880 899248448 170740046 874388369 640079122 540398612 185151686 84510400 457291488 650407464 469060994 94838742 219019040 352807098 893603889 733514588 205327982 823227047 503288639 875108951 197281483 695804130 365056992 822746659 911618439 428348111 661696582 199563326 562136169 231869419 165335681 39474025 81748169 667221044 556611707 96159809 259611826 692441414 115375329 293118889 67696820 838119075 614858752 337194488 496923498 500166117 150683847 626628258 673706282 733394491 891682337 838599463 734955752 447323437 693282093 13773267 788639111 132549200 680551811 613657782 434953446 743722833 217938167 493800976 634794854 836077426 272942593 314736349 647885427 701328592 515058145 107208733 573425287 145399579 727029350 580871301 350645352 554209767 38273055 756333018 196320707 970105678 785036201 332991093 281709674 543521134 542920649 275824921 170259658 659895127 502087669 521663480 998208376 248923193 942963756 202325557 891922531 954252874 636356115 742401766 881714286 723306343 706853054 523224741 338755749 291557628 777950478 414536956 994725563 265376482 696284518 46679845 411774725 283991517 588077121 755132048 472423710 226465054 315336834 243158537 30706944 136272207 195600125 957015105 919304647 814700160 258771147 208450504 233911068 318819647 305608977 984997706 389556780 761016801 451767026 629990974 542800552 744923803 586275666 618461662 811337444 151644623 454289063 827310345 352807098 371061842 585194793 758614861 866101676 848207223 285432681 39113734 770504464 271981817 631792429 576908100 448164116 975990431 575226742 583153144 718382366 159210734 704691308 780232321 553609282 883155450 191036439 265016191 989681489 509773877 616059722 485754477 729551387 91355929 523344838 844484216 130387454 336473906 722705858 726789156 463416435 240996791 545202492 383672027 596964299 324704400 542800552 647405039 92556899 379588729 138914341 325665176 54486150 322403 974789461 893363695 540999097 239435530 400485607 942963756 131948715 109250382 160531801 836557814 201484878 803531139 938880458 301645776 500526408 348123315 988480519 717541687 939601040 403488032 920745811 565618982 58089060 747926228 142036863 315937319 628910101 491519133 898647963 695203645 682694 63973813 625787579 166056263 852891006 151284332 591559934 571023347 466659054 255168237 761497189 236793396 206889243 372743200 142757445 818903555 378988244 767742233 649446688 38393152 205448079 305368783 896005829 580751204 127745320 854452267 164014614 985718288 16175207 709615285 394120466 673225894 642120771 28064810 688238019 783474940 425345686 302366358 16055110 748526713 362775149 103245532 514217466 353887971 701688883 616179819 372623103 324224012 171700822 627228743 884956905 178786545 138794244 914260573 430389760 699887428 343439532 196801095 429188790 653289792 916422319 230908643 921226199 68417402 880633413 876189824 298523254 203526527 220460204 95919615 334432257 326986243 63973813 350405158 120899791 905133201 395081242 656892702 917262998 721024500 467499733 731953327 736997401 640199219 205808370 933355996 133509976 646204069 682473363 38393152 516979697 857454692 98801943 500766602 912819409 707333442 64694395 510734653 479509433 137713371 459933622 727149447 592040322 226705248 267658325 220340107 145879967 719943627 2243955 820464816 864900706 757894279 93517675 546883850 143357930 322302460 515658630 107208733 712617710 161612674 69978663 123662022 759335443 993644690 152365205 679110647 936358421 361333985 964461119 643321741 324584303 260812796 165575875 670343566 700968301 117777269 44037711 194759446 682833654 839199948 898888157 926390370 638637958 728950902 152605399 957615590 870425168 268138713 729191096 712497613 309452081 247602126 701929077 126904641 312694700 435073543 272702399 601167694 5966962 48121009 6927738 396402309 549285790 704811405 472904098 527668330 885917681 777109799 170139561 88593698 557092095 934797160 925549691 75503125 536315314 81147684 32388302 373343685 951250449 455369936 989321198 434112767 382951445 926750661 895645538 453928772 274023466 576667906 202685848 645123196 220099913 752009526 456210615 283751323 604530410 263334833 722105373 950289673 307650626 630231168 225504278 265616676 814459966 334792548 416578605 340317010 786357268 520462510 657613284 504849900 186833044 820344719 131228133 103005338 140715796 613177394 813379093 706012375 178065963 417899672 673826379 851569939 188874693 320020617 716340717 136872692 195480028 174943441 821665786 598405463 983436445 210131862 132429103 890000979 834396068 62772843 982115378 377547080 172541501 798126774 692441414 428468208 330949444 883275547 915101252 955814135 415257538 308010917 64814492 944284823 207970116 612096521 456450809 956774911 463536532 830793158 673826379 211092638 418019769 451046444 119458627 754771757 835356844 739279244 398323861 941402495 746244870 952091128 189835469 580991398 326265661 875949630 701808980 781913679 679591035 429188790 706732957 852530715 195840319 170379755 101444077 958576366 549766178 259491729 240636500 382230863 174222859 191036439 477467784 973468394 226465054 574265966 686316467 38753443 138674147 314736349 110211158 630831653 201244684 927591340 424024619 385113191 239555627 349564479 87873116 458252264 387274937 558413162 935037354 414657053 211933317 821545689 211332832 138073662 293719374 545082395 372743200 262614251 776389217 807974728 920986005 969505193 294439956 190916342 728830805 97841167 693161996 562976848 752369817 633593884 849528290 782754358 851209648 226705248 492600006 980914408 776989702 141316281 376826498 497283789 216857294 354248262 491879424 749487489 175423829 439877423 840160724 4645895 460293913 613417588 309331984 630111071 104926890 633233593 483712828 871746235 309692275 985478094 512776302 230908643 218178361 321461781 974309073 720303918 980434020 875469242 672024924 582552659 80787393 189114887 680071423 138073662 313895670 48361203 896125926 821185398 892162725 841241597 700608010 382831348 378627953 894324471 750087974 253366782 387515131 763298644 957855784 364816798 472663904 643682032 441078393 682473363 211693123 985237900 686196370 554449961 363255537 884716711 213374481 477107493 432431409 778791157 171340531 76223707 542200067 991843235 495362237 666260268 441438684 766781457 734475364 115495426 824187823 492960297 42956838 739639535 948608315 210372056 631191944 853731685 975750237 788398917 116816493 526947748 599486336 476146717 640679607 288194912 192357506 787438141 884356420 54366053 709134897 279187637 100603398 224183211 715019650 839560239 62292455 291917919 301765873 301525679 355449232 576187518 987159452 387154840 61451776 314135864 809776183 132068812 521423286 501487184 155607824 575346839 150563750 149242683 883035353 619782729 511575332 502568057 743722833 792842506 858775759 453568481 598765754 898167575 994965757 418259963 780952903 114054262 663858328 442039169 798727259 375745625 954613165 64454201 949689188 632032623 913780185 315697125 558893550 699887428 481190791 833555389 727389641 834996553 573064996 956534717 425946171 172541501 894804859 380669602 573665481 26023161 69017887 137953565 798487065 932875608 745764482 174342956 778310769 993164302 216497003 920865908 294319859 864780609 478548657 54486150 84750594 406970845 379228438 229947867 442519557 242437955 4285604 698926652 234271359 487555932 632272817 214815645 891201949 196440804 987639840 190676148 693282093 356770299 184190910 438916647 654610859 201124587 912218924 173021889 439156841 802810557 707573636 455490033 860337020 394120466 485274089 373223588 870425168 746845355 640559510 412014919 469181091 290476755 935637839 439156841 925789885 701929077 101083786 32628496 266337258 490438260 5606671 336714100 854812558 403968420 821425592 640559510 88353504 515298339 27344228 961578791 390997944 247602126 544001522 646924651 386794549 159811219 263454930 60250806 680311617 959056754 646324166 851209648 205087788 851690036 978752662 115615523 347763024 569942474 538356963 225504278 572704705 168458203 964821410 684635109 414176665 678269968 913179700 567900825 3084634 189475178 216136712 918824259 805212497 835236747 814940354 689078698 202325557 642240868 130627648 46199457 837038202 274864145 718742657 133750170 246040865 926750661 615219043 292278210 128826193 893483792 821185398 762337868 304888395 319300035 131708521 2964537 221901368 925789885 794403767 950289673 566459661 494881849 615219043 81988363 603089246 370341260 707213345 513857175 915461543 169298882 347642927 555891125 148281907 430750051 883155450 715620135 359172239 414416859 304888395 308371208 831393643 268499004 949448994 442500 408772300 872106526 594442262 648485912 362054567 254447655 977911983 143838318 791521439 575346839 260692699 430629954 582672756 74061961 493560782 979833535 518180667 263815221 309572178 803651236 678390065 949689188 410813949 817702585 734715558 962179276 309211887 362294761 146480452 918223774 492600006 866942355 92797093 996046630 730632260 651248143 494761752 590959449 36711794 397002794 862378669 26863840 223582726 206889243 953172001 765700584 66736044 131108036 521783577 321341684 504849900 664819104 830673061 306209462 39353928 960618015 458852749 53405277 578349264 475546232 292398307 192957991 559013647 924468818 281349383 201484878 124142410 119098336 240636500 452487608 916422319 37912764 307530529 105167084 794884155 358932045 344520405 370101066 461735077 523945323 695443839 257209886 96039712 910057178 459933622 786477365 504489609 70579148 573665481 440117617 830552964 404088517 148522101 767381942 361934470 615579334 48961688 969024805 374904946 145519676 331309735 986078579 37912764 669983275 80066811 889880882 716941202 699046749 93517675 127505126 163774420 715019650 743722833 59770418 921226199 116216008 268739198 518661055 544001522 372142715 418860448 780592612 868023228 269339683 109130285 517580182 195359931 221781271 512055720 97961264 2964537 383551930 673706282 849047902 298283060 41395577 327346534 126904641 721024500 978992856 721264694 943684338 346441957 2844440 754291369 725468089 815660936 412975695 575707130 34189757 700608010 253366782 221901368 758855055 532352113 602248567 784195522 46799942 131708521 276425406 239075239 796325319 580150719 249523678 61691970 879672637 404568905 156688697 586756054 149122586 323983818 425585880 312454506 594682456 262374057 142036863 768943203 392439108 892523016 163654323 82228557 755852630 542800552 850969454 853971879 602728955 510974847 870665362 84270206 828631412 718982851 361093791 999649540 359412433 407211039 291077240 412615404 53525374 695804130 855653237 668782305 309211887 261653475 646324166 956174426 861417893 229347382 596363814 451166541 448044019 258530953 41996062 379468632 671064148 883395644 392198914 932275123 166776845 753090399 910657663 772305919 524185517 443120042 267658325 241957567 681632684 176504702 652088822 854091976 590599158 458972846 243638925 669382790 336714100 394841048 179026739 292038016 159811219 60370903 292158113 983316348 889400494 101684271 350765449 864660512 718982851 821665786 152845593 440838199 646804554 800168423 968544417 701808980 252766297 815660936 430029469 49442076 968424320 29385877 822986853 111171934 988120228 468100218 391838623 987880034 366378059 630591459 154046563 961698888 793082700 342598853 844964604 260932893 814339869 159811219 294199762 413936471 545802977 223102338 965421895 449965571 163534226 724267119 432191215 335753324 486234865 2484149 396642503 323383333 664819104 349444382 217818070 167257233 197881968 212773996 520942898 293839471 34670145 48241106 414657053 440237714 658453963 72740894 545442686 937319197 948848509 895045053 565138594 681152296 973828685 885917681 392319011 623265542 467139442 165455778 229347382 873067302 826349569 250604551 885677487 670343566 914140476 920625714 241597276 774227471 703009950 876069727 629990974 995806436 930353571 691840929 792121924 848447417 888199524 830913255 54125859 606812253 341517980 132429103 965061604 607532835 979473244 44758293 560454811 708654509 434953446 644642808 459813525 191636924 77784968 538717254 589878576 681872878 43076935 321701975 323503430 436754901 872827108 141676572 633113496 489477484 683674333 82949139 773747083 798727259 967463544 192357506 880513316 950409770 581231592 574626257 238714948 418139866 906934656 599486336 31067235 483712828 951010255 173982665 143718221 615339140 357490881 646684457 186472753 432431409 674186670 695323742 29986362 471462934 761977577 312814797 174823344 891802434 975389946 446002370 505810676 57608672 282190062 502087669 16295304 358451657 953172001 190075663 132188909 119939015 519381637 895405344 474465359 746364967 622184669 54966538 889760785 407931621 117056687 34429951 530550658 622064572 980313923 245440380 813499190 589638382 749847780 734475364 408051718 967103253 109370479 75503125 133870267 377907371 835717135 812418317 773146598 614018073 869104101 23621221 128946290 786477365 609694581 336473906 669743081 666740656 54125859 14493849 767742233 267057840 93037287 254687849 246521253 892763210 891562240 221781271 967583641 811337444 955694038 596964299 776629411 839320045 532352113 907535141 821545689 131228133 29866265 183950716 570422862 921586490 770264270 825989278 296121314 555530834 456090518 768102524 81748169 424745201 294560053 340557204 514697854 262854445 435914222 720424015 55687120 347402733 403127741 836197523 383191639 664458813 385233288 757293794 919184550 728470514 86191758 581952174 327947019 112012613 912579215 358331560 198962841 194639349 180227709 509773877 397483182 686196370 893483792 882675062 293118889 163173935 199923617 183350231 481551082 28905489 585795278 168218009 859976729 282310159 885077002 239195336 509533683 714659359 876790309 853971879 77064386 447443534 305368783 471943322 843763634 457891973 188034014 693642384 929392795 970225775 12332103 309692275 473864874 994605466 142877542 893723986 173382180 826709860 996527018 448284213 63013037 292398307 719703433 453688578 94958839 423664328 638758055 477587881 163774420 396642503 887478942 709134897 329508280 588317315 568141019 809896280 942843659 488876999 458972846 372262812 402647353 566219467 494761752 349324285 202325557 753690884 776749508 656052023 864300221 804011527 115855717 801129199 666020074 755492339 420181515 453808675 970586066 384152415 644522711 367218738 579069846 534513859 269820071 230308158 430389760 580150719 246761447 198362356 303447231 761377092 397603279 706973151 485033895 824187823 798487065 66015462 16415401 435433834 415377635 899368545 490438260 29265780 945966181 338515555 707093248 644402614 480230015 433992670 127385029 266097064 48361203 262374057 253366782 6207156 83669721 461374786 393880272 595282941 607652932 192717797 93277481 389796974 394360660 316777998 369140290 299243836 335633227 812538414 115375329 78745744 320380908 15094334 473384486 577748779 63973813 169418979 295160538 615579334 340076816 890721561 529709979 490318163 957015105 21819766 615339140 658574060 367579029 781313194 97721070 953772486 240396306 15334528 1883664 498484759 196200610 85831467 573785578 686436564 952091128 308971693 969745387 164855293 305488880 979473244 565018497 593001098 319300035 272822496 797165998 35751018 199203035 386434258 540278515 845084701 320741199 346682151 664218619 715019650 981514893 776389217 246761447 424144716 221060689 810136474 335633227 198362356 631432138 853611588 686076273 889280397 415017344 149242683 68657596 273182787 205568176 917623289 752129623 653890277 872707011 845685186 162573450 246281059 870785459 482151567 793082700 994485369 382831348 35991212 683914527 707333442 381750475 171340531 210372056 664338716 289876270 379708826 839680336 505930773 994965757 335152839 559614132 570663056 93397578 386194064 64814492 111412128 179266933 345601278 609454387 339956719 3685119 66135559 234991941 9930163 780112224 966022380 479389336 295280635 160051413 262734348 336594003 476867299 402166965 31667720 472303613 902130776 226344957 9689969 645123196 171460628 691240444 112012613 638397764 51003337 267177937 9089484 211813220 211573026 44157808 754771757 366738350 503889124 893723986 681392490 10410551 576788003 364336410 55446926 357731075 709134897 536675605 444921497 62052261 839199948 961098403 770984852 159571025 352807098 615459237 738558662 770984852 452967996 463056144 781073000 737838080 503648930 363735925 788278820 136032013 110691546 24101609 776989702 179387030 88113310 864420318 967103253 221180786 92556899 323743624 620263117 426186365 158970540 242197761 440838199 785756783 775548538 192357506 909937081 592160419 385833773 549405887 978632565 894324471 144919191 688358116 657853478 781793582 510254265 526347263 665419589 679110647 975510043 697485488 23861415 284712099 410813949 976831110 204487303 226585151 578229167 885917681 314856446 405529681 353887971 57488575 55687120 232590001 56047411 226104763 254928043 50522949 260692699 122821343 306689850 42116159 620383214 826589763 360012918 928071728 688478213 164495002 719102948 347402733 671304342 362655052 38753443 469181091 571143444 583033047 181548776 460414010 746485064 785516589 24101609 458732652 934316772 2964537 484553507 549285790 552048021 649206494 808455116 827190248 910777760 850489066 754531563 519141443 922307072 249523678 678750356 649686882 903451843 237874269 657973575 608493611 976350722 187793820 39353928 949088703 120539500 957975881 683193945 561175393 23621221 898167575 589998673 63013037 290837046 441919072 949328897 787558238 423784425 688958601 23741318 427267238 534513859 154166660 513256690 475666329 397963570 880633413 917503192 845324895 53044986 286993942 518420861 362775149 250004066 350885546 247722223 160651898 423304037 414176665 771225046 389917071 420661903 398203764 677549386 469421285 953772486 345000793 463536532 421622679 830552964 99522525 874508466 325064691 766781457 654851053 234631650 305969268 305368783 577508585 782033776 168818494 81628072 661696582 622304766 226945442 858775759 545202492 531511434 782634261 725227895 636236018 613297491 284952293 154286757 35150533 510254265 446722952 457531682 37072085 179146836 543280940 915101252 341397883 921946781 900689612 141196184 662297067 859136050 325424982 477828075 208330407 514938048 764259420 106968539 618221468 531031046 989561392 565739079 209291183 34790242 953532292 267418131 518901249 902010679 98922040 438316162 508332713 527428136 661576485 454048869 768823106 111292031 371061842 644042323 742161572 872947205 292398307 345721375 731232745 57008187 114894941 452247414 874028078 716941202 221901368 255768722 692801705 201364781 414657053 334071966 484673604 460053719 235592426 7167932 488156417 141556475 531271240 152845593 850849357 967343447 644282517 514577757 498364662 77064386 113934165 126904641 915941931 524065420 202685848 617260692 915101252 869824683 8729193 407931621 696164421 173262083 361574179 451646929 212653899 247482029 488156417 221060689 970946357 900209224 197521677 118978239 45238681 941522592 308731499 308971693 548925499 881954480 387995519 541359388 325304885 602128470 992683914 137593274 698926652 522504159 626027773 190075663 88233407 673345991 987159452 726428865 370461357 647885427 522384062 263454930 895645538 675387640 241597276 336233712 546163268 231989516 655811829 251084939 393279787 914620864 937199100 437355386 183710522 439877423 439757326 436394610 125943865 345721375 845324895 246401156 374064267 983316348 776269120 275344533 701808980 462575756 876430018 787918529 877751085 991723138 530190367 766781457 938400070 934556966 840881306 594922650 743002251 475426135 284592002 681872878 41515674 300204612 484673604 386554355 613417588 221661174 741921378 805933079 764739808 709855479 13533073 424505007 239315433 726428865 575707130 682953751 762217771 337554779 763178547 879192249 764739808 179627224 936478518 318819647 855773334 646083972 83789818 510494459 820104525 197161386 420421709 101083786 924949206 120419403 995446145 977071304 978752662 940922107 575466936 534874150 156808794 136752595 486114768 428107917 623385639 100483301 644162420 499565632 757654085 321822072 75743319 745284094 815420742 278346958 585314890 420061418 292878695 857935080 319660326 878831958 862859057 327706825 819143749 405289487 772305919 331189638 516259115 828511315 428828499 996527018 566339564 2123858 904893007 295400732 633353690 790680760 131948715 244119313 611736230 814219772 640319316 681512587 691961026 785516589 706372666 63613522 187193335 12572297 780832806 95319130 232830195 38993637 591199643 569582183 964220925 173021889 118377754 974068879 365297186 67696820 885677487 663257843 66255656 503408736 34069660 161852868 663498037 197641774 12572297 346562054 733874879 818543264 447683728 320140714 4886089 869704586 593241292 426066268 296841896 452487608 301525679 122340955 317978968 910177275 884476517 844724410 31667720 302006067 19898214 50042561 673345991 860577214 233070389 164014614 15694819 25302579 800408617 143598124 313895670 983556542 845444992 334192063 951610740 452247414 363015343 459573331 74902640 637316891 236793396 28785392 950289673 695924227 930833959 962299373 927711437 770984852 86792243 127985514 533072695 908736111 159450928 148882392 968784611 182389455 69978663 582072271 461254689 410934046 926510467 909696887 952931807 529830076 290716949 310052566 72260506 833195098 789479790 576667906 851209648 405769875 619782729 202306 231148837 363015343 385713676 945605890 918944356 154406854 603089246 279307734 990281974 657853478 555050446 824307920 153446078 703490338 727149447 927231049 841962179 233190486 334432257 509053295 712377516 551327439 559494035 94598548 793322894 154406854 196320707 977551692 753931078 938880458 878591764 333591578 689679183 443240139 387755325 328667601 631312041 798487065 312094215 288675300 387875422 111532225 967703738 435794125 231869419 505330288 749367392 886277972 515658630 68657596 404088517 514097369 703130047 365657477 71660021 238234560 737477789 651248143 560935199 662417164 129426678 48241106 680792005 266937743 379108341 979353147 430029469 788158723 932275123 235952717 88833892 1403276 163414129 246281059 804011527 516499309 779511739 402767450 282670450 715139747 822506465 668662208 703610435 354368359 641760480 373824073 616540110 88713795 879192249 765940778 696644809 155607824 217938167 311013342 348243412 444200915 968064029 562016072 544481910 539317739 376706401 800768908 126184059 384872997 390997944 35991212 900929806 585194793 705652084 590238867 823106950 244839895 576667906 299604127 979353147 144558900 54366053 916902707 356650202 896246023 544481910 538717254 364576604 76343804 804612012 100002913 864060027 587596733 610054872 530550658 68057111 159090637 58089060 79346229 714659359 985958482 731953327 247121738 614978849 96640197 474345262 365177089 796205222 467739927 288435106 63853716 131468327 242918343 312934894 710576061 796085125 839800433 698566361 732073424 474945747 159931316 198002065 859496341 284592002 678029774 744803706 971426745 585194793 266097064 589518285 207249534 609454387 653169695 208330407 277506279 923988430 549045596 227906218 154526951 726308768 2844440 471342837 827910830 421502582 195480028 748887004 413816374 58569448 494881849 757654085 213014190 120419403 282190062 404809099 573425287 436034319 831273546 67816917 345721375 78265356 290116464 188754596 980073729 369980969 367098641 615339140 351245837 421862873 867662937 144558900 717781881 476987396 65414977 629990974 230908643 942123077 674787155 217818070 313775573 296721799 994004981 35751018 663137746 989921683 314376058 129666872 711176546 107809218 757053600 816141324 976951207 161732771 880273122 611736230 915701737 303327134 897567090 907655238 141796669 151764720 609574484 646204069 296361508 66495850 389316586 686916952 306209462 124862992 122821343 280628801 484793701 431590730 715500038 998448570 25182482 116336105 711296643 341037592 280148413 755612436 371782424 904052328 504249415 200764296 882314771 406610554 71299730 995326048 694963451 657493187 261293184 40074510 443600430 434352961 446362661 375505431 235832620 71299730 465698278 232830195 711056449 939480943 166056263 509173392 450926347 924108527 746364967 30947138 167377330 87873116 948248024 917743386 410813949 860577214 646324166 512536108 425105492 355209038 682473363 59650321 451166541 926630564 598285366 373824073 671184245 651728531 881353995 577268391 504249415 454769451 560094520 948248024 38273055 160171510 469301188 266217161 848807708 132188909 770024076 87753019 717661784 347042442 132068812 710576061 862859057 892162725 926510467 619542535 976230625 217217585 673345991 341878271 326746049 310412857 512175817 426306462 454889548 824307920 623385639 777830381 272702399 101684271 192837894 661216194 176024314 32508399 565859176 943083853 998088279 717181396 256609401 126424253 929392795 407451233 126904641 314976543 311854021 974429170 565018497 496082819 838119075 864900706 203526527 305969268 596964299 576667906 550006372 474345262 284231711 361814373 590358964 686556661 892643113 171941016 310172663 355088941 117777269 774467665 200283908 223822920 574386063 547844626 845444992 944284823 283991517 757654085 274864145 126184059 2964537 73221282 135191334 734955752 70939439 656052023 927591340 133630073 955093553 394961145 996887309 954372971 654971150 191396730 871866332 112493001 993764787 831033352 699166846 90515250 824307920 117657172 527187942 30226556 8609096 663738231 682953751 2604246 980073729 924829109 131948715 127745320 193198185 554449961 37192182 131108036 542560358 225264084 261893669 672265118 867783034 871385944 812778608 357370784 737958177 637677182 838239172 154526951 235472329 312814797 155848018 753690884 374784849 895285247 437355386 806773758 681272393 5606671 882795159 850729260 560815102 484673604 339716525 430990245 958696463 883876032 592881001 559974423 834756359 417899672 527187942 787678335 116456202 604530410 884596614 93157384 909216499 189355081 535234441 473144292 794283670 765580487 626508161 80907490 373824073 933716287 675027349 218538652 599846627 723786731 892042628 130987939 592520710 934917257 793803282 450566056 647765330 492479909 813138899 978632565 966863059 453928772 400725801 61331679 552408312 546283365 2123858 600807403 406850748 892042628 984277124 559974423 413696277 595643232 532712404 979473244 660855903 19658020 633113496 703370241 429549081 770024076 597324590 441318587 730031775 700608010 990522168 938279973 925429594 590238867 592520710 324824497 457171391 802930654 539557933 291317434 613777879 908255723 364096216 490678454 998328473 313655476 42356353 806773758 298643351 791641536 605491186 931314347 143958415 990281974 153806369 635395339 505090094 474105068 326025467 77544774 19057535 644042323 255288334 36231406 554449961 553008797 188754596 162693547 532352113 335272936 497644080 332030317 949208800 246040865 105167084 833795583 63013037 948848509 957375396 216136712 171700822 340797398 831513740 60851291 208810795 666380365 554329864 96520100 857094401 462335562 322062266 997727988 649446688 472063419 11731618 229107188 994245175 39113734 454769451 946686763 586876151 728470514 447323437 37312279 46559748 668061723 121139985 884476517 939841234 575707130 733394491 967343447 786597462 699166846 121500276 253126588 963620440 15694819 949328897 94238257 157169085 397483182 112372904 423063843 60611097 605130895 889280397 685956176 763418741 271501429 278947443 131468327 786237171 271501429 446843049 676948901 439397035 123061537 826589763 997848085 199082938 753690884 329388183 611616133 832354419 211332832 181428679 359652627 34069660 367939320 108769994 420541806 117657172 597204493 571263541 506291064 895645538 766180972 259491729 474345262 785516589 411894822 676948901 274623951 462335562 634074272 672985700 364936895 105887666 447323437 422103067 793442991 888079427 64574298 811217347 784555813 566940049 949569091 116216008 608733805 152485302 186232559 430750051 77905065 590839352 267898519 274263660 650047173 295640926 359172239 765340293 37072085 519621831 320380908 721745082 441919072 66976238 350765449 844604313 557692580 447203340 40554898 61691970 997247600 996046630 64934589 403007644 71059536 600807403 774347568 827430442 332030317 652569210 224663599 205808370 262013766 36471600 255168237 161492577 578829652 300564903 363135440 558413162 574025772 775788732 650287367 177705672 81868266 790680760 353167389 236192911 974429170 662897552 438676453 227425830 666860753 825148599 64574298 220099913 394360660 959417045 990762362 539798127 494881849 463656629 358571754 518661055 929873183 213134287 640319316 657012799 727029350 686676758 154286757 305128589 313175088 390157265 511335138 495122043 14974237 380069117 269459780 272942593 638397764 416218314 975510043 806413467 42836741 92917190 145879967 365297186 687757631 185031589 233310583 973348297 691480638 134590849 990041780 648606009 316537804 383071542 893723986 966863059 711656934 988840810 523104644 931914832 318219162 43917614 404328711 348483606 216497003 596483911 290957143 524665905 32028011 920505617 9089484 440477908 90034862 747565937 110211158 945245599 588077121 118017463 209171086 175183635 203766721 314376058 283871420 563337139 69498275 572464511 93277481 862258572 526467360 907054753 715620135 8008611 231629225 662657358 226825345 614618558 148161810 401686577 955453844 486715253 504369512 898407769 158850443 863819833 565618982 152004914 686916952 957255299 1763567 918343871 406970845 334912645 605611283 690399765 91596123 872707011 682593460 506291064 552648506 509893974 941402495 518901249 307170238 360733500 279668025 456570906 596724105 432191215 890841658 772426016 816021227 573665481 398443958 555170543 380549505 545442686 228386606 758254570 650527561 469781576 179387030 162333256 782153873 130627648 543280940 15935013 195960416 206649049 950890158 379588729 569942474 368299611 307290335 90154959 406730651 416818799 232830195 214335257 237634075 703610435 872346720 759335443 324103915 267658325 239675724 335633227 228386606 540518709 648125621 766541263 88113310 477347687 121980664 34910339 567060146 155127436 996166727 29145683 358331560 148281907 374184364 366498156 836317620 779271545 790080275 364696701 723546537 492840200 850248872 692201220 165695972 764139323 160771995 452487608 736997401 987519743 7167932 119578724 824788308 519021346 445401885 478188366 223102338 587116345 854091976 163894517 249763872 442500 431830924 336714100 847246447 774707859 848447417 793082700 744803706 817222197 932635414 768342718 663618134 235232135 568141019 490198066 377066692 97480876 90635347 556251416 179387030 449965571 11851715 150924041 435794125 61451776 908736111 832354419 571503735 653529986 450926347 269099489 662537261 486475059 658574060 426786850 690039474 762457965 668301917 50763143 567900825 317978968 111292031 540398612 18697244 793803282 713098098 942963756 929032504 771104949 826829957 659895127 52444501 303327134 615579334 87152534 893003404 78505550 585555084 419941321 721144597 669743081 258290759 565018497 268378907 502688154 425465783 716340717 596363814 222862144 650407464 988000131 879312346 677429289 540038321 441318587 684034624 498724953 610775454 890841658 518180667 330589153 353167389 86552049 309812372 933476093 124262507 97000488 965902283 599126045 250604551 155607824 592400613 913900282 307050141 380789699 632392914 844724410 988240325 302126164 222621950 253727073 545322589 703370241 712497613 824307920 963740537 748766907 837878881 655091247 456931197 990522168 87272631 548325014 435193640 266097064 734235170 653650083 846285671 613657782 628189519 2604246 6087059 607532835 513977272 327586728 904532716 689198795 387875422 951010255 5246380 479989821 452487608 778550963 314976543 957495493 298643351 776509314 239915918 528268815 580150719 173742471 73221282 783955328 308251111 869584489 525866875 8368902 178906642 218658749 473624680 723066149 368179514 593601583 467980121 634554660 173382180 228866994 825749084 532232016 278827346 449845474 160051413 939961331 170980240 103005338 904772910 435073543 844244022 467139442 285312584 280508704 129546775 872947205 163654323 464737502 368179514 716460814 767021651 519862025 971186551 799688035 211693123 266217161 837278396 413095792 299363933 873547690 150203459 810977153 590959449 737237595 979112953 643441838 948248024 284952293 757293794 7528223 567900825 43317129 660135321 536795702 987159452 622184669 892402919 217818070 873307496 414777150 69017887 586275666 718622560 620383214 335393033 644162420 228746897 395561630 645963875 743963027 797766483 264775997 876189824 122821343 806293370 53405277 115375329 937199100 254207461 299964418 259731923 284832196 758734958 572344414 595523135 980794311 278467055 356770299 191396730 100483301 476146717 721264694 426186365 30226556 595162844 560815102 201244684 24942288 966262574 34309854 302726649 386674452 363735925 181548776 576067421 275224436 30827041 269459780 708414315 559013647 796925804 705291793 1523373 867783034 22660445 346201763 476747202 354848747 443960721 367939320 91115735 500526408 638157570 966863059 917383095 289876270 802570363 979713438 575106645 439397035 88593698 402647353 367098641 645843778 772426016 811577638 992683914 81628072 227185636 71539924 629390489 853491491 96760294 400125316 573305190 833555389 506411161 476266814 698085973 845444992 769543688 707933927 620623408 314135864 64574298 752369817 595763329 465938472 300805097 723906828 197881968 459213040 519741928 873547690 491879424 854572364 864780609 706732957 94838742 203766721 705531987 870064877 566579758 591920225 791161148 855653237 464617405 608973999 823587338 705772181 51123434 601167694 15814916 183830619 134710946 695443839 913419894 785036201 69378178 55687120 575226742 592400613 946566666 699046749 441198490 57368478 397363085 287354233 270420556 195359931 501967572 528749203 713458389 779031351 226945442 475906523 852770909 532352113 772305919 232830195 632873302 450566056 160531801 455850324 336594003 759935928 639478637 416458508 974909558 933836384 5006186 475306038 358571754 183950716 79826617 982715863 856854207 486114768 300685000 849768484 359892821 497283789 863219348 16415401 920865908 173862568 397002794 862018378 52804792 533673180 742641960 915821834 316057416 363495731 529830076 612336715 395081242 399644928 126184059 491158842 405169390 287594427 515898824 719943627 780832806 226705248 790920954 153686272 600687306 704451114 855292946 632873302 556851901 750688459 493080394 942963756 792962603 226104763 981274699 846766059 854212073 896005829 527788427 952691613 352206613 282430256 235232135 808214922 959176851 775668635 288795397 760896704 149122586 567300340 629510586 318459356 182269358 448644504 822506465 684995400 556371513 698566361 661936776 509293489 176384605 891442143 919905132 712857904 915581640 32748593 699767331 796925804 235832620 335993518 513737078 494041170 558293065 23020736 51603822 455850324 379828923 986919258 210492153 857334595 637677182 904772910 919424744 690399765 140235408 577868876 85591273 535114344 993764787 846165574 827070151 467860024 829712285 881834383 59049836 356169814 597084396 591680031 203886818 98561749 792482215 279908219 533553083 655691732 562256266 146000064 642240868 187073238 297082090 959296948 355449232 821545689 930713862 72500700 256369207 79706520 613417588 65054686 236673299 624466512 396282212 459933622 334192063 57608672 907655238 706732957 974188976 594682456 655571635 561055296 145519676 89554474 236072814 248562902 863939930 82949139 502688154 466058569 939480943 91716220 335513130 752129623 180107612 693642384 520822801 15334528 680671908 184671298 330469056 881474092 587957024 26743743 808335019 509533683 778310769 801849781 60611097 916422319 970706163 299363933 463056144 686076273 571503735 677549386 153566175 115615523 348963994 81868266 548204917 763058450 266097064 128826193 349444382 74302155 951370546 649446688 606572059 269940168 361093791 305128589 191757021 100002913 589758479 846766059 870305071 313535379 993884884 291437531 439036744 110931740 442399460 494161267 138674147 846766059 419220739 828271121 209651474 798727259 795004252 716941202 599366239 843283246 369740775 169418979 260572602 328427407 727509738 534994247 701448689 424264813 292518404 496082819 861297796 711777031 371542230 935517742 105767569 381270087 167017039 700247719 479989821 16055110 456090518 707213345 608613708 210852444 943924532 144438803 918103677 696164421 697725682 177825769 970586066 49201882 726068574 593361389 838719560 749007101 940802010 81748169 6927738 861898281 26503549 681632684 696644809 380429408 274263660 125583574 896486217 147801519 171700822 881594189 329748474 981154602 664939201 42236256 645003099 507371937 154406854 65655171 998448570 394961145 294439956 524065420 868863907 969625290 780592612 96400003 723906828 408291912 384993094 551447536 675747931 925909982 526107069 772185822 25182482 523825226 648125621 274143563 897326896 6807641 332991093 288074815 386314161 244719798 709014800 136032013 870665362 269699974 884476517 561055296 933596190 357010493 46799942 883395644 174943441 772906404 578349264 555530834 373824073 356289911 298042866 625667482 806053176 674667058 447683728 34309854 68177208 39233831 375985819 525866875 669382790 620383214 818543264 737117498 694242869 972027230 668301917 168458203 833795583 450445959 103365629 634914951 429549081 351726225 906093977 227786121 907174850 713698583 163053838 862979154 542680455 108289606 884116226 651368240 678630259 626628258 224423405 863699736 838959754 290236561 99642622 831033352 804371818 819143749 36351503 416458508 126304156 135431528 140355505 877871182 517099794 952811710 745524288 626628258 633593884 531631531 410573755 198122162 829832382 166056263 216977391 715500038 159691122 157169085 755252145 267418131 14734043 122941440 225744472 704571211 60731194 701448689 375145140 237393881 951370546 429428984 63133134 391238138 169418979 185151686 609094096 585314890 279067540 201965266 194158961 144799094 598405463 967223350 200163811 621223893 369500581 849648387 441558781 306209462 458252264 291077240 76343804 664819104 256129013 433272088 317978968 325545079 835957329 508572907 701568786 567420437 72500700 720544112 622544960 241357082 445521982 717421590 421862873 833315195 973948782 850008678 52324404 315817222 776509314 59049836 978152177 490678454 29145683 793202797 19057535 462215465 151404429 441078393 262494154 332870996 237513978 859136050 748646810 52324404 657373090 653409889 891802434 679831229 882074577 601407888 896005829 809656086 584834502 905733686 176384605 732193521 729311193 422703552 557572483 728470514 30346653 425705977 878471667 976951207 492359812 627348840 381270087 118738045 40314704 762578062 870665362 213854869 581351689 807734534 969745387 636476212 17856565 899368545 132188909 809535989 581952174 303807522 584474211 793563088 378627953 796085125 980073729 694603160 148041713 27104034 52684695 159691122 771345143 272342108 63253231 210251959 878471667 655691732 636716406 937079003 282670450 84990788 846645962 223702823 956414620 556851901 786717559 451286638 949569091 929392795 657373090 511455235 51243531 390277362 592160419 180948291 718142172 981274699 279788122 203766721 740840505 750208071 938640264 844964604 84630497 195239834 11731618 75503125 274503854 128225708 679110647 748046325 690880153 488036320 875949630 960257724 850128775 12572297 48841591 36351503 955093553 416698702 452847899 49682270 234151262 43797517 39113734 326385758 622905251 844724410 434833349 306089365 279547928 429188790 470261964 638397764 598765754 641280092 273783272 393039593 295640926 337074391 442039169 766301069 837158299 66135559 808455116 193198185 492600006 716701008 663017649 872346720 609814678 89674571 929392795 749247295 385353385 394240563 489957872 917623289 305608977 444681303 445161691 251925618 476507008 195239834 481070694 227786121 402046868 753570787 352807098 731352842 353047292 158490152 604050022 851810133 659775030 685235594 872466817 895525441 287474330 97841167 799567938 542920649 274023466 960257724 86191758 534153568 571143444 204006915 317138289 115015038 625547385 689559086 660375515 868984004 769783882 279307734 636596309 913419894 522504159 467379636 979593341 823227047 202565751 988360422 709375091 453808675 510374362 79946714 143718221 188154111 121139985 549285790 604770604 914380670 840400918 330949444 359412433 468460509 835597038 122340955 352326710 656172120 887238748 585434987 725347992 716100523 356410008 635995824 306569753 908736111 95919615 797165998 874508466 163894517 991843235 307530529 424745201 938760361 29986362 799327744 671784730 537876575 474705553 600927500 645723681 261533378 551807827 125703671 248082514 850368969 760656510 163414129 411054143 419100642 237994366 322782848 189595275 122941440 326625952 274143563 79826617 967223350 462455659 202205460 253967267 3444925 831153449 401686577 628549810 214335257 397723376 171700822 222141562 237994366 691840929 679951326 531271240 856013528 901290097 620143020 795364543 324344109 785996977 416818799 666980850 243759022 929632989 994965757 434833349 307890820 280508704 920385520 496443110 348843897 415377635 121139985 483232440 810977153 551087245 115735620 484913798 913419894 633593884 437715677 607412738 206408855 600687306 496202916 82209 247361932 886037778 714899553 959897433 409132591 51003337 48000912 605851477 612456812 783595037 814580063 353647777 778671060 925669788 986198676 255528528 452847899 769063300 230548352 966502768 863699736 996166727 346081666 214935742 435914222 868743810 476627105 551087245 936718712 605971574 242918343 308010917 638637958 86431952 79586423 12332103 985357997 969625290 263935318 675868028 811097250 883035353 902851358 972387521 633113496 380309311 141196184 444080818 715500038 711416740 263815221 122821343 396162115 585074696 409132591 731833230 881954480 611135745 120299306 58209157 535714829 870905556 531031046 648245718 385953870 834035777 589878576 535594732 968664514 10650745 481671179 473144292 985958482 446722952 863819833 404208614 249763872 805212497 789479790 936838809 401806674 6567447 622665057 352927195 345000793 928432019 258891244 646684457 401566480 961578791 782634261 145159385 124862992 638878152 624106221 943444144 622544960 452127317 473384486 909937081 224063114 614738655 449244989 720303918 619182244 265736773 356049717 623505736 572224317 153446078 407211039 811937929 136272207 494761752 84750594 147441228 226224860 817102100 602128470 789840081 902370970 562597 307290335 668902402 727029350 973108103 541359388 763899129 493680879 140955990 662657358 501246990 147921616 102645047 511935623 167377330 254807946 324704400 73941864 827550539 846525865 936598615 169539076 716821105 979473244 905973880 238594851 594682456 818783458 325665176 345240987 525626681 403968420 299243836 875469242 28905489 245320283 643682032 780952903 908015529 907655238 712377516 948848509 711056449 954132777 667341141 519501734 289275785 942483368 275704824 295280635 333711675 770504464 927831534 463416435 384632803 486114768 873427593 575466936 368659902 902370970 216256809 938640264 878591764 14493849 559854326 396642503 531871725 36351503 19537923 610535260 613537685 961698888 742641960 265016191 766901554 926150176 497644080 473984971 537516284 800768908 444441109 678390065 595643232 35030436 488036320 925069303 83189333 600567209 245080089 470622255 135791819 16415401 214335257 446602855 136272207 698446264 507492034 399044443 549766178 953051904 855292946 863699736 91476026 917863483 424985395 313775573 108049412 747806131 98321555 536435411 741561087 810136474 437835774 422223164 580030622 313775573 756212921 196080513 704451114 417539381 923868333 863219348 664819104 869824683 545442686 684755206 745524288 818663361 139995214 617140595 942123077 353047292 111292031 471823225 794283670 599246142 400725801 228746897 998688764 235952717 634074272 600927500 425465783 612817103 848567514 36111309 821785883 943564241 258651050 3565022 179266933 109490576 333351384 51483725 287474330 892402919 338155264 831633837 415858023 527788427 971666939 41996062 693642384 714058874 203046139 161132286 235712523 858895856 412135016 351846322 901410194 442279363 352687001 964100828 300204612 262374057 667941626 94358354 265616676 233070389 184311007 416938896 733394491 268979392 413696277 523705129 584954599 95078936 860096826 975990431 682113072 314856446 186352656 310292760 618461662 200043714 985718288 425345686 758614861 273903369 205207885 571143444 135671722 87512825 781313194 272101914 250364357 497523983 130507551 511815526 667821529 886518166 575106645 746845355 216737197 178666448 433752476 276545503 200524102 85831467 773026501 598645657 341517980 6327253 757533988 924829109 236313008 495602431 849047902 331309735 613417588 9329678 651248143 390997944 798727259 938880458 809295795 210612250 685475788 994845660 161492577 46319554 37312279 229227285 98922040 23981512 458492458 654971150 216376906 82468751 795844931 168097912 645963875 628669907 3565022 645843778 895765635 435674028 3204731 699046749 492479909 572104220 961578791 876430018 562256266 5606671 717421590 286513554 599606433 287954718 685956176 397723376 100483301 900569515 51723919 575827227 281589577 972747812 863219348 380789699 601648082 899008254 240396306 373343685 688478213 276905794 176264508 621824378 501847475 386073967 492720103 925669788 508332713 502928348 670343566 202805945 194879543 738438565 636836503 495602431 716220620 379108341 599005948 592760904 706132472 478548657 84270206 69738469 79226132 806413467 672265118 338395458 674667058 359652627 717301493 746364967 413095792 327226437 476747202 266817646 899008254 653890277 684635109 267418131 75383028 481070694 382350960 551207342 417419284 713338292 135671722 226465054 601167694 329628377 70218857 802930654 869704586 430029469 840761209 60010612 657493187 567420437 908135626 980794311 128826193 240156112 534273665 50643046 447083243 217577876 813979578 527548233 234751747 400485607 280868995 416458508 770264270 442279363 17015886 791401342 460774301 235472329 647645233 512055720 331549929 796805707 771225046 725107798 539557933 655691732 320741199 213854869 624826803 575106645 888199524 773026501 941642689 551687730 723186246 716941202 602849052 380069117 429549081 719823530 966502768 685355691 191516827 733634685 909096402 3204731 811817832 575346839 785276395 181428679 654010374 650647658 518420861 186232559 28425101 168578300 358932045 504609706 569462086 202085363 644282517 568261116 905613589 510974847 997127503 866702161 955694038 451166541 815660936 398804249 703370241 919785035 251925618 845685186 733034200 552648506 777109799 570182668 202325557 539317739 101444077 51844016 619542535 320741199 314856446 934797160 742521863 201484878 527308039 373103491 727870029 315577028 826469666 812538414 943564241 532111919 166896942 626267967 817462391 50763143 565498885 691000250 702889853 225624375 235712523 280868995 960858209 989921683 309812372 196320707 552408312 128345805 259972117 65414977 211933317 703130047 141076087 110571449 685956176 5126283 113693971 866341870 618821953 782153873 703730532 55206732 59410127 321101490 867662937 939240749 186712947 291677725 907775335 526827651 748166422 97721070 306809947 388956295 405529681 961458694 221300883 728830805 837878881 535354538 578229167 906093977 182989940 907174850 293599277 510494459 90635347 375985819 105287181 853731685 425585880 306449656 64574298 935277548 209891668 755132048 34910339 215896518 681392490 488156417 32988787 458852749 860337020 509293489 868743810 39834316 255768722 335152839 302486455 358451657 542680455 264775997 368419708 164735196 443240139 22059960 1163082 549165693 649086397 903211649 279067540 709495188 27344228 440598005 829111800 906454268 693041899 68657596 490558357 500406311 893964180 932635414 366978544 611736230 611856327 78145259 621103796 6807641 682353266 979233050 130867842 427267238 393760175 303687425 794643961 637316891 319300035 706492763 26743743 108169509 119578724 559253841 337314585 407331136 590839352 647885427 770984852 683434139 606572059 269699974 428107917 576667906 43677420 856013528 605010798 555891125 436034319 349084091 198362356 172301307 437355386 169298882 587596733 531391337 103245532 44277905 953292098 987159452 741320893 836437717 632392914 502808251 961218500 419100642 504969997 434713252 533432986 846766059 662056873 386794549 39113734 536675605 321221587 239195336 702529562 949929382 785516589 977431595 255168237 325304885 239795821 668181820 205327982 246401156 191757021 865140900 443480333 604890701 560695005 930713862 677309192 119698821 11971812 996767212 218778846 972507618 942002980 562496460 927711437 770144173 559854326 210011765 885917681 702649659 417419284 69258081 365897671 239675724 850008678 630351265 81628072 817702585 932395220 454649354 461374786 838119075 991002556 695563936 628189519 945245599 799928229 339836622 570422862 807013952 289395882 89914765 129786969 901290097 78385453 118738045 754051175 633473787 554810252 480590306 923988430 857094401 884236323 471462934 774707859 894324471 285312584 641159995 158009764 708054024 555170543 389556780 409372785 807134049 779151448 61451776 184671298 940321622 153446078 453448384 282310159 540158418 926270273 151164235 771705434 649686882 878351570 697005100 934556966 542320164 293238986 99882816 259611826 473264389 9209581 777349993 823947629 914740961 787197947 280388607 475306038 261653475 726308768 147441228 28305004 859856632 996286824 250124163 972147327 686556661 75503125 970345872 778791157 807254146 446963146 504729803 53765568 59770418 342238562 770984852 944525017 542440261 308131014 231629225 180227709 521783577 916782610 177105187 987039355 659174545 974909558 682953751 582552659 499085244 866582064 534153568 801609587 330228862 965662089 378147565 1643470 89314280 678990550 737117498 960017530 116336105 435433834 917262998 949328897 134110461 736877304 84150109 470261964 343199338 779151448 602488761 929753086 968424320 573305190 782994552 858415468 757774182 432551506 936478518 495122043 649566785 301885970 29145683 371061842 471222740 133870267 866582064 992203526 119818918 929632989 420661903 671544536 304768298 381149990 375505431 561535684 966262574 214575451 790440566 271141138 577988973 950049479 738558662 487075544 767141748 116095911 94838742 147201034 85471176 180347806 187673723 294920344 402287062 329027892 524425711 974909558 672505312 350525255 848087126 3685119 402407159 539918224 389556780 81868266 31907914 737237595 795364543 973468394 856253722 522984547 367939320 681752781 583033047 144558900 628549810 13052685 887478942 610535260 535714829 785756783 785276395 448284213 518901249 979473244 422223164 345961569 397603279 993284399 272342108 784435716 921586490 98681846 364456507 231028740 654971150 897206799 343439532 462575756 775428441 142757445 317138289 637196794 989921683 567060146 500526408 121740470 731472939 575466936 332150414 583753629 273422981 803050751 704571211 972147327 129186484 896366120 417179090 785156298 52324404 777950478 72740894 302366358 620863602 581591883 981154602 512175817 96760294 963860634 350164964 683554236 258170662 508092519 375745625 21459475 947287248 477948172 326505855 748526713 903812134 923748236 242918343 303327134 899969030 683554236 808094825 377667177 768222621 298403157 366618253 883876032 590238867 26983937 182029164 735556237 715620135 243158537 289756173 448524407 865140900 490198066 73341379 394480757 6807641 860216923 955333747 908135626 988000131 29986362 363856022 816381518 549405887 668902402 84390303 876309921 583393338 319780423 304408007 233430680 921586490 124622798 411414434 352807098 913299797 452607705 145279482 361213888 432791700 398804249 385353385 760056025 285913069 5246380 9089484 868503616 490678454 700848204 510014071 477467784 825148599 468460509 461134592 471583031 609454387 344880696 127745320 645483487 413576180 100723495 993164302 689318892 637917376 679951326 466899248 25662870 141676572 316297610 932635414 732193521 854332170 469781576 44638196 921586490 50643046 95319130 600447112 245080089 701448689 852410618 810977153 810256571 995205951 395201339 795965028 615699431 672625409 365177089 730752357 809776183 890601464 17015886 637436988 22900639 640439413 234391456 292038016 981034505 353887971 135911916 842442567 152965690 951850934 262854445 476747202 81748169 250844745 620623408 972747812 483832925 830673061 487796126 369020193 301405582 592160419 739159147 182509552 156808794 182029164 445762176 400725801 802089975 274623951 31547623 30106459 22300154 566819952 63133134 501487184 749727683 391118041 942002980 403127741 353167389 52444501 738558662 548325014 212413705 419701127 318579453 394841048 532352113 930353571 666740656 910177275 795244446 604170119 885917681 299484030 999049055 978152177 218538652 134470752 6447350 41035286 51723919 339116040 363976119 774707859 251325133 900329321 694002675 920025229 571143444 537876575 396042018 481310888 640079122 342358659 48601397 717421590 558052871 73941864 15935013 638037473 905973880 16055110 659054448 538717254 278587152 490077969 759815831 290356658 912699312 358691851 798366968 805812982 682833654 431590730 804371818 545082395 193078088 491399036 450325862 602368664 666380365 659054448 806893855 854212073 478308463 682953751 596483911 771104949 275224436 695563936 893003404 507612131 901290097 929272698 889400494 141676572 823947629 590839352 698806555 657252993 712978001 368419708 855893431 742401766 190315857 644162420 558653356 271861720 424745201 140955990 423784425 653770180 661456388 574025772 31067235 873787884 224543502 880633413 692321317 123301731 466058569 974909558 510014071 129426678 112372904 23981512 37432376 334672451 350044867 492960297 281949868 215776421 124862992 164975390 808815407 537756478 655091247 66015462 564538109 440838199 634314466 990161877 638037473 691360541 649326591 654370665 682353266 259972117 150443653 387274937 968304223 335272936 420421709 690519862 574626257 928672213 909696887 42596547 107328830 459813525 762217771 572344414 882675062 435313737 413816374 583873726 883876032 586515860 794523864 83789818 439276938 556491610 839440142 238474754 140115311 181788970 896726411 514817951 935397645 420181515 396282212 631312041 687757631 617861177 675507737 398083667 783114649 954372971 378868147 67576723 450926347 134710946 988600616 105647472 470742352 579910525 18697244 986558967 100002913 611375939 943324047 191396730 536315314 574145869 502808251 895285247 954132777 868023228 539437836 1523373 781793582 419220739 82348654 623145445 787197947 642120771 386194064 965662089 54846441 27344228 766901554 174583150 203886818 894204374 367458932 50402852 121019888 219739622 455850324 509293489 594922650 204247109 220820495 54726344 727509738 70459051 206649049 15334528 836677911 917983580 288675300 605491186 71419827 796205222 212053414 349084091 555530834 497043595 826109375 847606738 781673485 76583998 630111071 880032928 8128708 102044562 112973389 949208800 983676639 721624985 975750237 483832925 28305004 316177513 643802129 692801705 547244141 388956295 959537142 239675724 756933503 766421166 617741080 364456507 244119313 137232983 510614556 176985090 632152720 932635414 599486336 916422319 607172544 366738350 955213650 994485369 704811405 308731499 638758055 210011765 686556661 951850934 838479366 130147260 44998487 26743743 996647115 705411890 118377754 372022618 507011646 89794668 31907914 935157451 549766178 305488880 338155264 221180786 355209038 274503854 690279668 198842744 667221044 210251959 390517556 924949206 169058688 785036201 129426678 754531563 68657596 880753510 278226861 963019955 988000131 59410127 537276090 525266390 626988549 102524950 435073543 436754901 476867299 694963451 843163149 243038440 273783272 45238681 650527561 795604737 816621712 341998368 382230863 595162844 364456507 781793582 859136050 330829347 25182482 850248872 140715796 594322165 327706825 839199948 892042628 878831958 44518099 195600125 918824259 881113801 98201458 802330169 694723257 112493001 938520167 703850629 12091909 583993823 359292336 273903369 945245599 978752662 170619949 602969149 149362780 914740961 959176851 944525017 52084210 927231049 30226556 147321131 805092400 92436802 379588729 193678573 488756902 621824378 502087669 476146717 561055296 160291607 211693123 268018616 891442143 499925923 260812796 567300340 878952055 313535379 726669059 634914951 204367206 915341446 714419165 874148175 16055110 439757326 423304037 274984242 159450928 369740775 149242683 889040203 757413891 587116345 302966843 162093062 304408007 487916223 891562240 461254689 42116159 15574722 825268696 496563207 83429527 595883426 139154535 658213769 219619525 796565513 270420556 325424982 563817527 88953989 428107917 226585151 106968539 212773996 295520829 401686577 76583998 593961874 54245956 838599463 790800857 701088398 612697006 476987396 69498275 317018192 151764720 122941440 357250687 65174783 808815407 167137136 260092214 19898214 559013647 344520405 538957448 592160419 437595580 652208919 621704281 465698278 435313737 717661784 906694462 841481791 953172001 394841048 862258572 450205765 581952174 949569091 392679302 702889853 623025348 700728107 968544417 792842506 145519676 783955328 468460509 277746473 262133863 31067235 253126588 835957329 253727073 492720103 975029655 340557204 503288639 375505431 110211158 770984852 691120347 360253112 884716711 784315619 406850748 660976000 957495493 991362847 658814254 822146174 649206494 414657053 593481486 919785035 113453777 913539991 493800976 749247295 662537261 562597 383551930 475426135 896005829 221060689 990281974 730752357 771225046 777710284 390277362 194399155 263575027 277866570 509773877 134710946 390277362 405649778 390037168 617140595 72981088 830913255 452847899 731472939 630351265 673826379 533072695 629630683 449965571 756573212 989681489 995686339 925069303 697845779 87512825 495362237 659654933 481430985 490798551 141556475 268378907 783835231 775668635 10290454 649326591 853851782 178546351 449845474 287114039 685475788 798847356 901530291 780592612 108169509 688718407 591800128 807974728 516379212 886638263 439997520 546643656 881714286 13773267 665419589 175543926 445521982 565138594 516018921 724147022 87993213 364816798 209891668 876550115 49922464 414056568 535114344 974669364 123662022 369740775 37192182 105887666 98801943 32508399 764019226 698926652 315577028 157409279 779511739 658453963 303927619 299604127 402887547 322782848 692921802 669863178 442879848 478668754 107208733 286993942 401926771 372983394 32868690 851209648 575707130 427387335 110811643 652809404 988000131 686916952 754651660 294680150 543881425 130147260 244599701 219259234 169899367 331309735 356650202 132669297 142397154 690880153 473384486 613657782 842922955 793322894 666620559 645603584 394240563 418860448 413576180 581952174 791521439 736757207 810256571 734715558 363255537 528268815 275584727 730031775 889400494 885317196 607172544 554690155 49802367 975630140 909456693 119098336 8729193 905133201 568741504 82108460 718862754 989081004 500286214 845925380 614018073 772786307 121380179 854332170 345481181 510494459 752730108 493080394 478788851 231148837 879192249 242317858 247722223 814219772 584234017 667100947 349084091 510134168 591199643 381630378 41275480 341157689 513376787 588317315 712857904 4765992 263454930 428468208 877871182 132549200 693402190 473744777 663017649 889880882 334071966 701328592 175904217 974188976 173382180 50042561 133269782 808935504 470382061 559974423 318939744 786597462 223702823 647044748 161732771 507732228 574265966 358932045 268018616 224183211 37432376 970826260 277866570 580751204 760776607 756813406 527428136 375385334 270300459 772906404 571263541 304768298 971426745 106247957 252285909 985838385 946446569 541719679 262253960 96400003 125343380 326746049 82708945 676708707 398684152 988600616 56767993 668782305 938039779 235352232 637917376 453808675 514217466 399164540 810977153 616900401 352566904 883035353 907415044 964100828 783114649 548565208 593961874 627709131 130867842 219019040 595763329 353167389 337674876 59650321 104206308 255528528 230788546 824187823 300204612 256249110 658213769 175183635 7768417 282910644 798006677 799207647 52204307 87993213 861537990 909576790 10650745 142877542 455490033 595523135 712257419 922787460 679350841 87392728 209531377 217337682 463056144 441438684 801729684 495842625 170980240 743122348 562256266 778671060 865981579 235112038 42836741 349564479 450445959 848807708 861658087 233070389 176264508 288795397 131828618 972147327 487195641 502928348 754411466 294560053 132429103 890361270 161852868 620743505 297562478 374904946 236072814 621223893 736276819 73341379 177465478 837398493 503528833 858415468 541599582 625187094 978272274 113693971 347763024 383792124 390157265 455970421 772065725 983916833 848567514 842202373 510854750 460654204 939360846 178786545 740240020 552168118 773987277 1883664 867302646 30947138 824668211 829231897 331910220 524305614 58329254 586635957 32268205 303807522 314255961 828871606 251565327 544241716 540158418 591559934 603089246 741440990 627228743 427507432 47880815 509053295 359412433 196320707 823347144 639478637 141316281 746845355 280868995 170019464 536435411 182269358 686796855 252285909 301765873 432431409 191396730 313535379 71179633 402166965 263935318 571503735 203406430 542800552 768703009 733034200 135431528 418980545 445521982 867182549 487075544 197281483 480230015 450926347 617741080 118738045 10410551 56527799 139755020 396642503 523464935 341517980 865741385 596483911 182149261 142877542 83429527 136272207 952451419 144799094 617260692 736517013 616900401 186232559 86191758 62772843 778070575 250244260 180708097 641760480 296601702 573905675 243278634 90515250 154647048 808815407 776389217 96880391 129666872 818423167 816501615 732433715 735676334 498244565 107929315 765580487 828030927 172421404 639598734 72620797 662176970 856854207 178186060 90755444 344280211 90515250 101564174 152365205 355689426 402527256 402767450 698446264 956414620 457171391 660735806 629870877 774827956 389196489 606572059 735075849 47880815 234151262 16055110 103005338 242077664 707333442 431230439 351005643 434713252 437715677 844964604 145879967 470862449 735436140 867783034 712737807 552528409 240756597 816261421 381510281 955093553 408652203 494761752 220460204 67816917 478668754 188634499 17736468 465097793 516499309 600086821 221300883 395081242 919304647 370101066 791041051 844844507 570182668 86311855 202205460 594562359 589157994 199443229 797766483 264535803 29986362 293839471 636115921 801609587 398684152 941882883 84030012 894444568 943924532 343199338 104326405 561175393 515658630 601648082 671784730 85110885 758134473 184911492 744443415 294800247 402647353 43917614 786837656 55086635 527067845 978992856 202325557 29626071 253126588 853251297 958936657 824187823 992203526 993164302 98081361 890000979 583633532 348123315 953532292 807254146 540638806 16775692 643441838 612456812 126424253 386674452 753810981 735436140 528989397 645363390 292998792 283270935 996406921 750328168 133389879 281829771 716580911 218898943 836317620 430629954 516139018 423784425 35150533 539437836 765700584 90995638 878471667 540398612 938880458 535955023 436634804 119098336 861177699 987039355 750208071 515898824 716821105 443360236 416338411 771104949 927351146 89314280 646804554 528268815 147561325 637557085 622544960 400725801 666260268 506050870 16535498 299844321 982475669 194879543 996647115 322182363 893603889 496803401 464016920 439156841 147321131 697005100 155007339 807013952 95078936 586275666 234151262 695443839 12692394 764739808 282550353 795364543 702529562 182269358 467259539 627108646 544121619 27464325 144318706 421982970 918103677 775188247 299123739 614978849 321581878 163534226 643802129 406250263 961939082 452847899 425946171 888559815 791041051 290476755 263454930 180588000 959417045 267778422 615939625 280628801 125103186 261653475 281469480 546643656 570542959 242558052 25422676 878111376 450686153 203046139 355449232 668542111 77184483 302486455 4045410 54966538 198962841 116936590 803531139 853491491 239315433 333231287 922427169 225384181 356890396 428468208 634914951 569582183 698085973 674426864 17496274 80186908 525866875 722465664 940561816 646083972 690159571 421982970 941882883 305729074 176864993 900929806 476266814 78025162 555530834 429549081 247842320 260332408 362174664 384032318 812538414 963740537 484073119 974188976 536195217 56167508 977191401 622424863 535474635 262854445 852650812 189595275 45598972 186833044 761497189 978752662 695203645 738318468 284351808 306209462 980073729 710816255 512896399 358932045 884596614 461855174 174102762 186712947 559614132 828751509 164735196 547124044 363375634 718982851 565018497 134230558 896366120 372503006 96880391 322662751 199803520 76704095 921946781 353167389 822626562 387635228 415017344 889280397 987880034 186472753 540638806 812778608 150323556 568741504 101203883 826229472 196680998 111532225 191516827 446722952 466178666 58089060 728710708 339236137 676108222 257209886 107929315 669022499 760296219 514938048 707453539 660375515 896486217 577628682 38032861 916062028 535955023 869344295 324584303 116216008 135071237 189835469 715500038 61451776 504609706 912699312 820945204 884596614 918343871 728710708 945245599 93877966 655211344 904772910 850489066 529950173 545082395 413095792 779511739 584714405 604290216 59410127 724987701 479869724 165575875 84030012 423183940 130387454 842082276 231749322 291197337 797886580 38993637 399284637 41035286 837998978 513977272 129907066 294199762 37672570 17976662 599846627 297922769 664218619 134951140 546763753 453568481 610174969 436995095 420782000 441198490 560334714 563937624 207850019 243999216 287594427 710696158 145759870 765340293 41515674 365177089 6927738 92076511 720784306 574386063 381029893 795244446 475786426 415377635 712737807 989561392 327226437 833915680 798847356 843763634 584714405 837278396 947287248 114414553 859736535 273182787 370581454 136032013 746124773 918343871 978272274 625907676 85711370 104926890 35270630 385353385 540038321 19658020 112252807 325665176 790560663 507852325 75022737 50402852 908375820 323743624 460654204 80907490 411174240 746725258 908856208 417299187 658574060 389076392 823587338 942363271 960497918 818303070 512776302 588437412 353287486 798126774 489837775 182029164 249523678 66375753 609214193 745644385 576908100 469181091 971787036 471943322 116576299 216617100 602128470 751769332 441438684 732673909 698686458 658694157 183830619 334432257 455129742 964220925 93637772 200524102 923748236 419821224 732794006 19658020 614738655 106368054 854932655 524665905 142637348 558893550 904893007 614378364 987159452 939961331 145399579 983436445 660015224 365417283 835116650 955573941 583513435 878831958 760176122 105887666 802810557 519621831 235712523 219739622 418019769 76704095 106728345 414657053 611015648 404208614 730031775 718742657 790080275 461975271 990762362 387635228 298523254 885317196 972867909 644402614 978632565 627108646 442399460 640199219 120059112 187193335 518781152 4165507 682113072 583513435 14613946 215776421 721985276 373944170 681992975 794884155 644402614 730992551 93517675 427507432 1042985 130387454 372262812 212413705 733994976 272222011 438676453 860577214 53044986 868503616 66495850 829351994 162333256 795124349 947527442 686916952 233190486 550726954 363135440 278707249 938880458 247121738 502327863 820344719 563217042 589157994 260212311 26143258 478068269 97961264 262253960 920265423 555410737 962659664 296841896 790560663 963740537 670583760 643682032 810256571 417539381 79826617 387755325 409012494 804011527 860937505 441438684 48121009 324103915 779031351 505930773 243038440 71179633 348363509 79106035 976590916 276665600 136272207 430389760 486354962 235832620 986438870 850609163 241717373 84150109 301765873 740240020 88113310 991362847 572224317 269459780 817102100 118017463 446002370 182149261 250004066 378267662 386554355 277266085 584954599 766421166 483953022 317498580 973108103 54486150 257089789 23981512 999289249 148762295 249643775 695083548 33829466 644642808 142397154 553729379 926150176 268138713 483953022 373703976 92556899 677549386 479629530 735316043 470382061 292398307 170379755 418860448 462936047 101083786 726548962 645963875 5006186 620743505 38273055 582912950 845204798 494041170 339956719 239195336 395081242 348843897 511695429 110931740 826589763 18577147 339476331 66736044 373824073 379348535 760416316 966382671 539798127 81147684 654010374 982956057 207249534 213974966 434473058 266937743 895525441 656892702 625787579 30466750 385233288 921106102 363015343 523344838 984157027 355088941 378748050 197761871 70939439 220460204 355689426 44878390 197761871 813619287 857214498 92076511 893483792 519982122 666380365 646924651 793563088 974309073 111772419 638637958 237874269 2003761 722705858 222862144 576427712 981995281 723666634 891682337 450445959 430029469 427267238 403968420 840160724 791761633 793322894 565498885 88713795 503769027 815060451 386914646 822386368 335032742 671184245 723186246 918223774 895045053 368299611 226945442 565378788 972387521 124262507 132068812 180347806 611015648 192477603 297442381 114054262 728830805 327586728 556971998 485514283 806653661 885677487 592640807 149002489 362414858 785036201 510614556 604170119 409132591 503528833 734835655 114294456 163173935 111051837 268739198 27824616 997367697 85711370 78025162 723426440 859015953 122821343 468460509 843883731 467739927 464016920 819504040 36351503 79226132 362534955 570182668 665059298 549405887 138073662 595643232 12692394 372262812 455369936 673105797 304528104 878231473 472423710 641760480 565859176 234031165 216256809 128706096 956174426 480350112 815180548 259491729 654370665 133750170 292878695 463416435 893483792 41515674 230548352 390037168 852770909 459333137 489477484 274143563 268378907 568981698 12932588 120779694 65895365 30947138 204967691 564177818 391598429 820945204 688718407 966022380 164374905 739999826 104806793 848927805 363495731 489357387 943203950 109970964 688598310 423183940 805452691 297562478 527788427 665179395 761617286 249403581 236433105 375625528 400485607 147681422 761016801 784796007 512175817 69618372 334792548 101564174 83069236 24822191 101564174 51243531 443600430 623505736 984877609 435794125 849167999 386554355 938159876 977671789 249283484 660976000 489357387 856373819 807254146 810256571 14974237 987759937 148161810 64454201 740240020 841842082 191997215 689078698 216256809 815300645 92917190 721624985 213494578 982355572 891201949 712137322 450325862 45959263 694963451 683193945 858895856 267538228 310052566 711897128 426066268 430269663 254687849 764019226 433872573 978272274 76103610 939240749 310052566 617380789 991723138 221300883 481551082 737357692 201244684 446242564 455129742 785396492 175784120 317738774 892883307 975510043 658333866 837158299 347883121 970345872 551087245 587596733 682833654 377186789 441438684 751529138 775908829 153686272 983676639 190435954 849648387 953412195 878111376 856133625 799327744 945365696 936478518 920385520 203406430 72981088 981514893 711176546 72620797 30346653 513737078 93998063 377306886 767502039 314616252 828511315 800889005 469781576 599366239 339716525 433992670 287714524 427147141 506050870 366257962 258651050 593241292 636115921 395681727 863339445 309572178 100603398 706132472 64934589 146120161 283150838 413095792 370341260 166896942 686556661 773146598 332270511 301525679 330709250 441919072 898287672 626868452 337794973 670823954 156568600 555170543 425826074 715620135 433752476 316297610 671424439 17976662 785876880 283391032 130147260 352326710 136272207 151764720 840521015 607532835 937079003 519501734 410813949 335753324 761857480 641520286 823707435 861057602 322302460 722585761 104446502 451286638 668301917 366978544 589638382 310292760 575827227 495242140 623866027 802450266 323023042 374784849 120779694 207729922 184671298 862138475 66856141 77424677 196320707 535234441 714659359 138193759 856373819 634554660 516139018 299604127 504249415 603569634 994485369 989201101 107328830 897446993 717781881 947887733 851930230 376586304 406130166 116456202 740240020 921946781 145639773 103605823 46079360 602969149 970946357 579189943 689318892 831633837 244839895 767622136 910537566 767381942 416818799 556851901 16415401 12692394 79466326 29746168 442639654 850849357 370221163 474345262 780352418 581111495 698926652 361574179 694963451 432191215 601167694 412975695 712137322 899248448 841721985 678149871 502688154 631792429 389676877 241357082 581832077 945966181 892643113 510614556 681632684 266697549 699527137 501487184 696164421 938640264 525506584 923988430 498724953 442159266 976951207 732914103 413936471 93277481 518540958 50162658 283030741 14373752 167977815 56527799 186712947 650287367 452487608 335633227 119458627 811337444 70939439 773987277 244479604 954132777 34309854 116336105 460534107 211693123 176744896 506411161 424625104 939480943 813499190 147921616 851569939 847126350 876910406 367098641 445161691 469421285 587116345 473984971 914500767 36471600 402407159 976711013 645723681 709855479 292158113 371181939 881834383 969144902 510974847 157048988 216256809 540278515 820945204 688478213 187073238 311974118 687637534 324344109 33949563 599366239 535114344 265736773 536555508 221180786 877270697 209411280 980554117 661096097 858295371 546643656 892643113 196440804 925189400 566819952 280028316 540758903 142877542 704811405 418740351 959296948 882795159 214455354 421382485 670343566 74182058 196801095 661936776 391598429 163414129 395561630 354728650 890841658 951610740 739879729 223462629 480109918 251685424 420661903 940681913 192957991 220940592 881474092 370821648 438676453 78025162 988720713 565979273 190315857 389556780 719583336 570182668 289155688 739999826 637076697 569582183 430149566 900209224 319780423 588797703 380669602 256849595 132909491 874028078 515658630 481911373 77304580 666740656 231749322 559373938 806293370 448524407 384152415 590959449 834756359 740960602 271621526 366137865 894924956 793683185 542079970 217938167 548325014 674066573 333591578 308010917 883155450 341277786 598765754 190315857 545322589 600807403 105167084 754291369 686916952 743242445 464257114 545202492 16175207 78025162 465578181 663377940 185151686 948608315 33349078 678149871 221180786 931074153 77424677 887238748 819864331 248923193 747565937 661696582 568381213 98081361 245200186 385953870 887238748 673586185 957975881 857814983 950049479 407931621 479389336 766781457 445281788 811697735 379708826 146480452 429669178 336353809 671424439 564538109 337915070 481190791 70699245 684755206 116216008 956414620 860457117 703009950 945846084 525266390 782994552 682473363 591439837 808335019 162813644 575827227 280628801 433512282 18336953 685595885 487315738 64334104 552528409 584474211 606091671 648245718 440237714 924108527 16535498 564418012 509173392 939601040 292398307 29626071 303327134 554930349 147681422 396882697 655931926 713338292 559614132 359052142 661216194 236793396 134831043 734835655 918704162 212413705 381870572 446722952 703490338 849768484 105287181 891201949 450445959 808935504 659534836 693161996 862618863 262734348 742401766 507972422 881954480 838119075 247962417 927951631 194279058 351486031 701448689 300204612 665059298 324103915 125463477 4765992 499445535 529349688 220460204 425826074 673466088 839560239 264295609 463296338 399885122 879432443 633713981 745284094 808094825 735916528 88113310 437115192 425946171 110211158 36951988 758734958 657132896 895525441 221300883 433031894 479629530 753931078 857935080 739879729 502688154 456330712 628309616 970586066 556851901 198962841 161372480 921586490 705291793 474825650 200524102 637557085 630951750 117296881 583273241 911978730 358331560 484313313 70699245 400965995 944284823 353167389 292518404 702409465 503648930 623145445 156088212 91836317 197161386 814099675 717181396 179146836 201004490 656412314 802330169 208930892 414296762 991603041 278947443 936478518 797045901 229227285 740119923 13412976 952331322 712257419 457171391 573305190 13773267 769423591 759815831 563577333 484073119 322062266 569582183 842802858 947047054 257450080 427387335 158610249 937319197 322062266 863459542 716460814 636356115 139514826 522504159 459453234 938520167 490678454 73101185 471943322 969625290 495242140 795244446 769783882 27944713 766541263 739399341 571383638 357731075 388596004 795364543 931554541 622424863 275704824 921346296 401086092 140235408 322542654 655331441 298883545 146840743 729070999 779031351 691961026 56047411 428348111 46319554 97480876 599366239 187313432 654610859 597084396 241116888 793923379 669983275 235832620 50042561 99522525 474345262 817582488 226825345 205448079 557452386 954733262 287114039 832834807 344400308 362294761 821305495 758134473 100002913 92676996 500886699 93157384 152125011 308611402 669022499 887118651 474945747 952451419 567900825 590599158 55086635 88833892 516499309 72380603 919785035 110331255 899368545 888559815 81868266 134110461 75503125 763658935 960858209 822866756 590358964 604890701 465337987 624106221 532232016 306449656 615459237 885797584 145279482 737838080 673225894 847246447 454889548 538597157 341277786 694362966 646564360 601287791 902130776 423544231 511215041 269940168 478188366 373223588 623866027 222862144 233911068 19417826 653409889 623385639 46920039 588077121 598165269 846285671 902611164 997247600 494521558 532352113 12332103 931674638 450205765 435433834 970706163 816381518 239075239 398684152 115735620 21579572 767021651 910177275 165936166 507492034 118137560 496202916 420661903 374304461 918584065 275824921 806053176 513256690 268378907 141076087 483953022 613417588 831633837 739879729 519501734 246881544 935998130 525386487 222621950 671184245 915701737 712257419 965662089 681392490 953172001 517219891 430029469 850849357 83309430 551327439 970345872 787318044 651608434 568861601 945846084 489957872 445521982 646804554 621223893 689799280 452367511 219739622 183470328 35390727 368659902 121620373 225504278 184551201 434232864 143357930 508452810 921106102 245680574 59530224 26383452 275464630 534393762 913660088 980914408 267538228 890121076 443840624 97721070 449965571 923147751 868143325 53405277 97000488 992083429 24341803 666260268 562136169 989201101 225624375 920505617 664578910 169298882 11011036 793923379 256129013 534754053 262614251 684154721 822626562 144318706 374304461 947287248 4765992 22660445 184791395 405169390 270180362 12572297 205207885 297322284 97000488 17015886 397242988 796685610 347883121 804612012 577988973 120779694 652809404 997247600 818783458 458252264 942123077 572224317 307770723 962899858 522504159 978032080 130987939 683073848 150683847 975389946 999289249 8488999 934436869 157889667 438316162 465097793 429549081 928071728 145519676 379468632 274383757 963260149 860937505 437955871 788278820 519381637 972747812 975750237 304047716 198122162 379588729 686196370 752009526 91476026 413095792 768943203 710816255 896005829 485153992 974789461 627468937 315697125 519621831 281589577 871145750 850849357 408532106 760656510 97120585 59890515 516739503 646804554 50763143 302606552 632873302 726909253 831753934 17856565 672745506 767381942 412135016 314976543 879192249 62532649 687757631 280028316 512776302 838839657 5846865 312694700 268979392 415257538 271861720 107328830 252285909 800648811 9209581 153205884 958696463 472063419 682113072 333351384 404929196 481070694 497644080 813739384 926150176 796085125 831513740 104926890 701448689 720424015 660615709 989201101 158610249 559854326 131828618 710335867 45839166 244839895 73461476 681872878 768582912 848807708 463416435 543641231 463536532 504129318 287354233 600687306 623145445 774707859 617020498 855533140 43076935 457651779 957615590 231749322 223462629 328907795 531751628 441318587 510494459 625667482 59410127 867422743 587957024 138554050 811577638 550726954 164014614 290116464 577628682 580030622 800889005 792001827 24822191 420541806 361694276 865621288 847726835 821185398 510374362 663858328 133029588 450445959 438556356 57968963 11131133 789359693 161732771 321101490 831874031 717421590 86672146 860697311 618461662 935157451 453928772 442399460 568141019 544001522 583753629 367579029 309211887 224663599 335633227 469901673 501006796 601768179 146480452 474945747 387515131 140355505 320020617 435193640 360373209 764980002 276905794 638637958 527668330 515418436 386073967 690519862 188394305 769183397 28305004 284832196 155727921 508693004 962779761 552168118 243759022 941402495 504129318 723426440 400845898 265496579 505570482 893603889 733994976 770384367 267538228 515418436 82949139 174463053 274744048 222862144 971546842 963740537 95559324 229947867 791161148 338755749 620503311 674546961 983916833 771345143 241236985 478188366 676108222 577868876 165936166 195600125 847246447 272582302 582432562 787798432 577388488 751168847 197281483 477707978 286513554 559133744 181068388 780352418 474945747 197281483 106368054 872226623 754291369 219499428 765460390 842082276 926750661 758734958 908856208 552408312 612937200 748887004 264175512 102044562 52084210 893483792 113333680 519021346 651007949 406370360 393519981 124022313 600927500 6207156 446242564 321822072 635995824 332870996 614378364 642240868 873427593 30586847 782754358 721624985 310172663 479509433 436754901 433031894 485394186 911378245 569702280 348843897 702289368 891922531 650167270 594562359 997968182 340196913 40314704 186472753 664098522 175543926 566219467 854091976 95078936 674186670 977191401 564658206 116936590 837518590 406970845 308971693 844123925 524906099 267658325 363495731 80547199 171700822 323023042 420181515 78025162 849528290 833915680 771825531 461134592 931434444 764980002 703610435 791281245 315937319 193078088 520102219 330829347 759455540 52564598 700728107 566339564 303207037 134230558 840040627 496803401 510254265 680912102 519862025 532952598 719583336 401206189 954252874 167737621 917262998 239435530 550967148 340196913 213734772 329388183 394120466 883635838 464617405 279067540 167737621 169058688 381990669 525986972 448404310 77544774 803771333 561295490 217818070 218058264 768703009 826349569 566459661 511094944 377667177 828151024 797886580 37072085 902851358 942483368 113573874 926870758 274744048 444200915 899248448 554570058 820705010 302246261 632993399 821305495 298403157 440117617 753931078 29025586 533553083 293238986 386073967 827670636 209171086 647284942 175543926 926030079 444441109 321942169 96520100 498965147 72140409 893964180 162093062 592520710 217818070 962899858 953892583 571864026 888920106 784916104 203406430 403728226 143718221 359652627 450686153 962539567 74182058 210011765 475786426 155487727 804011527 818423167 317378483 477587881 224663599 342238562 467019345 593721680 606932350 37672570 69618372 597444687 978512468 326746049 218178361 553609282 321461781 118978239 919544841 334552354 363015343 771585337 984637415 594442262 609574484 942963756 493560782 978392371 591559934 982475669 505090094 646924651 535474635 575827227 418620254 866822258 411174240 516139018 637196794 178786545 64093910 379348535 603089246 155968115 702169271 11491424 538717254 470382061 608013223 610415163 633954175 395681727 49682270 197881968 216256809 865260997 878351570 345240987 785996977 313175088 744683609 826229472 505330288 554089670 394240563 88713795 429428984 233550777 914500767 214935742 711176546 289876270 734115073 32988787 971907133 323143139 788398917 703130047 265376482 463776726 144318706 38513249 508092519 807974728 827790733 700247719 270060265 367338835 823106950 172541501 366858447 179266933 559614132 150443653 374784849 766661360 12932588 922907557 439997520 469781576 632513011 62532649 937799585 372743200 684034624 236553202 33949563 121380179 945605890 904893007 221180786 285312584 127385029 797406192 902731261 646924651 946326472 118858142 484553507 158490152 215175936 892883307 841001403 555771028 314736349 985958482 405889972 628669907 458132167 162333256 643441838 747205646 140595699 577028197 323743624 357731075 251084939 5606671 74182058 847606738 376105916 661216194 974309073 300324709 6207156 455850324 133509976 384152415 937559391 21339378 560214617 238835045 808214922 680551811 12452200 587957024 513376787 656292217 357250687 773747083 57848866 131108036 495242140 177825769 240876694 482992246 316537804 273663175 386314161 666620559 353407583 95679421 491158842 390397459 348003218 719943627 119698821 96279906 538597157 78385453 973228200 662056873 705291793 48601397 900809709 409492882 744443415 703370241 127625223 661096097 963740537 118738045 787438141 98441652 971546842 473264389 282550353 436034319 771585337 559133744 318579453 837518590 678149871 583873726 325304885 497283789 179146836 212173511 760536413 782394067 413576180 528629106 984877609 647044748 615579334 211092638 93757869 942483368 486955447 450806250 158970540 913780185 622785154 306209462 418380060 951610740 901290097 807854631 828030927 500766602 794884155 736036625 3805216 910057178 388836198 869344295 173502277 552408312 674787155 613057297 715019650 70098760 964100828 523705129 968904708 788999402 103725920 828151024 574746354 431951021 252045715 868623713 924588915 892402919 306449656 225264084 864540415 208330407 798487065 219019040 132309006 72500700 253486879 956895008 183230134 278947443 121500276 768582912 381750475 229707673 730151872 463296338 616540110 422943746 878351570 668662208 399404734 421742776 466298763 547124044 516859600 608973999 517219891 405889972 144678997 786597462 275464630 397002794 238594851 811337444 297082090 198842744 745764482 688238019 410333561 270180362 544602007 778911254 889640688 609094096 589878576 320140714 833435292 241477179 710095673 890841658 74902640 562976848 258170662 149963265 632272817 311974118 314255961 408412009 868743810 17135983 517460085 658453963 512656205 727629835 965902283 888079427 436634804 48481300 782634261 465458084 157769570 992203526 440477908 58209157 924829109 692201220 155968115 355689426 910177275 670823954 944284823 280508704 133750170 705892278 833675486 686196370 644402614 289395882 276905794 154166660 613537685 939360846 913419894 740240020 145399579 977431595 165215584 48841591 392919496 557812677 962659664 699166846 986318773 720544112 988240325 540518709 639959025 851690036 143598124 989321198 647765330 105167084 432191215 729311193 300324709 959897433 976831110 745404191 801849781 637076697 909937081 981274699 146120161 694122772 524906099 824187823 325184788 565739079 272342108 481430985 409012494 455610130 756092824 569341989 862138475 104926890 612576909 742521863 36591697 807734534 841962179 704931502 488756902 206889243 499205341 73101185 532472210 832354419 469781576 831633837 361574179 254087364 62172358 413456083 339716525 770384367 46199457 553008797 176264508 273783272 65535074 142036863 692921802 121740470 116216008 317618677 882074577 883635838 459453234 498724953 727509738 646804554 246160962 698686458 773747083 290837046 42476450 221781271 667821529 332630802 502087669 344040017 503408736 162813644 645243293 626027773 747926228 565138594 642120771 487796126 5246380 926270273 102404853 860817408 585074696 684635109 708654509 753450690 922888 281829771 244239410 824428017 312814797 272101914 202445654 198242259 25782967 23020736 166176360 455610130 581711980 566459661 787918529 194399155 666980850 645123196 237393881 823467241 122941440 981394796 276185212 689559086 983676639 104206308 505930773 938279973 184791395 821425592 877991279 148882392 498604856 199563326 920986005 142277057 445401885 167737621 872106526 441078393 694723257 204967691 659654933 157769570 464377211 784435716 582672756 62412552 673345991 811937929 17496274 192117312 552288215 86191758 552528409 502808251 586515860 565979273 758855055 373223588 146240258 945485793 149843168 419460933 920145326 788999402 787197947 478788851 54366053 426666753 81988363 692441414 925309497 845805283 775068150 926150176 997127503 67576723 995926533 66495850 219259234 568861601 689318892 422343261 430029469 746485064 946926957 122340955 75142834 902130776 472663904 38513249 715980426 509053295 972507618 895525441 557212192 519741928 928552116 842442567 494521558 399524831 106368054 908856208 550126469 431590730 81147684 81387878 919905132 484433410 391718526 32148108 360493306 521543383 652929501 660255418 939841234 84150109 834996553 729070999 103365629 716340717 107448927 212413705 230188061 652449113 377787274 718982851 889280397 270780847 923027654 495122043 664699007 384993094 881353995 970105678 24341803 949328897 647885427 445041594 585314890 583273241 489957872 633353690 519261540 839079851 859256147 514577757 820705010 839680336 286993942 242558052 413456083 922307072 684274818 359892821 602969149 368059417 356410008 963380246 313415282 755372242 477227590 100723495 676588610 763418741 997487794 178786545 24461900 236553202 451887123 694963451 918343871 862018378 161372480 538837351 191877118 452607705 994365272 596003523 277266085 950289673 525506584 898888157 810016377 642601159 841481791 168097912 775188247 565739079 614858752 235592426 113693971 537756478 740960602 933115802 292398307 712857904 833675486 743602736 475546232 492239715 282310159 618942050 771465240 677429289 908135626 575226742 277866570 907174850 692201220 690159571 681992975 623145445 961578791 595403038 628549810 114654747 925789885 563697430 792482215 850609163 438436259 506291064 798487065 727990126 299724224 629510586 679470938 277386182 277746473 78145259 447563631 14013461 575707130 643682032 208570601 216857294 510854750 582792853 622544960 10890939 45478875 541239291 457411585 952331322 568141019 598045172 533913374 234631650 765580487 764499614 684875303 217818070 856734110 361814373 191036439 300324709 165936166 220820495 241837470 464016920 413936471 741440990 572224317 367338835 240636500 75743319 383672027 422223164 528268815 178306157 910297372 666740656 504129318 920145326 437475483 950529867 551807827 172781695 779511739 76583998 27944713 244959992 661216194 117657172 975149752 567300340 816381518 905733686 309812372 258170662 986078579 814820257 173141986 997007406 19297729 319780423 630591459 175183635 302126164 784315619 399644928 983316348 963019955 677549386 420782000 922907557 465578181 864300221 706252569 797646386 402046868 325905370 772185822 954853359 841842082 874028078 922307072 727870029 632392914 512416011 837038202 969985581 208570601 707333442 263214736 911258148 92076511 408171815 318579453 886398069 635875727 239555627 682353266 760776607 857214498 822146174 699166846 911738536 533432986 860817408 652208919 932635414 561175393 348843897 208330407 403848323 1042985 418380060 346802248 392439108 314135864 976470819 240276209 82588848 636356115 345000793 402166965 383912221 903932231 120299306 142877542 848807708 36951988 309211887 747445840 504129318 881954480 300324709 617260692 542079970 587957024 980193826 17015886 914380670 122220858 188154111 665899977 134590849 515178242 391118041 456811100 533793277 841842082 870064877 302486455 825989278 655811829 50643046 785276395 906814559 247001641 219739622 591079546 228146412 675747931 499445535 364096216 176985090 499925923 359292336 869344295 201364781 843643537 196560901 461614980 839199948 912579215 349084091 959657239 490318163 404088517 278587152 361093791 35390727 877510891 206288758 153325981 221661174 111292031 557572483 809656086 503769027 20498699 386314161 980193826 753330593 800288520 811937929 122461052 735796431 273543078 729911678 601047597 176264508 750808556 709014800 660015224 562736654 654130471 172661598 744683609 962539567 808695310 746965452 345841472 160771995 499085244 595883426 359172239 584474211 339956719 53645471 518420861 653049598 496443110 218178361 101323980 269699974 157649473 608133320 545802977 545923074 133750170 52804792 499205341 905973880 815540839 631672332 123181634 787678335 511575332 365056992 351365934 605731380 370341260 316657901 799327744 305368783 971066454 777830381 836798008 287834621 910897857 129426678 536555508 803411042 562976848 327706825 627589034 140355505 480109918 119578724 653049598 131588424 521783577 614498461 494521558 665899977 599005948 563096945 520342413 87032437 385113191 906574365 528268815 624706706 961818985 677189095 403367935 681032199 19417826 377306886 368179514 595643232 647284942 521183092 263815221 742281669 805212497 440117617 260212311 319179938 286153263 145639773 909816984 450926347 710455964 513256690 956414620 999289249 268138713 456090518 571023347 492840200 279427831 737958177 147201034 399885122 235832620 508693004 85951564 251445230 92436802 376226013 767261845 555050446 988000131 371782424 475185941 949929382 665179395 483592731 212293608 659294642 956654814 902971455 254447655 935157451 468340412 23140833 655811829 676468513 509293489 820224622 102524950 573785578 599726530 738078274 521543383 694002675 504489609 540038321 144318706 133870267 836197523 613057297 872827108 445161691 756933503 312214312 343079241 239075239 96159809 828991703 250604551 78985938 282430256 503889124 54606247 444561206 175183635 54846441 268859295 895885732 177945866 446002370 278346958 58209157 382951445 736637110 667701432 23260930 760176122 68777693 247602126 268499004 203286333 736396916 520102219 796325319 735316043 160892092 430389760 848687611 841001403 768823106 17856565 244719798 693762481 93998063 474585456 328427407 892523016 550726954 604650507 960137627 361333985 68057111 780352418 984036930 934076578 572944899 767261845 315456931 23981512 871265847 262854445 471462934 484313313 381270087 132789394 468940897 891081852 289515979 979713438 195359931 378027468 907054753 413936471 426906947 945966181 841721985 589037897 359652627 911378245 699647234 329508280 480470209 517099794 627228743 145639773 385353385 566219467 736877304 985357997 575346839 613177394 565739079 875949630 216737197 577748779 660255418 511695429 701448689 939961331 667100947 363856022 539557933 133149685 732433715 483953022 307770723 397843473 194879543 507492034 269579877 202085363 516379212 484553507 531151143 560574908 974429170 275584727 741561087 904532716 202205460 114654747 555650931 817942779 66135559 519621831 651248143 213374481 846045477 720303918 18216856 82588848 990041780 674907252 648245718 5486574 407811524 921586490 783595037 141196184 712497613 712617710 24341803 805332594 641640383 298283060 903451843 204127012 267898519 657613284 237153687 128946290 603329440 668662208 567420437 753570787 457891973 3444925 720303918 819263846 762938353 862018378 553849476 184551201 681032199 218298458 562736654 445642079 58449351 404088517 181548776 126063962 178906642 57848866 436634804 765940778 61812067 965181701 183230134 913179700 41875965 192117312 589638382 814700160 259852020 618101371 637076697 944164726 809656086 735195946 507131743 510014071 523945323 737838080 460414010 721504888 13412976 406250263 180948291 382711251 155848018 756453115 124382604 815420742 694242869 515898824 598765754 733874879 782754358 778190672 784916104 852891006 851810133 25422676 494161267 320741199 739159147 371662327 33108884 505930773 445521982 242678149 961578791 291797822 225264084 752610011 403247838 536795702 923748236 567540534 667701432 217577876 800408617 321822072 579310040 525866875 730992551 303447231 660015224 498364662 208210310 174342956 448044019 663498037 127745320 265376482 850849357 739279244 62532649 803651236 830432867 809415892 222742047 200404005 832474516 911738536 807134049 692921802 564418012 317018192 256369207 880513316 111051837 982956057 879552540 472423710 539918224 170139561 701328592 48841591 668422014 677068998 966382671 750928653 62532649 892042628 53165083 209891668 181428679 793082700 62892940 694362966 333711675 742641960 229347382 891081852 481070694 955213650 562736654 379828923 484073119 878111376 221060689 188634499 308971693 765700584 995205951 215055839 600447112 839920530 175543926 966983156 392799399 869584489 73941864 603569634 827790733 498004371 70459051 993044205 913780185 353767874 874148175 308371208 826109375 497163692 914380670 293839471 721264694 621343990 332630802 388956295 148882392 524425711 928792310 892763210 468820800 631071847 769423591 42116159 523224741 956174426 188514402 20378602 418620254 974789461 849167999 113814068 493800976 366498156 15094334 50282755 674667058 802570363 16535498 745644385 37072085 137713371 105046987 713698583 599726530 53165083 356530105 534874150 530070270 24702094 80427102 327346534 795604737 922307072 244119313 791881730 584234017 983196251 540879000 492119618 550967148 317138289 875949630 274383757 648606009 278467055 760896704 651007949 69137984 418019769 48961688 16775692 459933622 378748050 460053719 88593698 280268510 877390794 961578791 36951988 473264389 318099065 472303613 912939506 268258810 416218314 717181396 746004676 77544774 43317129 206649049 137713371 510494459 326265661 936838809 906454268 376346110 225744472 673586185 512776302 264655900 587836927 229107188 791521439 328547504 510134168 561775878 834035777 822386368 996887309 266577452 323983818 918343871 684394915 190916342 460654204 978032080 31787817 321221587 963980731 445521982 35510824 208690698 821065301 908015529 177225284 253006491 665179395 709014800 960377821 905013104 499325438 5006186 826349569 238955142 79586423 710335867 126904641 238835045 784675910 215416130 676948901 787558238 993044205 921946781 426186365 465578181 972867909 770384367 666140171 596844202 398443958 31547623 860937505 154647048 291557628 458252264 258651050 379828923 214575451 570302765 696524712 592881001 958936657 827910830 194519252 701208495 325545079 798006677 649927076 685235594 185151686 194759446 730031775 413456083 76824192 894444568 173622374 340917495 75383028 204967691 473624680 674426864 424505007 76463901 844123925 731833230 108169509 906694462 998088279 927351146 86792243 556371513 783354843 887959330 604290216 133750170 474345262 713458389 656052023 699647234 242918343 608493611 751889429 65054686 104566599 323983818 995926533 115135135 250484454 637797279 326746049 720424015 569822377 3444925 908616014 526347263 183830619 109490576 691600735 416098217 211092638 613657782 261773572 976230625 209531377 805933079 502087669 74182058 283150838 228026315 792842506 172421404 677669483 402527256 930954056 986078579 844724410 272702399 947527442 160051413 868263422 495242140 375385334 719943627 200764296 332750899 279067540 792482215 81387878 985237900 251445230 877991279 151884817 940441719 477948172 643081547 383071542 354008068 336113615 478668754 798847356 9569872 712857904 532592307 895045053 445762176 595883426 554690155 849648387 235832620 913780185 923748236 562256266 450926347 127985514 34189757 504129318 972027230 277266085 124142410 147801519 33589272 301405582 834275971 929152601 195840319 217577876 451526832 690760056 19778117 284351808 422823649 244719798 281589577 742401766 948248024 629990974 27824616 186352656 925309497 9449775 691840929 233430680 656772605 288555203 371422133 477107493 778550963 553969573 379468632 201845169 481551082 636476212 502928348 191156536 504729803 729791581 420301612 177465478 488276514 724867604 178906642 837758784 205928467 683073848 133630073 840040627 982355572 299363933 203526527 635035048 646684457 725468089 968424320 676348416 184791395 456691003 672265118 851810133 870545265 714539262 654010374 311013342 168097912 850729260 730992551 626868452 291917919 272462205 440477908 479749627 33829466 383672027 395561630 43317129 866221773 211092638 180107612 201124587 637917376 211693123 121860567 112853292 392559205 634554660 223943017 951130352 922066878 464377211 802450266 140835893 579790428 733754782 316177513 202306 369740775 336714100 298643351 921586490 26863840 806653661 310052566 514457660 727149447 487075544 653890277 297682575 238955142 635635533 689198795 179747321 448644504 841121500 309211887 562976848 483592731 344160114 556011222 179146836 639238443 581471786 784796007 922667363 666980850 587356539 567420437 580751204 408532106 789239596 890721561 269820071 648125621 125223283 227185636 719223045 626988549 33829466 300444806 394961145 379348535 679711132 713098098 746845355 407811524 519501734 59290030 959657239 884476517 35630921 548325014 493080394 15454625 890961755 676468513 848807708 508212616 990281974 409853173 709014800 313655476 135671722 874628563 793563088 21579572 726308768 768823106 263334833 737958177 439517132 481190791 520822801 172661598 727870029 701328592 165095487 602368664 170019464 111652322 700608010 381510281 717421590 850128775 381750475 155367630 136872692 907535141 203886818 249043290 334552354 297562478 849768484 93397578 858655662 952211225 587236442 856854207 386674452 225264084 607412738 426546656 155848018 662657358 749127198 16415401 171460628 656892702 669983275 609934775 489717678 174823344 309932469 845084701 875349145 226705248 347642927 378147565 528749203 608013223 828391218 987399646 831874031 310532954 401926771 371302036 744203221 191757021 480710403 546283365 388716101 513136593 681992975 443600430 38273055 257089789 848087126 861898281 967943932 249523678 632513011 127144835 108769994 466899248 44638196 271261235 756813406 732794006 862738960 524305614 288315009 411414434 151884817 947407345 687877728 497163692 804491915 223582726 330709250 938760361 754051175 80307005 684274818 985718288 615339140 431590730 58209157 550126469 867182549 706372666 744563512 698206070 309331984 969385096 709735382 841842082 672505312 513977272 590719255 785516589 392198914 994004981 220340107 162093062 865981579 798847356 94358354 181788970 87512825 930713862 591559934 5486574 994485369 369380484 760776607 161732771 80427102 793082700 461014495 367579029 119218433 91235832 424384910 899608739 563096945 145759870 54005762 33228981 943083853 343319435 996527018 870305071 858175274 688117922 26143258 810857056 129786969 535474635 993044205 377306886 845084701 590719255 969625290 508092519 512536108 373944170 804612012 338635652 373583879 470261964 416938896 299003642 926990855 476627105 950409770 904893007 486835350 498244565 440838199 428107917 545682880 468820800 6327253 310893245 124622798 690279668 636716406 123301731 291917919 173742471 395441533 87993213 931194250 907535141 182509552 852410618 481551082 892763210 921946781 39113734 873547690 440117617 472303613 751168847 667221044 865861482 617380789 595282941 744683609 508452810 720183821 616900401 308611402 18577147 887478942 459453234 27944713 4405701 623385639 781073000 572344414 380909796 816261421 478428560 674426864 48481300 250244260 156568600 485394186 40795092 386914646 950649964 254928043 113333680 582792853 121860567 274623951 420902097 899368545 809175698 939000555 920986005 278827346 26623646 123902216 845565089 611015648 817822682 893844083 976951207 720303918 751288944 966742962 835476941 788879305 482872149 277506279 612096521 605491186 500766602 960978306 782874455 300805097 601648082 89194183 57968963 60611097 951010255 743842930 163053838 586275666 633473787 123782119 192237409 359292336 384632803 332270511 954012680 964701313 380429408 823227047 922427169 600687306 56888090 933836384 353407583 487435835 310172663 653650083 798006677 582312465 54486150 558893550 262974542 755972727 128826193 381029893 546403462 619302341 83549624 541359388 154887242 164254808 763779032 538957448 927231049 359532530 465818375 345721375 612216618 608973999 722825955 142397154 822746659 927831534 127024738 471943322 685115497 98801943 71059536 698686458 9209581 534273665 326145564 260812796 837518590 809776183 945365696 442399460 150083362 800288520 824187823 181788970 218778846 72140409 35030436 54606247 136632498 734115073 996286824 588797703 58689545 78985938 564658206 635755630 727990126 140715796 679591035 610535260 404448808 785156298 595403038 260812796 988600616 877150600 951610740 828511315 318699550 179266933 149122586 971546842 454409160 404088517 548805402 923147751 192477603 556851901 65174783 820224622 397242988 216376906 899128351 811697735 811577638 895645538 481070694 172901792 253246685 550366663 5606671 859856632 196680998 815300645 417899672 511575332 671304342 471342837 431110342 107208733 859136050 932275123 98321555 227906218 705772181 294800247 137473177 180107612 861658087 87392728 217457779 463896823 963140052 69618372 765580487 694843354 361454082 154887242 265376482 675868028 841962179 735556237 650407464 207009340 735436140 719583336 354608553 440357811 966022380 901410194 153085787 369380484 737237595 504369512 949328897 222862144 237994366 142277057 44878390 441318587 886518166 469060994 43557323 731352842 602728955 798126774 222381756 847126350 934436869 227065539 233070389 671064148 840400918 538236866 336594003 13893364 246160962 894084277 916782610 37552473 658574060 532592307 284952293 131588424 689559086 127264932 315697125 944525017 501246990 336473906 35630921 45719069 110811643 194158961 618101371 962899858 171220434 877150600 306329559 33709369 611255842 797886580 845565089 212653899 442500 378387759 856974304 322403 333591578 589758479 652449113 523464935 187433529 332991093 138073662 412615404 805092400 513496884 507972422 640919801 262734348 925069303 728470514 760056025 458132167 456570906 59650321 521062995 526227166 350645352 119939015 29866265 417058993 605250992 473264389 967463544 949569091 599726530 785996977 256969692 552408312 720424015 302606552 649806979 919905132 28064810 587596733 746004676 906814559 97480876 590479061 808214922 49442076 984157027 292878695 953051904 482271664 834996553 188394305 810496765 970105678 653650083 299964418 997968182 260452505 178666448 861417893 950289673 261773572 380429408 182149261 488156417 339836622 61571873 127385029 887839233 340557204 903091552 926150176 775788732 842562664 227425830 399885122 7768417 354488456 128105611 752249720 872707011 867542840 687877728 492720103 399765025 426906947 88713795 55206732 779872030 613297491 691840929 431350536 522624256 504849900 693161996 462815950 950649964 897206799 147321131 678750356 206889243 169058688 540038321 792722409 166416554 262013766 718622560 739639535 28905489 871265847 528148718 24341803 375625528 858175274 992804011 669022499 533072695 810256571 623025348 211573026 375025043 711536837 2243955 485153992 773867180 622184669 171820919 969745387 590599158 125703671 501246990 236192911 546043171 442039169 643321741 138674147 17856565 322782848 51243531 795724834 325785273 465217890 819984428 160171510 182869843 371061842 308371208 908976305 728950902 199803520 674426864 45118584 364456507 415377635 32148108 97360779 290716949 296001217 795124349 763178547 839560239 578229167 853371394 107929315 648005524 140715796 644042323 201965266 179867418 643922226 446242564 192117312 390877847 573785578 437715677 876430018 162573450 480230015 585314890 486114768 309572178 820825107 785036201 708654509 313535379 520342413 543641231 361454082 193798670 452247414 42596547 503168542 872226623 585434987 289996367 607172544 684034624 888439718 775308344 177585575 24461900 657613284 82348654 399885122 945846084 431830924 958696463 252165812 406370360 952931807 775068150 759455540 577868876 22900639 963500343 832354419 149963265 389796974 379708826 483592731 451406735 218538652 52084210 872106526 728830805 852650812 299964418 897807284 452847899 350164964 2724343 560094520 175904217 188394305 107929315 413816374 808935504 751288944 676468513 874628563 407931621 226224860 952811710 181068388 446602855 235712523 473384486 10050260 56047411 89794668 38513249 377066692 424264813 179146836 17256080 66135559 281109189 159330831 961578791 963019955 635875727 355809523 72380603 369500581 860937505 429428984 247602126 821785883 427267238 451887123 21099184 215296033 215416130 220940592 754291369 656292217 971306648 776629411 114294456 579550234 675627834 46679845 509893974 509053295 985478094 299003642 776269120 408412009 684635109 619182244 890721561 109850867 517460085 802570363 424384910 717061299 891442143 11971812 592640807 727990126 72860991 821905980 782273970 755972727 679951326 359412433 908015529 210612250 894924956 305248686 330949444 950890158 741080699 778190672 679591035 560214617 960497918 479509433 648726106 59770418 575226742 710095673 740600311 993644690 724387216 244359507 137953565 116816493 497163692 998688764 592280516 242197761 585915375 574746354 226224860 932635414 145399579 964220925 828751509 136992789 875229048 85591273 665899977 960738112 466659054 439757326 815540839 13412976 775668635 940201525 584954599 377426983 465337987 502447960 424985395 80787393 434953446 582192368 346321860 440598005 316057416 852530715 851930230 809776183 759575637 222261659 62172358 987279549 201604975 840400918 666740656 361814373 363375634 813979578 842082276 507131743 501246990 737237595 297682575 4285604 385353385 818182973 957015105 928071728 453088093 976470819 79826617 88473601 824187823 353047292 730271969 70338954 437475483 107208733 543280940 458852749 698566361 296721799 678750356 222862144 171340531 147321131 755852630 280628801 429549081 103605823 653770180 10290454 874628563 618221468 59890515 772666210 760056025 115735620 317738774 490918648 663978425 755732533 62412552 435914222 873187399 537035896 828871606 819263846 532832501 490798551 468220315 641880577 133149685 763178547 200404005 333831772 963860634 463536532 419941321 22660445 387995519 364576604 623625833 974789461 176264508 859256147 430389760 992443720 479509433 377907371 478308463 84030012 71539924 38152958 275824921 434593155 732073424 77304580 121380179 210011765 775548538 997968182 9930163 477107493 344640502 556011222 962659664 947647539 453328287 69137984 193318282 451767026 874868757 133509976 796925804 536195217 365897671 479389336 641520286 454168966 104566599 638277667 628549810 960017530 508092519 431230439 871746235 372503006 333591578 496082819 174943441 527548233 788879305 185391880 888319621 788038626 177105187 555530834 756693309 970105678 268018616 501367087 737237595 570422862 265856870 564297915 570062571 110331255 159330831 876550115 878952055 542920649 209171086 364576604 769423591 714178971 996286824 140955990 643802129 730512163 681032199 828991703 72020312 625547385 696524712 91235832 172901792 677429289 500046020 478428560 859616438 294319859 759815831 799928229 29265780 462215465 581952174 529950173 136392304 915821834 693161996 662417164 813379093 92917190 414176665 81507975 554930349 805452691 25542773 172421404 956054329 977911983 259491729 960497918 878231473 770024076 173021889 126664447 285792972 746364967 475306038 429428984 367338835 746605161 362895246 574506160 95559324 539317739 138794244 913660088 963380246 712737807 194999640 996286824 752009526 533553083 824187823 797886580 159691122 134470752 508092519 195239834 471342837 572584608 735556237 264775997 237513978 167497427 902010679 729431290 219259234 587476636 420061418 818543264 124502701 227906218 498724953 193918767 680912102 540518709 735316043 222021465 655931926 885917681 253366782 464497308 543160843 251685424 912339021 219619525 527668330 226224860 8368902 63613522 927831534 308491305 586035472 781913679 443600430 137713371 694362966 166296457 637316891 355929620 115495426 409132591 75503125 112132710 230908643 846165574 896486217 789479790 258891244 31187332 724627410 217457779 701808980 155727921 815901130 585434987 307290335 575226742 726188671 917863483 46920039 621464087 781313194 339956719 693882578 177225284 474585456 650527561 994485369 271381332 850729260 115255232 208090213 980193826 692801705 522263965 367939320 618942050 285552778 613537685 964821410 867422743 294560053 745524288 917022804 566219467 228626800 491759327 152845593 228146412 506050870 883395644 700968301 541959873 578949749 346682151 688838504 736396916 251205036 40434801 849047902 975870334 109970964 923267848 579550234 16535498 809175698 883635838 541479485 477587881 367458932 522263965 727509738 289035591 927110952 225984666 507732228 260572602 186592850 522263965 83429527 385233288 554449961 722825955 291437531 353647777 769303494 925789885 890000979 757293794 556731804 756333018 749487489 426306462 440237714 33108884 897446993 351365934 967343447 411894822 207009340 476026620 209891668 297322284 431710827 828871606 476266814 31307429 913900282 795844931 187433529 280989092 799207647 675267543 676348416 131348230 40674995 474585456 497644080 252165812 956414620 833795583 918103677 459813525 507612131 566940049 259731923 952571516 972267424 216136712 136872692 139034438 553849476 844604313 589037897 478188366 535955023 843043052 807734534 630831653 934797160 105887666 942603465 826229472 123662022 204487303 144919191 63013037 785756783 657252993 287954718 524665905 258530953 153566175 754651660 976831110 750208071 692081123 929032504 579189943 820945204 171700822 502808251 110691546 33709369 448044019 469181091 718022075 673586185 701448689 275104339 150924041 166176360 561415587 668782305 100723495 686316467 142397154 640679607 215656324 417899672 393880272 874148175 843283246 5846865 282069965 389316586 9449775 93517675 485634380 334071966 25182482 502327863 730872454 534033471 612216618 588557509 766541263 338395458 976831110 783595037 964341022 796805707 45118584 468700703 945846084 287114039 568141019 152725496 484433410 195239834 771225046 138554050 533072695 142757445 894324471 781793582 963140052 269219586 127264932 277626376 106247957 907174850 599486336 357731075 467860024 204006915 721745082 65655171 935157451 549766178 879552540 76583998 22420251 397843473 619782729 820344719 656532411 736036625 50763143 142757445 96159809 858535565 71660021 844964604 882194674 894804859 157048988 229467479 565258691 824908405 497884274 286873845 238594851 335152839 61932164 479869724 420902097 791401342 747926228 929512892 576788003 944645114 516979697 862859057 200404005 710215770 463896823 467379636 420181515 530310464 914260573 770144173 977431595 601167694 915221349 219379331 431350536 816741809 724507313 163774420 699527137 740360117 213974966 579790428 716460814 664338716 770984852 327947019 812298220 458252264 293359083 132789394 619902826 150924041 845204798 223943017 69017887 566699855 584714405 732313618 437715677 984517318 983796736 219739622 437235289 267658325 107208733 974669364 557452386 639118346 845805283 145639773 205928467 554089670 382591154 15574722 336834197 80186908 741200796 600447112 103245532 987639840 3565022 974309073 362534955 103605823 571984123 796685610 456330712 953412195 582072271 764139323 471462934 352446807 267778422 271741623 878711861 580751204 577148294 766180972 99762719 751409041 800528714 946926957 77784968 924829109 476987396 458012070 36351503 369500581 310532954 308491305 282430256 911978730 363615828 668662208 740240020 692201220 231268934 285672875 763658935 499925923 980554117 11371327 714178971 260332408 595883426 478428560 553128894 145879967 986078579 939000555 236793396 323383333 552408312 507011646 167977815 36711794 956774911 8609096 251565327 748406616 20018311 527308039 972747812 138193759 957735687 574025772 18457050 864180124 682833654 417659478 269099489 805812982 589278091 547604432 763058450 547484335 557812677 104326405 818423167 976711013 316898095 576667906 429669178 814219772 871506041 329027892 379708826 357851172 158970540 817702585 660976000 934196675 611496036 204847594 430870148 668662208 663978425 146360355 110451352 193558476 925669788 977431595 435914222 860937505 320380908 635995824 808094825 111652322 34790242 383792124 402887547 829592188 517700279 422583455 891322046 639238443 561535684 476867299 556251416 856974304 869944780 787318044 764259420 810256571 972147327 688358116 510014071 124142410 48121009 768823106 497644080 347522830 93757869 769663785 353527680 926030079 200764296 942243174 228626800 395441533 896726411 13172782 541719679 880873607 465818375 607052447 317498580 337674876 465458084 415617829 40915189 91836317 284952293 232710098 767622136 949208800 471943322 836798008 527788427 75142834 162453353 733754782 467379636 893243598 253246685 762698159 537636381 88113310 345721375 333231287 792001827 682833654 479029045 627829228 659174545 491879424 243278634 126424253 506771452 90635347 488997096 314015767 595162844 451646929 292878695 439276938 348483606 233790971 772546113 369740775 903812134 537396187 755011951 657012799 617981274 559253841 383792124 393159690 947407345 357851172 244359507 518060570 696404615 87632922 33589272 362775149 793923379 973948782 433992670 526707554 502808251 635875727 45238681 985357997 882554965 716941202 257209886 841361694 761857480 69858566 894444568 350285061 919424744 82588848 301645776 131228133 512536108 515778727 429549081 159691122 795604737 997968182 236673299 384392609 686796855 21459475 757654085 113814068 851449842 751409041 424985395 800648811 8128708 125703671 329868571 573545384 2844440 752850205 476386911 239915918 118497851 574626257 666980850 808935504 162213159 636476212 548565208 88593698 192357506 139394729 662777455 728230320 929392795 368419708 222501853 486234865 775668635 46559748 144318706 161252383 484313313 102284756 946326472 529349688 185031589 23020736 629510586 745764482 8849290 845084701 102284756 361454082 857814983 144799094 981634990 703130047 48000912 960858209 106368054 536915799 655211344 966022380 920505617 756573212 937319197 360133015 283391032 966863059 894924956 207970116 159330831 255648625 116216008 173141986 465337987 436274513 861778184 136872692 579910525 758254570 571143444 184791395 628069422 817942779 607773029 589398188 619662632 195239834 915581640 492239715 306689850 376706401 510254265 792962603 647765330 628910101 363735925 288435106 161252383 142877542 654250568 65655171 641760480 792001827 798487065 166176360 405529681 253967267 325064691 761617286 412255113 711056449 248803096 816982003 327106340 181068388 905733686 889160300 686196370 103725920 647525136 198962841 382951445 311974118 424865298 8969387 366017768 991723138 701568786 460654204 850008678 795724834 955934232 161372480 827910830 218418555 654370665 729070999 60851291 834396068 468460509 550486760 469901673 161972965 353047292 667581335 708054024 866582064 401926771 283391032 712377516 597084396 60851291 62892940 237153687 703730532 495842625 642481062 469781576 301165388 68657596 380429408 441078393 387995519 638277667 243398731 406370360 614618558 475546232 533192792 275464630 348363509 544722104 111171934 246641350 504249415 837158299 417419284 354488456 580511010 113093486 408412009 216497003 112252807 265376482 320501005 280868995 862979154 122581149 282430256 112372904 919905132 166896942 195720222 165335681 769783882 608853902 223943017 626147870 795724834 27704519 883635838 506531258 162813644 559854326 147201034 841842082 937079003 643922226 489837775 614738655 149602974 153806369 535474635 547964723 275224436 227305733 275104339 440117617 300805097 508813101 962059179 832354419 940922107 538837351 779992127 763538838 575226742 873067302 35510824 88833892 728350417 227786121 636716406 409372785 381630378 672505312 892162725 292518404 235472329 122701246 89674571 5846865 912699312 479629530 699887428 756453115 120179209 476026620 978512468 550246566 375625528 369260387 430149566 260212311 379708826 438075968 237153687 278106764 258290759 248923193 729311193 997127503 850008678 425105492 109490576 602728955 202325557 324824497 76343804 588317315 183350231 466058569 959777336 521903674 347522830 25542773 182509552 718622560 116456202 184311007 518180667 223462629 547003947 681632684 817462391 97600973 809535989 253727073 876430018 985237900 54606247 212894093 573785578 528509009 774707859 66375753 860457117 835236747 551087245 853011103 930473668 794163573 686796855 481070694 551807827 604410313 503408736 99762719 77304580 159450928 424144716 262734348 873187399 173021889 545442686 306449656 725107798 409733076 839560239 769663785 384752900 51123434 711656934 424745201 261293184 274263660 421142291 45238681 350525255 564177818 425105492 120419403 75022737 249523678 352326710 70338954 100483301 854572364 164014614 143838318 32148108 607412738 62292455 736757207 864420318 661216194 863579639 976350722 98681846 224543502 22180057 169178785 671784730 893964180 235592426 25903064 447803825 716580911 421502582 833915680 790200372 963019955 97961264 281229286 991843235 550726954 530190367 300444806 277746473 335873421 289756173 22300154 188274208 949088703 925669788 406490457 612576909 668061723 563217042 79106035 960858209 261413281 819984428 638277667 774707859 155487727 579790428 417899672 395321436 115375329 320140714 381990669 912459118 39834316 987159452 308491305 964941507 276305309 519741928 605731380 959777336 535955023 894684762 466418860 800288520 79586423 412735501 590118770 833915680 80787393 770624561 646204069 557692580 630111071 245920768 629510586 444561206 596123620 601167694 908015529 552168118 703130047 971546842 541119194 594202068 953412195 565138594 998328473 408051718 329147989 233430680 450686153 685956176 281589577 77544774 534994247 596844202 739639535 913539991 807494340 759695734 466418860 751288944 689919377 343799823 933716287 762578062 985598191 199323132 474585456 812898705 669983275 449244989 18457050 444441109 943564241 253967267 879432443 21339378 741921378 346682151 131948715 825508890 409492882 156808794 309572178 100002913 839320045 140715796 713578486 126664447 757774182 500886699 68657596 256489304 633113496 689679183 487796126 49682270 744323318 168097912 496563207 112493001 367338835 577988973 951730837 524665905 419581030 310653051 969264999 969625290 419821224 275104339 955213650 26743743 956654814 644642808 521783577 668542111 777349993 562376363 790560663 347763024 423424134 218658749 862018378 488036320 697485488 727149447 79946714 432311312 359892821 409853173 996406921 454048869 645963875 248803096 534754053 469181091 569822377 937319197 930113377 648966300 169659173 198482453 744083124 537396187 939240749 257930468 907174850 627829228 952331322 719943627 475666329 787197947 664939201 543401037 816261421 436274513 434953446 733994976 164975390 702769756 934316772 896125926 998808861 614138170 418380060 39353928 218898943 154406854 604050022 755852630 287834621 967943932 98801943 570903250 742882154 153325981 931914832 60010612 537396187 668662208 299964418 237754172 376105916 704210920 233430680 44398002 535955023 655091247 177465478 236433105 868263422 166176360 758014376 405289487 967823835 317378483 619782729 591079546 341878271 111892516 943083853 729671484 799567938 286273360 382831348 618221468 626388064 368900096 14013461 51483725 491879424 212653899 958936657 241236985 848207223 425705977 257209886 828511315 720424015 592881001 968064029 49562173 750087974 30706944 214575451 604050022 917863483 155727921 582432562 581952174 751889429 845444992 724867604 580751204 626988549 625427288 139154535 480470209 15334528 262974542 737958177 258891244 898527866 356289911 659174545 527908524 125583574 251084939 440117617 238354657 350765449 569822377 637436988 965301798 416218314 547604432 130387454 555530834 207489728 343079241 705531987 504249415 938640264 772305919 672865603 833435292 61932164 338635652 605971574 557572483 406850748 893603889 60971388 398203764 727629835 845685186 651368240 215536227 608853902 797045901 213134287 463896823 669262693 890481367 648726106 971066454 272222011 952451419 799327744 113213583 839440142 891922531 127505126 861417893 987279549 449004795 371902521 580270816 876910406 777109799 362174664 937439294 893363695 919064453 166176360 309572178 475786426 186472753 783474940 411774725 954132777 870305071 144678997 362174664 575226742 667100947 230668449 429909372 735316043 105287181 690760056 434473058 727990126 172781695 176624799 553008797 13773267 729191096 93998063 948488218 595282941 95799518 835717135 557572483 539557933 94238257 259491729 633233593 789840081 98922040 589518285 975029655 539317739 929632989 138433953 758614861 322662751 549886275 117657172 37552473 898768060 596123620 322902945 102524950 981634990 606812253 677068998 808695310 620383214 641520286 20738893 943324047 62532649 884836808 135191334 207729922 675747931 975870334 581832077 148762295 859136050 412975695 891682337 980073729 645003099 551807827 611135745 747205646 974309073 945245599 630471362 462335562 722105373 589037897 963019955 138794244 22900639 486835350 11731618 86311855 200404005 978272274 244599701 271981817 91956414 967463544 340196913 332270511 781793582 94358354 737597886 833075001 884356420 426066268 76343804 300324709 926630564 1403276 139875117 73101185 107208733 45478875 905493492 513857175 427987820 750448265 543641231 549045596 321942169 20858990 989081004 969625290 111532225 828871606 631071847 910537566 338635652 998088279 103005338 483112343 969745387 526587457 700487913 368900096 591559934 961939082 583513435 660375515 101684271 475666329 245560477 759335443 273302884 838959754 508212616 25903064 591559934 250244260 452367511 866702161 290716949 916902707 950409770 680431714 253727073 201604975 659054448 114774844 169418979 15214431 475185941 756693309 612096521 257930468 626508161 401806674 90875541 417899672 230908643 403608129 387395034 633954175 700608010 802791 391598429 988840810 64814492 98201458 518661055 664458813 902851358 471222740 698326167 8969387 138914341 355689426 907415044 901650388 53885665 848207223 609694581 825148599 735075849 248923193 850729260 23861415 852530715 969385096 368059417 256729498 618341565 63493425 764019226 77784968 193558476 746605161 26143258 932275123 577988973 177225284 717901978 432911797 146600549 479749627 799327744 612456812 997247600 192237409 608493611 176264508 78865841 277986667 168218009 455970421 972267424 857334595 740840505 908856208 714659359 15574722 134590849 522624256 615098946 856253722 256729498 144678997 731472939 306689850 761016801 88113310 73701670 691480638 398804249 28545198 375985819 941282398 531271240 219979816 491879424 737597886 3925313 878711861 609574484 692561511 660015224 932875608 405529681 955694038 645843778 679470938 3444925 518781152 903571940 859136050 103245532 167737621 729191096 1763567 652929501 767862330 176384605 442159266 420421709 594081971 907775335 397723376 175183635 135911916 786237171 781913679 323503430 391718526 475546232 628790004 588437412 839680336 170259658 207850019 972867909 393519981 900209224 382110766 565859176 259371632 258050565 146720646 862498766 61691970 477828075 302726649 970465969 138794244 89074086 953532292 611375939 10770842 986078579 349564479 469901673 29145683 607532835 291677725 943083853 46559748 891442143 934677063 883395644 197281483 546763753 88953989 774227471 447443534 912459118 626988549 789479790 894204374 608613708 615339140 638037473 409012494 316537804 109370479 680071423 392799399 63133134 102765144 108890091 83909915 637797279 94238257 59049836 264775997 337434682 461374786 511695429 175063538 299123739 24942288 414897247 603689731 768703009 486234865 574506160 539317739 143838318 701568786 69978663 65414977 638758055 550847051 123181634 799207647 125223283 829832382 3324828 924108527 563937624 70819342 100002913 672985700 442879848 4045410 429428984 615699431 99402428 222141562 175664023 667221044 935037354 774227471 939240749 675747931 529469785 562976848 116336105 664218619 629990974 997727988 186352656 771945628 165695972 286393457 382471057 896606314 125823768 364096216 478668754 652208919 461855174 794403767 907294947 395801824 484553507 73341379 722345567 723666634 889760785 953652389 876670212 159931316 259131438 46439651 144919191 433872573 616780304 553849476 556611707 715860329 508452810 459453234 431110342 663257843 412495307 59530224 454168966 180107612 372743200 759335443 598285366 27104034 754411466 897206799 272702399 640799704 444321012 233911068 591079546 713938777 793202797 646444263 299964418 756933503 275584727 74782543 985237900 740240020 354248262 714419165 5966962 559974423 834516165 305128589 165936166 372022618 73701670 91355929 425465783 52684695 571984123 322302460 630831653 522984547 52444501 622064572 649206494 328547504 194038864 956414620 570182668 856974304 453328287 858775759 711296643 209050989 383912221 355209038 102044562 361093791 508452810 143237833 957615590 63013037 2243955 365297186 666140171 242077664 608853902 43437226 807134049 828751509 828391218 313895670 137593274 981634990 340196913 938400070 12452200 541719679 232830195 290356658 965541992 491399036 21699669 403608129 166056263 378627953 400965995 83909915 112132710 342959144 822866756 982956057 733874879 498724953 165215584 310172663 477828075 665659783 868503616 255048140 728350417 836317620 977071304 195480028 303207037 431110342 772906404 364816798 656892702 763779032 795724834 760416316 841241597 770984852 402887547 212773996 847726835 647525136 607893126 706132472 370341260 532232016 703970726 315216737 721745082 516859600 610295066 166176360 395801824 946566666 110811643 574386063 708654509 123782119 490798551 720664209 721264694 589157994 538116769 84870691 650287367 228746897 915821834 201484878 902851358 190676148 415137441 187673723 178065963 893964180 964941507 23501124 354848747 256249110 58809642 503528833 181308582 348363509 648606009 694122772 508452810 158850443 493921073 689318892 868984004 384032318 290356658 303687425 715139747 617140595 12332103 363255537 519862025 481310888 28064810 69738469 498965147 69258081 102284756 142757445 223102338 550726954 352687001 364216313 128706096 543881425 78505550 315336834 987279549 11611521 910897857 606091671 354368359 880993704 379949020 564057721 395681727 450926347 853011103 409252688 685475788 518420861 809656086 401446383 35270630 738798856 229107188 805092400 647164845 739639535 998328473 207489728 442639654 410693852 262614251 438436259 574386063 49442076 887478942 237393881 436754901 510014071 922907557 818423167 422583455 923387945 484193216 88353504 315697125 280388607 381510281 72740894 63253231 208090213 14493849 994725563 593481486 581471786 414416859 820464816 820104525 335152839 449004795 858415468 613417588 891201949 906814559 922907557 559013647 626027773 887839233 475426135 360973694 704811405 327947019 455850324 364816798 705531987 666140171 625427288 119218433 871506041 905013104 47880815 90395153 223102338 262253960 966382671 66495850 721384791 80186908 17736468 777830381 106848442 803411042 880633413 35270630 400725801 166296457 758494764 407451233 456330712 671184245 312214312 316657901 477707978 497043595 724747507 525026196 534633956 672024924 801969878 991843235 295280635 903571940 936718712 37432376 974789461 810736959 308131014 201484878 165455778 820464816 783474940 660015224 623385639 780112224 792242021 214575451 524425711 348963994 746124773 151884817 47280330 958696463 648846203 382350960 750328168 178786545 514577757 718262269 772065725 706732957 315697125 234511553 484193216 417659478 946806860 454168966 178786545 114654747 857574789 837398493 851930230 524065420 840040627 986799161 308251111 853731685 988960907 650887852 459213040 93998063 798607162 514457660 932515317 877270697 772906404 495842625 87392728 796685610 649446688 673586185 43076935 262374057 769783882 777229896 799207647 818182973 142757445 928672213 519021346 274383757 939000555 94478451 989441295 306689850 761016801 45959263 949328897 123541925 109970964 902010679 460053719 740240020 109970964 615939625 347402733 573545384 974068879 369260387 210372056 15214431 176504702 552888700 369260387 789840081 728350417 960137627 210372056 450205765 216376906 28425101 912098827 103966114 959417045 123662022 918944356 117777269 499565632 592040322 733634685 324464206 221541077 540398612 135431528 716580911 286273360 353047292 318459356 513737078 256489304 871626138 769663785 400485607 194519252 310172663 609334290 275824921 20498699 824067726 507011646 685715982 155487727 798366968 666260268 69978663 675507737 486475059 621704281 221060689 481070694 681152296 6807641 507492034 775188247 631672332 176024314 475065844 811097250 341758174 802570363 911738536 366738350 401566480 656772605 441198490 296001217 694362966 658814254 550486760 639358540 587957024 148882392 982715863 627228743 380309311 112012613 586515860 39954413 89674571 813258996 649446688 677068998 318339259 853251297 917503192 287594427 566699855 820945204 778791157 648606009 874028078 92797093 200163811 475546232 92436802 131708521 268859295 529109494 781673485 908736111 742401766 814099675 920505617 787077850 340437107 328667601 878711861 176144411 700728107 67336529 309692275 899488642 637677182 635875727 86672146 792482215 127385029 151884817 196560901 228386606 325304885 656292217 250244260 846405768 950770061 121260082 301045291 967823835 849288096 903451843 778791157 858175274 952091128 256849595 958576366 945005405 150443653 941642689 38993637 999889734 763058450 156688697 822266271 665539686 641880577 328187213 401446383 779992127 896486217 821065301 860216923 977551692 703730532 959897433 534513859 530790852 885797584 59530224 236433105 910537566 846165574 572944899 569822377 489717678 937799585 934316772 656292217 240516403 788038626 471943322 217097488 610174969 939240749 325304885 757533988 334192063 400125316 852290521 663978425 897326896 742281669 786957753 537396187 755132048 172301307 84630497 669622984 328907795 373703976 785636686 740600311 231629225 569942474 197881968 210852444 816501615 674667058 4525798 404809099 598405463 857214498 786957753 713458389 121620373 853491491 259972117 791881730 945846084 66856141 892643113 268138713 252886394 410093367 676108222 593241292 212653899 179026739 815060451 548685305 820464816 351726225 317018192 662537261 255168237 848567514 646204069 532232016 708174121 790920954 991482944 585074696 948368121 188874693 390517556 506170967 254687849 538356963 688598310 580871301 894444568 776269120 146960840 515778727 993284399 401926771 406850748 433512282 389556780 568381213 467139442 987639840 432431409 994725563 202445654 921706587 206168661 695563936 961698888 498124468 889640688 358932045 570542959 115375329 663978425 828030927 548445111 833795583 868623713 552168118 248442805 630351265 855292946 239675724 790200372 720544112 23381027 995326048 208210310 304408007 64694395 286873845 737357692 860817408 267298034 287354233 68057111 805332594 126063962 180227709 150203459 542079970 319780423 680792005 592760904 981034505 182749746 148642198 790800857 919544841 23621221 906934656 564538109 915821834 957495493 880633413 577508585 826950054 139154535 172781695 930473668 356049717 51723919 183470328 590839352 71419827 887478942 726669059 457891973 93517675 656652508 333951869 568741504 123061537 464377211 413576180 371181939 255528528 95919615 604170119 266577452 825749084 159931316 629870877 379228438 865621288 699166846 860817408 405889972 179026739 222141562 357130590 305729074 749487489 653650083 853611588 322182363 420301612 62772843 976831110 977071304 827670636 874268272 26503549 449244989 512536108 583273241 228987091 345721375 909096402 191997215 428348111 779992127 423063843 578829652 400485607 20738893 798487065 703009950 359532530 50522949 331309735 444681303 25903064 192837894 419581030 602248567 1042985 697965876 298883545 154406854 61571873 469421285 458132167 434112767 498724953 577268391 54966538 441438684 174943441 883395644 349684576 250724648 26983937 895045053 194879543 290837046 441558781 2964537 582552659 656652508 749247295 272582302 167617524 22540348 657973575 644642808 434833349 946686763 806653661 47280330 581591883 280388607 741200796 265136288 612456812 377186789 481671179 983916833 572344414 248082514 202085363 567540534 56167508 857935080 32508399 939841234 155007339 356650202 469060994 185391880 274383757 410453658 846045477 567540534 139394729 164615099 764259420 322182363 628910101 633593884 477707978 566699855 500406311 214215160 61451776 523945323 564177818 153325981 949809285 892643113 351486031 920025229 116576299 985357997 338035167 523825226 695563936 768943203 792722409 721745082 896125926 342959144 176744896 623265542 65294880 345481181 591439837 801009102 822866756 492239715 16295304 942843659 690880153 274023466 288074815 623745930 132909491 864780609 196440804 526107069 252526103 505210191 458372361 263575027 271381332 264055415 629630683 262133863 587356539 316537804 889400494 745884579 40194607 205688273 568501310 532712404 439397035 152725496 161372480 669743081 927591340 86431952 98681846 735556237 596003523 18937438 691480638 522143868 376826498 80547199 509893974 175664023 629390489 617981274 249043290 768222621 986919258 482391761 108289606 707933927 908135626 817342294 7288029 7167932 778550963 358571754 174342956 495842625 402046868 651368240 762818256 753810981 473264389 749967877 243638925 839079851 547604432 311133439 661096097 494761752 510854750 962539567 594922650 669983275 279187637 552168118 99642622 651728531 696644809 332390608 521062995 820945204 698566361 493680879 718862754 454048869 268378907 883515741 960377821 413816374 923868333 201364781 839440142 465337987 879552540 236433105 660855903 872827108 528749203 716821105 704090823 165215584 233911068 567420437 985478094 326145564 33949563 559614132 51844016 695443839 395441533 90154959 673586185 689559086 909937081 645243293 82588848 654851053 711536837 242918343 56527799 943083853 932755511 371181939 507131743 835957329 296601702 654010374 475786426 635395339 319540229 173382180 317738774 22540348 374904946 35030436 691120347 691480638 62412552 602368664 91596123 12332103 734355267 954973456 812538414 418500157 464016920 36591697 991843235 789599887 197521677 565018497 128345805 695804130 883395644 38273055 859136050 648365815 428468208 756813406 386194064 396522406 302846746 474345262 866702161 734235170 439757326 998568667 406250263 525986972 814099675 792602312 911258148 171460628 447323437 706252569 580991398 304648201 7408126 186472753 739879729 366378059 64334104 737357692 322302460 8128708 80547199 564658206 911978730 774347568 905493492 337194488 657252993 509893974 509173392 753690884 170379755 576307615 107929315 501246990 812298220 235472329 457411585 344400308 203166236 888800009 816141324 865501191 882795159 112973389 675627834 8729193 553008797 849888581 360733500 235232135 177225284 500046020 133269782 176744896 548325014 300805097 248082514 159090637 509053295 113693971 234271359 45358778 413335986 21579572 611015648 690279668 850248872 548805402 216977391 225864569 307770723 892042628 800168423 208690698 931074153 491158842 96760294 137353080 804011527 422943746 668782305 799087550 330949444 62772843 176024314 522384062 599486336 305729074 933235899 310172663 793563088 565618982 824307920 272942593 200524102 46319554 17256080 250244260 987399646 807494340 490918648 452127317 818423167 204247109 628069422 649566785 180588000 674426864 929032504 322403 860577214 540398612 487555932 582792853 227305733 336594003 46920039 950169576 976951207 87152534 94118160 33108884 508212616 513616981 73821767 903211649 866461967 785516589 707813830 255408431 176504702 721024500 364936895 225264084 945846084 942843659 152725496 420421709 502447960 966863059 399885122 346081666 196320707 537996672 958816560 682113072 954853359 393039593 828391218 32028011 354488456 812298220 979353147 625667482 983796736 23981512 846045477 753450690 845565089 592881001 239195336 417179090 993524593 357610978 457291488 491278939 362775149 893363695 571023347 832114225 256129013 343319435 574386063 64334104 188394305 801489490 669983275 238714948 210612250 70579148 78025162 801489490 238114463 808815407 940321622 835717135 230908643 984157027 869584489 235832620 874868757 593721680 163534226 623866027 702529562 276785697 974549267 10530648 313415282 199082938 32148108 587476636 246281059 946206375 619062147 702049174 120059112 804612012 514697854 30226556 267298034 374424558 287954718 912098827 235232135 798967453 578949749 506291064 712017225 79106035 667581335 198722647 952091128 462936047 816741809 45839166 565378788 178065963 838959754 924829109 291197337 500886699 191636924 793202797 921106102 169539076 922427169 2123858 270780847 741801281 985958482 655811829 608133320 292278210 806053176 780352418 729551387 616179819 755011951 49562173 928071728 98801943 531511434 150443653 640559510 488396611 719703433 97600973 33589272 264055415 74061961 819744234 854692461 662777455 260092214 793923379 29505974 258530953 43557323 281469480 686316467 58689545 702529562 324944594 347763024 553489185 714539262 205688273 656892702 436514707 59530224 608373514 966142477 507371937 976951207 692081123 857454692 46439651 718022075 290716949 436154416 646804554 789359693 366137865 240036015 170499852 422823649 701808980 368299611 254567752 564297915 464977696 662417164 79826617 395681727 107569024 984397221 511215041 588437412 102164659 120659597 262734348 624586609 281469480 765940778 722225470 131108036 871866332 707933927 186352656 219259234 579670331 807134049 692081123 448644504 333471481 466659054 436034319 476747202 223102338 436874998 660976000 22420251 685956176 489717678 649927076 511455235 185992365 227906218 771945628 386073967 126184059 931194250 537756478 59169933 804131624 67216432 135911916 823106950 69137984 803411042 464497308 123782119 747085549 998208376 649566785 761377092 796205222 16775692 628309616 784796007 241717373 842322470 726789156 410453658 321221587 118377754 748526713 351245837 417899672 124983089 161132286 860457117 491999521 399404734 522143868 62532649 610775454 59530224 581111495 746605161 651248143 192597700 790560663 389436683 527548233 546043171 935757936 97360779 721384791 285552778 48601397 549886275 175664023 453448384 573545384 939601040 498244565 491038745 181068388 154046563 819984428 790320469 435313737 616900401 398684152 78145259 846045477 514097369 883635838 367699126 731352842 593361389 834275971 874628563 457771876 901410194 167857718 298162963 190796245 57368478 974669364 75262931 1283179 560695005 676228319 565138594 78865841 728590611 850248872 974188976 974789461 733514588 736997401 745644385 460774301 725588186 417058993 166176360 79586423 999409346 399284637 825628987 396522406 77424677 920385520 167017039 756092824 49562173 239675724 384392609 896486217 605130895 360373209 837998978 551207342 195480028 712377516 913539991 271021041 732073424 926030079 955573941 131468327 100123010 547604432 78625647 643321741 703130047 798006677 673706282 939961331 622544960 84270206 797045901 620263117 732193521 767261845 882194674 321942169 800168423 103846017 184911492 592881001 521663480 357731075 505570482 251565327 623505736 671544536 689318892 410453658 248202611 273663175 910057178 180588000 883275547 267898519 435553931 879072152 788278820 270060265 862138475 744683609 173021889 781073000 768703009 82949139 892282822 592160419 23381027 367699126 247241835 279908219 507011646 895765635 97240682 671304342 520462510 368900096 240156112 955453844 758014376 239795821 46799942 539798127 222261659 579430137 596363814 466058569 904532716 651007949 358451657 711897128 428948596 433872573 979353147 845084701 511455235 586876151 611375939 611856327 361814373 765220196 739399341 228506703 412255113 117176784 999289249 658694157 425585880 327947019 364936895 223462629 58569448 883876032 908616014 263214736 544121619 859976729 151164235 941282398 880273122 836557814 204367206 937799585 935037354 177585575 762457965 577988973 566940049 352566904 694603160 262494154 402647353 996527018 249523678 853971879 488276514 405409584 176504702 62892940 379348535 986558967 331309735 120059112 646684457 210492153 176144411 397843473 344280211 340917495 867542840 251205036 516018921 656652508 559734229 800528714 923387945 798366968 461374786 146840743 434713252 379348535 29265780 847126350 566099370 485394186 574265966 394600854 236913493 134590849 118377754 325064691 655091247 416338411 505930773 155968115 794764058 519982122 59650321 387274937 222501853 489117193 522624256 197881968 265136288 408652203 245440380 297082090 177585575 533072695 856373819 9569872 457411585 40434801 761256995 19417826 239075239 224423405 295520829 726909253 190315857 674907252 776389217 992443720 629390489 723786731 691360541 250124163 225984666 396642503 229107188 825628987 348963994 2844440 449605280 717421590 566459661 287114039 409252688 202306 51723919 304408007 374904946 546043171 257209886 563697430 631912526 164134711 253606976 476987396 746605161 915941931 198722647 31907914 173622374 446002370 507371937 300564903 833075001 917623289 243999216 105046987 48481300 753690884 796205222 709375091 717301493 480950597 166296457 586035472 990762362 197761871 720904403 619662632 600927500 238955142 262854445 495001946 435914222 954132777 111292031 609694581 770504464 967703738 222742047 189355081 849768484 565018497 12452200 171941016 610655357 28905489 69738469 393159690 205448079 751529138 573425287 218418555 43917614 453088093 611375939 544241716 72260506 167257233 510614556 942723562 740840505 545082395 250484454 979112953 744563512 273182787 429909372 742521863 655571635 815300645 198122162 72380603 196560901 928552116 695083548 80787393 35630921 189355081 469661479 900569515 715620135 380189214 219499428 321221587 961818985 793563088 516139018 851089551 942603465 185271783 194279058 654130471 526947748 333471481 530430561 331309735 429428984 970586066 556851901 527187942 49802367 151284332 565138594 649566785 427387335 68777693 982835960 929873183 57728769 955694038 683193945 486354962 31907914 539678030 475185941 946086278 863219348 663498037 713578486 446602855 328667601 656052023 752970302 597804978 987159452 591199643 614738655 33349078 817222197 898768060 502447960 40795092 202805945 286393457 735436140 560214617 302486455 195600125 191396730 473264389 89794668 788879305 590238867 223822920 755492339 558172968 843163149 400725801 147921616 292998792 58329254 250604551 501246990 689078698 118497851 127024738 101203883 992924108 803531139 445882273 996406921 776509314 819744234 890841658 487676029 627348840 237754172 128465902 668662208 442279363 65414977 705051599 23501124 900929806 501246990 33829466 656172120 592040322 978632565 343559629 399765025 666260268 299964418 242077664 281109189 884596614 678750356 314856446 682694 13292879 13172782 411174240 244239410 245200186 366137865 532712404 852410618 32508399 878111376 499085244 122941440 468460509 424745201 569221892 376466207 618341565 250724648 196320707 971546842 52444501 648846203 965181701 131588424 127865417 747085549 489597581 460894398 412975695 67696820 360733500 821425592 969144902 969264999 806653661 696524712 19297729 350645352 619182244 369620678 938039779 118617948 582672756 779151448 788759208 250364357 89314280 526827651 874868757 19658020 377787274 879312346 317498580 816501615 146240258 170379755 19417826 685235594 765820681 59890515 489957872 631792429 502568057 736276819 988360422 892042628 827910830 301645776 859976729 278106764 378027468 156568600 36831891 960858209 23140833 659654933 259371632 739399341 264896094 520702704 360373209 434473058 736757207 129306581 315336834 758614861 848207223 706252569 880633413 431230439 812418317 764139323 216497003 304648201 108409703 544241716 43677420 120899791 348243412 606812253 449004795 756693309 464137017 873427593 68417402 749127198 839320045 834155874 689318892 592040322 758134473 922186975 530190367 644762905 435073543 125583574 993164302 680551811 807494340 968304223 852770909 219859719 482872149 186592850 665659783 760416316 261413281 798607162 851089551 363495731 550006372 660375515 555290640 263575027 896366120 931674638 822386368 109250382 839920530 23981512 434112767 465938472 803771333 225624375 614618558 738078274 522263965 747686034 830552964 771945628 188634499 613897976 194158961 930353571 44398002 379108341 302726649 443120042 783474940 475666329 353527680 51243531 730392066 542320164 66976238 931074153 827790733 87392728 64454201 538356963 353287486 433632379 354008068 892402919 431470633 252406006 825628987 821545689 920025229 222261659 645003099 909816984 771585337 773626986 452487608 904412619 129306581 612697006 781433291 495362237 763779032 490198066 709975576 457291488 457531682 479029045 644642808 969024805 355209038 452847899 461134592 461254689 758374667 874748660 201604975 522744353 355569329 501487184 744803706 92797093 357370784 31067235 533432986 483472634 732433715 256489304 568141019 645843778 787077850 808575213 965421895 450566056 553248991 7167932 89074086 158970540 470862449 767742233 194759446 465578181 686436564 296601702 939721137 138554050 671544536 135791819 257209886 861898281 848807708 72860991 240636500 678149871 419821224 244599701 890000979 581711980 118137560 170019464 989321198 110811643 568621407 652689307 655931926 573665481 796085125 654971150 82949139 924829109 233911068 770504464 89674571 119818918 432431409 509533683 568621407 574506160 292278210 46799942 112132710 186953141 380429408 928792310 220580301 865981579 677789580 571743929 370221163 333951869 434593155 775668635 98922040 700367816 794043476 915941931 664699007 81868266 434473058 657493187 307410432 166776845 751649235 802210072 501967572 416338411 403968420 248082514 737237595 542680455 899728836 262974542 982355572 591199643 205327982 232349807 234151262 797045901 128706096 271021041 790080275 431830924 393519981 732433715 988000131 467619830 466899248 84510400 478308463 806773758 355689426 373223588 326866146 903451843 893964180 677309192 7288029 994605466 377787274 347883121 313415282 296361508 191396730 542920649 787558238 350885546 77905065 530190367 906694462 226344957 26983937 749847780 70459051 534994247 314976543 441919072 512656205 895405344 881834383 957255299 887118651 667100947 258651050 130147260 792482215 441798975 39353928 234871844 863939930 828151024 149482877 840040627 34550048 65294880 685715982 494641655 714058874 426546656 690279668 943083853 859256147 516739503 995205951 337915070 794043476 717181396 201244684 741801281 27344228 617140595 765580487 650767755 221180786 510134168 884716711 328187213 112733195 608133320 935277548 431350536 186953141 916182125 244239410 505210191 430629954 238114463 403728226 118858142 98201458 463416435 91115735 296721799 876550115 345481181 918463968 975389946 652329016 977671789 309572178 337314585 657613284 418620254 356650202 920145326 318819647 465217890 25302579 741561087 82829042 601287791 23621221 734115073 767141748 849167999 833075001 967943932 43917614 637436988 524065420 12452200 429909372 804251721 37432376 875589339 521062995 711656934 442519557 151284332 635395339 709254994 690159571 458972846 326145564 90875541 539798127 860577214 956294523 31547623 224183211 860577214 528989397 400725801 317858871 766301069 26743743 593721680 531991822 215896518 434473058 71780118 549285790 29746168 603449537 226585151 118377754 680792005 208330407 775068150 905493492 154526951 521423286 218178361 577628682 539798127 255888819 630471362 723426440 496803401 843283246 46319554 463296338 880032928 91956414 49802367 562376363 186953141 532592307 586155569 923748236 891201949 691240444 252646200 316417707 844123925 119939015 981755087 512175817 956414620 321701975 41875965 752850205 629630683 586155569 186232559 19778117 922307072 860096826 366137865 94598548 542920649 759575637 87993213 628189519 442159266 40915189 488756902 628910101 202306 693402190 894324471 998208376 388475907 462575756 374664752 679711132 12091909 325424982 220220010 214455354 748887004 1643470 26143258 586515860 820344719 487796126 650407464 988600616 492720103 470502158 665419589 36111309 91716220 600206918 789840081 737838080 76463901 351726225 522744353 878111376 263454930 430509857 535234441 376946595 44277905 719703433 498484759 231749322 967583641 758014376 800528714 450445959 288675300 674186670 761857480 956895008 691240444 85230982 938039779 71179633 951730837 321461781 233430680 800648811 748406616 853731685 894804859 132669297 145759870 694002675 739519438 593481486 567780728 733274394 840280821 979953632 317378483 788398917 980554117 122701246 454409160 855533140 507492034 743122348 803531139 833675486 664578910 265976967 828751509 318339259 667100947 73221282 647525136 410693852 359292336 459333137 233670874 485634380 455610130 169298882 867783034 603569634 360853597 110571449 806533564 417058993 187673723 589878576 828871606 654971150 530790852 459213040 302966843 231629225 608373514 491759327 467980121 552168118 628910101 517700279 119458627 596243717 563817527 91956414 762818256 335513130 49802367 955333747 623265542 898768060 367939320 51003337 613777879 729791581 117777269 212653899 851089551 767982427 108409703 595763329 295881120 749247295 229227285 684515012 205207885 72020312 939961331 557932774 9569872 46439651 620623408 737477789 146840743 996046630 571503735 383792124 207009340 256969692 420782000 526467360 764739808 994605466 137713371 482031470 579430137 38633346 644402614 281349383 770384367 23381027 918704162 908856208 372623103 926510467 880032928 767021651 625667482 920025229 20498699 10050260 993404496 94358354 189234984 782994552 757533988 472784001 206889243 544962298 245800671 764859905 127625223 958816560 561895975 384632803 353047292 367098641 490918648 740600311 686676758 32388302 45118584 858655662 890361270 245680574 493200491 814940354 494401461 715139747 10170357 952451419 506651355 485394186 578349264 788519014 27104034 886277972 323623527 547724529 766661360 115735620 561895975 4765992 400365510 527668330 962779761 257690274 5606671 600927500 476266814 669622984 327706825 373103491 164374905 868863907 786837656 194639349 489357387 814700160 233430680 353887971 784195522 635395339 498244565 414176665 491759327 455850324 605371089 750688459 975029655 937079003 465578181 996166727 893964180 181788970 388836198 303927619 180828194 374304461 786237171 986558967 654130471 245920768 594562359 948248024 377306886 632993399 795844931 455610130 81748169 659054448 255048140 880993704 268859295 433632379 939000555 93157384 15334528 216256809 752369817 579189943 801489490 551567633 961698888 489837775 628669907 683674333 821305495 990642265 924949206 122941440 312694700 417899672 368659902 90875541 894444568 815420742 168338106 254567752 64694395 354128165 61331679 961698888 300564903 251205036 894804859 478308463 80787393 970706163 810136474 786237171 958576366 596243717 515298339 199923617 737357692 958336172 919905132 80667296 613417588 282910644 709615285 638998249 53405277 683554236 977791886 717781881 769783882 216256809 871265847 705051599 194639349 286513554 347042442 184911492 890841658 658934351 440958296 215536227 223222435 574986548 516139018 82829042 983676639 405049293 163534226 561895975 974068879 36711794 802570363 222982241 381390184 641760480 614738655 93157384 579790428 892523016 344160114 254327558 791281245 454289063 591800128 311854021 611375939 828271121 72260506 985237900 413335986 247121738 528749203 202685848 911858633 73941864 159450928 370821648 383912221 697005100 858535565 448764601 646804554 276065115 38273055 406970845 905373395 499805826 961818985 479509433 455129742 729791581 906214074 126063962 41155383 344760599 453328287 969385096 662297067 53405277 457891973 867542840 15935013 798126774 405529681 315817222 497163692 653770180 745524288 71419827 21219281 973468394 239195336 938760361 580270816 2003761 176264508 23381027 436394610 252045715 268859295 51363628 929873183 164254808 116696396 284712099 660976000 32868690 82108460 603689731 40795092 234391456 5726768 153566175 754531563 7528223 847606738 578829652 179266933 198362356 696524712 754531563 939360846 632753205 537636381 672505312 772426016 704331017 828991703 815060451 564177818 671904827 347042442 541119194 949809285 117176784 513857175 885317196 287594427 167617524 353767874 942603465 916902707 88473601 104086211 202445654 998808861 844844507 118017463 929392795 863699736 453088093 197641774 46199457 726669059 696885003 770024076 397603279 938039779 172901792 170379755 945846084 337194488 393279787 209531377 192117312 881474092 174703247 315336834 586155569 237994366 935757936 309572178 691360541 616780304 904052328 945966181 344520405 793442991 776869605 349204188 37792667 835476941 864060027 959417045 972747812 384032318 855413043 105527375 136872692 880633413 52204307 406250263 99882816 283991517 741561087 497043595 700247719 989321198 703970726 791401342 838239172 3685119 645123196 705772181 150083362 724267119 358691851 230668449 167017039 143598124 81387878 981034505 609454387 501006796 729551387 70579148 391718526 900929806 634074272 860096826 717301493 877510891 816861906 673586185 66495850 751889429 326265661 341758174 91115735 240516403 652208919 802930654 792602312 266697549 731472939 19778117 226705248 252165812 719943627 450926347 804852206 486234865 275945018 340677301 801969878 730752357 887478942 431830924 790680760 626147870 813979578 529349688 209531377 899488642 845805283 970225775 105167084 563457236 431110342 912098827 642360965 964341022 296001217 476747202 96640197 408532106 436154416 849648387 85230982 179266933 344280211 284952293 341517980 218778846 670463663 930954056 824668211 668301917 987880034 259491729 613177394 698926652 25422676 934316772 567540534 706973151 415978120 920986005 420181515 318819647 22059960 188274208 960017530 545202492 311974118 345601278 779511739 853011103 502087669 117416978 639118346 341157689 968304223 607172544 381990669 893363695 41755868 310773148 964821410 774467665 394000369 715139747 547604432 954973456 473624680 481671179 714419165 943444144 519982122 536915799 299003642 445161691 186712947 993284399 582912950 33228981 342718950 297802672 621343990 570302765 871265847 451526832 906694462 249883969 226465054 755852630 372623103 707813830 425585880 882434868 181188485 211573026 473024195 673345991 48481300 985718288 751409041 68177208 7648320 339116040 260452505 739759632 173502277 983676639 653049598 887358845 49321979 266457355 963260149 726068574 261773572 923387945 283871420 766901554 329388183 810136474 954853359 314135864 727029350 152965690 789359693 948248024 478308463 695083548 302486455 227425830 146360355 430750051 313054991 610655357 205928467 295400732 503168542 486715253 29265780 8729193 229347382 764739808 437715677 224663599 697845779 326986243 52444501 96159809 852410618 665419589 566699855 161972965 11251230 528148718 983316348 749967877 978392371 105527375 521543383 501967572 28785392 870545265 734835655 214335257 739759632 611616133 310172663 168818494 66135559 681032199 400005219 940441719 364456507 849408193 426066268 681752781 262374057 551447536 104086211 775068150 908495917 747445840 215175936 4165507 206048564 830312770 959537142 958696463 267778422 731472939 522864450 795004252 100723495 644762905 253246685 996527018 946206375 326866146 379949020 636716406 3925313 381390184 832594613 448524407 975750237 141316281 46679845 94958839 246401156 328547504 657493187 585434987 596483911 934677063 281949868 892282822 354008068 222742047 398924346 227065539 86071661 406730651 360613403 677309192 393279787 217457779 942002980 438676453 392319011 290476755 940802010 699767331 549285790 631792429 460293913 748646810 234991941 495962722 989921683 503889124 804131624 92797093 858055177 286873845 109970964 551567633 437955871 431470633 379949020 263334833 874028078 316898095 773026501 877270697 42596547 628790004 958336172 776028926 778310769 611255842 892042628 896246023 336714100 521783577 927110952 88593698 488156417 807013952 352326710 888199524 812418317 947047054 429909372 655211344 320501005 247482029 502928348 9810066 455610130 459813525 795124349 526947748 742281669 819984428 856013528 500046020 903331746 970946357 22660445 367458932 15935013 686556661 772786307 798006677 195720222 463536532 871265847 457771876 936838809 185391880 54606247 437355386 772666210 897206799 501367087 773146598 649806979 69618372 937079003 576307615 720424015 375385334 817102100 538717254 659054448 895525441 165335681 97721070 40434801 561655781 216737197 357370784 818783458 263935318 726428865 961698888 213254384 565498885 771465240 935517742 802450266 429789275 82228557 964220925 179146836 879912831 853491491 953772486 400365510 603449537 301765873 178546351 23501124 358091366 389676877 407931621 281949868 362534955 924949206 575346839 940321622 713698583 128826193 962539567 15694819 391478332 154166660 37192182 597925075 317138289 872106526 878952055 297202187 768703009 152725496 346922345 619302341 54726344 85351079 216016615 119458627 578829652 167977815 531991822 340076816 100963689 720063724 262494154 457051294 743482639 696764906 211212735 757654085 992323623 89314280 781793582 880513316 856974304 801609587 466899248 830552964 609334290 572104220 990522168 161252383 221060689 737717983 170379755 535955023 820224622 100723495 27104034 242918343 90515250 561775878 854091976 255168237 902250873 339956719 982115378 689919377 97841167 56407702 742281669 642481062 667941626 544001522 933476093 538957448 640799704 471462934 683674333 132188909 252285909 703730532 430870148 303567328 226705248 296001217 723786731 100843592 705892278 823347144 84510400 721624985 798607162 659654933 658453963 281709674 642601159 600687306 527908524 753090399 209291183 250964842 881714286 73341379 520702704 903211649 11371327 623265542 313655476 36591697 700968301 10650745 268258810 173742471 944164726 216016615 400965995 838479366 766421166 892883307 907895432 51603822 835236747 962059179 771945628 340196913 700848204 317978968 295040441 584113920 723186246 859976729 209171086 822746659 804612012 667821529 302726649 51844016 603809828 709254994 453208190 119698821 977431595 811817832 50402852 484073119 730992551 386674452 445281788 314255961 649326591 364096216 565859176 184311007 191516827 444561206 429549081 65294880 237634075 477707978 66015462 301645776 46679845 422103067 354608553 913179700 960497918 966622865 975750237 567420437 574986548 942243174 489237290 483592731 284952293 402767450 944284823 842202373 458612555 534033471 524185517 379828923 519021346 701328592 573905675 695804130 477107493 549646081 141916766 838239172 859856632 145519676 586996248 885437293 26983937 701328592 196801095 227425830 278947443 201965266 521783577 618821953 618341565 922186975 289275785 183470328 424144716 294199762 760896704 72500700 651368240 22540348 553248991 797886580 533673180 849408193 699887428 352566904 590479061 563457236 309211887 466298763 939601040 372623103 17856565 947527442 272942593 499325438 984637415 479869724 482631955 445762176 263935318 350285061 711536837 492119618 588197218 459933622 865260997 995926533 835476941 343799823 536915799 209291183 224063114 968064029 87873116 403608129 242558052 469060994 660015224 343079241 5366477 969024805 850729260 899008254 235232135 872947205 154046563 663618134 215296033 884836808 766661360 329268086 487555932 456450809 794643961 555050446 782394067 292398307 620022923 155367630 657252993 563937624 329628377 148041713 971426745 768102524 3324828 108169509 568621407 450806250 427387335 597804978 139514826 827310345 202306 45598972 320981393 823106950 215296033 733874879 774227471 586275666 305608977 502568057 386194064 299484030 908736111 949088703 245920768 594322165 579910525 779151448 274023466 119698821 637677182 219259234 943924532 605010798 802570363 162573450 783955328 482992246 505090094 514938048 488636805 745644385 706132472 760896704 742281669 82228557 682113072 849288096 519021346 400725801 123541925 741921378 952211225 717781881 423664328 341758174 823587338 591920225 101203883 255528528 668422014 216016615 251805521 853491491 33829466 877030503 272342108 964100828 603089246 563096945 963980731 975870334 25062385 570302765 958095978 911978730 721144597 305608977 997247600 331309735 704331017 582432562 838719560 124022313 957015105 892523016 158370055 605731380 385833773 567780728 655811829 77664871 466058569 406730651 544121619 310292760 589758479 403968420 746725258 830793158 362895246 890361270 885077002 738438565 265736773 778671060 115015038 934797160 388956295 944164726 646564360 907895432 529950173 106007763 65655171 152605399 549165693 157529376 773867180 825508890 268018616 996166727 636716406 552168118 723066149 374544655 972867909 731112648 820224622 465938472 596243717 333231287 701088398 103966114 29265780 988360422 913780185 980914408 625187094 736517013 165455778 101444077 274263660 161492577 331910220 580631107 742641960 322782848 903211649 769063300 955814135 567060146 145279482 363856022 151884817 621223893 568981698 450445959 790080275 785156298 930593765 840761209 583513435 605010798 483592731 660976000 189595275 164975390 242798246 465217890 686556661 571383638 33228981 861537990 246160962 735436140 764739808 429909372 107328830 104326405 741200796 856013528 109130285 960377821 198602550 545682880 559373938 540398612 682694 683554236 158490152 625307191 195359931 231268934 549646081 330589153 853851782 661696582 587836927 298283060 587236442 72020312 853011103 723066149 588677606 968904708 637557085 295520829 777349993 310653051 794163573 426066268 884476517 239075239 997487794 549165693 997247600 453208190 479629530 573545384 750928653 100123010 372743200 803050751 72020312 841842082 809535989 821785883 687877728 960978306 179387030 597444687 683073848 360853597 71780118 517700279 67696820 955213650 162813644 848927805 27464325 194038864 600927500 398443958 167497427 225984666 405289487 339596428 589518285 289996367 102524950 854572364 630951750 906334171 13412976 681512587 650047173 246401156 263695124 180708097 155968115 910657663 553849476 834756359 661456388 504849900 919905132 392198914 257329983 221300883 391838623 702769756 817702585 859616438 104206308 489117193 572944899 638277667 601768179 434593155 293238986 156328406 800648811 793322894 597925075 21219281 89194183 514457660 688598310 846045477 258050565 840280821 529830076 419100642 761136898 167017039 383311736 22660445 316537804 777109799 637436988 819984428 155367630 14854140 968544417 691961026 518180667 502688154 446362661 967943932 272822496 996286824 113213583 910177275 58089060 701929077 625427288 331309735 130867842 712737807 37192182 609694581 851569939 392078817 123782119 197281483 868263422 615579334 235472329 860457117 144078512 128465902 404448808 258651050 953412195 522023771 58569448 211693123 897687187 82708945 165455778 482631955 304888395 469901673 301885970 265616676 770144173 108890091 142397154 331429832 998568667 127385029 247962417 268979392 986558967 239315433 273783272 142997639 632993399 406490457 231148837 159571025 308010917 244359507 895525441 984397221 652689307 87512825 53765568 338155264 211212735 365056992 464257114 282069965 805572788 568261116 890481367 546763753 519021346 239915918 681872878 590118770 706612860 464497308 408772300 565258691 287474330 521303189 171340531 513616981 614738655 512295914 125943865 732073424 88833892 36951988 207129437 335753324 289996367 948127927 886277972 987159452 134590849 687277243 219739622 44037711 539918224 829592188 635155145 904772910 514457660 612216618 401446383 954733262 780112224 294079665 745644385 361814373 222862144 475786426 312934894 42596547 691600735 161972965 144558900 876910406 375865722 789119499 517219891 471102643 534513859 569341989 908495917 115255232 291317434 501487184 983676639 498484759 620263117 965301798 462335562 298162963 643081547 677789580 538957448 513376787 415978120 368539805 681272393 908135626 54726344 739759632 385113191 929753086 906814559 527428136 123421828 79586423 726308768 116095911 756333018 786477365 185872268 696764906 474225165 571984123 256849595 785396492 819864331 725588186 62412552 164615099 944284823 886398069 11971812 68057111 152965690 780232321 675387640 477948172 337674876 535714829 279788122 898647963 709975576 829351994 529950173 338875846 957975881 43677420 410934046 379949020 362414858 249283484 873427593 563577333 660015224 85110885 452367511 656292217 874388369 223222435 667341141 783114649 979233050 984397221 251084939 724627410 668181820 496082819 760536413 578469361 341397883 11011036 45959263 285312584 196200610 644883002 768943203 868383519 177585575 343919920 310292760 19297729 329628377 227065539 632873302 84270206 871746235 256369207 851209648 910057178 438075968 980434020 602128470 24702094 865020803 2964537 249763872 421262388 105887666 461014495 265016191 925429594 793202797 767862330 387755325 345120890 710215770 802570363 300805097 396762600 265976967 476146717 819383943 216737197 571383638 946086278 407451233 863819833 619662632 768342718 261893669 330228862 321942169 225984666 542560358 114774844 900449418 971066454 902130776 60971388 75022737 923868333 215175936 390277362 55807217 171580725 634794854 790200372 378387759 362294761 196680998 345240987 711416740 710215770 301525679 315456931 340917495 483352537 458132167 937679488 452367511 695563936 571984123 649206494 107929315 839560239 170740046 410453658 262614251 743842930 911858633 370341260 692921802 922427169 500646505 230548352 839920530 251805521 562496460 776869605 940201525 710455964 409973270 732914103 147561325 911378245 833315195 929152601 86311855 770984852 467019345 703009950 936958906 458252264 513737078 979713438 261173087 303807522 33469175 273422981 694603160 850489066 540879000 538717254 597444687 98922040 732193521 667341141 773867180 91476026 659174545 695323742 897687187 686916952 98922040 922667363 827310345 157048988 485033895 574746354 46679845 146600549 384632803 479509433 661096097 767141748 519501734 775308344 512175817 135071237 653289792 244239410 26383452 918704162 474945747 403968420 438075968 280748898 428228014 759815831 919664938 792962603 284592002 170019464 70459051 68297305 994245175 547364238 807974728 745764482 817702585 496082819 176264508 885797584 113934165 563096945 951370546 358571754 142997639 84510400 834155874 761136898 364576604 337194488 156088212 76463901 797766483 541359388 407090942 291677725 589037897 223102338 505210191 154046563 640559510 240996791 72740894 326145564 265496579 546643656 968424320 842562664 677189095 239195336 557092095 678510162 477467784 710816255 988120228 491038745 407691427 397603279 163654323 699407040 67216432 172901792 670103372 951490643 868023228 360733500 105647472 435073543 360853597 283631226 659414739 24221706 424024619 757413891 280028316 691840929 364576604 469301188 439997520 996286824 465337987 36351503 16535498 978272274 65294880 745524288 699166846 170379755 728470514 950049479 513376787 760776607 294439956 17015886 957855784 891442143 621944475 764019226 243759022 348843897 798967453 317618677 632633108 954853359 372142715 352687001 740240020 461254689 246521253 74662446 606451962 371302036 747565937 205327982 636716406 499565632 437595580 187793820 774827956 448044019 440958296 485514283 535714829 634074272 744203221 247361932 158249958 2364052 253606976 710936352 8248805 895885732 429549081 123662022 450205765 382831348 624706706 992443720 845444992 728230320 992683914 164615099 119818918 921946781 481791276 421982970 564057721 624706706 762698159 11011036 206889243 963860634 807254146 899128351 478788851 577028197 500406311 788759208 977191401 826829957 677789580 788519014 557572483 339116040 481070694 954372971 207129437 561295490 598885851 908616014 315216737 33469175 60370903 678390065 337794973 322422557 74662446 263214736 808335019 143718221 765340293 806413467 631912526 125583574 875108951 873787884 135311431 657012799 275584727 767982427 268018616 714899553 30466750 683794430 298403157 773386792 133389879 785756783 661696582 84630497 437595580 927471243 352086516 158850443 794764058 569702280 289275785 851329745 211092638 487195641 239915918 248442805 70579148 244839895 5606671 963980731 722225470 300084515 246401156 5726768 850729260 334432257 626628258 181668873 940922107 701208495 459933622 728710708 287714524 471222740 513737078 569822377 488036320 12091909 665419589 579189943 650527561 139394729 277025891 663738231 650047173 175063538 987399646 967103253 600567209 794403767 93877966 679711132 165816069 924949206 144919191 557572483 209291183 796925804 703490338 292278210 943684338 811097250 308971693 902971455 445882273 942002980 673466088 824668211 381870572 853971879 904412619 170019464 253246685 378507856 259852020 822266271 199082938 605851477 283751323 608613708 944885308 405169390 377186789 467379636 314976543 113333680 242077664 661936776 589278091 988480519 146600549 829111800 759815831 534033471 828391218 58089060 325424982 746845355 106848442 528028621 546403462 739279244 420541806 974909558 785996977 124262507 837158299 702889853 854812558 675147446 25182482 312454506 134110461 704451114 816861906 366738350 613057297 970225775 766301069 737958177 346441957 114174359 784195522 342118465 683794430 339356234 892162725 431470633 482752052 278346958 821665786 20618796 90275056 155848018 828030927 940081428 285913069 965902283 725828380 471703128 133750170 19057535 917743386 897326896 30706944 95078936 801249296 650527561 271621526 349324285 412135016 367579029 746845355 29505974 250604551 702169271 73221282 727149447 203766721 880873607 745524288 965181701 553128894 960257724 643802129 442999945 506411161 997007406 999649540 872707011 986198676 661696582 556851901 971907133 703370241 978512468 920385520 670463663 544722104 241357082 443960721 901170000 647284942 716220620 540158418 184070813 313295185 423424134 614018073 286033166 747926228 83309430 990762362 665299492 92556899 953051904 153085787 573905675 25662870 264775997 787077850 440958296 127745320 58809642 558653356 299363933 927711437 260092214 741320893 984997706 77064386 574506160 964220925 386554355 359652627 995446145 537276090 381990669 95679421 378868147 297082090 32988787 677549386 508332713 917503192 938760361 535354538 430269663 784555813 977551692 772065725 276305309 389076392 637196794 156208309 499805826 196801095 221420980 919184550 837158299 553969573 649086397 351365934 551567633 920625714 889880882 910777760 760896704 337554779 258651050 343199338 563697430 838239172 413576180 813018802 705171696 196200610 749367392 395801824 2364052 836197523 102164659 233070389 345841472 264775997 746845355 932755511 218058264 31187332 487195641 24341803 673706282 496202916 74782543 320501005 678149871 209171086 202205460 934196675 624466512 13052685 195119737 679470938 717061299 207970116 933836384 509413586 336233712 511935623 238594851 666020074 153566175 278346958 951010255 154647048 923267848 120419403 585675181 888319621 39113734 578589458 171220434 416098217 414176665 341277786 838839657 760776607 124382604 5486574 215416130 818182973 979713438 299243836 448164116 503288639 859496341 207489728 584954599 878231473 356770299 345120890 41515674 738198371 70459051 643922226 455730227 967943932 229347382 611496036 165936166 595403038 504369512 533432986 579430137 562736654 82209 941522592 597684881 395561630 969385096 493921073 519501734 811217347 414296762 921466393 106848442 945846084 404208614 107809218 277626376 694483063 760776607 170259658 337194488 743842930 121500276 914620864 789599887 985117803 298523254 748887004 412495307 181909067 152725496 548685305 737117498 681512587 679951326 13292879 841001403 265136288 956414620 16415401 643561935 744203221 925789885 782754358 551447536 21339378 917022804 923387945 285792972 779631836 994245175 440357811 691840929 864660512 206168661 690399765 51243531 616540110 233430680 353167389 987399646 874028078 785396492 909096402 457291488 261173087 17976662 586515860 203766721 88713795 27584422 268979392 942963756 449725377 713698583 573785578 241477179 788879305 614018073 840040627 221060689 481190791 296001217 918704162 293959568 912339021 117537075 779872030 156688697 126664447 866822258 180467903 164134711 370221163 260092214 393039593 589398188 192837894 877510891 701448689 413696277 83309430 27464325 505810676 619782729 62532649 294680150 166776845 338515555 735195946 819984428 708774606 703250144 218778846 347883121 597925075 414536956 412975695 432191215 773626986 622424863 408652203 626147870 155127436 719463239 309331984 269940168 318939744 243278634 359652627 606932350 594442262 194158961 966742962 646924651 444921497 920025229 413456083 397002794 911498342 221661174 274864145 690760056 185391880 354248262 687877728 13653170 890121076 563457236 371542230 532111919 137713371 115495426 425465783 725948477 238955142 426426559 117777269 213134287 542920649 319420132 968304223 562856751 94598548 487435835 523825226 107809218 898287672 528869300 235472329 625187094 592640807 109010188 264055415 809415892 865140900 565859176 333471481 38032861 809295795 211813220 797286095 712857904 726068574 212653899 595523135 716701008 325905370 8488999 23501124 434593155 90034862 259251535 415017344 595282941 10890939 940922107 678029774 913780185 538957448 88953989 841241597 905133201 100963689 972988006 123421828 531511434 397483182 372382909 313415282 228626800 684034624 280268510 512536108 215776421 87753019 880753510 162813644 2964537 848087126 371302036 595883426 154286757 59169933 801609587 376586304 707213345 673466088 645483487 246281059 951971031 713698583 284832196 943804435 106488151 252526103 856734110 358571754 71179633 627228743 440958296 618461662 516259115 3685119 115735620 434593155 709134897 918223774 605010798 366378059 899248448 754651660 408772300 89914765 765820681 99882816 49442076 509533683 438556356 815420742 161852868 955453844 913539991 90515250 250844745 673826379 9209581 731232745 593241292 286873845 100243107 850489066 709375091 572704705 633713981 161972965 161252383 972147327 238354657 681872878 778070575 174583150 876069727 454168966 903331746 375745625 809656086 397483182 502928348 48361203 636236018 839440142 61932164 75383028 593721680 328307310 834155874 653289792 438676453 655091247 632873302 300444806 592160419 682113072 161972965 364336410 350645352 823587338 102044562 684515012 403488032 706252569 487676029 49442076 31667720 755132048 886518166 411894822 657973575 620503311 125463477 199683423 713338292 285312584 317138289 631071847 157169085 160411704 46199457 506170967 36831891 450325862 280388607 436034319 978152177 662056873 645483487 173622374 582912950 754531563 384272512 873547690 424024619 525746778 942243174 464857599 338875846 232590001 626628258 837158299 376466207 923027654 466779151 474585456 818182973 75623222 390997944 775308344 840280821 684034624 455970421 49562173 181668873 798126774 36231406 579670331 396762600 124142410 535955023 766901554 476507008 524185517 854812558 5126283 13893364 264175512 504129318 456811100 780592612 359532530 518540958 192717797 983316348 275224436 626988549 129306581 159210734 392799399 342598853 119098336 1403276 849648387 838119075 865741385 878831958 907174850 45118584 94958839 405169390 836918105 303207037 308731499 786957753 512055720 710816255 583753629 177465478 142877542 382951445 841001403 640079122 857574789 307050141 536555508 716100523 760296219 145759870 740840505 721624985 124382604 987759937 56647896 582912950 417299187 985598191 737237595 956054329 734115073 15574722 864420318 504249415 86912340 830552964 860216923 609934775 215416130 574265966 448764601 547484335 780592612 604890701 569221892 448164116 479269239 867542840 248442805 243518828 802570363 855773334 463416435 155247533 238114463 642120771 333591578 606932350 70218857 331309735 844123925 369500581 892402919 999169152 390997944 438916647 319059841 332750899 900689612 159090637 265496579 54005762 417179090 621343990 143718221 695804130 296481605 241477179 217938167 331910220 706132472 826589763 375625528 83789818 411774725 300204612 952451419 950049479 63853716 778671060 558413162 730632260 145159385 300805097 357731075 148762295 256249110 27464325 669622984 466298763 732313618 23861415 808935504 890841658 59890515 694002675 58329254 937439294 37552473 543881425 910057178 513977272 576908100 150924041 480470209 471222740 106127860 990161877 392799399 673105797 622304766 984877609 566940049 332991093 725708283 145879967 632633108 564418012 499445535 362534955 494041170 129666872 384392609 307890820 243999216 119098336 850849357 319900520 559253841 161372480 614258267 609694581 40915189 556851901 988720713 163294032 508933198 389917071 922307072 505450385 926990855 322542654 132429103 237153687 746364967 749367392 152365205 109130285 708654509 218298458 769063300 162333256 353047292 620863602 402166965 295640926 983196251 574866451 371061842 454649354 425465783 924348721 280148413 85351079 943444144 792482215 504729803 905373395 601648082 356169814 372983394 60731194 599966724 436154416 121260082 279908219 136752595 2724343 459092943 611976424 225384181 335753324 892763210 980193826 880393219 311733924 589638382 528869300 477227590 967823835 317618677 144678997 379348535 649446688 778911254 565618982 326746049 115735620 187553626 380309311 106007763 637076697 837878881 506771452 11971812 158370055 189114887 761377092 649806979 636115921 643561935 539557933 492359812 866461967 215055839 663618134 663618134 842802858 13773267 614738655 226104763 810857056 426306462 528989397 212053414 205087788 814700160 64093910 767502039 793683185 26863840 86311855 503648930 753330593 585915375 338275361 445161691 134831043 465578181 460774301 97480876 661336291 490438260 376706401 555410737 856734110 340677301 165335681 243158537 439276938 237153687 865981579 596123620 677789580 694483063 921826684 137953565 277986667 534273665 464617405 95679421 363856022 596604008 267658325 858055177 740240020 187433529 534153568 703970726 585675181 97480876 266097064 145639773 124022313 112012613 565138594 902611164 713458389 58569448 368059417 330228862 864540415 958696463 441678878 981274699 659654933 302606552 145279482 314616252 488876999 649446688 503648930 332510705 721384791 696885003 392198914 591920225 851810133 455369936 750928653 469661479 888559815 983436445 478668754 657373090 264055415 658574060 373944170 836437717 936838809 486715253 934436869 769063300 337674876 370221163 925669788 175543926 675387640 843763634 259611826 201484878 945125502 265976967 357851172 186232559 998568667 237513978 473504583 978392371 706612860 497884274 340437107 111171934 493200491 22540348 879072152 115375329 81748169 116816493 947047054 932995705 901530291 393880272 52924889 431830924 846886156 420421709 439156841 7167932 21819766 763058450 363615828 436274513 421622679 758254570 479509433 317258386 418019769 737958177 231869419 82708945 853371394 200884393 504369512 513977272 575106645 516018921 528749203 956774911 895285247 449605280 114414553 457411585 53285180 34790242 724267119 559013647 668902402 930353571 122220858 298523254 821665786 153566175 526467360 262974542 66375753 365897671 550246566 531031046 808815407 400485607 598165269 150083362 643682032 656652508 589878576 435553931 480350112 192957991 496082819 20378602 308010917 113333680 139394729 431710827 603809828 820344719 123181634 581832077 740600311 761136898 175063538 520582607 598885851 706252569 844003828 303807522 881233898 640439413 774467665 625547385 979833535 144078512 3685119 396882697 733274394 216737197 665179395 917863483 526107069 909696887 480230015 260332408 406970845 298763448 193078088 876189824 582552659 802089975 89794668 81267781 580150719 343079241 106007763 348963994 692321317 178065963 607532835 684755206 52684695 560935199 372623103 998928958 680551811 403728226 581711980 776149023 190315857 134470752 313655476 877390794 37912764 524185517 899008254 330469056 866101676 138193759 734355267 695323742 522504159 522984547 895285247 718142172 162573450 977671789 180227709 836557814 770984852 900569515 491278939 758014376 733874879 856614013 446602855 336954294 386314161 308010917 769303494 127625223 583153144 154046563 968904708 650767755 914260573 423063843 367218738 650047173 28184907 294199762 749967877 512896399 112132710 923748236 576547809 718262269 370941745 246761447 134831043 73221282 710696158 988480519 400245413 507131743 399765025 927711437 333831772 333231287 824908405 365537380 359532530 771465240 873547690 654730956 890961755 457051294 998088279 880633413 826829957 680311617 35510824 566459661 254928043 135191334 96279906 518180667 122821343 629270392 914620864 582912950 302486455 412135016 746725258 718862754 503168542 358091366 182269358 344880696 148161810 636236018 733994976 991242750 573064996 302486455 755612436 82108460 7768417 893964180 218898943 435674028 58809642 173141986 173742471 890721561 174102762 389436683 746364967 838959754 351005643 326986243 879552540 518300764 698206070 740840505 226465054 200524102 674066573 420421709 229227285 515538533 663137746 29385877 897206799 702289368 686076273 12452200 803891430 81507975 902971455 652929501 154166660 846645962 486595156 332270511 742281669 394961145 993044205 748646810 219499428 390877847 646083972 505930773 604170119 645003099 353287486 297922769 512656205 390397459 293479180 93757869 244359507 988360422 843163149 151404429 974669364 861417893 660976000 508572907 110931740 606211768 638517861 733874879 288315009 653409889 423664328 382831348 963380246 423424134 857935080 575707130 512295914 56527799 26143258 749847780 105407278 766421166 151284332 255408431 843763634 602728955 143718221 36231406 957975881 419701127 181668873 351486031 679591035 9930163 973468394 310773148 974068879 97360779 249283484 344280211 502087669 103725920 813258996 182509552 957375396 769183397 697845779 783955328 705772181 286753748 348603703 355929620 79346229 126664447 729671484 374784849 181909067 607172544 447443534 100603398 481791276 41635771 154406854 558893550 908015529 100483301 748406616 27704519 49442076 929873183 566459661 724867604 425345686 751889429 22900639 589278091 50402852 615219043 667821529 102885241 214815645 174222859 807734534 896246023 840400918 990522168 663377940 980193826 334912645 901170000 795965028 738318468 543641231 242197761 90395153 587957024 646804554 203526527 656052023 490918648 347282636 221300883 187673723 892763210 293479180 671424439 219619525 979353147 172901792 219739622 869464392 240756597 127625223 901049903 400245413 572944899 976230625 816741809 989561392 721745082 415617829 500406311 767862330 232469904 437715677 416338411 595282941 317738774 400005219 554329864 407331136 208570601 73581573 875829533 833795583 603449537 164134711 617861177 764139323 4045410 276185212 941642689 83429527 380549505 488036320 995806436 629150295 59290030 926990855 683193945 391358235 529229591 64093910 743602736 798246871 398564055 722705858 236913493 698206070 330949444 712978001 318339259 54846441 285913069 525266390 337915070 495962722 865260997 538116769 200644199 798006677 198482453 247602126 769303494 315577028 736156722 553248991 457051294 80667296 28905489 265376482 120059112 53525374 924829109 889760785 872226623 127505126 26263355 860937505 965181701 39714219 997848085 418740351 540518709 277986667 842082276 705772181 779031351 915821834 359052142 239075239 705051599 759335443 402046868 2604246 918824259 263575027 954252874 938159876 567660631 19177632 467860024 689559086 356650202 918223774 764139323 286993942 77184483 562016072 174222859 29145683 60611097 268619101 170619949 646564360 827550539 600086821 697965876 933956481 440838199 99882816 166896942 850609163 644402614 467980121 294319859 916182125 876910406 147321131 216977391 90635347 46199457 235952717 365297186 949208800 303207037 273062690 231869419 126784544 285552778 897807284 301645776 808695310 171580725 394240563 323743624 167857718 855653237 68417402 5726768 132188909 840521015 762217771 256609401 249763872 402767450 710455964 663257843 120179209 72140409 513136593 952091128 215296033 801129199 391838623 347042442 15334528 465698278 321221587 446843049 453448384 143478027 532111919 399284637 421142291 351245837 10170357 652329016 753450690 458972846 645963875 247241835 60731194 28785392 249523678 94838742 995085854 265736773 64454201 346201763 734355267 480830500 490918648 543401037 664338716 871145750 472063419 974068879 775668635 914620864 131948715 118738045 310773148 53165083 650287367 289996367 644642808 223222435 51844016 278467055 816381518 791641536 943684338 117296881 870785459 761377092 485514283 846645962 225023890 696164421 975990431 814099675 757894279 901530291 935878033 373103491 221180786 567180243 678269968 252165812 349684576 350885546 133029588 659775030 683914527 955453844 852410618 318099065 719823530 961098403 533913374 181308582 842322470 429308887 498604856 640439413 289636076 85471176 331429832 127625223 857454692 875829533 138914341 408772300 3565022 783114649 466538957 417659478 909696887 159571025 442399460 622424863 825749084 342718950 787438141 221300883 730992551 879312346 517940473 446362661 689078698 361213888 122941440 811217347 232109613 714058874 361574179 595162844 952931807 888920106 502447960 615939625 663017649 54846441 561775878 582072271 88713795 558293065 836197523 46439651 919064453 638878152 362895246 361093791 70459051 723906828 758494764 34790242 146480452 592881001 759815831 173502277 321822072 918463968 281229286 90995638 132309006 159811219 795724834 139274632 289395882 337915070 424264813 590358964 871265847 409853173 444200915 845204798 374184364 799327744 187553626 172661598 988840810 53165083 672745506 515058145 243518828 563096945 236673299 994245175 951010255 566219467 730632260 653169695 258771147 216617100 836798008 155127436 452607705 417659478 398924346 322062266 666140171 281589577 523464935 969985581 183710522 868023228 562136169 518300764 873667787 87032437 722585761 232710098 266697549 880633413 24581997 784075425 269699974 341517980 73701670 655451538 821065301 943324047 401686577 397002794 356890396 125343380 200524102 328067116 197281483 205327982 884356420 623866027 273422981 564778303 417179090 379588729 464497308 356650202 257209886 482391761 115855717 406850748 75262931 412135016 63613522 405769875 103485726 611856327 377667177 195720222 522504159 648365815 506531258 742641960 349684576 417659478 940802010 564658206 362895246 655571635 452007220 920025229 956294523 771345143 729191096 894924956 108649897 463176241 9209581 405289487 533793277 597084396 333231287 746004676 120059112 868263422 282430256 654971150 564538109 543641231 866822258 11011036 902010679 420541806 67937014 511094944 629990974 941882883 38993637 936238324 142997639 32388302 709615285 850128775 953652389 401206189 179987515 120659597 144558900 822866756 158249958 23501124 232950292 561415587 54606247 262374057 698085973 912939506 671184245 571023347 59410127 525266390 816021227 960618015 273422981 902370970 580631107 151164235 935998130 147321131 770624561 230548352 877751085 922186975 641520286 55687120 458252264 107809218 670343566 403367935 261293184 616059722 275584727 598165269 320380908 530910949 981514893 637557085 623745930 583873726 933836384 548805402 239555627 203166236 761256995 39233831 847726835 377066692 223342532 951850934 699286943 366978544 490798551 692201220 125943865 340076816 371662327 292278210 767742233 317018192 20498699 11251230 407451233 923027654 770744658 208690698 848447417 577148294 837278396 719223045 749607586 18937438 718502463 709975576 627949325 872947205 470261964 283871420 237153687 855773334 456090518 648245718 208450504 996286824 501126893 357851172 52924889 463296338 310893245 79946714 873067302 142277057 481190791 167257233 106968539 528268815 255888819 233550777 745764482 565138594 107689121 585074696 41515674 455730227 479269239 929512892 623745930 797406192 527308039 986919258 997727988 849648387 201845169 205928467 415617829 264415706 260692699 636236018 245440380 384392609 847366544 967943932 650527561 167137136 828030927 390877847 40074510 791401342 155727921 436274513 909937081 659534836 120179209 759695734 914620864 773506889 154647048 17856565 329147989 421022194 926630564 924468818 527067845 429188790 401806674 488756902 260452505 601407888 737717983 52324404 493680879 460173816 240756597 873547690 300805097 815420742 91956414 101323980 613057297 100002913 287354233 178546351 298403157 632633108 942843659 755372242 766661360 607292641 329628377 18697244 140355505 876430018 44398002 805692885 322302460 529950173 322422557 121139985 733154297 335633227 819023652 51723919 136032013 283511129 991242750 133750170 813859481 910657663 983796736 16535498 867422743 810136474 436874998 884476517 708054024 920385520 617260692 649206494 477467784 152845593 285792972 784675910 520342413 665059298 470982546 686196370 348123315 693041899 788158723 354848747 382230863 696885003 701929077 528629106 537876575 375745625 529950173 58209157 641640383 209531377 753210496 120059112 646324166 612456812 329388183 160171510 568381213 921946781 354008068 587356539 63133134 714299068 925189400 372262812 19658020 156568600 824187823 966502768 207729922 840040627 519621831 211332832 122340955 488997096 113934165 408892397 149482877 789719984 982595766 998808861 821305495 814580063 76704095 764499614 595282941 33469175 864180124 480830500 899488642 995205951 396882697 228026315 340677301 285312584 365657477 174342956 844003828 600687306 621223893 52924889 551327439 606331865 96039712 870785459 358571754 630471362 581351689 312934894 531511434 436034319 561415587 112973389 316417707 268378907 561655781 441078393 64574298 203646624 455610130 401326286 132669297 255288334 430509857 691000250 279788122 206408855 863099251 325905370 242437955 32268205 356890396 283030741 552288215 776269120 244119313 3805216 404929196 717181396 488156417 261533378 128706096 523945323 607052447 291437531 476867299 211092638 982235475 849047902 502327863 197161386 586756054 666140171 665779880 306930044 147201034 168818494 331790123 448764601 303567328 202325557 712978001 624106221 311013342 420421709 469781576 73101185 80547199 973588491 830793158 633353690 908856208 521183092 536435411 885917681 191757021 565138594 104446502 352326710 184911492 291437531 948248024 542079970 254087364 134831043 776749508 774467665 333231287 771585337 874748660 638998249 601167694 291917919 942603465 865260997 369740775 649446688 638878152 749127198 908375820 241357082 724747507 516018921 326866146 897086702 699286943 58929739 350044867 90034862 944284823 281829771 526467360 439036744 776149023 281469480 689919377 677549386 236553202 326986243 311253536 322302460 850489066 231629225 966022380 185992365 168458203 479149142 470141867 990281974 94478451 809415892 799207647 405769875 692321317 293238986 250364357 691000250 636115921 786597462 552768603 676828804 282069965 604170119 67576723 14734043 900329321 473024195 664098522 315336834 634434563 394240563 628790004 275104339 852650812 498244565 179867418 238714948 67216432 535354538 107328830 234151262 921106102 144799094 172541501 177585575 308971693 324344109 398684152 599486336 803170848 499685729 140475602 209050989 413335986 614378364 380789699 849528290 15814916 620143020 21939863 528629106 311733924 84510400 196200610 935637839 40314704 949569091 202565751 988960907 538116769 920865908 891322046 939841234 812178123 998568667 574626257 321942169 924348721 875108951 365777574 808935504 677429289 652329016 711296643 919184550 799688035 131348230 650527561 232590001 497764177 779511739 979233050 906574365 313535379 7408126 154406854 629870877 855292946 42716644 71900215 627228743 216016615 689799280 585795278 461134592 33349078 543160843 516859600 417779575 516619406 451406735 936718712 513616981 329748474 607893126 763779032 142036863 60010612 559974423 653409889 327466631 286393457 30586847 837158299 7768417 655571635 311493730 809055601 547604432 430269663 696524712 729671484 774227471 889640688 827310345 869224198 594562359 957615590 858415468 94238257 631912526 157048988 289395882 86191758 2964537 574265966 13172782 192957991 603689731 719823530 195480028 543160843 665899977 955453844 651007949 115735620 573305190 944044629 274744048 880513316 701929077 776149023 331670026 745404191 937439294 939480943 852891006 662897552 52924889 89554474 417058993 28305004 589878576 24101609 170499852 342839047 966502768 504369512 726428865 671904827 749127198 518180667 849768484 659654933 527187942 399404734 164014614 213614675 477467784 105887666 505090094 653169695 780832806 974909558 704451114 304287910 89674571 475906523 775188247 851089551 164855293 794283670 193078088 752730108 966382671 732433715 670463663 144318706 854332170 631552235 799087550 489477484 47520524 665059298 996767212 867542840 649927076 455009645 815901130 567540534 595763329 676708707 150803944 518420861 468940897 956174426 941162301 779631836 435433834 490798551 244479604 839199948 253606976 799567938 24101609 766301069 92076511 876309921 466058569 913179700 774227471 55326829 366017768 131828618 573064996 927951631 412255113 854332170 719343142 7167932 888920106 303327134 602849052 555771028 507732228 86071661 177825769 273663175 281469480 125823768 556131319 68537499 634074272 298523254 165455778 320741199 765460390 992443720 172781695 468100218 397723376 677309192 643081547 273062690 956174426 36831891 375385334 799928229 307530529 370221163 324584303 73461476 827910830 769183397 383792124 856854207 865981579 828151024 920986005 870665362 55567023 763058450 557572483 184431104 656772605 187793820 783955328 660375515 13773267 652088822 534033471 907775335 626628258 407211039 299604127 733394491 846766059 860457117 791641536 141076087 1403276 898647963 454649354 932755511 816861906 646444263 820464816 57128284 675868028 3084634 567780728 758254570 485874574 688838504 153686272 873787884 951971031 854572364 784435716 736997401 489477484 930233474 289876270 35630921 146360355 172421404 57248381 45478875 269820071 32988787 114174359 455610130 498484759 369260387 221901368 235352232 7768417 983436445 100123010 666020074 312814797 531151143 40674995 266577452 910177275 488997096 296241411 438796550 341998368 118377754 571143444 76944289 432191215 933355996 607172544 429308887 605250992 718982851 600567209 907054753 91956414 641280092 82348654 629630683 18096759 140715796 846886156 696044324 928792310 251084939 975389946 241236985 487916223 851569939 52804792 589998673 953051904 234991941 433512282 272942593 664098522 609334290 756573212 63133134 296361508 813619287 786957753 320861296 96880391 39353928 22540348 684875303 885557390 992443720 328187213 239555627 525866875 571743929 552408312 883635838 869464392 535114344 160892092 853851782 723786731 369500581 171340531 846165574 556131319 274503854 983796736 88953989 892523016 989561392 30947138 886518166 853251297 780232321 261533378 294439956 445762176 334071966 235472329 973468394 725227895 227666024 85951564 598405463 788759208 54486150 350765449 145519676 339236137 176024314 842442567 978272274 31067235 402527256 146600549 748887004 271741623 37552473 54726344 548925499 516259115 366017768 831393643 703130047 905133201 91235832 183950716 950890158 166656748 360253112 400245413 513016496 732794006 876309921 209050989 580511010 130987939 974669364 86191758 560094520 596483911 666260268 994605466 871145750 638878152 863459542 759215346 23260930 931434444 162333256 949208800 102885241 717181396 880153025 326866146 905013104 179507127 465458084 332390608 343919920 20618796 524185517 292158113 780472515 305008492 162093062 887478942 891922531 613657782 740600311 369260387 568381213 868383519 73581573 470021770 850008678 419460933 138674147 113814068 348363509 852050327 751048750 803771333 692801705 646083972 316177513 256609401 851810133 549525984 548325014 94958839 722465664 787438141 844844507 766781457 555771028 432791700 332750899 990161877 660135321 512776302 413215889 623025348 101924465 965301798 738078274 549285790 750328168 940201525 553008797 71299730 512175817 160651898 136752595 54005762 553369088 971546842 126184059 130867842 221060689 232469904 263575027 685235594 235112038 256969692 866702161 18096759 850128775 776509314 476627105 314976543 443360236 287354233 94238257 814459966 967823835 433752476 150803944 651728531 979833535 361213888 539437836 335993518 443840624 763418741 127264932 970105678 444921497 199443229 341517980 469421285 244239410 52684695 201244684 638998249 453208190 417659478 842322470 976951207 903211649 610535260 649806979 154767145 69978663 782033776 113934165 70939439 887959330 797165998 917022804 212653899 150803944 367338835 618101371 264415706 611496036 822026077 56767993 954853359 848927805 662176970 820224622 464497308 942363271 37672570 395321436 798366968 803771333 455129742 781673485 614738655 130027163 595403038 89194183 536795702 148762295 258651050 787918529 298643351 161012189 423544231 8368902 960377821 271021041 769423591 770384367 173742471 644642808 717061299 655571635 639959025 387635228 665899977 434232864 493080394 202445654 866461967 476266814 171100337 781073000 951490643 528509009 973348297 500526408 322902945 248562902 590238867 265016191 146000064 865741385 319420132 145879967 711536837 891201949 413936471 799808132 991362847 652929501 146120161 520222316 434953446 544241716 671544536 291557628 185752171 832594613 231629225 55567023 485754477 849408193 324464206 541719679 491158842 993884884 293479180 372623103 877150600 809175698 960858209 438436259 695804130 401206189 472543807 258170662 984397221 160051413 338875846 443120042 648846203 305608977 710335867 47400427 751288944 994725563 78025162 935757936 30586847 275584727 796925804 922186975 389316586 763178547 769423591 505810676 801369393 689318892 940922107 603449537 755612436 762818256 409252688 455490033 316297610 911498342 204367206 910177275 283631226 857214498 476987396 814700160 251205036 315817222 461855174 314135864 678149871 17015886 550486760 365297186 831273546 858295371 769063300 677909677 398684152 143117736 848327320 276185212 197761871 554570058 337674876 88593698 120419403 15694819 739159147 154767145 158490152 779751933 408652203 372863297 684755206 340437107 401326286 131108036 396522406 884116226 957735687 260572602 356530105 597084396 146120161 753330593 142397154 190556051 178546351 865381094 345481181 608973999 449845474 715379941 209531377 835476941 45719069 201244684 761497189 406730651 145879967 11851715 769663785 728590611 970826260 933836384 733514588 64454201 915461543 749967877 504129318 822266271 929272698 395801824 533913374 308851596 696764906 677669483 830072576 513136593 379708826 260692699 52924889 839920530 249763872 450926347 156448503 548925499 220820495 96400003 603929925 542079970 708774606 211813220 328067116 140835893 840761209 373103491 478068269 54245956 966742962 349444382 774948053 682713557 733154297 805092400 238714948 531511434 290957143 745404191 477828075 729551387 160771995 688478213 975269849 58569448 589157994 517940473 721865179 796445416 791641536 734355267 641760480 763899129 579910525 470141867 390157265 442639654 848087126 230788546 659534836 760656510 336113615 987880034 721745082 158730346 457171391 693882578 897927381 14854140 699767331 674546961 843883731 452367511 583993823 855413043 293719374 176504702 749007101 171340531 640199219 97841167 845925380 238835045 425465783 844484216 18457050 29505974 747085549 74782543 596604008 194038864 338275361 257209886 366618253 102765144 822986853 553609282 209651474 976831110 679470938 782754358 598405463 855653237 40674995 937079003 687637534 626508161 568981698 73221282 448164116 348843897 198722647 794283670 735556237 882434868 756813406 873667787 561295490 375745625 589518285 43797517 908015529 738318468 900209224 91956414 593361389 544001522 74782543 917983580 318819647 394240563 769303494 667461238 679951326 67696820 332991093 981755087 280028316 583753629 418620254 801489490 625907676 839079851 942603465 371181939 909816984 205448079 83789818 235352232 805692885 596243717 562136169 334192063 497884274 996887309 358091366 950049479 555410737 937199100 124983089 362054567 290116464 622665057 34309854 140355505 225504278 753810981 354488456 638878152 614498461 127505126 948968606 6687544 556251416 411294337 632513011 440958296 536915799 785756783 601047597 412495307 233670874 312454506 94358354 440718102 149963265 878831958 666500462 436274513 884356420 436394610 852050327 295280635 601888276 698446264 740480214 162093062 907775335 435674028 507371937 833195098 656532411 959537142 652929501 128345805 650647658 924348721 77544774 19057535 375505431 397723376 708654509 536195217 588197218 118017463 195960416 1163082 535594732 742281669 926630564 551567633 777950478 748166422 943924532 80667296 108529800 336834197 453088093 350164964 896125926 844724410 199803520 243638925 541839776 210131862 814940354 510734653 185992365 66736044 674546961 211573026 200884393 380549505 67096335 254087364 310052566 501967572 891562240 642240868 530070270 948848509 188154111 563697430 323263236 744563512 368419708 643922226 301885970 261653475 589037897 999289249 520582607 938760361 361093791 29025586 285672875 764739808 291797822 438075968 201364781 133029588 988360422 922787460 859015953 878711861 64093910 205087788 41875965 95319130 957135202 774347568 644883002 905253298 735556237 657853478 809776183 286273360 455369936 523825226 533673180 212293608 864420318 562136169 499805826 577268391 466298763 945846084 321341684 408772300 44518099 976951207 727509738 326625952 170619949 937319197 773626986 443720527 997367697 815901130 543881425 421382485 649686882 903451843 77304580 396642503 478668754 538477060 973588491 884596614 319059841 973588491 149723071 681632684 817822682 598045172 703130047 14613946 461014495 125703671 886037778 744683609 776269120 72140409 463056144 65174783 551807827 995566242 538477060 402767450 393039593 813379093 732193521 633473787 741440990 600447112 250844745 271021041 892643113 332630802 74782543 548925499 210492153 6207156 205928467 528989397 308731499 421382485 165816069 274864145 545322589 779872030 253246685 592400613 249883969 773266695 588077121 382471057 329147989 52444501 996406921 361454082 888679912 665419589 261293184 957375396 890121076 970225775 674907252 774467665 557932774 883755935 579670331 267898519 409612979 502207766 489357387 227786121 189234984 484193216 700247719 291437531 230548352 681632684 621343990 231028740 369020193 106848442 129066387 706853054 8729193 656532411 602849052 457171391 259972117 440598005 371662327 235832620 129306581 321221587 580511010 440357811 378868147 481911373 325785273 16415401 89434377 881954480 913780185 237153687 329388183 523945323 331309735 715379941 725948477 285792972 495122043 563457236 387635228 971907133 579910525 994845660 170379755 553369088 474465359 743482639 298643351 668662208 445401885 26863840 879432443 392319011 128345805 575106645 516139018 374184364 381390184 546163268 433512282 502928348 691000250 306809947 742161572 827070151 936238324 389436683 851690036 972147327 857214498 761497189 783955328 338275361 464857599 935878033 697725682 672024924 529349688 99882816 681992975 395801824 30106459 258170662 280268510 758975152 353887971 51483725 285192487 482031470 36351503 670343566 654971150 674306767 364816798 940201525 598405463 878952055 673706282 377066692 495962722 657012799 992804011 825268696 261052990 731833230 522744353 178426254 708414315 45839166 471222740 655931926 802450266 153205884 211092638 707213345 75142834 572944899 204367206 774948053 471823225 509533683 150323556 599486336 976590916 666260268 842682761 676948901 61932164 797646386 491519133 576187518 52444501 359652627 828391218 222021465 324464206 992083429 96880391 32268205 390517556 374304461 546403462 271141138 325064691 609574484 724026925 458372361 619422438 114534650 119458627 443840624 504849900 648966300 871385944 669743081 699286943 66976238 914500767 285192487 177105187 701208495 353287486 875229048 585314890 257930468 853851782 817342294 632272817 876430018 677429289 644402614 611255842 162813644 31907914 755011951 375505431 755252145 919424744 6567447 692561511 952811710 762097674 323143139 165936166 72500700 744683609 704451114 95679421 95439227 645123196 678630259 665419589 535955023 653049598 721024500 351245837 544722104 459813525 564057721 266457355 893363695 641039898 620863602 912819409 130867842 321942169 653169695 954613165 763058450 148161810 375265237 659654933 240756597 652689307 22420251 825628987 431470633 677789580 268739198 712257419 656532411 366498156 48601397 43076935 682833654 65895365 865381094 750808556 661096097 819744234 127024738 271261235 499565632 526227166 627829228 574025772 448764601 304648201 528749203 469301188 346201763 422463358 53285180 75743319 53165083 98681846 347642927 87272631 17496274 849047902 833555389 739279244 425225589 542920649 249763872 31787817 951971031 98922040 750328168 354248262 717541687 794764058 97480876 801369393 757173697 72740894 931554541 267298034 217818070 515418436 88833892 6087059 452607705 384632803 78025162 624466512 490798551 74182058 502087669 636716406 447803825 144198609 799567938 960618015 492840200 725227895 853491491 274143563 279547928 120179209 705772181 601167694 621464087 730392066 234151262 3565022 692801705 390877847 568861601 2364052 957255299 774827956 479149142 454409160 573545384 230067964 719943627 792722409 922888 189234984 648125621 292878695 363255537 266097064 274623951 563457236 669382790 45478875 156568600 836077426 885677487 873067302 130147260 114054262 308491305 371902521 228866994 726548962 36951988 317018192 498965147 586756054 979473244 556371513 944284823 400485607 227786121 580390913 783955328 571984123 23501124 908495917 805452691 929032504 75142834 718622560 823707435 745284094 934917257 17856565 876670212 350405158 692441414 20618796 158129861 30226556 397603279 971787036 80547199 930233474 722345567 188994790 27944713 32388302 675387640 733154297 442039169 306209462 301165388 109970964 575587033 359652627 105167084 495722528 279067540 666260268 492600006 915701737 617620983 126784544 969505193 982235475 755252145 220099913 272342108 189355081 176985090 95919615 555410737 963620440 97961264 632392914 227305733 715980426 677429289 631432138 88953989 677549386 235232135 984997706 658814254 109610673 231629225 760656510 33709369 130747745 802810557 62892940 297802672 593601583 434473058 11251230 660976000 398083667 303447231 931434444 518180667 339836622 904893007 474105068 59169933 74902640 581711980 493200491 675747931 768582912 23501124 628790004 126544350 561175393 444921497 966742962 447803825 118858142 68297305 46920039 141676572 782033776 483592731 867662937 932515317 384272512 219259234 565859176 757533988 238594851 356169814 173862568 90995638 76704095 232710098 336594003 701568786 427747626 534393762 121139985 558293065 939841234 102645047 898768060 625547385 189835469 362534955 850609163 380309311 483472634 177465478 858895856 84030012 958095978 768102524 438916647 887599039 312814797 253847170 117416978 470982546 622544960 293839471 955093553 814219772 434473058 213614675 792362118 965421895 811817832 223222435 147801519 726428865 537396187 550726954 484073119 610655357 483112343 793322894 435674028 61091485 199203035 599966724 400365510 120419403 320621102 678390065 550847051 614138170 331670026 85230982 510734653 375985819 867542840 740840505 803050751 685475788 852650812 597324590 523104644 668061723 450806250 478908948 609214193 464737502 64694395 377306886 611015648 927591340 436754901 821425592 301405582 116336105 881474092 553369088 797646386 657973575 670223469 197161386 777470090 207970116 700487913 7528223 787678335 617500886 197641774 74902640 40314704 244719798 504609706 423424134 400485607 213974966 296241411 852050327 47280330 164615099 45478875 295761023 502808251 585675181 430149566 681152296 916182125 743722833 82228557 845444992 340317010 186712947 243879119 509533683 73821767 761617286 163053838 184311007 868263422 846525865 194999640 370701551 709014800 760056025 287954718 167977815 155247533 688478213 708654509 412615404 270900944 659414739 553489185 182389455 978752662 328787698 488276514 321461781 407331136 47760718 525146293 343079241 417779575 81267781 18336953 655691732 717541687 594682456 707573636 94358354 109010188 326265661 246401156 946446569 656412314 746845355 784435716 804612012 84030012 532111919 262013766 498845050 549525984 230067964 193918767 339236137 396522406 714419165 834275971 504249415 124022313 357250687 863339445 504729803 967343447 373824073 985237900 80907490 899128351 125703671 612096521 967463544 224063114 199082938 562976848 745404191 135551625 758975152 682953751 265616676 283150838 37912764 739399341 375145140 506050870 341878271 387635228 518781152 522744353 976951207 752970302 592520710 33228981 139274632 253486879 723786731 41035286 29265780 623265542 716580911 423904522 855413043 701929077 525626681 504969997 640679607 241837470 98441652 986078579 207129437 379828923 186833044 123061537 133389879 123181634 735195946 856974304 163173935 745884579 715139747 855052752 641159995 505210191 918944356 239795821 790440566 709134897 231148837 733634685 523705129 890361270 95679421 89674571 912218924 969865484 314736349 511215041 71059536 130867842 594922650 420661903 690159571 868383519 566099370 652929501 448524407 947527442 975510043 3925313 678630259 586515860 17616371 277626376 477948172 266697549 607532835 678630259 270660750 979833535 558172968 118738045 158610249 181068388 535594732 119098336 588317315 545802977 905373395 310292760 581711980 989561392 76583998 552408312 362655052 845565089 460293913 143958415 654490762 653289792 757654085 791041051 462695853 72981088 969024805 294920344 147321131 103485726 316657901 745644385 900329321 159571025 782994552 563577333 811937929 397723376 175063538 140235408 871506041 321701975 591920225 920265423 230908643 551207342 583753629 490678454 258170662 187673723 463536532 896125926 334192063 488276514 218538652 864300221 187793820 828391218 800168423 58209157 768582912 424024619 323743624 649686882 75142834 188754596 926870758 429669178 927951631 844484216 469181091 31667720 333591578 302966843 161732771 282430256 825028502 313895670 289636076 389196489 188274208 244839895 449605280 39233831 391238138 897206799 467259539 221781271 360613403 414777150 540758903 407451233 894804859 106488151 892763210 877871182 722585761 330709250 109130285 399284637 274984242 546763753 345000793 426906947 760176122 794643961 409012494 440718102 141076087 636476212 950770061 544962298 366137865 464857599 972027230 135071237 813619287 107208733 198482453 823227047 335993518 427027044 341397883 457771876 228866994 500646505 311613827 48721494 697845779 860577214 346802248 836197523 599486336 854692461 83549624 616059722 296001217 806173273 228146412 975750237 464257114 622785154 9329678 172301307 675027349 688598310 113093486 957615590 922667363 534874150 682694 491278939 658093672 417899672 924709012 476747202 487195641 911258148 50162658 367819223 432311312 851449842 958696463 98922040 345240987 653890277 58689545 879432443 737597886 671784730 88833892 662297067 194038864 375505431 162693547 587596733 471342837 526947748 522864450 582312465 609454387 621584184 161852868 854692461 647164845 53885665 658934351 856373819 313415282 89074086 653289792 433151991 344160114 986078579 285312584 273422981 192477603 894924956 430269663 855533140 230308158 559253841 804732109 310052566 398203764 761136898 610415163 73701670 628549810 991843235 599606433 543761328 614858752 169058688 369620678 222021465 109970964 525626681 55567023 796205222 145879967 756092824 245920768 831393643 609694581 627468937 592520710 830913255 120779694 538116769 216016615 992203526 159691122 302366358 611856327 513737078 33469175 142397154 461855174 792722409 665059298 709495188 188394305 846285671 675027349 507852325 442500 739639535 203646624 771705434 323623527 809776183 442279363 753810981 939961331 795244446 452127317 290957143 450445959 809295795 423424134 974669364 571263541 328787698 522504159 391838623 129426678 636236018 554930349 292278210 313655476 971426745 459573331 96640197 987759937 921466393 675988125 77064386 363735925 691961026 333351384 436154416 777349993 956414620 735075849 642240868 63613522 413335986 317258386 728350417 803531139 911858633 545442686 2123858 388716101 468340412 134590849 867903131 886878457 343799823 766060875 388836198 935998130 72620797 899608739 266937743 856013528 468940897 791521439 402407159 376826498 982475669 166776845 98201458 715259844 929272698 644883002 843403343 145639773 334912645 415737926 314736349 632513011 120299306 864540415 579910525 433752476 438196065 590719255 568861601 565498885 376466207 819624137 364936895 822146174 306689850 524425711 127024738 16775692 860697311 357610978 108529800 464617405 36711794 579550234 840521015 584474211 518300764 809896280 208210310 179747321 96400003 498124468 957135202 288315009 437955871 629750780 720544112 740360117 934677063 381510281 621223893 520462510 286633651 853731685 36111309 941762786 100123010 318099065 67336529 909816984 541479485 917743386 565138594 137112886 208450504 339836622 510254265 477107493 59650321 641520286 996406921 853971879 747926228 121980664 442879848 542920649 904532716 363856022 418380060 848567514 957615590 500286214 96400003 575827227 303687425 655931926 448284213 9329678 339716525 593001098 38873540 464257114 58089060 248082514 740960602 436514707 663738231 902971455 618461662 550246566 295520829 682593460 722225470 52564598 966742962 805332594 781313194 971426745 265736773 616179819 442999945 785756783 861778184 161252383 219379331 379708826 149963265 49321979 952811710 336594003 862618863 533793277 927831534 358331560 142036863 292158113 754651660 265496579 205568176 966142477 571503735 666380365 893723986 410813949 980313923 844604313 854212073 475546232 479389336 525266390 600807403 150683847 614858752 635395339 439877423 24221706 980073729 603209343 354608553 650767755 473744777 416458508 283030741 976831110 354968844 876309921 507011646 954372971 445041594 430870148 728590611 360613403 750928653 465698278 488876999 401446383 758254570 571263541 160411704 697125197 154647048 28305004 92556899 471222740 744803706 886037778 435674028 699887428 112012613 577868876 6327253 853731685 287354233 277506279 479869724 411894822 543401037 472303613 92436802 603569634 434713252 236913493 495962722 58089060 169539076 552768603 699647234 688598310 51363628 909937081 604290216 285312584 292398307 583153144 274864145 391598429 952451419 271861720 159811219 243999216 543521134 727149447 396042018 589638382 186112462 112973389 240876694 701328592 639598734 384752900 393039593 25782967 157409279 643081547 16655595 511935623 599005948 201124587 275104339 172901792 502568057 376586304 149362780 214215160 389076392 298162963 797646386 221060689 798366968 541719679 50763143 253606976 640079122 227906218 315096640 846766059 693762481 849167999 242798246 557452386 938640264 22780542 555771028 935157451 341037592 140355505 666860753 66856141 672145021 901650388 692441414 541719679 886518166 604050022 126904641 211573026 202205460 262734348 506651355 113213583 632392914 752489914 756212921 588437412 900569515 200644199 327826922 240396306 590599158 843763634 827070151 856133625 188394305 344400308 661096097 877991279 149242683 897326896 730992551 533432986 85471176 962659664 230548352 91716220 83909915 283391032 579670331 580270816 906334171 875949630 596003523 506291064 50643046 635635533 959176851 322542654 749727683 426546656 532352113 112372904 923988430 141796669 473744777 936838809 389316586 136392304 718982851 787558238 315937319 881594189 482752052 570903250 891562240 922907557 731593036 146840743 118257657 523825226 374664752 526707554 114894941 359412433 108049412 486595156 873307496 59890515 410693852 394961145 298283060 195720222 76824192 596003523 445521982 242798246 759335443 487435835 975870334 495842625 367338835 320621102 66015462 743242445 605731380 77544774 655571635 99042137 451166541 432551506 843643537 592520710 871866332 758374667 433752476 596003523 341638077 439517132 483712828 107809218 930954056 255408431 179627224 822986853 733274394 75262931 449725377 829472091 444441109 569942474 529950173 843643537 166776845 202926042 344280211 113573874 720063724 441798975 51483725 680071423 468940897 416698702 803170848 393519981 358451657 358331560 73701670 326866146 899488642 297802672 377186789 22180057 237874269 671904827 946566666 938400070 285312584 877751085 260572602 466058569 439517132 874988854 257570177 288555203 740720408 621704281 869104101 700367816 598885851 562976848 516139018 334552354 248803096 672505312 661096097 170860143 446602855 290116464 799928229 926150176 424144716 639598734 340317010 546523559 112252807 187793820 725347992 951130352 184070813 60250806 21699669 773867180 321822072 783715134 305248686 423424134 304047716 188394305 679951326 421982970 957015105 268619101 801849781 734955752 381870572 835116650 26023161 328667601 339836622 81868266 95078936 884836808 247482029 951850934 992683914 152245108 309091790 155367630 843403343 141676572 524786002 12332103 800288520 905373395 213134287 578469361 72020312 791281245 942843659 255288334 227305733 608853902 748286519 759575637 549646081 135791819 384752900 313895670 368900096 592640807 614138170 960257724 430629954 929392795 588797703 333471481 558052871 246641350 649326591 124502701 744443415 605010798 325545079 895405344 605851477 239915918 570903250 111051837 494281364 283030741 479749627 361213888 276305309 623385639 390637653 394720951 163294032 749727683 159931316 647645233 318459356 871145750 303086940 636356115 239195336 539317739 9209581 907535141 252045715 210372056 872226623 794163573 55687120 372623103 285192487 488636805 911017954 915221349 447203340 682353266 643321741 515538533 359412433 445521982 436514707 592400613 4525798 265256385 255528528 163894517 831753934 298162963 388475907 295160538 947047054 434713252 478548657 243999216 38993637 736637110 509533683 437835774 919905132 212653899 142757445 475185941 437715677 133870267 425105492 97240682 605130895 938400070 253967267 33829466 275464630 351846322 551447536 12692394 414657053 68177208 885437293 812058026 475786426 71299730 394360660 676108222 480470209 142277057 228386606 226705248 520462510 230908643 194999640 398684152 340917495 94838742 455610130 745163997 780112224 72500700 679591035 344640502 964341022 889640688 792482215 718142172 980193826 663017649 687757631 417058993 697725682 751168847 199443229 677549386 484673604 723786731 421622679 725468089 829351994 992563817 449244989 819504040 985478094 613297491 916302222 331189638 58209157 68417402 85351079 325424982 466779151 479989821 648846203 683073848 791281245 818182973 975750237 138313856 174102762 706492763 145159385 811217347 580270816 139034438 955453844 602248567 968064029 936238324 587476636 959777336 528749203 730992551 250004066 551687730 968064029 462095368 561295490 54245956 602248567 45719069 627108646 558653356 863219348 350525255 723906828 410934046 266697549 291677725 606451962 966382671 69498275 810616862 11011036 159090637 13412976 514337563 220820495 985958482 868023228 389556780 207369631 805332594 688718407 292398307 834876456 271141138 11851715 545923074 37792667 159931316 160411704 160892092 458132167 522624256 697725682 839079851 769543688 181909067 113093486 732193521 556011222 855292946 261052990 138674147 163774420 511695429 14373752 11011036 240156112 846886156 380429408 644042323 514577757 295400732 364936895 941642689 495602431 596964299 332270511 956774911 881474092 800048326 713218195 934076578 442500 124502701 349204188 131948715 321581878 28545198 657132896 838239172 901410194 50643046 179146836 510014071 512416011 485033895 759335443 649446688 541479485 634674757 707213345 935157451 450325862 454769451 901530291 951010255 457771876 551687730 430509857 777710284 555650931 113453777 738558662 24822191 135431528 689078698 214815645 545802977 529109494 775308344 826469666 373824073 154887242 295400732 238594851 495602431 356410008 721985276 226945442 718622560 758855055 730752357 350285061 784796007 888319621 259731923 423904522 455730227 407451233 595763329 680071423 635035048 863339445 903932231 904172425 242918343 338515555 601527985 380429408 992563817 327106340 925309497 114174359 237634075 643081547 29746168 820825107 995446145 189715372 764379517 37312279 851329745 647885427 620623408 443600430 239075239 488396611 535834926 486955447 543280940 357370784 363976119 638517861 29025586 114294456 768703009 338155264 987159452 794283670 399044443 385713676 506531258 967223350 372983394 633593884 196320707 975510043 957015105 324224012 511215041 66615947 187553626 379588729 688478213 782634261 244479604 908375820 506531258 567540534 741080699 748166422 958816560 92917190 449365086 577988973 387274937 748406616 442039169 425105492 886998554 929032504 857094401 858415468 131348230 91836317 921586490 802791 562016072 323863721 456570906 762938353 887959330 189955566 785876880 119458627 114534650 800889005 97480876 909576790 934677063 9449775 459813525 6687544 43797517 937439294 478188366 616540110 12091909 469421285 240756597 487435835 525026196 819504040 275945018 422463358 427027044 280148413 488036320 570783153 579430137 736757207 682113072 95559324 523344838 702289368 654010374 522263965 665299492 769063300 380069117 758254570 927951631 34790242 495722528 298523254 847726835 794523864 130507551 984157027 664939201 947167151 269099489 640199219 453208190 459213040 608493611 990882459 244959992 152245108 263454930 35871115 167017039 668902402 302246261 930113377 33469175 415137441 96279906 173141986 974188976 207489728 934436869 175063538 52204307 203166236 164254808 474705553 72380603 98561749 172901792 927831534 841241597 811937929 594081971 995566242 916302222 81507975 514097369 535114344 113693971 894924956 144558900 539918224 711536837 781793582 860817408 508092519 716821105 754171272 754171272 90635347 217217585 273062690 783114649 568141019 914260573 571864026 775548538 225023890 940201525 653529986 536795702 525146293 619302341 387034743 597684881 507251840 437715677 562496460 965902283 593841777 811457541 163534226 113573874 226465054 136512401 491999521 346441957 991482944 100243107 129426678 907415044 940441719 725588186 682113072 299243836 973348297 228626800 618221468 754051175 327706825 142397154 114054262 530430561 558293065 195720222 759335443 27104034 145399579 330709250 838479366 854452267 340797398 568261116 45959263 618581759 270780847 764499614 636596309 863939930 184070813 83789818 417659478 531751628 485394186 224543502 111772419 856493916 943684338 227906218 154526951 600567209 784195522 338035167 416338411 152245108 470862449 82708945 936838809 380669602 807494340 90755444 480109918 279788122 983796736 500166117 528869300 310052566 588077121 254687849 161612674 961458694 84270206 815540839 119458627 764980002 259491729 465097793 489597581 170259658 655691732 834516165 114774844 452967996 904052328 601167694 73221282 756212921 881594189 509533683 705531987 808214922 160651898 25062385 257089789 965662089 644282517 260332408 645363390 317258386 847967029 706492763 533553083 170379755 969625290 256609401 325905370 919424744 571143444 916182125 722345567 140715796 886758360 18577147 295160538 638397764 906934656 212533802 421982970 479029045 219019040 863339445 815420742 736997401 21699669 138674147 521543383 524545808 694843354 123301731 891442143 483352537 605010798 590238867 249763872 461374786 676588610 734475364 252526103 439156841 206408855 528268815 146480452 84630497 473024195 459092943 243398731 361333985 440357811 842922955 450445959 126904641 642841353 539077545 373343685 601648082 472183516 66015462 761977577 666020074 339956719 648365815 103125435 471102643 121380179 528749203 240996791 938520167 87392728 686556661 115135135 558172968 764739808 252646200 364816798 896726411 420902097 357370784 642240868 860096826 63733619 709014800 99042137 917743386 14734043 502327863 516139018 905613589 186472753 367338835 503528833 349924770 286393457 460293913 940681913 265256385 362294761 778190672 909336596 514217466 665419589 820104525 993404496 178786545 422463358 452367511 756573212 341277786 555410737 286753748 978992856 767381942 989321198 585555084 20979087 470742352 649206494 909096402 595763329 757774182 218418555 151404429 610775454 575827227 462215465 170379755 21099184 798126774 782994552 177945866 601047597 397363085 651488337 440477908 378988244 411294337 638397764 443480333 553369088 851209648 478188366 612096521 991843235 142757445 425826074 233190486 901170000 431110342 827790733 460894398 724147022 49442076 996406921 133029588 690399765 636356115 646924651 378147565 155007339 49321979 186833044 147321131 677669483 966142477 558653356 748646810 522624256 255768722 379949020 845084701 104686696 423063843 434593155 989081004 931434444 800288520 548204917 889280397 299604127 407571330 430870148 241597276 947527442 131468327 159090637 957975881 850248872 908976305 558413162 322902945 599246142 680551811 624106221 647885427 93637772 565498885 615939625 348003218 708774606 384272512 44878390 541479485 51844016 778430866 226224860 55687120 791881730 440718102 273182787 871626138 947407345 726428865 425705977 761977577 974068879 196200610 626628258 784195522 662657358 444921497 757173697 207369631 492840200 332991093 475546232 154166660 975630140 164855293 45118584 691360541 946086278 911738536 830072576 652449113 46439651 785876880 740840505 728350417 693882578 302726649 674186670 139755020 758614861 424264813 939841234 429308887 94718645 909816984 283391032 44758293 574386063 918824259 713338292 465458084 766180972 579310040 485874574 545682880 421142291 685595885 205928467 279908219 720303918 538477060 454529257 889520591 740360117 727749932 161852868 858535565 555410737 630591459 779511739 424144716 659294642 386434258 333711675 799928229 880153025 550246566 586155569 317138289 84030012 920385520 382471057 495122043 560935199 483712828 440958296 714899553 245920768 328307310 472183516 837038202 144438803 885917681 260692699 384032318 950409770 417899672 356169814 250004066 693282093 897446993 696524712 478548657 59169933 92076511 691961026 237513978 264295609 931794735 875108951 582672756 118257657 576667906 211212735 1883664 641159995 485994671 25542773 495482334 415617829 57728769 201604975 600927500 212773996 675627834 812298220 269219586 286873845 560574908 851209648 749847780 777950478 636476212 960618015 878231473 467139442 2364052 946206375 988840810 563337139 927711437 936838809 413816374 81387878 318579453 501967572 231028740 316297610 396882697 498484759 525506584 174222859 937199100 360853597 194999640 480350112 361574179 343559629 129786969 17736468 858895856 869944780 932875608 489237290 939240749 994485369 248082514 747445840 352927195 695083548 150683847 395441533 974669364 776028926 671184245 651728531 635275242 539557933 701568786 739999826 651968725 870184974 403367935 499925923 776269120 373824073 612096521 243518828 5846865 725227895 783595037 606211768 481310888 53285180 881714286 675027349 538597157 858295371 654370665 168578300 624586609 72860991 223462629 61932164 776869605 848807708 171460628 868984004 973348297 173862568 776749508 979713438 279427831 292998792 500286214 713098098 558533259 991362847 427507432 616059722 66976238 182869843 773747083 498004371 694483063 958216075 198482453 280628801 995085854 724507313 557452386 488516708 284952293 571023347 291677725 114414553 733274394 405409584 14854140 175784120 139274632 419581030 48961688 975750237 839079851 930353571 302846746 159931316 895045053 898047478 580631107 861297796 217697973 495722528 990041780 137232983 117416978 486955447 243999216 459933622 618942050 642000674 34069660 337794973 353527680 88713795 583273241 796685610 912218924 486715253 234031165 81748169 709855479 640919801 929392795 629870877 618581759 655691732 625787579 881233898 695804130 609814678 957855784 252406006 443360236 134470752 55807217 420541806 214215160 213734772 364936895 14734043 752610011 737717983 718742657 827790733 881954480 198722647 495001946 761377092 753210496 962179276 789960178 413335986 936118227 773506889 923027654 932515317 371782424 123181634 530430561 783595037 2724343 778070575 477587881 660735806 291317434 281109189 703970726 885197099 355088941 519501734 616299916 51723919 12212006 101323980 864780609 718382366 321341684 755011951 131108036 341638077 734475364 369020193 214335257 353527680 275704824 940441719 435193640 444200915 305729074 916182125 508332713 425105492 674306767 760776607 417179090 860817408 81507975 813499190 932155026 962899858 43317129 352326710 406730651 513737078 165455778 468700703 716220620 129426678 132068812 660855903 82108460 2964537 573905675 953292098 213614675 833915680 437715677 62052261 724867604 813739384 193198185 736877304 998208376 304047716 595403038 404088517 942363271 935637839 380669602 650047173 405649778 678269968 313655476 680431714 222621950 17256080 775188247 598645657 917863483 791401342 202685848 339956719 979593341 237273784 391958720 94358354 782514164 257329983 417058993 594922650 199082938 167977815 947287248 937559391 477948172 21579572 62892940 980193826 867062452 954733262 247602126 476026620 878952055 884116226 419701127 834035777 753210496 935277548 867783034 451406735 673105797 176504702 203046139 979353147 941402495 1883664 371181939 329868571 42716644 921346296 363015343 892643113 541719679 34069660 283270935 346201763 558653356 728470514 46679845 981634990 158490152 910417469 442500 468220315 492840200 131348230 586756054 37072085 993884884 611015648 350885546 455610130 322403 219739622 665179395 58569448 58929739 750688459 217818070 18336953 175904217 654010374 862618863 227305733 637316891 256729498 849408193 325665176 966742962 151644623 662777455 766060875 938039779 498484759 670823954 225984666 128826193 936118227 108890091 994725563 156808794 573185093 596483911 742041475 23741318 191877118 234151262 12332103 125943865 375265237 261293184 324224012 990402071 470862449 162093062 644762905 106488151 509413586 339236137 246160962 124622798 525146293 515658630 256249110 384632803 504129318 352807098 194999640 521543383 981755087 29025586 814099675 772906404 641039898 745644385 161972965 735676334 906574365 640439413 32508399 28545198 920986005 465818375 859976729 422943746 350405158 603809828 558773453 390277362 786357268 134951140 14613946 954132777 267898519 27464325 429428984 172661598 435914222 630711556 339716525 620503311 522504159 77664871 576908100 993404496 815060451 496443110 776749508 730151872 626147870 497884274 698326167 45839166 870064877 893243598 300564903 296001217 147801519 351726225 304408007 786477365 51003337 807254146 678149871 603929925 399885122 994725563 216737197 283751323 647765330 378868147 509893974 403488032 176264508 97120585 792001827 748887004 45839166 2604246 843043052 46920039 746605161 84630497 928792310 806053176 334192063 433272088 840761209 406970845 171820919 432311312 829111800 682694 783474940 408652203 12572297 689318892 927471243 885317196 106488151 325184788 339596428 926510467 381029893 299243836 226224860 346081666 288555203 269459780 540758903 518901249 530910949 104326405 386794549 977671789 983196251 801849781 987399646 832234322 162453353 533192792 224783696 5966962 304888395 934436869 928912407 893723986 183470328 238835045 20858990 179747321 860937505 716701008 909576790 777710284 55206732 905853783 94598548 954493068 937679488 143958415 772546113 323143139 277746473 654730956 375625528 136272207 163294032 714058874 414416859 64454201 375865722 538236866 43797517 974909558 222501853 353767874 270900944 49682270 472663904 533793277 795004252 717421590 327826922 434833349 282550353 752129623 669142596 239795821 910177275 255288334 344280211 687877728 847846932 424384910 387755325 540518709 408412009 870905556 114294456 233190486 136992789 593841777 56767993 48361203 414897247 865861482 719583336 6087059 557452386 187673723 975750237 899368545 837998978 10770842 845084701 304888395 603929925 676468513 912218924 705291793 104206308 219619525 248442805 381029893 192717797 693522287 865140900 470622255 744203221 94478451 32988787 510974847 926510467 594802553 389796974 749487489 206288758 86912340 710576061 824307920 676228319 751889429 15214431 115975814 550726954 965421895 220820495 400365510 387875422 574746354 483472634 232710098 72500700 685956176 440357811 825749084 930113377 159330831 653529986 992683914 674546961 874268272 367699126 524305614 595282941 570903250 832834807 327706825 832354419 975389946 117777269 38273055 928672213 76223707 689078698 433752476 374184364 944525017 928552116 12452200 118497851 717301493 395081242 687157146 4405701 511455235 717421590 367338835 809295795 394600854 586035472 253847170 46439651 519381637 924709012 890601464 673345991 256129013 427027044 588077121 24101609 761977577 50042561 835356844 49081785 667581335 757293794 47520524 985478094 801489490 692681608 648485912 500046020 341998368 805212497 772185822 664458813 359772724 149843168 929873183 250364357 158490152 584354114 959296948 147321131 25542773 500766602 172061113 750928653 77784968 152004914 440958296 709375091 726789156 82348654 839560239 649806979 675868028 133269782 103125435 565378788 364336410 725347992 923748236 410813949 10650745 463896823 509533683 924108527 553008797 695203645 840160724 342478756 432671603 82209 653169695 609454387 419701127 395081242 763418741 593001098 329748474 755011951 173862568 624226318 929753086 128105611 74302155 303807522 567540534 379949020 634674757 530910949 228626800 64334104 736637110 779751933 351606128 536195217 381390184 783234746 546523559 996166727 253967267 203166236 839440142 21099184 455369936 672625409 411894822 587957024 69978663 88233407 553489185 437235289 225023890 806773758 733034200 48841591 813379093 171580725 229827770 640439413 830673061 335633227 974188976 282069965 288435106 681872878 963620440 808815407 883035353 208210310 939360846 321701975 248322708 135311431 539317739 15574722 859376244 596123620 952931807 219859719 597084396 565618982 173982665 104446502 611736230 522143868 818903555 305368783 451406735 142397154 320020617 837038202 620863602 941522592 556371513 850849357 730031775 189595275 698085973 380429408 249643775 560574908 682473363 492960297 908736111 35991212 236313008 681272393 676228319 857454692 986679064 625547385 44037711 473384486 292758598 284832196 712137322 923988430 813499190 794764058 463176241 322902945 848687611 504129318 244719798 375025043 553369088 943924532 133630073 805572788 280268510 699286943 531751628 897687187 810857056 819744234 255648625 39834316 216497003 44037711 581471786 412375210 227065539 812898705 489117193 779271545 744443415 3084634 584354114 118858142 660495612 577148294 639358540 716821105 563096945 81748169 139034438 749007101 53405277 354968844 459333137 446482758 276185212 733994976 351966419 334192063 770984852 717301493 285672875 693282093 853611588 806893855 198002065 494521558 158730346 113693971 229707673 215896518 177825769 332630802 473024195 946686763 595643232 908375820 294199762 579189943 830552964 894444568 523705129 563217042 142517251 621584184 391478332 221420980 716580911 71419827 294920344 473744777 819504040 245200186 353167389 974309073 498604856 256008916 617020498 259852020 182509552 275344533 737958177 710095673 863819833 922787460 137473177 248923193 397363085 503528833 897086702 83189333 917863483 616179819 899248448 57488575 861898281 400725801 605851477 704571211 813138899 332030317 163774420 166296457 304888395 520822801 102524950 842322470 560094520 175904217 278947443 676588610 472303613 175784120 216977391 360493306 891442143 159090637 903812134 506891549 924468818 77424677 417299187 584474211 636956600 934556966 448524407 89794668 903331746 828991703 39714219 360012918 778911254 792242021 87632922 972027230 493200491 348603703 622184669 50402852 869584489 950049479 607532835 492960297 909456693 834876456 626267967 434232864 489477484 921346296 368779999 348723800 407931621 662417164 958336172 683073848 768703009 2724343 634194369 529709979 872827108 330348959 979233050 360853597 207129437 597084396 715259844 679951326 729911678 87152534 526947748 505570482 896125926 283511129 57488575 525026196 738318468 792962603 523224741 52804792 542560358 203526527 614618558 273783272 777710284 864660512 394841048 210131862 482631955 450205765 418980545 858415468 288555203 154406854 967943932 532592307 549045596 906934656 684875303 49562173 117657172 761497189 30947138 492960297 692801705 750688459 488276514 684995400 443240139 511335138 650167270 928912407 585555084 716821105 763779032 607893126 377066692 380309311 810616862 28305004 301045291 868863907 208570601 758855055 812658511 405169390 412014919 838119075 759695734 472784001 973948782 443600430 350164964 534633956 221300883 698926652 583633532 741801281 536315314 83069236 750688459 480710403 418139866 227786121 900929806 925189400 542200067 426186365 835116650 772185822 510614556 747085549 203886818 517700279 687397340 929512892 895765635 452847899 829472091 241357082 272462205 784435716 238714948 92196608 168578300 352687001 690639959 616299916 296361508 545802977 915821834 953652389 38993637 807734534 795844931 366498156 798366968 865621288 299003642 330949444 556011222 6567447 845925380 779511739 877390794 913900282 474345262 342478756 325905370 972387521 539077545 303807522 478788851 844724410 763538838 34550048 212894093 936838809 386073967 177825769 765580487 337794973 132669297 96760294 713338292 202325557 374184364 734355267 983556542 755011951 501246990 964941507 758374667 851449842 529349688 10650745 361213888 450085668 93397578 723426440 686676758 640079122 676588610 756092824 612576909 625907676 848567514 439397035 192717797 262974542 236553202 455009645 104566599 110571449 420301612 255168237 982355572 468580606 373583879 315577028 452607705 157769570 273663175 250604551 3565022 825268696 718262269 332150414 811337444 808575213 853611588 274744048 675747931 307530529 488756902 985237900 365297186 644402614 897687187 10170357 915101252 419460933 170379755 338155264 121260082 67576723 501367087 706492763 308731499 414777150 439877423 952331322 325184788 459693428 21939863 359292336 414176665 344400308 293839471 220460204 620383214 774948053 679951326 290116464 591800128 988600616 88473601 247121738 956294523 761497189 503408736 755492339 883876032 100243107 229707673 359412433 11011036 367579029 535114344 865981579 251565327 986919258 184190910 149122586 2364052 907294947 964701313 708654509 107929315 209651474 810977153 52804792 969024805 309091790 165575875 999049055 202565751 371302036 205207885 715860329 733274394 88593698 328907795 250724648 365537380 708654509 470862449 65174783 753330593 800768908 985958482 399765025 472063419 735436140 199203035 855413043 538717254 943444144 384993094 471102643 190916342 706973151 194999640 421862873 89674571 385233288 385593579 551567633 817462391 343319435 980073729 840160724 872226623 112973389 614618558 272582302 328907795 251084939 115495426 292038016 831153449 706252569 589518285 57128284 432671603 929392795 401326286 834516165 80907490 489597581 44398002 582552659 111772419 607652932 91355929 807134049 684875303 405529681 940201525 904893007 331549929 842322470 938400070 570422862 666380365 215536227 513016496 341998368 2123858 598285366 413456083 39714219 103485726 8368902 799928229 228026315 783234746 590238867 395321436 800288520 552768603 643201644 504969997 661456388 519141443 219019040 484913798 292038016 752850205 547364238 260452505 329388183 620863602 559253841 85831467 879072152 130627648 818303070 783955328 152845593 381990669 705171696 525866875 973948782 395801824 976350722 166776845 346682151 92196608 976350722 679831229 31427526 504729803 991122653 559253841 996406921 804491915 62172358 588437412 413335986 99882816 885557390 227906218 678269968 785636686 943564241 351005643 646444263 885317196 905733686 977911983 997607891 104686696 863099251 393399884 396522406 459213040 887358845 405529681 30346653 261293184 146720646 561415587 931074153 273422981 494041170 467259539 786597462 363135440 314496155 86071661 508212616 49562173 352687001 838719560 51603822 820344719 970946357 385713676 440718102 957615590 847366544 957255299 90275056 719223045 637076697 84030012 263334833 799207647 275824921 100843592 376346110 861778184 757894279 518540958 396402309 463176241 48841591 840881306 514337563 652689307 466538957 880032928 612456812 674186670 580511010 988000131 350164964 305248686 146960840 979833535 509893974 205568176 879432443 360613403 843283246 811697735 118858142 646444263 585434987 575346839 17376177 629030198 983316348 2243955 432311312 437595580 347282636 552768603 866702161 111532225 438316162 551687730 270780847 528388912 951971031 282190062 581351689 733274394 584113920 923027654 57248381 180708097 691000250 808094825 311373633 342839047 473264389 242678149 186833044 587836927 583753629 128225708 804011527 174463053 938400070 64454201 216376906 608373514 584354114 68657596 179987515 90635347 855292946 814339869 966142477 824548114 853251297 243038440 482992246 188754596 92436802 887599039 913299797 780112224 570062571 744683609 469181091 584113920 662897552 3925313 50643046 519741928 653650083 62892940 981875184 581591883 389796974 556131319 529349688 677669483 555771028 381149990 868503616 221420980 471102643 355929620 11611521 512175817 336714100 182869843 449845474 744923803 527308039 764980002 170980240 789840081 335993518 429669178 213974966 177585575 187073238 356169814 271741623 225384181 75503125 146960840 807494340 895285247 837158299 284592002 171220434 726548962 417899672 764259420 967583641 865260997 619302341 934316772 559253841 651248143 671184245 691480638 739879729 887719136 134470752 26623646 826589763 805332594 746965452 899008254 776749508 338875846 292638501 625547385 397603279 940441719 276425406 696764906 901890582 608973999 435073543 107569024 783955328 979233050 798366968 518781152 649686882 555050446 951010255 133269782 279668025 796805707 388235713 745404191 360133015 758254570 499205341 948007830 516739503 108169509 793563088 717901978 852530715 15574722 569101795 973348297 393519981 8849290 625787579 609214193 336594003 482992246 690519862 889520591 476627105 815180548 913660088 935037354 994845660 870425168 523104644 303927619 110931740 353647777 642601159 357370784 858895856 741921378 819864331 762698159 246881544 555650931 265496579 743122348 106728345 836197523 321701975 906814559 822746659 2484149 423063843 978632565 11011036 316657901 357851172 901049903 767982427 155848018 414416859 330108765 132429103 35030436 707933927 661216194 232349807 456450809 930833959 790320469 16775692 391718526 668181820 704571211 467139442 458012070 401686577 357130590 913660088 709735382 316777998 657012799 46319554 302006067 265976967 271741623 50402852 83429527 347402733 1403276 429308887 261893669 679350841 803891430 961458694 421982970 567300340 291797822 177105187 989681489 936118227 17256080 700487913 400725801 913900282 389556780 285432681 110331255 667941626 459092943 830793158 735316043 287114039 434713252 369500581 848087126 869944780 62892940 306209462 824428017 623025348 968184126 970465969 314976543 670343566 176024314 51723919 804732109 796085125 785036201 574506160 2844440 782514164 329147989 821425592 185632074 868863907 592640807 882915256 376946595 804852206 11251230 94118160 405409584 327586728 826109375 857935080 850248872 809415892 730752357 939961331 662897552 588437412 472063419 512896399 874148175 936838809 773146598 493320588 859136050 990402071 747926228 169418979 773867180 511215041 909336596 667461238 369860872 53285180 997607891 452847899 322062266 77064386 238714948 189955566 746364967 771825531 250364357 743242445 679711132 222141562 692681608 469301188 253126588 768823106 297322284 724507313 309692275 762938353 372743200 161372480 878351570 334192063 711296643 21939863 488036320 274023466 519741928 705652084 392439108 117777269 693041899 282550353 890841658 505570482 102404853 156328406 189835469 820825107 645123196 513256690 866582064 793442991 167497427 670823954 375025043 384872997 38753443 376826498 666380365 740960602 756453115 166536651 409252688 117176784 527308039 124142410 508813101 599966724 870905556 570182668 261893669 332991093 363495731 652689307 346321860 243999216 74302155 75142834 972747812 195960416 608613708 862979154 51123434 416338411 316777998 290476755 832114225 192597700 667701432 66615947 80066811 847126350 180347806 277506279 634554660 810256571 326265661 64934589 481190791 27224131 561775878 923748236 544722104 876309921 802791 704931502 867903131 897567090 804131624 702889853 456570906 269940168 539077545 159691122 264655900 61812067 347282636 828511315 450926347 285792972 913299797 105167084 979833535 445401885 880032928 198122162 119698821 609094096 548925499 35871115 321942169 881954480 322062266 564057721 700127622 468460509 600687306 625187094 541239291 482992246 555290640 382951445 363615828 564658206 488276514 57248381 492239715 505450385 584474211 958696463 298162963 7528223 5126283 789119499 495602431 732433715 70098760 915701737 808455116 529950173 922787460 191396730 274623951 223222435 228506703 838239172 537516284 506050870 450566056 381390184 361333985 846645962 934436869 305368783 53645471 547124044 651368240 346802248 94358354 797766483 580751204 658934351 262854445 218418555 920385520 693402190 703130047 97721070 577628682 911858633 211813220 821185398 195480028 272342108 730271969 950289673 166416554 224903793 405289487 579069846 35630921 865140900 307890820 863219348 914861058 155127436 601047597 534273665 734955752 455730227 869344295 740600311 219019040 647525136 571864026 566699855 869944780 829111800 832954904 345481181 407451233 96400003 397483182 251805521 717061299 886638263 206168661 559854326 994485369 491519133 294199762 435914222 796085125 841241597 14974237 95439227 15935013 47040136 24942288 868623713 536195217 192117312 886037778 772065725 399765025 256489304 19297729 989201101 189114887 135311431 554690155 500526408 558052871 364456507 740600311 101684271 178546351 950169576 134470752 335513130 26503549 584113920 881714286 725948477 455129742 96760294 223822920 408291912 632993399 854572364 567300340 506891549 296001217 927711437 614018073 163774420 125583574 138313856 500526408 655331441 549886275 429428984 121740470 725828380 681632684 262974542 687397340 591079546 291317434 532952598 389196489 201364781 117657172 31307429 516379212 867783034 854572364 160171510 931194250 843643537 475426135 713938777 624826803 425225589 294079665 6447350 20858990 227065539 268859295 590959449 658213769 766781457 998448570 947047054 418019769 723546537 648485912 577148294 640919801 279668025 954372971 956895008 512175817 144558900 470382061 240996791 582672756 719823530 568020922 599246142 516859600 338035167 244479604 750448265 426066268 426906947 219019040 439877423 810016377 882314771 706732957 516619406 107328830 718982851 230308158 727509738 94478451 535354538 252766297 877390794 346441957 936478518 98081361 14013461 896726411 948848509 942603465 133269782 184671298 44758293 12812491 236433105 252045715 730872454 5486574 887839233 964220925 910297372 335272936 498484759 790440566 170019464 513857175 715379941 978512468 930593765 97721070 917142901 922186975 437595580 451046444 564177818 261893669 680191520 383792124 601768179 664578910 21579572 210852444 276305309 968904708 554690155 577868876 462095368 154046563 126424253 581952174 706132472 410213464 277386182 432431409 847366544 530550658 260692699 816501615 313295185 534513859 551687730 540398612 734355267 989321198 553729379 54245956 928792310 514457660 696885003 266817646 613537685 108049412 966382671 647164845 894924956 117777269 1523373 478068269 928311922 219019040 823587338 958095978 624466512 281469480 875589339 123541925 952091128 66615947 768703009 428468208 563457236 461494883 896846508 414056568 307410432 302846746 731472939 80186908 42116159 715139747 574145869 306930044 283631226 842442567 959176851 60611097 351966419 299724224 974789461 203886818 921106102 867302646 510134168 964461119 545322589 731953327 560574908 730872454 546883850 861297796 151764720 185872268 145279482 716460814 52084210 940802010 196680998 311613827 718622560 210372056 178186060 115015038 903692037 688238019 770144173 407691427 341277786 98441652 653169695 164495002 478428560 383311736 525266390 178426254 701328592 821905980 334312160 914380670 438075968 245800671 532352113 255528528 731953327 722705858 433031894 178426254 328187213 431710827 811937929 460654204 822266271 5246380 405769875 336714100 949208800 67576723 94238257 416938896 451406735 894204374 898287672 549405887 61331679 844123925 334432257 753450690 461614980 136752595 223702823 517339988 710335867 218178361 129426678 949088703 975750237 784555813 366257962 674787155 959417045 785996977 402046868 715500038 458732652 891682337 712497613 823227047 140475602 555290640 952211225 541359388 954372971 386434258 666260268 840040627 668902402 551567633 923147751 386073967 914500767 548685305 513376787 150203459 574986548 458492458 633233593 751168847 856854207 564898400 193438379 543521134 713938777 954252874 506651355 736156722 535714829 442159266 372863297 447923922 558293065 610174969 577988973 939000555 743722833 596844202 156088212 744203221 537035896 929152601 792121924 594562359 906694462 817702585 696764906 275945018 510254265 228146412 849167999 244839895 325064691 446722952 255648625 60491000 644042323 182029164 390757750 263454930 975870334 912579215 241597276 828151024 95078936 345841472 329748474 893243598 383431833 690880153 760536413 629030198 42596547 205207885 640559510 385833773 823227047 986438870 554810252 990522168 224663599 925189400 78865841 826109375 549525984 313895670 344040017 519862025 86672146 598285366 63013037 14133558 42596547 481551082 275945018 24581997 67096335 168818494 1283179 484313313 956774911 343439532 143958415 420301612 819504040 700968301 696885003 508933198 571023347 524065420 388596004 13773267 898768060 505930773 574626257 473744777 377426983 264655900 497403886 31547623 543160843 573905675 101203883 931434444 419220739 897446993 414296762 372863297 522023771 990041780 837998978 564418012 688117922 698085973 694483063 414056568 903091552 632633108 208210310 705892278 61211582 678269968 205448079 765700584 966983156 546643656 54366053 11371327 28665295 910417469 433632379 40434801 41035286 699527137 99642622 493440685 259491729 936838809 741440990 660015224 727749932 877991279 652929501 758975152 355569329 396162115 891081852 959056754 790440566 926270273 944885308 397723376 541959873 921586490 153926466 866221773 912459118 51603822 155607824 68297305 958816560 731833230 91836317 935157451 865621288 605971574 846165574 316417707 10050260 85230982 566940049 56647896 988120228 365777574 706252569 99402428 411054143 730271969 189234984 167617524 801729684 232950292 49201882 336473906 259611826 135791819 523705129 892763210 92917190 551447536 19057535 929512892 143838318 597324590 882074577 591319740 805572788 267538228 52924889 669622984 739879729 438676453 138313856 635155145 143478027 299003642 514337563 404568905 383672027 542680455 280748898 746124773 930353571 104446502 320140714 220220010 950649964 662297067 264655900 258651050 710095673 78625647 20258505 441438684 28665295 663377940 330829347 235952717 777109799 837038202 216737197 209531377 86792243 551927924 998568667 716460814 591920225 6807641 682713557 861537990 911618439 970105678 102645047 317498580 179987515 514577757 240276209 901290097 651608434 910057178 885197099 895285247 381870572 169298882 940321622 85230982 853011103 31907914 626267967 17256080 697605585 299243836 116456202 283871420 752249720 195119737 53405277 831393643 780712709 87993213 664218619 596604008 936958906 371181939 594562359 56287605 861537990 906214074 840400918 296841896 394360660 864420318 628429713 744683609 833795583 417058993 795244446 632753205 562856751 789119499 813619287 259611826 4165507 574866451 852770909 170019464 130867842 319660326 991122653 6927738 330228862 123541925 72260506 608373514 261773572 324103915 628910101 926990855 360373209 544481910 516018921 693402190 299484030 692201220 295881120 916902707 218778846 406010069 16175207 227065539 956174426 594442262 575226742 291677725 423544231 237033590 303567328 18216856 857694886 199443229 332870996 495722528 638157570 331910220 296001217 413936471 156808794 630711556 944645114 925789885 978632565 637196794 994245175 595763329 718382366 123181634 514697854 938520167 899248448 472663904 603689731 433752476 625907676 789719984 116456202 409492882 360493306 751769332 408892397 513136593 822386368 737357692 690399765 600807403 491759327 248562902 980193826 148161810 560574908 43076935 519261540 817342294 287714524 784075425 240036015 141196184 641880577 547844626 613297491 822986853 182029164 706732957 306809947 905133201 810016377 659775030 905013104 950529867 362534955 829351994 684755206 989801586 254807946 442279363 746004676 25662870 67456626 145879967 829712285 313775573 746845355 629270392 415858023 341758174 493080394 306809947 763899129 43197032 907294947 909937081 347642927 121019888 25542773 901170000 523705129 367939320 17135983 441798975 491879424 478788851 574626257 362174664 114654747 91115735 933115802 590358964 491759327 226705248 953892583 285312584 587476636 631552235 639358540 86431952 614978849 154526951 959657239 225864569 413816374 528509009 433031894 802791 677309192 724627410 995326048 307890820 107208733 835116650 449845474 646924651 132068812 203406430 718262269 57248381 802330169 320741199 370941745 21219281 838119075 772065725 944164726 514217466 117176784 829231897 907294947 338995943 128706096 244359507 58569448 945605890 955573941 920265423 794163573 348843897 199563326 149723071 993644690 404809099 961818985 897567090 790320469 235712523 227786121 512776302 505450385 694242869 184070813 139394729 429428984 593481486 288795397 75383028 666260268 59650321 830913255 189955566 547844626 641400189 277145988 526947748 82708945 191156536 426546656 268378907 586155569 914020379 636356115 486354962 676588610 329988668 201845169 271141138 93397578 749847780 330348959 446722952 547003947 870184974 687517437 5846865 172901792 107569024 427507432 925789885 1883664 899848933 176744896 660976000 373824073 316177513 657132896 59410127 808214922 509173392 820705010 913059603 35030436 713698583 285552778 788398917 338995943 72860991 231629225 184190910 797646386 632513011 649326591 941522592 57728769 901890582 55086635 391118041 287594427 437595580 6567447 810136474 627949325 618942050 789599887 500886699 320020617 537155993 475185941 533312889 191757021 490798551 637196794 523705129 106728345 515778727 705652084 474345262 144799094 261413281 237153687 293719374 69738469 66736044 197521677 524305614 625667482 823827532 526827651 170139561 433512282 34670145 847366544 325785273 889040203 481551082 771104949 357610978 187673723 461254689 607773029 131468327 43437226 299724224 529589882 921226199 202926042 480710403 846766059 861177699 241357082 521903674 592881001 733994976 637436988 955453844 250124163 441678878 360613403 806533564 539317739 265616676 829472091 809656086 411774725 954973456 565498885 280388607 125943865 829351994 2123858 489717678 313175088 989681489 899608739 601167694 611375939 921226199 138674147 811097250 615459237 311253536 540038321 311133439 11971812 24702094 91596123 536075120 957735687 287834621 493800976 690279668 461855174 540638806 634794854 383672027 504009221 904652813 652088822 165455778 646804554 71059536 786957753 269099489 378748050 418740351 240756597 815660936 794764058 972507618 182029164 133149685 608973999 796445416 341758174 589398188 741080699 548204917 219139137 330348959 895405344 333111190 796085125 341998368 485394186 895165150 88593698 134590849 138433953 579790428 593241292 14613946 740480214 385713676 938880458 69978663 715620135 607052447 437715677 886157875 115375329 72981088 484913798 714899553 391598429 192477603 383191639 996647115 714539262 466899248 920265423 49321979 651007949 407811524 843163149 700247719 340797398 857454692 850248872 359772724 857814983 898407769 577508585 294079665 980193826 869224198 694843354 892763210 131468327 4165507 762818256 219739622 597204493 433992670 687997825 984277124 707213345 628669907 286993942 759215346 707333442 152845593 519141443 27464325 460534107 359052142 295761023 100363204 948608315 94958839 752009526 201845169 846525865 239195336 655691732 874628563 189595275 656412314 840881306 313054991 659775030 410453658 589998673 414416859 365537380 338635652 40314704 7167932 546163268 990522168 516379212 648846203 964581216 992563817 873427593 910177275 657373090 189355081 929632989 212653899 849768484 952331322 563337139 330348959 824187823 215776421 995446145 81748169 315336834 201604975 43677420 64694395 379588729 546283365 729311193 645603584 708174121 90154959 474945747 837878881 157409279 14133558 495122043 969625290 768342718 974669364 522984547 379228438 625187094 754051175 689078698 843163149 986799161 880393219 345481181 292878695 287474330 813859481 283751323 10050260 317618677 696644809 683434139 812658511 590719255 961578791 240996791 838119075 885557390 896125926 733634685 801369393 537876575 430149566 953772486 274263660 391838623 17616371 520222316 756573212 206889243 633233593 969865484 131828618 203166236 319660326 637557085 670343566 707573636 498124468 615098946 134350655 861057602 525866875 982956057 904052328 349684576 826109375 108769994 876309921 790560663 146360355 475065844 35390727 806893855 784916104 642120771 700367816 492840200 136872692 228506703 917262998 947887733 724387216 131828618 909216499 15814916 464497308 403367935 652329016 692321317 609334290 978992856 71179633 398804249 828271121 259731923 951010255 181909067 68537499 605731380 375865722 802450266 633713981 906574365 22900639 341638077 453448384 138073662 787918529 34309854 114174359 611856327 733514588 319660326 176144411 15935013 571984123 996166727 984877609 295040441 168218009 165575875 51964113 184311007 174342956 496443110 580631107 107328830 792362118 159210734 318699550 962059179 138914341 772906404 990762362 629390489 525146293 892042628 332991093 506411161 574506160 901650388 417659478 153085787 96880391 292038016 599126045 532952598 259371632 973468394 804491915 734595461 411054143 767381942 505690579 694002675 228987091 479149142 223702823 21219281 653169695 490678454 573545384 6687544 319420132 44998487 991482944 987519743 409492882 645003099 286393457 41395577 262013766 648726106 407090942 366618253 314376058 69017887 537035896 816021227 965421895 810977153 482992246 412014919 124622798 541839776 854332170 148882392 269699974 562016072 277025891 486114768 888439718 55086635 170860143 164374905 21699669 762578062 543761328 530190367 406850748 120539500 755732533 533432986 546043171 254687849 290837046 834636262 336714100 206769146 60971388 388355810 995566242 955213650 297322284 475306038 976831110 941402495 453088093 577628682 217577876 478308463 552408312 197161386 15214431 854332170 489597581 946686763 403608129 929753086 198122162 963620440 765820681 108769994 435794125 426426559 246641350 335633227 556611707 364696701 132669297 585074696 54005762 304047716 940561816 34910339 962779761 400485607 29265780 951850934 486234865 250844745 170139561 375145140 280989092 340317010 593241292 215296033 979713438 319420132 970706163 32628496 516259115 428708402 497283789 657132896 529349688 171100337 578949749 828511315 206288758 501727378 667100947 384993094 507131743 115735620 425345686 1763567 404448808 285072390 957015105 957495493 232229710 149723071 790080275 660855903 939000555 923027654 175303732 533793277 490798551 740840505 594562359 290837046 27464325 870064877 786597462 283631226 733754782 293359083 449845474 289876270 152365205 515418436 340437107 339356234 43677420 65895365 343919920 330709250 291917919 637316891 507492034 504969997 867302646 334071966 329988668 134110461 998448570 89074086 151764720 526587457 692081123 936358421 105647472 539798127 581231592 420541806 430509857 127385029 863099251 888559815 691720832 746965452 146840743 131708521 184431104 468940897 283631226 1883664 779511739 650647658 287594427 507852325 856854207 805332594 771705434 21939863 685115497 461855174 738078274 728230320 551807827 99522525 192597700 373223588 29385877 455129742 699407040 752850205 52444501 162333256 295640926 380069117 761256995 123061537 613657782 160771995 165335681 362174664 810857056 882074577 416338411 183110037 812178123 380309311 857814983 805452691 828631412 803170848 603689731 532352113 11251230 572704705 81147684 515418436 539437836 750087974 812898705 81387878 879672637 618101371 949569091 606091671 329868571 15814916 373703976 623145445 720063724 645843778 771825531 58809642 404448808 524425711 848087126 185632074 395921921 475666329 465578181 634554660 218418555 643081547 64574298 724987701 822266271 549285790 991002556 896125926 823106950 623505736 271741623 238714948 888319621 931194250 528749203 570302765 546163268 743602736 357971269 289756173 814099675 604530410 762698159 494041170 756092824 615699431 562496460 894684762 809415892 986919258 577628682 203166236 896486217 122100761 967703738 127385029 252646200 66255656 40674995 301045291 984877609 672985700 952331322 817222197 341037592 667100947 374064267 504849900 131708521 829111800 695083548 305969268 635395339 447683728 40194607 292878695 682233169 716821105 906694462 156808794 291917919 254687849 55446926 880633413 630351265 750688459 631191944 233790971 60010612 713458389 471222740 984157027 558533259 695443839 532712404 305608977 578469361 312694700 561895975 380549505 468580606 882314771 564418012 558172968 574746354 119578724 18577147 898647963 818062876 3805216 385113191 872106526 351606128 825989278 839800433 525986972 727990126 793803282 299964418 19537923 81027587 108289606 178786545 82228557 513977272 610295066 415017344 922066878 773146598 883275547 581231592 78145259 9089484 417299187 981034505 428588305 350164964 163414129 159811219 299363933 379828923 364456507 550847051 556491610 89554474 396282212 408171815 22780542 998568667 145519676 75262931 225384181 766060875 202085363 8488999 533673180 855172849 560574908 974188976 26623646 778550963 77905065 67096335 969625290 500646505 158730346 782994552 954493068 247962417 84750594 780232321 17976662 744683609 572824802 876189824 2964537 310052566 653289792 801129199 102524950 345481181 334071966 293359083 446122467 730752357 617620983 281109189 344640502 503528833 589278091 103125435 8488999 41035286 470021770 866942355 161612674 542920649 665179395 877630988 68657596 669622984 780472515 555891125 1283179 188754596 600567209 599005948 881353995 432671603 119458627 977551692 5126283 728350417 445882273 893603889 840040627 718382366 878111376 798487065 448524407 354008068 742161572 331189638 162573450 713218195 319300035 706492763 453208190 168458203 816141324 609334290 286513554 25903064 868623713 867182549 527788427 884356420 287234136 589398188 214935742 561655781 1163082 830192673 642721256 230308158 233070389 660255418 701088398 255048140 899488642 709014800 601407888 849648387 144799094 85471176 146960840 134350655 460894398 49802367 306689850 585675181 104326405 549165693 684755206 213854869 656532411 733154297 435313737 473144292 125343380 260332408 20498699 604410313 532232016 416218314 805812982 891081852 708414315 427867723 748766907 305608977 640319316 39474025 154647048 885557390 878111376 710696158 426066268 355449232 379348535 731472939 774948053 625907676 684394915 140235408 435794125 414897247 303567328 847126350 242798246 430389760 608133320 779151448 299123739 961098403 456691003 802089975 716340717 153806369 531751628 554449961 90995638 432311312 641400189 561295490 66015462 116216008 22420251 784195522 125223283 856013528 112853292 912579215 804491915 854932655 565018497 476386911 992683914 625187094 194038864 245920768 58209157 180948291 656772605 68177208 841361694 470742352 744563512 956895008 694362966 257329983 553248991 289636076 533192792 347763024 252886394 570783153 718022075 271861720 996046630 436394610 497163692 189234984 357490881 966742962 953532292 292278210 886638263 369620678 903451843 605851477 562736654 206889243 757293794 655931926 50282755 801609587 148522101 80066811 317258386 474585456 383672027 911618439 796085125 596363814 782273970 267177937 764739808 839440142 390277362 483472634 228026315 444921497 629630683 203046139 345961569 825749084 502327863 183470328 682593460 843403343 372262812 369620678 547604432 972387521 844244022 326866146 783715134 146600549 965902283 380429408 29986362 299003642 121380179 302606552 395321436 417539381 962659664 903692037 286873845 971306648 823827532 623145445 921106102 255048140 21819766 628309616 531511434 109850867 587957024 704571211 801609587 802791 71660021 705531987 217097488 180828194 100603398 483592731 569341989 611616133 824428017 621704281 949569091 753330593 129907066 426306462 804131624 195600125 985117803 747325743 32388302 212293608 965421895 854572364 528268815 270060265 555530834 8488999 949569091 959056754 178546351 601407888 16535498 635395339 66375753 581952174 313054991 820104525 946926957 309331984 813379093 916542416 851569939 195840319 283991517 919664938 464617405 583873726 482631955 103365629 218418555 465458084 509893974 762578062 440838199 947047054 296841896 198962841 820344719 476386911 109850867 41515674 820224622 848207223 365056992 326145564 878471667 66736044 667941626 947887733 856373819 970946357 544842201 741320893 960738112 763418741 904893007 606211768 833555389 254207461 725107798 191036439 571143444 605491186 12692394 135431528 168698397 934556966 227786121 868623713 386434258 694483063 241477179 124382604 817462391 767021651 709375091 155487727 542320164 363255537 552768603 753570787 250124163 838239172 636716406 888800009 663377940 37072085 608973999 436634804 334432257 496323013 371782424 686076273 847246447 51363628 198362356 728350417 612096521 802450266 35270630 522864450 902250873 720063724 815660936 292398307 219739622 7648320 298763448 783234746 366738350 258050565 301045291 971426745 113453777 501487184 921946781 270660750 659294642 324584303 202805945 368059417 674907252 697725682 78265356 297082090 543641231 36351503 988120228 718142172 197881968 823707435 196560901 582072271 278226861 174342956 258651050 599005948 751048750 957855784 810136474 909816984 442399460 170019464 488997096 216376906 824668211 327106340 319900520 965301798 932034929 934196675 931074153 47160233 440117617 896726411 87993213 716941202 283751323 91956414 236313008 736156722 956895008 174102762 80787393 396762600 837158299 569582183 991482944 893123501 534633956 492720103 677429289 978992856 501727378 744683609 393760175 146600549 689919377 294439956 757894279 588197218 926150176 576187518 787678335 165575875 631071847 659534836 349684576 274864145 26863840 205087788 614858752 478908948 770744658 343199338 459573331 103725920 858055177 710095673 791281245 857694886 276905794 813619287 226945442 671064148 190195760 246040865 439156841 8729193 871506041 974068879 268499004 979953632 958216075 43677420 126304156 381029893 682473363 170499852 851329745 347883121 659414739 928912407 653650083 111772419 246641350 118497851 700728107 480830500 236793396 813379093 313295185 847486641 868984004 273663175 267298034 627949325 974068879 427627529 615699431 206408855 193438379 667221044 396162115 886518166 31067235 34189757 227065539 343319435 605371089 370701551 229707673 508813101 953051904 959056754 574986548 187553626 457051294 468340412 427507432 610174969 751288944 183710522 395921921 727629835 272582302 960137627 38873540 15334528 626147870 817462391 765340293 235112038 213374481 789599887 587716830 553729379 697725682 479029045 854332170 348123315 725347992 761016801 409733076 733514588 804251721 878351570 827550539 878711861 100002913 262734348 542440261 636356115 774707859 836918105 504249415 512295914 739759632 877751085 339956719 261052990 819984428 846165574 247001641 170980240 159931316 394961145 82468751 384872997 192957991 545322589 344760599 77905065 73341379 23260930 411654628 431830924 375625528 453328287 129426678 540638806 986078579 353407583 271501429 795244446 933836384 227786121 204127012 748166422 373944170 720904403 255648625 936718712 917983580 554209767 776269120 989441295 981394796 855893431 775908829 12452200 398323861 737717983 786117074 364216313 773987277 622905251 52204307 522023771 62172358 642360965 796205222 97841167 560094520 992443720 498364662 403848323 389076392 671904827 971186551 518661055 483232440 264775997 204487303 290476755 520102219 161732771 970946357 409252688 456090518 301765873 208930892 485874574 835957329 719223045 914260573 751409041 403127741 983556542 696044324 686916952 83069236 346201763 831033352 87392728 461134592 335272936 158970540 812778608 544722104 223943017 421502582 4886089 176264508 338275361 156568600 219259234 4525798 597564784 824187823 324584303 819624137 691480638 835957329 688598310 368299611 156688697 938039779 519261540 17015886 413215889 37552473 839800433 499205341 774347568 763418741 129666872 98922040 158249958 836077426 454048869 554930349 564177818 763058450 456330712 398924346 278587152 570663056 706012375 160651898 751769332 634434563 927351146 210852444 679951326 795004252 693282093 252766297 432191215 461134592 35510824 761977577 72380603 766060875 798366968 286513554 85951564 10530648 563577333 880393219 602248567 362054567 901650388 621824378 750568362 564658206 837038202 542079970 827670636 199323132 488636805 151884817 40674995 299123739 275464630 911138051 80787393 271381332 837758784 280508704 988240325 108169509 393880272 89434377 43917614 51363628 992804011 960377821 527908524 948007830 374544655 156328406 953772486 706492763 262974542 264055415 864060027 764859905 196560901 614618558 615098946 440117617 281829771 686076273 176264508 72500700 923387945 295400732 939961331 456931197 460894398 260332408 199082938 558893550 626147870 23381027 420782000 426786850 88713795 245560477 451767026 740840505 919304647 657853478 268018616 389436683 177825769 45238681 932995705 524906099 400365510 683554236 235352232 305608977 198722647 595282941 732193521 610775454 724627410 912579215 975510043 823347144 199683423 144678997 368419708 417539381 892523016 76583998 601047597 742521863 670583760 480710403 95799518 751649235 970465969 530310464 365056992 795364543 995926533 669983275 469421285 522624256 280148413 161252383 375625528 325424982 512656205 308731499 514938048 649206494 970586066 478308463 393760175 70819342 328907795 626027773 461374786 205207885 99282331 49922464 696524712 425225589 699527137 222862144 345961569 258410856 442879848 516619406 100603398 224423405 969625290 84990788 439397035 555530834 764259420 55206732 390157265 883635838 68417402 107088636 536795702 544001522 989441295 281349383 983676639 210251959 869704586 344160114 502447960 687517437 877991279 80066811 102404853 22420251 4165507 296961993 804732109 633834078 815420742 936358421 957015105 379108341 611135745 219859719 277986667 235472329 154647048 383551930 335753324 930113377 239915918 155968115 715139747 325545079 926750661 242798246 400005219 813739384 242798246 721144597 855533140 929512892 257089789 165575875 30106459 523945323 998808861 158249958 630471362 565498885 782033776 300444806 173862568 714058874 526467360 847006253 950649964 122100761 698085973 732073424 859616438 889880882 505090094 776989702 842922955 292398307 72380603 951490643 354488456 147321131 547003947 13052685 924588915 452127317 253246685 620743505 113453777 380549505 988000131 416338411 9810066 151764720 978032080 442879848 315096640 636836503 104206308 714779456 494761752 814339869 844604313 335152839 570302765 461014495 652449113 707333442 962419470 189595275 999649540 28665295 443600430 886157875 328547504 823827532 501967572 118497851 85591273 13533073 243038440 724747507 452967996 40194607 803050751 96279906 476987396 761977577 342598853 985838385 537516284 490798551 21579572 413215889 604410313 151164235 200644199 951850934 152125011 55687120 743722833 951490643 575707130 751529138 463896823 276785697 319300035 890721561 728470514 355929620 3204731 226224860 130627648 859376244 166656748 841721985 648125621 889400494 639838928 658333866 445762176 534273665 418740351 360613403 61571873 959657239 896726411 801849781 702649659 587356539 936598615 556491610 882194674 784555813 778550963 467499733 208810795 910897857 346201763 474105068 694603160 918463968 439276938 151284332 62052261 503889124 547484335 676828804 295640926 432191215 609694581 71299730 181188485 181788970 555050446 541959873 924709012 703130047 441919072 604290216 870184974 844724410 75503125 778070575 883395644 647164845 385473482 185872268 550606857 245440380 852050327 366017768 813619287 154647048 208570601 366257962 143958415 195480028 469421285 277986667 814339869 122340955 876910406 470021770 954372971 348603703 724627410 350525255 464617405 59410127 900569515 164014614 161132286 652929501 874028078 778550963 478188366 691961026 480830500 553969573 732073424 85471176 608493611 658934351 778310769 374664752 45598972 27224131 564778303 591199643 959897433 659654933 366257962 633473787 713698583 112372904 29265780 427747626 428948596 517940473 972867909 515778727 724627410 202325557 157769570 431350536 359052142 313655476 993524593 15574722 834516165 71419827 691240444 183710522 798366968 39714219 505690579 664218619 400125316 722705858 120179209 308491305 550126469 650407464 703370241 968304223 517219891 939120652 667341141 783234746 414657053 862018378 534754053 533553083 370701551 357370784 820705010 467259539 139995214 708174121 184311007 660375515 84990788 900929806 942123077 668301917 808335019 886638263 50763143 913059603 69498275 464497308 625787579 495122043 41996062 117416978 773026501 576908100 600567209 278106764 447803825 12572297 831153449 145879967 750928653 309812372 219139137 751769332 18817341 168578300 583033047 470021770 543881425 341397883 40674995 862378669 399644928 55086635 254447655 155968115 165215584 463296338 113453777 185271783 939721137 721504888 311613827 672385215 223222435 37432376 326746049 391358235 590238867 388355810 400845898 618461662 260932893 453448384 365897671 410813949 397122891 602969149 160651898 113333680 154046563 446963146 523464935 669022499 922427169 48841591 23981512 965061604 786117074 770264270 300564903 672505312 435914222 488876999 889760785 760416316 367458932 122461052 127985514 485274089 745524288 781793582 265256385 64574298 26023161 127264932 996166727 479269239 316417707 958576366 721144597 448404310 23621221 954252874 452007220 669983275 690159571 853851782 348483606 353527680 921106102 973348297 759695734 13172782 950770061 109730770 477227590 510614556 804491915 515658630 754171272 705411890 556851901 656172120 874868757 747205646 213374481 163534226 808695310 502207766 827190248 853491491 192957991 584234017 350285061 285913069 146960840 33589272 366257962 883755935 487555932 546763753 999289249 279187637 278346958 282670450 983436445 775788732 959056754 535234441 167377330 298763448 327706825 315697125 64694395 118858142 208810795 335873421 227305733 850969454 300084515 76704095 148642198 740840505 519741928 497764177 632993399 691480638 154767145 652569210 815660936 2364052 487676029 632032623 179507127 306209462 121500276 407811524 88353504 806533564 66856141 243398731 911978730 897567090 722946052 245080089 126544350 152965690 637196794 700367816 416458508 776749508 117056687 496082819 117537075 549165693 461254689 128345805 176384605 293359083 501126893 505450385 296961993 344880696 622905251 234151262 534754053 134470752 861898281 704931502 578349264 178666448 673105797 730752357 133509976 165335681 775548538 406850748 898407769 7167932 722105373 286153263 182509552 153806369 249883969 496202916 752970302 583513435 366378059 355329135 283511129 149723071 374544655 359172239 146000064 11971812 786597462 275104339 597204493 951010255 888559815 847606738 313295185 258050565 912579215 449605280 825628987 238234560 735436140 870305071 534754053 609214193 567900825 613897976 728470514 985478094 976951207 198242259 797045901 241717373 576307615 461494883 592040322 799808132 6807641 585314890 157409279 825989278 330829347 822506465 999049055 496803401 42956838 823227047 32388302 807374243 759335443 6327253 357610978 752850205 491639230 782514164 987880034 700127622 763899129 244719798 140475602 570542959 633593884 548685305 150924041 481911373 687277243 926030079 319660326 160531801 521183092 585795278 778070575 941642689 440598005 139514826 3444925 612576909 822146174 461374786 167977815 17376177 784315619 937559391 572344414 66976238 124502701 995326048 613777879 107689121 550366663 933355996 736276819 24341803 574025772 811817832 133870267 644762905 443120042 819023652 192477603 712617710 669022499 64694395 929753086 759575637 541479485 529589882 627589034 393640078 315817222 40915189 555891125 977071304 866221773 31067235 82708945 93637772 611616133 876069727 592760904 844724410 878952055 641280092 304888395 476146717 970826260 837158299 955814135 557092095 25422676 727870029 921826684 207369631 252886394 483232440 859856632 416578605 610535260 507972422 7648320 668662208 572464511 403488032 419340836 190075663 727269544 328187213 302366358 262974542 801369393 812418317 699046749 358451657 661096097 185752171 681872878 353287486 706612860 513616981 720904403 948608315 436154416 266457355 320260811 542560358 719943627 44518099 177585575 851209648 379348535 247482029 897687187 53645471 922307072 876189824 296841896 906093977 733634685 777229896 246160962 836677911 316537804 153205884 957135202 599846627 807374243 455610130 750328168 218418555 403127741 608493611 460774301 501967572 834756359 806173273 852290521 205568176 544121619 848807708 267177937 759215346 21459475 393760175 542079970 396762600 658574060 639718831 785156298 978032080 831513740 679350841 116456202 173262083 522984547 1883664 793202797 884836808 666740656 915941931 638277667 736276819 47160233 375865722 194399155 665419589 673105797 522624256 24702094 135311431 929032504 965061604 944164726 705171696 707573636 429068693 721624985 274864145 163173935 534994247 107448927 345721375 488276514 969865484 658453963 822746659 477467784 654610859 575707130 802570363 461254689 22900639 463056144 553729379 874388369 292638501 326025467 388716101 801729684 642240868 485394186 762938353 120059112 312334409 242678149 258290759 955934232 826950054 639838928 568621407 167737621 66976238 759455540 581952174 671544536 517820376 39474025 483112343 314736349 993044205 805092400 190315857 154286757 493560782 835356844 408051718 701088398 394600854 710576061 671904827 201965266 417419284 31787817 755612436 525746778 61211582 536195217 753931078 106968539 33949563 588077121 43917614 601047597 891201949 75262931 216256809 677068998 606932350 617140595 966502768 58209157 757774182 166296457 914740961 338995943 181909067 509773877 55206732 553609282 832354419 186712947 985478094 991843235 966502768 369860872 6087059 989561392 752129623 981034505 366738350 18577147 79226132 700367816 779151448 519381637 444921497 643682032 366137865 572704705 443600430 772065725 143598124 815180548 430990245 379228438 56888090 417659478 902010679 875229048 293479180 915941931 927351146 830793158 45118584 375985819 975389946 847126350 988600616 82348654 878952055 745163997 966382671 954372971 450085668 47640621 256369207 838839657 407571330 31667720 918223774 866101676 629510586 581711980 221420980 951610740 523104644 802930654 35751018 603089246 597564784 995326048 683434139 889400494 621584184 917623289 733394491 124382604 268739198 687637534 220580301 909816984 403007644 710576061 381510281 187073238 463896823 301645776 752249720 322422557 615819528 892763210 973708588 672265118 961698888 34550048 781553388 625066997 376466207 783715134 682113072 515418436 455009645 372022618 949929382 68537499 466418860 753810981 276425406 868863907 172301307 2123858 103966114 381990669 121019888 17616371 418019769 795604737 784195522 11251230 957615590 914140476 351245837 283030741 544361813 865260997 476266814 294199762 570663056 806773758 816982003 633233593 629870877 380909796 807134049 370341260 588557509 261052990 228866994 665539686 946686763 50402852 407691427 100723495 11971812 918343871 464016920 635875727 625307191 707213345 32028011 755852630 841601888 95439227 872827108 804852206 180588000 743362542 72380603 517820376 643922226 362895246 994485369 114534650 311493730 955213650 239435530 240756597 738318468 277986667 863819833 649566785 680071423 677669483 776509314 38993637 18817341 204847594 275344533 982355572 714899553 229827770 123181634 187313432 73101185 651488337 261173087 273783272 685235594 879672637 959176851 416698702 281349383 544602007 207970116 322542654 540278515 127505126 558052871 379588729 951370546 995326048 327947019 246401156 337674876 837998978 11371327 460534107 586756054 784435716 667221044 453208190 375865722 15214431 97360779 530790852 994965757 639118346 957615590 680792005 93277481 193078088 534874150 507732228 250604551 556011222 948968606 908375820 792121924 488636805 793923379 851449842 915101252 840521015 266817646 502327863 929873183 984517318 972147327 656652508 346081666 725107798 584834502 636836503 949208800 60611097 976470819 116216008 862378669 579430137 359772724 136752595 513016496 289515979 277386182 285672875 128946290 446963146 389076392 544602007 446122467 426066268 879312346 698206070 629990974 262013766 256609401 496683304 313295185 922066878 10890939 434112767 130507551 125943865 317498580 89794668 203886818 214575451 880032928 684875303 487796126 201604975 545923074 119218433 615699431 342718950 592400613 970706163 754291369 7648320 443840624 552288215 367098641 667821529 652449113 542680455 856373819 293599277 629630683 346802248 259371632 384632803 269219586 515538533 987519743 875589339 320861296 931074153 223342532 397002794 434473058 520342413 874028078 282910644 323383333 345000793 218058264 444921497 63373328 197641774 614738655 920145326 826589763 149242683 674426864 599246142 559734229 167977815 996767212 363255537 959537142 890241173 120779694 636716406 130627648 273903369 582552659 458612555 849888581 903451843 308851596 805332594 409853173 508693004 615459237 675868028 79586423 425345686 755852630 793803282 422943746 977431595 574746354 416098217 956174426 264055415 510134168 282190062 717421590 410213464 692441414 538717254 839199948 946206375 395081242 243158537 423424134 519021346 923748236 950169576 36231406 392559205 796685610 509053295 561175393 86071661 735195946 640439413 612456812 523825226 153566175 96520100 758014376 336473906 712017225 193318282 503528833 701088398 418860448 472423710 895405344 691961026 482271664 578109070 814580063 478068269 652088822 355809523 926390370 453928772 293359083 601888276 839800433 60611097 480710403 833915680 767862330 81507975 730512163 415137441 885797584 899969030 174943441 241236985 237273784 462815950 449004795 748406616 563217042 41755868 103485726 474825650 957495493 58569448 321221587 428948596 665659783 716220620 599126045 619182244 911978730 533673180 807734534 671784730 134350655 596483911 653049598 444441109 460293913 375505431 25302579 859616438 823707435 364096216 163414129 444561206 838359269 703250144 680071423 919785035 562136169 763418741 777349993 885197099 556971998 365297186 437235289 174463053 172181210 11011036 530550658 891322046 607652932 768102524 318099065 406010069 221060689 2844440 456450809 664819104 694122772 817582488 71179633 373703976 80307005 660495612 301405582 857454692 321221587 850128775 740720408 120659597 979713438 998448570 544602007 866461967 298283060 611496036 997367697 202325557 101564174 17015886 710455964 403968420 331790123 293959568 263815221 903211649 986318773 732914103 815060451 704691308 311974118 933355996 874868757 945245599 867182549 30706944 853011103 965421895 813258996 265256385 802690460 322302460 91235832 763178547 778430866 456691003 383071542 229947867 121500276 342478756 452247414 497043595 407090942 301525679 413335986 69738469 194759446 370341260 386434258 375985819 403367935 150803944 401566480 727870029 431951021 206048564 814219772 677309192 13773267 307290335 978152177 630471362 10290454 784435716 354488456 231509128 739519438 114294456 716941202 665179395 649686882 957135202 934196675 749127198 269459780 577388488 948368121 807974728 200524102 830673061 963740537 540638806 772546113 760536413 329988668 41395577 238955142 595883426 930353571 231629225 786597462 127745320 431470633 529469785 729311193 116696396 934076578 565018497 468940897 645363390 455970421 184431104 287474330 285192487 729911678 232469904 246641350 12452200 485153992 764859905 783955328 758014376 667821529 74302155 327106340 547364238 48721494 727870029 454409160 417539381 880873607 332150414 641880577 684515012 960017530 128585999 230668449 130267357 636236018 580871301 176744896 939841234 147080937 405169390 894204374 413095792 225264084 265256385 410693852 262253960 841121500 391838623 501847475 959537142 759815831 844244022 86311855 417058993 942363271 832354419 728470514 199563326 76824192 738318468 400005219 303927619 168338106 306449656 252165812 935517742 735436140 682593460 583633532 638878152 637917376 677549386 253727073 827790733 826950054 806413467 212894093 984157027 616540110 973348297 981274699 693161996 495482334 309692275 496923498 217097488 52684695 238955142 561295490 651248143 16415401 728830805 126184059 182269358 369020193 601407888 214095063 465698278 273302884 331670026 463896823 437235289 350164964 461134592 682833654 616780304 301645776 604290216 827430442 960858209 855292946 721504888 981034505 567660631 964581216 329027892 776509314 109490576 114414553 152605399 449004795 48000912 242558052 88473601 847606738 292758598 698326167 193798670 864300221 205928467 433151991 790200372 527908524 985598191 218298458 65895365 743602736 971306648 864420318 920505617 14253655 731953327 194999640 670703857 696764906 288315009 392319011 535955023 927831534 121500276 655931926 964461119 498724953 747445840 280868995 622905251 702289368 850729260 180227709 404208614 778430866 545802977 952331322 674186670 525986972 459933622 9329678 618461662 608373514 401086092 995566242 533673180 462335562 288675300 2604246 669743081 818663361 631432138 470742352 92436802 983076154 241957567 477107493 118858142 184911492 416938896 104086211 930353571 677789580 588197218 154767145 758614861 25182482 707573636 610655357 289155688 195600125 974789461 783354843 506891549 41755868 604890701 996406921 956174426 851810133 262734348 93637772 573785578 682473363 788879305 928191825 694963451 800768908 198602550 898167575 280508704 382230863 485874574 409853173 247482029 652809404 947647539 183590425 798727259 700007525 849167999 918704162 505330288 442999945 151164235 130147260 651968725 103966114 483953022 166056263 182869843 82588848 315817222 557212192 78145259 693402190 843163149 202085363 913900282 713698583 397483182 136032013 725468089 947287248 690880153 770144173 414416859 899248448 990522168 200163811 728350417 28665295 130627648 100363204 82829042 935637839 809295795 598165269 461735077 767862330 91716220 556851901 802930654 666620559 180107612 139634923 100843592 74782543 599246142 449365086 217337682 817462391 430389760 999049055 131468327 698806555 80186908 317858871 352326710 389796974 575106645 975870334 73581573 889640688 708774606 154286757 189114887 149963265 500166117 942002980 248562902 808455116 520342413 418019769 824187823 952091128 581952174 993764787 885677487 709375091 949208800 533793277 654730956 240756597 938159876 75983513 724026925 556611707 19177632 460534107 382951445 447563631 556611707 75262931 29986362 838719560 672985700 151764720 281109189 721985276 972627715 304528104 219739622 996166727 466899248 488876999 801009102 425585880 185271783 643682032 372863297 291077240 529589882 148281907 99042137 159210734 836197523 417419284 665299492 530070270 138554050 204607400 291077240 498004371 166296457 754771757 209771571 867422743 3565022 674426864 127505126 217097488 875709436 319300035 759095249 598045172 714779456 3204731 587957024 75503125 880393219 429789275 898527866 209531377 135671722 583993823 505690579 15694819 827910830 719943627 640559510 59650321 343199338 207249534 29626071 731472939 203766721 328667601 313655476 161972965 978152177 64093910 553369088 545082395 621103796 342478756 317858871 261293184 632753205 721024500 487075544 41515674 438676453 288074815 937799585 946086278 511935623 185632074 829351994 130987939 65895365 369500581 75142834 931074153 7167932 275704824 376586304 834396068 794403767 472063419 389917071 680671908 324824497 561055296 70098760 926870758 581711980 894444568 325545079 364696701 349204188 287354233 181428679 840881306 97600973 442519557 706132472 380909796 977191401 998328473 15094334 518180667 546283365 534994247 249283484 714779456 283871420 557212192 72020312 601768179 742401766 858895856 430509857 881954480 381149990 374304461 831393643 124983089 314616252 675747931 523705129 655211344 733514588 38873540 534393762 651968725 397122891 131828618 370701551 990762362 764739808 78025162 189955566 516139018 651728531 858295371 357731075 962179276 214575451 318099065 532952598 870785459 888559815 63373328 104566599 100363204 147921616 462455659 256008916 358571754 764980002 843763634 348123315 304167813 939000555 927110952 249643775 24221706 688358116 897326896 988480519 52564598 333111190 949328897 560815102 619662632 380789699 363615828 844123925 86311855 942483368 823227047 361574179 907775335 376346110 516499309 509533683 398804249 286033166 922427169 903211649 582432562 942843659 130747745 58929739 306089365 355329135 248202611 868743810 646083972 604050022 535594732 100363204 459573331 335032742 94118160 214815645 681752781 488756902 501246990 146360355 906093977 183470328 751288944 190796245 423784425 884956905 511094944 398083667 563577333 76583998 880513316 578709555 612937200 132068812 987639840 658093672 971306648 729911678 80066811 298042866 440117617 973828685 152605399 616780304 788519014 479509433 46559748 97841167 170740046 88833892 840761209 937319197 952691613 756813406 136272207 529589882 828751509 42716644 752730108 696164421 504009221 999169152 356049717 635275242 705171696 96279906 40434801 498604856 508933198 375865722 566339564 82708945 67456626 111051837 281709674 330228862 611736230 536795702 567540534 145159385 822026077 3084634 818663361 480350112 162573450 338875846 970105678 282550353 705051599 296481605 66736044 550126469 485153992 788879305 303447231 550366663 696885003 981514893 996887309 563337139 307290335 912939506 560454811 386674452 645123196 603689731 532832501 745884579 847366544 564297915 763298644 975510043 504849900 781793582 36111309 245800671 120659597 985237900 554930349 112613098 809415892 386794549 882434868 629510586 57488575 444321012 343919920 759095249 245200186 95078936 824428017 563817527 608973999 621223893 299003642 303447231 97240682 462335562 552288215 976230625 907054753 382471057 300925194 531751628 886998554 528749203 670463663 18216856 800048326 793322894 236072814 955213650 725708283 695684033 540638806 511335138 518540958 204006915 141196184 62172358 587356539 330949444 495842625 290116464 500886699 3084634 178786545 882554965 579550234 18577147 975029655 476507008 988600616 650767755 261052990 88353504 435313737 331309735 8128708 72140409 695203645 572104220 130507551 96640197 305849171 543280940 660495612 600807403 988600616 464257114 401686577 93757869 291797822 114654747 232349807 346201763 787798432 735676334 522624256 239795821 945125502 75022737 171340531 577508585 437355386 589398188 35270630 100963689 142517251 227666024 162573450 509773877 37792667 371542230 243999216 513136593 948968606 743002251 978392371 215656324 285072390 395081242 466298763 844484216 439637229 812418317 312574603 942483368 628790004 637316891 957015105 804371818 168818494 280028316 514337563 521303189 543160843 28785392 253847170 160651898 95439227 394720951 121860567 524545808 745043900 656532411 697965876 559013647 546403462 981514893 72140409 487796126 503889124 749367392 269579877 442500 219499428 710576061 940681913 816621712 981394796 822986853 157409279 773026501 10410551 510254265 93757869 98201458 540999097 985478094 663978425 351365934 532952598 849888581 584594308 539798127 308851596 67937014 166056263 749967877 803170848 855052752 164855293 990882459 891922531 935277548 454889548 697485488 682593460 885797584 96760294 263575027 653650083 873667787 618461662 934076578 237634075 62412552 191276633 200884393 692681608 540638806 267057840 111532225 805812982 99162234 912339021 476987396 149843168 689559086 588677606 802570363 168938591 555650931 811817832 503288639 885917681 101444077 210492153 187073238 295040441 844244022 336954294 160892092 754651660 990522168 458732652 774227471 651007949 550486760 886037778 315096640 510494459 767742233 349324285 820344719 783474940 480710403 407811524 862859057 586635957 897687187 157889667 352807098 839800433 170740046 49442076 874748660 658333866 485994671 416218314 501367087 700127622 977191401 895885732 814459966 970105678 811817832 77544774 954613165 488997096 696764906 547124044 972507618 305969268 733634685 712617710 381750475 452007220 554089670 631312041 155727921 542079970 323023042 514337563 779511739 93037287 217217585 149602974 558893550 983436445 498244565 577748779 6927738 300925194 286273360 261052990 168578300 372142715 852170424 583873726 422463358 76463901 486835350 991963332 428588305 871506041 56647896 421862873 609814678 614138170 189835469 672145021 147080937 312574603 674546961 423424134 141556475 242197761 431350536 959417045 394480757 793322894 301645776 130627648 851329745 357250687 666860753 226825345 206408855 934556966 173862568 507371937 192477603 511094944 862738960 507612131 521423286 283391032 949208800 613057297 921226199 841481791 280148413 562976848 866582064 2964537 752129623 8008611 6327253 533072695 938880458 314135864 926750661 477227590 239075239 178546351 178906642 654010374 790920954 752249720 150203459 390637653 407331136 913900282 519982122 491038745 372983394 210492153 602728955 212533802 580991398 222742047 917503192 220340107 300564903 148161810 830793158 240396306 877510891 269219586 714899553 616059722 270420556 567540534 864540415 905013104 795004252 795364543 341277786 119939015 211933317 671664633 366738350 37192182 461014495 433392185 284592002 96640197 466058569 464137017 941162301 213254384 417058993 184791395 251084939 496563207 15814916 309331984 601407888 722465664 230308158 479989821 129186484 885917681 832954904 83189333 58689545 278827346 851690036 479509433 510014071 530070270 975029655 925189400 933596190 460894398 855292946 601888276 7888514 554449961 44398002 87512825 538477060 586756054 845925380 277386182 30706944 981755087 734955752 754651660 623265542 46799942 855893431 50282755 480830500 650167270 267658325 299003642 355929620 509173392 2243955 39714219 828751509 796325319 387034743 999529443 710696158 630111071 703730532 276065115 147921616 583513435 788519014 962299373 36351503 979953632 571503735 438075968 440477908 67816917 318459356 24341803 967463544 89434377 395801824 727990126 834275971 170740046 821665786 809535989 346321860 314376058 640559510 754891854 580511010 154526951 470382061 753210496 633233593 400605704 880633413 37792667 417179090 860817408 459813525 674186670 8729193 302246261 134590849 924228624 453208190 595403038 827070151 25182482 95078936 731593036 585434987 943684338 758134473 580751204 355088941 802450266 747445840 193438379 480470209 742281669 278947443 729191096 217217585 502928348 41035286 150203459 425585880 754531563 498364662 381270087 490198066 653650083 169659173 617981274 787678335 584354114 89074086 407931621 968904708 873427593 297562478 193798670 878711861 134470752 355809523 828871606 433151991 926510467 943684338 283871420 96400003 886878457 484673604 738438565 834155874 108769994 725468089 625307191 528869300 361574179 656172120 333111190 98321555 608133320 576187518 654130471 917022804 527308039 778671060 230308158 332630802 610535260 188994790 367218738 866702161 745524288 142517251 550726954 313775573 228506703 390517556 626628258 245080089 39113734 19417826 176264508 498244565 701448689 985598191 465337987 370101066 983196251 486595156 770504464 926150176 839800433 720183821 442879848 129546775 169178785 837878881 261413281 22420251 371782424 71419827 31067235 893964180 523464935 665179395 106127860 526227166 903692037 473984971 784315619 13533073 438796550 703730532 121980664 984637415 388235713 740960602 863939930 156208309 545802977 5606671 489717678 412735501 351125740 531271240 867182549 57968963 263815221 656772605 395801824 647645233 863939930 863339445 62172358 536675605 981875184 675027349 838479366 221420980 898167575 356169814 72740894 103966114 406610554 108049412 649686882 438676453 306930044 84150109 27584422 530430561 135311431 996166727 365657477 954853359 814580063 315577028 984157027 696524712 823707435 385953870 82949139 442759751 363856022 5246380 960257724 373223588 788999402 265496579 975269849 407811524 57968963 595883426 816261421 129306581 506050870 107929315 16415401 606572059 121620373 694242869 758734958 383672027 83189333 38993637 578829652 951370546 635635533 482511858 275464630 304287910 570422862 87632922 502447960 542920649 460414010 192957991 708414315 809055601 817342294 609454387 860697311 886998554 11011036 176864993 122220858 582072271 792482215 926870758 509893974 156448503 225624375 178426254 833435292 405409584 921826684 748526713 747325743 775428441 367098641 826109375 280388607 476386911 828030927 238714948 864540415 918704162 3204731 862979154 140955990 870665362 632753205 186953141 769303494 116336105 129786969 297562478 713938777 715259844 589157994 706853054 256609401 749607586 701208495 367458932 490318163 413816374 201004490 586756054 846525865 304047716 197881968 669983275 924468818 464737502 391118041 195720222 241477179 182869843 379348535 538717254 871866332 745163997 290596852 962539567 7888514 169659173 494041170 962299373 569582183 39353928 221781271 767742233 155487727 27344228 618701856 305969268 953532292 170860143 680912102 728110223 62292455 600206918 511575332 915341446 734235170 258410856 512295914 288915494 984757512 11491424 875829533 408291912 906934656 834155874 537876575 173262083 560815102 965902283 890721561 626147870 999649540 348723800 936118227 669022499 928191825 535834926 873187399 198122162 995806436 979953632 127625223 184791395 814580063 804612012 522143868 763418741 955213650 859376244 107448927 361093791 711296643 23861415 889040203 56287605 620022923 448764601 683554236 742762057 57728769 250244260 467499733 148882392 515898824 126904641 640679607 599726530 815300645 554329864 256489304 447203340 496683304 649446688 123421828 924829109 397843473 401806674 935637839 461735077 52924889 377426983 813979578 966622865 975149752 66736044 876550115 871385944 708894703 201124587 352807098 46799942 729911678 268619101 209050989 139514826 90515250 112493001 791041051 382350960 731953327 762818256 729191096 281349383 393880272 304047716 638758055 376105916 106608248 180948291 295040441 678870453 797045901 676108222 389316586 845084701 451166541 64574298 435433834 686556661 402647353 349204188 292758598 336113615 23861415 28184907 114294456 552048021 258891244 798967453 576908100 151764720 557812677 605731380 41515674 762578062 284952293 150563750 980794311 638998249 153926466 321101490 58689545 315577028 956774911 241597276 825869181 899608739 488876999 481430985 737237595 473384486 914620864 886878457 722345567 181668873 355449232 341037592 506170967 246281059 261533378 222742047 927231049 965541992 563577333 83549624 482992246 428708402 381870572 190435954 456811100 43197032 156208309 207489728 738078274 564898400 598405463 249043290 542920649 983076154 749607586 850008678 694963451 414777150 565618982 270060265 249043290 29385877 47520524 964220925 790560663 660495612 864660512 974549267 31667720 827430442 491639230 501367087 151404429 184190910 515778727 441919072 855172849 496683304 634314466 8488999 887358845 57248381 452487608 281109189 671544536 860697311 19057535 686556661 993524593 533913374 896606314 797165998 879552540 456330712 112372904 106608248 621464087 715379941 511094944 45478875 242918343 572824802 570542959 549525984 167497427 720183821 572224317 653650083 869224198 76463901 489477484 841241597 366498156 90515250 651728531 369140290 506411161 350285061 656292217 732193521 768823106 733874879 32028011 305248686 826589763 653650083 477828075 83189333 129306581 682593460 398804249 683193945 401446383 561415587 186712947 796325319 395561630 80066811 649326591 612697006 676948901 893844083 550246566 861658087 808455116 11251230 527187942 306449656 140835893 532832501 876910406 47400427 443360236 905373395 788879305 463416435 156088212 865140900 93637772 591319740 424985395 320501005 752009526 619422438 351125740 577268391 293359083 371061842 896606314 466178666 291077240 450926347 504609706 329027892 442759751 247482029 993644690 541839776 923628139 676108222 388115616 939961331 420902097 421622679 16415401 492239715 68297305 917743386 564177818 322542654 240156112 265376482 773987277 969985581 273182787 493440685 923748236 302366358 199563326 442879848 752610011 224063114 320741199 492119618 963260149 159450928 24822191 9209581 848927805 847967029 529469785 569462086 926990855 43917614 477707978 721985276 644883002 425345686 694603160 920025229 245440380 721144597 196921192 701208495 528148718 958816560 435914222 170379755 3805216 268859295 569221892 142397154 421262388 824788308 304768298 404328711 206408855 444561206 642240868 294319859 316777998 486595156 156208309 488276514 326505855 608013223 317858871 657973575 672265118 979593341 603569634 308731499 531151143 802330169 509173392 620623408 506651355 476507008 27464325 510734653 180708097 928792310 940081428 390997944 830312770 804612012 755972727 539077545 91956414 14013461 534033471 869944780 893483792 226825345 257089789 944164726 623866027 143718221 177825769 207009340 601527985 787558238 109490576 857094401 597444687 103725920 291677725 205207885 464857599 8609096 748046325 570663056 860817408 479629530 627468937 382591154 63253231 257690274 383191639 46799942 583993823 674907252 820344719 629870877 222141562 299604127 391838623 939360846 949689188 71419827 867062452 265136288 292518404 577268391 531991822 338995943 149122586 711656934 730512163 863819833 910777760 12452200 258410856 30226556 910897857 938039779 824788308 281349383 845444992 388596004 140715796 567060146 284712099 421142291 683314042 888800009 969625290 909096402 224903793 282430256 662897552 382230863 632392914 77304580 742641960 102164659 577868876 307890820 734475364 433872573 731352842 569582183 578469361 277506279 556971998 374904946 478548657 399164540 122100761 68897790 591319740 568861601 76583998 874388369 885677487 457411585 195840319 528509009 39113734 307410432 459933622 505450385 727749932 374064267 811697735 16055110 271621526 717901978 647885427 171340531 553008797 259131438 706132472 805452691 650767755 181428679 230308158 568861601 455730227 566940049 111051837 930473668 326265661 6207156 70819342 120899791 242558052 550126469 303687425 97721070 467860024 868863907 758254570 189355081 375025043 75743319 607052447 491278939 856253722 43677420 989081004 149602974 336353809 70098760 746124773 952451419 469301188 76944289 490438260 898527866 73341379 988960907 850128775 755132048 614018073 721985276 282069965 95319130 382350960 421982970 479149142 683794430 410693852 918223774 554690155 825388793 947767636 607292641 91956414 599486336 630951750 458372361 813739384 437475483 675627834 458372361 4165507 904652813 632513011 637076697 843763634 654971150 635275242 437235289 487435835 6567447 804852206 129666872 932275123 925429594 142757445 648245718 997247600 341758174 867182549 916542416 227425830 913539991 293599277 105887666 33949563 884716711 525746778 593601583 836557814 837158299 193918767 129426678 178786545 830432867 955573941 216977391 314736349 648846203 538717254 405889972 356530105 510134168 993404496 749487489 308851596 497644080 130147260 222141562 909816984 468460509 726188671 991963332 187553626 561535684 858895856 144919191 101083786 917022804 201845169 422343261 874028078 136392304 23741318 771945628 560454811 181668873 362534955 344640502 416338411 576187518 472183516 363976119 565739079 240516403 16655595 276905794 603329440 759695734 237994366 21219281 26143258 504729803 987279549 435794125 969745387 226825345 472784001 90755444 516139018 641039898 149242683 743602736 944284823 513857175 492600006 391478332 166776845 48601397 123301731 405049293 884356420 257450080 863099251 728350417 249403581 880873607 822026077 828511315 639478637 220700398 663738231 37192182 795244446 136992789 221420980 670583760 35390727 130867842 662897552 846645962 94118160 651848628 399404734 449725377 32508399 779872030 871986429 280388607 212293608 89914765 354488456 922787460 374664752 583033047 478668754 276545503 795244446 936118227 461614980 367098641 819383943 221541077 435914222 942603465 446002370 442279363 741921378 751288944 273062690 350765449 173141986 904412619 527428136 673466088 631552235 114774844 34910339 974188976 777349993 937439294 55567023 645603584 990041780 808815407 849047902 666980850 542680455 468820800 427747626 638758055 238474754 605130895 867302646 213734772 541479485 282190062 738078274 224183211 443840624 809656086 246401156 894204374 534994247 674907252 137232983 389076392 364336410 906214074 256249110 724987701 939120652 117777269 722465664 56767993 245680574 944765211 190556051 153806369 754771757 393760175 6087059 547604432 597564784 166896942 416818799 47160233 264295609 927831534 69137984 590238867 634194369 858655662 551927924 53765568 396402309 381630378 951250449 32028011 864540415 408652203 485994671 775668635 861417893 519021346 260212311 825749084 947047054 54486150 610895551 354248262 297922769 203406430 277266085 928792310 515418436 810376668 131708521 198242259 466538957 679951326 519381637 812418317 472904098 518901249 536795702 155367630 142277057 135191334 765700584 859976729 514217466 230788546 104926890 271981817 906574365 346201763 620983699 17856565 645723681 380429408 276545503 367939320 225984666 986198676 461975271 766541263 56167508 109490576 905973880 528869300 685956176 755492339 430029469 980313923 860457117 58929739 393519981 591680031 413696277 572224317 970345872 471342837 760176122 496443110 965061604 826589763 823587338 940321622 282550353 295640926 50042561 592280516 928552116 889520591 191516827 514577757 185271783 79706520 763899129 420181515 704571211 565859176 150683847 646204069 878351570 656532411 901290097 13773267 497884274 300444806 62172358 127625223 369020193 869824683 191997215 624706706 285792972 367458932 703009950 100123010 367579029 957975881 247602126 321101490 979713438 928912407 364456507 997127503 25542773 152125011 52924889 228146412 78865841 47880815 679350841 346441957 858415468 123061537 245920768 200283908 163414129 835116650 954733262 762578062 893483792 470502158 922186975 168338106 440237714 606331865 885557390 821065301 671544536 44518099 382471057 145639773 113333680 388596004 418380060 690639959 24101609 876790309 230668449 527548233 803050751 239555627 161732771 331429832 796205222 27824616 430870148 79826617 66976238 743602736 791761633 877390794 548204917 907655238 922186975 14854140 573305190 51003337 789960178 667221044 925189400 48361203 421862873 573064996 585314890 37552473 328427407 797286095 634194369 595282941 69858566 124262507 990882459 76223707 245560477 610295066 202085363 19057535 992443720 98321555 421262388 356530105 47280330 890361270 183110037 580511010 223222435 991963332 107809218 405889972 680912102 654851053 917623289 620743505 192237409 644883002 582912950 642481062 789479790 65895365 528869300 959897433 161972965 554209767 267298034 632152720 830913255 472183516 151644623 17015886 927110952 234151262 75262931 652329016 290596852 802810557 404568905 800768908 204006915 467860024 867662937 800168423 688958601 702169271 15094334 890601464 624826803 267538228 492359812 856133625 843763634 495722528 166296457 979833535 148522101 964701313 426786850 643441838 964701313 711416740 933716287 185752171 808575213 212053414 478908948 211452929 542800552 476747202 578829652 595883426 389796974 873547690 715980426 194639349 911618439 803170848 462095368 317498580 121139985 507371937 810136474 76103610 896366120 880633413 431590730 309932469 825749084 691600735 679110647 617380789 202445654 492840200 652208919 723666634 409733076 683434139 9089484 218538652 497764177 313415282 977551692 180227709 247361932 697125197 85951564 294199762 685956176 867422743 408772300 57728769 924228624 938880458 125823768 777710284 743242445 235472329 894444568 582912950 441798975 219379331 842562664 871866332 432311312 485634380 509533683 810016377 651128046 752129623 988000131 214215160 599966724 164374905 706132472 756693309 546763753 634434563 381990669 238354657 943203950 160651898 926870758 191156536 136872692 591079546 277626376 525146293 936118227 522384062 619662632 928552116 785036201 800528714 128946290 829832382 464737502 635275242 869584489 892042628 375385334 179987515 751048750 561655781 230428255 562256266 934316772 475546232 885557390 743963027 964581216 414897247 962899858 204367206 677429289 152485302 288555203 923508042 127985514 641760480 661696582 599966724 530190367 376466207 974669364 353407583 976230625 225264084 690880153 18937438 808214922 924709012 557452386 827910830 592280516 27464325 401086092 794403767 326505855 384752900 461494883 656292217 678390065 14253655 316177513 970225775 583513435 430870148 82468751 257570177 414296762 335393033 65655171 101564174 757413891 145279482 687157146 505570482 917022804 320621102 605491186 757654085 185031589 366017768 628189519 35030436 145399579 171941016 289636076 807494340 429549081 252406006 69378178 490198066 193918767 998568667 577028197 361574179 408772300 577868876 316417707 222742047 378868147 433872573 9930163 458852749 211813220 399765025 502087669 188994790 723066149 918223774 27824616 337074391 322062266 420541806 385593579 915821834 447443534 908856208 754771757 637196794 466058569 841121500 225023890 531151143 30586847 480350112 677669483 571383638 946686763 968424320 914260573 571503735 227666024 645123196 880513316 133389879 278346958 557332289 5966962 862018378 570302765 773867180 803170848 280989092 925069303 108649897 753931078 288315009 411414434 10290454 315216737 620383214 608013223 490198066 742641960 128345805 365177089 599005948 853011103 202205460 411534531 111412128 505810676 169058688 537636381 397002794 471102643 95199033 277386182 457891973 793923379 509893974 174222859 105046987 864780609 831633837 579790428 763899129 504969997 614378364 566579758 956414620 764139323 683314042 180948291 829351994 18216856 173021889 562616557 225143987 957015105 49321979 215296033 778310769 394841048 419581030 30586847 654971150 771345143 405409584 834396068 811097250 764139323 325545079 238114463 115735620 300685000 384032318 460654204 967703738 30947138 837158299 483472634 196801095 287114039 364336410 649806979 972747812 899128351 241236985 453208190 720424015 257570177 412975695 846645962 153566175 241477179 211212735 268619101 789719984 814940354 287954718 576067421 53645471 725708283 907655238 511815526 639838928 223822920 989681489 969745387 594682456 825388793 791641536 613657782 454168966 849408193 577868876 933235899 13773267 348363509 387875422 49201882 512175817 863339445 891201949 461014495 752369817 547244141 823106950 821545689 312934894 16655595 899368545 707333442 854212073 602728955 652929501 807494340 960137627 657252993 892523016 211573026 556251416 25662870 284952293 868383519 746845355 153926466 91956414 744443415 791401342 359532530 408772300 234871844 501006796 33589272 437355386 437835774 944044629 365297186 704451114 563337139 114534650 528388912 386434258 916422319 754771757 262374057 401086092 514938048 955573941 416698702 225984666 928071728 869464392 678029774 14613946 26383452 949809285 881594189 980073729 556971998 527908524 270180362 805812982 419701127 127264932 618101371 355569329 257209886 73221282 121860567 321701975 42956838 832954904 801609587 893123501 162573450 150924041 130507551 265616676 859616438 802791 233310583 841121500 173862568 132669297 929632989 52804792 423904522 19177632 411054143 607893126 274383757 425585880 870184974 127505126 168578300 671304342 507131743 936958906 828871606 514817951 29505974 922307072 759215346 260092214 909816984 809295795 463296338 196801095 741561087 9209581 108890091 545562783 350885546 464016920 487075544 453568481 793202797 113934165 517460085 836077426 570062571 148041713 977671789 425105492 466538957 8729193 75743319 570903250 766541263 797526289 326385758 753931078 542920649 402647353 202805945 138193759 505570482 329508280 582912950 202306 726308768 553609282 120659597 283511129 907415044 831994128 890841658 485514283 37072085 411294337 295280635 290716949 42236256 920385520 11611521 977191401 102044562 871025653 787438141 847486641 40434801 307050141 226465054 491999521 349684576 557212192 405409584 550606857 670343566 934316772 327466631 915101252 57368478 3084634 39954413 378627953 856493916 955934232 940321622 92917190 928432019 156088212 685715982 542079970 63493425 869104101 78745744 506170967 16415401 289996367 905733686 755852630 540158418 300805097 704691308 406850748 804251721 387995519 191156536 118617948 235472329 809055601 125463477 539798127 451767026 111292031 203766721 814940354 302246261 584474211 605371089 526227166 955934232 262374057 197761871 170019464 509893974 467379636 455970421 826829957 580631107 452367511 495722528 348843897 666620559 601768179 969024805 334312160 920385520 297802672 201244684 891562240 473744777 607412738 791761633 126904641 187793820 729671484 640079122 170499852 872586914 827190248 3925313 976230625 903692037 569341989 925669788 313175088 740119923 831874031 944284823 110811643 669142596 182509552 119818918 130987939 908015529 228266509 502447960 8609096 519621831 227305733 778070575 116216008 250004066 271501429 141556475 323863721 771585337 784315619 630711556 804371818 153806369 272342108 387154840 601888276 378027468 864660512 331910220 956534717 963620440 365177089 447203340 148281907 811457541 70218857 957135202 273543078 688238019 637677182 668422014 288795397 465458084 555891125 916182125 729911678 157409279 539197642 951610740 812418317 516379212 121740470 499325438 369620678 115975814 833555389 564658206 55687120 43076935 794043476 874628563 222021465 870785459 228026315 795364543 982595766 880513316 237874269 837158299 956414620 692441414 735195946 10290454 474225165 858055177 280868995 118257657 426666753 271261235 639598734 541599582 161012189 740720408 255648625 959657239 143478027 292758598 495962722 663137746 218658749 688238019 715740232 703850629 782273970 698566361 631912526 858175274 472063419 316057416 697965876 480470209 802330169 780232321 447923922 794523864 244239410 539678030 95439227 106728345 799808132 399284637 220099913 857574789 822146174 876189824 326866146 70579148 38152958 427267238 586876151 695924227 827790733 17135983 8128708 964220925 962059179 696164421 356890396 638878152 215175936 439156841 100843592 318339259 242678149 592400613 250844745 225504278 395201339 265616676 503288639 959897433 969144902 367098641 948728412 355569329 966742962 20258505 64454201 378627953 994125078 566699855 214695548 805692885 556611707 591199643 911258148 511815526 698566361 482631955 918824259 856493916 944284823 247482029 493320588 11971812 744563512 501967572 215175936 470382061 75623222 320380908 412975695 610535260 999409346 841001403 788158723 878231473 841721985 611616133 133630073 393279787 194519252 244959992 14013461 330829347 382831348 49922464 329147989 272342108 756693309 322182363 558052871 535594732 402767450 631191944 399404734 523705129 840160724 179627224 505090094 238474754 73461476 960377821 843403343 594202068 164374905 529709979 794043476 784195522 60491000 728830805 663498037 225143987 448044019 159090637 743482639 810496765 692801705 100243107 277746473 878351570 386794549 715620135 744563512 211573026 141316281 31667720 711296643 547844626 899008254 990161877 359772724 627829228 923387945 685475788 983916833 936478518 514097369 883876032 35390727 635995824 378027468 340076816 402887547 14253655 96039712 979953632 758494764 192237409 586635957 352326710 886277972 911978730 576547809 394480757 102044562 20378602 469301188 822626562 732553812 825989278 917503192 211693123 963260149 627709131 784075425 375025043 712017225 526467360 418500157 107689121 788398917 886157875 298283060 208930892 127505126 831273546 955333747 118137560 913179700 144438803 412615404 20378602 312454506 216256809 436754901 666500462 25062385 654250568 932034929 979833535 972988006 161612674 163294032 519261540 207729922 357010493 113573874 754411466 712497613 307530529 292038016 772305919 488156417 71780118 66015462 690760056 697965876 400365510 791401342 680191520 956294523 918463968 773506889 750087974 406610554 924468818 348363509 694362966 236913493 189715372 136752595 319179938 766180972 23621221 118738045 376946595 70939439 419460933 4645895 757533988 574866451 131948715 66375753 273182787 713578486 785636686 229467479 849768484 295040441 710095673 171460628 425826074 900689612 859736535 760656510 909096402 804852206 976711013 286153263 818903555 196560901 491879424 840761209 189715372 149122586 67937014 551687730 783595037 118978239 626027773 782514164 254207461 824788308 360133015 615219043 326265661 249043290 676828804 952931807 204247109 127264932 532232016 368659902 836077426 690880153 303327134 102164659 933115802 374064267 777229896 456450809 108409703 517580182 655451538 690880153 485754477 3204731 850609163 61331679 952451419 238234560 995446145 916422319 247121738 36711794 127264932 163053838 536555508 912459118 521303189 475426135 239795821 832954904 623986124 698566361 106848442 944404920 702409465 303927619 294199762 470141867 796805707 599005948 219979816 513616981 553248991 578349264 554930349 362054567 86431952 960497918 350044867 833795583 837398493 274744048 808575213 481190791 197281483 508933198 694483063 277145988 335393033 371782424 455009645 552888700 348723800 427987820 583273241 153205884 152125011 652088822 95799518 954372971 878952055 807134049 26023161 616540110 157649473 353887971 881594189 652929501 85831467 558893550 718622560 524305614 600206918 617020498 328547504 544602007 188514402 331790123 961939082 292278210 524906099 165215584 843883731 796445416 539918224 904052328 687397340 935757936 83669721 130627648 648245718 769903979 126424253 668782305 993044205 584113920 467499733 425946171 493320588 53885665 310412857 434112767 114774844 522504159 186472753 733394491 317858871 627348840 391238138 368539805 640079122 504969997 77304580 688838504 671904827 181668873 258050565 361454082 402407159 82228557 76343804 939841234 937559391 361213888 585074696 218298458 205928467 540879000 720424015 605971574 79706520 392319011 912819409 572824802 63013037 455850324 300084515 517460085 406370360 299604127 906574365 498965147 621944475 913419894 598285366 59890515 44277905 488876999 781673485 601287791 549525984 951610740 759095249 109730770 418380060 220220010 583873726 796565513 358451657 949208800 529109494 122941440 208810795 565258691 517820376 376226013 971666939 138914341 125823768 19537923 837878881 222982241 655451538 970465969 436995095 974068879 562376363 96400003 724026925 541959873 347883121 708054024 142757445 349444382 75503125 787558238 226104763 642120771 839680336 414296762 369860872 909937081 332750899 561415587 721144597 618701856 910057178 467259539 444921497 249283484 148522101 991362847 857574789 394600854 997727988 410813949 423784425 220700398 553369088 359772724 149963265 446362661 191156536 539077545 597084396 62892940 778430866 852650812 909816984 195239834 407691427 106127860 459813525 88353504 469661479 64454201 136032013 841361694 271501429 357610978 126784544 595162844 405529681 724387216 392078817 695323742 620143020 633113496 56647896 835236747 762578062 139034438 3925313 662176970 922186975 79106035 227185636 937559391 301645776 260572602 152845593 698206070 46439651 520102219 131828618 58089060 373223588 425465783 804612012 345120890 29385877 462455659 896606314 734475364 97961264 650407464 134110461 980313923 645003099 515538533 739279244 641880577 748286519 960497918 397363085 369980969 499805826 941402495 462695853 624466512 10290454 403247838 285312584 836317620 551327439 48121009 52324404 768703009 133990364 818783458 648365815 961818985 545082395 699887428 660375515 522864450 747445840 212413705 297202187 970586066 681392490 41996062 348963994 287114039 603209343 147681422 700968301 375025043 19297729 163173935 243158537 770504464 133630073 100002913 934917257 93757869 707693733 703730532 927711437 531631531 471462934 102044562 891322046 716941202 819383943 405769875 57248381 189835469 840160724 186833044 69258081 474105068 681632684 855893431 365177089 570663056 623265542 721865179 10890939 781193097 513616981 541119194 377426983 337074391 226705248 747325743 750688459 353767874 289035591 333231287 369020193 582312465 119458627 357010493 540278515 420661903 904652813 341638077 709855479 28665295 355209038 830673061 352566904 984517318 203886818 320861296 579550234 443600430 798487065 453808675 108169509 402887547 484553507 665899977 171460628 934316772 977791886 120659597 357610978 234511553 353647777 768823106 48721494 92556899 480230015 315216737 674787155 899128351 336594003 565138594 155727921 681992975 84150109 424505007 947047054 618101371 218178361 997247600 118858142 870665362 763058450 466058569 568261116 456570906 48121009 126304156 755132048 88473601 30827041 272942593 425105492 737357692 675387640 162813644 199683423 698085973 664939201 863339445 223222435 604770604 494161267 506891549 491038745 490678454 108049412 545923074 56047411 473864874 70819342 169418979 541479485 897206799 202205460 147201034 959417045 488636805 109250382 853371394 566940049 842802858 423544231 624226318 873067302 143237833 408051718 516739503 764739808 690880153 127505126 173622374 976470819 412014919 957375396 114894941 795484640 68537499 630111071 750928653 905853783 330228862 588197218 365297186 779511739 457891973 756813406 235472329 941882883 603689731 288435106 287114039 652569210 205448079 449485183 67576723 999889734 42116159 67696820 117657172 482271664 25903064 262374057 954973456 154046563 995446145 129306581 104686696 975510043 494881849 389917071 390397459 683914527 843523440 213134287 796085125 364456507 99882816 51123434 477107493 734595461 950049479 307050141 834396068 897807284 91836317 602488761 916782610 969264999 587596733 51844016 44878390 482151567 574746354 343079241 192477603 752249720 859496341 716821105 536195217 283631226 122461052 967463544 495962722 528509009 66135559 895645538 64454201 493800976 993164302 445762176 904292522 7768417 912699312 186953141 274864145 789599887 315697125 368299611 795364543 18336953 465217890 747686034 954372971 704811405 252886394 830673061 269219586 400605704 976831110 861898281 122220858 826109375 762457965 379949020 939601040 257570177 230908643 680431714 277626376 456811100 988840810 516619406 484553507 439997520 802210072 159811219 28064810 849528290 788038626 211452929 825268696 399164540 372743200 882194674 503528833 579910525 357851172 36831891 446482758 138674147 96039712 300204612 877390794 966863059 495122043 175423829 269820071 292518404 973228200 170740046 404689002 544001522 744923803 109010188 457531682 89914765 619662632 89434377 743242445 247602126 762457965 611496036 902130776 197281483 721504888 423904522 990402071 712978001 850609163 179867418 783835231 269940168 282310159 276065115 204247109 558653356 136152110 323143139 282430256 952691613 176504702 307050141 252165812 877871182 50763143 950770061 809295795 424384910 624466512 593241292 824307920 126544350 481911373 290236561 105287181 528268815 882675062 973468394 634434563 90154959 540758903 679951326 152245108 56647896 407451233 183350231 145159385 968904708 142637348 757533988 742281669 850368969 420902097 253727073 357971269 53525374 277506279 399765025 348603703 797406192 38633346 34670145 859256147 168338106 97000488 267898519 619302341 336473906 455610130 27104034 406370360 758254570 134470752 610775454 458492458 182029164 655451538 576187518 239435530 305128589 511094944 156328406 346201763 271021041 792602312 881954480 618821953 417419284 318459356 950890158 963260149 358811948 463656629 700848204 541359388 35270630 942243174 961098403 963740537 740960602 321822072 670703857 792362118 608853902 893003404 763658935 658694157 355449232 307050141 109970964 996887309 971546842 26143258 285312584 575707130 469301188 722465664 490558357 903091552 170259658 438556356 298042866 356650202 282550353 22300154 499805826 608373514 582912950 18096759 189955566 533673180 942123077 230788546 675147446 606692156 439397035 629270392 399284637 341998368 480230015 910537566 316537804 130147260 394240563 70939439 189955566 186833044 798607162 9930163 592520710 614378364 300805097 343319435 138313856 353287486 181068388 715019650 720904403 471703128 913299797 5846865 280868995 864660512 392559205 383431833 488876999 597925075 600086821 735316043 906694462 718382366 442999945 967703738 405409584 586035472 359532530 625667482 448044019 951850934 473864874 135071237 224543502 89674571 321221587 486354962 426066268 145639773 856373819 170740046 579310040 762337868 762337868 606091671 721144597 426666753 259611826 922787460 156688697 800889005 503528833 661096097 82829042 491158842 338155264 688598310 861658087 728830805 723426440 909696887 358932045 151284332 223462629 13533073 935998130 846886156 736517013 139875117 498604856 133750170 952691613 576667906 458492458 50162658 725107798 276425406 300204612 193198185 108289606 162573450 150803944 124022313 603329440 168338106 61091485 899728836 797286095 53405277 883515741 484913798 706012375 84870691 896005829 601287791 154286757 212293608 790920954 996406921 426066268 423304037 648846203 864660512 283871420 388716101 249883969 56407702 223102338 572584608 101444077 833195098 661936776 680431714 754531563 881714286 658093672 761377092 571864026 726909253 69258081 618942050 232229710 698566361 753090399 791641536 898768060 57248381 940802010 903692037 204367206 449485183 632272817 653409889 135311431 554930349 849167999 672385215 173862568 810256571 259731923 758374667 750087974 720544112 961939082 99402428 144799094 2003761 813979578 537636381 979233050 197161386 319420132 892763210 981995281 680671908 798967453 822866756 755252145 528989397 240276209 473264389 320380908 411654628 909576790 344160114 461855174 198722647 230188061 666020074 838119075 29626071 379228438 366378059 567420437 296121314 665179395 398203764 715019650 388836198 362054567 957375396 770864755 125343380 7047835 567540534 972027230 191636924 294439956 126304156 807494340 500406311 840761209 482031470 122340955 940802010 69978663 616420013 202325557 118377754 194038864 839079851 783474940 89434377 35150533 273903369 83789818 369140290 16295304 246761447 241477179 642961450 717061299 347042442 611496036 412975695 14373752 151284332 544602007 957255299 860337020 497043595 704691308 91956414 780832806 681632684 414176665 542560358 399885122 58689545 446242564 979833535 98321555 580631107 415497732 569582183 363495731 957735687 877150600 776629411 747325743 484433410 816741809 701088398 984277124 749967877 45358778 441078393 465097793 201004490 710576061 311733924 689438989 620143020 939360846 543641231 250604551 309091790 896246023 671784730 652088822 367458932 737117498 948848509 902250873 883635838 366858447 872947205 949208800 619422438 712017225 882194674 412135016 14613946 951490643 813499190 859015953 910057178 100963689 548445111 798727259 201484878 243158537 178426254 280748898 93397578 871506041 465097793 373944170 414056568 343199338 344640502 366858447 33949563 773506889 753690884 893363695 484553507 61932164 280268510 121380179 912579215 823347144 433992670 570422862 981394796 427027044 831153449 518901249 116696396 478428560 886037778 720904403 753210496 105287181 529349688 408291912 174222859 687637534 937199100 113934165 483592731 897086702 782273970 475666329 430509857 371782424 905853783 238594851 969505193 656772605 780112224 106247957 91596123 280748898 994245175 887238748 513136593 114054262 181668873 148041713 50522949 573064996 945245599 909096402 746605161 199203035 553248991 601527985 284832196 988360422 591079546 185271783 223943017 367939320 610174969 923508042 428107917 551447536 48721494 856133625 272222011 313175088 628309616 116816493 641760480 92556899 818303070 539557933 878831958 106247957 432311312 791521439 531991822 896005829 339836622 202685848 93277481 389796974 838599463 409012494 979593341 712377516 605611283 454409160 505810676 767141748 689559086 302846746 605250992 778070575 545442686 658574060 179387030 953892583 782153873 782874455 249763872 617260692 411534531 537035896 319780423 322662751 490798551 575226742 513136593 509653780 498244565 665179395 290476755 80186908 963380246 840881306 543881425 484073119 306930044 140235408 248322708 748286519 580871301 206168661 262253960 481070694 180467903 14734043 137473177 761377092 750688459 243398731 285552778 1883664 257810371 539077545 420301612 7528223 110691546 143838318 353887971 672024924 661456388 209891668 200764296 26503549 245440380 425585880 261173087 167977815 473024195 676348416 708054024 522744353 86792243 329868571 303086940 503288639 839440142 374184364 580751204 387875422 546763753 890121076 194158961 789359693 292998792 805812982 445642079 796445416 647044748 617861177 168698397 65535074 105527375 123301731 846886156 863699736 560334714 529830076 661576485 291797822 692321317 531271240 741921378 508933198 693882578 394480757 153686272 794764058 907174850 566940049 918584065 717901978 417539381 692921802 798727259 867903131 120059112 399284637 949448994 762097674 48000912 640559510 961458694 861658087 113093486 928432019 874508466 418380060 488036320 984397221 409012494 61331679 50282755 322182363 435073543 561535684 778911254 724147022 743482639 538116769 662297067 392198914 70819342 611616133 561175393 523104644 583393338 895285247 57368478 40554898 514938048 109850867 994485369 55567023 975149752 316417707 694963451 93277481 380789699 53165083 905733686 949689188 441558781 811697735 949809285 542200067 317618677 190916342 380909796 703970726 83789818 789599887 175904217 468220315 673466088 763178547 416938896 818663361 341998368 860096826 567540534 272702399 811937929 104806793 965662089 525626681 225744472 815300645 403968420 335633227 306209462 426426559 701088398 998688764 595643232 272101914 114654747 905973880 569101795 674426864 574986548 995085854 926870758 105887666 234151262 330589153 809896280 139274632 659054448 233911068 197401580 146960840 167377330 379108341 236793396 28425101 659054448 99522525 144919191 970586066 30466750 442159266 434833349 52804792 239075239 571864026 436634804 675147446 109130285 171340531 808094825 810376668 776028926 107809218 983676639 655811829 871626138 888199524 843403343 749367392 944525017 391478332 620983699 647885427 751529138 994004981 692801705 347162539 508332713 979833535 910657663 486234865 57008187 264775997 944885308 86431952 672625409 269219586 507852325 880513316 717061299 632032623 108769994 186712947 588557509 778070575 281349383 672865603 564057721 571503735 963260149 260572602 943804435 146840743 670463663 539918224 633713981 802690460 4525798 238955142 870785459 515658630 343199338 214095063 117296881 242437955 616420013 106488151 440117617 13533073 234511553 177705672 289155688 887238748 433151991 11251230 525266390 810016377 480950597 747085549 955573941 482631955 424505007 472183516 453928772 417179090 459213040 926390370 392439108 935998130 614618558 245320283 276185212 188754596 572824802 422943746 86792243 591920225 30346653 454649354 112853292 832474516 465097793 296001217 753690884 647525136 668422014 191036439 414056568 541239291 391358235 163894517 461855174 806653661 667581335 661576485 73221282 891802434 187553626 314376058 148041713 976470819 74182058 141196184 964220925 746845355 918223774 352927195 619782729 459693428 511695429 41035286 247962417 876309921 658574060 815901130 542800552 376706401 19658020 77905065 132789394 23981512 456811100 284471905 253006491 428588305 269099489 813859481 141556475 570182668 936238324 661456388 233550777 680551811 102885241 794283670 983316348 328667601 386554355 308010917 695924227 594802553 695804130 18697244 278947443 447683728 633473787 784435716 678990550 178186060 366257962 653529986 35751018 491399036 842682761 345000793 480470209 309211887 618942050 561415587 487195641 583993823 648485912 452487608 589758479 188394305 581832077 168698397 67937014 645723681 312214312 115495426 843283246 889760785 126664447 159811219 666860753 562616557 421022194 832834807 812058026 124502701 830192673 853251297 576427712 571383638 191997215 129426678 69378178 220940592 600206918 332750899 686196370 282190062 640919801 211573026 856614013 167737621 566940049 640319316 958576366 228987091 321101490 607532835 958336172 657252993 210131862 714779456 996767212 550726954 804011527 476987396 462215465 345721375 931914832 495001946 92797093 2364052 804251721 91596123 737237595 156088212 550006372 908976305 361333985 841842082 859136050 63253231 811337444 458612555 240516403 930473668 160171510 122821343 1523373 996527018 616540110 972147327 927231049 643682032 684995400 437115192 894924956 544962298 571263541 696404615 996286824 301045291 884476517 870785459 731112648 543280940 124262507 479269239 267298034 185752171 814700160 302486455 488997096 125343380 328667601 109610673 975990431 289636076 855172849 846045477 553969573 912339021 951971031 609094096 972627715 218538652 352326710 464857599 311133439 158370055 172541501 731232745 759215346 837758784 558893550 982595766 887959330 705652084 119578724 328547504 886037778 179987515 598645657 724867604 292518404 408051718 769903979 331069541 488756902 789960178 687037049 865501191 803651236 760656510 40915189 366618253 498004371 495362237 943203950 122100761 361694276 60250806 2123858 934797160 40674995 353407583 333711675 442759751 224903793 412255113 479389336 525506584 109010188 425826074 728590611 51964113 855773334 935757936 805212497 660015224 196801095 340677301 783715134 3204731 956174426 787077850 613297491 588437412 83189333 310893245 663377940 144678997 552408312 845324895 991963332 535834926 170139561 302366358 266097064 216497003 337554779 189955566 362534955 903091552 340317010 680071423 637196794 191636924 90275056 190315857 213734772 978512468 309091790 707093248 799087550 457411585 548445111 175303732 945605890 782754358 374064267 390757750 63253231 755732533 701088398 439877423 710576061 599246142 234391456 836798008 865020803 536915799 336834197 886758360 437715677 233190486 444441109 358811948 951370546 491879424 749487489 690279668 391718526 252165812 170379755 707693733 768102524 165455778 508092519 545923074 650767755 870665362 56167508 114174359 233911068 520462510 292758598 831753934 676108222 266457355 590959449 838239172 132789394 341878271 914861058 339236137 714779456 642120771 285312584 650527561 802450266 410693852 601768179 5246380 356530105 276425406 258771147 777229896 257329983 595282941 844364119 905133201 227425830 637436988 351125740 474225165 813859481 26263355 165816069 324824497 758855055 903812134 846886156 802930654 820945204 141196184 400125316 155247533 441198490 993884884 670583760 94238257 758134473 809295795 600327015 54846441 309331984 278707249 434112767 690639959 725468089 681752781 730632260 78865841 789479790 68177208 419941321 611976424 373103491 285192487 736997401 819383943 692201220 895645538 797526289 691000250 661936776 27224131 890481367 68657596 106488151 26143258 721264694 265376482 453928772 527788427 928672213 907054753 743602736 483472634 64934589 522864450 453448384 884476517 983676639 275824921 834275971 519862025 23501124 925189400 880513316 723066149 868863907 347522830 541839776 107689121 706132472 95799518 820464816 904292522 645243293 816261421 592520710 257089789 285432681 282790547 240156112 30827041 277386182 426186365 306449656 521062995 965902283 924108527 352326710 942243174 6927738 49081785 834275971 36711794 539678030 929272698 717781881 338755749 511575332 547604432 837758784 118978239 257570177 528629106 551567633 118978239 200884393 737958177 669622984 81988363 915581640 847846932 333351384 83189333 299123739 453088093 245560477 994485369 210852444 327826922 919785035 774707859 12212006 847726835 106127860 492840200 689679183 418139866 994965757 883035353 393039593 874748660 681272393 225143987 180227709 691480638 690159571 201364781 227065539 896005829 181068388 261533378 512656205 170980240 350885546 910057178 654250568 399885122 244359507 106488151 310893245 659775030 647765330 967463544 219259234 524545808 185632074 717541687 781793582 859616438 784435716 200644199 60130709 777470090 860937505 281829771 739519438 53285180 991963332 716941202 817102100 657733381 324704400 672865603 535594732 37552473 21099184 824548114 354128165 655331441 155727921 659534836 799688035 28905489 572824802 126063962 562256266 632633108 102284756 255648625 834155874 446722952 325905370 317018192 679591035 248682999 696404615 754291369 200283908 834996553 852530715 621223893 976470819 591800128 837158299 955694038 125823768 142637348 375865722 973948782 853731685 239195336 108169509 468820800 967103253 94238257 249403581 420421709 804732109 858655662 406730651 836197523 38152958 381990669 477587881 954733262 837518590 727990126 775668635 55567023 229587576 217217585 247962417 484073119 318099065 410333561 896366120 179266933 955573941 222621950 737838080 723546537 474705553 501487184 714659359 674787155 820464816 845444992 46079360 817702585 849768484 142156960 967823835 92917190 971306648 324584303 280268510 408532106 942723562 999769637 707573636 318099065 55206732 755852630 705051599 918944356 920625714 574746354 978632565 939841234 163294032 635995824 624586609 217217585 572824802 972988006 568621407 575226742 709134897 181188485 101203883 461855174 14974237 833195098 921706587 184190910 851569939 72500700 312574603 738918953 533913374 769183397 813258996 663498037 980554117 988840810 445041594 847126350 590599158 651128046 109610673 12932588 882915256 503889124 24461900 275464630 956414620 463776726 202325557 701448689 696284518 819143749 810376668 447203340 366738350 807614437 836918105 84150109 659414739 663858328 190075663 398564055 811217347 25542773 200764296 518661055 546403462 122941440 874508466 434833349 338995943 791401342 977671789 511575332 559253841 923508042 462695853 987519743 805812982 837518590 328067116 629990974 707813830 194399155 19658020 393399884 666740656 282550353 716941202 934677063 177585575 917863483 200163811 632513011 525506584 327706825 850008678 679350841 807374243 188994790 977311498 966863059 723426440 48841591 404088517 427387335 898167575 54366053 874268272 781673485 969144902 349204188 178426254 648726106 793082700 915581640 969024805 662777455 777830381 76223707 691000250 923748236 521062995 942002980 160291607 575707130 545202492 571143444 332390608 346321860 104446502 753330593 744443415 379468632 543401037 562256266 112012613 373103491 109490576 370221163 404088517 890601464 367699126 289035591 769663785 45478875 405049293 83909915 490438260 223462629 27944713 89074086 911978730 647765330 749007101 443480333 692321317 500046020 412255113 637316891 256369207 888679912 939601040 358932045 843283246 866702161 107569024 479749627 344520405 910777760 419701127 641280092 769183397 301405582 309572178 84750594 329748474 467980121 796205222 762938353 943203950 839800433 243879119 612456812 848207223 996887309 575827227 753690884 269820071 653529986 768823106 112372904 424024619 832354419 105647472 457651779 260572602 462335562 590719255 721624985 5846865 918824259 647405039 8248805 858895856 332991093 534513859 692201220 560454811 493080394 564538109 843763634 38753443 479869724 54726344 461735077 493080394 197521677 618942050 99642622 1042985 26623646 436274513 815180548 210251959 373703976 714899553 674066573 69738469 113453777 481430985 906093977 400365510 517700279 635875727 715500038 672145021 42596547 679831229 398323861 170139561 25062385 596483911 795844931 858655662 902611164 333231287 460293913 742762057 620743505 234751747 230188061 51723919 476507008 379949020 208210310 143838318 615699431 845444992 549886275 535834926 427147141 852770909 101083786 360253112 821425592 18577147 562496460 631792429 696764906 693402190 999529443 609934775 618221468 531511434 568861601 595042747 71059536 617140595 406010069 753450690 758494764 962779761 217938167 808935504 156088212 399644928 677309192 268619101 766781457 196080513 885677487 326746049 961218500 185271783 966502768 148041713 635155145 493680879 696404615 103365629 910417469 342839047 69858566 687157146 182989940 678390065 960978306 417299187 952091128 215536227 408412009 124983089 787318044 772786307 847366544 477227590 514697854 392679302 426546656 823347144 919304647 877630988 15574722 8849290 843763634 7288029 634674757 443840624 21339378 452247414 389556780 717781881 415377635 470382061 245800671 182269358 300204612 613777879 31307429 766661360 974429170 834876456 19417826 285432681 394000369 204487303 296481605 875349145 926030079 945485793 973348297 338995943 877751085 20138408 939480943 490558357 718862754 320140714 804852206 91355929 94958839 877150600 951971031 706372666 648005524 978392371 695684033 98441652 209291183 690639959 342598853 952931807 211573026 589278091 354008068 655931926 495722528 66135559 575226742 14854140 613897976 271981817 586756054 314376058 67336529 682694 994365272 990882459 518420861 151164235 184070813 337915070 200043714 923147751 157289182 99882816 461014495 965061604 482752052 975870334 312574603 895645538 60611097 729911678 27944713 183590425 951610740 439156841 313655476 142156960 812058026 107929315 9689969 724747507 962659664 806773758 289876270 923267848 367458932 713458389 218418555 899368545 53645471 520822801 116816493 940802010 229827770 26263355 841001403 791761633 153325981 505450385 76944289 950049479 490077969 560574908 815781033 495001946 660855903 117657172 520702704 288795397 220940592 700127622 666980850 106488151 907294947 702409465 420421709 135191334 254928043 427867723 532352113 793803282 201845169 529830076 625307191 802690460 414777150 354128165 469060994 864060027 804732109 994125078 745764482 170499852 769543688 663858328 152965690 620383214 25302579 320380908 958456269 569582183 118738045 620863602 486114768 441438684 250244260 800168423 134590849 982115378 957135202 126063962 597925075 460414010 466058569 787077850 922186975 903451843 10290454 296601702 775788732 880153025 258050565 921826684 391118041 509533683 869704586 326866146 897567090 66736044 124502701 791041051 950049479 499205341 51964113 106848442 916302222 77184483 943324047 958576366 66976238 418620254 192717797 781193097 46920039 487195641 451286638 619782729 473984971 216136712 976831110 844364119 428107917 658934351 840641112 863699736 650647658 505450385 670583760 580270816 527668330 783835231 750448265 950409770 154406854 510494459 124142410 353887971 638277667 74542349 598645657 103005338 785276395 218418555 263695124 466899248 367579029 391238138 136992789 922787460 510854750 219019040 490558357 582432562 588197218 640559510 465458084 455730227 784675910 513737078 261773572 293479180 16895789 431590730 43197032 241357082 661816679 303807522 568141019 737958177 427267238 529109494 113213583 81387878 699166846 364336410 199803520 908616014 938039779 567420437 30346653 619062147 785876880 298162963 360253112 500046020 845084701 983196251 693402190 581832077 872346720 907775335 462215465 539918224 204006915 714419165 583513435 811577638 463656629 161972965 814459966 324584303 670944051 867542840 866221773 633834078 391598429 350164964 493320588 862859057 6327253 371662327 906694462 713818680 237874269 43317129 970706163 954613165 844604313 771104949 274143563 385593579 752970302 262734348 792482215 814580063 354248262 487075544 536195217 886037778 698326167 480350112 975149752 51603822 667341141 282310159 853371394 516859600 265856870 796325319 836557814 874988854 801609587 146840743 418380060 915581640 120419403 189835469 967823835 159210734 583993823 684394915 409132591 892883307 493921073 661336291 404809099 592280516 400245413 60611097 253606976 317138289 432311312 606812253 245320283 597204493 773747083 725227895 149602974 985838385 964100828 366378059 350645352 754651660 765940778 229227285 544602007 806413467 682694 24942288 682694 554810252 160531801 308611402 187553626 319179938 606932350 347402733 703250144 604890701 401446383 617260692 446843049 123782119 76343804 409132591 294319859 531511434 356890396 268739198 147561325 20378602 924949206 817582488 750808556 235832620 264535803 49922464 734115073 70338954 790920954 541719679 938400070 367338835 980073729 462095368 95679421 934076578 82708945 106728345 909336596 968304223 581231592 627468937 567180243 472784001 239075239 109370479 7047835 821425592 61932164 889760785 519501734 420661903 605010798 602128470 198002065 287474330 430029469 43197032 536195217 420902097 110931740 845204798 100963689 37192182 326265661 73101185 614858752 62412552 692201220 695323742 75743319 485994671 340557204 747806131 739879729 695804130 220220010 338155264 68777693 297322284 284592002 649806979 289756173 689318892 778070575 203886818 533913374 661456388 366858447 966502768 751288944 920745811 143718221 839320045 307770723 85351079 747565937 145039288 311733924 376826498 51003337 553729379 381750475 417299187 467019345 965782186 145399579 137112886 430269663 491158842 295160538 415377635 615339140 130507551 979353147 485153992 986558967 563577333 652329016 615819528 826589763 932034929 565498885 9930163 174222859 791641536 301765873 687517437 6447350 836918105 957135202 622424863 89314280 783114649 359172239 928672213 19417826 171460628 201124587 467259539 920745811 22900639 265136288 663377940 407331136 657613284 494281364 926390370 687157146 953172001 124742895 614738655 411774725 755732533 279187637 160291607 452967996 507492034 352086516 255408431 598405463 884476517 781913679 465458084 444681303 989561392 608253417 52684695 931434444 317498580 256849595 834636262 549405887 160171510 983796736 860096826 761737383 629990974 862859057 76583998 49442076 560815102 549525984 31187332 536075120 572344414 356410008 464137017 290596852 18697244 179266933 555530834 304528104 382230863 752009526 852410618 747686034 186712947 549285790 414176665 312814797 847846932 294560053 820584913 867662937 871145750 573905675 888199524 367579029 240876694 141436378 350765449 171460628 523705129 94958839 46799942 857814983 627949325 813379093 477107493 275464630 867062452 572344414 914140476 258170662 653289792 912459118 111292031 981274699 496443110 147201034 152965690 649206494 330589153 855172849 534874150 720424015 557692580 347402733 848567514 648005524 187193335 30346653 627228743 288435106 892763210 34189757 161372480 70819342 114774844 520702704 34309854 110811643 156928891 396042018 296721799 11131133 146240258 594922650 394720951 359172239 668061723 885677487 286513554 384872997 752009526 906814559 369860872 237994366 140115311 656172120 462695853 947527442 436995095 255648625 107929315 627949325 261173087 323383333 456450809 178786545 57128284 903571940 59530224 805572788 897206799 249403581 660495612 631552235 423904522 645723681 710816255 535114344 534153568 926990855 411774725 117777269 261413281 439757326 784315619 191997215 849888581 405889972 105767569 587236442 693522287 354728650 923027654 828631412 848087126 423063843 213854869 597925075 366257962 565498885 118497851 906814559 459813525 56287605 769063300 925669788 22059960 124983089 405409584 121260082 327226437 272462205 87032437 727629835 870785459 570542959 197521677 710455964 846405768 406850748 688958601 35991212 642961450 947767636 398323861 351365934 645483487 365657477 674306767 837638687 423424134 352807098 419581030 259371632 741080699 343199338 308851596 139995214 201244684 80667296 853971879 805692885 347282636 545202492 782153873 476146717 549766178 850849357 858895856 499805826 356530105 764980002 34189757 150203459 856133625 920025229 672625409 172181210 438196065 481911373 236793396 52564598 387395034 236192911 226585151 507251840 136872692 556131319 112613098 386314161 761617286 546643656 358571754 548925499 667941626 454769451 47760718 13533073 348483606 757053600 213374481 989561392 687997825 272702399 571743929 469661479 424384910 235952717 855533140 64334104 651488337 321221587 514217466 675868028 690279668 53044986 914740961 203166236 945605890 367458932 412855598 248082514 693882578 27344228 15454625 135551625 66255656 102524950 660735806 555170543 543160843 516619406 560574908 162333256 32508399 545442686 702769756 369860872 871626138 848447417 945725987 464977696 898768060 409132591 318099065 214935742 547124044 170499852 653169695 844484216 193198185 48841591 624706706 492600006 245440380 618701856 529349688 567420437 579189943 46679845 571503735 756573212 795724834 190435954 190315857 505450385 766301069 584474211 820104525 629870877 640319316 433752476 967583641 566219467 975990431 394240563 123061537 596243717 719463239 51964113 356890396 484793701 32028011 726548962 815060451 207489728 541119194 704691308 691961026 431590730 180588000 867182549 93037287 515178242 641880577 180347806 802089975 149362780 6927738 305969268 618221468 766541263 248923193 543881425 22660445 485033895 467860024 556251416 344040017 779391642 289876270 226344957 724627410 800648811 61211582 804732109 192837894 103125435 156328406 620503311 191276633 582072271 621704281 464016920 794764058 829351994 561535684 243879119 186472753 662176970 429428984 778310769 878231473 768102524 207609825 3565022 144799094 983076154 680912102 783114649 575226742 86552049 67456626 319420132 883395644 764859905 965662089 851089551 373463782 934797160 52564598 350525255 694963451 527308039 804131624 614618558 176144411 772906404 619902826 813619287 242197761 576187518 111292031 786357268 924588915 989201101 496323013 360733500 480830500 938880458 102284756 840641112 566699855 339476331 56167508 588077121 337674876 701448689 785516589 161612674 889880882 877871182 367819223 75383028 408412009 582432562 671304342 831633837 374064267 167137136 186712947 178065963 104926890 276425406 818062876 58929739 829952479 124983089 895165150 352566904 751409041 683794430 652809404 304648201 884836808 779271545 212293608 196320707 945125502 542200067 103125435 77424677 256729498 762818256 71660021 961218500 946206375 201124587 831153449 658213769 730031775 73461476 119098336 476146717 213374481 201845169 530310464 802791 505690579 890841658 313175088 805692885 578589458 571864026 513136593 26623646 555650931 303327134 298162963 886998554 635515436 806653661 648846203 508933198 41155383 875829533 32388302 473264389 732794006 883515741 162333256 464737502 55687120 591439837 318819647 187793820 745043900 559373938 60851291 476507008 44037711 16655595 888439718 273422981 797406192 286273360 856493916 529229591 271261235 355209038 475546232 220220010 631191944 395561630 276305309 247842320 232109613 510614556 610775454 587716830 326145564 631672332 796565513 330589153 222501853 483592731 104926890 598525560 282910644 914740961 634554660 150924041 194279058 140595699 341517980 818303070 578109070 976470819 970946357 681032199 107929315 297442381 892402919 251805521 596483911 137833468 397122891 763779032 24101609 832354419 132909491 463056144 101323980 412975695 218778846 199203035 139154535 759935928 112733195 365417283 226945442 705652084 789359693 767141748 23020736 704571211 996166727 743122348 649566785 109010188 665899977 622785154 961098403 97841167 155727921 154046563 789479790 477227590 925909982 734715558 293719374 339596428 136032013 548204917 961578791 183470328 789479790 657493187 5486574 240036015 954853359 409853173 904052328 79346229 833795583 832474516 472063419 13052685 301285485 31547623 942123077 621824378 943444144 423784425 542800552 216977391 178306157 191997215 573064996 369980969 306089365 458012070 493560782 184070813 994365272 687877728 338155264 153085787 69978663 980794311 694603160 770504464 137232983 260212311 40434801 405049293 767982427 192837894 138193759 192597700 134951140 631912526 560334714 474825650 989441295 707813830 981274699 99642622 382951445 484793701 845925380 902851358 469181091 550246566 974909558 738918953 38032861 838839657 213374481 110331255 60010612 547244141 103605823 258651050 169899367 890841658 552408312 415978120 963140052 12932588 728830805 247482029 819744234 991963332 238714948 446843049 549045596 669622984 333351384 657973575 581711980 104446502 213614675 551447536 250364357 393760175 214335257 864660512 661576485 562616557 730632260 876550115 311974118 844003828 635635533 274744048 923988430 345841472 105527375 419460933 829351994 774467665 625787579 65775268 994245175 668061723 993764787 978152177 548204917 71900215 172901792 152485302 622064572 80066811 382831348 228866994 189715372 175784120 96880391 647405039 787318044 202565751 266817646 236313008 3925313 56047411 424625104 41996062 107929315 984157027 593721680 229707673 197761871 603209343 920625714 671784730 130747745 523945323 162573450 627468937 517820376 890961755 838959754 888920106 542440261 150203459 610174969 737597886 696164421 670703857 937799585 237393881 273783272 485634380 359652627 627348840 447083243 123421828 533312889 912579215 954973456 989321198 608613708 551207342 702409465 526827651 385233288 398684152 923868333 493440685 286153263 872466817 738438565 46920039 642481062 221661174 342118465 960377821 196080513 657493187 287594427 426066268 938039779 337674876 598765754 867422743 2844440 325064691 73341379 201604975 93157384 626388064 978752662 230788546 521062995 959417045 10290454 666620559 628189519 455129742 487916223 278587152 600086821 339596428 70579148 834155874 400005219 491158842 585795278 480470209 548805402 424505007 963140052 515898824 76463901 545682880 816501615 857574789 831633837 88593698 703970726 249763872 535354538 566099370 511094944 384872997 282550353 960858209 585434987 204487303 608853902 700728107 407451233 955093553 113213583 774107374 400485607 826829957 973708588 782273970 175423829 802690460 470622255 454048869 781793582 388475907 977791886 172181210 417539381 932395220 567900825 83069236 710816255 397002794 335633227 593961874 765460390 46439651 614018073 275704824 34069660 241597276 481911373 634914951 569582183 68657596 989561392 185872268 825749084 787438141 425345686 576067421 680671908 657493187 83909915 223702823 264655900 772786307 248322708 711897128 97841167 7047835 574025772 874868757 666380365 465217890 164254808 892763210 472183516 549525984 759815831 544121619 502087669 444921497 198242259 868984004 617020498 778911254 115375329 479629530 380669602 35630921 640079122 593601583 38633346 346802248 482511858 263334833 244119313 726428865 427987820 329268086 253006491 227185636 693882578 702889853 300925194 798006677 24461900 219139137 20738893 216617100 204607400 355209038 400485607 54366053 102645047 343079241 62652746 786717559 603329440 341878271 877871182 710816255 862258572 775908829 825989278 13412976 108289606 156688697 46199457 42236256 95439227 384032318 537035896 595162844 84750594 905133201 337194488 722585761 165575875 526827651 149242683 798126774 660495612 863579639 583273241 474465359 366257962 548325014 805452691 399885122 250244260 606091671 185391880 572344414 896246023 203526527 365897671 759815831 565258691 288555203 580150719 278467055 934677063 305608977 481430985 4285604 770624561 825388793 663377940 370461357 116095911 859616438 156328406 460293913 973348297 186112462 286753748 509053295 888199524 458612555 132429103 887719136 798487065 618221468 442999945 849408193 194279058 869464392 58089060 942603465 714779456 1283179 1643470 139514826 281829771 131828618 799928229 110091061 735916528 12812491 232229710 902010679 832354419 890601464 712978001 341277786 456570906 296481605 83429527 829472091 51243531 514097369 862618863 875949630 168578300 680431714 585194793 352326710 679230744 742041475 832714710 158970540 94238257 555410737 639838928 367458932 736156722 718742657 219499428 972627715 150924041 359772724 739519438 850729260 829472091 265856870 824187823 808935504 239075239 646924651 931674638 596844202 207850019 97360779 536195217 868383519 934556966 225624375 455610130 576307615 956054329 892162725 716701008 355809523 558413162 398443958 851089551 361093791 563577333 331910220 213134287 934436869 455369936 786237171 239555627 585675181 585555084 210251959 749007101 608253417 54606247 394961145 628790004 141196184 965181701 189955566 222141562 65414977 58449351 923868333 532952598 480350112 378988244 452247414 782033776 305729074 73221282 541359388 71419827 912218924 88953989 698206070 351486031 932395220 908135626 823106950 901290097 498965147 709855479 149362780 780832806 612216618 505570482 455490033 464377211 856253722 389436683 812058026 482151567 60611097 839680336 312814797 236913493 229467479 303567328 895405344 89074086 963380246 474585456 861537990 553008797 884116226 764139323 345240987 430750051 373463782 821545689 889760785 899488642 33349078 328307310 821305495 856013528 771585337 91836317 277025891 727389641 869224198 478428560 630351265 385233288 749847780 252646200 666380365 524906099 48361203 327346534 242077664 713458389 716580911 896125926 876790309 174823344 113693971 101083786 319179938 551807827 529229591 170379755 797165998 249283484 83669721 921826684 318459356 755852630 676108222 764859905 881233898 784435716 840040627 342718950 909937081 426546656 325184788 809415892 161372480 653770180 353167389 895765635 127144835 937439294 86792243 994125078 834876456 555530834 285192487 391238138 437835774 484193216 115975814 462575756 505210191 336353809 128946290 167857718 750087974 948968606 437955871 199203035 395681727 161852868 50883240 818783458 354008068 305729074 703850629 852650812 550486760 58809642 159450928 332390608 916902707 173502277 321701975 382230863 867302646 376586304 951971031 410934046 855533140 51363628 880993704 362775149 650167270 275945018 274023466 848807708 664098522 269339683 21339378 733514588 644522711 582552659 855413043 956774911 22300154 54366053 311493730 413816374 993884884 448404310 251325133 393279787 413456083 605010798 128946290 778550963 335152839 651968725 472784001 839920530 949569091 637076697 770864755 220940592 614258267 394120466 968664514 434833349 48961688 422823649 697965876 65414977 82468751 276305309 852530715 481791276 104686696 180828194 469421285 605971574 691120347 737117498 117657172 49922464 986799161 789599887 770144173 827310345 477707978 424384910 284351808 630951750 870305071 22420251 179387030 866101676 673225894 627228743 149002489 701808980 285913069 175183635 201124587 93877966 171460628 903932231 736156722 370221163 963620440 855172849 876790309 127144835 448524407 185271783 647765330 751168847 733394491 730872454 951130352 553729379 773867180 948248024 544602007 702649659 210972541 675988125 465938472 882795159 490678454 289035591 369740775 804972303 333231287 888199524 126424253 23501124 285432681 641159995 418139866 869464392 750688459 169298882 354608553 85230982 741200796 762938353 453208190 621464087 755132048 733874879 329748474 286753748 17736468 640559510 718862754 100002913 762938353 14133558 649686882 767381942 242437955 300805097 40074510 313655476 424505007 206769146 903571940 77304580 990041780 26623646 296361508 125703671 26983937 748286519 284952293 417539381 288315009 689078698 889520591 428828499 990041780 814580063 235592426 67576723 343199338 300805097 703250144 858535565 701328592 763658935 335032742 448404310 743722833 697485488 559013647 378748050 777830381 104926890 767622136 477107493 106488151 705411890 729431290 476386911 472063419 902851358 580150719 2964537 679951326 601287791 980794311 188034014 66495850 544722104 689679183 614258267 264295609 47520524 485033895 174943441 556851901 407331136 976590916 680551811 940441719 680071423 284712099 92436802 305368783 391358235 269099489 844003828 202306 664458813 474225165 139034438 970465969 839800433 6927738 487555932 512536108 96520100 589878576 617861177 506651355 216737197 521303189 637557085 121380179 849408193 994845660 827910830 456691003 329508280 772185822 556251416 52804792 481310888 724267119 843163149 967223350 398684152 513016496 158490152 953412195 204247109 744563512 931554541 440958296 298162963 371902521 236072814 171340531 969264999 216977391 331429832 609094096 539197642 927471243 795364543 491519133 780832806 125823768 681272393 131828618 525026196 320981393 326025467 595042747 736877304 572584608 462455659 622424863 389796974 18817341 17256080 280989092 565618982 981394796 378387759 65655171 207129437 222982241 559133744 164855293 738918953 700487913 302606552 757413891 348963994 721865179 848687611 309091790 73461476 722465664 929993280 233070389 32028011 206528952 828391218 524786002 478188366 83549624 710696158 806653661 475786426 661576485 4405701 13533073 590479061 459213040 858655662 172781695 514337563 896726411 816141324 646564360 741440990 117657172 887358845 119818918 980313923 41155383 632633108 922888 742281669 126184059 35991212 638517861 514217466 631071847 202685848 53765568 127865417 512536108 95319130 632633108 137353080 470502158 81147684 575466936 283270935 59530224 523825226 990642265 738198371 147080937 158610249 347522830 109130285 716701008 769663785 397122891 631552235 746965452 864780609 14253655 782033776 344880696 414897247 915701737 408051718 644522711 915581640 1163082 290957143 635635533 693522287 46319554 938159876 852891006 813018802 25782967 411414434 943564241 223943017 239195336 706132472 94358354 389076392 856013528 687637534 336834197 178306157 288555203 82209 20738893 357851172 453568481 552888700 656532411 232590001 312094215 860457117 988240325 173862568 32748593 106488151 623385639 103365629 388716101 975389946 117056687 346922345 489357387 39594122 926390370 95439227 606932350 810376668 905373395 715259844 440357811 422703552 949809285 381870572 23621221 99042137 804251721 459333137 922547266 642360965 528388912 664819104 203286333 295280635 527548233 930473668 33709369 152725496 35030436 477948172 727269544 956174426 362294761 189234984 769903979 433752476 402166965 11251230 999649540 911498342 184911492 728950902 393279787 139755020 936478518 738918953 683914527 596724105 873187399 941402495 945005405 834155874 359052142 310893245 785636686 451046444 127505126 402527256 997247600 908736111 540638806 499925923 280748898 578949749 790320469 641280092 204847594 920505617 834275971 157048988 203166236 255168237 245440380 751409041 685355691 97480876 785996977 230668449 709975576 260692699 114174359 496803401 158370055 50042561 438796550 484193216 442999945 907415044 221180786 59290030 138313856 186352656 787798432 44878390 194759446 75142834 240516403 823227047 512656205 608973999 796925804 406250263 700127622 427027044 797045901 424865298 518661055 886638263 336353809 931794735 247361932 405409584 552768603 599486336 421862873 421742776 851449842 853971879 765220196 944645114 207489728 825388793 743602736 708534412 139875117 465578181 513256690 386674452 954853359 307770723 935397645 168578300 766901554 21219281 921226199 854812558 708054024 353047292 872586914 724026925 813979578 91355929 323503430 855773334 278106764 265976967 761737383 449725377 103245532 96159809 207729922 296601702 905493492 596363814 280508704 389196489 839320045 621464087 674186670 418860448 99882816 361694276 927231049 622785154 153686272 211212735 705531987 398564055 324224012 809535989 288435106 292038016 436034319 696044324 483472634 614738655 445882273 411294337 732553812 519621831 95559324 868503616 680071423 967703738 943564241 376105916 521543383 831633837 432071118 690159571 673345991 464857599 524665905 560574908 202685848 7167932 134470752 463896823 5606671 948968606 512416011 547003947 78745744 474585456 819984428 211693123 434833349 185271783 107328830 279908219 64334104 412975695 593481486 641400189 34309854 499205341 778911254 870184974 996046630 282790547 604650507 419220739 831633837 586635957 209891668 482391761 153446078 99282331 73701670 192957991 243638925 103125435 4886089 202306 87512825 895285247 674066573 15214431 427747626 707813830 462215465 898047478 324944594 226705248 28425101 658694157 51964113 693041899 876550115 433031894 776749508 217697973 415137441 461134592 770744658 173021889 185391880 626628258 173141986 173021889 974669364 727749932 654010374 679350841 987759937 744563512 849047902 258290759 521303189 735676334 435914222 946086278 723906828 665659783 25903064 19537923 28785392 321461781 185752171 812418317 565859176 248442805 149482877 630471362 125703671 761497189 58449351 390997944 755011951 567660631 39834316 620263117 286513554 845444992 583393338 211693123 22300154 603209343 329628377 91836317 368419708 936358421 84990788 657853478 140355505 762818256 504849900 961939082 735676334 504009221 191877118 650287367 629150295 787798432 275224436 929993280 58689545 536315314 934076578 168938591 144438803 676468513 540638806 304408007 132309006 214695548 967583641 483352537 42116159 970225775 184311007 138073662 881714286 124022313 232469904 84150109 80907490 199323132 971907133 606692156 235712523 567060146 49802367 674066573 353887971 947287248 158249958 76583998 30346653 299484030 81988363 914981155 715259844 922427169 646804554 20378602 950770061 871866332 486114768 354848747 811937929 162813644 261893669 626027773 422823649 881474092 789239596 367579029 162093062 2123858 268979392 843283246 888679912 715379941 566219467 326746049 923508042 840521015 87632922 499565632 944044629 524545808 40554898 681032199 291557628 839440142 563096945 81868266 739879729 511935623 172181210 587716830 653650083 253246685 504009221 141556475 637196794 726789156 325785273 297682575 699166846 724507313 872947205 154286757 815901130 781313194 333471481 265376482 284111614 407691427 873187399 835236747 514217466 33228981 437115192 684515012 343679726 364696701 11611521 271021041 506771452 895405344 113814068 492479909 345240987 512656205 686076273 19297729 332510705 872586914 63373328 204247109 125583574 100723495 833315195 583753629 242798246 437595580 945245599 48000912 247001641 6807641 997487794 776509314 56287605 49442076 286513554 98681846 23140833 542560358 876910406 595403038 81267781 187193335 232349807 38993637 507131743 464377211 871626138 867783034 26143258 998208376 711656934 841361694 999169152 234271359 217697973 849768484 698085973 818903555 129546775 488516708 974549267 65414977 981514893 732914103 670703857 552288215 910897857 623625833 43917614 288435106 22420251 872226623 23501124 834275971 380309311 309932469 671784730 814700160 237874269 303687425 759455540 390037168 704331017 677669483 716821105 289395882 526347263 580871301 475786426 524425711 321101490 436034319 356530105 139034438 161972965 852530715 552768603 421262388 442759751 149002489 471222740 285072390 43677420 559734229 920505617 17496274 700848204 594682456 533673180 172061113 759575637 247001641 575707130 479989821 937319197 392198914 583873726 534273665 627589034 431230439 890961755 203166236 384993094 881834383 613657782 731472939 11491424 794043476 140595699 851089551 573425287 496683304 922066878 118617948 618461662 189835469 533913374 630351265 388475907 953772486 76463901 917022804 912339021 843403343 497644080 956054329 796565513 282670450 652088822 676828804 577988973 87873116 51964113 603449537 398924346 449965571 126904641 187193335 77784968 423304037 158249958 499565632 762217771 745524288 43677420 577628682 766180972 96880391 966502768 337194488 211332832 653890277 314255961 374184364 789599887 483953022 955934232 448404310 226465054 948608315 606211768 57608672 361694276 134470752 967583641 312814797 89194183 184791395 359052142 583873726 600447112 972627715 474225165 907775335 496202916 67216432 939240749 310773148 465217890 144919191 491999521 802210072 873907981 79346229 742401766 943564241 769423591 584594308 531871725 911138051 353287486 870305071 853611588 627468937 822506465 358571754 869824683 90755444 384632803 437475483 880153025 47760718 918944356 59770418 298042866 283631226 254687849 184070813 674787155 51123434 427027044 114774844 332630802 717181396 756333018 55567023 285432681 276545503 56287605 415858023 957735687 724867604 906574365 160892092 249643775 60491000 741561087 969985581 957135202 746004676 17015886 470382061 456570906 865861482 935037354 394961145 593961874 791401342 436514707 832714710 863579639 497644080 335633227 629270392 611135745 266097064 6447350 797766483 707573636 165335681 859376244 68537499 226465054 263935318 149122586 224063114 614978849 268859295 602008373 838479366 869824683 241717373 991122653 5366477 223102338 534874150 531511434 508813101 484793701 384752900 299484030 739159147 726188671 392078817 246040865 274503854 985117803 942123077 685836079 70819342 282910644 600086821 24822191 921946781 989321198 382591154 998928958 504969997 147681422 160531801 981034505 734835655 112493001 312934894 890601464 461254689 769543688 603569634 54125859 175543926 492479909 776269120 49081785 377787274 525746778 31067235 25542773 526947748 612937200 659534836 187913917 43797517 275224436 95078936 651007949 398684152 784075425 554449961 849047902 53285180 321221587 451526832 634434563 495842625 281229286 663017649 268619101 501006796 998448570 128465902 371302036 825628987 228626800 51723919 459213040 459092943 494041170 337074391 814219772 752730108 698686458 529109494 716580911 225384181 615939625 28905489 150203459 271981817 968424320 585074696 886277972 394120466 14373752 637076697 925189400 90635347 855773334 521303189 756092824 685836079 337194488 919184550 43677420 750568362 950169576 413936471 904652813 792121924 843883731 744323318 853011103 679230744 419701127 77664871 435193640 362294761 768823106 512175817 213254384 189234984 83069236 885677487 340076816 973948782 476747202 202926042 63973813 932034929 42476450 478188366 731112648 189475178 224783696 258891244 633233593 411774725 434232864 957015105 964100828 399644928 380549505 880993704 229467479 193678573 771585337 987880034 238234560 211693123 392799399 452247414 521783577 879192249 641159995 900689612 47160233 861417893 170379755 336353809 397843473 823467241 55567023 606331865 20138408 107328830 282550353 359412433 416818799 779391642 304408007 55927314 719583336 64214007 216737197 263094639 306809947 646083972 13533073 559494035 830793158 732673909 173862568 239075239 568501310 941402495 862258572 807134049 553609282 551327439 454769451 762217771 885317196 119458627 198002065 720183821 522023771 638157570 146120161 200283908 780712709 945125502 838239172 699767331 647044748 190796245 420782000 14974237 942843659 772065725 868984004 266097064 430149566 276785697 728470514 285432681 560454811 628429713 387154840 20618796 863939930 296841896 144198609 476386911 415617829 162933741 283150838 171460628 877871182 212894093 378748050 637436988 426666753 302486455 886157875 317018192 672745506 251685424 608373514 629630683 666740656 518060570 745163997 408171815 703610435 681992975 412975695 92676996 773146598 539678030 401446383 599246142 749967877 826709860 419941321 319059841 87392728 588437412 699887428 271381332 461735077 737237595 814580063 913059603 383672027 214695548 116095911 849528290 225384181 725708283 487195641 868623713 793442991 78625647 17496274 494641655 110571449 636596309 165215584 506050870 611976424 505090094 94358354 755132048 870184974 711777031 885317196 392799399 861057602 76103610 556371513 733394491 491158842 883515741 29626071 269459780 198362356 130387454 276185212 164134711 500406311 485514283 277266085 947647539 963019955 413576180 289035591 756813406 907174850 896846508 171340531 194279058 407211039 842082276 217217585 186352656 585434987 158009764 742041475 25662870 246641350 859015953 46799942 32148108 815781033 476146717 166896942 566699855 888319621 910297372 783955328 607052447 521543383 703009950 129186484 940922107 94718645 667821529 788158723 698326167 223582726 179146836 155007339 289275785 887478942 177345381 403488032 72260506 57128284 264655900 287474330 877030503 777229896 304888395 185391880 557212192 506651355 458732652 395321436 637917376 607893126 768823106 34429951 225504278 73341379 583393338 242437955 582672756 891922531 804011527 524906099 564658206 915101252 989321198 901890582 702049174 453808675 114414553 154647048 171100337 137353080 568741504 423544231 956414620 388235713 119818918 687757631 782874455 420181515 715139747 910177275 548565208 724627410 780112224 421022194 353287486 995446145 406850748 582432562 295040441 499205341 409612979 13653170 593841777 571623832 407931621 197641774 538236866 540999097 465458084 582912950 398443958 36111309 655571635 321461781 749247295 692681608 689919377 294199762 972027230 161252383 754291369 346441957 388716101 721144597 752369817 49081785 425225589 724867604 399284637 403488032 545562783 946326472 114894941 734355267 959296948 136152110 951610740 423183940 319780423 184311007 43797517 635515436 686556661 372743200 590599158 207609825 674667058 450445959 654851053 987639840 421982970 206168661 821905980 25782967 789719984 134350655 311974118 1643470 587596733 910417469 168458203 181548776 617741080 568741504 791401342 888079427 977551692 642841353 979593341 783835231 535474635 487195641 219859719 124983089 890000979 421982970 651848628 527788427 582432562 758975152 180948291 482752052 686196370 684394915 555650931 886277972 436754901 977191401 761857480 21459475 523945323 412375210 578469361 866461967 601407888 852530715 665899977 35390727 941042204 729431290 498364662 824067726 739879729 823106950 440117617 197881968 712377516 205087788 360973694 443960721 492720103 156688697 732433715 389196489 776509314 522744353 819864331 385593579 865140900 578109070 534754053 38152958 361814373 834876456 730992551 271021041 800768908 293238986 814099675 364216313 720063724 24101609 528268815 344640502 952451419 27944713 859976729 248082514 539197642 371902521 42836741 190796245 308251111 461134592 875469242 925069303 656652508 916782610 928071728 521423286 776989702 414296762 943324047 265376482 943203950 156448503 327466631 278346958 406370360 958696463 45478875 336834197 247241835 501967572 332030317 785516589 376105916 252766297 501967572 85351079 807254146 807134049 862378669 481911373 60370903 383672027 754891854 508933198 300444806 837998978 287714524 874028078 199923617 639478637 339716525 392919496 118858142 120659597 237994366 141436378 828151024 736637110 572344414 955333747 26863840 179747321 98321555 124742895 850248872 824428017 908135626 183830619 859136050 600086821 101924465 354248262 95559324 589398188 329027892 147681422 536075120 102044562 491999521 428948596 243398731 973828685 556971998 766541263 419701127 39233831 368539805 646444263 832834807 645843778 373944170 685715982 571503735 886398069 965181701 687997825 997727988 767742233 500526408 470862449 944044629 555650931 415737926 632392914 247482029 629630683 577148294 484553507 629990974 560815102 539077545 554810252 648005524 299243836 810136474 577988973 720063724 617981274 931194250 107689121 455490033 35871115 731953327 494401461 432431409 843043052 615098946 468100218 211693123 581591883 94358354 613777879 825749084 971546842 478428560 182389455 803411042 863459542 993884884 936118227 188034014 485153992 793082700 447323437 557212192 276305309 166416554 576667906 414296762 326385758 241357082 408171815 568381213 108049412 347402733 597324590 786237171 449725377 211332832 294680150 590118770 498965147 624106221 519021346 785876880 893483792 203286333 312694700 184671298 314976543 841361694 933115802 945846084 123181634 39113734 999409346 281349383 669743081 679350841 272342108 686916952 778671060 361574179 643321741 51243531 480350112 73701670 441678878 313535379 385473482 678990550 289636076 706252569 812898705 902250873 569942474 706612860 93637772 342238562 231989516 384392609 368900096 351606128 922186975 837638687 605731380 430269663 819023652 626267967 455249839 651968725 788639111 70459051 992924108 242317858 724747507 164254808 22660445 39834316 112613098 195960416 860577214 148522101 998808861 869344295 615339140 227065539 204487303 567060146 331790123 606932350 768823106 704571211 355329135 76103610 62052261 84030012 348363509 214815645 189355081 428588305 717421590 759455540 569582183 776989702 244479604 77784968 939360846 371302036 883755935 586996248 399284637 575947324 979833535 163774420 969024805 76343804 931674638 163294032 362534955 685475788 568261116 477107493 846766059 128345805 989921683 384872997 686436564 829952479 281829771 493921073 631191944 343199338 843523440 491759327 766060875 767622136 364216313 999529443 798487065 901770485 768703009 664939201 455970421 32268205 785396492 97120585 553969573 403367935 820825107 226705248 374424558 286873845 522984547 321822072 413936471 657012799 195480028 938400070 614018073 833915680 121740470 658814254 61571873 891081852 404088517 466779151 57368478 423183940 951130352 929032504 338995943 194279058 79586423 975269849 146120161 361694276 62652746 731953327 517940473 957615590 658814254 307770723 419581030 920145326 925429594 975269849 469781576 261533378 926630564 984277124 161732771 114054262 85351079 94478451 848567514 337074391 780112224 329388183 957855784 936238324 278106764 67336529 587236442 239075239 352446807 894564665 518661055 178065963 958456269 70338954 825749084 833075001 964461119 900449418 738918953 995085854 607172544 74902640 617741080 999529443 722345567 966863059 639478637 21219281 273422981 277266085 470141867 731833230 91355929 806293370 948728412 34910339 934076578 788879305 212293608 728110223 196440804 776028926 488516708 848687611 45478875 638758055 93037287 38032861 915821834 9689969 879072152 102885241 48000912 889520591 44878390 935517742 905133201 109370479 679831229 230788546 48481300 795844931 126184059 230188061 905133201 292038016 683193945 854692461 137953565 253727073 943444144 980554117 25903064 187793820 156448503 814459966 381390184 217097488 619302341 375985819 143478027 942363271 929152601 335753324 535955023 528148718 943924532 674426864 874028078 548925499 240036015 333711675 305849171 106247957 18457050 918944356 849167999 338275361 123662022 106127860 539798127 511215041 261052990 389917071 858655662 498364662 154406854 740720408 756813406 905613589 358932045 468940897 733634685 65414977 599606433 785036201 18697244 214215160 787197947 543881425 559253841 717301493 756693309 175183635 274503854 495602431 525506584 782634261 672625409 422583455 275704824 356169814 387995519 170619949 424144716 728230320 87753019 523945323 317858871 751409041 345481181 639838928 15454625 724987701 538837351 727149447 124382604 384632803 781553388 835597038 477347687 616900401 549766178 456330712 891442143 240516403 258651050 357130590 625547385 187673723 304768298 972747812 822146174 401686577 611976424 766661360 602488761 40554898 95439227 307170238 19297729 298523254 103725920 497163692 691120347 367579029 198842744 774827956 401446383 383431833 715259844 645123196 867182549 541719679 679951326 279067540 18577147 873547690 694843354 12812491 341638077 854332170 435433834 157289182 679230744 749967877 472183516 144318706 90395153 10890939 465938472 139634923 773506889 702409465 894804859 769303494 622304766 440237714 727269544 59530224 790680760 49442076 547484335 732673909 884116226 781433291 293238986 393519981 302966843 314015767 661576485 6807641 113213583 94718645 672625409 897567090 114534650 147080937 354968844 102524950 33349078 36111309 448644504 798967453 812658511 767381942 510974847 99522525 87032437 568261116 741200796 689438989 864180124 767502039 749247295 155968115 961338597 770624561 730151872 102404853 483112343 479749627 493560782 247121738 995806436 775668635 145039288 106247957 396402309 202565751 567300340 536915799 187673723 900689612 818903555 625307191 813379093 74902640 320741199 303567328 536555508 498124468 969625290 645363390 527788427 515658630 299243836 102284756 767982427 510854750 175784120 133630073 417659478 863219348 89194183 460053719 395081242 240756597 29265780 487195641 359892821 399164540 847126350 624106221 104686696 434593155 513016496 480950597 499205341 792842506 309692275 893603889 88593698 969625290 968784611 533312889 316657901 837278396 731112648 596363814 557092095 852290521 195359931 461735077 831393643 538116769 172181210 681512587 630351265 303567328 965541992 378748050 182029164 141196184 614978849 949569091 861417893 148642198 192837894 478668754 447563631 791761633 363015343 739039050 259611826 947287248 403608129 861297796 10890939 496563207 456691003 366978544 137713371 952931807 937919682 558653356 196560901 17256080 306329559 18817341 273783272 758734958 413696277 418019769 828030927 804612012 357370784 866341870 717901978 919064453 464377211 422223164 248322708 178426254 430629954 288675300 671544536 840160724 862138475 461014495 650647658 7408126 761497189 368179514 597324590 764980002 888920106 90154959 529349688 36351503 991843235 127505126 90154959 238955142 287354233 530070270 802791 148161810 186232559 517219891 705291793 511935623 955573941 708174121 491399036 266337258 398443958 455610130 957615590 950289673 65895365 327106340 940681913 97480876 476867299 909937081 843643537 257329983 546523559 577388488 336594003 229107188 978752662 190916342 71539924 955093553 641159995 800288520 422943746 813379093 944284823 529950173 81628072 2724343 34189757 528028621 689198795 557332289 175904217 259852020 501847475 529830076 793683185 319540229 179266933 191036439 631312041 207369631 760056025 392679302 655691732 569582183 81748169 761377092 457171391 143958415 152365205 374784849 323983818 618101371 217097488 554449961 949569091 894204374 120299306 538236866 739039050 676468513 585074696 80427102 987519743 998928958 765940778 691720832 991843235 207729922 682713557 874028078 558293065 816141324 255888819 797045901 424024619 974309073 729791581 862138475 782033776 663978425 834636262 122340955 44518099 689919377 1163082 254807946 608973999 630711556 388475907 837038202 798126774 712737807 844844507 624466512 882194674 821185398 102885241 448164116 363135440 282430256 820945204 17736468 792121924 676948901 560454811 646924651 609814678 269459780 292758598 90034862 332510705 366978544 938039779 320020617 740119923 249763872 505690579 815540839 302366358 658934351 924709012 179387030 347522830 997367697 32748593 522984547 665179395 316537804 589518285 753690884 198362356 200163811 882915256 344280211 857935080 372142715 572224317 589157994 837878881 284712099 601407888 227786121 430509857 180708097 311613827 201364781 696044324 329147989 447443534 262614251 594081971 274623951 213854869 941642689 503648930 748046325 7528223 665899977 383071542 909456693 931554541 733154297 900089127 805933079 893723986 537276090 440357811 418620254 722465664 438916647 409733076 84030012 2243955 110091061 219259234 502447960 990762362 151524526 87032437 213974966 751769332 462815950 842562664 773026501 403488032 357610978 452487608 396882697 870905556 452127317 114774844 960497918 91716220 113573874 903932231 629150295 817702585 686556661 595883426 909336596 428107917 626748355 376946595 273422981 259371632 765460390 744803706 856974304 659775030 253606976 156208309 653049598 34189757 431590730 711176546 536675605 253847170 170139561 536675605 639838928 777109799 509893974 339596428 974068879 604170119 495602431 166536651 535474635 148041713 65775268 126904641 873787884 137232983 139394729 200043714 863099251 932635414 128465902 662297067 942723562 442500 762578062 537155993 635155145 620983699 154767145 53525374 176144411 311854021 618581759 374664752 126304156 157169085 671304342 357490881 694603160 536315314 61451776 772546113 836557814 274503854 226465054 732433715 257089789 117777269 164975390 703610435 77905065 800408617 614018073 947767636 749487489 790080275 807374243 347402733 124142410 853491491 191036439 970225775 987399646 613897976 235112038 54726344 504489609 731953327 869104101 166416554 873187399 451286638 801489490 862138475 124622798 39834316 419701127 810736959 475546232 576667906 672385215 972627715 743002251 751529138 930593765 34910339 963260149 628549810 750688459 230308158 649686882 410093367 269820071 600687306 803771333 628669907 787438141 132909491 109970964 864540415 894924956 323023042 384032318 239075239 426426559 141196184 432311312 684394915 855052752 859376244 345240987 271501429 478068269 409973270 129066387 401446383 317978968 163894517 593241292 642601159 701088398 905373395 896606314 984157027 933956481 997607891 715620135 896966605 722345567 618101371 274503854 115375329 937439294 496082819 651368240 711536837 821905980 712017225 210131862 697245294 105887666 343199338 999289249 37672570 376946595 302606552 129066387 375625528 988360422 986198676 632513011 255048140 200283908 795724834 611255842 918463968 250004066 29385877 27584422 329508280 238955142 600086821 204727497 287114039 428348111 320981393 742401766 271741623 446242564 981875184 42356353 103005338 349684576 919785035 87272631 286273360 59530224 843043052 900449418 623986124 45719069 712017225 911378245 425225589 975029655 869104101 299844321 269219586 226585151 332030317 229947867 937439294 188874693 305368783 297562478 928912407 27224131 860337020 227185636 180828194 467139442 986919258 765820681 422823649 678990550 770024076 684875303 17015886 662417164 436634804 876069727 776869605 525866875 208330407 779511739 385473482 177585575 109610673 427027044 641039898 491038745 808094825 488516708 593001098 618942050 878591764 708534412 120779694 544361813 185632074 376466207 238114463 506411161 302966843 971666939 116456202 630831653 499085244 594562359 672024924 277025891 296121314 821905980 625066997 673345991 62292455 29626071 219259234 412615404 925069303 247121738 344760599 784555813 194279058 502447960 623986124 343799823 383071542 473504583 682593460 654010374 567180243 306689850 286393457 901530291 623986124 406130166 932155026 947887733 367458932 129907066 530910949 442639654 117176784 575587033 18216856 344520405 497644080 999409346 935757936 53525374 911978730 405289487 646924651 336113615 583873726 284111614 856734110 619182244 283150838 105407278 121139985 154046563 645363390 39353928 651248143 570542959 12572297 126904641 157289182 615339140 336473906 182269358 98801943 785636686 539317739 461855174 49922464 804131624 385473482 956414620 735676334 782153873 932155026 547364238 503648930 972027230 868503616 932034929 147561325 125223283 275945018 301045291 966262574 249043290 799928229 177705672 294439956 78865841 205688273 979953632 702169271 630471362 710936352 979233050 791761633 394961145 876910406 876430018 983316348 328067116 51483725 35150533 345120890 658333866 450926347 483953022 745043900 275344533 119698821 534393762 227305733 949569091 834756359 106247957 859136050 895405344 571023347 252526103 946086278 404448808 733394491 360012918 303207037 216016615 733994976 822506465 715139747 244239410 205688273 685595885 448284213 747325743 414176665 68177208 982835960 777830381 679350841 837398493 216617100 909816984 325064691 347162539 84270206 210011765 942363271 435193640 702289368 351606128 750328168 472423710 404328711 70579148 408051718 59890515 493560782 720424015 735916528 224303308 249043290 738318468 900329321 130387454 834035777 39353928 674426864 458012070 628309616 457891973 194999640 496202916 910057178 658934351 84750594 207609825 920025229 967943932 332510705 370101066 510854750 689559086 795484640 891442143 743002251 195119737 116816493 314255961 450325862 578949749 161972965 622544960 284351808 730512163 640799704 973948782 557692580 446122467 909216499 881233898 331189638 224663599 86431952 931314347 531031046 215776421 90755444 323383333 210251959 278106764 95199033 810857056 586756054 997007406 124742895 990281974 633113496 30827041 216737197 994125078 301765873 203286333 707213345 671544536 249043290 582432562 156328406 644522711 256609401 955934232 622184669 295761023 581471786 405049293 613297491 650167270 351125740 966742962 758614861 794643961 6207156 197761871 141316281 543761328 874628563 277626376 57848866 327947019 131708521 863699736 50522949 404208614 879672637 410213464 593841777 389796974 805572788 519381637 294319859 212173511 695684033 258651050 203526527 563457236 374064267 269459780 653770180 657613284 765100099 169178785 256729498 718382366 15935013 631432138 32748593 884116226 943203950 533793277 675387640 8849290 889160300 107448927 100843592 605130895 230428255 850008678 749487489 992563817 523705129 391358235 596483911 895165150 792722409 441678878 828751509 614618558 560574908 954372971 275824921 679470938 935277548 623265542 337674876 262374057 557572483 621824378 947767636 232830195 573665481 329868571 385233288 756333018 355809523 671304342 147441228 331069541 882795159 669502887 847967029 213254384 479029045 1403276 710936352 294920344 739639535 453208190 848447417 646083972 653529986 71539924 213734772 480109918 26503549 311974118 597564784 201004490 299604127 295640926 668061723 883035353 352807098 862618863 337434682 139514826 374904946 766180972 897326896 690760056 222021465 935998130 350285061 99282331 22900639 73221282 664699007 632392914 158370055 532352113 3444925 211693123 700608010 38873540 510014071 392319011 566339564 879912831 596003523 450686153 142757445 307050141 262734348 299363933 954132777 650287367 538236866 106488151 888319621 737117498 833195098 894924956 357851172 1283179 290837046 466899248 481671179 417779575 475786426 761016801 754411466 312334409 736997401 750328168 797406192 406730651 786117074 938039779 811817832 973588491 470862449 365177089 185872268 109730770 541359388 254447655 547003947 279547928 166896942 927591340 46439651 433752476 717181396 643922226 564418012 980794311 524906099 67216432 399044443 742762057 868984004 5966962 870184974 527428136 733874879 772786307 787318044 298162963 956534717 744443415 282790547 292878695 179507127 419821224 373343685 962419470 920865908 636476212 681632684 509413586 445882273 163294032 392198914 511094944 906214074 279187637 639959025 246881544 170860143 705892278 968184126 774467665 450806250 103485726 519381637 695684033 593481486 323983818 947407345 678750356 577028197 462455659 986799161 953532292 595403038 793803282 555290640 246881544 266577452 11611521 652569210 651848628 12212006 293599277 855413043 548685305 713938777 382831348 258290759 706732957 408532106 856133625 187793820 379348535 69137984 660495612 530070270 719463239 26863840 841721985 967223350 732433715 935277548 881474092 590599158 628790004 942963756 71780118 841601888 963860634 436154416 583393338 765940778 408051718 363615828 372382909 769903979 640559510 520702704 941762786 21939863 831633837 860337020 496803401 503889124 410573755 537996672 459573331 375985819 893243598 167857718 159811219 834636262 900929806 994245175 442759751 400005219 227305733 865621288 38513249 499805826 760776607 743722833 985357997 583633532 759815831 849047902 656172120 876550115 641039898 596123620 454769451 596123620 735556237 75743319 852770909 838599463 931914832 587716830 941282398 354728650 966622865 772906404 175904217 380909796 28545198 688958601 803411042 667341141 139274632 159450928 510374362 500886699 496443110 21339378 871385944 514697854 175664023 519862025 732673909 662417164 48961688 644402614 202306 576667906 251445230 981875184 235592426 564778303 784796007 816741809 700608010 676228319 645243293 427147141 338035167 721985276 749247295 743482639 725948477 497523983 923267848 216977391 403127741 402527256 854572364 191997215 670944051 929512892 606932350 242077664 198482453 531751628 746364967 89794668 655451538 218178361 707813830 596123620 982355572 923508042 722585761 807374243 699286943 151164235 783715134 453568481 739639535 448284213 788158723 251805521 80427102 651128046 523585032 839199948 732914103 473624680 507612131 192597700 573425287 253486879 672145021 665179395 895405344 685956176 454769451 392078817 839440142 264535803 341157689 916542416 853011103 545082395 966622865 273543078 192477603 109370479 873787884 58929739 168218009 477828075 469181091 248202611 737237595 569582183 12692394 141196184 223582726 195600125 187673723 585675181 505450385 332991093 125943865 112613098 8368902 471823225 920865908 355689426 483953022 636836503 456691003 177465478 590238867 317858871 184070813 497403886 499925923 548445111 703610435 960738112 501126893 600327015 607412738 316777998 814459966 736877304 158490152 889040203 240036015 1763567 694122772 88593698 906694462 878591764 659775030 974549267 848447417 69137984 287234136 313895670 430870148 362655052 807614437 557332289 927711437 573665481 47880815 253606976 969385096 978992856 81868266 300084515 895645538 805452691 777590187 469901673 509293489 227185636 313415282 36831891 460173816 444801400 938039779 361814373 711056449 118978239 735316043 608253417 198842744 279427831 828391218 857094401 993284399 848927805 13052685 653770180 591920225 239075239 113453777 77544774 312454506 972988006 525026196 388475907 215776421 533192792 783474940 116576299 789239596 540158418 533072695 962899858 684394915 45598972 903571940 36231406 391598429 930113377 237754172 243518828 278707249 836677911 349684576 202805945 337314585 610174969 492840200 297442381 592881001 692321317 645843778 172541501 357490881 46079360 562256266 460654204 898647963 430509857 266817646 931794735 825268696 3204731 624706706 351726225 148522101 23861415 867542840 453448384 957375396 552048021 849648387 405409584 56407702 131468327 97600973 833195098 658213769 919785035 547244141 955694038 647164845 681392490 17376177 160531801 342478756 444561206 982355572 222381756 387755325 920505617 615579334 969385096 610775454 468820800 86912340 987159452 733394491 898287672 336954294 575346839 831393643 780112224 551567633 194519252 235232135 159571025 432071118 892042628 36591697 652809404 282670450 2604246 391238138 13893364 985718288 813018802 238234560 514577757 643321741 255408431 808455116 522384062 237033590 679831229 385353385 271501429 557452386 927110952 728230320 919785035 194639349 880513316 238114463 358331560 553008797 267898519 640679607 536075120 577748779 635755630 143357930 773867180 786477365 744563512 326746049 57968963 237874269 726548962 30466750 678510162 294199762 506050870 405529681 598045172 445521982 361574179 31187332 860457117 667100947 87152534 392919496 343439532 591920225 342118465 433632379 71059536 240396306 926630564 487555932 292758598 834155874 476987396 505930773 409132591 304768298 95319130 124262507 71900215 70699245 631191944 245320283 328427407 651368240 146240258 784075425 876550115 688958601 719102948 304167813 896486217 416818799 389676877 690399765 800048326 64334104 742041475 318339259 426906947 340196913 293479180 960497918 24461900 804612012 763058450 524305614 791161148 241477179 855533140 963980731 457891973 482511858 121980664 552648506 882434868 938039779 507732228 198842744 842802858 738678759 661216194 605010798 340677301 846525865 359412433 342118465 417179090 968064029 745404191 491879424 139995214 932875608 385233288 608853902 737477789 575947324 502688154 191757021 749967877 171580725 788759208 596483911 432431409 32268205 659775030 214095063 17256080 998928958 902851358 466779151 196320707 265016191 861778184 105046987 672145021 199082938 89194183 913059603 304648201 425105492 651007949 850008678 760056025 890601464 198002065 708654509 975510043 689919377 481070694 999169152 865861482 418740351 770504464 93998063 547484335 14013461 899608739 94238257 664458813 158610249 133269782 577508585 495122043 734835655 538116769 404568905 618341565 770624561 695684033 954252874 80307005 929632989 471342837 159571025 770504464 303207037 794403767 661096097 569822377 307890820 652088822 367098641 941402495 218658749 168097912 160531801 781073000 322662751 3204731 941882883 293238986 811097250 904652813 468700703 747926228 602248567 626628258 636836503 790440566 533553083 963140052 583273241 442159266 760296219 981875184 899128351 493080394 804852206 570062571 911017954 494761752 185752171 424985395 697965876 206649049 757293794 50402852 969505193 414056568 110931740 838119075 788278820 237513978 478428560 847246447 993164302 747085549 868863907 326385758 827670636 567780728 573064996 498604856 512896399 471583031 35751018 306209462 996767212 532952598 778190672 781073000 312334409 826349569 767742233 759575637 286633651 59410127 995686339 176985090 292038016 27944713 944164726 16655595 521062995 16895789 334792548 187193335 821905980 208450504 78025162 266577452 511215041 644642808 990882459 971306648 646324166 895165150 655331441 761497189 24461900 566579758 40795092 561535684 213614675 739039050 753810981 78265356 659654933 122340955 80427102 724627410 531871725 720424015 393039593 794884155 986438870 93157384 263695124 48361203 770264270 558653356 60731194 680311617 157169085 768102524 941402495 600567209 663738231 784555813 85471176 173982665 375385334 267538228 23981512 540158418 990161877 684154721 147921616 8248805 537876575 242678149 716340717 768823106 190916342 461494883 832714710 944765211 591079546 865501191 994365272 604890701 706132472 434352961 278707249 792362118 422223164 835957329 272822496 78985938 650887852 806413467 53285180 399164540 101804368 513016496 522624256 306089365 914140476 626628258 998328473 554329864 958936657 583873726 493680879 801369393 43797517 555891125 889160300 464857599 264295609 749367392 844123925 237033590 58209157 168458203 422583455 93157384 782514164 470261964 842202373 227545927 579310040 377907371 341638077 408412009 92676996 583993823 67216432 979112953 139274632 743842930 415257538 485634380 902491067 318099065 645123196 848567514 426906947 570903250 454769451 806533564 101684271 957615590 78985938 126784544 171100337 720544112 963019955 513496884 432431409 318459356 614858752 851930230 625667482 181788970 157289182 52084210 458972846 828030927 282790547 643441838 877751085 889400494 101684271 5366477 968184126 717301493 361213888 906694462 983196251 860817408 118858142 260572602 561535684 199803520 810496765 543761328 725588186 508813101 4886089 755852630 540638806 768582912 520462510 703970726 740119923 306930044 327466631 103125435 711416740 1883664 145039288 761256995 468460509 38152958 602128470 443960721 882675062 125343380 571984123 712377516 500406311 185992365 50282755 974429170 483592731 63973813 498724953 592640807 310412857 874028078 879072152 642841353 986919258 779391642 964341022 570302765 873067302 947647539 328667601 618581759 714779456 58929739 968304223 374304461 664338716 867662937 342118465 602008373 272702399 541599582 134951140 951250449 165816069 20858990 653770180 844604313 975149752 694843354 510014071 427867723 338515555 203286333 135671722 625907676 240276209 627348840 412255113 41275480 38753443 597564784 602488761 51483725 240276209 500286214 69738469 90275056 722105373 194879543 896125926 445882273 376105916 695443839 50883240 426306462 240996791 895285247 852530715 390997944 487676029 566459661 545442686 72380603 745404191 880873607 207729922 838359269 352326710 908135626 15334528 75262931 961338597 725468089 552408312 318339259 951370546 949569091 536555508 537636381 651368240 870064877 263815221 908375820 168698397 593841777 641520286 492479909 497884274 417659478 578349264 176504702 650407464 775788732 335633227 755852630 206889243 472063419 794283670 419340836 301645776 489837775 42836741 822026077 689559086 94838742 926750661 915461543 724627410 905013104 660375515 504129318 442039169 129786969 676948901 845444992 325064691 765820681 334071966 757533988 377306886 189355081 137593274 868263422 141436378 888199524 970826260 362294761 118377754 641880577 959417045 677789580 369980969 540038321 249043290 779151448 186953141 24341803 761737383 769663785 994725563 731472939 745284094 456450809 841601888 274383757 541359388 980073729 14133558 833795583 256249110 881233898 30947138 484433410 505450385 586035472 519862025 626748355 286753748 421982970 947887733 541119194 24461900 186833044 194038864 867182549 576788003 335873421 413816374 505450385 743362542 468100218 547244141 731232745 163294032 788519014 831633837 251084939 440357811 81387878 321221587 124742895 126784544 360853597 204006915 491519133 785876880 779872030 829472091 508332713 645363390 98561749 643922226 557092095 379468632 631312041 979833535 162933741 148762295 742641960 374184364 763779032 653169695 145759870 31067235 135911916 255288334 486715253 296001217 918584065 136632498 536555508 45719069 333951869 883876032 486715253 582312465 252886394 582792853 551567633 281469480 932275123 419340836 323623527 916422319 393760175 111892516 79826617 386554355 34069660 509173392 407090942 120299306 207609825 625066997 133389879 506170967 132909491 872586914 357250687 153325981 354848747 342959144 236793396 270060265 272582302 478668754 843883731 752970302 234751747 435794125 643922226 231268934 706012375 998568667 746364967 220220010 737237595 442879848 754051175 38873540 979353147 332870996 336594003 378387759 904532716 50522949 212894093 435073543 237994366 760416316 361213888 989921683 933476093 129186484 164735196 376586304 526947748 883755935 278467055 758855055 174583150 768102524 771705434 284592002 829592188 903692037 875829533 60130709 752610011 698326167 783114649 711416740 632272817 490198066 643922226 149362780 152485302 452487608 113814068 196560901 994125078 504129318 527908524 203046139 754771757 835717135 925909982 629150295 235112038 180588000 335272936 828751509 14373752 553609282 971306648 65414977 95078936 130387454 923988430 434112767 515658630 856493916 830552964 595643232 419941321 147561325 36591697 182269358 425345686 306089365 641400189 512295914 353047292 737597886 883755935 795244446 447203340 30466750 593361389 829712285 809656086 391118041 179627224 829592188 115615523 605130895 353407583 33108884 347042442 303807522 663738231 119698821 157529376 169539076 168818494 581952174 94358354 91476026 34069660 691840929 114174359 431951021 607412738 638517861 872947205 561295490 778070575 255768722 786597462 148161810 801969878 596243717 621343990 360133015 238714948 812898705 952811710 644522711 199203035 586515860 41875965 900809709 446362661 534393762 982835960 988120228 572344414 621343990 177345381 889880882 798006677 691000250 962779761 878952055 100843592 782394067 157769570 86071661 828991703 195720222 498244565 437235289 741440990 921586490 756933503 748046325 844844507 838599463 43437226 521783577 322403 249043290 667941626 489357387 202085363 187073238 104206308 363375634 5966962 269940168 136392304 68657596 350405158 201244684 461254689 741080699 144198609 983556542 278707249 159450928 508452810 50763143 781913679 351245837 678149871 775428441 721024500 549405887 798006677 754051175 821545689 993884884 277025891 432071118 604290216 657733381 290476755 170860143 795844931 203046139 205448079 694483063 80427102 455730227 202805945 644883002 774827956 544361813 457651779 988720713 149843168 196560901 9449775 304167813 1283179 687997825 876910406 241717373 453928772 183950716 949448994 339956719 517460085 195480028 231389031 986679064 769303494 34790242 774227471 917863483 984157027 755011951 455369936 907294947 221420980 433752476 201364781 229827770 428107917 583273241 6687544 796445416 82209 96760294 595403038 560334714 115735620 389676877 410813949 99762719 288074815 650647658 189234984 333351384 194639349 64334104 916542416 352206613 492960297 923628139 99762719 169539076 102885241 884356420 778550963 53525374 697845779 293118889 5486574 396882697 95799518 134710946 874268272 626508161 330949444 9329678 136032013 526227166 140835893 410693852 980313923 392919496 126904641 225864569 383311736 994965757 875349145 645123196 878591764 363615828 641880577 392799399 778550963 571864026 363856022 336473906 784195522 235952717 846285671 48841591 215055839 419941321 952571516 688358116 276665600 994485369 174342956 922066878 954733262 709615285 163774420 727629835 754171272 416578605 343439532 837158299 400845898 378988244 240036015 30226556 421982970 728950902 733754782 865381094 984517318 411774725 589638382 851569939 342478756 913780185 574986548 172901792 275584727 826469666 271261235 26623646 586035472 736517013 149723071 376826498 322902945 576427712 155487727 164495002 535354538 888679912 501847475 165936166 512776302 199082938 604890701 296121314 735075849 439637229 13052685 256609401 114654747 560935199 266937743 899128351 255288334 736517013 898768060 535354538 532352113 577388488 747445840 379468632 115375329 603329440 993284399 113573874 77304580 932155026 754771757 421142291 202085363 939961331 306089365 678029774 369740775 360493306 636956600 328427407 628309616 88353504 480710403 985237900 278587152 973708588 418139866 679470938 238594851 931674638 877630988 541359388 322422557 27944713 882915256 358811948 388235713 707933927 901650388 683193945 453568481 877390794 887358845 898888157 211933317 139274632 805212497 462455659 148882392 290596852 809776183 934917257 707213345 420301612 922307072 116936590 549886275 236913493 961218500 135911916 630351265 644522711 305729074 260092214 213494578 628429713 680671908 859136050 730512163 627709131 20618796 545682880 375745625 500766602 168218009 327826922 585074696 486835350 268018616 635515436 243038440 174102762 631792429 590479061 3805216 887719136 969144902 693642384 409973270 883515741 140235408 490558357 21579572 428828499 703130047 370701551 213254384 772065725 420902097 107929315 697005100 388115616 166176360 54726344 611616133 349924770 842442567 579189943 769663785 405649778 799447841 972507618 375025043 55326829 800889005 165455778 779992127 732433715 658814254 889760785 953652389 997968182 212533802 83189333 805933079 358932045 995566242 915461543 638637958 759695734 87152534 124142410 488156417 944404920 38152958 262974542 564898400 484673604 164254808 618221468 858895856 310172663 671304342 401326286 637797279 151644623 254447655 896366120 567420437 503168542 506891549 209171086 179747321 840521015 791161148 553008797 551687730 499205341 381990669 967703738 4525798 887959330 967703738 729911678 360733500 376346110 630951750 607412738 306209462 110331255 376466207 102164659 327226437 410333561 663377940 57248381 739879729 88473601 259731923 655811829 540638806 184671298 130747745 303447231 339236137 710816255 360493306 107328830 955213650 645483487 734835655 614858752 61091485 326866146 346441957 743242445 187553626 636956600 858895856 587116345 899608739 195840319 975149752 931074153 598285366 252766297 297202187 836798008 401686577 536915799 960257724 473504583 476867299 690639959 386434258 226344957 202085363 442500 866341870 973348297 675147446 126784544 908015529 909096402 247241835 539317739 326866146 266337258 583993823 258891244 996166727 544722104 692801705 342959144 85711370 415017344 649446688 748526713 143237833 600687306 17736468 963380246 590358964 935757936 746725258 45478875 645483487 360853597 926870758 815420742 47760718 958456269 146720646 344520405 741561087 865140900 123421828 54245956 920505617 252526103 85230982 118497851 389076392 45839166 766421166 546043171 478428560 568981698 199323132 503168542 960738112 542200067 833555389 305128589 582912950 604890701 231749322 269219586 115735620 18817341 938159876 992443720 757654085 533192792 706012375 170499852 45959263 19658020 488516708 93517675 82348654 907294947 654971150 276425406 480230015 57008187 835236747 921466393 736637110 730752357 635395339 134230558 890361270 663257843 854332170 883996129 897567090 631191944 299363933 677309192 512295914 540999097 327106340 324344109 428708402 480830500 119698821 254207461 535714829 264055415 777590187 704210920 364336410 223582726 957855784 222982241 774827956 644883002 291797822 674066573 556611707 38633346 981514893 108890091 229947867 724387216 886758360 873547690 719102948 843163149 804251721 532232016 368539805 339716525 260932893 480710403 680792005 438556356 623986124 489717678 395321436 186592850 800648811 392919496 989201101 506651355 604290216 260452505 208570601 381990669 798607162 249643775 450325862 772786307 513496884 948248024 603209343 876670212 234871844 106127860 926030079 110571449 398684152 167857718 504729803 570663056 463296338 75743319 489597581 555170543 656772605 395441533 16775692 369500581 366498156 862498766 903331746 773987277 409132591 121740470 672505312 415978120 52324404 50402852 520582607 625787579 602488761 688838504 237994366 299724224 924829109 748166422 459092943 465698278 680792005 527908524 892643113 191516827 177585575 63373328 275945018 971546842 353647777 85711370 287114039 337674876 381630378 359892821 505810676 811337444 823827532 200884393 115735620 24101609 645483487 176384605 273903369 434232864 398443958 484313313 471342837 596964299 332750899 949448994 142997639 603569634 676228319 981394796 739159147 330709250 872707011 415978120 596724105 360973694 138794244 277866570 527308039 683434139 955934232 946566666 590358964 417899672 180467903 101323980 254687849 318459356 143478027 972867909 904172425 766421166 500046020 318699550 849528290 909216499 711056449 32148108 266097064 550366663 404568905 313295185 471462934 144078512 948248024 724026925 72860991 835236747 881714286 747686034 346802248 559854326 321581878 727629835 682953751 179627224 149482877 285072390 548805402 172301307 887118651 912819409 103605823 70819342 439877423 554570058 828511315 402887547 114054262 82209 104206308 529950173 978992856 888800009 548084820 710215770 34429951 972267424 795364543 205327982 333231287 561415587 820584913 675988125 882194674 104806793 437955871 710816255 836677911 738078274 805092400 546763753 430509857 734715558 950169576 677309192 89434377 366378059 237153687 855773334 660855903 706973151 106848442 175784120 945966181 783474940 905133201 421382485 509653780 188394305 22180057 24101609 651368240 435794125 465458084 183830619 665419589 960377821 423544231 424625104 393760175 969144902 968664514 238354657 607292641 80667296 880753510 536435411 237634075 148882392 684274818 580751204 276185212 517940473 126424253 700007525 721624985 674306767 717661784 492239715 937799585 294319859 240636500 777590187 311733924 778190672 938760361 627468937 104326405 836557814 227065539 52564598 216857294 268378907 638157570 57848866 972507618 808335019 115615523 272101914 464016920 183710522 975029655 532472210 687757631 293479180 398564055 540278515 231509128 994125078 958336172 710936352 238714948 970946357 370461357 118617948 334912645 691240444 643201644 745284094 443240139 641400189 14253655 468700703 132309006 853851782 928792310 229827770 450926347 174463053 825869181 57248381 56647896 942123077 893964180 93157384 25903064 706732957 338995943 777950478 752730108 300564903 343679726 389316586 541719679 508813101 894084277 229107188 544121619 977311498 412855598 668902402 298042866 579550234 339596428 182149261 455009645 509293489 648846203 348123315 559373938 25302579 93998063 275824921 605971574 602128470 576187518 926150176 143838318 380189214 552408312 54125859 331670026 947767636 471102643 719223045 254807946 794884155 487315738 920265423 989921683 175904217 112493001 333831772 684635109 772426016 532952598 28064810 458612555 211813220 662537261 400485607 295520829 394240563 384512706 838239172 496803401 239195336 878591764 173382180 518781152 401926771 404448808 77184483 651368240 277386182 448764601 333591578 893964180 820825107 679110647 699767331 767502039 219979816 319660326 227185636 402647353 23381027 987279549 536435411 763058450 459333137 113934165 80066811 200163811 971426745 538837351 88833892 59650321 948608315 3685119 495962722 530070270 274623951 560454811 718862754 39834316 785036201 123061537 109250382 148041713 740119923 664338716 340196913 964220925 888319621 387154840 938400070 672145021 197041289 853611588 711176546 454889548 459693428 930233474 31667720 788999402 805692885 923027654 899008254 288194912 654490762 644282517 192117312 655451538 119818918 982475669 576307615 865621288 192837894 375625528 582432562 214095063 347282636 534033471 521543383 864420318 370701551 580511010 751168847 773146598 570542959 964581216 517820376 511695429 951850934 627228743 932395220 247722223 741080699 987880034 319660326 959897433 679711132 613657782 87272631 48961688 739639535 733514588 825268696 787438141 399765025 631312041 71780118 623385639 434713252 932635414 372983394 677549386 546883850 515298339 665899977 592520710 843523440 609334290 369860872 88113310 859015953 757533988 426426559 964821410 875949630 69858566 431110342 477347687 133389879 133029588 666740656 404328711 481310888 400245413 815540839 10770842 520702704 610775454 409853173 785516589 337674876 428588305 991122653 926870758 278827346 902370970 631792429 796925804 650767755 723306343 538477060 485033895 568861601 852650812 778070575 497764177 146240258 802089975 934436869 229827770 788158723 459453234 980914408 264415706 599966724 720544112 548685305 159691122 342118465 895765635 274864145 140115311 773146598 223462629 598525560 207970116 835476941 500526408 108409703 756092824 577508585 66495850 660255418 202085363 279668025 936118227 747205646 719943627 43557323 124742895 753690884 309572178 306569753 574866451 430750051 897687187 867783034 343319435 565739079 532712404 231509128 894684762 490678454 305008492 548685305 374304461 922547266 400005219 631792429 337674876 245320283 97721070 203526527 754411466 80066811 300324709 51844016 581711980 162813644 682233169 452007220 346562054 913539991 169779270 701808980 817942779 668902402 424264813 296601702 359172239 503889124 573545384 776869605 985838385 179627224 282190062 753690884 210852444 943203950 31547623 985237900 54125859 218778846 279067540 398684152 618461662 521062995 603809828 734835655 696164421 13172782 62652746 41875965 346922345 122100761 974188976 915581640 209771571 307890820 674066573 644162420 612456812 960137627 245080089 127385029 863219348 902731261 111051837 84630497 287354233 320741199 375025043 695684033 356289911 79586423 268859295 59410127 358331560 99162234 248322708 980674214 415978120 807494340 74422252 949689188 796205222 670343566 389196489 799808132 28785392 115375329 961338597 729551387 796685610 52324404 84990788 880513316 210011765 452487608 638277667 971787036 782394067 568621407 876670212 582912950 869464392 99282331 788879305 810256571 668902402 450566056 680792005 364216313 6447350 520462510 343079241 319780423 540758903 683794430 384632803 680311617 826469666 322662751 755011951 581351689 332270511 557332289 20138408 697125197 966382671 145399579 609094096 849528290 207729922 41996062 370341260 221661174 378868147 399044443 592881001 160651898 940681913 918223774 305128589 877751085 903331746 122100761 115855717 40674995 55567023 100243107 137353080 481190791 88233407 666740656 481070694 762457965 116936590 800168423 163774420 459333137 257810371 845565089 294079665 188514402 981755087 528148718 445161691 477107493 139995214 86912340 35030436 353647777 670583760 880633413 489957872 19778117 29145683 764619711 675507737 932034929 845685186 433392185 414296762 145759870 246521253 877150600 898768060 495722528 874748660 209411280 220340107 802810557 672745506 694122772 892282822 740119923 766421166 259611826 488036320 523464935 496923498 399164540 263454930 268499004 485994671 796685610 790440566 805332594 605371089 627108646 187073238 777470090 340917495 20618796 83309430 336353809 838119075 183110037 413335986 73941864 777349993 117777269 797886580 190676148 523104644 414056568 675267543 58689545 145279482 242437955 640199219 198842744 661336291 489717678 197281483 193798670 315096640 722465664 612216618 734955752 923868333 605731380 737597886 196200610 411654628 634434563 54606247 838839657 385593579 709134897 889280397 531511434 500286214 860697311 405169390 725708283 437835774 869704586 594081971 436394610 893123501 661096097 139034438 195359931 719463239 747926228 945605890 510854750 666500462 728830805 793442991 154526951 763178547 229107188 528388912 391118041 680071423 319300035 197401580 370581454 770264270 297682575 417659478 257930468 715019650 556371513 605851477 758254570 534994247 691360541 958696463 470502158 232710098 951250449 315456931 619182244 127505126 318219162 919905132 742521863 900209224 118377754 804011527 643922226 861898281 559734229 642481062 210131862 336113615 807374243 113333680 854452267 416098217 468340412 609574484 267057840 183110037 396882697 572824802 753570787 394720951 295761023 928191825 389796974 98922040 574746354 973348297 47880815 466298763 628549810 498965147 895525441 921946781 292758598 844964604 124382604 544722104 815180548 930353571 797045901 771104949 908255723 578349264 840881306 256729498 588437412 482151567 70819342 951971031 422943746 171820919 808455116 64334104 946446569 704571211 225023890 883515741 574866451 147681422 47760718 694603160 734955752 123421828 637436988 316057416 855533140 478788851 517460085 95319130 136872692 377907371 371902521 331910220 474345262 367939320 802330169 108409703 424505007 998448570 261533378 29265780 785876880 401326286 831513740 703009950 851209648 475666329 977911983 471222740 876309921 584954599 934677063 501487184 220099913 523705129 193198185 435313737 190556051 91836317 808335019 519501734 363856022 413335986 454649354 747445840 277266085 4405701 606211768 153446078 555891125 952211225 232590001 155247533 998568667 369980969 228266509 605731380 649566785 279307734 65414977 65414977 301045291 198362356 755852630 909937081 884116226 188634499 65054686 629510586 432071118 55927314 299844321 963260149 549766178 317978968 919424744 686916952 69017887 592881001 135911916 634194369 386914646 805812982 486955447 609334290 436154416 755372242 185271783 356049717 104086211 552408312 646444263 432791700 895285247 562136169 385593579 394240563 77664871 234391456 635275242 663978425 276305309 923988430 54005762 579790428 585074696 50522949 525026196 116216008 741801281 766901554 270420556 381870572 900449418 201845169 192837894 153686272 994365272 323143139 559253841 746845355 814700160 120899791 180227709 435433834 166296457 217337682 799327744 488997096 444681303 113934165 288074815 699527137 603929925 227906218 815180548 141076087 92196608 389796974 222862144 18577147 576427712 133269782 402407159 959657239 496923498 252406006 428348111 60611097 69858566 927831534 126784544 975990431 232710098 26383452 1763567 288795397 344640502 192597700 881954480 824428017 287714524 442039169 562016072 25422676 722225470 776629411 74061961 988120228 460053719 340076816 807134049 460654204 804612012 850849357 261653475 994125078 639238443 463896823 692921802 837518590 355929620 606211768 962539567 644282517 872106526 671664633 369020193 241837470 288795397 600567209 979953632 260332408 612697006 187793820 352086516 352206613 680912102 669622984 257810371 912218924 349684576 556731804 106608248 473384486 246281059 919544841 358451657 114174359 843883731 654130471 113093486 246881544 475906523 430149566 747686034 568501310 192477603 987279549 786957753 615579334 10050260 9810066 793683185 840881306 542200067 610295066 58329254 744323318 466058569 543881425 869824683 458012070 105167084 326025467 597564784 278707249 816861906 11131133 529469785 140475602 69498275 891682337 580390913 863939930 98081361 454889548 333471481 602008373 294560053 786117074 146960840 783595037 270420556 415137441 367579029 613057297 675868028 566819952 726308768 196440804 411654628 166656748 152845593 996166727 925189400 215896518 641520286 633353690 735796431 649086397 219379331 382711251 512175817 698085973 601768179 469421285 633473787 589157994 920145326 25542773 698206070 618461662 831513740 45478875 463296338 350164964 892643113 668061723 180588000 233550777 115735620 289996367 132909491 403608129 727749932 311493730 768102524 538957448 837638687 203046139 99882816 433992670 720303918 203886818 931554541 860096826 153085787 197281483 637797279 947527442 274864145 185511977 359892821 639959025 17135983 768582912 337194488 473864874 250844745 826950054 639118346 300925194 470502158 911618439 52084210 802930654 864780609 54125859 817582488 2724343 807134049 53885665 802791 337074391 901890582 4645895 485274089 35751018 159090637 663017649 736997401 247722223 593601583 394120466 497764177 384993094 562136169 324824497 996647115 299123739 81748169 559253841 65895365 101684271 33469175 701688883 878711861 671184245 964821410 884596614 643321741 504009221 591439837 193078088 174342956 871746235 817222197 290957143 989201101 136392304 651488337 270660750 701929077 567300340 716701008 873307496 696164421 730271969 755492339 659654933 557932774 303567328 192237409 300805097 11371327 216617100 964941507 83309430 107929315 183350231 19057535 245800671 836077426 941522592 325545079 844003828 943564241 48121009 918704162 652088822 243638925 349084091 80307005 934797160 64694395 706252569 10890939 372262812 874988854 244359507 721384791 96279906 907054753 970465969 300564903 798607162 545923074 507732228 606932350 318459356 290476755 650287367 744923803 337194488 595162844 321942169 86672146 419701127 639238443 160892092 721504888 44277905 455490033 626508161 358811948 893723986 708414315 408291912 10170357 279788122 429188790 443960721 645363390 641520286 40314704 755372242 346682151 581711980 533432986 65775268 456931197 134951140 203886818 653770180 420181515 561535684 689799280 162813644 24461900 78025162 693402190 122701246 839079851 680912102 658213769 121260082 175904217 787318044 713218195 900329321 481070694 984277124 252526103 266937743 308971693 481551082 231268934 542200067 768342718 633713981 711656934 279307734 504369512 96760294 724267119 38032861 552888700 359652627 923387945 40434801 498604856 841121500 897567090 307410432 812778608 671424439 130867842 889520591 291797822 592760904 852050327 446362661 804131624 683193945 506050870 768823106 751048750 265256385 498364662 255768722 728110223 960497918 23020736 912699312 576547809 871025653 832834807 565258691 862738960 204006915 284592002 73101185 709254994 60370903 685956176 620743505 250484454 239915918 824788308 26743743 912579215 714539262 588557509 293238986 477828075 306209462 503889124 543521134 305248686 123421828 700848204 831633837 706252569 94118160 849047902 983196251 395921921 89794668 511935623 516739503 964941507 903091552 72020312 124983089 517460085 111652322 762337868 664939201 499325438 335513130 954853359 566339564 490558357 980073729 79466326 669142596 126904641 201965266 983436445 650647658 773987277 67456626 370221163 929632989 222621950 466899248 626868452 956774911 532832501 1042985 733154297 802210072 357851172 996767212 874028078 666140171 718862754 834516165 514217466 712737807 620503311 248202611 250484454 208570601 25422676 692681608 832474516 266457355 866221773 666260268 844844507 952691613 843763634 446602855 235352232 476627105 498004371 441798975 899969030 718262269 478788851 128706096 312334409 411174240 618101371 79346229 857214498 426186365 426306462 893003404 465217890 370341260 211813220 1883664 67937014 263094639 600327015 188274208 406130166 808094825 929512892 315697125 878831958 592640807 799087550 711176546 445882273 416698702 651968725 323503430 962419470 342358659 661576485 431350536 424865298 929753086 160171510 740480214 685235594 623866027 999049055 637677182 186953141 322302460 42836741 962179276 528989397 596964299 833075001 375985819 117296881 768342718 482631955 904532716 165936166 304408007 786237171 756693309 792001827 967343447 773266695 475906523 177465478 352206613 148161810 841842082 406850748 534393762 527548233 492359812 441318587 640319316 747445840 629510586 882074577 993044205 538957448 134470752 327947019 33709369 571263541 902250873 916182125 421262388 336233712 233550777 296241411 828751509 576908100 280028316 718022075 495842625 688838504 151524526 824428017 424144716 315697125 875469242 393519981 344040017 7768417 766901554 883275547 942963756 970586066 923387945 324824497 324344109 925549691 51123434 539798127 812178123 167977815 624586609 989801586 402046868 800768908 642961450 369740775 651728531 970465969 766661360 212894093 252045715 797526289 916662513 348963994 982595766 814700160 988240325 518300764 267177937 914861058 583873726 809776183 174703247 925309497 848447417 19778117 751649235 186112462 611616133 678510162 510134168 108049412 65655171 663498037 731112648 943083853 890481367 271141138 813499190 483232440 171100337 418620254 619302341 778430866 867182549 919304647 323503430 436034319 591920225 429188790 874388369 701929077 773506889 386554355 788999402 785396492 183110037 157769570 341157689 275224436 179146836 684875303 658814254 331549929 775068150 927951631 330469056 959176851 843283246 232830195 651728531 235832620 454649354 926390370 757053600 85471176 87753019 923628139 967943932 5006186 188034014 616900401 772546113 942123077 613897976 228987091 88953989 376346110 714539262 713458389 801249296 304047716 631191944 440237714 977071304 986799161 548445111 347522830 429669178 24822191 290236561 479749627 739159147 941042204 584354114 41395577 387515131 591439837 896125926 362174664 690159571 608133320 843043052 15214431 519862025 53645471 780472515 356169814 645243293 941402495 528028621 390997944 377787274 731593036 521663480 100243107 703610435 319900520 840400918 467739927 917022804 112372904 286153263 148642198 520222316 758254570 651248143 68897790 575587033 70579148 615098946 568381213 182989940 72380603 112012613 15094334 304047716 194639349 125583574 884116226 665059298 855653237 830673061 213134287 214695548 512295914 906334171 623745930 918824259 858175274 395321436 325064691 554449961 456570906 561295490 942123077 6567447 771585337 949088703 716220620 772906404 970345872 272942593 424505007 378507856 665059298 706252569 93037287 716220620 316057416 472663904 57008187 161972965 491038745 367939320 514217466 88233407 112012613 849648387 286753748 397483182 508332713 973948782 739399341 281949868 872586914 194999640 432431409 687157146 474465359 777109799 111772419 808695310 93637772 123421828 605371089 710095673 347522830 577988973 94838742 934917257 347162539 79586423 573425287 588557509 269579877 695203645 322662751 18457050 422463358 839920530 493320588 684875303 410934046 916182125 836677911 276665600 105287181 721745082 162213159 845685186 832114225 935037354 620383214 932875608 931914832 45478875 696404615 3204731 56047411 565378788 22780542 84870691 649086397 58209157 164495002 285792972 410213464 108769994 548925499 209411280 21939863 426186365 721985276 68537499 546883850 42476450 781913679 794764058 263695124 178906642 845685186 540638806 694603160 76343804 973468394 31427526 325665176 323263236 720664209 27824616 158730346 305969268 172301307 418139866 848327320 382350960 439276938 376226013 562136169 633353690 543040746 232229710 218778846 673466088 257930468 433632379 653169695 674907252 693402190 490318163 383071542 721624985 581952174 606091671 35510824 663377940 260692699 594682456 383191639 490678454 10290454 559253841 642481062 690639959 464977696 436634804 365297186 390637653 576307615 371422133 950289673 22300154 476867299 301165388 628669907 368900096 863939930 300324709 887599039 110691546 636596309 955453844 261052990 253246685 152485302 30466750 994365272 894564665 98441652 947647539 591199643 710696158 90995638 664458813 139154535 580511010 50162658 654610859 327826922 758254570 659174545 948848509 764139323 405649778 92316705 174823344 652929501 332150414 332750899 580631107 783114649 537035896 763058450 25662870 688478213 32028011 947167151 682694 787438141 611736230 271501429 78985938 398564055 380909796 889400494 266217161 231028740 774827956 369740775 666740656 207369631 102765144 942243174 543521134 415737926 333591578 610895551 694362966 458852749 421742776 712017225 492720103 394000369 556011222 375265237 244479604 917983580 733994976 765700584 553248991 622665057 700247719 954973456 106488151 382471057 964341022 544121619 931314347 853251297 802791 348483606 188034014 71059536 93277481 569702280 972988006 2844440 878351570 119458627 634314466 619062147 977551692 816381518 126304156 109970964 306329559 493200491 289756173 137953565 780832806 569582183 404568905 955573941 678149871 531031046 894444568 542440261 265256385 731713133 866461967 844724410 22660445 697365391 572104220 179507127 868023228 798246871 750328168 624466512 570903250 278587152 907655238 551327439 445161691 199203035 378267662 536315314 409012494 286273360 733514588 349924770 463296338 315577028 969985581 592760904 527428136 787077850 264775997 869704586 225744472 267778422 764619711 273182787 236793396 731713133 819624137 767862330 255768722 651128046 642000674 169659173 806293370 72260506 458372361 291917919 753450690 420421709 744923803 998808861 330709250 505090094 291197337 442879848 227906218 368299611 293118889 12692394 486955447 529229591 931914832 98321555 667100947 67576723 961818985 208210310 813138899 722946052 881474092 455850324 600927500 904292522 163053838 165455778 495242140 989081004 882675062 602728955 430870148 641520286 93517675 838719560 300564903 412375210 345240987 399404734 826469666 803411042 698926652 772185822 213254384 338755749 749367392 125223283 329508280 171820919 550006372 56407702 17496274 688238019 443960721 243638925 904172425 968184126 769543688 739159147 253126588 820464816 424144716 683073848 786597462 972747812 934076578 632272817 813379093 425585880 62292455 706853054 478188366 669743081 729551387 340317010 190676148 98081361 574386063 574386063 501487184 114054262 874748660 588437412 10890939 123301731 559854326 293238986 22180057 303207037 290716949 946326472 702769756 412014919 140955990 337915070 627949325 113213583 989801586 554690155 644762905 608253417 814820257 368179514 182869843 952811710 358091366 366978544 638157570 639478637 646684457 82108460 471583031 707333442 525626681 838479366 839079851 904532716 670343566 34790242 926270273 560214617 671424439 863699736 687157146 925789885 180708097 469181091 992804011 536315314 779271545 794643961 584354114 151524526 292278210 44518099 712137322 313655476 123662022 945365696 609574484 643561935 610895551 909816984 690639959 269099489 952811710 309932469 573665481 17736468 622304766 802791 764859905 286153263 896486217 875589339 605611283 97600973 764859905 915701737 362174664 994605466 894564665 530910949 423063843 335753324 531631531 47280330 674907252 242558052 304528104 461014495 840761209 175063538 775428441 534633956 519982122 235232135 197761871 356049717 221180786 482391761 700247719 870425168 785276395 220340107 850489066 6567447 549766178 47040136 722825955 36711794 715740232 776989702 615219043 40674995 700968301 622184669 4285604 185511977 365897671 512416011 322782848 911858633 468580606 685355691 288315009 505090094 344520405 858895856 203526527 438436259 647284942 955333747 429308887 762457965 663858328 190435954 865381094 614858752 321822072 201725072 971907133 831033352 302366358 680191520 432191215 229467479 814820257 263695124 47640621 525146293 251565327 39233831 972988006 89554474 492239715 137953565 158490152 474585456 807254146 361333985 882314771 973108103 154526951 918463968 346922345 611135745 767502039 907294947 840040627 915221349 466659054 434953446 755852630 463536532 194158961 223822920 895765635 960858209 780712709 601407888 307290335 611496036 237634075 455369936 583873726 92196608 219979816 683193945 943564241 918584065 375145140 201604975 284231711 387755325 943444144 485274089 334192063 173742471 474225165 565138594 91235832 940441719 972988006 386314161 803411042 470622255 519862025 458012070 248803096 662297067 737717983 581231592 8008611 722105373 214095063 664458813 806773758 493560782 930233474 948968606 257930468 879552540 751168847 253847170 912459118 344160114 721504888 733154297 644162420 914620864 28785392 886998554 629390489 157048988 626388064 638157570 508572907 534393762 422223164 493080394 397723376 173021889 409372785 483712828 517099794 288675300 418620254 151284332 847726835 429188790 967583641 856253722 966863059 278226861 353047292 302126164 226585151 445521982 925189400 498364662 18336953 368659902 543641231 360493306 339836622 188874693 909816984 859616438 333471481 858655662 353047292 844604313 576667906 632513011 550606857 639118346 929272698 124022313 851810133 566219467 71299730 187673723 843643537 171340531 28064810 768342718 19778117 380429408 54366053 560094520 120659597 799447841 325184788 147321131 905973880 853731685 217457779 152004914 995446145 164855293 16055110 720183821 674667058 940922107 929152601 346201763 174102762 680792005 413095792 299844321 423183940 856974304 561415587 855893431 161252383 483953022 557092095 171220434 709615285 277746473 706973151 825749084 278827346 960377821 600807403 679591035 141436378 984157027 851690036 434232864 59169933 628309616 528989397 574386063 43437226 396642503 149843168 896486217 951130352 282550353 924348721 623025348 658453963 958336172 795604737 297202187 202325557 56647896 739399341 620503311 559854326 736517013 571743929 988360422 717061299 330108765 717781881 830192673 681152296 145399579 258891244 2243955 895765635 837998978 591199643 860457117 590118770 322422557 392919496 685956176 218778846 224783696 186112462 775308344 138193759 93637772 251445230 513977272 772786307 420782000 867542840 693282093 534273665 357490881 822026077 134350655 336473906 365177089 575587033 728350417 420301612 182389455 252406006 438796550 480230015 578349264 226705248 281349383 681752781 764619711 993404496 33829466 432671603 263094639 962659664 708654509 34790242 136392304 442639654 950049479 716821105 80907490 520102219 739879729 173622374 651488337 622304766 993524593 581832077 61571873 134350655 667461238 782394067 720183821 922307072 705652084 782874455 448284213 494641655 239195336 31787817 296121314 942363271 467139442 372743200 987279549 777830381 957255299 834396068 714899553 791761633 417659478 888679912 876790309 825388793 627829228 257570177 672145021 633713981 127985514 372743200 901530291 656892702 317018192 194399155 562597 949328897 758614861 234391456 941882883 542440261 146000064 161732771 650167270 735436140 912218924 83189333 611496036 287474330 102284756 20258505 684034624 131588424 133630073 282190062 404448808 682473363 662897552 800048326 110091061 488756902 532111919 128585999 453448384 782153873 853731685 525386487 785276395 436514707 492119618 593361389 202085363 579790428 846405768 196320707 380669602 304408007 312454506 982715863 237273784 226344957 753450690 75863416 924348721 632152720 581711980 176024314 14854140 591079546 3324828 57368478 776269120 539798127 748887004 18096759 540518709 34189757 982835960 80427102 669142596 199203035 288555203 618701856 663257843 892282822 231989516 832834807 733274394 226344957 521783577 253606976 388355810 135911916 393279787 827790733 474825650 351846322 930233474 714539262 818543264 265376482 489117193 909336596 413215889 477828075 976350722 93757869 331910220 291077240 956054329 254807946 422703552 871506041 25422676 787918529 540278515 836437717 802810557 28905489 131228133 129186484 177585575 450566056 972507618 388235713 497884274 474465359 695083548 618221468 477587881 952811710 321701975 280028316 258410856 208450504 913299797 976110528 802210072 856133625 662537261 100603398 169899367 991002556 220220010 348363509 812058026 727149447 167017039 927591340 488396611 176744896 163774420 987880034 588677606 433272088 657733381 572824802 830192673 976350722 684995400 432671603 638998249 859736535 994485369 653890277 909937081 567660631 409372785 995926533 914620864 760536413 199443229 621343990 404689002 964701313 128946290 628549810 557932774 406970845 120779694 894084277 410213464 130027163 158009764 617861177 294439956 825268696 795604737 119818918 596604008 518540958 574145869 710335867 287474330 965181701 794884155 910537566 154767145 37912764 400725801 958456269 938760361 350645352 912459118 968064029 611616133 617380789 262734348 179387030 139634923 595523135 644282517 934677063 141676572 82209 464257114 771104949 277025891 708534412 621464087 273182787 218058264 692801705 967463544 529349688 942123077 995566242 993404496 384512706 403007644 632873302 470502158 692081123 304648201 553849476 166176360 708414315 203046139 188634499 636716406 225143987 25182482 552288215 876670212 452127317 102164659 442759751 735676334 113333680 637076697 699166846 637917376 151044138 192717797 696404615 51003337 755132048 126784544 353647777 485033895 497403886 169539076 60370903 719463239 839079851 764499614 415978120 223582726 897687187 821545689 877390794 418620254 890721561 848927805 249883969 722705858 447203340 26023161 278947443 510254265 172181210 871506041 867302646 364576604 130867842 530310464 1763567 280748898 358691851 433632379 631432138 907775335 141556475 819504040 596724105 179026739 161852868 584474211 890361270 273903369 405529681 340196913 671064148 280508704 233310583 995205951 192477603 4285604 87632922 417419284 915221349 48961688 585434987 447203340 318699550 999529443 316177513 218658749 574265966 252406006 1523373 336954294 767862330 774948053 611015648 792121924 228866994 996406921 354968844 529830076 127625223 179747321 335993518 252045715 175423829 751889429 430389760 796565513 816621712 918824259 765700584 81868266 198242259 526707554 73941864 278467055 534874150 635275242 631191944 73581573 798006677 690519862 133029588 6807641 780232321 952451419 148762295 452487608 876069727 389436683 974188976 71900215 33829466 111171934 810977153 292398307 492119618 906934656 652208919 99402428 847486641 657252993 90755444 418740351 223462629 302966843 507732228 643922226 889760785 217337682 562256266 778190672 776149023 56167508 564658206 121380179 440838199 678269968 75623222 684755206 427627529 572464511 631312041 345240987 745284094 717181396 227666024 901170000 810977153 889280397 321341684 395801824 778791157 351966419 748406616 363135440 507251840 885437293 334071966 678029774 34429951 462335562 873547690 204967691 548084820 895885732 391358235 234151262 299604127 884476517 490678454 585555084 533673180 59049836 880153025 566819952 390757750 309331984 305969268 255408431 551927924 608613708 503769027 175063538 156328406 479749627 805812982 838359269 919064453 588437412 329027892 246401156 901049903 210852444 122100761 595162844 885077002 282310159 530670755 117176784 806533564 590719255 114774844 434232864 900929806 784796007 620983699 913179700 123421828 568981698 931074153 187193335 643081547 84390303 663618134 257329983 836677911 466538957 678029774 482391761 836317620 430629954 416338411 751048750 270420556 286993942 918103677 786597462 802791 418139866 373703976 452487608 374904946 268499004 348603703 703610435 632152720 473984971 890241173 232590001 124983089 208810795 580030622 5846865 376706401 781073000 399765025 582552659 6567447 355689426 979112953 951971031 777470090 964821410 439036744 656292217 940681913 142637348 436634804 125583574 615219043 541239291 509053295 951250449 545923074 492600006 404689002 695804130 66135559 950529867 502447960 424024619 99282331 446843049 511575332 422223164 890361270 213134287 246040865 937919682 782874455 786837656 205688273 149843168 782514164 332030317 600327015 385593579 834996553 460053719 930473668 825869181 923147751 398323861 824788308 752249720 983556542 406130166 618341565 578829652 858895856 84510400 384632803 194639349 369860872 209651474 960618015 1042985 335513130 222621950 598765754 373223588 999409346 727029350 956774911 351606128 62772843 912098827 159931316 601407888 65414977 585434987 952091128 963980731 127865417 867542840 308010917 170980240 447323437 46559748 927711437 283511129 269339683 702769756 25903064 761857480 564538109 340317010 859015953 320621102 703970726 204967691 683193945 373824073 14854140 977671789 434833349 739759632 752249720 631552235 994965757 307530529 94718645 734115073 776629411 884116226 313535379 214335257 135551625 341998368 671064148 917983580 3324828 771585337 788519014 476507008 571864026 673466088 671664633 52924889 57848866 763298644 676828804 229107188 240156112 36711794 687997825 206649049 202565751 544722104 403848323 809656086 52324404 870305071 443360236 578229167 9209581 201364781 967103253 750328168 439517132 895765635 54486150 744683609 411054143 712377516 807974728 948968606 668902402 188394305 520822801 895645538 783595037 13773267 745043900 485874574 257089789 140115311 881714286 100843592 860337020 772666210 331309735 572584608 350164964 786117074 355809523 948248024 502327863 250964842 6207156 583873726 17256080 357490881 769063300 648606009 165575875 222141562 564778303 591680031 320020617 567180243 902250873 265856870 482391761 952691613 84390303 582432562 433872573 321581878 329147989 596243717 887238748 401566480 791041051 579310040 985958482 153085787 294079665 30466750 560214617 243398731 695684033 98201458 344280211 161972965 227906218 372863297 65174783 542800552 701568786 523585032 469901673 781553388 511575332 208090213 9569872 66135559 962059179 298883545 89794668 894684762 977551692 154046563 892402919 39474025 727029350 26143258 744443415 489237290 308131014 500286214 746124773 137353080 711416740 933115802 817942779 489117193 958696463 54486150 119098336 713818680 120419403 63853716 411414434 873187399 340917495 177345381 300324709 484073119 543040746 117537075 622544960 691961026 109610673 822746659 587836927 365657477 642721256 23501124 579550234 637316891 926750661 625547385 946806860 896125926 748046325 240876694 601888276 716460814 108529800 123782119 420301612 851089551 205808370 97961264 766421166 868984004 496563207 278587152 594682456 389796974 887358845 383311736 90154959 752850205 288915494 812658511 221901368 116696396 829952479 407090942 809055601 756092824 853971879 440958296 11851715 547604432 936958906 1643470 486234865 841121500 179266933 255768722 75022737 224543502 427027044 419220739 986318773 582552659 574626257 926390370 455850324 727149447 114894941 623265542 670463663 619422438 817582488 379348535 986799161 740600311 332750899 883635838 649806979 356410008 729671484 569462086 368299611 520582607 524065420 93157384 499445535 946926957 923748236 579910525 27104034 244839895 554089670 338035167 589518285 703370241 544602007 488276514 7888514 38152958 229707673 935037354 567780728 666620559 594322165 345240987 920745811 753690884 760176122 410093367 36351503 256129013 56647896 669622984 505810676 684034624 287834621 267177937 827790733 18937438 296961993 347042442 73341379 501967572 56287605 856133625 467499733 539197642 977311498 991482944 264415706 17256080 173862568 280388607 368299611 183110037 183110037 357610978 210852444 15574722 707693733 678149871 224063114 963380246 694843354 279187637 804732109 289996367 120299306 98081361 92076511 282190062 880393219 929032504 468340412 118377754 552768603 245800671 591319740 712137322 302486455 186953141 75743319 896606314 718742657 543040746 261052990 174583150 771825531 955573941 3805216 118497851 391838623 21099184 426666753 387154840 329628377 849288096 559734229 848447417 623505736 714899553 744683609 542079970 655211344 48241106 986438870 623385639 812538414 128585999 76583998 689799280 587236442 857574789 222261659 609214193 549165693 822746659 545082395 944044629 937319197 693282093 865981579 348483606 57008187 506411161 998088279 581471786 348603703 96159809 37312279 257930468 118617948 185271783 355329135 736396916 642601159 910417469 869344295 189835469 779391642 988480519 177345381 531751628 709735382 658814254 518781152 808455116 218898943 251445230 219139137 55326829 384993094 863099251 679591035 520942898 4165507 46319554 155727921 527187942 320380908 933716287 978152177 664338716 110451352 34309854 343919920 403488032 796925804 325905370 761977577 434713252 746605161 400845898 712617710 722105373 772185822 870665362 935277548 416818799 742762057 828391218 903932231 525386487 612336715 486354962 292278210 400125316 598885851 417299187 829832382 594802553 690519862 975029655 551327439 753090399 151524526 237273784 680431714 105167084 908856208 614978849 614498461 407571330 627829228 121980664 1643470 625667482 239435530 97961264 29385877 643201644 12572297 263695124 761497189 696764906 825028502 549045596 325064691 140715796 828271121 417899672 998568667 818903555 365056992 276425406 115735620 689078698 96640197 48000912 61691970 349324285 248202611 277626376 141316281 841481791 283751323 408051718 564418012 655211344 682233169 679230744 826589763 232109613 583153144 510494459 683193945 553248991 782634261 742281669 801369393 215296033 150443653 834516165 241837470 111412128 993884884 406370360 940081428 421142291 642601159 147080937 702649659 862378669 572704705 60010612 204487303 46319554 69378178 88713795 140595699 343319435 415137441 305729074 651248143 418139866 604290216 404809099 580751204 41755868 8008611 391718526 475546232 511695429 40554898 672385215 389316586 626748355 78025162 115015038 357851172 12572297 257930468 93157384 759575637 616900401 366618253 707453539 92196608 719343142 51243531 181428679 972747812 257450080 830793158 44277905 951971031 322422557 449365086 993164302 201364781 678750356 383311736 747445840 409612979 902130776 575346839 814099675 476987396 795244446 431830924 466538957 233070389 503288639 917503192 345240987 243638925 756212921 261413281 808575213 804972303 721144597 476146717 706612860 586996248 37312279 452007220 583993823 798006677 347162539 104446502 875829533 176864993 187073238 926390370 130387454 253606976 534513859 801489490 100243107 381510281 535234441 170499852 588917800 685836079 756092824 788999402 581832077 50883240 645963875 46679845 852410618 435433834 986679064 265016191 515178242 47880815 918944356 996527018 722465664 411654628 402767450 809055601 809295795 951850934 32268205 503048445 77424677 315577028 769303494 204967691 265976967 676348416 699407040 817222197 600447112 582672756 994485369 516379212 770504464 656772605 26863840 771585337 672865603 274263660 640079122 515658630 797045901 269099489 478668754 298042866 302846746 75503125 104326405 212173511 523224741 975389946 799928229 827910830 842442567 775188247 900329321 845444992 907294947 528629106 187913917 226825345 123662022 924468818 61091485 55446926 687637534 450686153 305729074 871145750 800889005 401206189 889880882 34069660 698686458 232950292 169298882 612576909 891201949 186112462 588557509 908856208 967703738 711296643 462335562 891322046 946206375 424144716 56407702 397002794 462335562 370101066 635155145 567780728 171340531 702529562 153926466 736036625 129546775 333951869 531991822 851810133 450325862 948968606 136872692 181668873 60611097 886998554 207489728 882795159 779872030 707573636 873427593 130627648 710095673 545682880 559974423 985598191 984877609 917262998 541839776 405529681 810256571 970586066 567060146 764980002 766180972 168097912 272342108 618221468 598885851 246761447 905133201 504849900 22780542 666140171 428468208 241236985 834155874 821305495 138433953 234151262 111892516 197881968 373944170 158610249 350765449 73701670 694843354 186592850 751769332 543160843 468100218 499325438 65535074 97480876 51003337 352206613 188754596 886758360 318099065 184911492 873547690 222501853 866702161 781433291 168698397 177345381 479269239 172421404 817342294 522864450 959777336 734115073 593721680 54486150 450325862 357610978 101804368 855893431 231989516 528028621 389917071 548805402 679711132 793563088 501727378 617741080 89914765 819143749 562736654 967823835 752009526 663017649 185632074 850248872 584113920 810016377 282190062 728590611 229587576 592640807 47040136 82228557 110691546 214335257 628790004 427147141 817822682 272702399 714058874 808695310 132669297 591920225 935037354 768462815 518661055 480350112 965301798 23501124 914380670 717181396 777109799 886638263 211092638 488276514 800408617 597684881 553969573 40915189 836798008 880633413 811697735 372503006 576667906 516499309 668782305 63253231 957375396 125463477 760776607 636956600 821065301 358211463 913299797 928552116 909576790 229467479 144558900 285432681 410093367 635875727 93877966 623505736 584954599 500766602 986078579 607773029 354608553 993044205 273422981 955934232 854332170 309692275 226585151 874748660 728470514 434352961 53285180 80547199 187313432 381029893 211933317 638758055 126424253 961818985 581231592 973588491 135791819 363856022 347042442 917983580 130867842 235832620 31427526 910657663 6807641 458732652 626267967 566099370 146360355 836197523 859376244 646924651 362775149 528388912 764259420 583513435 448524407 226344957 304167813 542320164 848447417 831633837 256729498 206288758 229107188 276545503 456931197 951971031 194158961 713218195 664458813 236793396 753931078 952091128 975630140 642601159 769303494 815660936 159330831 452247414 748166422 274503854 156568600 315937319 138193759 363495731 263094639 920745811 464617405 737117498 418980545 710936352 680671908 17135983 226585151 564778303 219859719 117296881 978752662 994845660 473624680 524906099 750328168 394480757 304287910 905253298 200524102 238114463 171700822 146960840 959897433 897567090 692801705 409973270 48361203 147321131 929873183 472183516 483592731 996887309 501367087 207249534 605971574 561175393 793923379 588197218 72860991 164975390 472543807 781673485 772426016 339476331 400125316 565979273 593721680 574626257 449244989 13052685 189835469 27104034 85230982 10890939 741801281 531391337 274984242 954973456 321701975 280148413 751048750 278827346 710335867 511935623 102765144 631071847 497523983 569822377 130747745 886518166 19658020 232469904 879432443 98801943 779271545 553248991 62772843 919785035 834035777 551327439 256249110 360012918 371302036 408051718 988720713 665299492 778070575 618221468 171820919 944645114 99642622 368779999 403367935 743482639 601888276 344760599 301045291 118978239 148161810 259251535 134230558 916782610 52324404 67216432 617981274 910897857 554930349 418139866 586395763 414416859 752009526 992083429 590959449 277986667 204367206 287354233 726068574 718142172 370341260 863819833 701208495 753210496 986679064 819383943 599246142 81988363 80066811 676228319 579910525 670103372 567900825 687757631 910657663 465337987 131588424 494881849 759695734 763178547 944885308 396762600 559494035 450926347 734355267 517940473 700487913 966502768 201604975 766541263 246641350 475185941 751288944 690880153 683914527 716340717 758734958 10530648 741801281 201364781 281469480 909096402 589037897 343319435 566219467 115615523 738318468 807013952 605130895 415978120 883755935 808695310 929152601 803651236 175303732 738558662 334312160 560094520 505090094 133029588 336714100 504369512 100123010 194279058 904893007 423424134 136632498 387875422 250124163 857574789 468820800 12332103 620983699 799087550 951730837 309331984 979473244 194999640 657973575 646083972 539557933 947527442 961818985 175543926 878231473 213854869 878591764 975870334 21339378 467139442 686196370 889520591 500406311 12332103 819984428 27944713 913900282 350765449 724267119 940802010 543521134 920625714 320981393 406610554 999769637 220580301 369020193 991603041 747205646 887238748 980674214 326145564 752369817 941522592 904772910 384752900 633473787 235832620 955213650 434112767 200884393 535834926 439036744 788158723 306089365 548925499 911498342 692441414 921706587 248202611 112733195 214335257 923868333 949689188 828631412 795484640 821065301 253967267 698566361 249763872 106127860 307890820 150443653 474585456 926030079 443840624 539197642 876910406 854332170 515778727 948127927 726308768 442999945 710816255 937559391 662537261 236313008 529229591 614498461 594442262 724026925 535474635 775308344 589758479 24581997 844724410 112733195 87272631 547364238 287114039 729191096 644883002 968064029 971066454 823827532 104206308 867302646 794403767 647044748 642240868 148762295 382831348 432791700 574986548 669382790 64694395 38873540 163414129 643802129 621944475 981875184 395681727 218898943 545802977 682353266 538717254 164014614 247482029 764139323 108409703 986799161 66015462 875949630 704691308 869104101 103245532 704210920 422343261 400485607 328067116 501246990 499205341 819263846 487796126 17736468 829592188 580631107 343799823 839440142 602368664 343919920 431951021 522984547 659054448 739279244 103485726 138313856 971907133 627348840 474105068 594922650 901650388 618821953 995926533 261052990 653650083 573425287 182389455 738438565 465458084 709855479 545802977 330469056 195359931 740240020 147321131 153686272 745524288 975870334 190315857 639358540 718862754 226825345 624226318 179146836 995446145 849288096 127865417 982595766 693161996 157649473 476026620 641880577 863459542 954853359 461855174 4525798 779631836 555290640 586395763 843643537 886638263 266097064 818303070 336714100 706732957 822626562 815901130 896846508 270900944 376826498 94958839 85711370 703850629 588917800 272222011 801009102 91476026 54366053 974068879 378507856 97961264 831874031 927951631 538116769 824908405 164254808 305969268 665059298 220700398 439997520 115135135 858775759 633353690 853731685 178426254 388355810 765340293 727029350 452487608 329868571 326986243 658093672 582552659 240996791 956414620 183830619 391118041 455369936 888439718 186232559 530430561 856253722 367458932 670463663 73941864 950890158 560334714 43797517 906093977 417659478 894684762 460414010 218658749 760056025 737597886 976470819 577748779 974909558 27584422 484673604 472663904 332750899 932515317 701448689 128826193 679711132 519982122 423424134 647645233 335993518 539918224 547364238 199683423 242558052 433031894 573185093 132309006 201484878 844604313 874388369 358331560 105527375 782033776 566219467 323383333 197641774 797406192 397363085 353047292 839320045 678870453 583873726 415617829 991362847 734955752 960618015 757774182 524425711 44037711 170139561 881834383 72140409 515298339 818903555 806533564 839800433 840160724 380789699 596123620 193078088 699166846 395081242 948248024 389436683 412495307 10410551 457771876 219019040 244239410 381990669 125223283 774347568 637797279 650047173 586035472 334192063 24581997 268859295 212413705 889160300 929873183 515778727 306569753 813979578 484193216 903091552 172301307 110691546 62892940 789719984 815420742 742401766 303447231 85831467 163894517 396522406 502688154 506651355 419701127 627228743 262253960 61211582 962179276 665899977 717421590 777349993 286633651 406490457 534994247 519501734 938880458 997607891 765220196 556611707 359652627 483832925 943083853 631312041 727029350 11491424 906574365 917022804 259131438 845324895 87272631 8729193 280748898 817822682 45719069 509773877 33349078 812898705 352326710 382591154 108890091 24341803 379949020 622424863 596724105 509653780 461614980 970345872 965301798 425105492 951490643 126063962 448164116 120419403 290957143 580511010 652809404 75503125 353047292 816261421 629150295 839079851 591079546 589998673 477948172 538477060 26023161 240276209 556011222 487075544 5606671 813739384 527548233 173382180 979593341 713818680 63973813 893723986 425705977 131348230 276905794 577028197 588197218 312574603 966622865 585314890 846405768 795364543 464737502 843163149 363976119 25662870 63853716 697965876 208210310 280388607 397122891 373824073 605611283 256969692 515898824 906934656 148281907 731352842 764139323 500286214 879912831 935637839 541959873 536795702 60010612 987759937 610895551 34309854 645843778 601407888 625066997 572824802 237754172 633353690 2844440 414176665 721985276 772185822 778791157 6087059 578709555 776149023 954853359 473744777 905853783 394841048 87392728 521183092 973228200 284231711 196320707 456691003 604890701 555650931 363856022 775668635 238354657 708294218 44638196 967463544 724267119 141436378 827310345 177825769 311253536 81628072 118017463 687157146 6687544 41035286 726068574 871145750 845565089 627949325 541359388 534994247 667100947 936598615 427747626 545802977 853731685 419581030 262974542 27224131 177945866 283991517 338155264 23140833 92797093 237994366 409372785 360012918 514337563 776028926 603929925 553729379 237393881 847006253 99642622 494401461 440237714 793322894 249643775 333351384 948728412 11011036 796325319 579430137 438796550 438075968 830673061 223102338 696044324 816741809 155487727 921826684 520822801 669502887 390277362 642360965 249763872 182989940 548204917 57488575 698085973 943324047 518300764 776629411 818543264 806773758 423784425 323023042 44638196 848567514 740480214 153686272 834876456 680071423 737597886 644762905 53645471 170980240 746605161 165695972 513616981 88113310 216857294 770264270 524786002 531151143 571984123 402287062 589398188 217818070 152004914 475666329 513737078 84990788 962299373 170740046 394360660 40915189 245560477 822266271 572104220 197881968 375505431 592400613 139875117 625907676 102404853 612697006 498124468 622544960 976230625 221541077 977431595 705772181 223582726 521062995 600687306 441678878 499445535 826589763 754051175 994605466 142997639 663137746 57248381 91115735 979353147 303807522 14854140 450926347 667221044 907655238 370701551 790680760 724867604 132909491 591319740 789960178 721144597 8008611 871746235 701088398 87152534 957255299 487435835 208330407 753210496 513016496 340196913 151644623 552408312 121500276 682713557 310172663 95799518 191516827 350885546 1042985 137473177 86311855 195480028 354248262 368659902 597564784 429428984 697125197 560094520 961578791 709014800 193678573 396042018 334552354 369020193 563096945 337314585 240396306 811217347 228266509 519261540 365537380 300444806 779151448 10170357 275945018 226465054 174342956 119818918 807374243 450806250 842562664 734115073 366738350 725828380 83549624 949809285 165335681 698806555 323623527 141316281 991362847 890121076 828030927 411054143 191636924 197761871 933476093 456210615 765100099 608613708 908135626 442759751 227786121 593481486 710335867 130747745 894324471 588317315 754891854 930833959 213614675 755132048 21819766 52684695 726669059 333471481 745043900 526467360 734115073 53044986 184190910 303207037 265856870 869704586 21699669 41155383 114414553 57248381 314255961 472423710 499085244 872226623 511215041 684154721 101203883 639838928 868143325 130027163 60370903 675868028 843883731 425465783 189835469 843163149 841361694 586996248 394961145 335032742 557452386 341517980 652809404 195359931 692801705 602608858 244959992 974669364 620143020 969264999 552528409 908015529 848687611 996887309 602728955 287114039 321701975 760176122 178546351 443720527 51844016 893723986 805812982 52324404 109970964 106728345 872226623 629390489 381990669 28425101 374904946 836918105 126304156 954012680 417659478 501367087 58089060 572464511 273422981 479029045 174342956 980313923 795124349 758494764 872106526 761256995 486354962 169539076 378868147 306569753 28545198 8488999 711416740 374064267 252526103 333951869 994965757 353047292 528028621 75743319 88593698 915941931 353647777 95078936 318219162 189835469 558052871 167257233 681392490 102645047 618101371 941042204 87392728 204006915 170980240 983316348 387034743 372503006 946566666 448044019 862138475 944645114 362655052 153085787 787558238 223462629 672385215 603569634 936838809 551927924 312814797 451526832 261413281 954733262 99642622 738198371 390997944 571984123 823106950 874868757 190556051 213974966 867903131 436874998 870905556 871506041 417539381 121980664 710095673 868143325 348123315 593121195 994965757 198602550 209771571 630231168 982715863 772666210 180828194 467860024 264896094 970105678 44638196 943324047 368900096 687877728 252646200 232950292 828751509 388836198 608013223 158970540 694002675 785636686 455129742 813499190 179987515 971426745 489237290 804251721 704210920 901049903 474585456 748286519 932155026 683193945 886277972 264896094 651848628 93517675 739159147 478428560 110571449 97000488 883275547 688478213 275224436 695083548 817222197 183950716 633713981 282430256 901290097 357250687 44518099 76463901 963620440 270300459 232950292 180467903 33228981 931794735 951730837 283631226 387755325 275945018 95799518 777229896 47880815 339236137 262133863 413335986 69258081 265736773 460774301 320981393 574986548 82829042 347042442 468700703 29866265 189715372 795724834 87032437 156088212 425946171 651848628 362775149 141436378 759215346 509053295 352206613 667461238 425105492 797646386 510494459 541119194 898287672 902851358 716460814 872586914 895645538 477828075 679951326 105767569 887478942 250124163 793683185 368419708 157409279 923988430 227666024 617140595 389436683 721624985 873787884 886878457 915941931 692561511 599606433 738678759 875349145 977431595 866341870 785996977 204127012 437115192 533192792 760056025 580030622 471222740 877630988 310412857 319420132 774707859 671424439 317138289 910417469 723426440 104926890 756453115 58689545 632873302 159210734 333351384 838839657 599126045 924709012 253366782 285672875 146240258 874988854 765940778 821545689 572584608 465458084 209531377 794884155 57608672 424625104 712857904 556731804 748766907 375865722 381870572 672745506 292878695 705291793 516018921 275464630 43197032 5246380 866582064 88953989 709855479 195239834 137112886 62892940 834155874 352566904 770504464 912218924 145159385 232710098 775188247 827910830 214215160 840761209 608013223 599486336 222381756 393760175 971186551 164134711 692201220 585675181 587116345 675988125 826829957 522023771 16775692 521062995 874868757 354848747 450325862 731713133 162333256 217577876 258771147 501126893 163173935 706132472 891081852 84150109 562496460 282550353 973468394 895885732 711416740 613177394 778070575 187073238 180948291 411174240 781193097 755011951 215896518 25422676 283631226 847726835 485634380 361454082 242558052 784195522 167377330 306449656 808575213 945365696 195119737 983556542 741921378 417539381 475906523 518060570 294920344 682694 329628377 653289792 938640264 352566904 152365205 632753205 435073543 846165574 632032623 228626800 857935080 720664209 200644199 305488880 356410008 377186789 37432376 782754358 703130047 146240258 389796974 511094944 197041289 286393457 473504583 480470209 816741809 816381518 649566785 59410127 167497427 539557933 828151024 394600854 596483911 928432019 785876880 922888 484313313 458972846 758254570 88353504 749967877 534393762 48241106 317258386 869344295 546403462 709495188 982835960 126904641 478788851 103245532 708174121 597444687 541359388 278587152 512536108 701328592 72860991 639478637 710455964 418139866 436874998 885917681 872466817 509293489 66015462 134951140 477347687 164495002 646444263 923267848 830552964 523945323 544121619 678750356 567780728 418259963 972387521 503408736 382110766 601167694 318939744 272942593 472904098 568020922 460053719 458612555 190556051 470021770 503288639 749127198 257209886 763899129 278947443 17256080 619302341 873547690 775428441 965902283 820104525 677429289 402407159 421142291 983076154 582432562 164615099 12332103 605851477 658694157 941282398 271261235 866702161 161252383 213374481 479629530 478428560 948248024 109970964 840641112 743122348 554209767 712978001 949929382 349324285 833315195 193798670 107929315 6567447 997487794 614978849 618221468 878111376 436754901 852650812 19658020 519141443 919544841 226224860 660255418 825508890 539557933 222501853 912819409 1042985 57848866 68657596 379588729 81748169 613177394 566339564 67096335 259611826 862018378 939120652 553008797 155968115 552888700 290236561 14133558 670223469 633233593 948127927 54486150 191636924 471102643 777830381 325785273 780232321 253967267 239315433 894564665 449004795 995085854 903211649 267418131 909216499 384512706 834396068 158610249 398804249 412135016 949569091 931074153 106247957 815901130 105767569 85951564 880873607 880393219 394000369 925189400 678510162 621464087 190075663 406610554 745524288 317138289 641880577 195359931 83069236 598165269 451526832 244239410 417179090 454529257 450085668 585434987 559614132 538477060 589638382 823227047 495242140 637557085 58689545 229107188 314616252 12692394 280508704 215896518 628069422 969865484 593481486 523945323 366498156 286753748 598405463 969985581 875949630 591680031 103005338 502447960 269459780 233310583 175904217 833915680 625667482 783354843 864300221 644642808 89914765 190796245 149963265 4165507 673946476 832594613 622544960 573545384 685475788 110571449 332390608 122941440 418019769 307890820 474705553 832354419 47040136 673466088 203286333 989801586 481791276 924468818 712737807 9449775 312574603 753330593 50763143 535834926 285552778 560334714 364456507 145519676 855413043 280028316 462095368 633954175 86071661 874628563 879432443 784075425 185992365 896366120 610535260 117657172 611856327 448044019 884716711 906093977 921226199 833915680 980794311 44638196 834275971 886398069 825508890 741801281 259852020 483352537 378147565 548325014 594922650 619422438 299724224 371061842 93998063 949689188 598405463 897206799 682713557 188994790 836317620 402887547 882675062 991482944 511094944 407571330 47640621 669983275 304287910 857574789 126424253 746605161 856013528 44878390 258410856 643561935 273903369 623866027 861177699 539678030 101804368 759575637 122340955 312814797 738078274 813138899 66736044 375625528 446722952 937679488 536075120 236553202 310532954 376826498 462575756 234031165 472663904 458492458 594202068 201004490 990161877 719823530 433992670 580871301 613897976 252646200 657973575 324224012 373583879 539678030 78265356 541599582 557452386 93277481 816741809 612456812 993404496 344760599 352566904 256729498 237273784 862018378 392319011 817342294 295640926 31787817 239195336 369500581 109730770 521183092 416458508 747686034 875709436 714178971 456330712 289275785 174463053 954012680 299243836 547364238 79586423 230067964 734835655 609814678 857334595 555170543 559854326 511695429 739519438 891682337 705531987 279067540 634674757 428107917 352086516 847006253 566819952 720063724 651608434 347522830 20858990 840521015 890721561 611135745 840040627 656292217 941282398 503528833 988600616 454048869 745163997 19778117 88833892 341878271 338995943 691480638 600327015 84750594 459813525 610535260 651968725 314976543 726789156 403488032 855413043 595403038 271741623 674667058 13052685 907294947 187433529 449365086 922066878 562496460 374064267 536675605 743242445 315697125 173021889 847606738 378988244 354488456 881233898 259731923 946926957 221781271 922186975 326265661 255768722 817102100 743362542 777950478 14974237 368659902 980794311 347642927 149602974 56167508 182629649 579670331 627949325 110811643 127385029 382951445 381270087 189595275 94598548 210372056 555650931 109970964 138554050 558293065 275945018 852530715 684875303 224183211 967463544 544361813 463176241 371302036 491639230 796445416 290236561 551447536 594322165 839320045 32628496 931554541 537516284 810977153 991002556 727389641 303207037 336233712 796685610 799087550 86912340 956774911 541959873 992683914 470382061 969144902 528989397 357010493 848807708 429549081 463416435 179867418 324584303 884356420 382471057 148882392 474105068 469781576 367579029 535114344 919785035 374424558 147321131 321461781 796445416 677789580 845925380 974188976 746965452 221781271 657132896 808214922 319660326 199082938 671784730 199082938 66856141 419821224 266697549 514817951 219139137 980073729 888439718 146480452 83789818 493200491 947647539 991122653 551087245 334792548 314736349 222021465 102765144 398924346 280748898 19057535 501607281 299363933 281949868 364576604 107929315 841601888 79106035 435914222 165095487 89074086 107328830 413816374 608733805 946446569 682833654 918223774 360853597 265736773 279788122 402647353 436995095 660495612 858535565 302366358 751529138 608253417 327947019 68057111 716340717 157048988 632753205 336353809 910057178 939601040 109370479 401686577 656652508 263575027 631312041 428348111 158370055 234631650 920986005 470021770 202926042 271261235 233310583 211693123 878711861 675747931 910537566 172421404 695203645 499205341 312694700 212773996 723066149 402287062 626988549 289996367 454889548 578949749 827310345 132669297 635995824 168097912 484793701 714058874 686436564 954132777 465458084 483112343 161972965 284952293 125223283 626027773 286993942 17496274 894804859 688838504 198962841 162213159 666380365 280508704 142877542 930713862 688598310 606692156 997968182 72740894 458492458 647765330 365897671 560815102 794403767 373583879 813979578 997367697 389917071 89794668 177705672 805212497 337434682 243158537 387995519 281349383 795484640 923748236 303687425 93037287 471703128 806173273 59410127 637917376 396162115 307410432 633834078 672505312 395441533 199323132 836918105 364576604 152605399 512896399 198602550 682473363 591920225 435433834 81147684 249043290 144438803 266817646 138193759 548084820 383672027 301885970 15094334 682953751 614978849 702169271 403488032 878471667 300444806 520822801 188034014 900089127 879912831 398083667 380789699 915581640 204247109 204847594 308971693 788038626 707453539 372382909 435193640 578469361 135431528 892643113 724987701 261413281 868863907 165335681 228626800 564057721 210251959 460293913 259491729 16535498 643081547 29385877 486114768 84510400 116576299 25662870 952091128 133149685 170980240 363976119 420421709 517700279 651968725 541719679 538236866 985598191 691480638 304648201 469181091 420421709 379108341 718262269 264175512 625307191 539197642 987639840 985478094 1763567 444441109 939480943 516259115 17736468 213254384 696404615 937919682 767982427 827550539 402887547 195960416 298403157 274864145 978032080 914260573 847366544 90755444 922307072 349804673 516619406 129666872 382110766 344400308 443720527 930353571 271261235 299964418 390517556 21819766 164735196 74782543 994004981 151524526 679230744 363015343 803170848 187793820 436634804 154767145 842682761 453448384 842922955 278106764 982595766 742521863 123541925 386434258 240276209 85951564 543160843 424745201 783835231 565378788 88233407 172661598 910537566 641760480 689799280 108169509 911258148 833315195 535594732 135671722 590358964 80307005 22300154 224663599 763899129 625427288 11611521 561775878 762217771 96159809 776389217 121139985 191877118 63493425 78385453 821185398 686196370 224183211 884956905 995566242 176504702 48601397 54366053 637677182 438436259 87993213 977791886 467860024 457651779 381630378 989561392 348603703 990281974 785276395 785036201 608733805 541719679 39113734 577028197 80907490 598645657 376226013 88833892 478668754 826109375 293359083 44157808 158970540 852290521 839079851 975870334 225384181 763418741 343319435 424625104 593361389 673826379 282670450 763538838 82588848 29866265 103485726 383672027 136752595 911138051 439877423 566219467 451646929 98681846 693642384 43076935 184791395 23621221 424865298 450926347 710936352 798847356 655811829 77544774 922427169 35630921 575947324 748286519 209291183 699046749 640679607 772185822 142637348 445521982 980794311 500766602 52444501 410333561 941882883 334552354 431350536 628069422 686316467 334071966 141436378 251565327 425105492 188994790 620623408 714539262 693161996 790200372 214575451 883035353 915941931 575827227 677789580 213374481 298523254 74302155 756573212 185752171 759815831 82829042 876550115 215175936 854332170 93877966 966502768 286753748 463176241 912218924 314015767 31907914 550366663 782394067 950529867 888079427 218538652 684154721 942123077 37672570 340557204 218418555 267658325 502087669 455850324 65294880 803170848 554810252 166296457 103005338 105407278 234751747 756453115 688958601 361814373 953652389 860577214 852170424 833315195 437595580 866341870 10530648 554570058 622184669 63253231 506411161 89674571 526947748 836317620 311733924 569101795 931914832 669262693 433632379 895645538 672265118 156208309 290116464 687397340 464857599 590599158 324224012 352446807 138794244 232229710 506170967 871866332 768703009 35751018 920625714 588077121 547124044 961338597 148402004 285072390 234631650 387395034 779751933 761016801 711777031 460654204 670103372 6207156 35630921 820705010 682113072 10530648 816381518 21699669 656532411 731232745 332630802 185391880 394720951 342118465 456570906 215656324 995566242 114414553 683193945 631912526 426666753 87032437 366978544 980554117 850248872 502568057 449725377 607773029 530430561 190435954 286273360 613297491 272822496 886638263 553849476 596243717 187073238 957495493 420301612 582072271 96640197 961578791 905493492 12572297 387515131 984877609 165816069 219739622 314376058 458852749 341638077 369260387 109490576 399765025 799808132 983916833 523104644 638998249 881954480 360133015 480230015 941042204 675507737 120179209 283391032 352206613 749367392 811457541 628429713 13653170 410934046 718982851 865981579 169779270 979593341 76463901 322662751 358211463 948488218 921466393 32148108 175543926 775188247 935878033 481190791 971066454 776269120 204127012 914500767 562856751 619182244 737117498 167617524 12932588 265376482 721264694 639238443 730512163 611375939 972627715 161132286 205928467 38873540 867302646 417058993 375625528 233310583 594802553 947647539 980914408 764019226 620143020 118978239 694483063 743602736 913900282 998808861 222261659 761256995 567060146 176864993 826709860 287714524 479989821 828511315 530070270 997247600 697365391 718742657 631191944 993644690 41275480 661336291 188874693 394240563 497403886 970225775 635995824 476987396 201004490 654010374 160531801 705772181 849288096 683554236 389316586 337194488 62772843 674546961 281229286 609574484 151644623 50883240 528268815 499685729 891802434 487435835 454409160 711056449 942963756 358571754 957975881 709495188 331309735 85951564 451646929 486715253 105767569 647765330 49562173 74422252 566699855 254327558 856974304 575827227 327466631 477227590 349444382 846525865 337674876 894444568 474705553 480830500 539437836 969985581 796565513 65294880 852891006 343199338 728830805 15094334 815300645 216136712 167737621 84990788 568020922 958936657 829111800 115855717 24341803 547724529 691720832 44638196 429669178 391718526 158730346 303807522 156928891 180467903 665419589 762217771 283030741 687637534 482511858 126904641 958816560 366858447 809055601 237754172 808455116 35871115 876309921 674787155 547003947 377547080 287834621 109130285 50282755 507371937 135911916 305849171 460894398 421622679 664819104 118017463 546283365 800528714 345601278 128465902 169178785 977911983 296601702 429308887 488997096 664338716 912699312 992683914 806053176 661336291 813739384 911138051 777229896 63493425 489597581 33349078 525626681 845805283 149602974 749367392 728830805 876670212 426306462 912339021 994965757 927231049 125103186 965061604 228386606 81507975 70338954 713938777 904172425 373824073 618701856 76343804 805212497 897206799 317498580 978272274 370101066 224783696 629630683 714419165 591920225 40194607 971066454 615339140 564658206 538236866 164254808 840160724 866702161 157048988 595523135 456090518 91115735 447683728 22420251 84870691 640919801 76824192 494641655 366618253 931554541 833435292 365897671 568981698 581111495 319300035 948488218 561535684 267778422 518781152 265856870 282190062 335633227 190435954 83069236 830673061 766421166 134590849 520222316 985237900 516499309 51603822 126063962 267898519 999289249 409012494 645963875 586035472 5846865 564898400 175543926 435794125 788759208 22300154 752489914 134470752 99162234 80307005 535354538 994365272 197401580 532832501 106007763 17256080 363135440 578949749 99402428 989201101 594682456 802089975 12932588 683314042 817102100 519261540 244479604 503648930 419100642 562136169 588557509 658814254 762698159 804612012 196320707 990402071 820104525 226465054 16055110 22420251 718142172 216256809 899608739 267778422 253606976 309091790 488276514 299484030 910657663 505930773 719463239 885557390 175543926 868984004 147921616 879072152 139394729 932755511 188394305 342959144 750328168 881954480 730752357 722105373 82228557 222381756 923508042 467739927 362895246 126784544 761617286 55086635 522143868 212533802 792482215 281109189 12932588 439757326 255288334 705772181 224303308 38873540 585795278 485994671 360493306 286273360 605611283 334912645 417539381 973108103 536075120 901890582 438196065 284832196 866461967 590599158 388475907 97240682 998928958 155127436 332630802 734115073 750328168 44998487 181188485 323623527 606572059 864540415 551207342 618341565 56647896 11851715 873067302 797886580 170980240 869224198 406850748 580511010 708054024 298162963 811817832 432071118 683073848 401086092 849167999 346321860 397002794 428588305 335272936 241957567 759815831 131948715 129306581 303327134 990281974 193798670 893363695 813499190 146240258 846285671 427627529 232469904 155367630 148882392 760896704 240276209 448884698 732433715 24101609 972867909 697485488 514697854 730392066 259011341 733154297 637917376 570783153 862018378 32388302 571143444 957135202 711536837 271141138 63253231 890721561 158249958 223702823 271261235 560935199 144678997 71539924 310653051 837038202 126063962 817942779 705051599 565859176 607292641 10890939 450085668 532232016 922066878 175063538 652088822 706492763 430029469 241957567 122340955 969505193 407691427 919184550 96400003 201725072 101924465 987759937 290596852 705291793 259611826 211933317 358451657 12091909 194639349 942363271 472784001 418860448 615219043 824428017 484193216 938159876 817582488 755011951 676468513 657733381 998928958 492840200 330469056 471943322 64214007 744803706 202565751 774707859 833435292 719223045 248442805 184671298 221661174 168097912 805812982 927591340 109130285 400365510 255648625 638878152 253126588 136512401 237994366 863219348 225143987 18817341 508092519 282310159 159811219 796565513 400005219 840280821 358691851 651368240 541359388 432071118 798366968 467139442 665299492 115015038 486595156 685115497 696284518 398443958 575947324 843523440 140235408 333951869 720063724 434232864 437715677 715019650 370581454 567540534 973828685 752129623 734235170 40434801 860817408 687517437 471703128 777109799 600206918 987399646 181068388 383191639 319900520 939841234 323863721 840160724 440237714 134350655 883876032 392439108 799327744 301885970 424505007 736997401 182749746 625907676 993644690 165455778 671184245 660255418 402287062 529349688 648125621 820464816 538356963 179867418 681752781 841241597 504849900 764139323 533793277 483472634 156928891 239675724 364696701 915701737 187793820 504729803 770264270 595763329 726669059 419941321 496923498 470982546 8008611 811577638 920865908 287594427 831513740 887358845 189835469 925069303 937199100 782754358 366978544 732193521 667221044 92556899 815180548 504729803 464977696 6327253 702289368 348243412 963620440 663017649 873427593 515658630 376826498 310052566 954853359 793202797 918343871 40074510 775428441 136512401 935157451 340317010 428348111 405529681 770144173 280989092 565018497 136032013 550726954 627348840 12572297 706252569 999289249 495001946 214695548 273422981 424745201 82228557 636236018 709134897 54606247 117897366 482151567 46920039 369380484 215896518 543641231 358691851 650167270 55086635 798727259 548565208 525506584 924228624 102765144 588197218 450686153 55086635 810977153 188034014 340797398 903692037 586756054 630951750 147080937 30827041 578829652 720063724 403728226 756693309 103245532 557332289 198242259 398203764 742281669 613297491 176384605 260692699 912459118 615699431 958576366 586876151 785156298 725708283 834516165 185752171 866822258 783234746 332630802 211452929 216256809 131468327 153806369 264055415 229587576 937799585 772786307 896246023 400245413 723066149 245200186 655691732 315817222 672385215 178186060 589998673 143237833 278947443 439517132 172781695 671064148 239915918 606932350 221901368 340317010 642481062 131228133 150563750 177225284 89794668 552768603 583753629 490678454 210251959 303567328 255048140 639358540 152965690 263815221 147201034 392439108 811937929 177465478 236192911 394841048 724147022 500406311 187433529 329628377 108049412 110811643 385113191 129306581 653289792 769543688 689799280 529950173 941162301 165455778 210852444 587116345 119698821 21099184 113333680 660976000 176744896 712257419 798607162 471583031 317858871 783114649 253967267 305128589 582072271 149242683 888920106 373944170 954733262 439156841 505090094 345481181 852410618 521903674 851569939 453808675 884956905 708894703 599966724 834035777 580390913 964581216 750928653 774467665 384272512 179387030 485874574 891802434 679230744 373944170 127985514 223222435 901890582 373824073 626868452 944404920 704571211 790320469 570182668 484553507 78145259 623986124 164735196 778911254 211933317 91476026 488756902 945005405 775908829 714058874 127264932 236673299 426186365 808575213 534513859 929512892 290837046 231629225 535714829 4525798 626027773 81868266 393640078 331069541 732553812 105887666 848447417 515058145 914740961 736517013 274023466 764859905 175904217 900449418 135671722 175063538 263695124 901770485 28184907 414176665 79706520 118377754 869944780 902010679 848327320 357010493 365777574 37552473 651608434 101924465 366978544 990402071 779271545 347282636 482872149 464977696 20738893 786477365 602128470 60370903 162933741 162333256 942123077 580270816 873667787 808094825 846405768 34790242 583753629 112372904 834636262 567420437 301525679 131468327 458732652 917022804 685355691 956895008 438075968 861537990 474585456 600447112 249763872 69858566 84990788 416458508 666620559 261653475 370221163 8248805 573545384 583753629 830312770 179987515 248803096 328067116 128706096 196320707 377186789 68537499 943444144 789479790 997367697 524906099 115135135 180227709 651128046 18457050 651128046 414897247 995205951 574025772 989201101 445762176 33108884 844604313 610295066 32028011 617140595 376826498 75022737 492960297 614618558 107208733 550126469 906814559 370461357 5126283 918704162 244479604 450325862 633473787 553369088 34069660 437475483 2724343 725347992 177345381 674426864 499925923 46920039 460774301 735676334 882194674 547964723 119218433 840641112 152845593 140475602 313054991 452847899 410693852 1883664 954853359 887599039 411894822 179266933 196320707 849648387 926870758 46559748 63973813 587957024 5126283 750928653 233911068 651968725 912579215 366137865 311974118 134110461 363976119 638037473 531511434 541839776 187193335 164615099 738558662 468460509 755972727 138433953 728470514 831273546 466298763 730992551 894084277 493440685 861537990 200283908 100483301 859856632 898047478 764259420 378748050 806053176 863699736 141556475 823347144 644642808 727749932 600567209 888439718 960738112 748646810 352566904 881834383 514337563 819383943 242678149 164374905 109010188 710215770 978872759 809175698 657252993 805692885 704210920 650887852 972387521 307170238 167617524 948848509 834275971 629270392 51363628 959176851 437355386 633353690 296841896 727029350 889400494 984877609 172901792 679470938 673586185 725347992 376466207 893844083 304047716 847846932 148522101 443120042 688238019 383672027 873427593 123782119 603329440 44518099 457051294 439877423 72140409 144919191 788038626 346802248 415617829 637797279 464617405 626628258 777830381 168938591 822506465 508813101 932395220 890481367 702169271 555891125 945966181 502808251 408051718 706492763 775188247 666620559 634314466 994845660 531991822 503168542 352807098 589278091 698326167 12452200 97961264 125463477 17256080 518661055 37312279 614258267 833795583 210852444 861898281 560574908 755972727 587356539 735676334 316417707 928792310 280628801 690760056 446843049 936838809 954973456 223702823 177585575 863339445 401686577 919304647 278106764 827430442 245200186 189475178 478188366 222261659 967343447 392319011 678390065 369860872 684875303 437835774 366498156 808214922 690639959 928071728 609694581 107448927 516018921 520342413 426906947 148161810 113573874 318699550 72500700 736997401 397002794 41755868 664458813 580751204 219139137 673706282 627589034 84270206 694483063 803290945 448284213 853971879 559494035 193198185 418740351 344280211 588557509 620743505 281709674 409733076 501246990 187913917 282430256 638758055 140355505 348003218 724267119 175664023 698566361 772906404 700728107 963380246 437715677 953051904 672865603 872106526 826349569 743842930 735676334 107328830 95078936 307410432 749247295 734475364 108890091 247001641 378147565 317978968 24581997 488156417 60851291 893603889 722825955 299484030 264415706 319300035 667461238 719463239 539557933 654971150 366017768 191636924 83789818 259131438 757533988 232950292 549045596 631071847 874868757 875709436 129546775 302966843 878231473 653529986 283631226 236913493 845565089 331910220 946566666 221420980 359772724 658093672 42116159 834996553 921826684 623265542 411534531 176384605 172901792 873667787 559373938 827190248 863099251 434112767 100963689 180227709 876069727 995806436 191636924 959897433 6207156 326265661 363015343 776149023 314376058 462455659 170259658 935757936 270180362 660615709 656892702 485514283 106488151 541719679 682953751 453208190 330469056 956414620 398443958 417539381 861417893 936838809 645483487 767021651 917743386 227545927 526947748 150203459 107088636 156448503 43917614 845565089 908856208 40554898 879672637 20258505 47880815 167737621 728950902 412375210 119578724 865501191 960978306 915941931 835116650 765820681 302006067 442759751 482391761 533072695 883155450 53405277 803050751 176144411 690880153 598765754 294560053 871866332 289155688 688478213 583873726 801729684 773626986 481310888 678990550 63493425 970465969 440958296 568741504 156688697 145519676 963500343 178186060 540158418 728590611 415017344 12212006 315817222 373223588 336954294 121019888 210972541 732433715 620143020 721504888 400125316 279187637 794403767 59410127 946566666 31067235 564297915 491158842 766781457 246040865 941042204 580270816 323383333 817462391 818303070 455369936 363495731 145879967 731352842 854212073 817222197 252406006 140835893 302726649 169178785 89314280 109730770 762938353 930473668 363015343 872947205 658453963 723546537 504609706 273422981 598285366 476146717 631191944 882554965 873307496 736877304 352807098 319900520 657373090 105527375 566219467 387274937 277986667 189355081 227545927 477828075 573305190 750688459 299724224 985117803 424264813 247722223 361574179 820224622 486835350 91836317 507732228 34309854 601047597 540879000 610655357 49321979 536435411 250724648 446482758 815180548 890241173 461855174 239075239 761977577 724867604 69017887 543160843 983916833 920745811 305608977 985117803 612576909 331069541 201484878 231389031 238234560 947647539 723786731 591199643 857334595 696164421 999409346 341638077 632392914 627949325 88473601 513977272 169178785 431951021 598525560 822266271 277986667 936598615 75383028 833915680 961578791 418259963 668301917 361213888 565138594 958336172 829712285 426786850 182749746 549165693 669382790 980794311 713578486 108649897 409853173 753810981 155007339 33589272 497764177 809295795 302606552 989681489 10890939 984277124 211573026 411174240 421382485 54966538 873067302 118617948 516979697 545202492 421742776 976951207 423544231 410453658 158850443 775428441 299844321 112853292 846766059 818062876 562376363 711656934 630111071 862138475 536435411 327586728 900809709 931434444 310532954 789119499 694362966 145759870 324224012 975870334 416938896 96039712 637677182 554810252 121139985 56287605 368419708 873547690 448284213 378507856 634434563 873667787 798487065 585194793 735916528 685475788 781553388 94838742 327586728 654610859 465938472 479509433 742161572 576307615 333231287 790920954 431830924 672745506 239075239 660255418 187313432 21339378 865981579 706372666 142277057 990642265 509773877 796445416 211212735 103005338 946206375 835717135 480109918 308371208 131708521 3324828 274383757 946566666 531391337 979833535 918223774 977791886 903812134 8008611 478548657 433512282 444921497 703490338 795965028 647525136 679831229 507251840 239195336 776869605 853731685 56888090 163053838 369740775 249283484 306209462 613537685 111652322 940922107 942483368 449004795 698206070 228386606 174222859 779992127 152485302 651368240 297922769 775548538 588437412 44998487 519982122 845324895 499685729 790920954 624586609 86431952 888679912 80787393 784916104 694843354 36831891 153205884 454889548 969385096 769543688 782994552 369140290 664939201 322302460 710696158 980914408 276905794 379228438 442399460 237754172 63373328 628069422 670223469 249643775 4765992 307530529 989801586 398443958 480350112 212413705 101203883 430870148 448884698 311733924 102765144 739879729 194279058 939240749 450085668 152605399 372382909 878711861 966382671 158610249 14253655 529109494 908495917 449845474 209651474 298643351 118377754 205928467 244479604 2964537 417179090 496202916 607893126 743842930 166776845 301525679 618341565 294560053 936838809 385713676 97480876 631672332 839560239 251565327 241717373 606451962 816141324 478548657 968424320 724147022 454168966 384872997 205087788 159691122 725588186 349924770 786837656 725708283 240156112 152725496 223102338 159210734 8008611 460894398 93757869 76944289 588677606 502568057 202306 551087245 10410551 642841353 369140290 626388064 957015105 390517556 73941864 378507856 241357082 707453539 157529376 879312346 848087126 673826379 125583574 155367630 339836622 69858566 643081547 988240325 649446688 34670145 928792310 28545198 81507975 150803944 777830381 227065539 380909796 414296762 67816917 514457660 582072271 42236256 159450928 396282212 345000793 268258810 63853716 537636381 686916952 976350722 281229286 378387759 749607586 849648387 577628682 30226556 166176360 519381637 246401156 882074577 535114344 111171934 846645962 198602550 433151991 488516708 230428255 919064453 484433410 102885241 343079241 199803520 824428017 221661174 899128351 293959568 214935742 58089060 51243531 891442143 612937200 897326896 35150533 733034200 453208190 654250568 605851477 503769027 568741504 593841777 237273784 418620254 527668330 595282941 836077426 366738350 813859481 49802367 36831891 938760361 8488999 810977153 161612674 263815221 88113310 592760904 211092638 733994976 728470514 187553626 475426135 275584727 145039288 244839895 640799704 176985090 601407888 328307310 297202187 610415163 262854445 392078817 302366358 677068998 637316891 336113615 3084634 984517318 444321012 55927314 271861720 919905132 412135016 197641774 400485607 471943322 187313432 148522101 350405158 487435835 963500343 44758293 611616133 830793158 565018497 984637415 572704705 664098522 513136593 172301307 691000250 826109375 806533564 382471057 808815407 910777760 642961450 46559748 264175512 963380246 660615709 521543383 969144902 793803282 30706944 968184126 755492339 440838199 770744658 500526408 374784849 622544960 566339564 143117736 783234746 203646624 445041594 629510586 150563750 350044867 195119737 410453658 297442381 414657053 485754477 640319316 684755206 627709131 945846084 488156417 851690036 938159876 457771876 32148108 656652508 601167694 246761447 229587576 531271240 190916342 993164302 481310888 68417402 637677182 227786121 793563088 498244565 938400070 425705977 472303613 679110647 235832620 431470633 633593884 639959025 329268086 727629835 936118227 63373328 860216923 346802248 145159385 853011103 453208190 651248143 761497189 970826260 89794668 40915189 199803520 992563817 246040865 220820495 9089484 860817408 462095368 491158842 627949325 954252874 822746659 707693733 298403157 515298339 142156960 44998487 802791 765820681 102645047 386794549 469541382 226224860 983316348 699767331 477587881 399044443 130387454 220700398 761256995 145279482 971787036 446362661 898047478 809535989 147441228 952331322 69978663 874268272 298162963 752489914 571383638 549045596 519862025 725107798 261173087 253126588 546763753 298042866 953292098 482511858 386314161 756693309 753690884 829472091 597204493 178426254 660495612 783715134 772786307 952571516 729431290 612456812 821905980 81027587 874988854 494641655 502087669 990522168 383191639 115495426 477587881 560695005 780352418 968544417 356530105 327106340 271381332 244119313 679350841 989441295 903331746 417299187 672145021 640559510 475906523 389436683 663978425 571023347 355809523 395801824 975750237 725708283 918584065 474225165 476146717 648726106 352687001 519862025 879552540 530790852 899848933 372743200 920505617 978392371 405649778 681152296 890841658 833555389 936118227 870184974 223943017 756092824 344880696 568501310 406490457 952331322 138313856 112853292 308851596 5606671 341998368 90875541 598045172 192717797 936958906 545562783 465217890 401206189 673706282 25062385 222021465 60491000 572944899 575346839 13412976 285792972 621704281 785876880 5246380 767141748 992443720 463656629 501607281 490798551 967583641 391358235 582912950 195119737 127264932 578469361 719703433 777950478 780832806 692201220 591559934 842322470 113333680 842562664 327346534 592520710 493560782 921706587 370221163 382110766 489357387 932995705 270660750 656412314 702289368 37912764 55687120 642961450 538477060 732673909 103005338 957735687 3444925 274503854 494641655 811097250 685115497 903211649 620743505 48000912 758494764 409492882 103605823 367819223 745524288 896486217 906694462 59770418 928672213 376586304 10770842 999289249 312094215 871145750 525986972 777229896 444080818 393640078 476507008 114894941 536075120 589638382 192477603 178065963 271141138 555530834 20498699 234031165 268619101 980193826 795124349 761377092 363495731 729311193 57728769 153205884 200884393 399885122 395561630 834996553 961578791 896606314 656412314 784435716 610295066 443120042 396162115 865020803 92797093 260812796 195480028 979233050 678510162 780832806 844244022 737597886 969505193 99402428 514217466 35150533 491999521 770264270 287234136 348243412 308371208 62052261 739519438 265976967 196080513 47040136 292278210 806773758 494881849 99162234 985598191 337794973 386674452 28425101 802690460 668782305 97240682 236793396 556251416 470141867 662056873 413456083 73101185 454168966 108169509 595763329 934917257 679591035 809415892 250844745 591800128 548445111 257209886 360853597 801489490 320501005 107088636 350765449 651007949 18937438 959176851 961218500 915941931 372623103 339836622 228026315 829952479 623025348 215055839 190916342 809055601 120419403 61451776 630231168 530550658 336113615 939480943 807254146 226344957 45238681 660135321 21099184 897927381 869824683 703610435 955093553 568381213 366017768 629270392 387995519 977071304 133630073 554449961 348963994 413215889 884596614 384632803 34189757 894684762 107689121 844484216 186953141 620623408 40915189 939480943 575947324 573905675 132669297 825508890 200764296 524545808 677669483 707573636 492239715 191877118 658093672 348483606 293599277 856974304 403247838 669983275 273422981 568501310 402887547 27584422 782394067 436634804 57608672 604050022 296601702 976350722 178186060 637917376 706372666 326025467 112733195 466298763 972507618 98681846 657733381 120179209 743722833 692321317 867422743 297802672 555290640 477347687 12932588 994725563 204727497 22780542 425826074 588437412 417058993 929392795 256729498 97600973 139755020 451406735 416578605 549525984 571263541 24341803 93637772 635395339 550847051 449845474 4886089 441919072 112733195 541479485 434232864 38393152 523705129 47040136 312454506 289275785 555650931 654851053 657252993 55567023 71539924 564057721 419581030 51723919 14493849 40674995 460894398 696284518 348603703 196921192 840040627 798126774 276065115 330829347 162213159 575346839 832834807 407571330 835116650 91956414 284832196 330348959 535234441 866341870 540758903 441558781 868023228 457651779 485994671 575346839 991603041 171820919 194759446 91836317 297202187 504849900 681392490 458732652 394841048 174463053 138193759 701448689 405289487 508332713 355929620 233790971 906694462 677669483 726188671 805692885 324944594 279187637 843643537 938760361 307650626 633954175 347522830 179627224 858415468 866461967 555530834 680912102 682593460 118257657 413696277 39954413 256008916 282190062 533432986 2003761 424745201 627348840 562736654 14974237 547724529 352566904 359652627 163774420 848207223 349324285 123061537 569822377 291437531 767141748 656892702 250244260 17496274 571263541 660015224 483352537 565498885 128465902 228866994 62052261 798967453 557092095 371302036 516259115 665899977 525866875 86792243 882915256 357731075 436995095 191036439 525626681 477587881 399284637 622424863 709735382 968784611 886758360 551807827 362775149 978272274 679951326 952451419 329508280 68777693 464137017 275584727 81988363 390157265 726188671 889400494 158370055 454769451 829231897 69017887 106608248 554810252 485754477 654130471 183590425 625787579 355329135 102404853 17256080 276065115 610415163 625187094 262974542 112733195 604770604 484193216 201725072 617260692 941402495 341517980 46079360 838359269 793683185 290476755 841962179 353047292 987159452 561535684 964100828 325545079 731953327 565859176 918223774 978152177 321461781 837038202 576788003 641400189 795604737 888439718 262374057 105287181 936478518 268619101 566819952 352566904 330108765 866461967 183350231 233430680 329628377 351005643 752850205 746244870 289275785 380429408 611616133 47640621 236192911 191877118 32508399 87512825 158490152 187073238 143237833 733274394 426666753 237754172 543881425 456450809 30226556 907415044 489357387 853971879 517940473 477227590 466298763 715740232 957855784 93157384 937919682 638637958 551327439 848087126 385473482 403968420 587236442 870305071 957975881 677068998 872466817 192357506 59770418 675507737 496323013 739039050 397002794 295160538 327106340 51603822 932395220 484553507 496443110 959056754 666980850 843523440 800048326 817342294 693882578 467139442 399284637 100723495 111051837 631312041 967823835 127144835 981514893 4525798 390517556 953652389 716100523 270660750 554570058 372382909 144678997 674306767 883876032 583753629 697005100 639358540 370101066 189715372 985357997 433272088 343559629 368179514 234991941 375745625 513616981 108049412 639238443 751649235 93998063 564057721 960738112 902250873 987759937 120059112 613177394 928191825 743122348 417419284 988000131 179507127 77064386 125343380 505210191 434232864 628910101 333231287 169779270 171460628 681392490 880873607 648726106 750808556 945245599 382350960 853371394 670463663 636476212 97360779 431350536 133509976 323023042 887599039 839199948 455490033 540758903 13773267 936118227 27824616 32388302 255768722 845444992 292398307 764379517 630471362 452847899 447803825 950770061 144799094 786597462 800408617 725227895 713458389 454649354 983796736 462936047 29866265 712017225 453568481 639838928 964461119 38032861 371061842 130867842 855413043 610535260 285192487 954012680 205808370 922427169 324584303 471823225 24461900 159450928 620863602 945966181 74542349 841842082 780112224 318219162 343199338 239075239 880513316 420902097 459813525 795965028 879552540 384872997 673586185 790800857 628910101 602368664 734835655 769183397 609334290 980674214 387755325 892042628 852170424 56888090 693642384 355809523 21219281 370821648 410453658 823467241 197161386 41755868 548445111 810016377 946926957 756933503 563577333 225384181 703370241 412855598 884716711 955093553 524185517 702169271 720063724 897567090 897687187 832594613 198722647 452727802 872947205 329988668 997607891 8849290 51123434 955573941 127505126 667221044 483953022 741681184 573785578 435313737 55326829 66976238 664098522 993524593 902370970 75142834 640799704 993524593 441678878 756573212 439397035 9569872 184190910 797165998 25422676 615459237 666980850 901650388 842082276 841361694 49081785 542440261 123662022 546403462 957735687 581351689 631912526 402887547 674546961 966022380 192957991 216376906 33469175 582792853 317618677 530070270 764379517 222982241 630711556 562136169 561415587 917262998 277025891 781793582 631912526 455009645 697725682 712377516 152485302 841001403 812658511 54125859 775908829 345721375 793082700 173382180 223102338 919905132 628309616 82348654 28305004 491999521 722705858 821185398 255408431 546883850 370101066 80547199 304167813 769303494 582552659 468100218 23981512 842562664 173021889 526707554 442759751 683914527 220340107 794764058 972747812 337074391 258050565 877630988 742041475 668662208 563096945 620863602 422583455 960858209 780952903 862018378 906574365 369500581 618341565 416218314 801249296 318219162 832354419 493800976 875829533 330709250 271621526 335513130 357610978 799808132 508693004 164975390 970946357 571263541 583873726 365777574 118738045 668181820 625066997 414897247 414657053 13653170 96159809 715620135 436874998 378147565 256249110 800528714 84150109 555290640 602728955 88713795 151284332 176144411 34910339 688598310 336594003 463056144 255648625 788278820 515178242 323263236 657132896 549646081 745884579 239555627 826109375 531511434 999289249 730752357 995566242 484553507 21939863 316777998 280868995 609814678 883275547 910297372 91355929 80307005 913900282 24221706 710816255 307890820 68177208 49562173 94478451 875829533 143357930 820344719 807734534 530670755 139875117 415257538 678630259 862979154 933956481 201965266 719343142 585434987 17616371 219139137 487555932 870425168 154647048 852770909 707453539 462936047 513616981 656412314 199203035 665419589 829111800 375145140 284832196 150323556 697365391 915821834 563817527 947527442 828511315 622785154 320981393 155848018 355689426 327586728 296361508 75623222 115615523 969745387 509893974 59530224 412855598 254567752 414777150 798366968 450926347 108049412 530550658 763298644 799447841 260692699 606211768 921826684 348483606 571143444 565739079 529469785 357490881 261052990 666980850 316657901 678149871 858055177 201484878 264415706 233670874 160531801 428228014 883635838 768703009 693402190 795004252 391718526 192117312 710215770 926150176 673586185 345961569 660495612 892162725 142156960 87753019 632032623 533673180 426786850 207369631 571864026 193918767 585795278 583393338 533793277 565378788 917262998 608373514 174703247 775428441 291797822 390757750 384032318 592400613 570182668 140475602 369020193 237393881 873187399 959777336 389556780 744923803 878111376 727509738 82468751 636596309 172781695 998088279 500526408 49562173 802089975 914260573 1763567 173742471 320140714 332991093 14133558 832234322 409733076 854932655 640319316 112973389 968424320 517460085 747565937 979953632 126304156 599246142 247722223 494401461 517700279 199563326 343919920 469060994 761256995 422223164 558293065 442639654 974068879 698566361 755132048 189114887 438916647 705291793 768102524 394120466 12812491 373824073 760536413 38273055 159450928 252526103 814099675 286153263 298883545 270540653 10770842 616540110 838119075 800168423 947887733 685115497 516259115 722585761 453928772 854452267 280628801 465938472 423063843 193198185 800768908 671784730 568621407 836077426 336954294 182749746 957015105 923027654 151044138 241357082 184431104 852650812 471703128 316417707 873787884 62892940 412855598 198002065 249043290 245920768 626508161 485394186 410453658 421622679 371662327 482992246 671304342 424505007 996647115 344280211 993164302 888439718 483112343 563096945 973948782 386314161 788398917 568981698 296241411 579069846 239195336 470982546 461014495 643201644 885317196 586515860 479029045 811577638 998328473 130027163 658093672 618942050 897326896 917863483 348003218 530670755 307410432 571623832 834636262 345481181 660135321 678390065 470021770 741561087 771225046 900569515 741561087 986198676 359532530 525866875 439036744 776389217 887478942 976951207 693161996 288675300 870905556 337074391 629630683 994725563 63493425 576908100 330709250 822266271 219139137 936238324 937799585 502568057 764019226 526347263 798607162 777590187 329027892 545802977 197041289 494281364 51363628 301885970 660015224 552768603 99402428 70819342 650647658 670103372 319300035 491639230 146120161 168458203 488396611 51964113 650167270 620743505 474945747 264055415 195960416 980554117 590839352 110931740 397963570 436874998 804371818 783715134 373103491 879192249 510254265 697965876 73461476 540158418 290116464 72740894 300685000 980434020 553489185 884356420 595763329 712257419 717541687 997727988 24221706 796565513 504009221 264775997 851209648 152485302 366858447 413456083 120299306 147441228 349804673 787077850 373103491 786717559 950890158 147921616 323503430 696764906 584474211 70218857 475666329 971546842 304167813 307170238 563217042 582312465 187553626 508813101 638758055 308491305 146120161 237273784 812058026 391838623 858415468 586395763 540278515 999289249 887358845 510614556 320501005 191036439 837518590 91716220 568861601 381870572 357490881 902611164 974669364 151164235 977671789 457531682 722225470 869944780 206649049 111772419 975029655 316537804 815540839 486354962 463896823 333591578 61571873 476747202 364576604 100243107 198002065 495122043 766541263 927231049 841842082 104086211 581111495 234511553 808335019 476507008 817342294 466779151 539798127 249283484 923267848 33709369 438916647 210372056 15694819 111772419 196440804 267057840 652809404 210251959 268018616 109370479 266457355 683794430 834996553 758374667 58689545 573665481 117176784 469901673 158850443 950289673 859256147 179627224 76944289 79586423 861537990 368659902 377426983 81748169 599846627 11851715 601167694 243038440 56407702 376466207 828991703 954733262 118017463 100002913 235592426 386073967 57368478 333951869 75503125 923387945 178186060 415377635 307770723 957375396 665179395 4045410 976470819 119458627 224303308 161732771 627829228 834876456 739039050 594802553 374184364 846886156 757293794 684515012 516018921 458732652 538957448 281229286 319300035 692681608 480350112 733274394 853011103 286393457 812418317 287594427 765460390 968184126 471222740 382471057 495722528 527428136 867662937 38273055 669983275 808214922 48841591 114294456 977551692 692081123 731112648 601527985 202325557 823467241 514217466 90515250 905973880 2364052 596964299 975510043 957735687 953172001 297922769 388836198 897446993 84870691 537396187 309812372 490918648 801609587 973348297 475065844 495242140 25062385 922307072 931914832 692801705 44518099 105647472 741681184 335753324 272101914 238474754 22300154 751288944 834275971 281109189 202565751 983196251 303447231 738918953 299003642 46920039 903571940 153926466 838359269 828991703 52804792 58929739 837398493 870064877 434473058 36711794 855292946 285312584 513977272 639598734 44157808 37552473 579310040 383551930 352086516 245920768 531991822 4165507 350044867 640199219 825148599 956294523 879312346 794643961 385473482 336353809 426426559 724147022 334792548 605971574 302606552 239435530 496082819 191516827 805812982 543040746 44878390 169779270 747445840 699286943 954973456 473984971 724507313 26863840 950649964 928071728 442399460 661216194 920505617 482151567 339236137 332630802 245080089 591800128 317498580 691360541 331790123 949929382 118738045 514817951 513376787 498724953 759575637 446002370 661576485 697485488 122461052 730031775 421262388 451767026 779391642 165095487 305488880 549045596 995806436 440958296 728590611 155848018 297442381 363135440 85711370 738318468 302246261 707813830 809415892 852650812 14613946 190075663 269099489 878831958 779271545 587236442 825989278 811097250 256969692 552048021 986799161 612336715 93998063 268739198 801249296 864540415 363375634 426786850 469181091 423784425 932875608 959176851 752009526 474345262 562856751 251445230 908495917 422343261 603329440 930473668 448164116 347883121 959537142 489837775 698085973 531871725 869224198 286993942 602728955 880633413 81868266 319540229 314376058 145279482 616540110 691120347 873187399 408291912 682353266 683914527 319300035 304888395 963380246 231268934 391718526 642481062 667821529 838599463 170980240 962179276 440598005 83789818 551207342 114054262 120179209 115615523 620503311 555170543 779151448 948488218 767982427 547844626 963620440 613537685 651968725 123421828 66255656 844123925 960858209 556011222 559133744 936238324 440718102 580631107 531511434 58209157 793082700 841842082 957495493 532712404 209171086 895885732 238594851 31787817 297802672 331429832 302846746 453328287 785636686 620863602 245680574 382350960 120539500 711176546 752249720 321581878 18577147 553008797 122461052 435674028 689919377 140235408 965902283 806773758 534754053 228987091 548325014 77184483 132188909 242317858 768823106 311854021 34429951 147921616 712017225 463176241 662657358 940201525 243999216 561895975 585074696 515178242 983796736 740360117 243999216 583153144 181909067 705171696 398083667 373103491 523104644 65535074 121980664 625066997 752369817 733394491 164134711 40554898 61691970 49081785 345361084 17736468 858295371 383191639 228026315 709975576 558172968 559854326 261413281 118738045 598885851 290716949 409492882 802089975 761377092 203406430 620743505 588557509 893243598 467860024 199923617 299844321 111292031 577148294 721384791 235472329 911978730 465698278 76583998 566699855 748286519 920986005 170740046 390757750 667341141 98561749 517099794 338995943 850008678 157769570 874148175 429308887 530550658 800288520 823106950 363615828 219619525 255288334 278947443 241236985 601287791 999529443 371422133 794523864 566339564 714299068 802210072 626267967 655331441 82228557 912819409 517700279 437355386 815060451 219019040 792722409 101323980 269699974 872947205 209531377 544001522 228506703 370821648 18697244 149843168 709735382 804131624 705652084 652208919 839320045 15935013 567180243 121860567 201244684 431710827 675507737 446242564 510494459 474705553 712497613 196560901 64694395 673586185 774227471 954613165 247482029 226945442 149602974 285312584 531271240 294920344 748406616 696885003 369620678 810136474 193438379 216376906 80787393 938640264 385593579 92436802 250244260 744803706 307530529 24822191 415377635 558052871 850368969 73821767 418259963 377907371 674306767 79586423 277145988 851209648 753210496 501847475 696644809 559734229 811937929 580871301 841241597 624106221 298523254 982355572 43557323 793322894 788278820 177825769 665299492 703610435 2003761 633954175 768462815 347042442 645123196 35991212 624106221 487676029 865501191 810736959 441078393 159691122 608013223 598765754 912098827 767622136 2364052 120539500 153686272 535234441 642961450 949809285 633353690 222621950 84270206 7768417 104686696 352807098 734715558 773626986 6087059 396762600 969865484 813379093 896846508 676228319 756693309 951370546 793683185 908856208 390637653 68417402 605130895 30706944 766781457 671784730 912699312 590118770 290716949 666980850 42836741 685836079 50282755 499205341 834996553 11131133 114414553 553369088 48961688 233790971 280028316 800408617 628790004 537276090 934556966 267057840 501246990 34910339 988240325 19297729 502688154 750328168 790200372 461614980 350285061 87152534 96279906 655211344 400365510 430870148 958936657 616540110 233911068 63613522 90275056 941402495 560935199 704931502 663858328 566459661 122340955 623145445 275344533 226224860 945365696 857094401 208930892 956054329 683554236 795965028 397242988 348963994 364336410 375265237 343679726 119578724 201244684 513496884 719223045 2604246 684755206 752129623 514337563 529709979 645483487 845805283 201484878 655931926 196801095 356410008 222982241 230308158 911138051 840160724 766421166 636956600 547484335 348963994 985718288 35150533 698326167 679470938 219379331 885677487 616179819 936958906 244599701 786957753 506170967 691480638 992443720 5486574 589878576 414657053 932034929 942002980 385113191 157529376 642961450 313175088 37072085 285072390 509173392 452727802 433151991 281949868 296481605 803651236 211693123 227425830 738198371 954252874 112493001 26143258 700127622 787318044 599606433 486354962 356049717 855773334 651248143 381990669 231749322 417058993 171700822 21579572 604890701 466418860 423544231 847366544 376226013 786597462 109610673 660976000 885677487 797286095 168458203 221060689 325064691 29866265 656652508 747565937 216136712 504489609 592280516 410813949 319540229 369620678 642120771 313895670 568621407 578109070 887839233 435433834 122461052 370221163 35030436 269339683 910417469 664819104 455610130 83789818 112252807 285792972 470982546 827670636 448164116 139634923 183110037 379588729 8368902 950770061 71419827 840280821 659654933 666860753 594081971 999889734 873547690 630471362 661336291 7528223 773626986 85831467 461254689 492119618 551807827 968304223 2724343 63013037 880393219 96279906 609574484 635515436 559494035 891802434 28545198 809295795 694002675 822866756 122941440 475786426 951130352 638878152 965902283 354248262 85110885 150563750 115135135 762457965 782394067 328187213 267538228 90875541 12572297 799928229 138193759 585314890 774827956 439997520 193678573 744323318 305488880 467499733 681512587 483832925 41275480 307170238 542800552 19537923 398924346 188154111 338755749 589278091 317258386 776869605 152605399 695563936 398924346 269940168 246160962 240636500 817342294 502207766 514938048 926750661 725227895 20138408 969264999 51603822 109250382 783715134 129907066 11611521 707213345 123181634 388475907 166776845 978152177 359412433 538236866 6807641 650527561 980674214 771945628 249043290 983916833 554329864 971426745 68417402 389316586 202565751 178306157 345361084 140715796 957975881 135431528 678630259 646924651 577028197 226705248 757654085 641159995 245560477 631792429 213974966 802450266 995326048 476747202 541719679 656772605 68777693 307170238 651728531 998568667 772185822 904292522 934316772 52444501 55687120 232229710 53645471 393760175 881353995 602728955 871145750 174823344 83669721 839079851 250604551 520222316 517219891 91836317 536795702 271861720 15214431 778190672 429909372 362655052 660255418 408652203 275704824 935397645 196560901 282790547 284351808 632152720 917863483 560695005 971186551 233911068 763298644 829231897 389316586 932995705 992443720 461494883 114774844 637436988 279547928 163774420 523104644 34550048 559854326 168818494 425105492 988120228 546643656 219859719 366738350 575346839 390397459 965061604 382831348 416578605 558533259 975029655 357731075 511935623 939961331 280748898 556251416 293839471 5486574 550126469 538717254 916902707 333231287 767141748 111292031 349084091 372863297 82949139 87993213 411054143 443480333 596363814 761377092 950409770 3324828 896726411 611135745 852290521 698326167 581351689 236913493 882314771 74902640 752009526 125103186 13052685 664819104 520942898 16535498 300324709 526107069 210732347 923508042 387154840 720063724 519141443 590599158 667581335 188274208 102645047 331549929 7167932 922547266 381510281 128465902 67816917 410693852 223822920 85471176 865501191 13653170 340437107 792842506 743122348 829111800 813619287 141676572 57248381 368659902 973708588 592881001 141796669 972627715 353647777 488997096 509293489 773626986 613177394 343919920 492720103 852290521 335513130 922186975 637797279 535714829 444321012 113934165 852891006 702409465 897927381 140955990 396042018 263575027 898768060 311733924 183950716 370701551 119698821 638037473 613177394 855292946 640439413 977071304 403127741 97360779 259611826 378507856 413335986 225023890 489117193 616660207 466058569 72260506 495242140 916902707 688117922 343079241 339716525 38993637 44518099 236072814 400965995 913780185 902370970 764259420 81507975 665299492 189595275 139995214 773386792 275344533 338875846 404448808 204367206 763779032 69978663 226344957 196680998 45358778 543160843 578229167 921106102 639118346 937799585 450686153 464737502 626988549 85951564 797045901 152004914 600327015 487195641 578589458 353167389 407931621 657012799 264896094 817582488 352927195 435794125 906694462 508813101 44518099 648125621 610054872 1883664 163894517 256008916 415737926 111292031 421142291 584354114 399644928 6207156 340196913 877150600 809295795 145639773 94598548 307530529 714539262 176144411 192237409 799087550 638878152 449725377 521543383 571023347 941282398 601047597 109850867 880032928 803771333 362054567 745163997 155487727 652569210 682233169 861778184 294079665 575947324 601527985 981875184 765100099 354128165 77424677 963500343 234391456 276785697 554449961 716701008 575106645 526107069 524545808 781313194 172661598 215175936 504609706 931914832 947527442 917983580 681272393 437235289 724507313 674667058 29505974 807254146 301165388 345961569 720784306 916902707 503048445 812658511 88353504 704931502 453808675 582552659 697365391 190796245 857214498 719703433 503408736 824908405 582072271 598285366 731713133 606211768 380549505 791401342 565018497 483953022 781673485 10410551 423784425 96880391 630231168 25422676 859856632 970946357 858055177 597925075 510494459 878711861 25062385 949208800 93757869 500286214 504129318 722825955 481430985 755612436 573305190 624706706 765580487 929152601 731352842 208690698 113934165 639598734 253606976 187793820 707333442 366978544 753931078 985117803 176744896 203526527 93877966 901049903 724627410 939721137 627829228 756693309 371181939 56167508 488516708 149602974 719943627 959897433 63973813 917983580 524545808 188874693 766421166 417419284 356650202 158730346 805812982 849408193 259972117 539798127 888439718 520222316 684515012 507492034 427507432 291557628 784075425 851930230 326145564 862258572 782394067 946206375 338275361 471222740 159571025 698085973 92436802 100123010 848567514 404568905 434352961 470382061 691720832 78505550 84390303 671664633 992203526 169539076 392679302 960377821 243038440 451286638 475185941 768462815 904172425 427627529 297562478 928552116 792602312 800408617 572704705 234271359 957015105 569702280 640319316 600327015 912218924 773747083 520822801 737117498 737237595 700968301 704571211 649206494 439397035 642360965 417419284 693041899 641880577 702529562 712377516 53405277 155848018 471703128 868023228 562856751 691240444 288074815 450205765 832714710 502688154 356169814 95919615 500886699 782394067 271981817 203046139 724627410 970105678 505570482 557092095 341517980 367098641 463416435 686076273 439637229 768102524 830552964 330949444 47760718 643802129 63493425 578349264 58809642 169899367 459813525 361934470 522864450 248442805 605130895 882915256 243518828 950890158 12692394 991723138 503168542 506531258 568141019 410693852 149843168 893844083 58569448 926390370 304528104 265496579 947167151 175543926 891562240 586275666 468460509 814700160 732193521 286753748 294680150 348723800 415737926 979593341 516499309 560214617 706853054 730872454 560334714 483352537 130147260 701448689 568861601 884356420 638277667 409372785 882314771 493800976 321461781 818062876 640559510 328427407 580030622 511094944 127625223 402767450 115375329 811577638 599366239 244119313 877871182 553489185 269099489 324824497 418620254 493680879 264295609 166416554 667581335 522744353 288194912 719703433 772065725 348003218 183830619 466298763 43197032 523344838 364456507 785516589 451166541 16655595 187313432 541959873 263935318 434112767 435073543 754171272 838119075 364816798 809295795 11491424 101924465 661696582 801009102 453568481 973228200 692441414 90154959 839079851 790920954 219739622 839800433 103125435 258170662 511455235 68177208 148281907 135551625 945245599 579310040 491399036 436634804 277145988 744323318 601527985 92556899 18216856 221781271 182509552 852410618 621824378 949929382 797406192 46319554 482151567 617380789 536555508 663257843 683794430 67816917 414897247 830552964 601407888 491158842 894684762 339356234 360133015 406970845 873547690 496082819 778310769 28785392 803891430 793082700 225744472 644883002 375505431 894804859 3204731 798366968 344880696 525746778 666380365 228626800 328067116 21099184 227906218 457291488 51483725 772065725 263094639 709615285 11251230 40314704 719703433 53525374 617260692 506411161 9209581 95799518 776389217 370821648 210852444 902971455 934917257 3204731 874748660 991122653 937679488 429068693 807974728 867302646 219499428 962059179 236793396 588197218 159450928 684995400 60611097 348363509 614498461 339716525 387755325 245920768 281229286 611496036 69137984 733634685 200884393 839800433 44638196 647645233 794403767 684755206 498604856 18457050 760536413 883275547 113093486 105287181 926150176 980073729 155607824 736276819 88353504 586155569 687517437 731112648 80547199 231028740 57248381 817582488 827430442 670103372 533913374 86311855 326986243 514577757 235712523 2123858 201845169 645603584 761016801 804371818 949448994 9089484 62772843 210011765 117777269 143357930 189355081 126304156 673466088 651608434 420661903 470622255 518540958 803651236 403247838 536315314 390637653 802930654 964821410 510374362 576908100 289756173 404088517 616420013 369980969 112973389 15334528 935397645 834756359 151644623 628309616 194879543 634434563 194519252 66135559 149723071 342718950 146960840 464737502 696764906 218298458 811457541 519621831 872827108 215536227 826589763 763899129 747205646 442999945 996286824 689679183 230308158 574746354 202926042 47640621 79826617 65775268 485274089 347642927 650887852 470261964 511094944 574986548 860457117 403247838 506291064 941522592 242558052 535114344 843163149 457411585 487916223 328187213 621103796 167737621 35871115 560094520 250364357 554930349 750568362 120419403 656052023 909576790 559373938 872827108 214095063 413215889 38393152 80907490 541359388 362414858 509773877 717901978 461374786 911017954 283631226 301045291 175063538 106968539 77304580 5006186 833795583 254447655 107809218 865501191 660135321 55206732 207129437 692561511 355088941 687637534 844604313 370221163 232349807 852410618 787438141 536675605 361934470 165575875 338515555 971907133 94478451 65775268 380789699 90995638 566819952 644883002 444561206 826829957 79466326 432191215 794283670 937799585 407571330 478788851 215896518 112012613 932155026 729431290 492960297 384272512 329388183 502327863 248923193 586155569 412615404 176864993 277145988 669142596 633593884 739159147 566940049 42116159 749847780 356650202 11371327 513376787 219259234 318819647 977551692 334912645 556851901 506291064 830312770 355929620 398564055 697725682 718742657 842082276 898527866 627228743 485994671 944284823 315817222 847246447 12692394 601287791 589157994 195359931 996527018 426066268 259011341 797045901 737357692 64934589 118858142 546523559 118497851 343199338 482872149 436874998 322782848 225384181 182629649 363856022 418740351 265856870 506411161 614618558 82108460 599246142 362895246 392799399 730512163 920625714 857814983 6807641 443840624 351726225 608013223 550847051 302966843 538477060 30947138 184791395 967823835 346562054 872707011 470502158 264655900 16055110 391118041 773266695 936718712 258651050 553969573 666860753 238594851 205928467 191396730 672024924 310412857 307650626 574986548 600567209 731833230 594322165 150563750 81628072 496202916 240396306 669743081 364696701 428228014 619542535 630471362 150924041 650887852 275584727 139394729 70579148 865861482 47280330 584474211 51603822 127745320 157048988 261413281 977671789 186472753 564418012 385593579 23501124 470141867 497523983 27104034 272101914 800768908 200043714 587716830 144919191 395561630 800408617 453928772 963260149 785156298 880993704 588917800 629630683 234751747 929272698 291797822 105167084 541839776 819984428 833195098 400365510 704210920 658934351 226585151 834396068 834756359 372503006 219139137 229707673 308010917 201725072 115135135 558293065 505090094 334672451 49562173 113934165 358331560 600327015 588437412 273062690 182749746 366378059 281589577 84630497 741200796 422823649 424625104 369500581 477707978 25903064 222021465 124382604 149602974 379348535 733394491 295520829 563697430 234631650 730512163 109490576 133029588 962539567 306449656 409612979 223342532 169058688 906934656 544001522 1523373 607412738 839440142 879912831 623505736 324704400 484313313 243038440 988000131 627949325 398323861 751529138 141196184 56047411 883996129 187073238 315577028 216617100 207009340 732073424 149602974 630711556 155247533 794283670 166416554 904292522 842922955 250964842 506531258 900329321 382350960 2123858 501246990 458852749 529709979 787558238 521183092 63973813 110571449 604650507 78865841 485994671 95078936 938400070 574265966 406130166 329748474 508813101 174222859 674306767 898527866 958336172 826829957 266097064 320501005 844724410 722465664 510374362 572584608 81868266 593481486 396042018 478428560 811937929 166416554 487075544 129546775 755252145 273543078 918343871 336473906 123301731 31067235 237874269 573185093 144558900 920986005 509893974 645243293 571143444 734715558 616900401 608973999 600927500 305729074 313775573 492840200 773146598 491999521 292278210 850729260 288795397 367939320 170740046 898407769 677669483 478788851 400725801 1163082 383912221 703970726 130987939 191877118 776749508 41875965 735676334 820825107 259611826 317738774 360133015 908495917 446362661 970586066 208930892 292398307 73941864 191036439 104086211 181909067 955213650 982595766 939240749 763538838 916662513 677189095 59770418 150443653 385593579 963380246 953532292 402287062 869704586 612456812 449605280 866101676 421022194 605250992 540638806 752489914 643561935 691120347 17976662 645843778 646444263 328547504 355449232 845685186 936238324 761617286 689559086 59290030 950289673 342839047 265016191 721985276 516259115 384392609 762938353 349444382 991482944 118978239 908015529 255168237 647405039 599846627 832834807 300685000 769303494 114414553 365537380 156928891 335152839 63253231 689198795 749007101 739879729 251805521 713338292 427987820 817222197 654010374 5246380 157048988 895885732 735075849 197641774 923868333 935037354 514217466 645603584 835356844 872947205 642360965 564778303 42836741 771104949 63973813 805092400 89794668 842202373 58929739 604050022 970946357 789239596 60250806 746124773 909816984 581351689 645723681 229707673 348483606 260212311 332390608 604410313 453928772 563217042 731352842 739279244 2003761 531031046 606091671 638998249 329628377 982235475 338515555 653529986 444801400 58329254 89314280 119458627 126784544 48241106 694122772 496683304 75262931 295040441 341758174 145759870 330949444 556371513 712137322 60491000 746124773 563096945 909216499 211813220 607652932 484433410 639959025 725828380 447923922 377547080 274143563 22540348 308251111 688718407 697725682 963140052 392319011 585675181 998208376 996887309 411054143 123421828 216256809 170980240 84510400 154046563 492840200 683554236 524545808 245800671 936718712 822266271 874748660 621704281 973828685 424745201 766301069 503048445 649446688 685715982 502808251 139755020 107569024 764980002 130387454 753931078 519982122 454649354 804491915 776749508 709375091 485394186 520822801 851089551 941522592 498124468 212653899 55687120 609574484 44398002 564057721 579310040 436634804 487315738 531151143 415497732 229587576 698326167 475426135 153085787 914861058 338155264 955814135 831633837 865501191 282550353 743122348 545923074 498604856 389196489 956174426 81988363 360973694 490918648 593121195 325665176 496443110 207489728 232229710 47280330 229947867 771705434 921466393 214815645 790080275 74182058 479269239 923147751 357851172 341638077 117056687 18937438 431710827 916542416 902731261 683193945 824187823 597564784 222742047 700367816 53885665 118137560 94598548 839079851 390757750 843883731 641039898 139274632 668422014 396402309 712617710 939240749 185992365 174222859 537996672 554449961 732794006 209531377 797886580 726548962 836918105 48961688 737717983 530430561 447683728 890841658 375265237 321701975 540758903 806653661 741440990 917383095 608493611 170019464 622665057 77184483 589518285 186833044 525026196 505810676 950770061 48121009 902731261 788398917 996046630 516018921 961338597 567780728 837398493 729791581 610054872 586635957 799207647 121980664 188514402 236673299 497283789 423784425 595643232 185391880 398804249 734115073 739279244 345240987 310773148 389316586 849408193 793202797 756092824 561535684 643201644 3324828 306209462 699407040 49442076 351005643 824668211 492960297 667701432 424505007 735316043 933956481 186232559 228626800 351606128 651968725 792842506 333591578 796565513 974188976 679951326 645483487 639598734 881834383 660855903 291317434 859736535 749007101 522984547 739399341 983076154 968184126 519741928 933115802 22300154 594562359 973948782 832354419 938640264 997127503 302966843 154046563 501487184 257450080 418019769 45598972 813379093 963620440 676228319 728590611 902611164 73221282 57728769 633113496 90755444 874748660 889400494 994605466 907415044 978512468 896966605 673225894 287834621 225384181 5846865 385953870 675387640 295400732 792962603 289035591 104446502 108649897 992443720 638397764 199563326 691720832 899368545 157289182 372983394 862859057 261052990 907054753 788038626 751889429 721384791 432311312 903692037 412014919 305849171 603929925 656172120 167977815 343439532 201124587 475546232 716580911 201244684 181548776 646444263 45358778 288074815 697365391 135431528 285792972 816261421 578949749 406730651 464016920 161492577 712497613 201364781 987159452 959777336 486354962 18336953 899128351 823106950 736517013 51003337 927831534 788158723 399284637 406610554 49442076 259731923 884956905 271021041 198602550 788759208 471943322 358811948 590959449 29986362 485514283 717301493 550967148 76103610 895045053 299243836 261293184 202205460 68057111 422463358 196320707 32388302 545442686 450205765 337434682 575587033 84270206 66856141 274383757 148402004 798847356 50883240 382110766 325304885 739039050 298523254 594922650 724147022 886998554 960377821 506050870 707213345 689799280 727149447 196080513 674787155 57368478 113693971 398323861 840160724 452967996 561175393 872106526 36831891 725107798 675988125 283270935 318099065 297682575 25422676 339836622 325665176 828030927 247121738 474945747 627108646 502688154 991482944 162453353 403968420 962899858 42116159 241597276 470382061 442519557 295160538 149843168 960017530 930353571 556731804 791041051 263334833 438436259 296481605 982715863 578349264 216016615 458612555 870064877 419220739 833555389 394360660 376105916 556131319 674066573 278587152 623505736 582792853 174463053 738438565 53645471 290476755 268499004 972267424 676228319 679951326 451286638 8729193 780112224 599846627 611255842 11731618 71780118 764739808 280508704 213374481 571743929 110211158 603929925 142036863 737958177 117056687 215416130 297202187 663257843 538236866 401086092 234751747 851690036 972627715 291197337 467860024 431590730 682113072 322062266 203646624 137112886 512416011 972867909 92917190 224063114 637196794 612817103 685836079 626027773 499085244 526347263 76343804 275704824 131948715 299123739 920025229 576908100 258651050 357971269 178666448 546043171 337674876 354728650 857574789 136392304 918944356 796805707 270420556 113213583 91836317 265136288 174463053 411054143 621343990 958456269 868863907 873187399 649326591 337554779 485153992 328547504 619902826 417539381 177585575 510254265 484673604 340317010 263334833 862018378 866461967 525266390 464016920 829952479 219139137 684274818 78385453 567180243 763058450 172061113 657252993 973708588 761977577 802450266 928071728 715379941 764499614 301645776 188874693 88953989 612456812 119218433 804972303 607172544 230548352 951850934 632272817 875589339 494161267 674546961 705531987 191516827 845925380 324464206 35871115 771225046 275464630 422463358 137833468 224663599 540038321 771104949 257930468 494041170 970225775 940561816 267898519 837518590 48601397 273182787 384872997 629750780 950529867 925309497 639838928 655091247 314976543 922907557 880753510 598525560 547844626 832594613 92196608 145399579 689559086 193078088 361694276 842682761 597324590 438075968 693282093 689438989 420421709 372382909 442159266 241116888 912218924 389796974 175784120 244599701 388596004 173862568 623145445 723666634 30827041 247361932 115495426 454409160 429068693 156688697 823707435 791521439 65174783 232950292 718262269 218298458 906814559 17976662 66736044 518180667 522143868 168097912 345961569 522984547 110811643 878231473 575827227 601167694 959056754 96520100 134470752 222621950 945605890 647405039 286633651 124622798 674546961 706492763 993044205 607532835 270300459 281469480 80066811 427027044 573185093 591680031 740240020 496082819 341638077 599486336 161612674 428708402 25542773 858415468 302366358 764139323 405889972 111892516 695563936 168818494 564057721 392919496 549646081 475786426 521062995 39714219 404208614 633954175 479509433 793803282 328787698 17976662 71179633 773266695 195480028 444801400 626388064 65054686 387034743 623145445 810376668 84150109 935037354 358691851 919424744 344400308 395801824 812178123 379468632 800889005 491519133 78505550 887238748 45118584 657733381 746845355 746845355 772426016 929152601 672024924 150323556 113093486 272822496 561535684 614258267 433872573 777950478 220460204 699647234 167377330 199683423 609454387 605491186 219379331 513977272 5006186 7288029 87152534 763418741 121980664 699166846 481190791 457891973 15935013 19778117 410573755 409132591 793563088 744803706 30346653 654370665 956294523 264775997 498965147 311613827 133630073 144078512 125583574 68417402 110451352 882194674 399765025 726068574 777470090 999169152 987639840 811457541 151764720 223462629 296721799 905373395 517940473 5726768 298162963 323503430 507251840 739279244 197401580 444801400 45478875 124502701 901170000 444080818 205928467 826349569 911138051 9089484 401206189 532472210 217818070 859616438 766421166 176264508 255648625 66375753 41755868 545802977 418259963 121500276 410453658 904532716 204607400 497523983 751288944 169539076 492479909 38032861 34069660 834876456 887238748 210732347 970706163 743602736 113213583 819263846 982355572 460414010 300685000 230548352 27344228 77064386 527308039 6687544 364456507 73101185 518540958 76223707 112733195 263094639 881594189 445401885 939120652 572944899 32988787 506651355 945365696 493921073 398564055 391958720 793082700 288194912 485754477 774827956 382230863 623866027 841601888 625187094 629510586 896486217 417899672 836437717 81868266 605611283 969144902 10770842 732073424 608733805 72020312 746004676 37072085 23140833 892883307 10170357 650167270 733274394 251084939 151884817 233190486 851690036 524665905 533793277 339956719 666500462 983316348 150924041 353287486 610174969 68657596 137713371 190916342 284712099 984997706 419701127 71059536 153446078 244479604 567300340 462936047 30346653 408051718 149723071 727149447 455970421 498845050 784555813 910177275 566339564 364576604 960257724 650527561 766060875 93157384 402166965 556011222 909216499 451286638 795364543 522744353 524425711 727029350 718862754 121260082 883035353 425705977 154286757 387154840 263815221 15334528 810977153 568981698 592640807 947047054 644642808 868503616 123902216 335513130 574145869 842082276 578349264 130867842 234271359 673706282 17256080 229227285 880873607 523945323 688718407 931674638 651968725 654010374 951850934 435914222 128465902 892042628 257209886 51964113 2243955 143478027 542920649 993164302 58929739 813619287 785636686 375985819 452127317 212413705 648125621 950529867 309692275 510374362 119338530 62892940 308971693 725227895 382110766 364456507 599966724 349444382 439036744 372983394 640799704 758855055 243759022 276785697 517700279 437715677 138794244 279067540 905373395 410693852 47040136 512896399 714419165 2964537 501967572 654610859 687877728 46199457 7768417 234631650 91836317 319059841 48361203 108409703 633954175 159571025 26983937 878952055 607412738 672745506 111532225 390997944 29626071 232469904 603689731 970946357 71419827 133990364 102645047 866702161 264055415 722585761 45959263 610295066 621944475 354728650 375385334 631432138 908015529 656292217 379108341 825028502 878231473 261293184 2964537 910537566 198242259 156928891 382591154 161732771 433512282 388475907 888439718 948848509 52324404 73701670 367699126 52084210 266577452 801489490 159811219 434713252 325665176 777950478 809776183 164735196 983316348 121740470 471462934 209291183 483472634 876069727 586876151 676828804 129186484 322542654 938640264 822386368 739879729 108289606 827670636 935517742 725227895 968664514 561535684 284832196 854452267 342959144 627228743 364576604 863699736 796805707 416458508 712737807 5726768 594081971 208570601 687757631 733394491 114894941 516018921 880633413 274503854 342478756 752970302 11731618 466779151 494281364 676468513 490318163 989681489 337314585 411174240 731713133 846405768 39834316 426426559 108409703 624706706 995926533 731713133 83069236 222141562 234271359 4886089 536195217 240156112 655211344 738798856 660615709 596724105 253126588 623025348 255648625 525866875 541479485 248202611 105167084 615459237 344640502 51723919 513136593 462936047 246160962 304888395 906934656 719343142 293719374 218178361 200404005 202805945 418139866 673706282 918584065 560094520 444681303 954853359 488876999 940561816 831033352 444441109 142517251 783234746 896606314 410093367 636236018 772426016 732073424 147080937 668422014 186112462 354368359 953412195 921226199 916662513 203406430 429308887 609694581 353887971 963019955 951010255 621343990 899728836 59650321 630711556 40314704 245440380 703130047 576427712 632753205 182869843 188274208 634434563 979353147 342718950 728230320 939360846 498965147 684274818 768582912 521183092 593241292 650527561 848327320 514577757 139995214 317618677 199443229 445161691 897807284 643802129 42956838 222021465 848807708 205928467 743602736 518901249 184911492 617380789 630111071 520342413 657012799 167137136 217818070 581591883 677309192 837038202 215896518 527428136 628189519 197761871 297922769 153686272 174222859 513616981 130387454 292518404 897927381 639478637 42956838 534513859 837518590 6927738 879192249 748526713 918944356 48000912 446843049 665059298 630831653 882194674 414416859 695443839 400125316 830913255 916182125 973348297 436754901 253006491 573425287 443720527 506170967 885077002 159210734 891682337 640679607 908976305 55326829 673225894 945966181 60491000 47760718 969505193 942603465 722465664 561655781 821545689 723666634 641400189 721264694 863459542 562496460 726068574 161972965 628669907 665779880 104806793 367819223 971066454 191877118 143237833 827550539 901530291 180227709 160651898 945125502 174703247 586996248 481551082 369260387 289996367 981875184 63373328 184070813 373824073 385473482 515058145 202325557 433992670 365056992 709735382 404689002 499325438 553008797 11611521 682473363 837998978 830793158 603209343 675147446 445161691 341517980 471703128 355209038 653169695 745043900 776028926 838479366 63133134 251084939 365777574 614858752 729431290 489477484 933956481 795124349 23020736 160651898 416338411 784315619 797766483 104926890 834155874 646684457 270060265 990522168 535234441 657373090 449365086 668301917 910777760 10530648 917262998 802210072 869584489 302126164 48241106 828391218 8128708 388355810 98922040 596123620 241717373 18216856 528388912 896125926 680071423 583993823 76824192 422703552 757654085 703970726 751529138 151764720 640919801 218778846 128345805 444080818 20858990 133029588 487315738 211813220 311613827 263815221 685235594 924588915 295400732 986078579 235592426 134831043 605010798 164495002 905373395 736156722 181668873 521423286 314616252 282190062 486595156 131588424 483112343 865381094 412615404 986078579 488036320 950289673 543040746 993764787 227906218 362895246 964701313 180227709 686796855 973228200 56047411 928672213 267177937 773987277 497523983 92917190 906694462 611736230 224543502 33349078 985117803 920505617 811577638 156328406 738318468 599486336 188874693 816982003 671904827 712377516 195960416 966983156 11251230 773867180 106488151 431110342 928191825 132669297 814700160 318579453 309572178 443720527 973588491 44998487 810376668 572584608 574025772 263094639 58809642 759695734 897927381 486114768 55206732 575346839 963019955 204607400 564658206 413456083 92797093 796565513 688358116 302966843 773386792 390397459 923988430 173982665 12932588 730632260 411774725 918343871 232590001 345601278 437355386 688718407 736396916 683434139 156448503 752249720 996887309 908976305 585555084 284832196 173742471 520102219 449124892 301765873 608733805 366137865 424745201 167977815 869344295 692081123 704451114 857694886 804131624 499685729 486595156 866702161 391478332 838359269 803771333 565859176 712017225 724507313 726548962 844244022 162813644 97000488 434232864 185752171 473984971 322302460 539918224 694362966 357130590 382711251 346682151 759575637 448164116 433392185 846525865 454289063 896246023 842922955 603449537 501246990 30586847 548925499 356530105 589278091 347883121 865140900 332870996 471703128 146720646 623866027 570663056 743722833 138914341 560815102 940321622 814219772 945125502 259131438 146240258 492359812 281349383 893964180 786357268 726068574 398443958 975630140 524185517 198002065 420061418 271501429 354848747 560935199 639358540 72380603 287954718 452127317 232229710 672024924 430750051 679951326 723306343 251445230 171820919 893363695 917863483 989081004 850729260 447683728 280628801 867662937 302126164 105287181 90755444 268739198 306449656 641640383 739279244 225023890 770024076 79826617 419581030 83069236 49321979 359292336 9089484 169539076 152245108 607652932 970105678 853611588 305849171 69258081 280268510 400725801 269339683 836557814 532232016 162573450 309692275 768462815 462815950 745404191 506891549 743362542 380789699 520942898 886518166 456330712 350885546 440598005 373944170 311613827 943324047 478188366 308491305 493440685 508092519 521783577 559854326 247722223 468220315 16655595 189355081 54245956 19417826 156688697 854452267 674907252 985838385 981274699 180828194 527788427 585194793 306209462 903331746 449004795 399404734 170019464 494281364 673225894 16175207 242197761 468460509 778190672 650767755 706012375 205568176 17856565 889880882 265856870 716580911 906694462 909456693 964701313 971907133 408532106 768582912 648966300 203766721 240156112 711656934 836798008 414296762 671784730 609814678 528268815 200644199 470382061 173862568 165816069 713578486 917142901 706973151 235712523 272942593 314496155 221901368 306809947 105407278 907054753 531271240 332270511 447323437 167617524 982235475 446122467 530550658 753210496 66375753 781913679 460173816 682473363 746965452 277386182 467019345 715980426 501487184 580390913 994485369 91716220 454048869 842682761 510374362 557452386 485634380 86912340 506531258 840280821 650167270 602849052 891922531 800288520 697365391 790080275 1283179 611375939 328787698 322182363 264896094 658694157 691961026 265736773 229827770 813379093 979473244 425465783 938520167 83549624 380069117 136032013 143117736 303327134 184070813 223943017 235472329 196440804 583273241 401806674 906814559 741681184 450686153 7167932 454889548 196200610 339716525 188754596 503168542 611856327 275104339 743602736 168458203 320861296 14373752 844364119 860096826 555891125 826469666 995085854 38393152 978752662 171941016 898287672 948248024 311974118 747325743 358571754 459573331 849167999 13052685 72860991 211813220 179387030 522624256 970826260 594322165 428468208 709975576 558653356 515298339 735075849 142517251 233190486 215416130 124382604 169298882 64574298 222501853 47640621 306329559 450445959 96880391 229707673 402887547 847726835 178426254 534513859 868143325 9329678 182029164 498845050 336954294 882795159 857935080 434713252 737597886 573425287 564177818 453808675 502808251 411534531 261413281 265616676 71299730 611255842 541479485 835476941 560815102 161972965 545322589 721985276 26623646 269339683 642000674 38873540 840881306 617140595 977791886 377066692 708054024 61451776 206288758 630711556 728710708 90635347 73341379 459333137 417419284 147321131 697365391 344040017 183830619 901170000 653890277 400605704 412975695 208450504 676708707 738558662 880753510 713698583 230067964 231268934 562016072 875229048 121019888 484913798 857094401 708174121 519982122 296121314 649566785 186232559 757533988 353047292 454409160 387995519 995566242 994365272 287954718 26743743 355209038 809295795 61091485 974789461 297802672 148161810 458852749 297562478 192717797 705772181 805332594 859256147 492239715 638758055 272582302 569822377 822626562 516259115 917503192 63733619 125103186 665779880 446122467 780712709 34309854 484913798 816021227 322182363 639838928 669743081 905493492 721985276 603929925 151284332 405529681 500886699 65294880 213374481 139154535 892282822 36351503 761016801 999409346 110451352 155607824 581832077 882915256 286993942 269579877 508212616 219739622 813859481 321701975 526227166 604530410 349204188 885677487 334552354 749127198 35991212 188874693 229947867 265616676 600687306 314856446 817702585 961338597 187673723 576427712 742882154 482992246 706132472 318579453 864780609 713818680 797646386 872226623 703970726 463536532 216977391 349324285 17856565 195960416 436514707 461134592 628790004 816982003 264896094 341037592 604530410 279788122 13533073 656412314 714058874 550726954 928071728 284111614 148522101 268499004 842322470 908616014 25662870 100363204 939360846 461014495 765220196 870184974 933235899 357731075 206288758 28545198 160171510 879072152 502207766 230428255 338155264 310653051 109850867 754891854 127024738 819744234 484553507 861297796 849288096 270420556 821305495 134470752 446843049 720904403 475426135 92676996 650407464 599005948 487315738 958336172 519381637 859856632 494881849 967343447 676468513 6447350 726428865 621944475 639358540 817342294 752249720 329027892 519621831 478548657 479269239 109610673 175784120 296361508 625907676 316057416 186592850 444321012 786117074 367098641 920385520 344400308 86071661 138914341 227065539 411774725 567180243 946686763 656292217 722705858 682353266 974909558 77784968 811457541 662176970 211933317 808575213 906574365 891201949 811937929 230668449 907054753 442159266 131828618 237033590 154647048 900569515 326025467 832594613 93877966 434713252 728350417 370221163 855533140 283991517 784195522 434473058 351606128 48361203 83309430 926750661 66615947 448644504 184671298 160171510 166296457 364696701 482872149 488156417 699166846 25662870 474225165 868263422 135191334 716340717 440477908 310172663 537155993 61091485 524065420 216136712 484913798 886157875 839680336 452967996 823227047 341157689 167737621 942963756 3805216 417659478 469781576 237033590 625787579 152004914 857334595 166656748 936598615 20858990 550967148 975750237 669502887 98321555 896246023 1523373 878591764 477227590 974429170 668301917 998328473 769903979 221300883 774107374 366137865 894564665 112132710 664578910 960858209 971426745 397963570 322302460 43677420 658333866 545923074 128946290 200884393 758734958 435313737 318579453 885677487 414416859 995446145 191877118 556851901 817222197 326505855 551447536 906934656 949208800 390037168 978872759 858415468 137713371 568020922 631432138 352326710 520342413 269459780 248803096 779511739 321942169 906814559 210852444 659414739 692321317 855893431 822746659 149242683 176985090 529349688 451526832 775788732 582432562 534153568 362294761 392078817 221901368 8008611 924588915 933596190 205808370 583033047 177825769 567540534 198122162 838479366 287114039 819864331 306089365 963980731 507852325 907655238 450205765 477828075 159811219 418620254 80787393 885197099 700728107 510734653 247361932 909576790 313295185 435914222 228506703 96159809 721504888 620503311 893723986 222621950 538356963 711416740 945005405 34429951 131828618 501367087 623745930 207009340 174342956 143117736 744563512 90395153 731472939 908616014 703850629 842562664 7408126 695083548 863579639 111051837 404448808 912339021 530310464 746244870 905733686 262133863 713818680 401806674 450325862 300564903 208690698 278947443 310653051 429068693 604890701 602728955 930593765 766901554 450686153 756693309 484793701 791881730 683794430 32988787 152125011 873547690 43437226 934677063 143117736 661096097 283511129 699887428 772666210 940681913 722825955 655811829 410453658 887238748 775908829 247722223 199803520 753810981 560935199 682593460 480230015 636115921 262854445 249763872 970826260 703250144 820104525 625066997 438075968 633713981 785996977 761136898 540879000 382110766 683314042 966742962 445882273 721024500 977551692 541959873 771345143 435313737 495122043 370461357 467499733 568501310 392679302 289636076 146000064 924108527 38753443 480590306 105046987 931794735 452487608 707213345 387995519 654730956 352446807 351966419 282430256 264175512 9449775 738918953 465938472 167257233 962779761 61691970 94718645 10290454 392439108 365777574 609094096 415257538 590238867 552888700 593361389 577148294 415377635 254567752 189234984 775908829 43197032 813379093 222501853 543040746 55807217 782273970 647044748 494761752 552048021 721264694 739279244 993884884 566099370 841121500 437595580 222261659 855052752 115495426 478308463 831393643 712257419 38152958 734595461 116216008 279668025 777830381 434953446 235352232 817462391 167617524 378748050 178906642 568261116 870665362 958576366 439637229 663498037 232229710 113213583 65414977 133870267 596243717 317978968 125583574 531751628 366137865 981274699 924468818 637917376 994245175 334672451 621223893 835236747 408412009 117056687 781313194 435073543 531871725 570302765 588197218 513737078 625066997 414536956 822146174 809535989 732914103 466418860 208450504 124502701 155968115 278467055 813979578 415617829 285792972 533913374 911498342 973348297 899368545 984757512 432551506 498004371 772786307 875829533 6207156 250484454 716580911 648485912 439637229 199443229 627108646 877991279 299003642 489717678 144558900 567180243 530430561 51243531 87272631 678510162 305729074 786717559 925429594 715500038 341878271 765100099 696644809 554570058 904172425 980794311 483352537 743242445 80307005 117897366 308251111 283991517 344640502 807734534 604290216 267898519 927831534 161012189 242077664 531271240 451166541 409973270 208450504 380549505 751048750 685595885 697485488 341397883 815180548 911858633 895045053 56167508 189595275 277386182 357250687 549165693 567660631 235712523 391958720 776149023 248442805 614018073 808695310 200163811 176985090 161012189 872346720 760296219 604410313 786477365 548685305 549886275 125463477 742521863 634674757 777229896 543761328 22780542 611135745 231989516 562856751 941882883 393640078 375985819 10530648 225624375 609814678 400605704 917623289 167377330 388115616 90755444 589398188 81507975 893483792 483112343 697365391 9810066 468340412 596003523 95919615 447203340 336954294 594922650 106488151 556971998 852650812 242678149 572464511 403127741 572344414 291797822 31547623 423784425 907054753 974909558 951370546 197761871 593601583 544722104 649446688 259371632 765340293 351726225 262614251 24702094 902010679 717901978 686196370 625427288 832354419 99762719 572464511 925429594 978632565 776269120 805692885 268378907 561655781 671544536 124382604 971186551 571984123 775428441 878831958 682953751 59530224 705411890 162453353 71780118 479389336 4285604 224663599 956895008 263695124 877991279 960137627 409252688 51123434 922907557 868503616 697845779 339356234 269459780 23861415 830552964 216857294 211573026 76824192 30466750 752730108 866221773 738318468 482151567 601287791 458732652 600927500 686916952 704331017 115255232 696524712 909937081 287834621 323863721 988480519 331910220 97480876 525626681 884476517 857574789 32628496 751409041 527308039 626027773 405889972 958576366 122340955 590479061 768222621 89794668 294439956 179747321 889400494 624826803 527428136 642240868 357250687 902370970 685715982 606331865 574145869 123421828 946446569 427027044 245320283 367338835 934556966 927351146 283391032 201845169 435674028 363856022 840641112 665659783 902370970 733754782 842322470 245320283 62052261 219259234 481551082 673706282 593121195 120299306 900689612 19658020 84390303 331429832 398203764 139514826 667341141 612336715 103605823 536555508 615459237 959417045 415497732 671424439 36471600 864780609 143598124 855773334 490918648 691480638 193798670 877991279 569822377 921826684 547003947 607172544 474705553 202325557 711897128 969144902 62892940 336834197 837638687 742762057 194279058 425946171 665539686 563817527 348483606 310292760 355929620 836798008 611375939 11131133 445642079 291557628 635995824 123301731 820344719 506411161 185031589 475786426 907415044 142277057 473264389 703370241 747926228 838119075 361694276 141196184 78265356 8609096 671064148 166176360 370581454 611255842 428708402 13653170 818903555 733874879 352687001 529589882 172781695 370341260 145279482 437835774 896726411 107689121 590599158 393760175 2604246 24221706 766541263 789479790 457291488 991963332 222982241 253606976 809055601 540158418 108769994 119338530 111532225 13533073 70218857 730752357 527788427 405169390 629510586 485153992 765100099 175664023 923267848 417299187 36471600 229707673 254807946 597204493 552888700 823587338 979112953 147801519 459933622 527067845 471462934 666620559 605250992 233911068 322403 307770723 988240325 637917376 771825531 556011222 714659359 633113496 304167813 428588305 708294218 218658749 762818256 518420861 818663361 806773758 566099370 274383757 360613403 282430256 389196489 971066454 913419894 734115073 147801519 133149685 406010069 78145259 582792853 64093910 252646200 558293065 558052871 518781152 748286519 553369088 905613589 814580063 180467903 652689307 989321198 190075663 529109494 485994671 44998487 853251297 267538228 108289606 577868876 457531682 891562240 570663056 811457541 179146836 760776607 909937081 128706096 681752781 362655052 754891854 255648625 561295490 433512282 113093486 284592002 92196608 40194607 593721680 583513435 872346720 322782848 832474516 787197947 777470090 620863602 90275056 26623646 446963146 755972727 340797398 381149990 45118584 402166965 773026501 762337868 180588000 863819833 52684695 760536413 387995519 542320164 738678759 536315314 534153568 553969573 598405463 967463544 241477179 388596004 682713557 115255232 290716949 290596852 977431595 719223045 637076697 567420437 737237595 862859057 453328287 276305309 759335443 876670212 680792005 35270630 930713862 767502039 906574365 57488575 263334833 132068812 870184974 691720832 311854021 759335443 127144835 800528714 467499733 531031046 323383333 235832620 752730108 881954480 834876456 862979154 117296881 554329864 61211582 549045596 303207037 525626681 33829466 156088212 253967267 355689426 491038745 129907066 461374786 162573450 72380603 161972965 653169695 930113377 502207766 373223588 436634804 77184483 81387878 936358421 952331322 141316281 211693123 113934165 949328897 450806250 802791 130747745 51123434 189835469 680671908 837158299 325905370 477948172 278707249 739279244 576788003 945966181 292158113 179266933 964701313 305248686 669983275 326145564 519982122 149963265 996286824 589037897 525746778 630591459 580511010 311373633 233310583 895525441 144438803 73581573 363976119 184190910 169539076 755252145 341397883 155007339 630231168 732553812 785876880 761977577 667461238 761016801 714659359 434352961 165455778 723066149 856974304 538957448 872586914 551927924 675267543 33349078 939721137 993164302 30106459 672385215 880633413 532472210 644402614 643201644 797045901 923868333 827910830 428708402 48961688 411534531 725948477 541479485 608013223 293959568 154526951 759935928 234151262 805692885 61691970 487195641 37072085 178306157 620983699 529349688 575707130 748526713 901530291 408051718 774347568 769663785 815060451 276905794 748766907 249883969 408892397 751649235 539077545 920865908 262854445 947647539 16535498 324824497 806293370 344880696 969264999 112132710 665299492 682353266 516979697 723426440 269820071 89674571 888319621 515658630 468940897 264295609 38273055 559373938 522984547 31307429 953532292 268258810 78745744 209771571 752489914 737477789 364936895 339356234 655571635 714299068 112853292 610295066 125823768 46079360 309452081 292278210 95799518 336594003 806413467 584714405 703250144 685475788 439517132 137112886 828271121 248803096 299724224 823707435 208930892 20018311 515178242 782634261 804011527 677789580 348243412 102404853 503168542 195359931 813138899 720784306 950529867 23381027 529830076 849528290 426666753 306449656 43917614 302006067 632272817 801729684 141676572 581231592 504849900 938880458 761497189 716821105 896966605 873187399 614618558 530550658 301765873 101444077 308251111 803771333 516379212 964941507 163534226 67456626 465337987 205327982 265496579 672145021 687517437 220099913 973708588 198722647 817702585 818543264 474825650 130027163 642120771 409612979 427267238 581471786 88833892 430389760 340076816 585074696 945245599 35630921 792242021 370581454 300084515 536915799 860216923 246761447 748887004 384032318 697725682 266337258 134470752 114534650 16895789 411294337 21819766 811817832 582672756 212773996 227185636 997007406 418980545 636476212 887238748 343559629 963740537 180588000 122100761 175904217 560695005 206528952 569582183 289035591 954493068 970465969 505690579 965181701 15814916 969024805 140595699 945365696 488997096 170860143 268619101 86552049 331309735 387395034 287594427 169659173 479029045 238955142 633593884 286273360 932034929 450325862 380789699 101323980 385953870 166536651 184671298 547003947 190796245 105767569 221060689 820224622 660615709 464137017 432311312 62052261 484673604 391838623 397483182 353887971 615219043 364576604 769063300 736517013 903211649 200644199 40795092 796085125 59770418 440357811 34069660 431710827 899608739 500406311 494641655 102885241 655691732 812778608 278827346 89554474 396402309 981514893 421142291 640679607 329508280 789119499 943324047 177945866 826349569 2844440 927951631 749367392 572464511 4765992 280628801 582432562 230067964 971306648 364936895 511695429 348843897 324824497 379708826 142517251 734475364 763418741 804972303 793923379 657373090 419701127 430870148 247482029 960858209 366618253 202205460 884596614 571623832 283991517 796085125 789239596 327106340 363255537 547364238 39714219 186833044 736276819 463056144 615939625 484553507 549646081 502928348 89194183 943444144 403968420 949328897 960858209 413095792 229107188 470382061 222982241 416698702 795004252 988000131 792121924 350285061 974909558 614138170 984517318 718022075 936358421 530310464 576427712 515778727 942243174 636596309 507492034 433392185 885917681 210251959 91355929 846045477 585314890 38152958 386794549 502327863 282910644 334071966 912339021 557572483 277266085 662176970 31067235 742762057 945125502 496443110 605250992 102524950 199563326 993044205 242197761 521423286 193558476 102885241 18577147 765100099 534273665 893723986 307050141 898647963 335032742 710215770 390997944 60611097 822986853 310172663 944645114 228146412 974909558 866101676 940681913 917262998 923748236 405169390 345000793 301045291 694963451 54846441 114774844 74542349 465097793 678269968 225143987 390637653 982715863 608133320 929753086 66495850 114654747 163534226 69137984 173502277 99522525 357610978 794163573 305368783 559734229 854932655 341998368 800408617 370581454 218058264 164495002 821665786 860096826 652929501 538957448 231509128 157048988 550246566 340437107 853251297 265256385 173502277 932515317 502688154 149242683 597684881 287234136 199443229 543521134 856253722 458492458 904172425 540518709 816982003 582552659 739999826 658213769 299484030 48601397 161132286 477347687 594081971 954493068 320140714 89914765 768823106 708894703 494401461 64334104 125703671 687757631 386194064 918343871 75142834 345120890 433151991 688598310 980073729 419340836 439276938 786837656 283631226 781433291 694603160 342718950 585194793 985117803 837518590 869704586 118257657 474945747 911738536 720904403 568621407 825388793 529229591 123662022 255768722 447323437 366618253 524906099 68537499 890841658 909937081 469901673 962419470 40314704 562496460 591559934 597804978 989681489 621824378 888559815 578709555 214455354 271861720 31667720 623265542 347282636 691480638 706252569 575827227 841241597 676108222 435794125 632513011 894204374 52684695 224423405 908736111 357490881 964341022 639838928 638157570 627228743 45238681 150803944 330108765 875349145 611976424 255528528 713338292 75503125 781553388 710215770 50763143 352687001 321822072 642360965 521903674 709014800 355088941 79706520 654010374 542440261 859976729 859856632 645123196 805212497 802690460 205688273 318579453 417299187 913539991 48961688 227906218 188034014 631191944 808695310 153205884 568741504 772546113 461374786 274383757 132789394 506531258 104566599 878351570 785516589 257450080 11731618 960137627 968904708 434352961 275224436 17135983 804612012 345481181 418139866 582312465 189114887 4765992 757173697 482872149 948968606 782754358 407571330 306569753 766060875 429789275 973828685 728110223 548685305 990522168 343799823 227786121 672145021 64093910 242317858 983436445 614498461 708054024 906694462 759335443 820344719 39113734 848807708 571864026 731472939 68897790 413335986 436754901 25782967 160291607 575587033 212773996 735916528 689919377 925669788 918463968 84870691 480710403 813018802 901650388 265256385 78385453 760056025 770144173 910177275 500886699 161252383 393399884 655331441 922667363 739159147 798847356 502207766 135431528 250484454 864900706 935397645 899969030 724507313 862979154 788999402 790200372 182149261 386073967 520582607 17496274 987519743 116095911 365777574 465337987 527428136 397483182 336954294 975870334 604890701 442159266 924709012 787318044 182749746 14493849 366378059 481791276 243038440 126664447 701929077 276065115 274383757 391118041 423183940 238955142 226104763 132188909 285552778 298643351 826109375 942723562 444441109 956654814 605491186 184671298 273422981 538957448 541839776 954252874 506771452 279547928 691961026 703730532 986679064 587476636 700487913 65414977 72260506 897687187 857334595 263935318 176624799 970105678 138794244 864420318 225023890 495482334 778310769 589398188 486595156 803891430 280628801 527668330 658213769 153325981 118617948 221901368 416938896 212773996 779631836 880633413 57968963 997968182 364936895 798126774 174583150 149362780 953172001 49201882 221541077 971666939 912579215 43917614 388475907 536795702 394480757 908856208 889160300 855413043 734835655 373463782 535354538 285312584 343799823 210251959 517219891 65294880 578829652 551087245 270060265 559373938 536795702 150203459 531751628 1523373 981034505 357731075 7408126 409132591 572224317 609574484 410813949 741921378 92676996 145399579 427147141 993404496 10170357 378267662 994845660 429789275 960618015 492479909 254327558 254087364 587116345 154286757 169178785 470622255 468820800 807494340 687277243 361694276 729311193 428107917 373343685 159330831 162093062 807614437 140835893 647885427 907294947 642601159 697245294 634674757 509653780 970826260 209531377 450926347 999169152 982115378 754171272 562496460 486955447 449845474 755972727 600807403 409372785 752009526 59650321 800889005 177705672 356289911 206408855 920986005 180107612 403608129 45598972 681512587 75503125 713338292 226104763 223822920 281709674 154166660 908736111 542560358 474825650 925789885 412975695 410693852 464977696 465578181 507612131 157409279 77304580 862258572 667221044 290356658 856493916 46679845 206048564 25542773 833915680 791401342 640799704 64694395 332270511 643441838 381630378 528629106 386794549 295761023 876069727 962779761 811937929 665419589 195119737 613537685 150563750 38152958 700367816 841481791 217577876 145639773 391958720 236433105 35991212 272942593 964220925 857454692 976831110 97600973 902851358 782394067 299724224 967823835 660615709 673345991 103125435 319780423 988240325 242918343 310773148 291557628 265976967 138313856 187313432 322902945 245080089 189715372 77424677 273302884 5366477 488036320 393880272 289155688 1283179 815540839 941522592 569462086 323263236 101924465 673105797 29145683 342478756 607292641 425705977 999769637 984637415 91115735 139394729 816741809 963260149 553128894 201604975 878952055 144558900 922888 672745506 742641960 386674452 531031046 533913374 867062452 13412976 3084634 244239410 505930773 738318468 10170357 883876032 216136712 647405039 809415892 598165269 718862754 270540653 609934775 871746235 308251111 145159385 957135202 392919496 720784306 959777336 579189943 824668211 869104101 528028621 588197218 169779270 963140052 890121076 487916223 939480943 945365696 234151262 432311312 907535141 513136593 725708283 807013952 265016191 908976305 652809404 13052685 599366239 283871420 907174850 146360355 195960416 407331136 163294032 803050751 405649778 924949206 126664447 32268205 554690155 588077121 980914408 6327253 19057535 590358964 681872878 832594613 945725987 814099675 309932469 120899791 859496341 548925499 27704519 714419165 632873302 780712709 335993518 140835893 170139561 927351146 642841353 218538652 634554660 332630802 829472091 594922650 527548233 349924770 593361389 671784730 440718102 419220739 237994366 917142901 621464087 343199338 135431528 941402495 715860329 513136593 698926652 356650202 929392795 203646624 580390913 578109070 279187637 838959754 8849290 99162234 901410194 590118770 475906523 293599277 277746473 856373819 545442686 718982851 825388793 135911916 670583760 661216194 583273241 603089246 939601040 619182244 258651050 266457355 608013223 655091247 819383943 39714219 960618015 264655900 109490576 328547504 817222197 617260692 75503125 371302036 465097793 496923498 801729684 101083786 701208495 239195336 607292641 100723495 562496460 586996248 58569448 769063300 221180786 733154297 257089789 7888514 603329440 853611588 425585880 197641774 366257962 368779999 948007830 268859295 483352537 76463901 137232983 731472939 947047054 999289249 890000979 421262388 958696463 175784120 796805707 416698702 281709674 982115378 942243174 307170238 43797517 247361932 295160538 882434868 565138594 906814559 764259420 158009764 304528104 684034624 895165150 650407464 448044019 856493916 477948172 417539381 984397221 544962298 775068150 333111190 781913679 68417402 797286095 710215770 198002065 739999826 586635957 929753086 455490033 38513249 534754053 180347806 349444382 813979578 803411042 268979392 140235408 472543807 600807403 108890091 519141443 643802129 220220010 926990855 974309073 656292217 82348654 737237595 464377211 760536413 674186670 285672875 159691122 843043052 224663599 481190791 327466631 267177937 469181091 755732533 218058264 506771452 354248262 732193521 615579334 577148294 174222859 532592307 364576604 618221468 305488880 589037897 160651898 841481791 974789461 794764058 548445111 988120228 452607705 125583574 248442805 72620797 761737383 583153144 928071728 801009102 109130285 328067116 610295066 63253231 923027654 733874879 954733262 324464206 850489066 165575875 177825769 419701127 668662208 123061537 14133558 211332832 723186246 185391880 365297186 3444925 605010798 853251297 167137136 591800128 23020736 590118770 822746659 287474330 674907252 463536532 569341989 815660936 264775997 431230439 102164659 916542416 594081971 788879305 498845050 997007406 83789818 296601702 161612674 642481062 989801586 280508704 594562359 909937081 555650931 834396068 673826379 431470633 572344414 752249720 327947019 360733500 700968301 277626376 318459356 394000369 466058569 74061961 882434868 779271545 423063843 29986362 841962179 222621950 425105492 628910101 808455116 252165812 388115616 819383943 700127622 27704519 545442686 64574298 528749203 427747626 820945204 684274818 662777455 25182482 163654323 899728836 250724648 693041899 292158113 141436378 605130895 197281483 112853292 183350231 817462391 767622136 250964842 767502039 516739503 35630921 935517742 659775030 718862754 494761752 436034319 626388064 466659054 62532649 815300645 69378178 550847051 490918648 5966962 182869843 780952903 625187094 185752171 405529681 801609587 864300221 833675486 12812491 838119075 932755511 697845779 261293184 83189333 713458389 628669907 104686696 545322589 214335257 724026925 784075425 839560239 493080394 418740351 409012494 626748355 827670636 432791700 830432867 137713371 142757445 875589339 333711675 380909796 899608739 453448384 707933927 196320707 969865484 376586304 104326405 216497003 782273970 61691970 650767755 498004371 926990855 613057297 830192673 622064572 388475907 905373395 948848509 676228319 79106035 506771452 769183397 537636381 66856141 226585151 881834383 541719679 246521253 293479180 670703857 427147141 662297067 523344838 381870572 347042442 913539991 565618982 99282331 102164659 88713795 839079851 605371089 902491067 149963265 560695005 449004795 981154602 672985700 316297610 873787884 604650507 827190248 289996367 408892397 93757869 938760361 527788427 430509857 538236866 164855293 414416859 596483911 816261421 344640502 45598972 662777455 577628682 313415282 539077545 504249415 618942050 56167508 695083548 880273122 247241835 448284213 257930468 75383028 145759870 335272936 175183635 27464325 149723071 65054686 218538652 520102219 757053600 484553507 563577333 544962298 32628496 353047292 273302884 785996977 191516827 33949563 215296033 847006253 472904098 597324590 11851715 80427102 693522287 19057535 890721561 126063962 679711132 731472939 152725496 248082514 86912340 216497003 382591154 996767212 44758293 182509552 757533988 962059179 520822801 773506889 947647539 689679183 707093248 484313313 582432562 861658087 329508280 57848866 554810252 494881849 48361203 723426440 911498342 338155264 939601040 784555813 725468089 753810981 686916952 458372361 606331865 300564903 972867909 860457117 499205341 416938896 36471600 959777336 778671060 720303918 959537142 886758360 713698583 919424744 324584303 129426678 928912407 239075239 265976967 837398493 597804978 552408312 207970116 987519743 951971031 523344838 462215465 917142901 182389455 989561392 886518166 403247838 692561511 638397764 302726649 183110037 672625409 983676639 62412552 195840319 236913493 870905556 424745201 217577876 908616014 276305309 560815102 401806674 74662446 318579453 40434801 344400308 430750051 626748355 764139323 705171696 479509433 93397578 235352232 953292098 121260082 434593155 238234560 664338716 246401156 266937743 65054686 318219162 825749084 716580911 335513130 178065963 802930654 211332832 379108341 772906404 680551811 784195522 43557323 362414858 824428017 204247109 716340717 975750237 925069303 701208495 262374057 174463053 207609825 623745930 789840081 748286519 534633956 914260573 118497851 975269849 619302341 46439651 629870877 19778117 215896518 368179514 17856565 562376363 51003337 472543807 898047478 349924770 306449656 203406430 89314280 15814916 678149871 232349807 37912764 484673604 862618863 206769146 195600125 185752171 321581878 416458508 50522949 794643961 325545079 591680031 860096826 385353385 811217347 410333561 450445959 155007339 973108103 110931740 474105068 5486574 64934589 419701127 784435716 515298339 517700279 520822801 880993704 740119923 989081004 912699312 348843897 271861720 108169509 235592426 974068879 987880034 809055601 411654628 888920106 82108460 864060027 523104644 843523440 166296457 813979578 650287367 19057535 371782424 766661360 480109918 469181091 963620440 359292336 552888700 991603041 607292641 942843659 293719374 979713438 162933741 459933622 108049412 18817341 554089670 39714219 908135626 18697244 537876575 270780847 909937081 335393033 723186246 743002251 699407040 16175207 780712709 42236256 828030927 540638806 549525984 725828380 704571211 589758479 885437293 295160538 767261845 458492458 468820800 930833959 202926042 726909253 579310040 826349569 500766602 330228862 336233712 883996129 177105187 468340412 523825226 470742352 175183635 292878695 247121738 506531258 408532106 51003337 724147022 741080699 570542959 186712947 261893669 444921497 258290759 345000793 211933317 847366544 194999640 580751204 264775997 519982122 433872573 841962179 798967453 955573941 43317129 816261421 373944170 788639111 568020922 423904522 642240868 485874574 557812677 819624137 645483487 152125011 646804554 81027587 682353266 253246685 971787036 486715253 332630802 676468513 596844202 910297372 972867909 220940592 1403276 10410551 721624985 682473363 862138475 554570058 572824802 328067116 660375515 709254994 890601464 959777336 445642079 287234136 100483301 977071304 707453539 881594189 331429832 247121738 878351570 69258081 802791 873067302 73941864 457291488 922787460 975029655 82949139 790560663 547244141 846766059 137112886 994485369 19658020 36831891 481070694 468820800 530670755 28064810 186833044 44998487 3805216 747806131 675267543 762938353 734475364 455970421 963260149 966742962 133029588 467619830 849528290 26143258 103245532 693402190 469901673 500046020 640919801 776509314 126304156 140595699 104326405 206769146 269459780 31187332 379468632 608253417 355689426 706132472 527187942 27464325 712617710 390997944 332150414 91716220 576908100 592040322 387274937 261533378 889880882 835116650 760776607 687757631 397242988 436394610 721504888 458012070 686676758 410093367 852650812 562016072 136272207 528629106 503048445 593961874 494281364 309932469 125463477 946686763 446122467 384752900 302486455 257209886 267057840 836677911 705291793 142036863 801369393 508092519 90635347 45959263 419220739 791281245 719823530 998208376 39834316 949929382 935878033 713458389 113093486 156928891 912699312 14854140 252526103 198722647 629390489 793923379 3324828 617741080 451767026 317258386 507492034 522864450 933476093 915221349 950169576 686676758 171100337 877751085 323383333 994365272 566459661 508572907 837158299 144078512 463536532 464377211 582192368 905973880 369620678 489237290 171941016 381390184 528028621 583273241 992443720 430870148 371181939 645003099 222261659 264295609 366618253 672865603 679470938 804131624 70939439 242918343 971306648 853731685 300324709 640199219 425705977 364936895 855292946 166536651 356289911 826229472 64214007 909576790 251325133 750688459 717301493 640559510 783234746 717181396 62052261 271381332 840881306 763058450 872106526 354488456 622424863 349564479 625787579 612336715 84510400 520822801 148161810 147801519 221060689 787918529 986198676 406010069 912339021 395201339 97480876 346321860 472183516 960137627 986318773 838839657 555650931 636956600 732313618 259491729 748646810 57368478 603689731 521062995 819383943 870305071 721865179 253126588 58689545 219019040 81628072 733754782 28545198 103005338 698566361 929272698 924348721 963980731 690519862 591439837 371902521 534994247 756813406 562616557 703370241 767141748 640079122 162453353 98201458 107689121 253126588 512416011 136992789 931794735 248202611 28785392 252886394 851089551 84510400 369260387 586515860 695684033 69738469 346682151 834756359 64814492 88833892 71419827 229347382 835957329 902250873 36471600 393399884 73941864 700247719 828631412 274503854 824668211 782994552 382831348 102885241 628910101 483592731 551447536 325545079 691840929 730632260 601047597 509653780 261052990 621103796 682713557 909576790 427147141 11371327 246881544 709134897 155487727 857574789 741320893 813979578 247241835 831273546 336233712 969144902 828631412 5846865 337314585 816861906 372382909 583753629 986919258 856373819 58809642 120539500 464737502 939961331 411894822 342238562 538837351 266097064 929873183 947887733 482031470 758014376 281349383 26503549 244479604 187433529 942123077 176864993 104326405 345601278 212773996 497163692 299484030 997007406 124142410 72500700 967103253 276665600 461014495 761977577 956174426 80787393 749847780 159811219 99642622 984997706 802330169 356169814 685956176 165455778 491038745 868263422 318339259 896486217 36351503 56527799 745404191 100123010 557572483 784075425 335393033 198242259 644042323 372743200 734115073 986438870 779511739 978992856 546283365 854452267 368419708 866221773 899728836 556371513 135791819 69498275 3685119 83789818 669262693 226224860 8609096 577748779 791521439 895285247 860937505 706853054 282790547 336233712 157889667 969144902 668181820 656772605 447923922 272101914 131468327 995085854 546403462 56047411 151764720 79106035 449244989 110571449 143598124 512536108 811337444 407090942 191997215 935157451 370461357 430029469 351726225 837518590 644402614 495482334 902731261 815060451 796805707 620623408 792842506 495242140 115495426 400725801 139755020 418860448 319780423 304768298 663618134 147080937 115855717 2003761 117056687 369140290 974909558 155607824 646324166 646804554 250964842 508452810 198842744 398083667 285913069 968664514 120539500 401206189 370461357 871145750 621944475 954853359 984757512 75142834 250124163 141796669 265256385 39353928 121139985 729191096 913780185 866461967 220460204 969865484 453448384 773146598 938880458 370581454 159210734 466418860 266097064 813619287 176744896 804251721 73101185 121860567 702289368 799688035 283030741 978632565 447683728 739039050 252406006 406250263 623745930 960137627 391118041 287474330 472904098 327586728 643922226 269820071 667461238 65294880 34189757 446843049 972027230 72500700 374784849 842082276 742161572 672145021 803170848 449605280 452487608 481551082 245560477 253366782 224663599 877751085 974188976 734115073 23140833 97240682 667941626 645483487 337674876 915101252 438676453 197281483 60370903 666860753 377426983 493680879 372142715 699046749 94238257 500886699 481671179 914620864 193078088 752850205 749487489 745404191 494161267 922307072 202565751 292758598 500886699 863699736 733754782 469421285 914620864 734835655 658213769 15214431 227185636 185992365 651608434 986799161 285192487 533192792 23501124 870545265 184311007 108769994 93397578 710335867 734355267 326505855 58929739 764980002 270060265 243158537 220820495 258050565 549525984 209171086 790920954 600447112 271981817 172541501 951010255 373824073 592400613 592881001 848567514 572344414 354728650 470021770 809896280 14013461 138674147 102044562 862738960 906694462 97961264 709375091 590479061 694242869 341998368 771225046 598405463 256969692 437955871 70939439 360613403 636115921 194519252 642481062 431830924 169899367 909096402 211092638 829592188 752850205 744923803 551447536 976470819 647044748 14734043 589278091 449725377 606331865 472063419 623145445 821905980 142757445 240756597 56167508 821905980 866582064 987880034 851209648 722946052 730151872 720424015 78385453 107328830 633113496 462455659 300564903 572824802 862258572 543160843 305368783 505570482 17496274 274383757 450926347 497523983 55086635 143958415 905853783 571743929 849167999 464016920 257329983 301045291 21219281 553369088 343079241 110091061 867062452 308131014 906934656 373103491 209531377 682713557 287234136 273903369 611496036 880393219 176024314 768342718 100483301 665779880 117416978 183230134 333591578 694002675 797526289 695804130 95078936 10770842 526227166 493680879 953292098 553489185 195239834 598765754 100123010 45959263 519862025 28064810 271861720 485874574 176024314 882675062 114534650 163654323 458972846 524305614 761497189 112252807 767021651 497764177 967223350 487195641 774107374 937679488 218658749 731352842 889040203 280388607 538837351 182629649 397122891 70338954 215055839 321101490 303687425 876069727 776269120 85951564 43076935 151164235 108890091 466779151 737237595 296241411 9449775 864060027 699647234 658333866 124983089 358932045 860697311 951971031 297682575 89914765 581111495 807013952 19898214 544121619 829832382 264295609 783835231 475426135 915461543 298162963 304768298 768943203 988840810 111532225 753210496 553489185 664098522 560094520 916182125 741200796 838839657 224063114 901890582 297322284 12452200 528749203 711656934 648485912 33949563 955694038 430629954 275584727 120659597 552168118 202805945 600206918 490077969 569341989 551567633 829231897 139634923 901650388 671064148 936478518 13653170 546283365 531151143 176985090 366257962 774107374 742281669 60370903 420421709 262253960 582432562 93517675 212773996 939841234 595162844 112012613 474825650 278106764 772065725 230308158 858055177 308611402 226224860 126664447 194879543 470862449 691840929 692321317 680191520 488636805 893243598 834516165 265616676 352326710 804612012 827790733 833795583 240516403 204127012 883155450 572464511 570182668 348963994 771104949 364696701 181668873 426066268 730632260 606572059 620383214 783955328 43317129 194879543 181188485 341037592 867903131 782394067 236793396 851690036 759815831 816861906 195239834 44758293 965541992 832474516 894204374 766781457 651488337 893603889 584714405 92676996 831994128 209531377 155367630 853251297 739039050 837158299 133750170 378748050 27944713 12812491 317978968 148041713 717661784 29746168 872586914 85591273 224903793 488876999 757894279 231268934 853731685 491759327 726188671 444441109 222381756 828871606 164134711 579310040 520102219 546403462 588317315 105046987 260692699 176264508 743963027 653409889 412135016 810136474 505570482 57488575 883876032 393880272 112733195 806653661 7888514 210972541 834396068 465097793 345961569 464737502 140715796 230067964 387995519 176744896 236313008 95559324 917863483 640679607 103365629 827310345 146360355 496443110 896726411 440718102 781793582 199683423 79106035 811577638 969865484 721384791 321221587 527067845 660015224 762217771 887719136 988240325 314976543 623145445 776028926 173862568 967223350 492720103 7288029 628669907 122340955 105046987 666980850 560815102 441678878 402407159 442519557 501727378 963260149 884836808 790440566 877630988 179026739 500766602 240876694 280268510 289155688 500526408 30706944 856734110 963019955 182389455 592881001 71179633 757654085 938880458 119218433 906934656 802570363 742281669 439036744 443720527 820584913 519741928 713458389 196680998 694843354 357490881 572224317 45238681 862138475 976350722 151044138 580751204 104806793 806773758 540758903 58329254 635395339 437235289 914260573 114414553 452967996 943203950 337554779 105527375 609694581 685595885 982595766 202445654 915221349 347763024 309331984 791521439 918103677 731833230 552168118 519621831 258170662 198962841 203646624 927591340 88473601 372983394 244239410 188154111 99282331 957735687 554329864 364216313 977551692 178546351 229947867 484433410 565018497 940441719 703009950 312334409 246040865 617620983 678990550 552408312 305248686 480350112 970345872 374664752 757413891 384993094 180948291 60370903 729431290 565258691 890121076 740360117 952091128 67336529 582312465 807974728 361454082 518060570 714299068 634794854 971306648 291917919 477587881 660255418 810136474 618101371 207970116 567300340 620143020 713938777 705411890 865621288 113934165 711416740 856013528 763058450 431350536 303927619 332270511 575587033 971426745 172301307 668662208 71419827 332991093 777590187 178426254 113934165 245200186 295160538 881113801 35871115 604770604 92316705 699407040 157048988 200884393 844244022 929032504 543040746 91235832 180107612 548204917 143357930 758254570 412615404 399164540 781553388 974789461 307650626 350164964 169539076 178906642 883395644 527668330 301045291 129786969 27824616 953892583 441198490 695203645 888439718 986078579 459813525 763058450 516859600 581711980 345481181 417899672 78985938 679711132 39113734 605371089 393159690 841241597 21819766 488756902 490918648 531391337 432791700 683794430 325545079 807134049 319059841 526227166 245200186 731472939 632392914 130027163 205327982 58569448 115615523 551687730 319300035 375385334 797646386 565258691 929032504 729551387 746605161 616540110 99882816 104086211 526467360 428228014 352086516 229467479 339596428 372983394 804371818 487315738 397963570 885317196 626748355 525266390 914500767 211332832 945605890 101323980 604890701 182149261 788158723 173021889 775068150 527308039 146480452 986679064 237513978 834756359 769903979 584234017 851569939 371542230 753090399 692801705 478548657 694362966 688598310 920385520 995326048 84150109 450445959 939240749 244599701 512656205 51123434 974309073 618701856 405649778 781793582 465458084 795244446 145159385 751168847 726428865 856734110 213134287 289876270 136752595 216977391 934677063 460414010 352446807 242798246 454289063 154286757 746124773 921226199 954493068 680431714 728590611 592520710 587836927 712737807 384872997 669502887 652569210 178306157 656292217 705291793 225384181 340317010 995085854 41515674 946206375 686556661 393519981 820344719 33228981 587957024 833075001 317978968 509173392 363495731 400005219 414657053 99762719 320140714 967103253 810496765 383431833 957375396 860937505 645723681 76824192 457891973 432671603 50763143 762337868 496082819 444321012 566459661 636596309 526587457 610775454 134590849 307410432 498484759 548925499 676348416 623986124 928672213 916902707 541599582 150083362 194158961 95559324 150083362 910417469 337194488 500646505 789840081 159811219 59049836 365897671 43317129 220220010 647765330 171220434 717781881 253847170 767982427 866461967 482872149 428348111 463896823 469060994 92436802 173502277 928792310 700487913 947407345 101203883 118497851 363255537 366017768 530430561 745404191 406370360 402287062 959537142 584474211 382471057 265496579 60611097 11371327 243278634 472663904 248442805 679230744 977551692 625787579 743482639 541119194 792242021 486354962 206048564 762578062 788278820 483832925 22059960 254928043 990402071 537996672 206048564 103365629 248562902 464257114 876910406 729311193 503528833 166296457 292158113 560815102 843283246 867302646 580631107 985958482 530430561 914861058 40795092 665539686 173021889 573785578 653409889 171580725 999649540 58449351 522263965 83909915 876670212 840160724 360253112 926030079 191516827 92196608 684154721 94478451 447203340 10170357 806893855 340196913 594442262 105287181 943203950 291437531 172301307 516619406 99882816 267778422 359652627 922667363 415858023 694122772 487916223 535354538 61571873 45238681 753931078 932034929 528509009 718742657 868863907 875709436 240276209 617981274 837158299 857694886 263575027 427267238 245800671 774227471 785636686 723426440 441198490 93877966 628069422 954012680 407090942 333951869 698326167 408532106 725347992 711536837 469060994 404929196 670343566 432311312 72020312 651848628 718982851 54966538 239075239 80307005 355209038 901290097 873787884 781553388 540158418 485274089 692081123 736517013 185632074 560214617 88593698 69858566 84270206 876309921 117416978 377066692 680792005 380309311 607052447 748766907 387274937 865020803 644762905 260812796 81027587 146600549 9209581 161852868 731713133 689559086 799928229 104686696 288074815 808815407 916302222 489717678 450085668 215175936 620263117 892402919 172661598 420421709 611856327 556251416 816982003 576187518 879672637 43076935 996046630 759215346 334792548 748406616 219139137 577868876 375385334 233430680 924829109 386794549 131108036 51483725 809776183 797646386 743362542 474225165 32748593 881353995 877150600 442519557 583273241 403848323 232229710 129186484 254687849 223462629 70699245 467259539 100483301 347402733 487555932 26503549 819864331 789719984 309091790 322403 712978001 949448994 287354233 651848628 226224860 261173087 762938353 851810133 77544774 932034929 964581216 677189095 180227709 565739079 393640078 186472753 177345381 536315314 265496579 489717678 680671908 926990855 476386911 970225775 347763024 951490643 390157265 170740046 93037287 196680998 115855717 960858209 159090637 961698888 166296457 319540229 514577757 691480638 136032013 703850629 444200915 20258505 730512163 594922650 103605823 354488456 91355929 640679607 554930349 545682880 406130166 12812491 962059179 658333866 153325981 966022380 690880153 512175817 785516589 387274937 739519438 145279482 223462629 895045053 778310769 161252383 93998063 803771333 668902402 974309073 572824802 987279549 718982851 705652084 703730532 180948291 795844931 975510043 545442686 396642503 293118889 879312346 122461052 207129437 464857599 1283179 210732347 317858871 607412738 356169814 535474635 800889005 616299916 592640807 530670755 329988668 600206918 296601702 933596190 949208800 307290335 125223283 332870996 510254265 847246447 869944780 892402919 41996062 350164964 606331865 714178971 554209767 423424134 463176241 908495917 67216432 28305004 702529562 973348297 281349383 463896823 769183397 339836622 770984852 234511553 816141324 809295795 755132048 728830805 300084515 841962179 875709436 915941931 329868571 3204731 128946290 439877423 96760294 38993637 647284942 858775759 843163149 833315195 917142901 389196489 232830195 20018311 962779761 158610249 263815221 347642927 985958482 23981512 467139442 425465783 420181515 62172358 508693004 15814916 509173392 155007339 260812796 893964180 315336834 785156298 823347144 281589577 828991703 731713133 769303494 153926466 328907795 793563088 207729922 87993213 928191825 434833349 359772724 92196608 214575451 852770909 936238324 6687544 164615099 787438141 968304223 772185822 588317315 572104220 422343261 652329016 306930044 187193335 856854207 711897128 870905556 418259963 385593579 357971269 728950902 743362542 994605466 891922531 49442076 293599277 722105373 848927805 286873845 529469785 677669483 789960178 532352113 488997096 550366663 572344414 498965147 581591883 785156298 191156536 817222197 390637653 885437293 303687425 663738231 214575451 883635838 68777693 190916342 512416011 605851477 474825650 963980731 880753510 571143444 2123858 244959992 837998978 375865722 834996553 627468937 608373514 45598972 400245413 172421404 916902707 810977153 691720832 300564903 748406616 10890939 827190248 461134592 565378788 750448265 189835469 949448994 157529376 113333680 810256571 754771757 242197761 312694700 620983699 233070389 899008254 860577214 657733381 341277786 648125621 418380060 869944780 267658325 344040017 869464392 725948477 499325438 787918529 39474025 827910830 917983580 640799704 261653475 408291912 198122162 814940354 827550539 986679064 559734229 408652203 203766721 596844202 923387945 30346653 349924770 545682880 410093367 168097912 538356963 408652203 368059417 876790309 769423591 99402428 115735620 473864874 714659359 844724410 355929620 113453777 668662208 363495731 742521863 435553931 659054448 558653356 574866451 594922650 87152534 130147260 711176546 532832501 938520167 190195760 753690884 910417469 540638806 381630378 846165574 640319316 859376244 445161691 365177089 387635228 155247533 243398731 453448384 996527018 657853478 976590916 361694276 500046020 304648201 82228557 105287181 631071847 582792853 665899977 675147446 752610011 958816560 730512163 668902402 772065725 141556475 46319554 988600616 917983580 601648082 130507551 415497732 234511553 118137560 228026315 178546351 459453234 554810252 734955752 89794668 66495850 760056025 780352418 633113496 746124773 191997215 195359931 894804859 624826803 458132167 378507856 764259420 46439651 953292098 198962841 926990855 603329440 658934351 115735620 670703857 94598548 591559934 987159452 674426864 112132710 617260692 910297372 961578791 642000674 58689545 214695548 950169576 234631650 969385096 316657901 176384605 514697854 250004066 91956414 442519557 834516165 556731804 110691546 988240325 404568905 420902097 486354962 808575213 7167932 348363509 572704705 641760480 553008797 359772724 136032013 501487184 831273546 171220434 300444806 428708402 191156536 575466936 298283060 843643537 7047835 163294032 320981393 777830381 359892821 846645962 526947748 674907252 253126588 735195946 222982241 29025586 322662751 493080394 369140290 324704400 578229167 346922345 764259420 146240258 81868266 536315314 618101371 937799585 884236323 210612250 975990431 770504464 238835045 826829957 779391642 671064148 377186789 610655357 375985819 493080394 381029893 782754358 621824378 877150600 979953632 597684881 178065963 437115192 341517980 213614675 729671484 551087245 68537499 542440261 725708283 412975695 983676639 110091061 503408736 929152601 975990431 525506584 452367511 233310583 949328897 381029893 838719560 100363204 947407345 341998368 505210191 234271359 220580301 462815950 391358235 511815526 475065844 839440142 162453353 697725682 335032742 469181091 101684271 366618253 10530648 406850748 424384910 559373938 817222197 720424015 428107917 730392066 542560358 754531563 471222740 272822496 599486336 932995705 326385758 1163082 82468751 224303308 496803401 33589272 241116888 560574908 123301731 469181091 870545265 762698159 165936166 757894279 308010917 537996672 470742352 673826379 977551692 913419894 866582064 795844931 612697006 721384791 542560358 473744777 168218009 628549810 140235408 812178123 503769027 200283908 140115311 239795821 542680455 214695548 73701670 653529986 465458084 858055177 128345805 581711980 572104220 616179819 29505974 173021889 347642927 100363204 686916952 820825107 96279906 62892940 567300340 350645352 234151262 15694819 118257657 217457779 482752052 259731923 756813406 886878457 262494154 627468937 236072814 805452691 874388369 155367630 69498275 509293489 685235594 488997096 749487489 40074510 655811829 778791157 133029588 412735501 434112767 392078817 315336834 262013766 186352656 965902283 850489066 698926652 881594189 645843778 673345991 45959263 657012799 74422252 393039593 272101914 358211463 660615709 739519438 2724343 3685119 795124349 495362237 578469361 374904946 643682032 707453539 639238443 581111495 549766178 408892397 600807403 595643232 398083667 555530834 602248567 178786545 47160233 621343990 518060570 230188061 975870334 615819528 943324047 401566480 687037049 989081004 63613522 605371089 526227166 646444263 242798246 284592002 397603279 184911492 194759446 706252569 356049717 877030503 247722223 777590187 240276209 953892583 96520100 100483301 835837232 575226742 420902097 216497003 528509009 972867909 967583641 759215346 716701008 132909491 215536227 218778846 457531682 94478451 302246261 272582302 413936471 549045596 187073238 97961264 823947629 893003404 648846203 447323437 699407040 23381027 744443415 281829771 708654509 346321860 859256147 274263660 934677063 572464511 756573212 453448384 494281364 486835350 314135864 637316891 825869181 230067964 114414553 466659054 411054143 238354657 964581216 351966419 543881425 202805945 135311431 207489728 333231287 357731075 530910949 796325319 314015767 174823344 529830076 926990855 965061604 67456626 395801824 432191215 502568057 726789156 807734534 551207342 527428136 496443110 293479180 678510162 24461900 894324471 48961688 333591578 248682999 758734958 687517437 985478094 883035353 223342532 890601464 677909677 749847780 264535803 85230982 954252874 714419165 541239291 304768298 611015648 781193097 735075849 395321436 247241835 405409584 477107493 104086211 568861601 984036930 788519014 727029350 954613165 591199643 537276090 379228438 17256080 331790123 578109070 36231406 690279668 858295371 365297186 974909558 528268815 173982665 637677182 193438379 243398731 885677487 577748779 849648387 47280330 826349569 649566785 919785035 425705977 863699736 629630683 45478875 557812677 476266814 257209886 53645471 519741928 74902640 464377211 540278515 132549200 902491067 301525679 728110223 229467479 478068269 465698278 311974118 540278515 733274394 207129437 11851715 394120466 885197099 755252145 859976729 505330288 861057602 939841234 866822258 975630140 37192182 481791276 83909915 391838623 968064029 754411466 139154535 36471600 56287605 332510705 484673604 656772605 854692461 202685848 442039169 941162301 167857718 430269663 471583031 161252383 266577452 44518099 772426016 340317010 427747626 942963756 653529986 208570601 98922040 372863297 601047597 902370970 446722952 577628682 74782543 68417402 294439956 648485912 368419708 629510586 887959330 861898281 57608672 798126774 996166727 705291793 672985700 749367392 594562359 213134287 203526527 103846017 839320045 404208614 380909796 124262507 532111919 604890701 3805216 271261235 194399155 348363509 605371089 268619101 232109613 787438141 460414010 255168237 385713676 329868571 39474025 617620983 781793582 606572059 908375820 401326286 64093910 530790852 438676453 414176665 290596852 600327015 395081242 311373633 805212497 163894517 616660207 581711980 452127317 135671722 234391456 180708097 613537685 123662022 196200610 848087126 273422981 443120042 426426559 262494154 799688035 95679421 996286824 467259539 226585151 371302036 148882392 169058688 191276633 761377092 285552778 41875965 793322894 939841234 411534531 374304461 346201763 97000488 571984123 858895856 812178123 265856870 136992789 772185822 61812067 79706520 399885122 56047411 830312770 4886089 337794973 972387521 556611707 663858328 428107917 912819409 211212735 317138289 78265356 269459780 491639230 231148837 184190910 307530529 774107374 916302222 501126893 518420861 12692394 934196675 597804978 742281669 662176970 344400308 873667787 298042866 661456388 945605890 977671789 154406854 129066387 128225708 499565632 380549505 511815526 799207647 867903131 670103372 813499190 621944475 971306648 899248448 250484454 15094334 840521015 949689188 118137560 748286519 399644928 326746049 437955871 914020379 74302155 93157384 84030012 746725258 466418860 947527442 84270206 811097250 387274937 857935080 373343685 623745930 142277057 377787274 719943627 769183397 908015529 3444925 64334104 176744896 559614132 585795278 86552049 190075663 685115497 254567752 330949444 466899248 809656086 743362542 285192487 867422743 174463053 946446569 117537075 617380789 589638382 436154416 903812134 347883121 185752171 180828194 591800128 314736349 444080818 138193759 803891430 104446502 134831043 192117312 190676148 463296338 1163082 771104949 101444077 620983699 326746049 466298763 953652389 963620440 218658749 373583879 638998249 170259658 867062452 241837470 444321012 559854326 117296881 54726344 951971031 47280330 898167575 935277548 190195760 440838199 195960416 28064810 306209462 594081971 5726768 53285180 814580063 820104525 993764787 580991398 920505617 892282822 445882273 848927805 338395458 576547809 10170357 988600616 322182363 307290335 957855784 69258081 608973999 860457117 52204307 298283060 657733381 894444568 733754782 351005643 58809642 669502887 683914527 239315433 164975390 707213345 961578791 353527680 541119194 959897433 70098760 285312584 917743386 801009102 23140833 270300459 552288215 761256995 926270273 633593884 929392795 521663480 854452267 993884884 321942169 32388302 29265780 653529986 100123010 240156112 519501734 698206070 889760785 328307310 528989397 625187094 303327134 677669483 117897366 43437226 406370360 985958482 269820071 547604432 467860024 525866875 16895789 13773267 456450809 699166846 965662089 521543383 241957567 863219348 833075001 412975695 140475602 834996553 641520286 761857480 286993942 968184126 455249839 676588610 414296762 945846084 622544960 295400732 812298220 777349993 623986124 229467479 971666939 246521253 140355505 619422438 287594427 920505617 978632565 413335986 91355929 743122348 718262269 607652932 971787036 365297186 684394915 582312465 750208071 370461357 538356963 889040203 118617948 20258505 189715372 349324285 933235899 980434020 77784968 182869843 178786545 884596614 68177208 578709555 317498580 927711437 735195946 452847899 680191520 754051175 414416859 533913374 473144292 952811710 20138408 196560901 63373328 280148413 956654814 854692461 81507975 72981088 728830805 375145140 873547690 96880391 412135016 598045172 859856632 202325557 534153568 852770909 537035896 662897552 608133320 242798246 89074086 163294032 993164302 39714219 617140595 975870334 607172544 843163149 689318892 415497732 768582912 358331560 397002794 826589763 526587457 435914222 400365510 599005948 1163082 206769146 399644928 916542416 271981817 407691427 616299916 743842930 942483368 38513249 282069965 727990126 633473787 336954294 838599463 254928043 565138594 44277905 595763329 27344228 21699669 291797822 881594189 469301188 725588186 177225284 178546351 514697854 761977577 770624561 158249958 377787274 859856632 692801705 625907676 224663599 67816917 192957991 930233474 21579572 9329678 200163811 547604432 837398493 854572364 861658087 608253417 869344295 766661360 718502463 919544841 701328592 69858566 518180667 583273241 381870572 433272088 621584184 739399341 817942779 105767569 850849357 658213769 636476212 430149566 38873540 339836622 137473177 725948477 315336834 420061418 806773758 873547690 627949325 306209462 887959330 235952717 656892702 733874879 608013223 247602126 819984428 766661360 727749932 567540534 624586609 92917190 346802248 610415163 400845898 351606128 17256080 733994976 836798008 331429832 35510824 532472210 178306157 360373209 842082276 512055720 234991941 353527680 553369088 216617100 107809218 251325133 4405701 762698159 704571211 892883307 581832077 497644080 431110342 851810133 297322284 10650745 375985819 118738045 148041713 333951869 802810557 578589458 678269968 354608553 342718950 780232321 186232559 845444992 526827651 184791395 805452691 861898281 156808794 296961993 692561511 398804249 699407040 981755087 536675605 240156112 367458932 934076578 827910830 657733381 629870877 599126045 903211649 409372785 920145326 925909982 494641655 55086635 116456202 643561935 896726411 14854140 77064386 70939439 691961026 57248381 425345686 675988125 889520591 477227590 587236442 205327982 216256809 175784120 24101609 48841591 590839352 248322708 130867842 614498461 638157570 664578910 687277243 466178666 804251721 32148108 405889972 89434377 937079003 959537142 718982851 670583760 680912102 315697125 362775149 268378907 837998978 415377635 701808980 818182973 222862144 921946781 689919377 903932231 648005524 960017530 326746049 780352418 883515741 166296457 175063538 21819766 883996129 964461119 116576299 103125435 439517132 146840743 679470938 993524593 624346415 23861415 455730227 480350112 928792310 630231168 824307920 60851291 410093367 793683185 933956481 793923379 607893126 303567328 266217161 881113801 382831348 1523373 252285909 992804011 567180243 144799094 87753019 35871115 65054686 171460628 862498766 223582726 465818375 661096097 20498699 816141324 413936471 347162539 500166117 840881306 633834078 652809404 179026739 528028621 739399341 379108341 238354657 461735077 799447841 461374786 565378788 983556542 99282331 568381213 818543264 759935928 684635109 682953751 501006796 53165083 228626800 745284094 271261235 38273055 864060027 91596123 148522101 579670331 91355929 972387521 498244565 480830500 806653661 886277972 677669483 23501124 962179276 616780304 296001217 384512706 460414010 755852630 988000131 616299916 33829466 526467360 280028316 459213040 973468394 481070694 695443839 716701008 146120161 435914222 745284094 666860753 329628377 75863416 69618372 240396306 694002675 84750594 218898943 991723138 369740775 325424982 410693852 27224131 909456693 136752595 846525865 82108460 563937624 482031470 952691613 647885427 567900825 890961755 245200186 517219891 477587881 251445230 905613589 35510824 124142410 414536956 635035048 494281364 643201644 180227709 141796669 496082819 532952598 607412738 615699431 825869181 887599039 366378059 154767145 239075239 827910830 68777693 669502887 458012070 477227590 616420013 300805097 336714100 172781695 664098522 550366663 442039169 555170543 663017649 118978239 922427169 652088822 316537804 324224012 781793582 15935013 160291607 718622560 630231168 399164540 340437107 506170967 654851053 802089975 692921802 90034862 518180667 177225284 132789394 37672570 637076697 759455540 84870691 704451114 848207223 703610435 781793582 487796126 184911492 944765211 239795821 15935013 667701432 636716406 216617100 373944170 215175936 80066811 210251959 88713795 304047716 691240444 575707130 459693428 221300883 622665057 464377211 586035472 254327558 816982003 240036015 915101252 330108765 183110037 53044986 166296457 716821105 749727683 580030622 530790852 130867842 982115378 718742657 335032742 749607586 742762057 464016920 711536837 847246447 138794244 594202068 31547623 374784849 456570906 367699126 691000250 426186365 396282212 115375329 551447536 704451114 765820681 469421285 804732109 590959449 427867723 501487184 243278634 231989516 6207156 944645114 14253655 399644928 859136050 865741385 246641350 316537804 547364238 92436802 772906404 343079241 359532530 93637772 739999826 697005100 749967877 298403157 197401580 679350841 320861296 477587881 788999402 62292455 755972727 816861906 596243717 229587576 242798246 702529562 37072085 315456931 142397154 382591154 586155569 249643775 591920225 412375210 551087245 606572059 690519862 563337139 498364662 703130047 607052447 962419470 559614132 116816493 733274394 902370970 925669788 721985276 533793277 805933079 674306767 494161267 333591578 919785035 51603822 860937505 706732957 760056025 999169152 119698821 612576909 427867723 42836741 140475602 791401342 710816255 699647234 722946052 690639959 948968606 476747202 215296033 319540229 860337020 591079546 277506279 404208614 584234017 864060027 474825650 427027044 942723562 929032504 49081785 891562240 727029350 81868266 810977153 1163082 884956905 919424744 127505126 76223707 419581030 707453539 296001217 642601159 127144835 879312346 339356234 513977272 852770909 181068388 170259658 304768298 143117736 381270087 530070270 34910339 874988854 244359507 130147260 544241716 704210920 550246566 26743743 758614861 627589034 916062028 429669178 805212497 588077121 629870877 927471243 193438379 621944475 963860634 285072390 865861482 83069236 782754358 303567328 950409770 196680998 553609282 474225165 173502277 934797160 39353928 181788970 639238443 477948172 780832806 615699431 499085244 605371089 851329745 299604127 594081971 273062690 434593155 123061537 702409465 237153687 520702704 234751747 992924108 412495307 82108460 598285366 752369817 869104101 737838080 8248805 124742895 644162420 715259844 873067302 295640926 36111309 76463901 655451538 360012918 371782424 578709555 806053176 645843778 712017225 811097250 524185517 720784306 48601397 658814254 686076273 594682456 576427712 713458389 201244684 23741318 805692885 342598853 764739808 247602126 972027230 235352232 709855479 805332594 584954599 979593341 346562054 164495002 147681422 375745625 233070389 729551387 836798008 288675300 554690155 236793396 821185398 289275785 256729498 272942593 988120228 668902402 130027163 741921378 694483063 216977391 517580182 947887733 496563207 636236018 418259963 777470090 960618015 114894941 18937438 610415163 128585999 579310040 117296881 717061299 467860024 750568362 345000793 392799399 776629411 769423591 183110037 742281669 503408736 425946171 151284332 395081242 8969387 646083972 465938472 881714286 978992856 193438379 361213888 293359083 524545808 82588848 494761752 387515131 402887547 964341022 219859719 338395458 611135745 21219281 864180124 946566666 388836198 344760599 309812372 854692461 337434682 800768908 33709369 401446383 546643656 675627834 843523440 416578605 401206189 932755511 452967996 369980969 335873421 665059298 393519981 929512892 248082514 39233831 924468818 173021889 280508704 357130590 59650321 217097488 104446502 903091552 56047411 240636500 844244022 816621712 487075544 561535684 319179938 65655171 189835469 987880034 899368545 487435835 877871182 488876999 965181701 827190248 923508042 552048021 446963146 95919615 938159876 770864755 234991941 21339378 927831534 542560358 136512401 792362118 145879967 763418741 623745930 516859600 223342532 475786426 224903793 800768908 723186246 141796669 697485488 627108646 498965147 972747812 759455540 282430256 181068388 381510281 596844202 359532530 138073662 124502701 13292879 359652627 813979578 468580606 50643046 917383095 115375329 851329745 219019040 635275242 437595580 594802553 628429713 117296881 107569024 127625223 372382909 501006796 958216075 351846322 815540839 396522406 695443839 629510586 66015462 58809642 447083243 313535379 79826617 908495917 291317434 115495426 797886580 576427712 459573331 395681727 424985395 70338954 291797822 547724529 566940049 273903369 359892821 599246142 748646810 906454268 511695429 282430256 954372971 88353504 501727378 389196489 925069303 100483301 721144597 383191639 864900706 956414620 191156536 870064877 43677420 870064877 209651474 169779270 493560782 929993280 142637348 448164116 8609096 87152534 288555203 92676996 717781881 447563631 668902402 433031894 648966300 555650931 825749084 810016377 371902521 56047411 477467784 328667601 556011222 814339869 760776607 699887428 483953022 339116040 970586066 714779456 893483792 45478875 371422133 811697735 362414858 870184974 945846084 62412552 514457660 356049717 520462510 916182125 271501429 63133134 745764482 994365272 544001522 111412128 274023466 336353809 287594427 966262574 819504040 973588491 594682456 416338411 124262507 66736044 681752781 707333442 456090518 583993823 817342294 176864993 924228624 823467241 424264813 99522525 908015529 944284823 146720646 715740232 531751628 831033352 184311007 850008678 412615404 444561206 381390184 189114887 978872759 906694462 879312346 641760480 779751933 412975695 628669907 471703128 189114887 677789580 580871301 519982122 197881968 713938777 666260268 75383028 75983513 670944051 727870029 863699736 704691308 130267357 571383638 261773572 949088703 505810676 430870148 203766721 483352537 520102219 846285671 735316043 456210615 261413281 262854445 748887004 341277786 458612555 86792243 730632260 10290454 80066811 520822801 94718645 286273360 662297067 237874269 622544960 372743200 941642689 928552116 837758784 61691970 865381094 895525441 380189214 196680998 119818918 481671179 833435292 814580063 213854869 708654509 859015953 950169576 440237714 442759751 402767450 688838504 906214074 946446569 350405158 876069727 697725682 162453353 871626138 508212616 320501005 787798432 357851172 915341446 334312160 54245956 226344957 572104220 732193521 890481367 310893245 682713557 768582912 792482215 334432257 225864569 27344228 155848018 238594851 873427593 92797093 530910949 630591459 471583031 197041289 149482877 713338292 98801943 530310464 876430018 632753205 147441228 507492034 422823649 403608129 436034319 334552354 196560901 563337139 544121619 160771995 336954294 901049903 509173392 814700160 944164726 406130166 690519862 86431952 314255961 393039593 736877304 303807522 288435106 575587033 532592307 492600006 20858990 69738469 287354233 401926771 888319621 947407345 763899129 639718831 349204188 386073967 421262388 665659783 446602855 901530291 669863178 448524407 638637958 551327439 790080275 332870996 701688883 827310345 615699431 902491067 872707011 663618134 169298882 778911254 799087550 705892278 186352656 375385334 30706944 5006186 243038440 582912950 504849900 885437293 130747745 241957567 248202611 989561392 227185636 176024314 21099184 906814559 411774725 173262083 841241597 464737502 946086278 391838623 386434258 510134168 933235899 817582488 687997825 386194064 148041713 683314042 415978120 394961145 704210920 856493916 288435106 977671789 841121500 392198914 353527680 530310464 937319197 628429713 787918529 957735687 139634923 849047902 711897128 622544960 340797398 392198914 971426745 671304342 513857175 164975390 18697244 270900944 283991517 4525798 359172239 595282941 844964604 60731194 755852630 696524712 478308463 124382604 125103186 589758479 80547199 577148294 684515012 200043714 564538109 417539381 695443839 576187518 302966843 669262693 761497189 598765754 393760175 399404734 3084634 836197523 924348721 293479180 655691732 841842082 1643470 161372480 732433715 349684576 108769994 739399341 537276090 850849357 409132591 765340293 658333866 778671060 174583150 976110528 998928958 549766178 70459051 64093910 929272698 769783882 952331322 730512163 658333866 525506584 695563936 356410008 598645657 975630140 61571873 333831772 517820376 139154535 984637415 159210734 755852630 668662208 396162115 292278210 490558357 313895670 146120161 361694276 934196675 768943203 389917071 832954904 279908219 901770485 194639349 651488337 466058569 869104101 670343566 992323623 79466326 307050141 154166660 777349993 770024076 59770418 64214007 349084091 462695853 604530410 763899129 115615523 186112462 363015343 349564479 542920649 691360541 513737078 876309921 385233288 844724410 336594003 745284094 749247295 131828618 245320283 519261540 79106035 295280635 384752900 381510281 52324404 71660021 855052752 163894517 516739503 604530410 985598191 812658511 162573450 729311193 645603584 187913917 493200491 205327982 9569872 338035167 46079360 178306157 975269849 909576790 573064996 627468937 329027892 117056687 413215889 525026196 848447417 421142291 801249296 796805707 827790733 136632498 473264389 460774301 41996062 447683728 795965028 166536651 439877423 516859600 872466817 31427526 235832620 583513435 986438870 228506703 141076087 991002556 143598124 364096216 933476093 710936352 940321622 45478875 803891430 528869300 951010255 949448994 29986362 764859905 216136712 350164964 819624137 950890158 422703552 560574908 875229048 740480214 400965995 630351265 703970726 585555084 648365815 620263117 850849357 959657239 233911068 365777574 26023161 528749203 523104644 563457236 832594613 463296338 913660088 159931316 489237290 627348840 580871301 556011222 219139137 626388064 909336596 729791581 4405701 632633108 253727073 568741504 220940592 405289487 574626257 937799585 505690579 51003337 515298339 85110885 689559086 4405701 544121619 177225284 114174359 161492577 263935318 202565751 930833959 106728345 41875965 718262269 540158418 25182482 512776302 42116159 378507856 288435106 656892702 559253841 380669602 955213650 507972422 183590425 983076154 621824378 223822920 397002794 366017768 314135864 803411042 993884884 252045715 469781576 659895127 668061723 34670145 8849290 936958906 376105916 330108765 301405582 663017649 419100642 586395763 852530715 729551387 698806555 837998978 874748660 290476755 519261540 588197218 920505617 338635652 791401342 681872878 350645352 721504888 635995824 955333747 846645962 240036015 169779270 533673180 799688035 890841658 128826193 334672451 388475907 525386487 663377940 207729922 606211768 901170000 104686696 740840505 93998063 170740046 834396068 22900639 3204731 508813101 933716287 825869181 104326405 545562783 116936590 428588305 995686339 142757445 18697244 871385944 592400613 641039898 244959992 837518590 748046325 946446569 31547623 194158961 362895246 517820376 415978120 903571940 482872149 961939082 573425287 829351994 218898943 841121500 627829228 977911983 239195336 262854445 629270392 944885308 672024924 898047478 96760294 869224198 644402614 724026925 306449656 608493611 782153873 653890277 739399341 769903979 943203950 758014376 830552964 817222197 371902521 927231049 306089365 499085244 310653051 388956295 442159266 735195946 511335138 957975881 800288520 113093486 742401766 36231406 973948782 740720408 271861720 683193945 975630140 816381518 793442991 224783696 959777336 727389641 907174850 603089246 330589153 606692156 418259963 524425711 984397221 2484149 722585761 614498461 563457236 970465969 292998792 25182482 289035591 578349264 446963146 93397578 564538109 162933741 794643961 112853292 314376058 685235594 222742047 100123010 628790004 713578486 502568057 28785392 259131438 731112648 71780118 709134897 713338292 863099251 82228557 965902283 795004252 211813220 918223774 971666939 436274513 134110461 855413043 896966605 147921616 849288096 49562173 41035286 88353504 936838809 21939863 540398612 31907914 740960602 959296948 827670636 847967029 976230625 174102762 703610435 222862144 917022804 661696582 420181515 474705553 997727988 581471786 592760904 436514707 850729260 485153992 753570787 611375939 46559748 658574060 273062690 423183940 97120585 685715982 210852444 868743810 194519252 912819409 833795583 842082276 483712828 583993823 120779694 550006372 888199524 970345872 895285247 809896280 760416316 50522949 584834502 453088093 542680455 289636076 801969878 280868995 625427288 446963146 751048750 340557204 573305190 186472753 533553083 794283670 172181210 914620864 280868995 271741623 142997639 252646200 603329440 301285485 67696820 141316281 37192182 402166965 722825955 643321741 434112767 221781271 447683728 224903793 352687001 206408855 849888581 587596733 295520829 635035048 102885241 420541806 775908829 742762057 872346720 354848747 373824073 928672213 781073000 718862754 52204307 618942050 432431409 393760175 943083853 309452081 667701432 788759208 267898519 964461119 749247295 145879967 532352113 404689002 373583879 913780185 870305071 966622865 461374786 883035353 400245413 760656510 319300035 391238138 488636805 158009764 43437226 880273122 227906218 15935013 119698821 517580182 139394729 206048564 841121500 75983513 237634075 864540415 238354657 500886699 703970726 132549200 54245956 892162725 993884884 194279058 627949325 472543807 96279906 37672570 482752052 457171391 931434444 270660750 261413281 90275056 904893007 808695310 448524407 306569753 786717559 506050870 789599887 452607705 591079546 76463901 963740537 691840929 55206732 488997096 308010917 90755444 834516165 529830076 823227047 894924956 508813101 450085668 34429951 891442143 32988787 462575756 379468632 442279363 488636805 507492034 768102524 915341446 79466326 68177208 279668025 508452810 724267119 678990550 694963451 350405158 366378059 874868757 399765025 630831653 729911678 713218195 485874574 837638687 314376058 768222621 220940592 699527137 377787274 295520829 914140476 874628563 619542535 552528409 737717983 219859719 995446145 16055110 391358235 468220315 332510705 71419827 59290030 685595885 273783272 752249720 819744234 230668449 524305614 314856446 989681489 973948782 219739622 874868757 817942779 376586304 782754358 682593460 123301731 736757207 760536413 46079360 859136050 550847051 136512401 2724343 874508466 695443839 649086397 706853054 837638687 405169390 599606433 564177818 211573026 519501734 254567752 67696820 190796245 239315433 318699550 2364052 83669721 920625714 424264813 723426440 726188671 740840505 159691122 973228200 486114768 273783272 328787698 238474754 388475907 954132777 563937624 874268272 5366477 512175817 856253722 79826617 975630140 453808675 431710827 992683914 3805216 271861720 131348230 500166117 970946357 891562240 69498275 17496274 350525255 277626376 473504583 72140409 755492339 553609282 655811829 952451419 553248991 198122162 713818680 127505126 353407583 786957753 864540415 803531139 908135626 264175512 452367511 267418131 704331017 126063962 391358235 280028316 639718831 183230134 529469785 516018921 168938591 445281788 866341870 316417707 361093791 547724529 111292031 484673604 956294523 989201101 359412433 773506889 713218195 998328473 384512706 923027654 502688154 354368359 841241597 594562359 779391642 345721375 952691613 711536837 556851901 671544536 923027654 836557814 103846017 910897857 91836317 979713438 918343871 934076578 532352113 5366477 652208919 658333866 434953446 650647658 23621221 363015343 235832620 204967691 29145683 701208495 255648625 194158961 84750594 176624799 824187823 58689545 525746778 419340836 908736111 852530715 122941440 419581030 938760361 378868147 807494340 891562240 494401461 740840505 490558357 55567023 40434801 975750237 178786545 179747321 465578181 913299797 962659664 23020736 924829109 210852444 239555627 887118651 451166541 231629225 710936352 793202797 72981088 580751204 776028926 559494035 591680031 83189333 247842320 970586066 889880882 382350960 99762719 773987277 910897857 313175088 851930230 102524950 710936352 258530953 835717135 405049293 59290030 341998368 103365629 482031470 233550777 754411466 468340412 708654509 369980969 921946781 123061537 634554660 100002913 522744353 32148108 863219348 812418317 23140833 271861720 586275666 335513130 525626681 254567752 528028621 740840505 528989397 568381213 161972965 121860567 61932164 175183635 351726225 842922955 166176360 195720222 551087245 19658020 656532411 971066454 736036625 23981512 164254808 373343685 37432376 847486641 990402071 843163149 81868266 193558476 791521439 457411585 447803825 964821410 381630378 410453658 736997401 980073729 262734348 71419827 47880815 299604127 309091790 575226742 251205036 170259658 540038321 562136169 951370546 531511434 601768179 338515555 186953141 235232135 843283246 284592002 388235713 897807284 950289673 840881306 35270630 2003761 929032504 81027587 617020498 3444925 485634380 59530224 723666634 921226199 265976967 48361203 617260692 380309311 564658206 271861720 953772486 785156298 824668211 852170424 460053719 629870877 477587881 88713795 436034319 344280211 70939439 177945866 361093791 387274937 151284332 9569872 964220925 79346229 539557933 228266509 350405158 865260997 584113920 237513978 717181396 797406192 104686696 376706401 978152177 281109189 568020922 755732533 330949444 738078274 582192368 868503616 167497427 745644385 515898824 274864145 316898095 119698821 158490152 711176546 11971812 168578300 949689188 941402495 599846627 296361508 5966962 845084701 950169576 567660631 111772419 867302646 835236747 296721799 284832196 756212921 701568786 180107612 588317315 56407702 345000793 589878576 526347263 710576061 613297491 414056568 208450504 548685305 926510467 764139323 953051904 485754477 602008373 742641960 748286519 260572602 767261845 926270273 495122043 967343447 740960602 180107612 681392490 957735687 549165693 721985276 805332594 375385334 870305071 219619525 632032623 924468818 326025467 112493001 725828380 420782000 559013647 245680574 673466088 881233898 555410737 76944289 690399765 666140171 573545384 654610859 69378178 712257419 746725258 206048564 393519981 745524288 730632260 40074510 486475059 662897552 302846746 152965690 917142901 30706944 748646810 788879305 671904827 160411704 234271359 338515555 992683914 131948715 849648387 125583574 315577028 488156417 774227471 457651779 107929315 41996062 207369631 756813406 448164116 234391456 358091366 185031589 794764058 523224741 93397578 89314280 151764720 102765144 607172544 921826684 985838385 461374786 689559086 921226199 81868266 628429713 981995281 154286757 155127436 851209648 550366663 234271359 985838385 788519014 951370546 489717678 842442567 204367206 982235475 268979392 18577147 272222011 325785273 105407278 982475669 208450504 541479485 507492034 675267543 544722104 961698888 679230744 719463239 520222316 65414977 482271664 538717254 525386487 510854750 943083853 197761871 551567633 726188671 95559324 665539686 41755868 137953565 428468208 291317434 308371208 585915375 788278820 696764906 41035286 941162301 292998792 193678573 608733805 623265542 248682999 12692394 410693852 247602126 540518709 548325014 398323861 631312041 525986972 760656510 892162725 500646505 790680760 671184245 60250806 194158961 955573941 991723138 377066692 61812067 872346720 278226861 187313432 90515250 140355505 992443720 696284518 248923193 951370546 829231897 918704162 482872149 525506584 835476941 919785035 10050260 337194488 259731923 672265118 502207766 495842625 297202187 432551506 979833535 13292879 520822801 284231711 163534226 513616981 809776183 614138170 530310464 975990431 849288096 695804130 259731923 42956838 185752171 854332170 898047478 247361932 674907252 467980121 275464630 761977577 739399341 470141867 938640264 67696820 369500581 433752476 640919801 305729074 398564055 273062690 625907676 150563750 836918105 558893550 366498156 77664871 565979273 188994790 131468327 398323861 34429951 466298763 814219772 709254994 246641350 383912221 23861415 195239834 480830500 683914527 55326829 601527985 142036863 273062690 887478942 943924532 829712285 82588848 304167813 940681913 899728836 840280821 684154721 760896704 261413281 621464087 95199033 589157994 869824683 737477789 25302579 164254808 503288639 932515317 526467360 425225589 35871115 76463901 161132286 444561206 740119923 806533564 683674333 403968420 422223164 743963027 152605399 620983699 771945628 197401580 707573636 534994247 28785392 389917071 609094096 39474025 280868995 579189943 419941321 837278396 517099794 571023347 974429170 366858447 313054991 110331255 69618372 747325743 420181515 629030198 948007830 615459237 699166846 457411585 173982665 474585456 510494459 637797279 860697311 208570601 967943932 714299068 364576604 404208614 697965876 415257538 554810252 104086211 785276395 985357997 923387945 285192487 723666634 494161267 822866756 835356844 735796431 202325557 360373209 427387335 680671908 579310040 242798246 337915070 690519862 273543078 292158113 841601888 525386487 424264813 293238986 546163268 302246261 397603279 891201949 251084939 737357692 238955142 672985700 468220315 56767993 705892278 270180362 672625409 545082395 550366663 796685610 433992670 790680760 351245837 739039050 866221773 404689002 195720222 226465054 362534955 35871115 678630259 564778303 286273360 59410127 119578724 189475178 333951869 251325133 491158842 267538228 735195946 901770485 491278939 876309921 787558238 326505855 559013647 903091552 546763753 324224012 534393762 179266933 391838623 237153687 605371089 857334595 140475602 206168661 596363814 899969030 152725496 506411161 722225470 418259963 998208376 498724953 66856141 244119313 387034743 769303494 207249534 795004252 3204731 270300459 520462510 149362780 728110223 191997215 656532411 31307429 466659054 8729193 495122043 797886580 616780304 150563750 448404310 286993942 390637653 742882154 857694886 644162420 472183516 971546842 317258386 996767212 516739503 399524831 901410194 650647658 979233050 214575451 939000555 991603041 619902826 66015462 772786307 761016801 161492577 948488218 745884579 516018921 575226742 500646505 195720222 321581878 939841234 628790004 319900520 550006372 851449842 46199457 497163692 352566904 335753324 479029045 186112462 167977815 472543807 336594003 437835774 829111800 46679845 722946052 849888581 441198490 614498461 726188671 865140900 83789818 217938167 270060265 199323132 514097369 583393338 51243531 711296643 932155026 19537923 652329016 296601702 193678573 453688578 56047411 374784849 967343447 22420251 905853783 872106526 424745201 277506279 746605161 423304037 648245718 431830924 418620254 145279482 756933503 983076154 343319435 313415282 636236018 117296881 952091128 411054143 155247533 808214922 127144835 80787393 19297729 326025467 888439718 525626681 516018921 191156536 916302222 936718712 685355691 913419894 51363628 95919615 307170238 137232983 907054753 574626257 54726344 435553931 13533073 529830076 532952598 138674147 935757936 684274818 937559391 456090518 185992365 344040017 829592188 856614013 38993637 386914646 26863840 784796007 142877542 45118584 419100642 300324709 420541806 429549081 887118651 108409703 773867180 86431952 25302579 329147989 327586728 702169271 816261421 72860991 854812558 7167932 617380789 549405887 300444806 650167270 394720951 103966114 783715134 694603160 708774606 622785154 33829466 992683914 311493730 976110528 993884884 657493187 269579877 824067726 175063538 745284094 991843235 254928043 659895127 349924770 565138594 652208919 731112648 802810557 319900520 760656510 660735806 488876999 850008678 749967877 592160419 38873540 867422743 67696820 926030079 480109918 421022194 82708945 138674147 4165507 449365086 704451114 570302765 16535498 146000064 610655357 645483487 364696701 537276090 486955447 26143258 697365391 362775149 511815526 549766178 18697244 142036863 994605466 617620983 97360779 728830805 578709555 888079427 674546961 436394610 144678997 383672027 80427102 605371089 932755511 746244870 908015529 82588848 712978001 636115921 561895975 39474025 764619711 536555508 789960178 868984004 783234746 988840810 75983513 124622798 451767026 469781576 690279668 715740232 407691427 831033352 584594308 230788546 811097250 908495917 422823649 41275480 29866265 607773029 898167575 312334409 292638501 601287791 467379636 373463782 651128046 200644199 419581030 468460509 734235170 561295490 257810371 390277362 521663480 277025891 441078393 772786307 361934470 40194607 962419470 615459237 615939625 632513011 57608672 915101252 452247414 125823768 336233712 984277124 509413586 526107069 279547928 140235408 64334104 669022499 922186975 14854140 883635838 486835350 764019226 474585456 339956719 225984666 186352656 964461119 903692037 438796550 785636686 612937200 81868266 829231897 454289063 671064148 905973880 756933503 256609401 22780542 128826193 347522830 861778184 323743624 14734043 543881425 149602974 865140900 504969997 716580911 35030436 527308039 974669364 819143749 530910949 596483911 886037778 378387759 548805402 577388488 803891430 712377516 84990788 624466512 117537075 727149447 655451538 755252145 220700398 672505312 666860753 676588610 664458813 517940473 675747931 96039712 577268391 301045291 336714100 830312770 813619287 892763210 243518828 79826617 725828380 350044867 577628682 60130709 15094334 296601702 710696158 898167575 389436683 870184974 534754053 359292336 136872692 412615404 570422862 188514402 929152601 739879729 968544417 132909491 703850629 516739503 934436869 518781152 744323318 717541687 929753086 68657596 449244989 106968539 384272512 841962179 485033895 656292217 881353995 358811948 397963570 430629954 615699431 494401461 737117498 446122467 949569091 375985819 721504888 728950902 906814559 443240139 627108646 679470938 943804435 326025467 25302579 552648506 437475483 296121314 183230134 194519252 682593460 587476636 390037168 2844440 96279906 464857599 927231049 823827532 889160300 445642079 276305309 693522287 517940473 506771452 865260997 433512282 455129742 380309311 566339564 574626257 150443653 277266085 14734043 30226556 433031894 650527561 121139985 113093486 822026077 441438684 99642622 829111800 303927619 236313008 327106340 927471243 918343871 49201882 510254265 861778184 596243717 800168423 28305004 255648625 273062690 581832077 9329678 266457355 306930044 690159571 536195217 55567023 804972303 116456202 164374905 439637229 485634380 919544841 750208071 832834807 219859719 367579029 182389455 490318163 122821343 675988125 218778846 988000131 885677487 819143749 716340717 992563817 635515436 545923074 40074510 924829109 567900825 46559748 899969030 892643113 616660207 948728412 297802672 270060265 252646200 414777150 28545198 303207037 834275971 633713981 860577214 98801943 990281974 999409346 104686696 411894822 569221892 116696396 908375820 904052328 673586185 32148108 972988006 567180243 820945204 850489066 52084210 550847051 941042204 476747202 462095368 426306462 612456812 219739622 852770909 305729074 179266933 997007406 347522830 231389031 698085973 586876151 477828075 264415706 802930654 166656748 467980121 592640807 822626562 322182363 361333985 182749746 445401885 673826379 721504888 628429713 847006253 526467360 540158418 683193945 746124773 950770061 788398917 277506279 906694462 58809642 13292879 568501310 500406311 442759751 438796550 178186060 64334104 97120585 284592002 998928958 471583031 68057111 616780304 537876575 130027163 978152177 183350231 641880577 39474025 629750780 174222859 425826074 660976000 731112648 467139442 662657358 867182549 307290335 558773453 843523440 800648811 274383757 346441957 845565089 751889429 372743200 243999216 796085125 430149566 725227895 841121500 678870453 67816917 292038016 670703857 386794549 624946900 980794311 534393762 725107798 786597462 198482453 760056025 265976967 641640383 718982851 585675181 991603041 465698278 464617405 272222011 927591340 470502158 21939863 135191334 460053719 554570058 596243717 256249110 698085973 70338954 501126893 59650321 576067421 898167575 724267119 413816374 212293608 386554355 225264084 79826617 732914103 516259115 472663904 767862330 663137746 892643113 349564479 77664871 282670450 626027773 422943746 129666872 51243531 449605280 40314704 515898824 139394729 437475483 211332832 78025162 844964604 238594851 669382790 365537380 652449113 954132777 868383519 194519252 257930468 634074272 168218009 36351503 493560782 941642689 751168847 204367206 489957872 813979578 992804011 450806250 69137984 877510891 256489304 39714219 274263660 911618439 440958296 820464816 194038864 238234560 595282941 929632989 26263355 189955566 648846203 147681422 807974728 447923922 415617829 269099489 106247957 852290521 31667720 728710708 585555084 423063843 866942355 309211887 424745201 409612979 931554541 437355386 404929196 261293184 476987396 489117193 318579453 690519862 234631650 381990669 413335986 633834078 297442381 12572297 304888395 623625833 113093486 615699431 221060689 128706096 35390727 903091552 63373328 42956838 965902283 232109613 557092095 210372056 377907371 974549267 63853716 262133863 502808251 71780118 534393762 426426559 711056449 927110952 735916528 730872454 537035896 941282398 921346296 66736044 454769451 775428441 608973999 253366782 413576180 657012799 736396916 411774725 564057721 792842506 513136593 770024076 913179700 878111376 841241597 352927195 295400732 4165507 348363509 302246261 686076273 658213769 558172968 35510824 202306 828631412 82348654 469541382 627348840 465217890 519021346 722585761 928071728 411774725 208930892 604290216 588677606 927471243 163053838 354128165 666140171 110211158 752129623 236793396 12212006 466899248 840280821 453448384 61812067 333591578 440477908 151884817 645723681 554329864 776269120 334792548 967103253 372863297 735916528 986558967 174703247 913419894 502688154 396042018 124862992 352927195 8008611 859736535 930113377 115255232 714178971 327106340 972867909 648966300 616660207 318699550 376586304 66495850 282790547 909576790 322182363 914620864 84750594 64454201 331189638 405289487 443240139 982595766 840280821 500046020 210492153 302246261 308611402 417419284 199683423 186352656 472063419 46199457 173382180 641400189 240516403 242678149 775548538 841481791 965541992 752249720 538356963 237513978 503408736 348843897 716941202 723306343 553489185 422103067 368059417 645603584 73941864 576908100 741561087 920865908 601287791 725107798 629150295 433872573 547484335 790920954 655451538 813979578 490438260 689078698 681392490 933716287 82588848 800168423 596844202 522504159 386073967 953292098 982355572 800768908 477948172 891922531 798246871 370941745 704210920 922888 799688035 663978425 796925804 784195522 678510162 764139323 261413281 437715677 182029164 114054262 90395153 121740470 532712404 724387216 875829533 130987939 323503430 218178361 808094825 749127198 640679607 920265423 934917257 836437717 421862873 927591340 846645962 409012494 889160300 243879119 406850748 623385639 87993213 611976424 790920954 321701975 137953565 397483182 669622984 719583336 202685848 701328592 122461052 251084939 584113920 730392066 713818680 276785697 754411466 804371818 614138170 519982122 880393219 836437717 434352961 501367087 553369088 132429103 226585151 262494154 772065725 548084820 825268696 774587762 303927619 447203340 179387030 498244565 858415468 598405463 480590306 281229286 182389455 885557390 604770604 976470819 579069846 439397035 564177818 351005643 380069117 341758174 209651474 799327744 763658935 994605466 537876575 782394067 776629411 509413586 512416011 582192368 70699245 758734958 473744777 473264389 346321860 165936166 934436869 167857718 774948053 441919072 515298339 776028926 638878152 614618558 835717135 110451352 589398188 118377754 950409770 111412128 176264508 585194793 162573450 484193216 914861058 948127927 23260930 538837351 69858566 252165812 222742047 807734534 415017344 928792310 581591883 107569024 934677063 570663056 550847051 97360779 954853359 390517556 686436564 742882154 631191944 213254384 301285485 964941507 662777455 51603822 347402733 221300883 224783696 385353385 184311007 291797822 418980545 573665481 268739198 157289182 874508466 45719069 658213769 883755935 645603584 180107612 524906099 912459118 684274818 18457050 319179938 532111919 534033471 843763634 146480452 32268205 661336291 386554355 854212073 101804368 569582183 581832077 491759327 938400070 295881120 90995638 16895789 600687306 516139018 748286519 795364543 608853902 766180972 666020074 913179700 408532106 830432867 485514283 781433291 586155569 264896094 553849476 443480333 289515979 205568176 219379331 623745930 308010917 891322046 168698397 146720646 847246447 831393643 248923193 125583574 999649540 452007220 696524712 332870996 597684881 333111190 787197947 268499004 881353995 556491610 47400427 254567752 30106459 483352537 77544774 398203764 761857480 427027044 301765873 975389946 339596428 444681303 717661784 853251297 19778117 926630564 235832620 90635347 4045410 320020617 354728650 372142715 352927195 90154959 179987515 467019345 254807946 567420437 918343871 463776726 221781271 496563207 667461238 719343142 371662327 976470819 918824259 498004371 885677487 688958601 933836384 987279549 463296338 278707249 687157146 952931807 337554779 4886089 931194250 935878033 37792667 681032199 385593579 5966962 396762600 70459051 106968539 314616252 811097250 506771452 580991398 800528714 693282093 158370055 456330712 957735687 157769570 32508399 255888819 460414010 654730956 661816679 319059841 319059841 341517980 684515012 739879729 55326829 42236256 810016377 656772605 279427831 327826922 575346839 725227895 863219348 954853359 485514283 234631650 121740470 892883307 25182482 780592612 465097793 404088517 73941864 230428255 311253536 543280940 223222435 158850443 585074696 139875117 157529376 51723919 706732957 13412976 773747083 141556475 338035167 788278820 811697735 585314890 971787036 37672570 523464935 837398493 798006677 313535379 276185212 157769570 909336596 22780542 741801281 821305495 154887242 14493849 514337563 984757512 196680998 63013037 964821410 515298339 15814916 961458694 518060570 603809828 502928348 430870148 372142715 378147565 39474025 779151448 169539076 143718221 793563088 820464816 562496460 949569091 790200372 910177275 810136474 393279787 394360660 961939082 606211768 111412128 234511553 213614675 56767993 105767569 30947138 48361203 480830500 523825226 115975814 944885308 276185212 874748660 642000674 3685119 417899672 228866994 141196184 733754782 327947019 585915375 116095911 270900944 168938591 323263236 951370546 486595156 475906523 740360117 299484030 927110952 209291183 198842744 141436378 825268696 204127012 427507432 302966843 658453963 262374057 633113496 764980002 208450504 783114649 777830381 985237900 533432986 496443110 655811829 612456812 512896399 140235408 800889005 496563207 356289911 641400189 660735806 130507551 660015224 956174426 984757512 560574908 479869724 704571211 893243598 29505974 359772724 702889853 731352842 243518828 461614980 577868876 297562478 772546113 794643961 39954413 69978663 12332103 984637415 966262574 884116226 1163082 746965452 541719679 690399765 89194183 412495307 311013342 78865841 553969573 156688697 212053414 781793582 317258386 453088093 794403767 505330288 403728226 247241835 82348654 827430442 94718645 812898705 867062452 584714405 313295185 845204798 683073848 274143563 987039355 747325743 235592426 689318892 622905251 847366544 272582302 490798551 618461662 977431595 713098098 278226861 982715863 848447417 689559086 208930892 103365629 937799585 752730108 882074577 534153568 900569515 999529443 509413586 813739384 444561206 896005829 275464630 785636686 432191215 728110223 595162844 520942898 297082090 355088941 561055296 100603398 899488642 501607281 639478637 416938896 654010374 489957872 265616676 370461357 117416978 119578724 544722104 801489490 629150295 195840319 788038626 966863059 624346415 183350231 442639654 382230863 1523373 140355505 646564360 359652627 12332103 403127741 816982003 959417045 216376906 425105492 250244260 491519133 41635771 205087788 745043900 913179700 884356420 952211225 923748236 152245108 491759327 283631226 777830381 363856022 854692461 450566056 962659664 927471243 848807708 862859057 528388912 471583031 968064029 761377092 294920344 483832925 443240139 970345872 600327015 191276633 556371513 861658087 12332103 569822377 284592002 212173511 39113734 329868571 310773148 688718407 677068998 62292455 15094334 319179938 461735077 620022923 76583998 981034505 866582064 195480028 976951207 834756359 428948596 511335138 139755020 245800671 527308039 262854445 975870334 217097488 505330288 277025891 64814492 924709012 265376482 216256809 816021227 825508890 223462629 456450809 259972117 507371937 188874693 334432257 785516589 981154602 42236256 476026620 677309192 192477603 661336291 781913679 261413281 411894822 309091790 431710827 906574365 212773996 286513554 559974423 42596547 435674028 958936657 870305071 357250687 677909677 532712404 53285180 638517861 975630140 905733686 815420742 745043900 465698278 970946357 51363628 202805945 696164421 512776302 291077240 946926957 974188976 635155145 236793396 984277124 800648811 219379331 195840319 501967572 711296643 39233831 611255842 938760361 185391880 544602007 186232559 780712709 609094096 553008797 354368359 55807217 378507856 599606433 508572907 85591273 966142477 648245718 928432019 781913679 446002370 878952055 169779270 865020803 484073119 577268391 548204917 638157570 668662208 639478637 711416740 876910406 655931926 208570601 24702094 130267357 55687120 246641350 485514283 869344295 859496341 437595580 935277548 394120466 637677182 122461052 392078817 478668754 570783153 861177699 653529986 864060027 35871115 710095673 613417588 491519133 225744472 953532292 821425592 386914646 387274937 297202187 495242140 904532716 456210615 666140171 688117922 891682337 683314042 604410313 795965028 680431714 4405701 179387030 40554898 677669483 759815831 570422862 990161877 946806860 467980121 788398917 606451962 639478637 173742471 431830924 731833230 729911678 206048564 763298644 602969149 501006796 242678149 111292031 2003761 872106526 384632803 939240749 856013528 708294218 553369088 104686696 595042747 308731499 347042442 355088941 349324285 854812558 602248567 350164964 556011222 416338411 21819766 831874031 806293370 368900096 945245599 362054567 432071118 436634804 729070999 504129318 583393338 728110223 12452200 744083124 422583455 931674638 88473601 294439956 837038202 917022804 467379636 785396492 180708097 207009340 443960721 565378788 574746354 520942898 574746354 674066573 991843235 510134168 257570177 860817408 863339445 796205222 671184245 808214922 134230558 682113072 29145683 609694581 34910339 880633413 18817341 870064877 67456626 57368478 894444568 756813406 932995705 29986362 389917071 872827108 550967148 234751747 808335019 523945323 677309192 891922531 323623527 39474025 127745320 326746049 241837470 980434020 598525560 62652746 559373938 748887004 980914408 836437717 73101185 530310464 802089975 445401885 908255723 988600616 124022313 486114768 820224622 478308463 44157808 698206070 165335681 956414620 515778727 964581216 984517318 131708521 354128165 265136288 283751323 459092943 49922464 323863721 498604856 94358354 400245413 428588305 280508704 34429951 281229286 867903131 575106645 750928653 494641655 656772605 141916766 842802858 174463053 838479366 523705129 899728836 804972303 243638925 564418012 620263117 681512587 319780423 802690460 700848204 901770485 696284518 364336410 765220196 198482453 641280092 550726954 916662513 224543502 289756173 790200372 414657053 614498461 289155688 557932774 919544841 194158961 930233474 726669059 833195098 724987701 212773996 904412619 544842201 461975271 397122891 992443720 669022499 309812372 636115921 260692699 194399155 8128708 277746473 938880458 479749627 651368240 869584489 478428560 578949749 217818070 635395339 774587762 228266509 674546961 749127198 746725258 7528223 986679064 935878033 552408312 627468937 270420556 761617286 520822801 577868876 693041899 196200610 116576299 725468089 25903064 303327134 560214617 624826803 608613708 300444806 545202492 312694700 473744777 151764720 759815831 769063300 772906404 758855055 756212921 429068693 236793396 200283908 986438870 392919496 954252874 180588000 49922464 311133439 229227285 947647539 383311736 184791395 77905065 674306767 375985819 960978306 542800552 150924041 901530291 847726835 565859176 277145988 799207647 762217771 996286824 364216313 96279906 795965028 681032199 316177513 338035167 168218009 50643046 580751204 140355505 700247719 107689121 300564903 869944780 654851053 435073543 111051837 118978239 532111919 891081852 293118889 329628377 541479485 480830500 245560477 560214617 333831772 445882273 428468208 742882154 903211649 810977153 675027349 635995824 321461781 58569448 20498699 951370546 316537804 587356539 17976662 792602312 377066692 358571754 835236747 406490457 204006915 657853478 89434377 709134897 749727683 393039593 935277548 351606128 887599039 775548538 166536651 333231287 867302646 982475669 291677725 308491305 683193945 820945204 222261659 225264084 910417469 739399341 707213345 261773572 602488761 670463663 73701670 570542959 606812253 705051599 250124163 975750237 190075663 867182549 194519252 473504583 724507313 805572788 483712828 329027892 779631836 110451352 931554541 623505736 336113615 208450504 557692580 866942355 656892702 683794430 641039898 961338597 254447655 639838928 353047292 158249958 11611521 582792853 580871301 963260149 441919072 895645538 410453658 91476026 241837470 744323318 931914832 733514588 348603703 472183516 480230015 1763567 276185212 898647963 837878881 984637415 745764482 127625223 11011036 976230625 285792972 78985938 435794125 604170119 86311855 562136169 605371089 579189943 207249534 957735687 727870029 388596004 580270816 531271240 516259115 954252874 690159571 678390065 479989821 404088517 943203950 865621288 700247719 751649235 874388369 990882459 981034505 226344957 151884817 139995214 79346229 624466512 214575451 570542959 426786850 258410856 501847475 955333747 291557628 157889667 753330593 826589763 864420318 467980121 661456388 919905132 865741385 757293794 766180972 810496765 105647472 32148108 62412552 66736044 308971693 529229591 454048869 835717135 156928891 7528223 76343804 873547690 993884884 598285366 980073729 746244870 6207156 685715982 738078274 104926890 67336529 822746659 484673604 834996553 16655595 130867842 586876151 1523373 901170000 880273122 960137627 464857599 731953327 31067235 119939015 221901368 532832501 219619525 699527137 167977815 564778303 591439837 926390370 939000555 695684033 771104949 1883664 916422319 307050141 793923379 482511858 474585456 332991093 767261845 575466936 446963146 653169695 140595699 519381637 740840505 379828923 658333866 409853173 878711861 273062690 970826260 105287181 147080937 302846746 871626138 318579453 370581454 751889429 823227047 6687544 776869605 941762786 743242445 335993518 468820800 741681184 239555627 933476093 638758055 979593341 703250144 451526832 481070694 684274818 650407464 37312279 69378178 184070813 526467360 312934894 431230439 576187518 428588305 32748593 34189757 560815102 475065844 639118346 823827532 923147751 777470090 287234136 556491610 922667363 787077850 525746778 914740961 774707859 33228981 406970845 665419589 583633532 852170424 6207156 59650321 914380670 583633532 259131438 486354962 220580301 333831772 763658935 501607281 991362847 46559748 70338954 948608315 285192487 448284213 420541806 343199338 58089060 202445654 479149142 908135626 154046563 623025348 255528528 363976119 349684576 188394305 568501310 33709369 608613708 995806436 624106221 166776845 53165083 27704519 82708945 881954480 438916647 407451233 261052990 674787155 908495917 227906218 39233831 322403 299844321 522864450 858535565 203286333 565859176 709134897 489837775 663017649 970105678 460053719 704210920 123662022 175664023 232349807 605250992 465217890 357370784 424264813 620743505 169298882 926750661 124022313 262734348 133990364 11131133 119218433 744683609 727389641 177705672 73461476 898407769 660015224 473864874 362655052 925909982 622905251 437955871 713218195 470502158 460293913 791881730 326505855 330949444 886398069 135671722 510254265 770984852 327226437 227185636 705772181 704331017 721384791 978632565 132429103 86431952 781673485 934797160 794764058 785636686 478188366 750328168 788278820 601527985 228146412 222501853 36951988 75022737 774107374 77664871 369740775 312934894 427627529 650887852 994605466 142877542 4765992 566699855 621944475 282910644 807374243 967463544 635515436 588317315 60130709 68057111 40194607 448164116 166536651 625787579 531271240 441558781 777710284 615098946 482992246 96039712 391358235 791641536 127264932 406970845 903091552 122581149 611616133 177705672 297802672 749607586 389196489 204607400 812898705 294319859 997848085 990402071 624946900 948368121 273062690 546163268 568621407 162573450 945365696 177825769 258651050 214695548 112372904 952811710 761497189 252766297 589638382 930954056 540879000 839800433 93037287 85831467 280388607 486835350 367338835 919304647 732313618 183710522 819624137 13412976 638637958 61932164 581952174 937199100 166056263 344280211 185752171 115135135 797886580 587116345 690279668 130267357 231749322 410934046 427027044 436274513 520702704 851930230 976590916 676828804 3805216 980554117 221661174 506170967 151164235 443480333 383551930 908135626 285913069 83669721 555771028 945605890 713338292 35510824 755612436 580871301 374904946 103245532 714899553 927951631 146120161 377186789 855893431 165695972 630111071 532111919 420782000 412855598 959296948 515058145 325304885 255888819 450686153 504129318 58089060 702409465 624346415 291077240 715500038 839199948 813619287 910657663 704090823 980073729 728350417 553008797 77784968 472183516 527788427 58689545 104566599 247482029 551447536 487676029 925549691 233790971 551807827 972747812 447803825 655571635 222141562 160291607 332030317 273783272 29145683 246881544 208810795 264535803 460534107 750208071 221300883 669622984 680191520 529950173 170019464 635275242 780112224 118978239 753810981 354128165 993644690 421382485 81027587 127985514 466058569 214095063 540758903 294680150 670944051 249163387 639718831 335152839 486595156 516018921 884596614 890721561 342959144 592280516 88953989 617500886 570903250 320020617 234631650 967223350 17135983 962419470 307770723 145519676 971066454 6087059 170499852 837878881 924108527 632152720 461855174 916302222 158850443 49442076 294680150 583993823 384752900 762217771 352326710 144919191 334192063 386554355 365297186 479869724 764139323 672745506 93037287 510374362 195720222 654010374 498484759 465458084 322062266 296601702 210492153 202085363 181668873 909576790 957015105 551927924 536795702 518420861 35030436 106848442 660375515 162573450 399164540 53525374 695684033 729671484 207369631 448164116 219619525 497283789 479629530 214215160 777590187 768342718 389076392 201004490 289035591 747565937 736757207 737597886 656412314 938760361 577508585 413456083 142517251 969625290 752850205 536555508 15454625 866582064 844244022 43677420 909937081 344160114 999769637 238354657 717781881 363135440 965421895 425946171 237994366 303086940 95078936 615098946 652569210 30226556 707573636 94838742 529830076 28064810 455490033 789960178 563457236 575587033 192237409 516859600 358932045 147441228 728470514 844604313 739279244 93517675 305608977 891322046 744323318 502568057 799087550 814820257 46439651 920986005 53645471 305849171 563217042 842322470 57368478 586275666 848327320 253246685 136392304 948608315 481911373 360613403 372983394 55086635 322542654 911498342 260932893 784315619 922907557 870665362 486955447 102044562 81988363 84750594 801129199 600807403 760056025 646924651 119818918 777109799 858535565 98201458 699166846 657252993 318339259 493680879 384512706 494041170 317378483 74182058 385593579 403488032 175664023 788278820 593361389 132188909 387755325 382591154 754411466 854572364 943804435 71780118 491158842 417299187 279547928 233190486 373223588 363495731 851449842 2484149 803531139 860697311 501727378 399524831 414777150 684154721 15454625 872707011 60250806 753090399 372262812 375625528 294439956 158970540 946206375 767502039 539557933 993044205 977071304 85591273 814940354 478908948 934436869 702529562 462815950 122220858 593481486 12212006 874388369 575587033 789840081 958816560 742762057 113453777 518060570 443480333 318339259 740840505 685715982 27944713 821305495 408532106 32628496 532232016 446843049 861898281 299724224 578469361 201484878 509533683 553489185 501727378 843643537 775068150 141196184 22059960 458132167 542800552 819263846 986078579 160531801 404689002 291317434 421622679 508212616 993644690 40915189 109490576 64694395 930353571 825508890 92436802 895285247 123421828 674066573 191757021 949929382 593121195 613777879 237273784 333711675 702289368 282069965 136512401 19778117 909576790 587836927 12692394 401446383 381990669 257089789 616179819 539678030 445762176 769543688 891802434 964100828 557452386 617861177 847967029 24822191 376346110 214575451 161252383 937439294 50763143 145159385 712017225 121860567 872466817 895405344 770024076 37312279 658093672 446362661 578709555 406490457 615819528 176864993 523705129 428708402 86311855 512536108 499565632 740119923 976711013 852290521 513616981 441198490 342478756 462575756 589037897 160051413 725227895 360733500 464016920 271981817 717781881 819744234 237273784 740480214 860937505 685715982 596724105 908616014 921466393 237754172 137953565 478068269 878591764 906814559 350164964 553128894 564898400 820104525 323623527 97841167 625187094 21579572 214695548 344160114 561415587 279427831 766781457 532352113 473504583 443960721 780712709 191757021 892763210 261413281 935757936 205327982 275704824 446602855 263815221 885797584 211693123 630831653 864180124 895645538 251084939 176864993 518781152 398804249 399284637 839320045 915341446 305729074 839800433 424985395 781913679 259611826 718862754 698926652 558533259 801969878 242798246 721624985 473984971 647765330 565979273 330108765 587236442 986799161 111652322 85711370 937799585 639238443 250484454 462215465 950169576 559494035 93877966 98081361 951010255 25542773 756212921 112012613 834876456 610895551 502327863 757533988 801969878 502327863 281829771 101684271 561175393 152365205 916422319 64814492 424625104 419340836 611496036 480470209 669983275 932034929 567900825 674546961 637316891 131588424 392799399 213614675 116696396 217818070 998088279 616540110 809535989 319300035 562136169 318219162 487555932 897086702 326746049 102645047 4765992 995446145 591319740 545082395 411294337 441558781 343799823 182989940 379228438 730392066 746845355 986438870 457531682 134831043 697965876 642000674 886638263 246521253 743122348 347162539 789479790 8849290 893964180 376706401 782273970 252766297 122220858 417179090 185151686 463296338 342358659 584474211 317978968 129546775 935157451 479389336 945485793 118377754 447683728 533913374 240396306 273663175 284351808 901410194 138433953 420301612 655091247 834636262 482752052 399765025 534754053 299964418 161852868 987519743 377186789 853851782 875709436 482031470 889520591 222021465 456090518 400965995 170139561 392439108 964461119 118137560 899008254 994125078 992083429 921466393 4886089 816621712 922066878 398564055 284832196 522984547 178906642 288435106 229107188 618221468 215296033 748406616 682833654 224663599 686316467 20858990 196080513 917142901 630591459 880153025 957615590 785276395 943083853 988720713 914020379 429669178 725347992 910177275 921466393 944885308 325785273 223222435 322782848 929753086 475306038 926870758 157409279 363135440 590118770 863579639 177465478 522023771 118978239 252886394 598645657 760776607 824307920 869704586 92676996 154046563 329388183 888679912 93517675 495001946 459933622 814940354 495362237 143598124 655571635 860577214 49081785 589758479 292998792 694603160 243398731 69137984 452607705 554209767 5966962 231148837 495122043 560574908 251685424 165335681 232469904 839560239 463536532 139755020 158970540 770264270 628189519 54966538 76583998 216977391 369500581 428348111 527187942 756092824 628549810 830192673 776269120 622064572 708414315 780352418 348123315 571263541 481310888 988480519 582312465 961218500 270300459 548685305 945125502 32988787 474945747 427867723 820464816 943684338 17736468 992683914 984277124 344760599 613177394 320501005 106007763 319179938 571503735 529229591 476026620 18457050 46559748 128946290 684755206 189114887 212773996 356169814 87032437 62532649 407331136 151164235 155727921 299123739 901890582 472303613 157649473 524185517 136152110 979112953 226825345 360853597 730992551 335873421 270660750 761617286 195840319 847606738 111171934 680071423 330228862 895765635 887839233 101564174 697245294 105407278 396762600 135911916 251805521 194038864 195600125 925309497 110691546 844724410 93157384 232950292 76824192 977311498 671424439 615459237 310893245 410093367 759455540 679711132 923147751 93637772 78385453 328787698 978632565 467860024 580030622 862618863 594682456 494641655 799087550 221781271 825508890 143357930 979713438 240636500 7648320 377066692 103125435 742161572 68897790 419460933 270060265 850849357 889160300 898407769 84630497 612336715 82348654 415737926 595523135 743842930 977071304 530430561 199563326 441198490 606932350 861658087 312574603 632633108 400485607 922888 475546232 698446264 791641536 800408617 459213040 219259234 439997520 659895127 946566666 874508466 495962722 433031894 580270816 655571635 41755868 240036015 425465783 877030503 563577333 781793582 552168118 3565022 712257419 306329559 16895789 507612131 297082090 852050327 446002370 584474211 88353504 591199643 701448689 14493849 429188790 968904708 382951445 638397764 548685305 116336105 374544655 925909982 627348840 326625952 179266933 541959873 723666634 611496036 810736959 729671484 938520167 927711437 762457965 520822801 367098641 194279058 580631107 618701856 223342532 166296457 612937200 239315433 818303070 715259844 317978968 579670331 166776845 909336596 998568667 558413162 732673909 617020498 866702161 417899672 352687001 677669483 429308887 469181091 334312160 902370970 925549691 621824378 298042866 930593765 349684576 675507737 645723681 456931197 573425287 338875846 785276395 95679421 910057178 743842930 470742352 435193640 10050260 337554779 236192911 785036201 683314042 635035048 123181634 97120585 199563326 571503735 79226132 972507618 815901130 493440685 550246566 794643961 620143020 44638196 19057535 336834197 932635414 15574722 695924227 198002065 428948596 902250873 79946714 192717797 35751018 78505550 586275666 90034862 511815526 877991279 453568481 968184126 744203221 554810252 356890396 165335681 519621831 232109613 740480214 911017954 493680879 84270206 995566242 67937014 654730956 332390608 103485726 9569872 824307920 273783272 165095487 601167694 966983156 77424677 805212497 776869605 678269968 246881544 663858328 83549624 528268815 477227590 251205036 286633651 608973999 100123010 126664447 12091909 855533140 810857056 734355267 623625833 390997944 542320164 817822682 845685186 327706825 594442262 759815831 366378059 367579029 582672756 523825226 80186908 920986005 36231406 683193945 211212735 759335443 833795583 769903979 519501734 584714405 429068693 317018192 165575875 705411890 275224436 654851053 720183821 549405887 23260930 802791 528869300 836317620 482151567 963620440 873307496 843163149 205808370 916902707 593961874 51964113 147441228 204487303 465578181 198722647 875829533 481430985 124862992 731953327 943564241 806653661 749967877 159691122 98801943 525386487 965301798 773987277 370821648 260092214 61571873 930833959 427147141 526587457 524786002 550847051 246881544 827670636 872947205 55206732 796445416 357130590 722705858 828751509 381510281 160651898 30947138 42716644 783114649 761977577 284471905 981634990 54005762 959296948 753090399 787558238 308131014 328307310 919905132 181788970 530910949 835957329 481310888 337915070 497764177 947287248 865981579 678990550 990522168 650887852 950890158 409132591 747806131 838239172 943564241 477467784 931194250 7167932 836197523 923267848 674667058 738798856 57848866 457171391 302966843 697245294 643561935 154406854 6927738 268859295 906814559 815660936 318819647 859136050 634914951 63613522 402527256 139514826 704691308 347522830 359292336 77544774 277626376 236313008 267418131 37192182 988360422 123181634 929032504 19177632 764499614 315336834 990402071 773146598 172181210 362414858 26863840 477347687 318339259 241597276 446242564 334192063 42716644 436034319 332150414 156448503 653409889 544361813 977911983 390397459 31667720 714899553 690159571 739519438 56287605 342959144 719703433 118017463 905373395 498004371 948968606 724747507 363615828 151764720 215175936 373343685 231869419 624466512 501126893 25182482 427147141 903451843 249883969 796085125 662176970 214455354 260452505 108649897 112853292 420421709 101444077 294680150 489357387 154046563 289996367 700487913 994125078 751769332 193438379 595403038 632152720 225984666 543521134 9329678 802791 692201220 646083972 740240020 510014071 374664752 102164659 63133134 824067726 710696158 35270630 758014376 81868266 673826379 83069236 989681489 309091790 666620559 795004252 989441295 311613827 429909372 515538533 550606857 652329016 112853292 223702823 855413043 607532835 991122653 578829652 272822496 590238867 442159266 931434444 486354962 987039355 23741318 725948477 466418860 356770299 794523864 164855293 101083786 348963994 576908100 812538414 155848018 695924227 81147684 970465969 390997944 682593460 501246990 600447112 707333442 900929806 768703009 238714948 331910220 390397459 400005219 633233593 563817527 373343685 149723071 885917681 919664938 218298458 230668449 957855784 29025586 776869605 338395458 46679845 933836384 930113377 986799161 900449418 178666448 804972303 874148175 120659597 222982241 290236561 525266390 22540348 700007525 12091909 377426983 861057602 288555203 349804673 115855717 767381942 15694819 234871844 421142291 287834621 781553388 288915494 749007101 875949630 236072814 607172544 610174969 351125740 501727378 457171391 94478451 62652746 831633837 769303494 525266390 668301917 785996977 297322284 646804554 657493187 193438379 913900282 542440261 944044629 913900282 596363814 181668873 778550963 936598615 862138475 60491000 166776845 158850443 654370665 220820495 102284756 187193335 519141443 910537566 727749932 139154535 364576604 600687306 17736468 152845593 732794006 703850629 388596004 407331136 555410737 47880815 994965757 976590916 137232983 349444382 8248805 397843473 660015224 914260573 480830500 913900282 297082090 335393033 189715372 632993399 980914408 548084820 288675300 91716220 785036201 457531682 322182363 628189519 988720713 192597700 12212006 133029588 674787155 39353928 963380246 279668025 841361694 729671484 767261845 861297796 174703247 568981698 750808556 847606738 674186670 863819833 375625528 788639111 675627834 866341870 13172782 386674452 461614980 831994128 574025772 940081428 513256690 649086397 235472329 648606009 393399884 861537990 393399884 410213464 187313432 828151024 196200610 641760480 73221282 33228981 708054024 276425406 717421590 96520100 989921683 315817222 578229167 308851596 549285790 276065115 844003828 619062147 528268815 788759208 552048021 162453353 891322046 165335681 421862873 678630259 745524288 612937200 338755749 923027654 963620440 240396306 579550234 668782305 166536651 377907371 370581454 8248805 171700822 331670026 544481910 387274937 941882883 964941507 967463544 282790547 853371394 178546351 830312770 247361932 344400308 833315195 198482453 171580725 297922769 228266509 85230982 775668635 277025891 721745082 804011527 104446502 224063114 979953632 759575637 756933503 100963689 400005219 747085549 367819223 786837656 387755325 735676334 197041289 937319197 414777150 393039593 330348959 964941507 656892702 103245532 203406430 523585032 422223164 162093062 24581997 548805402 694843354 437115192 956534717 375025043 654130471 669622984 645483487 557692580 324944594 950890158 863819833 766901554 143357930 883155450 566819952 87152534 369260387 128706096 241957567 682113072 640679607 433272088 365417283 159931316 940681913 792722409 703970726 149482877 735195946 837038202 946446569 88353504 545802977 705892278 867662937 911738536 668301917 75623222 896846508 781913679 830192673 713578486 67096335 467739927 670103372 197041289 411654628 185391880 941642689 709495188 392439108 644762905 18336953 470622255 315697125 772666210 896125926 837278396 24581997 744683609 737597886 76103610 243278634 916542416 286753748 383311736 855413043 61331679 507852325 216136712 234031165 812178123 651248143 990762362 273903369 112012613 292638501 99762719 886998554 848927805 173502277 541119194 345120890 874028078 977431595 497764177 20018311 841481791 620623408 271741623 716821105 235712523 356890396 410093367 837998978 453088093 815540839 689679183 543040746 971306648 422703552 955573941 898167575 314135864 302006067 618942050 197281483 185151686 353527680 483112343 393279787 911498342 891081852 672385215 681152296 24461900 341638077 765460390 709375091 134230558 209171086 104326405 657973575 746965452 442759751 561895975 729191096 672745506 455249839 868743810 172061113 924348721 797165998 874388369 155367630 747686034 366257962 792362118 109850867 51363628 653169695 141316281 639959025 56888090 768222621 533793277 950409770 996406921 466659054 822506465 12572297 193678573 392559205 600927500 70579148 339956719 606572059 956534717 44277905 470622255 211933317 963380246 624706706 599486336 577268391 516739503 713698583 802210072 530550658 941642689 468220315 1403276 31907914 598885851 803290945 542800552 721504888 392078817 76343804 375625528 474585456 439877423 963140052 69978663 822386368 367939320 336473906 299123739 119218433 83549624 226224860 579069846 336113615 227425830 214935742 12332103 924228624 770984852 265736773 323983818 508813101 815901130 878711861 43917614 545802977 529109494 686796855 180948291 633713981 902010679 597804978 546643656 143598124 674066573 290116464 60010612 350044867 401086092 219739622 8128708 308491305 69618372 305488880 756933503 622905251 967943932 224783696 192597700 794643961 49081785 445762176 349204188 208090213 24942288 376105916 460053719 363495731 242798246 741440990 553969573 972387521 576547809 880633413 658333866 272222011 31067235 351486031 464737502 204847594 260212311 19057535 314616252 962419470 901410194 915581640 657252993 405889972 217818070 684394915 866221773 252285909 922667363 376826498 492479909 5966962 766541263 525026196 436274513 637557085 704331017 68417402 493921073 186112462 872226623 4525798 79826617 675387640 923748236 12572297 159090637 464617405 731472939 620143020 837878881 619782729 947407345 37312279 827790733 108649897 533192792 723186246 901530291 145399579 981274699 858415468 296241411 118377754 405529681 647405039 749247295 562976848 294560053 885557390 868503616 311373633 878831958 492359812 107689121 649086397 967463544 851690036 861778184 71539924 143598124 555050446 769543688 492479909 119218433 788879305 288435106 159931316 870064877 229587576 844604313 386194064 820224622 323503430 403007644 285672875 550486760 820705010 75503125 45238681 829231897 737597886 105407278 678269968 882434868 540758903 600447112 464137017 70579148 759335443 704210920 496803401 255408431 599246142 713698583 280748898 581591883 977671789 380909796 611496036 333351384 569341989 516739503 545562783 192957991 65775268 700367816 152965690 65535074 664578910 490318163 929632989 502928348 394720951 274143563 596724105 505330288 934436869 381990669 316057416 349444382 538837351 468820800 951250449 243879119 280989092 454649354 678990550 462936047 48961688 773386792 378988244 930233474 789960178 262614251 461374786 587236442 949208800 214815645 562496460 341397883 184190910 643561935 673586185 252646200 944765211 590238867 792722409 285913069 473864874 794163573 754411466 361333985 931794735 390157265 59410127 358691851 836798008 464016920 122581149 673105797 330829347 199203035 962779761 770144173 532111919 156328406 215896518 360733500 750208071 997848085 998568667 718982851 408171815 402767450 985237900 100483301 411174240 587476636 417419284 186472753 328787698 718382366 19778117 155607824 865861482 514697854 631071847 245920768 802450266 259491729 757293794 114294456 248322708 643081547 249283484 415017344 226945442 127264932 247962417 217217585 20138408 413576180 408412009 436514707 3565022 618341565 220940592 189835469 786357268 246881544 11251230 518540958 421022194 429428984 331910220 953412195 701688883 514817951 395321436 826229472 634314466 786957753 833075001 384993094 149002489 958216075 406490457 4165507 669622984 96640197 95319130 950049479 302846746 19778117 596724105 843523440 617500886 177585575 852770909 211332832 482511858 81507975 492720103 879672637 828871606 134350655 11371327 450686153 156688697 579910525 823947629 214935742 185151686 354848747 609454387 877751085 359772724 781073000 300805097 182869843 5486574 720424015 157289182 918704162 13893364 901770485 372142715 979953632 993404496 405769875 405049293 656172120 480710403 104566599 964220925 88953989 890241173 710816255 581351689 724867604 892282822 8128708 69618372 749967877 72260506 415377635 732073424 910177275 50763143 126784544 326265661 562256266 797406192 250844745 561295490 507371937 623385639 462215465 819143749 800408617 631312041 161012189 136272207 268499004 457891973 143117736 345481181 374664752 878351570 438556356 198842744 420301612 389796974 176624799 71299730 558533259 762217771 237393881 268859295 933836384 125343380 171820919 534153568 962419470 247602126 968784611 705531987 744443415 127865417 245320283 510254265 331069541 897567090 258050565 696164421 921946781 266217161 354008068 813258996 660735806 335993518 923267848 86672146 181909067 829351994 908015529 199563326 258771147 553609282 395681727 825268696 507251840 764859905 582912950 445281788 898167575 191877118 842202373 107689121 759335443 507852325 644162420 164615099 382230863 905853783 127625223 87632922 108769994 350645352 726669059 310292760 967703738 552768603 420782000 882314771 518901249 666620559 684154721 213374481 572704705 764139323 378147565 787558238 4405701 584834502 473504583 994004981 503288639 673466088 740240020 213974966 91235832 259972117 958336172 270300459 902250873 472183516 814099675 272222011 398804249 192957991 218778846 220099913 467860024 835717135 286633651 711416740 315456931 832474516 764859905 896005829 735676334 862018378 545562783 478788851 362775149 622064572 954012680 287594427 880393219 440598005 738678759 21699669 244599701 779031351 981034505 335873421 177465478 333951869 340557204 844844507 775188247 332991093 688358116 256969692 588197218 205688273 618701856 501607281 666860753 186592850 697245294 927711437 127625223 876910406 104566599 188274208 893603889 871025653 581111495 856854207 885677487 485994671 643922226 464977696 432551506 315577028 98081361 339596428 583273241 312814797 510374362 73821767 50763143 49081785 108649897 274503854 676468513 28665295 548805402 658694157 557092095 625066997 116216008 922066878 464617405 394720951 68657596 730992551 77544774 727389641 769543688 977071304 244359507 98081361 553008797 845084701 935157451 981875184 732673909 672865603 419220739 252646200 566699855 592400613 144318706 602488761 624706706 574506160 362534955 460654204 736637110 488876999 809415892 960137627 634674757 394841048 509293489 396762600 985598191 691120347 25302579 8488999 899608739 963260149 849528290 317018192 908375820 220340107 25903064 304648201 256489304 586395763 314976543 136632498 980434020 39474025 174102762 529709979 667941626 108769994 181668873 726789156 105527375 760176122 489477484 572944899 218058264 81748169 645723681 97240682 11851715 627108646 596844202 241116888 273182787 711536837 197401580 954132777 589157994 93157384 290596852 998688764 392198914 82108460 743482639 339116040 598765754 473024195 344280211 506891549 127144835 109490576 541359388 470982546 798847356 98561749 564418012 650287367 995326048 569582183 750928653 153325981 981634990 393640078 760296219 388716101 790800857 60731194 476747202 63853716 641640383 507492034 577508585 358211463 394240563 334432257 954132777 433632379 752850205 553969573 192477603 990762362 336594003 920385520 147080937 631672332 732193521 411774725 176384605 215776421 756092824 177945866 666500462 782394067 199563326 78385453 561295490 487195641 904052328 246040865 748286519 552168118 926630564 366257962 541119194 122701246 198962841 87032437 878591764 362895246 93517675 770864755 757533988 426546656 657373090 714419165 813379093 85831467 361213888 228987091 323383333 18457050 511575332 635875727 278707249 290356658 783595037 146960840 434953446 563577333 524906099 529709979 593361389 908255723 983316348 262133863 552768603 781193097 497523983 207729922 463296338 72860991 217217585 742401766 913179700 210011765 445882273 893123501 12692394 739879729 649326591 906694462 421142291 480590306 620743505 971666939 724627410 155727921 954012680 439517132 204247109 538477060 100723495 937679488 680431714 575226742 298162963 834636262 725828380 927831534 533793277 516979697 179387030 973948782 842442567 527187942 385593579 333351384 178906642 892402919 207249534 829351994 501727378 205808370 945245599 781433291 731472939 912699312 488036320 418139866 203286333 73101185 438196065 32028011 738678759 700728107 558413162 919424744 452607705 891081852 127985514 478068269 361694276 956414620 432191215 983436445 194038864 479389336 451046444 740840505 383792124 810496765 331549929 995926533 855172849 316537804 795244446 750087974 46319554 756212921 692081123 498124468 386794549 569942474 931314347 233070389 772426016 257450080 691360541 702529562 869584489 463056144 350285061 201965266 418380060 273903369 327346534 75983513 914140476 876430018 920145326 232710098 97360779 333591578 260332408 199923617 411534531 423664328 329628377 955093553 936478518 665659783 639959025 291077240 686916952 343679726 912819409 630351265 115855717 257089789 61691970 866221773 315216737 423424134 449845474 499805826 25302579 162813644 370461357 629030198 443720527 446002370 803771333 403488032 913179700 129666872 864900706 684274818 951010255 61331679 504969997 472663904 484793701 62772843 132068812 782514164 672265118 17256080 578469361 745644385 441198490 33589272 682113072 213494578 556491610 208330407 976590916 75262931 864420318 12932588 853131200 592400613 61571873 948007830 696644809 440357811 216497003 176744896 718142172 468580606 828751509 680912102 65655171 448644504 740480214 159210734 679831229 781433291 346922345 30586847 676588610 471823225 767622136 256369207 682953751 613417588 743602736 194639349 966983156 105287181 926270273 155487727 707333442 691240444 628309616 980914408 55206732 235232135 849528290 153446078 61211582 475546232 883275547 171700822 163534226 374184364 239555627 874628563 259731923 589758479 477707978 227185636 458972846 682113072 823827532 818062876 55326829 765940778 303207037 38513249 584594308 496923498 387875422 368299611 797406192 757413891 256729498 791401342 645003099 492960297 702289368 821905980 792362118 601407888 50162658 468580606 97240682 791401342 257930468 87152534 158610249 282430256 642240868 185872268 298283060 499325438 826589763 687157146 98441652 458372361 840160724 411174240 125103186 294680150 992203526 143357930 864300221 665419589 246160962 615098946 368299611 958816560 25422676 247962417 601888276 54846441 853251297 175423829 841361694 604290216 439397035 182029164 246040865 478788851 774227471 211212735 336714100 645483487 307770723 254447655 725227895 150083362 108049412 478068269 56647896 872827108 619302341 160531801 535594732 354488456 687757631 142637348 421262388 742281669 564057721 584954599 384152415 341758174 236673299 772305919 904772910 430389760 182269358 221541077 111292031 853371394 660855903 886638263 99402428 417539381 269339683 837158299 340557204 15935013 657493187 165335681 701929077 104446502 451286638 825749084 413215889 309692275 988960907 466538957 377787274 899248448 748766907 986318773 938640264 651007949 25662870 997007406 299604127 229107188 112252807 397963570 380909796 641520286 963140052 328067116 370701551 762097674 498364662 336834197 265496579 906214074 167017039 880273122 609334290 105046987 39474025 28905489 634074272 786957753 833435292 693522287 982115378 55326829 991242750 448284213 461735077 174823344 136872692 276905794 528749203 776509314 480590306 507732228 898287672 328787698 781433291 702649659 155367630 582552659 501727378 376826498 884236323 922667363 47400427 152845593 744323318 619542535 445041594 934677063 440718102 217337682 199923617 919785035 561175393 256849595 872586914 705051599 85351079 680912102 163414129 788999402 586035472 435313737 50643046 17135983 784075425 441198490 275224436 366257962 280868995 249523678 664458813 564177818 272702399 958696463 976470819 288915494 172421404 828511315 432671603 15454625 195119737 522624256 68297305 658093672 887478942 795724834 579430137 193558476 434352961 292158113 894684762 248322708 774107374 503048445 593601583 798487065 747085549 173382180 401206189 921826684 69017887 686556661 767742233 529109494 28425101 927231049 910897857 772185822 260572602 250844745 961218500 40314704 610775454 702409465 417299187 899728836 760656510 362775149 892282822 774707859 394480757 954853359 213614675 995566242 160051413 646684457 498965147 968784611 587236442 698686458 195119737 681512587 435553931 880153025 237393881 256489304 134710946 224663599 12932588 306930044 220460204 188634499 822386368 126304156 395441533 254567752 961818985 39353928 241116888 943324047 517099794 38993637 149242683 240276209 737237595 357610978 498124468 11131133 727509738 24581997 234391456 366257962 646444263 83189333 898647963 223102338 60731194 74662446 758374667 201124587 587476636 926750661 457651779 821425592 760536413 820584913 124022313 799928229 724026925 999049055 751288944 254928043 52804792 682473363 997607891 108169509 183830619 975990431 946806860 770504464 174222859 34670145 905853783 606211768 657132896 683314042 957615590 289035591 467499733 730872454 263575027 360012918 475906523 190916342 877270697 609814678 143237833 627108646 153205884 867903131 355569329 434352961 260932893 221901368 691961026 211933317 917022804 429789275 534754053 525866875 801129199 36711794 728230320 806533564 82228557 658694157 639838928 609934775 168097912 915341446 806893855 180708097 861297796 330108765 67696820 179266933 406490457 362054567 783835231 183590425 299123739 277626376 775428441 84270206 663618134 663377940 387755325 407090942 663377940 219259234 651128046 59169933 857694886 34910339 877630988 404568905 334192063 443360236 657853478 348123315 351726225 5006186 337194488 338035167 907655238 378627953 239675724 642961450 449725377 487916223 676468513 813258996 291197337 69738469 170019464 84270206 496082819 788158723 71539924 458852749 367819223 820464816 371061842 41275480 920745811 864540415 121260082 299123739 46679845 117056687 127985514 998928958 323623527 58329254 79946714 563217042 537155993 431590730 749847780 642841353 723786731 454409160 237393881 938880458 663858328 737357692 445041594 102044562 910777760 728470514 920145326 143718221 847967029 792602312 615339140 293238986 380789699 977551692 31307429 935037354 366978544 253126588 481671179 694002675 71900215 742161572 578469361 954613165 936838809 599966724 699166846 188994790 489597581 514938048 221180786 684995400 52804792 541239291 464137017 298523254 854332170 866221773 712497613 897086702 691840929 796085125 714659359 412014919 440357811 959056754 193078088 821185398 62172358 582072271 845925380 709014800 12812491 775668635 291797822 857814983 604290216 663257843 141196184 432311312 445521982 180828194 792362118 730992551 742281669 727990126 109010188 354728650 693161996 495482334 518300764 772546113 635875727 507251840 897206799 449485183 961939082 889040203 64334104 232229710 790680760 476146717 204127012 101323980 502447960 623986124 839199948 609214193 184911492 230428255 106007763 316417707 195720222 345841472 882314771 598525560 64454201 507371937 431350536 485274089 171340531 255528528 111892516 977071304 316177513 139995214 921706587 366618253 907174850 86552049 621343990 512175817 371782424 633353690 666020074 155968115 771225046 608253417 575346839 230788546 986198676 758975152 924348721 173502277 756212921 451526832 614618558 268979392 10530648 551207342 388716101 566819952 324584303 304648201 943083853 614498461 843643537 378748050 844844507 715740232 890841658 98801943 970826260 213614675 891562240 763058450 255648625 797886580 262494154 730151872 831994128 657252993 593841777 259972117 880393219 785396492 566099370 667581335 335753324 185872268 168818494 485514283 579430137 164735196 752970302 285672875 720303918 328667601 465217890 788879305 626508161 978752662 786117074 577028197 220340107 70338954 29265780 698206070 865741385 791041051 198602550 472063419 634074272 519501734 925789885 872106526 621704281 467619830 295520829 795004252 898287672 46559748 277025891 388956295 326265661 367218738 505690579 95078936 420541806 149843168 709014800 110691546 502688154 532952598 796205222 8609096 611856327 848207223 311253536 901290097 105287181 279427831 724627410 780592612 825028502 193918767 296001217 844964604 81027587 755492339 326986243 166896942 514457660 224663599 242678149 94478451 589638382 8128708 248923193 380909796 226344957 978512468 133990364 93757869 405409584 150323556 933355996 570182668 319300035 927711437 616900401 928552116 606091671 705772181 282670450 916422319 526227166 322782848 104206308 501006796 17736468 21219281 600807403 377306886 953652389 551687730 352446807 573545384 902130776 76704095 148281907 932995705 794884155 707693733 806533564 277866570 83669721 979593341 450325862 842202373 257329983 890121076 30466750 37192182 109730770 892162725 101924465 118377754 788278820 521183092 651128046 967823835 172901792 954252874 761016801 315336834 433392185 305608977 141556475 215055839 111652322 500166117 109970964 767021651 996046630 682694 720904403 929512892 798607162 454289063 834516165 215416130 438676453 98081361 26623646 385833773 295881120 103846017 257329983 943924532 450325862 593241292 656532411 994245175 728830805 842682761 797646386 655571635 901770485 752610011 633353690 582432562 955333747 333351384 873427593 334672451 645243293 318459356 126544350 56167508 660255418 386194064 301405582 24101609 330709250 899728836 863099251 306329559 212173511 279067540 821665786 753330593 251084939 277746473 224423405 954853359 119338530 494401461 383071542 760056025 42356353 237393881 213854869 79826617 620743505 779511739 435073543 872707011 613657782 281229286 596363814 890601464 752009526 244479604 651728531 536795702 509413586 545562783 287114039 788999402 755372242 342478756 964581216 401446383 801369393 966382671 584594308 213974966 440357811 470021770 676228319 985598191 826950054 914740961 71660021 422583455 145519676 474105068 572704705 736396916 122941440 565018497 237874269 621343990 536915799 136032013 869224198 467139442 758254570 539077545 242918343 612336715 503528833 450085668 247361932 254687849 747445840 487075544 68297305 628910101 76704095 65414977 4645895 811337444 432791700 378027468 269459780 425465783 235352232 913059603 834516165 275344533 372142715 116336105 945846084 28184907 652689307 292278210 385473482 935637839 100123010 131468327 829712285 609094096 122461052 72620797 223582726 966142477 343199338 878471667 408051718 775068150 908976305 706012375 631552235 442500 527067845 423544231 962539567 592280516 556131319 445642079 418740351 637797279 457171391 784916104 395081242 659054448 122340955 700968301 110571449 681032199 504129318 607532835 578109070 543160843 11011036 488156417 820584913 665779880 93037287 393640078 980313923 74902640 282190062 938640264 610535260 505450385 34670145 737117498 671064148 917983580 439276938 485394186 69378178 524185517 362655052 890961755 778190672 65054686 132309006 157529376 191396730 591800128 917503192 202805945 313775573 451526832 419701127 767622136 481430985 932515317 640439413 348603703 759695734 603089246 451646929 586756054 524305614 194399155 486715253 812898705 590599158 758975152 565979273 331189638 516139018 193318282 709975576 96880391 300805097 522023771 361694276 570663056 994845660 858175274 426306462 897086702 764019226 425705977 255288334 367579029 773867180 962419470 82708945 527788427 981154602 298283060 311013342 110451352 151524526 851930230 398203764 813499190 290957143 112372904 668422014 921946781 999889734 306689850 683434139 626508161 640799704 499205341 621464087 196320707 933476093 672385215 439637229 851089551 8368902 216617100 984517318 402527256 469421285 176144411 770024076 69137984 426306462 247482029 757774182 425465783 713098098 913900282 865140900 273182787 721024500 535955023 697845779 399524831 952931807 824788308 383311736 315456931 379588729 433872573 327826922 717061299 834396068 804251721 42716644 281709674 724147022 222501853 80186908 874868757 608133320 13533073 221060689 107448927 684274818 751889429 986318773 165095487 449725377 968904708 907775335 500646505 616299916 979833535 912939506 620743505 7288029 803411042 757774182 10770842 771225046 589518285 282910644 561055296 210372056 635755630 704571211 523945323 111412128 561175393 434352961 670583760 461735077 905733686 998088279 495242140 941762786 51844016 102524950 526107069 112973389 211813220 356410008 360373209 720544112 732433715 489597581 482511858 406490457 931434444 771825531 533072695 407451233 346441957 494881849 350765449 854692461 586635957 893483792 427627529 803531139 445642079 675147446 790080275 460293913 107689121 762578062 850969454 468940897 612937200 215656324 450686153 381390184 224783696 864420318 740960602 932395220 164374905 362534955 771225046 436995095 958216075 789239596 783955328 779751933 922307072 12091909 569582183 979473244 504369512 258290759 177105187 236913493 836918105 649566785 827430442 893844083 101083786 37672570 375025043 688958601 178786545 249523678 719463239 835597038 231389031 743722833 853131200 172781695 625187094 530670755 711176546 902851358 967103253 356650202 880393219 780352418 200524102 927951631 740720408 134951140 77304580 968304223 583993823 762938353 844123925 533913374 1042985 111652322 948248024 492239715 189595275 596604008 319300035 259611826 965061604 789239596 664699007 843523440 233070389 44998487 475666329 646083972 837878881 636956600 39834316 108409703 915821834 939601040 329268086 817942779 188514402 613297491 475426135 611496036 825148599 485634380 725347992 563217042 143357930 975029655 444561206 449965571 259131438 14613946 114414553 286393457 809896280 865140900 749127198 805332594 412975695 381029893 537276090 435313737 137833468 850489066 682473363 802210072 281709674 855292946 758494764 585074696 802810557 605371089 893003404 616660207 92917190 61571873 858535565 621944475 518180667 954252874 631912526 554930349 482752052 132669297 548204917 419220739 28905489 19417826 179146836 917743386 435073543 292398307 898407769 880273122 697845779 788759208 777349993 775308344 696284518 819624137 62052261 205448079 992083429 874868757 529349688 27824616 229947867 935157451 566339564 22660445 408412009 87753019 498364662 933836384 752249720 977311498 500766602 819504040 470502158 541839776 616059722 708654509 614258267 977791886 303807522 170019464 155247533 959897433 49321979 924709012 248682999 914380670 611496036 435073543 711056449 831753934 371302036 743602736 256129013 274143563 681752781 582312465 481070694 576427712 148522101 278587152 715980426 631071847 337434682 833675486 909696887 350164964 258891244 496923498 850969454 958936657 866101676 634914951 674546961 306809947 623986124 441078393 820584913 267658325 49802367 470261964 330228862 298643351 117657172 536675605 507492034 552768603 680671908 367218738 675147446 841001403 677549386 119578724 785876880 793923379 464257114 588677606 35510824 979953632 695804130 859015953 378027468 347522830 862378669 485754477 484193216 152125011 29505974 23981512 74182058 358451657 432071118 86552049 890601464 319660326 556011222 78265356 809175698 219139137 499805826 887358845 562016072 789239596 395801824 278947443 223582726 31427526 252766297 749247295 819023652 878351570 957495493 796085125 315577028 516259115 773987277 521183092 246040865 239315433 564658206 887959330 25662870 275584727 207009340 274623951 984997706 959056754 306449656 523104644 988240325 927951631 794403767 590959449 709615285 35150533 128105611 203406430 172301307 756333018 767862330 942243174 822746659 181548776 878351570 343079241 232229710 270660750 477107493 757654085 821905980 498364662 507852325 803411042 264655900 730752357 169298882 532592307 11251230 556491610 892643113 910417469 580631107 894324471 318699550 997247600 583273241 317858871 82228557 60491000 402166965 380429408 620983699 881834383 947767636 90755444 375145140 476747202 858055177 498364662 17856565 383672027 918463968 362775149 516619406 689078698 402767450 450806250 446362661 630231168 328907795 683794430 137473177 782033776 824067726 780112224 641159995 128585999 885077002 798967453 588557509 670583760 807254146 922787460 240636500 624466512 132789394 673225894 634914951 704210920 765700584 217938167 100002913 356770299 432191215 228746897 871866332 285192487 32268205 591079546 993644690 324944594 845925380 989681489 852050327 812178123 46319554 380309311 105046987 310653051 76223707 179747321 895525441 366738350 322542654 504369512 351846322 118617948 245560477 557932774 829111800 802330169 323023042 479869724 957135202 421502582 178186060 946926957 399404734 119939015 984277124 638637958 940081428 385473482 472784001 205448079 946926957 487916223 358091366 366378059 382350960 202325557 11731618 305488880 182269358 38513249 283751323 359412433 184070813 868623713 189114887 177585575 854091976 581111495 492840200 156568600 181188485 382471057 322182363 551087245 102524950 509653780 569822377 681512587 140715796 871265847 739399341 332270511 682473363 987759937 336233712 708534412 717661784 942002980 852650812 836677911 526227166 779511739 63493425 856734110 644402614 72020312 415017344 599846627 749847780 221060689 295280635 545802977 680792005 603569634 322782848 111171934 429308887 830072576 203046139 135431528 368059417 407331136 234391456 32988787 118617948 871385944 580150719 106968539 846886156 741921378 853611588 25182482 502568057 777830381 223102338 301045291 352687001 560454811 77304580 683073848 716340717 404328711 808455116 625307191 9569872 396282212 51123434 85110885 372262812 445642079 265856870 207970116 506531258 633473787 683794430 640919801 872947205 555410737 132068812 454048869 763538838 316777998 373703976 56047411 985117803 284592002 421382485 635035048 844604313 655931926 180948291 649086397 715259844 272101914 734355267 29385877 237874269 620143020 53765568 441198490 623625833 127985514 783955328 247962417 519982122 510374362 46799942 292038016 927951631 27704519 724026925 334672451 982956057 543280940 957855784 828030927 534874150 391598429 315937319 879312346 602368664 826109375 87392728 391718526 74542349 579670331 352807098 592640807 667100947 871746235 257930468 851089551 908856208 79706520 254327558 936718712 848807708 163173935 218418555 30106459 68777693 288315009 543881425 39954413 106848442 146600549 709254994 753690884 104326405 332750899 22780542 790080275 215776421 657733381 389436683 511575332 558653356 604170119 865981579 84510400 67096335 678510162 647164845 533192792 202205460 195239834 771825531 997127503 128826193 356410008 195359931 492720103 358211463 515298339 756693309 24581997 505690579 43437226 676228319 283270935 335993518 220580301 883395644 234031165 284832196 954613165 963019955 761737383 547844626 186112462 104566599 658574060 918944356 305969268 964341022 531631531 787318044 802210072 443960721 803771333 952451419 482992246 465698278 286873845 115015038 882074577 479389336 776509314 878471667 808575213 394720951 278947443 873547690 778911254 528629106 263695124 770624561 489717678 555891125 419581030 545923074 837998978 709615285 466058569 190676148 956654814 221901368 40674995 57248381 746725258 825148599 758134473 553849476 766301069 626388064 861417893 11851715 922787460 265136288 219739622 995326048 306569753 751048750 329508280 989921683 456090518 693642384 502447960 20378602 631792429 97721070 166776845 804011527 636236018 318579453 396762600 257930468 196080513 1163082 263935318 95078936 826829957 924949206 510014071 155848018 467259539 226945442 561295490 385833773 710816255 689559086 526587457 127385029 948968606 876189824 295280635 194158961 368419708 556251416 146000064 73941864 317498580 158850443 391118041 311133439 567660631 379588729 972387521 858055177 804852206 78025162 103605823 138193759 299363933 555891125 770744658 133750170 409252688 239915918 46439651 871385944 230668449 68777693 93277481 59770418 917623289 594682456 664098522 496323013 49201882 123181634 990281974 807013952 339596428 866221773 430269663 228386606 711897128 422223164 3565022 455610130 462455659 60851291 114894941 2604246 761857480 444921497 577748779 694483063 762938353 302006067 169298882 795965028 647765330 100963689 984637415 791161148 509533683 418740351 762698159 826589763 572944899 29986362 671184245 74061961 77064386 372022618 892042628 576908100 362534955 998328473 98922040 656652508 955453844 880633413 677909677 434232864 933355996 984277124 416578605 865381094 626628258 125583574 972507618 341758174 633954175 723306343 552168118 934797160 615098946 248322708 955093553 207009340 759455540 813619287 845685186 276305309 798366968 500886699 930954056 576788003 971426745 630591459 379468632 651728531 780352418 530790852 185271783 219619525 295881120 712978001 338995943 411174240 423544231 516979697 411174240 465578181 870545265 173982665 969625290 544481910 544962298 51483725 831273546 342718950 206408855 344520405 635755630 127024738 131348230 812898705 505690579 975149752 747325743 865501191 796445416 902971455 899728836 413936471 977791886 175183635 711536837 798607162 142277057 640919801 243278634 882434868 405409584 721865179 133389879 383912221 793683185 818663361 390157265 610174969 245560477 293959568 476747202 774107374 186833044 214335257 717181396 276185212 511935623 185151686 823827532 745404191 895765635 396282212 846165574 863099251 634314466 359652627 552408312 316657901 519021346 920385520 430750051 815540839 259011341 919785035 131108036 580751204 511094944 59049836 235352232 576788003 646324166 861297796 774467665 370341260 937079003 346201763 599126045 747926228 559614132 656772605 712617710 89674571 352086516 433031894 273783272 23140833 66015462 912098827 314976543 891201949 776269120 329268086 803531139 354128165 888920106 176744896 687397340 790440566 662777455 465818375 366017768 950169576 471222740 898527866 475065844 882915256 513977272 727749932 337674876 694002675 208930892 935517742 827790733 570542959 801129199 458132167 497644080 5006186 436874998 879672637 235112038 905853783 257690274 846645962 717901978 867422743 158850443 466298763 219139137 691720832 935397645 325665176 989801586 951130352 743122348 515538533 17256080 22540348 980914408 526947748 585194793 554930349 78025162 745284094 352326710 203406430 694603160 175543926 293238986 14493849 579189943 148161810 669502887 470502158 453568481 445281788 766901554 576788003 504009221 980193826 103485726 43197032 918944356 356169814 503288639 92076511 892282822 756453115 406250263 230908643 293839471 271261235 302006067 702049174 842682761 604650507 83309430 196440804 167137136 152485302 252886394 217457779 782273970 334192063 942723562 793563088 636236018 461494883 583033047 369380484 654130471 230548352 537996672 77184483 123662022 140355505 603689731 732433715 472663904 948007830 587836927 334912645 390277362 765940778 976951207 912579215 941282398 288074815 799207647 780232321 679951326 899368545 637677182 174823344 933836384 128345805 48481300 612096521 496923498 786717559 49081785 927351146 122340955 451646929 800528714 972387521 838719560 271141138 825628987 288555203 141916766 692681608 14974237 270780847 602849052 137953565 69858566 507852325 910897857 546163268 381990669 938760361 737117498 779751933 849528290 302366358 337794973 405409584 799087550 387875422 461374786 247962417 72981088 674546961 8008611 775668635 226104763 968424320 285312584 958095978 526707554 481791276 26503549 985718288 732073424 459933622 286513554 143598124 726428865 90995638 120779694 696284518 982235475 576307615 697125197 970826260 813258996 363135440 524065420 76704095 376826498 782153873 335993518 505690579 947287248 759095249 856373819 231389031 958576366 807614437 431710827 713818680 274623951 48121009 140235408 945725987 798607162 696885003 21099184 506651355 189475178 356650202 633113496 575587033 112853292 193798670 404328711 645843778 310292760 668061723 511094944 318819647 394120466 817342294 164735196 324344109 165455778 687997825 919905132 879912831 181188485 263695124 330709250 854692461 28184907 247361932 931434444 739279244 134350655 617620983 16295304 436154416 303447231 238114463 311133439 454649354 534633956 359532530 361934470 569221892 870785459 105647472 41515674 112132710 374184364 152125011 477467784 728950902 203646624 861297796 304167813 276425406 785876880 966022380 273903369 865020803 37792667 238114463 714659359 644162420 351726225 658093672 314015767 525026196 800048326 245080089 495722528 623745930 436874998 74662446 502688154 613417588 946086278 999769637 64334104 325905370 196440804 486715253 60370903 788398917 169779270 171820919 627108646 93037287 887238748 464977696 767502039 832594613 265256385 465097793 838959754 546643656 458012070 616540110 672145021 402527256 159571025 371662327 610895551 605851477 504009221 715740232 71419827 366738350 405769875 750808556 475546232 852770909 484673604 222261659 692201220 239315433 577748779 664458813 29145683 106247957 134350655 947887733 19778117 701208495 317738774 940802010 853131200 773867180 13412976 864180124 301525679 779511739 234511553 853611588 660976000 858175274 115615523 197881968 86191758 698326167 667341141 648606009 816501615 737838080 513256690 549766178 31547623 751048750 555530834 636956600 270180362 68777693 902370970 833075001 163294032 628669907 224903793 826469666 378027468 523585032 774827956 980073729 698686458 506170967 335633227 721024500 276065115 560334714 889160300 545202492 278827346 68657596 939961331 995806436 910417469 197041289 442879848 513016496 87272631 22180057 736396916 38032861 630351265 2364052 160771995 324224012 299243836 307770723 465578181 727149447 195359931 928432019 235112038 715740232 611736230 838839657 882194674 914020379 690399765 422943746 655811829 608853902 530550658 958936657 891322046 536195217 581711980 130627648 730271969 820344719 99882816 363856022 751529138 165215584 213494578 147441228 33228981 500286214 442500 157048988 131588424 105887666 9089484 85471176 267778422 295400732 798847356 585434987 133149685 580871301 757894279 127505126 513857175 554810252 169899367 861898281 991362847 104566599 38393152 431110342 146720646 781313194 596964299 3685119 109010188 357010493 930713862 730392066 817702585 740840505 142637348 340557204 992683914 946206375 165575875 132429103 27704519 462095368 266577452 737357692 151644623 112853292 119818918 408772300 575707130 712978001 4165507 23741318 97120585 863339445 104446502 611736230 517700279 29385877 965301798 111532225 910057178 17616371 743842930 139394729 577028197 68177208 803170848 397603279 995566242 625787579 15454625 39954413 129426678 174583150 108649897 374424558 304888395 455129742 285672875 178546351 720544112 548325014 130387454 284111614 734715558 22059960 912939506 500646505 92436802 4525798 744083124 323383333 421262388 473744777 772666210 306930044 526107069 374304461 478188366 774827956 235592426 392198914 654730956 677909677 716100523 274023466 214215160 994365272 363375634 886878457 828391218 980193826 103245532 610054872 993164302 622304766 921226199 335272936 875229048 451286638 61932164 30106459 987159452 89434377 137593274 706732957 632633108 132789394 415617829 890601464 66135559 960858209 3204731 121380179 750808556 196080513 49081785 801369393 371181939 161132286 170619949 518901249 342718950 498604856 612216618 52564598 898047478 278947443 170019464 17135983 207009340 790080275 237033590 658453963 559373938 731953327 605371089 225143987 684515012 8849290 241477179 163053838 969865484 247241835 159330831 105887666 29746168 709735382 968184126 584474211 73461476 365657477 593241292 888679912 841962179 982475669 272582302 205568176 826589763 18817341 48721494 709495188 679230744 801369393 541839776 671544536 308131014 491158842 5606671 364696701 279427831 457531682 524906099 808935504 717541687 504489609 522384062 799207647 968784611 241837470 928912407 927471243 284592002 649326591 410693852 89194183 771585337 290116464 122701246 853731685 245800671 595523135 141316281 9449775 976110528 147801519 581111495 577988973 975630140 651007949 319300035 141436378 863219348 841241597 287474330 97841167 10290454 662056873 38152958 894684762 814580063 97600973 116336105 694362966 272342108 31907914 446963146 537276090 439276938 993644690 172301307 306329559 701448689 129666872 770384367 979593341 234391456 108890091 401326286 901530291 450806250 159811219 542800552 74182058 244479604 375745625 161252383 330348959 970345872 900329321 531631531 943564241 916542416 223342532 754411466 88353504 241717373 506891549 826109375 505930773 164975390 585314890 927591340 14734043 687397340 263094639 673466088 295040441 385473482 924588915 313295185 75262931 605130895 876430018 498604856 835236747 611375939 704210920 645243293 555290640 951010255 933596190 696644809 534513859 266817646 804251721 701328592 625547385 266937743 399524831 533192792 430149566 331309735 787678335 134831043 952691613 657853478 577988973 166896942 169779270 486354962 395561630 899728836 433992670 317258386 703970726 365537380 518540958 22300154 590959449 737237595 60731194 767381942 26623646 781433291 629750780 502327863 692801705 611976424 592280516 87152534 453328287 825869181 188874693 188394305 331309735 435553931 717421590 590479061 978032080 714659359 964461119 404088517 184671298 428348111 130507551 610174969 932395220 936838809 241837470 211933317 3444925 775428441 154166660 16295304 676348416 513857175 255168237 812178123 969745387 256969692 236192911 700968301 72620797 556491610 100603398 151164235 851930230 391958720 717301493 657493187 283991517 609694581 957375396 686076273 597564784 688598310 322782848 830312770 766781457 449244989 712377516 547003947 665779880 1403276 335633227 167137136 152004914 456450809 472303613 415497732 82588848 396522406 728110223 802330169 392078817 239675724 643922226 765940778 252766297 480830500 817702585 982475669 724267119 784195522 46199457 62772843 373583879 481190791 786597462 626508161 518180667 965662089 330949444 736156722 231869419 689198795 712978001 27824616 677189095 614498461 198242259 919064453 317018192 308851596 628669907 977791886 431110342 414897247 885677487 102404853 896726411 885197099 87632922 732433715 621343990 502087669 269940168 336113615 62292455 53765568 504969997 756573212 374064267 339956719 387515131 38513249 750087974 163294032 724267119 19297729 790680760 922307072 766781457 761977577 55086635 183470328 88473601 211693123 402647353 767021651 735796431 691120347 551687730 76944289 394240563 767021651 420661903 465578181 627829228 90635347 361694276 695684033 93998063 649206494 148762295 149122586 669863178 23140833 626868452 422703552 373583879 976590916 557692580 532352113 366978544 158730346 846766059 197761871 901650388 121500276 297802672 197881968 604410313 126424253 533673180 883876032 897927381 883395644 637797279 759935928 244719798 499085244 934196675 576307615 136032013 920025229 763538838 571503735 238474754 666260268 240876694 969024805 331790123 708414315 683314042 934316772 214575451 672505312 553128894 296241411 228866994 605010798 588077121 516018921 533553083 355329135 553729379 359412433 359652627 947647539 348123315 544722104 577508585 883876032 427147141 37072085 360012918 135071237 471462934 338155264 792842506 968184126 493800976 670583760 738198371 71780118 782994552 325184788 586395763 922427169 347642927 423183940 778791157 602488761 308251111 792962603 470622255 27344228 802690460 613537685 865501191 869824683 795244446 994845660 489957872 549525984 568981698 566579758 8128708 784435716 933596190 324464206 519621831 786357268 63253231 770384367 884596614 757894279 20498699 271021041 705051599 151044138 302486455 194639349 766180972 631792429 43797517 323383333 613177394 766661360 649806979 885317196 794523864 115015038 297682575 325905370 394600854 113573874 799688035 389316586 869824683 717541687 889160300 501006796 576427712 851569939 316177513 693161996 959417045 27944713 809776183 929272698 51723919 899368545 931314347 717181396 742641960 494521558 326505855 550606857 753810981 481070694 568501310 576307615 663978425 324944594 993164302 395801824 310412857 802450266 527428136 236793396 482992246 757173697 696764906 972627715 451646929 769063300 671304342 149002489 636115921 984637415 429188790 806653661 995085854 144078512 899969030 151404429 420061418 288555203 970465969 195480028 893243598 931194250 55206732 41275480 121860567 762578062 795844931 992083429 824668211 636476212 551567633 791401342 344640502 781193097 758374667 856854207 90034862 279187637 349684576 882194674 472183516 655331441 585194793 546643656 211092638 974188976 680431714 717301493 371782424 748166422 926390370 476507008 603929925 702289368 837638687 211933317 388716101 154046563 978032080 976110528 232830195 643922226 922547266 252646200 730632260 661696582 287234136 51003337 452367511 441078393 94958839 756813406 124022313 150803944 603929925 248803096 257329983 43797517 699647234 971907133 618701856 465458084 834035777 495722528 154166660 98922040 742762057 843283246 38393152 935878033 260692699 398443958 557572483 304167813 575106645 921826684 526347263 826349569 934316772 281829771 510374362 463896823 805692885 319780423 259852020 958456269 483472634 25662870 280388607 755612436 629390489 751769332 683314042 284471905 473384486 611496036 755492339 759815831 177105187 853011103 508452810 868863907 665539686 183710522 810736959 119698821 141916766 86191758 89434377 481911373 30226556 140475602 765460390 915221349 471102643 801129199 621223893 465097793 443360236 408412009 189114887 581231592 308251111 45598972 959417045 728350417 977311498 345481181 444200915 901770485 831393643 706732957 43677420 954012680 181188485 167737621 832114225 413576180 211813220 35751018 562016072 585915375 840521015 387515131 779031351 21939863 958336172 166176360 388956295 538116769 652569210 621103796 883035353 570903250 491158842 5966962 77905065 918463968 777229896 515658630 135191334 329268086 906334171 758494764 964581216 53405277 258050565 819143749 504369512 412255113 818543264 326145564 110091061 955573941 73341379 222501853 545082395 341157689 31307429 480950597 712137322 802450266 722345567 207489728 667100947 156448503 80787393 508332713 986919258 460534107 232109613 971666939 950289673 51123434 913780185 875829533 761737383 149963265 729671484 293959568 303086940 700367816 86552049 420782000 360973694 698206070 465217890 283991517 240636500 195359931 645843778 870665362 391838623 515898824 38032861 650767755 285672875 317018192 441678878 192957991 914740961 812898705 790680760 461374786 103605823 870064877 945846084 679110647 589157994 453448384 296601702 721865179 294680150 237634075 352807098 439397035 62172358 916182125 302726649 437235289 170860143 476386911 667461238 764139323 706492763 309932469 616179819 544001522 348603703 75743319 270060265 57728769 552888700 124382604 732673909 391958720 774827956 85110885 982355572 840521015 227305733 112733195 682694 973468394 674787155 890481367 221781271 801969878 252526103 935878033 777229896 424865298 183470328 591439837 63733619 510854750 274984242 810616862 804011527 847486641 159571025 775668635 807974728 92076511 268979392 714058874 606091671 118017463 301405582 543521134 991122653 56767993 433392185 575707130 256849595 647765330 417779575 577628682 109370479 929152601 781673485 240396306 71419827 638277667 289035591 849047902 168698397 507131743 875829533 689438989 238234560 720544112 684274818 449124892 217217585 12452200 749247295 777590187 703610435 258050565 572464511 629390489 599846627 777349993 721264694 551567633 610415163 944885308 131828618 433151991 660495612 884236323 691840929 232469904 395321436 435674028 778190672 355329135 788639111 94598548 476266814 388716101 689919377 819864331 586155569 985357997 517099794 190195760 674546961 638998249 235112038 692081123 911978730 720664209 974188976 351365934 947887733 231148837 747806131 807974728 864060027 667701432 484193216 58929739 510374362 439276938 237874269 857935080 678029774 81748169 741200796 457651779 681632684 39714219 93517675 513376787 5246380 158850443 956294523 484793701 307650626 560334714 424024619 145639773 356049717 111892516 912098827 942723562 187193335 931194250 111652322 592760904 758374667 77544774 749727683 341638077 329988668 960497918 64214007 593481486 50643046 378868147 544481910 86912340 202805945 608013223 468580606 871506041 712017225 231509128 295761023 342478756 376946595 327226437 380789699 253847170 530550658 432911797 829111800 351125740 556611707 635275242 966142477 277746473 543761328 155607824 888079427 321581878 464377211 297202187 398804249 131468327 405889972 312094215 590719255 237273784 305248686 246401156 501367087 433272088 291317434 835717135 721144597 579310040 221901368 377306886 796325319 476026620 864540415 779992127 492479909 28665295 203526527 611375939 44037711 344520405 475906523 631191944 6207156 544842201 919424744 858535565 712978001 799567938 819864331 289756173 437955871 360973694 464497308 462575756 498604856 444681303 262494154 296121314 328187213 648005524 944164726 641760480 948728412 494281364 262133863 336834197 310412857 510254265 418740351 72020312 795364543 837998978 265856870 299604127 763779032 613657782 928071728 747325743 404929196 85230982 177825769 248803096 776149023 883515741 511094944 687517437 595883426 573785578 665539686 703370241 302966843 978992856 781553388 663137746 392319011 771465240 249763872 385233288 849167999 993404496 209291183 46439651 662417164 929032504 336473906 621704281 909216499 999049055 414657053 712377516 82588848 692201220 459693428 707093248 830793158 455129742 293238986 826950054 681272393 515058145 320981393 339116040 438316162 180467903 455970421 950890158 382230863 471943322 81868266 702169271 696524712 274143563 90995638 547964723 87032437 654010374 590358964 953892583 913419894 709855479 661336291 738798856 922787460 886638263 605611283 445642079 529830076 287474330 615579334 379348535 545682880 295160538 808815407 497043595 938159876 724987701 384272512 388716101 543761328 265136288 980674214 225023890 233911068 800528714 957255299 20498699 114414553 424985395 427987820 381390184 452847899 248923193 932395220 764139323 979833535 575947324 531991822 133990364 242558052 455730227 436754901 78145259 635515436 613657782 968184126 722705858 351726225 456330712 756453115 433151991 655811829 510854750 108289606 988360422 586275666 380669602 332390608 750688459 918824259 378988244 571743929 497884274 213854869 525626681 761256995 558052871 718742657 719943627 317018192 361333985 975870334 382951445 649326591 231989516 626988549 333951869 457411585 706372666 118858142 624946900 705291793 297562478 534033471 109970964 508813101 215416130 515898824 562597 242197761 259731923 763418741 845685186 644042323 401566480 46439651 219859719 371542230 206168661 587596733 637196794 967823835 124742895 99642622 817222197 105046987 479629530 670583760 524065420 410693852 678510162 654851053 319660326 862979154 942123077 693522287 536675605 899969030 106608248 221661174 937079003 966742962 252766297 1883664 611255842 465458084 55206732 795004252 274623951 716580911 139034438 833435292 482031470 200884393 631071847 859136050 956294523 506050870 934556966 386073967 778550963 373944170 514938048 77424677 348243412 433151991 625187094 223943017 12332103 187433529 242918343 450445959 948728412 693642384 989561392 340557204 475426135 469661479 199683423 908375820 865140900 388115616 77784968 244119313 584834502 316417707 922307072 234751747 418620254 377547080 104686696 466899248 610174969 166656748 782634261 365177089 736997401 393399884 587716830 149002489 928912407 945365696 327586728 309331984 902731261 859256147 339236137 139634923 149242683 765460390 194279058 410693852 410093367 692561511 526347263 470862449 433512282 224303308 485754477 228506703 270420556 517700279 35991212 346201763 764019226 953292098 469421285 686076273 945365696 237393881 177585575 992924108 270660750 892042628 772305919 285552778 27704519 508933198 747085549 898768060 455249839 788398917 35150533 437715677 22300154 151524526 236313008 168818494 703610435 353527680 174463053 940561816 948488218 396522406 199203035 373223588 132309006 365657477 389796974 276785697 718982851 949689188 197281483 11731618 333231287 308971693 182269358 9810066 722465664 999529443 417299187 910417469 180347806 719223045 202805945 240996791 116696396 525266390 560094520 338995943 334672451 465938472 778671060 204006915 853371394 843883731 189955566 273422981 991362847 231028740 751889429 622184669 735436140 433872573 707213345 287714524 247361932 276665600 273903369 411174240 81748169 939721137 953532292 824428017 35630921 226705248 718382366 174342956 202325557 446722952 277626376 254567752 91476026 200644199 808214922 480350112 893003404 454168966 432791700 718382366 84870691 436514707 943684338 865621288 103605823 883876032 245080089 210732347 164495002 786837656 977671789 454289063 763298644 9089484 753570787 928071728 427867723 407331136 221901368 105647472 831513740 95679421 701328592 529830076 769543688 302126164 397723376 574145869 947167151 518060570 445521982 716340717 182749746 66615947 523104644 538356963 290356658 84510400 225864569 867662937 58449351 510854750 219739622 911378245 424625104 768943203 732073424 692921802 206528952 903451843 411054143 674546961 334792548 552888700 609094096 676228319 865741385 610775454 205327982 409132591 553729379 928191825 786477365 725588186 730512163 674186670 550246566 751649235 320020617 574145869 706252569 445762176 553849476 115735620 23621221 357610978 365417283 939240749 181548776 741320893 72020312 901890582 710576061 78625647 897206799 32268205 913660088 889280397 165936166 493921073 900089127 511575332 321101490 740480214 451526832 132909491 774587762 213014190 588077121 96400003 937079003 51844016 112733195 856974304 421622679 387995519 478788851 294199762 921466393 264175512 926990855 165695972 355209038 109130285 345240987 642841353 984637415 371422133 744323318 187673723 665659783 897326896 739639535 963500343 850489066 79466326 218178361 938640264 884476517 835957329 153926466 524065420 827070151 761256995 398203764 12572297 386554355 620022923 989921683 121019888 403608129 589398188 244719798 991482944 953172001 649686882 493800976 603449537 615939625 810496765 935757936 651007949 715259844 464257114 954132777 80307005 177465478 16055110 612216618 776149023 378147565 997607891 880032928 46199457 373343685 255768722 951971031 576307615 664458813 209891668 845204798 450445959 279908219 267418131 789599887 361934470 784195522 689679183 842922955 203646624 852770909 718142172 986919258 745043900 973228200 393880272 477467784 670823954 659294642 987519743 249403581 663978425 643321741 611976424 690880153 586756054 914740961 726308768 378627953 871385944 362655052 261052990 687037049 615699431 470021770 219379331 136152110 429068693 900089127 988240325 872106526 691600735 132549200 636236018 201604975 893844083 93037287 510614556 535834926 412375210 805092400 854212073 749487489 230308158 354128165 270060265 590358964 314135864 960618015 528148718 45118584 193438379 28184907 228626800 922547266 594802553 503048445 13893364 513977272 333831772 75383028 751889429 536075120 726789156 656172120 232710098 504969997 929993280 690880153 427027044 553489185 849167999 86431952 980193826 881834383 579189943 930833959 833675486 514577757 228866994 154166660 473984971 513016496 604650507 331429832 881954480 967823835 636956600 876430018 325424982 600447112 956174426 18937438 217217585 903932231 689799280 638998249 646204069 247602126 93157384 169899367 727990126 81748169 835116650 186472753 538717254 347402733 141916766 439637229 652088822 853851782 854452267 53285180 757173697 208330407 511935623 897086702 161492577 717061299 156568600 123902216 998928958 442279363 432551506 170259658 876069727 213974966 942723562 88353504 40795092 209411280 129306581 862378669 288795397 143958415 866702161 856133625 268378907 637316891 11611521 262854445 985958482 122581149 465217890 437835774 492600006 467619830 619302341 574145869 468580606 797646386 226825345 996286824 969985581 82468751 131108036 378027468 679711132 433992670 356289911 781793582 928672213 896125926 989201101 583273241 668061723 123301731 816982003 585314890 241717373 342959144 670103372 371902521 188634499 339836622 391598429 630231168 361454082 935757936 45118584 706973151 920145326 835837232 677068998 221180786 866702161 366978544 682833654 198242259 328547504 336714100 372142715 174583150 386194064 721504888 558293065 10050260 345481181 213734772 37552473 111292031 409853173 592640807 17976662 962779761 803290945 994605466 445642079 413215889 428468208 4525798 460414010 830793158 367819223 603809828 791401342 87512825 77544774 936478518 895765635 502688154 55326829 232710098 596604008 943324047 670463663 694002675 975149752 636476212 253727073 346321860 182989940 429308887 787558238 421742776 363976119 615098946 467499733 513016496 978272274 136752595 477707978 171941016 100123010 938640264 550366663 309452081 676108222 945725987 65775268 240876694 156448503 2123858 942963756 260092214 299604127 189355081 143958415 529950173 435193640 18577147 397483182 439156841 966502768 540158418 101323980 326385758 142637348 612937200 906454268 696284518 380429408 241236985 510254265 754531563 116095911 562976848 101083786 514697854 979473244 82209 441558781 99042137 340917495 828391218 312454506 897086702 327586728 735916528 124022313 98922040 844964604 350525255 910417469 196680998 162093062 819383943 724867604 207729922 205688273 87993213 610535260 419100642 550486760 822506465 152845593 398564055 594922650 162093062 948488218 681272393 721504888 366137865 393519981 291677725 121980664 637436988 857094401 199443229 792962603 790920954 346922345 482391761 599486336 149602974 823467241 207609825 65655171 583273241 140475602 310532954 73821767 235832620 406970845 518180667 50042561 630951750 282430256 8969387 315697125 400965995 959056754 392799399 707813830 182269358 524545808 293479180 186232559 260692699 43197032 85951564 142997639 578229167 861778184 194999640 430389760 16775692 541839776 386434258 935037354 251205036 342478756 570062571 497403886 410093367 835837232 819864331 492479909 415497732 171580725 435674028 819624137 755011951 822626562 815901130 297322284 829712285 831393643 644282517 458372361 780832806 127865417 422823649 669983275 538236866 634554660 846045477 7528223 344160114 47520524 852290521 340317010 63733619 840881306 916782610 757654085 65655171 96760294 931794735 962059179 58089060 751288944 439156841 992443720 788398917 87272631 236793396 172901792 280508704 686196370 403848323 866341870 154887242 549766178 198482453 525266390 999649540 211452929 911498342 904412619 355209038 257690274 834035777 893723986 415737926 482271664 937559391 265256385 315216737 512055720 620863602 357610978 535594732 67216432 234991941 411294337 121980664 768342718 847246447 538717254 996647115 377066692 478068269 743362542 389917071 521663480 170980240 482031470 238714948 504249415 515778727 841721985 252886394 952331322 707573636 28665295 574145869 522384062 382471057 38393152 644522711 351486031 763058450 268859295 655811829 37312279 991002556 905493492 501006796 969385096 353287486 578949749 154406854 277025891 891802434 926030079 876910406 666860753 776749508 200404005 833315195 731953327 72380603 91596123 330949444 746244870 408532106 452247414 110571449 247001641 369140290 535474635 770024076 708414315 948248024 738558662 559494035 228146412 716701008 748406616 288074815 810136474 405049293 477467784 2003761 524425711 736517013 476987396 958696463 629510586 381149990 852891006 634914951 927110952 359652627 286273360 290837046 385473482 5486574 72620797 616299916 359892821 716701008 600327015 118497851 7167932 130627648 56047411 860817408 492960297 493440685 422343261 437475483 625427288 33829466 193918767 949809285 743963027 953412195 552048021 872466817 51723919 169659173 525386487 996046630 457531682 552648506 579550234 926870758 157769570 841601888 451046444 914020379 365177089 366738350 184431104 898287672 568020922 944164726 180227709 781433291 865020803 615819528 242197761 15574722 749847780 484073119 827310345 403127741 60611097 832354419 698686458 289515979 682593460 163173935 78745744 285072390 369860872 847006253 65414977 232229710 163534226 720063724 567900825 471583031 777109799 143357930 177705672 849408193 109250382 294800247 286153263 562976848 741440990 908736111 1883664 837278396 359652627 897567090 249403581 774107374 642601159 265016191 145879967 515298339 924709012 496082819 258530953 265376482 758494764 654490762 945125502 425946171 347642927 926630564 804732109 825388793 134470752 691360541 57968963 41755868 680551811 188874693 84390303 198722647 158249958 976230625 754291369 745524288 411414434 265376482 982475669 750087974 619422438 429308887 406250263 886758360 997247600 108289606 234751747 743122348 752970302 477107493 371302036 908976305 13533073 373703976 648365815 369860872 644402614 715379941 664819104 845444992 994845660 655331441 57608672 88713795 541959873 370101066 546883850 25782967 892763210 170619949 291077240 474945747 320501005 670944051 723426440 994845660 67816917 267538228 110691546 61691970 763178547 980794311 870064877 599126045 554449961 945365696 828991703 408892397 553008797 190075663 189475178 545562783 754291369 338395458 842322470 423904522 464377211 387034743 402767450 647044748 430990245 432791700 583153144 259731923 425826074 241597276 671784730 712978001 314496155 797526289 982475669 1042985 380909796 496202916 643081547 766661360 627589034 832954904 425946171 277145988 732073424 283511129 979473244 951610740 663978425 142517251 345601278 218658749 283270935 307170238 726548962 493680879 837158299 76223707 310653051 127625223 654730956 177105187 564778303 817222197 115015038 56287605 949929382 37432376 86311855 424625104 360853597 772185822 986679064 874748660 840641112 380669602 840280821 746364967 279547928 26863840 854932655 543280940 783354843 676108222 879792734 43437226 449244989 203166236 374064267 577148294 388115616 763418741 21459475 220460204 754531563 108049412 763658935 139995214 92076511 503769027 772305919 85951564 905853783 627468937 98321555 786957753 443720527 557092095 987639840 414657053 578949749 90154959 167257233 269820071 59890515 175063538 400005219 531871725 503048445 999529443 246401156 993404496 89434377 540758903 247482029 444801400 647765330 348603703 299123739 291557628 322182363 13533073 71660021 962539567 622544960 456691003 505210191 891442143 544361813 937199100 487676029 618821953 153926466 810136474 142757445 803531139 411414434 237153687 1283179 84750594 60611097 972627715 85351079 993524593 989321198 247001641 749367392 606451962 324224012 288795397 980674214 533072695 310532954 150563750 44878390 412014919 163173935 95439227 390517556 849047902 870545265 120659597 574986548 120179209 526227166 869224198 244239410 776869605 721144597 222261659 765940778 509053295 274263660 788639111 448044019 231268934 765700584 568621407 827670636 919785035 162693547 111772419 543881425 19297729 520822801 774587762 205928467 833555389 731472939 323383333 982115378 864180124 186232559 57128284 453568481 391478332 788639111 35510824 348723800 275584727 432671603 210732347 25422676 993764787 690039474 68537499 888199524 600327015 61091485 679470938 104566599 629990974 569101795 253967267 610174969 123902216 176624799 734595461 93037287 66976238 385233288 724387216 367338835 634674757 84030012 760056025 633593884 954252874 731953327 837158299 564778303 874988854 39714219 206769146 335633227 900569515 343439532 661936776 51003337 551087245 397363085 49682270 286753748 76103610 739039050 966502768 952331322 778791157 206288758 92917190 473024195 934076578 663257843 856974304 498965147 471462934 465458084 519501734 739159147 275224436 179747321 670223469 479629530 813379093 595643232 583753629 989681489 205808370 392319011 753810981 998448570 30346653 372983394 619302341 276905794 68777693 140235408 407451233 782153873 691480638 784675910 612336715 477347687 993524593 629270392 965421895 248202611 236192911 333711675 160051413 984997706 567780728 346201763 22420251 930713862 435193640 609694581 940802010 286273360 300685000 118858142 825388793 428107917 92917190 14493849 530190367 917262998 681512587 746725258 668422014 790680760 409252688 46559748 44998487 576307615 983916833 822746659 45839166 939360846 173382180 325665176 668061723 282550353 916782610 172301307 693522287 784675910 46319554 725828380 512295914 745884579 886398069 680912102 237273784 849768484 991603041 344640502 939841234 591680031 832234322 48721494 974549267 238474754 998328473 857574789 335032742 396882697 852891006 470622255 169418979 533673180 218658749 130267357 402166965 663738231 252045715 788879305 146240258 231268934 993164302 222742047 186232559 735316043 358811948 9689969 114894941 433272088 549646081 850368969 150203459 625547385 92196608 711897128 856974304 213134287 649086397 465337987 741080699 545562783 2604246 647164845 624706706 541479485 576307615 303447231 551927924 669983275 592160419 111412128 551567633 121740470 558413162 856614013 850368969 718382366 631312041 697605585 856734110 558533259 797165998 878111376 350525255 893243598 253727073 182389455 714178971 323983818 327586728 174583150 940681913 822266271 923988430 78145259 911738536 501967572 535955023 954252874 195480028 377907371 254207461 671784730 231989516 15454625 199923617 461855174 547124044 695083548 705772181 862258572 878351570 383071542 488756902 526707554 377787274 582072271 476747202 204607400 716460814 256609401 264535803 451887123 30947138 562616557 390037168 805812982 161012189 139274632 964941507 165095487 602728955 674426864 253126588 356650202 863579639 399164540 845805283 33469175 824788308 981875184 150083362 22900639 479629530 784916104 16295304 858055177 294800247 594322165 942723562 793322894 645963875 363375634 211573026 39954413 342358659 358211463 272222011 462575756 953772486 338395458 681152296 459813525 384032318 774587762 212653899 148642198 731352842 796805707 318579453 135311431 744803706 608373514 5846865 245920768 228866994 790080275 669142596 747205646 50042561 84390303 123181634 631672332 261533378 240636500 508452810 512536108 257089789 363735925 269579877 84030012 852170424 41635771 92316705 264775997 30226556 807854631 145879967 583873726 852410618 627468937 489117193 290236561 50402852 174943441 443600430 40915189 925189400 245800671 812178123 399524831 872586914 878591764 921826684 978392371 53885665 484673604 407931621 870665362 906814559 798607162 668782305 546163268 691120347 12932588 999769637 863699736 451166541 649206494 791641536 288675300 84150109 468940897 455249839 352206613 15214431 649326591 449004795 193198185 636836503 188154111 597324590 332510705 361213888 347402733 553849476 103245532 106007763 430870148 131108036 176744896 113934165 773867180 388355810 245800671 384032318 495242140 473984971 568020922 796085125 289756173 478548657 696284518 114174359 504129318 734235170 41755868 506411161 173622374 501126893 542560358 936238324 756573212 867542840 605731380 362534955 362534955 440598005 280868995 113814068 842082276 647164845 476266814 377667177 776028926 929032504 312094215 621103796 79586423 262013766 359772724 304167813 550606857 60971388 652689307 821065301 260572602 594682456 71299730 478548657 301165388 509293489 615459237 935157451 830673061 600567209 520102219 953652389 316777998 412855598 860096826 440598005 632272817 36111309 299964418 142517251 656892702 57608672 893243598 957735687 54846441 188994790 147201034 750448265 935517742 589157994 409492882 828631412 144919191 4886089 799928229 534633956 582552659 323143139 462095368 420421709 912098827 566699855 438436259 517940473 169178785 788999402 421142291 620863602 651248143 610174969 983316348 813979578 505210191 981394796 209531377 649806979 118017463 952091128 202565751 760056025 312334409 102164659 600807403 754771757 744563512 95559324 667821529 808455116 172901792 487195641 746485064 232469904 606211768 936598615 714779456 967463544 931314347 590599158 919544841 685355691 190315857 6687544 865020803 642841353 547964723 967463544 87512825 515298339 672505312 271501429 829111800 393159690 56407702 501487184 14373752 828631412 619062147 121019888 288675300 675868028 732433715 617020498 127264932 6327253 308131014 863219348 968664514 981154602 343199338 88713795 270900944 761136898 246160962 837038202 243759022 508693004 178065963 162813644 956414620 56767993 596363814 494761752 449965571 204607400 637917376 992924108 836197523 436154416 599846627 798126774 278827346 890241173 201484878 884836808 106368054 346682151 476026620 884116226 552288215 137112886 395681727 464617405 647525136 683193945 23981512 386194064 321942169 835717135 226705248 4285604 363615828 154406854 365177089 797646386 691480638 865260997 604170119 533312889 581832077 563217042 983316348 408412009 729070999 352566904 541119194 77664871 304047716 342839047 413335986 192837894 863579639 618581759 36351503 17616371 843883731 446722952 736156722 357010493 900929806 916182125 423544231 957015105 599486336 789840081 675507737 761497189 14974237 472423710 351005643 297922769 360853597 399885122 992804011 795364543 110091061 547244141 554810252 618461662 998088279 75262931 281469480 921706587 885437293 145159385 786597462 474225165 84270206 539678030 424384910 311253536 138073662 249163387 706132472 323743624 239195336 238354657 984157027 974669364 728830805 580751204 960017530 907535141 283631226 248322708 386194064 700247719 828511315 276665600 626147870 482992246 149362780 213254384 737477789 473744777 117897366 639118346 108169509 938279973 89314280 147801519 625427288 496563207 749487489 611976424 66615947 471583031 787077850 414176665 469781576 328427407 544241716 542560358 859136050 391358235 122100761 350765449 183350231 490678454 779631836 321701975 429789275 816501615 573665481 575707130 326746049 15574722 418259963 682473363 82108460 938880458 38873540 100603398 252526103 664939201 319900520 419220739 94118160 539798127 465578181 325064691 33349078 405049293 931194250 418860448 997367697 1643470 152965690 581471786 346201763 3565022 623265542 588317315 921706587 476987396 361934470 984757512 620263117 972627715 496323013 371422133 863819833 656652508 782754358 789719984 712737807 224663599 583753629 565498885 457171391 315096640 181909067 142397154 976831110 150443653 480350112 135431528 403127741 349804673 850729260 317018192 188994790 848327320 778430866 866101676 365537380 497764177 719943627 326986243 252285909 595042747 731713133 154647048 730151872 248322708 694723257 735195946 620623408 701568786 807134049 511935623 278707249 731593036 865741385 628189519 994245175 252766297 641760480 541839776 787678335 77664871 216376906 14613946 849768484 229227285 963380246 831393643 425946171 283751323 571383638 40314704 833195098 834396068 417779575 209891668 345961569 326505855 64574298 502087669 368179514 37792667 973468394 299604127 203766721 210492153 747445840 758494764 600327015 875349145 6687544 687397340 641760480 871986429 624226318 353887971 640799704 376226013 846525865 246160962 26983937 862018378 76944289 904292522 805332594 858535565 255408431 8368902 493320588 480109918 120299306 478428560 165695972 381750475 206649049 951250449 852410618 341277786 697245294 886398069 265736773 196080513 739639535 252766297 565739079 301645776 419581030 447563631 417179090 630831653 13653170 274623951 391958720 837158299 725948477 125103186 262614251 832354419 421982970 628069422 345361084 504129318 339716525 638998249 117176784 932635414 185151686 805452691 141676572 753090399 367939320 764739808 422823649 440237714 365297186 281349383 125823768 66015462 109250382 171220434 259011341 908375820 92196608 444321012 829231897 989441295 41635771 348123315 893003404 661216194 83069236 957615590 653890277 342118465 952211225 577868876 887358845 318579453 900329321 548685305 795724834 870545265 711296643 791761633 89314280 501727378 397242988 401686577 874508466 451767026 821065301 352566904 487555932 204607400 579189943 396042018 863339445 501727378 330228862 860697311 708054024 180828194 173502277 321341684 367939320 426426559 318699550 508332713 598165269 559494035 559854326 921226199 643321741 905133201 433272088 678149871 556971998 711897128 47640621 506291064 349444382 440598005 806653661 640919801 201004490 746124773 390877847 713698583 80307005 426546656 543641231 510374362 471342837 243278634 374304461 758734958 498364662 103966114 921586490 127505126 371061842 638277667 644282517 478188366 878231473 266937743 283270935 247001641 821425592 169058688 660375515 813499190 256249110 30346653 252526103 719823530 514457660 667941626 903451843 136272207 479509433 349444382 675747931 908495917 825508890 131828618 453328287 943203950 198722647 393519981 271621526 74422252 994725563 161252383 818062876 83549624 354608553 356890396 698926652 896486217 194519252 558293065 914861058 777109799 975510043 890841658 978152177 153566175 248322708 378147565 397002794 369140290 574265966 777950478 141316281 43437226 161252383 81147684 417899672 413095792 770624561 717901978 721865179 639358540 464617405 265856870 45959263 537035896 935517742 640439413 485153992 375025043 96400003 935878033 8849290 578709555 356169814 268258810 193318282 182749746 883035353 806293370 459933622 309211887 423784425 402767450 902611164 842682761 305969268 336714100 594202068 804852206 568981698 26623646 1163082 183230134 845324895 323983818 724987701 924949206 530670755 819383943 333711675 27224131 410813949 238354657 639959025 253727073 190315857 683794430 32028011 689078698 37552473 492840200 375865722 681752781 455129742 868743810 107328830 423664328 685235594 770504464 568261116 390757750 772305919 330108765 834396068 894444568 859015953 612576909 697245294 550847051 32028011 715620135 863219348 462095368 467860024 715019650 574025772 74902640 949088703 377907371 842322470 474465359 439877423 64814492 520462510 541119194 724867604 682353266 540758903 941282398 638998249 902130776 895885732 893603889 951850934 963500343 854932655 241597276 176024314 530190367 314376058 816861906 174222859 454168966 683554236 395081242 329748474 145519676 144678997 997367697 649927076 571503735 753090399 690039474 285913069 261173087 109250382 783234746 346441957 684995400 176384605 562016072 770264270 276785697 738078274 294199762 744563512 591800128 654610859 655811829 567300340 495001946 748646810 858895856 142757445 625667482 604650507 213014190 64694395 638037473 565739079 851209648 336714100 117056687 240276209 100483301 195119737 616179819 19898214 71539924 275824921 430750051 710936352 654490762 334552354 121620373 626748355 271261235 727389641 991723138 54606247 5366477 475426135 191636924 41275480 961458694 26623646 900929806 314376058 244119313 373343685 230668449 474345262 377066692 585675181 150203459 330108765 173862568 735556237 898047478 830192673 514457660 982475669 61211582 309091790 939601040 294800247 920865908 240636500 865861482 524065420 5966962 938880458 860337020 821785883 122941440 619422438 376586304 575707130 282790547 376466207 221901368 548925499 251565327 334192063 767742233 917503192 27824616 251565327 137473177 362775149 877030503 727149447 820464816 962899858 886998554 2604246 561175393 501607281 1403276 504609706 36351503 462575756 987759937 830072576 762457965 145759870 655691732 444561206 203286333 783354843 624346415 209651474 521303189 713458389 159330831 599246142 621343990 416698702 273302884 809896280 364216313 333951869 578469361 917503192 766541263 393880272 896486217 273903369 115855717 782754358 741080699 767502039 44398002 294560053 376105916 63853716 812778608 901650388 472663904 714419165 469661479 378868147 9569872 496443110 255648625 462575756 393159690 459813525 728950902 197761871 701688883 687397340 450325862 866822258 158970540 941882883 493560782 104806793 106728345 596363814 462575756 95319130 819624137 232830195 598285366 896366120 452367511 399284637 138674147 766901554 754411466 882554965 420301612 974549267 136632498 74662446 122941440 225984666 45118584 159691122 300204612 339476331 414056568 916422319 909816984 280388607 904292522 150683847 649446688 554329864 420902097 300444806 797526289 115135135 783114649 667461238 600447112 587716830 577028197 490798551 827550539 786237171 568621407 684274818 341878271 597324590 745163997 788278820 63373328 258050565 368539805 339716525 374784849 300925194 90515250 192717797 869104101 243398731 535474635 403247838 663498037 875469242 408051718 398684152 735556237 701208495 220940592 694362966 210972541 344640502 296361508 893363695 826109375 591199643 317738774 221420980 70218857 331910220 505450385 653890277 604890701 823587338 721745082 12572297 165095487 93397578 157048988 780352418 526827651 333351384 594081971 194399155 658093672 948728412 922307072 331189638 305849171 298162963 372262812 525986972 268378907 697365391 666500462 137232983 414296762 456090518 577388488 903451843 743602736 484673604 4765992 317738774 543160843 593361389 893363695 269699974 854572364 897927381 485514283 467139442 227906218 194639349 308010917 392799399 602969149 657252993 598525560 488636805 106728345 843643537 127264932 909336596 404448808 8729193 282550353 855172849 49922464 766301069 341517980 86552049 291437531 96640197 456691003 14253655 253126588 619302341 876910406 126424253 601888276 74302155 143117736 348003218 482391761 505810676 364456507 433392185 396402309 570663056 275704824 11611521 596363814 66495850 562736654 256969692 597204493 456090518 375865722 448164116 500406311 659895127 496202916 68657596 580511010 587716830 918343871 801369393 122701246 492600006 808695310 601527985 159571025 297922769 714419165 570903250 31427526 429789275 488876999 648365815 421022194 343319435 995326048 394000369 615699431 945245599 36351503 201124587 893363695 661216194 786957753 819023652 256249110 855773334 644042323 774467665 143838318 482872149 3925313 974909558 954973456 513977272 397363085 202565751 679350841 11491424 463176241 551807827 54606247 741080699 904532716 383912221 608253417 526587457 343799823 471462934 782514164 794643961 210011765 925309497 901650388 486595156 895405344 334792548 765220196 945005405 774347568 548925499 566459661 436034319 520462510 880873607 104806793 873787884 616780304 350645352 799567938 779271545 957255299 125223283 415377635 909336596 477948172 843523440 875349145 49922464 143718221 513136593 4045410 137593274 933115802 905733686 11491424 81988363 265856870 116095911 17376177 740720408 866582064 362294761 346562054 955333747 43917614 61451776 636476212 689078698 899488642 414296762 351966419 154406854 571743929 641880577 621223893 897807284 853731685 54245956 402287062 937439294 167617524 306449656 246761447 194639349 46559748 472543807 240636500 998088279 46439651 742281669 217697973 167617524 429068693 419581030 216977391 461014495 780352418 687037049 411294337 282550353 498604856 303086940 24942288 893964180 238474754 330829347 776389217 483232440 768582912 493800976 815420742 89194183 435794125 864660512 888079427 156808794 794403767 888559815 87993213 769663785 879312346 254447655 907174850 5846865 501367087 171100337 271141138 437715677 493440685 257930468 162333256 196801095 347042442 904652813 767381942 952091128 850368969 14854140 938400070 481671179 548805402 387755325 207369631 82228557 677068998 778911254 625307191 665059298 704931502 317138289 972988006 533913374 518661055 863819833 504609706 997367697 133990364 708654509 473864874 337074391 373944170 908135626 245560477 448764601 610054872 823707435 360133015 322662751 90395153 673586185 960978306 510734653 33589272 998208376 362895246 624466512 541479485 509413586 442039169 645603584 584234017 857814983 482992246 680191520 96520100 17736468 360973694 696044324 52444501 257329983 11491424 779031351 422103067 887959330 989561392 24581997 218538652 540038321 106007763 567900825 290716949 582072271 623866027 486595156 472303613 354488456 291557628 344400308 605250992 26623646 136632498 392799399 181188485 95679421 850248872 822866756 773987277 793563088 552048021 479989821 926030079 440718102 770264270 583153144 787197947 137593274 474345262 369980969 599366239 646924651 598045172 590238867 132789394 733514588 819744234 239315433 733394491 413095792 305608977 228386606 280868995 556731804 495962722 884956905 769423591 125463477 471102643 101323980 553969573 779631836 326746049 651728531 865621288 277145988 549886275 778671060 866461967 614138170 808214922 119098336 906814559 290236561 978152177 103005338 16055110 19898214 243759022 634314466 275224436 20979087 82209 114534650 497163692 351726225 452727802 184190910 317138289 138193759 358091366 656892702 890721561 879312346 713098098 841842082 518300764 939000555 239675724 558773453 974068879 927591340 789960178 140955990 103966114 969024805 912339021 34069660 907054753 431350536 968064029 635515436 284952293 281229286 574265966 535834926 780832806 536075120 802570363 473864874 364456507 958336172 808335019 753810981 929392795 984757512 108769994 617260692 822386368 951010255 662417164 830673061 477828075 962179276 468220315 352807098 552528409 329388183 471823225 634074272 871746235 681392490 984517318 210011765 686436564 411174240 639959025 490558357 38032861 267538228 145879967 76223707 672145021 485514283 202565751 651248143 253606976 595523135 741801281 958095978 807254146 502928348 115615523 477948172 235952717 629870877 424985395 929272698 77064386 140955990 971666939 39714219 186592850 619662632 164855293 221661174 795724834 647885427 884716711 695684033 112733195 439397035 163414129 328667601 721985276 798366968 618221468 545562783 260212311 444441109 25302579 535354538 872586914 300685000 487435835 506531258 957255299 347883121 577508585 88353504 703250144 967463544 233911068 472423710 557692580 797045901 78385453 843283246 394120466 596363814 196801095 950289673 153686272 305368783 481671179 239195336 793683185 911498342 251925618 270780847 598525560 80307005 450445959 899848933 700367816 656652508 968184126 329268086 259611826 452127317 481551082 364336410 907655238 753330593 712857904 901049903 981634990 692921802 941642689 162093062 413936471 642360965 10770842 537876575 39113734 160411704 403007644 825268696 680311617 349564479 519381637 339476331 449365086 461374786 140835893 536075120 245680574 210852444 536795702 500166117 410213464 989681489 708534412 74902640 586635957 708534412 764739808 987279549 722946052 719102948 208810795 475666329 644042323 654490762 932875608 419100642 603689731 197041289 72860991 574866451 208450504 823227047 204006915 299003642 808815407 100843592 725588186 460654204 561415587 29986362 419100642 823827532 665059298 370821648 49682270 430750051 138914341 867783034 648005524 735195946 111652322 114654747 371902521 588197218 672985700 21699669 433151991 752970302 539197642 684154721 709134897 87512825 262374057 65775268 310052566 387995519 422583455 780352418 963500343 300084515 593721680 678870453 594922650 998688764 714899553 437115192 385233288 647044748 212533802 447443534 354968844 322182363 721384791 184070813 688238019 956654814 812418317 299724224 410934046 842562664 854452267 414897247 673225894 643802129 902971455 952931807 367939320 504729803 268499004 401086092 50643046 887478942 446602855 795124349 626147870 318219162 169779270 473384486 933476093 100963689 167857718 845805283 331429832 587356539 10770842 563817527 988840810 915821834 153205884 282190062 401926771 543521134 118738045 221180786 930233474 103966114 588557509 642721256 319179938 822986853 296241411 348483606 483592731 863219348 654971150 396042018 142277057 533913374 841962179 85951564 849768484 141916766 978872759 450445959 847967029 223943017 344760599 964100828 55206732 258891244 816621712 772906404 584354114 157529376 283631226 825628987 960738112 515178242 664939201 516018921 823827532 600567209 992203526 547604432 335393033 254447655 134230558 153446078 848807708 452127317 970586066 580390913 952931807 849648387 966262574 360373209 439877423 169779270 821905980 905613589 919905132 852050327 503769027 791881730 476266814 40314704 2724343 292638501 767742233 88833892 118858142 212894093 861898281 534633956 49442076 349324285 233911068 716941202 811817832 81748169 351606128 389316586 667581335 455610130 390877847 276185212 869704586 373824073 368539805 881113801 296241411 358331560 574506160 772666210 83429527 810736959 543881425 512295914 755372242 127745320 103005338 885797584 924108527 255768722 567540534 437955871 921946781 350765449 753810981 8368902 873787884 616420013 384272512 624826803 818903555 76463901 125223283 788759208 229827770 393159690 755252145 550126469 935998130 882675062 403007644 379228438 924108527 339716525 173862568 841601888 476386911 904172425 609814678 289756173 285192487 121500276 184070813 98561749 608973999 880273122 389436683 661936776 335032742 527067845 149002489 44398002 834756359 337915070 103125435 477227590 734595461 41635771 862138475 430990245 34069660 469181091 546163268 571864026 907895432 668782305 663017649 851569939 334552354 629630683 173862568 963980731 488756902 620503311 609454387 962419470 664939201 633353690 582912950 527187942 17976662 813499190 72020312 719343142 771345143 25782967 354368359 745404191 881834383 35751018 837158299 188394305 963740537 246641350 971186551 454889548 943804435 103245532 978392371 798727259 275824921 860457117 817702585 189114887 40434801 260812796 260692699 597324590 455730227 987639840 63613522 342718950 876670212 524065420 449605280 319059841 339476331 322782848 820584913 399885122 22540348 475065844 945125502 109490576 969865484 639959025 128946290 295280635 189955566 516139018 373343685 273302884 183710522 660495612 352206613 737117498 927591340 87152534 687877728 214215160 287114039 352566904 458492458 950409770 148522101 951850934 950890158 593961874 497163692 915581640 960497918 390277362 597324590 936838809 300805097 113213583 541119194 869944780 275344533 24942288 276425406 97240682 905973880 482031470 971426745 70939439 922667363 746965452 409012494 812298220 228746897 892883307 390637653 229107188 414536956 736156722 219139137 79706520 90154959 400605704 335152839 475306038 293959568 279668025 267418131 17376177 868623713 810616862 207970116 47040136 980434020 176144411 81748169 933235899 243398731 655091247 180107612 937559391 922888 282550353 859015953 559013647 951850934 905373395 193558476 621223893 366498156 2844440 35630921 984036930 993284399 28545198 108769994 336594003 478428560 204847594 505450385 606812253 886037778 805452691 353407583 959056754 816261421 941402495 156928891 866822258 951130352 207009340 300805097 743362542 523945323 263334833 81267781 882554965 512416011 41996062 454168966 821785883 810256571 852770909 106848442 367098641 848447417 425465783 428708402 431350536 510134168 455129742 245560477 722946052 264175512 913299797 932395220 628910101 473384486 941042204 859496341 822746659 901170000 875108951 948248024 220820495 830552964 648365815 911378245 970946357 270180362 9930163 251805521 437955871 653529986 852530715 32628496 837758784 939240749 648245718 935517742 795604737 79826617 638998249 500046020 23861415 290116464 200163811 951730837 209171086 373583879 139755020 270540653 170860143 14373752 454048869 892883307 363255537 216256809 419460933 791041051 965662089 209171086 185872268 176624799 432791700 504729803 326505855 395201339 504849900 840881306 640679607 637677182 323983818 242317858 965662089 851690036 321221587 130027163 432071118 448884698 884356420 218658749 613417588 239195336 414176665 135911916 602969149 25782967 766060875 786237171 704210920 274984242 514337563 364696701 971907133 787558238 25662870 50883240 842202373 999409346 281829771 250964842 478788851 375385334 319540229 290236561 993764787 794643961 769663785 572584608 312454506 654610859 57368478 71660021 762698159 706853054 480950597 61812067 669863178 511575332 133389879 427987820 484433410 459333137 974549267 696644809 770624561 275945018 401806674 841601888 701088398 216136712 493440685 884596614 961338597 614258267 265856870 299123739 321101490 351606128 468220315 903932231 589398188 354728650 197401580 315937319 927711437 291437531 220099913 887599039 221420980 808214922 4886089 734715558 153566175 343679726 383912221 152485302 648485912 415737926 99042137 196200610 657853478 695443839 626027773 527788427 868023228 411774725 561895975 386434258 776149023 370461357 447563631 33349078 863699736 5006186 249643775 750928653 64093910 740360117 48961688 113213583 84870691 665179395 591439837 758374667 482872149 370101066 668422014 56647896 760416316 725347992 125463477 579189943 355689426 865381094 187433529 473504583 943804435 409492882 213374481 829952479 644162420 854932655 656772605 88353504 611616133 607412738 592760904 977551692 318459356 44878390 407811524 547604432 885197099 429308887 692441414 659534836 991242750 122461052 177825769 602008373 489237290 477707978 42716644 429789275 827550539 322782848 386914646 531991822 840761209 958456269 959056754 309452081 956654814 288074815 62172358 615699431 344880696 784435716 127985514 320981393 723186246 491519133 944645114 617500886 645363390 694002675 543401037 981394796 165455778 569101795 95319130 139995214 504609706 776509314 724507313 311854021 202085363 539197642 668902402 565378788 230788546 181548776 751048750 316057416 194519252 230428255 71179633 755011951 546283365 117416978 811577638 378507856 351726225 445882273 116576299 204247109 561295490 877510891 251685424 358331560 52444501 891682337 575226742 568741504 374664752 682694 165215584 38513249 128826193 471943322 833075001 775188247 999889734 859496341 579910525 117777269 441198490 711897128 289155688 448284213 882194674 845565089 544241716 957615590 183230134 354488456 202445654 158129861 274143563 124622798 479389336 183830619 444080818 375625528 616540110 832594613 716340717 480470209 395201339 325304885 155007339 390397459 853611588 350525255 357971269 581231592 89314280 868623713 640319316 546163268 975389946 140475602 629750780 136032013 757413891 299243836 126304156 207970116 862378669 576067421 312574603 943564241 520582607 92436802 974309073 401446383 579189943 117897366 930473668 874028078 969264999 598045172 217217585 663498037 849167999 275344533 657853478 912699312 274623951 490798551 900089127 896846508 628910101 64334104 85591273 439397035 189955566 779031351 900329321 773506889 539077545 715980426 522624256 820344719 345240987 57728769 854572364 773747083 340677301 155487727 409973270 423304037 294319859 680431714 64334104 351005643 772786307 880032928 514457660 115615523 669262693 284592002 665899977 112132710 333831772 46920039 572944899 426306462 195359931 82228557 582432562 8248805 377186789 525386487 95439227 214815645 211813220 310532954 202205460 486114768 698686458 27464325 106608248 367819223 777470090 310653051 983676639 482151567 433151991 190315857 605010798 520222316 732914103 397603279 562616557 195119737 878591764 473264389 395921921 602608858 539678030 938880458 691360541 194038864 424865298 765340293 754771757 655331441 951250449 591800128 615939625 433512282 440718102 996767212 813379093 213374481 696644809 700968301 72740894 215296033 168338106 228386606 277145988 256129013 631552235 449004795 493680879 422103067 607532835 498124468 553369088 940321622 405409584 484553507 555290640 48361203 417779575 272942593 759575637 742641960 143237833 316417707 456811100 718982851 196560901 335633227 229347382 12692394 930954056 127625223 788158723 330589153 321701975 721985276 647164845 258410856 196801095 891562240 634434563 867422743 620263117 863099251 503288639 441318587 299604127 106007763 57008187 917743386 935757936 580631107 640679607 520702704 404328711 950770061 903091552 76223707 935037354 888079427 276305309 323983818 275584727 299003642 121620373 162453353 522624256 556851901 273543078 565138594 405409584 598165269 912098827 57848866 748286519 249403581 101323980 378147565 199683423 663017649 970105678 442039169 682353266 791521439 252165812 366738350 432671603 208210310 33949563 892282822 957615590 383792124 305368783 474465359 932875608 504609706 30346653 106368054 51243531 729311193 5486574 432911797 748887004 30947138 570422862 786357268 386794549 339236137 885437293 500286214 760536413 696284518 148522101 259852020 106968539 417539381 711416740 262494154 117777269 683914527 896246023 321221587 603329440 505570482 727990126 807734534 272582302 565859176 176024314 333471481 65775268 77184483 791281245 193318282 813258996 609574484 24221706 25062385 588797703 368659902 370701551 440958296 713818680 48241106 72260506 966502768 74061961 254928043 842802858 105647472 728230320 106127860 224183211 422703552 196440804 637917376 162453353 901410194 1042985 539798127 233550777 143117736 636716406 645123196 789960178 300925194 309452081 861297796 291317434 635875727 254207461 128105611 916062028 170139561 292398307 875229048 645963875 395081242 726188671 729070999 329147989 927351146 510134168 94598548 970465969 887238748 584954599 657252993 143598124 153085787 56167508 865501191 856013528 283150838 830913255 923748236 683073848 938640264 798366968 809175698 109370479 509173392 414296762 872346720 705652084 83429527 939841234 297202187 225384181 25662870 293118889 942363271 902731261 372022618 663137746 257810371 554570058 143598124 460534107 406850748 506771452 245560477 205327982 245920768 405049293 49802367 448044019 985237900 962899858 685235594 315697125 397483182 841962179 8008611 333831772 823947629 813018802 703970726 81507975 502447960 455009645 102885241 464257114 943324047 565618982 719463239 486475059 803531139 199923617 563817527 592881001 45839166 412014919 767742233 269820071 282430256 123541925 509533683 823347144 609934775 761136898 183950716 682953751 372142715 467379636 746485064 659174545 632753205 376706401 906694462 434833349 288194912 797045901 510134168 107328830 230788546 16895789 728470514 938400070 80427102 791881730 305368783 378748050 922427169 993764787 964821410 451286638 365056992 209531377 125943865 549285790 642601159 306809947 40314704 152845593 199563326 471823225 442279363 27704519 861898281 299724224 518060570 395081242 800288520 945966181 418019769 995085854 823106950 444561206 80066811 108769994 15694819 36831891 293959568 461614980 250244260 886277972 537276090 73221282 894684762 679711132 545322589 759815831 888559815 551327439 371061842 202306 751649235 166536651 18937438 561175393 892042628 682694 833075001 145159385 727990126 247842320 759455540 406010069 762578062 567300340 580631107 255768722 983436445 113453777 419821224 98801943 694603160 866341870 846405768 85711370 754531563 110571449 115015038 836317620 822626562 64814492 597684881 483953022 820464816 692801705 274744048 250484454 347042442 747085549 653289792 338875846 946086278 534393762 909096402 27704519 821305495 204247109 751288944 217337682 631071847 425225589 792482215 690159571 550967148 386914646 6807641 982956057 66976238 538957448 260212311 574866451 967943932 305488880 89074086 15694819 200884393 135071237 91476026 82468751 523825226 178306157 352086516 172301307 198482453 973468394 237153687 713578486 85591273 506411161 226945442 874148175 57008187 637557085 424745201 629270392 50763143 741200796 791521439 926150176 155487727 825628987 71780118 285792972 318219162 437115192 619782729 745043900 940081428 326145564 47640621 955333747 15694819 981514893 447203340 119578724 603689731 266337258 131468327 687037049 317258386 975750237 675627834 51363628 268859295 228266509 887599039 798847356 459453234 574626257 119818918 279547928 633113496 970826260 375745625 918704162 964461119 930593765 104086211 283150838 510134168 270420556 640439413 698085973 174463053 489957872 542800552 123662022 650887852 501727378 803290945 986919258 460894398 80066811 309812372 871265847 743722833 335032742 677068998 525986972 23621221 581111495 150443653 529950173 274023466 188634499 57728769 885557390 520342413 259371632 261052990 294199762 297442381 492479909 213614675 199323132 11131133 43557323 862979154 555771028 702409465 442279363 948368121 43797517 158009764 202685848 443360236 185271783 625787579 983196251 683434139 524545808 283030741 950890158 442159266 850008678 848207223 153205884 642601159 321822072 638517861 574145869 742401766 24461900 574746354 732073424 214695548 534153568 396282212 454048869 80307005 498845050 304768298 85711370 119939015 905373395 618461662 111412128 660615709 114534650 567420437 687757631 679350841 175664023 852891006 710696158 142036863 154286757 25302579 185511977 430509857 580030622 482391761 416098217 635515436 382230863 93037287 605971574 308851596 722825955 317618677 367819223 467619830 530910949 707573636 852290521 1643470 553849476 314135864 613297491 922787460 759335443 522624256 354488456 759695734 743002251 543761328 436394610 390637653 801849781 491999521 250724648 211693123 314616252 678990550 390157265 358691851 453928772 844844507 828391218 318699550 418139866 25182482 587356539 919064453 11731618 177585575 120899791 47760718 225624375 811457541 866822258 976951207 845565089 755612436 947527442 908976305 132909491 314135864 994485369 163414129 734475364 856734110 744203221 190195760 829952479 425705977 845925380 262013766 945245599 252165812 859376244 325665176 479869724 239555627 987039355 845324895 972027230 815060451 880873607 782394067 421742776 285312584 681752781 862138475 668902402 948848509 877150600 134230558 517339988 815660936 286513554 365417283 305969268 980434020 383551930 35270630 720784306 154286757 757413891 990161877 185632074 899128351 170379755 817462391 438075968 147080937 432791700 72740894 775428441 911017954 842682761 924228624 968064029 906694462 723426440 678029774 227545927 585675181 519621831 588077121 93877966 845685186 455850324 999289249 959296948 773747083 328547504 304287910 241236985 311253536 321101490 297322284 832594613 971306648 173021889 942603465 118257657 975630140 819023652 938760361 197281483 623866027 75142834 220700398 249283484 865020803 238714948 805092400 168818494 922547266 277626376 887238748 809535989 525626681 313415282 746124773 322403 388836198 719583336 96400003 788999402 535474635 718982851 139875117 189114887 722946052 143237833 576788003 194999640 598765754 185031589 532592307 307650626 758855055 649446688 156808794 331910220 332510705 192237409 114294456 61451776 784555813 2484149 240636500 657132896 956654814 999169152 521062995 158249958 156208309 803651236 234511553 998448570 678149871 576307615 423424134 804972303 648005524 460654204 806773758 262614251 481671179 507131743 436034319 381630378 41275480 384632803 812058026 525266390 310412857 714539262 408291912 119218433 545082395 571143444 770264270 375985819 201004490 432791700 44998487 86672146 938520167 474825650 868503616 12091909 609814678 622064572 291677725 248082514 350645352 82829042 784796007 908375820 93277481 498604856 956774911 450926347 928311922 200524102 686316467 585915375 617140595 294079665 756813406 252045715 554449961 151884817 167257233 410693852 464617405 947887733 179507127 97841167 927951631 492960297 875709436 312694700 402407159 339836622 453808675 816982003 607292641 581591883 514697854 844844507 410813949 160051413 230788546 105167084 842562664 868623713 739879729 302966843 813979578 274023466 205568176 204967691 835476941 273062690 879912831 310052566 730031775 413335986 624106221 249403581 856013528 167977815 25782967 140235408 187313432 631432138 199803520 742281669 41875965 928912407 599005948 783474940 304648201 423544231 417419284 910537566 668181820 206168661 773146598 24822191 990642265 947887733 843043052 353407583 241597276 494881849 967463544 159090637 692201220 942843659 424505007 763658935 920385520 341037592 840881306 545322589 611976424 662537261 788158723 123181634 121620373 610895551 11131133 918824259 222261659 120299306 648125621 604770604 349084091 898167575 372863297 270660750 641280092 909216499 956774911 299484030 744683609 597204493 849047902 873307496 27224131 103485726 601527985 246040865 286753748 669743081 406010069 782634261 54245956 817222197 256129013 968784611 487435835 827070151 472663904 244599701 352326710 685836079 854572364 78265356 926630564 677189095 918584065 466659054 812058026 666860753 877390794 948968606 589998673 519261540 314736349 190556051 868383519 863219348 133029588 168698397 109730770 942002980 503408736 113573874 516499309 779751933 184431104 927351146 78985938 130867842 520582607 232830195 659775030 856133625 454529257 91716220 345721375 596123620 388115616 729551387 556971998 407090942 612336715 918704162 187673723 741080699 392078817 200163811 329988668 652929501 275224436 94958839 137232983 913419894 124502701 483832925 944885308 871385944 8008611 432191215 267898519 217577876 639838928 347522830 431110342 125943865 992804011 481551082 87632922 248803096 134710946 320741199 795364543 911858633 93517675 60611097 58449351 439156841 812538414 640319316 846525865 174823344 153205884 166176360 883876032 665179395 71059536 969865484 32388302 370701551 345361084 530910949 876069727 158129861 71059536 668301917 330469056 439637229 472543807 563217042 422823649 346081666 392439108 971066454 319300035 995205951 972988006 204127012 85230982 296481605 925789885 400365510 368900096 884236323 123662022 114774844 978512468 134350655 363735925 282190062 833315195 646564360 742041475 297562478 36711794 688117922 725107798 177945866 697005100 280268510 179987515 371902521 610295066 782273970 999409346 642601159 917142901 458012070 406610554 881474092 597444687 205688273 693282093 164134711 660735806 893483792 926150176 874988854 764739808 57848866 45598972 481671179 550726954 21579572 249163387 63853716 599966724 57128284 176985090 970465969 857214498 911858633 300204612 345481181 629390489 77184483 455730227 504609706 670944051 805212497 798487065 423544231 458492458 739279244 135911916 883635838 682353266 827070151 574025772 13773267 727629835 695083548 738678759 198962841 56888090 87152534 866461967 919424744 32388302 953892583 623505736 692321317 483592731 674907252 972507618 173622374 257570177 432311312 418139866 565138594 330949444 764859905 148882392 989441295 17015886 282430256 960377821 168218009 914380670 761857480 112973389 122340955 539798127 314856446 46559748 983316348 417058993 172541501 229347382 88473601 635155145 242197761 282430256 536435411 778791157 11611521 110211158 787197947 922307072 557692580 121620373 341397883 983316348 565979273 578589458 916902707 204487303 6087059 280388607 262854445 722105373 19778117 841721985 510494459 800048326 944164726 184551201 620983699 450325862 900449418 411894822 648846203 391598429 445642079 946926957 736997401 894084277 952931807 115735620 464377211 979593341 360493306 152485302 603449537 29145683 875589339 307410432 263815221 831033352 593361389 331549929 382711251 592280516 826829957 648245718 658814254 91716220 390517556 127505126 777109799 157769570 723426440 530670755 200404005 143838318 411054143 105887666 69378178 923027654 647525136 291437531 957615590 221180786 195960416 450085668 263094639 87152534 973708588 742401766 821425592 743242445 10770842 821785883 352086516 234511553 563577333 499565632 676948901 305488880 748406616 317498580 50883240 976951207 922307072 238474754 566459661 760416316 934917257 235592426 202085363 298523254 748046325 300204612 982475669 714779456 689438989 690399765 887719136 401206189 105287181 853611588 290356658 962659664 768222621 798727259 707933927 788158723 310292760 533432986 464377211 646684457 825989278 655331441 984757512 497644080 60250806 422103067 655451538 140955990 545802977 998088279 798727259 96880391 245320283 781193097 875469242 254207461 523224741 525266390 406370360 54966538 355809523 974188976 82468751 5366477 400365510 227185636 277506279 798607162 619662632 845324895 889040203 961578791 510494459 137353080 656292217 482151567 437715677 190195760 223342532 182749746 337074391 562016072 286393457 514217466 479389336 670583760 975630140 989201101 342238562 248682999 387635228 934797160 246881544 557092095 20979087 140955990 339956719 972027230 110691546 819263846 478428560 619542535 118017463 593961874 532592307 901170000 879192249 462815950 750688459 588317315 2364052 334792548 622785154 101083786 215055839 454529257 271021041 587957024 624346415 690159571 973348297 591319740 176264508 954372971 132669297 765220196 199203035 340317010 28785392 668662208 773747083 663738231 800288520 522384062 184551201 33589272 941882883 827550539 74422252 39353928 40674995 94478451 823827532 669983275 274503854 260212311 361814373 304047716 503889124 550726954 211573026 172781695 755132048 721504888 927110952 728350417 609934775 515298339 754531563 384993094 788759208 429789275 894204374 16175207 864780609 314976543 586275666 858415468 668662208 775548538 640799704 480950597 486234865 171820919 67816917 128225708 441078393 173382180 694002675 470141867 842562664 109850867 387154840 921226199 245560477 27824616 484313313 561895975 985838385 119098336 445642079 971066454 369140290 951130352 88953989 400365510 844364119 93998063 26623646 97961264 653890277 585074696 29385877 588557509 766541263 551807827 525746778 16895789 965902283 728950902 568261116 76704095 922427169 767141748 390277362 996166727 455009645 847726835 742882154 130867842 716220620 375265237 164975390 124382604 868383519 824067726 142156960 749487489 163294032 248082514 452007220 300084515 884716711 36111309 510374362 501367087 469781576 115015038 126424253 593481486 148402004 113693971 988600616 371542230 440718102 808214922 368419708 831633837 892402919 27104034 565739079 230067964 580390913 900209224 4525798 510494459 55807217 710335867 179146836 801129199 966142477 515058145 179747321 679591035 815420742 401566480 202306 907655238 576067421 215055839 572944899 112132710 674546961 582552659 37312279 721024500 983676639 507732228 104206308 332630802 14974237 403007644 292398307 467860024 767742233 329268086 94958839 375985819 490798551 306569753 112493001 877510891 979593341 231749322 637557085 365417283 816621712 337314585 288795397 102765144 653049598 471943322 414296762 497884274 485874574 406730651 551207342 769543688 309452081 494281364 195239834 286153263 213494578 458732652 228866994 85230982 743963027 772185822 270900944 745284094 49562173 227425830 708414315 94118160 280748898 454769451 774227471 50282755 686676758 216136712 370701551 799567938 169418979 861297796 62412552 190916342 53525374 960377821 767982427 476627105 908495917 900449418 325785273 236673299 468940897 76824192 504489609 465337987 132549200 185271783 165215584 162693547 699286943 344400308 409012494 912579215 246281059 974429170 846766059 476146717 263334833 281589577 356650202 282550353 25422676 811217347 868623713 762578062 14974237 885077002 180708097 965662089 177465478 424625104 326625952 944645114 556851901 293599277 752850205 66135559 131348230 509173392 810496765 550246566 388956295 582192368 691720832 988360422 928311922 214455354 364456507 46199457 824908405 112733195 614018073 921346296 832594613 826709860 629390489 727509738 464857599 197881968 538116769 100243107 793442991 719943627 97360779 887599039 641640383 909816984 35510824 739039050 516259115 584474211 868503616 645723681 204607400 428948596 635035048 752610011 459573331 353407583 379468632 275824921 174703247 547964723 51363628 610535260 491999521 611736230 438796550 555410737 221060689 511215041 975389946 934917257 757413891 939601040 203526527 48000912 143478027 354368359 477107493 664578910 524305614 886157875 600447112 809295795 32628496 177945866 884596614 488997096 133389879 858895856 965181701 111051837 767862330 992323623 774467665 517460085 549766178 517099794 700728107 338515555 867542840 363856022 225384181 78265356 363015343 482752052 198842744 553609282 499205341 446963146 903331746 202565751 15214431 176024314 816381518 569221892 102404853 971426745 234031165 799928229 363495731 510374362 28305004 394120466 194279058 447683728 812058026 434232864 44277905 790080275 424384910 981634990 51723919 429789275 131348230 139514826 744323318 567060146 25422676 869824683 930353571 18096759 561415587 654370665 766781457 625307191 742882154 113333680 162453353 450806250 591680031 722946052 722825955 328067116 833555389 499565632 704210920 652208919 859496341 427387335 721384791 203166236 309812372 958816560 39834316 715259844 438196065 555891125 525146293 138914341 665779880 696644809 462695853 842922955 886277972 303327134 165575875 201364781 592280516 323983818 19898214 371422133 840641112 503769027 721985276 90034862 567660631 969985581 533913374 941882883 336714100 715860329 725347992 179747321 460894398 189234984 486595156 513496884 174463053 182869843 281349383 828991703 825749084 508212616 311613827 160291607 178786545 925189400 698806555 460654204 453928772 868023228 974429170 600807403 675027349 937919682 342478756 332630802 265016191 451046444 893844083 82209 28905489 90635347 47640621 430149566 179627224 601768179 748646810 17976662 754171272 255288334 851449842 554930349 392198914 966262574 861177699 628429713 549165693 595403038 676468513 504609706 807974728 110811643 418860448 136632498 362054567 970946357 383191639 922888 579550234 592160419 365417283 850248872 815300645 124142410 207609825 433512282 440117617 636716406 364936895 991122653 876910406 303807522 608133320 591199643 852170424 498124468 812778608 897086702 221420980 228866994 485153992 841001403 965301798 253606976 337915070 689919377 711296643 895285247 864060027 950890158 639478637 387875422 752249720 807134049 826829957 58449351 482151567 500046020 803891430 943083853 825148599 863219348 146120161 564778303 49562173 80186908 376105916 545923074 97600973 819383943 22420251 231268934 991242750 670463663 230788546 610655357 610655357 928191825 767381942 515778727 769543688 945245599 137232983 652569210 501847475 223702823 720904403 305849171 325424982 865501191 675868028 326986243 183590425 512295914 916902707 597324590 418860448 58689545 909336596 207850019 731713133 524786002 460173816 950890158 190676148 71059536 859376244 437115192 28305004 529109494 141556475 421382485 509893974 268739198 23981512 864420318 119098336 763899129 734595461 114414553 870064877 50643046 254928043 52684695 943804435 911978730 281829771 626147870 217577876 687517437 586756054 864060027 805092400 586035472 867422743 641400189 728350417 411414434 871506041 473384486 99282331 909336596 17496274 888800009 337674876 890000979 767141748 67816917 969385096 650047173 484673604 535234441 847006253 560454811 62532649 404088517 675507737 772426016 627468937 946206375 559614132 374304461 603809828 108049412 750448265 627468937 165575875 78625647 84510400 700728107 943083853 608733805 953412195 652569210 954853359 648966300 880753510 247842320 203406430 775548538 188154111 701448689 718502463 475666329 597084396 511455235 599966724 482511858 35390727 364456507 896005829 254447655 650047173 449725377 931074153 552168118 879672637 551447536 23981512 280748898 918463968 282310159 395801824 289275785 885077002 98201458 185872268 452007220 146000064 840040627 257570177 127505126 392919496 236913493 880273122 758614861 5126283 439036744 272222011 301645776 43677420 281349383 259131438 169539076 883515741 618942050 513857175 289035591 906694462 427507432 708294218 972387521 925309497 381270087 485153992 877510891 338395458 745404191 283391032 61571873 632993399 943804435 698446264 411774725 514577757 379228438 5126283 444561206 948608315 140475602 91476026 609334290 204006915 993284399 56888090 540158418 479749627 872586914 667941626 196680998 957255299 549405887 38273055 243398731 185151686 271981817 945365696 679831229 933476093 119458627 823106950 13773267 137593274 906334171 519862025 354488456 922427169 282550353 808575213 718022075 567780728 990281974 512776302 206288758 333231287 571143444 229227285 670703857 370581454 95559324 884836808 346802248 201725072 370581454 350885546 30947138 338275361 622064572 707573636 599846627 879312346 136272207 772546113 172661598 732193521 84990788 503288639 829592188 537996672 836317620 709134897 134590849 440477908 265016191 787918529 73221282 664218619 826950054 416218314 560695005 27224131 987880034 937799585 90395153 224303308 987279549 444921497 284592002 19537923 241357082 211573026 573305190 903451843 774227471 180107612 168818494 846645962 951370546 143117736 242558052 488876999 652929501 728230320 700247719 890241173 923748236 211573026 508693004 707093248 203526527 352927195 126664447 45238681 617741080 36831891 589758479 853851782 972507618 862979154 981394796 130267357 534874150 619422438 473864874 556371513 410813949 399524831 302006067 213734772 386434258 209171086 552528409 415978120 856253722 477227590 847366544 827910830 31787817 617140595 843763634 713698583 195359931 795965028 837038202 144438803 783835231 958696463 20138408 791761633 44878390 900209224 338155264 240156112 48481300 787678335 513737078 411294337 45118584 458132167 668301917 265976967 276545503 548685305 525746778 49321979 229707673 357971269 981394796 218538652 142517251 112733195 652929501 56167508 516979697 509533683 336714100 191997215 840400918 798366968 404809099 766060875 893483792 335152839 831033352 365777574 285552778 669142596 820464816 455009645 804852206 852290521 447443534 360493306 446722952 90755444 892282822 38753443 571864026 614018073 371181939 888199524 464497308 99642622 857214498 992924108 981514893 798126774 386674452 59169933 252285909 136392304 939000555 3685119 305008492 428828499 637797279 873667787 396282212 478308463 759335443 524665905 118858142 742882154 565979273 373463782 641280092 122340955 915221349 791641536 849288096 769663785 548084820 548084820 792962603 351726225 907895432 814219772 861778184 229587576 79826617 233310583 28064810 763538838 803050751 810857056 836677911 801249296 434112767 606812253 574145869 275704824 891442143 566459661 461855174 522504159 229707673 232469904 546283365 386914646 843283246 820584913 519021346 2604246 520942898 839440142 622304766 311013342 987519743 103245532 502688154 51243531 920145326 740720408 823106950 677789580 380669602 204127012 80547199 902731261 142156960 150683847 870545265 554810252 784435716 564778303 12572297 593481486 341517980 653770180 32028011 109610673 584594308 59290030 246881544 282430256 132669297 513496884 6687544 785636686 863579639 81988363 898527866 143718221 577268391 463416435 566940049 6087059 901410194 958336172 841721985 694483063 920745811 762217771 367458932 44157808 596724105 909336596 392679302 967463544 665419589 450085668 684635109 691360541 865260997 304167813 8248805 524545808 718982851 460654204 143718221 154526951 948127927 320741199 827310345 13412976 6207156 667221044 346441957 865260997 988000131 698206070 611616133 154406854 87032437 615339140 919424744 771465240 395801824 626147870 520462510 112613098 495242140 578469361 977791886 978992856 171340531 499565632 847006253 486595156 602849052 458012070 838479366 886998554 406490457 450926347 953051904 671064148 971666939 991122653 555410737 648365815 233070389 777950478 688117922 127264932 277506279 384752900 282910644 950289673 76223707 284592002 898047478 533432986 842562664 521183092 843163149 749967877 878711861 983196251 178065963 88713795 96159809 990642265 767742233 321942169 916782610 659895127 911978730 692441414 245080089 502327863 579550234 336353809 890601464 985237900 436995095 218418555 66736044 521543383 602488761 228746897 116696396 582312465 180227709 991122653 97240682 323383333 928672213 590839352 382471057 395561630 867422743 168338106 952451419 586275666 207369631 520222316 690880153 929512892 975510043 63613522 161852868 300444806 816261421 833555389 401566480 831273546 338755749 820344719 789359693 121980664 127505126 146000064 546523559 751288944 663738231 529349688 409853173 905373395 293479180 599005948 903812134 888319621 537876575 902370970 604170119 103125435 756573212 66736044 456210615 610895551 520942898 356770299 110451352 263695124 448644504 579670331 107569024 579670331 26503549 419100642 985838385 159931316 920865908 173622374 572704705 731713133 149723071 102524950 680551811 747205646 730031775 523224741 63253231 346441957 401206189 97480876 755852630 783595037 167257233 346081666 560214617 833195098 175904217 733154297 997127503 675627834 842922955 259972117 616780304 344640502 174222859 951971031 725107798 955573941 725107798 144318706 643802129 157409279 982115378 758374667 369980969 392679302 587716830 463536532 501967572 270540653 715139747 856974304 893844083 612216618 155487727 185872268 480590306 760056025 614258267 754891854 380909796 923628139 187793820 996647115 783595037 239915918 534513859 617140595 667701432 157769570 609934775 617140595 935757936 374304461 710455964 679110647 946206375 837518590 33228981 665299492 950890158 690760056 501727378 662417164 392439108 367338835 519862025 319059841 495122043 677429289 945485793 979953632 315817222 631792429 592760904 415497732 61331679 223342532 702169271 507972422 988480519 825268696 266937743 307170238 631071847 566459661 830552964 307050141 601888276 89674571 24101609 320861296 105887666 207970116 224183211 129546775 148642198 505330288 948968606 908255723 300444806 309211887 58929739 426426559 637557085 589758479 751529138 445642079 7408126 21339378 595162844 841121500 528268815 150443653 146480452 876790309 113213583 865861482 395081242 56167508 283871420 551687730 48121009 678269968 65535074 796565513 488516708 127264932 40674995 514938048 915461543 525866875 807974728 619782729 369740775 821065301 154767145 374664752 817462391 453688578 706612860 17736468 313775573 55086635 473864874 546883850 261653475 991723138 264295609 258170662 568020922 848327320 192717797 161252383 808935504 707333442 170860143 565018497 80547199 782634261 317738774 423304037 862738960 531031046 766060875 496443110 690279668 751048750 544241716 841241597 571263541 55807217 271981817 220700398 887238748 997247600 470622255 555050446 813018802 260572602 521543383 886157875 650887852 128585999 854452267 932635414 999289249 168818494 466899248 523344838 697725682 212293608 515058145 335993518 818783458 398443958 266817646 171100337 825749084 145039288 638878152 227425830 41275480 223582726 726308768 640079122 142997639 209411280 793803282 799688035 167857718 995085854 338755749 400365510 329147989 488276514 579189943 667100947 985357997 557932774 564057721 860337020 805092400 400005219 875108951 688238019 999289249 748887004 733034200 654370665 144198609 632272817 656652508 524906099 908856208 298162963 959897433 694483063 575106645 907174850 415377635 812418317 985838385 877510891 418259963 687877728 183470328 839680336 840521015 183830619 142036863 956054329 500766602 241837470 989201101 411414434 774227471 804011527 158730346 413936471 420541806 857334595 987399646 492960297 993524593 951370546 512175817 112733195 772065725 652449113 334071966 671184245 737237595 62652746 116936590 490918648 142757445 681272393 59890515 336714100 698566361 935998130 279427831 459213040 692081123 672865603 583513435 953292098 770744658 197761871 276065115 307170238 949328897 644042323 636236018 740720408 613297491 270420556 872106526 394120466 473024195 82829042 585194793 684755206 533432986 610655357 860216923 639959025 577988973 891081852 953532292 682593460 408171815 178186060 827790733 240156112 528028621 712377516 529469785 963380246 831513740 831153449 235112038 949088703 194759446 26983937 854332170 138433953 709254994 860337020 780112224 365417283 558052871 459213040 989801586 702409465 991002556 296361508 454529257 210492153 445762176 911258148 642000674 995926533 180948291 219019040 406610554 822746659 569462086 897086702 278106764 42236256 904172425 244479604 828030927 954853359 587957024 790920954 954012680 435193640 516619406 564898400 23260930 679591035 944645114 840881306 320140714 980313923 848087126 815060451 710696158 85711370 722825955 7528223 556731804 74542349 647645233 901530291 887839233 534393762 685475788 156088212 508572907 70218857 961218500 342478756 133990364 23260930 214455354 197521677 904052328 852170424 815540839 83429527 708654509 178426254 758254570 749007101 918223774 27704519 405889972 763658935 98441652 815180548 678269968 283871420 867783034 584594308 341037592 685115497 809896280 636356115 922667363 581832077 424505007 393760175 97480876 951010255 953412195 553369088 105647472 121980664 856253722 59530224 421262388 42956838 897326896 939360846 94718645 324344109 817222197 441318587 328187213 564778303 584474211 502327863 552648506 989801586 131348230 745764482 296001217 921946781 963019955 134110461 831273546 378147565 32868690 787197947 3685119 145759870 811817832 388355810 15214431 325905370 590719255 362775149 641760480 830432867 964220925 356049717 679230744 152605399 64934589 619662632 320020617 327826922 220700398 16655595 927231049 331309735 454769451 625066997 951370546 437595580 553489185 473624680 78505550 410693852 390517556 719583336 76463901 71900215 54366053 972988006 677549386 141316281 541479485 104446502 450686153 882314771 586035472 71299730 950649964 193198185 318939744 478428560 416578605 277986667 657493187 88713795 257570177 872707011 132068812 335032742 405889972 438916647 842202373 702889853 3204731 44398002 202306 645723681 598045172 444921497 261413281 945725987 415858023 332870996 941042204 57008187 445882273 502808251 536795702 916062028 880993704 446002370 229467479 487435835 292158113 287594427 567060146 957615590 964461119 659054448 420902097 678990550 225504278 821305495 78505550 601888276 186953141 476987396 264415706 156328406 659414739 323503430 388235713 295160538 894684762 736637110 822506465 601287791 524665905 337674876 520222316 496443110 920025229 278587152 342718950 12212006 192477603 908495917 880633413 782634261 137953565 536315314 640559510 655691732 526827651 934677063 373103491 143718221 768582912 98321555 173021889 527428136 171700822 361814373 556251416 655451538 598405463 226945442 612576909 217577876 950049479 901170000 281229286 813979578 97240682 126184059 259131438 52204307 941282398 900929806 738318468 329388183 620863602 683314042 136032013 761256995 28064810 414657053 949689188 131828618 367098641 666020074 519261540 231629225 539798127 41275480 473984971 663858328 675027349 342118465 367819223 323623527 151764720 843523440 36111309 344160114 654851053 367218738 54005762 179026739 131828618 265136288 229107188 423183940 157529376 332870996 419220739 462936047 560214617 861537990 906454268 748286519 492600006 332270511 632513011 745644385 614858752 991242750 790080275 123421828 307170238 359412433 580150719 43797517 227305733 452727802 623025348 822866756 954613165 468220315 174583150 831153449 904292522 952091128 520222316 435553931 880393219 796085125 241477179 895645538 351606128 703610435 734355267 952451419 791401342 587957024 431951021 766421166 477107493 271741623 406850748 916782610 434352961 43557323 760296219 335993518 478668754 976711013 917503192 468700703 529950173 557572483 704931502 811097250 424865298 594682456 640199219 207489728 282069965 976470819 608733805 642841353 138193759 304167813 910057178 383431833 503889124 258170662 990281974 25422676 344040017 821065301 175303732 35150533 966983156 695083548 570302765 722946052 801489490 190075663 540638806 939360846 236553202 392559205 884236323 944525017 806653661 610174969 29385877 217217585 718742657 505810676 170139561 664578910 719943627 905853783 925429594 421262388 184070813 338035167 471102643 690399765 91476026 872707011 226344957 589998673 135071237 368179514 225384181 571743929 336714100 702529562 974429170 724147022 565378788 914380670 819744234 195720222 541719679 973108103 934316772 45598972 921946781 616540110 832834807 34790242 984877609 988840810 800768908 401446383 406130166 533072695 739639535 393159690 334792548 173382180 290957143 651248143 82228557 105767569 957255299 727629835 241357082 638637958 602248567 874268272 525026196 425826074 946446569 691961026 803170848 325665176 214815645 394720951 416098217 892402919 709254994 57488575 703490338 669022499 271861720 978992856 681512587 284952293 224663599 999169152 458612555 833075001 612697006 241116888 659775030 774587762 385953870 271741623 347883121 637196794 964100828 80186908 610295066 87152534 560334714 900449418 252285909 172301307 604890701 512416011 70699245 719463239 841001403 504009221 870184974 94718645 953051904 850729260 790680760 852650812 989081004 617620983 131348230 925909982 464977696 127865417 231869419 254928043 49442076 270540653 735075849 320861296 92676996 513857175 419821224 273783272 82708945 982115378 483112343 882795159 345361084 547604432 774107374 649206494 400125316 425826074 263935318 794523864 566699855 381750475 96880391 438436259 209291183 347642927 360973694 161612674 926870758 689318892 811217347 808094825 809535989 61091485 618581759 640919801 534994247 11371327 166656748 608253417 599246142 188874693 144919191 428708402 791521439 516379212 880153025 11971812 417058993 68297305 82228557 830192673 339116040 562496460 564658206 342959144 271861720 827550539 994605466 222141562 194639349 768342718 439517132 388355810 569462086 592400613 244959992 890601464 580390913 65054686 732433715 11731618 255048140 204967691 192957991 780112224 11971812 387274937 472784001 182269358 152365205 270420556 814940354 856133625 384872997 917863483 346441957 782394067 822986853 140115311 163534226 420181515 46319554 242558052 533432986 346682151 602368664 746725258 908255723 211332832 455129742 30466750 784435716 887599039 813258996 398323861 860457117 594922650 324944594 593721680 822026077 559253841 863579639 590479061 149242683 33709369 544241716 734235170 789960178 469661479 881113801 288555203 250964842 577268391 769663785 919424744 922547266 841721985 530670755 960738112 253727073 598885851 112613098 111532225 377306886 381990669 651248143 798366968 425105492 290236561 568741504 201364781 928672213 180347806 920505617 188754596 133990364 947287248 886037778 486234865 561655781 904652813 832474516 816381518 541119194 680191520 947167151 344160114 172901792 625907676 17256080 717781881 630111071 889520591 939360846 742521863 527428136 752129623 566459661 104326405 627949325 914140476 142997639 856854207 617500886 781073000 288675300 290596852 264896094 838839657 884356420 40194607 392078817 876790309 325665176 546163268 204847594 445521982 639478637 474225165 801129199 450325862 976230625 348483606 493080394 459213040 916062028 181788970 29145683 654851053 344280211 216857294 523945323 677189095 825869181 219499428 400845898 675387640 985838385 735556237 290476755 890841658 240876694 556611707 147801519 148281907 481911373 703490338 627949325 785156298 282550353 86792243 755612436 309091790 528028621 36831891 295881120 920265423 267057840 761617286 594322165 152845593 30586847 44638196 367939320 850248872 851930230 879672637 844604313 680071423 103245532 484793701 520582607 917142901 990642265 561895975 315817222 332750899 372623103 28545198 768582912 848807708 124622798 788398917 986438870 735195946 239555627 154166660 36351503 517700279 762578062 987159452 261773572 400965995 116576299 801249296 1643470 43437226 507732228 535354538 827550539 843043052 629390489 524305614 14854140 413456083 72380603 852891006 206769146 205327982 44398002 443720527 521062995 864420318 16895789 298162963 176864993 518540958 118377754 583513435 157769570 135551625 149843168 183350231 951490643 512536108 180347806 383311736 361694276 657012799 751288944 819864331 753931078 902370970 593601583 139034438 229107188 836197523 886638263 880032928 261413281 388836198 898047478 591920225 685475788 413095792 817702585 727629835 651368240 115255232 123662022 266577452 370341260 955213650 672625409 665179395 932635414 322902945 657493187 694122772 888319621 730031775 24942288 915701737 518060570 910777760 836437717 594442262 626868452 298403157 831153449 64934589 119818918 297442381 474105068 107569024 482992246 307890820 284712099 751649235 352086516 747205646 912699312 992924108 761617286 156088212 788278820 827670636 460654204 583033047 820104525 120419403 532832501 521543383 856493916 289636076 110331255 122581149 158970540 681512587 173502277 846285671 855653237 599366239 996286824 897567090 806053176 767261845 551567633 611736230 867422743 163414129 670343566 2844440 42596547 656772605 233670874 521903674 735796431 403367935 947047054 845444992 790200372 702169271 113093486 916662513 593121195 827910830 838719560 843043052 234151262 343199338 571143444 973348297 61691970 843883731 171700822 477227590 624466512 560695005 702529562 275945018 994845660 364696701 673105797 457051294 187313432 800168423 302726649 816861906 752009526 666740656 436874998 892763210 545082395 625667482 880873607 982475669 66375753 286393457 911858633 888199524 22540348 516619406 723546537 198362356 599005948 189835469 505810676 383551930 314015767 779151448 803411042 63013037 170259658 322542654 861658087 541839776 929272698 143357930 901410194 285432681 772786307 668061723 442500 349684576 794643961 8368902 721985276 565979273 995085854 569101795 257570177 450806250 608853902 932995705 914861058 640439413 584954599 967823835 913299797 775668635 914981155 727389641 14854140 808815407 457891973 399885122 374304461 872827108 241597276 609094096 952811710 9089484 640679607 982835960 198602550 576187518 56287605 233911068 173382180 979233050 458612555 218058264 653650083 15334528 548565208 279187637 224543502 808695310 48721494 256249110 219619525 953772486 659534836 605250992 871746235 730271969 295160538 878591764 503168542 211933317 465458084 105767569 744563512 871145750 479029045 49682270 849167999 862138475 874988854 73581573 383191639 905733686 912098827 936478518 345481181 470021770 467739927 537996672 334312160 799928229 47880815 684154721 424384910 653169695 499565632 107088636 343079241 58089060 936598615 374184364 832474516 708414315 479269239 519982122 974429170 217097488 874508466 826829957 406610554 721745082 322542654 686076273 666380365 246761447 902851358 838119075 286393457 209771571 973348297 385233288 271141138 570663056 638998249 397963570 952811710 32148108 379828923 807974728 449965571 15574722 657132896 360613403 437115192 409252688 416698702 199203035 657973575 169899367 173862568 219139137 909576790 648846203 826829957 7648320 387755325 584234017 864780609 861658087 105167084 942123077 203526527 198722647 29265780 473864874 99162234 887839233 655211344 681392490 777470090 652329016 700367816 814700160 62772843 477467784 502688154 944765211 154046563 301765873 730992551 159691122 304408007 183950716 574866451 29145683 510254265 855533140 873067302 530550658 562597 476266814 234991941 493800976 394600854 432911797 400365510 692561511 714779456 573785578 120179209 382110766 534393762 542079970 604530410 577628682 336113615 675147446 912339021 274864145 682713557 546163268 268018616 908616014 567300340 943324047 514217466 673706282 341998368 398924346 664699007 872586914 958456269 450566056 721264694 20618796 103725920 677068998 370941745 631672332 559373938 262013766 202306 671304342 335393033 410573755 149963265 384993094 770264270 433872573 443840624 320260811 653409889 986078579 657733381 495962722 842322470 17135983 654730956 2364052 205448079 447803825 782153873 698926652 853131200 572944899 868623713 913419894 628790004 349684576 751168847 19898214 81267781 329628377 890000979 973468394 594562359 609334290 852530715 685235594 846165574 946926957 718262269 450325862 715980426 7288029 917142901 463536532 369380484 124742895 697005100 28184907 991362847 851449842 733514588 729070999 506291064 248803096 965301798 121860567 281949868 499805826 852650812 745284094 865381094 274984242 462936047 17976662 584234017 690159571 14253655 27944713 626027773 363375634 64334104 492720103 844604313 821305495 288795397 791041051 92436802 124262507 387274937 350885546 878231473 471943322 762097674 581111495 794043476 426186365 381270087 8368902 5606671 794403767 317858871 668181820 957255299 282430256 623986124 133509976 641760480 540518709 725347992 898407769 781913679 894684762 772666210 461374786 290957143 454048869 344040017 785036201 603089246 350285061 846525865 245080089 236793396 24942288 305969268 464737502 295640926 721745082 743362542 715019650 236553202 172541501 138313856 840521015 750448265 451046444 565018497 517219891 202306 256249110 379949020 168818494 325905370 656772605 713458389 79346229 866221773 854572364 5726768 376466207 222501853 440598005 890121076 937439294 441919072 4765992 669262693 467980121 498604856 109010188 183710522 453208190 540879000 377186789 397843473 596724105 212053414 193678573 626147870 232590001 541239291 487916223 480109918 355088941 980794311 639238443 534754053 667100947 581832077 88713795 557332289 173021889 799928229 45238681 932034929 395321436 348723800 27104034 16415401 271501429 864660512 269459780 293238986 253366782 205448079 600447112 84030012 576908100 185752171 666620559 352446807 959296948 919544841 735436140 747325743 220580301 215416130 862618863 934797160 109850867 76223707 699286943 864900706 993044205 876790309 521423286 655091247 978632565 470622255 844484216 560214617 256129013 570302765 221901368 156328406 928311922 58569448 313295185 753330593 765580487 842682761 697845779 130267357 439997520 747565937 787438141 570422862 663137746 449365086 51603822 521062995 957375396 510854750 226344957 445041594 438676453 854332170 761256995 866101676 994725563 352807098 697845779 116456202 271981817 663498037 309812372 504849900 262013766 137473177 452847899 202565751 970946357 951610740 760296219 790800857 667100947 585555084 728110223 648365815 431590730 476266814 157769570 696044324 363375634 832834807 323143139 79826617 941522592 996166727 879792734 815660936 450926347 551687730 685355691 999169152 456931197 369140290 467739927 419941321 460293913 142156960 88833892 163894517 954613165 718262269 403247838 196680998 673466088 483832925 791281245 866822258 77664871 595162844 253967267 528148718 765580487 267778422 198722647 952091128 989201101 237273784 40795092 114534650 953292098 494041170 880513316 802089975 684274818 477948172 263935318 305849171 780232321 329268086 19537923 50282755 826829957 9810066 632873302 856614013 801729684 237393881 661576485 365177089 750808556 398924346 199203035 396882697 156928891 566940049 64093910 328307310 782754358 345841472 733274394 106728345 159691122 166296457 570062571 421622679 786477365 989441295 677309192 935637839 656652508 540638806 284952293 768222621 934436869 995326048 771465240 271501429 913539991 627108646 276785697 23020736 968904708 367819223 288555203 997127503 445161691 108649897 86792243 274023466 255048140 743963027 873067302 328427407 292878695 236553202 543160843 75983513 750928653 290476755 78265356 631792429 211573026 309211887 684755206 754291369 55687120 386914646 603929925 100363204 135551625 236793396 658333866 185271783 622905251 428828499 252526103 944284823 918944356 340797398 963860634 342718950 959056754 759935928 770864755 341157689 650527561 422463358 64574298 402647353 912819409 938159876 812058026 695443839 779511739 641880577 235112038 717061299 513376787 551567633 746124773 387034743 317498580 870665362 848447417 583633532 462815950 375385334 350765449 256369207 670823954 362534955 301045291 920265423 657132896 822266271 995446145 957375396 867903131 561055296 16295304 539437836 531511434 325905370 688838504 745524288 699527137 779271545 706492763 363255537 514337563 290356658 633593884 866341870 251205036 948608315 267538228 14493849 696044324 80787393 478788851 750208071 297922769 866582064 705411890 525266390 939120652 740840505 987039355 868383519 996166727 475666329 968304223 120539500 258050565 382350960 416818799 775668635 576547809 355689426 321701975 53885665 547124044 614978849 293599277 578949749 264896094 651488337 717421590 456931197 992203526 492720103 551447536 345120890 755132048 360012918 780712709 157289182 624706706 916062028 868023228 724627410 407811524 642601159 285072390 785876880 193438379 339836622 760416316 87512825 48241106 660855903 796325319 605250992 528989397 862378669 371302036 923267848 441318587 665059298 862979154 453088093 867903131 646924651 659775030 434352961 363375634 429428984 343559629 674426864 245440380 611856327 310893245 580631107 37432376 957975881 469661479 972027230 107088636 189715372 168698397 463176241 959897433 599606433 852770909 129306581 76824192 748406616 670103372 265496579 289155688 488036320 968784611 881834383 664458813 376946595 753450690 576427712 404689002 186953141 767021651 828631412 761857480 916662513 767862330 28064810 258410856 232830195 225864569 511094944 607652932 612336715 736396916 4886089 8729193 896726411 971306648 564177818 801489490 383191639 501006796 905373395 781673485 522023771 224903793 174583150 247361932 549045596 418259963 30827041 530910949 475426135 514697854 191396730 592040322 956174426 778190672 272462205 363135440 532712404 831393643 335513130 665779880 390277362 319059841 48601397 277386182 872346720 516379212 819023652 108289606 566339564 298643351 613057297 461134592 807734534 534273665 946926957 349324285 639598734 126664447 376466207 431710827 296241411 394120466 837398493 807974728 297562478 984997706 814459966 377907371 474105068 490198066 470982546 98081361 406130166 668301917 606451962 545802977 341157689 353527680 977671789 326385758 269099489 694122772 394000369 956054329 813258996 345961569 497884274 388475907 902010679 29265780 997727988 786117074 895765635 518180667 640319316 512776302 401926771 999769637 169058688 539798127 621103796 636476212 505930773 988240325 498604856 315817222 888199524 507732228 832234322 896125926 414416859 432071118 592400613 766901554 884476517 240756597 841361694 259852020 304768298 891322046 170259658 892162725 859136050 882915256 810857056 140355505 822146174 8128708 134710946 272582302 811217347 536915799 909696887 877270697 598885851 601287791 284712099 179026739 49922464 418259963 458732652 329508280 766060875 219979816 459693428 126424253 241477179 81868266 363375634 788158723 716580911 251685424 701088398 136152110 770384367 152245108 867422743 429789275 26983937 535594732 536915799 722345567 832474516 320741199 841001403 305729074 393039593 762457965 525866875 961098403 718262269 547604432 678510162 264295609 749127198 808455116 210732347 745764482 498364662 129546775 852891006 806533564 996286824 698326167 848567514 741801281 16655595 986438870 907655238 814700160 274263660 382711251 985838385 321942169 413095792 469060994 933596190 52804792 78145259 357971269 743963027 490918648 636476212 541119194 212894093 691480638 944885308 344040017 24461900 228626800 927591340 249763872 771945628 192837894 396282212 309091790 336714100 337314585 144438803 675988125 484673604 600807403 164134711 645123196 130987939 387875422 472904098 382591154 901410194 971666939 47640621 622544960 377426983 329748474 637076697 862979154 704691308 620503311 884596614 246761447 329388183 27584422 775188247 226705248 459933622 495722528 404929196 470021770 43917614 597444687 971907133 789119499 803050751 986558967 315817222 74422252 673345991 808695310 68297305 577988973 692801705 631312041 944885308 246040865 267778422 22420251 495962722 418980545 547244141 868143325 208690698 635395339 542200067 932155026 349084091 548805402 103485726 488997096 507972422 946686763 68057111 984277124 266337258 789719984 301405582 83669721 521663480 955333747 57248381 760776607 316297610 432071118 318579453 480109918 313655476 619062147 82949139 711656934 152365205 877630988 974429170 755132048 751529138 401086092 878591764 432551506 695684033 719823530 28905489 849768484 331189638 559253841 486354962 161372480 684515012 14493849 492239715 869704586 905853783 701808980 124142410 880633413 629270392 489117193 137833468 492359812 435553931 59890515 341998368 972027230 608613708 277025891 443480333 232469904 934677063 827310345 933836384 853251297 397002794 713578486 637557085 23621221 760656510 533793277 702889853 382110766 488516708 275104339 863219348 824788308 825508890 438316162 900329321 490077969 191997215 693882578 107809218 671064148 307410432 435073543 189715372 247482029 750688459 441798975 750688459 295640926 603929925 294680150 124502701 808575213 337194488 229467479 913299797 657373090 415858023 626988549 918704162 850969454 578829652 705652084 595282941 842442567 848807708 214455354 907775335 812898705 78145259 564418012 926990855 576788003 560935199 483352537 488636805 916302222 807374243 354848747 317498580 738558662 303927619 51363628 967103253 681872878 716220620 916662513 677669483 283030741 843163149 119338530 206168661 56527799 41515674 314496155 975149752 2123858 501967572 711777031 356410008 2964537 610775454 612576909 552168118 387635228 226465054 376586304 740720408 256489304 725347992 571263541 801729684 569702280 1163082 46319554 86792243 870425168 650287367 48241106 286033166 438676453 259371632 693762481 56767993 618341565 214455354 54846441 668782305 522384062 483592731 258651050 871265847 10170357 812658511 606812253 234391456 640439413 925549691 818062876 943324047 518781152 988000131 875469242 310532954 116216008 865621288 834035777 665899977 409612979 226705248 305128589 334071966 655451538 329388183 817342294 470742352 122461052 190676148 792962603 331309735 54846441 287834621 135671722 516139018 795004252 603089246 948608315 247001641 379708826 585074696 642240868 330589153 984877609 207970116 124742895 588317315 359292336 855292946 196320707 384512706 144078512 883635838 224183211 797646386 210972541 655571635 30106459 225023890 314015767 201604975 203526527 925789885 302366358 33349078 219139137 359052142 643441838 995926533 635635533 80667296 543881425 707213345 511215041 651608434 717901978 357731075 335753324 594562359 453568481 825508890 449725377 185632074 362775149 72860991 652569210 194279058 994245175 47520524 547724529 606211768 860216923 382711251 280748898 113693971 379108341 674667058 506891549 941042204 981274699 396162115 960137627 500166117 898527866 721504888 327947019 867903131 768222621 684755206 669983275 556731804 199323132 496923498 258170662 323143139 42236256 975870334 52564598 705531987 642721256 724627410 131108036 995446145 379468632 100002913 982115378 477587881 552888700 545562783 112252807 587596733 331309735 586515860 59530224 273182787 644042323 314736349 431110342 191997215 120539500 518420861 709615285 662176970 738438565 268499004 671184245 575827227 530910949 164254808 705291793 160651898 24221706 345481181 438796550 487676029 716220620 714899553 369980969 991002556 277746473 731593036 811817832 48000912 621343990 871866332 340677301 966022380 744683609 906093977 387034743 874268272 457291488 14613946 983196251 593721680 217457779 735436140 457771876 800168423 295881120 109970964 194999640 615579334 983196251 485994671 729431290 871385944 868023228 248082514 312094215 742762057 417419284 499685729 350765449 82108460 119218433 937799585 471342837 64934589 24101609 745524288 963140052 130147260 474705553 796805707 256008916 847246447 993284399 469781576 10770842 90395153 936358421 594802553 656292217 622665057 696885003 504009221 292038016 359772724 615699431 951130352 433392185 520222316 347282636 85711370 927711437 991242750 993284399 110091061 956174426 571023347 983796736 651248143 477227590 161852868 113693971 363615828 600807403 591079546 751769332 576187518 466659054 302606552 235232135 149002489 847726835 427627529 316537804 637436988 634794854 587836927 630711556 145399579 902731261 783354843 76463901 790680760 25062385 912098827 653890277 706492763 151284332 53885665 230067964 710215770 219979816 134831043 899128351 432911797 844724410 157048988 293599277 316777998 321701975 347282636 925549691 83429527 159811219 296001217 899248448 103125435 363735925 869104101 156808794 205327982 658934351 725708283 275704824 406490457 954012680 666020074 653650083 889040203 460534107 841601888 513737078 492960297 633834078 261653475 382350960 683674333 793923379 507612131 21819766 91235832 286873845 71539924 594322165 403488032 769423591 149242683 751529138 269339683 777950478 652208919 27104034 519261540 897206799 929873183 929993280 837878881 230428255 553248991 724627410 978272274 462095368 714539262 981034505 62772843 509173392 212293608 533072695 314736349 237994366 358811948 696404615 475546232 347522830 800648811 483352537 318699550 171580725 666380365 824548114 870905556 283991517 363615828 155007339 240276209 524065420 925069303 750928653 894444568 250844745 825628987 975269849 243999216 706732957 95799518 118377754 985478094 16175207 583753629 574986548 203406430 180347806 215055839 872346720 93157384 421262388 754771757 637436988 432671603 950169576 445882273 310653051 611496036 958216075 949689188 906214074 654490762 364336410 672024924 156688697 118137560 985718288 319660326 384512706 379708826 390397459 789239596 573305190 666500462 927951631 703730532 118497851 587596733 994965757 355569329 701328592 786717559 623505736 230908643 311854021 69618372 677429289 972507618 981995281 185031589 859976729 409973270 321581878 873187399 444321012 213614675 627709131 790440566 440477908 772185822 836317620 455009645 954252874 207489728 802810557 204247109 591559934 862498766 409132591 637196794 821305495 363856022 464737502 679591035 210131862 449365086 528989397 277266085 140835893 954853359 148161810 602488761 471222740 360253112 411294337 552768603 910657663 551567633 135431528 820705010 146240258 190556051 403488032 197041289 758494764 830793158 222742047 413576180 678750356 463896823 533312889 80427102 396162115 676468513 372743200 628790004 458732652 788398917 854332170 805092400 399284637 436995095 47280330 210492153 800768908 502688154 278947443 700728107 710576061 938880458 997367697 73941864 116576299 333351384 177105187 739399341 202926042 802089975 29385877 617861177 674667058 200043714 326385758 42596547 709735382 484193216 469301188 102885241 890481367 252766297 133509976 32868690 276305309 891682337 346441957 701088398 490678454 571263541 414897247 157649473 555290640 684995400 505090094 603569634 452727802 672865603 766060875 770624561 143237833 698326167 918223774 203166236 941882883 186592850 790320469 309932469 368900096 789119499 376466207 66495850 64574298 951250449 867302646 118137560 472183516 204487303 857814983 999289249 220940592 631312041 961698888 462455659 192717797 223943017 22900639 746124773 541239291 536195217 682833654 203046139 52564598 873427593 657252993 396402309 489357387 919064453 845204798 607172544 516379212 419340836 265256385 765220196 522984547 45118584 77064386 561535684 568981698 10530648 576788003 173021889 341758174 899488642 367338835 937919682 963380246 839440142 929032504 57368478 451046444 524665905 384032318 845084701 616059722 918704162 706372666 345481181 494641655 670703857 786837656 577028197 466178666 896846508 804852206 152365205 853611588 564418012 908375820 152725496 370581454 344160114 749727683 756693309 266337258 307530529 948848509 267057840 262734348 732914103 873667787 500886699 709855479 271621526 583633532 911378245 743963027 858655662 886758360 640559510 375985819 543761328 642961450 78265356 787558238 460534107 288435106 894324471 312334409 344280211 935397645 471342837 661696582 658574060 656292217 643561935 802210072 418380060 98321555 660495612 960738112 558773453 765580487 690760056 366498156 337915070 216136712 350405158 592160419 620623408 21819766 588557509 615819528 486955447 132789394 287594427 766661360 84750594 22780542 652569210 339236137 11611521 478428560 124142410 24581997 350164964 452247414 854572364 351365934 32868690 761256995 728590611 629150295 559373938 314496155 502207766 63493425 682694 763779032 30226556 924228624 274744048 410573755 244119313 183950716 452487608 885437293 800768908 665419589 196440804 518060570 707333442 893243598 551207342 662537261 620623408 21219281 823947629 793563088 61691970 351606128 601407888 43076935 942723562 28545198 17736468 72380603 171220434 757173697 257209886 277626376 176024314 511935623 951250449 765700584 95439227 388355810 452727802 350885546 625187094 882795159 329748474 767742233 734355267 331429832 781433291 648606009 574986548 641520286 438316162 747445840 356650202 986198676 728230320 962059179 342718950 574506160 218898943 642481062 356289911 886398069 704691308 142997639 591680031 749247295 51603822 100123010 885797584 398684152 73341379 88353504 734955752 137713371 76944289 149242683 320140714 483232440 84390303 610895551 354008068 466538957 144799094 875829533 597324590 632753205 613057297 815180548 9329678 905013104 65294880 221060689 730512163 35991212 268739198 110691546 830312770 21939863 752129623 935157451 902491067 836798008 887118651 788999402 508933198 525626681 629270392 110931740 142156960 909696887 942243174 378147565 950289673 254567752 699046749 103725920 645243293 144438803 20738893 439997520 718622560 971306648 847366544 752489914 157769570 967943932 515898824 430990245 792242021 58449351 67216432 263334833 131588424 875949630 843523440 577388488 459693428 837758784 625667482 819624137 73341379 913419894 37792667 892042628 899248448 121019888 643321741 13052685 782153873 942603465 649086397 253847170 956774911 516619406 424264813 697485488 512536108 976230625 280268510 736637110 976350722 760536413 343919920 19417826 36831891 298883545 225984666 29145683 677669483 143598124 975149752 67456626 311373633 898647963 625187094 116816493 454289063 739639535 241477179 223943017 670583760 571743929 528629106 875829533 970706163 759695734 296121314 248682999 272822496 41155383 291797822 188274208 497403886 504249415 885797584 370941745 392559205 291437531 43797517 222141562 165455778 769423591 178906642 848327320 925189400 299604127 749007101 206649049 148281907 983316348 892763210 370701551 63493425 513136593 311854021 874628563 314015767 8128708 253006491 89194183 689078698 49201882 431230439 741200796 484193216 860216923 567540534 547364238 19297729 461374786 799207647 758855055 27344228 56527799 375145140 19778117 236553202 748046325 18817341 244239410 842202373 496323013 12091909 807974728 498364662 259972117 399164540 667941626 82228557 911138051 242077664 185511977 810496765 656532411 552528409 168218009 513256690 510734653 403728226 608253417 502568057 142517251 303927619 709495188 184671298 443720527 636236018 994845660 329868571 408532106 218178361 59410127 208690698 115855717 948368121 833435292 530070270 131948715 143357930 34429951 266457355 856614013 197641774 128946290 161612674 240876694 958456269 326505855 747565937 124983089 2964537 548685305 852770909 604170119 979593341 858175274 838719560 620383214 60971388 446002370 329988668 133269782 537276090 80667296 109850867 335633227 113453777 352326710 311373633 470862449 799087550 925909982 922787460 234871844 72380603 319300035 303327134 390037168 776269120 141796669 348483606 208570601 611015648 780712709 679591035 849167999 249763872 304528104 566819952 570903250 966983156 619662632 748526713 110811643 657973575 613057297 738558662 251205036 441438684 562136169 901530291 775668635 850729260 435674028 586996248 290716949 94598548 646324166 435553931 843163149 839680336 611856327 816021227 550246566 303207037 868984004 134470752 536555508 346562054 326385758 165215584 320380908 582192368 631792429 57608672 922186975 819624137 866341870 637196794 953892583 690880153 665899977 834996553 236072814 339596428 524665905 419100642 824067726 320861296 609694581 987880034 711897128 24341803 652569210 178426254 736997401 56047411 170619949 101804368 304648201 163053838 583873726 423664328 461614980 641520286 321101490 714419165 687277243 654971150 165816069 858415468 288555203 212293608 75983513 957975881 286513554 268018616 187433529 935878033 141436378 331790123 119939015 676468513 323623527 957855784 937199100 769063300 407931621 447083243 681512587 815901130 326986243 985958482 872586914 966742962 189835469 784916104 837638687 995566242 63973813 581952174 853611588 280028316 919424744 551927924 133630073 633834078 970465969 203046139 423664328 555891125 246281059 794523864 105887666 666500462 832114225 719823530 895525441 421262388 843283246 659534836 532952598 357370784 700247719 19658020 788398917 40074510 134350655 369740775 578109070 788999402 625187094 128826193 375745625 478548657 725708283 612576909 262013766 748286519 830552964 906934656 108289606 146360355 192717797 791401342 736517013 984517318 36231406 790680760 146600549 606692156 776629411 351005643 32268205 901770485 654130471 752489914 286873845 538957448 388596004 548325014 988480519 674186670 790440566 191036439 123421828 978272274 810496765 115015038 406730651 517820376 454289063 79946714 443840624 311253536 681392490 661816679 518781152 349324285 196680998 444200915 512536108 820344719 245920768 414176665 775788732 305368783 462936047 881954480 470862449 93397578 611736230 663137746 3805216 636115921 284111614 299844321 262133863 903571940 396762600 317738774 666500462 981755087 733394491 647044748 767622136 927951631 759935928 646924651 891562240 302726649 503168542 645243293 449845474 40434801 861417893 509293489 367458932 548204917 73821767 502087669 990402071 489597581 605611283 672745506 957735687 585915375 432671603 682233169 594202068 935637839 494761752 133870267 30346653 558293065 281469480 194399155 547604432 788038626 513136593 140475602 209771571 190195760 330348959 811937929 286873845 804852206 20138408 938279973 520222316 118978239 896125926 24581997 782153873 381870572 593961874 196801095 572704705 409012494 806173273 644642808 968544417 292638501 987639840 865621288 21579572 380429408 592881001 743722833 599606433 450325862 434473058 181428679 132068812 976350722 535114344 571263541 76944289 148041713 543761328 847967029 370221163 328067116 11131133 81147684 766180972 34069660 311373633 102284756 662657358 740480214 951850934 389076392 26023161 328667601 899128351 701568786 13773267 884476517 197881968 653169695 537996672 986919258 150683847 657252993 536915799 814940354 40194607 647284942 793442991 457051294 851930230 830552964 20738893 882795159 609214193 947527442 614498461 110811643 288795397 299964418 5846865 412735501 576307615 427267238 169779270 598165269 68537499 156328406 533072695 968184126 297442381 327466631 56287605 643561935 18216856 109250382 893003404 89914765 750448265 608373514 545202492 647525136 678630259 471102643 485394186 356289911 274744048 179387030 436754901 11971812 380669602 347642927 364816798 672505312 84870691 127264932 304648201 968664514 989801586 792121924 110691546 427987820 899368545 118497851 414657053 893123501 71900215 751409041 755852630 237634075 377787274 950049479 580030622 74422252 404568905 796925804 901049903 601648082 523224741 706732957 636476212 246160962 200644199 68057111 25542773 658333866 910537566 353287486 413696277 428468208 770384367 871265847 603209343 856373819 748646810 489837775 532472210 921346296 214095063 839560239 382711251 125343380 417299187 995566242 383792124 888199524 572824802 813018802 709615285 201004490 816381518 981995281 778911254 542440261 608253417 509653780 106007763 832354419 803290945 799808132 516619406 397122891 144198609 347162539 638998249 990402071 687637534 377667177 889160300 391358235 759695734 37792667 520462510 626988549 654610859 430029469 733634685 350645352 2243955 37432376 922307072 528388912 458852749 805092400 498724953 700367816 130747745 887599039 402887547 581231592 833555389 320741199 837638687 999409346 644642808 318459356 470742352 617861177 235832620 952811710 175303732 152605399 944164726 409132591 741801281 870184974 758855055 39594122 48841591 402407159 672385215 419340836 22540348 192117312 458732652 298763448 40314704 925669788 310773148 516379212 860337020 390277362 520822801 80547199 749727683 344040017 720544112 101083786 205688273 23741318 14373752 293719374 512175817 335513130 39834316 133149685 254807946 442399460 970105678 456931197 20498699 915461543 299604127 41755868 514697854 483352537 822146174 752850205 445882273 395801824 583993823 484073119 616900401 740720408 719943627 450205765 767862330 376346110 181668873 700968301 567900825 537035896 761256995 165455778 88233407 732553812 587236442 753810981 42596547 650047173 439757326 38753443 467019345 248082514 834275971 684515012 852290521 336473906 91716220 864540415 264896094 421742776 858895856 446602855 415497732 326385758 403367935 334192063 271981817 33589272 577028197 403488032 388956295 898647963 727269544 569221892 910177275 138674147 468940897 728110223 882074577 301885970 628189519 421022194 97480876 954733262 773506889 621944475 417539381 27584422 172421404 488036320 283150838 372142715 194879543 813258996 797886580 2123858 434833349 88233407 43076935 167497427 950169576 75623222 8609096 578109070 680311617 532472210 981995281 7888514 765700584 99642622 185992365 638878152 40674995 363135440 748286519 377907371 308971693 124742895 874988854 632032623 371542230 967103253 394480757 559974423 208810795 794523864 504969997 147201034 668662208 17135983 613897976 889160300 576067421 118978239 9449775 321341684 364576604 54486150 368900096 265616676 283631226 603449537 973108103 747926228 296481605 116336105 981755087 620383214 253486879 491158842 410453658 748166422 536675605 229107188 625307191 409492882 117296881 149362780 66856141 147681422 828030927 234391456 95319130 516979697 142997639 876670212 420301612 159330831 488997096 148882392 691480638 467379636 355209038 457411585 900809709 820825107 96640197 288675300 304047716 698085973 3084634 147201034 445882273 499805826 135431528 522864450 294319859 188634499 56047411 820344719 252406006 355809523 171340531 833555389 691961026 933115802 265376482 150203459 449365086 660135321 523705129 737717983 357370784 124382604 909937081 19898214 117657172 508092519 439276938 106007763 486715253 624946900 184070813 805332594 434593155 42836741 262614251 231028740 857094401 79586423 351245837 118017463 534273665 976110528 965541992 354968844 988120228 768703009 101323980 787798432 809055601 97961264 918343871 766060875 560094520 568741504 781673485 45598972 991002556 601287791 426906947 120059112 106848442 55206732 603209343 40434801 81507975 45959263 810136474 67336529 500526408 703730532 672024924 920145326 494641655 718622560 678269968 847606738 822146174 828991703 666500462 739639535 49562173 717181396 664578910 367458932 269339683 768222621 883275547 673706282 157409279 648365815 862498766 577388488 190676148 164615099 556131319 616059722 60971388 973348297 916782610 530670755 407331136 228866994 703730532 187553626 821785883 695443839 639598734 126063962 606211768 64814492 580751204 856253722 884956905 545562783 428588305 33709369 185151686 921226199 663498037 370821648 441678878 668542111 621343990 403007644 104566599 943444144 863579639 565018497 367939320 739759632 452607705 84870691 104086211 829952479 305248686 755252145 596243717 885197099 909816984 469661479 358571754 595883426 725588186 929753086 671784730 390517556 961098403 687277243 572464511 823827532 191636924 40915189 420301612 109610673 712978001 894204374 983796736 197641774 35510824 239075239 330469056 838479366 543761328 688958601 914260573 250964842 362655052 24942288 527428136 45478875 699767331 807134049 530670755 93157384 490798551 470982546 339956719 631792429 542800552 231869419 339596428 640319316 126424253 340677301 43076935 800168423 867182549 700367816 495242140 51844016 415497732 604170119 315456931 711176546 513616981 580270816 457411585 602849052 576788003 692201220 799928229 560334714 509053295 932635414 270300459 320020617 93037287 1042985 795124349 833315195 666500462 200764296 506771452 734715558 619662632 971666939 790680760 374064267 389196489 141316281 253486879 895285247 230188061 850729260 99882816 482631955 158370055 578469361 276425406 793442991 336714100 593961874 93517675 179987515 123181634 561055296 444561206 681152296 851329745 895045053 547124044 194759446 745884579 375985819 960858209 101564174 969625290 142637348 163774420 587356539 346441957 598885851 414536956 386434258 834996553 687997825 464617405 319660326 622544960 329388183 62292455 380309311 842082276 518300764 658213769 26743743 550967148 454529257 131108036 935517742 8368902 237634075 954252874 184911492 564658206 770984852 697365391 82348654 69017887 908616014 983676639 522624256 875349145 34429951 571503735 274623951 801609587 293238986 568621407 76463901 990882459 778791157 90275056 530430561 2243955 228506703 62172358 298403157 514337563 495962722 126664447 164735196 83669721 869824683 314616252 251685424 415017344 139274632 46920039 633593884 520942898 434473058 939601040 987759937 989441295 862138475 278587152 689198795 881353995 987759937 4165507 180347806 817342294 590599158 69978663 746605161 372863297 522984547 804131624 529709979 3084634 746124773 15935013 964821410 331429832 112733195 920145326 594802553 533793277 490918648 14854140 294800247 270900944 867062452 981154602 65535074 582912950 737597886 823347144 641400189 871626138 373223588 136632498 491999521 346922345 958816560 594322165 944284823 354968844 733994976 75383028 569582183 676348416 182749746 730271969 852530715 846045477 596724105 343559629 250244260 987759937 361694276 89434377 73701670 62172358 936118227 642721256 63013037 856133625 528388912 993764787 781553388 906214074 702289368 986318773 344520405 487796126 255528528 537516284 811697735 456811100 167497427 730872454 315937319 186352656 111772419 764859905 675988125 780352418 513857175 224423405 511335138 444080818 484913798 989681489 239435530 566099370 925309497 533913374 935517742 162333256 537155993 675027349 101804368 990161877 341998368 481911373 940802010 889520591 896125926 597564784 467739927 500166117 984517318 678029774 118858142 119458627 978032080 570542959 358091366 26503549 311493730 2964537 586515860 392198914 326625952 227786121 90395153 649566785 93998063 954372971 441438684 95439227 701568786 556491610 560094520 471823225 497283789 977551692 662417164 519141443 769183397 917262998 50643046 995446145 712617710 712737807 404328711 371662327 645603584 243398731 532832501 962179276 102524950 768102524 686796855 144318706 213134287 837158299 486475059 526827651 306930044 809175698 289395882 524065420 145039288 487676029 122941440 942363271 694963451 439276938 542320164 7648320 894684762 471342837 269699974 86431952 664699007 922186975 663738231 761857480 765460390 25662870 892763210 426546656 534273665 96640197 662176970 877270697 818663361 235712523 22660445 599726530 447563631 285672875 699286943 691360541 932995705 244959992 392078817 117537075 769063300 864780609 109490576 530070270 810136474 717301493 713698583 579069846 488156417 122461052 767021651 912579215 925069303 239915918 947647539 560454811 655091247 664458813 919905132 384872997 645723681 825749084 492960297 443240139 324224012 134470752 139034438 240156112 487435835 617140595 741561087 901890582 582672756 390637653 146480452 919184550 798727259 665299492 2604246 84270206 934076578 48961688 891922531 262013766 517820376 618701856 374904946 254928043 681032199 575947324 5126283 450205765 581832077 410934046 717421590 278707249 187793820 865621288 917623289 98801943 30586847 281229286 880273122 917142901 268619101 516499309 525386487 754771757 295400732 646204069 156688697 206649049 222501853 11011036 268018616 597804978 146000064 20979087 424264813 213494578 249403581 43076935 811337444 431230439 102404853 707573636 655931926 614738655 652689307 205568176 889160300 791521439 279427831 496202916 450085668 329988668 6087059 397723376 766301069 286513554 518661055 263575027 786357268 93037287 543280940 421622679 559854326 588677606 263935318 570302765 493921073 325785273 245680574 361093791 612817103 365537380 945966181 549766178 951130352 431470633 192117312 920505617 678750356 695203645 521783577 61091485 766180972 183470328 221661174 236313008 246521253 736757207 623385639 10410551 502568057 819023652 216136712 432551506 649326591 776269120 719102948 488276514 484793701 506291064 43797517 413335986 583033047 880993704 26623646 192717797 747806131 838719560 707813830 56407702 899008254 507612131 214095063 846285671 139634923 562597 571743929 463176241 963380246 850128775 997848085 977911983 894564665 709855479 342598853 411294337 637316891 43917614 598525560 588437412 8609096 440357811 846285671 598645657 772786307 636476212 528028621 441438684 889040203 398083667 33709369 866461967 520942898 69738469 452607705 200524102 112372904 200884393 789599887 114054262 679591035 771465240 62652746 969625290 363615828 893723986 200524102 31547623 165095487 562736654 990281974 264655900 241597276 671784730 294439956 645483487 637316891 367458932 145279482 910657663 400365510 398443958 173262083 85351079 447563631 672745506 641159995 638758055 446002370 35150533 15694819 153686272 991963332 850008678 151404429 537516284 335152839 752369817 633713981 664699007 813979578 875709436 420782000 236673299 585434987 266217161 211092638 87032437 679951326 141316281 238114463 409733076 334912645 636716406 724747507 89554474 867182549 366738350 477467784 89554474 851690036 889400494 877751085 146720646 648606009 627348840 313655476 345120890 728950902 340677301 820104525 194519252 264896094 114894941 824548114 49442076 170499852 110091061 448524407 747926228 833195098 67696820 540518709 599966724 240516403 705411890 643081547 607052447 671424439 868863907 605371089 867662937 744923803 108169509 482031470 444080818 648245718 399644928 572584608 211092638 338035167 691961026 194399155 296001217 979713438 84390303 482511858 537276090 465217890 959176851 900809709 361694276 29866265 165095487 436274513 194399155 617981274 968184126 373703976 776149023 598405463 276065115 132909491 209050989 186833044 229947867 546643656 870305071 655811829 783354843 977071304 687637534 873067302 339956719 608733805 96880391 150083362 16775692 149002489 457531682 907775335 200644199 909816984 959897433 441078393 596604008 12932588 212653899 182629649 413576180 180588000 648846203 168458203 964581216 313415282 539798127 380909796 79826617 301165388 147201034 472183516 721985276 380309311 260332408 570062571 177105187 975990431 145879967 886277972 383071542 371662327 769183397 229227285 803050751 808575213 883635838 332510705 861057602 352086516 933716287 670223469 664819104 251445230 695203645 111532225 170860143 916902707 255768722 781913679 185752171 394480757 800889005 565138594 195720222 779631836 544241716 500766602 175063538 385713676 575466936 585795278 940922107 192117312 38993637 262614251 270660750 35150533 954012680 329268086 815300645 587476636 746364967 652689307 525026196 332390608 313775573 920145326 146000064 38152958 336113615 565378788 3204731 976230625 114534650 760176122 462335562 185752171 148161810 785276395 694603160 594922650 420061418 642240868 942603465 666500462 593481486 197161386 95559324 203526527 254567752 289035591 730512163 213494578 158129861 630711556 816381518 669863178 844964604 901650388 487435835 291077240 596964299 859256147 704931502 729551387 375385334 17616371 535714829 204006915 140115311 170139561 702769756 265136288 733514588 436394610 759695734 629510586 975990431 354848747 390997944 907655238 356410008 771705434 629390489 853131200 19898214 176624799 560214617 579069846 882074577 898768060 695563936 778190672 837878881 187193335 544241716 35030436 652689307 227906218 634674757 589278091 429669178 651007949 501126893 848207223 602849052 162453353 798847356 603809828 996767212 39714219 727149447 751649235 780832806 578349264 77184483 340437107 982956057 498965147 269699974 844964604 912098827 534393762 946326472 901170000 398203764 123662022 812538414 292398307 370821648 679711132 133870267 164615099 105046987 947647539 728710708 769663785 179266933 172061113 187073238 394000369 370221163 975990431 570783153 110091061 691961026 539798127 645363390 484793701 572224317 831633837 527908524 555650931 470502158 864660512 890481367 647044748 673706282 145759870 638637958 674787155 705652084 205928467 599126045 423304037 533432986 871145750 298523254 85351079 250124163 394120466 540158418 998688764 806293370 912939506 451887123 651728531 853851782 428828499 260572602 202565751 177705672 149602974 149122586 328667601 301405582 145279482 16535498 123782119 245800671 296361508 601407888 779992127 600567209 653529986 540638806 727029350 820464816 384392609 602728955 938880458 917503192 665419589 717661784 166296457 683674333 425826074 490318163 222381756 522384062 764379517 623866027 201725072 62412552 249523678 534033471 433632379 295881120 225504278 224183211 480950597 306930044 413936471 470742352 242197761 347162539 62412552 120779694 618461662 166416554 378627953 10770842 156208309 590238867 598285366 97480876 990522168 442500 382230863 711176546 330228862 18336953 89554474 186472753 274383757 19177632 401326286 427027044 146840743 962779761 835356844 281709674 657733381 441078393 538957448 790560663 153446078 329508280 675267543 458732652 813379093 604050022 522984547 296001217 217938167 934196675 892162725 537876575 275584727 919785035 229947867 625307191 630831653 55326829 602608858 318699550 523464935 906814559 249283484 704090823 967463544 855653237 972267424 749367392 561775878 52324404 525266390 173262083 219859719 769543688 923147751 800408617 429909372 215896518 609814678 486475059 284471905 241477179 984517318 33709369 669382790 310532954 180347806 31547623 669983275 25182482 688598310 52324404 684274818 895165150 550246566 199203035 338035167 411534531 857814983 962419470 136512401 66976238 708294218 588557509 905493492 67576723 7888514 195840319 505930773 103125435 844724410 344880696 477948172 637917376 76944289 986078579 416938896 423063843 415617829 758855055 969264999 789840081 953051904 857694886 634914951 579790428 836677911 259011341 678390065 998448570 835476941 978992856 72140409 666380365 966622865 556851901 427147141 377547080 493560782 423183940 4165507 945725987 494281364 645123196 398564055 836197523 645003099 859376244 542800552 747445840 774948053 772426016 351726225 403848323 129546775 214935742 465217890 721624985 13172782 107088636 629510586 16535498 633233593 883035353 610535260 471342837 741681184 579189943 433632379 263214736 240876694 279307734 575947324 412975695 169058688 642601159 309932469 900209224 490318163 81027587 876069727 544481910 873907981 452247414 189955566 629750780 238835045 965902283 878711861 239435530 818423167 603449537 558653356 728590611 347162539 521663480 672265118 107569024 584354114 417299187 674667058 214215160 95679421 842562664 883275547 235832620 38873540 154166660 868863907 937559391 729191096 475065844 708654509 365897671 421022194 829231897 64093910 307650626 293599277 418620254 424505007 266697549 762217771 345721375 842442567 535714829 126784544 961098403 802330169 523344838 891081852 150443653 325545079 145639773 366498156 416698702 641039898 124983089 296481605 990281974 788398917 869464392 32628496 144919191 506531258 767381942 736637110 288675300 309331984 612336715 162333256 282069965 42956838 398083667 114054262 111051837 170019464 405769875 838359269 991002556 929392795 2243955 772666210 58089060 685956176 614258267 117777269 783955328 123782119 82708945 788398917 848927805 583753629 169178785 192477603 93277481 716340717 226465054 747926228 108169509 828271121 886157875 237994366 191036439 589157994 775548538 942843659 345361084 146240258 618461662 75743319 973828685 140475602 946326472 416698702 588797703 640559510 768703009 583033047 58329254 860337020 463056144 391718526 977791886 48241106 368900096 300204612 640799704 831633837 738798856 93757869 119338530 332390608 510974847 773626986 902130776 675627834 661096097 899128351 847486641 10890939 327466631 444080818 787558238 439637229 602728955 624466512 312334409 282550353 820705010 40554898 722585761 284832196 292278210 55446926 25662870 769903979 890601464 226585151 32148108 385353385 990642265 234391456 478308463 271261235 731352842 383672027 851690036 249403581 270780847 832234322 915341446 396522406 636956600 49321979 482511858 341157689 430149566 620503311 357130590 836557814 732553812 939480943 596483911 471222740 929873183 378627953 515418436 898287672 257690274 550366663 750208071 305128589 890721561 383191639 551207342 417659478 532111919 569582183 733274394 256969692 592280516 378507856 334792548 273903369 231028740 981154602 250124163 317978968 84390303 74422252 890601464 10530648 494881849 537996672 313895670 159931316 801129199 432311312 548325014 763058450 16775692 496323013 246401156 80547199 842562664 874748660 846886156 907655238 934797160 212653899 197401580 358691851 247602126 638517861 432071118 732073424 194999640 463776726 985958482 698206070 290356658 967103253 865381094 165215584 507732228 790920954 132068812 857814983 357731075 543761328 59770418 115495426 89194183 992443720 542560358 126304156 32148108 366978544 387274937 444441109 755732533 774467665 566219467 914500767 572944899 349204188 667941626 420661903 648005524 264896094 551807827 170139561 817582488 912579215 147681422 387395034 246761447 584594308 850368969 359292336 499925923 376466207 212173511 681872878 579670331 337674876 25662870 289636076 717061299 43197032 609574484 308611402 504249415 738078274 151764720 250844745 55446926 587356539 678990550 995085854 287354233 164855293 770024076 769783882 380429408 536555508 544241716 622785154 316057416 756573212 507251840 101804368 584714405 433872573 859376244 651368240 892162725 444080818 274984242 53645471 592760904 402407159 708534412 977311498 241597276 912699312 486114768 798006677 701088398 769303494 960137627 268258810 315336834 609694581 203886818 871746235 821185398 247001641 803050751 433992670 261173087 759095249 381149990 154286757 559013647 742041475 391118041 982595766 867662937 203646624 301285485 84390303 361694276 169539076 433752476 289155688 824548114 560214617 256008916 745404191 655211344 464737502 730632260 528629106 914140476 311493730 685715982 249283484 834396068 419340836 973108103 74782543 555891125 533072695 165455778 547724529 109370479 12572297 108769994 162093062 305128589 107088636 563217042 529589882 569942474 968424320 878111376 568261116 985117803 886878457 759215346 384752900 478548657 98922040 457531682 233070389 460774301 179867418 367939320 978272274 569462086 954493068 187913917 130147260 829712285 977551692 676828804 834996553 763058450 73461476 952331322 209771571 617500886 843043052 56647896 735796431 435794125 931674638 410333561 218298458 565498885 339116040 243518828 864420318 476627105 45719069 590479061 10290454 575587033 152845593 764619711 550726954 919184550 216857294 367579029 471943322 486475059 7288029 371662327 711897128 583393338 375145140 944525017 63133134 812178123 920745811 301885970 611496036 961098403 217217585 192357506 690279668 744083124 168698397 429669178 615939625 489117193 653169695 165695972 835356844 266217161 384152415 342959144 977551692 134230558 928672213 586635957 960738112 238594851 281109189 399164540 844724410 950770061 680912102 937079003 690639959 178906642 503048445 895045053 211813220 532232016 602008373 562256266 963860634 488756902 328427407 259611826 450566056 586635957 657493187 747205646 697845779 971666939 8128708 550246566 802570363 256369207 63373328 951490643 329628377 709014800 393039593 117176784 343079241 90875541 386554355 318219162 458252264 511575332 279668025 69017887 129186484 849408193 604290216 598885851 43917614 4045410 317258386 910177275 878952055 162573450 576547809 614618558 987519743 759575637 112613098 113213583 634074272 559974423 18216856 259731923 41035286 329508280 397122891 245560477 634674757 649446688 972267424 620022923 445401885 946806860 127385029 866341870 249163387 997487794 683914527 121620373 881113801 83309430 59290030 913179700 881954480 75262931 494041170 182389455 161972965 265496579 286393457 375385334 871626138 614618558 338035167 659654933 271261235 903211649 184431104 824668211 875469242 597084396 111652322 996527018 730271969 663978425 887839233 802690460 494161267 835837232 420421709 968664514 696885003 199323132 158249958 986799161 198722647 882314771 107208733 437955871 522984547 681752781 115495426 242558052 761377092 661816679 345721375 740480214 186833044 809175698 187193335 443960721 904052328 433392185 872346720 675868028 792722409 186472753 109970964 440958296 340437107 810256571 841842082 802330169 74902640 743963027 590118770 457411585 118017463 81147684 912459118 836077426 744083124 868263422 937919682 868143325 923508042 686556661 994485369 582312465 872827108 977191401 650527561 884836808 496443110 314976543 807734534 100843592 317018192 332870996 361454082 136032013 938039779 560454811 96640197 185031589 796445416 589278091 293599277 272222011 91836317 316657901 412255113 765460390 571503735 131588424 363135440 824548114 651728531 389917071 218898943 322403 165936166 54606247 45719069 933235899 482511858 106488151 510374362 27104034 949809285 244599701 736637110 774948053 542200067 242918343 800889005 318819647 815540839 42836741 478428560 919064453 618821953 786837656 270660750 901410194 565979273 178426254 239555627 95199033 705411890 531151143 643081547 665419589 497884274 697845779 752369817 943924532 156208309 319660326 938159876 4045410 28184907 860096826 136632498 555290640 380789699 579189943 678269968 67096335 121019888 508332713 369740775 64934589 774467665 956895008 658333866 203406430 779992127 609334290 418019769 995205951 625187094 59410127 857814983 732553812 641400189 666860753 940201525 718382366 762698159 934436869 645603584 686916952 803170848 406490457 38393152 12572297 875589339 272822496 668422014 451406735 570903250 967463544 491519133 726548962 75022737 378627953 336714100 933596190 896486217 481911373 814820257 93037287 157289182 833195098 345481181 563337139 632272817 755972727 839079851 308971693 390997944 661096097 133990364 985838385 858655662 448044019 894924956 637557085 671664633 441558781 187313432 418620254 425946171 841601888 569221892 614858752 195600125 850368969 118858142 600086821 273663175 551927924 132068812 728350417 560935199 539317739 808815407 411174240 381630378 336113615 849888581 628309616 92556899 601648082 897206799 63373328 432311312 865741385 30106459 815660936 126904641 17015886 513857175 783955328 679470938 377306886 155607824 591319740 849888581 582072271 372983394 689078698 940561816 662176970 358571754 884836808 160892092 95559324 356530105 574145869 922907557 608013223 521062995 492840200 486595156 816261421 421622679 260572602 225744472 41275480 498604856 548445111 468820800 382831348 904412619 25903064 52444501 254447655 155607824 75383028 107448927 960257724 644883002 67336529 201484878 367458932 734115073 353647777 998448570 385713676 838959754 500646505 789239596 668181820 20979087 701328592 120179209 24942288 447803825 893003404 70939439 492359812 463176241 452847899 746605161 628189519 815781033 280028316 755852630 620503311 414416859 577988973 231629225 363135440 964821410 591920225 963500343 842202373 215896518 17135983 106127860 431350536 861057602 587716830 79466326 393640078 52204307 540278515 567540534 332510705 755492339 731232745 33108884 24581997 686436564 217457779 801969878 723666634 719823530 922907557 495722528 552768603 780592612 435914222 74302155 682353266 226945442 556131319 484553507 536195217 910417469 96640197 28305004 717661784 987399646 525986972 35510824 747325743 79226132 885797584 746124773 97841167 176504702 992323623 355209038 975029655 176264508 807494340 94838742 419701127 282790547 946446569 592400613 828991703 343439532 500646505 816621712 174583150 3685119 445401885 460293913 857094401 671784730 274143563 180227709 517940473 797766483 651248143 17616371 405649778 978272274 698806555 57248381 905973880 236192911 345000793 261413281 864300221 181668873 229467479 914260573 314255961 927831534 43437226 548204917 706612860 743602736 690039474 240396306 340557204 638758055 680431714 205448079 585194793 127625223 556971998 36831891 46319554 236313008 97120585 977431595 551687730 707213345 845084701 175543926 784555813 90034862 866221773 745284094 791641536 495001946 883876032 47280330 943203950 925429594 743842930 745764482 599846627 680792005 420421709 926990855 515538533 812778608 259611826 76103610 446843049 86191758 186833044 68057111 361814373 294199762 129426678 614138170 552288215 168097912 888559815 178786545 951971031 481671179 143598124 530190367 267298034 124022313 626027773 451406735 537636381 121260082 614738655 16775692 116456202 238835045 950770061 514097369 469901673 639838928 176744896 962659664 543641231 344760599 590358964 446002370 316898095 702049174 478788851 543881425 24221706 438916647 87032437 992563817 825388793 842682761 896005829 685595885 215416130 246881544 100963689 953172001 166656748 31787817 491639230 190435954 205688273 430629954 404448808 136392304 987279549 154767145 139514826 692681608 525626681 556011222 451046444 353647777 973948782 836437717 226104763 866582064 439036744 758014376 619902826 726789156 600447112 394720951 945966181 294439956 843403343 666740656 864300221 816021227 33709369 619542535 978152177 662176970 753450690 816381518 816621712 855413043 498004371 190075663 831633837 508092519 191036439 234271359 152245108 250604551 876910406 846045477 975149752 678630259 607773029 344640502 745163997 965541992 826229472 716580911 375025043 114534650 18817341 952571516 263214736 891442143 655091247 927231049 220580301 250124163 543521134 491639230 406010069 110931740 199443229 118377754 701688883 541719679 361454082 527428136 932034929 327346534 491879424 338155264 105046987 177705672 752730108 540158418 890721561 968544417 109010188 660735806 309572178 583273241 152004914 296601702 801009102 486354962 808335019 419821224 6807641 2604246 191757021 264055415 429428984 785756783 942002980 542320164 470982546 213974966 393159690 189835469 906814559 774827956 883275547 785036201 158730346 414897247 908015529 284231711 565378788 226104763 671904827 235952717 266817646 655211344 795844931 530190367 92676996 784796007 422103067 691240444 7528223 779511739 422583455 294680150 587836927 375025043 561175393 219859719 221781271 59650321 193078088 338275361 3204731 878471667 877270697 588557509 517099794 631912526 676108222 755852630 966983156 176384605 118978239 142637348 17736468 809175698 874148175 751048750 652208919 489717678 301045291 751529138 811457541 254207461 981514893 638637958 846285671 735316043 272222011 914500767 730992551 537996672 807254146 45358778 837278396 156208309 846165574 151764720 896966605 646083972 964821410 393399884 143598124 467619830 598885851 505210191 118738045 580991398 612817103 756092824 515898824 375265237 124382604 317498580 320981393 650767755 52084210 14253655 317258386 774347568 947407345 50522949 971907133 647164845 895525441 921826684 868503616 116696396 645603584 29265780 660495612 647525136 52564598 310052566 338035167 900929806 988960907 563817527 348363509 481070694 521183092 302486455 46079360 340557204 389196489 548925499 360012918 834996553 180828194 61091485 85471176 661096097 306930044 883275547 787197947 53645471 343439532 54726344 716941202 302606552 426066268 605611283 987159452 775548538 752610011 491879424 216977391 605371089 172541501 444681303 280748898 394360660 156448503 535114344 210492153 380789699 794643961 944645114 692081123 637677182 771945628 312574603 675267543 245800671 153085787 621343990 948248024 579189943 724867604 839320045 340797398 965421895 746124773 835116650 673345991 756693309 861297796 36591697 281109189 515538533 107689121 669262693 542079970 210251959 657853478 100723495 679110647 243999216 471222740 586635957 324584303 201004490 234031165 346922345 100483301 765820681 426906947 598165269 522384062 610054872 971306648 997247600 711777031 389676877 295160538 214695548 805332594 567060146 11731618 846766059 159210734 57128284 208930892 192597700 361694276 182029164 86672146 126184059 580631107 508933198 513977272 219379331 482031470 522143868 787438141 139034438 162813644 187193335 575346839 287354233 154526951 540638806 869704586 836798008 649566785 330829347 517940473 323023042 520462510 651488337 977071304 236192911 883035353 890721561 165816069 370221163 884836808 822626562 509173392 554690155 60250806 122461052 332630802 806893855 444681303 161492577 657373090 498004371 13533073 307650626 877630988 623145445 515538533 52924889 800648811 610415163 831994128 139394729 698085973 694122772 628189519 105767569 980554117 748046325 735075849 613177394 163894517 905973880 465698278 419821224 39834316 872106526 667341141 913179700 295640926 977311498 888319621 866461967 656412314 560094520 194879543 794523864 52924889 753210496 357731075 847606738 610174969 615459237 812658511 232710098 718142172 533432986 479989821 793803282 161372480 635995824 631432138 673345991 640199219 646684457 866101676 598765754 355449232 39954413 745404191 615339140 810376668 166776845 369980969 767982427 428948596 277266085 210612250 120419403 862498766 393519981 345240987 965662089 713938777 702889853 541479485 697965876 82228557 410934046 572824802 101323980 639238443 469901673 129066387 254327558 534874150 627348840 913539991 941522592 344760599 904292522 620863602 452487608 311974118 977791886 842202373 476987396 478188366 430269663 847726835 679230744 316657901 497403886 100603398 390757750 41875965 249883969 317258386 414536956 978512468 313295185 867182549 345721375 51123434 761256995 606812253 326025467 540999097 114654747 958216075 408652203 53885665 358331560 197401580 146840743 473744777 163173935 692201220 39594122 991122653 103125435 715139747 939000555 22660445 986919258 678510162 401326286 915461543 877991279 890961755 462455659 105887666 885917681 810977153 251205036 13172782 766901554 165695972 373824073 417179090 184911492 640559510 409973270 249523678 667341141 815420742 968184126 543160843 73101185 614018073 676348416 694242869 605371089 890121076 813619287 913179700 543641231 637557085 797886580 164615099 605611283 353407583 91355929 934076578 898047478 23861415 884476517 851209648 371061842 982475669 721865179 758975152 929272698 72020312 143478027 290596852 796565513 27584422 499325438 537035896 672265118 517820376 187553626 994485369 520222316 393279787 976831110 872226623 930833959 368900096 665059298 110211158 921706587 182389455 344760599 295881120 714539262 524906099 55927314 611856327 383912221 240996791 867903131 399284637 669142596 419340836 45598972 42476450 81507975 459092943 630831653 25182482 750448265 124862992 567060146 485153992 306689850 950289673 338875846 645003099 608733805 166896942 240996791 682113072 295761023 51123434 68417402 219979816 427267238 371061842 845084701 869584489 49802367 696164421 511335138 204847594 915821834 739999826 945245599 472663904 654730956 502207766 671784730 21339378 326625952 209771571 123061537 743002251 652449113 80547199 32868690 526347263 269579877 282430256 551447536 680792005 622304766 204006915 881714286 148882392 126304156 22540348 604410313 875949630 445521982 102645047 594442262 458132167 173862568 899128351 766781457 273663175 672385215 436274513 460774301 834035777 374304461 928071728 175063538 370701551 55927314 532952598 671304342 628309616 782634261 100243107 296121314 188994790 105887666 209771571 626267967 450085668 694843354 946206375 608013223 864660512 725347992 486114768 932755511 652329016 172421404 587957024 53525374 360373209 661216194 878231473 131588424 912699312 294560053 817942779 29385877 103725920 448764601 389436683 109610673 485394186 278947443 147921616 720904403 431110342 229107188 806293370 954493068 390037168 899488642 631432138 615219043 871025653 608493611 978392371 301885970 525986972 328907795 52084210 460293913 517580182 21939863 364096216 90995638 550967148 9930163 489117193 578829652 457771876 902851358 895165150 300925194 766901554 341878271 701929077 232229710 805933079 231749322 870785459 740960602 566219467 676588610 765580487 258530953 110451352 956414620 52324404 118978239 657493187 105527375 273302884 226465054 378387759 840881306 60731194 132188909 779992127 76824192 270900944 407811524 600807403 736637110 795364543 738558662 304287910 407691427 999529443 377426983 197641774 638397764 622544960 751769332 395681727 307650626 274623951 551087245 860577214 612456812 374904946 19417826 16895789 558653356 593841777 889400494 188994790 286033166 742762057 847486641 312214312 394240563 89074086 292278210 779511739 725708283 890000979 925429594 693522287 307770723 714419165 388475907 897807284 92076511 311733924 257570177 324464206 999049055 747205646 539918224 15574722 179987515 311133439 515898824 11491424 556851901 934196675 12212006 136512401 701088398 916062028 39954413 987639840 235832620 818423167 736637110 505690579 361333985 139875117 610895551 406610554 303327134 329508280 551807827 857214498 330348959 332991093 348843897 720303918 526947748 644162420 640079122 738438565 779271545 258651050 771825531 417058993 369860872 54486150 189355081 352687001 51483725 23260930 627709131 311253536 216136712 353527680 890961755 467019345 956294523 625307191 705892278 530070270 123061537 285552778 453928772 359892821 960858209 282790547 947527442 674186670 411294337 971426745 956174426 1403276 28785392 897567090 490318163 944284823 946326472 909216499 2243955 198242259 620743505 97120585 810736959 294079665 983676639 251565327 665899977 619902826 53285180 441438684 57128284 338515555 816982003 833435292 407451233 722105373 231509128 710936352 750448265 692801705 98801943 725347992 545682880 810256571 552768603 442279363 620623408 335633227 116216008 297922769 771225046 525746778 965902283 810136474 140475602 154887242 915221349 939480943 956174426 275704824 713938777 869584489 942363271 640799704 433512282 564538109 34910339 615219043 571023347 719102948 459092943 74782543 616780304 623385639 211933317 548325014 720544112 697245294 290957143 782394067 100723495 533913374 826829957 41875965 320861296 689078698 639598734 882554965 27104034 356410008 224663599 108529800 803651236 893483792 206048564 193318282 253006491 851209648 205568176 275464630 375025043 184070813 115015038 185992365 618221468 440117617 845925380 218538652 766301069 465938472 715139747 81027587 87632922 43197032 443120042 448404310 202205460 172661598 276785697 23981512 222501853 49922464 846045477 621824378 580991398 428588305 212413705 613777879 22180057 411174240 451166541 531751628 410813949 861177699 178306157 260812796 259491729 103485726 28425101 763178547 213854869 217938167 778190672 959657239 627709131 387395034 79586423 861898281 151164235 107328830 7648320 322062266 843763634 272582302 536675605 559013647 655691732 908616014 505450385 893123501 755972727 860697311 671064148 524305614 148161810 674546961 759575637 436754901 260212311 304047716 697005100 647525136 243638925 219859719 231749322 105887666 29025586 754531563 482631955 11851715 154166660 171100337 955093553 335272936 396522406 194279058 193558476 110691546 530790852 972507618 636956600 554810252 647405039 108289606 381029893 96640197 564177818 877270697 732193521 119218433 831393643 587957024 666860753 908255723 809776183 972627715 660255418 819263846 447323437 837518590 595643232 198362356 404689002 865381094 605250992 973108103 679951326 216617100 576427712 942723562 925189400 328907795 824788308 548925499 650527561 577988973 682113072 551327439 638157570 605611283 755011951 21939863 904052328 463296338 898407769 255288334 793563088 492479909 756813406 341878271 515178242 521062995 982235475 670103372 931794735 105887666 10890939 521062995 287714524 884596614 700728107 482752052 584834502 682833654 529950173 683794430 251325133 15214431 122941440 738918953 636236018 779751933 720544112 785996977 675868028 315817222 935157451 396522406 891442143 347642927 770984852 830072576 521903674 743722833 740360117 262013766 409973270 489357387 139875117 386194064 616900401 750208071 261773572 373223588 935397645 175664023 646324166 768703009 392919496 68417402 926030079 37312279 70098760 551207342 192117312 275104339 473504583 204127012 434232864 492720103 426786850 293719374 947647539 79946714 768823106 809055601 8368902 620863602 683794430 973948782 791641536 9329678 144198609 899008254 835597038 944284823 556851901 832354419 257930468 687157146 894924956 863939930 689679183 658453963 32388302 246641350 101083786 844364119 683674333 985958482 971546842 662176970 467619830 381390184 940681913 524305614 739519438 626388064 459333137 744083124 403247838 684995400 901530291 563697430 573064996 864660512 728710708 204247109 633473787 122461052 703610435 434593155 179987515 530670755 447323437 249163387 183110037 644162420 828991703 760176122 742161572 352807098 806773758 836918105 20018311 50042561 191997215 212413705 489597581 989081004 173382180 716460814 54606247 355689426 719943627 423664328 492119618 260332408 375265237 256849595 1283179 561055296 938279973 151044138 945725987 259491729 644883002 376226013 262013766 999169152 102404853 302846746 771825531 356770299 165816069 341277786 500526408 382350960 609454387 219259234 995806436 890961755 879552540 90154959 837758784 389076392 412735501 641159995 853971879 549646081 47160233 771945628 442399460 884836808 61812067 113814068 549405887 527668330 916782610 816861906 308611402 301045291 54606247 372503006 113213583 338035167 66856141 195720222 190676148 718382366 259731923 315096640 624106221 309211887 651608434 212293608 205688273 207609825 113453777 200644199 88113310 312694700 990402071 50883240 926150176 280628801 456090518 376226013 218778846 721985276 103245532 475426135 982355572 238234560 723906828 155007339 802089975 636956600 454529257 297322284 518540958 942483368 736877304 864060027 802570363 144799094 240396306 400245413 650287367 284712099 247602126 949088703 350525255 885197099 129786969 348243412 565258691 126063962 357610978 311493730 831393643 916782610 904052328 235592426 809896280 789119499 129306581 511815526 836918105 121500276 358691851 577268391 528148718 338755749 253727073 852891006 209531377 647164845 737597886 311373633 548565208 907174850 408291912 624346415 718742657 802791 643561935 517219891 890961755 302966843 25062385 553008797 690639959 524906099 619062147 697485488 960017530 32028011 770744658 19417826 775188247 390517556 795604737 511815526 848327320 527908524 224303308 760296219 758855055 521303189 697005100 923628139 677549386 110211158 454409160 886998554 379468632 123662022 878831958 748766907 540999097 901170000 279788122 774467665 870905556 28665295 873307496 309331984 892282822 497523983 513376787 324584303 161972965 658814254 746364967 273783272 865140900 892763210 988120228 968184126 267658325 830072576 164014614 635635533 578469361 362655052 71660021 719223045 105287181 530790852 641760480 703130047 76343804 778070575 453208190 542920649 174583150 860937505 793923379 489357387 62892940 108649897 774467665 354488456 953892583 507131743 469181091 786477365 129186484 825749084 523705129 84990788 251805521 86191758 601287791 249283484 556371513 881954480 205087788 291317434 709855479 815420742 98681846 967463544 678750356 952091128 106247957 514457660 727149447 853731685 594562359 335513130 61091485 674907252 352446807 286633651 134230558 661216194 706853054 338995943 639718831 890721561 547003947 420541806 547124044 874268272 384032318 112372904 975990431 134350655 945125502 350285061 172781695 69858566 842682761 575947324 574506160 295640926 294439956 445521982 428588305 461374786 758734958 890601464 321822072 483592731 258290759 693041899 481791276 631312041 397963570 714659359 124142410 345361084 572944899 652929501 161612674 246641350 163414129 809175698 609814678 210732347 731352842 274023466 421022194 742401766 191516827 243759022 442519557 498484759 559614132 200644199 599726530 374424558 809295795 970465969 967823835 721624985 44037711 705531987 841121500 707453539 226945442 329628377 421502582 414777150 663978425 870305071 724507313 173382180 464977696 755011951 741801281 202805945 605250992 896726411 901650388 686676758 765700584 733394491 957975881 709615285 795604737 141316281 835476941 544602007 416098217 899728836 126904641 317018192 174823344 850008678 767862330 828991703 392439108 523344838 166536651 826709860 224423405 980193826 444080818 74782543 893483792 649927076 528749203 354968844 337194488 692321317 975750237 108049412 254327558 583513435 771104949 70098760 514697854 876189824 420782000 265856870 904772910 280508704 185752171 836798008 931194250 398203764 851569939 685235594 337794973 735916528 998568667 751529138 161852868 454889548 716580911 284231711 225023890 623505736 708174121 889760785 441919072 394841048 791761633 297922769 568261116 426186365 598165269 380669602 143838318 270660750 907294947 707573636 605371089 629750780 226465054 818062876 585314890 70699245 679711132 996647115 989801586 511575332 409853173 777710284 988120228 647164845 576547809 689559086 535234441 774107374 270300459 335032742 813979578 562496460 260092214 945725987 685355691 459813525 358811948 901049903 255048140 63133134 53165083 914740961 661936776 753690884 77544774 999889734 300685000 311613827 833075001 354008068 580390913 256129013 962659664 198122162 101684271 829472091 998568667 860216923 977311498 603449537 139154535 905493492 858415468 801729684 972027230 448284213 780832806 29626071 826469666 194639349 675868028 223582726 689919377 87993213 745404191 850969454 722105373 124262507 653890277 680311617 482631955 66015462 295400732 83669721 868023228 731833230 967223350 917022804 925309497 371542230 913900282 185872268 469421285 143117736 669502887 531151143 671064148 645843778 364336410 906093977 437835774 124983089 737838080 785876880 789840081 630711556 377547080 140715796 442279363 227906218 239675724 771585337 591800128 720063724 209651474 931794735 42236256 625307191 40194607 871746235 109970964 31307429 711296643 813258996 580631107 871746235 538477060 569341989 125463477 650527561 51483725 432911797 161492577 292518404 64574298 822506465 468460509 321221587 444921497 381990669 564658206 596964299 715860329 60130709 906814559 527428136 777470090 867903131 410693852 782634261 42716644 909696887 567780728 700487913 162573450 902010679 843403343 333711675 476507008 841601888 788158723 192837894 960017530 481190791 337314585 246040865 347522830 662657358 124742895 917383095 653890277 713098098 163294032 628790004 365897671 559734229 590479061 736637110 229107188 595763329 290476755 924228624 555170543 616420013 938880458 525026196 282310159 274984242 209771571 609214193 323623527 715980426 129546775 692321317 26503549 732073424 309211887 512896399 936598615 943324047 92917190 217457779 486715253 395441533 190796245 30106459 663017649 588077121 813859481 259731923 881113801 611375939 676468513 880032928 586635957 639598734 45959263 830673061 108649897 297322284 490077969 90875541 61812067 365177089 107689121 37792667 148882392 73341379 234031165 710816255 230668449 330228862 33349078 443360236 136512401 39353928 933115802 550726954 361454082 105527375 567780728 989441295 486234865 373343685 483712828 953652389 468820800 401086092 902731261 834996553 410453658 860937505 132549200 129546775 493680879 913780185 164735196 834155874 283391032 422343261 880032928 214575451 789599887 291797822 692201220 739039050 529349688 358091366 765220196 774948053 831753934 859856632 280388607 965541992 598285366 902370970 296841896 308010917 380909796 102645047 427507432 24581997 822626562 371542230 717541687 241477179 888920106 592280516 533553083 272342108 344520405 350164964 456691003 248202611 664338716 424384910 410213464 964461119 946806860 36351503 32028011 431350536 359172239 592280516 288194912 339116040 262494154 8248805 100603398 519141443 475185941 622184669 193318282 475666329 872586914 864780609 800168423 697605585 13172782 15454625 506411161 871145750 364336410 957135202 732193521 424264813 927110952 365657477 151284332 676228319 6927738 795124349 502087669 48721494 348123315 724867604 392078817 995926533 108769994 922427169 882194674 816261421 851449842 902370970 494881849 683073848 963140052 911258148 124382604 607893126 849648387 278106764 746725258 955814135 669622984 85110885 944404920 307050141 335753324 932034929 585555084 150924041 884716711 167617524 590959449 10290454 707813830 358691851 414777150 497163692 540638806 590719255 643561935 895405344 62052261 550486760 310292760 870305071 100123010 176624799 776269120 718742657 358691851 397723376 284712099 12572297 149723071 175664023 43917614 890841658 117176784 215776421 619422438 984757512 893243598 839440142 96400003 279547928 865741385 604170119 497523983 347402733 243278634 833075001 465938472 591800128 96159809 958095978 563337139 64454201 997127503 624346415 492239715 332270511 993884884 985718288 509053295 612096521 243759022 811937929 588917800 326505855 245320283 410093367 829231897 519982122 624226318 184551201 537636381 565498885 485514283 822866756 644642808 941762786 852410618 536555508 793683185 948488218 59410127 782153873 571263541 640319316 801849781 899969030 224423405 763418741 143117736 253967267 695563936 137112886 848567514 400965995 624826803 225504278 801129199 947887733 111171934 764739808 114174359 474825650 341758174 137833468 594442262 603929925 19778117 405649778 211452929 456450809 779751933 321581878 538236866 46799942 842442567 449485183 60731194 441678878 963380246 997848085 65895365 136392304 614978849 160291607 128826193 435914222 939000555 897687187 112012613 490798551 894804859 700728107 512416011 923628139 827670636 960497918 518781152 565618982 922888 313895670 14133558 170860143 41755868 963140052 588557509 649326591 634554660 410333561 167617524 795484640 882314771 479629530 640439413 611616133 384752900 784555813 666860753 572704705 654490762 334192063 417539381 22420251 908616014 114414553 571503735 662176970 464497308 188154111 454048869 746845355 741801281 682713557 500406311 571143444 349564479 811577638 710455964 478788851 249523678 820464816 810736959 915941931 456330712 314255961 368419708 914981155 837758784 367338835 813258996 282069965 311733924 122220858 986438870 235832620 259131438 805452691 334912645 762578062 243879119 94118160 845324895 519741928 283030741 479869724 964581216 624346415 408051718 978392371 275224436 469661479 363856022 424865298 693882578 812178123 192957991 775668635 301885970 731953327 442879848 50402852 237634075 655571635 731953327 49922464 259251535 846405768 677789580 78025162 482511858 419100642 887959330 618341565 450926347 978392371 38993637 358451657 257089789 87993213 101444077 380549505 508452810 537636381 599005948 666140171 670944051 189715372 792362118 326265661 425946171 372022618 285913069 907174850 968544417 724147022 318339259 452367511 643682032 688958601 864780609 197761871 85591273 21099184 843643537 133269782 292878695 92556899 685475788 792962603 290596852 957375396 693762481 473864874 937439294 867542840 721985276 246881544 304528104 935757936 180708097 19297729 644402614 690039474 703370241 940922107 222742047 289515979 992563817 453568481 142517251 174583150 377186789 542920649 4285604 961458694 886157875 682593460 671184245 537396187 669863178 146960840 240756597 575346839 986198676 520342413 33108884 717181396 247001641 240636500 705051599 683193945 849888581 448164116 348003218 871385944 154286757 969264999 789960178 367579029 853491491 391718526 361934470 329027892 328907795 798006677 850008678 400605704 89194183 64334104 965301798 928071728 32748593 837158299 369500581 953051904 189595275 131348230 753090399 818543264 976590916 296241411 230067964 726909253 890121076 430029469 334672451 825989278 183350231 880633413 503168542 212773996 657012799 988720713 174342956 586635957 125703671 135911916 303447231 657132896 680671908 771945628 499685729 349804673 185872268 112733195 303447231 377066692 858895856 493680879 822746659 58689545 156448503 482271664 475426135 555530834 353647777 25182482 644042323 232710098 532472210 674306767 585074696 274623951 994485369 167857718 903692037 897567090 796445416 427027044 868383519 123301731 578469361 996286824 210852444 886758360 183230134 667341141 253967267 482752052 885437293 770984852 165695972 620623408 188154111 291317434 902971455 850128775 186953141 960137627 560334714 850969454 815660936 740119923 89914765 482992246 580030622 584354114 496323013 950289673 276305309 40434801 369380484 522744353 563457236 171100337 116696396 548325014 258771147 889160300 349204188 353287486 153325981 965061604 758014376 222381756 973588491 441798975 337554779 287114039 761016801 865861482 933836384 839079851 154166660 484193216 336233712 829952479 658093672 290837046 900329321 248202611 102044562 398804249 260092214 594682456 789840081 777950478 812058026 115495426 752730108 1883664 177105187 174823344 863939930 925909982 618461662 795244446 824187823 697245294 85711370 717421590 568141019 364096216 572584608 992443720 903331746 109250382 685836079 3204731 744803706 707693733 776149023 628669907 36591697 99402428 11611521 819624137 566819952 386674452 630951750 369740775 569822377 676828804 639238443 2484149 459453234 485874574 197881968 139274632 51363628 492600006 992804011 650287367 762457965 854332170 612576909 5126283 56287605 372382909 2364052 853731685 273783272 325905370 465578181 402527256 543881425 444801400 115855717 342358659 126664447 335633227 895045053 494161267 315216737 911978730 880273122 265376482 970105678 394720951 637316891 607172544 983316348 144799094 273422981 160291607 525146293 672145021 914020379 242317858 456330712 492119618 674787155 665059298 162933741 327586728 284952293 374784849 882675062 556611707 472303613 378627953 167377330 829712285 610415163 701688883 791881730 913780185 122581149 902250873 423784425 455490033 66135559 780592612 539197642 416938896 554449961 353647777 779751933 240396306 694723257 69137984 77905065 186592850 265256385 287114039 916542416 600206918 332030317 473504583 632753205 513496884 192117312 925429594 954853359 445762176 347402733 778190672 225864569 225023890 489837775 593241292 688238019 136512401 6447350 114414553 654971150 76103610 189715372 544481910 798607162 729070999 194158961 629390489 427867723 193678573 645963875 914380670 429428984 557932774 314976543 381990669 625547385 36591697 482992246 937079003 623265542 994245175 656172120 559614132 135551625 905733686 94358354 212653899 847846932 875589339 407090942 90995638 743362542 891322046 840040627 156808794 592160419 597564784 631312041 85951564 193078088 103846017 580030622 735316043 774347568 762337868 147080937 663738231 598525560 129426678 487676029 872586914 959897433 91476026 39714219 550246566 862618863 351125740 663858328 689438989 988840810 813138899 836557814 660015224 250724648 403968420 276425406 773987277 650407464 996767212 480470209 161012189 697965876 665779880 765100099 896246023 700968301 361814373 791401342 308010917 886157875 604410313 303086940 192717797 440477908 413696277 531751628 975870334 365537380 44277905 433872573 791041051 379708826 496683304 795844931 241597276 832954904 602368664 38393152 827190248 138073662 329628377 112853292 212773996 912459118 573785578 526107069 918223774 483592731 797766483 72860991 170980240 868503616 581711980 222141562 456931197 414296762 340797398 973828685 146960840 697725682 773867180 260212311 871626138 773146598 693041899 771465240 558893550 411534531 763178547 713938777 118978239 238594851 359892821 654490762 736276819 662777455 313175088 53765568 652088822 97360779 594202068 930113377 39113734 67696820 754291369 227666024 83189333 98081361 231028740 711536837 127024738 888439718 744803706 168818494 978752662 268499004 916062028 230067964 138794244 718382366 984517318 587836927 60491000 790680760 929032504 898888157 609454387 466899248 249403581 78145259 129306581 126304156 603929925 942363271 897687187 968304223 335032742 329147989 175303732 775548538 8609096 986078579 334432257 481310888 159330831 659054448 724987701 171941016 884836808 571023347 929272698 800648811 714899553 729191096 471342837 879912831 255768722 381630378 94598548 149362780 526827651 146000064 455369936 982355572 940081428 527548233 56647896 277866570 468100218 928672213 393399884 761857480 182989940 961338597 908495917 115975814 912699312 12332103 46199457 818062876 822986853 898768060 454649354 391718526 545082395 709735382 422103067 18096759 695083548 23981512 875709436 407811524 583633532 723306343 84030012 305008492 682593460 502688154 529229591 151644623 117657172 232349807 118978239 435794125 955093553 156928891 530070270 556011222 254687849 520822801 91956414 380549505 534153568 518540958 111171934 537996672 308010917 32628496 150083362 257450080 911017954 526467360 130027163 702769756 285432681 945966181 44758293 914861058 931434444 367699126 839440142 792602312 480950597 692801705 868863907 166776845 258651050 78625647 737237595 562976848 901530291 224543502 938279973 594922650 74662446 402887547 443240139 930113377 141556475 128946290 90395153 510734653 927591340 998808861 292998792 889280397 318339259 815901130 915701737 202306 590479061 119098336 678390065 347763024 6087059 349684576 795604737 258050565 147801519 837278396 804371818 306809947 109730770 756573212 53525374 687517437 659654933 250364357 446722952 744683609 171340531 166296457 65294880 617741080 542560358 713698583 554209767 478428560 925789885 868984004 550126469 621464087 198362356 189835469 525386487 108289606 795244446 214695548 279307734 291077240 724387216 952931807 986078579 549165693 940681913 992203526 482151567 268859295 706492763 460053719 79226132 487916223 270540653 791041051 709134897 671184245 321221587 108289606 954493068 797406192 611015648 370101066 134350655 509893974 450566056 486114768 234031165 776989702 366978544 808935504 754291369 347282636 726428865 735075849 731232745 35510824 181548776 750808556 423304037 642000674 611976424 663257843 342959144 227425830 100002913 471943322 969264999 940201525 189835469 507612131 387034743 463656629 86191758 668422014 833675486 763418741 52204307 535714829 827910830 361814373 119098336 583273241 997367697 211332832 699647234 561295490 82949139 55086635 455730227 616900401 791161148 862258572 263094639 134110461 331069541 170619949 203886818 414056568 800048326 439757326 848687611 697245294 394720951 736517013 323503430 518300764 726669059 299964418 480470209 625187094 578109070 302126164 921826684 869464392 780952903 436514707 588797703 84030012 605130895 454409160 406730651 594442262 615819528 210972541 941042204 675267543 120299306 838359269 627589034 872106526 105647472 635275242 868623713 125343380 936718712 697245294 784315619 91716220 548204917 921106102 179987515 545322589 409252688 984036930 79226132 258891244 860457117 891802434 726789156 432311312 488997096 795484640 590238867 307410432 350405158 803170848 704331017 237634075 960978306 365417283 775308344 659414739 780592612 751769332 288315009 508933198 592400613 995446145 816021227 423183940 661216194 360012918 218418555 770024076 303567328 476867299 587957024 635755630 243158537 891081852 931914832 622665057 192597700 368779999 413696277 826950054 670583760 478788851 216857294 241597276 425465783 589638382 528388912 766301069 744683609 837878881 632873302 561295490 452727802 571383638 904532716 301525679 235952717 237153687 969985581 71539924 547844626 192357506 483352537 323143139 539798127 900569515 135071237 335393033 30827041 226705248 378147565 857694886 359412433 889280397 933115802 467980121 848207223 635635533 38753443 332870996 76704095 565018497 691961026 977671789 738438565 44758293 488636805 482872149 221060689 773867180 135791819 549285790 604290216 323743624 648846203 719703433 27104034 794283670 571623832 841962179 509293489 997968182 608613708 236313008 698206070 751048750 750087974 710215770 335272936 591199643 734595461 558533259 333711675 490438260 569582183 410934046 19177632 522984547 397363085 400125316 602608858 239435530 524185517 156808794 461254689 572824802 587356539 103966114 844724410 829712285 350405158 3925313 687517437 523705129 341157689 15214431 700728107 455610130 73581573 948848509 927351146 681032199 681752781 260212311 67456626 944044629 130867842 827310345 772426016 627949325 758975152 403247838 875709436 905733686 890841658 583633532 385113191 872586914 45118584 853011103 332030317 650407464 394720951 807374243 397603279 208210310 178906642 87873116 295040441 444801400 609574484 712978001 416098217 920745811 550967148 146000064 502327863 813859481 235472329 875349145 556851901 452967996 492119618 969745387 951010255 535714829 769543688 561055296 193678573 955453844 612697006 463416435 237513978 454769451 366378059 126544350 972867909 635275242 293839471 9449775 834636262 376226013 226825345 525266390 368900096 982475669 123181634 727749932 970105678 411174240 962539567 919184550 850849357 157169085 743002251 418620254 550967148 396522406 618221468 992323623 281949868 640319316 598645657 313775573 522023771 418620254 456330712 380069117 761497189 622304766 336113615 733274394 319300035 385473482 39834316 992203526 561775878 192477603 602608858 803411042 784435716 654370665 126544350 958816560 942363271 78025162 589037897 31547623 26983937 850609163 765100099 953772486 911017954 802089975 983676639 358331560 382110766 847606738 629510586 602008373 84510400 968424320 376826498 986799161 740360117 973708588 412014919 974309073 870545265 460173816 264775997 52444501 213014190 200163811 701688883 833675486 570783153 166776845 595403038 232830195 129066387 247722223 473144292 244479604 954853359 581832077 435193640 104326405 232109613 824548114 362895246 562496460 28184907 478308463 707933927 493680879 928912407 797766483 540518709 898768060 40674995 216497003 529109494 940922107 493200491 719463239 874268272 340317010 958216075 84510400 640079122 160651898 387395034 885197099 621103796 904052328 888800009 496443110 771345143 27104034 779391642 725708283 654851053 287594427 194158961 129907066 333591578 42116159 844244022 330348959 910297372 88353504 671904827 772786307 302246261 858775759 98321555 27344228 194999640 739999826 219499428 214935742 681272393 306689850 671904827 229947867 271621526 237874269 251565327 132429103 347763024 185511977 493560782 977551692 450085668 890961755 953172001 80547199 467739927 966142477 263214736 424024619 934797160 241357082 449365086 458492458 400005219 818663361 697005100 556851901 766781457 781073000 112613098 212653899 343679726 706492763 935878033 363615828 433512282 350525255 670944051 750087974 797766483 636836503 999529443 575466936 741080699 363615828 617981274 803411042 885437293 11491424 723186246 396522406 500046020 879192249 532352113 462575756 893123501 437235289 182509552 415137441 64814492 766781457 8609096 855292946 943564241 916062028 289756173 988600616 423063843 593601583 565859176 143478027 43317129 53405277 981394796 936478518 198962841 389676877 92316705 135191334 525746778 944044629 531271240 404448808 83309430 656772605 270420556 627108646 479389336 641039898 540879000 369860872 157289182 879432443 37432376 436995095 512536108 728830805 261893669 730031775 468460509 611976424 853971879 335393033 526707554 79706520 984277124 986078579 798006677 661816679 512656205 566699855 948368121 182749746 844964604 546043171 795724834 813018802 9209581 856133625 611976424 345120890 751889429 745524288 571743929 179507127 866101676 432671603 961338597 318819647 633233593 50522949 250364357 549165693 127985514 211452929 75623222 17376177 617380789 260812796 720664209 406970845 973948782 312814797 149122586 456691003 408412009 149843168 707213345 38753443 922787460 690159571 361213888 887839233 911618439 860817408 76583998 821905980 28064810 302966843 420661903 465818375 479149142 874148175 481671179 613537685 68177208 872707011 534273665 794884155 899368545 519862025 902370970 542079970 732433715 657853478 983196251 694122772 502928348 113934165 240036015 50883240 313054991 42476450 724387216 327586728 915221349 847006253 703250144 95199033 436514707 399765025 398323861 819864331 156448503 475306038 92917190 860697311 279187637 3685119 240636500 409252688 545802977 966262574 907054753 120059112 620263117 313895670 937199100 479509433 678750356 234511553 485394186 599726530 837758784 178546351 841241597 389796974 50522949 320861296 599726530 215776421 48721494 220820495 286153263 230067964 207369631 667941626 649927076 558172968 142757445 49442076 202565751 715980426 332150414 801609587 395201339 22180057 461614980 810977153 705772181 573545384 712137322 521303189 889880882 110571449 643321741 595523135 883155450 936718712 85230982 990161877 601888276 95799518 282910644 484073119 857694886 805572788 247121738 931554541 692801705 253967267 189835469 796325319 68057111 743963027 22900639 827430442 670944051 633473787 199082938 299964418 75983513 434833349 138193759 937559391 607172544 223822920 187313432 893603889 793563088 328787698 729191096 632272817 998808861 50162658 182269358 809535989 903692037 111292031 855172849 278947443 9810066 129306581 197281483 197521677 400965995 254327558 85591273 519621831 904172425 505570482 702289368 391958720 780232321 615579334 187553626 409612979 156448503 270780847 185271783 305729074 438316162 135191334 216016615 703009950 271621526 51964113 168458203 464257114 961338597 876309921 825869181 505450385 190916342 828751509 890481367 292398307 900929806 857694886 532832501 474465359 694603160 660375515 104926890 935037354 74061961 233790971 950049479 116456202 719583336 649927076 289035591 634554660 544602007 69618372 749607586 333831772 634914951 618942050 325064691 136152110 920865908 590959449 165936166 654250568 496202916 563217042 523464935 91596123 557092095 420061418 810016377 571503735 301165388 994485369 461855174 499325438 793082700 891322046 288435106 77424677 282670450 205928467 123541925 693642384 877030503 950649964 276905794 418980545 928311922 794163573 605371089 227906218 118017463 977311498 839440142 901650388 773146598 886638263 360613403 584474211 998328473 847246447 993524593 994245175 521783577 741080699 207850019 531271240 973348297 928792310 968064029 201845169 669142596 820825107 93277481 60971388 380669602 386914646 694122772 756453115 986318773 684394915 458852749 658574060 181188485 492840200 88233407 494281364 149362780 272822496 597564784 526827651 71059536 994725563 845685186 555530834 217697973 72860991 292398307 990762362 697605585 241957567 627709131 899728836 88353504 179627224 208330407 510734653 908375820 992683914 757053600 222021465 660495612 69017887 771345143 736396916 660135321 48361203 317018192 763058450 301285485 383311736 391598429 484073119 873787884 435313737 916782610 256849595 329508280 438676453 514697854 425946171 522624256 101444077 495001946 890601464 945725987 149602974 936598615 798487065 884596614 377547080 170499852 540518709 160171510 186232559 587356539 457771876 454168966 426066268 221781271 230668449 584234017 664578910 595162844 919785035 873067302 511695429 530790852 374544655 548565208 901290097 262253960 760176122 266937743 131468327 457411585 921826684 586996248 561775878 449244989 614618558 399044443 353647777 204367206 816861906 733514588 814700160 57608672 174222859 767502039 333231287 869704586 289155688 772906404 252646200 64814492 723186246 234871844 997487794 75142834 802791 506891549 597324590 45478875 361333985 114174359 860937505 958336172 370341260 247241835 450325862 999409346 918584065 979713438 124022313 252646200 591079546 515778727 31307429 961818985 459333137 378027468 323503430 761857480 840280821 33349078 326385758 856734110 753931078 879312346 652569210 210972541 523464935 90154959 828871606 793202797 323863721 745043900 792842506 623625833 737237595 980193826 522864450 758254570 497043595 638397764 786357268 308731499 48361203 930833959 776629411 481551082 374784849 529349688 766421166 77905065 181188485 100123010 134831043 583873726 457291488 299604127 871265847 170860143 670703857 256008916 191636924 738558662 685115497 300805097 587476636 240036015 796085125 517700279 53765568 404208614 804852206 323983818 359172239 396402309 77304580 617981274 986679064 711897128 114414553 186232559 571023347 926630564 417058993 831393643 168458203 141436378 366017768 737357692 959777336 142517251 974068879 586515860 599606433 912459118 498244565 617981274 665779880 495482334 486234865 586035472 259852020 44277905 416818799 741561087 286153263 506411161 823707435 221060689 512656205 212413705 183350231 428828499 997127503 706012375 194158961 893123501 368539805 544001522 595643232 280268510 451406735 439877423 772305919 924468818 471342837 930954056 505570482 922907557 812658511 410813949 967223350 395801824 753210496 21339378 179146836 932995705 798246871 707213345 193558476 573665481 36351503 393760175 481310888 702529562 822506465 985838385 31907914 307170238 708294218 850008678 799688035 306449656 980193826 8609096 619062147 326866146 42476450 356049717 39594122 157169085 174102762 404328711 569702280 412375210 539678030 456450809 565739079 372983394 747445840 374664752 326025467 329748474 571503735 271261235 192837894 4045410 524786002 847606738 277746473 798006677 797406192 264175512 582312465 602128470 92556899 31427526 696044324 815420742 596483911 963019955 889160300 472063419 53405277 844484216 533072695 309211887 60130709 450926347 562496460 109010188 673586185 787197947 450085668 820945204 807614437 566339564 812538414 358331560 559494035 35390727 155607824 907054753 610415163 78025162 336233712 878111376 289996367 689799280 60370903 805092400 978632565 602368664 356770299 305608977 658814254 963980731 900569515 36951988 788278820 9089484 776989702 810496765 726909253 452847899 667221044 569462086 47040136 300925194 595162844 616299916 365417283 506411161 383311736 521423286 36951988 481430985 951610740 671424439 956774911 472183516 920505617 681752781 869224198 374904946 194399155 119218433 753330593 831753934 624106221 114054262 180588000 689318892 173742471 396282212 16055110 594081971 709615285 295640926 907174850 73581573 999889734 703130047 925669788 149963265 94478451 970706163 316777998 837398493 555410737 127024738 831874031 899128351 111892516 76583998 486715253 536075120 572944899 650527561 334071966 519261540 404809099 340317010 564538109 35150533 805692885 92917190 224423405 344760599 948608315 880633413 355209038 50282755 738558662 128585999 249763872 760656510 404809099 491399036 364216313 30947138 415497732 798727259 42356353 455730227 43557323 710335867 467139442 410693852 269699974 537636381 863219348 946206375 373944170 102164659 610415163 177585575 591199643 340196913 291917919 374784849 203646624 542920649 578229167 669022499 279067540 321221587 495482334 442519557 465458084 857454692 755252145 262494154 653169695 532952598 865260997 234511553 827310345 719943627 756212921 228746897 534153568 218538652 958696463 720784306 554089670 579310040 880873607 864180124 610895551 862738960 383551930 438075968 661336291 370341260 289035591 67096335 161252383 314496155 398083667 1042985 367098641 607773029 485994671 481070694 864660512 779511739 391718526 814339869 904652813 715019650 545442686 710816255 565979273 665179395 932635414 773386792 763899129 922307072 347883121 702529562 326746049 456330712 977191401 823707435 946806860 625667482 343559629 212413705 154647048 493800976 387034743 504849900 462695853 869944780 505090094 442879848 963019955 233550777 13653170 378387759 239795821 822986853 611856327 428107917 165215584 347883121 915221349 592040322 431110342 258530953 704210920 672385215 291557628 416338411 523224741 527308039 191636924 821065301 799447841 570062571 680792005 405049293 761497189 935277548 982115378 346321860 141316281 895525441 375385334 875709436 393279787 504369512 305128589 664578910 538837351 199683423 876670212 996406921 784075425 278226861 302246261 636356115 660015224 855172849 527067845 976590916 169779270 612697006 778791157 885917681 875229048 821065301 746845355 706492763 728470514 915821834 255168237 729431290 52324404 442500 28905489 477707978 311613827 283991517 339716525 777109799 294199762 48961688 920265423 802089975 97120585 345120890 568741504 473504583 353887971 56647896 969865484 391958720 835837232 893003404 433512282 133870267 982355572 702889853 618701856 545802977 900089127 892523016 422103067 971426745 74902640 191516827 19898214 777349993 939841234 399765025 451046444 269579877 450325862 571263541 225744472 700367816 526107069 23861415 699286943 117657172 202306 245800671 420541806 325545079 343559629 629270392 679591035 379949020 549525984 219499428 875709436 695924227 300925194 485994671 263214736 964821410 130147260 746244870 547124044 224903793 159811219 201604975 528749203 78865841 282190062 249523678 723786731 407571330 613057297 362775149 277866570 464857599 897326896 426786850 309572178 73941864 909336596 373703976 429068693 571143444 549285790 104566599 357370784 473144292 994125078 976590916 91115735 503528833 258290759 295280635 407931621 501006796 193078088 104926890 837758784 183830619 78505550 207729922 429068693 519501734 755852630 149843168 452487608 243398731 170499852 160531801 977791886 787438141 911378245 854332170 934436869 938640264 397122891 112012613 746004676 119939015 916662513 271501429 389796974 74182058 547124044 478188366 54606247 977791886 164374905 493440685 522624256 806773758 320380908 765820681 110691546 332030317 896846508 356049717 910777760 548925499 238234560 947167151 352687001 407931621 874868757 926630564 726909253 725828380 205568176 783715134 142757445 977071304 936958906 835597038 283030741 782994552 537276090 551807827 6447350 341638077 944404920 550967148 853611588 806293370 879912831 762097674 421982970 89554474 151764720 591680031 812418317 135071237 979713438 376226013 201725072 186833044 274383757 302246261 256008916 912098827 361333985 371662327 676588610 213374481 273422981 241837470 419581030 548445111 89674571 372262812 938640264 389436683 523464935 568020922 883275547 255408431 875349145 721504888 133149685 211452929 948007830 576427712 870305071 135551625 374784849 219139137 801849781 501847475 880153025 515298339 126063962 948127927 309211887 177585575 908495917 16415401 680792005 743002251 303086940 450205765 552768603 197881968 59169933 209651474 788038626 479869724 480109918 910177275 78625647 749247295 625907676 838839657 684995400 357010493 542200067 647525136 799808132 903932231 538236866 735436140 504129318 643441838 3444925 758254570 652088822 342839047 908736111 362054567 39834316 260332408 44398002 165215584 687037049 145519676 63253231 244239410 438196065 567540534 468940897 152845593 339356234 913900282 732073424 556131319 65895365 229227285 983556542 319780423 743242445 185031589 755132048 239315433 376346110 880873607 875349145 55927314 893243598 776389217 92196608 186833044 191516827 749127198 746244870 98801943 330589153 380789699 690519862 618701856 653890277 187433529 544361813 17616371 52084210 666980850 393399884 886037778 44398002 85951564 506411161 220940592 663377940 557932774 57368478 322782848 603449537 961698888 363255537 417058993 663017649 236553202 802690460 467379636 461855174 931794735 223822920 17616371 51844016 833795583 526947748 537035896 991002556 11971812 280148413 844244022 26383452 255768722 823707435 729551387 509533683 195119737 115975814 686436564 679350841 951250449 20018311 963980731 764739808 45598972 365417283 45839166 905853783 610174969 816381518 944645114 621584184 518420861 862859057 880273122 574386063 408412009 333591578 791641536 301285485 855893431 447323437 521783577 357370784 489117193 2724343 181548776 52444501 171580725 552528409 598765754 94718645 305368783 118497851 324824497 961939082 59890515 6927738 360973694 360853597 988840810 289756173 657493187 421862873 769063300 797286095 528869300 380909796 111051837 449485183 335152839 896125926 128585999 673826379 89914765 344400308 51603822 64334104 331910220 179387030 447083243 603929925 115255232 259852020 264415706 285552778 823467241 663017649 926750661 214455354 76223707 949328897 723306343 521663480 528148718 826469666 388836198 297082090 410093367 634674757 122220858 966502768 124142410 526107069 278587152 998448570 563096945 789239596 839320045 277626376 675387640 596123620 7047835 846525865 231869419 340917495 77544774 963620440 578229167 24942288 501367087 602368664 237754172 863459542 567540534 860337020 28305004 141676572 294680150 847126350 351606128 788639111 629990974 905013104 400965995 331910220 105647472 858535565 378868147 115375329 666740656 171941016 563697430 248322708 83789818 422463358 311974118 159691122 858055177 219379331 851329745 335993518 38513249 673586185 414657053 778070575 516379212 758134473 63853716 508933198 308971693 564297915 233310583 269339683 436634804 103966114 560935199 855292946 684394915 24221706 135911916 851930230 375505431 291437531 565378788 886277972 989681489 466058569 138193759 886638263 206889243 611255842 505570482 449124892 359172239 274623951 200283908 239435530 548204917 968184126 661336291 791761633 898167575 351606128 203646624 67816917 609694581 414777150 328187213 438196065 20738893 197281483 546283365 669743081 37552473 985478094 854212073 71900215 427507432 771585337 725828380 271021041 81748169 911618439 590599158 318939744 334672451 989081004 542320164 724507313 409733076 535594732 589278091 420061418 91235832 985838385 319179938 859256147 135071237 772906404 888920106 3805216 727870029 926630564 921466393 274023466 401686577 930113377 658694157 580150719 164855293 681752781 973828685 628790004 925909982 227425830 951250449 513136593 724387216 627108646 442999945 74662446 57008187 573185093 319059841 693522287 245560477 463536532 114294456 738198371 70098760 15814916 761977577 418620254 743362542 226585151 716821105 867903131 125463477 153085787 442279363 692681608 67937014 174102762 785516589 719823530 327947019 254087364 312814797 623866027 740720408 727629835 258170662 496082819 138794244 246761447 154406854 834876456 807734534 749607586 604530410 494881849 585675181 527788427 23501124 192117312 815901130 199323132 730992551 227305733 593601583 178306157 561535684 392679302 961578791 557332289 63013037 584954599 615219043 64214007 902010679 264535803 80907490 839800433 2484149 887719136 535955023 435193640 469661479 842322470 416698702 410093367 17736468 464377211 583753629 472183516 938640264 818182973 2243955 920505617 31547623 323383333 122340955 323503430 343199338 350525255 917383095 855653237 678269968 81387878 196560901 238234560 828871606 157769570 954252874 774227471 403728226 369140290 324944594 185391880 176864993 19177632 44398002 891562240 989561392 316777998 657132896 215296033 473384486 401206189 371902521 618341565 975870334 468820800 916662513 727629835 736517013 872947205 631912526 685595885 543881425 275104339 611976424 368779999 165816069 453088093 558293065 485754477 651248143 986919258 223222435 315817222 813138899 133630073 513376787 936718712 417419284 940561816 405289487 704571211 639838928 829832382 985357997 209771571 294199762 483712828 853491491 364216313 548204917 797526289 261773572 79946714 363255537 308131014 504609706 561775878 336714100 835356844 639959025 298283060 753810981 518300764 309812372 899128351 506291064 158490152 752610011 671304342 581351689 39714219 86912340 25422676 845204798 159210734 152725496 99162234 346321860 727149447 714779456 736276819 29145683 778310769 367218738 132909491 663858328 315817222 778190672 89914765 17856565 804972303 551087245 253486879 57008187 842562664 359652627 280748898 83549624 808575213 270060265 805692885 141436378 790800857 350285061 488756902 733154297 547844626 374064267 70699245 835476941 408652203 66976238 75623222 229707673 211813220 969264999 461254689 429549081 798246871 144198609 677429289 490558357 858415468 683794430 684875303 534033471 115495426 991122653 99282331 207609825 159931316 558052871 952931807 934797160 131228133 660375515 898527866 658694157 159691122 448284213 488636805 668902402 964220925 950049479 850969454 305608977 641880577 654851053 172781695 17976662 100483301 799207647 158009764 130267357 153325981 987759937 49081785 760896704 517099794 508452810 365897671 618942050 529109494 484553507 867662937 897927381 322062266 190796245 259131438 431590730 424024619 443360236 23260930 856974304 799928229 469421285 806893855 597324590 320981393 464857599 355209038 828511315 94478451 556491610 586996248 135791819 383792124 333351384 72260506 967943932 90515250 483712828 129426678 998328473 254687849 219859719 238474754 627709131 287234136 249523678 543040746 671064148 994245175 489957872 250724648 581231592 656292217 731112648 600086821 427027044 454048869 351486031 450566056 747085549 66736044 182149261 270060265 862138475 434713252 41996062 486715253 694723257 916062028 148161810 926870758 281349383 4045410 295160538 893964180 747205646 206528952 231629225 888559815 752129623 201484878 569582183 506891549 968664514 958456269 924829109 35150533 689438989 719463239 370941745 264535803 917863483 749607586 100483301 466058569 393159690 969385096 608733805 731112648 308611402 474345262 459092943 669382790 18216856 244359507 392439108 807374243 542800552 573665481 260452505 877510891 670103372 122581149 231028740 47760718 298523254 149122586 347402733 263695124 89074086 343799823 831633837 904292522 422583455 454409160 174342956 407331136 351606128 731112648 943324047 941522592 783234746 18457050 477107493 554690155 235832620 368179514 931794735 759455540 119698821 717541687 342959144 348123315 916782610 446122467 199443229 266697549 21939863 981875184 304167813 113213583 97000488 813258996 389917071 363856022 603809828 703250144 742281669 792362118 960497918 380549505 711416740 362775149 484913798 646083972 328787698 423664328 225744472 910537566 837158299 535354538 167617524 599486336 615219043 994365272 339476331 184311007 576667906 702289368 722825955 184190910 412495307 949689188 376105916 887599039 253126588 263094639 18216856 82228557 798006677 174463053 200644199 399044443 113333680 315817222 67696820 189355081 771345143 45358778 42716644 427747626 65775268 937439294 637196794 178065963 922787460 231148837 309452081 114534650 668181820 52684695 154286757 911618439 374544655 638397764 9810066 867903131 377907371 407571330 608133320 907655238 531271240 807854631 742161572 130267357 367098641 945005405 564297915 938520167 809055601 933956481 724147022 806173273 49802367 496443110 937919682 638758055 705652084 712978001 961698888 648485912 353167389 744803706 83069236 130627648 380789699 657493187 455850324 776028926 270660750 522143868 276785697 650287367 206408855 789239596 636115921 129066387 570783153 918584065 621584184 651248143 803771333 537636381 464377211 298523254 691480638 530550658 982835960 131708521 957735687 805812982 163774420 752369817 748526713 767742233 687997825 228266509 511695429 583993823 1163082 966022380 700728107 424264813 377306886 695443839 939000555 357610978 424865298 676108222 26383452 917503192 358211463 156688697 16535498 302486455 958696463 706252569 763178547 873667787 350765449 453328287 838719560 76704095 200884393 485514283 379588729 921106102 746244870 472904098 637797279 873067302 663978425 257209886 957015105 508212616 655451538 481911373 129066387 939601040 605851477 961458694 715740232 365056992 735436140 767261845 64334104 337314585 496923498 608013223 253727073 83069236 564177818 723426440 370461357 854692461 976711013 682833654 877390794 840641112 843523440 809896280 442759751 936598615 153325981 407811524 373343685 348123315 319900520 336834197 678750356 932395220 841001403 622544960 35630921 149242683 634074272 440237714 838239172 210852444 35150533 52684695 742882154 257930468 590599158 185752171 608013223 95559324 519501734 471583031 397122891 865501191 545322589 915821834 823347144 771104949 847486641 625066997 451286638 194519252 334312160 319780423 508693004 664819104 832354419 815180548 296121314 319900520 344280211 41996062 600447112 897927381 42236256 883996129 891201949 256489304 832114225 913179700 339356234 263935318 829952479 376226013 340196913 224903793 915101252 739039050 737838080 698926652 666140171 677068998 80907490 165215584 99162234 565979273 594682456 621223893 522624256 455129742 602368664 659414739 880393219 764739808 231989516 918463968 972988006 941042204 719102948 101444077 909937081 878351570 405889972 663738231 481671179 12091909 182629649 849167999 733514588 658814254 502207766 464857599 340317010 506531258 411534531 761617286 289876270 273543078 501126893 865260997 140475602 923628139 292638501 505690579 627589034 425705977 574506160 181428679 12572297 691961026 617500886 779151448 555530834 476627105 70699245 363615828 592040322 466899248 441678878 293959568 956414620 162693547 60971388 984757512 67456626 425465783 419460933 374064267 936718712 38152958 582552659 873907981 645603584 496443110 773266695 70218857 342839047 814339869 454168966 646804554 600447112 27704519 530190367 987039355 202205460 880393219 377547080 243638925 605611283 754771757 155727921 420181515 987399646 933355996 313415282 270780847 971186551 550486760 336353809 744443415 820464816 201965266 399765025 366978544 247241835 14373752 65414977 456330712 893123501 109250382 171820919 332390608 202926042 838599463 906574365 810256571 300204612 564778303 117777269 866461967 856253722 264655900 745163997 224063114 376346110 320501005 510854750 286633651 170139561 202205460 81147684 205688273 331910220 557932774 276665600 29746168 344760599 811817832 909456693 727990126 990762362 5126283 530190367 984397221 317978968 538236866 360253112 353407583 503408736 482391761 554930349 452007220 252886394 127745320 424865298 756693309 651128046 987639840 628189519 505810676 328907795 278106764 10890939 736997401 631312041 42836741 227786121 694723257 870665362 90515250 11611521 121500276 707333442 555290640 93157384 412014919 454769451 991482944 709375091 11371327 199803520 643561935 486354962 368659902 280989092 28785392 937679488 584594308 909937081 239915918 537516284 607893126 416818799 984397221 979473244 902971455 941642689 335152839 337314585 577148294 729311193 681032199 799688035 914260573 222261659 636476212 834035777 652329016 843283246 192837894 724507313 659414739 382831348 271261235 822026077 774107374 159931316 688958601 302726649 748286519 887358845 750808556 603329440 894084277 405289487 136032013 293359083 202325557 503168542 18336953 568861601 174823344 358691851 412375210 68417402 379108341 480230015 976470819 90154959 561775878 853371394 791761633 759575637 752489914 141076087 18216856 738558662 53765568 930353571 847006253 701448689 881474092 206408855 219259234 152845593 676948901 162213159 305849171 733154297 164254808 340917495 624586609 963260149 494041170 323983818 601287791 643561935 972988006 999529443 417779575 996166727 591319740 863819833 653409889 567780728 871385944 623986124 711416740 117416978 653890277 18096759 980554117 211092638 611976424 721865179 326265661 82829042 101804368 482992246 431590730 439517132 887478942 990041780 825628987 303086940 944284823 263935318 168097912 767381942 325665176 612817103 484673604 278947443 462455659 89554474 967343447 287594427 374664752 526707554 152245108 512416011 673225894 927110952 199563326 431350536 98081361 198962841 29385877 89434377 476026620 264175512 501246990 601888276 599966724 159090637 1283179 141676572 991242750 229827770 44878390 678149871 82468751 390037168 920865908 306089365 874388369 835957329 873427593 709855479 735075849 728470514 599486336 57728769 741921378 272822496 894684762 360733500 674186670 245440380 448404310 314976543 675507737 569341989 642120771 631071847 384752900 366257962 901650388 824428017 193318282 471583031 259491729 456931197 920625714 488636805 858055177 798487065 424264813 957375396 68417402 587596733 984997706 342238562 773146598 685836079 738198371 593601583 742401766 205808370 473744777 157889667 872106526 508572907 181909067 431590730 879192249 64934589 274503854 64454201 201364781 639838928 839199948 16055110 704331017 777950478 371662327 789119499 801129199 842322470 163774420 793563088 656532411 89554474 874868757 292278210 220220010 385833773 960137627 17736468 505450385 265976967 612576909 7047835 247962417 465458084 335272936 700127622 369020193 3805216 506531258 639238443 42356353 979713438 740960602 308371208 122100761 279668025 277626376 290837046 914861058 62172358 855773334 684515012 565739079 36111309 257209886 664458813 93637772 413335986 876309921 998808861 912339021 292518404 222141562 388716101 934436869 325905370 14493849 484193216 652329016 387875422 731833230 275224436 476026620 260812796 452727802 662537261 49081785 556011222 974789461 3925313 362294761 26863840 335873421 294920344 139394729 688598310 758734958 519501734 464257114 478788851 706732957 777349993 612817103 719343142 857694886 260572602 364216313 366618253 499445535 687037049 59770418 433632379 754651660 525986972 521903674 935277548 518060570 518661055 882554965 862859057 968784611 218178361 394600854 229107188 504849900 966262574 996767212 292998792 993164302 106848442 845805283 556251416 962299373 816621712 52204307 350164964 588917800 640439413 801969878 737838080 256249110 195840319 533793277 22059960 639118346 41275480 353647777 860216923 711296643 547003947 958456269 801369393 890961755 49562173 681392490 375745625 366498156 886518166 456570906 240636500 667100947 254928043 676348416 235112038 36711794 685595885 153926466 100963689 135191334 375745625 769303494 193798670 625066997 145639773 200163811 129186484 903211649 918824259 734355267 482872149 23140833 401686577 952931807 428708402 479629530 862859057 378627953 609214193 431710827 757533988 657132896 459933622 431230439 27224131 331790123 363255537 580270816 478788851 740720408 194759446 887719136 134831043 198002065 985598191 99282331 768462815 706372666 975389946 408892397 849648387 832714710 902010679 932755511 877751085 777229896 869704586 53405277 113934165 268258810 284111614 162093062 401326286 668301917 331910220 677068998 849047902 855172849 196801095 501847475 697845779 988240325 554329864 980313923 610775454 143117736 874508466 181668873 493440685 403488032 894324471 149242683 118377754 482992246 598765754 767021651 66615947 552048021 553008797 476266814 578229167 618821953 348123315 867062452 70338954 458132167 737838080 153205884 868383519 714058874 1163082 845444992 212533802 788398917 424264813 66375753 593721680 584834502 719823530 389076392 758374667 223102338 17496274 109370479 600807403 859496341 915941931 506291064 993884884 942843659 138794244 321581878 473624680 145639773 765580487 938039779 669743081 131828618 67456626 161852868 79466326 878952055 61451776 606812253 611135745 988480519 812778608 549405887 400005219 320501005 449845474 924949206 955934232 880153025 632152720 660615709 77905065 704691308 37312279 226705248 978992856 133389879 261533378 705051599 599966724 678390065 5606671 470742352 372863297 289996367 836437717 87993213 659174545 778190672 112252807 494401461 684154721 508572907 713818680 842322470 945846084 509413586 517580182 300204612 297202187 778791157 520462510 106608248 755372242 648005524 266937743 968784611 125463477 930113377 262854445 596243717 353407583 945125502 968784611 751649235 182989940 867182549 634914951 403367935 357370784 776749508 925549691 436754901 478548657 61932164 736276819 174583150 415858023 12091909 642240868 832114225 876069727 286393457 941282398 416698702 403608129 309331984 851449842 696164421 823827532 55206732 479869724 576547809 390397459 657733381 355569329 153446078 193078088 553369088 643922226 393760175 48721494 229587576 974309073 124022313 625307191 348243412 86672146 163534226 486835350 325184788 679110647 231989516 318099065 265736773 693522287 8849290 57248381 549405887 761256995 564297915 592160419 943083853 25782967 464617405 572704705 549165693 344520405 580751204 187553626 350405158 661936776 165455778 267177937 930713862 784796007 186472753 830913255 786957753 967343447 8128708 803050751 37432376 170259658 22059960 666860753 73461476 878351570 652329016 294920344 702529562 878591764 674426864 829472091 784675910 138193759 320140714 260092214 176264508 403968420 518060570 612336715 715500038 760056025 621944475 691480638 586876151 107569024 483592731 546403462 534874150 832954904 842922955 457411585 144678997 250964842 399765025 620022923 570182668 133389879 968664514 842442567 928311922 261173087 140115311 579430137 910297372 808455116 916182125 322062266 454168966 794403767 580751204 79706520 537636381 406610554 740240020 607893126 974429170 462575756 75743319 981394796 464377211 169058688 369260387 237273784 146240258 389676877 544722104 942723562 173502277 189234984 327466631 348243412 237634075 358811948 198602550 893003404 236913493 5246380 588917800 676228319 59770418 475185941 663017649 939120652 589398188 610295066 862979154 778190672 3204731 697365391 513376787 979833535 166176360 98201458 53165083 924709012 60611097 668542111 765220196 570062571 756212921 894084277 752249720 474345262 705531987 437115192 444321012 620263117 893723986 821785883 284592002 508572907 923508042 772305919 512295914 808935504 669382790 791761633 100002913 530670755 318459356 928552116 122821343 273663175 68177208 121860567 514938048 788158723 787077850 129426678 27704519 424865298 649086397 353047292 240996791 617140595 49562173 795004252 616900401 275704824 371061842 683434139 345240987 556371513 677189095 138914341 874748660 345361084 360012918 736156722 863459542 625307191 815060451 101564174 369500581 3204731 557572483 928071728 433752476 726188671 893363695 709134897 394000369 496323013 252045715 984277124 647284942 862738960 85471176 525146293 629510586 195359931 853851782 832114225 271381332 836677911 664578910 310412857 583393338 840761209 144078512 933956481 632392914 39954413 619782729 870184974 374304461 964341022 687637534 602008373 166896942 263695124 709014800 40434801 231148837 182389455 2724343 59890515 580991398 359412433 717781881 827550539 790680760 41635771 713458389 754531563 400725801 155247533 579430137 692681608 28184907 608133320 861537990 709254994 357971269 928432019 855172849 929152601 994485369 711536837 101684271 255408431 312094215 852170424 269820071 195239834 991242750 754411466 174583150 801129199 752249720 78265356 342718950 155487727 136032013 333951869 358571754 604890701 958696463 833795583 705892278 607652932 275704824 327346534 962539567 216737197 273182787 539798127 978032080 855773334 408652203 710576061 945725987 267778422 664218619 828511315 858655662 497163692 321221587 211813220 670223469 122941440 765580487 518781152 446963146 346321860 99282331 130027163 555050446 83189333 958336172 80667296 985838385 978272274 65655171 295040441 673345991 924588915 855052752 952211225 368539805 777470090 658574060 49081785 296721799 372623103 803891430 458612555 22420251 667100947 937319197 621824378 356410008 895645538 5366477 259611826 59049836 955093553 996767212 754291369 589998673 15094334 46559748 166056263 305008492 210492153 66135559 607292641 649446688 155607824 584354114 222261659 844364119 867302646 447683728 400365510 129426678 261533378 901410194 412615404 224543502 318099065 656412314 267538228 570542959 85230982 668542111 907655238 194879543 893003404 556851901 280148413 280508704 497884274 543881425 333351384 464377211 861778184 503048445 590599158 677068998 314616252 250724648 970706163 963980731 908736111 908495917 338995943 178786545 466298763 386073967 636836503 795124349 492960297 61571873 526947748 196921192 949328897 330949444 367098641 139034438 753690884 158370055 73701670 787077850 426066268 612456812 470622255 85110885 893603889 84990788 746725258 135071237 623505736 605731380 13773267 611496036 197761871 661096097 307290335 487555932 36231406 547124044 510494459 41875965 771104949 155848018 192357506 641039898 969385096 492239715 105887666 956654814 324944594 838239172 524665905 142397154 889160300 272822496 206048564 295040441 849888581 402407159 3084634 230308158 274143563 449244989 641159995 397002794 487315738 448884698 347162539 525026196 161012189 357130590 511815526 646684457 578829652 620263117 312574603 335633227 655211344 642240868 76944289 531391337 927831534 703610435 395561630 323863721 909456693 435313737 399765025 296121314 678149871 300685000 561535684 806413467 264775997 160171510 374064267 213614675 424144716 18817341 770024076 246401156 482631955 822266271 700728107 749847780 535594732 626388064 573064996 280028316 568261116 529709979 746845355 216617100 682473363 52324404 804491915 751649235 657973575 895285247 729791581 593721680 481671179 737477789 132429103 598525560 302366358 370941745 125223283 93877966 970105678 362174664 157529376 308131014 302006067 94958839 638758055 466779151 546523559 729311193 53525374 554690155 917142901 288795397 805332594 806293370 877150600 486715253 763899129 527067845 210372056 856974304 544241716 643201644 138914341 839199948 283751323 543401037 427387335 225143987 794043476 255528528 733514588 957375396 662897552 432431409 689679183 821425592 287834621 379468632 103725920 945846084 183590425 204727497 936358421 753330593 393760175 436634804 833195098 52804792 400965995 161372480 698806555 837158299 913660088 848327320 700728107 252285909 857694886 253126588 439156841 803290945 152845593 751168847 194759446 925789885 484193216 143237833 302606552 180948291 802330169 255168237 603449537 780832806 217577876 928071728 920505617 103125435 16895789 411174240 890841658 448644504 62652746 275224436 289996367 686076273 481070694 669743081 683914527 525266390 134710946 636236018 829231897 738798856 998328473 321101490 877751085 506651355 223462629 484553507 14974237 923147751 537155993 634074272 781673485 56647896 533192792 77905065 420782000 667941626 385353385 964461119 196680998 264655900 159090637 20979087 746004676 454529257 700127622 275464630 934076578 860457117 525866875 808335019 353527680 566699855 840400918 557452386 482872149 480350112 275824921 533673180 277746473 739759632 171220434 718622560 615699431 413576180 497523983 596483911 731352842 672865603 794884155 963500343 936598615 37192182 979833535 881594189 717301493 537516284 915461543 203166236 743362542 316177513 675988125 199803520 576908100 151284332 441198490 577028197 826469666 704571211 316417707 293118889 5486574 657252993 839800433 945365696 236673299 66976238 427507432 723666634 458852749 51964113 511094944 448884698 410693852 962539567 638277667 729070999 94478451 901770485 886398069 45598972 84030012 552648506 877510891 927711437 163173935 633353690 201484878 67336529 790560663 52084210 11971812 166416554 132669297 695804130 731472939 307770723 619662632 62892940 279427831 179146836 266577452 469181091 270420556 88713795 849408193 842562664 211573026 128105611 820584913 525266390 224303308 479029045 230308158 711777031 148882392 71299730 915221349 371422133 367098641 574386063 639959025 750808556 916662513 640559510 664578910 369260387 773626986 87392728 633713981 751769332 694002675 978872759 882194674 531751628 61571873 711056449 187553626 99042137 208330407 900329321 235112038 727990126 63853716 77905065 400605704 796925804 724987701 488636805 533673180 779271545 395561630 449605280 93637772 232349807 554329864 982475669 715259844 627829228 877390794 807374243 521783577 546043171 94838742 648125621 167137136 635635533 826469666 297682575 931434444 220700398 137833468 57128284 178065963 264535803 412495307 508813101 665299492 896846508 108649897 495842625 554690155 707333442 506291064 417539381 600567209 843643537 579310040 847606738 631432138 359772724 148281907 455730227 532952598 802810557 175543926 819504040 507612131 770624561 416818799 795724834 92797093 202205460 292638501 945605890 433872573 448044019 445521982 102404853 152365205 321221587 917863483 753690884 598525560 615819528 728230320 964220925 493800976 265976967 222862144 776989702 379949020 921226199 878711861 884236323 978632565 34189757 287714524 6327253 732073424 626988549 290116464 499205341 767862330 101444077 71299730 772906404 622424863 897807284 100363204 963620440 514577757 316297610 138914341 144438803 595643232 372863297 740600311 550366663 707213345 512896399 706252569 945125502 648125621 347522830 89914765 120539500 145399579 900569515 278226861 42596547 340677301 6807641 280388607 946926957 939841234 968664514 853251297 237874269 364696701 460774301 908856208 414657053 417419284 930353571 543521134 701688883 825989278 498965147 759215346 460293913 119098336 874268272 497764177 826589763 781433291 306809947 484193216 721264694 609814678 326746049 257329983 583153144 276545503 714058874 484913798 834275971 238594851 64814492 306449656 461735077 253486879 464737502 401206189 354248262 355329135 593961874 551567633 82348654 65174783 334912645 311133439 838119075 305248686 746845355 645363390 929993280 352206613 910537566 451406735 208330407 78745744 702649659 103966114 608133320 68057111 685836079 88593698 224663599 696164421 18577147 358211463 396762600 768582912 169178785 717061299 294439956 633713981 789960178 510494459 407691427 422823649 632032623 752970302 940441719 488396611 137473177 435193640 652449113 372623103 672505312 625547385 514577757 137833468 450325862 895645538 508693004 945605890 884236323 42956838 296361508 221901368 631552235 320621102 840280821 9449775 121380179 489837775 283871420 430509857 96760294 514097369 301525679 426186365 823707435 607893126 98922040 231268934 187673723 487555932 122941440 233670874 72500700 229707673 132789394 490318163 424384910 439397035 265016191 396762600 217577876 245800671 719463239 836557814 64334104 590358964 522143868 622064572 403247838 666860753 276545503 357731075 20858990 569101795 567780728 993044205 665659783 361333985 331189638 498845050 943564241 266937743 399765025 677549386 410813949 648846203 205327982 205808370 792362118 618942050 118257657 446482758 690760056 544722104 828991703 47520524 170379755 943083853 922907557 851329745 507492034 343319435 656172120 585795278 664699007 691840929 954132777 201124587 565018497 524065420 971306648 777950478 663978425 397603279 48481300 954372971 245680574 808455116 584834502 680792005 311493730 897687187 71299730 587236442 385713676 333351384 785156298 878831958 429909372 650887852 2364052 961218500 122100761 505690579 879672637 377787274 9810066 575707130 298883545 787558238 790560663 498004371 711296643 975510043 33228981 729551387 544481910 628669907 613057297 130267357 342238562 151884817 742521863 442519557 763298644 830913255 788879305 993404496 516619406 124022313 260452505 131108036 936478518 524425711 672024924 884836808 510494459 522263965 290596852 369620678 831033352 920745811 336954294 822626562 860577214 786117074 625307191 437355386 486715253 975750237 899008254 485153992 964220925 486475059 450325862 625547385 895525441 789359693 896966605 724387216 871986429 613417588 811817832 607532835 307170238 40194607 941522592 365297186 587596733 157889667 742882154 727629835 909576790 447323437 571743929 486595156 273182787 176864993 483352537 710095673 886878457 311733924 575947324 363976119 293959568 192237409 162813644 141676572 890361270 56888090 657733381 990522168 738198371 773026501 912459118 270180362 952211225 76223707 659054448 251205036 540038321 917623289 54846441 467499733 100123010 460053719 13653170 794884155 521903674 490438260 867662937 696284518 6207156 403247838 316057416 53645471 228866994 566219467 403968420 256249110 886157875 527308039 407811524 807494340 853251297 420782000 691480638 114174359 844844507 743482639 744803706 794403767 183830619 189475178 81507975 804251721 876550115 611255842 604770604 714178971 743482639 662056873 568741504 366618253 659775030 868023228 163534226 538477060 957135202 961338597 402647353 694603160 652929501 992804011 348963994 385953870 478548657 804251721 573185093 552168118 296841896 414777150 536555508 883035353 151764720 358932045 685235594 842442567 386674452 811577638 112132710 610295066 740119923 400965995 415257538 373463782 678870453 152365205 908976305 62892940 435073543 368059417 363856022 996286824 4285604 832354419 115735620 625066997 228866994 458252264 102404853 760056025 319780423 436274513 494161267 865381094 996286824 117897366 868984004 163774420 513256690 954733262 241597276 346201763 119939015 498124468 593481486 181308582 634794854 98561749 378748050 433272088 386434258 681632684 695804130 562976848 577388488 115255232 860096826 171220434 841842082 569462086 964220925 344280211 858775759 844844507 793923379 42236256 384392609 959176851 298523254 987159452 418980545 889880882 155487727 518420861 403007644 319300035 108649897 815781033 350645352 851209648 401086092 263815221 645003099 362655052 714779456 637797279 691600735 878111376 580270816 8248805 257329983 595763329 20979087 317378483 214815645 228746897 771705434 177705672 674186670 799207647 920145326 789719984 6567447 452367511 312334409 430509857 746124773 166896942 550726954 657132896 58329254 538356963 235832620 486354962 850729260 106728345 954733262 566579758 589037897 870905556 728590611 380909796 515778727 148522101 409252688 223222435 557452386 808214922 859136050 532472210 599846627 981634990 993644690 213974966 92797093 582912950 886638263 828391218 506170967 26503549 206168661 723066149 237033590 268979392 855893431 699166846 179026739 560695005 926150176 847486641 303327134 666740656 220460204 362655052 815901130 17135983 281949868 637677182 697725682 253486879 358331560 660375515 868743810 521543383 559974423 460654204 200884393 88233407 340917495 774587762 789119499 865140900 664338716 357731075 279187637 726308768 960738112 284712099 94838742 940922107 669262693 199923617 132789394 169178785 845685186 474225165 849288096 432431409 253967267 291797822 97600973 256609401 836798008 274143563 246881544 255528528 384632803 752850205 337314585 917983580 870665362 355929620 893003404 329988668 99762719 106368054 310653051 245440380 279668025 567420437 244599701 230788546 376826498 737838080 585434987 150563750 221060689 940081428 288315009 213374481 549165693 21099184 60491000 72981088 983796736 540758903 408652203 55446926 565979273 487555932 832954904 910177275 126784544 333831772 535594732 555771028 195119737 843643537 120779694 51844016 874868757 162453353 844003828 983916833 227545927 768943203 468820800 646684457 333951869 184190910 35270630 853971879 734595461 75983513 280508704 304408007 39714219 74542349 369620678 647044748 843883731 22660445 243038440 468700703 422463358 785396492 693762481 855773334 185872268 106488151 787678335 488156417 712978001 834876456 630231168 696164421 109370479 471583031 809656086 853251297 197041289 207369631 201604975 361934470 455970421 978752662 229107188 659414739 375625528 492479909 279908219 237754172 186472753 518060570 231749322 442159266 128465902 718382366 313175088 974188976 374184364 579910525 334672451 562376363 388235713 472663904 70218857 126784544 810857056 193198185 172661598 63493425 683794430 511815526 30466750 312934894 830913255 526587457 732914103 45719069 988720713 519141443 454769451 835236747 183230134 259011341 400725801 475185941 766301069 478308463 210732347 214335257 348123315 720664209 830072576 783715134 46079360 818182973 35991212 975750237 402767450 304768298 971186551 975029655 8128708 403848323 573905675 517099794 435914222 290957143 987880034 413215889 310052566 247001641 80547199 329868571 927231049 718742657 978752662 286993942 110451352 191156536 907054753 708894703 603569634 22660445 231028740 576307615 417899672 884356420 434112767 82588848 992203526 589398188 370101066 109130285 713458389 751769332 827070151 177225284 178306157 302006067 202565751 115855717 732073424 942483368 47640621 912579215 480590306 353767874 685715982 419581030 720303918 395321436 134590849 327947019 186112462 301885970 713218195 222742047 7167932 869824683 922787460 266697549 209291183 865140900 589518285 777229896 943444144 557932774 400365510 139514826 899248448 140475602 305248686 257570177 496443110 898768060 639959025 905853783 128345805 798847356 812178123 512536108 720664209 32628496 35270630 965782186 128345805 107569024 726669059 604290216 808695310 249883969 233430680 425585880 428228014 718262269 246881544 627348840 307650626 907895432 236673299 327947019 877030503 448044019 359772724 201725072 299484030 455009645 112853292 100002913 370221163 813258996 388475907 119698821 590479061 341758174 17256080 902491067 929152601 62652746 42596547 760296219 659534836 646083972 185992365 483832925 33228981 422343261 651488337 813138899 418620254 532952598 840040627 966382671 1643470 170619949 862018378 655931926 793442991 696644809 354968844 15334528 459573331 204967691 170980240 597204493 807013952 185031589 613777879 924108527 980914408 277626376 307170238 401806674 942002980 497764177 618101371 699166846 459213040 505570482 790800857 134110461 741320893 153446078 136872692 373463782 575947324 682713557 307290335 139394729 103605823 144558900 380429408 98081361 148281907 371422133 40434801 33949563 52084210 828751509 879072152 49682270 94838742 367939320 883155450 773747083 236553202 562856751 926750661 884716711 74061961 626868452 578109070 775908829 256369207 566459661 779751933 567900825 421142291 40074510 794884155 394480757 49682270 343559629 727029350 806533564 894444568 650167270 580991398 752970302 585074696 519261540 818182973 687757631 792842506 946926957 113333680 524185517 773506889 412735501 413095792 968664514 859256147 424264813 893844083 81628072 297562478 321942169 156088212 122821343 578109070 175543926 981755087 798487065 945365696 558172968 11491424 629030198 614138170 821905980 735195946 63253231 409372785 636476212 423784425 664699007 5366477 867302646 762818256 681632684 518420861 471342837 947407345 303687425 237994366 323983818 673586185 675507737 45719069 829111800 431470633 776149023 703970726 204247109 620503311 584234017 426546656 999289249 352687001 660735806 865981579 455970421 520582607 497163692 141796669 108890091 369740775 995686339 894564665 52564598 410093367 185151686 957855784 761737383 189355081 973948782 162693547 914981155 355809523 163294032 431350536 779511739 95919615 384152415 605250992 342959144 698926652 807614437 889520591 544722104 107689121 589758479 381149990 381630378 957135202 717661784 840400918 349444382 409612979 834636262 342959144 374304461 789599887 417779575 442159266 787438141 511215041 302846746 790920954 585795278 904292522 212773996 618942050 37312279 420181515 907054753 374064267 671664633 629150295 154767145 378027468 227786121 815901130 399044443 968064029 383551930 499325438 259251535 497283789 817702585 593361389 197281483 774107374 33469175 258050565 774347568 33949563 88713795 611616133 917503192 169298882 350525255 875949630 32268205 349684576 969144902 469781576 213134287 191997215 125463477 632873302 843883731 134951140 315096640 603329440 989801586 899248448 999769637 60130709 100843592 390397459 587957024 240996791 135071237 796565513 948488218 850729260 188394305 498724953 879552540 482271664 948248024 802570363 615579334 472423710 395561630 577388488 578589458 705411890 442500 667341141 529349688 458132167 532352113 527308039 373824073 653409889 27104034 296841896 294319859 444681303 483953022 734475364 309331984 238714948 532352113 571743929 614618558 30106459 516619406 42356353 803170848 79466326 944885308 922547266 920385520 164134711 266457355 272582302 732193521 138073662 812658511 440357811 828991703 295400732 473024195 277866570 907655238 260092214 397483182 465818375 914260573 280989092 816021227 351005643 275945018 466538957 311133439 22059960 331790123 771345143 62172358 390637653 528148718 880753510 437475483 414056568 266337258 477828075 849167999 76343804 103005338 522864450 933355996 475906523 737117498 116456202 895405344 346682151 471222740 859256147 745644385 999529443 450686153 741921378 621343990 898768060 577628682 481310888 752009526 694362966 641880577 113573874 808094825 519501734 560334714 14013461 378507856 41395577 770264270 403728226 304167813 397843473 845204798 524065420 549285790 731232745 590358964 458372361 332270511 984877609 365777574 975149752 186472753 8128708 909216499 963260149 218298458 191997215 599966724 825989278 777710284 403968420 523344838 837518590 153325981 15334528 8008611 431951021 228506703 504489609 26143258 289155688 596243717 986558967 691840929 251805521 897206799 585434987 200404005 662657358 922888 877991279 522864450 871385944 857334595 127505126 585795278 391238138 252646200 151164235 216497003 63373328 918463968 177705672 242918343 748286519 531271240 874028078 602849052 711296643 283751323 38513249 91956414 827670636 57608672 631432138 879552540 639838928 796325319 61932164 854091976 640199219 362174664 40434801 231028740 841601888 917503192 312094215 308371208 52324404 372262812 139755020 139995214 488276514 253366782 686436564 925669788 549405887 512776302 702889853 695563936 341397883 565618982 593601583 815300645 648245718 241597276 655091247 65655171 738438565 433392185 652329016 844484216 719823530 915341446 556851901 827190248 363255537 722946052 136632498 840881306 264055415 675147446 446963146 845084701 447083243 918704162 444681303 907294947 25302579 441678878 541599582 883275547 644402614 35150533 539077545 113453777 144438803 497644080 358691851 645483487 977791886 506291064 94838742 415017344 969385096 685836079 943804435 1763567 300084515 168938591 849408193 372022618 490318163 652208919 659654933 387875422 375265237 663978425 157769570 273182787 222621950 631432138 250604551 536195217 886998554 614978849 668061723 33949563 444561206 562256266 386554355 183110037 169779270 28184907 838959754 341758174 252766297 853971879 487555932 23260930 190556051 799688035 245080089 22420251 131948715 886157875 223222435 233070389 599606433 519261540 155487727 659414739 463536532 954613165 430629954 506651355 439757326 77424677 436754901 4285604 435553931 422463358 996406921 349084091 299724224 95199033 819864331 61812067 341758174 373343685 812898705 951971031 962539567 102885241 57848866 259852020 85471176 460774301 774948053 969745387 756333018 403488032 508452810 31907914 576667906 334432257 15214431 451767026 612697006 450325862 560574908 330469056 990041780 443840624 335873421 61211582 741561087 545082395 695563936 254087364 632272817 918463968 897206799 247121738 231989516 606932350 181788970 34309854 862258572 344640502 116216008 195840319 715500038 243999216 368059417 997727988 597804978 174102762 379708826 397483182 424144716 447203340 434232864 610054872 785036201 658213769 978032080 552048021 697245294 807494340 788639111 140115311 52324404 779391642 166896942 341037592 677669483 480470209 103485726 162093062 530070270 988360422 29746168 74422252 306209462 9209581 187193335 122581149 54125859 853851782 321341684 356049717 362895246 684995400 298042866 914140476 281469480 76583998 937559391 569582183 571623832 968064029 175664023 86552049 727029350 601167694 642601159 538356963 70218857 825508890 976110528 725828380 281829771 79826617 431470633 791161148 782514164 963620440 964941507 695563936 756933503 914260573 127024738 292158113 685235594 399044443 986078579 216497003 367458932 993764787 233430680 597204493 817822682 328067116 756333018 32748593 530550658 474945747 196680998 275464630 544842201 796805707 855172849 41996062 880753510 881233898 229227285 815060451 607412738 987039355 867542840 230548352 705772181 778550963 470021770 650887852 282790547 899848933 548325014 824428017 401806674 766661360 394480757 92196608 766781457 412375210 326025467 962059179 519621831 694122772 894684762 939601040 755132048 840400918 750688459 492840200 627709131 473384486 55807217 496443110 698926652 947167151 164014614 21339378 199082938 946446569 593241292 606932350 78985938 226465054 135791819 695203645 542800552 125343380 78505550 349564479 101083786 975630140 93397578 581111495 440477908 800889005 230428255 613057297 170019464 926990855 25422676 431590730 505690579 313175088 683314042 293238986 384152415 784555813 396762600 382350960 243518828 160531801 45478875 65414977 509413586 73221282 339476331 654971150 406970845 44878390 381750475 994485369 460293913 538477060 448884698 648365815 643802129 30947138 414777150 451046444 476266814 170860143 198002065 138073662 448164116 237513978 905013104 353167389 274023466 227786121 47400427 86071661 275104339 224063114 901890582 513977272 372142715 166416554 985117803 125823768 106968539 398684152 14133558 461374786 954132777 10530648 492720103 305729074 86191758 650407464 292758598 321341684 695563936 412135016 294439956 706132472 979233050 218658749 910297372 886277972 510734653 361333985 596604008 781793582 170019464 970946357 357971269 893363695 355209038 625907676 149482877 526587457 579790428 197881968 861537990 184431104 341037592 570182668 171220434 882675062 552888700 82708945 102164659 497163692 116936590 110811643 114054262 683674333 737477789 26383452 420301612 587116345 351125740 822146174 939480943 599366239 253246685 784435716 308010917 688838504 813979578 600086821 908976305 66375753 35871115 320020617 515058145 574506160 555891125 355449232 78745744 942243174 181308582 568741504 911738536 388956295 908616014 604170119 396642503 6567447 842082276 741681184 678390065 564418012 946686763 203166236 393159690 556851901 420541806 831633837 237153687 904893007 705051599 981394796 772666210 115975814 175063538 609094096 933596190 752129623 738678759 287834621 724507313 479149142 848927805 667821529 364936895 839920530 213494578 269579877 363856022 814580063 141196184 195960416 721985276 479869724 920986005 483953022 839079851 738558662 265136288 896726411 31907914 798607162 6207156 543641231 568501310 37192182 487916223 125103186 234391456 700848204 85471176 225744472 481190791 899248448 579069846 776869605 813379093 952931807 460053719 662297067 25062385 166536651 457171391 647044748 426306462 625427288 484553507 767502039 179507127 679951326 593481486 148041713 690039474 437235289 685475788 678990550 597564784 935277548 53765568 579910525 454529257 910177275 582432562 50282755 582312465 53765568 315577028 634314466 828271121 133630073 94358354 793563088 375025043 708054024 621944475 632633108 671544536 998928958 639959025 469661479 794043476 108049412 333711675 789960178 579189943 874748660 831753934 592520710 976951207 640679607 646564360 633713981 5246380 502928348 815901130 625787579 70579148 875949630 957975881 281109189 568020922 329748474 222141562 721865179 398924346 293359083 5366477 721024500 277986667 21939863 734595461 827790733 572704705 584234017 966983156 982115378 545322589 386194064 495001946 485514283 318939744 850849357 562856751 675868028 762578062 662537261 17015886 50162658 445521982 149362780 219499428 799447841 63253231 378147565 885317196 519982122 965061604 642240868 946446569 762337868 697245294 654610859 887719136 38873540 680671908 516379212 415137441 668542111 958336172 864300221 667941626 871626138 433272088 945485793 561535684 722705858 179627224 310893245 717181396 636956600 30226556 39834316 343079241 323983818 514577757 742641960 703009950 155247533 840280821 660375515 449244989 568141019 659414739 345961569 501967572 81027587 105527375 748046325 443960721 38152958 462215465 570783153 121019888 587116345 305008492 674546961 365177089 741440990 474585456 492600006 477587881 286153263 120179209 356770299 104326405 294319859 498845050 281109189 994605466 948968606 703250144 140835893 146840743 498124468 498604856 95078936 332750899 92196608 989801586 785396492 168818494 263214736 541119194 511815526 277506279 721745082 485754477 701568786 597684881 307050141 999769637 565258691 968064029 338875846 788879305 298643351 313054991 442279363 153686272 856974304 671904827 858895856 479269239 182629649 259852020 678149871 334912645 967583641 148161810 720424015 966142477 404208614 632272817 149122586 111171934 82468751 211452929 387515131 145639773 991723138 73941864 879312346 869584489 902491067 323503430 273422981 90515250 708414315 552048021 842682761 475065844 21579572 176024314 842562664 583033047 888800009 168938591 614738655 223342532 672625409 223822920 531871725 28425101 419340836 958936657 333111190 722825955 148882392 731953327 440477908 919905132 642360965 132909491 254928043 223582726 24221706 996406921 498364662 94118160 38152958 138313856 771104949 645963875 13292879 970105678 208810795 694843354 550486760 150323556 560935199 522504159 343199338 928191825 527428136 97360779 140235408 834756359 748887004 607172544 856493916 168338106 100363204 201004490 742401766 656172120 818663361 722105373 567900825 55807217 928672213 964341022 896005829 197641774 768823106 748646810 22300154 314616252 831994128 132549200 583993823 303567328 370701551 266817646 743362542 250724648 250244260 573305190 471583031 476627105 921346296 286753748 968664514 831393643 416698702 15454625 463896823 161492577 116816493 965902283 704571211 505210191 191636924 520102219 637797279 33108884 375145140 902731261 218538652 556491610 224423405 765220196 655691732 228026315 155127436 78145259 209291183 668181820 890000979 263935318 253246685 952931807 813379093 526947748 934556966 255168237 726188671 920625714 439997520 361333985 184311007 332510705 891802434 298883545 843163149 772546113 551447536 303086940 241477179 308971693 479749627 912819409 294680150 126664447 91115735 815420742 664218619 984637415 910537566 245200186 86552049 783474940 131708521 653409889 312574603 98441652 358932045 756453115 439877423 215055839 831753934 656052023 685595885 982956057 591079546 949689188 29265780 545322589 800648811 453928772 858535565 462815950 445882273 539197642 640559510 10290454 422823649 694963451 166416554 982355572 268859295 412855598 409973270 825869181 826109375 495482334 450205765 877150600 823106950 329388183 815300645 201725072 482752052 589518285 882314771 417659478 823467241 349084091 130267357 16535498 656172120 583033047 705531987 442519557 532952598 830913255 865741385 206168661 551807827 143117736 812658511 437115192 241957567 471823225 417419284 685115497 761497189 332870996 332390608 401806674 504009221 584234017 212653899 423664328 87993213 809055601 626147870 731713133 279908219 40314704 530910949 216977391 19658020 598045172 978512468 820584913 658934351 668422014 162813644 406730651 959417045 112252807 381990669 864780609 461254689 490438260 893123501 676348416 787318044 840280821 220340107 55687120 527908524 428348111 891562240 643802129 834035777 789599887 239915918 607412738 489117193 614138170 637797279 1523373 233310583 574265966 540398612 419220739 183830619 182869843 244239410 59290030 526827651 768342718 512295914 972027230 711656934 73101185 993644690 743722833 272101914 760296219 35390727 843883731 558052871 711897128 22180057 877510891 624106221 124022313 248082514 462815950 870305071 236673299 711656934 692801705 728590611 900329321 802450266 274023466 636356115 392679302 401446383 165335681 507852325 390397459 837758784 721144597 797165998 638878152 492600006 292998792 868984004 532832501 614378364 580511010 62052261 788158723 160411704 580991398 968664514 355088941 994485369 272462205 757894279 822866756 968184126 140835893 247722223 706492763 965782186 133509976 587476636 756933503 127625223 977191401 26743743 258050565 750208071 165335681 188634499 571984123 642481062 470742352 341998368 53525374 982235475 567660631 495602431 251925618 251805521 587836927 634914951 93757869 621944475 988000131 9810066 682713557 993044205 133509976 74422252 704571211 996767212 836077426 363615828 321101490 821185398 231869419 805212497 875469242 408532106 654250568 118257657 460894398 330228862 670583760 840761209 371302036 976350722 77664871 219499428 351125740 88833892 198002065 340797398 14493849 913179700 528749203 49562173 561655781 952331322 335152839 539918224 679951326 92797093 423544231 292758598 291077240 287234136 814580063 144558900 316537804 644042323 773026501 973828685 113453777 455369936 409132591 145759870 313054991 201124587 53165083 376586304 234031165 456450809 390397459 123061537 376466207 894084277 549525984 511094944 240996791 523825226 239435530 888439718 653289792 54366053 454769451 134110461 482511858 80427102 649326591 962659664 155487727 585795278 176024314 4285604 972147327 463776726 590238867 994365272 57968963 223102338 264295609 373824073 591800128 743242445 675747931 589518285 678870453 291557628 162453353 210612250 928552116 95679421 941402495 518180667 676348416 170259658 10530648 167257233 422103067 596844202 731112648 743362542 734475364 599726530 591319740 567420437 739999826 663017649 385353385 26623646 30947138 942603465 396642503 22420251 750568362 523224741 477227590 857814983 170019464 412135016 554209767 430629954 5846865 697605585 857814983 244719798 58209157 230067964 928311922 427867723 398924346 257089789 708774606 164134711 967463544 22180057 729671484 452727802 527908524 995806436 94598548 684034624 241236985 770744658 91956414 392198914 172541501 788158723 322782848 54966538 755732533 716580911 686916952 109490576 114054262 453448384 121019888 201604975 472663904 890121076 99642622 353527680 504609706 372262812 58449351 553369088 690880153 907174850 153085787 102645047 129426678 611375939 625187094 593241292 633113496 255768722 616900401 38513249 467019345 342358659 44758293 323143139 137593274 519741928 510374362 236072814 53765568 509653780 870665362 354848747 182749746 443720527 129066387 112613098 258290759 944645114 493680879 382711251 827550539 120059112 444321012 849528290 99882816 485153992 853131200 64093910 681992975 20138408 476386911 550006372 935517742 880993704 168938591 168818494 61691970 533312889 212894093 638878152 269099489 630951750 37912764 762097674 859136050 619182244 343439532 257690274 107328830 358451657 860577214 569582183 803411042 44638196 555290640 509773877 817702585 636716406 963860634 163654323 492479909 118137560 537516284 282190062 636716406 679711132 394000369 128345805 518901249 284832196 759815831 819624137 97360779 185872268 865020803 82108460 52684695 122941440 985838385 607893126 235832620 629630683 99522525 118617948 370821648 459333137 937919682 133389879 858295371 159090637 150683847 889040203 491038745 39594122 295761023 485874574 45719069 88953989 491158842 364096216 186352656 220700398 351846322 97000488 518180667 460173816 20979087 238594851 230188061 938520167 217217585 569822377 501006796 110211158 657373090 906454268 978392371 643561935 634074272 910057178 63253231 566339564 679110647 878231473 230308158 361454082 786837656 17976662 294800247 661696582 185511977 101924465 60130709 64454201 321101490 694002675 397363085 824788308 726548962 818182973 601527985 629630683 144078512 492359812 487796126 875949630 156208309 977191401 496923498 723426440 112733195 303927619 45478875 223702823 584714405 163654323 259131438 635995824 384032318 252886394 734235170 513977272 6927738 519501734 48000912 425585880 582312465 70338954 422103067 275224436 807854631 154767145 601167694 101804368 708414315 644522711 628669907 880993704 392319011 365297186 508212616 306569753 843403343 929993280 182509552 854932655 851569939 645843778 868863907 110931740 353887971 442399460 87152534 341998368 667941626 438075968 697605585 947287248 597804978 64093910 248682999 661576485 26983937 274263660 202445654 360853597 408412009 87152534 684995400 446482758 439757326 69978663 535834926 468940897 373463782 404929196 137953565 64934589 836317620 370221163 104446502 156208309 68297305 471222740 737597886 96640197 659054448 484433410 316777998 864180124 925189400 422823649 159931316 453928772 732914103 554570058 156208309 576187518 672505312 891081852 507492034 131828618 575226742 868623713 904052328 831633837 746485064 478188366 933716287 623145445 214095063 395801824 139755020 144919191 690760056 742161572 543641231 423784425 916062028 152485302 567660631 780712709 660375515 492960297 448164116 26023161 249283484 629510586 705291793 447443534 743722833 958576366 482992246 365537380 76583998 778070575 390877847 394961145 801489490 369260387 766421166 384032318 68177208 516979697 774347568 269579877 278106764 121500276 3685119 222982241 739999826 88833892 280268510 862498766 788278820 399524831 92076511 466298763 772666210 634674757 135071237 384993094 668902402 341878271 186112462 821065301 231028740 342598853 935397645 868143325 944284823 219979816 757053600 968304223 142757445 307410432 300444806 747325743 170980240 237513978 788879305 945966181 69858566 705051599 166776845 937199100 103485726 720664209 388475907 386073967 753330593 7167932 917743386 659534836 106007763 354008068 295280635 764379517 652088822 899848933 112733195 427507432 418259963 340196913 398804249 578469361 600567209 498965147 151284332 115855717 616179819 747926228 949208800 955093553 897927381 616299916 79586423 621103796 268619101 992083429 390877847 918343871 103125435 734475364 712857904 284351808 471943322 247361932 562016072 952691613 404208614 341517980 594081971 307050141 599486336 86792243 468220315 641760480 216256809 25662870 899608739 384512706 526827651 836197523 989801586 778070575 180107612 858895856 187673723 255888819 692081123 757774182 981995281 942363271 667461238 802810557 959176851 686916952 981995281 588677606 211092638 836437717 785876880 665899977 103005338 151644623 43317129 34790242 244359507 548685305 926150176 902851358 51243531 651488337 586275666 19297729 175543926 441678878 917983580 376226013 462575756 603209343 169178785 190556051 699046749 858295371 456450809 991723138 44878390 686676758 887839233 409492882 771585337 546883850 70459051 39353928 347162539 832594613 658814254 639478637 406970845 652088822 657132896 665899977 75022737 836677911 995806436 517219891 987399646 358691851 334672451 493560782 186833044 439517132 959417045 614018073 131588424 86191758 693762481 768342718 403488032 840040627 814099675 946326472 437955871 786957753 741320893 271501429 804491915 436754901 327346534 989561392 985838385 893603889 648726106 128585999 289636076 836077426 180708097 616179819 397002794 880153025 878351570 890361270 936238324 991843235 214815645 152004914 752249720 740240020 691840929 780472515 121860567 188034014 221180786 341037592 45118584 41395577 990402071 41755868 654250568 643441838 729431290 320981393 696164421 307410432 282910644 607652932 620863602 923147751 165575875 94958839 514217466 3685119 286513554 843643537 507732228 577148294 678630259 276425406 891922531 340557204 808094825 312814797 528989397 148642198 652208919 214455354 269219586 646564360 504369512 550486760 472784001 975990431 347282636 822626562 334912645 657493187 360733500 342598853 942843659 327106340 939240749 662657358 908375820 250724648 945245599 56888090 505090094 713938777 786237171 736517013 78865841 75383028 982355572 473744777 888319621 690760056 917863483 572104220 640679607 275104339 141676572 816621712 268739198 683434139 261293184 159691122 583153144 420902097 502688154 354368359 810857056 512175817 842442567 237273784 676948901 104566599 164495002 963140052 270420556 213494578 755732533 124502701 948608315 370221163 951971031 606692156 36831891 378627953 487315738 899848933 930353571 804852206 287234136 931674638 973108103 594322165 244839895 364096216 230428255 1042985 181188485 122821343 817822682 642120771 939841234 581231592 770624561 102404853 530190367 699046749 950649964 739879729 687997825 609334290 427747626 8969387 464016920 593601583 636836503 489957872 721144597 488516708 781793582 145519676 86311855 828511315 263695124 686316467 995085854 127745320 936598615 914981155 745644385 93037287 472784001 210372056 445281788 286273360 374784849 307170238 861898281 367579029 124622798 675387640 825989278 752129623 366498156 12932588 871746235 30586847 155127436 426546656 531991822 115975814 666860753 191036439 41275480 656652508 797526289 772786307 408171815 402166965 369260387 820705010 115615523 453928772 298162963 442039169 135431528 124983089 140235408 767622136 748887004 118497851 3685119 256369207 257209886 971666939 302126164 417419284 867783034 670343566 520582607 558413162 306930044 196320707 68897790 64574298 669622984 653890277 711777031 227185636 106007763 278707249 790200372 940321622 63733619 856854207 83309430 477587881 518781152 990522168 69978663 979353147 60250806 744203221 44878390 939480943 96159809 442639654 271501429 432551506 588917800 276305309 659174545 705772181 217938167 641880577 823707435 703130047 220460204 445762176 335393033 953532292 924348721 271141138 509773877 943804435 734355267 989801586 71900215 833675486 807614437 173622374 397002794 870305071 70218857 177945866 574265966 722465664 332150414 374664752 425345686 335152839 538477060 45478875 705892278 637557085 873667787 875229048 902010679 756333018 618942050 46319554 823827532 471102643 44998487 455009645 71900215 396762600 848207223 259972117 571864026 756092824 845444992 685715982 199082938 645963875 947047054 703130047 220340107 350285061 42356353 727389641 627108646 700367816 313175088 927351146 267778422 700848204 353407583 718622560 783715134 74542349 548805402 984397221 713218195 926630564 28905489 28665295 457411585 800528714 972387521 886157875 368900096 30226556 272582302 187433529 844604313 643561935 958816560 556131319 152725496 127024738 26983937 22780542 277746473 463536532 807734534 513977272 51123434 146480452 100243107 898647963 264775997 227666024 826829957 767141748 148161810 403488032 874028078 316657901 280748898 403488032 571503735 157289182 131948715 856373819 804972303 161972965 471342837 311733924 329027892 930713862 461855174 371302036 322782848 267778422 215175936 712617710 939360846 830312770 171100337 603449537 950049479 937559391 115135135 906454268 934797160 413456083 488636805 873187399 191276633 23020736 328307310 297922769 36351503 783835231 615459237 723906828 912339021 153205884 988600616 647525136 628069422 79346229 458492458 279187637 177705672 367939320 571383638 800648811 303327134 576067421 391598429 957135202 323863721 53765568 311373633 874508466 486354962 77064386 959176851 832954904 901650388 176985090 680071423 657613284 87392728 119098336 723426440 357971269 828391218 2003761 452727802 583273241 478188366 878471667 820584913 40915189 575226742 253847170 224183211 907775335 687637534 80427102 613417588 651368240 972867909 785516589 582312465 146000064 373103491 624706706 459213040 50282755 885437293 416818799 749847780 170139561 936718712 168818494 380309311 966382671 406010069 487195641 531271240 46920039 81267781 745764482 599005948 134710946 285672875 21939863 883395644 576067421 686556661 391958720 414897247 790560663 800889005 297802672 421142291 280748898 509173392 220099913 944164726 921826684 172781695 759095249 228987091 311013342 517460085 589518285 818303070 758855055 361574179 941162301 550847051 109250382 296121314 966262574 913660088 612096521 213014190 485153992 971306648 540398612 60130709 964341022 308371208 31787817 586635957 974669364 472303613 93757869 31187332 812538414 860457117 105527375 349924770 46439651 618461662 55086635 628910101 669262693 369980969 178186060 312694700 799087550 570422862 822266271 958456269 928071728 827430442 302966843 38152958 991242750 300925194 979112953 126304156 182629649 230067964 877150600 922667363 834035777 898888157 409973270 861297796 769543688 353287486 958696463 46319554 90034862 179387030 54005762 295761023 346201763 47040136 201604975 940922107 713578486 908255723 705772181 43317129 975630140 104926890 149963265 855172849 822986853 939841234 343199338 703850629 960017530 213134287 657733381 849408193 823827532 92196608 232830195 763899129 439637229 310653051 530430561 17856565 812898705 368299611 158850443 230788546 236793396 210492153 77304580 530070270 519501734 601047597 217938167 41755868 30947138 224183211 788999402 200524102 246281059 226945442 41395577 701929077 915581640 506891549 305608977 78625647 654370665 825869181 531631531 529589882 35030436 637076697 364456507 498004371 191757021 85471176 379708826 977551692 769183397 19057535 340677301 81507975 142036863 65294880 499325438 165816069 635755630 526467360 517099794 293959568 94358354 724267119 510974847 121860567 519381637 903812134 474825650 555050446 288555203 914380670 100483301 314135864 58209157 152725496 271981817 375145140 963740537 658574060 495001946 999049055 532832501 531511434 455249839 456570906 529229591 746364967 75863416 901650388 537155993 711656934 599126045 171941016 32988787 16295304 169298882 805572788 872346720 22059960 8008611 497283789 981875184 676348416 876430018 996527018 373343685 356650202 189835469 102164659 353047292 909456693 344280211 843523440 770384367 446242564 283871420 355209038 64694395 985598191 135071237 41875965 398684152 380669602 194399155 588197218 814820257 152965690 665899977 477828075 420301612 313415282 238955142 368539805 36111309 571503735 936598615 662417164 117537075 781673485 995326048 370581454 263695124 164735196 669743081 837398493 159811219 862138475 638637958 720544112 966142477 807734534 556611707 73701670 612456812 717181396 639718831 998928958 399765025 957855784 730512163 416098217 901290097 783955328 385233288 416578605 614018073 745884579 149723071 419340836 588797703 199923617 462095368 506651355 173021889 215296033 640559510 231028740 948007830 400605704 592520710 769183397 374424558 926750661 445521982 36951988 640679607 530190367 846045477 158970540 239915918 763418741 637076697 505570482 272942593 428107917 43677420 50162658 407211039 917383095 375625528 334312160 603209343 720424015 814580063 328907795 518781152 717901978 559734229 284351808 151404429 609934775 403728226 600927500 420782000 58209157 256609401 493560782 785876880 581711980 675988125 349324285 211693123 973948782 604530410 768582912 346802248 967223350 241477179 694843354 20858990 969024805 650047173 512896399 894804859 89434377 919544841 864060027 445882273 436874998 997127503 684875303 808094825 318099065 366498156 236433105 753210496 646924651 958456269 112853292 507371937 876910406 449485183 147561325 781193097 911618439 403968420 407931621 295040441 964461119 282069965 819624137 585915375 218898943 64814492 828391218 753450690 538717254 258530953 202685848 594081971 637557085 170019464 81988363 34910339 133389879 846645962 606812253 189355081 614138170 19297729 385113191 735916528 612336715 907775335 931194250 158129861 298643351 883275547 660735806 745163997 155247533 186833044 801849781 802570363 770984852 542200067 919785035 286633651 48481300 213134287 476987396 319059841 650047173 359892821 195960416 813499190 168938591 986799161 33228981 706853054 138433953 841241597 475546232 77664871 554570058 527067845 651488337 653289792 827670636 307650626 330228862 777229896 633473787 286273360 411294337 237874269 848687611 541599582 82209 584354114 818663361 621103796 400125316 663017649 81868266 21459475 463656629 268378907 432071118 920385520 725588186 912699312 287594427 298763448 863939930 410573755 153325981 150083362 901890582 507732228 551807827 273783272 914861058 562856751 104686696 916902707 931194250 352326710 787798432 968304223 626748355 439036744 562597 875829533 441558781 370221163 741681184 310172663 855653237 986799161 777229896 993644690 650287367 131708521 429669178 848207223 817342294 861537990 740119923 682694 200764296 374424558 268378907 57968963 377667177 723186246 521062995 302246261 794523864 674066573 136032013 44518099 832714710 718502463 65655171 892883307 526947748 685235594 296601702 785996977 707453539 934316772 583273241 166176360 801009102 380909796 341758174 965782186 978512468 761857480 395081242 454048869 30947138 342358659 513376787 938159876 285312584 558052871 586035472 272101914 501487184 258290759 172421404 304167813 578349264 334792548 71780118 715379941 763058450 481070694 904772910 593721680 181428679 127745320 238234560 794043476 503168542 622424863 523464935 242678149 356410008 737597886 168458203 24461900 357250687 909576790 461374786 883035353 366498156 339356234 730632260 179627224 862258572 644402614 705652084 324103915 553008797 178306157 996166727 593481486 458852749 556971998 579670331 394360660 304648201 997487794 81868266 725107798 615219043 170019464 54245956 899488642 352206613 322542654 20378602 614738655 992804011 410813949 831513740 185872268 488036320 587116345 279908219 437955871 387875422 308131014 788759208 47760718 174943441 770984852 931674638 729671484 128345805 112853292 518420861 20378602 330469056 152365205 148882392 974188976 298763448 6927738 223943017 74542349 926030079 373343685 520342413 536075120 175063538 457771876 725107798 759695734 756573212 219739622 633713981 441438684 313535379 925309497 346441957 288795397 458612555 585795278 877991279 244119313 225744472 404689002 412375210 301525679 716340717 343439532 547003947 143478027 170139561 553248991 732553812 586395763 88233407 547604432 179987515 99162234 892042628 838839657 877270697 273302884 973468394 233310583 349324285 649686882 848687611 706012375 682473363 253967267 874508466 247001641 480109918 666380365 670583760 988840810 232590001 613657782 4525798 52804792 780352418 391238138 963500343 230188061 683434139 775188247 176985090 917863483 692201220 875829533 461374786 566099370 507852325 923027654 256129013 499445535 43797517 607652932 408652203 387395034 365177089 501367087 585795278 545802977 878351570 581111495 575827227 96159809 97841167 377907371 391838623 236192911 623265542 65294880 273783272 119578724 452607705 983916833 791521439 264775997 538717254 96039712 404328711 75383028 716220620 59290030 926270273 779151448 828631412 178306157 439637229 127385029 570182668 768342718 101323980 243999216 14373752 110811643 274503854 835957329 427627529 92917190 441919072 399644928 217457779 235952717 742281669 928432019 490918648 349924770 897326896 52084210 63253231 368179514 225143987 366017768 442879848 788158723 492239715 708894703 270060265 504129318 859976729 152845593 473264389 783595037 535594732 487555932 341517980 394961145 734235170 673946476 907174850 809896280 444441109 283391032 158009764 81868266 66135559 669502887 832954904 834275971 573665481 279908219 464977696 563577333 279908219 568261116 627228743 739159147 782033776 280748898 621584184 747686034 62532649 504129318 332270511 995566242 418139866 464016920 127505126 808455116 978272274 68777693 949689188 492479909 716100523 455009645 229347382 233911068 57128284 158850443 909456693 326145564 881954480 278707249 202926042 296841896 876790309 552048021 991002556 801969878 132669297 693402190 363976119 74782543 653289792 524185517 680191520 171820919 245440380 323383333 721264694 545923074 945605890 636115921 898167575 401566480 552168118 454649354 699407040 845204798 953172001 587957024 565498885 638037473 729311193 329988668 914380670 980554117 764980002 600687306 831033352 538356963 36231406 619782729 344880696 940441719 999289249 565258691 704931502 643441838 943083853 332991093 848207223 115255232 636956600 227305733 52684695 677909677 644762905 688238019 742041475 284592002 386073967 637557085 847486641 4645895 818423167 787197947 330949444 854572364 976831110 416458508 43076935 860337020 54005762 117657172 321221587 121019888 463656629 763779032 169418979 173262083 910897857 148882392 857334595 466538957 23140833 809415892 731833230 361333985 179507127 789719984 223102338 886277972 640079122 44398002 429068693 424384910 978512468 527187942 378988244 490198066 446843049 462455659 200524102 906934656 446963146 50282755 704811405 389436683 603569634 313895670 566339564 441198490 697845779 103605823 775188247 989321198 339116040 186953141 847246447 678390065 825508890 269579877 188154111 147561325 698806555 586876151 692441414 314255961 777590187 830673061 44878390 128225708 539077545 86191758 56767993 890241173 888319621 442639654 566219467 291437531 965421895 955213650 728470514 936718712 122701246 89794668 204247109 26623646 355809523 865741385 726428865 623986124 297802672 578469361 638998249 385353385 856013528 698085973 373343685 511695429 567300340 813619287 245200186 150083362 529349688 847006253 925429594 550967148 273182787 291917919 528509009 191516827 695684033 15694819 806893855 728830805 638878152 254567752 443600430 572584608 457411585 524786002 729070999 382951445 532952598 211933317 531511434 59890515 864780609 677309192 621103796 393399884 543160843 896125926 317138289 582312465 505330288 238714948 518180667 96640197 696524712 117777269 79346229 7408126 582312465 387995519 507612131 661816679 252285909 824548114 877991279 656772605 661696582 453808675 59650321 293238986 611015648 343079241 794523864 436634804 854332170 123541925 578709555 558653356 925549691 623385639 841842082 395441533 137833468 744803706 231028740 540398612 262614251 629630683 701568786 274383757 376946595 274744048 439517132 149122586 826109375 785996977 375145140 715980426 741801281 490077969 960738112 660855903 301045291 909216499 933596190 56767993 583153144 815660936 390757750 804732109 811097250 771585337 303086940 18457050 929152601 55687120 816381518 341758174 169418979 223462629 972507618 547604432 551447536 852050327 182269358 211332832 706132472 888920106 810376668 433151991 431710827 55326829 410333561 693161996 455850324 666140171 758975152 649686882 343319435 991723138 207970116 744683609 514817951 670944051 495122043 97120585 40434801 685115497 168097912 868863907 979353147 29385877 394841048 239795821 89194183 433272088 243759022 172541501 735676334 928311922 253126588 183110037 425946171 291317434 576427712 354608553 669743081 298763448 466058569 975029655 694723257 274744048 882194674 371662327 353527680 231629225 685836079 584954599 507131743 718022075 82348654 228746897 135671722 403848323 137112886 765220196 886037778 757774182 182149261 438676453 208570601 799928229 270420556 131348230 330348959 977071304 853011103 438916647 51243531 889040203 496443110 554810252 741200796 56527799 403608129 930833959 403968420 305608977 400965995 297202187 863939930 486114768 65895365 404088517 667821529 671544536 324584303 640319316 355329135 129186484 856614013 59530224 327586728 122461052 112613098 443480333 511335138 5246380 160291607 11611521 163894517 117657172 307050141 804612012 451286638 86792243 376346110 417899672 924949206 501967572 721865179 185511977 575707130 34189757 153085787 761977577 951250449 503408736 115855717 79586423 829351994 958696463 831994128 323143139 472784001 210972541 790680760 401326286 475666329 998208376 700968301 328547504 817342294 537876575 583633532 111292031 678630259 134951140 190075663 516018921 792001827 627829228 408291912 181788970 494281364 347763024 736036625 231989516 65655171 213734772 16775692 568981698 752850205 387635228 268739198 469901673 379228438 360613403 189114887 470382061 160411704 691360541 12212006 63493425 451887123 325785273 688117922 57608672 579790428 736757207 399524831 770504464 729431290 683073848 165695972 165335681 369740775 747926228 542680455 293118889 570182668 804131624 646204069 127985514 551447536 537155993 334192063 79946714 125703671 972027230 114654747 972387521 999409346 280028316 36831891 843403343 18336953 33228981 827670636 165816069 679711132 739039050 355329135 780232321 645123196 830913255 827790733 82468751 279908219 104566599 322782848 516139018 222021465 293479180 300805097 988960907 962899858 604530410 230188061 418500157 946326472 540879000 917383095 199803520 518661055 568621407 861778184 912339021 506531258 487796126 721865179 470261964 57608672 625307191 243158537 727029350 523705129 461735077 884836808 227065539 132188909 586515860 182629649 769063300 169418979 387515131 447803825 669622984 277506279 397603279 110931740 639598734 430269663 251685424 964581216 678630259 30586847 197881968 446242564 657493187 748406616 617380789 810857056 643441838 215896518 732313618 153566175 358331560 609094096 355329135 609814678 187793820 91836317 956654814 14974237 946926957 567660631 494881849 876189824 824668211 914981155 923027654 794403767 236313008 317738774 245920768 472784001 355929620 954733262 843883731 133990364 238234560 182989940 478548657 628429713 608373514 44878390 588317315 638998249 996767212 452247414 530910949 3805216 859976729 81748169 457771876 623505736 425585880 259731923 994845660 528509009 215296033 196680998 194279058 787318044 960017530 960257724 983316348 930473668 42596547 89434377 620503311 923628139 772305919 469541382 288555203 319900520 631552235 582192368 812658511 496202916 66375753 652208919 381270087 93998063 214815645 13653170 791281245 306329559 903331746 395801824 519141443 180708097 876910406 485994671 768943203 357851172 739279244 978872759 912819409 510134168 571023347 75262931 145879967 421262388 44878390 990402071 629870877 705892278 604530410 411894822 978152177 629630683 101083786 491399036 817702585 314496155 531991822 762578062 944164726 767141748 211452929 148281907 566699855 707573636 312094215 609454387 227305733 851209648 519501734 25662870 330949444 942243174 604410313 261413281 659414739 390877847 340196913 942002980 608973999 551207342 219739622 495001946 466659054 585314890 588917800 531271240 925309497 95679421 189114887 986438870 528509009 822746659 858055177 623505736 44157808 791881730 440237714 929032504 830072576 600687306 612456812 563817527 650527561 995085854 558413162 91355929 675988125 857214498 126424253 860457117 192597700 738558662 893363695 973828685 144678997 15214431 889760785 11851715 481791276 912819409 281829771 228266509 41875965 701328592 753570787 458732652 520822801 993164302 620383214 89194183 76463901 181668873 800168423 90995638 614258267 521423286 611856327 902370970 426306462 351846322 127024738 83189333 756573212 849167999 567060146 186592850 763658935 325064691 464016920 727870029 187553626 100603398 296361508 899969030 474825650 856974304 688958601 689318892 519621831 667581335 840040627 22300154 217577876 637316891 246881544 517940473 468460509 785636686 745524288 164975390 901890582 353287486 222021465 754531563 54245956 184791395 749487489 710455964 523585032 512295914 363255537 678390065 547604432 553849476 102524950 351005643 428468208 852290521 393399884 36831891 666620559 695443839 40074510 357010493 892883307 130507551 130507551 652809404 199923617 440598005 139995214 232469904 880513316 508452810 130027163 280628801 730271969 110331255 250844745 445762176 375745625 285192487 163894517 264415706 431350536 109010188 229347382 868023228 985357997 394360660 861898281 153566175 460173816 249763872 412014919 445642079 468340412 960618015 165575875 498124468 246521253 434713252 989441295 424024619 82348654 685836079 980914408 421142291 946206375 389556780 762818256 474945747 222862144 170619949 154887242 636356115 52804792 476146717 35510824 989921683 49081785 282069965 398323861 191636924 458972846 300204612 953652389 576187518 311013342 173262083 131468327 469301188 378627953 690039474 382350960 510254265 587596733 967823835 465818375 161132286 11371327 194158961 103125435 901770485 307770723 819504040 48721494 531991822 107328830 580991398 807254146 584834502 349324285 985478094 283150838 326145564 698926652 6567447 759095249 935757936 662777455 539197642 701808980 140595699 535474635 439757326 107448927 626027773 376826498 719463239 166176360 704571211 721985276 449965571 57728769 160291607 456450809 952811710 648846203 619182244 736156722 603569634 621704281 469181091 539678030 314976543 232710098 509653780 871506041 772305919 899128351 885197099 449004795 932995705 393880272 269099489 868863907 971787036 298403157 689559086 409733076 147201034 722465664 485274089 326625952 726068574 322542654 972267424 544722104 810736959 548445111 613057297 84870691 946206375 604770604 334792548 552168118 706012375 265976967 698686458 234631650 347162539 932395220 294920344 933956481 57848866 350164964 726789156 699286943 621103796 167017039 634194369 991482944 525506584 952091128 55206732 907294947 622184669 765220196 463176241 584354114 774107374 981034505 252165812 890481367 600086821 648606009 524065420 612937200 741200796 887959330 127024738 242077664 716460814 192477603 234511553 979233050 541359388 227545927 393640078 817222197 649326591 322403 168338106 752970302 149843168 555410737 950649964 264775997 783955328 367338835 94958839 108649897 619662632 244719798 109490576 326505855 780352418 694843354 822866756 379108341 776869605 866221773 367098641 419821224 277386182 945125502 112853292 160051413 695083548 300925194 220940592 185271783 278587152 229467479 469541382 420181515 664458813 369980969 320741199 748286519 706132472 840881306 519741928 510494459 521903674 566579758 880393219 685235594 430389760 252646200 53044986 15094334 134350655 440838199 2364052 751409041 421262388 67576723 22900639 756813406 779992127 418139866 131828618 939961331 883035353 962779761 469661479 809896280 645363390 574626257 228146412 691480638 929272698 92556899 831874031 152485302 203886818 655691732 325905370 667461238 487796126 462455659 524425711 221420980 237153687 488997096 547724529 722225470 285192487 305608977 532472210 540398612 207369631 150924041 708054024 111292031 155247533 417779575 893723986 270180362 29145683 624226318 211212735 823347144 356650202 116336105 718382366 685235594 856974304 981034505 239675724 948127927 846525865 508693004 249643775 595162844 408652203 338755749 973828685 491639230 829472091 337074391 166296457 429308887 27464325 464737502 293839471 102044562 680671908 631191944 6207156 147801519 82708945 801849781 254207461 865020803 705171696 318579453 965782186 19057535 368059417 645843778 869944780 804612012 818182973 254207461 531271240 78265356 342358659 436154416 641880577 172901792 865861482 723306343 815660936 45839166 761737383 390637653 548204917 253246685 518540958 900569515 273062690 32148108 441798975 303687425 487315738 740960602 547244141 435794125 257209886 436874998 585194793 254567752 920745811 748766907 195119737 344880696 469060994 564057721 513737078 474345262 523585032 681872878 474705553 818303070 820344719 844604313 934196675 631432138 893243598 943444144 622424863 760176122 160171510 917863483 968064029 921706587 427147141 675747931 44638196 840521015 918704162 908015529 297922769 491158842 656412314 375025043 190556051 723906828 10890939 322782848 321822072 978872759 199443229 625187094 198122162 942243174 308851596 34189757 423784425 423183940 962539567 895405344 488636805 669022499 82108460 935517742 550366663 593601583 581952174 696644809 755732533 280989092 335633227 747325743 109610673 668422014 767141748 706012375 749487489 946806860 156448503 156688697 367218738 375145140 898888157 489237290 345841472 638878152 489237290 740960602 442500 296961993 104446502 635875727 43076935 130027163 982355572 28785392 847606738 413335986 733994976 793923379 425946171 489237290 652569210 784435716 684635109 893123501 944645114 661936776 747686034 164374905 233550777 894084277 437475483 848927805 284471905 659294642 680071423 320020617 360853597 268619101 93157384 539918224 451286638 107448927 208090213 330469056 519621831 160411704 383551930 252406006 183470328 802810557 352086516 21219281 919785035 39594122 103005338 240396306 554570058 638878152 64814492 981034505 233550777 377186789 358571754 260092214 624946900 537516284 150443653 642240868 469421285 256129013 159450928 721384791 490558357 100483301 240156112 518420861 614258267 544241716 786357268 433512282 971066454 576307615 876670212 68057111 186833044 604770604 764739808 273182787 736757207 383431833 920025229 158249958 127505126 789359693 276545503 835597038 194879543 721384791 499565632 921346296 607412738 437955871 741080699 887358845 716821105 258530953 66615947 330108765 369860872 816021227 184911492 538717254 440598005 512295914 730752357 242197761 924468818 97480876 451046444 400245413 631912526 223582726 715019650 206048564 715860329 41155383 790680760 102044562 173021889 352807098 14974237 427867723 155848018 483472634 788879305 757654085 392799399 592160419 619662632 358451657 835116650 304528104 858895856 201364781 915581640 39714219 994004981 175303732 847486641 457651779 406250263 150563750 481310888 651968725 69378178 799688035 486595156 212653899 193678573 762217771 350885546 562376363 782874455 686676758 539557933 475065844 105647472 861417893 917022804 93998063 807974728 441558781 814580063 828391218 854332170 986919258 50042561 436154416 634194369 164254808 702169271 659054448 721144597 552168118 834516165 103605823 972387521 300805097 357370784 736396916 253486879 400245413 245200186 965301798 884476517 416218314 724507313 269579877 601768179 730992551 664218619 695684033 576667906 37432376 291797822 929272698 762578062 567900825 53885665 262734348 221541077 198962841 962899858 87873116 213134287 46319554 693161996 624226318 988120228 671064148 200283908 684154721 619902826 916662513 436634804 756453115 920745811 183590425 813138899 308010917 960858209 578229167 442159266 126063962 402767450 224663599 858775759 770504464 798246871 213734772 447563631 23861415 513737078 972867909 331429832 84990788 788759208 754051175 122100761 27344228 268378907 76223707 531991822 19898214 3084634 668902402 873547690 245920768 949689188 516018921 864780609 485634380 129786969 674907252 223582726 475906523 997727988 938760361 342358659 331910220 375985819 483352537 154887242 999409346 854452267 594322165 368299611 416938896 287594427 146720646 108769994 754771757 388235713 453928772 851569939 321581878 909216499 616059722 537876575 79106035 586876151 243638925 137112886 19417826 695443839 194038864 284351808 366618253 754771757 52564598 725588186 222742047 462575756 615699431 227065539 835717135 2003761 613417588 640319316 181308582 586155569 893003404 951850934 758014376 130147260 280508704 934196675 279547928 755011951 392319011 779751933 836077426 887238748 728230320 587596733 510374362 224423405 754891854 152245108 906814559 319540229 691720832 504249415 118978239 183230134 771345143 15574722 962659664 53285180 594202068 642721256 287114039 542680455 72620797 727749932 444561206 273543078 309812372 126664447 753810981 361454082 929753086 29145683 97000488 564297915 572344414 918944356 249643775 288555203 749967877 250124163 426186365 433632379 131228133 245200186 127745320 599966724 288675300 432551506 574025772 491639230 968544417 214695548 708294218 836918105 269940168 474825650 362775149 670223469 928672213 770984852 362414858 677189095 327226437 273663175 265496579 82108460 938760361 423544231 703610435 436034319 503889124 646924651 666740656 719583336 993764787 217337682 336473906 794884155 677068998 959897433 855292946 432671603 506291064 251685424 904052328 751889429 271261235 273903369 956534717 216256809 463776726 110211158 756212921 410093367 521423286 716220620 524425711 842682761 386314161 739039050 113573874 327466631 175784120 401446383 372142715 447323437 506291064 369140290 594682456 144799094 117296881 865741385 648606009 46319554 641520286 353047292 79226132 125223283 324224012 132909491 715980426 830552964 455009645 968664514 732313618 483232440 229227285 510494459 948728412 394480757 750087974 424625104 804612012 418860448 439036744 33589272 449845474 103245532 882314771 305608977 200404005 575947324 732794006 176864993 779992127 484673604 258771147 538837351 526467360 614498461 888439718 897927381 200043714 629870877 835116650 321822072 464257114 499205341 311253536 405529681 369140290 820104525 153325981 211452929 744923803 161852868 439517132 269579877 539557933 546883850 280989092 422103067 768102524 785636686 267658325 623866027 957495493 468700703 297442381 828751509 592400613 938039779 860457117 528148718 525386487 287354233 476026620 451046444 909096402 215055839 700608010 347883121 171820919 476146717 639718831 58569448 975510043 972147327 991963332 779511739 831153449 350525255 585434987 434833349 238835045 181909067 436634804 491399036 948368121 197401580 115255232 341397883 82209 864420318 567300340 289756173 466418860 931434444 900329321 370341260 201244684 909216499 910057178 157289182 87512825 244599701 721865179 268739198 602849052 12091909 809415892 253366782 461494883 317018192 946686763 343679726 647164845 248562902 966262574 321701975 663377940 776749508 82468751 592520710 532592307 58329254 170980240 591559934 431951021 448524407 972027230 221661174 830072576 387635228 401806674 830913255 820464816 262374057 412255113 339836622 440237714 374064267 496202916 948007830 789840081 588437412 788158723 777830381 917383095 834996553 165215584 917983580 866702161 777590187 992443720 399644928 978392371 480350112 585675181 411294337 281829771 673466088 584834502 517820376 144438803 359292336 113934165 730271969 30827041 199803520 516259115 579189943 818543264 599246142 634794854 115855717 596483911 252045715 105167084 17736468 939360846 488276514 162093062 285672875 371902521 938640264 853371394 142517251 87512825 535955023 49201882 298403157 497644080 84990788 446362661 727990126 666020074 78625647 829712285 325905370 571143444 901530291 592040322 481310888 972988006 867062452 874028078 331910220 215776421 829712285 794764058 880153025 956174426 690639959 506411161 746725258 503648930 426666753 626868452 985598191 930713862 221901368 710455964 620983699 884836808 830673061 859736535 142757445 896246023 245680574 780712709 784315619 541239291 482391761 39954413 285913069 368539805 373703976 92196608 749847780 469781576 41155383 797766483 495602431 763418741 246401156 722225470 23501124 991242750 183470328 283991517 847366544 77905065 389196489 446843049 492720103 277746473 903331746 243398731 889640688 640559510 240756597 47880815 549045596 228987091 513376787 877510891 976831110 6087059 786117074 523104644 703970726 241357082 66135559 77064386 905973880 345120890 146960840 421982970 215536227 143237833 132429103 437595580 147921616 210852444 697725682 607292641 506771452 660855903 266457355 632392914 784796007 978992856 983916833 761377092 341998368 61691970 479269239 88593698 763178547 468580606 151044138 843403343 81507975 83189333 716701008 544842201 718622560 747686034 826229472 30106459 447203340 154406854 672985700 892162725 630351265 236913493 808695310 950890158 471342837 969865484 367218738 739879729 264775997 18336953 517460085 961338597 484313313 802210072 812418317 900569515 350765449 339836622 122701246 322302460 219379331 360133015 105767569 156568600 883755935 301285485 861297796 643081547 647044748 25542773 514097369 27464325 170980240 301525679 491158842 306329559 756573212 350044867 271021041 272101914 131588424 977071304 712737807 201364781 505570482 952811710 966502768 755732533 20738893 705171696 207729922 379348535 433392185 939601040 733274394 248322708 822866756 50522949 967463544 233430680 853131200 498484759 684394915 597204493 1163082 44157808 553489185 925669788 470742352 352326710 948488218 675507737 915101252 693402190 676228319 497884274 770024076 137713371 183590425 358691851 193558476 625066997 563817527 325905370 930713862 825508890 855052752 590238867 431590730 631912526 784916104 790800857 850849357 73101185 152485302 594802553 577028197 106247957 627468937 717061299 263094639 214215160 368179514 788999402 683193945 72981088 576788003 566459661 948728412 93757869 447083243 81748169 58449351 150203459 927831534 60491000 155487727 334071966 375985819 457891973 656892702 830913255 295640926 542800552 977191401 529229591 384152415 857814983 298283060 997727988 655451538 793803282 761857480 859856632 258651050 721985276 817222197 544121619 150803944 919785035 127024738 828871606 194158961 934556966 617260692 789119499 229107188 863459542 273062690 397843473 82348654 859616438 708534412 978272274 603089246 865381094 301405582 633713981 215296033 266817646 795965028 793563088 498124468 704571211 750448265 930593765 301765873 556011222 280148413 746004676 589278091 176504702 662176970 893483792 593841777 189355081 169539076 866101676 144198609 331910220 129786969 287594427 176504702 760896704 828871606 573545384 101203883 376706401 654370665 865140900 536915799 143237833 775188247 783234746 883515741 613177394 689318892 308491305 973708588 870665362 383912221 329147989 803531139 242678149 308010917 530670755 68657596 208450504 897927381 862979154 948007830 478788851 901410194 690159571 361093791 385353385 460293913 483592731 710936352 280148413 554449961 96159809 713938777 742041475 280868995 135071237 30106459 823827532 254207461 382591154 770144173 556371513 416338411 173262083 699286943 35510824 93757869 862979154 962659664 328187213 580991398 461614980 850008678 97600973 278467055 385353385 851569939 32868690 662537261 394360660 531751628 646924651 648245718 798006677 758374667 735676334 437595580 85591273 563457236 539437836 244839895 860697311 391598429 39474025 148402004 306329559 554209767 164855293 168218009 171700822 844003828 816021227 15094334 673946476 390757750 718982851 424384910 840761209 397843473 84990788 658934351 275824921 907054753 897446993 619782729 498965147 1643470 99162234 380789699 529229591 160651898 40674995 29866265 549525984 468220315 522624256 500406311 52684695 33949563 463896823 577028197 997968182 164134711 992083429 96039712 630111071 905133201 222021465 136752595 937439294 207249534 257930468 744083124 934076578 922066878 977551692 514337563 249883969 115615523 368779999 119458627 932875608 198122162 717061299 223342532 451286638 469541382 284351808 247602126 535474635 599846627 121740470 523585032 616900401 779031351 991242750 312094215 196080513 678390065 583273241 328307310 438436259 555410737 356169814 466659054 799688035 499565632 14734043 842082276 630951750 935878033 942483368 162453353 585915375 740119923 197521677 133630073 24942288 399284637 817462391 229347382 603089246 401446383 841121500 213014190 207249534 282670450 947887733 670583760 21819766 772786307 986679064 506170967 298763448 50883240 222742047 295520829 796445416 579430137 122340955 268979392 291917919 823467241 265976967 740840505 44758293 269219586 604410313 540038321 42596547 900089127 927951631 276545503 891682337 248082514 55927314 827070151 717901978 30346653 395201339 559734229 784796007 191396730 850368969 586275666 837038202 273783272 581711980 135671722 76704095 575707130 634674757 75863416 559734229 338875846 417058993 759215346 191036439 386794549 168218009 719583336 430029469 927831534 619422438 575106645 923147751 549045596 698085973 76103610 190916342 701448689 290356658 9569872 715379941 56287605 681872878 756813406 597324590 601768179 9329678 99282331 787197947 145159385 856373819 387154840 904532716 477948172 482151567 200404005 828751509 148161810 675267543 579910525 644762905 920986005 612817103 885557390 603569634 163053838 503648930 104446502 829231897 436034319 794163573 903331746 299243836 293839471 241957567 218658749 508693004 781913679 879312346 961458694 801489490 7648320 207850019 980313923 241236985 228626800 498244565 262013766 436754901 832474516 945725987 166776845 216376906 79706520 170259658 764739808 367098641 956654814 757173697 890961755 826229472 613537685 104566599 894804859 127385029 180948291 494161267 987159452 460173816 29626071 431110342 433392185 713938777 496082819 975029655 100483301 385473482 535234441 798967453 684635109 828631412 279668025 399524831 611135745 296001217 425345686 29145683 280508704 77544774 676948901 844484216 456931197 383431833 718622560 860577214 182029164 93877966 184311007 565859176 795604737 189595275 391718526 873427593 420061418 303687425 43677420 88953989 323983818 332750899 607532835 509293489 400725801 795604737 586996248 858535565 703970726 256489304 395921921 890481367 470742352 914981155 161852868 483832925 371422133 482391761 974789461 422343261 706252569 56167508 403367935 35751018 851089551 354248262 966382671 659654933 533072695 524665905 403488032 98681846 415858023 239435530 176985090 56167508 791161148 870665362 188634499 389196489 621343990 993764787 798727259 663257843 360733500 732673909 915701737 112973389 419821224 528268815 793322894 200644199 617020498 973228200 167377330 8609096 571743929 143357930 962059179 822386368 455009645 738918953 626628258 383912221 394360660 571023347 209771571 57488575 626628258 501126893 108409703 639358540 917863483 427867723 889400494 646083972 236673299 152485302 943324047 127745320 334312160 304648201 186472753 827550539 551567633 729191096 241717373 958456269 29145683 197881968 477948172 69258081 875349145 372983394 690880153 689078698 494401461 764259420 421982970 549405887 332390608 463536532 456450809 123061537 460414010 75623222 799327744 792001827 805933079 682953751 81748169 718502463 959897433 586876151 219379331 726669059 157048988 483592731 744203221 755372242 630951750 914981155 151164235 744323318 102885241 391958720 448044019 240636500 597084396 93277481 546163268 244239410 378147565 72620797 901530291 931074153 562016072 272582302 23741318 944164726 712017225 719583336 532832501 828991703 278947443 635395339 231268934 13292879 496443110 478428560 182389455 178666448 803170848 32388302 192597700 840761209 434713252 798967453 416818799 985838385 897326896 879312346 313535379 755852630 966502768 98081361 840881306 963500343 537516284 107689121 295761023 628910101 752610011 643922226 82708945 173141986 220580301 533432986 394961145 893003404 603089246 601648082 322182363 646083972 377426983 127264932 400605704 797646386 564057721 359052142 245200186 225624375 210852444 464257114 712978001 184551201 519621831 391358235 935037354 836557814 601167694 828751509 922307072 671784730 580751204 63013037 132429103 502808251 232590001 923628139 198002065 720183821 909216499 386554355 27224131 139034438 105046987 491158842 187433529 277626376 844844507 112252807 902010679 72500700 976470819 263575027 980073729 786477365 941162301 497644080 387154840 512896399 82949139 257810371 491879424 582912950 121860567 786717559 738678759 12932588 52084210 983316348 996046630 853491491 620383214 62292455 434352961 189955566 863819833 654010374 417179090 360613403 602969149 476386911 248923193 341277786 110091061 266577452 917142901 101924465 624466512 149002489 58449351 882554965 746725258 919184550 583993823 967943932 108529800 410693852 438196065 803771333 877150600 120899791 21459475 724387216 586275666 51964113 796685610 793082700 398323861 538717254 164495002 166536651 715860329 971426745 441678878 187673723 580270816 633593884 65414977 414777150 768703009 253126588 958456269 643561935 490438260 701448689 707213345 446963146 381510281 116816493 2123858 992443720 281949868 6207156 738798856 321221587 842322470 549405887 144078512 819023652 888319621 787077850 129186484 375985819 663858328 641760480 875589339 911618439 411414434 440958296 723546537 86191758 536675605 379949020 910057178 518060570 894444568 859496341 951370546 54726344 519741928 694843354 734235170 807614437 631552235 551447536 939240749 878831958 781913679 265616676 212053414 569822377 865981579 656292217 204006915 320861296 39113734 649326591 60851291 671184245 880393219 344040017 945846084 719943627 372863297 158249958 423183940 449965571 673946476 511335138 639838928 623986124 117897366 65294880 695924227 970586066 185992365 574746354 94718645 987039355 689559086 121139985 781193097 641039898 270300459 312814797 934436869 340076816 310653051 160291607 568381213 121740470 63613522 180347806 619182244 728470514 830673061 316537804 199203035 429909372 845204798 167497427 842322470 765100099 223462629 762578062 164254808 34790242 552168118 506771452 426546656 316537804 956534717 234511553 185632074 666980850 433151991 106488151 694963451 170379755 502087669 118017463 513737078 318819647 715259844 116216008 234991941 869464392 679110647 920025229 451526832 864780609 581591883 755252145 534874150 803651236 118497851 280268510 91115735 409733076 161372480 223222435 428107917 607052447 830552964 173622374 126063962 607412738 981394796 561895975 220340107 996286824 652208919 562856751 301885970 14133558 323863721 569702280 251205036 50042561 969264999 151764720 316057416 508092519 738918953 82468751 128585999 967823835 991723138 695924227 906214074 395321436 699046749 94718645 704451114 409132591 936718712 409612979 462215465 621584184 830072576 289035591 495122043 101804368 844724410 566699855 947767636 439997520 642120771 837278396 160531801 540758903 517940473 670823954 646444263 368659902 934076578 735316043 479989821 840280821 295881120 625307191 329628377 163053838 299844321 562976848 924468818 526707554 608373514 139034438 748046325 822626562 535474635 283991517 990762362 46319554 873787884 453088093 191516827 970586066 841721985 753090399 382230863 586515860 482752052 739639535 556371513 17015886 345601278 185391880 961939082 620143020 430750051 685836079 14854140 348483606 334672451 890241173 614018073 59049836 352807098 734715558 497043595 675868028 174102762 237513978 175303732 844003828 685115497 589878576 535474635 844844507 616900401 364336410 577988973 756933503 154166660 130147260 635155145 398443958 785036201 542920649 272582302 890361270 151044138 793923379 833315195 323263236 602128470 600327015 206769146 622544960 400605704 609334290 153566175 11971812 520822801 441798975 250124163 768943203 272222011 502928348 996166727 932515317 736396916 360373209 101323980 453088093 62532649 448044019 672625409 773266695 31667720 425946171 783354843 915461543 341758174 558533259 810616862 583873726 471823225 734235170 128585999 549045596 71780118 322902945 832474516 354728650 84990788 306809947 511815526 306689850 353287486 917022804 689799280 479269239 212413705 515178242 632633108 929993280 481671179 145039288 309932469 80427102 952331322 887478942 374904946 727389641 314496155 272222011 331549929 779391642 817942779 22420251 266457355 787678335 287834621 824067726 663377940 376105916 808575213 63373328 548325014 209771571 179627224 320621102 410573755 793322894 828030927 958816560 639598734 287834621 590358964 358091366 558533259 906334171 614258267 720063724 2964537 239795821 374544655 912339021 618341565 126904641 359292336 416098217 431470633 661096097 492600006 513136593 779031351 759575637 605250992 495962722 791281245 326625952 830552964 533192792 211212735 882314771 970105678 244839895 734115073 505450385 610295066 176864993 923027654 168338106 109970964 693642384 18577147 255768722 140355505 792722409 627949325 648125621 221300883 92556899 424024619 165215584 660375515 608133320 383071542 493200491 264055415 522744353 571864026 153686272 102765144 618341565 137473177 765460390 914380670 97240682 40074510 397363085 834155874 72140409 853731685 965541992 226585151 79946714 7648320 513016496 40795092 338515555 370941745 302726649 815180548 524906099 416338411 344160114 972267424 284351808 667581335 324344109 221300883 224543502 138193759 744563512 704931502 361814373 127985514 203166236 635155145 696164421 106368054 503288639 263094639 857694886 302846746 766781457 383311736 711656934 433632379 887238748 157889667 152845593 381750475 559614132 889400494 845084701 737717983 389316586 91476026 316537804 881954480 284952293 229587576 499565632 161012189 328667601 612096521 590599158 577748779 606091671 367098641 914981155 700367816 177945866 505570482 825508890 407571330 423063843 335393033 899728836 5246380 821665786 663498037 584113920 189955566 481551082 952931807 93998063 76223707 919544841 962299373 118497851 224783696 101924465 823347144 734715558 160411704 476627105 327826922 904652813 83189333 184190910 64454201 252165812 4165507 596724105 345841472 70338954 110691546 260452505 383311736 707333442 729311193 813739384 699887428 504129318 146000064 927591340 2964537 903692037 624106221 180828194 689679183 5966962 800648811 910777760 720303918 513616981 410934046 995205951 885917681 927351146 68177208 942002980 256008916 291077240 51603822 261293184 113213583 53044986 405289487 81868266 798366968 267658325 829832382 713218195 626628258 337194488 39834316 618701856 496803401 158370055 835356844 589157994 632873302 485514283 370341260 427387335 186232559 89194183 406610554 510734653 773626986 514097369 424745201 764619711 822866756 402287062 960618015 423063843 436874998 380069117 746725258 426906947 636356115 631071847 508933198 88833892 804612012 776629411 567420437 629150295 232710098 552288215 805812982 788759208 478188366 835236747 498965147 361454082 256249110 636236018 254447655 105887666 222381756 836317620 25062385 847606738 245800671 547724529 747686034 712617710 643201644 771465240 652208919 48000912 717301493 939480943 514938048 39594122 895765635 404929196 801849781 714058874 72140409 588437412 993044205 20258505 831633837 200524102 539437836 715620135 104446502 614858752 55446926 435193640 923868333 17135983 733634685 911978730 933235899 103005338 212533802 552288215 400605704 154046563 322542654 152365205 563217042 643802129 149242683 425105492 384032318 755732533 590118770 389917071 136872692 569582183 973828685 212053414 177105187 704811405 945485793 713338292 108769994 67216432 932635414 969385096 848927805 246401156 749847780 56047411 875589339 333471481 969024805 268018616 742041475 62892940 856734110 383311736 336233712 389076392 573545384 64694395 162933741 617741080 590959449 737958177 849167999 903451843 801129199 348963994 421382485 215776421 480710403 274744048 678390065 77784968 206769146 735195946 446963146 960618015 153085787 385233288 894444568 189835469 906934656 907655238 196080513 112252807 998208376 189715372 568621407 541119194 699767331 494161267 614018073 577508585 785036201 624586609 869344295 891201949 916542416 180948291 759695734 687157146 897807284 353887971 325184788 303327134 886758360 966022380 396882697 719343142 268499004 75983513 941162301 848207223 242317858 359412433 751168847 743722833 762457965 938159876 466298763 99522525 194279058 732553812 517460085 659775030 242197761 300444806 155487727 293599277 190075663 13773267 398804249 727629835 562256266 872586914 562496460 333471481 964100828 816982003 71780118 307410432 599486336 684394915 249523678 556251416 218058264 20018311 157649473 340437107 531031046 50883240 741921378 62052261 421022194 227185636 293599277 642360965 395201339 663377940 4525798 959296948 627829228 917383095 479029045 25782967 344280211 802810557 533312889 660615709 701929077 716220620 305608977 751048750 622064572 502087669 646564360 678750356 358811948 700487913 2604246 563096945 875709436 614738655 464737502 535714829 75142834 934797160 239915918 585194793 190315857 209891668 523104644 343439532 57368478 392319011 366257962 446602855 422703552 917863483 709375091 614498461 971066454 176504702 378027468 725948477 365056992 435553931 891802434 512896399 405529681 925909982 725227895 832474516 317618677 494761752 886398069 21459475 327947019 967223350 757053600 572944899 738198371 403007644 131468327 486595156 151764720 297202187 700608010 560334714 599486336 52324404 134230558 982956057 604650507 960257724 819744234 555170543 16535498 330709250 477828075 102885241 941642689 638878152 530430561 380789699 164374905 354128165 568741504 709615285 37672570 467019345 940561816 624946900 15935013 64814492 571263541 287354233 267298034 38393152 315937319 656172120 153806369 96159809 342358659 18937438 475546232 440598005 653770180 455850324 63613522 625787579 772786307 124502701 590839352 851690036 412495307 458372361 64334104 560334714 595042747 873067302 771345143 444200915 989441295 265736773 185752171 737357692 155367630 945365696 421742776 182989940 550847051 679350841 654851053 492119618 373703976 459213040 813739384 252165812 538356963 188394305 50883240 415137441 145639773 902971455 977911983 989081004 541719679 495001946 981274699 765100099 771945628 666980850 73221282 487315738 235832620 872466817 296001217 484553507 522023771 340917495 752129623 924588915 281589577 1763567 264295609 73821767 541359388 799688035 914020379 35270630 296961993 851690036 872226623 147321131 613897976 123782119 626988549 927831534 770504464 763418741 711056449 297922769 870545265 362174664 90395153 749007101 731953327 256609401 235232135 941042204 341517980 20738893 171941016 247962417 818543264 727749932 518180667 260932893 528869300 511695429 525146293 399644928 128826193 702649659 864900706 517099794 985117803 945605890 933235899 524185517 265136288 216737197 721144597 72500700 829472091 455850324 118017463 284832196 3805216 211813220 643441838 426786850 257570177 998928958 872707011 475546232 676108222 15334528 512295914 532712404 830793158 513136593 220340107 269459780 60370903 962299373 987279549 100363204 831153449 717781881 708294218 35871115 575466936 290236561 63973813 705772181 62652746 80907490 838719560 609574484 779992127 965421895 641520286 969505193 568741504 64214007 250724648 724627410 753570787 361574179 298763448 780832806 290957143 402767450 851209648 530070270 568261116 978152177 114894941 911138051 560094520 51603822 616179819 892883307 77784968 207609825 68417402 452127317 191036439 72740894 286153263 462815950 364456507 13172782 826469666 654130471 395921921 964220925 725948477 615219043 673706282 803531139 235712523 109130285 782514164 154647048 303447231 535714829 198002065 755372242 638157570 688958601 927471243 938760361 969264999 501727378 936958906 320741199 535714829 514697854 411054143 625667482 329268086 341998368 679591035 537155993 905613589 339596428 870785459 614138170 782273970 153686272 880513316 692561511 196680998 206288758 626027773 314255961 750448265 189955566 69258081 299243836 288435106 881233898 933836384 56287605 88353504 473264389 782153873 820224622 965902283 895525441 267538228 535955023 787918529 305488880 463656629 371662327 241116888 660015224 998928958 582192368 234391456 222982241 387755325 206408855 723666634 148402004 545202492 156808794 553489185 649206494 693642384 440958296 421142291 265136288 520822801 20138408 391478332 576427712 800408617 41515674 115495426 775068150 122100761 322062266 554570058 333711675 500286214 128585999 247962417 573905675 125583574 844364119 699166846 609214193 821665786 621464087 910297372 894444568 521062995 655211344 321461781 355569329 176985090 100723495 197881968 37432376 100002913 693402190 167737621 199082938 483112343 955333747 652329016 313295185 754051175 730031775 303207037 73221282 661576485 380069117 821905980 169298882 942603465 906934656 587957024 779151448 164735196 594802553 150323556 109970964 82348654 654250568 45358778 12812491 850969454 957495493 526227166 611976424 39474025 527908524 304768298 759095249 741200796 553369088 867062452 318939744 107208733 33108884 13172782 889640688 511575332 853731685 212293608 246401156 418500157 328067116 896246023 756333018 230067964 526707554 328187213 699767331 832954904 112012613 426666753 937319197 181668873 546043171 68657596 602488761 104566599 190195760 965421895 229107188 590479061 809535989 445521982 555650931 270420556 783955328 800889005 962419470 689559086 998328473 739279244 260932893 569462086 18216856 624346415 988120228 918223774 197761871 745884579 829472091 996767212 781793582 418259963 550967148 502688154 9089484 675747931 154647048 771945628 702649659 913299797 659294642 861537990 960618015 906093977 802089975 253486879 493080394 15334528 737958177 351606128 712617710 787197947 310412857 862618863 393159690 375985819 743242445 237153687 612336715 417179090 135551625 380309311 859136050 967343447 584354114 543521134 427147141 541239291 515778727 562376363 508933198 559974423 737477789 855653237 645363390 245080089 593961874 968544417 235472329 227786121 996887309 894204374 520222316 174102762 366618253 111772419 907415044 462936047 61571873 984036930 269219586 210732347 484313313 71419827 460053719 178546351 326746049 747445840 175183635 868503616 275464630 481430985 794643961 267658325 732673909 856614013 246160962 431230439 39474025 762698159 850489066 895645538 231028740 80427102 38753443 586275666 561775878 377306886 178426254 869704586 377907371 973108103 400005219 415737926 999289249 279427831 15935013 426426559 107809218 368299611 831153449 670343566 767261845 593841777 794283670 231389031 557332289 595042747 58929739 400005219 902370970 710335867 597444687 669502887 782394067 521303189 341758174 549405887 203526527 436034319 845084701 477227590 53645471 476386911 75863416 224183211 880753510 894084277 713578486 164495002 725588186 62052261 614498461 830793158 102524950 770384367 469301188 908976305 124622798 520942898 403007644 644642808 956054329 375865722 807974728 152365205 866461967 23621221 401686577 5726768 803170848 107569024 327226437 681872878 624706706 532592307 717781881 627709131 774107374 727149447 350285061 954853359 735195946 952571516 278707249 992323623 340196913 994725563 514337563 466058569 385113191 440477908 557092095 664939201 129186484 782273970 849408193 984877609 924228624 385233288 339596428 773266695 381149990 5486574 835717135 863579639 660015224 626388064 256609401 495362237 404328711 831994128 71539924 713098098 732914103 999409346 562976848 312814797 433272088 707093248 817222197 35270630 283150838 77184483 754171272 511215041 516379212 942243174 492600006 698085973 97240682 935998130 668061723 339356234 525746778 584113920 965782186 420541806 113814068 113333680 897446993 249643775 214575451 145759870 345721375 387034743 891322046 520102219 660135321 88953989 57248381 996647115 538477060 765580487 852290521 262013766 168698397 789119499 666980850 727389641 704210920 978872759 49442076 616540110 306329559 306449656 220220010 220580301 284952293 249763872 820224622 825148599 188034014 292518404 27584422 981154602 783715134 3444925 66255656 971306648 398083667 400965995 892883307 849768484 743122348 267778422 629870877 562976848 102524950 892643113 351726225 587116345 471943322 867783034 928552116 510494459 262974542 354968844 348003218 949448994 480230015 606812253 422823649 767381942 590358964 342598853 646804554 590959449 117537075 423424134 229347382 219619525 580871301 926990855 990161877 675147446 881714286 321942169 548084820 712497613 387395034 947767636 982595766 270180362 296241411 98922040 716220620 959296948 175063538 323743624 574866451 190435954 846405768 129546775 811577638 801849781 945605890 648245718 781193097 371181939 286633651 493800976 325424982 771705434 275464630 549525984 333471481 763418741 596604008 386434258 103125435 409612979 947167151 821425592 21819766 544842201 786237171 200404005 393519981 541839776 133630073 646083972 220820495 442399460 99042137 844844507 270660750 380189214 351486031 904412619 534033471 85471176 639358540 271981817 415858023 411294337 171340531 363015343 980674214 640439413 817582488 637677182 934917257 446122467 668542111 499685729 869824683 658694157 482031470 606091671 848087126 956895008 700608010 171700822 622905251 949689188 376946595 159330831 951130352 980313923 100363204 179987515 928672213 915701737 946686763 574746354 438316162 760416316 39233831 904652813 755972727 861537990 854572364 770144173 658934351 919304647 765100099 865140900 357971269 37672570 986438870 675387640 580751204 163294032 656772605 855773334 873547690 611135745 268018616 8729193 357250687 756813406 328547504 28785392 679230744 351606128 174102762 713698583 156448503 478908948 912699312 325785273 643922226 994725563 89674571 670944051 749847780 201124587 31187332 738198371 373944170 522624256 23140833 885437293 927591340 445762176 200524102 201965266 716701008 362054567 471703128 322782848 491038745 782514164 988840810 783715134 269940168 614498461 742762057 125103186 858655662 369740775 272702399 67816917 883635838 226825345 546163268 589037897 508693004 415017344 164134711 998208376 317738774 58209157 613417588 166416554 724987701 863699736 41155383 915101252 637436988 424505007 63373328 762337868 753330593 970105678 641880577 796325319 395681727 308491305 975029655 349204188 880032928 111532225 909696887 720303918 527668330 546643656 489477484 794163573 812898705 156568600 36591697 568261116 822626562 909096402 440838199 86071661 177225284 943083853 948968606 335272936 467259539 654250568 796685610 447803825 790320469 534754053 218538652 581111495 586155569 197521677 279427831 180347806 176144411 444681303 407571330 742521863 161732771 923628139 305128589 270540653 206048564 556131319 586635957 61211582 834996553 225984666 5246380 739279244 52804792 644162420 734355267 866822258 65655171 935157451 31427526 323983818 346802248 120539500 534153568 396882697 151404429 738198371 286153263 970586066 634914951 399524831 716580911 735676334 248202611 402287062 751769332 284712099 629390489 800168423 495482334 378147565 965541992 925909982 439156841 1163082 548204917 199323132 727749932 545202492 13292879 892883307 255888819 49802367 587596733 948127927 272942593 730031775 938760361 948007830 874028078 12452200 476266814 126063962 301165388 884956905 98681846 788398917 917262998 581952174 56767993 942603465 245680574 40674995 255168237 344160114 149963265 59410127 323023042 62172358 616660207 162093062 835717135 916302222 121500276 836798008 2003761 181188485 340797398 202306 607172544 392919496 625787579 112372904 331910220 63733619 501246990 156088212 79466326 944164726 818062876 569462086 79346229 318339259 225023890 171700822 918824259 879552540 81748169 654130471 949208800 260572602 573185093 305248686 313054991 409492882 495001946 887358845 922427169 250604551 850008678 41635771 197161386 965782186 404208614 923267848 455129742 288435106 989081004 43317129 84030012 785156298 811217347 38753443 601287791 634554660 450445959 762938353 423904522 877030503 241116888 218418555 95078936 981875184 846645962 261173087 15334528 657373090 964461119 883035353 508933198 745284094 576908100 681032199 924949206 30706944 506891549 143357930 685956176 501847475 720544112 826709860 494161267 928912407 12812491 486475059 203286333 536195217 820584913 35630921 86672146 687277243 582432562 147321131 404208614 423544231 817942779 608493611 199203035 308371208 173502277 157409279 492720103 979233050 824668211 648966300 153085787 871746235 472663904 607412738 28184907 431590730 858775759 391958720 150683847 679470938 466538957 210732347 252526103 591920225 776509314 448164116 637436988 554209767 325424982 290837046 551807827 113093486 97961264 241477179 854572364 518661055 93998063 457171391 532472210 852050327 270060265 176384605 425465783 369260387 996767212 21339378 888679912 268018616 383912221 48721494 441919072 689438989 284111614 585675181 384392609 306329559 825148599 289515979 84870691 632993399 41875965 159450928 637677182 762698159 497043595 684515012 828511315 697245294 755252145 41515674 912459118 326866146 316297610 87873116 985357997 589638382 994485369 494881849 69378178 79946714 528629106 593841777 237994366 108409703 886758360 782394067 597564784 583273241 563457236 293238986 995566242 592520710 651007949 384392609 535714829 589758479 802089975 397002794 483472634 899368545 222261659 722105373 248923193 380789699 987159452 224903793 952571516 773626986 829592188 501967572 313415282 194759446 259011341 128105611 667341141 235592426 708654509 727029350 142277057 645483487 75262931 610895551 52324404 240396306 971546842 412014919 35751018 657973575 536435411 193678573 381029893 867903131 503048445 85351079 967943932 232109613 121500276 981274699 498004371 129907066 468580606 838959754 825869181 231869419 680912102 883635838 300084515 96760294 519381637 661216194 198362356 815180548 174342956 352206613 513256690 899848933 411414434 746244870 433512282 944164726 574866451 23381027 560815102 947887733 621103796 284712099 982355572 190075663 542560358 541839776 170980240 726669059 312694700 682953751 228626800 891201949 906334171 31187332 705772181 448884698 881834383 135671722 275344533 800528714 64214007 501367087 471342837 298042866 35751018 903692037 913299797 133149685 532592307 772305919 634074272 45598972 630711556 158490152 400005219 548685305 26503549 861057602 120419403 943804435 44998487 102044562 259251535 273422981 692801705 97841167 664338716 556131319 670583760 985357997 256369207 362775149 129306581 700608010 802791 384152415 837878881 118137560 117657172 749247295 228386606 918584065 173021889 989681489 664819104 598645657 988840810 952811710 657613284 240876694 764619711 608733805 778550963 112132710 250004066 585795278 929392795 808935504 295160538 466659054 415497732 31907914 951971031 653890277 120059112 681872878 588797703 468580606 432671603 403488032 310893245 78385453 855172849 869944780 28545198 844123925 820344719 687877728 897927381 96039712 951490643 330469056 373944170 902370970 888319621 179266933 222261659 237153687 443360236 344880696 435313737 651248143 998688764 88593698 415858023 588317315 180467903 852170424 641760480 48601397 504129318 828030927 97721070 136632498 842562664 244719798 359772724 388235713 509173392 404929196 347042442 37912764 791761633 885317196 338995943 710816255 448044019 944404920 813018802 183950716 700848204 138433953 91956414 268258810 742521863 714058874 379108341 81628072 9329678 617981274 169779270 744443415 690039474 315456931 194158961 232469904 402527256 442399460 395081242 164975390 859015953 338155264 792842506 417539381 743722833 893483792 521783577 957255299 280388607 216977391 803531139 379108341 26503549 633353690 294199762 122821343 220940592 453448384 127264932 236192911 139154535 728950902 242558052 367338835 365897671 843643537 982956057 510374362 253486879 332390608 426906947 886638263 487075544 898287672 291677725 262013766 370941745 161372480 427147141 92797093 527548233 574025772 534273665 536315314 327466631 598045172 8368902 871626138 22540348 160291607 442639654 880393219 735436140 759455540 656412314 241477179 265376482 329508280 900089127 94598548 87753019 125823768 126063962 639238443 565859176 92196608 543040746 439757326 966622865 113333680 956895008 125823768 609454387 874628563 792962603 196801095 488636805 822266271 416578605 3565022 168097912 299844321 578469361 692921802 524305614 152365205 530430561 740360117 789719984 601888276 751409041 845084701 787558238 396162115 768823106 475185941 789479790 811697735 370461357 264655900 710455964 990041780 215656324 888800009 317378483 938640264 900689612 433512282 173021889 865260997 300204612 351245837 76704095 128345805 498124468 381990669 128706096 495362237 454649354 575707130 947887733 613297491 192117312 511094944 431110342 115015038 365056992 811337444 646083972 151644623 933115802 545322589 744323318 907294947 805092400 221781271 184551201 772786307 856013528 147321131 832354419 582912950 895165150 671784730 724987701 805572788 965301798 523945323 426666753 228026315 939961331 206288758 966863059 805332594 112973389 235472329 724747507 51003337 165335681 812298220 901890582 852650812 985958482 239075239 410333561 811217347 141076087 626988549 761857480 222621950 28545198 568261116 148762295 527067845 412735501 599966724 262013766 732914103 816861906 659895127 908255723 381990669 360253112 838119075 32148108 74061961 952211225 215416130 380309311 744563512 8128708 470502158 573785578 506531258 568861601 296121314 634674757 594442262 381270087 645843778 659294642 774587762 322182363 478788851 535955023 608493611 732313618 568741504 131108036 878711861 999769637 205448079 645723681 78505550 416818799 305368783 304047716 907895432 871145750 94838742 833915680 35630921 488156417 823227047 445762176 701328592 770984852 24581997 661336291 778070575 941522592 206048564 339596428 869944780 789359693 68777693 88353504 393039593 292518404 83549624 806293370 413696277 918944356 565018497 435794125 59770418 614018073 602728955 224303308 605971574 263334833 905373395 781313194 701088398 394000369 972867909 967343447 461254689 103605823 569942474 591800128 127264932 50402852 415858023 368900096 899128351 372863297 176264508 875469242 97360779 977431595 124983089 741080699 79586423 771104949 374304461 951610740 950649964 81628072 134951140 620743505 112613098 946686763 850128775 127385029 207249534 159931316 822746659 165095487 855773334 217457779 690279668 268138713 881834383 18937438 527308039 298643351 958336172 790680760 786957753 313535379 633473787 889640688 689919377 160651898 339836622 677909677 997367697 420661903 393279787 576067421 338635652 372022618 59169933 577988973 733514588 463536532 47040136 467499733 55567023 904412619 370821648 653409889 672745506 375385334 800889005 147561325 842442567 343799823 121019888 33228981 63973813 104926890 996406921 805092400 45598972 291917919 574746354 677909677 147921616 508452810 275584727 902250873 855533140 677549386 820584913 536675605 345841472 688358116 7047835 962179276 506771452 543401037 490918648 774467665 600567209 789119499 169659173 563337139 715259844 500646505 387154840 195840319 792001827 571743929 690760056 890121076 337794973 921466393 654130471 190796245 661096097 826709860 800408617 291677725 798006677 45118584 321822072 339356234 595282941 594442262 604290216 675027349 528388912 658574060 612216618 193078088 397603279 72740894 908255723 688598310 536075120 48721494 643561935 843283246 818663361 493440685 581231592 446482758 236313008 53525374 638157570 869824683 188394305 466659054 873667787 595883426 671184245 204367206 472784001 47520524 115015038 38513249 959657239 595282941 494161267 430629954 590118770 605250992 476627105 428107917 958095978 481190791 713458389 607172544 305368783 270300459 878231473 282550353 181668873 529589882 89674571 631672332 272101914 810977153 306089365 896005829 793683185 402647353 296241411 425946171 237634075 351486031 522984547 695443839 320501005 654851053 587957024 98801943 535594732 151764720 790080275 235592426 505330288 676588610 760896704 643922226 132909491 741080699 223943017 461014495 251925618 351365934 355809523 818903555 224663599 755252145 30706944 224903793 469781576 866341870 8849290 187073238 481791276 729551387 416218314 298883545 868263422 699527137 721384791 745404191 241357082 16415401 580631107 828151024 817222197 873907981 126664447 576187518 908736111 352206613 866702161 9810066 462695853 512536108 889520591 519621831 999049055 937439294 255888819 527668330 828391218 650527561 299123739 190796245 885077002 228266509 663618134 656772605 69258081 548805402 580871301 518420861 222742047 140955990 815180548 490918648 138433953 368059417 883876032 801849781 4886089 770024076 149362780 65895365 265976967 847006253 289756173 596964299 829592188 433031894 257209886 182869843 12932588 786117074 275584727 959777336 217337682 276065115 781913679 217097488 565739079 833795583 973948782 636236018 403608129 613177394 119578724 821305495 627108646 18096759 695804130 154767145 240636500 605130895 471102643 481671179 584474211 21099184 742641960 934917257 534153568 621223893 540278515 327346534 268859295 645003099 692441414 366618253 378748050 613297491 853491491 396402309 923027654 371782424 11851715 114654747 192237409 336954294 590238867 9089484 858895856 183950716 543040746 536315314 941882883 889520591 321461781 119578724 210732347 935998130 843523440 668301917 116816493 905253298 858535565 993884884 588797703 665419589 730992551 480470209 144438803 787438141 775788732 841962179 448884698 719703433 250844745 845925380 818543264 202325557 894564665 976110528 198242259 655571635 222501853 718862754 123061537 386554355 856734110 61211582 36111309 977191401 99042137 357731075 627228743 687997825 349324285 846405768 851810133 971907133 246521253 963860634 213374481 836798008 769663785 246040865 712257419 342118465 449725377 347642927 983916833 386194064 925909982 218418555 103005338 678750356 436874998 963140052 950529867 650047173 417539381 329388183 960377821 337074391 405649778 712377516 997247600 641640383 260812796 306569753 144078512 866221773 685595885 537035896 929993280 843283246 520222316 208210310 187073238 683073848 905493492 605250992 694242869 33829466 420181515 816261421 820344719 929753086 983076154 660495612 737958177 134350655 833315195 719102948 489477484 440838199 161852868 472784001 985718288 517339988 921226199 285192487 959176851 759335443 971787036 678870453 691840929 942963756 252646200 510374362 216256809 754291369 196440804 567300340 347402733 74902640 631071847 401806674 907054753 748286519 564778303 862859057 261773572 958696463 126904641 250484454 469781576 886998554 643802129 598765754 848087126 228266509 876309921 843283246 655571635 580511010 415017344 596243717 679711132 418259963 623505736 608733805 669863178 269699974 363735925 9209581 972988006 378507856 179266933 534513859 128105611 60611097 217577876 442159266 754531563 113093486 710936352 80186908 649446688 634794854 390517556 592640807 87873116 38873540 382110766 713938777 778550963 874628563 800889005 694122772 361694276 368299611 192957991 362174664 39834316 818783458 935517742 455610130 206288758 707573636 280748898 819624137 290596852 73581573 606932350 591680031 738318468 291077240 825749084 875949630 517339988 848567514 941522592 276185212 695323742 375145140 399644928 398083667 27104034 747565937 142397154 400965995 626988549 890841658 994725563 683314042 543160843 812658511 400485607 413215889 773867180 578349264 624946900 50042561 294199762 602969149 58569448 314135864 597204493 343439532 388475907 924709012 511575332 240276209 998208376 512656205 292518404 551807827 114534650 414176665 993644690 962539567 986558967 460894398 512175817 953652389 871746235 704331017 106968539 939000555 317738774 904052328 697365391 927471243 522504159 712017225 363375634 469301188 924348721 481551082 915221349 419581030 697605585 386674452 931074153 638037473 70579148 672625409 716821105 775788732 887599039 825148599 438196065 81387878 92676996 329388183 518300764 496923498 660735806 434953446 105647472 109850867 394000369 560094520 920145326 176144411 5246380 824668211 942963756 904772910 201725072 33469175 232469904 199683423 840040627 382831348 266457355 358211463 818663361 9930163 786597462 285312584 316898095 60491000 734715558 482271664 542560358 411534531 630711556 470622255 8729193 688718407 221060689 751168847 177225284 667701432 258290759 463776726 798727259 486234865 332390608 29505974 265016191 796445416 527788427 448164116 86431952 229227285 183950716 184911492 202805945 268979392 476026620 820584913 979112953 192597700 707453539 759455540 36111309 958336172 384752900 129186484 449004795 81147684 810736959 393279787 781673485 982956057 397363085 474105068 3685119 748286519 430149566 670343566 463056144 587836927 623986124 418500157 354368359 43076935 693402190 639959025 569462086 343799823 31787817 327466631 212293608 637316891 582672756 872586914 993164302 443360236 859256147 803771333 683073848 196440804 28665295 849047902 224903793 773266695 944645114 818303070 804972303 358451657 788278820 671064148 220099913 782394067 600927500 211092638 251565327 613657782 279307734 5486574 928311922 419460933 306449656 190916342 641880577 759575637 259611826 160051413 645003099 183470328 292038016 136392304 879072152 166656748 689919377 648125621 357370784 397122891 870425168 830312770 473864874 917383095 424144716 687517437 9209581 887358845 838479366 236433105 557812677 293359083 438556356 30706944 550006372 303327134 706973151 998688764 301045291 479269239 174703247 424745201 301645776 261773572 379348535 592881001 709134897 103846017 940561816 947167151 544722104 289035591 872466817 162813644 925549691 696404615 433512282 372142715 318459356 606211768 45839166 889400494 3444925 234871844 771104949 606211768 671544536 659174545 920865908 417179090 208930892 271261235 295881120 521663480 340076816 222862144 725347992 573305190 653770180 899248448 453448384 240996791 97600973 507011646 916422319 460534107 218298458 710335867 1403276 935998130 24581997 981274699 771345143 679350841 637436988 236553202 288675300 640919801 752489914 891201949 934316772 435313737 799928229 242437955 514938048 196680998 774107374 884476517 315336834 47640621 72860991 604290216 289996367 907775335 328307310 837518590 448524407 627108646 284592002 948368121 93637772 636596309 860697311 362775149 400725801 801609587 392799399 125103186 739999826 724147022 144078512 478788851 908255723 688238019 947767636 902130776 461014495 153806369 755132048 413215889 27584422 855653237 780112224 197281483 691480638 181188485 210492153 758734958 422703552 411534531 435914222 718982851 551087245 813739384 128946290 969505193 708534412 500406311 263334833 962779761 199563326 267418131 725588186 107569024 713338292 151284332 643081547 529589882 567180243 521423286 273182787 851690036 948127927 96279906 616059722 524065420 425465783 658333866 983436445 237994366 821665786 906454268 613177394 426906947 475065844 948728412 670823954 277986667 946566666 63973813 612817103 563096945 968304223 984997706 323263236 681152296 914380670 524665905 264535803 371061842 883755935 917623289 735916528 329988668 398564055 827910830 557572483 296841896 829111800 265976967 322302460 503288639 241477179 91596123 976590916 879192249 538837351 314376058 166416554 727749932 992083429 649086397 642360965 463056144 50162658 257930468 532352113 73581573 195960416 481911373 859736535 119578724 704691308 137473177 679470938 598285366 364576604 815660936 858415468 387395034 969985581 592280516 148762295 297442381 803411042 870064877 329027892 194759446 530070270 214215160 880273122 808575213 443960721 472904098 859256147 225984666 329748474 963980731 826469666 364216313 236913493 837038202 136032013 362775149 462815950 342718950 904172425 619542535 184791395 260212311 436995095 864060027 106728345 259972117 563937624 265736773 967823835 137713371 144438803 35871115 643922226 601527985 151044138 802930654 980434020 444080818 409492882 284832196 403968420 489717678 216857294 119578724 721624985 768222621 760296219 819744234 839320045 531751628 103245532 991122653 157769570 439877423 302846746 336233712 915341446 276545503 340076816 883395644 245920768 304528104 607172544 747205646 259611826 476026620 387635228 779872030 835356844 535834926 703490338 427987820 439997520 83069236 600567209 596724105 550366663 205928467 789239596 825749084 73101185 543040746 859736535 248322708 963140052 283631226 460293913 52564598 965662089 472183516 588797703 107809218 941402495 383792124 412375210 239555627 922066878 529469785 570783153 870545265 553369088 351486031 248923193 3925313 858415468 225264084 421262388 90275056 502808251 993164302 807614437 98922040 661336291 173262083 176264508 614978849 733034200 805332594 130027163 580751204 891682337 945005405 467860024 80427102 893003404 346922345 356049717 496923498 694122772 697965876 555290640 17616371 858055177 387515131 574986548 633713981 772185822 990281974 642961450 593241292 687277243 635875727 365897671 704811405 696164421 625547385 745644385 96760294 624226318 388115616 643081547 793683185 78265356 405649778 188274208 249883969 717181396 789840081 72500700 857454692 574626257 836197523 167617524 126424253 284832196 427147141 459333137 902971455 248562902 250484454 528268815 443480333 218898943 501367087 692921802 441318587 11011036 334912645 393640078 963620440 259611826 727389641 130627648 971306648 329508280 752489914 556611707 514097369 472423710 130027163 472784001 904532716 516018921 160411704 794283670 103846017 633353690 713218195 534273665 263935318 718502463 790440566 5726768 269219586 474705553 832354419 680792005 392439108 189835469 711777031 235712523 8008611 981995281 563217042 38273055 957975881 629750780 859496341 563337139 707333442 302366358 376586304 490678454 2364052 385953870 284592002 70819342 577268391 365177089 337194488 555650931 613297491 682593460 842322470 279908219 782514164 650767755 163654323 549405887 866221773 603929925 575466936 569462086 897086702 382951445 108409703 700247719 279067540 580991398 140355505 680912102 918944356 191036439 994605466 799207647 764499614 43317129 794403767 739159147 791401342 592640807 334432257 929272698 144558900 537876575 609694581 639959025 643922226 63493425 467259539 229587576 864780609 608733805 460654204 814219772 574866451 398924346 311253536 697245294 957135202 842682761 159811219 4045410 294920344 699166846 295280635 632753205 747325743 862138475 223462629 130627648 627228743 593961874 34189757 994605466 876670212 239195336 881353995 494161267 488997096 238714948 651728531 763538838 264415706 567540534 782874455 330589153 67336529 697485488 813499190 2844440 333831772 342238562 185992365 785876880 715860329 316297610 861057602 833195098 857334595 326986243 805692885 853371394 540278515 612697006 328787698 832474516 443120042 115735620 812538414 55326829 792962603 63493425 632873302 185391880 690399765 169779270 999409346 842562664 963019955 681752781 860577214 189475178 804732109 259251535 182509552 738678759 390877847 10410551 335633227 556371513 460774301 699527137 664578910 477948172 831513740 866101676 70218857 467499733 820825107 479389336 643802129 806293370 460774301 998568667 819624137 785756783 242197761 376946595 551447536 908015529 717061299 640679607 271261235 850489066 431350536 98441652 41395577 906934656 880032928 176624799 811577638 187673723 138674147 699527137 106848442 235472329 770384367 932755511 27464325 880873607 3565022 797045901 788038626 602368664 301885970 167017039 787318044 809175698 462215465 322403 851810133 883876032 356770299 329388183 49802367 508813101 593001098 941162301 587836927 616780304 408532106 295400732 25182482 823707435 352446807 256729498 481551082 929032504 786357268 166896942 576547809 121980664 704331017 370821648 723066149 621103796 46079360 259371632 613297491 127745320 653049598 989681489 755252145 731953327 978632565 764019226 235112038 500646505 10530648 706132472 867662937 559734229 714178971 127385029 768462815 403728226 367218738 312334409 96400003 334071966 681632684 850729260 294439956 859496341 556491610 514457660 174583150 118978239 469541382 537636381 693642384 585675181 185992365 105046987 98321555 2484149 723186246 20738893 489117193 807013952 868984004 261653475 949929382 207729922 924468818 202445654 937919682 404328711 47880815 516979697 392319011 452247414 150924041 25782967 772786307 510614556 527428136 899488642 786357268 941282398 1643470 322403 498845050 905613589 359052142 233550777 107208733 366017768 885917681 513977272 949689188 11251230 576067421 819023652 897807284 412855598 598285366 612336715 810977153 316657901 323503430 322782848 276185212 821185398 826349569 336353809 723426440 131468327 738558662 711897128 807374243 35510824 990882459 548805402 831393643 758254570 500886699 340076816 272222011 57968963 345481181 737597886 462695853 121139985 864660512 805812982 280508704 842562664 664218619 725347992 13292879 347402733 466058569 213134287 621343990 795004252 598045172 648485912 674426864 715980426 152725496 895525441 54486150 992563817 192357506 263935318 820464816 806773758 694723257 516859600 223462629 655091247 909696887 788519014 388836198 845444992 794764058 357851172 968664514 259731923 991843235 872586914 66495850 437715677 311854021 843643537 787798432 150563750 6687544 794643961 548925499 370461357 170619949 711897128 533673180 326265661 971787036 230067964 985117803 145519676 20378602 730031775 272942593 188514402 700968301 172541501 945245599 59049836 783354843 63373328 485153992 287354233 576307615 239075239 881474092 981995281 519021346 595643232 247241835 959056754 188514402 999769637 372863297 178306157 556011222 89554474 599486336 265256385 178546351 727509738 280868995 619062147 742281669 467259539 59650321 52684695 773506889 292278210 542200067 505690579 295520829 131948715 628669907 219739622 888800009 205448079 646083972 570182668 82588848 800168423 236433105 133509976 322422557 26743743 474825650 808214922 851449842 86431952 443480333 311974118 178906642 932155026 727029350 692081123 658093672 731593036 642721256 591800128 105407278 95799518 420902097 617981274 682694 12332103 468700703 472423710 796925804 988840810 22300154 275945018 68537499 923988430 114654747 790200372 35510824 892282822 421382485 979593341 118617948 801849781 189955566 325424982 692201220 423424134 92076511 428708402 334552354 692321317 629630683 177585575 620503311 228987091 962059179 234991941 448884698 879672637 569221892 192597700 132549200 842442567 19177632 535354538 170499852 125943865 21459475 807494340 138794244 334672451 96159809 737237595 179026739 52084210 779391642 580150719 212533802 572944899 50402852 633233593 440237714 370701551 971787036 490077969 465698278 933355996 121019888 753450690 947407345 226465054 872226623 213614675 314496155 679350841 576307615 298042866 236553202 882675062 405889972 737597886 724026925 597444687 645843778 646444263 166056263 426666753 636596309 669863178 114774844 115135135 353407583 45719069 378988244 427267238 690760056 668422014 939601040 459453234 5726768 794283670 570663056 404929196 561895975 705772181 518540958 306930044 147801519 557812677 632392914 589758479 249883969 708894703 751889429 654010374 207249534 158370055 802690460 661336291 745404191 223342532 391958720 584594308 621343990 587476636 978032080 722585761 427027044 662176970 90515250 255408431 554810252 244239410 36231406 183230134 331189638 914260573 390037168 181188485 715500038 263575027 889760785 990041780 349684576 251445230 749367392 117657172 884836808 794764058 960858209 426186365 101564174 847846932 724147022 789719984 755732533 827430442 88113310 575587033 440477908 308851596 888439718 506891549 186232559 203406430 891802434 427747626 310172663 121620373 21219281 923748236 823947629 110211158 624946900 637557085 244719798 76103610 227666024 926030079 86672146 312334409 156208309 649927076 481430985 813739384 936358421 166296457 368299611 522263965 384872997 469421285 53765568 525986972 739519438 496323013 850489066 538597157 976831110 963620440 685475788 921226199 383431833 923147751 662176970 128826193 189114887 590839352 270780847 333711675 488516708 795004252 752129623 707213345 547484335 89554474 661816679 444681303 978632565 327226437 129666872 118137560 39714219 545802977 583753629 503769027 705531987 442999945 9689969 245680574 999049055 163894517 752489914 998448570 568741504 792602312 611736230 670223469 351606128 568981698 110691546 361694276 311854021 97240682 442039169 951490643 984517318 387875422 734475364 933596190 137232983 983916833 473984971 836437717 453208190 125343380 492239715 774107374 930833959 690639959 457291488 95559324 824187823 757774182 677189095 705291793 252406006 425225589 390037168 729191096 976831110 101203883 526947748 215776421 61932164 233190486 275104339 316777998 85110885 100723495 639718831 335272936 99762719 35150533 548325014 153205884 206048564 874748660 321942169 663978425 157048988 115615523 670103372 497884274 550006372 323983818 741921378 317138289 203406430 605971574 443600430 307530529 976951207 674426864 428228014 606211768 145519676 183830619 714539262 792242021 878471667 648966300 613177394 248803096 424985395 889640688 120419403 82708945 638758055 24341803 317258386 353647777 121620373 719463239 478188366 863099251 933235899 478788851 146480452 667581335 917743386 174102762 381510281 575466936 502327863 894084277 345601278 493440685 156208309 621584184 605130895 881233898 967103253 57848866 235832620 106127860 989561392 179146836 782634261 579069846 559614132 132549200 222381756 825388793 963019955 999889734 572704705 515178242 539197642 843163149 158610249 305368783 296361508 515778727 922547266 181188485 477587881 646564360 127024738 734235170 148882392 186352656 617981274 643802129 862138475 316777998 453928772 87512825 916182125 889880882 994485369 285552778 757774182 742041475 574746354 511455235 158610249 916542416 70939439 121500276 820224622 234991941 799928229 138433953 659294642 703850629 112132710 322782848 272942593 202325557 988240325 981274699 917983580 597564784 447443534 185632074 189595275 321461781 306089365 555530834 361454082 746364967 438916647 404929196 592520710 4165507 449605280 486595156 255168237 497644080 595162844 407331136 832834807 633593884 978272274 27104034 286633651 116576299 708654509 51603822 211452929 196801095 149963265 309692275 575346839 942483368 326866146 258050565 841121500 253246685 1163082 373463782 489477484 111892516 669502887 805812982 215055839 136752595 872827108 164014614 276545503 480109918 530070270 536555508 298283060 50282755 708294218 499445535 343919920 428468208 268739198 797045901 83549624 130267357 999649540 130387454 150924041 458612555 244239410 602248567 833195098 703009950 201244684 270300459 131468327 800528714 602488761 263094639 787077850 897927381 912699312 906934656 287714524 203766721 453088093 927951631 756453115 489717678 915701737 275824921 383431833 875829533 851930230 978392371 581471786 489837775 454289063 389556780 11851715 693282093 458372361 48000912 513256690 886638263 836077426 858775759 20498699 768102524 95559324 149602974 780952903 776629411 915221349 274383757 147921616 976831110 30106459 598405463 573185093 551567633 681872878 944525017 966142477 918704162 70459051 322422557 226825345 319660326 69378178 217697973 125943865 317498580 578349264 815901130 869104101 451046444 842922955 132549200 921346296 239195336 666380365 676828804 173382180 127144835 185151686 876189824 452007220 625547385 329147989 786477365 998448570 768462815 255888819 652929501 963140052 310893245 928311922 34550048 457891973 287594427 914620864 102044562 464857599 765940778 538236866 322662751 991603041 690519862 3565022 402046868 428468208 568621407 336473906 537876575 907895432 193078088 175543926 389556780 980674214 741080699 973828685 312334409 87392728 518060570 407331136 605851477 941882883 547844626 621824378 638637958 841481791 107208733 111892516 484553507 311854021 303807522 740720408 572104220 852050327 357370784 687757631 37192182 402647353 836317620 28545198 456570906 599246142 833075001 815901130 542680455 863339445 70098760 896246023 517099794 904172425 962899858 539798127 116216008 230308158 865381094 46319554 730992551 48841591 54005762 505090094 210372056 606331865 134230558 302966843 40434801 127264932 286753748 317978968 38753443 746244870 120539500 739879729 291437531 788038626 200283908 47160233 504249415 258771147 543040746 382471057 982715863 450085668 135911916 922888 92556899 696284518 717901978 204607400 938039779 122701246 43437226 465938472 529589882 996887309 865981579 551447536 918463968 29505974 400965995 168938591 234751747 549886275 200043714 669262693 234631650 730512163 285072390 67937014 5246380 671784730 589398188 870184974 417419284 979112953 152125011 653770180 757173697 184671298 885797584 341277786 541839776 849408193 640919801 961698888 157649473 154406854 523464935 194639349 502207766 510374362 611736230 696885003 329147989 135071237 654971150 358811948 880032928 388355810 706732957 358811948 409492882 44037711 152845593 277025891 840280821 174703247 292878695 902611164 232710098 825869181 460053719 744323318 501487184 467739927 257089789 778070575 548925499 783955328 432431409 254807946 652329016 190916342 69858566 835717135 523224741 958576366 519381637 161252383 195119737 53645471 965782186 92196608 666980850 182509552 757413891 900929806 504849900 798967453 574386063 587116345 208210310 40915189 923147751 641280092 463536532 637076697 562856751 800048326 221420980 134470752 771345143 109130285 711656934 526707554 780712709 743362542 245440380 593961874 326505855 289395882 17135983 16895789 907535141 372623103 839560239 298523254 410333561 484553507 656652508 718142172 888079427 11851715 614138170 427027044 257329983 779391642 960497918 775428441 82348654 641520286 685355691 160051413 143237833 903692037 737717983 905493492 551207342 495962722 642961450 736997401 95439227 777950478 970706163 888199524 22180057 951610740 623385639 884476517 694723257 557092095 895045053 192357506 627228743 412495307 91836317 14734043 376105916 962179276 971186551 815420742 425465783 952091128 963860634 41395577 481551082 54606247 832594613 92196608 844244022 119578724 301165388 794283670 608493611 975750237 228866994 133870267 325785273 748766907 249883969 2003761 394961145 457771876 661936776 668902402 841721985 534754053 674667058 556731804 123541925 651848628 770624561 468700703 737717983 436634804 521783577 607532835 881714286 169058688 927831534 379708826 75262931 48721494 113573874 671784730 299243836 264655900 288074815 255408431 25302579 945125502 462455659 769663785 26503549 853731685 344160114 379108341 304648201 86191758 939961331 86191758 869584489 324103915 853251297 527067845 629390489 845925380 889280397 58329254 440598005 619422438 500766602 591920225 410453658 886998554 103485726 633593884 318339259 721865179 191156536 777229896 52084210 927351146 12572297 644642808 31187332 722825955 166896942 954613165 446122467 193318282 911378245 556011222 986318773 26143258 191036439 803651236 606812253 633233593 825749084 711777031 935037354 807254146 417899672 954372971 571143444 645123196 419821224 56527799 409612979 426906947 992924108 354368359 782153873 984157027 49922464 921946781 671064148 188994790 665299492 168938591 371181939 669983275 389556780 929753086 161372480 417299187 655691732 369140290 139274632 580511010 712857904 431470633 338635652 169659173 53645471 27464325 767502039 828271121 406250263 614858752 772666210 871385944 111532225 413696277 215896518 396642503 569822377 946926957 724747507 692921802 781793582 293118889 679110647 996046630 99162234 579790428 310292760 589037897 850969454 503168542 848927805 898527866 497644080 568981698 76343804 871746235 407571330 874148175 797766483 115495426 635515436 987399646 55927314 597084396 892162725 498965147 408772300 755252145 832474516 984997706 152125011 91115735 648125621 176144411 676468513 530310464 112973389 240636500 647525136 950289673 447203340 538717254 876670212 740960602 514217466 128946290 641640383 862979154 35991212 949689188 994725563 710816255 399644928 732673909 327706825 952331322 219259234 566219467 946806860 246160962 262854445 66135559 69978663 224423405 785756783 381510281 352086516 724507313 265496579 123181634 722585761 596724105 910537566 209291183 876670212 99402428 297682575 631912526 690760056 14373752 971426745 515178242 62412552 268258810 216977391 533432986 762457965 202325557 317258386 191636924 397843473 86431952 722465664 275945018 466538957 306449656 24942288 121980664 618101371 168818494 752009526 619422438 354968844 44758293 534393762 368659902 769783882 916062028 106127860 578829652 806173273 402166965 773626986 554209767 118738045 497163692 894204374 706853054 795604737 106608248 297802672 822266271 377667177 481551082 326025467 520102219 278346958 173021889 593241292 296241411 321942169 963380246 74302155 926510467 881474092 396882697 707213345 421382485 536675605 187433529 33709369 147921616 54366053 207249534 781313194 803651236 728830805 413816374 925549691 147441228 948968606 283631226 720904403 775428441 296961993 295400732 510134168 69618372 829351994 641039898 755972727 496323013 241957567 115615523 485514283 714659359 122461052 69618372 997367697 236433105 201484878 420661903 236192911 920865908 50282755 717181396 646564360 858055177 44638196 938520167 90154959 243999216 551327439 370461357 596483911 381750475 273663175 17376177 724627410 578949749 692681608 990281974 530070270 670823954 309211887 770624561 768222621 217217585 786117074 404328711 643561935 816741809 602608858 399765025 494161267 536195217 549165693 268619101 267057840 363375634 2243955 623385639 883996129 39233831 29866265 77304580 665419589 135791819 60731194 195239834 51964113 459213040 25422676 807614437 670703857 76463901 932395220 817582488 878831958 248803096 702529562 206288758 462455659 914500767 274503854 843283246 630591459 568981698 436394610 862378669 724507313 709975576 198722647 130507551 402046868 263214736 315817222 144438803 839320045 349324285 565018497 988120228 13893364 1283179 607292641 391358235 613057297 755732533 865861482 486835350 32508399 860937505 531151143 972027230 38393152 547844626 563577333 156208309 48961688 481430985 75983513 883155450 271981817 130027163 652208919 353407583 894924956 934316772 69738469 647645233 273422981 503528833 908736111 920745811 119218433 279187637 202325557 451887123 867903131 63253231 210492153 519621831 220340107 418019769 687757631 392078817 265976967 961818985 46079360 397242988 525026196 366498156 651728531 805692885 177945866 968424320 852891006 976951207 814820257 934436869 485754477 950529867 347042442 113093486 421982970 909216499 625427288 903812134 347522830 16415401 758014376 373463782 143117736 365297186 242798246 502327863 391118041 17976662 971907133 796205222 315817222 764739808 918944356 914500767 57488575 925549691 39954413 884836808 44638196 202926042 164134711 207850019 608853902 252886394 620623408 652809404 234271359 963500343 125583574 734115073 730752357 286633651 121620373 194399155 299243836 639238443 299604127 912699312 941042204 511335138 412375210 424384910 255168237 940922107 953892583 63133134 950409770 799567938 558052871 556611707 225023890 800408617 343439532 570663056 812058026 926030079 125703671 675027349 16775692 60611097 83909915 135071237 869224198 721985276 326145564 830192673 806773758 811697735 91716220 852410618 462335562 675267543 657733381 20618796 479869724 983196251 899728836 213494578 709254994 920745811 930113377 669863178 134951140 770264270 271381332 404208614 859616438 543641231 614978849 764980002 735075849 531511434 871265847 300685000 314856446 660135321 694122772 813018802 578589458 57008187 272582302 851930230 85951564 600807403 546283365 773146598 176864993 438676453 212293608 683314042 142637348 364336410 421022194 104686696 374544655 566940049 813499190 25662870 545442686 722225470 700608010 477707978 214935742 634314466 12332103 709134897 655931926 336834197 930473668 176024314 441558781 799327744 474825650 87753019 817342294 195840319 651848628 414416859 61211582 422223164 939841234 675507737 627468937 733994976 705051599 165335681 327586728 250124163 888199524 740480214 559373938 401566480 973588491 72620797 98681846 917383095 874508466 861658087 616059722 5126283 258530953 725347992 662897552 108169509 366017768 684995400 566339564 666740656 598885851 83669721 77664871 737357692 554570058 150924041 439877423 953051904 360133015 899608739 911258148 100963689 587116345 951250449 696885003 166536651 817222197 107328830 810376668 777470090 35510824 893964180 327706825 509653780 250604551 495242140 290236561 546523559 558533259 628429713 374064267 285432681 828751509 276905794 526707554 7408126 170259658 567780728 104806793 551687730 375625528 203406430 810977153 347522830 317498580 772426016 74061961 481070694 527187942 588677606 830913255 625307191 956654814 633353690 194639349 295640926 866702161 666620559 531991822 715980426 718382366 351005643 945125502 286033166 147201034 947287248 709375091 837398493 12332103 144678997 387875422 985838385 455610130 254207461 899848933 516739503 93517675 389676877 7408126 919664938 55086635 680071423 3925313 889760785 434473058 250244260 22900639 98081361 270300459 297202187 27344228 948127927 914260573 321581878 856013528 806053176 614858752 894924956 937319197 686796855 645363390 519261540 498364662 76944289 256609401 271741623 473504583 701568786 947167151 779271545 481911373 259972117 218778846 95199033 786957753 331309735 942363271 870184974 684154721 58329254 936838809 979233050 855653237 67937014 533072695 31907914 231389031 170499852 816621712 551687730 608373514 48601397 670703857 405409584 978872759 772666210 436754901 41155383 475666329 920865908 854812558 851089551 942723562 162453353 844003828 206168661 154647048 330949444 938400070 952451419 865260997 239195336 581471786 98561749 430389760 888920106 389917071 398924346 936958906 543761328 19898214 915221349 199443229 763538838 331309735 536075120 877390794 193678573 188514402 934436869 827430442 761737383 617500886 235112038 632513011 150924041 933355996 484073119 898527866 902010679 766060875 95799518 284351808 309331984 113934165 220580301 933235899 329628377 556131319 19898214 118137560 372863297 864660512 397122891 758975152 191276633 135551625 583873726 363976119 862498766 391718526 213494578 569341989 840521015 214335257 864420318 381390184 534033471 687637534 743482639 683554236 242317858 130387454 759695734 418620254 540999097 437715677 504489609 722946052 830072576 691360541 791761633 274143563 755492339 390277362 39954413 809535989 559013647 240396306 912579215 843163149 699647234 562256266 992804011 617620983 18697244 644282517 406250263 845324895 450445959 431710827 96520100 385713676 942483368 698326167 500886699 339476331 813619287 355088941 604170119 640079122 144078512 960618015 6327253 553008797 929873183 290716949 103005338 527668330 877991279 465458084 64574298 553369088 537996672 265016191 303567328 499325438 769063300 178306157 680912102 677068998 106968539 791641536 233911068 837998978 680431714 73941864 568141019 425345686 269099489 79346229 370461357 355569329 150803944 36831891 141436378 264535803 184551201 699407040 945605890 703130047 285072390 880153025 929032504 841241597 199563326 242798246 771465240 575226742 629750780 811457541 575346839 953172001 487916223 412975695 744443415 843763634 228386606 577628682 229707673 607652932 56888090 521543383 172061113 398203764 411654628 720424015 649686882 367939320 179146836 998088279 621944475 420061418 731593036 201364781 458132167 479749627 267778422 456931197 56167508 888800009 132909491 171220434 171460628 257450080 234991941 962779761 406610554 601287791 943203950 97600973 847846932 646804554 507612131 484073119 840160724 463176241 890841658 517940473 777710284 869104101 838119075 761497189 151764720 362655052 630231168 186472753 822026077 859496341 345361084 347402733 504249415 332150414 684274818 101684271 499445535 552888700 413215889 378868147 966382671 668662208 966863059 678029774 813499190 811217347 851329745 592280516 114174359 240876694 676708707 84270206 552648506 496082819 95199033 908736111 85230982 858055177 354128165 464617405 259371632 895165150 699046749 351125740 716460814 363135440 681632684 857574789 341037592 98681846 922787460 19417826 422343261 662176970 418740351 87032437 572464511 451526832 851089551 584834502 843763634 417419284 292518404 517339988 398203764 666020074 136872692 361333985 294560053 386554355 731352842 136032013 812418317 386914646 354128165 620983699 475786426 209291183 202085363 464257114 580511010 324944594 675507737 532232016 947647539 509293489 654610859 9569872 424144716 975870334 79946714 594081971 124022313 765940778 660976000 364936895 857935080 420061418 231509128 265016191 746605161 29505974 551687730 418500157 412855598 161612674 760416316 728470514 973708588 280508704 111051837 361454082 408652203 902971455 557572483 661096097 203046139 925789885 792962603 267778422 100363204 482271664 287834621 996166727 664819104 564057721 158249958 721144597 418860448 382591154 580030622 95559324 516619406 609574484 545802977 645123196 410813949 531031046 460053719 289395882 162333256 38273055 877871182 938279973 561415587 713938777 782514164 576908100 958936657 15094334 904893007 379348535 773146598 896966605 170740046 584474211 176264508 838239172 191636924 207970116 700968301 875949630 828751509 588437412 458132167 472423710 90755444 441558781 224903793 859256147 628189519 393399884 215536227 7768417 482391761 590238867 338395458 888439718 591199643 579790428 240876694 983436445 339716525 231028740 746124773 300444806 489957872 75503125 463056144 29385877 954252874 38753443 554810252 953892583 544361813 446963146 143838318 681512587 244599701 639358540 846645962 706012375 779391642 338395458 995446145 809055601 410093367 613297491 860457117 104446502 680311617 733154297 638157570 482151567 464857599 940201525 883155450 664578910 408892397 347642927 660495612 613537685 296721799 918103677 547244141 607652932 447683728 572224317 934797160 670223469 370221163 873307496 83429527 320140714 400845898 95799518 62892940 680431714 380189214 629630683 172781695 917983580 520342413 209291183 347402733 475065844 554449961 272942593 699647234 302486455 98201458 525626681 390637653 185511977 324344109 491278939 372983394 373583879 900689612 930954056 110091061 921346296 190075663 640079122 262133863 341638077 705291793 377787274 674907252 17616371 923748236 201725072 196680998 845084701 671304342 885797584 280388607 841241597 600327015 470502158 831513740 592760904 997487794 545682880 485634380 660855903 460654204 168698397 538236866 478908948 243038440 426546656 856974304 136272207 962899858 717421590 682694 786597462 533673180 650287367 484433410 964701313 84990788 504249415 727389641 13773267 120659597 576427712 198482453 705531987 384993094 387515131 426066268 943684338 845805283 213254384 183830619 245680574 712857904 842082276 636956600 459573331 624346415 452847899 201484878 683794430 343439532 406610554 879432443 210251959 4525798 35030436 653169695 439156841 289395882 317738774 428348111 682694 168578300 708054024 256609401 271141138 727269544 990161877 839680336 263454930 801129199 624826803 652088822 195960416 86672146 693041899 135071237 176985090 452127317 615939625 405289487 523825226 224543502 841241597 456330712 753090399 365417283 60611097 258530953 34309854 216497003 945605890 964701313 804131624 248923193 150443653 397963570 635515436 854452267 46799942 824428017 682953751 807614437 589278091 503889124 608973999 124622798 193678573 74542349 150563750 900209224 588197218 743482639 79946714 875229048 631432138 234271359 898768060 913179700 863339445 149482877 637557085 269699974 284351808 920025229 331790123 250244260 578829652 573425287 462575756 963740537 593961874 166776845 342839047 311974118 298883545 717061299 602728955 740119923 687517437 574386063 868863907 816261421 748046325 693041899 766301069 419941321 645843778 463896823 179987515 804612012 452967996 680551811 635755630 625667482 181428679 487195641 714899553 633954175 950890158 715379941 415257538 841721985 14373752 364336410 446002370 788278820 845925380 346081666 952331322 216497003 315577028 755972727 819023652 670583760 974188976 626868452 820344719 370821648 988480519 139634923 981274699 9209581 971907133 874988854 43317129 652929501 673946476 631432138 441078393 773146598 758855055 763178547 351606128 143958415 644162420 866942355 711536837 369140290 459573331 623025348 865621288 256008916 348123315 478908948 718742657 256609401 584113920 935277548 693282093 326025467 739759632 242437955 122701246 525986972 158970540 173982665 579430137 345601278 859256147 897326896 198242259 303447231 843883731 763779032 582072271 238835045 963860634 550967148 918103677 94958839 202085363 256609401 219379331 897927381 11731618 265256385 158009764 240876694 57848866 744083124 834636262 186712947 698326167 603329440 980674214 605250992 108529800 152605399 399044443 77304580 193558476 351486031 258170662 970225775 491639230 787558238 526707554 7167932 842322470 542320164 290476755 826109375 508572907 58449351 130627648 176384605 297562478 801489490 647284942 654490762 181909067 927831534 94358354 44998487 943564241 777470090 955694038 514457660 796325319 752369817 306329559 813379093 558052871 433031894 233310583 935397645 756092824 532232016 785756783 105887666 21699669 644042323 131948715 491519133 266217161 16415401 557452386 38873540 128465902 221180786 235952717 968544417 431590730 519141443 678149871 136392304 82708945 22180057 843403343 760176122 551327439 922066878 136392304 747686034 661456388 433752476 251925618 537876575 808695310 52804792 438916647 312334409 822266271 17856565 113573874 351966419 651608434 463656629 870785459 422463358 786237171 956895008 819263846 830552964 517700279 151644623 871866332 466659054 814219772 599606433 370221163 651488337 102765144 557812677 307890820 780592612 690159571 940321622 479869724 843643537 673345991 100123010 874988854 700007525 26143258 828030927 520222316 308731499 14613946 137353080 832234322 529950173 194999640 21219281 955453844 432791700 212413705 572224317 635635533 745043900 751769332 610174969 962899858 147801519 193318282 95559324 197641774 881594189 991723138 33228981 141556475 469181091 634674757 161492577 140595699 491639230 811457541 380909796 419340836 939240749 387635228 383792124 615098946 610655357 57128284 621103796 311733924 660615709 369020193 318819647 756453115 250124163 936238324 122581149 475065844 306089365 357130590 761977577 428588305 798847356 151044138 358451657 609694581 95679421 286753748 183110037 43317129 107689121 653529986 161132286 934556966 581711980 932875608 817342294 831273546 61211582 477587881 88113310 564658206 914020379 47280330 314015767 926390370 808935504 878231473 880393219 151044138 466178666 982956057 522263965 827430442 436394610 201604975 79946714 663618134 283991517 789359693 231869419 537035896 79586423 518901249 450566056 129186484 429428984 463296338 42956838 715019650 756573212 487916223 876430018 369740775 818303070 744323318 316057416 540638806 358091366 352206613 743963027 747806131 371302036 983436445 18457050 520342413 818303070 706012375 158129861 909816984 336834197 112853292 873907981 395081242 261052990 494161267 822146174 34309854 511094944 147801519 253366782 831393643 880873607 694723257 124142410 563817527 344160114 336594003 941642689 742882154 531031046 748286519 760536413 374424558 375985819 639238443 166056263 33829466 831513740 926870758 651128046 346802248 742641960 98441652 806293370 477347687 507371937 594922650 145399579 511575332 888199524 713098098 273062690 312094215 168097912 18216856 712978001 119458627 662417164 111051837 798727259 963380246 641039898 807974728 849888581 572344414 497163692 258290759 923147751 645603584 247361932 770144173 889760785 900569515 174823344 594081971 853131200 604650507 661096097 286273360 509293489 875349145 270180362 38032861 650527561 408652203 173262083 501006796 779151448 727029350 624466512 821305495 268258810 284592002 349564479 576187518 284712099 994485369 328427407 37312279 194158961 232590001 513136593 101684271 448044019 256489304 11971812 430389760 62652746 757654085 532592307 242317858 312814797 522023771 983436445 374424558 791281245 530670755 489237290 439036744 311373633 528989397 640319316 893844083 387995519 776869605 162453353 78505550 441558781 262494154 463056144 120059112 180588000 96159809 330829347 225384181 133870267 845925380 876790309 740960602 185872268 208090213 369500581 447083243 249883969 355569329 122340955 157889667 633233593 476507008 944164726 654370665 945725987 67096335 708294218 951250449 873427593 726909253 646324166 77184483 365657477 629990974 873787884 576427712 914500767 412014919 594802553 776749508 690039474 624586609 111892516 985478094 728470514 969144902 748887004 864300221 586635957 997968182 909816984 574626257 887478942 856614013 696404615 691120347 473504583 198362356 650047173 822506465 590358964 81027587 809535989 560094520 39353928 699647234 96760294 323263236 944164726 467739927 915461543 305608977 289756173 573425287 827910830 655691732 474105068 146360355 227666024 119338530 289395882 870665362 39594122 828991703 209891668 189355081 134951140 545682880 813379093 222141562 807134049 114534650 117777269 881353995 789119499 283871420 942603465 343799823 1042985 818182973 390757750 568741504 780592612 144078512 156688697 41635771 328667601 784916104 126063962 392799399 800048326 20378602 860817408 810496765 110931740 813859481 388355810 106007763 181788970 775068150 140475602 473144292 581351689 250604551 346802248 409973270 528749203 909816984 948007830 903571940 34670145 390997944 362775149 941282398 696404615 409492882 645723681 352446807 525266390 76463901 212413705 882795159 853851782 761377092 543881425 113213583 103365629 805933079 929512892 529109494 237874269 204607400 14013461 335032742 698446264 319900520 478668754 350285061 209891668 807614437 632032623 13893364 644522711 23621221 504489609 243638925 960978306 102885241 828871606 669262693 753090399 6807641 447083243 484433410 54726344 331910220 365777574 143718221 145159385 33349078 727389641 983436445 797406192 307890820 288555203 875349145 539918224 676948901 543401037 431230439 892282822 290476755 847486641 215416130 852530715 487195641 593601583 714058874 416458508 358091366 741080699 754171272 979713438 183230134 972867909 484193216 600687306 111171934 759575637 861658087 874148175 96039712 146120161 416698702 943564241 128465902 470982546 181548776 800048326 328307310 995686339 935157451 990161877 752009526 681032199 412615404 487435835 967463544 313655476 994725563 283511129 63973813 368299611 364216313 225864569 288435106 322422557 910177275 234511553 428228014 495722528 103365629 277626376 619542535 74662446 736757207 381870572 121620373 544962298 667701432 473504583 531271240 905253298 516739503 167377330 209171086 616299916 308491305 261893669 956294523 441198490 139154535 6687544 303447231 577868876 845565089 185752171 955453844 396642503 626628258 411654628 865381094 859976729 622905251 847726835 840881306 338755749 736637110 537876575 232469904 696164421 442999945 614498461 746244870 334432257 493800976 802089975 143718221 404088517 165936166 599726530 276785697 893003404 397122891 9930163 78505550 884356420 280989092 569822377 186472753 301765873 194639349 332750899 570302765 128105611 244479604 782994552 348843897 207129437 133029588 745644385 780352418 218658749 166896942 573545384 445161691 533793277 102524950 392679302 32268205 956174426 982835960 127985514 890241173 319780423 394841048 92436802 444561206 194639349 682233169 576427712 592881001 667581335 802210072 62772843 940922107 920505617 659414739 832114225 95439227 744083124 767742233 510374362 175183635 244479604 371662327 359172239 28305004 866822258 430269663 99042137 21339378 814580063 113814068 371181939 616059722 578949749 364576604 462455659 416338411 482151567 639959025 78625647 11371327 231749322 692681608 602608858 617500886 566459661 243638925 728110223 157529376 314976543 307170238 756453115 585194793 508212616 247482029 829231897 882915256 397843473 486114768 765100099 947287248 155367630 999889734 543641231 850849357 776629411 64093910 414897247 51964113 848087126 268859295 967703738 546043171 371302036 193078088 80907490 765220196 877270697 954853359 494881849 769543688 627348840 940922107 792722409 856013528 908015529 926030079 871746235 690159571 423183940 373583879 565979273 63973813 483712828 845925380 452127317 193918767 50883240 964100828 712137322 306209462 3324828 544962298 931554541 291917919 724147022 527187942 333711675 176985090 561775878 470261964 515418436 576908100 995205951 77304580 115495426 296601702 85831467 536795702 908736111 198362356 215896518 98801943 421622679 888679912 129186484 111892516 362174664 674546961 237273784 260212311 619422438 936958906 569341989 320380908 824067726 193678573 850849357 557692580 816861906 188514402 54366053 235472329 380429408 350285061 5486574 379588729 749847780 910297372 43317129 266577452 73701670 84030012 358811948 807134049 125343380 180107612 969865484 214455354 784435716 604530410 87993213 447803825 735556237 994004981 576908100 808094825 385593579 228146412 445041594 665419589 48241106 293238986 60010612 613297491 345721375 930713862 7167932 553729379 870184974 299724224 316657901 766180972 768703009 280028316 50883240 874028078 390397459 503648930 368179514 935637839 62892940 820104525 553969573 472303613 738678759 600327015 835717135 888800009 555410737 384512706 400605704 161612674 226585151 298283060 42116159 324464206 718622560 936358421 548084820 826589763 590719255 724507313 891081852 801369393 984277124 202306 884356420 351846322 50643046 580030622 680191520 21459475 909576790 831633837 319300035 24942288 73461476 314976543 863459542 793082700 776629411 954012680 966142477 846525865 756933503 600447112 177465478 911978730 579189943 137593274 44037711 44638196 375265237 42716644 458612555 903812134 450806250 166416554 47160233 474105068 489117193 18096759 116456202 525266390 131108036 446722952 788158723 963019955 308851596 80427102 960257724 582912950 795244446 876189824 308010917 936358421 887719136 367218738 405409584 817222197 570542959 687877728 543401037 295640926 409252688 328307310 928672213 48841591 152965690 254807946 237994366 806773758 148642198 163894517 552768603 350405158 5246380 300204612 340437107 589398188 229347382 703490338 98561749 995806436 202926042 979953632 45238681 942483368 269219586 512416011 989201101 340797398 677429289 990762362 786837656 640559510 912939506 621464087 488156417 810136474 650887852 656652508 309812372 117056687 35150533 827310345 895765635 334192063 18937438 82108460 407691427 834035777 684274818 144078512 179987515 643441838 639358540 140595699 449485183 845084701 880393219 275824921 708654509 37312279 973948782 197161386 265856870 584594308 524185517 546043171 47280330 630231168 161972965 825508890 587836927 124622798 540638806 973228200 677549386 805572788 467259539 961098403 592760904 377426983 305368783 532592307 942723562 177345381 715259844 217457779 977791886 994605466 611496036 302606552 359892821 892763210 164615099 285312584 68537499 568020922 506170967 984397221 38873540 512416011 940081428 834636262 878231473 621584184 933956481 505690579 498124468 795124349 180107612 859856632 151404429 658093672 318699550 871025653 589638382 543401037 566819952 912339021 629510586 751048750 327466631 774827956 541119194 240396306 754891854 238234560 497884274 329508280 675507737 754531563 532592307 985838385 695804130 649446688 361213888 360012918 166896942 543160843 333951869 602248567 288074815 576307615 472543807 325424982 839320045 109490576 477948172 188514402 625547385 602128470 212773996 51844016 676948901 591920225 428948596 151164235 45238681 243158537 224183211 505450385 556851901 900449418 14013461 859256147 484073119 595883426 81027587 623505736 823467241 684274818 736396916 446602855 349564479 14613946 376105916 945485793 610415163 411654628 169058688 975269849 690279668 850248872 86191758 80787393 932034929 854212073 778430866 357370784 568621407 858535565 355449232 806173273 234151262 568741504 111292031 866221773 43317129 387875422 465938472 987639840 444080818 227425830 981995281 176744896 262374057 519862025 384392609 522384062 12091909 838479366 786357268 849528290 465217890 872106526 381390184 292758598 660615709 641520286 416938896 414416859 502688154 35871115 771465240 752129623 461975271 527187942 860096826 944404920 566339564 343079241 899128351 988600616 508332713 525866875 488036320 531871725 732193521 383191639 492479909 157169085 856854207 395801824 369860872 448524407 195119737 741921378 715860329 651968725 322422557 867422743 908976305 873427593 385713676 402647353 725347992 864180124 745284094 5726768 457051294 159571025 610655357 260812796 421742776 730151872 969024805 963740537 844003828 12932588 626388064 550967148 887118651 727749932 664939201 785516589 254928043 144318706 699407040 503769027 592280516 776749508 747686034 953172001 868863907 189114887 543040746 327947019 760056025 946326472 802810557 155727921 253486879 494281364 836317620 497764177 551927924 537996672 959176851 397363085 495962722 734955752 241717373 694603160 785756783 20738893 987519743 915581640 17015886 260452505 958816560 202306 140235408 514337563 519261540 524906099 408291912 937559391 356169814 69738469 23501124 314616252 461975271 455490033 547724529 447923922 241236985 54486150 421142291 286393457 904652813 439397035 436034319 906334171 754531563 755492339 872586914 963140052 850008678 96640197 233670874 46079360 124502701 632392914 592881001 739039050 395441533 578349264 234751747 897086702 889520591 630711556 387755325 256609401 341037592 151404429 824428017 826589763 234631650 221300883 744563512 826709860 865501191 513016496 215296033 460774301 45358778 519261540 115975814 549646081 702649659 642961450 433272088 142637348 507612131 56647896 818663361 315336834 16055110 683554236 383672027 893723986 420301612 264175512 261533378 429308887 112132710 563096945 912819409 763058450 188394305 560454811 607532835 142156960 277025891 804251721 498965147 505210191 47160233 591079546 614258267 143237833 957015105 298523254 449845474 679831229 522023771 448524407 994725563 909576790 966382671 780112224 683193945 207009340 745043900 126544350 199803520 917983580 175664023 530550658 737477789 947767636 85951564 281229286 150563750 363015343 239795821 391358235 63613522 855413043 799327744 778310769 46799942 709975576 660735806 287954718 453808675 742882154 360613403 182869843 421622679 951850934 13052685 930713862 404689002 912459118 144078512 621464087 548925499 74182058 513737078 521663480 424024619 681632684 727749932 886878457 429428984 18216856 801369393 714178971 876670212 737477789 896486217 455610130 191877118 642721256 651968725 60010612 845444992 317378483 545322589 106007763 818423167 561775878 483232440 473864874 836677911 413576180 972507618 686076273 430509857 511815526 483953022 395681727 172301307 154526951 878231473 63973813 939961331 436274513 612216618 998568667 524906099 743482639 660375515 77784968 704090823 13292879 27704519 812298220 896005829 864660512 977431595 505330288 776149023 213134287 105767569 34790242 912699312 687037049 611375939 780592612 786837656 705291793 277986667 798727259 537876575 837518590 785036201 612697006 855052752 711296643 415497732 433392185 906574365 525626681 990161877 87632922 773026501 207009340 734115073 255768722 649446688 988000131 992083429 38513249 910297372 955213650 860216923 976230625 714899553 147201034 817462391 307410432 365777574 603329440 658213769 649806979 974909558 618701856 548084820 398924346 131948715 519741928 179627224 527428136 608973999 644642808 686316467 307170238 413335986 277746473 633593884 899608739 541479485 961458694 849167999 659414739 463896823 880393219 19658020 461254689 100483301 549886275 227786121 521663480 717661784 117176784 252045715 40554898 802810557 310653051 531271240 824548114 96520100 403608129 740600311 349204188 125583574 908616014 203886818 613297491 614618558 213014190 254687849 704811405 165215584 781673485 75983513 73701670 750448265 511335138 297562478 947647539 767982427 483352537 809415892 258891244 990882459 451406735 598045172 241116888 147441228 184911492 375505431 994965757 625187094 665059298 770624561 412135016 462215465 488756902 445521982 505210191 247842320 265016191 149843168 189234984 828391218 497644080 1403276 47280330 182629649 796925804 890361270 609334290 706012375 790800857 702889853 791521439 969865484 19177632 303207037 559734229 473624680 454769451 619182244 90875541 698085973 511335138 624106221 401926771 697485488 801369393 230548352 783595037 60370903 139755020 186833044 635395339 707453539 808575213 191396730 225504278 100483301 94118160 929272698 702409465 626388064 860697311 565498885 915221349 522263965 262133863 466058569 328307310 222261659 789359693 373944170 168338106 272462205 504249415 89434377 150443653 244719798 878111376 709855479 774467665 872827108 138554050 743722833 244839895 295160538 715860329 876069727 815901130 957255299 62292455 90635347 904893007 787798432 399284637 57848866 192957991 924588915 995926533 564898400 40795092 811697735 518781152 443360236 981034505 225384181 112372904 397122891 954733262 760776607 565498885 46199457 854452267 596964299 23020736 861658087 821185398 966742962 544361813 462936047 168097912 296961993 159330831 391598429 411294337 578349264 228146412 160771995 626147870 38633346 663137746 921346296 99042137 537636381 510734653 258771147 658453963 791761633 371181939 746364967 621824378 471102643 921106102 155487727 342718950 24702094 961578791 620022923 269940168 605371089 481791276 913539991 895765635 56888090 509173392 903692037 514097369 173862568 701688883 144078512 49682270 902971455 301165388 227786121 17135983 451526832 211332832 914620864 933115802 745764482 396762600 344160114 319059841 799688035 203406430 547964723 768342718 477107493 375265237 610174969 455970421 539197642 378868147 335993518 212533802 430389760 356410008 16415401 395201339 628669907 168578300 356530105 186352656 771585337 14734043 80547199 196680998 70218857 585074696 71900215 803411042 495962722 508092519 648726106 190075663 546523559 720784306 348123315 634674757 283270935 796925804 723546537 793082700 776269120 645123196 895165150 753330593 341157689 772666210 544361813 124983089 375145140 463656629 845444992 733994976 421622679 507251840 725227895 395441533 731472939 271021041 339356234 818783458 185872268 541719679 331069541 48000912 641520286 117777269 655931926 984036930 488636805 43197032 614018073 589638382 853251297 822866756 655571635 618701856 765100099 753330593 792242021 645603584 463896823 691360541 838359269 57488575 429308887 529709979 373824073 637797279 950049479 544361813 191636924 362895246 923868333 510854750 60250806 676348416 348723800 565258691 757053600 293599277 703850629 329628377 56167508 997007406 654730956 854091976 675507737 925669788 213854869 838719560 145519676 78505550 347042442 856373819 82108460 415978120 398564055 779511739 566459661 963740537 224423405 486234865 908616014 473024195 68657596 259491729 517339988 392679302 820705010 389796974 16895789 575587033 877991279 855413043 915941931 793322894 576187518 725468089 695563936 239915918 455730227 459092943 902491067 907775335 527908524 895045053 434352961 231989516 460534107 308611402 36831891 227545927 812898705 469421285 934196675 158009764 853251297 176504702 907415044 177105187 635635533 110331255 33349078 294560053 716340717 4525798 426666753 762578062 108169509 261653475 567420437 899848933 107088636 442759751 464737502 443120042 788639111 294079665 895885732 186232559 373824073 136752595 914260573 820104525 832954904 81027587 492119618 411654628 85951564 106127860 809055601 47640621 3444925 354128165 354128165 921226199 840280821 378027468 339116040 20138408 459453234 912819409 659534836 179266933 487195641 608853902 853491491 546763753 44518099 579310040 692321317 295400732 568861601 395801824 377547080 898647963 551087245 60611097 240276209 993404496 919184550 419581030 666740656 821785883 857454692 173502277 178306157 30346653 574746354 900689612 557812677 327106340 371662327 853491491 354488456 289876270 889760785 403728226 15094334 404809099 712017225 796445416 932034929 620623408 333591578 350164964 262854445 80307005 399765025 101684271 77064386 376226013 757053600 274744048 858295371 26143258 319179938 13773267 17496274 686196370 389556780 108169509 486715253 199082938 540879000 287834621 653049598 406610554 95078936 994365272 772906404 281709674 905733686 363735925 166776845 163534226 422463358 339716525 317618677 472543807 503408736 826589763 781673485 335272936 963019955 419581030 179266933 140235408 352807098 967943932 203286333 923387945 86191758 348723800 541239291 176264508 976350722 596483911 89794668 871746235 63973813 426186365 746004676 543401037 543641231 73941864 897326896 793322894 929032504 343439532 922307072 71059536 550726954 957495493 865861482 344400308 9329678 62052261 282910644 548204917 893123501 294079665 828391218 406850748 527788427 767261845 63613522 902010679 92676996 480109918 674667058 979112953 614498461 715019650 853851782 276305309 166776845 52804792 21699669 718262269 401686577 78385453 286153263 737597886 401566480 61331679 959777336 987159452 663858328 174823344 785516589 436514707 170980240 10770842 633834078 449845474 163774420 966863059 810616862 876069727 8849290 113453777 659775030 223702823 153686272 275584727 960257724 94598548 877150600 485514283 153566175 510134168 681632684 225384181 621584184 515898824 881594189 501487184 940201525 615939625 472543807 641039898 381149990 446002370 15694819 547003947 692201220 855893431 924348721 125463477 264055415 764859905 283871420 205207885 180227709 365177089 505930773 831033352 282790547 336594003 521903674 9209581 715620135 750688459 410093367 959897433 782874455 161012189 15214431 244119313 351846322 534874150 257209886 716941202 214575451 544361813 515418436 527908524 136992789 949088703 131108036 789960178 561895975 409132591 127505126 555290640 41635771 496443110 655331441 293719374 334312160 702289368 565979273 180107612 230428255 783354843 564778303 821545689 315697125 942002980 118377754 694002675 472784001 772065725 100002913 542440261 241597276 587476636 626988549 745163997 183230134 978872759 847606738 78985938 178666448 844003828 369380484 377306886 40194607 860216923 105527375 565979273 852410618 878351570 147921616 710095673 759095249 537155993 450806250 258170662 742762057 546523559 576667906 923267848 107809218 679470938 735075849 584594308 797045901 70699245 548445111 110331255 698686458 945966181 732313618 453568481 339236137 365657477 416818799 566219467 368419708 45719069 893723986 288194912 763178547 896966605 865140900 938400070 493200491 918103677 182149261 801249296 479509433 724147022 997487794 102284756 810977153 603449537 834996553 798607162 406970845 823347144 458852749 121860567 213854869 664819104 147921616 762818256 614018073 493320588 152125011 540879000 455850324 108289606 691961026 922907557 990402071 69137984 657973575 288915494 121860567 645723681 652929501 669262693 992924108 960137627 282069965 975269849 613897976 123301731 601648082 909216499 455129742 521783577 551927924 518781152 982475669 844724410 985598191 522384062 360012918 115495426 488036320 296601702 264415706 129426678 570422862 987639840 420902097 658694157 880273122 693402190 818182973 41515674 489837775 590839352 497403886 770384367 711416740 338275361 946086278 105407278 298403157 581471786 755372242 196080513 144438803 943564241 328427407 124502701 205568176 759575637 87993213 49201882 599966724 688238019 441078393 203646624 335032742 995326048 206408855 220460204 847486641 926990855 491999521 108289606 153325981 248923193 486354962 868023228 256369207 127385029 523585032 156928891 425585880 116816493 537636381 351125740 629870877 93517675 895765635 240876694 824548114 524786002 102404853 770024076 488276514 399044443 880153025 230908643 323503430 489597581 854091976 375145140 640199219 666380365 568501310 669863178 211813220 708294218 768582912 322422557 407451233 205928467 315216737 445041594 473624680 716821105 792001827 87512825 103725920 110691546 459453234 611616133 794523864 322403 378507856 419220739 633473787 634554660 218058264 480950597 857214498 563577333 30947138 268619101 88113310 866341870 774227471 879432443 17256080 639838928 960858209 625187094 236793396 735676334 267658325 46199457 59650321 441798975 895525441 715019650 81988363 315336834 957615590 814820257 838839657 664218619 369620678 508212616 899128351 694002675 338155264 384392609 175664023 486234865 733994976 11611521 387154840 431830924 557812677 987880034 192237409 862859057 247121738 600807403 945966181 165816069 705652084 754171272 31187332 356410008 231389031 30466750 628910101 501727378 426666753 633593884 900569515 70579148 103365629 331670026 835837232 426066268 660015224 336954294 379949020 254687849 431590730 161732771 527668330 448284213 243638925 866101676 505330288 774107374 630831653 34790242 739879729 368059417 895405344 937679488 971787036 772786307 779151448 531751628 574145869 430870148 694483063 272582302 242678149 764980002 101564174 110571449 792962603 884476517 164855293 959777336 659775030 463656629 719703433 835116650 484193216 613057297 839560239 23020736 464737502 875589339 115495426 784315619 462695853 698806555 653650083 71299730 267898519 994485369 118978239 623385639 714659359 805452691 222021465 277986667 187073238 664218619 704571211 919544841 322062266 731472939 585795278 297082090 993764787 237153687 643561935 640079122 508332713 109730770 673225894 386554355 385473482 765580487 880153025 776028926 597444687 348363509 432911797 683073848 450686153 997968182 49682270 174583150 401446383 267177937 159811219 242077664 564297915 328427407 760176122 799447841 304768298 697485488 361814373 979473244 924709012 264896094 808335019 427747626 595523135 588677606 900449418 736757207 199323132 739039050 820705010 324224012 620863602 504609706 564418012 929993280 398564055 296121314 514097369 534273665 535354538 557092095 377787274 454649354 36951988 857574789 518060570 840280821 337674876 495362237 890721561 525386487 234871844 857454692 501967572 933956481 520342413 392078817 252165812 691240444 155007339 410693852 777470090 232710098 106368054 313655476 764379517 560574908 331429832 997848085 771225046 868503616 834155874 929272698 76463901 935998130 794283670 706732957 194038864 770744658 636836503 357731075 833435292 297442381 221060689 954012680 783715134 122821343 324344109 703009950 386674452 42236256 161252383 470382061 101083786 125583574 5486574 30106459 610775454 705411890 593241292 36351503 249043290 708894703 915341446 574626257 881474092 723666634 872346720 940201525 476627105 455970421 12692394 971787036 355329135 326265661 641400189 896966605 668782305 12212006 913660088 821305495 193198185 206769146 914861058 502928348 8008611 593721680 792842506 825508890 20258505 213014190 460053719 584474211 748646810 369740775 619902826 22540348 690039474 893123501 882314771 19177632 279067540 47280330 695443839 852170424 881474092 348483606 80907490 871385944 599846627 113573874 176384605 293839471 501006796 956895008 577388488 685475788 165335681 502808251 156208309 533673180 433512282 486234865 529229591 772786307 854692461 10890939 27704519 797045901 816021227 159330831 686916952 71660021 584234017 471462934 354728650 80066811 373343685 539197642 446482758 553969573 491879424 536795702 382951445 396522406 914981155 668542111 186953141 752850205 131708521 19177632 396882697 140835893 385713676 96880391 289996367 199563326 762818256 781433291 241236985 752610011 32868690 793563088 20018311 449365086 825148599 782273970 975990431 707693733 887478942 365056992 535714829 675627834 298162963 894924956 758374667 69498275 22420251 69978663 794523864 607893126 314255961 237513978 582432562 762578062 333351384 152485302 277626376 862018378 797165998 22300154 101323980 170619949 478548657 27824616 214335257 6927738 94118160 733514588 417179090 675747931 937559391 645123196 542800552 267418131 80427102 885437293 771705434 930954056 536795702 19297729 489717678 965782186 51723919 588317315 999049055 478308463 45839166 980794311 588917800 77184483 312814797 470742352 856013528 397483182 185992365 788639111 101323980 568501310 245080089 542800552 841121500 307410432 91836317 668542111 877390794 511815526 236913493 690399765 929993280 346682151 70819342 100963689 165816069 400365510 317018192 579069846 954973456 356770299 360133015 330709250 270180362 726669059 369980969 929152601 386914646 385593579 817462391 411534531 587236442 947527442 444921497 244479604 478428560 716220620 978632565 544602007 978392371 2003761 339836622 638878152 110211158 316657901 292878695 349804673 710816255 314616252 694362966 66615947 816741809 470382061 760416316 912939506 239675724 654610859 845324895 509293489 76103610 562856751 770384367 10890939 857214498 504849900 58329254 931674638 60491000 672745506 395681727 59890515 125343380 546163268 623385639 358811948 835476941 672865603 388956295 942723562 118137560 857094401 868623713 433632379 367579029 476026620 929993280 441798975 379828923 620503311 790560663 387875422 544602007 916422319 533913374 713338292 264415706 559974423 888800009 204967691 188394305 8729193 246281059 932635414 770504464 465938472 889880882 561415587 159811219 748046325 582192368 489717678 166896942 726068574 413696277 503648930 261052990 534033471 260572602 792722409 293719374 489237290 18937438 790560663 27944713 440958296 2724343 185632074 80186908 417779575 544361813 216737197 820464816 833795583 202445654 132068812 548204917 254928043 271981817 556851901 615219043 405289487 156208309 808094825 699046749 411054143 290476755 35030436 941522592 396282212 798967453 402407159 318939744 143598124 723066149 423304037 782754358 281949868 904652813 124742895 646564360 6567447 460894398 975510043 636836503 420661903 431830924 507011646 600086821 963500343 204487303 677068998 929032504 931794735 554089670 901290097 941642689 825148599 186953141 807494340 754891854 430870148 500766602 424865298 934196675 691480638 979713438 263334833 550726954 490678454 794764058 949689188 716821105 427507432 706012375 561775878 84630497 323263236 992443720 991723138 877390794 751889429 533192792 764859905 445642079 410934046 839800433 167857718 809055601 360253112 758855055 758374667 163053838 462815950 553489185 596724105 816381518 914861058 650287367 769183397 769543688 24221706 904772910 568381213 149723071 25302579 458012070 274744048 860337020 454289063 730512163 350645352 957855784 384872997 659054448 212173511 411774725 32028011 90515250 581952174 562736654 623025348 958336172 70338954 575226742 988240325 655691732 508813101 270540653 690760056 523344838 293118889 355209038 625907676 999169152 617500886 259251535 180347806 524305614 740840505 902130776 880633413 718982851 14013461 917142901 117056687 156328406 620863602 225384181 954132777 327586728 553248991 49321979 905973880 169178785 321461781 237513978 774587762 635995824 393760175 545082395 908375820 431951021 627228743 375385334 36351503 378267662 932395220 407211039 178666448 123181634 438556356 663137746 102284756 760536413 74302155 144078512 322662751 63013037 893844083 666500462 818303070 590358964 120779694 713698583 320861296 467739927 953412195 968784611 141076087 121500276 554570058 203646624 108409703 13533073 315937319 874388369 455970421 273663175 812538414 577148294 729311193 859136050 230067964 172541501 941042204 585555084 842802858 221901368 717781881 421862873 182989940 209411280 536195217 947887733 276185212 563817527 161492577 206408855 349924770 510254265 920265423 822026077 976831110 659414739 760896704 941402495 57008187 320861296 612937200 511215041 391718526 333951869 424745201 683794430 922888 690279668 264415706 119578724 319300035 400845898 351005643 698566361 617620983 86191758 698926652 860817408 952811710 982715863 133029588 701208495 588197218 935998130 785756783 122340955 818182973 698446264 280508704 131468327 670103372 427267238 816261421 15214431 225143987 900569515 939480943 594922650 999889734 609094096 579310040 368779999 463056144 121620373 721264694 561655781 690039474 670223469 53044986 888559815 163173935 142156960 625667482 133149685 952331322 587116345 96159809 150323556 907054753 909216499 990642265 251084939 920625714 970105678 716821105 813619287 36591697 565979273 711777031 459453234 968784611 575466936 591800128 327226437 126544350 614498461 860697311 720183821 622184669 775068150 901650388 415137441 97000488 61932164 90755444 536435411 476026620 878351570 698446264 589037897 508092519 329988668 162933741 31187332 522143868 517219891 388716101 912819409 516979697 613657782 446242564 272342108 505570482 214335257 355929620 351606128 557332289 384752900 638998249 291437531 955333747 28425101 580030622 857814983 806053176 761857480 418019769 659895127 340196913 442879848 175423829 814940354 451286638 577868876 687997825 139514826 471462934 378627953 65895365 426546656 527067845 911858633 956534717 862498766 770504464 221781271 210251959 964461119 823227047 660495612 190435954 733994976 865621288 974549267 217818070 738678759 749487489 264535803 593361389 849648387 93877966 285312584 719463239 4405701 206649049 845685186 254447655 840160724 807254146 59650321 667701432 691240444 510014071 527187942 529469785 125343380 26503549 843163149 965541992 79226132 661816679 243158537 38633346 829592188 746845355 953292098 616780304 113093486 72380603 158850443 867062452 795244446 345721375 698206070 517099794 937559391 804732109 482992246 97480876 19417826 126664447 603689731 428228014 196320707 59169933 125823768 143117736 867062452 470862449 52684695 109490576 769783882 221781271 548805402 128225708 325665176 116816493 310532954 52324404 101323980 847366544 415377635 616299916 36111309 589037897 649566785 869464392 192597700 218298458 412975695 196680998 625547385 25422676 510734653 933115802 187313432 463776726 204127012 85351079 302246261 328787698 565138594 749847780 880873607 706612860 979233050 841481791 744083124 267177937 865260997 684995400 930353571 652088822 390157265 455490033 459693428 385833773 607773029 562256266 369860872 857094401 739279244 727870029 16055110 500886699 241236985 990041780 353887971 277025891 767141748 50402852 351486031 624706706 697005100 419340836 665419589 523825226 813979578 682953751 275824921 39594122 785876880 931674638 623505736 234511553 6327253 41155383 570422862 887599039 364936895 988120228 340917495 499445535 51844016 437355386 655451538 457291488 990522168 105527375 131708521 861177699 659054448 916662513 130627648 201124587 902250873 175784120 330589153 983076154 25542773 731593036 784075425 37792667 666020074 779872030 191997215 186953141 777349993 991002556 690399765 598285366 492720103 966022380 744563512 62412552 484193216 573305190 493921073 504489609 536795702 429188790 210372056 685355691 641280092 983676639 387395034 466659054 858535565 451646929 72020312 117416978 885797584 88593698 437955871 127264932 231389031 727029350 593361389 422343261 498244565 566940049 157409279 842802858 208570601 166416554 543280940 891682337 453448384 548204917 489717678 429669178 885197099 469781576 794403767 94478451 195119737 179507127 85951564 52444501 294319859 915221349 352927195 811457541 814580063 393039593 86552049 773747083 231869419 44277905 279067540 863939930 978272274 640079122 904292522 772065725 26383452 887238748 155607824 278346958 141556475 893363695 240276209 384993094 691240444 867783034 994485369 582192368 381149990 767982427 882194674 898647963 454168966 104566599 313655476 585194793 44277905 572464511 388836198 962659664 862979154 266097064 935517742 324704400 782994552 719102948 664458813 803050751 594562359 839440142 497283789 788879305 933836384 223222435 911138051 232710098 58809642 631792429 499085244 115015038 797526289 943564241 259852020 760656510 717541687 124983089 352687001 82708945 889520591 339716525 940561816 356049717 143838318 193438379 202325557 214575451 193198185 424505007 644522711 320621102 262974542 731713133 660855903 466899248 176504702 498484759 90154959 946686763 299243836 665299492 735436140 447203340 331790123 461975271 384392609 333471481 607172544 138914341 358691851 818903555 667221044 716100523 596964299 66615947 405889972 86552049 755612436 463056144 977071304 758134473 140595699 939360846 14974237 589157994 149242683 814459966 209291183 124022313 37792667 119818918 509173392 104206308 185872268 277386182 900689612 495962722 199683423 37312279 970225775 65535074 698566361 363615828 130507551 114414553 716220620 760656510 596003523 177585575 552048021 82829042 449845474 146120161 968064029 146000064 857334595 884596614 413816374 500166117 867542840 941762786 132789394 426066268 606451962 890361270 43317129 826349569 847006253 820104525 805212497 160771995 612096521 717661784 613417588 493680879 686676758 125343380 280748898 230428255 775908829 356770299 719102948 493440685 557452386 823467241 96279906 719583336 964821410 710215770 234391456 902731261 648966300 116576299 942843659 476507008 860337020 509413586 616059722 221661174 265496579 540038321 252646200 912098827 447203340 231389031 534153568 628429713 704451114 220099913 29746168 933115802 267538228 182149261 381149990 519621831 536075120 684875303 130387454 373103491 173742471 364696701 464617405 15814916 446843049 466178666 580991398 211092638 284952293 785636686 147201034 811217347 172181210 798246871 87873116 820825107 301045291 510374362 480470209 369740775 282670450 303567328 396162115 210251959 590479061 584234017 265016191 403608129 252285909 420301612 258290759 364096216 928792310 694122772 193318282 662056873 592040322 111171934 905133201 85711370 579189943 788879305 744563512 487075544 329268086 314135864 293238986 222982241 679350841 601047597 540158418 884116226 164254808 230188061 649566785 847246447 476266814 656772605 997487794 803290945 188154111 284952293 868023228 882795159 653049598 461855174 624226318 273543078 859136050 499805826 791281245 446002370 529950173 590599158 314255961 190435954 388115616 1643470 207249534 153325981 489957872 955694038 867662937 469301188 176384605 498965147 708054024 407090942 939240749 703009950 411894822 574986548 18096759 640199219 230067964 590599158 689078698 450926347 876550115 914861058 950289673 308371208 666380365 276905794 590118770 967223350 460534107 772786307 784916104 945725987 737958177 272101914 688838504 132429103 684635109 19537923 384632803 942843659 226705248 140955990 695684033 267177937 678990550 5246380 734955752 498484759 280388607 853851782 256008916 63373328 194279058 187553626 962419470 348723800 591079546 148161810 232590001 938760361 334192063 188034014 444200915 68777693 353167389 781913679 1163082 255648625 637316891 132909491 432671603 525146293 825028502 534633956 241236985 246761447 693882578 614378364 851329745 999289249 412135016 481190791 42476450 716220620 385233288 883755935 406730651 794884155 42116159 757894279 427987820 493440685 52444501 785276395 99882816 683674333 213734772 110091061 465458084 411414434 215055839 651608434 344760599 236433105 934316772 654730956 399765025 77544774 417659478 446482758 924468818 77424677 707573636 699046749 451887123 672505312 35751018 206528952 976470819 222621950 901410194 708654509 189234984 421262388 113934165 506291064 616299916 930593765 962899858 637316891 461614980 602728955 531511434 219859719 566819952 9209581 583033047 912819409 874748660 605971574 634194369 333591578 254327558 994004981 673225894 139755020 516619406 428588305 924709012 169298882 224663599 614738655 775188247 273663175 219019040 130267357 87392728 506411161 909937081 96760294 607172544 672985700 948608315 836077426 105887666 565859176 738558662 278346958 191396730 417299187 45839166 461975271 175063538 423183940 733034200 778070575 504249415 834636262 362414858 556131319 579790428 766541263 838239172 106368054 940081428 730392066 748166422 444441109 715019650 285192487 91956414 43197032 563937624 843523440 723906828 976350722 916542416 246160962 799447841 692561511 830793158 75983513 133750170 67336529 410453658 339356234 239435530 844724410 352687001 734115073 682833654 810736959 280028316 11371327 372743200 694483063 215296033 374424558 310292760 379708826 57368478 784916104 479509433 727629835 464016920 393880272 76704095 85951564 961818985 801129199 566099370 149482877 879912831 285913069 975029655 813859481 837518590 343319435 533192792 276305309 808695310 314135864 95919615 627228743 745524288 647885427 447323437 597804978 787318044 502087669 445161691 251925618 263695124 363735925 484913798 715980426 150083362 536315314 826349569 35751018 306569753 164134711 939601040 345721375 131828618 267658325 805572788 280868995 837518590 731352842 285072390 488396611 92436802 127865417 321101490 43677420 299964418 630231168 343919920 289155688 950289673 802810557 7648320 296601702 931194250 72140409 735195946 479629530 752610011 210492153 951610740 555771028 306449656 746244870 594202068 22540348 964941507 159571025 685836079 501967572 484433410 879792734 356530105 692921802 191636924 248322708 325424982 667701432 988000131 464137017 625187094 219379331 939480943 516379212 498845050 508933198 194759446 624226318 247241835 392919496 522504159 926750661 89914765 134590849 501607281 346922345 530430561 62532649 152245108 688358116 515418436 534633956 315216737 137473177 313655476 159090637 687517437 997968182 864300221 510614556 554449961 990762362 599126045 299964418 433512282 239075239 298643351 894324471 264055415 941882883 927351146 237153687 668422014 354608553 466779151 387154840 808094825 497043595 114894941 239075239 501607281 602969149 583033047 588437412 459213040 168338106 415858023 262133863 340317010 86071661 567300340 898167575 567780728 76583998 378387759 683193945 557572483 485153992 82348654 6687544 61451776 14493849 544602007 24942288 914260573 36591697 378748050 252886394 575587033 875829533 881474092 482151567 191636924 448284213 688478213 28545198 550606857 594922650 310292760 863459542 288915494 749487489 152125011 365177089 860216923 732673909 30586847 883755935 380549505 816381518 161852868 648245718 722705858 861537990 701088398 629990974 834035777 77064386 713698583 742641960 799327744 29746168 89794668 516379212 89914765 613897976 735075849 782514164 83309430 706612860 882795159 849768484 186232559 581111495 698326167 618341565 652449113 523344838 168097912 213734772 90875541 617620983 402887547 711897128 747085549 716100523 534393762 915461543 760896704 661936776 545082395 302966843 894804859 772426016 929392795 238234560 841721985 77424677 784916104 388235713 494881849 837758784 714899553 329388183 848327320 604530410 958696463 788879305 545322589 99042137 45358778 744923803 626508161 481190791 634314466 829231897 748766907 848327320 834516165 889160300 58089060 907655238 812058026 363735925 642841353 33349078 105287181 256249110 347642927 221901368 256849595 326625952 563217042 109130285 636236018 647525136 247482029 650527561 972627715 418259963 310052566 621464087 223462629 590719255 372743200 703250144 341878271 609214193 94718645 833555389 652208919 43317129 176985090 894924956 379949020 343199338 777470090 947767636 547964723 526947748 527548233 198842744 925549691 342478756 771825531 613057297 396042018 350645352 8969387 924709012 943203950 60731194 991603041 730271969 23381027 158249958 876069727 853851782 90515250 364816798 291917919 397122891 425946171 870064877 924709012 929873183 321581878 891562240 883515741 746124773 336113615 347763024 182509552 749367392 50883240 500406311 892042628 684875303 662897552 137713371 979112953 485994671 352927195 460894398 306089365 694963451 810016377 810016377 437475483 946206375 636596309 306329559 121380179 88473601 558893550 760896704 306809947 504009221 357130590 394000369 389556780 621944475 396042018 150443653 636115921 653169695 200043714 844364119 119939015 204847594 257209886 995806436 121260082 897086702 750208071 481671179 11491424 321822072 643321741 410093367 686196370 845324895 676228319 377426983 103005338 775308344 889760785 985117803 193798670 2844440 651968725 148402004 117537075 303207037 29265780 418380060 854692461 584474211 680071423 456450809 489837775 150323556 660976000 510014071 134831043 892162725 162573450 714058874 863459542 195600125 794403767 922907557 470622255 85110885 995205951 988120228 93157384 634554660 136032013 670944051 71059536 403247838 97000488 711897128 998688764 626868452 255648625 625066997 470261964 367458932 644402614 994245175 296001217 574506160 777830381 449004795 206168661 806293370 631792429 775308344 452607705 254327558 782994552 1523373 562597 79946714 954372971 48361203 40074510 283391032 850248872 854332170 177585575 399044443 604530410 977311498 927591340 906934656 103605823 374424558 190556051 708774606 430870148 255048140 795004252 243158537 827070151 803531139 228386606 315216737 187553626 223222435 321701975 665059298 802690460 203526527 838239172 83789818 640559510 72380603 5246380 898768060 633593884 902611164 223222435 598525560 962179276 732313618 722946052 88833892 671304342 364456507 656412314 980193826 525386487 602008373 870425168 975389946 921226199 201004490 975870334 955453844 561655781 956895008 247602126 491999521 769783882 832234322 152725496 3204731 833555389 728230320 401806674 708654509 75983513 801129199 18457050 219379331 895165150 72981088 467980121 795844931 749127198 842082276 820224622 286993942 783114649 526707554 356890396 802330169 331069541 9689969 219499428 118978239 798006677 920025229 684154721 514217466 494041170 795004252 310893245 121860567 863339445 920385520 569462086 330829347 944044629 416458508 895045053 138433953 968424320 275464630 111892516 178786545 963140052 442039169 105767569 855413043 349444382 482391761 452487608 819864331 135071237 660015224 467860024 221661174 391598429 83789818 269459780 118017463 963860634 318939744 52204307 32508399 40074510 504969997 745644385 754531563 912218924 58209157 642961450 908135626 348843897 841721985 499925923 331670026 206649049 314736349 859376244 558773453 420902097 790800857 900569515 903211649 781433291 652329016 482511858 902611164 699286943 2243955 481551082 654610859 185752171 952931807 581952174 563817527 51603822 587236442 436514707 329988668 900329321 415257538 957375396 280989092 507131743 669863178 115375329 83309430 73701670 377426983 655691732 277025891 5486574 472303613 121380179 135551625 938520167 491879424 681872878 114414553 65535074 310653051 598045172 520462510 808455116 795484640 832354419 718142172 248682999 742041475 605971574 860457117 358691851 815060451 645123196 237393881 160171510 174703247 408652203 38032861 132188909 19898214 324584303 458372361 212413705 524425711 241717373 476747202 712617710 511935623 496443110 682713557 640439413 80667296 574386063 347522830 431951021 563337139 262494154 410453658 995085854 129786969 156208309 406370360 492239715 951490643 209651474 252045715 84510400 841601888 950890158 228506703 33469175 699046749 725107798 993644690 946206375 914020379 48000912 626868452 496443110 263334833 5606671 35630921 796805707 291077240 45118584 416578605 110931740 645243293 264415706 829592188 360253112 643441838 932395220 50522949 534513859 838119075 185632074 818783458 615699431 489837775 825508890 810136474 611015648 508693004 278707249 19417826 554570058 885797584 518661055 74302155 804371818 864300221 495122043 670703857 635155145 595763329 971907133 906694462 637797279 451406735 709495188 215536227 63733619 881714286 397963570 166296457 549525984 97000488 954012680 520222316 232109613 5486574 49922464 966863059 807134049 326505855 616059722 908856208 218658749 865501191 532592307 577028197 230548352 577628682 345361084 216497003 315937319 941642689 954132777 692201220 815660936 202325557 526587457 220820495 211573026 288555203 923267848 165455778 406250263 987039355 797886580 316057416 428468208 152245108 468820800 946326472 625187094 248682999 484313313 292518404 320741199 336594003 346441957 376226013 336233712 213974966 560695005 7768417 256369207 229827770 455490033 895885732 55086635 493560782 501847475 276905794 219499428 119939015 284471905 942123077 946806860 225143987 692801705 855413043 510614556 897807284 865260997 983796736 487075544 404208614 208570601 836437717 76944289 398323861 82468751 998568667 758734958 200764296 509413586 379949020 355088941 456330712 875829533 706973151 36351503 946446569 151044138 861537990 709375091 461975271 586035472 575226742 750448265 799447841 252526103 520222316 286873845 772906404 406250263 122581149 289395882 657973575 495482334 311253536 269940168 318819647 461975271 661216194 615219043 135071237 51003337 152004914 676228319 234991941 32628496 816621712 280628801 796805707 759215346 93037287 76704095 382951445 798006677 872707011 551567633 709615285 495362237 166536651 294079665 200644199 310412857 232710098 16655595 656532411 126184059 555530834 876189824 135191334 923267848 513616981 270780847 6927738 428348111 417299187 473864874 671664633 653770180 255408431 546043171 108289606 490438260 699166846 916062028 461614980 90395153 907415044 163774420 461855174 644162420 368779999 42116159 596123620 755132048 329868571 126063962 886638263 369020193 190315857 139154535 653049598 578589458 785876880 318699550 444200915 235352232 746605161 851810133 617500886 142036863 192357506 138674147 203286333 629510586 788759208 103245532 614618558 427987820 497764177 185872268 690279668 146840743 228626800 591079546 896726411 259011341 22300154 66375753 860937505 45118584 731352842 960497918 559854326 522504159 792722409 166536651 247842320 975870334 273062690 629750780 83069236 908255723 750688459 95199033 60731194 386434258 169899367 409853173 66976238 521903674 693642384 20258505 397963570 794403767 63253231 736637110 248682999 262374057 608973999 602128470 806173273 518300764 797886580 699046749 37072085 829832382 490918648 292638501 837158299 645603584 361694276 60851291 227425830 462335562 320380908 337915070 712737807 38633346 728230320 928071728 876910406 498364662 933235899 874988854 801609587 949809285 7768417 436154416 70338954 411294337 900089127 134230558 745644385 725227895 788278820 263334833 195359931 458972846 220580301 183590425 732073424 495122043 433632379 734835655 813979578 385833773 130507551 691961026 337794973 885797584 96880391 676948901 503168542 885317196 494521558 532472210 263815221 362534955 841001403 286393457 433392185 876069727 439637229 330709250 678630259 805092400 819864331 261653475 166296457 446482758 88953989 265136288 350525255 237033590 273903369 845324895 991242750 462335562 401566480 655931926 768102524 790920954 87272631 171700822 477828075 729791581 770744658 761497189 770144173 151284332 993884884 126544350 393039593 884596614 865981579 587957024 703250144 935757936 18697244 360493306 869704586 998328473 10650745 274023466 769303494 253727073 962779761 253847170 149482877 919424744 277746473 817822682 811097250 867783034 491879424 534033471 20378602 200404005 487916223 366378059 689438989 948127927 399164540 470982546 84150109 109010188 442639654 180467903 330949444 966863059 10770842 318219162 43917614 312214312 57728769 806053176 501967572 190315857 996286824 172901792 289275785 829472091 790320469 980313923 377907371 496443110 223462629 409612979 499445535 300084515 498484759 883515741 266217161 117056687 209171086 619422438 178666448 864300221 99522525 961458694 790440566 127625223 445161691 548925499 729431290 775308344 536795702 61571873 189715372 476026620 405769875 747806131 69618372 365417283 790920954 465938472 193918767 927231049 265136288 71900215 667461238 60611097 462455659 701929077 960738112 965902283 608013223 731833230 790800857 992683914 103846017 483112343 537276090 61211582 687997825 616660207 351365934 923508042 787918529 644402614 99762719 292638501 20378602 903211649 146720646 578829652 389796974 126784544 646324166 847846932 114054262 744803706 54726344 752970302 384512706 980554117 772546113 495722528 139514826 394961145 777950478 830552964 319300035 976110528 165575875 331189638 983076154 770504464 506531258 993284399 692321317 990402071 667821529 365056992 512656205 1523373 868503616 781553388 988120228 982235475 913539991 172181210 788639111 25422676 836798008 113213583 965061604 733874879 690519862 841481791 423784425 252886394 694362966 423063843 17616371 783955328 577868876 975750237 672265118 124142410 40194607 876790309 116095911 740240020 950529867 137353080 651608434 754171272 632392914 943324047 61932164 288675300 135671722 574145869 900329321 357731075 7768417 558293065 409853173 808815407 849648387 404208614 854212073 250964842 256849595 155607824 372623103 579550234 941162301 243999216 328787698 175784120 471462934 568861601 419701127 783354843 779751933 52444501 598885851 890961755 702769756 167497427 64574298 499445535 933836384 613777879 262013766 331309735 142277057 729551387 792962603 136032013 931314347 572224317 713458389 899969030 19778117 394480757 691480638 615819528 545322589 964220925 4045410 23020736 623145445 75503125 331189638 719943627 44758293 889040203 982355572 820584913 593601583 834035777 255768722 141916766 13412976 441318587 941282398 488516708 739999826 571263541 462695853 49442076 839320045 920025229 791161148 610295066 482631955 466418860 677669483 913539991 90515250 834756359 487435835 247121738 936958906 638517861 706973151 391718526 285072390 861898281 215896518 56647896 899128351 700127622 546043171 816982003 839320045 528148718 809776183 10290454 233550777 564658206 637677182 226945442 254807946 680191520 392439108 359172239 857814983 724867604 55086635 420061418 197041289 838239172 762457965 98561749 134350655 988000131 963140052 928672213 310532954 353407583 943444144 513136593 956414620 370701551 583873726 249043290 787798432 895045053 164735196 335152839 974549267 668422014 308251111 365777574 161972965 579189943 393519981 342959144 971787036 33349078 685836079 896246023 586996248 97360779 533673180 792722409 629030198 190075663 235112038 240996791 633954175 611976424 162093062 559494035 230067964 956654814 307290335 542920649 993764787 213494578 499925923 97600973 590839352 716580911 876430018 458612555 395081242 219499428 107929315 545082395 470141867 983436445 38393152 620863602 369980969 832834807 966142477 572104220 653770180 749727683 24341803 497163692 200043714 522263965 402407159 243999216 218778846 886998554 621103796 614498461 78985938 687757631 856253722 137833468 715379941 102284756 523705129 434352961 140235408 285432681 158129861 870545265 588557509 187073238 198842744 285552778 13773267 547124044 954012680 312934894 885437293 409853173 771225046 910897857 7288029 736276819 416338411 820705010 972027230 899728836 877030503 399644928 449124892 837398493 423063843 59169933 340317010 96039712 959657239 273783272 779271545 59049836 715019650 269099489 102164659 609454387 339236137 240396306 65775268 927711437 306329559 675147446 749367392 17616371 971546842 670343566 571023347 528629106 329988668 649446688 101924465 231869419 978512468 836798008 397242988 34069660 384872997 486595156 787197947 10290454 271021041 49922464 950890158 409853173 187553626 699046749 314496155 256489304 652208919 535594732 35270630 311854021 908976305 550246566 676108222 122220858 498845050 403968420 467980121 138674147 424264813 562256266 644042323 351606128 840761209 994245175 271261235 613297491 465458084 200283908 353287486 358811948 16535498 498965147 731472939 839440142 79106035 481430985 562016072 261533378 790200372 765820681 674186670 525266390 509293489 530190367 1643470 943324047 844244022 399885122 696644809 137953565 852410618 704331017 87392728 159811219 900929806 777830381 954733262 910537566 855533140 210732347 714539262 448524407 674426864 74182058 642961450 3204731 455610130 736396916 81267781 879312346 827430442 662657358 414536956 491399036 264175512 673946476 766541263 552768603 556371513 406370360 36711794 770744658 116816493 573785578 608973999 630831653 534033471 741921378 873427593 420661903 245320283 140595699 314976543 989321198 789840081 387515131 462695853 370821648 963740537 810496765 773626986 926030079 515058145 687277243 201725072 412255113 839320045 445281788 308251111 177345381 399524831 962659664 536315314 555650931 503288639 514577757 355689426 841962179 947047054 820224622 578709555 142156960 889640688 184190910 444080818 653650083 102885241 753690884 928792310 486955447 596363814 61331679 17135983 52204307 71780118 573545384 397122891 980073729 574386063 542320164 772185822 208570601 584954599 212533802 548925499 425345686 721624985 340557204 262013766 401806674 875108951 169298882 530070270 231268934 764019226 708174121 491879424 225744472 632032623 927231049 450085668 757774182 819744234 155007339 99042137 580631107 637196794 477707978 935998130 647525136 466298763 544481910 31427526 970465969 827430442 553248991 74182058 469301188 767381942 850368969 234391456 604530410 664218619 292158113 762698159 97600973 415257538 45238681 9209581 609094096 312814797 28184907 118137560 484793701 661096097 773626986 804011527 939721137 89674571 928672213 310653051 841361694 16415401 44998487 14974237 708534412 197161386 724867604 917983580 674546961 979593341 966142477 713338292 894084277 830913255 827190248 584834502 641520286 634674757 88233407 17256080 550967148 439997520 761256995 285913069 448404310 210852444 725227895 817462391 91596123 425225589 532712404 556371513 594322165 79706520 873787884 877150600 85471176 989441295 521663480 644522711 355449232 456931197 935637839 710576061 991362847 974068879 573305190 440958296 211693123 56888090 217217585 450686153 44758293 175063538 11851715 787318044 807734534 814459966 214695548 888559815 19778117 441558781 189475178 186712947 426546656 213614675 724387216 4045410 187073238 416338411 642240868 946446569 280748898 376346110 375745625 80907490 914981155 997247600 316297610 781793582 633353690 779031351 571383638 208450504 105167084 110451352 969264999 190556051 245800671 466418860 721024500 130147260 473864874 118858142 22300154 371181939 802089975 494401461 111772419 923628139 977431595 746364967 35270630 398083667 445642079 321341684 964100828 153205884 16535498 524786002 816501615 418620254 673225894 705652084 289395882 562376363 653409889 471102643 960257724 255648625 575707130 627589034 946566666 621704281 587957024 269339683 694603160 629510586 941282398 540518709 347763024 755612436 460414010 790080275 280028316 583273241 318579453 642841353 185752171 754891854 655691732 564418012 553248991 234391456 13172782 510734653 433031894 89314280 41875965 695203645 39353928 677189095 349204188 348843897 611976424 523825226 793683185 889880882 69498275 164134711 725227895 874028078 496683304 241116888 606211768 994004981 709975576 160892092 988120228 960137627 184911492 157409279 182269358 139514826 310532954 832834807 397483182 539918224 645003099 373463782 245080089 813499190 493320588 97120585 48841591 804852206 496443110 876670212 826589763 652929501 380429408 433512282 569221892 993644690 480950597 663017649 648606009 302966843 806533564 648846203 978512468 841361694 944044629 297442381 781313194 399765025 577268391 866101676 642120771 21459475 577868876 470502158 861658087 875829533 415497732 741200796 653650083 218298458 110811643 498724953 204847594 76463901 80066811 833795583 419340836 120179209 415737926 695443839 464737502 896366120 489357387 637436988 769543688 409733076 513256690 983556542 547964723 687277243 574626257 331670026 59410127 139995214 751889429 515778727 862018378 809415892 650527561 659534836 639959025 181909067 711056449 671664633 716941202 60491000 233310583 754411466 873427593 630951750 146840743 456090518 891081852 684515012 13412976 155127436 819984428 437595580 23621221 138433953 24341803 560334714 848567514 509653780 392559205 617020498 21699669 905013104 135791819 644282517 503048445 906093977 404929196 553248991 673586185 699407040 881233898 712978001 14974237 174463053 715139747 775428441 278827346 467379636 816021227 734835655 23020736 529950173 717661784 286153263 918944356 958816560 646924651 811457541 504009221 835837232 659775030 437355386 103005338 591559934 792362118 754051175 421742776 6087059 200884393 411654628 250364357 578949749 488636805 389436683 143598124 796205222 76824192 626748355 480109918 475786426 209891668 963380246 291197337 830552964 14854140 339716525 572704705 184671298 852290521 500406311 575827227 93757869 626988549 470982546 37432376 836437717 794163573 67816917 887719136 968544417 465698278 60611097 608133320 807734534 484793701 464497308 445401885 989801586 626388064 823347144 538717254 421622679 338635652 613657782 882314771 815180548 791401342 853851782 231869419 5126283 741080699 411294337 614498461 894564665 309091790 249163387 961218500 866101676 226585151 63613522 990041780 768222621 211573026 767502039 871025653 588077121 158610249 193078088 975269849 478188366 266577452 930954056 152125011 672505312 943324047 635875727 454529257 158009764 648125621 850489066 585795278 111051837 687877728 866822258 932155026 439036744 302606552 798006677 126664447 147441228 86912340 240396306 799207647 429068693 751649235 774107374 676948901 229107188 563697430 957015105 964581216 438556356 32028011 522744353 716821105 707693733 645003099 558533259 748766907 267538228 23861415 576667906 660015224 659895127 106488151 279187637 351486031 838719560 405169390 383912221 671184245 369140290 790440566 27584422 768342718 200043714 576187518 389316586 45238681 720784306 749607586 390277362 128706096 917743386 183590425 202805945 894324471 976590916 42116159 799808132 266337258 608373514 320741199 2243955 94478451 167377330 67096335 44878390 571143444 675868028 23981512 225023890 607052447 268979392 750087974 630591459 270900944 243879119 504249415 333231287 335393033 380909796 8609096 890841658 911258148 185151686 37672570 111892516 728710708 45478875 788038626 464016920 153686272 523464935 947047054 682113072 235232135 795364543 546883850 643922226 930593765 781073000 910537566 869344295 496443110 230428255 650287367 376826498 451887123 66976238 528268815 966863059 782033776 795604737 797406192 449244989 854812558 888199524 139274632 482872149 638517861 38873540 600807403 790800857 343319435 986318773 84030012 625307191 176744896 878231473 147801519 729671484 124022313 413696277 174222859 313775573 880513316 271381332 614138170 253967267 543881425 759695734 680071423 282550353 640079122 602728955 871866332 736757207 486475059 207970116 675267543 447923922 241477179 377306886 322422557 170860143 944525017 145279482 138433953 441318587 948608315 621704281 193678573 953051904 606451962 169779270 18817341 526467360 602008373 779992127 292278210 786717559 296241411 543881425 902370970 850609163 715860329 197761871 924108527 320380908 211452929 452727802 485274089 815300645 233550777 283270935 816501615 738318468 911258148 264775997 703370241 762457965 97360779 265016191 277145988 451887123 322302460 99402428 856614013 753090399 53405277 771585337 907535141 716220620 214095063 733034200 441318587 260092214 270300459 270900944 994125078 326505855 845925380 492479909 849408193 838119075 776629411 822386368 207609825 270780847 397723376 397363085 681872878 363015343 176985090 614378364 442879848 161852868 396402309 735195946 74542349 474585456 615219043 215055839 882554965 743482639 435914222 216857294 881474092 196200610 123421828 232950292 384512706 544481910 857214498 686556661 802810557 617620983 415257538 265016191 36591697 436874998 575947324 181068388 288795397 442639654 430629954 449725377 27344228 438676453 812658511 582912950 724747507 786597462 436274513 858775759 135191334 506291064 963740537 529229591 126664447 779031351 815901130 575106645 277986667 18697244 967943932 563337139 263575027 644883002 102645047 859256147 202445654 451646929 215896518 183470328 491158842 274503854 718982851 965782186 273422981 392679302 458252264 605851477 220099913 302246261 178186060 412615404 232229710 362534955 77784968 57248381 512416011 379588729 779031351 894204374 696885003 71059536 249883969 648726106 520102219 947887733 315697125 901049903 675027349 793442991 867182549 323743624 485394186 355689426 58449351 660135321 147801519 67096335 697005100 28064810 881954480 587957024 134831043 862979154 247962417 484073119 452727802 620863602 527548233 230308158 990762362 221901368 804852206 750688459 881834383 445161691 91956414 487075544 374904946 744203221 436995095 997968182 818303070 249163387 273903369 841842082 913179700 635635533 282550353 430269663 671064148 40434801 663618134 698806555 15334528 540518709 471102643 747806131 991362847 529349688 434112767 827070151 598165269 312814797 118497851 638277667 419821224 867662937 150563750 929632989 217217585 189595275 548204917 996527018 357731075 98801943 141196184 224063114 190916342 322662751 519501734 742882154 264896094 943083853 186352656 294439956 859376244 261413281 303207037 592640807 533793277 645603584 319420132 988240325 406850748 655211344 435794125 54366053 201965266 660855903 633593884 600447112 337434682 725347992 771465240 141916766 360253112 610174969 221300883 572104220 692681608 836197523 946806860 582552659 414536956 71179633 366257962 684154721 739879729 874508466 408412009 722105373 32988787 234511553 876790309 121380179 444681303 257810371 123902216 894924956 61812067 184791395 506891549 652809404 6327253 444561206 961338597 425465783 94598548 373103491 91355929 100723495 628790004 978392371 904172425 22420251 336353809 710936352 625787579 909336596 431230439 840280821 41635771 591319740 231989516 285913069 514697854 207249534 143718221 867302646 809175698 866101676 942603465 482151567 429909372 927110952 255648625 311373633 541599582 880513316 698686458 730151872 267658325 14373752 745524288 118017463 905253298 506651355 534273665 711656934 448764601 56888090 277986667 17736468 515058145 403608129 930833959 317738774 705051599 130867842 752730108 182029164 841601888 308371208 706732957 117777269 1883664 310292760 744563512 22420251 604650507 610415163 337674876 404328711 525146293 897807284 814219772 49562173 54486150 129666872 502447960 419340836 751168847 49201882 250364357 644883002 592640807 230188061 829351994 729671484 331549929 507251840 249763872 508212616 533673180 700247719 825628987 38993637 161732771 984877609 441919072 339476331 871385944 324704400 685836079 265856870 954853359 777470090 158970540 154046563 907294947 28785392 232229710 671304342 265616676 76824192 73581573 477467784 223582726 35751018 62652746 313175088 965061604 468340412 971666939 605611283 787558238 25903064 180467903 744443415 140835893 523464935 785636686 91115735 957015105 622544960 411774725 820224622 144919191 999409346 841361694 33949563 498484759 268619101 770504464 688598310 333471481 850729260 102404853 59530224 358811948 793322894 445882273 738798856 721384791 88953989 134590849 44277905 937319197 692801705 926390370 143838318 952571516 873907981 98081361 378507856 697365391 604650507 985598191 851209648 236313008 56167508 454649354 621824378 79706520 785276395 533312889 83189333 737117498 642120771 583633532 577868876 480230015 912819409 787558238 280628801 850008678 511935623 720303918 66976238 544962298 173502277 198722647 583273241 707453539 277506279 88113310 102885241 540518709 361333985 412855598 740840505 452247414 60130709 920025229 294439956 419941321 834876456 762818256 333711675 4045410 669382790 550366663 841601888 738918953 721865179 516259115 316177513 194879543 292398307 417419284 944284823 516259115 12692394 220820495 714779456 538597157 884836808 183350231 858295371 301045291 641760480 525506584 393880272 275464630 68897790 616900401 438796550 945245599 247121738 937079003 327466631 486715253 823467241 589998673 602008373 69498275 459453234 134230558 33228981 418259963 390037168 830192673 906694462 906934656 71059536 524185517 191516827 541479485 807734534 95559324 403488032 677429289 725828380 676228319 29986362 204967691 826229472 671544536 580631107 535354538 515538533 582792853 205207885 734235170 600927500 211332832 366738350 894924956 338155264 285432681 313415282 260452505 735556237 399765025 94838742 978752662 882314771 858655662 881474092 142036863 126784544 344280211 883635838 540879000 865381094 7528223 720904403 313535379 656052023 506411161 159571025 809295795 413576180 715740232 179867418 828391218 815901130 545802977 294920344 744563512 623265542 504849900 847726835 282550353 799567938 135791819 285672875 170019464 397363085 616179819 422943746 850008678 778671060 146960840 242798246 352326710 210011765 932395220 751769332 588437412 960377821 110091061 329748474 695684033 443240139 35991212 325545079 748526713 11491424 187313432 68537499 825028502 773506889 584834502 298763448 802089975 85951564 32628496 149723071 819143749 399284637 477828075 327106340 977671789 360012918 372623103 268619101 645723681 559734229 108289606 870425168 899608739 757654085 311013342 170499852 563937624 615459237 940922107 89554474 352566904 165215584 86912340 671664633 419941321 453328287 178065963 606451962 607292641 229947867 876550115 903932231 653770180 526707554 235352232 504249415 357851172 956054329 549285790 549886275 348363509 773506889 446242564 823106950 12091909 838479366 55567023 519021346 176384605 6087059 33469175 404088517 124262507 501727378 395921921 518180667 961818985 656532411 60130709 856493916 430029469 255648625 492840200 330589153 679110647 120299306 563697430 193438379 272942593 401926771 444321012 65174783 609694581 181428679 611496036 524906099 515178242 706252569 85351079 392919496 953051904 379588729 280628801 181308582 814339869 282310159 593841777 299604127 921346296 101083786 298643351 32028011 304167813 741801281 552768603 780352418 950409770 630711556 108649897 490918648 345481181 591680031 403367935 71539924 18697244 600567209 198722647 533793277 662777455 861297796 335032742 733994976 220940592 159210734 741080699 604890701 601047597 424505007 512055720 148522101 123181634 456811100 368900096 613177394 39474025 388235713 917503192 114414553 980193826 620503311 547604432 286393457 675507737 713818680 648245718 239075239 752730108 412855598 848807708 294560053 393760175 180948291 61812067 726789156 219619525 969385096 795484640 174823344 571984123 433992670 516859600 595763329 131468327 24221706 11011036 535955023 748406616 642481062 802791 873907981 328307310 522384062 574265966 112613098 305368783 676828804 867662937 340317010 318699550 93037287 408291912 712017225 53405277 105407278 417659478 101924465 194879543 412495307 846886156 339356234 850489066 669142596 412255113 685956176 34429951 371302036 295640926 265736773 431110342 118017463 141196184 520222316 489597581 478428560 413816374 266817646 58209157 428708402 749607586 656292217 73701670 534874150 365897671 623265542 831633837 23260930 769423591 524425711 241957567 484193216 907054753 595042747 481671179 262253960 196560901 821905980 683554236 629630683 707813830 547364238 950890158 418500157 762818256 867182549 60491000 66015462 48961688 350525255 746124773 530790852 738678759 655451538 842562664 67937014 237033590 519501734 109490576 86672146 752850205 331429832 4165507 145519676 679470938 852170424 344880696 131948715 934917257 899128351 577988973 430149566 681752781 403247838 281229286 475306038 687877728 674546961 855653237 910777760 894324471 349444382 80787393 904292522 201484878 512776302 392679302 351846322 77664871 957975881 663978425 168938591 547844626 84630497 23381027 406730651 730632260 527308039 423664328 784555813 837758784 772786307 160171510 913179700 130387454 578349264 904172425 132429103 474225165 338275361 46920039 184311007 910897857 735436140 875949630 414176665 203046139 740480214 37192182 612336715 882675062 516018921 660015224 937079003 650047173 404328711 127865417 978512468 88833892 953772486 923267848 903091552 318099065 189234984 404809099 806773758 424264813 846165574 596003523 165936166 85351079 149002489 390277362 130387454 835116650 512656205 455249839 380669602 647044748 295160538 302246261 693642384 931074153 625547385 953051904 697845779 527067845 247001641 403728226 539437836 861537990 800889005 683674333 370221163 68897790 389316586 619662632 561775878 401086092 642481062 132669297 445642079 771225046 153325981 245560477 110931740 279788122 73941864 556971998 205688273 272342108 854812558 36351503 700968301 504489609 875349145 34429951 602128470 790800857 426306462 718262269 384152415 958576366 867783034 147321131 88233407 719703433 554570058 29866265 336834197 685355691 354488456 575106645 772666210 570903250 622184669 544602007 281709674 801849781 185031589 811337444 525866875 712497613 36471600 335272936 481791276 477227590 383792124 357731075 659294642 236913493 562856751 606451962 564418012 792482215 281469480 575226742 299003642 621103796 927231049 618942050 669983275 190796245 668181820 222261659 9449775 165816069 676468513 901890582 881113801 585314890 888559815 660375515 227185636 876069727 885797584 593361389 936118227 695563936 534633956 63853716 119578724 194999640 284471905 245560477 9209581 104566599 869464392 110331255 290356658 409252688 258530953 590719255 174703247 630951750 790680760 904532716 270300459 588437412 400965995 268979392 23140833 835356844 830673061 878111376 642841353 635035048 353647777 844123925 660855903 537516284 166656748 940201525 376826498 504729803 389676877 624586609 652569210 892883307 359172239 642481062 361454082 238955142 93517675 693642384 835356844 161852868 558413162 850368969 718982851 686796855 749487489 66135559 647164845 955333747 51123434 801969878 804251721 436995095 770624561 196440804 344640502 384032318 936718712 568141019 785276395 743963027 437595580 759335443 55086635 10170357 268739198 540278515 187433529 674306767 837878881 679110647 398564055 571623832 559253841 905373395 128585999 585675181 372983394 52564598 449965571 44398002 960858209 305488880 861057602 180107612 369860872 966983156 237634075 858775759 566940049 740360117 161972965 677549386 191877118 332870996 412615404 617500886 422463358 124502701 188034014 570903250 954973456 529349688 319059841 606812253 348363509 644642808 479869724 160651898 335633227 234631650 613537685 59049836 340917495 54846441 588197218 316537804 606091671 815660936 857334595 7408126 730872454 34550048 806293370 155007339 485394186 436154416 393519981 1283179 530310464 178786545 230548352 618821953 449725377 327466631 149242683 265496579 988480519 117416978 521783577 416458508 984637415 946446569 783955328 923628139 703490338 733754782 111412128 587236442 834996553 201124587 446602855 458012070 231389031 62652746 559974423 741921378 819744234 771585337 519982122 335753324 221180786 502688154 996406921 177345381 504369512 531391337 295520829 971306648 842202373 96039712 146960840 718982851 540398612 32028011 265856870 619182244 188274208 82708945 257690274 727990126 751048750 892643113 727029350 501607281 475426135 871385944 774707859 248562902 531271240 744203221 748887004 132549200 786957753 943203950 641880577 860337020 966382671 424745201 685715982 845805283 461614980 25542773 853611588 244719798 492600006 527788427 340677301 813739384 764019226 644642808 64093910 523705129 276545503 661216194 920745811 816621712 522624256 931074153 949929382 753330593 746605161 742161572 527428136 978632565 506651355 931674638 324944594 33709369 293599277 605611283 789719984 329388183 110451352 309692275 252165812 19778117 762578062 61091485 434833349 467860024 699527137 478188366 827910830 368779999 298042866 196200610 582312465 368779999 809055601 776749508 493921073 77905065 653890277 774347568 732914103 422343261 270900944 584954599 504369512 293599277 869824683 666620559 128826193 150083362 219379331 163774420 286993942 246521253 236673299 890841658 406730651 960738112 171820919 110571449 40915189 69738469 632272817 476987396 844484216 486595156 888319621 604770604 584954599 109250382 53765568 361574179 671424439 180588000 706252569 959176851 688958601 423904522 860817408 749487489 981514893 70098760 440477908 7047835 975990431 462335562 209651474 284111614 806773758 66615947 853731685 992323623 940802010 904412619 571623832 239075239 561535684 814580063 522504159 960497918 921346296 106728345 917022804 122821343 35751018 289996367 725468089 80066811 879552540 531391337 816861906 942483368 452127317 777710284 69858566 791281245 481911373 516259115 821785883 998688764 683073848 19297729 327466631 667821529 645843778 703970726 368659902 436394610 528388912 977911983 331069541 801969878 735316043 93998063 645483487 84030012 164254808 567180243 198602550 288795397 743362542 894204374 185391880 942603465 25662870 743722833 329508280 672385215 823707435 678390065 688358116 369500581 361574179 534633956 404088517 64093910 597444687 345000793 853491491 772786307 125223283 749847780 735556237 657853478 137833468 581832077 80787393 190676148 355329135 679591035 236313008 519862025 997127503 528989397 162213159 753570787 474345262 831273546 621944475 700848204 995806436 986078579 46079360 574145869 254327558 731352842 770744658 644883002 613657782 76583998 311733924 457651779 449004795 17736468 255888819 883035353 155727921 650767755 471102643 12812491 59049836 875229048 278587152 326025467 173021889 98922040 544361813 551087245 129907066 242678149 15334528 673946476 372623103 419460933 498724953 819023652 502928348 595042747 488396611 844604313 175784120 555650931 724987701 497283789 417058993 767502039 65414977 297802672 482992246 394120466 287594427 443840624 82228557 24341803 70819342 883996129 611015648 52324404 838359269 795484640 500286214 483232440 428828499 154647048 996406921 454409160 256489304 762938353 767021651 127625223 15094334 115735620 877150600 571143444 213494578 655931926 747565937 470141867 671064148 39954413 10050260 942723562 687037049 618341565 341157689 908856208 188274208 312814797 775428441 371061842 664458813 190916342 307530529 797165998 944164726 910657663 857694886 810256571 368900096 887959330 153205884 852770909 497523983 519982122 135191334 741080699 977671789 670583760 768102524 2844440 546043171 548565208 792962603 564778303 585074696 979713438 455129742 358091366 979112953 85351079 278467055 455730227 675147446 435313737 553369088 348963994 777109799 205327982 938279973 645723681 794283670 853371394 151764720 817582488 687277243 517219891 928912407 370341260 989441295 331069541 932034929 204967691 267658325 430750051 971066454 643441838 80186908 193558476 335152839 752249720 469301188 54486150 813739384 86431952 596604008 875709436 586155569 67576723 463656629 387274937 116336105 128105611 56407702 664819104 850128775 994485369 646444263 246521253 400005219 392559205 339836622 732313618 929993280 513737078 88593698 15574722 500526408 972027230 939841234 291677725 404328711 141316281 755132048 513616981 915461543 181308582 164374905 586155569 859496341 948608315 958216075 997727988 532592307 163053838 149602974 745884579 9329678 299604127 782033776 463176241 905013104 195720222 858655662 230908643 510734653 664458813 894084277 920145326 111772419 600206918 81748169 825028502 975389946 327706825 365657477 681032199 295640926 670583760 201484878 307770723 564778303 514097369 551087245 76944289 318699550 834876456 284832196 801729684 838959754 996046630 952691613 598645657 769783882 857214498 668782305 599966724 629750780 293719374 975389946 655811829 908976305 385593579 61451776 951010255 658694157 375145140 691360541 290716949 63613522 808094825 751048750 537276090 357971269 262854445 469181091 821785883 281589577 919664938 349324285 147441228 204847594 535714829 303687425 113093486 286753748 648726106 99762719 55206732 400965995 777710284 207369631 677189095 393399884 757413891 309331984 698206070 270300459 875949630 779872030 108169509 657493187 956414620 198602550 766901554 979353147 672865603 867662937 408772300 749727683 262974542 691120347 905613589 306569753 45118584 749487489 688238019 164374905 265976967 216737197 238714948 143838318 621103796 206649049 224543502 135551625 975750237 73821767 809776183 606211768 296721799 856493916 586035472 500886699 14373752 575226742 400365510 297562478 565258691 851089551 826709860 963620440 185632074 795244446 899969030 817342294 710936352 978272274 480710403 409853173 855893431 773266695 857694886 375985819 862738960 676108222 611375939 968544417 518300764 604530410 674186670 969385096 203526527 371782424 950890158 80907490 589398188 975389946 816141324 355449232 340317010 633233593 609934775 835597038 150203459 828511315 896966605 324103915 467739927 419701127 72500700 29025586 609454387 673826379 545682880 569341989 759215346 984997706 740720408 798006677 559614132 914020379 552528409 948848509 76343804 466899248 430269663 572104220 858655662 964821410 611616133 93877966 304648201 665299492 692081123 455610130 348723800 323143139 716701008 306809947 220580301 340677301 598525560 272942593 634194369 29025586 23621221 707453539 111652322 883155450 681992975 2364052 488156417 227906218 428107917 542560358 391118041 246160962 283150838 161252383 41155383 584354114 849047902 620983699 218058264 567300340 951130352 719343142 361934470 585915375 867182549 924228624 312094215 562376363 513977272 647405039 580751204 488276514 289035591 178426254 64214007 822146174 368179514 555530834 94358354 161372480 623385639 570422862 140355505 854091976 199203035 722345567 436034319 144318706 238474754 89074086 524786002 71179633 549045596 79586423 620743505 342718950 280868995 635995824 663137746 118738045 541479485 100002913 914740961 64694395 855292946 12572297 706132472 547964723 229227285 708294218 922066878 68417402 971306648 14493849 910177275 85591273 862618863 339116040 179627224 513616981 73101185 480109918 294560053 270660750 755732533 119458627 438075968 886518166 62892940 264775997 777349993 808575213 394720951 189234984 298523254 334312160 577388488 204006915 336473906 446602855 787438141 139514826 136632498 36471600 549886275 982835960 982115378 823347144 266817646 211573026 902010679 284231711 895285247 263094639 919424744 890721561 852891006 581231592 442399460 810616862 816021227 779872030 964941507 779031351 701448689 205688273 574986548 464977696 43317129 155607824 922307072 954493068 20738893 727269544 398443958 101564174 274984242 723666634 8128708 553489185 611976424 406610554 690639959 697845779 204727497 477467784 525986972 492119618 261052990 338395458 682694 844364119 237153687 689799280 59049836 272101914 531271240 481190791 177225284 188754596 978512468 635515436 170860143 337674876 211933317 694122772 917503192 102284756 587356539 940681913 341998368 635395339 546763753 155727921 852650812 989081004 266817646 289275785 201484878 45719069 880873607 157169085 591680031 714419165 994245175 777470090 535594732 542320164 513376787 819624137 393399884 839320045 658574060 586395763 879432443 365657477 386314161 320501005 743482639 367579029 843403343 900809709 175423829 338275361 564778303 87512825 765340293 901170000 303447231 608853902 217457779 76103610 20498699 833315195 320501005 335152839 185872268 481430985 736036625 902010679 805092400 208690698 470021770 593001098 288315009 877510891 274503854 756933503 212053414 618701856 58329254 70098760 249883969 241357082 520222316 166296457 89194183 118017463 513016496 209891668 482391761 586996248 139274632 563337139 300324709 762818256 509053295 934917257 670944051 113333680 377787274 132789394 843283246 259972117 136992789 672625409 137833468 545322589 138313856 73581573 672865603 379949020 387755325 335393033 337674876 999049055 688238019 265256385 747806131 869584489 133990364 882795159 178065963 106488151 635875727 612937200 47160233 666620559 320741199 67456626 354248262 360613403 267177937 914620864 264415706 576908100 791761633 530550658 792482215 906214074 257209886 111051837 483112343 888679912 443240139 861417893 86552049 368779999 744803706 501847475 319660326 252406006 581471786 38273055 808575213 116336105 34790242 898287672 317858871 187193335 716580911 466058569 550246566 131348230 853731685 939360846 522263965 394120466 997487794 696885003 214095063 497283789 172541501 850969454 667581335 90034862 789840081 411774725 739519438 137353080 748406616 676228319 240276209 25062385 540638806 787438141 755732533 72740894 369740775 721144597 743842930 135911916 668662208 231389031 49922464 849047902 569702280 444561206 454649354 142517251 507852325 444801400 399885122 215536227 815180548 178546351 906093977 159931316 722465664 952571516 386314161 638637958 119218433 662056873 462815950 964821410 914861058 710576061 981514893 108529800 81868266 948848509 61211582 183110037 371302036 917262998 318339259 362775149 519261540 389196489 877630988 526467360 931074153 539678030 326625952 626027773 549525984 4886089 340317010 575346839 644042323 59770418 859616438 955814135 936118227 718862754 864660512 320501005 771825531 422223164 441078393 181068388 831753934 583033047 784555813 993284399 720424015 863339445 618221468 582672756 758014376 749007101 249523678 307890820 113814068 273543078 996887309 471222740 672745506 321942169 874028078 870425168 368059417 126664447 562616557 223342532 467619830 802089975 329988668 699046749 318459356 25542773 19778117 322182363 572464511 932275123 416098217 541959873 29986362 847486641 312214312 623385639 379708826 635155145 475906523 145279482 438436259 275344533 898647963 828991703 240036015 649446688 399765025 298162963 148882392 203166236 281829771 807134049 168938591 518300764 62532649 284351808 665299492 518180667 349444382 502447960 3925313 659654933 436754901 91115735 803290945 387395034 749127198 551327439 283751323 317978968 593481486 470502158 260812796 571623832 907775335 419701127 83549624 645843778 430509857 460293913 96640197 244359507 790680760 611015648 995205951 44398002 544602007 123061537 742521863 437235289 580871301 634194369 219379331 740119923 247962417 165575875 106728345 799688035 589278091 212173511 838839657 516619406 453448384 52444501 521062995 685475788 191156536 87512825 341758174 421982970 851209648 830072576 507732228 855773334 325304885 622785154 369740775 659895127 69978663 288435106 575947324 929272698 8248805 258651050 749007101 788639111 930353571 426666753 378748050 399765025 170019464 881594189 773146598 938039779 927591340 156808794 604530410 700968301 87152534 214695548 10290454 182509552 533673180 335152839 572944899 24702094 740720408 822026077 728950902 817342294 260812796 408171815 697605585 597084396 670583760 818182973 343679726 871506041 295881120 277266085 321822072 477948172 555410737 310653051 71539924 255648625 17015886 196801095 203526527 928311922 461134592 749487489 827190248 15334528 880273122 378267662 825508890 219139137 618942050 641520286 768222621 241116888 586876151 627108646 670944051 805092400 706252569 292638501 940922107 349804673 431470633 461014495 454529257 569822377 727749932 410573755 548685305 32508399 620263117 544842201 324944594 283391032 996527018 753931078 523705129 479029045 905613589 438676453 34670145 859256147 174102762 164735196 323143139 812898705 448644504 396882697 844964604 808214922 550847051 502207766 257209886 386194064 801249296 394120466 505450385 345000793 196440804 425465783 431110342 136632498 454168966 851930230 634194369 276425406 862138475 724387216 360973694 326025467 311253536 983916833 548685305 445401885 336954294 954613165 764379517 422583455 872346720 506291064 668422014 712617710 775788732 820344719 306809947 573905675 80307005 268499004 625427288 77304580 135431528 432191215 289996367 603569634 355809523 785396492 357250687 974789461 844724410 535834926 245320283 314496155 961698888 134350655 300805097 921586490 9209581 520222316 457771876 283270935 301645776 770984852 61932164 154647048 753210496 805692885 280628801 949328897 593001098 989441295 211933317 906934656 26743743 281829771 374784849 778550963 568381213 16775692 159330831 581952174 677429289 598405463 853851782 993284399 720544112 785396492 965061604 608373514 63373328 69258081 408652203 216737197 746004676 225023890 901770485 193678573 842682761 87512825 522023771 971907133 559974423 329988668 352326710 872106526 598885851 795844931 530910949 255408431 759815831 445041594 981274699 421382485 78865841 166296457 351486031 828511315 668782305 127264932 854572364 558293065 611375939 850008678 194038864 484313313 884956905 65775268 854572364 577748779 824548114 868743810 178186060 234271359 760296219 456570906 577028197 356770299 866341870 954733262 518180667 284351808 638878152 670703857 608493611 408892397 859976729 455249839 233550777 734835655 552408312 755252145 646924651 660375515 317378483 678269968 495122043 49321979 502207766 522263965 826829957 873307496 771585337 785756783 423183940 617020498 759575637 333951869 295160538 488876999 606451962 488516708 676348416 511695429 187433529 232229710 845685186 382471057 521183092 213614675 377787274 249403581 613777879 870425168 600086821 590719255 238234560 802089975 373343685 635755630 234391456 312934894 819383943 529709979 552168118 866582064 808575213 136752595 769663785 971907133 814700160 109850867 961578791 466779151 382831348 180948291 568020922 301405582 102164659 759695734 767141748 768102524 458852749 552888700 56287605 664939201 290356658 797165998 420061418 650167270 643441838 390037168 847486641 499925923 145159385 108529800 749127198 335393033 28665295 603209343 420301612 784796007 95799518 695203645 877991279 300685000 523705129 900329321 320981393 604170119 695203645 511455235 783354843 659054448 771465240 842202373 100243107 765940778 161732771 67696820 797165998 72260506 366618253 459213040 350525255 277145988 289876270 864300221 603329440 314135864 296721799 461374786 943444144 763779032 340196913 398804249 550486760 310292760 132068812 561295490 982355572 714659359 475065844 735436140 296481605 618341565 183470328 578469361 612216618 374184364 929512892 454168966 247482029 742161572 622424863 931794735 343079241 535474635 562597 229227285 24822191 949328897 181788970 540278515 452607705 199923617 161012189 885797584 299844321 942963756 856373819 896005829 574386063 943083853 711536837 957975881 304528104 169659173 202445654 153926466 26623646 130987939 873427593 96520100 912579215 208210310 613177394 992203526 806173273 541599582 449124892 107208733 775188247 566219467 623986124 676948901 445762176 493200491 498845050 553369088 746485064 473504583 394600854 868863907 556851901 217217585 991002556 862498766 880393219 891562240 705171696 279908219 787318044 749847780 833555389 754651660 23140833 551447536 157649473 827310345 288315009 555771028 953412195 300324709 456811100 287834621 191997215 898287672 565378788 226465054 430750051 236313008 126544350 939841234 840641112 984877609 367458932 452367511 668061723 986558967 471823225 225384181 919064453 44998487 590479061 90875541 989321198 319540229 559734229 680671908 448764601 404929196 234031165 788759208 880993704 210492153 986318773 311854021 720303918 480230015 583273241 485754477 443600430 295400732 536435411 304528104 853371394 476987396 894444568 343919920 736276819 467860024 397723376 637677182 594682456 829712285 308611402 761497189 358331560 385233288 801729684 194158961 918463968 214575451 128585999 991482944 623145445 95078936 485634380 205448079 666020074 446362661 226705248 734235170 67216432 106007763 843283246 156088212 648726106 198962841 712257419 974669364 879912831 722345567 878952055 704931502 467860024 57728769 720904403 98441652 786957753 55086635 270060265 35751018 461014495 639959025 812538414 638637958 249283484 249163387 702289368 187793820 910417469 490198066 250604551 771345143 817702585 591800128 737117498 645363390 693882578 902010679 389796974 512175817 442399460 879432443 753690884 231028740 673225894 957975881 49562173 77304580 467499733 891081852 156448503 504009221 447803825 744923803 257570177 87152534 534153568 161132286 169539076 480950597 710215770 766060875 365297186 115135135 91956414 970946357 368659902 543280940 321581878 788759208 146120161 650527561 670944051 985117803 521903674 902611164 497523983 655931926 903812134 912699312 992443720 92076511 100843592 277266085 972027230 357250687 643682032 686076273 774227471 361213888 8368902 60130709 903932231 733274394 761977577 612576909 413335986 169178785 24101609 693282093 674787155 754411466 700848204 867542840 216617100 774587762 962179276 940441719 780952903 70579148 709615285 675267543 204727497 10890939 34670145 877751085 590719255 426906947 299123739 810736959 825388793 520702704 937439294 619662632 109970964 506651355 192957991 399164540 370701551 387635228 166896942 132188909 413696277 690399765 770144173 214215160 694603160 701568786 964341022 557812677 118738045 276665600 572704705 637436988 87032437 170740046 700848204 619422438 955573941 390637653 222021465 48841591 178065963 800528714 139514826 302366358 63373328 545682880 778791157 753330593 371902521 876790309 456570906 657733381 635275242 860337020 503648930 560815102 31667720 927591340 797165998 182869843 312694700 613057297 169899367 941882883 715500038 17736468 859136050 3685119 728710708 279427831 531631531 64334104 578829652 864780609 34670145 184911492 561895975 45959263 124502701 744323318 152125011 802330169 222021465 698806555 155607824 229707673 768462815 945846084 939601040 65535074 62532649 845805283 944044629 19898214 696644809 320260811 4525798 52084210 833675486 836197523 608373514 730992551 507732228 320501005 563697430 148522101 346441957 739279244 830913255 291437531 635155145 492720103 193798670 898768060 632032623 718022075 752129623 711656934 235952717 864660512 199563326 760896704 165695972 317618677 65895365 468700703 187073238 265616676 64093910 995926533 407571330 75623222 230308158 118978239 104086211 6207156 300204612 531991822 468700703 493800976 304888395 986198676 337434682 320020617 226585151 861658087 906454268 260212311 160171510 851209648 945245599 393279787 105407278 554329864 984157027 359172239 335873421 102524950 459573331 512776302 62172358 365056992 708654509 239555627 200163811 377547080 229707673 950169576 394841048 319059841 258170662 316297610 265976967 564177818 835957329 429549081 50883240 117537075 805452691 516259115 733154297 24942288 401806674 384872997 508693004 107328830 602488761 464617405 814700160 123902216 985598191 958576366 825028502 697245294 830312770 67696820 800408617 208810795 268018616 776509314 376466207 273302884 495001946 562976848 842562664 700487913 531991822 573305190 397963570 918343871 668061723 467139442 893964180 259972117 523104644 196200610 406010069 120299306 558413162 937679488 584113920 398564055 320861296 341758174 524425711 580390913 506170967 405289487 106368054 157409279 585555084 32268205 211452929 561415587 957015105 986438870 926030079 225023890 473744777 968184126 945365696 877150600 341998368 886518166 673345991 851209648 770624561 170740046 600807403 54846441 281109189 642360965 745884579 238594851 316417707 30466750 611616133 39714219 250604551 258290759 679711132 592640807 230428255 644642808 123782119 367098641 423904522 158009764 304528104 436634804 671184245 246641350 365177089 618581759 165215584 968424320 617140595 417419284 256249110 417058993 573905675 886398069 978632565 690159571 641880577 522143868 368779999 549646081 197761871 751649235 377907371 737117498 458492458 749487489 95439227 948608315 269339683 738918953 370341260 254807946 648365815 734715558 522864450 664458813 351726225 608013223 651007949 66615947 911978730 199803520 711656934 947887733 78865841 911258148 322062266 841241597 798246871 979473244 935037354 726428865 164615099 43797517 147321131 805452691 862138475 987159452 604050022 332510705 775788732 807134049 501607281 599486336 597084396 115135135 621944475 968064029 299243836 610415163 389917071 731713133 581111495 465818375 349444382 831393643 245920768 89074086 112132710 289515979 321221587 794283670 595883426 380069117 879792734 254327558 121260082 497043595 491399036 160051413 66015462 334552354 817942779 907415044 881113801 148402004 539918224 49442076 621824378 282550353 158610249 221180786 864660512 717061299 367579029 736877304 711416740 925429594 28785392 618461662 571263541 362294761 337674876 371662327 774827956 779031351 999889734 893003404 745284094 566339564 701808980 904893007 956654814 367579029 432911797 91836317 806173273 990882459 165936166 674907252 130987939 858775759 956294523 521062995 483352537 459813525 31187332 745284094 975630140 69017887 16895789 223582726 637917376 504489609 568261116 160892092 524786002 196680998 828631412 362534955 128946290 392078817 168458203 377547080 983796736 315937319 394480757 167497427 763538838 746004676 257329983 655211344 849888581 67336529 684995400 215536227 705531987 326625952 311253536 6447350 317858871 612096521 397603279 856133625 373223588 558413162 195119737 637076697 910777760 60851291 274143563 687277243 920145326 31667720 58569448 968904708 326746049 176384605 769783882 226945442 380429408 193678573 110931740 463896823 915701737 124862992 273062690 366618253 482151567 23260930 919304647 562376363 927591340 550847051 819864331 124742895 218298458 438436259 806173273 146840743 657973575 49922464 734715558 429428984 694362966 642240868 956054329 992323623 321581878 263935318 820344719 502447960 810496765 475666329 978392371 896125926 1883664 23381027 387515131 631071847 778791157 201604975 140595699 880993704 330108765 857574789 972867909 368779999 303807522 192477603 218778846 184431104 411294337 897086702 625667482 686556661 231028740 93037287 45358778 472063419 474705553 388596004 34910339 73941864 414897247 56407702 431951021 186352656 742041475 623145445 291077240 240636500 648245718 331309735 798607162 623625833 431710827 836317620 975269849 348243412 247361932 556131319 252766297 678510162 903571940 603449537 337915070 733154297 639718831 17135983 522023771 131588424 839199948 351726225 63253231 689919377 794043476 878952055 351966419 184671298 878711861 390037168 388475907 784315619 624106221 829111800 558293065 740360117 185031589 340677301 309812372 612937200 34309854 468820800 958336172 327586728 35150533 795364543 458132167 664218619 339596428 989561392 472784001 238714948 420782000 468100218 179867418 866221773 977071304 424985395 83069236 967463544 411294337 478068269 384872997 693882578 105407278 743002251 844484216 405409584 20979087 86311855 759455540 537035896 89674571 397603279 232710098 57488575 78145259 984757512 880633413 758134473 335272936 312934894 871506041 930353571 855292946 581711980 326265661 866822258 456330712 675868028 578109070 17856565 995446145 29025586 11491424 951730837 851209648 366858447 671784730 293359083 687157146 47640621 334792548 490678454 118978239 69978663 643201644 384632803 284712099 676468513 781193097 616059722 799567938 27224131 30586847 921706587 187433529 700247719 420661903 133990364 991122653 5006186 330949444 561415587 428588305 922186975 586155569 329147989 326866146 918103677 960497918 487916223 324224012 885917681 278827346 761256995 877030503 222742047 42476450 78745744 333831772 395441533 386794549 467860024 512656205 906214074 31187332 657613284 594682456 720664209 63973813 69618372 876069727 695083548 212053414 341277786 11731618 911618439 518420861 323623527 949448994 113693971 382471057 85351079 197521677 462815950 6567447 161852868 212653899 323983818 856974304 647405039 262494154 584714405 592760904 818903555 731232745 212053414 915581640 726789156 485994671 708054024 318579453 169899367 587476636 41996062 339716525 39954413 20979087 780112224 349684576 70579148 999169152 894564665 852410618 778070575 234751747 25062385 77664871 799567938 11251230 833795583 375505431 362775149 667941626 929392795 216497003 805212497 140835893 727389641 642000674 64334104 961338597 487195641 344760599 850008678 402527256 870545265 81868266 214455354 24341803 943924532 108049412 942363271 102765144 303207037 294439956 185151686 504489609 992804011 533793277 105287181 101684271 803531139 530190367 606812253 922307072 236433105 246401156 67456626 199803520 552888700 291437531 476146717 132188909 875108951 626868452 854332170 836557814 92797093 347282636 935878033 15214431 892282822 442759751 719823530 261533378 952091128 44998487 503168542 567900825 392919496 280989092 163053838 474705553 607172544 862979154 932395220 363495731 514337563 78625647 460774301 574506160 765460390 828391218 442500 427747626 772305919 865381094 531031046 153806369 345481181 589518285 33469175 138794244 728350417 181788970 452727802 259972117 22059960 150323556 548445111 278106764 87032437 291797822 796325319 242197761 172061113 820464816 473144292 781553388 999529443 842922955 694122772 21459475 802791 335032742 76103610 63613522 205688273 979713438 285432681 493080394 359652627 983796736 60731194 999049055 789599887 892162725 543881425 322662751 334071966 457051294 389076392 442159266 651488337 919905132 179387030 825628987 361934470 656292217 761016801 234631650 818423167 350525255 746965452 188634499 309091790 882074577 744683609 139634923 52804792 574025772 977191401 749367392 387875422 158129861 749367392 502568057 433632379 556371513 429549081 974429170 359532530 273302884 713098098 618341565 560214617 801009102 125703671 708054024 188874693 257570177 967703738 271981817 861778184 426786850 537636381 991122653 770984852 398684152 970105678 504849900 92917190 934556966 223943017 411774725 887839233 166896942 435313737 75863416 176985090 548204917 346562054 640439413 689318892 786357268 826589763 622905251 847006253 906694462 695684033 518540958 438316162 842082276 91476026 877510891 693642384 739639535 395561630 515418436 8609096 366498156 191877118 299604127 106368054 977791886 861057602 476266814 826349569 996647115 409012494 476026620 881594189 195480028 749727683 570783153 935637839 583873726 473384486 709615285 828751509 280868995 277746473 167137136 917743386 963740537 163414129 538837351 365657477 623145445 871986429 329988668 560214617 437115192 967463544 991002556 948488218 282430256 35991212 216256809 231869419 648245718 761377092 628549810 785036201 776629411 446122467 479509433 674546961 808695310 580270816 585074696 966863059 534633956 148281907 608973999 446482758 575106645 545322589 609934775 875949630 466538957 913660088 985958482 683674333 894084277 368900096 739759632 958336172 761136898 697605585 749727683 780112224 880633413 63373328 264175512 773626986 23981512 68537499 352326710 864780609 281469480 869224198 589398188 549045596 402527256 508813101 200524102 194399155 624586609 777349993 364096216 913539991 137953565 705531987 932755511 779031351 605130895 458372361 199203035 39113734 105647472 255168237 290716949 937679488 653049598 747686034 281709674 968544417 119338530 335393033 120059112 274023466 924228624 411654628 115015038 754171272 866461967 643561935 883996129 49201882 179026739 945485793 849408193 189475178 588797703 322902945 568381213 778190672 332870996 196921192 556491610 349684576 960377821 746485064 489237290 540038321 242678149 412495307 119458627 638277667 720904403 972747812 69498275 158610249 757533988 636956600 843283246 542200067 26983937 871866332 710696158 311733924 53525374 139514826 836197523 385713676 861297796 742161572 613417588 588677606 938880458 513256690 816621712 591439837 546523559 771104949 786357268 620623408 195840319 348123315 57608672 982115378 990281974 349924770 594682456 586035472 138554050 221300883 240036015 79586423 250004066 947287248 11491424 147201034 968064029 496082819 132188909 454048869 475185941 562496460 541239291 577628682 887839233 541239291 11131133 351966419 413696277 16655595 44518099 73941864 257810371 389436683 638037473 74542349 109130285 517820376 262133863 146000064 738318468 811097250 903451843 709495188 159571025 830432867 48000912 690639959 236913493 363255537 374064267 89194183 773266695 191036439 66255656 848687611 987399646 68297305 661576485 85591273 251925618 588077121 459453234 281109189 674546961 600687306 603449537 730031775 302126164 256008916 723426440 371061842 575466936 590358964 389917071 326145564 83669721 16055110 314616252 566819952 341638077 942603465 33108884 438556356 968304223 609814678 286153263 773867180 271021041 279547928 993884884 326746049 644162420 12932588 122100761 302486455 716340717 750328168 867182549 36111309 74302155 873187399 677189095 605611283 517940473 660855903 980554117 174823344 19658020 772786307 819263846 795124349 382711251 821905980 234751747 118017463 495362237 83309430 203046139 547964723 9089484 732794006 483592731 336113615 805332594 720664209 339716525 377186789 245680574 864780609 949208800 212413705 46679845 149242683 256129013 586635957 875829533 489957872 164014614 367458932 961338597 42596547 213134287 868863907 265136288 21699669 612216618 674787155 852290521 223462629 974068879 45478875 497283789 128826193 954372971 871265847 591680031 51844016 357010493 605130895 849888581 569822377 480470209 863219348 433992670 435914222 692801705 525026196 328187213 256969692 807614437 70699245 113693971 738918953 398203764 737237595 313175088 337314585 138914341 467259539 498244565 506531258 214695548 906814559 413335986 316297610 603569634 540038321 885677487 155607824 922307072 53645471 967463544 331309735 293238986 304167813 328547504 988480519 389556780 572104220 595763329 876790309 642481062 93037287 86311855 237634075 857694886 331910220 535234441 539077545 483953022 749847780 334792548 107689121 242678149 758734958 586756054 804251721 910057178 201004490 266577452 74422252 381870572 50643046 117897366 13172782 628069422 257089789 846766059 713818680 248442805 425705977 142997639 113934165 695323742 938520167 735316043 987639840 948728412 860216923 909336596 591319740 654971150 792962603 15694819 306809947 977431595 767141748 812898705 905253298 162333256 773867180 590479061 66135559 104206308 392679302 185151686 947767636 814099675 799447841 630471362 403968420 400605704 321581878 731472939 434232864 746124773 162573450 417899672 621103796 45238681 868383519 279668025 951010255 461014495 242678149 724507313 248442805 992563817 621103796 365537380 661216194 931674638 81507975 92076511 464857599 324824497 950529867 35390727 254087364 473864874 763058450 80907490 598525560 217097488 592280516 123061537 869464392 614258267 698806555 770144173 9810066 536195217 411654628 741921378 569942474 537396187 361093791 93637772 873547690 800768908 707813830 795004252 308010917 200524102 51363628 958816560 441919072 871145750 852050327 351966419 238714948 126904641 669743081 422583455 57608672 542200067 250844745 380189214 179026739 215416130 581952174 978512468 970105678 875829533 270660750 488756902 406250263 337074391 113573874 977551692 394480757 918824259 620743505 645723681 639838928 497043595 727029350 582192368 711656934 995806436 5846865 462575756 593361389 9329678 161372480 163654323 158850443 394720951 416698702 983916833 136752595 511935623 12452200 815060451 56047411 209171086 818543264 516139018 57128284 182149261 68657596 455490033 735916528 257209886 640559510 911858633 85951564 123782119 144078512 685355691 886638263 296121314 572344414 62052261 258170662 913539991 687517437 957375396 440838199 604770604 620263117 192477603 770264270 82108460 675147446 823707435 939000555 5966962 30947138 477587881 170379755 499445535 975990431 916662513 628910101 453928772 197761871 899248448 187913917 939000555 406370360 539918224 762337868 545082395 685355691 736877304 529469785 817222197 337194488 243278634 567780728 220460204 571023347 50763143 39113734 60130709 972507618 385953870 418980545 194999640 571503735 376706401 277506279 682113072 142397154 569582183 297922769 345240987 32988787 710816255 635995824 635995824 564778303 325304885 883155450 95319130 918223774 73221282 729551387 524545808 790560663 313895670 587356539 212053414 876670212 13893364 478188366 678269968 135311431 641400189 648245718 463656629 645723681 736997401 187553626 431951021 893723986 148281907 198242259 373944170 611976424 665419589 842682761 385473482 251205036 784195522 227065539 17616371 660735806 599726530 611375939 959537142 401446383 461374786 292638501 678750356 494041170 498484759 120659597 445401885 943444144 742041475 735316043 676708707 340076816 895285247 644762905 31067235 743002251 840521015 426186365 312694700 393760175 899969030 724627410 10650745 568861601 294560053 448404310 62052261 508813101 488756902 2364052 907415044 929993280 397002794 444441109 993404496 289275785 561175393 166296457 479269239 384752900 436034319 125943865 222621950 844604313 755011951 423544231 560695005 990762362 935757936 67216432 745163997 854692461 361574179 60611097 500526408 870545265 189475178 654851053 536555508 347162539 764379517 301045291 111652322 947767636 800048326 309452081 560334714 184791395 335032742 861658087 503168542 322403 527788427 415257538 410573755 78505550 182269358 202565751 996887309 315937319 297802672 709615285 145039288 686316467 449605280 611976424 792602312 332390608 380429408 524425711 39714219 224183211 501487184 95319130 141196184 400485607 104566599 177585575 896846508 797526289 564898400 481671179 402887547 357851172 734955752 794884155 573545384 241236985 169418979 726068574 444080818 74182058 131948715 841962179 14013461 784796007 302606552 697965876 834636262 521663480 153446078 898768060 194639349 332150414 732193521 279187637 508332713 590959449 32148108 160531801 126544350 5366477 693642384 293359083 460774301 769063300 842802858 198962841 645723681 260572602 392198914 919304647 918584065 42956838 546403462 801129199 854332170 631552235 410453658 103966114 497283789 640319316 726188671 522744353 599726530 585915375 913419894 183710522 362534955 344280211 190676148 824788308 715500038 971306648 742762057 72740894 834396068 46079360 151044138 960257724 362895246 648485912 949569091 497884274 83549624 428828499 250484454 281589577 590118770 445642079 861417893 521183092 75863416 938520167 202805945 671544536 577988973 817942779 840881306 102284756 844003828 981034505 403728226 542200067 568861601 940922107 86552049 846645962 865260997 197521677 969745387 317738774 669863178 646204069 916302222 91476026 885197099 453208190 665299492 199082938 247842320 693161996 5126283 386554355 614138170 830913255 84030012 333111190 937799585 835356844 427147141 676708707 290837046 942243174 280628801 534994247 636596309 173021889 45719069 791161148 908015529 19658020 428948596 618101371 464016920 617380789 177825769 5486574 595162844 859976729 636356115 967823835 51964113 125943865 399404734 198842744 879912831 553248991 369260387 504249415 583873726 552528409 562496460 139394729 991603041 896966605 419460933 498244565 682473363 340677301 906694462 566699855 398564055 764259420 806293370 567660631 713458389 85351079 707813830 250484454 898647963 477107493 781313194 523104644 972147327 293959568 202685848 880873607 859616438 790920954 19297729 444080818 191997215 127024738 203166236 75623222 279908219 944765211 159210734 139394729 202085363 547724529 336233712 265736773 592040322 417899672 151284332 826469666 181188485 864420318 83429527 38633346 773987277 591199643 326265661 423544231 562597 729551387 274744048 780112224 395921921 254928043 171580725 725347992 241957567 923508042 125463477 602608858 946566666 382230863 390397459 910177275 852891006 586756054 241357082 380429408 37912764 29505974 488636805 825268696 646444263 216737197 253006491 809175698 191036439 509413586 314135864 845324895 283871420 574986548 831874031 654370665 788158723 799207647 423784425 90034862 304408007 667221044 851089551 798967453 812778608 730992551 343439532 2484149 717421590 869824683 372503006 963019955 953292098 310412857 157289182 717301493 100963689 981394796 943324047 456691003 955694038 139514826 16535498 127264932 91956414 300204612 694723257 175664023 331790123 907054753 458972846 405889972 943444144 803290945 256008916 601648082 376226013 745524288 417779575 158249958 990642265 666260268 387154840 286153263 556611707 939120652 849888581 476507008 538116769 226465054 865260997 374664752 755972727 717541687 356650202 290236561 546523559 725588186 235232135 583993823 40074510 418860448 342478756 784195522 735436140 268739198 554810252 548325014 391238138 331309735 41996062 151284332 393880272 828751509 578829652 795724834 577028197 872346720 128946290 467619830 131828618 572944899 279187637 799808132 670223469 156208309 391238138 246040865 708774606 315456931 927231049 896846508 84870691 46559748 440958296 959296948 62052261 553489185 723186246 762818256 889520591 908255723 442639654 748406616 394120466 363856022 979713438 328907795 104686696 358211463 592520710 301525679 369860872 81147684 721144597 329388183 14133558 558533259 827190248 741080699 805332594 858055177 802210072 409973270 545562783 881353995 870545265 261533378 778310769 595763329 547003947 813138899 670944051 791641536 24822191 96159809 199443229 386194064 846045477 152004914 623986124 68297305 34910339 877871182 564418012 846285671 654610859 909336596 517580182 692201220 920265423 391238138 260452505 320501005 439276938 335753324 439156841 138914341 185752171 32748593 990161877 277746473 179146836 528749203 809535989 164014614 687397340 536435411 139634923 459453234 226104763 810496765 286153263 735676334 461374786 971066454 469421285 532952598 78985938 334432257 617140595 408412009 761136898 755011951 567060146 62652746 69858566 242558052 193558476 256609401 970465969 17256080 94238257 634314466 503528833 472543807 571143444 281229286 391958720 461014495 289515979 726548962 657132896 894084277 407811524 275224436 344160114 123902216 650527561 802089975 881594189 597084396 669262693 612216618 930113377 258771147 970706163 171460628 362534955 699527137 544001522 898888157 183590425 726789156 744203221 121620373 636476212 915461543 898407769 898768060 915221349 637436988 202565751 745764482 11131133 587476636 559734229 624586609 350645352 787798432 803651236 673105797 768222621 934797160 359532530 470742352 867542840 245920768 326746049 121740470 634434563 684875303 103125435 795484640 282430256 876430018 522624256 282910644 490318163 948848509 512656205 753810981 101924465 115255232 831994128 642841353 601648082 494401461 560574908 725468089 947527442 806653661 955694038 715620135 852050327 853731685 104206308 290236561 263695124 302966843 922667363 954733262 218898943 179747321 766901554 682694 458612555 699767331 6927738 935637839 243518828 345481181 361574179 923628139 136872692 419220739 122220858 224543502 60611097 557812677 731112648 642240868 810376668 707693733 397242988 865381094 818543264 750208071 334792548 443720527 341157689 436394610 991723138 5606671 843043052 827910830 648485912 69378178 426906947 485274089 916302222 592640807 602368664 725588186 94238257 546883850 862738960 374664752 565018497 547124044 660135321 345000793 693642384 615098946 380069117 158249958 312094215 702289368 832474516 532712404 648485912 537035896 250604551 663858328 222982241 526947748 624466512 936478518 524185517 442500 393039593 285792972 744443415 739639535 412855598 6927738 857814983 207009340 705291793 72620797 169539076 293839471 669022499 781073000 501487184 873187399 495482334 597564784 339716525 387395034 427147141 141796669 440598005 505330288 888319621 202306 937919682 294800247 862618863 976831110 180227709 734715558 20378602 73461476 507251840 932635414 608493611 100723495 972867909 586515860 523104644 294680150 423784425 510974847 509173392 999049055 153085787 524906099 209171086 571383638 470622255 345361084 576427712 754531563 803531139 97841167 80547199 746364967 478428560 379228438 349924770 879072152 671064148 823227047 402647353 952211225 77424677 372382909 629870877 876309921 665899977 356169814 270420556 243759022 280388607 11371327 787918529 966742962 646684457 808815407 486114768 528749203 802089975 883515741 202205460 896606314 990642265 98801943 788519014 897446993 872707011 14613946 199203035 369020193 5966962 418500157 72020312 705411890 953172001 63133134 879552540 416578605 935517742 845084701 495001946 6807641 640679607 97240682 291077240 816021227 603089246 438196065 845565089 267538228 526587457 303687425 871265847 402887547 368299611 687157146 154166660 743122348 317378483 780832806 17976662 671544536 451046444 14013461 51483725 121500276 6327253 673345991 796925804 458132167 990762362 676708707 799447841 129186484 442639654 218058264 296961993 565378788 986198676 867903131 943564241 522744353 654730956 734595461 111532225 852770909 63613522 69137984 339836622 104206308 641280092 713818680 64093910 815300645 113333680 389196489 348603703 460293913 123301731 773506889 895645538 247361932 866942355 530310464 991603041 176864993 312214312 874148175 798967453 747445840 753090399 961338597 930954056 235472329 202565751 350765449 920745811 797646386 20138408 198962841 748526713 738318468 554810252 410213464 758614861 448524407 520222316 990882459 400365510 424384910 564898400 845204798 303687425 950529867 354968844 595162844 29385877 224783696 272582302 716580911 84150109 514457660 374664752 57728769 86071661 644883002 890601464 409492882 189715372 970706163 179387030 97841167 707333442 102765144 110691546 183830619 746004676 385473482 699527137 849648387 443240139 721504888 985117803 655931926 152245108 233550777 57248381 863459542 52804792 220460204 684515012 28545198 295520829 93397578 200884393 345361084 555771028 385233288 382110766 777710284 967703738 170259658 344400308 771104949 411774725 808455116 485274089 692081123 696404615 540879000 209411280 99882816 392319011 871746235 444441109 165936166 701088398 391478332 783835231 251565327 75383028 810977153 979473244 897687187 748166422 907655238 581591883 560094520 669142596 670463663 259131438 828151024 650527561 484913798 517700279 917743386 725107798 164134711 628309616 330949444 834876456 407451233 60731194 734955752 356650202 313535379 395201339 605371089 285913069 747325743 271861720 398443958 731232745 400125316 968544417 549285790 629510586 416578605 174703247 531631531 736757207 159210734 720784306 183830619 421742776 292998792 493320588 587836927 890841658 507492034 36471600 226224860 465337987 249643775 536795702 315697125 964941507 154887242 488516708 693402190 554810252 188154111 606932350 672625409 314496155 379228438 645603584 773146598 646804554 272582302 635155145 519381637 148642198 328067116 15694819 17256080 38273055 109130285 824067726 741561087 168578300 259251535 38993637 663017649 93637772 914260573 4886089 467619830 945725987 9689969 151884817 384152415 821905980 894804859 988480519 757173697 752610011 823947629 211573026 464857599 217818070 975510043 869224198 209291183 106728345 181909067 63973813 269699974 456811100 237033590 115375329 885677487 395321436 955814135 320260811 652929501 119098336 357731075 326625952 327106340 625187094 39474025 890241173 879192249 975029655 655091247 192237409 735436140 32988787 360373209 584594308 376105916 936958906 690039474 37912764 57968963 822506465 358211463 980554117 583273241 624106221 413215889 484673604 875949630 990281974 937439294 70939439 590238867 550366663 161612674 345120890 716340717 177225284 346682151 510614556 554930349 723426440 155007339 985598191 293479180 574506160 292398307 113333680 625427288 611375939 267298034 847126350 526347263 133990364 614738655 338275361 315697125 115135135 1283179 389436683 417539381 31787817 280868995 238354657 158370055 998088279 322542654 557092095 238354657 240876694 471703128 598765754 993044205 51483725 629870877 597564784 539678030 530670755 882675062 616179819 70098760 659534836 407691427 325304885 371181939 819624137 538477060 714419165 802450266 339476331 433992670 394120466 124862992 955934232 777349993 545442686 943083853 537155993 858655662 778671060 243278634 131708521 160892092 687397340 779391642 74902640 822506465 104686696 711416740 773626986 524425711 777229896 172541501 35630921 176144411 581111495 548084820 411534531 734115073 781433291 112132710 48241106 776269120 790080275 295400732 651128046 298162963 466779151 314255961 779391642 881113801 401566480 301405582 808335019 750208071 280868995 803891430 384872997 60370903 738798856 355569329 625427288 812778608 312334409 653890277 898888157 935878033 4405701 252045715 26863840 910297372 910537566 456090518 335272936 557332289 951250449 39353928 981394796 819744234 575707130 639598734 835236747 383431833 598765754 138193759 613657782 106127860 258290759 394120466 649086397 990642265 998688764 13052685 667461238 434232864 551207342 766661360 898167575 797646386 30586847 781313194 219019040 153686272 389436683 468100218 323623527 370701551 76583998 522744353 673586185 508693004 963380246 527788427 112132710 713338292 902491067 106368054 867302646 31307429 468940897 628549810 745884579 421142291 384032318 96039712 975389946 244839895 335032742 73941864 880753510 16655595 776269120 591319740 566459661 477107493 855413043 411894822 344160114 757173697 652449113 932155026 674667058 147321131 772426016 855292946 787438141 886037778 541119194 567060146 684274818 971907133 381510281 513616981 664939201 455369936 638637958 137232983 831994128 444561206 152725496 581952174 149002489 743242445 298523254 406730651 670583760 853731685 957135202 251805521 353767874 944284823 630591459 653169695 801009102 336954294 678630259 806653661 215536227 502808251 589278091 477948172 414777150 769423591 627108646 269459780 608253417 265016191 709254994 471823225 681032199 142156960 503288639 827550539 111412128 306209462 405169390 530190367 841001403 935397645 612456812 826829957 176985090 480710403 38273055 276905794 483472634 170379755 862138475 689559086 667461238 209771571 480470209 705531987 335753324 607893126 346562054 230308158 542560358 535714829 267418131 774467665 394120466 897086702 566579758 697605585 113934165 589398188 51723919 226465054 208330407 366257962 307890820 971306648 162213159 336594003 943684338 149482877 753090399 681032199 696044324 337674876 419220739 573545384 33228981 784195522 68177208 224903793 456811100 672145021 31427526 23020736 12212006 412615404 840761209 918704162 390997944 242558052 72620797 524065420 119458627 522624256 785996977 756573212 982835960 981995281 508693004 554449961 84150109 664578910 665299492 717541687 229107188 948368121 284832196 822146174 280148413 523945323 909816984 430990245 212533802 442279363 665779880 103846017 118617948 240996791 408652203 359172239 913059603 298042866 281469480 843403343 383551930 14493849 678390065 739519438 69258081 661456388 190195760 599246142 973948782 154767145 553489185 107088636 32628496 528148718 212173511 193318282 673946476 427747626 731593036 399885122 811217347 219259234 301525679 535714829 233310583 102164659 303567328 99042137 787197947 903331746 24702094 377186789 825268696 215175936 114174359 208210310 215296033 882074577 840400918 612096521 895525441 792121924 465698278 967823835 694242869 465217890 562016072 555050446 652929501 954252874 226104763 747926228 879312346 876910406 113814068 237273784 385953870 862378669 664819104 932275123 134831043 10650745 280989092 217457779 494161267 84390303 346081666 950289673 143838318 434593155 184551201 945005405 877510891 874748660 767141748 449605280 276665600 282550353 199443229 648245718 745284094 196560901 347282636 553969573 722705858 446843049 705171696 620863602 646924651 29626071 774467665 253606976 979233050 838239172 289636076 583513435 871626138 201604975 873307496 439517132 651488337 546403462 322062266 804972303 239195336 252646200 73581573 76704095 599246142 328787698 46799942 590358964 482031470 839680336 880633413 898407769 954252874 438436259 649927076 737958177 811697735 63373328 518661055 884116226 671064148 638517861 284952293 943564241 15094334 561055296 399404734 75503125 994125078 656532411 90154959 448524407 328547504 106968539 792242021 620863602 21819766 566099370 236433105 847126350 551567633 592760904 922307072 552288215 820104525 109970964 808455116 178065963 452487608 35991212 103966114 42956838 402166965 438676453 520822801 446963146 103485726 304888395 36111309 453688578 827070151 684995400 308010917 405769875 519741928 894564665 717421590 260452505 443240139 123421828 38993637 867302646 547604432 400845898 664218619 662297067 340917495 130387454 301405582 553369088 141196184 716941202 887959330 168818494 266457355 846285671 447683728 380069117 723186246 286153263 294920344 805212497 963260149 248082514 60250806 531151143 255288334 813138899 92556899 501487184 2844440 296961993 390637653 57248381 25422676 967823835 102044562 952931807 654730956 178666448 348963994 620983699 364096216 397603279 389556780 674306767 511335138 605010798 414657053 693041899 536915799 157649473 494161267 953652389 704931502 27704519 190676148 545923074 287714524 651608434 868743810 795244446 295400732 519982122 596724105 766901554 939120652 972387521 155607824 843643537 21939863 675027349 724747507 701208495 377547080 540518709 945485793 944885308 870184974 616780304 472784001 458852749 791401342 844123925 59169933 427387335 710455964 160051413 45478875 119338530 714659359 601527985 965902283 567300340 930833959 587716830 804011527 579430137 405409584 334552354 713218195 989681489 441438684 513857175 487555932 76704095 895285247 423904522 682233169 10170357 65775268 127024738 687877728 736637110 161492577 856614013 346682151 400245413 830192673 258891244 956774911 837278396 511935623 315817222 653049598 421742776 932275123 759095249 572704705 87392728 865741385 993524593 723306343 37432376 531391337 83909915 66856141 751288944 415978120 639358540 591920225 734955752 394360660 565498885 628669907 529709979 640919801 689559086 853131200 218418555 479149142 385473482 183110037 776989702 238354657 875589339 851089551 51964113 917383095 157048988 407811524 824187823 925309497 854812558 828030927 180227709 403488032 384512706 76343804 558653356 93877966 283030741 462335562 232950292 449004795 550967148 827310345 529589882 430269663 434593155 228146412 270780847 194879543 829592188 404448808 261173087 295400732 788519014 600567209 70819342 983796736 367579029 304648201 793803282 953412195 206408855 375985819 529709979 508813101 785396492 269579877 57488575 560574908 106247957 920986005 824908405 43317129 320621102 467739927 926990855 662297067 645003099 615699431 892883307 185271783 719943627 281109189 599966724 877510891 17736468 929753086 695684033 539437836 371662327 756813406 457171391 722705858 744203221 79586423 682593460 646924651 617380789 349324285 635155145 193198185 551567633 269459780 744203221 698806555 842562664 257930468 578589458 668181820 710816255 973468394 660255418 413816374 521423286 702169271 66015462 347042442 585074696 848927805 810616862 650887852 893844083 300564903 494521558 795484640 930353571 629030198 921226199 755732533 239795821 229947867 72740894 846285671 55086635 252406006 175784120 376586304 173021889 133269782 570062571 146480452 523585032 298283060 323983818 574746354 569101795 44037711 222862144 170499852 277266085 995446145 93277481 10890939 302966843 754171272 141436378 735195946 994245175 432431409 401446383 563096945 899848933 642000674 81027587 735075849 666500462 640799704 181428679 802450266 924348721 330589153 841962179 862018378 634434563 763899129 574386063 78625647 794643961 286873845 66495850 167977815 556491610 124502701 746364967 230308158 366738350 632152720 185151686 425465783 893964180 416938896 197281483 55086635 957615590 885317196 860096826 884356420 267658325 782394067 472543807 218298458 313895670 280748898 153686272 75743319 549766178 556971998 824307920 262253960 169178785 816501615 411654628 202565751 141316281 388355810 249763872 133389879 169418979 558413162 755732533 324103915 439397035 812898705 44758293 526947748 372503006 599966724 316657901 759815831 666620559 521783577 457171391 374544655 117777269 831633837 360253112 777950478 553128894 375385334 335513130 174222859 305488880 285792972 124622798 375025043 940321622 895285247 969985581 197881968 670823954 813018802 868863907 502207766 599486336 87392728 609334290 996166727 93637772 104326405 769783882 309331984 80667296 256249110 670463663 561535684 739519438 665059298 335513130 36831891 503288639 204367206 305248686 545322589 705051599 387034743 131828618 323263236 591319740 102524950 739159147 63493425 952091128 474705553 47520524 890481367 171580725 917863483 196801095 790920954 475065844 252766297 675507737 375625528 446122467 674186670 668542111 497523983 481551082 45598972 922667363 4525798 542920649 412135016 272702399 593481486 947527442 955213650 51603822 654010374 217217585 8248805 751889429 740240020 525986972 249283484 376346110 644282517 978152177 841361694 923267848 902851358 554449961 570783153 949088703 302126164 687157146 594682456 887238748 571263541 130867842 721144597 221901368 35030436 214095063 856253722 36231406 231629225 415377635 10650745 425705977 454769451 979112953 212894093 520582607 483953022 608493611 863579639 894324471 167977815 345721375 974549267 541359388 527668330 718862754 418860448 958095978 885077002 519021346 954372971 804011527 931194250 124022313 700367816 438075968 792121924 813739384 198362356 406490457 263454930 336353809 197281483 969144902 629630683 945605890 78865841 22900639 825989278 180588000 511215041 304768298 401206189 206649049 133269782 319660326 695924227 302846746 253967267 652929501 847246447 106247957 387755325 562736654 510374362 927951631 147441228 772906404 637196794 898647963 808575213 829712285 864420318 581471786 122220858 429188790 562976848 80307005 805572788 179867418 966022380 819143749 842562664 190796245 505090094 722946052 451046444 138554050 636476212 206288758 639838928 768222621 359532530 755252145 947767636 185031589 184671298 652329016 667581335 902010679 831874031 27584422 795124349 97240682 87392728 837758784 728950902 548204917 575827227 760416316 859976729 451526832 714178971 222862144 211452929 784555813 344280211 132068812 971907133 372262812 764379517 344040017 454409160 99282331 38993637 651128046 676108222 135671722 645963875 983556542 270180362 539557933 757894279 653529986 422703552 403848323 808455116 661216194 467019345 326505855 995806436 86071661 834396068 327226437 750928653 438796550 396642503 860817408 597324590 867422743 876670212 958216075 813379093 525506584 359412433 822026077 943564241 794523864 892402919 582192368 333591578 400125316 832834807 218898943 874028078 205087788 46439651 306089365 3204731 980434020 56407702 263454930 32148108 343559629 137593274 797045901 312694700 353287486 641760480 410333561 784435716 225264084 912819409 29025586 681392490 316057416 919304647 653169695 871626138 882795159 439997520 710816255 671424439 792602312 168698397 829952479 156208309 208450504 910537566 324824497 849768484 229827770 951730837 158970540 784796007 190195760 593241292 600327015 620863602 478668754 267298034 357731075 808815407 474705553 977551692 950529867 47040136 524545808 104806793 274263660 513136593 324103915 770024076 410213464 498244565 485394186 525146293 451526832 596844202 660615709 682694 885197099 514697854 974669364 470862449 613417588 525026196 325545079 913539991 798487065 299484030 30466750 739399341 87392728 689318892 640799704 327346534 950409770 535234441 881233898 215175936 56767993 519862025 426546656 838599463 87032437 486475059 210732347 884476517 763178547 311854021 821785883 772906404 27584422 316177513 127625223 845565089 223222435 917743386 567420437 384993094 584474211 675147446 223462629 32388302 549405887 31787817 635755630 739159147 580991398 280989092 82468751 534994247 175183635 944284823 133630073 404568905 750087974 220820495 4886089 935397645 902731261 150443653 461494883 303447231 925669788 884236323 410213464 503889124 261413281 211933317 870064877 994725563 54606247 88473601 515778727 307050141 665779880 595883426 796805707 593961874 292878695 815781033 526707554 666020074 873907981 688117922 629630683 742762057 866101676 960137627 526827651 560454811 630831653 146960840 915821834 705051599 909216499 673946476 897807284 240396306 747205646 790800857 546403462 682713557 781073000 440357811 885077002 773867180 994125078 498845050 988240325 447683728 481911373 742762057 124742895 880753510 322782848 212413705 693882578 75863416 467379636 942002980 16415401 440718102 834275971 711296643 785756783 602248567 147561325 409492882 873067302 817462391 653049598 694723257 261893669 237273784 423784425 14253655 323743624 714419165 764139323 554449961 467259539 30106459 679110647 125823768 253486879 124983089 551207342 755252145 900329321 22300154 768703009 818303070 950770061 883275547 434352961 310412857 618101371 681272393 594802553 168938591 471462934 342478756 753090399 249763872 244719798 81147684 167377330 988960907 748166422 293238986 466178666 904292522 803531139 5246380 588557509 847606738 382350960 415017344 809055601 481070694 462575756 466418860 428107917 660015224 947647539 932515317 22540348 372863297 852290521 871506041 480830500 886638263 139634923 802330169 489837775 71179633 56167508 863579639 85831467 581231592 846886156 3565022 303327134 69858566 712737807 946806860 941042204 47160233 605971574 928071728 110331255 986318773 864420318 863459542 488276514 861537990 275104339 582792853 629750780 297682575 259611826 857814983 890121076 382951445 623625833 757654085 216617100 373103491 438316162 315577028 739759632 161132286 314856446 378868147 103485726 634314466 434713252 148041713 354728650 827070151 669502887 382350960 97841167 966622865 133990364 367699126 289515979 897807284 799447841 353767874 150924041 307290335 433272088 974669364 155727921 421502582 111051837 457771876 92676996 255648625 752129623 192597700 180227709 225504278 863939930 213374481 846525865 852170424 679951326 902611164 753090399 705892278 879912831 78385453 522263965 352206613 531271240 424384910 258410856 563937624 554690155 883155450 142517251 909096402 147080937 67816917 938279973 130627648 211933317 629750780 302006067 516859600 340317010 224903793 116456202 257810371 968904708 692201220 777830381 721745082 130987939 557212192 151644623 498004371 97841167 491158842 241837470 706973151 196200610 840400918 177465478 776509314 410934046 952811710 669502887 497163692 709495188 343079241 946806860 389436683 352206613 53525374 185632074 415017344 260452505 98081361 336954294 898167575 400725801 278827346 560574908 535594732 569942474 244839895 458492458 435553931 323503430 576667906 976951207 962419470 926510467 732794006 409612979 512656205 245440380 616299916 884476517 135671722 766180972 475306038 786957753 189835469 735436140 781193097 101564174 186472753 837638687 669382790 957735687 225143987 467379636 923748236 576908100 487796126 865621288 959296948 247842320 373463782 538717254 577028197 433992670 803891430 554209767 119098336 703130047 173262083 701808980 358571754 897807284 888920106 78025162 428348111 560334714 516499309 199323132 92436802 231869419 79226132 598165269 572464511 127264932 823467241 103005338 332991093 178306157 318459356 749127198 964341022 197401580 653289792 584113920 368059417 244839895 748166422 33829466 195359931 29626071 161732771 430990245 254567752 145639773 917022804 691000250 629510586 287114039 964581216 663858328 951610740 565138594 682593460 446963146 44398002 218898943 429789275 458132167 902370970 577868876 707813830 665899977 625547385 209651474 430029469 810857056 583873726 153566175 478788851 93037287 51483725 248322708 789239596 870184974 368299611 970345872 923387945 47520524 776509314 688478213 614138170 687277243 492720103 191757021 794043476 143478027 450325862 949689188 751769332 852050327 303447231 472543807 40194607 892883307 89674571 997968182 517820376 504009221 337915070 831994128 658574060 75743319 973228200 109130285 90275056 855773334 341157689 36471600 172181210 523825226 171700822 62052261 200283908 192717797 605851477 766661360 319420132 996527018 736637110 554570058 258530953 128345805 914020379 562616557 922427169 242798246 549405887 798847356 51003337 423904522 983796736 799207647 937559391 502928348 275704824 151044138 329628377 260332408 392439108 593001098 243158537 413095792 502327863 354488456 851329745 747926228 870785459 366738350 69858566 105167084 663377940 869224198 971787036 283991517 617620983 800768908 243638925 686316467 443360236 247722223 917743386 712497613 292038016 780352418 474825650 282790547 534153568 737117498 30586847 300805097 733634685 670103372 92076511 813739384 676468513 397002794 693402190 628549810 459453234 532832501 701208495 365537380 914620864 766661360 53044986 915941931 530430561 82348654 925429594 742521863 109010188 283871420 904412619 35150533 659775030 969745387 733754782 237874269 839079851 794403767 530790852 529830076 63373328 13533073 191156536 72860991 916062028 729671484 573545384 79586423 257690274 15214431 499445535 683314042 26983937 557932774 370221163 279788122 191036439 752129623 402887547 441078393 136752595 660495612 881834383 204727497 105527375 577628682 196801095 453688578 80427102 733034200 13773267 14373752 515058145 311493730 97120585 555170543 516259115 110571449 19057535 691840929 112372904 172061113 815060451 282190062 711536837 975630140 333711675 923508042 858895856 195600125 291677725 327346534 287834621 406010069 19778117 611616133 916422319 918704162 581832077 989081004 37312279 532111919 262614251 203286333 961698888 416338411 511815526 713818680 242918343 552648506 587236442 106848442 793082700 215055839 714779456 824788308 514457660 515898824 134350655 628309616 354728650 635275242 415617829 713098098 188754596 139634923 793082700 469781576 411534531 47280330 607893126 512175817 221420980 870665362 319059841 879672637 455730227 870184974 412375210 580030622 599366239 793683185 890241173 296841896 943684338 967343447 652088822 885917681 822146174 22540348 583633532 830552964 164254808 962659664 597804978 79826617 221300883 559494035 11971812 133029588 259011341 644042323 285672875 43197032 310292760 246641350 609694581 167017039 90275056 927711437 336473906 274744048 932155026 229707673 537276090 389436683 120059112 454409160 452247414 825749084 692081123 214455354 487676029 999649540 925189400 735075849 111772419 317138289 412014919 711656934 19297729 188274208 303927619 640319316 731833230 496202916 769543688 110211158 991723138 510734653 134831043 983676639 853251297 778791157 335873421 640559510 645603584 273062690 360613403 517099794 170740046 193438379 832234322 32628496 867422743 503769027 405529681 727149447 941402495 825268696 588677606 574746354 161732771 835837232 652689307 850969454 333831772 661696582 472543807 93998063 51603822 709134897 255888819 374784849 763298644 275584727 701929077 802570363 709134897 423304037 103245532 61691970 393159690 117777269 160291607 650287367 737357692 76463901 152485302 631672332 581832077 631552235 241357082 340557204 637677182 301645776 926030079 570903250 563096945 372863297 679591035 409853173 422223164 609454387 99282331 236433105 654851053 369980969 434953446 334432257 872226623 709495188 109010188 393159690 471583031 947647539 278947443 629630683 52204307 454048869 417058993 127865417 227185636 707573636 41515674 657252993 672024924 208450504 140835893 826709860 290116464 673225894 667581335 696404615 355809523 268619101 250484454 510974847 827670636 497403886 619542535 70939439 685836079 177705672 708294218 134110461 430509857 860096826 224063114 54846441 751769332 889160300 598285366 531871725 577628682 535714829 432311312 522624256 62772843 683073848 909096402 737237595 416818799 351966419 743002251 215776421 785276395 492720103 478188366 315577028 133389879 286153263 74782543 690279668 211212735 809055601 673946476 56047411 566579758 557212192 132669297 555650931 90395153 297082090 984877609 163654323 990642265 215536227 753210496 424745201 43557323 168338106 318339259 246160962 95919615 202085363 282790547 378267662 705291793 217577876 443960721 528028621 694483063 303207037 918103677 448644504 138193759 16655595 596003523 106968539 253246685 936478518 15935013 390517556 304768298 788519014 564658206 815901130 827910830 464257114 290716949 349924770 658213769 435313737 914020379 772185822 650047173 924829109 50522949 137112886 790080275 932995705 661336291 432911797 279908219 548685305 256129013 231869419 952331322 446242564 314255961 154286757 759815831 231268934 429669178 491639230 971306648 538837351 580751204 937439294 459092943 189114887 40434801 295160538 502447960 572224317 836918105 521423286 879912831 416578605 335993518 704331017 588317315 730031775 559854326 436874998 677909677 736517013 537155993 52564598 682473363 507612131 177945866 209411280 514697854 788999402 180708097 255528528 106848442 929512892 384152415 59530224 345120890 588797703 112252807 644042323 541719679 986318773 139034438 52564598 885437293 966983156 969625290 390157265 479869724 637076697 532352113 835476941 634314466 913539991 917383095 243759022 944044629 959537142 489357387 578469361 805933079 374904946 382711251 522023771 932034929 274023466 917142901 657493187 956534717 855653237 550486760 57368478 472423710 707213345 815180548 765820681 143478027 844844507 657733381 735676334 600327015 796685610 825628987 669743081 679951326 663858328 890241173 259852020 770864755 385833773 464977696 376466207 799688035 404328711 711777031 216497003 216497003 754651660 9449775 742521863 990041780 410813949 8008611 525986972 484193216 193798670 605250992 205928467 584834502 335873421 372142715 85351079 563697430 361454082 711656934 501487184 978272274 479269239 126664447 936958906 436754901 424144716 5606671 96400003 911017954 390037168 15574722 908856208 745404191 297802672 25662870 898167575 424625104 250364357 534153568 752970302 881594189 988480519 699767331 599846627 151164235 228146412 748766907 921706587 917863483 689078698 285672875 69858566 13533073 485754477 215055839 760776607 597804978 246040865 669622984 280148413 255768722 225023890 114774844 738198371 786957753 990161877 97000488 494881849 118377754 147080937 73701670 625427288 363976119 221901368 316177513 591800128 507251840 200404005 397963570 356650202 325545079 109970964 730031775 413456083 192237409 413816374 751048750 612817103 132309006 508452810 782394067 901890582 843883731 610054872 104086211 750568362 82228557 173382180 219859719 173262083 979473244 739519438 72020312 951610740 913539991 371422133 971907133 871385944 259611826 40674995 7167932 832714710 78385453 136752595 389316586 804251721 935637839 514817951 350164964 411534531 167497427 133029588 433392185 920145326 59890515 65655171 680311617 552768603 84510400 351365934 332150414 676588610 876790309 738798856 569341989 175664023 94238257 689198795 915461543 710576061 849768484 314015767 511815526 206048564 274263660 539317739 906694462 252045715 54005762 316057416 344280211 287234136 338755749 640439413 953652389 90875541 807374243 675387640 664098522 510134168 96039712 882554965 949569091 928311922 169418979 53645471 551207342 70699245 266097064 786717559 167977815 973468394 723306343 644282517 930954056 592280516 117056687 904172425 187673723 432671603 627949325 177105187 87152534 89314280 730151872 969264999 606692156 547724529 204367206 254447655 675868028 199443229 342839047 114534650 905733686 948608315 104326405 359172239 12332103 527548233 878831958 401926771 20138408 567900825 542920649 309572178 609334290 145519676 478068269 136392304 934316772 645483487 969985581 634194369 727029350 242558052 717181396 800889005 134110461 421982970 857214498 21459475 949088703 700608010 42596547 581111495 306809947 548805402 243638925 187313432 673345991 666020074 439637229 646924651 567420437 609094096 749487489 618701856 175784120 268378907 635995824 14013461 913299797 769303494 483232440 940802010 118978239 184190910 652329016 243759022 890121076 313895670 216617100 57368478 195960416 77304580 281709674 990041780 949208800 721624985 377787274 870785459 971666939 609334290 625907676 504969997 771825531 223943017 905613589 560094520 138433953 459092943 582192368 218778846 288074815 387395034 339476331 95559324 245080089 970826260 632633108 202565751 37672570 715500038 227065539 197281483 122340955 379588729 459573331 232469904 406250263 591079546 607172544 162213159 107328830 347522830 122220858 820945204 487435835 887959330 647885427 634314466 447803825 783114649 921586490 942843659 634914951 433392185 257810371 295400732 533913374 136752595 956294523 512295914 428708402 855773334 333831772 452607705 648125621 723066149 328187213 675027349 752129623 784195522 550366663 15454625 233911068 444441109 149482877 491399036 656772605 218418555 696164421 929632989 533553083 364456507 533072695 746364967 282069965 33829466 886758360 278707249 972387521 547244141 673466088 818783458 19537923 910657663 999889734 249763872 103725920 629390489 238354657 480830500 163414129 253967267 538477060 460774301 674426864 683674333 767982427 569702280 74422252 789840081 475666329 624946900 592760904 945966181 59410127 919184550 836197523 315817222 773747083 517099794 749967877 838719560 391118041 256008916 791881730 620743505 594442262 832474516 949208800 796685610 790560663 826829957 167737621 770024076 11251230 809415892 814580063 96400003 867422743 468940897 855172849 168338106 638637958 955333747 597204493 788398917 469661479 900569515 631672332 146960840 99882816 254567752 11011036 52804792 444441109 783955328 351365934 857814983 69017887 12332103 524786002 84030012 870064877 199563326 746244870 383912221 396042018 178186060 893243598 963140052 603929925 247962417 548805402 744923803 793803282 412735501 660976000 293238986 248082514 752970302 546643656 699046749 211813220 589518285 365297186 32988787 653289792 62772843 11251230 250604551 204487303 811457541 663498037 17616371 697365391 398684152 492119618 899488642 825508890 621944475 571743929 925789885 639238443 702169271 476987396 640199219 54726344 20378602 729191096 837878881 860937505 699046749 104086211 936958906 983196251 524065420 60731194 743842930 815420742 180948291 719823530 150443653 782153873 265496579 512055720 767742233 130867842 434112767 720664209 133029588 381750475 782273970 498965147 275224436 725227895 437475483 849408193 100723495 81628072 997007406 593361389 173982665 154166660 851930230 881474092 845204798 443720527 934677063 625907676 602728955 605250992 847366544 230428255 790200372 227185636 93157384 61691970 762337868 661816679 57608672 532111919 497764177 283511129 723186246 579069846 830552964 245200186 109490576 314015767 651608434 999289249 277746473 91476026 215896518 608853902 474225165 323743624 667221044 291917919 818303070 182749746 551447536 718262269 649326591 509893974 48721494 883755935 850969454 728950902 312574603 381270087 384993094 434112767 803891430 975990431 42116159 257209886 215416130 871025653 20738893 250964842 585434987 464137017 934677063 460414010 388355810 660495612 163654323 713098098 257690274 115375329 460293913 45358778 605130895 171340531 608973999 351005643 137353080 826950054 566339564 587716830 302606552 906454268 237994366 132429103 131228133 673826379 303807522 378868147 686676758 692201220 850489066 45959263 855172849 177345381 443840624 799327744 374184364 880153025 584714405 712857904 561055296 486234865 279908219 504369512 672745506 357490881 864660512 305849171 401926771 450085668 758374667 398804249 869464392 218898943 904532716 947167151 474465359 134951140 197281483 487435835 373103491 96400003 148402004 728590611