879872592 518871024 602035333 116921202 869575411 196138507 832956207 879588762 964322676 255736161 908968433 509083799 395933682 623918404 678324034 24997315 107328189 716118258 391259198 710903630 851238335 87867422 566145289 131420236 358399769 527601442 260289956 448534233 866778071 507928114 545567666 16174930 265254437 80123447 684725038 430535972 319640408 516089107 585970779 618738241 178155572 234832661 445281915 865766718 352916449 816678541 758807167 201017631 815239888 729879773 740765606 129530654 54980527 627087363 650530418 786936059 662613643 991145907 173153243 131794307 422824093 977287838 987176726 53242911 467449569 132182259 859722330 475842277 845538346 889718895 633190799 149786732 322100337 216991749 988230332 532748264 90719044 204800896 706544856 415512477 343186418 725343810 856759114 237360498 198747801 639500576 382052891 54222138 63008970 149964489 171764782 24478171 838918969 671637079 35260053 93865974 576684058 476578834 726520113 639726080 372260510 986219320 711991743 935196526 867143859 262103567 604200569 337754087 51569225 694198432 367314125 924966753 193455254 693110660 411165190 450974245 458008701 392898421 159301582 285406254 599317333 146969547 483025257 563117827 565666937 930551703 334094180 163384094 935823890 508050906 915261766 536406724 76343463 826048331 372939888 14026758 924781360 396092350 224555330 93527229 357464735 300284922 518902113 985313771 655453884 637335710 455251106 894653477 385053102 239758724 638331888 12824198 724330710 4789944 912838876 663086182 110651221 378232048 453661961 289451003 308654011 912441853 786481049 933094217 264094680 381556626 130282614 407820516 89119160 119427925 325527005 525558795 790596976 451396446 921542598 632150142 48121990 460961007 179641473 655299 202862617 307454745 627305074 918301463 603872812 642740106 736464359 680108715 37821540 909105956 185473851 131799910 944439250 282145470 690267264 138866224 524263318 613669600 162011579 522673349 853084179 600256598 295603845 869064936 477482896 671886173 968347428 427784919 38660567 960332096 525500907 552033223 407418809 968361349 390495190 782852340 993867908 730728244 954289019 39070578 619386738 724525677 899381411 690019988 513727281 392987142 69776535 485772193 432151305 627352624 81248750 646511248 276278065 774561434 970740506 946243388 465219812 444300964 983555429 608479010 105683393 306410701 829413636 105455154 671786854 150695765 223841138 104165645 245883951 60765258 159642363 879689626 926861952 47596418 527985501 107639590 562677265 912193357 54408413 405616194 335412358 797583696 919135775 766468612 269698165 262333602 789135673 592046140 962093108 711162265 315764913 846669108 446882272 556569193 560820091 370407260 768482774 738731782 246999742 562440172 498358531 405521747 109000389 626190912 208690715 672621304 96364654 440556251 336264775 11892972 526478074 17202109 388521877 442752976 750340747 864014240 323838246 131064891 928782374 974620245 6228492 861640719 320349847 825723549 56077387 438272234 254839737 802663309 489598108 248198162 498610305 447709494 418901072 125326414 142367745 867086906 196620779 431332010 183910574 802036764 451968022 792909974 850178000 669488453 796466025 58661084 468862374 63461588 483851724 895455366 274217938 469560530 133207376 843908412 697331937 948750508 307495114 531800659 977006704 709389151 904781313 372934521 944350301 304351788 229469170 812089081 645475948 836743823 622380900 102685690 595142265 271192946 792118139 455938283 267689685 83769128 761264695 959267744 557774014 601554671 98496139 643056870 322051784 38394698 57993645 736005563 402772111 935349519 387423588 422326483 910718007 358736361 780661147 39881862 784089135 260716050 793888779 44150121 685813284 755129649 744658297 527091325 494537502 816420205 456467120 710613927 157714642 399145121 665069813 945036830 639069540 559989099 514826612 804907816 504611006 597406904 849893403 59711498 93124370 453393823 831982114 271164619 283245432 205002338 698028924 598689670 566040304 699703474 640206448 514556047 94809607 612721110 661758572 714437294 996610929 788966891 68184915 508047173 178884082 5214122 126880807 710431599 811980618 542715726 718741416 664493767 456917841 190101459 149880955 247526891 767632432 87772482 267657937 534215229 471516892 907030363 178785486 809967038 564840166 360401479 782271366 532436682 692274442 126707348 280395033 481993358 597304390 529216524 276502492 475329205 273690478 237453450 956896685 218287939 887676833 70432932 660306115 477479999 285674948 385835573 455790227 134421085 59658207 31565112 602612457 114820643 19558717 966510332 563025473 410245518 171699198 547082267 488011271 150585093 942346680 743981049 341121785 67843059 947290070 70838411 903008259 689769211 701887242 98126452 876403570 747645761 780617866 70322446 559742861 523377112 319732909 1065508 5063696 233488966 762345043 589706440 918736268 411412654 291278006 260249217 339545644 721605815 533083892 364345060 692869027 357298908 156262832 411544649 790272411 235466404 782636378 939552688 596094680 697537299 335714923 869325607 260892091 224553581 921645982 711777372 47881675 531106721 130168931 681793981 868098369 884455490 793448563 802783575 467953101 189805886 170005001 957718307 653530765 462749844 139007172 665877862 82578154 584368042 130096598 835874238 874829977 845453597 511178034 464818989 404301107 790413863 901969793 47346639 553312308 370676947 508046077 686617243 272887310 887139939 857218491 42075821 20180874 891646142 780630146 513688610 272488682 904688998 574023546 965870221 831202398 629100438 350610771 394764296 169540991 109078384 548304064 539433828 770038225 865880879 110936577 569926592 924795899 670376437 93350514 372790766 41982930 128012465 331201929 509879656 456964930 430537755 812179784 919837231 936903148 544303901 545209303 796436534 447820669 371766277 563687014 392280272 295885437 228991287 837530687 35022126 591415861 113213339 679782742 945506446 318511517 382132917 342098096 252091010 226305410 17231002 389245579 452921148 704494853 438431922 615244415 247533545 49649513 580441670 737166268 168630613 483341517 748722136 369674026 854360921 547264591 628449206 741750978 21052130 881070532 12348589 918736761 208834628 476902686 892665915 597496556 885647110 642149244 51584911 927371476 603042044 256775861 329958000 339882759 959436716 882716419 215354206 134645764 777436880 459385268 347103991 702991127 275380200 710380156 156307220 620999519 356072815 290678639 619236077 989328165 33118970 860012774 822021831 955799343 910956304 653792761 154471979 428073112 218770165 863060533 539736373 486577914 937710055 180164092 903986836 681218526 797624259 590427269 826940871 917287514 414690948 710236678 558529647 901176334 812088837 376107355 673099665 791733735 827941660 944623964 324594872 720794288 899671420 269733054 449461484 754447787 726424471 791771467 372962728 240576247 404111142 408078410 942452734 584002325 371120326 569345359 879184658 118943513 845740452 730740307 642668732 452011427 325921364 353064319 189765920 138319825 10730470 807138478 842662861 555150785 849809787 209841282 629393615 551647513 85526622 388162685 602951797 737754836 222348511 763689901 681591806 23212750 613843176 810490802 303762097 223143362 111448856 919268849 316713204 446330407 249025409 117523510 87124090 333591614 551751924 763620401 328825676 582826116 96048035 175730726 868918573 453151365 56576845 39545763 907344262 83372214 401312025 36987034 690924475 388156601 408201678 646684872 723390321 779643248 274545161 6316894 963637373 450697042 643058380 5190292 924506597 886032736 930148247 832406504 160611704 856323171 980555062 619553293 61587870 46758701 817974078 938492642 232838876 297326895 653430553 161693459 479645252 468282407 335471943 916103487 149828402 385600821 850506020 318666294 997739745 723381159 141725941 674493066 473621892 504323636 416064393 670863948 220147459 3129467 617424155 234049935 986954062 242967502 683830857 191426070 698180738 417235022 571451529 135756644 129129133 252390950 156505687 311407948 642052209 281457627 799052442 429445798 932046568 672489804 152179977 363929319 678751005 568618517 490044330 904352154 446125436 911871769 99736529 296612921 53966936 499765410 383726830 684048065 286582437 619000542 351977131 626458760 97832984 31670203 745437396 114536431 665866901 98675459 182277915 665618980 6052892 765282301 973416712 635544906 377770608 536031383 819705667 755343074 782518206 540654707 881725982 311993762 470115032 851683798 564154885 178519211 945043057 841002918 580273321 103768009 689997509 881552301 233259483 9720797 559129832 264887518 900844944 666101547 944395242 461133752 946702328 37707825 572165727 938122225 880578170 663667749 713304521 5640929 180327446 893208478 291282685 31784638 623431619 19838004 558804446 615720536 48238324 600723907 446211290 517173942 668232001 766400867 123706176 981095356 351320809 605564591 683933315 147685256 698568369 119806879 741771854 686491569 373478963 284216535 663924763 723895115 794257589 554205802 726577469 389523067 339039827 497256154 659126287 528161260 327857660 432338238 712984357 430354285 415545317 743800996 808483332 949739865 291415288 515230354 385225731 393663578 960585546 97814746 628501470 660111226 952612911 542213129 309816675 837292874 801355194 548303520 516491671 184445648 589068298 654148666 87764894 549137054 170857741 535285633 986855253 712364163 405569404 314165950 704249615 402998718 263353514 893625781 532598457 321518218 496573831 103904843 541025394 46269286 155559839 981269470 581384975 751540754 935977292 412041670 544650619 737068881 431689653 65927074 573644642 350620178 679013429 859776656 893372407 337175110 714509635 767284109 805127116 927680276 295057544 75948411 829932659 337818858 673664429 59639211 989368031 856335627 241133419 116735654 654180973 114792682 238224786 706889085 253713673 436970694 274543279 207594846 427409915 985710500 307291787 250818268 993083642 339605929 859454111 579884801 934849936 743779345 966807318 2351058 172271958 541095080 545231950 430879794 158569119 733030516 828167079 739508945 654081643 897861911 957930901 436469791 758048448 171612050 808845055 484606840 858027220 18159550 937161931 428107653 792366166 59105200 273055792 909725826 498992885 181971998 62682635 520579150 251843215 385769775 93932751 818663703 343917845 751090410 766402304 786605364 323211514 514804364 334191432 597490389 721184951 436713522 52902118 2738326 195048285 972261847 535777745 240142863 183274590 257652946 822129913 727373163 533652374 856489204 55173740 445734042 728813087 202234163 876128321 303344587 567618282 783382286 545356078 125713082 145290952 536872966 983232143 59467496 535729545 201101527 19695064 258270804 95059855 985210029 291574210 339552135 767491535 18226001 867547889 252917485 815716109 420304633 82176172 237958216 414397672 492186604 378816077 971725061 667467889 873892892 392741812 989257811 191812245 985711040 891714177 289820965 581943790 118634329 492043994 750804251 90854016 727542912 821920762 281200627 765055856 845067588 786544757 101226949 469854487 197065599 660729550 80932815 933564398 658514013 369693474 975765753 763391666 122594496 275563232 300163713 281738977 131253705 771125507 536309226 586128154 921741529 99400733 73840934 78558732 679838012 841093492 872394176 626012315 495700093 47445506 492560721 358369470 653182064 767361014 106660630 363467894 22758568 778680255 44273955 948613454 255809719 493292873 346504613 171962297 191082512 377706088 821550507 913539240 134459122 146556179 243860601 440717587 128321700 315273906 87556265 676110681 877761508 263766985 953999482 974402320 426276859 428437989 88162890 717206312 972839620 808342666 876290091 979662247 83582528 666368791 899096234 601437931 300875474 967943834 699302663 181192151 341156435 984454002 246658648 797217665 401265649 436594781 654637283 511540263 265547680 610411508 588353959 321623205 287594244 969629561 162572583 925952264 492642286 312530972 871474623 695880587 634981000 792358021 922250431 337202857 190517268 339261796 582724465 713839401 444106451 685083796 411897874 824451289 465738563 188912321 54311945 57266291 564328872 376097185 624806821 137189446 860200807 758423156 542181769 860679221 385346622 167679864 514513410 90233759 299372034 159920567 534777086 866391297 243486073 556456136 71687609 144878872 685520131 75349414 572457965 434622409 314027783 647444405 832448740 460282793 482588693 424380799 34127277 444670381 741579300 455892695 584597538 373700619 126384674 211060993 591830334 83254445 746815271 941648722 150672815 391669416 431656516 479549951 917190046 886043652 350000971 414766138 526265710 50801743 871954779 716073908 450289641 721564874 831910183 509052100 658672658 436579152 798771303 737444012 573601239 326908672 856464905 324739818 84075674 269186295 301164872 322273953 456363557 898862137 19823291 742361686 22618980 210850512 544246087 223754661 662895920 354183837 474220165 463066249 635589540 397616616 140801721 777430218 897157343 370066214 825191308 59591888 576319180 727180673 846290943 814312176 772487670 834362334 514736794 299680997 498815881 679969344 32125343 41488597 185542683 774459839 546102402 342325373 77013569 415373829 387505426 352800467 205106345 800081889 767776220 841710288 222499226 559311883 568736438 89184794 266416686 839303029 782945824 122763630 976648512 992370781 927721308 59208813 908926231 903307002 669327538 629181206 191157795 914849757 793729966 163445367 522513099 760493005 255260102 213258704 8543572 10268739 621178873 917284319 967064558 529210882 832822064 785099100 659661247 522051148 624977537 441671887 74133266 545854337 982835076 43353691 748628751 511240522 533669845 397592451 797644379 74164906 817422143 630166801 885888643 32586734 846895531 964245101 400651797 609054654 353134077 958323095 563697124 511785300 415680300 212198366 416378700 479242924 165582970 471660063 926904351 626326482 822086750 819894150 33902087 923168539 925935813 696396131 521964132 103337039 752586556 19014849 115004735 690733495 353267648 788054453 563884453 789483056 568314638 118286314 153143580 314249314 693453377 522042590 368134684 584448348 773701868 577218312 996334100 633840494 961941722 20708474 932362768 744235831 854170308 618378405 851291004 422017224 342332001 96611831 424441904 719782342 415795085 76839551 573213715 821502270 945272616 621250921 300632041 180763145 348939117 737683662 361564441 118098488 410956848 298321165 909909747 816156923 772204392 945031290 755150197 467386007 523676266 25070118 821126606 89594118 35757167 669362312 181604306 755452773 601874442 34493372 74040075 913312733 302906104 885598616 213950863 807405579 652639923 416471352 853285415 289102555 298145299 891058281 936411239 507621882 905385090 650792632 638328613 716711925 630412814 407517220 884654518 184208255 939335528 833083851 662705391 44326781 408338272 832350735 96676927 404811330 709671799 67834611 623429344 198852818 988565260 557640309 914906270 398078112 56142990 671591 354354952 343378632 74929054 402278188 195316804 866359947 519384403 356674981 594148200 57259649 422974242 310374861 872707856 712305777 659446223 395378325 900243906 923061686 302593322 472017444 290642912 847468368 887439015 260904723 650503467 203179072 151715084 846284954 941121449 565863643 465829597 330909396 765774257 421510202 928213277 770869528 90638964 717118413 426344281 133413640 724476933 371052088 524005801 761268267 590956438 652683270 104906466 167390792 188104321 896204673 249503704 276227739 172742860 767750502 982541173 658786979 787845055 242224364 169077161 342059265 193127083 254432846 424016714 891463333 334017667 255300762 804700044 181317674 45285200 525172191 414503383 870463253 768923283 769547546 321460685 45755687 112056161 6567378 191513264 470999609 216244195 967913411 197740855 626118085 256608935 684517504 747891169 342618734 825916504 303905828 384608037 158329433 891318723 316743754 166343771 809741815 55370 296684866 724186786 343395979 718612525 866842175 90796392 976697239 517665183 230150744 137310557 319525165 923269334 533553734 974355320 153748209 831284045 29068206 164869643 731802597 793529564 674544320 18893512 595954532 296811879 898274154 122713966 9440540 877737149 810415766 595945226 881966215 453335513 717010773 182271611 810425325 385590591 34514025 54810606 243745598 40619316 803612026 374784139 155470178 660224633 71301405 857427006 625968540 37701917 54647050 387466525 88439703 120336121 608136208 848617002 808073147 964883805 557226890 395231180 876651462 237503866 379571214 900580087 173323546 814360998 333015445 549856979 521856362 437144254 352696639 948496226 499617944 896833293 572771885 51465388 605105554 472893423 393227489 105376705 705220549 26402199 917383101 3759096 626764224 788788562 529382936 368063922 375799148 864062150 881603348 375494811 517167714 355835135 64250133 259320540 700796950 326205845 706086125 753188217 466076466 162768767 488249324 738114439 807928242 24736480 566094846 911116930 765411888 956006816 159186778 303995861 594886064 361441768 821262197 900684834 773224890 974726472 717369153 238859661 243788264 442214211 84477150 917497390 809262658 282533113 686927866 385173472 453953451 697548371 759543604 579279829 238198023 583022208 422181691 218216769 227022222 106409931 247671365 532548167 225539213 340887709 201982590 762831368 74011968 174682502 231459242 837421283 381060740 752911626 983814268 936686228 511301309 505869481 502682701 731960597 487048897 757937333 91929301 513610955 153915988 501847246 172788002 173542523 121618526 604792072 951763057 614536097 987567870 451012570 177247147 692556944 660040354 921670653 538421127 283307637 799716433 95625930 564658847 532589408 782958808 360422636 997615963 315938925 514560166 919089203 846885635 839178346 815776750 756404434 269097678 387948346 147722451 68825777 441722882 167028780 387184483 57948684 99033822 560159151 264133342 708358164 737553942 116672789 933505804 418099368 818486273 370518314 797367453 212154810 861005690 586613003 221099080 820862819 554181418 857301213 402945548 571858610 612537602 628290138 628258133 957120330 412208248 301805615 659317741 934172168 923312070 812262234 777557331 873847667 825778164 210870813 21882540 378274317 766177886 478366127 536032414 102352494 679875351 373958185 146024158 984833116 670478613 801768372 540383707 328900691 712458547 673994267 464212787 689779491 693573276 559510480 22301256 486204073 750586752 423834712 160512864 111121789 170401327 961246440 883569684 763505114 776454040 969066748 826124062 286305667 430330055 51063210 376075545 408659102 52023294 500685313 392104656 96221459 551899590 479545446 869561575 593923072 400801896 293878174 300537826 586485262 676988582 948014336 454895443 356533186 35755076 616136435 829882468 734458642 386615059 252204858 547725683 381364245 74599253 717965154 649107228 856082426 566861173 141831361 123647471 399004345 534430282 745281544 496665190 24821447 389500473 842462883 828532242 404372420 898820918 505385191 290929311 479612616 799261972 378639065 935313512 709560216 582064246 401439907 543616520 318736776 360519303 713060491 216820331 13631694 822873206 196871457 83853326 840590345 845165229 338854682 475088925 816726271 710114587 433364270 688253074 213472142 315971330 506229657 156241633 242610569 14078364 371992564 439853840 930850867 537777894 869130031 254703043 936757587 369456307 876361764 40007331 856946471 669287534 950798843 980379190 276378081 809188956 560028544 237458366 660220019 221731959 868806617 920292362 624041586 115923485 571891915 807787279 369893175 445526368 201083841 229745026 959443377 652519616 569336526 45769573 837024785 475554855 864272076 204996509 836049239 109469106 246271818 890625491 992174414 758639513 900687965 594433647 68320926 995928368 78618874 493097359 57745339 111888798 517709386 34205756 69454812 275311302 712794405 107422798 317284739 596377597 405441348 644875699 888946996 435190921 285841895 951181810 49840228 826424934 765714797 538362724 293677424 351632381 234680506 501442925 292574529 212372990 231645620 724312220 808269991 972085951 15317483 319749712 841520693 927077470 379968544 280016379 784266453 124945816 593152080 623995642 641377173 733309597 226597803 557320662 278128836 530451222 621989146 903747370 814142308 207556439 377215300 735941386 441568332 312021998 537901008 599806988 47251476 450896129 888337951 330531511 795184505 149083290 376754912 74496943 930981012 27790163 839503107 304172150 615558035 486009266 702122663 460184972 208114929 93140533 707219478 896980733 530852455 164434842 710715181 689525567 886239600 250522153 938906423 79692502 87628501 620262388 410855055 300918473 549399175 978720422 812977514 900369921 618982697 150733057 756470968 293856435 512033482 246043092 84048117 653617656 971059948 559688512 547104416 442592829 879297913 40391239 842605115 883844380 850071058 331665390 99840307 448876579 755989796 256353907 426027823 233688663 523235997 166198703 549469733 614881185 916504335 712787530 60008056 528825572 67618970 581524963 153794565 494335422 774922945 350099198 175587102 162921482 550578184 988152833 10700189 737659825 290762327 973911161 439111100 688795912 22171018 471346158 513369295 931759562 551661229 385837478 566661769 459310531 834355640 818227805 79370041 878408817 80734765 161392523 440429632 180657198 826875000 109715066 806563799 193172198 100360621 78978394 910682694 95035289 285384675 762906318 296191093 357105653 754187615 913171424 887502411 876806618 801323332 830093982 376254057 292475022 791417603 502015994 241371183 537413741 460857413 395895453 575769663 559881334 665632453 583580222 53072905 667270448 78068013 615698767 775358696 437518357 735085858 197073471 504128803 589711097 42984100 493709002 138437596 904046692 237716298 52496805 648875198 254661973 28648238 395352745 34660145 192837931 746495439 811335085 770537571 539988806 172604994 997742648 518556735 645111464 86178730 137011623 624879969 306909993 492515651 641104454 284800792 298847901 22222876 748597948 565587156 830403229 907920393 225770411 32258201 556991325 469093642 497357610 38858578 772545356 356993599 129464254 438311960 136907220 750699130 633098807 992493688 189442689 339981590 119693735 183287121 805115246 834131165 89289731 764440342 54951333 531057863 678593849 200383202 842671313 517101584 259989137 870536872 911180902 17344555 295211852 406123925 112434137 25147958 347572352 798299087 798325056 834294137 932389668 356769112 339664348 571225799 865598868 180772335 701307885 290315450 816592629 425318386 218130458 926430534 669972012 191374990 532964141 912131216 610733099 132536291 476964267 732013264 685048198 912356048 793880602 94654054 590437761 450729557 46808587 126249983 838587004 544902435 960288178 443993426 397336442 692367566 528712817 387953297 329367395 803577363 625617126 302002620 104165833 246388026 230581081 831430102 723571114 383712872 762695339 407977926 653393441 50114286 480211294 928125766 846991541 311785726 423012835 278823625 935230451 907540144 840300567 289238009 391555465 994996292 991606927 257045656 466119135 310333589 613140393 626344834 935081325 586815150 32258155 471276766 23836470 174629034 724674733 47608612 364263083 19734024 940353678 87581615 274749053 801283578 872204057 885529434 776778321 918940887 174102990 413161071 851859712 86766056 654081017 476382017 37348365 128655872 574761855 624196650 813690185 258434634 899455335 96966239 444584710 255110947 678423778 356450723 750208435 863355034 845990258 238191656 831787091 497051912 340675821 173863922 873618158 229824862 959195114 459358109 704905583 366894365 605918389 928536270 125089190 346411173 941283734 394589126 15914749 359114149 505745790 353809623 975845051 368161687 242900927 855232858 660675936 676911614 371528519 161934980 596966248 210812210 615211400 330457035 351952625 378916798 685540183 755673259 191827927 398251227 526886766 399797725 27658055 987377882 851640422 67034627 666607803 549173646 767871138 22100975 805019256 623931637 664673308 380146106 560623097 730854052 824277022 599702752 960851910 641847930 550212338 418666360 849638211 144844653 92838824 63319574 850377034 141472535 688981539 939073722 665768499 156145207 612244273 482445981 69008274 798790962 964027364 201024751 245074506 428663908 653253002 847627295 446114696 954613919 459204005 816075284 985143550 615813981 238931410 916967715 847193573 235482287 367186813 276034336 784287457 776901343 600577873 620298144 875637320 854926807 324211097 738375107 790167101 521693298 351738711 491322176 414411552 832798095 146835136 970537988 223606312 592482689 314111520 287991164 795733590 619637016 236588435 608478475 684811573 161448628 184805034 866133050 215366897 11377480 233525040 77774354 700444496 565889902 708396210 979649375 296972466 813732250 532528741 615356258 687488303 845712959 458843804 256464661 136761897 104727132 358180258 961287840 181205371 240255747 244858613 255594900 986272389 801274746 618545033 266681652 685595447 828192051 370514245 189235815 970222276 172608918 777232828 940756130 364266924 660811609 818061540 753720197 526701637 722931216 359637545 184108186 170595845 923202851 376014454 594710494 100474744 314246900 348612658 824050563 370381329 632461084 15886369 440262965 309916273 890844024 88940296 411581602 682426738 864956510 389799942 281013800 9592755 617075587 988882869 987169932 191870985 289155419 270406635 825093377 611888421 747154666 228751183 958548725 113964479 613402735 484697026 767742422 826622192 844354097 468851030 252883488 412547100 413887361 479484297 287685175 782177023 234161759 644280527 906711458 925553254 879621203 781343042 733459755 949870373 64328104 296170549 842345428 125880540 288054388 327421929 635361952 302465202 111543039 375873813 63434445 329095516 106472245 676849094 975778741 449676690 175313851 59017112 578655035 698835600 572464701 434938590 117525720 966026767 867130785 12902297 521283452 395990763 653569514 591257684 873064676 979398953 964537969 604709591 531259965 293743415 177490926 907303701 534226612 669102160 954268654 476487950 807350788 805159779 633127880 158197384 451307685 917599305 224262294 115416450 546606959 994293503 627056051 8913183 649883646 328791500 370042682 130267280 694385050 802034324 471566152 689957197 50700108 593635395 518234731 189475177 512443768 526891333 2873747 864157162 724073450 938221219 251819212 572853331 203686261 508512692 669138047 170992297 421425055 904948130 366894853 542124449 98463299 312281427 569795524 974908469 676260151 444216333 557606578 364478986 718155992 140733098 40162012 548327412 607336756 429907942 529714823 394847705 17386252 236248341 747522488 430267793 699240423 459808788 224395836 871170187 945666398 720542349 93476648 409948132 419514497 666845863 239728331 139283240 344399686 25475857 175217844 601338732 585591914 632559560 988429542 838790501 443034213 198437476 732786595 501312405 178131282 483424482 95752291 347601211 731841189 574641362 680898947 536910237 556861977 925485316 145510202 882880406 317286768 789170228 244037032 15908829 201989076 756314339 148147757 132844347 880393634 256974578 674184784 219499109 612386543 6767636 499236734 750830617 686725191 938332137 312399288 213150467 593050256 703109662 196401494 652055030 582554621 576625698 214797464 915392111 874106078 858723577 890912099 953463721 223441484 493537611 718481506 704831467 352191173 426713286 966532033 703106210 636198958 112847324 87938576 86382986 315382860 505834223 715849400 363780488 411529913 500585483 321672404 101278755 308940427 90896020 378369551 365451661 265170673 526985452 575309427 830219743 296918391 618863918 270103053 683137763 420660811 389454539 682044905 116185950 997675159 554950902 505376417 470843558 170755167 773762269 649318273 138771517 248225992 488822698 381670634 411006622 32419950 601816735 25277362 156686937 634412429 378051975 165763481 916387781 853782377 602994934 853044993 417817606 282592287 78144437 191955203 245385586 727617110 654473017 96921877 97686219 172096166 21533880 106554212 301271195 786464479 698319020 390076892 628658030 409529366 848072711 461210789 581348977 258480396 864617706 618382252 729486986 805085368 918673569 944920818 975054961 180881656 647937110 346720231 726287249 29336144 184226159 128147097 263452136 853188798 284953515 696325704 387815648 536349103 348616931 553576560 709090029 40877167 518371166 207273840 430969353 72386079 728837551 518586364 253345432 212461204 271766613 305807074 851488990 261886236 818894001 428956645 881583216 18167657 473332294 410963142 302847576 328735257 77931473 197607666 247390634 101724795 747483015 2467785 600666206 735783632 364197218 386142015 381137417 127910614 125895666 239111490 406840147 954673016 645075220 466750011 278562940 369492052 454336998 427366094 535456720 874586959 193801390 437687841 522341144 951188665 592470751 886932460 32581592 352511487 943218368 748433580 343093613 210250535 933051400 696839195 403114608 928454102 233726178 286999096 753734388 350012384 616935045 702233481 479998915 953737763 557386836 986150554 118569259 282366422 236386889 601568421 200579280 731581062 305564427 834484796 430335314 845097545 634410024 857935941 520157619 452605141 301361866 5189794 226430947 510356071 270817153 310692972 862981639 264221946 139615165 446858338 61310154 913514589 240743708 26544031 247299400 990585652 889775232 212092593 537254645 714209126 409371611 994105595 404784723 841585749 9028536 386513231 564124819 384059479 12200591 426838371 140190116 548116782 455770630 937030370 582232203 46243030 428970355 355179788 932089190 642907727 668900018 848909068 629034174 800933791 29911534 410440165 104824119 90997027 640068815 332171642 331816501 146487168 881852105 26037229 458048112 282809676 621261073 353521364 94220602 945696880 352213327 32073066 784391112 47954557 555191110 53655838 499445575 108943770 344909913 876391253 828649217 38992786 229856692 203748165 265049129 665364312 967410943 920375974 732258052 717556402 295027568 951561119 297142407 342468884 247756868 174749988 318246188 231258672 38932147 556183710 472274503 460412987 573524543 215849014 256698696 666034039 378517012 13394611 869954548 909829991 527470972 845335988 804721073 155608994 926652882 155085242 809673393 680825045 175018781 992687830 332062532 264712516 989195588 194088251 641989643 767786083 451589133 725398998 59896648 633239898 497222642 193342754 298626809 744612418 549693874 296242983 838310879 15204101 227639691 135539545 866820060 755717799 553989895 605619371 363332228 342741147 54690046 373454354 15540407 253388610 402340131 5386540 827133728 523408398 176899091 427418441 254851043 5048488 682543767 138179866 406896715 968107004 927136463 488498284 350867054 262356995 409053767 217818679 585497239 454295007 465228372 107341478 550237014 579328609 194010431 720987447 681818282 963674209 596108402 802719381 394257541 712746371 176607043 543302824 588975218 640020352 509178325 352687387 98949535 522736638 654882884 371933202 330460965 497176896 338725418 898124006 920665825 159916348 272841134 158989840 871812022 394272842 278455845 229098477 98422882 303868912 217365065 123458301 384911176 293517470 269222394 622252767 200853630 959418911 83832108 101171067 609374981 324456991 768782341 274468331 418098887 838241493 532630763 396005504 391540189 976534629 115123721 491809414 477544718 850816980 387596407 338457040 737630522 899273691 27819818 423549034 759197061 225892104 131245721 993949158 944900618 200265242 28409980 669329432 947892697 540994554 482334917 668050137 975187303 132856138 101511145 330062581 711232398 492612376 26157989 662674000 783479914 688855663 92997935 835621674 797451201 172299761 448684034 63660097 418912269 68325636 751388019 247582090 727639710 872987073 61504628 241487946 79630940 465810987 269621933 480126760 819500248 242347707 115127066 293310284 370388048 543046485 276756584 816721471 624860050 379268921 331914110 111236814 307626856 119386033 466200675 890087123 771782365 404780516 687637094 738642135 8205693 86676723 135871296 515059894 69526903 907909716 118427962 572991210 89209401 246164866 722159737 316217455 498622335 339408963 486090905 289419480 878284520 167714828 35972704 757088260 441482471 133553252 430853448 206362486 849414427 953796254 156649731 801894713 464660104 861824063 570920537 838373864 910906897 339705870 846112242 828327321 390298379 206042339 682020688 743231388 665626233 545753332 297386479 355427961 341007727 289815429 37064096 654037930 281586299 370002780 48615079 576294883 872061572 106334372 171311648 245550665 989358368 767228520 206139293 188420889 665806922 17504962 648568400 203577894 550223423 689844895 212940364 804750833 559218765 214613283 645437188 586250197 975639017 344997667 284983574 429620745 608043474 845792980 668806904 840302103 585439993 918187521 168149126 866213283 237714528 724627005 659686298 331534891 387649751 115529735 7376390 831756826 713185397 759340789 377435793 277143571 227668193 822645144 457047771 217284436 936539882 855552934 736683353 579654093 285379679 519676219 947371017 877360449 905769170 932047032 792412552 712647297 610764279 130720391 991891400 410812163 65266554 134090188 527232236 213256210 626778657 672533307 544078829 275582798 916573673 368335364 728269382 102286042 807199878 786010759 420720498 920215812 338924347 401500256 401266361 275066448 882393795 917719636 840721752 826530220 56731724 276639981 122771146 56776676 979358493 724549643 690837711 838539816 900661294 294399171 864429088 845374800 8764631 680381159 800415881 947611552 852939593 166062976 70041773 53827354 554871901 294218054 75401192 31742596 325235719 704936967 151018626 126988131 29048563 384082479 793076249 861132367 339948400 338740438 322807073 988397831 290883089 144665725 600486182 760582243 795925545 562332545 283499911 422118464 972377025 715432902 775433234 66619323 407974808 783767264 532054308 701886377 377005800 294080014 404493454 536706187 343843254 858493673 348276053 706031666 889045053 320474536 265864524 183650882 423401631 633643598 898677942 36219121 98520819 739760081 158813230 35536111 8805081 980324395 555366145 998033374 713382853 827514464 904429004 186242230 491637102 909593263 146517462 880772276 337297028 380700743 538464533 843868900 452214309 21970254 200322399 446413446 629780316 558563164 985052312 276515996 943342583 29951439 139770375 2791021 584149922 188994682 789059603 529182632 293200748 591850500 795271503 36123152 404495547 406814938 216490956 562506424 329969737 190590393 871718907 949899800 549233901 591213114 636191841 332735700 292764719 887772756 539843621 27925765 794190583 951181277 795970260 369787190 243230963 825572044 832564019 895468926 950529047 727720139 631557252 27754531 336058684 661128201 735830323 389195485 932308821 694563314 285656287 369243798 158130428 930256057 631805734 64705901 974366399 642103928 881786559 461935382 156213849 902545557 778634723 151927432 315112994 50776990 762677227 209847092 530878205 705557822 301562201 442073425 424232451 782525317 690429489 500642332 885315947 802661605 462980364 825061092 745151703 586175339 471076496 629932577 50273079 830684856 945006781 998002143 83672990 324727021 639310059 45038180 282507160 529318242 385912385 695160295 540950192 595642468 349056013 710460206 979756363 487095935 867067144 155075080 821172631 407042756 138972038 946347559 969985783 937918807 757998673 667539402 675709202 752926948 382322595 28413170 628690512 694726316 559567757 813016534 489763017 481078102 346743987 827262678 392519451 73524387 599840083 702868919 706048398 581264423 675716823 588326871 677794683 685801877 380781532 805559339 97831457 213722630 596551618 416103021 109717555 821959298 286686300 546661968 926168843 285384859 468510414 209655754 347712062 105988183 612655972 781578882 63585708 135192799 983866782 294260079 839224299 618936925 619020666 265664707 198797501 755537083 414420978 606729191 442462149 705533859 360172800 589486936 599793289 828229275 971188002 379086927 63754511 99162797 65008279 886664646 371677406 466244149 67220717 880009733 351545944 488455437 939080399 801430545 377560640 125755736 698603859 927045517 639456512 530536664 430333678 126578640 755970955 100201040 787366649 221861369 842017991 39430634 103829603 276902445 125886319 54584324 279285110 469744989 358280796 930765478 685879787 913796615 39813921 108392809 687513620 661183365 227151105 263948452 715415688 527508716 332127913 857204708 167578037 459040606 44418234 710837512 154279659 494967051 894192753 557765391 486374285 311245824 405149389 340098739 189723037 71022545 423709546 938680742 90446869 112347022 594435430 200628172 695377117 25206799 977086523 754525157 769900546 284566439 473551101 58714045 646940664 904879928 166362489 282994812 881013829 222505472 106957777 591794945 625382963 726558881 857354935 957024130 172896669 162008139 385317694 302952057 340621560 83944453 870444302 699382410 476195193 165399321 579975725 22560809 31960154 66055054 266266268 825443899 458825313 114015042 233448039 869625215 334686666 503712998 950435503 50453879 272392205 230660818 877548042 460508728 584989354 828582230 232061596 199695921 910701324 629317763 39829137 48172513 584080081 579773373 773813843 649181108 56927738 114862094 183785339 363527324 170813618 76981307 524646459 769873371 622950112 570227434 177159221 367246469 288904371 14777665 302422791 981435583 441353113 104640478 108154997 46697485 518346699 603067980 848101454 480098817 873999570 860058534 938116149 430859016 127453190 225919320 586766038 368791760 563578147 306782845 523874094 931775299 547184650 353247906 627546319 125862809 512332872 989973085 898534067 106270549 729348003 910099125 146127122 815027074 906861745 905406213 545127221 394253192 400181712 782179829 515946789 295602506 479227387 585242469 426502821 539855730 850100277 212323102 529194732 549341935 770543047 992572597 417788349 424904058 164416527 232827746 111068051 472648634 974185952 823594936 111522592 79938211 642179025 831781253 933236935 829533749 934055474 317881360 891429345 207567786 237799134 557656023 872218936 822188019 302886049 975828657 641142550 167217395 64302138 527658085 362171332 14014278 882989951 576242825 24281391 922804468 856939026 290499814 992626466 845070941 917127827 486936758 462286191 531907525 879075407 483310690 23042472 938394319 886320069 913997124 951421601 528081727 558624603 345096218 849606677 306634305 460581669 716577635 778320497 654033807 358140982 266862440 359616788 730010759 876661739 465141726 779520998 202421058 496426945 593052186 97212556 484564807 181291579 476919087 164337096 945998524 499204234 829186934 734630140 965433580 860276536 233573337 288846129 716499445 218740765 792961423 322528648 728256962 72342371 811700493 373737609 572520675 599757208 756527049 847283302 667389297 314143891 289399535 431508670 830061463 816551648 94427182 988640305 146857406 393485862 787673630 502433045 819257078 772526432 807154632 628202716 899993916 94959738 557400857 883565293 868476253 39775633 484831960 976492052 718757617 907501279 439747655 245489888 344910928 144629990 48596315 164891481 346965964 191272874 61379017 723693537 849965511 288348710 807264482 508293777 655614952 726806510 148788091 680687346 865173074 392980946 769688876 519502101 613246408 484301065 964403702 411357097 565901543 213608154 65388386 761906391 149374989 643887953 780741653 918088320 212877563 57219297 877330596 268490573 826269942 654329033 333379066 75029259 154941311 531447696 232760206 988130214 431915215 945975541 104869173 748688455 274191972 775772492 500315876 341810019 778889984 6759950 793813342 249476908 608833204 801497100 945814329 199596005 169694408 635763745 807614925 259533500 976851715 697988868 614041310 159333085 836319478 580541831 980233954 368666478 546501994 914119055 875872059 864570174 390897110 370675491 842340825 408754849 913300550 22443921 930310744 121298424 662226033 491700003 937902612 955689292 768149588 660214528 792689392 125137895 178862397 530600119 857633478 352962368 381236411 891067624 90779308 654126220 21769435 468303178 854363488 717904427 273776666 239272290 751643260 690411712 571117917 679601145 278808718 138128097 645084329 444147683 526645225 809479352 105958490 162756354 722333737 127708569 378370789 551102392 84345781 248586525 553069805 141745208 241039133 242781103 14419754 143497417 446695757 97542806 820274590 649739528 462283472 632766427 310295669 584278113 459984681 296447658 81251142 331556726 983483953 69660271 21930539 253072742 630046759 481075470 103554616 362144210 390069013 481892216 589023055 801849063 759529088 254861039 910214751 131492855 983422863 265370849 34000332 371748768 138236854 908561167 846801738 871168095 553253527 711786230 58941492 655641750 262169450 983648093 330233604 302799338 360826634 167744396 326857305 590160457 482957026 558057579 521944394 457715159 90813655 188996105 742841655 206248152 354065943 748961574 375091689 5843180 931680642 20406878 425193212 536021419 953188140 573685650 453866921 286927131 48722676 542756956 359851538 516702523 292007817 770351822 903837351 183837013 819325054 965704260 735185321 265040327 723122746 146609911 577727176 563209331 400776264 397693629 935608587 233685188 873537491 413902506 784454390 477892551 823302545 81547930 638799702 39644178 541126830 992869777 898934154 859985912 276162118 450732725 854941272 105054725 907584662 904495517 176405466 111504818 627865140 311665688 984783151 332968894 781959504 102342179 174406221 331398428 769747437 735868162 82220303 192889718 178654595 555529618 132334060 205991592 430030012 305321097 132760882 441918719 297701521 381223719 66283596 92267651 975102753 543442387 223196944 677483783 623309615 643440726 907852752 525879425 465177180 388281148 333361334 89882484 762944128 269347178 685833802 124038440 575482206 135625758 1228336 246092346 928534903 837048478 610582964 652422541 882376420 262569995 750598014 134988165 12520609 350908613 711909200 599059191 742193028 599949686 476983901 647701326 479941563 263920267 437320257 710872178 447128537 118167806 11435209 288386439 84046301 154865274 179924158 5946262 941345008 679394994 218894107 262852131 668328024 146536296 633572324 795299394 554551358 849270045 404214276 298712467 805290403 216938568 821225648 951523135 288055771 893505662 422012478 807525389 781215164 812478954 40473349 18734692 374363543 568541006 14697936 774629639 80962943 938202996 772499082 597222391 801493810 821011566 361363622 282489754 741952716 718529312 391543088 769488647 692825035 472919367 542823244 551973438 579057353 347319563 724228074 986707619 40871368 460962528 603761712 909674686 94835572 958238017 682953708 579035192 846338915 182376312 736607783 637920165 885806635 898690796 831252325 145135556 407439881 838022926 799676413 254314080 854673890 284274276 304813606 78800441 34959397 718584532 935733127 154758107 424856380 731096543 820584812 718533150 822035064 715499134 169826518 35136989 260640993 577220365 736277840 660520405 140495000 113330173 323234978 234925207 689617325 100883641 326573556 213078658 211278902 679971146 771011141 763291886 317725972 811002082 654143969 897998646 357824622 412697232 871392336 251560339 400811924 933281082 313779460 204127111 941545105 225751650 361540907 580587376 294793543 604851252 978449000 455600916 230364221 189525189 787590582 646105902 509731287 466577776 975384748 485566755 839778055 174007604 779418794 550559902 563094411 93210204 956888165 902743045 581047540 156741756 642063517 675443809 362946128 158195870 845740630 674189076 193874290 874295953 296125068 374862747 36857392 298853692 948503784 273385406 851326755 112928856 711425200 618705549 113071392 21810050 58587115 105218504 298637710 312716588 107345684 661604039 794642357 362017116 390853181 607665827 199340995 958355284 80506640 674498168 805266777 864533991 760379955 812512580 825868154 471444548 793732161 408878553 444651364 148229670 354445657 898408059 915336928 341112929 418742671 101138568 183374691 340487700 457396079 308906449 615823044 627993678 478621729 88583916 50736614 429440307 365996758 331657791 315543314 484232432 171017415 791291758 936744421 339481028 674620595 993201250 796389691 28530949 459180111 795548857 657568705 151558966 269714462 856346551 224777671 749359013 332664762 250453964 19413566 333714901 144093725 374267345 336160937 601736317 669153881 812702859 396879760 943480196 804400499 646070585 277803320 479271728 384999412 768456704 492014466 209931995 682452827 27434424 933880578 447484103 858965678 770325156 979183707 439422521 220260426 380970820 123624415 603009571 192576738 790298865 275244615 397046153 476392704 152800633 435270671 144283384 31145549 757199958 634191660 539940497 910640406 394997672 309616384 637123474 219845009 889885158 302451420 662741435 961887292 661742570 596678646 127633926 679224532 667737421 914599356 968057288 922070349 457692736 243179969 789941477 601012659 904132430 485483896 531919538 289145371 730876737 872015068 47044261 209059176 708373009 456989776 984899436 898365116 436665741 302231585 443228285 105546874 204104964 424664529 906817079 924103671 180328199 150088729 953089545 250055187 130858864 855514827 597036720 320081647 422444601 278586164 300675791 242848806 162568832 711840761 615966652 720205959 430416304 568867909 611597423 464901743 984244945 10427081 681664323 375901932 332247029 491110014 904940746 990728253 469262600 930304112 515748613 840614518 628147407 24458661 813650692 474169616 476303958 659263531 522505784 89426288 167716832 580306132 158648927 346120146 325649612 945969373 123530993 300029113 987626566 28274699 766367132 270038258 407167107 661900695 229422866 177233164 725213040 263519468 662527502 137301351 391557654 725258163 442070990 17254967 569481938 908707488 359124983 870412569 388658851 106940448 714155179 274488727 673036101 483543692 92623131 665498602 498611905 320262440 701761327 362274704 644911745 117874523 120353351 338621380 607930410 853334156 794346424 800769299 860362339 882510083 457279749 610561545 478062516 496797751 975893333 241462860 579106251 521267351 434427187 815376341 817107215 904050575 31366503 7403439 683163018 909003314 885167231 976918288 349963368 259367797 236768214 370681974 908880256 14646228 424032870 291977495 227300952 98241041 927149597 249451965 556933278 679534742 355488459 896220333 464316940 284515871 387703086 454192786 677233291 573871486 480956899 639427866 41303308 409891793 423220219 922445105 9938426 868922974 175295664 852525418 546241406 742192941 875012404 407632043 984732402 369773014 268701479 932417203 932522952 673258901 31287946 284674054 913079672 625020132 455295036 197592130 355975190 969961645 539231502 729609850 30568254 363203504 80730326 28339520 888903843 345167449 897920795 433092781 229942114 745267445 553908965 804177485 41526864 747166904 485177256 238732917 662771910 471925600 734042436 227688404 67183294 835615124 476218267 191802755 961255366 79628670 557082437 996301593 611226917 398706567 255855337 146578434 338360488 210512327 989220463 19592759 266773211 925141351 421278804 497788263 371122664 727935089 859692293 704474378 746275784 825761364 444861196 935069035 51293539 324883294 230422093 58818146 465247327 871079167 626359269 15089246 518191812 909132480 971391463 819694938 804252280 252126341 49499848 611277553 41685098 564106588 300516663 785848722 918478850 821871688 299608566 910933931 605422711 238130485 820501627 6759560 959301451 260152250 331495639 352342881 907357307 193786588 658676105 122356701 619338557 397976739 175580948 333405120 232049752 516339027 481040351 397804434 60445029 226846401 979646935 491737315 244800181 763005462 76743482 426895285 327685469 862026826 651427502 570195217 76707279 284718776 398032272 855185916 349416455 108997060 504328169 905327674 389477715 377938101 519164587 515874857 510764414 874554069 172334189 742490064 495294440 130297209 143337796 533226612 124604223 814430575 567294178 225843856 338171617 179518983 580485955 105003847 405792556 840031123 232185209 229148953 617495464 619971890 219497648 991134441 590652658 516768171 957047011 304248176 364293889 783461267 574036418 921765998 511303113 121048228 692121406 417869036 442111688 128646644 793370874 70949271 495184756 298988557 340427207 64877170 922248614 252176432 455476074 735950493 399223196 858908063 4106914 366159387 416630809 33580514 273706676 422209038 747573238 532570909 147276571 359632728 997522511 594444246 722360884 490083343 778114326 932673162 16284395 654105755 790179320 625761264 228800376 524092147 103459535 212557309 579960328 475712149 57553777 915200541 200361097 636699693 835657295 203114948 245480483 227368515 757682942 80429724 26949783 719461894 834262288 971269250 870748805 65628615 805617285 683092968 594996191 345282668 114718302 216894530 618007784 976459650 765563517 756729782 182382267 482467950 984212343 86836407 547625877 137380174 929023745 672242550 17489771 859809954 198895130 132732016 883136743 542317511 152232186 868946169 618791093 323710972 976900359 811451862 641319752 660002738 768777150 559263819 365219798 818568393 640808335 953705174 958314517 116857600 114174468 387347721 686554401 666335911 807699113 407456137 191104445 612092885 794634857 992659915 698821465 144637096 710627157 77145279 502245752 735894330 789110262 563469583 660458774 699382097 376694200 735907887 194249729 87604491 549591330 507900479 555176305 458180658 464772672 19970969 848149152 180055802 296804238 387680225 478887671 193334822 777811519 516015846 372676953 340391501 924489674 34130373 307953603 718847031 625111944 572017533 116354187 269796398 819703725 404971536 723906242 261840098 484713716 848365220 114430531 126366556 114118195 707375525 31759659 93275159 783106390 950261200 844672154 692243204 463036624 173049327 773170373 848360160 416024711 113738200 296582592 84026003 66078588 645367599 790069686 874630048 906210439 153802688 204587147 639183820 801642951 586799042 745020850 398922845 727929504 772215340 635614952 135125064 909388035 639664573 316349013 83554154 343245987 12034267 655478100 381166716 9824054 777645932 252039134 749663829 860344183 154429943 283764478 416692576 802628154 574949879 129417143 70237381 586565136 46503698 8837192 987730323 633917200 722700957 372621995 93525220 658995402 431097636 271041791 268434374 256933828 838960460 557123294 272459230 416779903 352588419 496312327 109007349 201498470 765632701 594918703 176285722 204531034 630709007 956801323 556914646 454393255 648624158 18859525 975568158 327265970 782077198 445454490 901957953 310126614 663104387 95075086 246961185 334098258 570345518 777493948 206845008 315945391 166708553 146045077 913778283 135944682 194692780 679544496 327535367 383940746 236059700 363938878 29082915 34980295 132387271 316910789 661664279 766956327 476407576 303165682 365489479 165137706 141806238 300166387 103262639 160905247 328960151 866388834 990194602 684928887 292302374 518224321 184772009 693954985 89706339 467995379 726599994 352919817 176455581 502389500 994535564 505643284 50727000 836124084 814503131 848958278 805716924 64131662 266248304 689141050 700135529 657433895 35179325 372874547 490776849 680897792 225975484 98148668 269489905 852756801 584702882 677833232 681813870 715875834 486837040 641014948 821182893 460018726 538792087 404772353 380093371 630562924 250307823 453263168 747277393 738356107 706823527 520972252 838841125 822139802 922423992 610420371 380991756 666765066 6008488 853136462 444560055 334420935 106066413 861784427 287010450 671036092 15490564 339036420 251472341 328998552 633844828 541577789 527063312 976260394 666652848 820453498 655585419 763925011 912841139 331250900 598017014 318733661 420062997 207644074 991676895 262951292 165249945 924022453 555178070 917763298 69824296 487906020 332961841 41276845 593155092 110352763 72920560 984343379 949833442 379175460 513290322 371583200 818440253 989197884 807714233 759394257 142821747 90311351 353465411 861480974 900056568 348312039 857346229 900483480 643327519 646843137 335670166 865100106 307476766 538266053 657592380 128223585 203689317 864695884 200182739 578525645 303602876 117301938 351964217 292167027 344084369 903085807 828491315 535765117 112659687 641027794 843245563 376911276 145101008 416775257 327413898 985068832 357184314 927973016 55429965 736609807 219392367 420314569 749684655 314161168 225006420 666518951 26993146 282172841 388969411 20305232 801212539 193055856 177117562 808038734 289602366 598328824 951809545 372629090 435719108 233055176 763975476 990525718 1413800 675974334 449780197 229500254 841690020 965288410 837584829 626886155 579480727 748419230 163535222 531862571 388278177 117101520 971419755 444287248 159657710 179552888 958329104 280264269 951406204 116888739 415747861 652591052 886210674 337568362 889101473 967903206 776037057 750155534 107918877 483344868 808104924 969189060 961399699 899397787 664598062 327063175 417812351 577400278 351453308 855852482 957345785 360479395 600161728 607783175 804123115 815813287 859653315 754224418 49939602 148191036 255639105 786369637 22871175 687613000 988230429 863292858 743465242 840108523 576249188 84563451 137901283 989405235 804462081 179415661 670185371 607884269 280488652 114404469 455810761 593658922 390314987 979592347 442713432 236457424 785378371 55624259 715416013 890239127 811703605 108553520 519322859 246887228 430750561 282684369 943737524 467500456 755869338 387946545 527508397 234589328 346605107 272192018 955784886 791517903 426951787 661738707 341084468 708000181 878177847 624123197 168481067 269939112 592411155 169774499 277743442 92272241 380002405 508031805 846965975 48656936 942891543 177822469 440605882 687670919 299312532 574805460 559712032 39975478 52167698 543709631 500959822 193049601 893613807 271852211 782829257 21445689 190017860 879588685 641458436 316858523 632887061 727156345 144803990 897015503 803857150 752771848 94331524 753611513 215138102 156720451 904532345 99438868 926076425 841577194 726182008 278118412 913507885 839981506 959592650 756015752 740220712 445440938 259850584 735308805 183129218 569685321 608421874 663244229 359818110 442468728 174190564 648536329 637161515 241556086 328648361 280976468 504231357 96043152 374096557 224941850 490590405 243219473 293212152 775370504 848945439 652071443 88630425 77878133 978923378 437747847 888917749 987785222 244846047 130915044 797139103 146890226 724700023 196399384 183542432 868122463 465326468 900078954 119139235 192064419 727497190 262569244 637467958 176491586 578735469 62100516 332370183 885322786 665992811 20193378 346451101 235912494 980136024 158740831 239568818 429157318 39653504 287310361 832299435 433531434 246440762 297878308 789929291 772396197 929766177 688253434 635500138 637733241 380811932 877971356 820540281 839362159 923408654 583723870 821593552 885313746 501209491 371765284 699839665 657710669 31603858 82462234 509585747 738472007 553272786 812774420 98891024 612009519 757776866 6928522 807577063 214564851 535957675 825703941 972336288 853352904 803599291 4358069 587972906 815374017 158284219 2054370 496489607 344138752 855590973 420413424 527116034 24527273 230884381 617476195 720105373 772921308 410924847 214435896 547755687 45997584 102099227 849444976 508182465 817691809 31919682 786943621 368867006 884912979 698238102 115551624 301520542 231365364 25237407 843683406 742144864 118905095 617392219 72154083 623255916 226510504 756774902 307862159 513471560 761028722 125701500 315438193 727523247 503810713 529962553 864008380 177964875 113715492 921002729 904589997 4787967 822883883 238996754 94559595 436839665 589788042 852565514 440601279 435430045 142732435 290779405 748116803 662748636 282216169 143846976 644461164 203085361 620957929 756595502 936250786 923361891 175337054 840052907 546718015 773848639 642748422 989805077 677926889 824001119 901228595 607199383 489908113 736727834 255445961 215330090 679697579 883775623 189982925 383215614 511794734 411605945 761377094 115507836 756718767 461762471 860509370 829970290 924860579 489772402 766152315 580318595 467943857 481669300 24707699 239603495 535839871 779020021 237290550 618746348 270918395 852027454 279450348 166168149 428763952 915896377 496725759 786678696 547395602 624771637 100059978 712258845 656886917 179256513 950153561 546833461 274914660 575103791 884864779 662485767 499507930 838964587 376456207 575091597 572938624 797291601 244338431 317480119 670416215 723050330 184357497 371431356 944886508 970783472 395440388 910240349 545938311 513765173 899703437 28093772 351242347 850360812 903609587 934289467 826805147 2849666 582970284 431126282 236958102 271589990 517116928 406889478 648546375 858414197 804510400 743222687 429081840 667533083 615125959 346007422 423141123 713668972 237010293 810276876 136117973 256034081 818732159 21079333 774979177 901949763 470431335 782114505 576333126 175854369 36854747 914694194 15144059 684191429 813032532 437583558 243348218 397100716 270721211 46783452 434903858 380481926 997839618 753484711 772269089 755025194 346239942 524100215 395472760 556722542 224975150 543677008 888605307 13227713 384558976 772914306 285547084 950595683 319528966 363413223 173896170 971774507 4728327 148292526 410521849 557564643 229534291 713003640 40083424 26860413 548761068 453396761 362073800 547419864 808286485 786741085 532069351 896213345 95893313 39479953 408313076 401031790 511832949 316227368 629027534 381092488 559791563 65727635 46042626 408276116 621192420 975785112 528420094 624613231 359953008 852093466 151476192 781727864 358502486 736082432 707736632 997831952 547725030 205551066 772855966 841618390 10278883 482429330 974604137 968964253 830137685 282521130 160602712 293653915 933618372 338897722 676608329 915191683 831886374 447972873 203795990 292925097 631584601 884625303 244678572 811918569 515515146 225677150 36866253 513976087 355675773 113257001 9931867 541822909 134477378 742939090 140014123 730190697 551292018 774162878 76167546 654344688 987007504 884831903 503727835 955591374 227682920 122831406 149479109 563991594 302411097 333193055 889932312 825314386 326961958 56001218 770954409 123118298 354722721 22443211 197366642 480184194 762861769 659516087 890830544 74211767 991533600 239182521 248523567 538628943 153038643 152378399 772514233 174433761 894795100 457247822 368328591 39712488 636583082 680635677 968471905 8089797 30970062 453420620 784167918 169470348 511565180 293470076 867999317 65368155 434007580 433586684 867774641 939950576 378288312 1196498 768231694 227689297 29629015 120045934 862943177 742151117 371023624 211970405 883207642 236929556 189041624 996161742 654353790 272157738 285369549 759325737 843735745 596683728 283015860 628392848 362944424 981170101 498223072 716294369 450139270 680799536 886173025 654146607 977607127 625575333 50775887 224369421 857983514 769554355 925661020 555331605 42976362 328426994 788525338 809466201 859360760 589776117 17130051 950070558 696297889 155010546 898016257 318814336 841834278 337341381 924324438 272779522 152453288 303590859 270119714 524787596 685163116 356771934 297832533 355346438 844287047 473465867 414505524 725648234 739465446 517391383 584154087 880662741 819312586 406981005 18044986 943186602 741992218 75764370 310203804 116610585 199807383 156384027 552804841 455385100 849852225 589914909 480573401 535276507 432807254 940669287 263455410 523833529 776343141 179314878 481119585 942326917 458735695 780329448 229255516 62965072 154973556 756152695 79611948 850066682 44178670 590626192 416503206 916271257 161039057 936577154 664817090 528638449 541044227 5882735 558702362 432901245 166407089 615029861 409209119 292766424 782559386 679986889 764782801 40016874 93850961 633146207 383063439 958667276 45367459 616464102 644891477 373499716 518838263 604021368 934621060 354865710 928657513 462428296 904201175 870950285 136552247 858278322 911396996 962711276 130076046 683169399 466689472 225765054 351698167 20502366 63005161 836617971 727274750 164863552 570910622 533143462 977401538 421695737 489228288 498932047 420960813 158866395 147796664 422230132 542140731 113337027 271735102 224679856 693248321 374734421 993673368 5136215 381824185 562538933 478060053 663320619 483350042 316823733 787066346 699190318 993032790 905632325 769991662 418527770 291345108 267484009 90171227 719139886 200189144 145719281 157210061 855357984 295804108 13060242 706427249 71229550 994021932 494508567 684054440 952986655 369110158 931647347 954001379 860629985 814948183 766404713 89428656 982441571 34123600 194559667 281165737 356648716 61016915 487960224 121363636 450856398 913298694 267308269 519522299 143329884 509683637 222204057 154506925 527983934 23213165 976035583 77757216 578930546 316357262 593687364 902652602 888283616 943393553 204195253 693082555 531430539 103610600 839948637 700643048 440785169 55936958 97157303 686105252 763811969 68871414 869353560 23696705 642177001 654555804 449758505 707520222 647597023 475600493 719395754 199278844 282544089 988923742 499622520 164532514 391696428 266687212 724011893 633392934 172689813 426313402 142501578 795734364 906232482 252055144 342605543 507729182 466793728 571614524 130108826 43399680 282422285 101730201 857066795 401271736 900745085 974588893 73390800 142338319 514074414 84244223 296849262 463941459 871181888 977674513 301628552 834640791 979650025 241827087 813182264 991314363 895359800 932089750 289095972 204333629 590885119 388792471 987499728 765984462 578579895 346451443 606046870 584089529 807021787 403776792 633620431 489061696 708100422 818605337 250739847 941362397 98749592 66729909 766452513 192959046 733053997 537293342 81050042 124558581 97311585 424707538 3161727 388089198 816879947 533291815 441765988 349614490 986793799 810692442 624050338 484521781 498643839 192867961 648261976 995775905 578967890 688395179 440768639 980558920 801727489 569425804 739271655 527371489 354626699 255277891 489494262 818345955 63758083 225042914 713966253 224114014 398217676 679270287 290926179 295731672 762864964 33311962 709616294 535273665 433626314 772389346 786343803 291442926 325208652 665505949 550669282 217263396 929722674 283377289 404786600 142899770 596249532 58886787 288811529 801479010 236891041 304553493 772084060 972327794 275995655 561606592 927638031 80931676 435675722 990872918 797840691 179289129 715912110 641273737 399160972 547545278 129536915 649824274 240415596 352993811 369572604 558178338 50911667 322392908 559994288 16485273 116157147 405011553 595477234 894833557 600564335 609349525 367216509 555978089 475980113 543737464 42864783 849264843 179701127 672865068 285812335 914773277 416744835 901758972 770807024 884829730 149258506 552683143 693474010 953436966 813230728 890056418 146852505 395217127 149393713 461779062 508392864 521332852 553522341 8197591 638583585 572342621 564018840 329078912 520575773 69633502 343960668 943493133 629328423 400572899 201671348 270423419 897987812 501247911 204770240 299285888 368313529 189141040 327656724 96658582 111681026 775001808 890660636 397949034 642753582 11874909 917243626 990868972 840999820 348889480 596183822 71443096 139424413 422974755 328585611 645282609 282008862 810224686 691259237 406104815 483678501 788783818 875751341 418717798 92529706 345613773 103092878 623950940 79450277 962669376 351962979 416149229 175901027 818098910 614823800 645149347 838463044 4582399 340648588 276713295 384771504 895023840 378611564 500603618 568553079 466121002 45419122 734699156 248943141 404853148 581698519 591367606 663749241 161604868 879476724 473385125 736789544 33335064 178398141 686841070 354904973 272893640 393614835 680103431 714518609 15935043 842961623 235423134 86979104 192335319 717473555 762674630 95074482 819013689 926610478 701301126 410429714 84578380 65140282 949307981 509322453 707805900 747033975 821260108 447130433 711694237 229740001 121337924 114209921 366067779 458405812 839138133 919059411 919964696 32227237 910801730 950039859 508073363 575499305 144657657 737072941 82034668 697036163 377868140 579794172 165681017 94734381 855572267 573815959 223374469 945906240 923422814 851049620 669207824 898167342 738599925 670675692 51677399 910653942 562342166 659490080 428710142 977678483 764654365 353034828 234385996 85588478 251029399 295359309 923290133 99718783 412727951 22992352 236889079 788201064 473483310 434024552 94177108 268652959 560418916 897408318 678282753 203412103 509253743 785005825 813857092 68529936 886915485 281203168 913881474 667096759 957508278 377479481 175392743 293823741 481250691 220666844 842071946 53777363 806898216 994898242 616020648 827582430 526959777 343734003 626841567 684186558 509536105 690373450 662269083 125242085 466415059 961997670 753308927 931069747 140452500 48365067 559797992 617184176 185754274 82699988 756420012 394819474 324550964 758546141 470853887 340974640 467587915 919040573 154074903 599609023 516601161 535077085 159376008 314805909 843773504 843843451 717974233 204180494 152828177 70516604 614869456 775891883 600303829 697418145 885889261 934970197 544501689 84338735 182629122 37659170 291230298 952561627 647088965 151576285 458286058 563378638 532126391 877766564 199828600 359422365 801252662 277379651 363049244 49612773 500718221 689614263 614036877 118894651 107965120 700970221 453616997 576326758 22328668 866147139 527539244 161819851 318801554 475283700 348203488 384736803 136659360 651425475 32452184 272081527 222350927 223989004 567758846 162369789 463044106 144846579 917008554 511398528 628299269 227417730 451272289 234260882 411387793 571454735 578563973 617586091 411298256 441831106 728313453 300608894 654459084 202523029 329304369 69575176 50282971 499487231 229978327 579834436 731640479 336469256 722980331 227405510 593499010 811415159 623385697 212541018 244434284 823712120 470047299 66624756 541740743 269378207 39256103 708575536 421787501 201581622 892219123 450669179 329466443 691840928 388996720 871740813 960614591 810026600 483419317 220930183 754388151 915191438 291950274 954969522 159461656 112565180 51248011 475771008 275315247 990968077 589266221 850220439 43856659 206221838 25103893 47300750 795701150 116394640 27030097 612107883 407532670 297557317 484737125 500277177 166656872 914535644 624717098 762132511 967941520 932056802 45935875 393715772 612315641 611545054 113481697 50245848 52882566 568119443 223575045 344221716 75924844 753605928 422937826 720942399 989537964 579544352 770163641 339130337 917654411 78230784 685765834 821167783 486692988 762094851 607181967 448706578 599119906 428102524 142470251 835134213 128041781 833295936 300852282 657196956 526429895 490816948 539558277 922077542 15736019 101259514 117991846 324659694 209676500 112512651 423985337 827267281 482178877 463574520 762950533 465932655 323108002 9607517 16714256 526707360 222966621 15710572 243507924 797463915 558011763 976549814 461880071 442117001 535615239 173580639 24190736 995037418 211671390 971004694 347239309 955298276 764808751 143918808 560776887 869566242 57807947 43474230 744344469 708834333 716241692 213436585 739325846 398193883 442163242 704166247 138085067 134556078 936640307 344165095 195618925 153497072 175525929 190377900 135435459 979617338 576725627 117523240 657666389 529036596 87435273 289998453 988716093 158146628 734502707 576648588 96584954 628372971 724979243 135589741 560557630 10050033 70957202 669642518 348352968 271707595 830527476 168070509 801143245 770104553 951922134 979313908 401438443 766219985 69093500 422131161 938338161 671498966 836197542 271062356 929718990 260210188 953045901 742886788 627657441 887950478 530840315 254830242 506501492 780500597 241818576 57097217 106468597 598490360 915674266 185974487 553493153 475376103 803468573 383889614 294644207 422472443 62827385 745856764 613658551 647562624 77629612 10078465 561204557 912548600 426371756 621768450 748925831 949349771 361940208 377502358 22884813 878901892 797164828 682846675 616764274 305590501 58345515 445826337 643275923 589218651 572008370 185588659 67235729 713215116 564658053 560218144 15772882 755431527 736888164 543235950 294388171 985739462 837103592 819168739 525712645 79317734 729843437 911808843 874054501 12901847 832424105 807034064 197182733 158717297 701066815 827039548 965386784 386281972 151385329 631113636 242204263 857132410 212456281 371896719 865806286 983829042 541856081 626706116 889871234 291092 579068124 290569971 704336240 224278961 134927210 9207386 465568535 262551045 47687175 238281516 463425391 341419310 941700096 158081998 326682964 23316193 741961345 229105131 632320254 899665443 843535858 295009289 561108165 637998170 878262217 693840056 963175760 254693730 731057234 919409645 538484640 898583922 644802612 256756887 43753828 654542532 410807403 754395753 841823828 171950753 333611228 222431261 819038104 467286789 48412270 784004056 88503947 586163895 782114164 800534686 247747868 707817962 722099138 618539661 594557177 745846254 505527441 537186196 521967006 678682223 31598461 393823884 758837722 146128976 169005277 284972252 587323297 374559936 511089842 502489781 25909073 448756531 330133043 769018296 521683172 785245590 850592021 200356868 414642080 171758822 654771225 745930805 761656625 174921884 451236669 128497561 334737983 2107502 884659744 154200310 398018323 446697681 897401155 883136127 880847402 509912347 422171963 815159636 484505435 108041063 351869880 598463744 677349262 479859528 910084658 965910572 913063047 172814105 375291198 402379895 109835102 37727771 433390405 666280891 179229144 657654203 149228815 500304637 218760263 333534079 123160200 28399471 874465615 259534495 265744488 401472410 729493626 591600757 825353327 996184133 399823296 532154435 15569346 34842007 683750788 1563632 917124367 704474111 99488853 151834962 88594860 299645849 471294489 802886746 767861554 106917239 822621435 63155827 461841707 967432741 604910985 815079937 83119602 819670158 200848557 450109939 645540996 839076829 897526769 946288351 888168047 235072662 197298982 773004482 628100264 986461962 494545280 861292848 764025932 423486923 850539491 296502432 459401627 400687915 646622576 252605695 731773453 723039975 788978963 700769112 82186493 531866409 470821127 953490633 113444455 46376763 155319807 625197404 197008250 752087921 632093007 562013026 3804786 778194400 332409621 879539703 341037747 637708495 144509737 366265704 458736018 729746293 392759017 4597878 916908472 333213915 13183055 359235962 282827485 66225559 338645834 222715564 975505985 718269160 111725065 104382543 24920877 76176038 250856700 73590018 313252913 2457968 126250308 612188911 636074406 612020606 642970740 622701598 217241969 652439594 896510687 20572564 164365675 929247607 161510358 482335829 95337153 859376242 21152779 87102113 896111474 685567187 24953952 445939516 652968567 898930409 781131049 985330761 883164391 873651865 748018493 266517863 552209793 323531424 519905265 940281183 764645275 944862097 451860256 691857926 751724283 420999519 520794126 79279635 81583103 357443575 750621797 837249821 106561901 282023389 91039397 916738078 637763818 992664100 629649601 885222051 118509395 61671587 143659938 643942150 352684890 187365480 754267420 549016 269608220 269625953 243354494 539131289 43275538 203588896 831251600 544700440 160796544 632860582 92872676 551037036 585319442 727566468 556865157 898645114 10367815 936119688 96415229 400668166 130498532 720353586 306059099 672546361 451992128 643567730 654155942 437858403 709686014 184154050 602421329 564244485 438077066 166980123 18463006 435586513 84787771 716105732 302238299 113818776 588261139 539464537 622677479 790541862 231567347 4080507 261971473 410336947 165736576 810774606 209005289 420432392 62527940 179592370 807214219 882322337 688517106 732947034 893532192 248244200 692477459 627357420 728834684 124150454 130294413 371726700 961978476 986280674 583145420 740550697 918312455 479858631 670961745 707652594 550789679 466025790 225388949 550886805 133856545 178047740 258446515 169623395 144035508 776459930 423103270 798410192 36794143 924716971 235357482 890327958 740513845 968911871 910337680 68161328 621774513 145532661 147803946 252657809 763295387 143402432 920319383 839679559 66013946 986862144 742810500 502044246 597383266 183454801 374884048 287756200 592688495 543942055 214925663 48683723 962609794 960333729 716302722 447736744 35687007 793995645 249182638 997155525 732170476 558112942 423035321 849463911 380462011 127405629 38238174 463964309 663945615 863957690 507738438 567136068 530204600 765410094 48662507 669041030 716827407 798673538 487557816 971895309 330646949 435681379 627725826 16674478 841973258 939626029 518939059 192191645 955554851 641490751 851031416 17004842 514196361 441757613 639145606 813796149 725917370 276510079 716094505 78084574 55976646 81061304 472625122 150777006 82085596 732210926 586894223 563187352 713389716 376169634 134969381 154833910 595436457 260493734 748416399 255532371 572851703 678586120 85954174 435544264 357327958 992739932 55676089 564888763 746368072 694842538 573569999 495516712 250062937 15546588 916153818 404385893 401822443 555277018 771634728 548579924 790715096 218259519 332418323 118089304 913119138 34419390 276255613 535872061 610622006 581629463 778655406 976647719 963385617 147880951 333249665 166080098 190421645 894555843 282650814 201252576 730480470 89225301 95880543 774196734 128356227 849426826 169616226 788853397 712475014 878283824 205549476 160359197 899236600 433508667 898587937 291119783 264820609 438813895 260313208 411686961 644054180 119746795 513862325 388976975 746844499 957644383 389806005 335469856 169477516 560181488 579035623 872351222 852488466 919096921 364412352 392029853 168898364 107860567 534079377 80478309 265420445 876330427 968029872 1332387 478149195 614349402 942118703 375452243 705392053 29788010 615962103 793732055 705797540 674096479 993502332 538806489 888727018 792065213 22776685 497107997 135883377 250840636 842803281 623037111 102546147 745256472 331415784 466307952 643019639 747606597 891271600 90323072 37194970 272771545 72976685 663373237 893447617 251692564 120643515 512340506 225457592 359197187 416832199 378550295 884087654 248615279 284164835 335114551 934097252 93330100 698458039 243978357 846956714 104061716 608179371 108907938 824599059 213628771 520983020 359421579 624218015 548692859 791001228 968334198 151388 216698418 76515805 11789087 537437773 569063684 940891198 152479362 218892633 718443803 47958591 916085501 625440859 539660996 967330466 950797589 372599536 971045757 805830543 897825341 570890000 186333022 444603827 804039610 10602389 666474770 319317326 239660947 13528071 131953267 723582042 517521018 47163517 2103020 904144271 160162830 357921917 1127782 956064067 936220163 818280981 51929410 794108555 395839872 539810932 631072483 685457217 575969045 672463967 640183017 111592782 965727401 466419978 961801973 68675313 857530543 585471123 253348352 471539157 447035535 598802253 824103631 735909646 343831626 569065502 400783944 73417552 238741897 698381532 382616570 434304484 352959059 637627476 936865489 394425275 152045032 297574908 704000466 908294794 738293794 859620101 268713819 658199281 122712546 544991553 389282091 669779148 9043951 340896535 935207456 785465 687048597 239698765 517992315 293220543 435106943 253556610 630598451 478422183 858762020 712119667 19262999 750322305 608885677 534226228 973136678 231502054 692199192 481304313 355877319 507564398 885477634 720140432 402021457 234439954 268585902 730410924 808135473 370510535 868504539 307367550 519213422 842759127 213309753 58447727 883000212 631850224 448155472 820947243 983698370 318920150 875929233 784137096 824549060 898274488 181926956 953259000 155717976 241405555 264680049 250455127 282019593 912751268 235148729 49224639 747631000 636355178 375411810 56128281 105028435 825040040 451101083 462795017 35088204 102992104 432458372 627554242 955158756 121153881 144215383 455188127 579949891 103708736 268398877 43889562 676205284 784897265 956430494 482414098 667871394 720705994 279433185 524715309 152622464 946547549 642884709 752848319 501844187 150246541 764148834 138949381 404199435 455230432 917348276 798739619 720558172 850884075 798375179 962306661 853490137 587686661 832128004 675176861 495024236 913689915 483550885 533618342 189125851 274776114 710633164 598204839 692673748 962456842 232304305 382277477 68091518 975521671 313082294 230464505 507688105 841346271 76225650 203144306 578703534 214377003 1117075 616356749 111075443 388242874 576596563 363841356 263742688 205295354 790799584 393055809 460049432 992996970 146621542 127462138 962776168 521663287 341934245 267279582 102674036 850915654 469600767 128841843 704694982 85877567 269456593 160881573 739621929 523207002 964587076 43669493 977059140 176256406 428897537 187434824 80114393 760812392 224099805 889452935 808617286 125000071 468297062 573919021 883803033 921435847 465569608 573956238 830326508 239981105 670452908 593448519 317290152 703225113 991190319 310158959 831664093 105574005 583326457 748250513 6038150 369757126 910185168 204512636 682200055 964114279 481228439 205675516 33265868 92600077 262254962 950704338 741132657 479379186 752647134 320014412 551293991 764745127 603354136 236659077 842694320 147423373 440409238 84324331 983560807 31076756 891729465 829060601 587786603 676801598 663691451 464063766 839136204 681851007 627560816 962390287 32054803 343618710 835290621 111973606 711189776 307339596 253514072 240419933 850659877 819465719 327659164 928023277 347537364 579758798 445684038 933195599 404098843 554512636 89699755 328942409 664807252 825335176 746447038 361381229 926402275 504216019 173833154 407287552 28610085 623277522 100643947 510562320 533179792 825981508 323577674 628803861 372635234 913239478 633661117 948310564 369280268 724669794 222409555 300297998 709194024 411683165 640541836 759236141 121407644 27722837 114502616 274231965 778985960 198256601 456965133 717668174 126786896 713152625 793254143 709258340 985065106 753933713 235809594 105115252 881061033 147742515 535621019 464880797 869171905 828377408 732094937 580356957 774764749 144886887 386829829 494822619 986311013 954868961 473945170 275696258 348681323 730077145 926929544 683502140 512100458 904182380 850510881 709059559 739037414 2844968 600426243 619197727 259350280 272430408 235601845 3880294 168543796 791500981 743738760 944024497 387557421 809664212 202751962 331180994 785644141 257846652 903345259 599391923 554726444 155839632 756043639 993595775 505972843 119420505 461244541 659174713 361217800 991210939 101927270 108842833 87427689 666837068 468018235 327959010 459704228 604707871 794914076 252836126 601992338 530066594 557110263 507970062 378996412 522471417 884622279 373745555 854400980 949342742 42287516 219068760 568783476 570147509 535243025 630451194 980947693 604916893 887715249 184855717 111159172 365965956 237579669 572898810 941532359 514088842 960486997 599084974 716929177 607653670 991342752 991152892 287000999 970125164 768477956 339561220 869055317 878625796 549544544 267051928 210571741 971741865 795952010 778860098 655786365 701825852 210353002 172305915 279453571 911375013 248998756 798225483 598722297 439219340 568420026 60523623 911436834 207621158 611136252 433831035 29896906 421027340 540266935 291783040 741606352 445570564 256861764 957168124 912795094 185282143 473186264 622751711 984454797 184228129 643199410 917755734 938654809 250049770 697275023 563186297 540524652 231837406 647440185 379409388 178619697 460614882 208955364 492502796 860730008 292397643 355364877 451740909 453779326 772649148 246119171 827984726 727259407 689777515 322208503 274961226 68987230 104020977 828739809 666764278 303496231 732434514 153255827 245706068 713385437 929821731 715404877 572745090 70921384 327753725 960594346 822684324 729893979 634783935 389914314 401297554 8985753 942356834 199021154 89267167 978777127 386106524 758620297 584661755 111121751 984014344 987985717 96355594 816451574 832825267 118358687 605828792 277285442 772043654 666376761 588478648 750244865 683357256 572287214 236925571 106893640 964895400 153971417 924020920 186296510 722207514 668173472 877382501 128794620 79011014 154589893 825637147 946927968 467365336 915066736 24014192 918276356 943593319 439421504 123987913 59992217 402793856 286881718 460503770 397064781 290315258 831928335 280439049 311195012 766115528 876218097 279703884 956200651 136670344 720993479 459149264 309621540 933927321 52514843 744335071 662764584 677451532 575899958 777821896 763538922 597601284 820175718 661426711 537717573 31542651 436538784 51447274 853927077 985537917 435203213 742340098 618579647 669696933 443168854 729339366 131881148 257886779 131680554 689704826 477042039 743741137 838336830 308676275 13699809 212743456 115014595 948797538 17774574 183444042 982699171 164067893 787873377 30298220 747343083 582754271 461965459 340399492 734981509 233494408 923048007 710056344 413769217 39835327 888419159 415598375 64849744 35316499 495543490 979237386 424772931 394939795 231064295 103124133 939381285 411791145 789093789 850792649 834853809 378640041 487623839 996535925 368316691 255873427 960940985 979350159 996547146 412838497 197655767 152067241 837926948 282107390 713016373 773997451 425452959 881494207 543539929 91013740 536913690 7090318 269348716 344138883 537011179 515484118 33817800 236655836 212801415 158988811 639829310 15363734 285256862 3649284 487104365 579475846 983605823 183918620 102884396 866513084 649931067 995001096 492617526 406384086 969163851 731336706 115760969 209334306 726243601 450487545 335333660 307743735 408451877 821908438 776200115 160494518 647313634 447933348 598360931 154665719 152823460 291755425 823212334 415210186 785030057 720976690 19739515 816677619 36431550 34208193 637763612 579109172 707340214 460168468 16576378 16866454 863313071 148332772 440015354 950907063 158032961 391573848 152870954 231702199 911989117 750758432 10170660 573577287 504879624 841498578 810091068 214087968 541898200 544068863 781153425 110155729 849660208 589392367 739076756 954924651 561986340 830870129 791881612 395468574 902094282 229358091 27335339 222881096 519337284 373194613 144312655 648487309 316844568 914242877 958894879 331850667 843963183 861605200 207179898 640485457 996237653 89186205 54126024 61731723 586061163 358712910 958243014 757988414 933149189 56546507 426005974 935535022 939736029 740002566 432108733 854597455 428663961 386397231 509832444 110466665 966426928 808042640 117796630 647469522 720775426 788543720 476907399 942679895 359616409 431594232 553636006 524061668 945310929 577293742 188035874 387799092 688700678 777597588 9117285 808254300 724567947 942558048 198484264 898588043 410974588 787917149 899457100 321487121 239085123 859233417 108342540 68578135 439402285 642181212 781721882 283259039 611978057 639540067 751342866 925242847 889620434 589194724 214712909 190480701 752732745 627077061 258035331 820409788 842723104 566515434 601418198 305676293 223780864 988906824 494905299 854610330 214166841 974249513 843633427 304337954 569768214 455922930 573276925 336921867 974465302 993002057 48189929 904300758 871550939 303576823 57445988 299905908 214888204 263135333 902536285 510535373 21030363 94863921 496038606 24024290 499650685 118504630 618502048 977085141 977985143 929690170 174668676 604341047 595032891 238729303 235717931 463675848 761828077 11655535 663690763 788417189 945467791 191280782 117998925 300719910 936101197 6337412 236050612 410596011 818005361 909185131 94117893 324094336 220295684 498245010 706459610 286742405 52197528 641829530 804023102 139187594 422528660 862234449 869453200 531294528 585616340 80427284 63179729 363158604 628798403 595403161 520952246 530479018 662807093 785528146 321932651 652509249 206236152 286765565 449227071 974364626 290512119 739065830 478023085 997499145 992099742 443600033 742375130 65964798 356202723 753986949 289086642 973542295 981103598 223531218 769805683 476258561 183458266 211050705 177100190 503559625 891219935 692821487 134241396 626042357 360995308 761852793 763483145 914804438 881382610 845895904 979700279 90393066 809149193 733005531 723174817 261114193 279395203 746783504 4001436 310548241 701853351 873061863 900491122 48101908 336608387 557202695 778901035 443537535 116344853 893100126 381513317 920542059 385314466 401866736 109748442 761200478 480687195 707432495 116173458 506203284 576254694 127378957 787054313 575244017 536213507 997062752 948961300 273508026 183320204 911409047 836626076 104324292 499890987 142841961 162557513 946382048 561595259 615192694 687149485 717355940 440543016 55702755 139778692 916982245 74977601 707418226 282943593 733866090 586403028 306636004 386752436 490943308 561212560 380802568 775740161 79396783 882066913 284553981 374954461 95288580 851627686 178284417 220211416 365198608 280321126 934631269 431976274 623046949 57930333 136020698 53980521 244596978 217970813 985828173 751153927 937631278 146089339 560332655 415181371 493353266 975028758 142169896 706471884 980358758 801227141 81905284 558235757 24359981 126150781 370048661 388980602 515510271 112039663 708223596 822335183 313442842 736213955 318296025 950925996 553858207 238431470 376378893 187678369 338701716 899039268 485551411 961919313 971592842 637732978 692460725 897468877 417213400 476429085 623071037 96701454 144462618 261656672 358248003 818998021 920071362 736026758 935096422 982961269 924522460 183603606 262108033 588044632 296623900 266879503 734891719 930871821 21950695 437977640 922837783 338783246 178533869 461910365 123308049 156143442 589366374 78975881 38640180 396601517 630212815 766007326 521635500 844468889 711738373 685802494 119523222 120394824 559049383 422820565 174987839 924815125 99416588 621993796 950956691 309737375 869418041 219580917 824957753 82980932 482155324 115591749 322651106 956566957 88853793 39210878 120271185 444575280 730332338 918148125 611980842 906498829 648186428 730824282 219874586 685898189 731018041 168660515 764716984 544214663 914221264 262273483 490681272 267446938 90676339 516099434 300941462 267717364 820073927 130602072 83923840 974248184 432483469 384501397 503060598 590233438 632085425 69625923 636018793 666990153 713597192 198779477 805157126 2853751 696294274 914762323 688437674 479341916 73065679 37765087 938368682 856487344 409325893 678533217 543722192 338035399 635551072 200090684 462162736 259557427 858744366 284190140 834804155 40821030 464218763 783736767 870648003 32902855 715875245 221993533 471482741 540825073 401782586 610914853 400818547 530032691 989819407 98328292 157397970 540141596 947502394 377153415 739226392 285051070 213476638 421009576 699669 82296468 168350413 934365526 878171502 59692160 394410166 230920542 182285622 602236808 328629736 989538155 694964994 680830233 91692365 984760761 330419353 665506440 338323878 85472256 12068458 343052516 466192683 435029736 232475296 705021643 584102485 188470291 362617249 956529616 121338439 787721235 632591507 535677853 683968445 237503536 895788902 329683465 552222734 310857383 856922707 651204517 304406187 735514186 392582622 789688960 116568150 174065939 436414989 551246455 826391705 304091755 680092668 424860041 618324507 392007620 894395473 13245128 30359864 579349058 982840353 457362891 713896861 573490250 493659545 994273026 678460816 3788299 268874437 191263414 443814236 522802477 679955273 730082715 717440804 988254098 889826322 659598782 835713104 310394974 13846541 957120647 221455789 191268723 617599759 548407486 48392320 266522762 180652556 81319982 403652550 676370777 812793829 411834499 532944004 882313029 143052758 983463761 889923371 130894244 361060060 123554082 240500865 266382339 643684696 166989183 17428155 401214153 770758979 102942701 488118693 359586713 348740168 226632195 657508304 224636718 157177171 285662723 78060737 177192916 467792275 892713404 228165123 829236929 322525416 320574776 863029706 193171297 700792299 312006752 38115555 437143121 109227481 68390769 937501187 37017463 235221618 485665399 500553879 696824202 481684899 466158283 385633368 794334781 207850169 801577421 81518194 111222729 72125544 78956601 510547539 780069446 595470667 285409439 323955844 462440220 955920801 149287680 71127420 523142282 942224176 673055572 744547023 218499327 441523295 803088944 496907851 783885674 133936304 549252084 658320929 243887755 643430391 332035061 991268627 698215598 701885882 628725871 609208642 73598295 364409910 948564564 839514425 184755256 986691216 158590393 560799749 202244497 689961674 729377569 434897160 968365543 809631498 848907946 555182858 483652522 543844288 250591740 47486400 979619422 917610979 518321993 904427122 923341781 320717792 997598637 822224428 515847997 478908371 265220847 967205441 868854079 66146941 436009770 647034111 259486898 17335229 321305084 71342169 476967921 216201206 500440535 674223981 887459034 722074588 913704080 688283672 574148142 562048375 310747982 817443137 105294987 213112272 751707716 811261460 740789127 269711040 25310525 495171733 818902940 540820889 453579377 255025098 333888475 18847089 935036826 200130376 259545503 178838266 642916952 787337569 168820196 975265723 687324012 571042792 356776456 640891671 558001475 527521128 113351984 460803548 19243279 548481626 865477790 920909848 686401752 6838791 856871733 308718996 435437528 981305128 419708791 677409331 546538166 752389781 281823230 652838400 951009167 94952537 913392866 971166001 941704832 445482927 14383775 339550938 935289384 147800788 666599330 726788844 804424957 533382701 433948811 824628126 582868927 285725609 633353127 77795353 528819553 588916689 784970143 906154761 366286022 388285033 919230738 155654642 835532423 731209654 694595758 424224793 632705969 743266551 601147391 834705983 841565633 827870510 720706422 164424912 881210098 996321835 462547120 322489680 610786821 9119242 188712043 43812924 188035634 295807541 594529891 865922865 292632250 856953808 122069994 452427179 488125099 448721226 347635494 430402330 350696213 878970938 437131723 152832596 256658703 962549642 410745312 503467637 208935602 374547402 855980365 447590481 631504370 521032801 428865836 814900492 676739024 685085295 229830820 832893753 989122689 88473279 938849343 716739636 214418666 376987498 610423301 28884761 813584030 177617013 422344539 402631029 1596859 135390817 474083527 343771023 937223680 313125913 252057450 328764552 548125648 545881078 720584387 392970936 226127861 994510382 607331490 987468801 323742051 564241386 499361288 989684716 583870925 939196542 170620313 313300541 346920333 56153472 265677481 630470509 108658304 809506693 686263871 479380613 75846542 228449445 366416149 167726922 503263829 837235276 431167035 250999337 980006865 900001344 6616378 803918586 34670205 514200965 401758220 488812310 683158167 841598875 684463757 946840641 312153187 742164379 582533819 747819861 67728542 391863276 990593080 728505829 969251842 737856134 706749414 854252739 185048689 117129107 115776096 165013675 76685668 990156706 865720657 307958004 717242175 907588683 288674875 35165963 684658424 46879292 17729334 77864401 668751449 526656267 136000329 476742755 169835156 682331088 716559272 928941512 763211160 26482812 478821623 651863085 941964784 540515897 60153949 292811132 217277659 535988143 277243142 106145592 779177664 94794753 764256202 771631204 617383348 583190797 3831317 261522493 533716108 288611831 895584575 668835329 275854746 759503818 480644947 800049833 336953322 774698566 344364401 283964544 638375459 440417545 659683572 55337830 547672445 189958159 340376765 400040439 996287651 216127037 504085627 745989781 32135780 53314942 652884273 503133301 477516900 486916831 557086390 343521992 231182936 307320221 676048582 444520436 103539371 684488922 530800139 235782315 326782627 598130492 504758900 495932691 824645345 983645838 900999246 467032589 61088212 928492760 90802948 551749743 852025325 739134040 420762235 817479303 343208488 457513464 433466241 28793002 273155307 523786473 333935354 921870034 604422375 254485556 252231991 760381293 1860992 192018559 392662310 860233099 691546664 182417406 592839836 184489796 458313152 208722567 903062546 860342135 171147340 394457891 460407135 730241018 79308643 909417847 115166776 234179791 449784528 620309297 442694381 788941838 151007275 193983054 874352815 761039121 473909603 335103850 45876931 282463210 756600817 496886041 718229314 204268076 785110682 521557726 361745725 61068008 504495604 677539790 40176546 721948010 262232678 299633439 909575167 123365452 201713687 9745735 675563509 724048319 167519346 891854518 12902051 233536907 175111697 253695694 847440067 640146555 6362475 920458356 920660812 399995544 845913477 375360610 978670344 110150135 589256764 174082511 389915839 814494912 644787294 875587180 487437912 324981116 271876155 797044822 506699468 572663378 671682179 208094583 190411794 792748897 339161629 966537797 67989794 326286279 27311644 670770061 931356585 457739426 274936964 72815132 727315811 453174796 594282904 433475090 350401568 15720413 300576046 252810762 701395136 860436367 639731773 256895786 132646285 686237040 920491657 832787563 56955494 419461993 812940631 977178530 336325490 355763991 506386135 72547692 527129629 152217465 495680027 63179687 513078254 284457475 428546365 224050663 870121541 193588735 301834015 354277748 452652378 927871892 899425681 176052183 547356613 53871294 659546407 885673210 678290218 310958680 238660004 135921719 860625297 932647190 503057312 938868702 663740107 908852365 81136577 116178304 653462236 971158790 754152825 671647388 824351568 937429992 937336049 630222365 745831752 514330058 220606187 151439351 292992261 379630417 166627675 340041377 992504914 428224768 12509823 250455002 295221924 966107662 891716095 421941939 187641302 313810838 816165673 938508538 305285090 973279310 64504607 256254454 24671796 435865434 694965651 47021659 971454833 71941740 256860805 942857841 879095277 750987984 918650766 378180388 416895456 563163895 180132495 911720913 640828897 608224762 339398252 543921951 938034913 691668325 815893929 711249969 827507741 134678203 253501073 90537507 569755648 260847327 699680126 140416822 91322666 680216318 17985507 929455502 665397550 185038951 459125076 685780935 32102946 459421108 371709647 849129142 831031070 984685321 850790855 214315816 450665405 612023639 884710022 58425564 890073344 795436765 877711638 583355529 750991309 47384608 743602266 1707427 868370495 740149630 414009204 162094376 186673661 259033559 440725853 348213158 547137838 330172370 162088328 907978732 492835011 176950241 320537034 94004436 364947121 491087162 200281117 919953708 85378135 513508907 626626559 520848377 272514742 520974236 443155847 749396683 705402151 797021920 623457704 270663356 648589759 823289930 744812225 36855543 267508569 437022982 717891337 313620461 336056987 213733177 525866692 12903369 409906820 469306635 502634877 358147419 411996507 354666826 530475749 295137843 831877735 34645975 843826467 184596726 892668126 57084456 562586324 610931489 184943901 181072177 523562805 203939178 375923773 690674161 117862831 798197211 758642025 320654891 446631656 582858610 693557976 603342125 447411676 244350327 921402076 739224244 534656296 906188474 932354960 548257766 512682352 461590651 555943670 996344366 859289978 935725964 673131382 196996316 310779606 661233308 305262368 719208097 210157754 323124980 197048557 760734605 216969661 540387603 712876213 32947895 649776368 899400968 628398363 5981016 637309905 962307846 600812824 864996899 901861923 495125242 189520677 990305679 846513932 615281580 35846842 624509273 228354212 577980334 532910016 310328121 832025125 542012080 742533554 715874974 832143886 585015612 600917358 588577801 102768060 244987725 205179076 692044563 525499249 33810100 213520170 144761841 351612271 474776234 992244548 21639084 703457722 275000968 502967767 131011798 477557320 273682194 638817766 945970092 127171929 359181218 975615336 510661874 501920931 744730640 816904287 407562370 553473331 381099313 444370720 861097888 84841774 185512300 169245384 256779435 330264581 960967543 70817411 5950001 168146142 919202122 310107013 47391525 450650757 439758054 90765649 814988464 338056000 719276114 659054081 740082321 101593729 943503746 533793732 495258809 484473488 406280323 36788595 646932183 56758965 686739924 681066674 631018314 474192210 586902606 182028777 447703352 805509794 139909230 709771714 411052378 553275903 457025094 465250799 658461025 386269196 545847109 627737239 189861336 328707101 643961597 612266614 690681105 905678924 811171732 668393979 822585665 629281907 455022475 302908903 420028399 882130086 913439176 165167383 59191430 883008270 304547079 686357106 165292964 216212967 132618877 768220687 438865070 856555989 819331892 305836075 292853349 630346709 909409582 759634195 75318158 768937397 867358108 985028571 583639212 742620 257328452 790953809 575424270 852504277 820962452 325310840 640750661 72555585 783102050 738724898 482355252 247579977 791042414 34916145 956590627 835678136 670278289 730222977 611544214 973622731 88523167 763045135 390666602 694857635 60490144 106831304 977627861 852031502 611417797 997925794 812158155 896527570 297935516 748633608 196650991 785679436 536518564 713417079 992010859 460619718 945232807 403411127 314651687 51648300 739302428 957259880 790033557 34708163 98756349 900046386 374655015 186388001 152390227 674751258 843737607 361356866 971160858 864428797 684940476 384758331 966047905 717611049 153108218 273596891 262644912 735602733 300252071 430725506 316981029 718201362 627632561 904640456 11175546 843651726 533884010 682531850 809653636 26550970 599171853 989370058 314546983 537840055 851140352 315912979 488232042 630953663 848819862 991664668 229664551 294221512 254648429 732263382 645901930 229191115 460438933 139133466 532934356 274381430 55613756 667067898 385341184 827250997 298183042 180395897 451758402 253516663 576851398 228044522 530585623 250830850 201212168 205124175 809570392 388914904 263260648 451610328 231835035 883652863 647737347 879630068 916860111 424856538 825402449 756090677 568835264 674317862 192371670 981914800 961428308 920205408 416700917 822884650 755594953 42200322 150617369 37274380 467422104 576946837 517263840 931853874 692971933 907299155 785743814 339375100 247011954 220260119 290559717 66566441 982550490 782925768 15604724 445107192 919005100 603256537 976965996 802552731 948531545 823245453 950920646 86476369 777805958 49528783 679786037 507672055 830801550 651393868 802926442 813452185 636628065 460990328 174018287 107804657 25583707 1208164
