0
1
mirror of https://git.sb/baoshuo/OI-codes.git synced 2024-12-26 21:12:01 +00:00
OI-codes/BZOJ/3831/data/18.in

24 lines
773 KiB (Stored with Git LFS)
Plaintext

80000
524517239 270773348 102492509 939550503 531821840 552695370 906593231 388532536 811067789 74571633 728016263 523168603 733197199 710989850 620229367 314167428 16518537 592501840 371012358 744645933 77087343 743559035 120817111 658151285 298491226 715428561 151522838 38987462 521335890 600983174 976829370 431817316 446520941 997041808 356230204 226205310 880736220 569186194 51070607 573476645 752043304 553113800 633941968 841798549 141996385 310983831 372828434 846924739 839947675 883209936 283572760 441492878 172781887 668815394 779224388 430304860 61562382 473118230 282127200 961323021 18356099 121962959 803576057 681235314 650063456 608452592 947575202 973573118 915197721 259670352 419683832 29435794 32014720 860416147 943221646 517801176 291905116 356070133 474739480 933228632 125609379 786845106 724232885 326622082 365876555 744953721 59160158 10621855 871754264 972500299 820083304 346819022 984383537 143100197 117943917 842500854 615271060 726277981 120614470 129247921 501671224 393953559 120760635 273833946 162479024 431941235 306922148 714763621 66098505 35131662 436781228 323031054 677141662 43180916 807407851 282079599 245337057 316725596 963954900 126902226 615867628 270158810 136408653 500695766 739365204 203027729 538440269 661863313 289674534 834604733 390252241 200704632 485338723 765994614 638451376 81547943 672535975 256985267 785730004 572873367 196200383 290509122 981965504 700733307 997740451 662346382 346869757 397444297 913594720 255617958 643209009 364298416 903215725 730852254 926412154 907752598 104136485 372192923 561324231 930907839 997433147 336468990 362280121 537611027 382366527 522697460 983963597 14028803 886762990 872719318 766828979 249871785 174019399 973552276 139973927 222878102 451250501 783842138 910379230 143888142 241929795 926914754 464901619 379287083 505548234 405780341 636525990 905339915 590977851 9122572 927483281 27335378 296238259 418008891 891602213 778174743 347822018 549094322 230616918 779594187 343531897 984264562 901042933 468018157 392705588 292914586 548025357 350183096 213234853 969386769 173174741 240134399 116825621 828180403 985785075 818799637 972321104 446216633 739052951 519980702 847297880 85997780 643975087 955890205 536564040 991091809 887909629 50712009 501752821 356795996 913349836 554405891 996601 979762985 599832910 767077795 93114878 215758089 704319890 139947623 884802078 34499518 767448177 70569093 710586390 403246895 276954065 385661747 828350590 305306780 859067690 871415718 241846341 557213607 479738595 672035617 188668055 555451380 673450359 533994979 359547066 532591057 766881133 28743027 347104101 203529818 972539343 137030682 72259226 314531853 767168368 199021917 925988198 684186677 969180425 52250478 917355001 362800859 648907306 776708595 945194805 190561237 808911731 589650754 749881039 4031277 416622952 810398119 112588381 790510438 116924292 456726086 747887167 846465656 235100771 987188051 62873264 271063748 382404363 166945390 993529086 514759327 763159846 288534029 631158144 344676036 153165451 746114110 481000735 542885428 88571344 898493973 483656258 575710596 154597927 540820119 290912996 21110794 689193798 339495668 383566193 314733381 684631245 55920930 47211216 705283345 883956674 792733111 98528074 512450500 112935873 956821984 506570921 489374908 487792034 168965293 174072194 950301401 509259263 932498594 240255544 545030457 555530954 574210321 488490860 218539453 647454014 913452813 145493534 232986153 707557237 626641318 499003798 389220146 119209120 746417458 702799470 941618280 731109707 575972840 731714232 988577799 318096363 980205762 862727902 541905158 636012325 882113077 783851170 854590307 762554128 496617221 540613752 557924484 712366882 599008255 578129036 731072436 899474484 225429651 984102842 95055330 735344081 687487293 633589122 875979519 973415079 254771753 549689679 490453202 39986176 213811450 126595765 153277582 446904772 238574883 632458751 522107478 278959810 649018722 169666773 263011980 453121497 2117827 584764404 231504666 96103263 637213304 85912823 108370586 734572697 667313146 913408721 965376706 502026879 917359637 995128443 896395497 76860958 742709989 464233497 518456189 740618682 681639159 795178201 291562233 843803689 512894929 931028297 638191854 679913385 524804319 784482883 484996722 871388827 645176668 119249901 127161397 704731941 754968388 499781812 905182058 175685415 772544599 860860365 522790428 604615791 983288012 857259370 334663197 536107786 97946481 716898387 140700373 701236921 787220600 610820806 508264029 804281109 591838189 675668035 396952162 901866996 399914200 366605606 699001742 860612761 739956920 128048264 162614763 326442102 664274082 733220947 775534420 214106814 650428707 697372376 358989501 458917825 537019233 676774161 162883718 122314226 856999348 958430313 119870614 999344469 740369387 27023218 987230696 344241713 453181898 888756667 887372571 336474950 80512151 197769505 995945249 952941097 482262368 440087056 892227748 154025745 506837991 235932910 598956548 766022235 667874489 794164724 401762906 268304693 309996419 524757865 215905000 384145856 347600718 803124493 968623370 540800531 713496257 118617504 847718599 953916435 192166602 727612666 580584989 419827299 723881561 63255201 604164149 504390168 833451855 783969272 438362722 218578849 614343019 220931750 268734451 242188012 841897180 279153242 326100394 646692362 263042027 321092013 950406258 242044820 541055994 796604757 714761338 348649037 402773478 683894862 299285029 576681415 689832444 768285325 260418970 845587207 365729989 86500554 59311931 471714081 214718488 23087908 742178982 712198229 760228785 501846060 114978990 825970185 843978540 390279960 91223314 193017662 911334620 744036338 105936264 895523985 765731437 592928998 647560707 892808055 100564469 667707875 361360495 25746580 851943682 290375079 420799547 158174587 380806963 75980124 161151975 841955427 709196645 660092310 713715658 578656733 296246639 257997636 419742992 632125629 656847696 704846278 2278748 373682351 711247931 483695960 428889651 827133323 382982092 41853991 645811280 515226320 616345729 353980271 455730227 136383690 105101978 882648240 241964773 886933624 608055776 766002527 539704892 113626482 426886290 520105692 744479626 990860673 255524608 260473786 428514275 408586297 257217062 804370249 201535178 612153859 647528706 591048945 260834822 250619215 280291037 147030832 931043745 554144179 614789051 140473005 958391765 315327866 757241795 775195620 590656072 516530255 715952544 383797858 537835124 671028007 979038571 811626639 37949938 669610343 104131287 396419430 43606319 432207618 465392367 775415873 985737711 537636771 53510344 117311074 187942962 906840450 224638071 475023033 680284241 893889932 394483854 81607624 102879505 462039373 722860939 484735809 675707603 90929139 81766972 996195904 563987557 135173600 957117614 798857519 595483903 512039738 274839654 556246806 732379976 571020333 270149829 84001165 876637159 193617197 374457151 448841922 787808775 790105200 185118882 674975178 952698645 406285698 412319149 672884710 34614602 126846391 891628785 707137623 301916077 839373529 156615129 889750236 327584774 741438509 154777261 754188801 874955187 901107767 468843395 818864624 62605855 122566403 739901906 622547509 539621480 800548542 973290115 908743002 258499851 638796561 261105352 597550042 12491158 275452967 563118745 559303463 587969474 165622707 542234848 490300587 472728870 107017781 345586571 416378469 997074568 494845368 545753464 913991437 816440228 202104841 461368617 404125774 939204168 327938898 448834249 76929607 515538171 624746783 876012960 594717641 681733962 275808840 748720369 952711985 571074549 227903130 662323137 577451496 560081343 147968181 889630283 370336232 945638703 853356927 557233057 501824331 281007849 558855814 744551572 225845009 420381390 897548536 852021603 957667751 531755144 489423370 879427363 192994668 484323576 241442522 126073896 403974144 916971704 263455289 339216296 42513784 631179446 281587917 930252065 9006481 890337597 144395908 632393162 762188705 602231537 575597977 349131283 273923376 769966671 992488092 626090032 400588514 932189343 825820251 393690706 41616273 485493837 397654839 123265482 567710732 174251370 258640572 846139473 62864358 234673660 791769958 519235318 98205776 163548021 91913590 987912133 271109965 132533507 579998190 312474294 691839873 349433571 288398627 129287894 474100903 161866454 762130340 737055046 471949679 13715814 663463652 380765862 443172611 185780942 71745268 216021599 365888398 122351848 775297865 157678223 693934329 288984269 421539197 286581058 622085531 916898053 158667577 757761030 84808989 269381206 664636707 179502547 40968656 275040644 125878229 622789237 939845879 864158857 807001436 864835412 580397205 864607166 644484246 453180771 898198181 260985522 631954639 978390361 826890047 261649371 131884111 89870583 413220317 518338866 261970744 145996975 569941997 230721345 305491991 949981606 787713327 707511643 274952028 606852256 434754058 825244202 354474403 255019974 791780986 757481899 224604185 426620065 770785672 179528354 118471095 678486294 866986086 660827341 783019166 853792278 771473828 468435824 745223341 748356295 735063861 937061725 782380881 14931297 645327774 245427482 671394705 200066919 933423169 946726067 613040698 993484620 203321346 786204988 235726787 172040917 77416777 525773574 987534466 923718386 235548072 574037668 738656245 865187722 867036825 303921534 541445165 697208948 204219262 608858153 58416448 616178304 913116506 325327324 621461571 907668429 241429671 107020229 481538434 860804612 938577052 453688319 153286474 910860183 40946883 202384807 402042795 848463031 627908427 313529294 432637537 24270968 699527271 270559378 667599366 975630886 247678245 475404751 447683495 105023213 282187724 808244660 729421260 412603785 624151866 105781536 469617087 884358993 735037649 608196654 219700651 96707698 370196142 86549575 754137329 76265528 136117016 8043880 553248634 400021229 342615461 633279952 748548962 358852006 5044427 332050527 757891375 899957165 988496644 143342193 77075978 107407863 32936065 175856886 11759996 384223049 209231098 493141639 481616778 351753830 695595499 693606682 674463875 365525954 461451300 889092225 400365930 451549034 577502789 175575017 922993152 994475729 216955356 391488760 54680300 69800173 130271164 273451613 817148771 847554406 751763452 821059396 160655112 622424415 659730145 508633124 946919768 716816017 36264375 196955442 934844689 753560478 317047903 961308168 301142450 450372048 908908857 331540293 304020998 623605072 928819384 663075017 490085882 757581174 390908397 400113153 803084779 82357527 132317992 734722272 630260334 278840579 639699589 235064053 40710149 878726317 622793744 398818053 397493210 17786343 732397111 48079880 559663042 786828506 368992987 261964073 863144444 41669550 541128037 98400418 150800188 700229697 52573343 358019981 187702811 422535810 434567686 445452563 608033132 775002067 526941952 789233728 22354258 201201377 106282583 680280508 589479883 60183275 695814253 799064841 730262414 67948998 297562382 742517337 882546866 562516571 176959719 281813487 978344060 228238469 356441129 174749398 795515710 456350089 212717823 192532174 556703044 312813466 716648676 646390109 781490665 817607982 627700409 64189953 617998418 391101316 136141570 803691453 576671303 777011721 435153639 663700589 860653581 584392963 548023465 266144913 516844853 720401898 961217315 724372391 891126309 799622128 587698230 566347726 382072043 940304963 462162665 876924427 65074128 555073231 798360558 619118144 990975025 412052693 342035143 559052204 126049142 882868488 773979246 103555641 371647071 93350230 650351982 353858404 335845947 550766371 452635712 339799268 279555488 608185326 703018887 81603796 157936376 982216458 213280599 293253945 71951002 182781821 761114628 524610280 384752947 924424336 846350123 719726455 134903033 10543778 396583851 667813332 420227215 125320736 5575876 122669444 86309911 463715750 794262402 984458488 487250610 905031086 810830248 391300981 919026536 154693191 858138045 162453047 826039893 969549580 293777584 222242702 765171994 331263046 49200880 302612443 878717020 692552471 231415755 443832479 438902968 579452053 189197895 729689802 711973996 48220330 750167196 862588756 120155774 962354009 566524002 190990906 821140339 625645698 150702589 685178766 575691993 246769334 619783871 469061563 34948034 47267749 324222908 575958227 330925761 508650167 88978821 180633088 597796800 435821540 783568804 286547706 879756790 861128382 916058771 195821804 916165615 130083758 161546194 953140845 507691739 863327721 974659462 836957908 427242329 94130185 161066517 841032118 484057582 339069524 679740124 975989051 214272353 562917288 89204427 490652793 477277365 287187930 616816677 51255078 833849179 890008925 804920758 451528174 562993422 358798412 823073515 978405990 991546836 494231841 878659619 142974274 291873124 194155228 673833316 194146326 27555716 117449636 4242449 700924546 930209449 756979073 708875139 926140335 608046478 451571739 607523955 199772927 838570225 72324963 979654038 779777091 757037915 434687752 573933259 328541522 23626018 72683715 262014458 488479405 591471126 441403521 299941823 246970664 878676874 732674618 945954245 317368817 874999952 334634203 566327759 628094140 68731449 402370943 362510628 905236031 258022673 943669213 865361609 404076914 278839779 324788043 279110174 613292419 59503523 750893094 16515283 472857387 382858418 472499196 85487283 802565760 799818809 975939401 287029114 239382947 276849266 20550442 354858214 279808391 875805644 319330795 142002192 334134243 554117152 9859320 696604522 940420599 375811235 331881132 71329844 360794982 789265929 897307548 959239430 232592714 304889330 973094681 733128907 602666611 427318402 444378522 854896286 257725952 949908161 160127795 919039827 623151050 319595441 289240982 238512099 416609466 716604726 290283060 401144479 593613663 16394801 91596676 479382809 65226852 940920294 186117273 584943043 698760178 407807245 31312959 199884614 203320854 423854004 598919981 39074324 324053938 700044982 358087136 139939608 614056404 762319402 552323996 664021423 896454667 738228186 111059672 867127604 726535549 949069824 196208619 565226209 503018412 414427131 161928819 362338488 162381657 510779395 511328816 31166570 206171225 178821255 180419465 47147039 49128884 10659519 687738515 691246056 670473486 370067768 113496823 280177270 902206870 671182588 929387538 748360951 149449738 278754217 957304178 988511119 190788324 641045564 308114371 891537479 962756688 113690242 902706414 737228605 551076310 965214960 853439214 357859056 327413462 756220026 542079152 170789493 193801530 727959392 305045250 766270777 249917109 257609917 500034582 736729330 234704645 490307074 995504271 518036045 573025525 168600066 794809476 423789585 258777950 187361898 431311115 938953054 513810417 956571333 924347832 785172692 706483380 39957454 953195818 936305232 197949313 491326029 114086357 728886484 976633301 759967242 534064887 240937832 377603719 451437766 118956644 552975466 948742063 357797600 857904989 632721303 820751874 341449438 326714909 401937764 797651503 180922807 400153595 972031022 920178465 847054737 697558826 922451484 676653054 144177455 543942753 55550468 701647466 296866505 550221499 242647017 356229901 85571236 851359091 244976829 676130890 482287243 404780500 257258304 359399797 616349674 375590473 820002195 668545825 87633334 54043859 2537847 617298932 719807209 141360065 169900399 144209979 739648761 300546857 903306927 84492665 591170747 185736669 861500792 588861867 729628402 240858621 75690935 926073786 856789135 259406300 722850315 831014827 720633422 921717895 701822106 961902913 808026244 894792489 895028851 734553696 138633448 749543069 244712453 790450092 131289835 860159594 821529945 764992427 642360112 223003083 772727936 324790600 299934743 455463375 935904771 680055006 798456119 137520854 744505948 865436852 705056790 977143495 468808046 698710507 592589347 412990321 87455895 661292540 258085473 822954734 598275892 404067750 724322969 824893191 884743954 341159540 795914210 815780213 548387976 961108669 589874268 149388107 244485847 327458045 648858064 471587334 309920922 62290930 972859985 286901576 957128485 842655211 773047039 170341852 599112959 693283947 360765587 996622901 765011288 487431996 722090082 397066242 491628343 598854303 314502584 809037363 680419435 368537779 47370332 472709057 34597002 785336467 258152054 449428816 16117086 867297354 122419158 576874158 907579382 841698033 917097778 541058908 538494910 642528101 82846290 960263380 231428241 963523267 15130248 548685997 925917664 501019365 275326786 749735546 992539408 113385833 290417422 770094406 143887309 494418291 805696528 195615262 531493804 165754522 53695818 768107398 526415813 234558926 50704536 214777598 477839076 223117983 604950566 466892536 819391887 723728271 100897279 7191428 319637577 146732748 991538254 552358737 80443646 588144929 298161994 936743792 634585960 520463455 48492885 384343198 634797072 627068032 57462451 711544363 636657033 480919652 178170276 938041400 973411032 543624562 472485393 843787086 107758964 886836279 81494903 594470857 746147419 257387637 399584220 363714068 19497320 509841735 605041415 782135541 494821670 781595473 767446947 572951539 530983822 330461609 766156432 617834473 992323898 422996208 598035032 389348207 337609799 609704296 456341221 725399616 725518340 805064625 376764061 996449929 687759817 834188295 969455069 214763553 249071041 200532438 479538309 934331414 381448706 203983695 220978450 120361325 347228586 856160409 296707901 918759083 449018020 291812644 733698749 870934008 326727285 187208451 999333332 865415500 598895634 96403926 992567267 453472626 796680730 848209974 19155521 970017745 869288182 681898889 298625518 935488284 459175832 579957855 565834770 617712097 670353842 199483597 934536314 987289966 751935456 482967283 402517245 975216931 518856906 177145711 179758165 345547166 809809196 119573254 348336410 28571947 946178430 827602551 888737533 240353117 540823658 111764461 45339412 224655602 832077973 692177540 704290958 26677758 14088801 900577430 466140401 38448661 175165465 703257639 792250101 734361291 583955390 999297981 846073891 505636527 635524916 6222989 37005011 533861673 756264547 46347997 339207283 453448915 740749952 922859492 896495951 339061470 61118152 832024426 344057866 62458081 560853070 891670333 666178115 240623585 838372992 431693438 764696471 280816725 68195509 666950357 826645588 850213931 8748549 248113794 919354617 281456702 752503653 272565932 148728726 751536906 108314033 880878833 482144118 194599878 498217750 16731216 635582545 111323428 641116233 294817186 556885315 115081815 131676242 679682537 363630501 239360409 331773199 619444269 46794722 436915136 594052792 474621666 625910732 279134237 347606004 839927965 531492789 331789068 391399207 481490625 414048333 649923591 379647868 615097266 71328608 877533452 634562695 28781002 843127107 23970804 816791019 454632815 946607513 530926594 344250152 350680244 134896034 34185559 960440217 10774711 306818991 153321528 814915852 21749801 522191399 299766054 312454429 508364378 414895437 341357323 939733658 122722602 225888683 567866602 316876913 27357629 601398129 548202605 11439335 136344933 567758604 207286784 847049711 501230677 749278118 942488621 359843101 539807869 689165475 320627614 473075158 694853442 514683341 178370492 569517188 594230157 376499571 733362059 859004509 124285154 804686413 948420343 341217477 33029016 118964173 505482289 951836844 266484940 89202979 582767086 975252721 581640925 939435125 590135708 193546014 82886625 819272217 967074698 211550000 908027865 523003681 74374309 693555238 830061063 212091576 852369393 217206621 482923829 467253048 248854795 911639675 541540606 864953239 427389326 454549393 441837573 262112511 106031019 699370571 2526034 202507777 740554115 953625502 421176860 353735882 407413009 797806195 459864317 347253076 35579362 98651703 946138190 60358131 909131131 275893514 455098419 898079475 154047397 847788577 383470747 286215465 430986454 521455720 634196472 2253478 271332830 908502447 955823542 695788556 457563704 292239356 483196286 32933051 253893901 292196215 447462197 339422052 932650779 893127151 211920452 365290911 935378468 700434730 563993860 835486434 270575413 670991 273629449 278703881 531944096 432511669 431703580 101179408 835885915 398831497 379282073 622517005 720928899 863191590 326550578 547691437 595781333 631365558 50699753 313558140 581281631 978539957 254935538 754746380 956543756 279871297 992898542 442933370 228226976 536290234 729094498 298089635 427115625 185432150 253990046 166851086 772801890 110001022 334326999 910140488 315501434 668343755 45071081 280903545 29545819 79897160 114645686 278916393 917739466 74943102 257600225 590466961 724301791 676952951 772649434 141066953 225314634 672697272 937210642 104608943 312656066 978805904 915964948 815800529 182406889 639897055 243507071 962522112 144738846 596658815 715293900 477841914 306529725 196314163 232034788 603241970 972544041 610798822 646610759 51442571 847940968 156498585 329933054 169969810 562966317 664826320 538657441 68273217 983445673 576074173 572737719 494664603 771795796 952929340 817981184 361312843 750459492 143959742 592934095 929869885 567246631 852703815 57119247 912292052 813893744 660656560 868553633 736370504 684656274 31639752 563765601 11384430 386774417 340012672 6406887 179658036 364197169 268913549 783656290 694075948 579220972 471440147 813801780 238422348 739867504 593924086 770437124 886213707 432618153 574568737 827661237 589926628 199138985 349807175 921475144 782664859 713381549 639239192 706447639 950391725 449843458 967036726 351126800 147481296 266440460 601873712 467949106 21259806 780958684 732222556 903219787 535927362 495851876 152229594 597658968 841075376 707840644 455817030 723893219 250981156 733497421 909800180 370502920 159433237 718518531 404552538 243656556 874872998 86609176 350300504 192347419 995183300 478504229 525516029 684995917 943135202 758529455 587663341 142936626 354027410 425365386 881144086 649679578 791214930 274976465 506812318 214954908 888129972 11257900 635647235 976783204 98102110 193317513 583704024 8906982 747724267 537145772 564361630 813510265 80622464 765524984 78953025 631012876 816946484 428418756 388249035 668185245 562636152 567037370 594207292 821507003 380900287 773601440 310269889 546261649 890314562 655230893 268909181 953549132 492346667 184819500 205418564 897395457 952816063 27509597 423333089 541798207 846197147 449510762 809283262 567636494 422335300 8703017 865092061 195386481 410496637 357178293 36032159 697036569 453160577 235011194 398508842 931613243 209130034 172242081 343154601 611217426 528026285 328587101 377523634 55611372 274785062 969715976 294776727 113962355 735829926 245711904 170506619 546783407 343952242 879035579 304985940 424360631 150413274 386180694 963551557 331365594 463228082 782880689 785439136 474274012 977099557 675611621 521552684 875177013 757680868 264157705 743502625 588042128 282910526 582642668 881937639 305960343 47862874 476361607 47606431 823010783 484270509 871744927 661250483 105649314 647688025 894432627 49698527 61772397 350909832 784601344 42433328 777407165 222006075 845941281 166530294 209672170 188491470 846574184 432478655 145911521 666121600 834301102 757633850 726400903 597149254 112437307 696039895 99242669 349109018 648242046 621016681 501024256 840910673 85388009 999609883 741856557 103714715 919675295 755562364 63227794 607644539 433359942 856932547 300869164 668903709 738478606 344002630 352054914 496899706 528140436 26170755 864068198 367276904 286760164 863220116 63740497 603805840 413960364 904831174 440287609 637181579 298510074 547431388 681221085 349287052 453466088 476777143 300343882 440217102 671821825 15393526 849275241 792941986 913275510 893958179 283971244 348065598 416943050 487873576 393658354 511695016 179864959 288305265 686139102 540743574 28783835 810405130 696246245 589851810 824796205 106740513 236147606 24703665 190834534 886712228 2691289 864504441 418925400 157246187 107533633 228495640 504380648 670744951 101724835 13675625 768267655 193349305 766985127 742967720 825205720 743543428 104067535 407051280 127143009 975617532 841182968 747523164 335219875 634637054 15271483 397217310 302093723 557456879 788512223 476742839 855651927 4313745 166978888 79787829 314886577 401084811 569994452 245956302 990285569 275513160 745733817 125333294 782000284 571471667 409369190 857137142 756297113 341694819 835155 438511166 809240309 469119030 744349568 370223482 666311743 247542509 128756078 602650249 406037544 364302726 267233810 251396518 259317143 242794307 371799467 873208044 989967968 974574372 960334029 753408182 751059291 964277313 676606936 53401896 131731004 503756491 246052581 33318395 822962378 646554968 207795261 509215090 830787891 502220633 98244542 68974417 55833422 797916015 393633470 75897004 722139578 891648581 725873341 605086604 472707715 732402835 742715166 775644742 686927112 28654567 857364428 40623602 325194226 257291571 153381445 430760160 686546783 154035783 962561533 377138581 491248537 961373976 465061053 497747771 653378335 912455704 680390436 246208717 965852913 706511317 607929014 204274843 739023470 104558581 184389211 397220583 199524709 179285844 405013603 915736094 241595539 770255717 983611579 816690300 13812801 763315941 294732496 601887142 924464921 558646912 137318425 399317121 475399317 953562152 91017713 703941624 857210557 22802232 115213175 180022492 335527777 284989520 104638274 102074445 70968716 58153962 153953804 673153800 759102732 663725538 782285696 430182423 893774322 570685929 452509279 959350331 646483325 416003505 187580429 14562947 197797710 746967553 841905542 780061986 224726426 219488009 770980372 204892267 774242074 672828101 99330031 956893633 863838068 251024349 919939850 419948870 801229244 810657781 138882460 104350803 96952097 211236920 822610053 752019826 398751300 167096338 912306138 54335047 798538140 268734997 528359758 669421070 630242841 702190565 237349998 750697163 386680246 933425492 498730939 977998645 377072506 369536709 443459644 132406849 133755151 574039370 426013073 784663850 248914743 246943643 533854570 666435214 65165441 64462208 165606088 432949297 57189755 794816600 416491210 854767266 905784851 544156075 813441872 132522610 828734014 895120291 342478781 946589648 441443990 802749008 864310102 990826191 16487596 22389589 930613894 415503288 768441324 33654262 645562998 716590504 463776697 671802480 145762190 537594135 118481810 955708882 947823066 516312987 227551447 758159017 905667340 456581833 994085793 694827180 892815749 973969251 743556672 474036207 554538166 520249749 69768791 863552387 233313028 232701227 992519297 840734427 301254104 643266350 521425764 392383990 527369392 291060532 364256670 935326386 978151300 861197489 522841875 216448382 27411581 898838219 777216224 742086622 435468057 519845007 182034371 441099464 690864910 412930904 43396419 13711558 806976557 323514964 60968821 223155322 182567199 999627274 794941493 170862666 942145626 133371173 560602868 47800106 495865855 566090350 618501325 877972506 91961613 819068494 459185671 935239708 602112360 980791701 35296972 206530619 876249532 393794901 221104377 935968958 702704335 825298629 593629155 760806870 32996233 595386388 414341647 803177621 824469402 45774811 711961222 459826096 562427057 711644563 148903302 946627995 437922872 160119788 867397725 922666970 226850431 821307890 678533366 423993079 103095415 211051008 734680937 149832357 743368392 85697978 997341036 340310247 545617903 535685923 359149920 370692531 316890627 62811386 858432357 431613740 554351310 197403052 545841789 301700916 407145925 349149340 829731007 954781 123356010 736890466 209916227 232075501 941377165 876316391 877641621 287369150 935668254 603514064 413539135 752122890 100446397 394922257 421279010 182681398 145725471 31406500 760332647 287580682 887606646 731705430 927033518 908090322 867317088 520196941 637723818 591854889 5821869 61123151 773490316 435166953 440085373 364449959 250290770 475212099 50984660 330654291 595152459 313728511 193644605 391283723 904476861 705432982 131317775 381007582 532772069 401204550 92589743 603125839 895337621 847896931 41098716 81543825 505578718 50735835 884289625 459222886 111204051 897864150 309966931 885059180 460154379 334139228 614364286 232932963 421718826 93587695 853484639 350059049 702605374 650220410 460779652 691677296 639901303 73519509 853057780 89231300 249244020 866724434 888045855 290591307 205020802 988762977 819286465 324557218 367264633 921443273 677210470 906417461 892140488 155540930 435075140 556380495 153481276 692409070 401789887 211605206 381719700 934419881 199838270 547568933 665329779 137250037 959719341 278564782 268449321 405668057 441554195 500529719 460961524 199204361 293108549 919108019 364580900 196396665 383080058 963792054 373580933 567656151 673017209 493480538 182073026 542491519 188758279 739740624 536621947 294299648 984774761 895504389 188197839 822599721 509680947 408692433 251373794 113908173 412082108 696597244 721560895 408388401 339114205 681542470 647287875 789740290 437466530 882909709 424033097 643460647 329485746 350476637 644878197 381462853 384768109 285044667 234521431 558392151 295108075 731039574 906469093 795154224 424260201 504588600 454448150 717218146 909361121 436046064 430812460 567419164 673733694 377762974 409560327 779406259 692594156 204744797 659343299 459060553 478688050 270616680 120016631 915541056 606513229 823180378 546499490 512573359 293304425 983594723 720372398 298300233 982152178 578585868 697247486 865322595 898614454 679970718 240928878 488590038 134682196 42227537 739070064 576916437 809216416 703985254 780722896 306096039 673475263 391669137 226802298 647810303 236863402 129874003 928366098 817177745 306396752 244363612 11881268 810182121 344861570 136402293 373142177 9053615 924161005 452053905 702419716 458473399 839888060 855575398 696420972 189640586 716738659 181407936 624354996 630678521 327161713 486952758 866478539 637802510 639673555 665134178 764754142 572031071 182509775 475090034 688794068 60055252 511083758 767079632 872917239 815821201 793834453 95985011 20585738 248343398 999849496 767755497 295962501 373040893 198459763 94659755 965588768 93923427 466687111 442649454 474322884 144691899 896548530 361551937 499535087 991586388 31272576 516132275 495555417 993528648 720228447 175989843 85911310 939325061 955217147 820903041 21293063 824388167 212886333 58327856 350274699 145216314 817373598 301149508 867923155 805656472 58074313 202047152 448848697 988134691 558740557 529022465 883489030 656633838 349301588 928609609 679581831 210664918 890231427 131412352 141974221 582623970 491537679 107841852 861969005 174345139 481397859 649899570 78860786 261820266 675833490 915612299 627663492 877703960 970346929 349210567 952843695 860554793 497167194 85428971 622377718 81755423 515036616 226193401 1180894 285135068 687139271 801952481 316576050 472563702 77596925 846913951 11458023 151164531 691927818 476366083 997837067 496391519 127444984 963375272 722873026 909677851 610288270 539682674 793362527 646527695 227118285 200595661 241565532 470064875 993810954 573955333 116561900 767813444 947669238 76116961 723117728 447398372 311032164 723675632 331056492 686079052 843810369 930388532 27755272 760710794 340699742 89023463 702362768 904369939 138283740 321067789 398795628 248125192 97063324 757360021 351785663 884691534 856292553 27221211 112067356 28701210 104346171 584950483 248884682 716782122 648775562 205237850 94622799 27049414 469636254 537959658 560910007 944074704 289603119 430294748 790020675 719675270 805894211 410666388 930752663 106194962 359260878 675724554 520690105 403712681 634905135 239872600 335668228 114833466 70328108 54933840 127154293 943293989 928166571 971859878 207319193 124617843 491366916 85175670 654596467 181280919 197927976 819244773 114838114 51405943 56800298 713053709 827524141 943084825 721490531 984450525 692185294 497637095 456458998 937733875 937657317 517499579 146857102 605887861 785975185 877965343 435692316 848356994 147714082 235883730 634491441 353646018 478504798 431779358 7968984 699901630 156929263 306050565 958473788 936254843 205456914 661512719 86649799 34477521 22335313 328714351 631421973 453533291 391973500 962907401 920037101 834683294 667866885 792316763 794235218 928179964 571606068 945905260 691633260 226576601 715253291 287514709 54416215 979332230 760248783 671074597 851084280 471075602 974166700 192782592 803091044 879980763 480169281 196431376 40123553 704422144 583156856 760434723 627627491 495253203 212301595 633687863 152821543 777638074 579154938 275595611 932982153 515736287 216516900 382502456 105560412 696984099 96849593 39872899 936239045 493961634 233787479 468767770 811182169 533035905 313292155 163058396 230204434 609139220 644848574 606429780 159924547 451702521 181679087 925757773 897795154 96129797 262662651 605629086 264370721 867878838 994403129 696967301 949146960 419907782 401879546 83626507 24738269 357800034 736569753 312439319 244314848 538013472 623262611 732624263 547492220 111330907 606709951 976182931 501261285 146896111 661848691 704924787 207816207 613451431 506155427 361937335 398649129 579311844 362364217 890741589 379007979 554695519 583496927 965135080 523540129 440613653 698680330 810905710 787838781 372927275 64357357 739136553 234102130 694358006 290691299 166439865 208504407 538543689 120528749 942794422 531627303 971494090 53292668 303584811 835293840 191064135 124466817 436259215 987512919 798635368 717904859 348857699 959777620 79037400 177004635 170942578 114488611 685309786 796473067 290482359 816533002 531499624 246318753 610333155 574339075 486956090 406407738 122339714 87623655 190993363 380361128 44832131 173457095 132288325 571020219 833240433 475025483 620271546 548280831 741217022 674767573 512202878 393829967 1440574 336172186 692338134 231936647 33455961 476351532 643507313 949856433 48644077 931133082 977093493 181657402 649454562 100732817 760397029 188783600 496302255 427715241 310167263 50066106 26017522 358493087 841230483 909529362 109467651 862618878 186981048 488769599 3902229 178815902 42860183 249132514 971011524 544353767 469510666 553010506 293442146 632618420 846047328 356237543 746762569 741983924 92439842 424065618 86057908 505082597 765864383 926113559 22308704 575248929 233961626 997526448 515427702 139731119 267978877 440283944 979306349 316237659 480939860 925969378 545479283 968290986 514152096 431915553 622268768 773547006 763079187 797429231 728976857 718867551 745362080 955559280 572192835 164797290 59231873 634089984 323743421 966276655 916653405 503408583 5742393 389649963 276418202 476488898 757337503 975159877 507856096 521254978 431262195 451114474 873571427 905959995 586059080 381053905 285931675 814632845 916265395 839885074 682561746 259030761 897660791 327628094 178181190 370860896 192128510 221409968 613204609 573528315 883901562 776717449 568044087 502215069 624013489 619975069 748216273 238864461 398643473 350585647 529737599 713954311 171437189 604602054 53538667 558069393 745313164 632532986 433137966 456681634 864715576 864918862 138214267 262688356 792283212 355468597 79012102 654394661 594475484 388072261 225396486 547265593 759972257 192130508 33734177 675463169 193854229 432392147 224271503 822691857 371361253 859588304 915720589 701675043 228479632 927838749 443144743 97068239 189814344 813458177 898834114 998217591 330364286 849669520 366946574 272847651 874404148 622663581 495812087 841597234 753940333 422892122 853852119 173594858 200217153 341425132 869350423 713113674 79202439 727700760 525934587 623407061 536315919 801076297 431642449 16177766 810908068 381397875 356970234 344611156 920225472 75481139 775972310 663559811 716728438 462778657 679205951 225878761 282054034 319913480 27318755 551779455 857196401 479334720 263465582 299939562 73104708 874930271 375930388 154136000 92646637 385518454 259511711 778236894 202535077 796144965 735968575 132379757 563184707 731598846 828613653 505689253 474135657 596842456 259709480 554018511 698688509 247555929 116045635 907078493 567693176 838126278 659779240 176526431 973797348 521458297 251982135 535889740 751125949 103268604 298932683 123808807 559477570 359275461 56036742 54963446 919493933 996405119 62732081 651990867 639252902 834391856 876242942 248097733 793076628 723449831 8414933 189079933 705726091 627657820 291827332 321506209 371316022 159190320 869694383 761830740 342998326 298732784 810797690 736032788 519494310 488393706 348864878 828391116 795139734 727166686 449903118 636464204 706127724 194889472 779428107 456546211 358894497 827094690 819659971 580061814 740799681 978772015 354014836 545142512 617830747 74369228 761871592 815241057 284250692 104529737 119911261 584098337 558234554 636242962 99912507 189717221 481240810 584389047 812011996 806426620 166347879 507511346 591684100 378871697 201520590 436892161 582833720 673135371 372582991 868056720 304627441 316987051 506487821 415209235 965348678 494758643 858125467 518137233 813468038 359132164 632867434 434682773 462591345 196298943 462747445 88076140 118717092 866609082 185593314 21060437 42320541 532774286 966662127 52045699 753299291 685961629 245851628 633151648 445952316 507368374 713739486 885746497 427111564 742332232 412725280 731172698 105687933 514200453 926916449 352593679 865696084 443055264 971735723 3154425 193078693 169353557 545185125 363636201 372220326 982352082 844262112 816108416 695380414 777847918 279581803 568917515 22647058 877108247 510507487 255154226 733986128 326759749 644367910 759952005 397023528 158072586 940960091 885841474 700038695 419279251 591667645 80394546 335297209 174645788 276132317 871611748 145941803 717923404 735655332 161412187 777352514 818347159 249054740 557748199 734413140 422346377 389913142 563589883 253441562 48357167 918000330 10221295 355251682 870306613 982044709 225428046 523629671 260019437 831273069 740293297 821920455 807018439 635951804 219451477 436745723 131836576 732464395 313855080 943767183 362866684 150225927 339761912 568492597 76983340 548706422 320204012 448942187 912357784 842132674 434736826 372956329 983671067 803528525 319288206 522956628 873245401 218779027 387896576 941341067 531771799 656321721 228177511 753598877 309174663 680586047 915794261 35733662 832700532 970136493 548561835 761007525 303557507 804323008 814860249 489349349 441527925 196934586 364277854 278763228 59158905 606891726 706830768 983663812 824715395 185783302 274765388 709468236 366595577 510460005 903559495 649425326 635146453 54618510 193973467 296834198 726188948 657755517 736083292 969882648 556276026 870256607 908886821 848927268 365883132 190181826 625423545 340245661 173205193 899114001 110333409 786989993 202594480 372350188 919809617 898230868 903303703 523157996 288767245 81468219 231294907 457472723 9330521 591704533 463991824 71466584 129342637 127881159 764851197 203594656 162310885 371926654 553962967 664280914 53266600 260016776 833560482 315157853 191287726 915386014 739709807 477079504 281818719 649456543 208171784 547594972 665680427 509064633 28850499 575833565 137922970 319876849 259075604 815230303 155414596 877444884 606911249 802897183 994263874 881313580 835921407 662922946 823319742 291112153 64449722 908533654 725269642 781154815 928624328 892667512 989666722 898005098 330718699 548203871 935784290 100278949 673028666 821040186 625390752 144075302 783684948 362777311 30213701 31552546 68255888 494873421 94867255 884158806 359783487 771568534 969764103 796473604 15730922 698799389 693764471 427648151 316449859 97917663 656072244 577604792 744244634 938220851 755524130 520809874 22755425 323119918 493264391 678463713 586815506 67005817 250426261 453708021 252797735 307922402 478682335 293622945 644914958 249787772 788942979 249096882 533620403 310699950 77898329 344669610 127913548 315376319 600060036 512066126 309293608 199502943 654756967 941360387 905873447 906153577 763677462 835787378 737236341 969906773 708798000 64173158 726544754 584624049 315768994 748186581 51378318 713766706 63932193 215826337 171900066 133012914 586337139 954946966 753180887 873674590 517585486 657799434 884305748 79473704 985636680 817750417 555667893 808596072 438086260 585808663 11886088 890317777 568530989 802691621 759269863 429611083 521192547 431062224 857289652 602002707 197616397 602013420 661706202 126095476 516584114 137183885 86176026 23778508 571133426 769020345 813074140 691797598 348813633 6935478 894310569 788664883 177134936 272423023 585605670 63634431 820965423 834957073 994872165 166965990 777415492 98158130 396746877 943597916 322018629 605765862 437397023 987234348 504722187 156925852 944477771 973067421 69209067 402558518 599309350 645051963 292938055 870431990 129764085 324834731 190310538 125947128 849233721 174327984 170605403 656217014 558430998 291560584 337566664 533919867 190633683 706232482 410828228 900990952 876775248 398811705 370374181 407360590 503872383 112506760 672120205 389475827 288599080 71129091 873743281 752615386 649495372 386583600 971641460 2696121 763177159 270057080 295698257 255411109 865191625 3100746 314426498 81669050 249006225 596613550 12659682 342273545 125852034 984847873 879647991 993131418 559966310 453357735 932989434 875691461 87637102 64435695 841117153 695166146 474469261 306589882 53415062 303134398 961248476 866484120 29600180 331445875 221761422 707937059 731821826 663942532 823856473 102046697 560400584 35272668 857559397 635529926 665022839 332287446 798879271 379443864 261593165 473297751 579273022 989363299 402040093 940489852 309856797 445718996 329409815 528097584 955259157 740196405 806762628 932879063 943327672 41381627 340569167 560717083 671088574 328868138 388458109 940674270 295142056 564094426 745293006 800037425 287837911 726074870 149028712 886250611 145502303 951837967 317940800 876286272 551693246 748578128 55553869 822830273 823083900 879080372 982164137 556570226 257373167 580213350 432532348 311577049 438652347 733979195 920258478 550544396 700753356 406327663 793368391 360077230 78434159 651345427 19127791 345982525 233826485 8555312 158866251 819246968 838010406 310888255 774860909 826987851 887155389 743476881 907355598 328063354 165380593 290212391 586678906 419307061 848031767 17445628 239391231 259009792 122092863 979349757 768638691 630679181 355207709 993673499 800467930 597203418 741775669 672205623 407062664 545819628 94082139 881914142 899482651 920000312 940773230 874061351 22354470 415427001 92068784 623727375 325148772 487481890 616227842 364532453 886908945 570326046 291886688 158802242 771289499 43560609 277088733 345875830 839861190 521630751 215519838 725746780 867520688 43530709 715573791 853365666 233795601 541907291 902129906 392945919 326595360 678062075 873623721 334370314 618940571 414022621 795600120 61671265 940264951 816944516 245931109 518601132 465213156 92068421 912126132 374150421 274172459 349120060 30874480 772771888 387558096 573584155 22542826 264970962 141352505 853516043 515803 447798072 826460547 990262735 441444331 644409345 656965845 646382128 457811432 706272680 34229077 732241709 920362175 276351696 986600591 345341301 845149676 95535012 944823384 486236776 624504123 978676208 801903546 415433447 447562568 731035827 536768208 382491392 38167920 403532569 616927764 347758735 252460997 460595651 640822526 605556636 91686964 74391927 666711548 799223473 491931236 234050062 2398341 516769577 903545172 835304939 769175512 666710565 578384185 715055428 115418757 673383996 672469303 656002836 555404382 245869382 329660853 648878687 80898993 180638627 292557539 100732272 737204658 521016333 514439729 564678784 143575283 579896516 595007947 760873098 339081675 764647463 695593504 479218333 656563782 854418878 922503476 930716024 245479176 84096136 402538712 947136197 272812746 747461008 545724063 927208527 126864816 149667522 502369930 37933720 355588205 751800916 963743423 785037049 864091011 313610558 252223210 421770370 568143022 353180194 580615264 595490609 891404403 890603380 780885196 942145957 299316856 926894054 779374070 976588077 771579331 937308984 320166102 369875707 942660491 809101542 860156127 364805003 334987890 857745600 591081590 374924315 883101079 756377426 90998396 39042349 963369887 644031185 286972771 934888425 626577040 178815770 16513444 544734035 173770665 409531350 768692580 443140076 160233037 314849539 785212485 417435164 336316842 131879550 735883400 981720968 771753084 999369462 246961952 218019099 320673511 281779111 696909227 998457858 352153174 850937776 173107248 663332558 813059848 821506389 983370054 596624277 358366343 301108580 441940488 263634087 128645828 128115280 273196152 752190284 656978779 66889680 656145289 668771337 32620177 962667856 536299877 872278927 547006076 826400172 269407739 727380117 296143000 795438361 518182575 484084955 388579108 346139831 772992570 570693386 93588932 46044352 854886787 1246311 785443359 922410445 254496793 461149299 496467909 202579530 984246147 940374853 545354707 265761285 204106118 812039304 436701475 408595371 16809915 893434767 923387768 844258770 412614392 983649908 804615134 673859577 976160097 466191182 615672179 914351527 232781961 766081115 959454008 121147864 315093156 38195291 121355457 61908869 867025851 148063909 759020117 360415915 185823007 134105455 182955306 705802802 662433011 113771590 34320936 182597221 241778539 713274328 602709265 820512646 542478081 382081303 790111592 692368213 927997504 299861579 519744630 252215843 258984991 143828748 6417347 510804173 794290577 442491562 781445425 968705922 83866660 101063202 984010430 750791372 93537365 135631831 435266882 309953131 200908178 821345403 456436343 921616961 197085369 895965988 728838712 645014020 778200512 303862036 34160167 993888236 371585199 78637208 286922551 18107650 624041723 982740138 939922361 189301330 832254993 564204977 989053233 648753767 905099062 841221269 39223050 797926539 484996782 719798913 435645921 823558159 721464704 970859571 22822338 239254499 987003946 705825146 491213142 796040544 183484687 25247194 817550906 157149812 864890052 179099942 802355090 676060634 751837416 170938990 718074358 24681386 584516940 554001290 579887184 991229111 711169786 11534467 693778624 157881242 815455668 152870251 669788038 622303647 106277255 16553444 157580291 432173061 811819661 993989546 304812277 576053558 583941056 953743914 505141298 263046775 636292398 818434242 358490102 525261722 937027934 68238447 220392291 659453294 29754019 543109810 767575748 417847773 865366957 378035913 483817233 142553809 172396231 644973527 848766205 257281545 40504127 796741358 908065636 674799446 881930745 925767272 805530843 314759447 683745577 228754560 389096858 836271156 247059619 292060564 93626158 739436012 167089753 561854696 291182515 943496337 777113200 613857119 613685315 669903150 66172683 351327347 93951196 855021433 739554177 940952244 94083186 516301450 45294853 465173025 653531729 687553719 193402757 5075700 498636685 654621631 666938918 213278252 427850515 93062148 933704123 144026286 429570680 853696696 421485393 644184498 421882378 892942414 708684036 595024180 530592552 989106786 97925083 315179556 889110677 8531192 279881904 209140306 25859847 351055648 862023515 346893078 801916396 614334140 716839127 174118553 778193745 494931189 941751167 359875495 16784417 827584366 726468321 814794777 869486338 892794634 384958518 755068561 253171168 547856108 609545354 228226014 776025507 751683144 889059245 718319274 506292293 484449210 136024029 915670162 640617030 236971162 492770654 140003874 591828925 540509978 693715202 59493764 916411235 346546426 269404141 984864132 199159693 733410151 131726351 552080044 263356648 140591790 876138091 682271797 136023259 148734177 386498178 770597352 807853689 556699432 219359718 615087231 353157651 274999693 716831503 927494757 634540162 431018642 359612271 237350424 954863095 330270505 770008004 610757799 437113909 590482271 315340344 666185441 147555979 385240539 915548722 453492142 603961016 892904161 898952500 540561872 996709824 616724458 735244487 90513216 311371841 883561594 202040605 58685239 189505882 920970804 20097949 159573505 72204944 411826537 292125517 717703106 790051672 231914694 486020978 633561221 8931021 392242524 532828194 336737113 53336131 489553835 841227739 637138574 664844847 469318575 465385402 794436315 79890395 588977574 691002717 85583347 654058924 918059101 501924032 416622458 985267774 30945462 222542645 257852814 451855572 50368903 712172307 777169462 124109507 950192887 246187746 871223781 300709923 341458557 785539850 415753851 839505805 913043046 566301061 430176838 193207695 403117840 660845366 328842542 776710983 624093884 278194040 431910458 682385208 995473870 410143164 978001654 830150340 605346968 851342779 18958794 11507427 418690231 514198322 491995839 289980382 70487139 802369698 312884836 555096898 648203925 47950309 397625666 117465537 28706441 143965332 100456563 633266590 241503393 255230093 875005591 914856631 980277049 305815174 268041969 989226106 112814666 2001629 683047341 968705819 576492742 419418342 575113733 424321951 91568471 689458040 259663502 892133770 984578992 968284747 780136941 47929902 846060047 684889677 907791352 787281894 602542882 810794354 192004623 259291392 987353672 703459203 764463150 497204560 70477948 83581415 251730512 171791633 261761708 928654024 575814904 90836557 821538338 580319608 2628748 691017393 480810424 572461141 796317162 191801279 602527067 622846749 615029887 807734429 177913383 882077292 884270662 830837837 349911927 683948136 877933525 341709026 103805378 228986513 124195688 971680895 266100701 166425324 847575653 89246906 343963769 550403054 915907371 282670605 970031130 362629099 321854445 738566251 808495865 804166360 363461303 980026709 900800805 550109983 982773533 537093915 457359940 384589261 752510754 917117530 304392970 273694594 335950807 345824137 349574517 510625925 994447041 674882452 873438334 319462336 523688254 752068649 899138978 197733864 817642791 948462488 950804882 914136269 326831589 359526995 817677802 274600301 822775153 82136864 890973268 906900070 622650110 841222321 137650611 957804428 115364483 188323335 351428567 881855310 557140648 535796353 607284966 729937587 385995155 961350303 835459629 311956337 568032061 944335576 234243163 359917861 222812329 949226974 138412597 493463010 572462719 308484826 66355091 478855151 17744642 344754190 193267896 162484174 587761513 647888723 377755201 407795884 593406272 314452186 159849390 126990649 236043829 745768001 164642619 232940095 514064086 544154028 864525135 433110416 209367000 904607833 398429005 79544500 124358877 821620820 808357860 538098589 41855018 299851923 311268261 151831576 353741282 830772305 668631727 345739736 714244291 258719308 733122940 823674646 91183535 617316006 582709651 35573928 546738362 808952129 155525963 176878170 774402097 740575240 299571693 927879571 171153074 542488222 599609642 163599175 975914581 480073328 604230854 234886530 887238380 605536748 923659439 101522865 775227628 371652871 44920669 117595339 319725401 515857128 253873796 177730101 88178861 8498771 899032925 586972572 634904595 398783601 784805545 666323657 17050820 707190273 260429584 107011065 265153386 871310687 642348967 807924894 471349571 378528760 334748295 84312376 608739 218578912 283631908 416781222 682944403 522918280 544274251 383564841 65978126 807744106 732183660 285344499 817029844 385072480 379093524 888928586 557987859 625350411 434338626 214032206 779294963 489924440 83492815 74364880 600966768 611797123 128032960 673736005 337754217 330117537 454619593 48907441 673667701 243140304 355197581 472328492 887806896 167270124 737571941 304675709 592975715 922192450 961997076 962940762 612730597 982895614 41364399 672992050 571003329 447513187 690707916 892231687 162986211 7298537 128490817 130347286 592618248 228646522 923390299 235486209 119035128 142138006 442514669 533632504 721201809 720667529 597285410 577461750 199830172 664642805 299139889 830973848 863573753 752738582 821720811 824130374 302581673 218949122 71562458 818590506 276101111 178719304 661277459 772886518 423213150 13614469 735063247 615177780 346497971 376393018 623550215 681016196 692886345 332068203 609681230 252666730 102677425 524602221 533335285 8314057 19650495 863305272 899419798 442613065 502764565 985151278 367559820 267449704 296570771 3726591 861108174 595430538 983781735 712210005 887734407 30395463 697536958 457212050 212398964 455950002 19785921 298487613 830627359 306420407 719708768 705697836 230747758 270319821 312365569 566226084 688020 135505077 669794206 886993147 214975707 745224292 8228817 51315681 376570099 673329161 461351586 309004078 494060941 137369124 26144398 819897152 255584570 305035101 886463619 868367048 447920314 948485364 973204251 362433298 809769655 679843691 496762443 862292649 610741924 400344797 608393949 855538042 530416227 90044729 195431839 966269325 500752943 802049545 626334652 593176018 604241759 694222855 411873986 386500066 329686403 192863374 288662616 572690613 695545062 565399268 953365548 162315921 530974838 876580451 993665438 719964740 277950575 107340083 594964089 707887942 824248611 7774710 257435794 357755110 808735641 692947868 780059014 445265681 813782992 350589752 20195465 357510977 685936903 170702166 486438168 687207657 398346217 860941931 237775913 190459832 595240980 972516458 435171650 928263609 506532467 100932228 616015900 170345380 554514106 755201687 751900720 321895882 784339943 897841628 228600089 783148841 693982350 174277689 731990741 284123891 940546537 839561850 780831113 12832397 827460377 910511579 587268016 512958972 245590066 854496884 298293944 882508775 863354650 400977617 314297889 341499145 328811556 501929339 731902162 994565417 82815078 761861169 42308150 184339017 652630229 684963433 828597852 559808335 866697860 99210981 329597444 522971712 137886044 808472263 5101685 32898258 245711050 775773078 279333914 307855508 561327614 707918261 552330104 936191093 126817003 473555558 50136783 259902789 300045030 970652065 265038477 908341064 593855977 426271362 224018444 482790096 382206043 770787470 749285045 837433042 479088803 467818624 345311148 911407023 591976126 323325057 691633211 315156237 548742242 635258705 537184100 333834473 315538740 712267024 175282103 609679812 108434046 444497742 43313473 1890829 882809587 71841463 772848521 75313524 69179975 153090065 459972291 413896551 749587066 130915937 455957174 460621160 247849613 228178023 683410079 751320486 745356754 259848821 792985241 880858345 180462795 44799588 624860675 935866620 311345445 803484777 610948893 687508539 369364327 842373332 18402039 975163421 335777525 3086398 417717331 984517390 435083314 312793675 960601124 847657855 574725057 328476436 339243478 578555408 853297586 811120572 602936292 293272466 591748260 799151307 653101618 402930057 294075030 917092694 964937965 497066457 826800744 148836827 28670972 819811177 911600828 813635633 775864054 251362304 592614538 327129630 943300953 921766439 463663799 845065026 574723865 450443616 948198518 460224353 574385407 829089099 527207088 133162147 596919185 83584853 697372108 952465580 94772222 805978324 321568326 599096521 699151535 655794941 646281582 709382541 10151092 542506340 431825312 50511485 628105199 489049021 893642121 289274283 679288602 605702196 162781093 533544305 74145529 641878484 906879092 692217173 643163117 336598111 116525304 725849793 428088453 713188149 158422307 789512708 865690579 451164467 902612813 583286047 704003361 735990402 768100479 966005120 755234583 591660620 824220874 816841619 113271445 264638304 900491624 7533036 540994587 749290557 92451119 730596750 998333616 571520840 668460415 710792135 418779240 178192214 377912059 949537153 793452680 244753878 574958658 468267994 233874964 701569042 481203132 784870 224809004 772177979 640887387 471175510 277892862 636171544 191852761 453850118 45331231 8308667 84875266 468052475 991604724 40682175 434490246 528855108 780768318 647478913 690015997 169654381 812694525 249398131 1052449 820669328 237667425 960715542 890144485 497681291 97455172 381349304 750196470 645024544 319092872 911461731 526174955 602181918 752859811 665369365 7491044 409010072 460816312 799200053 471661998 331848143 386711290 129388750 854046024 719035747 782938969 750633478 991701899 175063686 627261090 841733933 825925516 797879360 24303883 50600506 760627132 850342111 474484180 207102976 360325116 605943421 247328687 516943188 546731595 962129195 225882107 450498230 183830865 332770630 779676915 472524744 605843806 44301584 658044098 751280731 453396338 797798112 970856193 967305558 429312420 192314650 744267578 786373762 438092780 790561750 17220627 219004232 471160354 77964263 348988590 70929783 652726654 352968429 740187415 794907284 917649291 166277749 475963617 905472318 595984454 750488230 337226647 509716584 464239147 194902609 450309186 510650041 581584063 238511850 467243023 309405502 14281919 256660048 361941410 267019659 806130199 852308841 992024392 24240688 992586285 119136159 427762735 148474165 775842502 265835167 847349118 762705553 9057560 171222771 128119702 308041311 649308203 197685803 520867985 855814277 730144971 128234203 66591307 18664513 448019194 476042212 235641575 473150256 398248937 459548230 808533448 252814266 746234370 835579845 819920191 268012095 282248797 445181815 855570788 40451705 500258923 587817231 167768167 528395996 922300651 341817073 149256308 610417853 92019324 684336103 168181497 259852767 709310397 780694238 560103313 318611912 336107372 383912582 381308294 165934303 894357774 20983335 927684861 504917655 258818382 726644469 704683867 608190521 620339839 320888219 385747443 953795014 191185486 162821260 187402686 356617207 853346691 969901639 30645511 634939566 735283564 995161694 396695107 120410724 36796628 37944312 357246438 448942153 503922410 251798239 216357014 391689080 585781386 981217437 377456988 46209961 928126408 450567206 870755479 119735454 646073808 36076342 478513911 187093868 439513167 400888452 857488873 304165487 99097283 672407014 697686555 717402902 675105643 922186926 398943858 904613590 969188953 885523594 840390979 664018692 307615227 131291817 678261131 662607138 113415733 758185828 311276704 441066057 784127847 87226708 562628420 372131833 894666884 575842630 809101949 695515115 420752850 275089517 238384877 847471867 810185570 96489792 961544043 471074437 274938270 550704032 768828790 449695594 972633468 469881472 688106678 322935707 904253944 472012832 815818240 316007662 573419245 518304224 328687310 663052877 278211209 488889 739041958 867661382 944984905 679760376 959311004 657582583 218091105 683273518 506859597 646515482 862762363 943402764 78935242 228457508 152576795 120488507 61942473 399419824 2160474 51240939 441483927 872173199 99030805 87837817 228907845 69494872 932133652 292398218 995577300 120375940 880667630 686454307 993132008 87959488 722381328 43265109 430081168 199413580 686838351 458664310 648538771 292917050 414930801 104526105 986678564 892306124 645722331 42391797 70919809 892213346 714076547 609913592 131852390 499328781 785795482 633361058 819400693 282810256 483313909 73666556 235785870 293537701 15005548 693977779 511889784 102530707 580569866 235768538 939124712 304222078 984413259 358161351 507276056 18220738 511392584 217164371 246222183 391285381 313471621 847687428 95301950 156314179 125412153 552423409 924232100 787384433 55001337 241912859 736964331 470834936 482550411 896548310 618284813 55486156 974467728 699684371 647538453 752173188 66001058 751143106 874755536 929532053 11736194 145428073 392651609 348428153 545308458 249837569 375374963 730703197 661382117 599223250 798660210 22371930 376344241 459833926 80954488 956692587 357760239 157845899 943456008 666767204 224425560 994033993 317180252 418754175 741169629 396658465 652661448 331085058 185838767 113412712 596734522 869580153 554299419 70559194 717609694 54304461 202189433 632800216 3106450 381915591 228384504 923373590 284312647 869502984 201228123 682650444 571804227 894282546 786555082 36087167 741710732 84733884 267742354 21039886 270436050 353228891 22415646 357000772 484969514 25769901 352030348 579571520 94701836 628513010 869537170 825547679 263863985 373741156 260104152 844922138 683681455 402899964 465775460 816766427 87780861 259039873 960084206 298385741 308804690 565468208 26393279 286670812 209080380 416605041 237898185 753758426 671171806 907046281 870998632 628522143 741118604 701429241 684780282 228148463 385809164 572140375 140463633 704913267 703280717 245852801 765397860 104494880 446643496 16579107 781618459 453021982 597509290 53003544 612385059 363635597 973792749 728060520 890109439 159432429 455498911 145339164 945435802 358011348 950431574 317829959 727738275 753211334 75933354 780201689 902345880 200961357 42871268 732372442 422499630 132942674 571522151 404410353 900810133 214618448 849345292 244147443 975583822 357858676 417741276 885243061 521786307 385390427 246747885 807411694 265822917 16945575 836557800 272238598 996331252 41645361 863497703 687376754 704843410 613127215 718964406 274982003 41622823 612477926 13872924 813841957 890872434 607582735 521381946 168742277 156447298 193708084 942343572 114721743 32910468 915377855 211195457 718856947 173680930 959703189 199450566 494049041 731638686 679580984 28911059 621883054 87270537 516596926 76501396 761186739 995478048 288912025 639931023 904258471 50671012 285021482 402131673 624612259 229171992 691703817 736737256 143081143 727850030 75252490 737467477 673004049 465930989 956037 697195309 738608192 538726045 751977200 891858585 511547391 830967122 19886512 862850106 795831427 937633091 465351839 364506847 260694654 665712980 169492481 626937804 431934762 743305821 975240485 733121267 534859381 553442218 852249043 982203070 288239256 750841050 485904703 509130401 8857894 797628866 697281233 287338322 684635672 626855080 994147799 705213388 458713438 301426628 147483816 328982887 578150945 434689347 945224874 823570630 49651102 682552004 596819403 110469787 580791119 154653828 702371860 188226779 688383143 887887235 753659850 866603639 902545243 114307996 637619322 666974772 823295105 938667485 580412078 971752443 969241815 71715284 364617894 466381098 844036035 793127384 48357051 980107868 856401429 767145039 146201889 8748148 23689630 95127366 542247636 262297792 686633816 194755110 383391567 754708703 376611648 290128006 341094028 135864556 890783328 817250441 328977638 120494529 740247923 246184357 806794547 937410302 633963498 536027005 374096620 264469617 892908188 106695211 651211678 403515811 152996419 993216971 412278933 525460995 729455283 339745801 927275899 53095771 502023103 132486990 538454637 795115167 557567992 39976482 366006285 617236839 229727904 287341574 828961365 944010922 359155733 49488146 861830259 404807168 655423963 558676925 446994387 989764149 485447483 774534701 635506778 657298072 775671064 362813168 200982089 960179140 717725039 370448063 619164543 240350308 36116254 644877105 743726344 387259299 974872215 750437653 86577297 130384216 957964632 417714206 105575724 536658974 750434652 197559672 212035475 242505320 390463326 497442734 118297560 470968688 927012842 526470020 29780432 107650013 47047101 822392500 481610480 939182155 939362618 936980999 33491958 611646665 598361327 676494546 932544635 496716723 346143186 847912505 476630975 879740048 526391670 14956633 582741071 212976382 704222111 242902698 246490168 148337801 405878572 404731781 895435981 725266387 736045538 816711626 740066063 569475468 844317710 731255076 696672407 476805157 659928293 80213564 911320847 544066691 477352346 738520942 816658361 497309408 806038049 701215770 409404439 833349542 301901838 805166078 624515559 254617625 121086647 767124228 624836772 464332680 156177369 825448836 418802380 367800321 989060180 788883647 670769640 786831809 469900288 716294059 909896049 61914295 173343251 362266033 409204465 164078935 149542743 650483062 807341953 898528964 674577738 155155566 935981485 531110187 756162539 101624356 234166297 53412623 146222642 512132289 173096589 714138864 517492692 321303365 801697877 237478046 238098712 549964038 587929386 199871729 951157324 616685408 802343922 508120162 360787187 323320908 887101997 163911853 7906598 973647161 286884854 280817799 894318250 585834846 302579526 65811521 490768511 451999304 774355248 466699013 468650815 411969166 898923184 266119501 913242197 934464770 803049299 963965267 397903541 656775956 879776493 923027816 337200651 8222752 79595217 247242930 618700294 155400138 194173827 509108836 904729601 274896700 619703489 206686771 561501375 18830595 273659561 247117461 720136382 597663818 251427536 23978898 307978062 974073993 521016173 985606022 161286284 628271588 70263228 96888999 596245993 605639165 699703459 90660739 267969923 311492558 21282948 187289911 176840967 791932121 537920755 365193609 653781311 800118286 221498367 356030183 735741532 672454773 888619419 920369306 816616538 779391463 856712412 858886830 825025275 203226227 599231884 245818081 123983516 237015872 935743806 630237447 30421658 293120824 158297928 74803809 739526776 93142314 557991292 372610920 703015445 782536907 290915931 673229754 710793170 829048280 719980134 63986547 733341638 381213653 485983254 631786869 649334885 462707036 386061324 687205542 927203430 73322450 380508096 178110243 719947432 926310135 536041966 866337895 367072725 142686315 507770380 14679079 399480243 107890656 486665877 835904177 494030243 41078404 675127619 520970951 103167337 395759875 149083838 329126802 925693813 644065590 554922957 128745811 124049421 500129945 84888369 104393674 417787837 338394419 492780736 420079812 548413387 615907851 472909911 785006847 429687302 649762528 859706450 746477291 836578266 888503439 454809721 32477789 478975754 866557597 591144754 542625316 189096355 371154137 670923383 727939548 811869908 432260254 401747893 485183022 807064594 814166774 533614886 300409277 741959609 663196220 610278179 709614245 765775946 841437829 449149852 274400537 564208410 254070003 872899804 294851017 383545816 31885237 255098498 272870460 712797368 888340052 342234194 297272630 148677309 854337643 407655640 232617698 156909242 104830043 485451424 982439077 70217992 287608731 479679697 829006718 619741969 938996734 77276339 672924413 706396642 433189979 766203820 309886376 189801054 513525879 917141400 781803042 57932820 436271405 631250056 82303797 215865891 671675520 942271359 60013097 736220357 30122456 218454687 396833097 97398169 362602215 623544692 427770495 515767847 893788516 292192342 215550937 389021434 627258860 789908952 612236881 811323956 462618518 875456003 766745179 634350841 779165152 103378255 58971436 943374063 548167416 928862148 950640684 176770552 892864867 826196095 444135261 259298747 173390213 157468468 907312722 885234158 961423653 216952432 6042555 812576257 750019654 176042778 923499599 289107253 725739865 948679562 649595266 654349919 708532981 298190214 104549356 316257461 568734555 977981802 671120791 795815203 690584843 953001179 685402976 120034237 877911347 65647574 512866205 76678950 526433977 424892563 935462161 691284229 857219436 249041659 259424523 707722290 144300335 213530018 702875917 133390769 535447214 93020681 598502134 975306436 473081742 206290018 359405141 100805446 431666808 302294949 112109829 896540492 161449926 989056292 895015225 669544193 31809219 892384765 353806105 60320950 350393006 852166152 948927932 362121488 928815356 355721258 529437835 660965492 284488857 449048004 19346749 219917464 626422945 387821312 353163351 742412231 521036191 664562661 694858206 795721944 344030372 762662133 986904264 935816498 784172700 930911652 900097018 222692120 916898282 88579907 55491096 737168286 710495233 354483104 736149744 551685950 257364247 713914464 393937364 950714092 753578777 773281970 498421244 440021048 795943500 123687139 414433176 706285577 236587149 305842495 279119730 116626927 163720386 968898369 129234829 932116814 100581345 451013599 332224068 201358491 855756904 512417545 581817904 195674325 333247624 789922127 269764339 530147393 55795960 602528586 765215600 552348960 731660415 361866598 245527000 271142391 599173409 566555134 243823639 174216856 648385950 438709799 592455720 433695625 458402590 28516632 306390537 966728418 889963279 853752058 821997775 934363791 999927881 432123474 281191885 986216089 910096529 64921731 516167589 56739672 169426272 729010721 177004890 105555330 229271971 979537802 812672698 367957620 762501385 809588087 809193030 975835733 894853307 202757168 689228400 432157598 252761697 810727085 431427628 444234428 286956437 562133606 194029232 206662692 823436800 274998182 34498838 290660308 620229461 576848335 526370738 998633667 184727599 109591967 43198287 820449291 490611611 962157477 514886155 66459319 667982045 125535889 443712564 61245362 409719109 985067490 824231121 67421070 697250823 599621344 401555675 187465898 989333124 967819839 418811776 711713086 765838847 565121926 892329403 436588870 439866957 22334155 805150182 616618073 794368322 517663449 145802490 2768566 347644917 875155943 366408761 526033499 921944507 889665450 402919115 706607102 852892071 17742741 328510099 842305813 760267742 987318873 66235284 955260125 592081768 836585855 843959849 258716312 98720366 235715927 711248569 367929679 581393212 872161702 188156604 879731561 504903670 530646536 386241419 70301740 411857632 460145324 853892739 894673728 220872288 70308628 658141885 59118628 416619607 789101229 556988431 644289936 702881460 42168720 825686987 460870663 598378188 396334794 900119450 996025632 10154092 723582072 424430146 430050023 660884420 868245524 655563321 866710201 724799844 992160153 320097778 870297449 100939310 120005141 490182869 582595904 731140457 191755862 920152767 339578733 312811831 396287266 765362271 538313155 54979824 749378993 437764809 719392822 820784834 29088089 6558325 843385659 209131651 390678032 812367630 172479335 335171631 458047463 200820342 250950943 585135612 795704149 225848972 181860343 25098585 933701794 175573736 955034553 9246841 367044708 442996581 868911508 908064669 475003465 547534938 697709082 302679186 704721080 255901346 598322155 232837895 976607831 815450283 754317849 154019234 733601545 363625243 567598690 663118232 70741233 537418524 697549340 311277237 53195020 706645018 289205100 561991190 193597009 309050233 115696624 378307012 700752202 440811446 211974760 88243104 691050971 382442341 601084962 900537571 615346357 875158933 306869179 85351624 463815584 972547761 483106252 732185962 43323482 779513617 948088264 579364419 245513550 814618918 990419791 787399303 324757872 849781175 428929192 592213702 746397827 974465312 960607714 681258515 95773825 426065957 498628726 313189275 674672509 239132715 738509984 93921486 329052587 214113802 160003814 853969864 886606794 479997749 946171663 661948910 722181085 600013104 295234289 517218238 422417018 253950859 453150859 61868801 43543777 685842132 728275128 271263883 607995608 909783999 76773600 954243272 539119548 527602614 932655518 573485909 998509820 831198642 923098841 956905329 368220486 819725893 218957900 402217568 46860725 102304143 668231134 246227031 653825693 701696688 259811369 30224084 254720287 738134564 294908799 67007877 241412970 676307542 515598376 12146450 906962084 637694560 448603606 966068982 668163483 949739915 488554564 357371246 293177284 150849788 415283321 223793531 579125120 559826805 629696618 761482497 708292287 915528133 471182259 893592695 518735707 885318836 117762907 668047760 22443849 303775988 184461006 461509836 607844275 260997724 868856723 109978594 183348622 175383086 407862749 225879816 983682345 422982635 339019676 206992862 261072219 703661664 239504513 258412393 54414361 566106028 368149716 758029504 832053024 448197336 826479862 676283164 928916979 673242580 482877915 610775468 430406393 725918789 155570847 327143029 383531173 609671896 653039536 299008543 686195600 624909805 471938015 969990690 965715634 210395129 355743115 789514075 303881123 692430029 161126263 351272201 590007807 238723258 940978110 124445905 561811640 253331443 879580652 963031075 57284173 14066562 43386942 853127883 868327812 973542133 286398793 95722795 504456580 998316172 362629624 896493411 874624315 241027347 629303013 803485926 493168823 618957619 235541392 117943309 912389923 328124785 543707710 339883126 299490088 94415266 389278448 970159500 443729005 662894605 758576743 398963532 275817856 543549409 415582441 75018522 768202281 874427462 505726266 679534127 465342274 609285455 77281900 438758918 142533788 959218649 513041407 385835537 512294880 770365155 249248068 961253495 307913 40875600 146117863 287403089 166645886 29103846 320331222 642599002 164339207 994002787 690453348 695000890 563615642 779771752 87011494 780472580 25639053 469608394 226027296 252996794 893093819 527140611 926913323 527586111 391203679 853174220 820974173 767716761 578716890 473571542 654134772 102660071 707763863 583879477 142209070 781809027 913419429 453703954 545922017 600021274 129266478 837759019 561667203 700540695 286556482 894753336 514343881 261188602 208728389 605796103 143836532 74340931 919252071 782126699 958055574 913755975 694639533 17523013 194939512 61945272 681569933 165636953 259865184 225168562 975389998 805151891 603442583 585587106 106687619 934221732 968524841 703838642 684698610 478955939 624030633 192163512 733932459 630217900 278299237 424473889 960129480 525093967 934237204 885086918 582993609 203424070 444581957 345986372 379041584 671434200 197977592 359854660 705991482 414013217 721983188 646944598 190993168 562367229 593877512 408985471 612046439 502890743 640332001 756460 769609546 965170951 811087782 405778661 90963667 853200471 618529933 506527260 890927940 528506549 137781953 93135033 87839269 215050876 311790247 77808686 603655290 640005967 847323313 517208322 847870402 501349687 912654982 378014192 647174726 732076700 573050316 430599924 604190749 651585174 262400027 248650252 369008033 65090716 660969736 752713528 624738555 610388070 442969243 320329460 865405710 405075320 633025988 665430185 634790577 265775120 814872459 196034997 4636317 499810280 205735288 694627295 263516895 946225381 163865044 832170531 407572623 468702972 852791694 474881239 282769423 352774864 408232341 899145475 980032942 613014393 484758820 495545638 66318529 326659065 800605949 82661313 166634243 292418975 149603192 703979360 854098633 842161700 404557020 354348189 765303080 812559682 576652348 366101271 84040685 281331565 294186897 493078026 952465803 331945628 524033579 235770959 114979950 861373077 734777011 857625667 18568972 768587496 32101528 122860369 657949341 441828387 148323416 955887253 385554087 459656094 964455299 452146954 716355081 477210681 260489476 58100221 728488239 986351806 751808164 352254482 60108003 545569739 243961203 746969180 75099752 480170253 158166804 264874819 909192645 487844316 362317727 322836376 605194437 853280321 586961526 111938071 583437792 511763721 101205560 86951689 83627357 920430813 974095787 644987261 735915819 484707426 797286334 124522346 618635780 216998142 228568955 518659634 379916823 831034981 459178878 201583351 268818758 354578466 476239986 589950349 607057624 678313233 271801309 791470775 402699655 569350825 185529921 165412398 988296199 480279742 294845979 884420237 364432950 953637700 565137041 50970022 143968843 407653553 96712177 564615060 542581456 391759106 518242071 32560279 287990905 447335456 674422340 777009857 308868555 646713600 259942182 895053630 158930946 305232648 100906556 157978938 289493519 218372206 457283175 392826583 773342266 849455454 893858728 518765464 559747600 920083975 275202943 323000935 570287632 119972161 120227252 888854726 361264909 544850250 161351773 253215050 342863521 494345263 370841132 261019576 140554811 309752429 222284628 549982500 783889425 563929197 985723818 345105840 123142165 591427682 745855409 199912866 916842366 379648671 392525506 828921068 12003779 672710426 182942048 373327618 598301153 5507693 457363204 372251466 328157268 153356602 230047585 300343717 975826292 928912154 834410915 617130960 235039530 728982305 944805297 437508505 854070095 558917620 509728336 313367116 94189795 680256660 148554432 254468732 70259529 362685835 648444074 963813633 238360524 300535865 818927428 960404314 86111778 276929616 431631177 44063833 590536273 484151471 800686206 696519471 659902641 643658429 511600626 163062004 134439862 147426222 267208017 140952225 417373402 768548544 777795272 958647334 494976069 707394069 741862739 25033124 172864395 939737031 113074437 674423219 115601729 19323596 958558425 70456699 77608792 591003283 286481489 64659216 142937237 263122459 837890313 838374290 522818452 855690660 989662251 485648927 492115503 439568833 366519269 235765210 934527400 346665204 529763055 482004567 387155587 561446962 181478914 644271054 140577680 30947812 219011487 899529643 77961164 875501059 2192732 869111181 40227990 16792133 684386285 203751465 160535675 883371764 491388539 387141573 369344902 165481100 1730421 624474762 736123696 673583126 976507718 539979562 642979460 461886628 724859191 781670490 931510635 23508146 161859504 476437919 710886266 523244696 810988712 849358135 312346840 245700192 576193685 671801964 267773088 218393707 621898088 119776896 282378423 914717128 743522984 199410920 744891228 628512453 377744435 544729716 714345136 310133709 494634842 645075474 713059838 885265073 9361541 868740279 894353245 453811179 43792433 847146038 572778325 880873940 261539072 925834683 410496811 574324043 88414807 275467992 686953482 888894958 670167061 535104028 468024256 6716902 505990708 329653082 10838617 929541752 538078174 454132774 895388807 95933509 717287661 759295862 420182160 79922193 850938912 285985134 908153807 106510746 825641886 422753575 639965407 586219298 944015858 928216295 248129093 188819124 334015877 869553525 448624719 126092485 483036356 237584061 740530394 177534073 677011315 581609338 247567079 140645263 419873484 865713929 264097627 655583967 406318078 629116207 664355859 413447729 375209407 379793838 847304915 516834755 146183334 456466684 276133743 76946922 874674862 987238876 38642827 6589454 642012361 906696090 452729777 870419025 963970808 509407982 254769249 230218474 752606254 684347313 723230799 545844566 459012823 868714792 609901524 434154311 732040361 316646640 408937924 40183718 79207468 289655280 682803276 713841972 146966926 325487104 681555479 654191763 971956595 532630107 796075648 259201218 29334511 377121971 444211777 795329243 393004878 773688442 912398498 638567901 645162511 410006652 311299208 398795900 683478981 585117511 598350694 601986160 741716494 867810113 681717558 894451347 676217697 348783478 327903994 380266674 115200638 317995169 41554862 569504720 694249402 238951702 916214508 264226214 439850732 3409470 912565953 859673753 428044264 559834203 445076758 136238233 172415115 856185778 862409818 91165685 522458698 821791320 397652525 319377434 744488137 736205613 885724067 476029266 102533476 793415178 765334203 820677917 585239430 436379521 616339133 860754167 395133554 730462138 76795892 335684576 370554423 818706290 955964324 648502221 539552557 64086603 362901141 659199151 75284346 33676141 766003061 37541478 92497853 126008134 130123547 977659166 191233201 480654696 973754294 548195651 468640095 423967283 330936453 357544167 637101216 344260301 200586435 301783322 490899125 209719370 902606452 575804071 580533687 822825445 772585714 866862045 451240249 952220550 33271720 35313871 581078532 510423645 818349320 676181001 841387193 908904536 159913639 543672137 514438312 894703700 592141280 692666210 361662411 608260090 269635207 418597274 601531639 577836307 395040088 357803005 927000017 129723545 339809356 19373503 847888452 164210625 123511380 39945900 762165208 226927964 576904867 848576999 413623104 949708423 611344793 784884750 660684619 495586716 234191271 129038160 821882304 935704523 512241886 448246045 687043345 493808838 288155281 70298305 249175838 781397027 346779904 981876265 213961186 568642516 239871781 41487640 922273507 918640549 220760214 378357536 11448137 538454052 254508834 389329209 433526726 330250014 789015636 9495177 992372372 500121681 115247126 476235047 774561646 298317714 574826721 710243187 10120323 625677595 658994095 651420946 628076532 354080160 44119601 987095538 606685888 855235819 46073200 966275190 802739469 607045312 37264967 451934262 700508824 838693685 741840298 909067115 697698302 407628641 13484876 716183886 353627954 825397635 36595400 657536090 420161074 691686307 382871599 119462926 747130129 996576760 56350598 620224146 24627372 362895251 590708008 56677489 362658108 878233022 748881740 717003873 950960514 221563528 293727902 439079627 685991270 530066317 565573064 560172769 660765800 784123046 152445263 180667961 924060780 222568209 812641968 38724967 834293861 946225279 515289125 193169438 927063221 362435456 757255538 521659041 359509401 900717754 330279047 495929188 985947334 683894778 119805479 440464984 3246758 902828019 481296852 807148789 9379593 406812308 150748055 930225868 117335335 505257063 156089828 529580846 958221127 597549871 246920637 973911164 8194461 343292882 823582271 387961652 848504921 627217770 263419103 902807619 829061325 477354326 118124906 641816599 311073487 557715915 751128477 126228112 475411668 826309580 564945610 949703651 4773680 381815271 922568393 735726627 992195726 44878664 391036594 412536930 278831436 30449817 410704667 898585633 66567010 556434548 158287465 726371308 449588388 262248987 527395622 529989822 536221294 838305596 898867471 66723702 5579177 222882042 223555946 896887930 863020657 934218256 134621263 43252971 415982929 82221597 70809320 525403447 386251151 799803053 691081677 431592734 975640163 292845388 960655520 418958569 971468260 797724790 588275659 36299641 537437382 554041837 61870671 670187806 476756948 904953649 31938597 708082271 368028455 773220418 202044128 951191489 124111680 843496383 571396958 66001985 60981172 277716847 898162934 233740465 315635717 92345820 976716080 63460384 574462163 592374269 335675996 278256498 918890429 176780648 329936235 373959622 315812564 343823363 182603670 246116578 519599860 719904960 210820707 30858175 906250441 657617050 444195606 616674556 122437915 801471288 769860182 724509428 320366606 678989491 181532074 459724900 234982329 357387864 403430644 359223996 540351426 734724584 763958970 922465625 522325376 185829731 540219310 344314683 622493154 427217863 966780971 608720836 934092079 112914889 405657754 507896771 98934939 827814209 882765274 430293649 211926553 974417983 534154685 699363537 568071954 274892019 755286661 737355528 526186298 956483555 970681945 680956240 640868208 53969715 912625568 881378762 311711377 90552053 333066384 464177048 329620810 815306235 515794018 501853099 190754984 289280604 739448918 318246413 974890265 851250713 206925216 581436135 82915329 860165180 564021576 487380079 774452692 458561589 584618425 229475050 124500975 15866255 487422333 540860220 397816999 775200943 82185882 170108555 429261156 87101337 462937446 437837374 382219200 439895605 989205286 240630250 781314976 103792722 32490742 808162703 658171884 541681985 801948476 613231898 737245272 982933097 347657858 707141563 904597099 833913536 372452952 859592312 65380711 417858481 602397604 281599189 844677511 257509984 193795502 103136586 222616154 141193212 17209119 299206307 711344076 340567043 778594612 791533649 385205589 420295171 934798124 187591238 808049118 943676376 443375644 504892627 435877026 301101938 228009195 670855110 16051592 867419716 58931357 540936731 81334831 161094957 756347236 246316204 3152103 878332835 746641839 295770530 811636982 936575922 629540870 747135821 473541090 376558102 112486814 431456596 573713909 125356995 601867433 106638581 502178610 829537612 626084154 536333998 880301998 3823205 663506729 708610152 296149761 343783471 923727086 29552545 682953041 779321794 858849770 804168917 161521410 246917192 334413394 689554988 882135386 366129469 901275635 447925251 267741959 982826065 934674174 873684589 492960662 186295503 164608025 827610360 913930864 814338055 637012635 502998260 514419295 201202715 106026068 99922558 73889371 188332784 966217409 641189122 275610065 768599010 889201198 466129812 1410123 367767615 362424716 535925170 612596563 540995000 461553330 674734656 864657944 562221092 182226611 461346345 700026620 957578427 709216338 912326554 937123743 375867470 840079960 241793477 975993848 627948723 697637003 409242405 238820388 774991296 8129960 656271144 757915801 469833946 749088130 744769266 69889686 108636023 936729004 386515391 284838970 76198481 535018970 662618764 972901607 236818407 881903697 167378189 61958894 64172321 468716808 242155673 126242408 140979284 657529326 595882414 512262827 63475615 884891726 996566425 761254101 548525388 803993374 321442340 310117296 48410428 740842910 836055981 429966017 5754144 377092416 936380368 841105245 104132013 504635364 143838151 362499038 967156028 84486775 745747145 596534043 459169007 909008856 780869366 483550657 987430677 361464666 351593085 279991765 726739952 36651912 448795146 493503063 292498917 537962852 239706645 297532041 207318581 509701605 418491097 30389636 130755569 868301783 590070160 613975527 715873509 192280617 964336761 904523771 447057059 744436779 638993921 429842075 560409834 516425994 253986093 247526358 901206463 820468199 37099684 430606832 195910277 76143798 695119972 719000560 975548156 953838686 99264308 934984858 435343340 65799186 561476902 617443179 935755978 998746055 967970612 993723813 333645077 492323141 833707331 387512160 897472442 764462917 350325618 787307782 146568395 666281589 412487051 749132132 591326790 185098302 833483090 832009580 42808135 618776611 819756158 894194833 398152856 216545697 77299435 271572532 183478475 778692253 604118258 941090986 458260371 85409674 566182544 264024981 80569625 627715932 637749781 368210441 44946048 281277902 684286756 779824988 645565498 69322196 976449771 798660675 86004023 904012746 288003345 23269006 346410753 520449938 389253490 116268622 759138126 781431319 12549234 582332874 639592503 678670680 56280403 226516475 179548663 420996841 17069015 921870558 531045062 494209060 369781513 330734107 872006463 980666294 109862317 439128564 627337222 460264694 371346569 236580304 986444104 864642072 180054828 124748240 169621667 289704260 715475199 54539531 328606020 266415599 739814478 290606404 474961318 795631953 835924686 704490745 947406733 464919635 756724336 780405384 175438287 389362570 30923220 61448006 288603054 693008063 535562289 730017067 835662726 741605402 111914282 85364508 91222089 117088141 714063840 330484055 462209729 908423241 944945183 870934055 351585710 73628443 600762202 254602063 460422670 198077962 928978850 372697925 105741623 714247218 419349945 607338531 157807607 358486023 777911319 560038713 850896158 793221677 165737394 847442643 698207617 86373352 880956349 531756911 316588035 610515696 527087386 673380007 81117597 188924315 293449342 347723888 63207035 309546970 99502094 463300093 984825898 114254784 240442086 65398759 73474277 657561890 926120749 159762695 313484408 671721393 651535461 661443130 494161266 827936264 423465419 6916912 938878101 428940501 573038887 316421135 911423396 473761790 90779180 971915751 187366741 786532146 104559884 598389440 914949235 131512161 167122711 634449635 714043562 681140696 240247896 551606329 107078592 379508595 247996836 975864290 480042639 355848119 540688829 823156577 277031531 255006307 241023446 540852166 561441139 690659812 809252619 243211904 100370641 485913090 209491753 574256980 605921996 641083572 105372132 939564913 774856817 582560585 221522437 66662052 821538363 910368843 507891900 866681621 464239495 133812492 528567495 232280204 917730218 169547560 748429518 406999117 652076063 203695531 892027393 928295423 736757831 182473114 983412322 255771901 703157611 703432693 415144163 681493785 400461725 355202793 515811511 540518601 431393287 355947618 513154195 655934211 105369994 422749675 593464095 937104452 745620520 544992868 95862518 841075624 326089900 625450768 60455671 80320616 351074716 226938185 430299665 767469506 611746002 292394426 431913620 306005823 190226533 20166372 89633751 9587713 850911409 608865611 554910546 85469999 29430859 113928219 660885554 117013680 112701922 709349552 67983598 556407421 520981967 253007131 561562714 130981662 890643014 216364901 59191527 386204109 647015909 635089548 201609288 601721291 237290514 966287942 857184472 841257516 256977126 865302626 73548063 545231204 796079595 617707403 840651514 975403925 78316183 844787568 959898462 318362530 41914704 499958448 637337784 182358130 707141208 540585496 67310513 972820818 568746064 136530500 610365163 66448299 87275475 463728378 607722788 463970422 688342839 597050900 247874385 472093524 51860285 857624257 401359683 114650736 339976555 692409506 545804391 203654229 301146026 338804937 811619783 240163344 764753759 289845317 567532919 450516455 676444524 914535855 675125614 200607452 650763885 891568227 10236438 564326793 684669364 907817837 437284869 46530704 812634550 841930199 341394798 266120232 835457038 992317776 616293422 600680734 139269389 766369189 196953943 82783694 557751552 743929599 371649340 109509977 802257292 933427290 40975685 900131586 261422780 739172689 939549239 283097568 785633171 154884433 680287720 192442854 290735485 441632887 156856827 460149145 66659571 48470942 359059769 182899177 507441365 371267258 463647695 188163372 684704077 785127678 933099848 153114541 278667415 698528676 281959179 153344948 363444928 931859858 939652289 761102900 328056233 764453276 808893745 822609012 438850731 819634594 483436402 362360778 884234572 634788310 130663440 90944274 408926056 746760666 273961660 425224325 659743260 639018177 871978598 995968572 827933142 367791366 903261791 706324033 941733790 154701910 77569539 832432073 365652149 200860360 941247947 492543661 13071361 310818271 562237374 482984744 459837751 496746493 163832285 695313204 875943051 391159081 799983212 994831197 647522471 19523214 136403060 434191069 879042376 106012859 790837766 454311184 591257012 105841216 606728240 755847692 474439741 590284461 166339943 686549465 187796580 982011166 581991414 707347559 560888351 39473142 32473022 672431793 366621932 292802034 703909117 132733443 755393676 965544063 815928451 918674088 332643572 638521906 213937494 541679805 536738735 670992023 133597638 574390197 206083209 204962554 398450290 930128931 34217384 876945775 771249612 777448360 673363717 747263761 317822414 924405536 382064727 255483178 757305643 428490932 641569143 799263768 674213137 901686191 251097061 822688506 181764016 900916229 906392644 713747861 668981859 192409025 211429315 381798340 459327017 206076357 544474762 901255907 894099806 920532594 524987097 154345057 537272927 914611436 45628130 376066155 235790534 561139703 267022686 413436776 694135171 566539560 287322456 984366904 644875542 507194859 636985858 940659736 229259079 383291343 457637788 58408495 150549972 344485763 407294298 678565805 408648933 488515615 949015268 681702985 801129647 350528668 616216444 148862723 821732377 966117978 868970173 740583694 86262899 691889103 157503512 743102345 346470849 815939608 977807818 733954261 597814570 183245763 807648309 301651313 634532078 703991702 153561757 143532267 698303914 34353151 59804488 124271089 385035746 451434607 505523088 548864459 190790130 234136805 769969640 516836480 145196505 580323220 971221027 227065502 702912345 60084584 364843297 310030455 971437800 982815045 74428770 47416620 23582930 680945274 959417871 866832623 217421352 262938619 995941964 207222480 91578936 762394690 28635575 930472498 277790678 650800990 629473451 95777763 927215508 817890786 357261936 493215404 480251546 758607793 190318185 145199638 620007203 236384213 108146050 342551441 223815495 336779549 361823802 787372395 240527215 219691931 348083824 844705943 813101049 185587570 980257207 123937697 734627814 170120501 686540044 330614894 928083854 434758497 13346911 520302061 31381866 158414759 699933874 969551323 699219137 732403193 974123165 401379372 513247056 950201236 564289949 992532320 266639321 846181498 430009502 601431253 675469007 241366621 90398691 536188893 353849608 979383566 594017639 12947826 390343525 310149382 573979232 930078669 225731269 356344166 586470162 683226041 505781043 556939302 647927464 801613859 492017028 876835222 722657467 342060548 633723590 102671492 619682791 793652180 45560220 670784535 789085850 151719055 323224722 713831464 98832028 795039036 956456243 373704171 177125958 25573757 17276850 653142429 889425836 101787251 17010485 681183407 481095165 430728497 958283046 224107841 347013587 353790480 985527174 663368437 276614197 620060098 550796681 458615725 448520666 236993627 612371561 118604770 752730102 356052856 788542416 923527315 950890244 882994739 75030111 327622843 999299696 219012467 243385715 726186687 656392173 343366613 106817969 364987962 75732512 362635423 460927151 271719412 913889026 718980210 989245199 641738664 651632441 491481459 684567101 618734174 279737250 369155275 82636597 655975741 12778465 525017619 850478767 176842709 421398413 983088421 691930763 108532767 951321614 283421819 685440226 668328338 712156992 533877566 420840480 65086956 236259246 431837552 217918990 333320871 656191274 584176009 239658531 312251685 688434905 657442937 93607008 938677548 855269423 75425098 904979784 841286592 435554492 503257755 327688642 977288640 826080861 690809939 30637966 513347323 504981091 415566686 966976256 950126431 245440311 370954025 154279171 928515311 497464864 870720204 214715078 283035126 923600645 858911887 178697178 771437116 344341734 85446402 25655016 248034739 629294624 94482606 188667693 971770488 601081442 569494645 821601715 230483116 425558954 57912655 935538091 751446958 989855809 660792459 40265679 863211776 130952308 178410223 854540187 609194610 107064071 639294404 517934011 432642734 621296040 67087313 188509661 490215581 138560703 345348067 470402206 243635949 534024723 415273778 977492492 728435484 283398417 67965598 490098985 908323908 342222529 45080031 768249657 426259320 89015496 660785657 215316138 618937748 525542753 879498087 905848544 532874810 809979345 184383352 781898272 102998335 625326501 70870634 245854772 323712051 15847892 623680414 763739030 511357614 446003228 13589364 667045864 935128636 14594882 802162610 327742254 700407452 848902871 303976616 519914063 437667078 380425640 999537347 754679972 813674153 665127945 133172302 262160356 828996858 233156946 202568085 251546331 594018495 858326783 303853017 587933512 647301204 205323682 621496758 151031815 468562524 363678336 241588693 526141384 403390580 751615524 286878592 890828510 848667967 604305309 99286146 222299133 867661020 939637335 196146552 200812825 464333996 425956977 378032888 934520962 524020696 165175457 617138100 867589120 475158119 761038891 395314547 345707636 883941390 482995330 309031246 261273204 802331423 551751512 720927727 303828844 223657989 826444113 895426493 961175093 500314871 529539962 401221095 965669448 137499665 361656561 270463545 540932302 702600963 149697154 411386106 823503609 821555646 863587906 736193739 65851684 94929026 717669187 718617489 928831244 47219741 154304729 345140672 952628603 970458793 619843526 544182849 686671849 293488296 485273309 23235256 16422240 163703064 54727753 826992722 82776994 587842972 836268832 425770384 595503689 975730626 27273777 771930655 405618680 918659860 898065003 644692936 552840866 418588150 530063493 284443564 776031703 973104356 585617272 107180418 5058115 269669502 427726310 643587864 911440805 28296019 609500591 150178492 722568501 512416778 599620629 826898376 688014540 21354585 424504064 110894324 531029560 882752388 529539510 952625561 156021849 451305597 789205281 376178178 914649955 538715948 193608128 899100601 393333573 228169851 373687025 368719176 316878261 271279186 749722235 257890557 522601901 401738745 28448490 386223922 189706231 708087707 586445188 95473727 733182511 187445558 25837699 716908773 882603367 487463720 58105523 881342850 584452881 688957762 909536593 20635869 908821541 862085975 615972112 712141065 719791448 254665326 560081481 596537206 988891646 855086742 583619008 145617344 966405010 736047737 241025203 101401734 177277745 361914945 21194072 838985391 669037003 656136750 778079179 200824433 502603079 280794598 816636846 802877271 169964407 557891951 968187834 410231812 629355831 731339659 390901875 310338595 298785965 652957562 781238347 824304891 790784971 183085030 667136062 963215842 549738894 827873595 651873795 396160877 564995659 360733823 18978329 743415273 930033935 262312825 309821549 516253061 178635182 751536288 299884491 477463199 711406868 416942341 442827330 498601924 376453572 267659470 571871293 253241712 575634764 173892497 803298951 747373713 852929304 996671346 859837256 550118124 362127422 583120781 787019247 678837474 180198487 113151640 568729746 97522592 309795394 457417280 547285992 557429284 54732441 503407395 966702804 329476167 230707435 514676226 408551356 778131331 645008554 300998658 993524795 977341147 895696935 264927031 834943924 527069443 720480158 794937423 411741269 550616988 549402979 245658620 308185464 843496543 204556544 910782326 643062027 735483051 610231414 584835173 252797901 390108441 785937486 332755790 832596351 64598435 432507525 98636674 563255995 893654925 7727294 930167818 665664966 453490746 58356375 307330000 875070940 224644703 7477759 523439871 769946918 684779491 542614528 499781928 639201434 271401315 48784330 71678714 432814338 774751017 509049273 40520635 403372340 414799287 573957084 471788095 402465618 75025715 158426852 960115690 303472472 50790849 847970962 573655491 985503519 416931034 369513799 586453268 418097464 858809952 353100766 40404359 530213486 468314549 484185020 179888043 87407923 826354348 86937669 689603003 969252946 117811010 347330631 467193156 484673700 635007705 389714957 2712680 24030475 209240031 175367386 255264864 218412909 677523160 906441884 35865961 615862178 429790429 13435603 760907861 756342819 880969203 779584238 420836975 952988298 44439781 685828928 299679739 598847365 5197418 17653278 810257341 876481316 752685303 927157907 942337225 552303672 598554953 396335984 387734609 795480746 403358987 615362872 437143643 449438333 452204298 520504509 733666195 297714654 897611212 614866883 762494356 962899996 632109824 688695830 917774986 800384608 928730219 413909949 465285997 593679090 316002859 266689675 599513695 971219881 939229226 799245939 129842207 109981688 999802867 278830788 583731548 854744752 388998464 330155691 706537612 501913015 462963243 278878470 923900668 520624350 866165911 447826037 318132048 324799493 448966435 118955449 164523536 725390992 369186313 219248171 349130945 937102283 583778218 667421684 246810558 365368298 182674190 44995904 949696421 214111559 391533273 160470445 560803696 855440080 607882931 450843628 260479739 496880876 301804470 820838918 224790003 292638953 921608128 369508697 169700129 214745800 959430782 940273997 725582608 460957137 649298459 854062390 876124396 559604389 371448753 740433412 535660503 418387235 48871429 511117831 977834915 855223316 729658298 889223356 354454163 17776183 140702298 18741321 337327966 908561526 596860146 227016176 242579741 767807276 309759314 811531530 424215871 672373558 205764347 307642299 90833794 648290064 466220597 436511722 593451161 312595733 427892893 227231291 571747927 114450452 983874231 88613964 408651898 62455677 270458899 206257925 206386164 528098919 197960172 501371071 854710239 534636387 769630291 384289167 394065971 918611653 246866237 441747873 588415224 861781803 359172964 133792905 567021928 992044730 908725093 16089504 845341683 494090849 904052164 420671239 265103852 127406240 564146224 250962801 291387106 106335210 17684457 874285148 583522121 453181468 728999861 561564405 831637349 372158982 714517833 755505583 273911054 835669118 915150664 565322672 110571055 941635088 15827303 531560557 790072247 69522054 16762891 944797301 936129533 2526637 56003612 232148432 453569410 556182821 976929956 932757859 97430308 30682754 915062246 167725491 620682342 234801165 201066894 489335964 988783300 516084876 467162015 348692257 313758894 933250465 961360497 677478039 406361766 16553087 131452969 886353042 35495673 440466085 387281684 727013457 597834159 158809362 441414602 688824149 747779747 606354670 618693151 88426377 827611177 434353545 792023313 131378648 257018069 5771303 644651655 153478577 960269860 228055311 499493150 673725324 376599844 711071148 668492481 150956949 587702512 427676158 70270998 307093443 179520686 347042456 640215433 452828925 26762054 46258753 531228690 951268873 875111207 154683339 244272537 923043885 98475989 54647266 459751426 459121955 331903317 77673494 341153799 972448607 108311667 643733210 338153260 726415764 586661348 108219894 563590411 821353450 12691888 537632182 833763732 883461094 979591840 867766744 642410496 590615737 812979031 422130345 600192787 122473496 812141753 239492887 152144929 741292993 657978687 841105105 393185519 264008150 87110772 83843247 860368074 332918073 869656062 136251533 646689896 403998497 134006633 393363223 266871082 378795398 634898766 155138842 924496827 850861481 805424597 537667693 769244636 490326031 826236474 35084543 761123605 99888984 243579894 95261549 863092639 613302330 764462032 891603553 152067248 811472915 825502194 526542164 997779714 825758863 922189784 517321042 262274060 218889943 193270989 801448852 448557268 604250296 642073523 578190709 951615123 626207394 359888564 681731127 782897776 909679982 805804343 895632829 358840009 887057309 785953163 149871966 507541379 656076855 854454267 747345407 430355466 732445262 61699501 960431191 850021584 590367245 639886143 672422847 273512778 938566372 6592013 605826530 322058701 68367548 990310536 619240032 999879197 122631308 397645612 958139176 49057864 426590710 151743291 572549835 4650612 846994643 46666704 675958722 186075902 819467017 624202883 28572184 328298425 724256323 9672734 778706080 32271387 359476215 417375308 553228036 293470949 689472417 147004810 788246663 445478787 671263445 183129474 60222353 621058689 934976512 113429035 149069114 10384089 343013045 409777666 853179406 116864215 285371137 456945550 161966439 909372623 457794210 924014207 55520045 128750647 272074165 546741871 996429092 763499467 589042186 929111208 799083347 36659851 173270937 571006456 847265382 402721780 12709333 174458467 530452185 459103626 595537643 482723388 19111616 218434645 536672459 50893472 703727827 994426641 486527970 94615365 34560613 853721493 359312006 99499441 477618814 351736410 405877553 22434033 145044158 741755547 172971192 978764962 629760190 16155629 335714665 573863912 728964679 86468652 51168670 390659912 126561920 764783703 734705186 891005844 653265329 814133601 215399389 930103534 531723554 664027707 150328625 144868172 411028750 376296290 442768595 549701866 559221759 51002918 356196678 987883255 808819835 44548600 518922526 890512182 752991383 19878684 212189629 770485404 774686858 532637251 506808158 924947322 589905429 814801280 774460136 325221774 826429068 761815663 14711832 920104801 605206856 962808753 922158584 333339336 208173432 767687961 829443748 470091074 431166047 406414392 270534853 859834414 481944317 503025085 145116193 666867834 645204431 947594798 293532799 941523509 636835338 532305296 614702253 596507539 580878133 770761616 725727931 638226420 306065343 633943042 626568208 532990728 3251799 947699819 759298124 653125596 35314871 979221985 945407764 470089048 900749674 371619200 905383483 252472617 72226683 290448011 735175192 659010084 612557454 697581666 330838363 221284041 331394466 630349546 278397422 132719222 758537266 686869840 582769464 837937695 632188135 647264044 137260967 379500033 510052065 231964984 969057799 924690156 121687575 676805987 60460015 866459599 802386042 585631122 115522395 799669698 80378322 588236292 299419900 459427139 724683588 596587881 368458634 287894930 343154239 584026644 521169986 956684542 845914152 654201093 771343512 688248166 612293163 264640057 156126891 166631556 957485298 797154439 928094449 714800245 604744349 409794595 501628841 219572795 268448833 760494316 429794746 773529174 486850264 213198033 754335150 835192266 132815436 652770539 977357221 780065272 180273801 472117078 291936850 18997219 487412514 448863161 927086852 567773118 50792445 919931575 901358926 35717619 470478921 871856533 204725309 948204333 30652488 127165261 408809013 407567169 294490526 472984260 396527001 360264075 828027800 653611339 978030784 419931419 159844117 360842090 191081774 247008776 866534406 909620967 579711830 134055430 571618324 449985759 507331051 25004126 901962437 213488995 561346704 264575332 929947775 929519278 315577967 372698588 907914378 190321791 334967062 270482246 141651042 172561152 802030937 720301034 932642028 384216803 855024699 194496885 800648789 155576631 97904102 861354418 430155144 77151191 890733980 612581390 828212962 781815309 843615163 893093707 851574498 536126013 852522145 129992241 753565038 600385058 427691945 325754002 672943448 412586370 228835593 185912641 421502404 214384793 837341722 50800531 265411981 354948925 583362744 277164302 450419937 454920379 148739763 94029958 721533392 586295700 674581085 307926060 771006385 107354170 617833689 436132602 137231597 350039829 665157178 685851516 85351623 571048437 622626363 467900125 313658763 857103465 373699217 702090504 338937994 410760886 747953873 830359283 990427221 849665256 316656992 967267780 325795460 720106681 711175529 311362059 698520965 654716876 262729449 399804376 841233140 779344523 814989179 93637088 740767691 881070204 759378280 331328054 801685208 529914126 63628272 806472284 323220582 74257318 651698651 576512826 154461775 801396851 669033350 644661868 925559935 882035844 711116277 984534483 610515889 152295001 597157497 955516999 659204401 796796161 805792489 197829620 880645383 470794547 71401007 436926459 76745286 915667912 10150393 923407730 339271542 509571211 918587658 617874837 838823310 263029877 759090161 562167104 556761040 574052105 470716708 526233610 82238779 566104864 654073418 94107143 518882545 191229149 158981223 158016054 862302085 23316871 277966668 783834372 439890540 79450439 281524931 960477503 334213738 704538955 628294807 873729761 559963469 841212870 214437060 697325863 744757303 220409846 663522865 261646022 773652376 329100285 462075933 206067637 122655608 281907022 591213258 679427419 8027568 843397763 972319227 636376492 181142631 45706995 709843171 113464403 239361787 1172188 302876742 991740096 190035924 795429064 314857555 949048434 260211153 788412640 768915878 901384929 916849047 886211741 202541228 30544732 245370838 448732334 780493771 203759151 443726561 107667471 410953554 921737951 701363077 586045751 439664965 549592815 949514946 505225328 597262677 429281577 217084398 884458228 362585048 947820838 472097456 987392046 973265627 67784267 390184871 128464215 70445777 774610468 114479774 829600210 521642850 557526953 567898910 894609615 242030262 782663644 40028898 737032843 882870034 20870421 898757169 54050383 211734036 717680749 14567557 963553348 809599247 446289300 915565611 963807096 336755772 935085286 665422056 236900594 31909589 617367655 272675355 444009809 565978182 673106348 221795110 978475420 333054544 603048784 22960525 301584937 527536905 817252697 911062747 565087806 459440610 552301124 781401204 246114741 619665223 367597077 496783319 240779369 456478619 27021854 516025665 154757964 92795550 340221647 981342063 797838992 767328581 927323687 327562148 336030348 294597176 403411963 812464368 615741781 834084615 754973442 24389717 736166759 349313259 733732590 260530696 765528451 463427586 526539049 13456606 293397734 796377120 912232012 177191937 314992928 278548570 297357590 133959471 553095006 453386870 688152552 90000725 7268857 122370146 561413145 246916019 52105174 455587705 671498039 104229902 194245510 34152911 963188905 928908639 457128828 36506193 363362466 381274408 588197421 590958733 878842003 439325897 232615189 250028703 549672953 187268452 817779849 162376588 47968539 889260393 2644206 687785284 382408918 355646268 940103636 481016813 405650660 323107906 781580478 158092934 55687883 598715363 12820134 216158840 123672826 519646294 248018050 376139146 986899350 384841133 692229800 35018825 668380092 385044028 795721084 515926864 731676689 127786392 833153952 595812291 601393554 452440632 974078114 378611543 697321701 823305178 610159588 980732352 338848499 798865265 267384899 240131253 222898894 972025921 744044255 844073253 364160000 969255259 800375409 5727910 112080115 150838510 546317765 707559537 231592701 736372648 855884639 87191155 925839664 472653619 296869364 503129005 670949131 641042009 70274108 829823805 734846448 252998813 328994642 13719564 306207295 752940636 522653177 129534395 228056353 423571038 439431376 383838826 419717296 758336410 487423617 899900401 201634881 930258463 375547749 764422406 948925464 9498116 690689554 286939389 94769243 142661000 591998161 278884762 502666220 755733897 138349019 524513700 132943627 824536814 604066255 410084435 219008691 729954232 311022053 146922958 286291617 540361400 39425889 545793636 308628208 68834932 120452157 777273902 538151896 593007382 814016990 58889288 532854655 324361277 165400430 783701296 254087023 127479742 296882951 951679055 325677642 696523909 788027931 12723906 874005493 916524974 364645829 818234173 157144737 145921263 821003069 819735018 204053078 273541543 881717545 573847296 990564155 194061737 529074809 240580870 431443475 292691135 650427487 113001033 865307656 348366921 851420251 683709904 429392642 598274941 787350347 826823913 971030063 646342455 286100891 277227137 920200342 61515333 470178626 5803551 411244946 949778532 941038288 742364036 167042775 769717949 933600153 618182635 932952207 824304544 955260436 335860186 787069911 815551129 877373896 979799772 896687247 191460333 152836694 495719543 695403403 942593924 447713999 270704600 214633070 584714376 886864937 286140252 1412455 833313741 215156258 42719372 403002340 727603067 560381711 934486986 800086861 886692227 188023494 583964064 83806186 180580829 729025162 518064606 322890404 65286168 862844172 700317181 345983531 34690397 740335194 357107235 486826308 696660736 201625787 380453538 952285744 656536987 53315552 44133700 620702558 654378486 987766701 519951704 476575431 156983958 252738850 375223376 535116517 619385823 534880674 431539048 892821638 532590255 15440709 215728872 803739615 587363305 686972883 793521296 985557301 474425642 836824121 273305648 556718234 722261145 135368503 883165488 873876584 806456404 255278765 718947235 376435711 901023112 236495618 708153998 669726796 851675772 740780141 73601898 85710775 340794566 53217361 170477164 203437098 267360942 249324534 645674673 725790681 229059279 350450283 940463761 26765097 194233856 512152967 431625203 887969388 121289471 657459493 25459730 936943898 763746858 57910779 182938547 917015069 829408790 684895551 313529245 183926079 468654775 242745275 120202709 973018393 469129970 38948468 635715025 846026065 989065073 517882763 700879436 811794783 848162696 340171753 616330489 417068828 766995077 654500740 869836633 431563847 312878043 556756093 280014589 890414995 516706898 979528451 835594662 839567634 95001300 399186746 668176273 802841506 978239805 131009182 494971498 472093391 236819421 981719150 486891279 626769573 747730508 818343904 835810036 524468740 933586572 624552934 100454253 701689008 184255216 703678856 984768834 323245008 750449916 819274848 783139421 339697317 923163005 542459288 482258540 247738937 352774593 184618281 716912898 591530445 993069175 638978406 599047570 935001919 869881433 741502800 347648003 539412330 693103357 58441912 982774386 760206126 345251916 53023760 195739779 241517439 242809401 940317369 808928844 359194780 418484118 996273126 360825756 545226421 774911317 968278433 757908998 298491262 365966462 962906345 125479239 641066304 253841454 895541813 566424272 90348810 107718798 206297288 630206138 266428987 696888193 833754866 349321349 668093553 968601089 840519421 730308760 198105073 889028585 856947009 894223036 948345615 837729796 413847610 499542320 951652314 826310995 599990583 200952003 774806875 215143130 921171397 273422972 225581612 557592299 434161366 872153490 909016541 275549756 247214208 992297471 134248170 761474265 312525713 683801399 667586359 681139317 702063724 970841781 524277187 941196395 837731081 354074085 222747113 550999647 54102397 79949301 773347255 789136020 146243778 213530816 43921201 422656465 720916043 708165602 196560994 202019022 23554825 616594287 681150419 29650369 998802897 907288383 796906863 607479788 80623800 577138127 823494487 329612242 353683397 778677766 204028911 494210175 804495233 629175856 711199514 544214325 188365512 826046749 539184972 195315728 364608766 620830711 42201062 778535666 496215522 350854082 691847409 565282946 698947121 216118538 530941980 164061898 93861055 421381244 194018578 374540397 724111008 639856380 771424362 277064254 786560374 631625703 293692015 203716664 598542690 835605933 87081322 892725887 977461539 773019946 32482660 376681495 251199917 268637627 695539407 58848735 587964923 502743577 917036620 375257146 172178087 313799407 155384530 737901433 833140477 338027260 564094901 485783251 909592778 50328844 461929699 217038839 200158516 947633831 454830174 48136385 645838337 935858528 322695080 153343585 253795653 940469184 471610468 215578126 37913242 61095165 341609284 549386411 426257302 14650832 345381289 740232996 367361763 592327362 209848671 681702288 720755267 188882223 208186805 703299418 356750878 432113434 871597427 55330271 225783658 519009025 966567806 948985598 701344479 729490439 244263649 670299470 153387611 321247562 276983769 970254689 837361614 397248092 161095887 865651546 591740533 116524303 843643594 309647800 375338296 487653313 271345556 521859979 276126707 75973664 151887586 848971567 329150276 888283835 255789946 855183747 828223883 828583127 793242074 793349732 19601022 2319095 551082251 479175222 381955996 121394973 115025396 150892044 107836293 642469354 183688712 896007032 251295269 703952549 716605258 423601041 339374612 604863588 65636443 588882294 137179028 580725668 468658952 650916235 40741042 610013468 217374266 387162729 790828475 672446221 142197830 785542971 216695285 666697245 273436802 467564002 441753346 638397349 495251315 880046622 890152650 490110886 329040025 846635611 122766761 569957976 727437496 753859287 53402377 913868266 262831839 335885936 987101497 605491944 754832155 510826768 726046600 506844346 909727298 203078751 299129081 102944970 834144464 10740768 959313021 655139731 549048550 492064545 128640752 64040655 876488743 847625111 562779711 181199402 569798614 421604963 181427994 22262051 504653709 24384178 298919131 916990482 165282257 582446107 517868021 503671672 524241869 44125787 136497817 93474240 126021961 533463484 433921979 557437646 110085958 966004788 318142019 448242902 586280525 67703764 900832898 807672024 305225064 768488479 797987911 770028826 667724952 713784262 837037006 934199098 687034140 876959168 353375123 508045899 173126685 166604538 48000413 63363905 683183208 550895147 533501865 6324327 455891255 214607893 328705996 179162752 796171155 519719141 2029934 298063729 506084431 509983970 637068115 485000674 848960328 250457073 549221507 314679970 263854583 691278394 451901529 938775122 921586264 907277768 318624592 736158384 479192282 21928382 438412740 525162848 696239785 495724699 263715867 109622055 820912107 143829258 391455817 307805185 758622718 880617848 366982934 386935697 312637247 577756396 451909178 895242831 443911731 139677042 928625672 988366318 79024470 69824084 100238904 29027546 300256508 182988489 640278115 603342513 90467892 205187095 789604477 538232908 55958670 529329951 647793982 773797625 343104851 367300392 183336229 236192550 401296365 363559305 977641478 946350068 407617060 919011196 934454497 518295972 712080379 392343814 114876789 481679996 776008476 221842542 247908569 660301740 397251144 447171544 135539466 811506297 492529706 311957195 939154608 476641574 579255834 241940459 179166733 715440278 725809795 797019602 222566521 167561354 565154762 833564830 135067381 839984647 677542800 82034137 8994968 926651788 409325085 924952118 789800971 289779999 879508068 863408276 850208974 148311059 768632807 642105496 763387781 423271304 119232474 258281910 351803269 439157081 285198597 368563715 9676133 351752632 622887677 20629944 913455842 338298162 868749967 753794929 524725942 337969102 738061477 750559593 870843933 59316825 872695203 222573634 170090043 993019016 196817822 276914782 33790874 710174750 340436663 877061874 996108003 97217349 18742194 697737155 844467264 467253684 241018482 696725722 462301447 453318391 6215116 715628604 27830430 664318767 928879139 336085495 733369199 289272836 701091914 273079410 610717217 683699103 972269273 37254357 71048235 532641566 784639630 76156532 382403914 9578905 459286170 574480358 782487499 464650946 73387973 566423947 596265269 348189360 203251170 248448471 264147775 615856642 878422381 37691239 399180490 674807663 836585125 855689919 734174578 969527542 198444826 732872744 291621156 700674202 791675264 586451679 408983763 390977942 99066517 957882960 611326690 34239144 269879381 790562013 162941266 946384430 443888099 707842394 159651572 176772254 961885372 668652352 341614960 321078390 461763398 620218889 506559207 662087375 369392318 985862581 62198815 304077453 539387348 527357228 712633458 634786652 765520822 603659961 36937354 81180550 401188422 318456630 59853261 508866886 382476701 458906443 859272192 593729499 995780274 835175505 742742146 401692052 945996907 530873701 578689449 566068464 830290260 579772634 600790417 661170681 629211163 247070223 657864190 308675603 885050601 954210218 493789012 184227549 527624914 146857493 793918053 231339356 3155245 880292886 716881630 98385911 298034197 486226005 553120545 799653708 485156657 847145380 446597619 606566158 624974188 685014050 147554613 158907427 186011444 48921241 568367642 112451644 310543911 563682308 427830717 570014083 70982173 21571588 999725887 669375588 378104169 693237035 853144430 620544047 894743344 94931091 846116256 683838870 390098613 669676383 264217112 990045244 886718669 143337022 734960198 188615898 344676800 636915101 892290228 53810425 726775421 778399109 251328680 360099111 990313642 157876411 316672371 578670959 639019978 776611960 890094512 469481824 62160558 51954022 70651683 905562431 161154656 78553913 762885839 2221224 802624655 56761695 743622507 720247530 365317579 439415061 923250418 303057453 812649229 661218689 761276199 364787266 24109215 633930879 134914443 647510137 902526769 467145919 575312175 307801486 135322339 134339464 308796275 83815102 778768384 155391778 183861008 725461576 493955811 627451971 647230986 175319566 704221478 789920410 283231627 57471255 384275559 324709297 914039246 463663460 203343873 996757492 789813445 870445798 953027207 95448303 985724603 590571687 54582197 540216258 60125314 180021040 696708448 413948146 490418368 359134621 407389022 336553062 629164890 499453331 83111325 956469242 457164091 470113481 842146799 825942133 828765191 686606466 17214888 297796317 162476597 437598360 529594539 680860977 805421153 101603919 991492800 425867630 665739284 326133152 522132983 470482976 354201747 817856630 81895138 360303365 253126779 649107370 521349684 797690281 238232445 452744748 589810914 859447399 169228812 30223718 433679923 195961511 428830884 833774385 149225117 616400372 201243274 499926944 239203270 142761014 519339585 94254322 623175028 534758551 823197421 123506600 193501500 552339858 890839798 922423366 263835969 171962763 777510861 273761532 585433188 564676111 965540314 606407035 239925192 886111256 869914726 369408133 441277520 430371866 356870861 628390804 558643788 499711555 67597724 968320944 383471096 942728926 322003314 717969182 493731959 867508057 334809566 232950455 43096388 672805035 334430364 596237865 860286821 770550344 49499446 52031070 656346985 594338268 577939271 624244328 959533777 628286244 529374559 148090494 288946562 181792147 55981255 620400663 512041542 396585558 530553934 511063452 415891293 430087143 441481970 605856350 302109175 15081910 821193274 208096211 506782904 481198609 25735685 336003426 350887254 531307075 361355876 215715619 59134196 839251956 221270590 139331066 74249538 781445134 952244598 892090173 739608091 699786618 794260967 207405807 247968215 990992544 359875822 537233914 435057333 135521320 578262180 683305028 256009272 328473148 529664687 924570657 245921531 686301161 906570350 39767131 728268683 816789749 572164570 693732246 91656878 332284221 345187000 903213809 363356955 283814310 977826071 25352087 286901074 759543581 867322732 667413387 317408895 558599656 577984647 7103887 232757106 596653528 418324200 175006853 727391811 345001318 203304474 39655234 44936598 434004398 552412212 941416480 182340989 992883011 199818836 930698101 236442493 444059351 505376208 131526761 793431130 212479743 635130405 921501204 135480257 162527129 962995370 801309472 521794736 104962499 262074307 326577242 619074686 572520216 704313337 776257450 131276348 587502970 972355517 559729626 182199522 37280028 553695508 869566062 991523016 380938673 291626902 434360192 194136300 475382167 571893457 617106480 721622141 464382888 996377922 460497289 391115546 92405224 128694114 610519408 595649538 52046229 107086445 267017531 802046196 660403494 940325704 588323531 889360561 90492686 8970369 860791391 862361336 945438510 343763188 402380463 712564372 657289115 863579478 409647522 194239878 169270066 962303951 613448186 233701892 595982767 730468711 987650468 349274839 706274932 400872585 153910667 147900187 173409698 489791202 812812176 832501938 798524977 367486556 248244873 40589614 817372457 521388566 73668121 990529801 886023394 297471116 296575131 773886039 287880161 436842828 213281997 212703252 948835173 416241514 494462615 941941558 283686880 573436431 349594306 78168708 642651883 937133617 581690643 732662744 863792603 734119916 636013991 900251790 803470783 70312521 406759540 31882166 947867500 887724487 556725050 336624353 503776656 923355232 914270710 288177602 669530746 681446322 540777481 217206561 48960778 98108409 665206264 987557224 308657582 423302039 207379429 974238164 394071911 771288745 943562321 830934029 209985229 102852693 605227074 930898253 282940311 898344472 902010344 386328196 495455511 908540762 114819139 10105561 45718114 967714580 90676910 241928254 575199039 942940231 635506973 233695798 780305448 611537132 129805617 697905302 710576128 207981341 905748592 464332040 693246360 608633903 747360629 170974925 541237033 11528925 763053753 246018807 976965711 955144770 656601300 609929319 118504625 801769355 58358309 783799898 651527843 513946999 280648065 978460072 676800949 358287219 122609706 973142518 421876551 592529435 324185069 941660798 735167873 411450426 582807397 342856775 175074376 982040927 500704857 807866818 390736015 687028029 781074757 304454860 967079640 316245199 164356668 96089520 821323799 519509437 314894507 109833952 175019850 207318541 908660593 847399869 620913124 338112320 807029573 473927687 385442378 12499975 340424434 544324704 846556178 689146900 701743352 311766527 611579016 964553093 409700846 808137829 878521108 131246046 742970463 78634112 435266120 434673588 926313207 326718399 950238213 499666424 321231685 498371895 125142674 433158346 882893680 753084139 540014269 971926219 917451490 277813429 278274750 103086885 220397396 458285017 76652682 744152856 317388189 15574394 639408852 14234408 635247624 170932118 462176422 12988340 247049482 390608409 147593667 106677746 335800983 794246922 201662081 630653403 734945546 538525708 536225145 469660541 992959342 565787413 746087953 296841149 314923601 644948430 63839869 765359053 420983745 99847543 143737862 703467970 483866885 837303539 268215067 675082760 918967323 813032631 327733862 275824718 86007069 225516620 889689797 368695209 473783500 331866003 357530391 770048420 456678513 91775431 438641843 522662368 986912705 514554543 613318459 977851388 996061794 134909903 729378865 322477502 31916761 735951281 769073966 406607705 342508689 817565481 494191672 780432238 649283325 987270865 31004979 131996741 303605849 40631679 645488492 112364947 794611524 631083302 537446010 620978798 452404086 215792001 650616120 660908174 903512673 306882858 271185020 717569949 700477081 225230309 289625859 282780845 224618768 807272180 780269782 63499140 346078601 447147936 393925776 307628817 973272950 785140926 276090409 506262028 501470999 387284317 174868976 569693457 597383384 285733228 125818303 487790011 492253845 981714076 23344426 337489335 967425070 807477965 546760672 439968676 22915944 94473627 586597470 310991937 741718564 924365182 773653020 364363443 115369590 157579272 744087717 865104656 769247426 95342014 783185980 130254711 606359915 38967925 308296506 682541307 248615116 741565974 464408960 41623409 106005089 560365439 633034870 802258929 639510540 555488504 555538123 785482979 92056193 560655295 195176818 732794674 350286247 957682482 916668021 954569249 890346797 315424872 379744522 596741118 509067454 147729333 38626259 914333395 704361080 512830038 669470149 996381278 873668323 815820588 174865351 179059316 398230464 317342891 54447220 594883772 97852893 892316335 279326138 196442759 970931470 752423396 714409940 486372690 468194820 77721188 812777368 77599572 275860161 564859754 621613245 630093277 815867976 665840318 71800814 713039446 528051597 348762694 604973126 85734673 731507002 843784401 690187484 542020641 220974198 54562700 636725026 691191475 919751272 980533328 999863543 46707870 504917918 418367991 449890988 643432373 633716168 830977055 173198073 383377393 917143051 833887265 75956748 414468891 406008306 651655820 414424757 566338174 323926300 960309162 100372918 713971933 193811946 796615099 350773060 369003417 546327000 531483723 906281607 137442192 804722292 527581402 364129127 408461117 41147457 683283304 593873876 323179172 914155215 675994990 491949623 145460418 80388980 680856560 132967499 661041799 182275112 148765835 373225407 458883893 388294700 698577436 174626043 856354647 987279072 475578810 729954978 932953666 339257006 824472792 134736693 901356117 631352530 633148614 476048381 559950714 311980316 853039213 819978369 442194368 474819557 257727798 598252438 530565481 631263518 835909210 629613762 205476342 393898401 689137523 735237442 190090534 572435142 748615853 479168723 754827733 259145441 560351471 634251817 633896624 217125509 482346866 594921049 912295529 760491672 443735696 512049911 463728020 608992214 735960288 595962412 641170889 191703291 87405681 637881884 480301467 379488466 467276359 100523070 124916140 459457953 917840415 841505147 218208953 188472147 711446602 670602803 542649134 884013066 552732904 100867759 220090932 873329137 705318817 261840403 500285099 109510304 494838478 286511880 793681020 838027387 247171544 937436506 684835601 143716970 166061686 84602733 746312361 941746458 839745625 461503086 353739223 739411331 190365877 786030131 948463553 668354233 330102993 781606616 881505623 451416077 149262000 193893290 401331317 54130969 637769857 449628940 643840376 567627016 655050131 736343149 247911663 876667347 281851170 551196291 53965051 731215909 575161288 153792388 395527724 109392820 823971450 634768478 51396049 904063848 529371986 963207540 770378566 990499863 885428984 665181038 812518552 933279394 635320924 550469780 266298489 913005160 16878247 864902353 658826514 677147788 181675428 994517530 603901468 960805163 902903738 50959233 352090633 42042514 138004317 688837098 838966748 266987325 685637308 139251029 832183982 180573183 814609875 15800293 761490908 502286442 967462916 954918192 599439561 330668374 517948357 625926148 957011770 333290793 522626872 703304807 374809964 667238827 488234224 662247337 200667759 639308733 10517920 264602706 621952075 784156722 514791270 593350710 467441754 536551898 906013697 434111996 761984376 674500396 417900757 142727880 766132123 643038170 831437250 79913974 104060002 45599164 635444529 913299798 77006039 261802389 714934494 665421600 546333984 989907491 490867233 955366402 330744518 347862995 6475182 259758228 650354692 833263745 634611241 681713943 637589786 776200551 168158358 79970474 931691427 8940463 205061805 105325241 740948769 726431557 685084457 273131661 749566667 23392741 142974798 673141922 911882939 367651590 833359746 762606383 555153644 272207801 905810426 25912314 854440235 323403245 903227981 602937978 412014803 904726666 846053922 561933359 856307124 103432129 504934834 759525042 11412162 901964946 993924395 400279490 395160120 346973324 307775053 61636900 895031941 402076264 463656014 631241006 391819045 913370733 901766072 778329329 887217760 322845711 158132433 263397908 633515588 688352316 890050589 876053918 195707099 631551509 795461243 708458324 286355003 968355361 58389158 950781550 696258473 798076906 471504021 17636090 647866092 958164899 935776432 250365031 603303416 186181289 797002044 937651865 44094987 160995638 365129073 683513671 446833957 953541658 548365038 678455852 996364976 228132757 843955257 794072775 576864777 265155118 283208639 716414305 585365148 92930674 483014563 459332122 872825488 582540771 689434393 204298526 907904835 800531007 122734495 358901267 670644095 901697045 909103844 385590697 338773419 757292222 627639916 95969807 363391353 868946987 578404761 518528423 617018404 990247446 118122201 803020504 261945146 692375515 837438946 477981640 804101996 905116058 66120845 541935740 154325203 961938293 106127101 610907472 914537256 559255241 740096605 130784844 401940191 124438705 25047750 512042408 740743849 841534602 60932559 136230579 679819214 542292014 736656054 979353491 260394857 94746008 782654806 530567066 639990343 689706516 404919953 580725941 976120471 981419639 673378493 921642766 221643290 481745639 280835084 645265137 519955598 329222263 529694270 238902099 830062472 384578830 302715263 771445635 878239478 457732983 877734712 475431151 136458850 672879922 483488171 700371350 235260267 569604836 476090836 104075243 459459888 361906292 215356932 654372742 302691964 512880838 99102879 164233625 924881168 71227253 941893439 578252193 740373815 413253116 934159424 960568959 248576726 459532059 432805323 713864438 645596530 989809169 892625984 907975439 694750915 210705497 215595091 291322934 441950691 663888556 365898153 277817347 3534852 279237697 442301044 544927445 245386682 213085324 521686800 249357768 302600844 154685508 729806958 574626832 910065431 246481304 434640839 380695609 98414890 874512048 936939118 697919831 105374676 237909550 134297396 134988993 487098610 637041587 250488594 21194180 980862915 591723542 747662061 366034515 830741082 6228411 312948345 520504647 916744589 61922780 736285534 778452107 996812988 621872845 2264959 550143437 433497118 709527439 713467240 468922572 381893069 363628337 199098247 551309153 516263271 84618853 914482848 297197689 703110175 779272807 632452775 933201616 601191513 906259473 408648125 345715479 556490786 142533867 812152592 799472104 482623352 852168134 619627190 910488375 163962638 223437903 361592871 928731747 238770174 11558437 629600249 297972331 397824877 524703343 485304142 922985113 536327621 875864365 530927688 579030743 831292488 368606273 94325631 67521051 305351776 332444212 450848742 33982503 490921185 778489938 619236132 834461290 300999672 802639937 512320553 963927182 681577631 595922857 663035518 821273852 208908181 84295987 562041996 199806053 151624345 341917315 397147178 953279468 653636795 119553403 713858735 843582255 241437784 463714506 911841084 751880320 345733318 317706761 575499259 826262218 88524993 792384163 898948321 43824379 383296863 22260376 178042880 345902584 379693083 7512920 850006559 278328321 939753332 538659604 355602769 540877298 985850696 496554417 817627959 175815469 520254944 58103379 666711017 338885216 974437923 866892313 845869194 19950744 276477519 799487267 953435831 429626297 446512679 268202366 822039715 923517461 147058722 49329528 566280638 64912786 12861259 876679461 754360138 518630906 227244952 972100085 17168105 670044000 563250771 542910466 397556142 105518330 322869111 130993221 655538810 531256454 295142090 219138887 394415021 522900459 262156198 895660822 517571404 721810598 8914019 713394498 805084921 849948871 472263030 943294628 623016235 664285535 979561764 595722167 309790581 752144808 299808000 168230935 417328400 513885987 75557850 803340392 526102612 423161607 826098946 504233533 330028897 143669602 963820737 690689902 625853232 941083591 490021647 699802026 941529801 450828943 291085229 878660751 622125655 663538572 510430933 566068539 893859114 696991840 473316716 836493438 935294944 686724060 785569727 599740967 815027996 945319467 638695305 129109082 639273254 852716929 502755035 34537381 800264498 785758175 850782044 770961693 480126239 52348388 152694809 13033819 992865245 191516006 111380769 547561471 206624819 511310049 322577324 857525098 103292547 63906376 449113569 144925191 342391272 856424162 615191520 155364291 556661313 177333603 931760345 521134821 335366725 888820220 542659889 346283920 44544867 396835670 680371794 198785447 647984159 88163258 697025014 330110271 486209537 413305157 588491135 199558011 783481339 944072978 712491263 858672153 175917086 116115433 447776714 865575395 781802980 702932133 835462211 181338986 249204251 475683173 274836049 15567939 952423304 22293164 649465223 712765503 82335549 550629534 98631668 63818476 582399685 994488936 708029128 117378769 996104240 470096082 433764626 431135092 714064858 922747698 646096218 458376762 572900512 937290703 916690941 264380903 767627176 920951317 548316416 768326417 739784613 809500639 64302248 54569589 590940 433831754 73477658 636467445 427247934 842615375 222926008 175909307 469418582 489257525 228622869 516132715 98757331 253912129 876190698 649322080 96465398 609035262 254545649 859193074 389759799 881146771 432536725 641090554 37258253 226489203 440726593 289371819 175546486 218801697 229118513 517224698 41509135 528958074 583131542 688559119 849098551 969724898 626699183 103198800 211453577 117071421 940021991 321460817 939831464 547954834 817615186 41553427 874973825 637361240 508732715 660046027 599819010 273956052 617886796 197089193 222039199 807733881 762067369 273385800 526993425 381756017 504102265 294168744 534481170 906029135 126060382 399041342 687779692 850155531 561350163 186595771 890954116 641044558 683351091 792274781 105987047 375963129 807246507 426878875 220149957 912728725 88815278 749659340 723130710 615052309 924079323 830548988 380265998 851250969 884740103 458772795 505995146 188419912 862305938 645461818 931859139 927592701 236508400 631382100 95660917 240805037 93162087 676471282 520833346 634802994 586593830 844382832 996103788 36465978 501848428 723137048 946987149 512424556 690072215 193596065 73768490 680127166 99105401 160581627 273796124 238146348 20515410 801233021 493925187 366245370 730431278 279319031 189561885 479013903 196839233 183680930 352477373 136814031 668904359 748090167 351057226 355446823 640020969 562465385 132945015 621696861 837994518 958681980 750434854 850606550 609510507 354188731 626944202 297214122 755255142 965762890 428795956 763902488 154997257 936241279 842144467 630480411 410240356 1365888 47899061 141105410 870064540 868594859 644868963 232994224 888347515 695435723 347855484 278226714 935996493 279562878 182266808 682808762 763268797 487583016 205102719 844535355 750732232 16358735 294698680 381687918 322624638 146865781 328368861 806185739 93002430 968650330 405763357 200905913 905942825 842095011 50156594 605310133 170284681 462610879 468863145 115784834 277859764 903032853 128027754 545449251 288819485 143207441 780742134 469730822 8212331 744207008 88370560 648351877 334289371 550123808 982831069 853240174 999785873 911177375 336003985 817747229 388344872 784675418 265546925 749476651 539121525 806371008 90684273 209524015 571778891 274072734 959820433 582092694 169977302 762005712 605996891 293824730 801150206 50864850 863867192 341293874 463990027 296538333 631036665 311822795 445748302 131611601 260368195 25549132 733219207 695391666 125146139 114804553 933441257 108231735 451820881 533514462 363238353 565952879 866078769 913316187 20339620 713974791 508517879 64541511 646501269 721802113 437603340 200482269 93069823 585835800 333723135 935593425 423947841 7188944 682496481 263563619 613709094 558588105 368696934 701994148 444289313 262312268 199943117 959704578 102306224 266141735 887196794 712824657 619945690 446302780 700961482 116087353 270608143 702687905 115861666 90551654 379263521 159532539 36530719 65166362 142604500 986393235 81963150 304141822 830509904 911227709 940201711 784383544 941352313 734804693 26403358 498180486 484229863 342308454 539038912 925775379 639138094 111004302 832631773 98733345 1771503 331582631 42724942 101676641 889996361 835167871 33181228 789286466 300516649 831167253 887165050 657046029 88064375 777617210 498081089 418238948 777184309 400160236 664334693 561100722 827072396 653496671 415316566 501753178 637343778 269951706 48842168 155220218 253632896 485148823 623140436 172705257 201144575 396637954 151420755 182341887 95774537 729903591 41328686 504165369 141415427 45709075 547795841 102459153 383038009 597488623 678064704 778291727 16413013 97932291 94501638 605888128 858253333 476051932 39641612 845658348 295681286 54825824 785873693 882549265 291824204 281807041 9041586 678600137 377241266 316989843 220697702 455144214 7110809 186499163 139018778 309358085 796828650 351519860 480873407 843120952 346626291 213574690 280154076 221365506 596238398 961778019 178606836 614655414 875516592 699419929 767874851 75821498 421849598 475977244 820736344 560217647 425325025 330241864 627702312 322781653 747831089 325335232 288512461 895423235 108298716 559195812 262900097 548950678 87922667 514311074 336945714 117884755 951360837 340999683 568206751 834352084 266096950 429086875 623793669 134479909 749120674 844307995 680209441 790520735 62526313 416671351 223236672 920092846 617418663 575669467 878002413 733819874 99984064 449968766 105860994 331293702 149912057 709655344 648421430 655923830 717241112 356838584 112690068 9860892 211807753 577770910 780712094 833444532 365117475 602688774 273568621 571775914 811373438 273166090 935066034 782805423 459323109 902679691 387208223 281203964 462637205 109269707 199937957 749665270 382642275 54580402 826553230 492859868 25530978 843607720 223830306 680272245 799485279 61782543 504584335 720288781 884708288 681751342 33196008 795358686 586384994 162319677 529882724 164322278 983464276 566832542 705423387 507579882 867112642 284729624 547314286 74844622 133981579 591733456 770846840 70270158 909024301 146184623 99226614 885524741 821115988 320236387 414875186 810239439 968463333 739469319 577506087 912248860 176852896 720447328 599940430 987754292 714906768 614500413 319734178 979303929 410721129 883591522 550376016 356698884 460355855 681662657 271600441 996407839 926951390 381823468 338929191 140908317 980624396 307288828 788423434 741457098 698633752 425349900 971539544 181103406 852273995 517514070 964786931 446980978 456541501 857221044 156339007 98819379 983995123 602415104 663681234 816860935 399439953 586860491 603530864 587417938 825256901 301874821 581857912 178152162 852896041 501667651 921292413 273956328 95068193 572510205 453524804 439538824 567658314 836524103 355513227 236772835 708923548 679335558 498736801 992154217 185519051 158591849 73972604 226208559 116675227 139628428 959763946 372737274 557994913 968622102 225060283 633014385 416250471 860616255 578834463 352752232 191841248 365644991 627685520 313609357 10065129 837722275 61238647 402842943 32956425 243747394 947171683 299142710 354170037 810158945 899590934 798113366 230731075 203524191 313139524 365315774 583228190 757558718 112645381 475248253 344034734 161573341 347929302 665574894 769905952 526655802 214118006 149178917 669875803 921639983 483186255 780847178 198570963 235876825 947041458 536935792 195727775 697764639 768711897 4476757 66823161 623675380 59209585 535162834 162736190 259648426 96039663 681152599 106297385 80623462 50090698 577862787 684667913 953929959 325325533 431717309 166880711 549949516 422086109 535191620 62089626 104245106 126845407 872071660 548375629 718593402 331452949 183235426 492106820 197256092 348041347 55429271 177590702 314948571 86223372 336164582 713386727 423544810 314172588 572128884 623554658 992778727 610595805 634868865 927403594 749894080 268707255 43257775 809431024 739617284 296359442 985220648 792431677 810027669 133834557 880958269 467757777 462080455 887968462 72404757 472373303 919229569 172617541 476354514 432100713 673348634 753175304 973851410 216125852 399789777 635889141 814673801 779031365 102977782 379804492 741225014 475497230 380672009 920544644 153442802 678067461 226749406 176454195 408972494 365718456 156870109 172569674 170783142 733880976 912292270 405571432 509903247 626373181 654474677 163814476 678263618 965374951 582393046 139199306 368368856 337111839 416202025 336126184 233758163 711207744 40600978 580407077 276084674 932391027 577172016 493747483 536376008 166179186 949267203 866679053 17575037 784449132 361244424 930799642 667160497 424712822 856084630 607526640 157205918 685061203 720694785 25758898 771986531 488565271 958607431 638750829 387929218 925810692 329125978 416362867 260453448 881293256 914571047 397852154 100161922 314904455 318135980 583529327 478326240 96431627 278840810 621220572 176025470 962816039 98006045 211230166 213935833 837074889 524950613 703458008 600826806 246065923 990189565 151711821 509008496 605796500 951647610 730576478 449384532 635710876 952356785 259029869 373042897 26375534 586771748 885512243 406921580 88622385 960746949 450743871 689526417 647947858 894569449 149827551 370574658 78090963 938389615 553563050 739890279 850360088 214295263 588716310 296728253 676704821 709420883 57271918 958902587 106146250 723018597 557044963 363828130 838982664 797545046 645985797 504191920 492890896 923895786 905743381 931191977 804361694 236790651 263789864 423759659 855102322 451029905 831152393 409783838 490274862 4915036 146670802 247272596 144586803 573136588 856678102 558555178 624590311 911876086 123215706 241846231 622881053 579378960 463025792 541699935 238336318 195371013 430257163 645159290 718225243 428853618 89653883 496075279 527025678 623487209 871830112 204833551 202295038 711005682 867159345 363093406 956790543 15072220 509583957 406787587 139522286 863089364 970822495 301058965 599126036 234315722 19560301 364918945 413438926 646418296 675091629 238692308 371545679 168400222 689596804 879788729 295269141 831718813 982550021 359272096 438674985 2029006 178709043 772321594 792908977 942859963 977495769 978742410 776249985 894459377 322639999 851876346 502142669 196203524 320001441 263281154 530789282 656188634 598853379 270193188 742298427 902440723 892129802 581427042 777224943 334268473 963106243 673686509 28191753 600098304 30019794 890770411 741220918 766022452 818338006 811061515 975428138 113303017 531933181 248871682 754108850 879822095 861438535 506361237 982860463 363232750 732764306 162519177 201581434 588541490 842221405 817112846 916452139 434321702 71521750 518611159 980096628 821291476 345527794 208071782 790659857 397116187 405103885 569862490 981815052 247408376 231544384 833831170 464005099 498864478 796841795 16089951 58974240 41539267 716374699 905337509 162769237 721291042 759112919 369899499 347068255 489832650 367054316 894674673 290512941 502328634 27819700 413409058 122115834 277344782 593776046 900130129 40491846 991995925 739440215 649687989 618410799 419172812 198913834 554548342 758602349 999460172 962152055 195243378 463592134 268662418 593441547 32701397 14174497 94701744 926124569 442747172 864117425 746801917 818335030 731747591 187154039 880454907 228636097 45800272 517890391 330362628 162580533 130842609 271252955 53055229 190671965 725806716 155481227 678034967 64100421 21025174 270833257 888029981 46507097 805505266 16454430 229158666 325243949 933405852 696874728 999074410 756768255 65820897 942543191 874293001 101108438 648313409 650095126 293423300 405106161 492868422 347115473 917935094 36101980 469133550 252544001 760057418 378191446 970400007 34787586 818083949 104223746 49282874 553791990 148501728 746707538 207430792 275877267 758403594 904345686 3159480 362897728 717609406 526521989 937431211 802594138 624059824 386825458 984563936 627062219 14648373 880765781 858246614 410226736 784632505 223040138 193689307 185709097 559749676 937254957 880342852 33565663 239804236 433298386 96144364 249375567 183460576 696368931 296762631 483453731 217883783 207002871 133255249 540408250 513850324 131389563 234646120 316142907 207369016 512555663 47990799 535118001 653153020 594017846 908385221 552329008 968717272 407789945 727451894 561997341 364117581 419749549 937605571 842903047 125904463 869892899 543313530 79715051 311064064 915342811 838305811 763549745 370131132 926220527 224314976 744462570 469129988 728151627 326992648 737439162 833041878 868735797 560957904 467507273 570840359 141725874 403925440 601349817 52872854 165342044 820639372 259720798 345125043 328001308 531729076 679251919 976621167 356948261 175974517 302218506 527300594 726234858 899509041 42477711 238411267 686811256 203233373 433057400 676734312 13511946 431617266 300864319 162997530 311898747 766619971 410484768 52947430 10296030 129036075 740488554 852211616 512135320 325991512 619356369 116911270 821703980 515599281 95806990 981378975 44161951 170244410 620769811 873426355 27590041 12245049 225833509 384635468 98571426 299905974 751106156 503396102 53644489 781292203 682329711 620263899 988027847 393586983 731124520 456623461 404937256 128191080 364391732 405558789 511919930 726763419 883573161 23743097 15490724 832949773 610394059 712381728 632420823 876730745 610328712 363883314 36674442 802118117 332293168 512988820 863203719 300977950 814992604 104121520 779778993 208018473 839194986 35182770 578984562 950427848 584879881 717118998 180319857 94572402 877500844 605885261 460075526 691179976 94488168 459305278 855900896 45013338 917044045 623298223 846440624 88623882 605157938 481244954 904981608 214726777 621459846 420052528 496779828 532511232 409052687 974960083 659411132 645274550 142740965 33631058 488193543 853979428 801077846 645673045 978687599 225127330 124316798 722733104 156714366 918138295 318940939 797036645 821718573 608969539 394317174 772772993 797842603 552047763 77561456 104797421 947372921 396980375 279614301 181298628 108618453 458945522 75356634 988496759 172622283 279543070 215351014 695918645 155068167 918439801 546298217 579476955 503084492 306149848 595131006 465242801 727013107 903962401 690567347 328018957 932793752 593143341 904068041 759290180 904019559 80332948 318290457 273000971 788489230 299139055 455469009 432799487 777113814 824472618 878701234 284727354 782747052 571798920 182596650 113750190 304474341 726968844 338234114 659745288 739550284 722891931 332460533 38479338 286243469 943566585 175643517 403046536 39729013 843517651 489677052 597455462 242879394 140464493 743980481 457657076 691157797 826099318 856990624 58036775 944831918 570045844 728408385 196882025 804903060 645604364 691130583 90512080 90250267 620687056 742107596 279918895 211822377 917064637 646683523 587601023 651887125 421675722 596066286 375780288 688393363 708672704 55661992 650824050 957577324 935926640 580877392 40283290 81517113 412630540 993079754 413926320 551132428 961832646 779399225 709701203 990047655 924833419 177124163 60783898 574256049 76015363 292424524 795913236 254654801 26951169 936361439 58365840 749360628 524367389 427698263 579537203 771346691 356630096 394429592 349774289 241036385 500780593 510414457 93432538 585823968 821593436 507661469 434180906 383443938 794411439 735862418 642710501 627816112 961591841 863797992 788471795 691815384 124978858 910669297 407689767 868627786 72321990 456442062 138427114 96988150 124366003 41549436 405399127 997958180 677482344 638487965 376970562 782378612 662069820 105991329 813474484 565041475 561095515 523460091 796428291 204191265 463302776 275262602 849186179 966954807 58647004 629928882 83344083 15793508 434462536 194071581 840433340 96108269 726749605 566422609 420530100 141311740 342785920 548946245 290021756 930968205 340827759 416703394 660285195 588790997 829358753 652550945 684038857 259567884 499411640 367740121 74523684 705973 667103820 406825354 825498947 855668294 559549667 521928680 615953969 340924874 44448519 308807832 317521127 777000590 473445623 209204267 417347370 671320550 564747597 322166923 586322383 463658567 322084535 261937074 519954845 919079873 962037734 454095176 250011963 680911084 847365133 548378499 99437195 628998675 585870253 9101031 418318361 126808520 453662918 724854406 254066218 731469041 808636050 354392445 951984154 14670598 497121984 960063784 843785612 370583099 149150719 715607226 133138458 841447508 606998791 556956035 652394724 270215633 220910606 422308580 78135380 143984736 378091233 209851606 5052947 127288786 375831996 345772719 355244431 83134559 668990342 672757641 259062492 67854418 108407225 518290990 806716115 274945042 46098511 454862013 822896911 905125394 769424464 563932925 834318966 493483790 708972271 519523504 455489086 692025155 706991238 464777122 109076004 346169370 976075123 914925594 385721296 717352847 573043681 380710437 466630193 744080900 31558043 796089616 850963629 183722492 541259140 154485553 601488703 401413938 638563457 257535874 16047958 248851893 967562065 309832867 644482588 81828985 876036576 967227013 748268750 448115708 189586537 203795856 823377397 891207279 73029491 101057023 254136459 557733910 76714257 962191657 179406898 292463094 64583174 459448739 634126834 612500961 169673768 747359197 591969826 543794141 711453949 378045294 986389690 9272983 566546076 766708517 683198540 817909332 257287862 106836300 53452319 609476305 981571973 753290590 547753103 933227220 819489686 959457439 641562758 494842835 785273354 889965504 632967924 289080724 523125507 149507492 413838979 460435387 566127562 503333501 138558480 167384579 109875862 973781999 422853728 364993180 663523641 849808313 169619400 396895529 240316633 574056106 610231687 828426166 312020618 726370873 758978370 490384429 283456864 501778340 825714247 510809206 845559679 581340330 757314234 37998995 722957985 672358861 707104913 540369422 108767966 211010572 961134905 839651573 738970862 683476650 382472842 225103102 815998845 19653191 274156516 626120633 305616107 888955874 137602596 607169307 952020523 87360224 534191209 49243785 322258759 560393542 424312020 972544462 786666395 581313715 343909883 793319933 536018285 663955790 914897075 184036964 268143607 669793217 906729165 836137830 225358471 844868206 915037506 372883868 278921252 585389221 843313183 862295785 21683995 485389669 259069860 541390260 443349597 834789999 790156172 455917698 937621327 236174406 216309149 876569725 816293750 98631792 669729960 258941843 384739506 783710162 303927004 589398301 444773535 302767452 386853869 533510700 341379382 536027905 7486793 438901733 931175490 484271558 385165770 206361738 612210885 846924983 549237897 422337705 985079458 279197533 212511216 218819744 417596119 777440441 238847457 656883763 61936644 767436214 167549296 869947594 855010113 674323238 228719657 431930053 884969777 577882492 662042321 20489090 630987355 757404951 799732550 830137673 747011507 808672898 411294382 902640762 639435687 515417731 625931896 45978665 274657640 552679224 359743775 833753056 405633702 529028387 837950301 476011335 653922187 291351070 864865896 616787515 929365434 248391582 767934410 14013449 806279016 351419940 191894477 729297905 101855414 859632656 120519656 616972438 844354863 554268431 753168139 275437043 387783460 91866760 316266798 369188560 302185342 905960368 222192604 486530427 992210072 189934094 143620495 938601150 455750481 785400866 150823521 971450341 37980618 808161029 773228577 16251792 606651040 284555955 536296495 265057922 244736611 770864741 812057917 641527639 187420376 446483069 293027017 255823985 792471471 536548635 172618647 375459962 460548087 348828979 515978188 603770606 114428114 776818479 492447518 728936896 753842790 506416701 73596828 478091795 827869166 359878046 259315126 360315394 891902849 709306958 220716610 438152887 268332198 219143162 993098764 717527435 755627436 129230917 265313035 681462811 788760991 183292994 183699018 861534233 774964729 171808064 23228324 368649168 396966263 448695419 116603938 258768979 208137699 131929609 589112580 917227493 12764965 639662151 693398691 958485613 94025152 135238030 973223122 320033551 160049 583657359 705905910 510103386 329769504 955378812 247219119 632559089 114993600 539159996 271060700 25679742 532065502 845616374 665356361 197230095 258577886 294539675 681427801 26034891 381241858 302698770 724958702 436903180 477084651 26661909 376586872 760283792 625567389 370545547 135116459 527279392 637879284 687755266 183272796 560801646 282305919 716607462 520887219 26249540 962387572 236654821 449778433 806085076 887935938 292282422 618760373 505519837 431485754 208992852 595241872 663597213 907053676 954884208 973846551 231485841 221299616 119453223 995782693 77451889 265710925 150399437 861102893 680525210 500341013 384959274 394103285 223989431 912627201 518201700 599237710 399683831 794981271 727975324 298767836 492072035 718940194 733533972 808477444 686379142 420917687 918428023 19634781 471220625 282753679 875256664 66300002 248600706 901065366 306443415 725152713 737416213 111806957 97998238 615456372 514531382 84299392 998749323 84573004 135979744 18411323 809697896 492567810 379799888 529105635 864472271 412207885 354737329 874786428 877428483 726328705 962335747 74570396 641069367 711423714 555617114 340768199 635009214 619654754 91578962 91398126 156952807 768176192 811633377 566954105 775678508 440634801 609233802 391695755 788877705 825057778 218402352 638624898 617437924 140549166 754479855 941757669 447768061 862628687 489676505 930853138 498106568 72391394 645068623 796671290 822999430 973543005 220320617 226605211 848101269 215842990 428173453 432608330 964426497 377539411 900266185 815731148 360056035 404654270 213673605 142163964 964051378 231747046 932430931 787221030 204395955 448307855 275564543 552276165 185403607 849193469 729565193 222415077 790229545 912019047 46488927 508645808 671963990 840975570 807399851 638781901 448244881 946983081 964218517 572073133 682718009 973503421 201157208 966257125 987993612 661630558 387986470 265160698 819116377 578597082 190507181 983018140 817754635 869681551 925052176 295898324 379621234 963925269 903867451 524448591 254414972 361872747 865862663 423603875 239372207 332581932 445253337 678431436 933801025 876016512 12530164 870662016 389908832 377526997 843040051 35685285 842443018 597671354 92992275 680404549 137587075 820731865 763049553 763835820 160745738 743393075 895316319 650322755 994266131 455736259 557818933 323845619 600390194 882581597 82817214 600979423 467639915 773926948 37434351 809885500 592900835 161224707 792478106 136278076 874839467 27260865 592444689 76632897 365350074 138446966 365334637 251638757 619149326 548448980 600708155 359577106 927904523 796838364 812057736 354795571 292138256 170281335 208140349 634545048 223940541 222383630 532614129 2585800 208022263 148989816 687194367 57131490 297499246 506580581 829056632 584681136 445634410 180432366 288936112 441582870 124355732 752032226 690017824 43888317 377766390 165546390 96153065 242576604 413392530 90574399 40709422 538937186 681663325 178800028 737256550 173561440 540609397 228339589 179400854 892256762 674056225 123338778 783996360 488535486 796884745 922114462 226805827 672767201 726212465 660524707 750528675 60918459 815145629 455987124 708904976 248386130 459581372 742546762 37399525 153764022 701044244 737940806 745769909 542022727 314320376 336250915 745726408 408666504 683077902 528261993 483494781 858650281 896158604 209630142 726155556 159538623 952007209 877846320 221387913 459445702 384907646 732892087 243403335 8121443 281958754 560865967 208646557 739544285 377946497 134344772 418496850 261986001 993158157 119432088 706602632 696402310 553489649 777649497 668889251 952945461 325020068 891331180 964388575 949223961 84468020 808916321 547407515 163849038 940139080 990808573 73018781 475613919 161191628 796891313 868622196 563557853 795648017 704248700 523687976 421149973 996223045 106882175 718884938 982779615 545515539 42630944 966567663 479665332 716894690 221683536 738148310 33680096 638895211 53400680 458322058 391213818 613436635 844089075 315493941 756318369 903380751 898273299 740142905 595481096 887971411 431560585 434030283 166975340 498576726 737291148 941763121 64761218 858824371 802967389 951894738 294310132 790470230 477342447 790203107 263809257 822426836 862052005 551818643 55004067 99157793 633087210 798174557 222297355 782109909 923058404 977715591 60469364 467721985 687242160 901064887 936515301 816233534 918755307 141344905 464256546 890004195 911616884 42810484 776866535 690439904 981819409 538929012 620378792 545566548 138160507 476231063 442620333 884455833 596016215 479821660 150145557 717757225 655623699 702150360 200780386 325573936 362756795 535036086 82605954 861388795 307126898 783217458 332486597 326627398 885165736 578272957 239065570 468558671 960406397 62987478 142760391 441914975 50854161 140411639 415302984 644180222 640600530 845510498 434119724 510922216 277470476 11044789 258901340 202828569 625152417 150326496 7963950 91810531 134471647 522438225 933418107 137742666 286353113 541082221 1539949 874712558 679745796 971427156 614053566 449261932 269553775 998500771 827505160 178550980 517344036 157727156 579130847 390728162 554520119 960075105 840708117 220381937 431646179 180025728 164198671 761653918 497813480 969242919 972529377 548641086 295627910 859040977 586299116 971378075 826984101 64655706 422176684 235537293 928660511 43590801 472114984 456086242 838144247 404554502 137720449 590384134 969162748 625438848 593186840 129790085 62810382 551846164 852017969 270249740 583021709 481815973 281591970 24467780 993817206 147936343 575006354 526547819 820334204 903244999 306981406 233400056 572979046 73192469 202991708 362774126 839563814 332153548 498814677 835715738 173459867 64780281 275225109 64405032 73706783 249989829 613603068 335888346 482869302 684482269 35362122 814028009 401156812 713374326 825016202 592893227 146920785 345516675 408057123 304823339 325774484 103391608 686762692 324995151 699278434 984756243 658119441 672666930 683177314 87532454 137449083 993804567 236405802 268333269 473745802 106269011 224027155 433721520 349577501 720964462 58170151 948260885 804530856 119922582 357735505 32216757 122413858 266712842 62971565 822067572 987710092 350835170 287299694 109921273 522325459 317697778 315089391 205192443 925363509 848158673 564532992 114968629 647326698 382733280 506686167 15174839 630672300 875906543 679611541 480472751 972998416 644588960 616506394 942647955 957871619 742432118 590550010 906289679 347758628 231083945 673742541 351314451 43446668 366569300 179880641 116352870 668519415 815489001 34332809 394130506 115418680 723087328 179519641 459679998 654846494 54246666 361861711 846479193 861084299 268947654 89017635 540697362 558125062 349097032 121372472 534441855 99831213 411399448 213142436 317262717 49528785 709730373 946621676 968320947 824457272 305118083 367830703 585519721 678644871 677797153 998166534 296709334 445568161 516323321 441540679 117744436 633382678 986523855 109113266 108213258 620034106 356523772 644983717 703215359 476111682 176661727 455205265 98542890 142575355 943328889 841990264 359186477 134806816 81454695 130220092 413257224 671916260 969004343 73314934 196048806 432081535 77609031 453016555 511384538 113634785 984244597 565856307 824615528 177158158 53189428 624327228 335879055 299425293 104975236 721884825 421385674 453504429 28831160 419837467 925902977 462954265 288998906 970641742 438587319 719173434 377090793 511259880 588239292 718866327 213191878 399036355 259566112 292040752 303955128 215684952 780861951 62136018 84964502 529966573 278833411 85247247 587240616 814778182 86588606 724318498 113951273 289847974 296773893 425677901 322909162 963874960 837878004 867415210 57783115 573713321 212958823 157769290 694362849 824062485 982442210 301833562 822323148 999732695 151795330 888510514 363859457 609551569 869273754 619877719 746820871 812751034 350987108 19733226 820933905 31938091 271655383 347592246 353453064 754901791 45738587 577963322 784541450 157968765 29412791 507857875 945120125 874689568 547186108 285450327 693389877 986804962 498143595 970156367 423025633 694988866 876520528 545419539 44407450 835701412 472977811 569739041 380403191 422120982 864480148 83427514 476022500 989696377 854984805 727312849 258802332 806178954 287927424 733022545 283773066 955412298 518166909 204100771 404923364 674201286 1639257 984719934 623691855 998183722 345601026 710849080 736040015 337265461 570125850 402770515 616846956 870523731 769163708 629205558 562064356 835004778 179057894 417982947 102165274 256016866 36070924 138006924 863338774 993784738 49188354 38253312 252227665 165389067 841353521 201835167 745647294 707179453 17133837 114375450 126401217 452654738 769337636 803529761 797785216 366171884 812592928 402560032 67551540 886151929 954757020 191979511 680750248 955933848 791991936 214551426 292651852 668659010 355877399 740237949 929275053 94430142 581392566 171252149 588658177 220202188 907538143 891625084 403743418 330129434 462495804 42016671 554860040 831270789 912031276 429563322 630426248 171897606 118863659 310649770 902007425 385778845 649861455 965484799 431839761 702026187 53262065 117093111 402800610 400486801 691492099 381457299 681481987 191462299 574964071 84242058 424564607 750960901 455974009 466089947 696072555 343638161 582150140 231681635 380709936 366297753 665578945 775060983 148355310 113361098 768775115 433214886 602992431 51432689 516847115 903833890 148368387 838296074 845163769 85585380 132115260 577676666 992255525 36693460 935747457 640043182 994212534 767807394 913042417 248545890 265898285 593630842 360473157 261486951 21752850 48469695 2755274 638622815 52621442 163877694 652622817 861625409 510721976 284957630 632572556 914983435 867985801 686397805 494670866 496218921 709037316 364728353 325550539 408759930 29431223 58872679 698312597 177915813 207233654 253046765 176103797 490833957 604450741 314022476 91252856 630412505 97044423 861484300 472048759 221895454 661393476 329080318 162994899 351879334 90857088 759020655 110829684 411281512 825525743 566257701 732517585 207083026 212639559 964532580 440250819 656472951 187863743 711179822 721774455 233705335 494352283 340870748 11917792 542241654 750880814 925657682 857366222 469205290 285692127 115445538 867701808 761453526 169233948 202101429 607566968 482444382 367554251 63101634 641249881 550558063 294659511 653002605 296463897 638366436 677321494 968270876 634968024 864161786 494541065 123849753 119411291 150013804 481137937 104343026 667502631 935511709 480937336 589779738 741889644 665823728 875528714 108514040 592047661 394997267 630521111 666120151 45571182 115658606 482264516 608873041 30936167 55317726 435067048 362470624 390984421 740263583 7022210 32321596 735389560 8679437 676187967 634945623 906376812 487996663 583459770 570041909 450039494 634986175 381290735 788264358 927655011 641512212 646075405 203841808 322764911 942628293 60418093 845362121 600542868 915413234 948984411 231087562 360010220 250379432 403874584 885238501 265264491 678011770 737106287 186619255 424488237 302567032 35447986 330280069 251276942 130403553 322900546 807041547 89740656 442412915 872126415 840389567 388818762 996078859 346120479 147321479 420563259 535534813 22589578 137288099 521763658 633767010 930282342 727030560 433607348 581904784 65592982 341171951 746297985 104812305 699389139 656200027 900404931 933369626 337313753 347776223 317709211 6777361 508929676 919291189 96840237 761384821 156957631 779745836 862701820 874330409 144055896 346578946 358186115 345996285 82209841 714084759 92243356 118199596 613549699 238233319 645630958 128868108 615993654 14778323 566718583 609893245 469356393 380908848 665088464 322950972 868181941 98576580 568767835 148718886 767265129 14316863 256298287 353076966 523356268 601850175 328328366 938384022 990715919 181741995 993711863 935928147 143077015 57585111 978800872 297763693 737467596 820241610 258641018 261786285 437813980 604423589 435647093 115437639 932780292 426589633 665382843 870828212 138278094 30045838 156007944 558311666 654008965 736916168 532131557 636752367 528082491 747828535 25763940 971853922 421095117 319630518 926285643 311205519 657396819 974683644 751540593 206025211 136250555 577113808 690163771 483335387 185451435 537436325 205692122 764898832 95107366 95817733 31290130 522413119 783721505 588666892 786266376 416622778 885109215 200301697 124098332 805384924 570726408 6392890 19971628 631385373 844074814 370948022 152267960 849313678 913282098 775836178 842633352 591560823 959050052 544055796 134935656 4268088 286569675 492844359 981729023 181647767 779163266 725711321 671952363 82039592 80939394 93090549 408034658 445621841 254597745 976564179 63375738 997684444 360559741 499575428 739714135 933898585 740506292 392976193 335609324 8041048 614941525 108895822 122078903 94582985 219924993 878447025 850194902 16472246 444890345 775556579 355742019 736208255 202584648 946648202 587243509 148773432 238005164 150337931 222351861 769791475 452170993 749267335 657640318 52156654 734950833 388843481 791323913 42353929 811597953 101201203 761403497 534667591 722647940 175064799 753068381 691644375 844081931 932604025 327199887 887124900 365650486 89775125 890068760 908452410 168526623 319070591 841333252 135081346 129489864 481969069 592509175 715747868 514822956 710788752 994775988 722077255 514010114 174260381 30338506 994464136 90812185 381464435 15063866 380669458 49962953 222082765 922065027 427661560 726822994 971987390 545501094 520348274 823601764 347281012 96658077 862340892 250517443 624304004 627778089 670837991 932568204 225070169 292224402 76721029 940993987 903200983 335686614 14620849 15475709 638545591 38033655 717156537 522426524 109955248 978978643 8635082 95986506 138879925 101024774 752614340 391854999 621101209 946395251 642821183 570904193 624004665 577522127 457665420 429821144 434632591 61399241 767099463 602438975 299584492 645014837 206494778 888834790 176133870 182335158 519190555 359842585 598609573 966911476 112801347 977508426 798981485 231637745 620901287 308810180 573045887 254073696 926297581 587742359 251984288 237128045 746267344 762530146 948069075 586861745 342184802 510768009 292968189 351676730 505794411 592492382 412369399 887606092 457459237 768264618 555316428 835989350 296936765 621612969 559312699 960478331 234754228 509049818 345087756 308124836 388167215 246723469 481640645 822853682 692713799 893796749 851180294 897117146 716892149 566805445 308488364 737439393 534349200 973069717 903235090 802465920 792128327 142713716 471017881 807810651 482421163 682280777 165237983 366813329 238719163 294350678 500101242 212739379 384418340 472380329 93470514 865250260 56286795 176235782 295900087 198569237 997267394 502218752 937396877 913455776 207907818 136914462 38052704 317735902 898104168 499942184 278702913 566007900 490446526 232126439 858760278 65844473 964197022 118055396 283157988 989646430 833836652 320768991 687999499 972708206 979620214 752945255 300820026 349336957 89016791 826084652 991458050 6387181 166741882 802531356 396269606 543251012 405157624 978055514 784531105 419770049 293005956 235466057 919335878 450582543 811447441 28192573 441457341 431892120 222249583 162957553 180894532 554390197 459012952 958879130 175635623 555006862 136367336 93559915 731224767 109000276 942196064 950013985 88733424 542603501 261758381 478513332 202706331 194244564 982664663 32728587 635554065 533862223 676550609 316414431 784773653 52038948 581702966 387894962 682950754 814489764 431175591 798665841 312736367 157097718 456141136 215625919 985130277 934983769 178089332 551406247 404143718 679923289 333476721 630279864 944093404 991943107 938562302 44149266 807863870 382483267 637704950 890858125 769262739 866037943 703025610 817874646 860040107 959699394 21498013 822833316 24807528 275199413 607019653 745087510 136417644 644939943 379960599 1876465 160304538 528143075 3923419 210732506 688251588 274197027 673789461 713800258 514389435 961717634 625906968 820921091 404480197 652919998 388250316 605650834 463542666 727795819 810779135 651846820 5875501 543799230 590679993 58918796 339462564 242917688 399481437 590126827 19665767 473922892 232599312 246663560 755319455 11212181 995973463 644506662 426918339 973679625 477150463 787341248 621631965 201688082 128309862 783194988 833972886 82315888 116425100 492863092 35578194 950469416 751057952 820503347 453180875 774715642 807185170 574405375 114338132 41257896 109144965 718788099 979077563 158239655 591944488 551353442 933800072 426587626 639269898 220706637 922584969 667768353 409122268 984155207 307647168 851766529 847940708 859945479 744140990 890119834 521484566 436536421 530017452 950023559 685922466 943618968 675981644 275069403 472584347 558432536 626657649 386489006 853911263 273677360 876845642 495688484 432101659 178850574 501370883 901871701 258140849 985243280 6562485 245670346 695618717 141010479 178926841 174603775 99888344 223898994 147411644 319230507 426642598 822697248 62817847 618328667 275346313 735947181 574231271 114976123 977061948 757437605 242257604 405622489 598917380 72351775 607129843 423002336 356602265 903379059 552138045 496804813 406797029 741900414 573040386 197034157 908260169 702122313 54733932 953664503 94211078 619446602 569252274 505159945 190178409 266934550 601057681 611762798 200367054 586514507 298305512 243781637 942408248 602079914 906458969 907482517 188299122 686630185 385368747 628921131 99366484 174539682 489880567 811156045 5657470 469048394 442623579 700349699 236626807 500828227 207789253 164906033 750420415 835654083 31785195 944805639 385083802 780842231 228771906 638183545 111326885 794443746 236417837 46086925 632474970 383197649 65010060 929254545 133832579 946764560 259246496 948852973 958126761 132201451 96083033 455264453 626798011 825000586 805942670 114827502 463987327 663369408 860624909 197020229 400593726 144982323 135671266 152994937 301054448 517587535 22018727 136119540 154376294 854952155 183343130 344234692 648206360 628997248 119004213 49778227 951096899 634704780 963636918 208130057 811932013 872092216 325199801 912780627 548526725 704052542 595693524 737844825 91466320 231467588 300208337 990289624 681192501 412008589 274394073 157108488 63421018 880452902 547110608 982347404 283321779 633456990 329955647 52742649 993553309 534621231 703468422 110532969 482440812 889728568 494436191 217117829 802565565 158741558 364878962 746232964 842677244 818899550 620353761 874814680 119053068 484202274 712475478 750866583 133726590 906858288 978923733 520315339 112334922 130110027 135021593 498425998 913084204 991288519 292387850 512511072 926803998 2388331 732202472 404472155 592481128 658364515 456955041 991096859 852339914 93413572 460461111 314756407 913198106 739527689 890363182 955257299 48812837 356778380 8525232 267917006 789195047 473267983 507709750 564157000 666659273 76112857 318281809 951995599 904467862 58810565 332562955 147051370 923163771 313366744 907952647 491609075 770383154 550086029 692578204 355385097 125928139 763005172 242092557 327468528 610096715 55866940 858238563 660216650 802510760 934770023 758740590 66283383 886157892 247072908 876348438 643258318 906584774 198267213 963948531 618074432 332047126 810017463 687760568 962636523 585254701 70233789 809369679 770500836 832767810 931973894 378580335 321148675 473640947 660715818 858541955 14007113 258037955 171912498 992323511 775842243 356638188 360450345 534998201 440356333 374239593 229299180 315259368 573166731 635939184 962150508 191776296 915794870 348822366 660279062 779882844 869270527 683858436 686352604 976450354 57770846 691550720 898741822 21292068 424400251 463603204 946739246 255366437 187473116 192591441 661952154 307722827 574708 337567627 101384943 417239986 481246649 714369899 788581998 867377420 946168374 708158463 860295044 685195205 509819137 69647884 741305796 947112181 134395178 802061828 663849317 997087812 639256606 529085113 877010224 474674717 821393157 280408855 37713128 206114957 957917773 103764302 880373939 400058838 666315028 35435056 738583551 404844845 127754239 128379304 307259342 185374715 801718669 662133646 231878731 52150205 340595618 305469071 20281251 474821115 2004690 808315313 125813759 992727470 322308662 677211518 132241210 575521664 643634448 22350782 683394792 57979337 185275163 107016921 190267865 672596428 687192461 932839939 666745752 245347181 551116523 100957550 224152265 360338971 74231842 504794065 85536688 805366294 714693235 777339897 89079229 30231422 62150588 283388459 727995551 510573372 940042629 291537759 298901142 32482393 470416531 383092823 577562591 223016203 613143275 938537156 710802993 300969895 860037051 620271564 710599020 571669895 970125167 990069798 945414189 813122963 791450473 714873153 760518509 60078510 877011394 569874598 574481012 193145396 84200389 699087148 180001597 720989957 909873799 322044937 170578972 76362019 520206693 25131209 975925815 703773139 346227718 883515553 276322742 89566736 13401958 63452915 827108134 517260866 43157004 108823980 16463974 674737042 314357782 426191738 388903282 662644575 591012524 564672602 493456503 603518122 198201282 89597827 548716693 987919229 151881157 255687763 153773207 48702185 947328135 143408654 600646718 92845039 524732334 817250465 944587067 945631630 96697661 611699708 915852104 179191296 213001027 306115936 523785798 434629011 745318693 923324382 124205498 919113571 755853762 378589663 920676401 35399070 730343119 38201164 157133780 370172133 872779356 826318310 466719618 642454489 393195183 295056264 48371350 49284591 721383525 360524231 816255587 721486322 574427713 22042551 146828909 966812731 683377826 996809624 655034351 270245952 526178895 918218828 335477546 195164798 393960998 329419612 841062225 193657748 773177451 968792912 124705307 474433832 202531584 67976848 917407489 839650350 291453138 278014931 980336926 82920422 99896499 932650039 907799865 114745802 619365857 484489190 321086184 120394210 457532215 61783848 8065706 659727823 52327662 411959513 108612400 695977367 409954350 393243212 272637297 615194312 700176084 818960107 303346367 483635361 793867840 78347928 722550416 17552224 690181259 714741528 534002538 527593648 633981376 882754290 910364038 620333642 210061458 520102128 478205817 681433659 721521257 779643150 580759344 542081157 688011572 347040300 46508194 491495180 475559356 651924391 467435135 987166613 515449149 264988869 19529719 290450603 403261864 687005353 351661482 599656254 429371887 113878128 701300919 604788904 747596977 269711080 686453091 2620234 964032456 472082902 389333015 478788864 936041524 295873228 631693262 669390423 270967864 79670372 270665420 596782926 94917859 966637817 308873391 812549141 682507835 259295581 943176303 915575616 230895524 839221436 919261084 637514921 912518124 301159060 907273105 369657154 991118567 930291880 298903502 423511879 258516706 730191811 397155667 460793618 652589318 839591878 197944470 738929767 632339765 629111982 477791716 408286117 206900779 496141641 118341164 369859631 826693837 493618105 413281719 476856640 354952364 912415385 74770472 759882471 571443565 583175909 805316415 430760138 794157096 822209318 552790345 748485863 386510828 998439690 156609349 35529334 229784092 583127598 92434824 46602525 864359002 7001527 467951106 74247722 457962075 976281783 874637420 412119917 997993495 995294220 724068984 982947243 84460775 421425637 239174139 988533984 206907627 164998223 239400830 925587931 288626026 723734972 806469906 676671566 882006213 935265884 1653377 382687239 834121244 936043347 483207284 544427998 579524431 402884009 831659725 229900862 970100049 193639829 242797618 930929659 235874880 269375579 477993120 323831198 486405150 267506692 497775425 396911285 790151853 211248749 671947815 849441925 46191304 137735608 308187252 576658195 965825822 524210133 487969084 11437416 383465761 635141220 148417181 856484207 322326557 774772613 929076859 566615837 407473716 196463702 793823828 680763554 716585528 575317229 966931993 518828882 238849410 411273778 25663344 810637550 266327630 152944198 14202847 481643630 522454183 809168030 448339131 706866541 138300270 631471608 454977294 651192222 285729934 37230228 433084295 998205693 878937441 381846524 778668314 852189670 761359649 890700153 531169611 595847204 164475034 663392294 25237104 245547360 785149946 792479511 647248939 366213646 339300144 886736837 836528816 450520169 218526754 390793182 49678502 948117615 263069357 973691772 343138659 576191465 551722482 644975808 14008168 160254649 285071827 813793583 583849541 752477055 984301574 673399828 397227775 449286425 853398271 997131491 27222658 675818689 853317647 531784208 12456834 163984298 324714580 567155630 830276123 212177043 496667653 571602812 262449930 521492367 545462838 238685628 935621864 757688344 612397607 678176607 342105393 977132911 576275297 869297680 209105693 837746563 681638196 833948344 412980442 40223678 157583883 882859717 626711948 342102612 232425699 540656233 555661366 757169337 317490904 691704611 847649290 88076670 346709052 736852268 485684650 657363371 326364489 133172601 690230408 395351258 532049351 756946988 265529464 232111988 573892740 531882821 897999039 456941539 362232944 73426083 650394280 180645945 75516120 445519351 693916743 630605510 516163725 126844191 51020251 213262172 904569604 169031064 690853220 405711370 113839397 54920654 47906 527590422 944518270 202214077 838364407 691459622 924231304 506290932 941212787 365970719 997551695 917305981 323144716 610609563 234615383 369129162 996436472 572370471 688625110 916771679 829516769 303386010 502387552 836754862 199576666 989703656 942688410 666095837 602966152 148681105 222966038 465705348 833215091 98863685 9135083 863375204 988264637 370549331 557488547 913884314 44185061 379986273 334512006 70910460 745866847 676682170 970895672 184424997 643724163 808850695 511852258 234703050 354985735 630535910 399398128 972041598 692118939 354401465 29668719 367527840 806424611 150394581 470038368 549690851 215838249 673553163 667267416 783461519 759874933 966145313 835371606 732187983 998498396 985119900 14264597 467207984 18491815 788143909 469696758 551105740 351486594 619385716 518441362 349343898 249783685 838592263 588686442 262035120 859532245 763598038 3440168 250689476 365321504 654770584 272842922 168203002 854578421 719773562 442564210 513539257 270826094 253699394 102379030 895013956 669614571 434989823 977610117 676078398 914395379 707774980 18705150 695249142 573524051 304072217 729684817 31163398 969193233 967068703 45827598 722716030 487403712 414707704 387130357 426769902 203737942 3988979 813545001 931110984 727073690 781962355 155347649 221812484 482456419 618640253 982358021 528060819 751297958 607436752 551438063 652388786 352097737 696286537 627058544 349095929 387558195 615219316 895912340 110408361 16817372 74178022 199082105 142903303 212505104 597996655 758289517 231505057 645755814 343112420 113154262 42608220 772200365 8001186 893750210 813899402 201474337 520964580 854506405 464346574 566585218 955045776 459778925 285854760 50761674 812347466 621865723 354652148 347569309 452199064 711369524 328874020 514910963 424515349 146487923 316366394 10887395 328627935 133883538 723235978 475152038 824314627 719230237 493247884 106034675 903675752 862037355 996805437 994346498 552462290 141744909 493756212 719668430 403515651 51949085 504412465 957291233 872400339 291024714 439158019 375872355 861910772 289233673 758212779 611333161 219176956 804602408 429951488 502265454 325692070 804054388 379540881 449375920 841004103 613302104 197088943 252816414 219065948 622011904 552717381 464814556 635094286 79479332 611694567 475897064 832073116 694562833 33695749 738142101 232922916 200670613 948826345 255899643 691964241 945236771 298756583 720296932 457157071 446783863 483277371 635947932 311109313 336984690 999397364 596781001 442058596 713152061 191854399 676418267 910515054 56198312 668076661 147426415 764513291 494178283 659167386 815622564 663185619 963395051 736601893 517802822 32947856 707252455 640390385 911966155 671505646 686069125 530723935 554525714 707397830 311294633 493014352 909254467 814263186 193159859 463303113 66385869 570250754 42130251 931327356 154457400 421121708 371571650 497457704 927193216 434830355 736548727 853274403 482343801 792954574 857412836 471833599 732301393 551559920 91576690 742228319 506955981 637671465 472149609 463258174 837968697 485845732 187027062 640857383 394129708 760785298 447535326 940528140 219334329 330353886 907746430 502872882 142199883 467052734 968882015 200160904 690685006 530853199 784629155 36958604 447591994 636774694 949186530 543024568 835260963 977616195 592763452 145929600 538179002 126682186 845838631 300707606 132359029 322368442 373101468 403680977 139114772 514216272 179513938 290183642 418333565 651932296 796955852 598670574 26984970 385230206 331768770 564099619 406595527 182402226 286687174 256905358 613666819 921009237 219406016 14808840 636148105 538349330 84079905 215355332 462142973 894289610 523153110 310807690 108653203 421938700 919296498 613927865 363158620 936842194 821246821 902909675 924168522 141108818 36898132 203692043 452149330 659991394 901749211 902841630 608033678 48899723 104225812 726676880 708053872 100002389 22196434 992396062 559054335 951342618 172410278 21321717 343270694 132379858 290111398 77451105 903746946 119947223 691739503 965361361 1742394 191192038 619726781 735886898 265497049 947030826 474168153 390740016 829185669 796322194 199875997 141963153 170667386 843564830 327278259 732780481 598831630 995521604 407941444 258042121 524631446 748366945 942879730 7830230 603899040 16570176 983609334 307780982 597425810 885539994 570929330 534535489 742986476 703889328 981232859 806550866 429386276 172503334 338824034 650894096 227986722 113899978 268618645 819067285 206397862 463797926 396635157 588315662 569256173 161745430 24025037 901494412 463262131 661374414 309526508 440240300 209070098 133011824 484801342 975578785 154608590 193715980 935714772 171172791 934853375 136537028 574633788 680952434 190983857 307351324 700054982 807185678 398507982 880265682 512792848 645757094 407506038 811801772 222832263 569537486 381805942 546606952 969042536 391672405 423778152 710181255 492255920 838142488 648964651 835769787 635830386 790851993 329989159 18224115 384977280 739654223 439434973 86135736 750424970 689416712 659271946 634839254 659201214 87334033 244332726 611350237 30103931 731092891 727728362 544797120 266595382 878588975 721623875 476036362 708074872 127607814 718350909 22781556 714986770 914773884 319836107 122027396 3913949 201225337 984674071 924344636 175085138 353441243 760414528 384178329 559082461 760133583 292043738 603108640 899664856 467910846 705168527 803141382 874082026 408690593 255378104 427935563 416783765 105437881 371781851 138179689 14067448 954734333 121778038 665115797 96167266 752313040 4432727 826917622 582749915 331761545 353407525 792709487 734087944 892896720 953251838 432829389 973008029 643619209 350602523 263881148 465771650 182013845 640807922 733124118 93222064 745160349 255248090 28030832 424892543 718135222 200020378 425790738 305062784 335537017 743300507 899195007 425165707 317612619 753744471 507332004 45050501 8550224 945288965 109302503 983330700 599294804 759787554 197143928 491002264 156315743 200863827 496797781 375593362 360209444 929352733 335021195 422352329 289168464 168346650 452387755 274912296 444587214 547293732 37210974 472406362 960265484 410440855 253704823 652004940 450043941 572034770 167380218 249160062 473726012 457046900 870612671 967692913 699545671 472604547 338882380 168820752 135126298 684783510 54903689 874868424 420770498 580184625 724013697 857373144 489749474 98466551 524367001 933777576 946571318 918782247 241799342 715151570 186263076 331160382 519601927 86485183 764715116 739756842 112806779 99483267 872782034 717706829 802821516 453337689 314788943 805291385 3249835 648879285 671696724 520409696 203326069 452799502 703344080 269460551 929466558 778242601 606100240 905300745 392994747 674700374 524021059 177756080 745886513 340567332 99345765 992039550 568234233 329442232 296201429 677869854 953674470 564280166 678866535 928359643 803339619 312901602 808673999 34437083 371011868 860181680 652463288 111005353 814329877 780924356 340117145 440110949 281967027 975438130 488862279 313043874 540146394 777845191 785454821 350926236 177601241 672063129 925026831 415289250 738436532 193583685 166917199 471349829 608759688 980024047 943552033 872116219 104596489 979170647 846017867 226992120 869785100 482112447 66835689 177397658 629431645 396972221 552947216 970724601 962981790 483500097 745350414 210252130 147073908 552263080 380766952 615860357 980592461 118459196 317767160 606636474 806007705 803174084 81435296 105694189 441913935 946442838 423830330 300802304 123032192 134482411 339735629 967121529 894134614 614891618 728789378 54677339 700228118 403389851 659910015 524989198 211243127 760949874 808687957 978045058 833948813 347890832 704647239 990399191 837299330 843885018 799750004 340395623 443712039 528058212 769917247 23178657 402305655 307739657 931928527 440316466 55256177 645544415 220423388 546636160 944376441 977959114 80667516 885064480 586800839 998104836 681631792 400638782 293561881 990689655 250107434 702830771 757325115 230644258 473739091 150778350 666039888 937578926 673378815 206899216 275931732 367968170 998783071 99882265 912657958 444391223 204403747 600519048 693857325 421763890 333090581 455308331 487299029 717606376 339243621 212409454 670979532 662866236 205583838 421533916 739471250 983693226 915389772 695323620 560474226 970586887 87198643 219966232 204506414 363411137 147848410 461849564 644972134 743607353 913874466 759506006 203555717 186203354 327949655 398008337 88273387 149066334 795182563 906344134 838539796 906492407 817702105 425181377 597664261 833078551 43299435 897629031 725055693 681232151 677688279 209460013 109068784 356176214 374401069 343443226 595172664 12841648 254352329 889285459 106073405 927886711 321478252 115324027 315414286 33751457 473894738 250777612 276462319 837326360 559356282 263143293 643186065 255102067 355385350 204905337 550209366 156644857 892162540 682579060 149635922 909558591 556623656 386801360 379919878 799517154 828902615 934271972 91210592 676123581 9954507 831217734 917524448 816382567 508646005 560663643 863025174 557271525 18004408 526746147 707468255 97820255 902702904 386578390 342570737 999104512 255663974 602307959 274776278 46270550 105972144 216933830 620265855 503734997 511293199 598233842 228553319 885015104 48226937 984107323 127806720 85760500 680088709 583139872 995720016 351910444 379113657 578781100 373362022 491083602 773019839 832046838 668150075 993780974 770290047 386282190 614335007 431380962 835598489 284733369 240269000 208324916 333422071 723829880 502561410 986100150 665053565 194576178 172731950 4999258 465719539 937356466 952897863 949115979 659813949 460074291 598122665 634445539 585293827 874165945 27191267 945943136 724621635 369559949 432694766 784468017 514012975 539012898 117447303 39238680 889555350 183550419 922673708 598907574 223566978 150869597 649168356 204688611 948788261 945957950 876340730 952143779 940755235 394280277 668466845 137202231 127724723 62858558 779409927 372303469 226593905 262291588 174371829 458587119 993197147 237160608 57895932 535703965 399454964 786734505 126913045 629613694 415837191 709736466 356306396 684196724 795141253 183836776 912143345 677038020 997110515 735725203 705175520 843026420 598960138 455674277 158702074 162347829 524923551 30916726 108276638 600731555 657853678 202751217 661247863 926781659 533271071 332872792 203161893 659359430 963001383 321531464 722281582 526471335 983912867 78565332 813592020 646285499 95607666 76461744 248150340 855429208 324783197 101791109 938528066 158463221 463204903 491349361 158104248 312811154 215602952 113958251 609950378 420435197 14959998 634356510 993809320 304984760 381388102 101705404 265733603 186135677 230307221 284779658 103323665 599617763 955898994 106770574 930392028 261925317 127911744 547841475 559063948 394330633 974584981 397182973 621612343 923924301 450375977 726358121 48926842 161140255 686647156 783692507 916730776 892176368 114907863 302823079 186122704 643112115 274019648 355405074 368254420 220298989 163347791 717498693 291116225 40653348 288958038 702065106 958793498 948049767 101231072 556996200 254575308 750396739 901986204 196373009 471143185 74853767 185722929 397755819 685327717 405820048 191457819 38553959 681786734 488969773 888690878 701490494 787346669 813306541 435934855 819176759 886115530 87506753 564408832 484464972 708307583 86672752 642177856 580301654 190642204 877281944 814364138 160941444 78261027 100068816 464752579 828310153 142713112 975563412 978565002 672549109 703545486 326322946 120243980 36836911 249696617 301182260 881748828 120233304 100981081 169313250 663665354 794111867 447062516 102954997 698221225 580419249 99857772 115021139 879683549 968588145 158612149 658101667 213580048 289162148 606044543 98408335 831608893 172142058 287278562 459325661 124551469 184457682 28805347 935649782 659766952 501123806 497811898 41276953 207677051 806191043 461435588 370860386 12845083 878988805 409332924 344801830 525859529 5575591 770541354 614951829 672843215 765812244 668639537 504172209 197738562 145134618 407729331 482112124 441100529 834812169 856317298 346353871 73586157 699056317 203791 81474774 964023833 10835124 428279798 434398527 880004911 70213589 297829623 39155107 96073674 611812334 492485687 677222122 160116229 825192153 148827878 588876215 471762117 753300978 772787450 121024061 811401462 455562200 441031679 530340300 57692202 625415109 723974425 548632462 776758635 321845826 976105581 579759950 780333380 232379598 870120138 74904287 301378049 527606912 919568864 537637015 286965218 561576984 162142201 149514711 197322294 278562769 879690335 125981922 493516758 341450448 961593736 118364005 221727812 360053016 123507284 975119862 404402064 933084472 859123744 902942519 58083411 446088000 473494015 47151595 834692851 145561570 958177586 510136800 444557395 246700084 371903044 581065634 626611319 926333612 469677512 640456140 746739759 447880579 473280817 939602127 251957192 73264321 775343963 249474292 794161238 720696799 454402853 502141228 536649093 566325464 80387493 390905777 872260958 894199432 542544442 781541418 629118204 929975268 94616423 263239900 601389330 161396325 924150142 592318615 880273753 285383142 313640826 625282978 751074965 46200448 199366308 275803147 989140283 707240030 243097669 354058927 700547793 108829120 556420040 82483204 979212559 976604729 791613701 285282322 988904186 99085800 743718031 227189335 558972790 212266120 872813295 676450350 486017716 228913063 461022214 65165121 548873536 501733939 477361202 698783441 594885515 991582640 95085538 61674339 985892145 12205738 282609240 996714957 951319126 865588669 143855130 710732247 578338685 469233674 950550890 254081827 524425464 847628971 888645451 81866954 186850317 507194260 329898088 406102172 287556954 219379748 169687 519537601 273207532 848334833 845834709 403754659 293308608 22905727 845287972 812434271 61571849 253940105 211125447 602719899 512440291 958967080 53375037 292247677 640077774 781246763 239028478 763699255 725388126 344536405 703068298 574562999 405254579 28481938 522810970 132133342 725198391 119443411 458329314 798208309 614523419 301055643 61957233 11044433 56657041 205384569 297784333 595197276 700875858 794577514 355447333 333283959 666452642 373017654 225484659 504482854 355651295 559169507 843056570 454366103 882290912 361723999 623363627 599038159 947730732 948755872 607917938 713656087 489168373 445424507 171904350 64247121 72932174 607028091 507136697 629904336 499942438 406540853 897091854 14882432 5955996 230552432 691331165 166289774 687769294 586688305 224875097 581656151 879390775 403531767 722315306 848029405 263499227 83304194 266915599 656590214 249514929 991954402 73163104 878588697 490701861 711043984 856348902 264905730 535799326 647080205 612542690 718961886 648622774 832006181 277046118 648405246 990969829 177130020 744917213 562809619 990743689 987975573 769416283 861191718 38298722 579445364 40385888 763663252 198154474 76780587 289244096 193476087 222375823 276548713 29128914 498142583 361522042 638870197 896981984 378717225 721540101 424571056 563181271 253473981 487670629 844988731 694623267 421953352 482459115 81855403 492765646 126308061 488681254 829736078 127626957 960212814 680514805 682343660 495062242 551456798 514919920 881777442 978797493 630041701 248482380 887967659 811829668 68951197 968616501 583806983 659338137 544333445 679610271 123150103 152326294 629903111 749887103 64324408 608234132 964323945 601451561 612934002 608429833 880988786 595129708 114057522 292883567 886856279 138253185 697969972 416138909 533186713 573692693 988698866 647514404 758800956 225775218 843313220 957580821 306377958 203042449 677507368 464115422 574377084 172941404 209172721 217330344 725217192 217845172 164354767 492497648 493902958 907911575 76514336 150095814 587058543 640019361 276099633 506910447 438818929 877722777 805565545 821084240 850211347 487046261 818970511 228286909 717188875 599062671 332022454 559514344 714269123 394665026 183941640 11023121 344015150 825209945 148119408 670291647 947927399 162436249 528036602 688839133 362175715 504175247 486699300 610437350 118885868 634236773 762290943 327068646 847163649 617189448 80263900 780412682 98346612 543130389 406694049 484766388 979358851 904639689 578042360 896127650 605847614 65447421 946272248 348615896 392724613 622744541 858811379 853711077 978375336 761378397 117186423 934123461 582214754 394255752 841425396 543264776 52482204 510001909 658237323 617845992 429303147 32016823 688609521 887819849 878905673 399256054 685938947 252494719 259511825 179586011 631526243 579970785 406413855 930987997 268960500 709509012 382008616 319812252 129070842 33924170 514792016 171560070 664691668 880570712 717479887 416905584 652662934 792443587 263714669 878901808 196037645 220143999 263283829 912487878 994754096 995043370 130776316 836511733 988188765 856014375 368315623 335319524 477740976 630524982 586225923 115662835 383729160 476422197 220369810 243755727 231359664 785064334 755660773 455680940 481465020 884889624 866182245 817383068 391853722 892804459 46913952 219117935 666424451 266376498 411161169 355658320 654202709 305467642 634916392 2471618 157144024 831944107 809787489 553156500 831656710 79663173 861187016 104503627 387274980 417774605 403662466 188436550 2240865 119025536 753324251 812272837 217123855 722995470 844363025 261113502 136346979 521998633 640368036 824723937 83321156 995582754 657926163 270127527 359650611 522810558 902926275 350791073 895377568 606396655 679425412 713382645 872902514 814706593 882553970 664172014 789949962 602704309 795933509 484579204 610969775 613161406 405331931 22440122 695008164 581434947 745640743 94572734 428364513 829301583 862848143 618330153 585752182 413472752 954317288 645901471 926706104 797585568 275310833 21396416 712421392 910462373 421243639 654398881 929491385 454144021 441419823 382144025 705789798 326286209 241568510 313007334 694873350 974262042 275117881 484822782 624197191 982401874 585606126 667030915 328908152 333569070 161987053 886572322 219791137 605444922 651441182 365654428 160451938 727076058 598719851 850427064 811319648 529121135 670910956 622450034 246405174 398084022 896941450 962512557 35453905 890375060 461352320 17865429 10492537 817316046 972168068 933055269 896585727 54976406 109918849 514730287 605804777 359284652 864291319 779763219 999407920 440201690 95796655 470179234 326076697 987688145 936123585 156051029 758324437 22942688 791741428 524691347 32672287 583455473 103982967 85628223 117766026 617754072 30164334 746500155 982399457 14577354 356507449 853914822 950508297 949111292 838756753 931157660 31646074 236505721 607067659 652882703 280903407 361032725 303305955 958622132 643551881 751336536 713206818 487251595 915939511 295010721 584218630 24899229 474172659 122414352 480075296 305667461 712280087 856421412 61492798 981285893 752969698 927695851 873090392 442250085 985122704 612740972 472138495 989187941 682460374 255700843 386799261 750080355 980355794 246121794 4468039 627743934 342381264 643324225 482771593 691185713 608501364 577111181 826622709 358129560 949513626 486325198 815216670 356926385 957212949 798166773 874341831 580744231 256427472 945834191 961855118 153734531 257397669 435224018 335169829 101336876 14494327 96681720 528153774 89285389 692815918 716324847 41057825 824006769 325160473 716641036 192495847 317544377 386721827 267098618 270095821 546174492 493385541 142255737 29545296 188026430 223649789 672938013 77207998 898045740 752191060 525170370 894954808 550046868 371021673 766741287 76246595 797281741 667735259 187147967 72652231 692689642 392227263 210229983 547531618 493243575 7303028 44971614 115911948 36407705 217181070 535201918 425916359 240616661 536165752 741005811 608813360 860342611 573134991 278704544 274566079 270032586 924510568 91886562 562568755 148098135 157308688 367672822 32485046 430382079 149503926 585404105 307503030 503152452 492586257 973539711 100782240 105876521 776839329 353462353 402021810 992515077 836962573 671351730 802374277 831659016 351284158 225561797 923292844 473612393 790973403 7227524 437219750 1335223 290051569 464496278 769441493 77201708 277504575 518277508 802211421 560718318 773762868 660099734 568351044 846711875 750812665 182215866 230878058 117734192 297954627 449602901 475927010 44491910 138282547 253859107 312860030 491009985 632494184 730709091 904210079 526086769 619550492 462117955 199449105 809790702 167723394 354833281 15533795 947816287 159821201 845368474 195682455 898278492 316817536 685630043 578451706 996621040 727497016 562689344 979228336 374581671 704884115 279511681 768555508 165574425 160074661 371335239 223862894 658569819 97694404 381819948 10890863 83135762 329101533 816307289 501679407 684550911 639312024 264172556 283716819 945963919 133934335 314253956 616098586 851848149 897100171 919405447 844789941 603057382 287280995 46396230 461777518 509182045 186229313 861952540 72635534 759714480 2006590 979825360 782104537 834293019 152841878 232950745 326682491 824787996 91969493 577545395 510204417 245751935 569032087 809847981 470772758 521355406 442510763 286394090 897960224 758501922 552576517 359649351 198068240 146399943 688903860 625987138 461718544 651954854 419027276 357333682 839538094 956892443 733666748 136018229 604271901 202973080 953367985 901377596 374087508 655809816 39557543 804770778 563182011 642312919 171115569 559475664 403483143 610428587 778792658 594781080 343319043 481568815 450257394 663344261 27243043 141248180 727350655 748657190 598289792 866641180 360629661 122026925 477199151 432248630 566158641 558738251 297411161 367076128 942103131 736387236 7949269 304489983 960331617 546782297 647115654 927923454 327999860 904590109 863425883 574715667 701024062 464584043 335796215 13382183 967194785 559321119 285007889 949672903 244465346 391579636 390751658 867562355 851527483 735216483 787037625 348505590 430949344 464225790 823576747 574379550 95595525 13986605 246362285 669612338 497480603 278366982 583069954 470585463 602957923 69468410 59200944 942794774 661604097 258948180 340192466 724016860 681852218 45964827 356695466 756124197 388522434 784480807 402575248 515730364 20992637 149516670 47604844 393316563 67707082 715092076 447514244 595791982 143059435 432488033 910949264 997550381 513299112 169440417 403781657 177921860 517204321 279782820 893797518 139199545 148558810 163045146 187771464 380639790 126012288 455967070 934042765 886366524 451360967 813177668 358845729 186861483 776747618 294855160 276249990 937823468 646944732 814911994 772904285 356060232 133818429 841617847 454668942 232228056 66414585 481558111 293835203 535819536 573028070 776211557 592489964 323163213 484089160 783413140 598813282 925706699 216000265 471762667 192629072 555479872 996074424 895903622 719052795 325810208 92077564 277534139 906439318 557777468 365904588 377556023 161969082 920679636 249977126 893959992 961001947 478733931 765008361 369077493 28338301 43936712 24130255 3609688 376686621 404842870 517640092 743311112 386345657 682254830 173135911 104113187 465921537 165749845 801325097 600466569 537681524 605041529 645431311 401850586 558086248 289686024 534343434 461674759 393228618 500206515 177917710 138304097 873684378 705438232 85087097 655074263 173732413 547598622 499277251 894155790 704067580 269023267 496025715 321108060 37334131 999716508 752250480 287377371 632266935 754436198 377267683 637671731 583637677 312385770 470910843 259478439 971886470 209019913 604826624 652288482 145994600 509793741 596471462 570395422 839571832 120008051 952344508 72551011 806210899 19752246 348751381 525022569 772793151 313767132 364422174 672511630 332936483 810604685 258405990 229952285 280124318 697154544 42160875 573699199 574568293 260551911 481892230 122585932 443462750 611867609 956416918 538731947 580155293 266918970 887037557 874663600 314487176 480688805 633860350 823137645 605838090 431211182 348316429 725365108 944543562 272544207 136741906 227366064 581477050 828582540 331236916 993074247 418031118 331449123 915050209 637136293 629808120 586701273 570569857 703806021 848603430 916171969 331392447 844368818 322276673 50621750 819743697 60420189 71718146 508978514 779888967 711329061 773481356 103107797 709647392 384804425 165763505 787918046 253435698 615926626 779948168 78718332 476975436 731602483 328689693 369325060 372132359 952919372 360930217 624938238 786899320 948484772 824791187 557845593 99805305 743368348 39942882 961008785 287424694 70928131 36307875 296170961 318479012 435883733 881874304 918927000 211556672 414062006 228487387 683834335 823283711 345778011 285037089 587019308 68367931 784745398 849428194 957492190 201415780 492863334 581434221 885389091 266865443 390934028 503883327 478078778 196233762 706180388 600099990 39082626 298735091 591282003 244236853 232170148 899834581 222782820 972355914 414842138 497921510 863031093 266040702 311789780 991482331 432176555 250184579 29470923 300800527 214555940 556174756 159208275 862142530 781031440 990698440 850758493 244766965 532752413 117047859 318148878 119312909 575096984 134039302 610799008 988049868 732530758 928837234 235078986 940220524 309876875 646113304 909273592 925609715 185017783 377007843 152629298 975906204 655031494 511835384 522658114 522816807 313571901 957597931 438961434 105881144 118004 913580196 977017535 964079632 909997715 847058509 866096279 588427833 865130463 356726939 778143209 822657135 687612028 30187584 849576272 836648612 818882769 51627476 453430458 763169212 401966474 445807945 796442612 419312374 322114186 720891312 665546817 807419682 906125049 69450945 122613191 32102142 755593762 549248430 138640916 119339949 644525083 679800008 431784177 471213715 843766840 606592855 830909434 153835256 607816216 841632923 451745879 455188710 820395417 716270167 966849079 856073376 299313631 251842390 272555263 438390284 773808480 31844430 167133254 607566236 156660070 760934072 400025046 731020687 395941687 831930489 150816290 342621259 356733634 264709262 75255808 578187560 575321433 287485320 916207721 672825066 901928730 729977390 405378045 13973251 507166331 399377444 613259445 576053645 303459636 488135378 223545788 385281185 930994256 479332243 316666754 463723064 144688542 194972067 17657213 31945501 971689221 207751418 461047064 45316589 921767856 233016469 189754278 420297028 363839814 759208771 701443156 575953700 820978423 758308138 466076707 659786991 574475176 371761875 979392497 575458040 727581834 628988379 340268274 612134759 65914009 625983793 703345891 171050298 434474324 914581201 125572278 40715140 251037427 788933951 348994748 82515539 886934077 781444167 531786826 935842214 91052773 55819185 597601632 348307992 892468905 447077964 220925222 51648471 273423997 283413894 177487059 887808951 974561529 668191613 195851231 687197683 330843409 117197495 347736772 533353872 6097690 449384968 684237230 781679820 428723986 810308769 618123121 852042138 924951928 968661209 268934892 62357534 834051608 920105131 718208393 791829765 619540880 184325882 311514006 286788004 351471253 979802064 158455021 425456473 780316050 978026266 589154689 747514383 366843612 859281004 496062377 659361639 86322358 855568652 575061838 634780912 184654459 752559735 511416695 216082787 459847327 864938726 772685297 119618847 541378024 451083686 461398793 792794327 838889603 549187204 754781976 886315349 908595564 480122368 405643301 22215350 385125613 71308097 606283048 349591825 787404227 941925104 341414597 456131631 365710578 153801423 503542188 501438442 62737500 809272973 517922210 184478316 832823957 955367394 104051840 940549179 53726220 715943231 252668604 490301285 841732694 403484694 986755758 694778055 243630789 168844356 536351996 554746870 764334708 753011114 520408496 296179121 32498559 55470672 312321887 351603522 786601142 200350415 612489796 888824599 592687801 215458728 853423093 879791153 125914624 71103109 665098869 927878678 955786170 553839471 548145920 993543182 126533066 649886150 195131247 95744766 816543011 241760164 548413414 416476251 406170523 924534228 958357513 796520180 781430212 339496761 133300477 404905461 393138709 737146222 409469318 732879955 232984440 873862647 613636046 562182624 791823513 116857064 951722440 570864785 882756323 10123048 948256062 172055729 841362398 259358231 528003936 488184182 96862816 259020699 926404155 598813939 103286766 309174283 937424600 786138258 584938357 313850251 290684309 255067192 284541289 446526945 265879231 706977603 618075711 932885438 476531656 817759696 721717497 190329697 403238349 781117276 237074637 850555579 26530799 364367520 444924635 356491960 679871745 293737657 92362012 378515122 742050308 129015582 605598784 811766715 433006275 267995837 827520980 449555812 262907018 355527444 340244419 162051803 88405792 163144403 168024405 159709696 250516695 387441219 212082859 644355887 276300797 831010583 260265101 825054171 74430846 331989768 732590100 676168231 419934287 780488865 755184382 1229732 594170194 91815531 124169898 117679544 237276170 232105801 703871170 97236301 51861585 771070251 903218976 8719189 91202938 307928261 938708485 947268243 324998306 935940950 223539962 713196070 101701007 725877545 966907180 760420132 214026706 590690648 319045840 159107725 440655706 633766072 709681034 59373448 682345068 110485450 782207883 668452050 542898818 583125350 302607814 823400997 14611933 195864858 470718106 562516501 812432544 970099316 379104198 17391134 907786972 791247240 134644762 272272009 226115015 101055264 676552054 102601482 311071558 802049088 249341944 758123632 92037451 47365367 509658611 475064624 605788320 779557999 222129779 883475283 370462989 800507196 342514419 377624216 926820810 131744388 207260366 641041804 957242000 954838607 898963606 27420670 894839571 890639208 844472433 231686463 359517705 678370344 559032616 394077643 998082222 392216177 684034674 595100398 831762480 768059819 231283588 975517233 619360727 940302437 729748246 32942207 390981079 649466597 67424284 497192644 305486398 265387618 110910854 142125058 913845602 357904901 265262178 735583121 934870651 239869184 589706310 751126417 667637865 804979479 178500181 548954317 884217118 653315248 885656012 176943787 296561840 100413092 476661622 932554913 603541162 735176676 22804929 327012574 893562574 437154599 716262832 139087333 189505291 556937366 792132518 604398431 825455458 427460234 715756102 715356230 960889561 38157227 108262152 40014040 756346792 954192596 1525669 880916472 43691943 358891378 237900294 606835981 860663023 935033072 800344260 963868224 693666954 482593525 841833762 348388451 451236805 99921183 470571177 541360978 716480358 845369772 551441493 620963957 251187319 106798541 519707959 883556803 156025056 783752163 328161093 364427111 245029465 873260065 96430977 412702793 512181673 29707711 743694738 252069744 843073932 60857441 596129433 558273157 37764328 749468488 471885262 901992875 338412282 558564156 46730824 427774468 828420272 574728635 281949787 710522586 124558240 630535904 389799533 625364414 226706397 980321698 681186229 326820257 180635009 95645741 415124759 799603899 899248707 838939499 151898170 553358250 255760611 807205051 449484849 162767055 133029171 702318560 857141716 750899146 417161889 125592940 925413027 144579037 950636922 795453159 946626320 90402673 914632679 906224891 17583509 451390216 265956572 221918247 10411320 930667563 76916460 66094548 248970320 394915572 772145757 619470210 361721735 989518867 493918855 510041319 590937160 150331371 455351589 969371141 54489763 617311739 642288731 351226705 500570939 929065633 53061262 263382813 751296102 256091790 403177283 248537560 989879490 620669977 766013089 659597035 96153497 572123278 880657468 46799992 900399777 186149445 69344097 753915966 812613018 913875028 729120228 628928649 518673820 714967643 920699656 128621719 831485192 633017465 394179439 930488245 567120437 524105791 656974494 478132942 913876032 146059681 223100885 900909910 745022057 195988169 342548520 908617095 673028843 558348149 156218232 305239258 62621351 174440042 976710862 343187030 933103805 147407508 327487242 921156160 813047410 841465858 799057738 332036739 614377936 904388687 201561808 641963864 185826793 107871256 624712752 322658860 112154504 195081989 747148576 96389310 259454165 690206803 859478463 281660694 992070045 348789822 702242436 877426276 324175862 142710554 981194038 771169179 606843656 159929907 985722829 90384386 299359304 326669186 541335594 704793713 575561536 976550069 249167634 708482875 764770936 185764702 245663416 822986392 482284240 786248366 816439617 873545666 788033237 263594436 470646790 214410554 367191716 114470368 750905099 489948927 933691871 771262259 929086620 125658150 251060202 249449736 13535995 395617080 300887553 671604046 876920491 947643471 802672720 398033333 484403896 99158942 853609290 12528958 976250747 684117819 641073112 680083343 737879811 680645212 299726727 676555938 128966538 843837378 798543094 912428631 752067544 328769456 298520104 776880378 716529293 527616991 68226691 594357496 614207205 33053734 325625924 605246532 562819692 33447063 349218252 83248511 357604851 91972331 342674998 124821915 281441105 630442761 621155258 614148050 639364469 489210691 233518227 300167847 595890941 946035454 471791082 223632265 299695374 220326137 228281218 826934479 290226863 379245427 642234876 161332006 172313561 601495900 559009098 872624594 108333815 841315598 74792747 724803661 640892935 512983728 207237430 104370660 260705712 597452437 977011441 846603183 409253884 430207663 640387336 706955092 698591384 976172819 959639411 378614481 135174673 907061948 756432375 164370428 18291441 521139248 691225144 659498769 936014653 341933261 652862447 727734473 912275195 645163567 54438618 536337045 904355312 349024237 425701418 62996055 913977225 497404684 907894700 777848274 763895945 979299099 395812856 517396699 630489894 186954138 980053089 762624076 462919963 490109607 190603734 721185044 427140173 255068100 463906638 922171233 230548935 919158397 319359934 741661007 203235041 384289411 830777060 109802984 545511413 279279000 779976338 802205556 445597607 624249376 618709809 900567826 153379628 980309723 558307956 644747107 843820144 966105351 760030649 992226398 174313279 481733291 125603667 365556892 784565113 418370999 691497710 967773469 207587906 128801062 105316910 145673464 835703021 438510583 128761613 605599405 596647962 413662048 650470487 479485499 458027967 112823604 646632980 913683626 949738197 153923352 568161680 54222055 449892847 641505716 4971812 965949722 634552479 782800982 246200971 28375200 694368123 952900383 251036294 454526727 70221209 779619139 891748741 518386757 813787124 437766149 947879227 230293171 622995873 243108499 320050729 281554946 8845797 803558455 238252599 806606512 15613465 86760462 529899643 656678177 285753589 647478635 134181172 818632882 380877151 735995106 263889097 140371321 249897967 252864157 221695005 136866552 427268354 846776731 535296968 654756901 508911604 468880626 493109165 785686807 121570504 802508612 780023733 697099756 249333532 354171494 567530150 277109564 885686827 706132386 676484788 129538090 755767953 656277586 196037801 674201861 658288519 316198635 917473931 313550890 932020713 518944254 955979367 150191451 354483779 587780546 257801476 14170718 518769509 177492862 166616307 505271866 974551556 988142966 786228701 573694355 352710890 248743785 624099675 566431989 646529154 241474248 955296349 842411786 733186701 904612657 155100410 921352062 595488992 318443201 289911995 876994345 64999782 360229328 693289534 464015468 545878259 564337708 193287244 377114364 59855857 167334050 143780993 59805271 43305038 905466710 802460149 459913330 450140256 542417567 483405738 461335433 215824577 641976518 848248777 2196968 4200259 88923866 239477705 577462192 239367745 177620623 871893813 667046219 845162151 824598685 939283321 703124405 233357513 850251943 747035756 723088933 169311747 906630157 344549723 865494165 271629135 860124142 487151740 533228353 411741743 637197610 602820438 82573837 865932831 347762795 593191039 686387434 323974437 765194523 483619590 471192225 469018656 397188704 458759252 484155695 31475766 949411471 196990820 212161845 787534 322570010 729986322 734080983 682565696 518877414 569663752 661920120 706199072 939041873 304983351 863298395 288273573 889926811 518955980 402769883 465559852 182957711 627585623 65326497 449525791 358602088 236901061 423712235 517016767 581309454 642204585 777761773 434737959 178766563 909335597 791006141 900363296 844400451 315274866 395867692 623903278 473489708 492799321 949382569 637257598 346480688 531374881 649395336 608683926 66157075 799484392 846390528 357480347 186607569 291724788 561176759 778032953 22399841 707203392 586015927 587882080 556771893 377464426 687114368 340291030 376873156 577696326 244969273 727884765 890308143 748194080 231240130 106742525 544249485 965355416 164744103 959195604 791647994 995810856 212388235 296477777 469379022 80706338 624639704 929584179 163446314 879460788 702774286 200160353 739734654 17341653 44108235 780711952 336358276 265610959 743476193 982895382 616187301 354233324 881812109 533456453 946065506 281590908 463952742 764688761 137677483 976284920 473748956 470731371 940264564 146984908 232062839 376827472 541892997 755764928 631678102 173010015 688339165 707201048 479631719 238012437 720842943 70200380 420191207 818746278 483738866 781700724 473904065 353877235 212567281 6478237 242779779 200617984 292139090 65690463 743088317 729649390 240014707 961808122 209410227 621015839 2579722 438001052 915104646 821467768 83464322 907645386 923106422 536216231 146863871 343029512 626747823 961405470 859901223 786912746 815209216 648166771 240631667 344688454 200324084 152582092 282166320 58263109 461411451 479888479 102056429 470198588 494668693 298394670 569276142 634999922 888312046 733257231 110574337 738370316 465334829 542653183 130170650 688948098 877747366 594710542 240220103 672355810 241196248 382471832 425173027 491280592 388859109 329528522 871725473 171271179 137495800 925901110 354356881 86108561 678965207 674883777 343455340 974312063 450634057 616559852 187641163 600742167 78059037 835766269 4630446 485249281 951082810 275353575 993991915 994929711 184357260 883778663 783203097 819338508 198360398 933798438 965734195 68793631 786655828 306841916 325981851 142764763 155922847 41484027 93728238 724924147 526987825 413096460 639671745 507150036 441809851 721036970 317783239 734380765 126774868 247674132 216410575 309293678 271261209 895780324 22813785 709494186 871687979 973020951 854431882 2381894 247766633 925003998 402127006 105867012 367188545 82991816 729606738 868914940 632693735 878387006 487365620 537226962 84409240 566447930 657313262 9638407 501135047 904722954 889865374 987264476 147379519 541916520 298486469 442600543 611309642 517057689 344920567 570425289 283247791 351835486 785955999 441604441 920464847 47389510 2792601 422542618 957260941 857291237 297599546 714612925 216069875 838155378 470705929 418949857 692816228 136793004 838189976 626322873 554681989 377941486 817069082 441047096 401359936 335450477 963861597 129024738 753352654 551248519 680821114 498232157 446860920 18109313 396560232 687146839 378221029 188080673 232498802 779193834 458113474 10044585 910740208 951484053 570665223 955639074 599905202 443009572 962439088 924481857 23694892 866692383 352338440 397148940 78741338 182769261 197835209 437543772 685329684 75837734 304939854 703146110 579923956 985062211 239072364 67290099 190356475 633656292 719568155 26526101 399992061 382580963 740239852 551645924 437438981 257560440 50457047 679894822 12405872 474334 680661892 957047794 9128131 386113461 574020741 480490943 937975391 807395128 614947182 16256132 389897375 604940199 430335720 873773442 193091507 71732521 592982322 710664257 871922535 467640033 409096002 934951071 42178225 344511437 87822128 719471976 481348728 291049149 21767596 261629605 229969247 796073533 560795977 915146492 121543703 380515005 307215474 48654154 487305438 727893679 565885772 99115562 311628204 328645947 984354636 25873183 653430913 61676275 562643243 566609459 882084215 752193765 28668991 939445843 271869106 966890842 542672693 331974850 670081609 394585250 229386799 295651165 947548698 611904020 891991921 641360006 347188772 197264187 521107664 117050356 499473654 395227794 741386587 311727718 383166317 501165298 828881893 359113201 865153031 880080265 704587775 924957314 561095016 364574625 63713678 616050273 96650552 468782178 223049996 54041011 854496913 204494397 78638735 911433026 846537324 471813322 721385515 767154388 307300707 526605530 892618136 294708387 769930621 71405903 783390325 367421216 281866707 538590308 932894475 375226156 629206224 41388205 526219458 704573620 519661672 646482814 900706055 917306530 114565623 580965947 285651266 115467184 884084393 630946250 759191281 894995887 56983319 901399004 743129158 168575275 725997611 540277818 912243033 277973497 591289615 958451081 649878916 604804679 299282386 967187714 927909480 649048632 865836503 468486157 15360041 600061799 369092864 259128208 344649556 738251496 561992450 597341613 945717168 294361249 213944778 838612775 932649005 636986855 17220442 242852386 465222465 154589238 816306431 959591945 925214258 284948085 872694503 445782939 836578179 695553902 125777644 75182973 293140837 12560062 946994754 168102483 316508130 602608346 936852498 740466256 374776680 889928921 695284125 766175800 126742510 976100310 989683789 268377543 31394284 42192309 594451929 755001183 322161860 528795976 857598022 440061253 712201792 712476419 659116434 122369626 91686027 537031846 339943749 874328523 954104370 38834976 967599952 906219094 1673510 612727460 688029482 453906848 834679122 294412282 287279915 603131713 309320836 356180274 200714054 909504886 566134352 741441778 750583501 660247489 830284156 397237061 906863699 283473494 314994757 420478894 952402464 516739746 480173324 111614000 304824937 569067026 457873071 754213496 459850866 777240154 229044627 216598315 989000375 183843080 570973190 271896902 249273121 634398943 1635900 910704413 880725241 257439767 84976160 759977732 705402408 580987441 194546003 738582713 325527587 185806487 533762891 718666258 733377424 569079563 406598687 748437947 744063230 905294187 589015383 898164997 513972797 508108468 194195541 773805611 920902474 165588666 171688620 543935755 997226568 339587143 88330409 70481262 456700921 69721723 400608617 229212651 573388903 173056113 158233380 530608205 839941069 250723728 672321027 600870505 288326575 217382686 963263237 225041271 26306147 583429694 989668277 810175234 727152007 343602292 839997621 105996721 211269155 467856231 632075703 882030227 708619360 623856977 699779757 432090795 106197888 895093676 969742440 864058454 492126502 577252210 619433691 370503036 164024184 700466470 581415918 995334043 928040650 532541779 141739698 19624805 498951248 177664946 550092811 593624917 218269684 306181822 269058303 828901686 881781546 310119275 400578741 480015405 373204201 266211629 591444394 266266249 960415175 963150636 559769856 932043073 678658099 947054321 309134027 368316838 712093259 458662965 476207189 936437071 241051019 241555715 890945092 643921414 236426893 900243652 753489318 699622003 584531938 324548994 564216269 300199584 163017308 91197900 339601418 514175230 534731774 996829364 674217451 650403484 189644662 778577404 84017812 923868887 503518317 122413752 859661375 781881086 886684806 872877350 216826483 120124667 978289899 636619782 454046391 338031719 569339443 368171445 445378439 537340027 740535026 423404040 141202761 832441388 655332686 332758435 13965302 192477523 236342530 680751884 612104666 671261706 902286498 778149748 228260029 827438808 935618209 524607912 987036620 118615633 1640305 545728013 213913725 308113982 693879497 786633033 760517786 234377042 856801842 52019370 802683916 711952103 200281297 939302212 938829768 217368664 516486406 638828966 312252371 673683321 25456407 715188709 513067884 739215055 496774786 881039489 159713988 943556071 110043450 501349818 733051855 619840760 40615677 493776927 913127216 641152123 505656685 86610725 545786097 145977217 58169475 153607939 116047187 693676036 167108282 880126846 794016393 728455706 903730054 682636238 90278325 120605311 879410649 638760524 350486160 150525418 53839730 342145562 958422827 120686261 963350849 483612919 596622787 98355140 699112294 2058165 404717988 938772735 638406852 273523629 584264483 362339220 5973293 940505326 849356442 838280871 173709912 820765252 908831477 446311719 152546483 905323278 21037785 576580060 361082163 413185822 3719895 372478590 261312929 78307539 875085868 259725894 570408489 545932903 547012364 705757572 528872802 479818406 207988812 521221277 69435956 130920543 85635873 587672107 465538200 889207623 920372313 774886371 26531479 738362584 673492187 384366357 723686293 664793417 878036490 463265879 564160378 871866327 947186833 776488771 511661454 197210142 743172984 739964498 627602395 202212829 818127144 218715244 191043851 827696803 581133802 730041091 576655126 611486175 511018408 843879395 389201558 853202210 692883266 417230989 916085646 316228214 411072406 279970812 639858990 779374594 365975529 941909027 64935207 463414368 458251645 610604337 594582882 78685954 510418592 748850540 266541250 437044034 665272449 236412874 979557135 849946391 186029740 275701084 264830957 68519418 436364483 507971616 307026491 332767210 921260664 600367951 744698421 607590193 947002552 451652691 722323287 320556989 643646602 864387335 455326638 140471781 560765178 817263850 351819447 863511957 32414380 204120517 398983881 148280889 597921355 654690583 95191923 16093154 423558060 884717059 786977342 331587181 943667277 801375718 175434111 942796219 963352574 643970115 981722917 194053021 45043299 264067945 793247869 298946495 176049579 435293230 881990202 601783966 770449696 140454377 159262846 969884541 194428259 835861422 560623848 91774615 494496163 10482549 591004275 87018760 299198099 648123546 12065679 821778910 539882013 966103442 99608598 306441927 64825955 152231482 279105966 426851719 503227773 711895591 298242717 973784892 156265129 841566734 542794459 554489012 649770181 603148013 337478739 133430036 647643682 136543211 436380681 985161719 225040848 31366721 414795783 298879150 597104324 56855961 585199993 381612565 228728938 295269807 461939502 306530034 259041897 711628471 275201716 915196808 461584224 211617250 862318382 421691683 388426078 804091527 433216133 305492242 440253831 850690397 189030654 570160602 347397685 112433102 13259347 559324712 523581765 430364490 518095227 224114182 340910018 459677121 624736368 579569387 478830778 102406224 109525600 848025738 53788200 330585455 602768695 93583836 12670144 218863606 845006099 222987719 868415390 337692680 555041830 54919516 863992008 266666168 493689910 226502398 102859364 523205268 448628669 42840175 62277320 53763774 337856648 309484334 716283415 565048498 556217036 648450780 41750330 684683739 241556882 737289862 894691485 696135608 279667705 360801949 179913622 643429685 488506021 924514133 346252795 925373171 361478888 368767540 934351212 659911444 793977002 564473392 368782303 528098590 854900537 757407080 979513401 900849085 684620541 276652887 557754045 190186112 557754920 293489387 617219403 328236102 231730573 669784220 665606482 537213902 810739690 308628439 617362546 698125300 156142195 340768542 554418096 236277136 260264429 210877223 905082446 999160446 874278056 702652279 307722177 988318011 318562946 57302996 556733672 288404985 892963634 992984720 623114916 768178072 863188391 801322968 300071618 517820678 600434992 186454217 755816153 116213089 167007185 198144006 363171664 604812634 149920469 678546692 889202577 862295600 238452911 528670587 849297202 99547662 81715745 243109122 322290385 165756579 21667881 76411742 778300857 411290387 98339376 846841482 253683141 673172666 516444097 995662601 556953982 407887842 334655460 329439735 399484476 622399256 410283512 532998514 725514904 2656521 157122523 54698181 163336170 909970237 171285280 422766405 108251423 775836576 83242233 99542147 5957438 717445348 621562471 682285102 427025188 556467298 844682731 867463883 583677928 829506134 826422935 572017681 824841781 894679486 169277429 487253766 409908292 196385737 700098943 154899003 303427610 312663335 574018708 167340803 315255317 839410832 520081617 831564661 83469712 979128665 428078973 245503316 703352617 982039627 602819095 427792742 926066370 561371919 955557272 755282232 426932425 582530567 80006273 320226615 63983899 202863405 327419187 860763894 290459806 429766303 726702851 171809264 329874148 579463430 983113235 983045098 895264780 155130316 515157870 316608880 847905424 401276113 930639676 225188772 52782293 795833129 867089217 195011076 790090279 276453137 237808231 206268322 245808757 677304397 748151436 168002592 891634097 107325693 303387650 502682141 871288398 735458284 166684597 992757167 982529460 464769246 384206270 794483827 983176579 918760502 242467902 513892296 655587481 901785416 44162862 477118851 783914404 21108107 675958474 118762487 168844046 174567436 990896411 791038978 57314224 644577241 266757053 682874541 73777011 786484168 782769534 164608698 946247238 194348866 964530078 555236948 949698747 859622145 428566486 342684180 136343674 844412839 507407419 418127810 21169448 525195646 334911736 590820346 514796031 161918866 918601017 194178920 619183537 701844332 416229230 843972518 944175964 288963214 200602470 187723960 763439570 361686190 385789294 43009268 959658579 199744994 913049400 870479690 29678231 473482042 666810252 789010637 521673023 773020628 490824364 941483067 148452795 384049942 768283178 459768789 34768687 747715335 550615035 92662488 250223808 138181767 406877092 829278932 798125846 527025065 415857819 278767823 771855040 291762195 423612112 786480830 823842133 887046259 739428811 292168126 555735994 720927438 398839259 345234257 736624854 69632684 33880105 802701928 311893160 969767865 498327623 322817378 741468659 456941427 663080675 887254005 151811032 829493402 642393473 796004751 984697651 983703896 608959992 880092015 901367378 478193628 135636561 949273818 794923064 434873166 354780346 280705669 920136554 686540745 698514165 770549855 69982342 344099519 347905067 781481028 177954138 753639902 753532151 72640068 909805763 184780099 960967569 51172985 927689922 168167815 919427249 168567531 711516994 124457775 888552690 39139451 755221958 435949172 813057123 267160089 559338858 635115382 80645794 774141181 971790640 47527602 868968193 760956252 207825297 657600754 718328022 906680492 843021619 454453973 171368140 219218300 514354319 619761091 592869647 261434623 409218868 496858165 498950119 602255902 166260370 595667327 630869331 101480537 553339856 667680778 633349557 31777859 409679757 189893076 623064703 819408530 296820808 644424017 896762687 550013032 436773994 836343687 699324926 110098695 818223531 891682125 428085343 386106730 195980650 349053726 120208721 228261558 36534796 381944628 54133466 669877126 911864238 780707052 875622837 278684489 150440999 366389820 560729581 121540061 795484256 140415267 319170193 144466210 272355427 955967065 709603502 808499890 783232362 628417063 803972337 974321981 360988232 444995936 155560472 271715850 274341083 317978455 525733270 661130211 249407886 138856774 980105228 114724756 783008263 865185505 701153215 999460147 687048195 999475671 219232603 59731708 482510178 427360079 10560275 456552244 928954155 77210879 191113847 679579395 249321618 472955945 675482059 987362279 103295941 9132116 234435430 674401702 600800112 679064572 962847355 613856700 908193949 749031620 984041975 400156485 234550675 381042471 905472173 192336501 946200317 780720638 87226540 842638237 662705956 46496699 776584306 173559849 839410360 616747737 551139629 868191530 153467984 192002070 22362905 493827262 964646652 126319961 839423792 993881205 345907828 263808320 258067870 280454586 167888147 113041895 985816020 850670998 385909573 475483483 537120982 871100904 14220411 528015213 747678815 115671872 738458670 834136792 891211201 44140545 56870224 520774652 240492741 264453141 779472777 127843010 79805748 53517096 312602585 413388735 413288615 584819486 690983081 387510342 803328771 693169189 527759655 793930913 473211714 516883886 863673518 878320622 47423505 306751979 324639582 433076956 715302503 347862711 759120456 106311576 939307297 103669804 218876745 345064882 307116951 930373650 582965667 999889962 543508210 11477343 160499570 744954894 599063064 464727142 491808596 866451585 949211446 744329393 953765812 397039376 280091062 80441967 420630981 570141774 643502733 370860076 168508587 699539288 664362507 115417156 977609891 60250544 8876208 277853851 558687466 351061136 34789222 383897211 616939338 257910960 984562981 254909612 993873352 374056805 376450028 885263175 896096564 709367790 367990451 621590977 147194575 543474699 249513407 721200173 718585874 681411239 397842423 798501354 402367675 403713812 934209136 68304847 581496129 11654178 867672768 587832246 845828817 914537592 669271856 840519297 909668422 609577372 212958805 94867799 319880555 797380329 104684565 840964139 243072391 131469233 553971340 250046196 920233831 37436972 393323083 989670527 596497172 671029553 636029900 30446039 324103301 627625565 615006146 930345039 4498855 450192001 978265573 129163382 988897968 67169610 523062157 337907822 448010535 973841245 154975346 717644629 618394827 172613699 813261421 181599904 621882617 139222975 510102597 807918257 919366947 84297821 619199317 198064181 299707741 245156489 881797021 200622343 220465174 209522234 161001692 438398435 658295678 119444274 323476846 577136900 382888452 444125080 949883754 528918556 397604168 883007510 806284421 881210336 605702873 695652625 222296982 616781881 739147018 402870579 387024296 637729988 281306648 593549674 803524016 603415576 986572495 810961030 5164029 586169750 732153012 682398106 536155972 535611195 601638939 609096353 638216646 460785863 848076357 370828650 144069571 464071078 349408605 426804556 350570404 653565153 893692609 521680207 751866173 30914203 555944297 878494964 661541414 154247899 149611826 749925412 90793580 292580440 996604447 260502393 356777272 172126294 832972844 538604556 457014615 504241431 167093317 458846373 470744580 958461433 809223587 213989096 823077784 863170751 550907895 695287289 626110138 730360101 329901198 598790877 162742133 474583054 821973733 490094665 435247659 97337517 449637699 448303563 732595170 732476039 102095799 156558824 808010035 568626996 371265360 788089049 756489945 596064056 753965826 636693339 16287438 366841151 198662603 175791180 181641746 407853817 558693577 19691676 417015811 896975454 608767934 917102487 269594471 27370737 932011703 403002827 844359836 295588954 757998954 185798221 609348841 219735318 504789599 63501989 870136737 90516801 66579721 785999198 400933843 146931181 552654306 1818121 155958473 583932641 691441501 715033995 123829114 202377136 349388652 166159141 683354452 562978726 313640371 997563285 193931768 649720748 425096812 697635395 489333826 656814853 187786927 192412847 913859130 615611740 907499244 254108189 811690594 805214294 898469439 730130488 945970306 171080228 77744628 378197885 803800149 808780871 749489134 387821984 494452649 86084974 86687774 224258458 569285440 945146540 897836871 623449005 121557069 995041303 469565351 860320541 744551977 948602782 739139761 636952672 492961208 632130548 84978383 766178792 965295128 592384074 746927073 432024074 232724145 271306604 271623288 356303809 503830768 306941215 764966186 773291479 856602244 784447860 675327905 712623497 651745057 677551781 487365166 28372168 790654920 56744198 32963065 407088900 308897462 551232840 636619197 55950748 764330496 44685772 679888810 843661645 839218857 313614486 722234149 327701946 340018624 108245769 761375163 964363609 866148641 973806956 536804695 551628197 296937699 220167440 916134721 604664326 710489167 444146269 949142453 589544051 427159547 778022807 983764311 307562208 797966900 837549405 285693142 841666546 898355043 994216075 5211394 443534531 154161617 673508184 762902116 187776434 285113476 41457986 327632869 926302011 738245948 295326102 309417664 34250189 287696597 894836347 343326903 888416790 825240808 263938837 390491917 683443424 313701288 686676977 42422762 888659511 776188393 939940870 503514816 431045379 991408731 549129393 995337275 75438056 606136674 103436798 909678383 741183583 531245426 911898231 726974715 948865216 976677744 776389378 520864678 91405137 820219810 9290955 463113301 636576935 618233460 635256110 717108657 435391555 411740782 990043055 441287699 108162750 752134394 543606092 845802438 968619210 900959266 883855719 820427522 999385295 902340851 658403746 844270316 685229990 998952958 932591009 556882488 347953030 500659665 889670736 146131205 493898803 303548103 221548340 874272436 430431945 377854561 66910888 577703752 368065652 528638790 234500663 235157512 855245870 460118165 601718481 541662497 314760232 298675709 669120744 307914664 588547121 5759434 582749576 22700353 532890806 480488423 802093811 502284766 252608232 642307592 110420451 265456243 970843711 814624468 927217895 990147797 186489577 573896973 388568238 830308953 944453800 435909478 141585559 329178576 349124954 348349036 952676611 516930650 744996639 457442357 827825001 325573370 799961124 353777797 939315225 931977783 699547325 907606848 482140550 652444711 98411145 387091898 428452261 35569998 98248715 340713172 448893606 432143477 119499144 388139265 457291197 975551485 324887174 129746429 670671811 97042539 111571341 33634578 880369846 516742833 955179399 59637264 359367615 881253146 968673125 834953861 816115793 100931499 678198744 315775768 335988244 223938079 184438830 37247543 310333833 90206716 920008386 749693151 777851985 657983297 989668802 996061025 100712440 551411562 684225205 734625143 328045462 654037355 918373927 30278412 788664143 301931783 585931078 253156024 95329349 20575773 960647068 321310626 663254118 149766475 394724547 596622887 844432158 497325158 174941811 423520043 662018930 152134161 944370573 458943310 551619282 247416763 711677305 666414476 736800551 111022303 212993482 666670239 865658646 833099259 570650337 692545855 80501059 414014987 386601175 873209198 758997490 201873266 466811267 130264413 26198745 580647886 120419770 792216436 929603080 156071648 982714372 621876163 283756788 105980691 514508122 126354352 355105608 417607264 842476836 342217214 295506711 360378642 619817324 808742123 105587612 565710677 973698980 428181787 704793191 257031998 436230199 842907249 360561078 586881332 948202844 698385302 703035472 551557982 106981188 107433652 886946410 248226693 872581261 274530894 618931510 248033892 570904003 853175446 966569857 654269869 426849920 243526835 13746802 852480415 799744842 232748451 294584708 42697869 989168124 28458071 434233785 160927905 890179975 519886994 67277475 592677536 360312059 449015262 509465050 655291514 822166232 115219640 111743960 585375273 355180328 317758407 23588817 271838593 525133917 489682014 820377248 753232322 324619459 511832871 131288092 846710394 866520839 46585884 265985264 488935171 873395346 903135366 797918228 215259812 916334583 523429899 918573875 640523091 342657859 91308709 891710683 945197472 562596106 886652952 473297861 722880218 714218967 817406786 412290923 816113658 290850017 501723690 705477829 651098548 665839662 850388792 219650607 616345718 864393375 924555233 25640527 147367631 292033075 945093210 753625163 50980757 198351912 981130146 177766230 572825548 921887474 623401189 995236720 481141695 425722999 229184993 786990796 862060666 55036590 43335297 597335658 536785676 601825740 266360153 859198386 219140446 827529827 60768186 233322095 583648215 186956731 316074326 523128743 280718196 246933485 472712683 517760658 963595811 616647861 769415625 182716623 909897720 190821055 304235222 216901110 905746881 808094080 407419664 588050543 799134916 4480804 986540485 842668849 857702435 632076528 965297263 112566115 549217069 749283267 197232737 201397541 556961052 537938649 127565160 956607327 882491211 516485843 307944706 912383927 757637262 987590331 335485134 979186354 62687433 397702707 305023297 785248265 190051581 693069340 67440988 580298024 908944484 288901241 637156292 64055726 201819941 962160441 525448573 413915749 509731354 695409853 914356370 121162527 625119687 311902950 695880233 794569908 179761753 566476516 49534711 742644381 495167299 917147678 712676922 704007293 18652602 979039922 367432924 557954494 873017872 901827596 296379954 760349687 300249463 767136200 155261688 667463308 775422824 995246673 458910708 826777464 601600463 150471873 62470008 820903337 981252490 831451377 832481509 497386113 669131816 159052536 90087980 66092894 973873261 376008286 914474076 726042710 277660032 773648563 478377536 339383283 725445940 712768060 272324038 579578715 809531718 766304024 476002908 976001335 206826941 496849155 421730944 420576707 856440326 812394052 575335483 873425732 906586257 962319852 793572462 738453930 536497858 563066547 567567420 766613081 65830686 154796444 1451187 408847078 625720073 21172053 303172954 53195776 403671213 38801574 432050101 416782270 672331978 474372147 225915375 497908557 844930920 338885237 481744719 121048397 308980037 70962633 57113261 583144232 297985386 764025721 483302841 471535068 176514997 2885954 73389907 586999890 203481320 638630756 403751552 749391544 155118199 64556215 379301191 354639082 270908496 127583553 955080236 447993763 966268570 79920796 714505998 363031782 997420539 146404678 718519048 707000930 195726578 70998793 328801776 42262941 305408171 403866012 640819989 969562272 406697386 120024095 526133570 778316761 384074638 733644456 132812080 341741350 547596372 390165729 419682959 278292112 121037052 684747756 408837550 440450289 440080097 712890639 849608980 576444142 741883918 60709809 30405532 578114204 445115916 486117466 841604919 920010631 690091402 649115025 871390145 661720619 44428994 200449606 705284446 335904 707348362 913965412 155263556 650755235 538295126 818535394 648679693 198424410 472612939 827526655 636716362 615682326 35353684 531480370 994067261 174675347 675224169 386714350 342551599 956256223 675627579 319390638 162073528 907108421 988271663 259109889 312231126 727154355 527939695 200098584 366603477 277815672 237268537 431150184 294954079 989269895 569718078 704114791 816342466 73252577 698457597 362380041 670548545 537210671 949474621 405252208 252916024 700116576 164633977 991769984 512622801 116717978 382259582 429395963 803772851 324226838 607712797 497964410 39266042 916815963 818760055 838766394 989546179 304847692 551990302 815771819 14002397 858932023 677538773 352337414 97285587 273787482 738463792 24284849 472089222 789718031 447413599 467382723 31751648 884694609 237610497 626685781 171912812 473497362 432881650 841733779 72814046 918998952 247940315 259814278 561826380 232624356 105184067 984871718 126563600 651200235 173229988 1740831 308828504 53329665 426950961 394356332 244324002 997876404 720648942 453365463 196126817 782879269 11012351 339861717 584712373 442753034 839471321 5934001 935577445 137823711 644771684 396678838 3174797 414374640 709487316 352192971 873870750 832689958 984362310 517404122 522239232 415918245 292554165 484789108 999772102 385631327 708630421 875230117 938021069 36373311 666739793 562025752 226916159 623071174 90268796 917759047 562399306 925762429 870123304 709469017 519807053 424939903 149996170 492297988 398922779 264988222 283885772 820857076 674642875 499221040 601623336 270039530 301732542 87525100 185143984 59715950 833640090 695909182 510441234 155490271 740100962 502688475 700199092 66314376 453230957 293387592 939032030 738337692 363660881 67650932 349229624 551205699 603192026 919222166 326559408 255246072 398832445 64419150 867083715 835131490 776789211 692079127 636587682 634283451 754127674 684428846 310418271 236613352 611900201 649601613 990973217 434946602 16092234 166428037 437289080 297695909 717005258 473402085 809915185 768298923 19416449 304112481 941503563 959729855 650828884 34144983 711964428 589549126 751505410 345810993 115534918 694902940 545750496 22720413 489336891 638928483 41070599 804336637 125412994 296707548 903843431 906936884 482601744 536595454 883259872 367074549 391421807 85642534 103256915 582797794 727454270 967789985 301979866 630271961 517895405 555087067 585677181 349824789 740687436 216877443 271526219 223249003 926966585 814205902 47579481 485565701 54018804 433032919 503899323 349876295 629181843 115435249 292902011 90055175 122318932 961795055 972051921 476324212 852497418 45449955 57639851 100572222 784526320 162239031 429421176 76229082 341550783 305050550 70479488 603510744 94105010 209434443 161132362 798623243 592721254 509730536 395528555 42206935 272519692 380220737 32362883 590162647 358950762 557428671 902809482 731791516 133265963 541214355 882467267 50850081 60491903 100603549 123461064 800098666 478066756 212946433 224611515 951393831 265555329 498616334 479677225 534142604 1457543 665550499 182196852 207970166 773820991 488563795 343438072 376708110 902617709 465001785 991110299 608162572 778244372 91354305 162711545 7629450 279665279 97566243 330372633 488730328 938219372 388347890 138938256 821817407 863988929 306902697 520016718 943648576 533751278 569117008 164602113 483451546 592176633 391836795 882974721 611922998 824905414 98409295 563756060 507190282 964623822 967054864 111291786 906226851 790625655 746758087 654181583 665112291 421747078 579919671 3609436 878216041 249081102 313248968 81303159 105157627 458250889 510122677 472662462 558171614 629950766 388474538 575068380 265246949 331383814 904566850 803302787 725802874 132679596 677314090 811052367 93816632 210373673 918361842 772775477 980384104 399592919 404476791 520757916 635274679 220598276 442019400 537843416 694206890 101852730 941663490 165311445 124604568 255519604 802786607 685511540 58482432 507680189 188209349 582695387 201239576 911431333 693921799 405177808 619707654 461933265 158562798 118966484 655914991 739836574 455956533 991110295 343801501 737213003 735523718 322462358 798133222 997657740 451503272 210883046 543205316 24727324 695240594 523444433 611698756 181176126 492983858 752809211 580786452 424719632 589453943 463071317 466843783 73194127 899716616 274232779 229037826 77533481 696573575 530929125 164684186 166003945 264423288 996143056 19460638 798000786 895915959 216610445 90136193 872861666 747092880 939229423 632814029 414087497 686727140 693032060 978187750 105177733 414248812 166193539 494887141 290242770 461490035 914921538 556448241 505324272 154100793 917746195 200222977 319269632 515020302 645272598 928068182 743685894 321498301 639693661 240051435 421364175 455925413 444574764 298928281 885108537 155396596 685943364 474291964 716349820 663262809 317417758 789961815 745271948 568753140 738964500 240703762 678917686 834914916 26546334 905145843 731741411 976511839 723233602 174617782 918047399 614648824 252074541 73082848 686364916 897472807 869327357 38974525 927453253 309232351 617476768 488324635 46703315 87561013 595864438 703058919 100445078 843674787 126991960 56850062 875178982 564996 71115907 959852248 918340437 12423286 313988313 703999737 452564969 326790858 746839584 408205479 110133485 12235483 243288215 588586379 115318874 233805702 723870597 24039544 160419175 856486890 373295963 406875629 741684155 653999607 714167085 652353554 105874644 393482666 534578115 146335454 436530720 79154716 402331788 922603237 76660281 462377777 795551392 48096522 593892991 270704097 337541211 16803998 710251545 478354982 323340951 240644541 976933570 150936256 941676292 246034354 261611274 834056818 963164134 385694161 269367034 130467236 310733886 561915356 484303351 103218754 551730443 213450520 726014940 652646367 569970035 824352456 945004750 923582722 836841581 585699778 669528697 904618731 230270121 731010382 266703828 381863968 213792425 475209245 460218890 193234392 831112895 857668723 464513302 121011504 132441485 280197657 237402188 611587283 884680770 328271581 887613656 443699006 971148730 49003452 848630936 592864538 795105947 966259988 54825953 261308868 48348390 36630288 420912926 55272396 202880911 973828099 137559344 802441621 213645690 494951345 146139193 379036785 563224818 548859173 723478437 508151243 475125006 243840925 85229187 470921417 54446197 317627654 811658713 854863635 953541983 297725363 415099503 444771268 513349147 27824135 194173125 476425667 119322149 319494134 305206868 156974839 618195835 472261414 282486160 424375519 529207736 972199151 966239773 471236213 849175949 838025156 536528950 211985531 77017861 244548000 23127636 155809411 821237696 889904751 931185621 453331105 29994283 654478301 145929747 633749134 765162855 70789157 611585368 327433884 565091190 936109345 32234812 833595583 438321967 550985621 622430641 26380954 708369879 569947329 544970260 15456957 616414590 7964647 646387889 707083505 478498844 165271644 669802869 799165085 593389733 882285890 210265830 671090003 891266477 430739294 143884596 589183784 73307546 635632742 604955505 937427028 166021279 405727595 115276028 745757630 859001735 171939697 110476873 477937449 896974391 323041753 146628162 103330684 132672486 111591262 236740465 485695476 567805233 376181926 63139891 593972856 284262382 945045635 171151973 356381552 196650878 541586960 381786418 37671408 972048546 900355515 748771939 875409585 408946932 630326237 857104229 793651445 324003967 985426618 661012820 496705924 230513841 983416024 42787076 730285892 254084880 225177632 709991832 945024981 702844963 384298641 10668672 391371889 414207347 35918520 663744141 363558283 79615127 460979455 324221315 900507025 509073712 484646385 541578662 814159112 110623988 277052622 997927066 950964605 757409180 423858285 368793241 688283473 392671946 493092319 791819944 415935955 300897528 748105906 447864806 7715649 8939910 990562939 398017519 25562649 706052097 417261189 859124661 792037804 312990365 962486056 758012810 90586074 573231900 830837732 85165765 328695337 17578532 960607899 150916695 805136199 150115491 294497384 710932192 358378003 458733554 350371077 123191809 409894756 786506975 369598371 512405036 406024272 572197341 866176073 296537646 469963016 787134942 777067680 616088033 669234179 439095361 188250924 93758960 301813479 970322074 640249247 860475380 264908163 501716406 79765732 118176193 532819448 104811673 372100220 447985316 479272450 578342123 285558152 533220178 305881346 316620766 108499827 363991560 851700934 61643696 664370098 186986527 194947515 86621820 865435998 99230177 150775038 732470584 991341272 213405971 512469287 726484092 431679517 799771390 884289173 59471630 812434331 369054382 698811058 704438074 303364823 490727631 938902410 767805066 636819618 976245801 22987109 272748615 538990106 611199765 810904117 866483800 283669556 728393055 844236937 946701733 135166353 9680294 731418808 133798858 356849124 427386544 767361929 808768298 374981059 363927989 619045179 580663471 221135225 811171018 594120884 821523520 723930686 15710689 661172133 626266635 688718176 317752986 517202969 265916784 4254111 716928841 764826092 122282279 507402045 583167982 271271079 826724232 730024317 87897453 852128848 516480804 321595257 600062862 381945733 838352578 777532709 16508412 503976017 456900051 183571524 871202692 852334753 79705900 48126130 607801324 137670717 987389260 649724803 428496517 201524887 233705835 223929827 371357201 737513667 717170447 279700457 405250468 300708062 205346268 513152971 450056991 308642222 261661137 177091795 300455611 627963549 160353635 430453503 701645374 722598483 999446542 403075134 74184231 968603922 172696177 608346120 580247128 719215706 889682141 977676672 372266995 679474134 358477326 562997811 319756121 986036151 293523241 860071958 822655596 160228238 923945964 419075384 583711525 981694670 998869093 218221740 48960659 350655213 31824620 565477547 941244377 381672750 844247869 858699869 173620309 850961011 656415303 914904425 288584056 865308418 571728598 248900847 840548260 606681306 621898332 688347434 728804639 872773654 270747407 823727177 805653265 93499435 145208624 203636684 895104005 177357606 754598400 794725109 942339132 165211705 302775556 442158447 988212622 223625716 690665053 12927501 420756259 614886683 685211701 649341846 228862051 998435927 896923095 114653858 592635557 375919452 443228166 463106882 63290775 132603465 849128313 205803807 43380492 163149126 65064677 273840732 236648483 722927864 19868408 955064430 196840794 886264999 434060100 364909995 246121633 679135048 738401698 818564061 507940534 601113854 600003479 125497041 398043240 131794380 948285481 607724145 103463605 137794727 558029980 407239787 848427961 494214055 421460037 955107197 807176208 602522390 403727288 148266288 785692521 837790580 485865777 716748856 551515611 508427671 467123943 63417649 503763028 62806885 646564763 905743665 150472742 638654848 800688583 235461556 546804001 519943139 659761555 432134872 159435511 406528153 248828027 159101940 734678526 384880835 625179405 709212551 127075409 784657803 182426086 325368521 946660474 757767651 788986831 602348700 55179652 880836670 942633512 660430554 296366769 322899075 7021260 142387384 639216563 678280403 31857293 166438451 207121766 675270934 846090778 67373698 40718915 377516822 200321321 127501334 197913078 691444233 215995119 905147130 611552356 924037489 530971329 111022964 912361100 782970984 400325872 853612776 456327194 371838389 292677864 520003663 346729977 214276501 130782565 930376159 636554030 532375930 574223743 258531078 650909645 604477616 994352273 64309598 931252182 806622334 78358699 360359532 127518887 985280177 372612504 678059821 312212309 461966211 843680139 435021522 749912642 473995076 666229662 91291853 796859789 246259329 120480839 536564780 927987240 850389586 235778755 814376703 349840394 313956521 276675406 661053631 963117765 856205661 343940548 74610051 595559551 471502612 181521627 113948747 284477963 359868987 513646259 236104296 329684013 902904135 976226758 443952802 174518170 555258680 128841282 43013616 761214447 35824450 934263029 734387205 824266900 588836643 563585170 253127459 562465747 361441824 725447923 943975219 590133946 756843900 37310564 767025744 337947236 994010126 1274611 981825776 711064412 506553699 462974766 300533263 555731494 7203805 46893452 800692997 357492919 234506602 273566627 207983844 509954595 975833418 769681131 531202746 589827313 875417784 575441014 990330293 241094053 177740581 216604903 443520905 331459529 730787239 640425475 428477600 978384532 714766180 230984598 295682354 692334311 96068687 677193031 505517939 252545034 422985342 13202512 116388782 479881403 472259461 290010038 231235258 197634129 12363255 128924102 997633720 301241792 75275957 754492554 432288718 715589075 676154856 632774028 352747833 68816410 374852958 772383677 94649563 357513216 300578760 654650731 805007299 329921459 256461969 524713911 348413222 969762020 616996629 929990988 679955673 154625815 179094484 449923132 74858651 182339118 69414759 203773320 431652712 662704489 295739746 720672484 710112702 778143439 517843777 203361094 206708208 772119077 346194672 105400374 310840233 726927649 813393191 812551779 596155296 671094553 275370937 460556109 470285766 1327625 777592801 338153423 437207701 45703535 668812128 114696983 806164314 172759558 56888111 579720386 556707758 966952693 731636584 126314795 913359946 413907873 360086682 313084160 65134638 745755405 590172879 794745306 387602702 149828447 494600130 972794761 567106351 622331847 334827783 806774586 238055793 866862252 282750320 785706453 638208615 229369211 202659623 483356520 870508009 631839084 723759371 219603424 704037367 195527820 892847323 149316758 773719901 742142171 109729233 855588586 227105428 972544621 946309542 122633270 139338458 26342200 675682835 832793999 321657515 943860695 293632680 494663829 299500742 241501458 573098268 822871460 170154165 9449031 18174489 967657966 340127691 474156717 528340857 658814244 618673550 711275085 217102279 683236629 50338486 57112471 963998861 28080544 95733503 260896652 470505440 674706973 676016382 645294076 190086947 467278305 364192693 852610814 851453925 526903164 480964711 458890854 812250816 665023844 720068271 175289464 391928302 14142380 826393691 896310368 699247391 414358999 668670722 120540678 219285057 166440944 803534032 264478304 345806754 455551961 818014243 177969140 359775836 923898743 406752158 904682898 736548788 229206949 871495615 857938598 875203839 371556469 532528841 182252791 227079862 709276636 142087423 295292252 138336692 169102837 559404515 649150338 9412259 438330482 431345176 245861852 721180245 258091135 410855245 59090894 577011727 485146454 883135976 240663438 24634430 151302227 795986310 322464218 304542186 421364905 158797189 474549228 791706163 192895194 371781044 321327808 537386952 821504037 526311768 858278817 200074355 769838723 224260644 176129218 523267866 86471039 978002824 15226233 63771533 879796900 592714228 711446152 800003954 299183876 840998741 66634702 688332415 638231006 295617923 859400669 247703797 76849741 708779478 310744431 851294397 48331348 834389742 303967102 493313617 664290363 375789132 76037119 649633904 575955764 19597143 465260273 118032301 306373651 32019415 974225083 615552708 377267458 971863667 181244592 944408420 122142191 599703350 224281630 109032569 480469631 595113779 691782619 816518413 199403584 683225312 331419284 862102569 883616888 264756501 481223272 699423797 984298166 920176631 211211307 55583659 425799341 219892502 994613810 959507177 311294281 128342754 688760855 717875611 491128229 543877711 193956541 515930266 135268830 623863861 904589506 67319113 889305781 564780752 339188647 736463091 533957559 515366224 404277670 502017459 463136019 90895125 757763131 303612065 195602552 882931383 898546651 114414338 833886808 306257136 448135372 724758314 361957466 648673974 171605447 86784362 314478937 90690314 99489360 168796225 110627283 746398466 616695381 367225568 175086131 18676555 715530018 366282659 564733656 265932601 689062433 595694937 64854276 894655928 501612591 358462271 58002196 713056916 260408185 507627954 607249424 50718876 866750443 632491653 703641037 632341201 765792647 319770944 525924437 771162800 939269239 637580397 709320250 463408997 58414504 363770333 250819616 760515826 204319637 488215589 962242451 950047974 141291315 897575360 781614660 649793559 297661934 52307824 772937980 93380110 451856065 34623880 342159171 324348592 441203693 461396276 399595188 169712073 22524697 633406674 336627687 421102870 337689849 472312169 175498697 103602374 744192085 773491265 243869795 215369945 463442067 243647650 838553074 664832329 559441662 254152660 594924137 765214018 912054703 298724120 653848292 826191086 301668671 19897588 367282023 969295967 904103283 768442064 665703770 616784207 531834456 688970501 72919879 746575331 368641622 575110369 719297054 890219735 724789371 326412192 571317941 298100896 546771979 353672661 322850261 430452740 806843059 809854583 930904942 816653858 854343964 397742016 412458360 996259637 78063354 602921880 738257347 242125372 989187853 131952859 904683449 630141269 957082092 471632625 106579987 267687825 181904151 212240663 685159738 810129036 766777149 552035810 619323493 205276292 891655825 172229272 584574222 819219774 779553359 568026674 450673912 663645688 422991168 331222751 6445020 210759109 203342728 221853175 855297687 55162062 280581627 484511431 75968186 633654943 358224470 716523920 74902766 159012807 939840917 229464416 290786787 627620636 700117688 836004596 49311518 639085141 616652109 906772935 766512421 108645522 919105971 831051825 385425788 337591303 299831329 578693068 989183102 862997577 862843895 136155944 986234879 318889041 802304591 654039186 279847246 79155228 583163023 521516208 770912067 383163869 537550810 717140948 857449605 554784219 334454683 437747246 589894312 780286328 868882758 110590080 817000033 904820334 578651409 154500296 269328843 432316448 162717972 342910934 502854300 975528997 167857111 470754173 301414477 16188099 429827680 726056013 339309080 300934994 587903553 429705109 488448716 718811643 837541034 849460546 223374286 872130591 738801211 877333761 680750664 77131446 823135665 950172869 343896668 678368387 125577703 433543677 542274009 470970486 860505523 573736713 967207674 359807755 101511296 145192838 424397355 546558542 193762189 910323818 317212325 478402070 483229580 614891653 411362663 611981088 989161266 155202634 735883390 802212421 311409279 537273068 166074432 743299047 51637736 978308952 515412289 49169040 93051850 785017329 281713214 769914540 261688666 67679956 962152408 56951749 377509867 229665645 227812163 834505810 591475068 680247275 467144147 403698328 264520054 502931290 791070392 299362944 693273213 706534640 289006451 310386486 74539304 681780820 728782475 59209967 260661659 707426319 593738196 904846739 199020066 496762576 265691814 2633920 180613385 458109214 892154422 546873326 231105702 755062417 871242086 428982516 880499574 784342196 356705064 825661771 358411048 271907942 855572490 331588017 549236898 133387717 254218289 275595572 828659556 773128341 18252763 456918869 172740310 123715139 540832788 34438758 84349282 950545271 316862012 968595616 478197038 330523223 704281795 497577393 314274448 67802321 680018010 163991464 398021383 725704598 999619572 582606310 700970667 945951222 253560539 514774932 15005098 21580645 406625337 495841148 232551560 688477403 544104634 406132937 212527223 28245999 857635472 792468679 364370302 107616851 645791582 999202366 831963049 332316665 727627799 6241521 494635959 758194005 613429616 887856046 980294676 273372178 222166377 252770584 74917948 858715199 954603423 859055492 621787893 216316574 897448503 726598386 938802698 236227577 593832414 570266580 135326352 191916972 244191553 436586378 856906404 309215193 557208341 142743872 175105739 865788362 65583349 899103975 476248845 580127711 544651801 238571219 905848243 761538039 780133369 152468876 121315221 680130038 714781872 220032913 785914356 791100862 801304565 541588514 910716412 226631023 529403613 877115866 959351800 903795858 152275519 206715350 692222041 647078278 988842352 858362541 481669653 90232105 146911110 737711963 526082145 357419460 932908061 953438061 940300823 972600737 711192301 512498974 599397507 606648652 857856697 368502565 127905629 444842472 588538350 302441757 28211571 791584954 125668323 356233453 326869541 29606766 109260995 618871426 51884615 730398842 508859233 378913030 706317613 860954467 893461323 420035478 883735475 194589892 980502333 945827500 672335806 509050116 412549852 738439668 956829289 679353908 503718383 436424687 693143725 457587807 396336414 564584477 240036115 630807524 243215357 318037126 619264522 771590338 348225025 631364460 312460660 290548104 44369301 787929036 785194716 935205519 910538487 656492578 304285585 556345962 244170500 876504923 947815109 699413094 539710435 239124510 759435438 976784383 432653072 837658463 308340228 809857613 12881046 974019992 119661361 445302378 763186239 756061811 397928208 854149194 994178002 149130343 314344469 598545126 752477690 733526672 630852177 383685304 137614622 222332418 199212117 831349593 937964861 958478734 230147250 319664806 59538912 609234579 685408539 75048253 464464497 364148757 540944150 822145730 882354618 3905193 949924808 908076290 47578335 110573837 459512415 363690455 252796913 597984189 892704350 539297649 203196974 109854540 929424954 826452603 454593807 630788868 523531518 573005807 436380841 305069392 991531802 385458250 690356613 116066059 606514181 836856924 472255114 141432552 365526357 391262416 806215639 848950109 341036219 276155422 374558397 902802064 834355344 592216437 238712782 761939844 55805997 788415646 729887345 166560880 938143429 829393949 650670275 453574837 871127857 556576921 475089864 216211119 237459292 34068829 606475152 995215057 881210061 226511968 325177664 510766312 370383826 415680451 61871260 470975548 66679185 774717788 560613799 126557893 403536358 390010081 952809073 283863810 732757823 965705570 239584203 605542742 379373734 983300705 980033216 587550085 5224063 582966596 749672970 229473701 528592504 245631549 219399236 890239382 734838578 232048502 323465870 749676239 426885201 288956536 973949911 5449505 708187697 293661060 452475452 568175844 931859737 492803966 923588322 990017524 444389742 53265905 239768061 282718462 60361091 99508626 119280987 489663063 750313069 634914478 848076966 411898027 609130064 735331703 676554313 593416963 945991722 28663020 940834271 72998550 610524760 85799023 147158735 764220614 558625468 162121893 793382173 590398215 378887061 461847334 528035919 447568815 42836320 446949725 789154510 206623451 681137394 21027687 655987514 368519435 219592045 823658471 898105765 362149186 107250924 801106750 279336959 136377102 294074344 519919827 610235154 669468707 340166200 341530054 222658764 114576694 642142198 907494680 177329968 616389318 465954491 303454521 73900668 754496400 67533628 903061654 164474442 870113554 824880115 568616354 790060216 348352726 992712432 255825712 839872846 803119116 108660184 751404021 256277811 170604992 191023514 558118743 981618740 38687075 138963083 723782974 781230066 489834204 652285137 634762838 718056930 442713945 184684258 95772695 366318988 693187817 164296772 669624465 845724418 294333597 812830037 648976639 779716499 21162586 108912962 168658715 811449490 150761883 917969097 828643570 779217227 28861444 820824072 862896780 607317733 95980950 261747000 530557225 757583862 582881616 479265389 798004869 793611701 527705095 979322672 709778685 954937115 488126687 844689963 392173708 792102061 566944992 448161878 765626403 350659300 166048320 68478665 514267852 694196397 389149395 597977138 372638361 593891090 715549025 976421000 86859957 654731736 575840739 196861743 374360202 178197646 931033207 567656462 831573313 124324314 622895807 613763938 737552713 621432563 113363066 871812961 404619234 263127766 645594309 78616737 717855854 372380279 462235430 938613536 99556283 941454472 506315406 383121094 646978190 85266238 147979287 30467578 838322667 254706088 54306354 337033992 202272117 234597104 26061738 531070425 112348694 922043122 285790366 49646750 737995526 485357387 750942645 985253803 217504286 632828946 617488540 440401341 989100970 310255072 447392046 15728308 853176865 759648783 48073040 690500130 442572860 38145843 464399860 644847989 142553680 462258504 599603472 268004503 123665372 714543515 436758920 833103978 839919681 301946161 999268485 257235711 145165270 265188073 459339195 754882301 865018205 304364115 485160286 344041871 387854710 543251268 182786980 606207856 223398894 16476804 413696370 689789318 173397429 883761811 700106170 691573460 866408146 613602174 291802404 410258010 507966480 690194902 137691813 857345391 753519118 151275608 309425771 241757499 979034062 832391202 848823106 433485905 524099489 663023336 893990448 294145680 60588601 300322518 81515102 504659433 245868978 916963799 647336515 648940401 259743870 773011919 775294743 963200792 196971241 949258336 545791622 742521156 821397229 681523120 425151065 976327365 418786039 873408360 778686656 318815946 941926402 754149761 24579356 866745562 380987899 396807386 198629250 585755568 844028355 697292048 695586529 54716021 986918352 922610770 789800520 868487764 703053137 457244783 560494710 92992217 661213451 408523647 623904631 369872559 245601798 153122588 368391604 946905136 641219418 648884216 944463636 532512591 978438023 723791468 858269235 28316843 808088384 938288474 169931811 549619252 644508176 804953437 433295028 871580750 330320176 829918842 34839549 910499692 977516568 809576887 737458424 182606654 216163237 654887117 139299989 577970427 405103651 38031415 740361752 210239545 365427792 631207623 838036125 991417985 895106205 181025322 38918465 528203744 719484516 650450189 821222249 303179306 227177753 100299852 505880568 453764913 301449247 81311669 242514392 732813880 49212789 778100957 918614747 32723376 180400844 579781482 494163358 462391864 263751812 859846395 340595250 335777487 753099571 226406246 300482992 551297227 744292666 737267406 706478009 456729942 162409978 874572818 253560629 408895812 543885015 583060376 532270400 539117655 702175692 817430039 327872483 408188999 306644877 277582254 167159768 43910635 900133356 178305376 122582193 570909558 911076358 18036338 850798981 803755478 987370041 852073528 565943687 752662535 89741302 235885971 368058126 505980746 1129447 37380071 621887358 845191488 550336213 893806005 585616058 375969889 19408722 755128167 428130859 431199082 82338738 966823820 805172673 167715417 975423003 932246132 761122768 329957654 451132917 336949347 953952482 400849770 761826864 415530138 398622836 521979251 828202839 739896864 892545030 619162294 859763764 251690304 818222875 279390690 652773581 456846850 154315732 669905681 10134318 755861958 525566946 340109704 179608428 130624151 130874842 55989909 12378953 411559320 178947320 85180894 710141846 90736080 636279669 174322336 82191058 125795236 761300631 199878767 563123266 145772725 807026628 612152391 593218424 155828132 452284987 471393312 68626628 912025674 181781206 334296644 358231405 269018133 501927260 632005238 135213348 288524155 292136417 142702125 127630559 943131874 830352956 38651437 682664844 263266571 80487853 608624291 161701188 355339355 624329865 385667110 942937585 674721085 110915041 440998095 685900593 645781938 810265917 559027887 211678846 26220012 280569705 546824828 488076825 861997708 177929418 909252722 737854613 158707622 434540564 383689364 917189631 283229190 237489817 393482306 284911451 215721705 783932125 384631883 348233926 191279815 681477084 209986927 696977878 197953625 423642022 271761623 779028601 972227689 948558386 981568712 590606450 605486332 540893686 442458692 357580503 216401360 158695434 876451811 785133965 968837692 99512880 913159941 945415640 688519530 547355127 66753700 217818195 117288076 809337270 872879578 191351649 696550082 459736259 9960759 520493287 915768685 573695812 705939177 530110914 292689361 55302347 328063823 318306047 184316846 700172680 848465397 476456038 983902584 459035123 230686710 798386870 639801410 244532519 822362058 578989612 242095124 991629908 646567412 853986912 282368314 149712643 845414022 305114982 46697013 759505688 315404442 33272803 95128243 204216638 802893909 240490942 77954640 351211996 602158068 357479641 868524029 402418886 298730391 417400325 521712031 780767621 255591307 142152302 991297817 861512686 636616826 888049153 292863570 356843685 197849695 696998096 186140661 468156786 605249598 395519874 924863995 363501729 628298579 894517909 650358920 39417181 173542601 417540275 485726044 798072068 993563909 524379772 864758044 645653910 20588545 744307075 3974444 924480648 702860897 484391498 324343792 752402436 767020657 814840929 847691686 374297233 286849921 453054488 384665261 442751724 41512136 383280978 287720118 769265042 198527326 285979210 795341019 970181881 960100997 341468832 1582436 701974263 598967546 688690823 214867204 765375277 199930572 259983011 539395229 798288026 891227244 108472595 760986530 511684599 959139977 963749629 427660371 796494376 737987207 303683031 615964555 416162234 617505034 245287692 102917971 668494115 869470647 163644976 374385686 132593867 768986649 782766929 223679876 144948230 995203228 368160770 609202429 3334211 793746454 549847328 149799628 69467847 1060723 351961996 35550375 292494227 304895108 903969835 175152916 824696441 890710817 306057709 952972599 142666305 658044833 469525629 347790359 825921448 114307092 402218441 50797370 134804118 584611302 878243006 524602912 442252514 919649238 104075150 507157804 860081009 820755519 167532458 161109462 777219828 318800480 960312871 904456327 413638566 36280884 713989924 760401315 299523024 593168816 869753631 344642809 465966350 483080043 73203651 561296563 387772436 364985992 426369590 425618233 407813947 472822164 991269229 658826448 479964751 511258319 43802 268321939 44670582 535625346 630495802 457996203 537044584 485488371 262349418 907251984 609050073 741385597 963548401 639448123 14011609 690420773 196211541 783560815 122853699 748229378 462848533 124325190 492181324 133561001 992545418 728385876 994889295 699845120 456538045 886001335 347297665 170734652 865621900 599578339 818671465 328562345 339811428 953330305 282105594 560703307 251006060 178738770 261821424 912563770 630866030 35162442 259585624 907067223 837469769 985889989 567098569 377972223 419499460 801760383 787200106 981449745 775943365 68362202 386057672 194258165 729037179 529073197 123888103 570104692 227829181 282690666 734884445 448904376 637242053 888902491 872649136 193803942 528617138 407775016 291274915 180308665 116150520 597322133 663643362 994734083 565279610 736611262 72627353 711553741 136041991 50361913 110053063 862537560 679506090 93826690 332848935 27822390 386136518 839457879 502015743 592146170 899682982 915036470 315699654 738797223 954921393 873953747 640410494 450235938 603004994 203491123 492342301 77691761 132824149 455339796 963199846 948588180 10167389 508243829 439267591 627426756 229081824 531927309 476367406 42410767 123876119 438763578 630642893 389003177 634665539 104170192 220529527 728097977 710968740 682465809 777379934 774193968 652605339 368169703 115358422 765765170 208950662 319818706 516121018 311222316 677494296 669281458 713772134 175186055 190353054 251865058 952905467 704436029 274778571 151409302 395642482 909279948 143728493 433118875 116944302 837741411 406561866 693930905 739308344 755504922 753887761 395486522 601606972 182533619 863442874 925621415 649419075 891295021 60968044 851750604 816252281 215694848 395476478 153940307 244156689 374568430 524128616 92460741 822909655 425326418 619852844 315024180 225902872 943170355 922706746 236403810 639036296 828464901 425971758 648592351 840375119 535221838 700439295 715877770 537647451 440183852 69502026 251577663 794702275 663635165 525670587 942357698 559444271 492878244 300159478 787100594 67124756 459386657 454904572 110444811 457428129 910277315 824593450 614718870 593332351 132588897 431400087 834388990 545558478 955397804 106437178 882638671 1799964 582571672 114154914 430138427 359538955 483888608 530237922 680103729 968279532 4251189 707023378 296251869 619919802 102874744 244441941 640159915 250941383 6129311 471409481 63077785 9532909 378401165 724590210 819154810 673445040 641098440 556659547 566355402 980421518 638299144 997346844 796617367 383445184 427860106 70301127 344058938 748555156 396466523 498163095 880942765 140818803 254529217 714492402 955162860 450118318 514571261 60965187 637606701 717594939 61529664 698560629 730979421 999745052 778014396 669260197 750203203 467992302 631364230 814081715 818521757 290348283 476530729 409341759 659816122 30913480 477354737 219056916 881393160 403518687 618488468 706877392 679839208 258406335 306734813 922037008 122600776 990298605 828765582 654367808 267517591 134641986 991043973 318516940 76742337 299254007 974235455 859905047 537467239 864111888 157958868 423964745 977347276 615575729 301497147 863596230 710354632 571391847 11662505 572971088 810422406 121589289 133084846 987016053 520161315 841972933 394116328 224107759 74426789 321327929 831061300 681203225 22292743 510632630 335986331 359804094 730358203 640885167 834205471 420962573 767959842 339297828 49388292 662608458 439024044 791893970 951237073 484089376 336653797 397990644 341845965 802335244 239937922 487524743 653287185 113484077 50863736 937623973 955174038 128380584 672676396 457675943 881811896 421200091 246480485 338752712 764707434 521101480 649420919 860243089 563579517 345926842 742379350 708634015 797298241 931353253 199332968 63084626 798906595 499689996 884411834 754023106 569079311 10519438 692594647 930170614 631607503 253781794 365982371 55413809 674786113 663878236 407937113 920079949 11869090 74309414 729496261 40602141 645656236 704299435 642194762 582637399 920406710 447688315 774590826 324574703 828429133 890715359 974537630 290735502 639360188 222440321 776794164 777126465 414111997 872607366 245345158 550648021 521246704 486346094 625455992 887549722 254943647 148280285 941748789 321249962 841295705 337691208 273575666 371984066 342015 479843474 336745263 840107578 799695377 584965124 757577660 35700262 340814638 177517296 630980861 70423940 676903261 636899332 767891999 174984354 884582224 80734643 448681319 199621828 725481507 123426464 7542345 2045082 904227137 946865580 747933161 578650051 600337607 209269802 389642434 325528662 615294334 385282322 968233184 991237876 780138581 900766956 420755695 681881825 374398392 231847389 229464087 17015073 403163501 976141205 326015017 526070538 813234121 880501325 966802694 531520447 581732763 215714766 849995221 323176688 446278487 621359553 218474219 622009579 419862066 6666608 479612988 750759003 943016102 87307193 936099365 844864113 334331188 974780637 585335050 604997504 601978407 275255060 681458790 34282659 540260213 979451445 160897481 599313155 924949543 196335564 554651395 25899421 23999213 435019331 250644262 169637355 805959790 507954725 179823846 167369416 300307720 237425743 289772874 558596591 530769253 397258478 186097802 855311980 477377350 828542233 612753065 457579749 233340209 835785713 603960034 888255442 707075284 710639956 974736068 57934696 652168551 928890731 119092924 16861628 423659945 385748215 204863497 804185094 817840327 11346839 23599938 444869532 206187055 631555262 536028305 816572873 307376286 172528748 182524555 234039049 579184122 773272297 142777208 232876653 398073345 578786165 145513217 439133549 431812786 790081494 953328253 44451261 362438563 928993926 599362732 528786848 704548652 742673536 242022642 654574947 796213521 425658160 650227266 742066262 441958752 752615924 415801044 239005919 169412196 137093706 852248552 856618686 634347820 152636458 174985181 263731776 714183707 123741301 341175166 268560094 342422936 62413026 177625134 608924904 820931558 552676183 690060874 198301952 841710813 727968189 257981885 138710471 312361819 948051558 596985947 826074674 49485131 733497008 32484267 554137487 531292564 439944403 577169150 897321847 372902031 991564674 939023322 497825049 760183958 439168485 774359097 970488729 492319035 829440190 35842011 759286482 416840492 42649609 315919382 632576271 207413926 466441643 146800977 921481038 548787458 561113746 64911926 752135275 972207715 244337949 844565281 659706680 883057534 238381626 676494627 123222246 897232217 900399582 701469729 546118427 517817360 391922300 361291267 694131432 839281080 616036639 190087934 506503454 523815662 649032057 3267578 184568045 255021477 960457621 341073869 143055724 490783647 202267404 138051846 93922407 331219278 364483435 782182491 841665529 369635256 34689497 796039718 518257322 627404593 114705947 96545467 729816184 438156684 422921936 640775255 124706791 896648130 974820212 95636364 638843784 278752116 451880255 301690821 443716176 301850956 877691234 583966584 180950995 333325792 62155376 133498552 296924372 330250822 857591724 385585896 614987037 648302954 541797121 404961492 638669477 490314986 755947877 930218376 495817179 192179177 801119782 339284851 241993953 268186837 181943407 540459201 879516992 174104804 345376375 853532675 530784801 734506633 291765467 225891896 547249032 568448925 697150554 718059284 802457576 775100072 56855901 570047954 978761116 236182865 664390469 983065153 330104098 267638573 203484209 410560522 621166871 346044313 183406662 891886815 854211130 98995403 841334796 409272561 826949284 178287163 282814811 607179117 372619165 10915948 664542654 644260994 793834145 354844238 515004063 143689278 401225867 59346463 905001557 78088393 120871468 833291885 171700556 936807498 577128469 200581451 436753247 430838646 854902360 345843094 145564151 964747305 905188268 493984431 581384487 371576467 812659434 963680512 564825375 252008491 366588975 289856401 178837051 913689644 523147290 595042392 899244918 570709663 799835925 886205154 545989843 593056811 17102842 662255563 190107482 755112017 487104109 428257516 383526107 471806909 670870545 629765034 44439441 353482850 534779599 568991083 874692888 881263097 658517079 778836828 618281507 103646155 677413593 805603649 91702755 929664902 553850071 221843278 859184898 407233201 897831985 683459873 558827459 693132567 458139108 282156383 247422991 444502363 829139181 177177057 754101295 579485111 521186 182576794 461172097 276411280 801556703 570947328 929629044 28827406 712587409 701148963 761029135 839885043 684802512 8062779 199781089 775562640 286712083 161443567 884899240 435633838 124344214 740755192 726679689 87094951 865232280 477517209 759947050 34721133 397231847 898344007 688939728 806508010 102655161 180196309 793115451 418745578 311866497 90772901 887226102 391216074 645489053 968626389 574743008 955658741 525751112 319229088 893284940 507899804 626883953 701736744 2476442 162159406 176268412 702134135 3153249 135709505 41018011 905951900 364312067 162204219 133302392 947779859 966833908 792271429 677680566 582965642 243843393 588462623 292893256 137436362 794211582 200902578 186395357 631995699 399632153 868612184 200194312 127551455 661258795 782978026 432258911 924874521 563529272 87017764 956001717 969432793 836496199 62005694 702799573 477281880 144299089 655429229 276250223 188524896 844920929 520251020 756825486 150839156 104804118 454120399 102951452 916751319 867560826 651316089 524637143 485567731 53039699 780646244 444868831 936913419 827129687 629421432 382079146 404962957 524636862 321285605 678782068 586096813 617942554 599463652 822594000 294953321 510955000 72665251 788156310 672047901 22672578 583709805 300426250 23729813 28426827 740492837 318925557 661580042 43023923 537349870 228080411 751818592 188495790 115297 754855752 110520580 591990582 373159791 717447311 649148071 326881130 597232176 232798770 395694299 756334253 515229271 434292108 255592173 68867925 566725199 4204568 636827441 186381130 14018544 248976616 330440527 259342901 313835613 598076466 433521506 424418147 85548086 244024731 599185587 325856954 965548437 860720916 230774079 45531436 969256983 626044995 856859617 578730379 913689667 769386798 342685142 632403212 672115057 132756149 257106402 581035317 529530717 893087891 948380799 572062564 206247051 466068352 956867483 590209305 149435524 291200092 506299145 331602476 855780754 485782811 795233621 142679960 566428914 489033035 823406289 752033174 637641204 611846109 116220706 466481815 265087908 581014110 426719504 896211758 644754404 471592666 682513253 705117088 584269146 279160470 44208696 251729582 142063981 147529388 504027725 840719474 52200427 23994283 702816933 981661802 78252219 89341423 387527166 931933919 208250003 938543037 128678780 769119475 472667535 73934034 581107743 245893632 316112271 514443599 534851227 364172309 256862581 60089320 835816014 889456733 805253394 989458449 357646059 175336722 478143828 213636385 109723203 719792384 860010734 813082552 340763220 44795860 118065665 529548260 313925169 89969988 865282472 579084807 761326272 197533194 713586717 481332175 335232311 653511502 516558033 651289712 284233033 763297115 808202744 196313288 472819465 341790620 858225748 774868495 977988074 866110446 663459905 455487674 894877103 113554422 275385467 689178118 309766104 191246575 869862344 358740194 152973622 218510784 149839235 19656841 711217941 453195707 920657781 727868625 732167548 599134795 655060367 96957824 630812900 424228873 51573660 26393119 640944630 253908343 188120866 510543318 672846077 666629189 957574904 693941372 189650368 206207144 519394514 881495441 378862806 110150278 392459299 839362062 340728612 491176937 789786264 17012979 870046891 979069512 570496419 784959235 248675494 414774147 192523248 701235509 585302564 561718767 944008283 977824736 672396238 11511630 987556771 290607838 781402521 850980389 48780019 655403888 979312627 238949663 786188499 155500886 744596781 341887567 924657675 483023517 641811296 947261579 995131592 802391307 610524164 270075232 396041655 930987030 16618432 227481459 958266788 72843217 849977690 453961188 846115422 289945957 577384547 899930805 519333238 113866326 221295704 673396064 662672341 537366342 569279606 604507726 208362416 204884166 216681551 464006919 629998860 316626596 704341718 501361234 980090022 792092252 566804946 178396428 651292136 225514533 335365374 755140797 568936272 423200097 652158563 37462493 762580608 296583175 628660759 721438732 90398122 511900277 212895868 191762557 822924756 511962219 447502147 50789242 878642460 647053510 32401871 438303252 921906987 573388798 724932043 798668521 962578946 684341918 951575182 446790411 260416041 904085195 645506828 143151751 639370252 318462585 927943070 847309079 994691422 922275795 880000188 989559491 25689390 319806158 225604570 853824815 375039074 339206966 48193167 783984864 160448998 521728766 500870529 314042033 723385346 561399836 333015723 902759528 624602125 582254964 914096849 525806516 51949703 597545899 299888372 1133993 640121531 168984869 388554561 364465226 26245088 640645158 713857281 400370890 661611720 838336678 588997904 168691345 222317495 167249114 258419309 718597847 238747308 450454196 987174965 239142094 449111217 406571621 883558882 894762801 12332155 301559317 905076847 750943590 715183535 989334321 469841282 734257664 21574200 159417238 809610645 916593339 66134052 342389286 656736040 213755027 461400212 218566157 933419590 636219587 581355659 835555461 35148952 939154299 97851518 842424421 374938834 144387088 45236497 680306066 499657763 996608979 994855286 114094341 462486413 131603391 159870648 588340173 279003136 443536896 708089713 25501541 461554670 869854781 73960885 731064241 573444455 596388395 317326651 502707624 797117426 122706985 934725587 857058628 798081706 398490513 760793369 806415532 859290534 20628346 33225877 151593209 929270112 272088000 760193508 640775865 420838906 502860710 300617234 371798201 268882407 141705234 160336034 792592035 362176657 670772780 371241881 574873136 772374548 262734483 430575083 815291544 141910349 879480564 152650842 244085819 937761611 426014612 168146086 921363391 494478505 6093930 787602503 855429746 802225950 111159280 775578279 755749271 515015576 18192114 793954175 627111959 894717308 952911076 60785499 686349306 707908197 152123929 304463513 944015595 690182393 815361708 743833805 618016637 752705658 942083958 731417743 867051801 762894202 433351080 848995846 801391397 922394685 830816371 539204347 521269851 253812193 40803188 76805305 708944641 362727199 853699325 174862431 142065237 731835235 166363592 858753701 225258631 584124844 58475405 639670684 293632973 771281040 539656577 585776832 985820361 209744604 963173770 298049687 466432950 499873045 539891354 4088408 428280043 407895155 351765 645669017 596083729 129829621 519330762 315785629 201279059 396138461 879555613 654472700 179293422 198854889 279506873 273158333 775185735 603979915 748959611 561171318 881349667 395703971 860102455 586981884 704123347 282409010 772557047 127297801 24353264 559018562 415422313 403950928 83989816 516301799 477648302 495850253 849708573 627674090 491440883 561323319 337315483 169117983 541199202 272349691 237606441 348435706 342027524 2105246 980283510 619899647 461331968 276794866 358626867 716376348 194543086 793241978 350608154 872863354 559874265 53257722 99788330 513657455 965765010 815298532 912247684 701772392 623153081 3949070 531715327 873144250 838295825 875639216 645404515 783965427 771505615 643072657 632776926 548197321 329853807 302446506 194267675 382591903 432406150 769020733 459471253 434592842 113875945 416745404 440099633 703239612 900556643 910610377 220796807 964793569 742619826 59197206 694452315 846722166 245551487 382473807 134041586 730993279 16674707 918578287 415575647 15362424 470694930 184372976 913884128 631155044 315525132 383090640 608766828 900974952 208605856 912038645 760809593 965195627 925828256 956516409 770714088 660863728 616631620 620729567 251466957 487171690 924886555 168223181 191679502 24907557 108976630 979640449 75966035 577153945 9673921 400029113 863081213 733798405 446064649 216068504 718133834 536272316 181792785 294786551 446156150 591015269 974885053 486147521 776076843 744197366 148657098 512960256 890244951 870796860 930034462 842100364 918272685 676794148 399086453 727354331 848444811 717887992 255244664 739173909 154512459 792993228 575637789 27459654 845583397 926285242 943481494 780381604 580312260 889935678 49309575 731989019 66206566 51662798 622572387 885754996 263550531 7602873 14533349 520848493 84286254 255813320 979589810 439970378 896600129 165404342 325415301 113538134 718342131 22265224 435508797 584542152 606321122 999423968 575569714 212082580 157910334 564905623 256544438 147568866 720789133 692659845 585086154 774976882 425113381 487350955 640858395 405108282 997355324 913048287 431569165 668015233 215998099 271517758 319966894 594117570 552967499 267079197 901014996 941548963 383080947 569769148 250914015 446022589 252943083 23043163 629124394 700980679 688460224 683798065 882106310 471523703 64417704 753708262 635961898 23076908 590500750 588304627 671057588 994955664 257306301 470450439 62817485 246172176 227794854 315154962 122965383 979132160 704122063 257420668 275604327 232867862 213123022 423350019 9793046 517152987 822187342 779679704 935962668 213973534 332091338 647900582 844523655 913263302 279258117 241797157 230968704 869801562 32233045 161785823 229002696 423734026 445044788 791353374 246429598 319491800 133600148 690092664 264396625 900732158 589702203 486392363 391850587 875642677 471670424 177449162 536259256 64982980 465387725 910601644 127646507 252548741 204313100 856534895 995982744 17002787 329311245 21775654 940876955 233372587 60198433 326448469 417161790 671769740 993925158 479146891 614676149 734836786 792150325 718268225 666043302 94889538 330950183 199440865 198433508 414455380 128198414 736843892 111832471 191875169 571285402 435137184 230682638 716605452 739374138 104869399 177131813 127391097 193774707 917559792 838479570 264978695 48756077 966871225 149010628 18057688 666500194 489216809 515849511 332082762 370479469 503392540 989866581 572922377 651456565 611982042 680709709 16180089 229500779 769595235 957559724 699549937 979127276 402430798 96992982 289337224 257109938 265124414 689833292 228692513 423942477 869536288 759324936 192275828 648293695 319228618 308267708 418606687 699188746 877439390 262270532 579059646 401538472 870103413 453748693 645445685 616553969 387916253 427020048 530651123 493014381 890004741 208114901 60811768 100928230 623039920 246262028 584475156 33009721 478474524 572835988 860868725 729641789 165651644 690726772 228983860 569899259 93089233 613886348 242521700 411558695 707269967 250821725 189335171 762805143 661386197 81913787 21598531 112709491 32853507 37905836 873200964 908935733 4121512 102576949 458369938 594510513 732259513 582423914 568932133 953988271 831120319 342149935 588368027 543212194 340399891 713930554 639435262 246341782 599944014 828038010 411765662 199879166 93648075 570919103 940987008 154663525 222372579 996380970 470538677 823761218 757679878 699390171 340696028 350899426 65991464 313151138 305677281 802664172 461909188 98072372 909302219 182644750 688336846 857212164 745439534 429679818 414057942 632307150 526037158 17748764 66858901 278908622 380861328 783817307 776357770 442214360 405816477 396967217 143990752 200316940 249425824 474270218 548348386 75900397 953086353 37529190 188489194 65724229 740174166 274171642 335320380 920360213 829349897 892409544 381682504 260992651 137391945 484537874 711014800 773072461 4861127 722085590 459197941 323076181 126207392 558142547 268071421 388495084 735150421 979536719 753220716 348383195 203794634 908644440 716385143 470351685 727326870 773798098 952784912 769674112 706056542 431957125 558872116 385073463 388505583 847750656 746281977 710373598 408108154 716090602 737363760 482921551 890632766 215119308 517004372 229400621 953302686 202488632 790726477 51654953 200209584 479147513 319418901 630914693 124242936 495104533 141914298 282725777 128030405 81950143 6279673 853837546 589310192 532166020 111752736 854123554 763519248 994801970 9985952 151627978 779764301 79085762 893118857 577452857 382774839 469856903 432504572 81698548 557569571 822653626 490193973 724488074 359158177 627567670 256861893 921682628 485389475 387929520 279577578 875415246 324305154 121486174 897083387 130877087 340424534 444609467 578630919 587089961 450093591 377251999 602866699 420340173 798771899 976979407 970693109 396011308 417059138 914123059 276883870 87337930 60774282 706628777 427776882 122237884 36471141 67999880 941947753 101942463 528354513 495245723 116984538 556170178 968719105 706189978 148107833 180226953 389862900 497631673 862287096 596076304 728687543 220082165 722584059 970570493 684897827 237872051 655559924 352470557 852836129 607081772 324526832 844174249 851500425 496530969 334125787 440774013 773496946 649991241 101883463 876698227 464263112 998592750 628055189 183182955 868502872 26376633 396606327 462601934 937936478 448640425 845873970 964705878 760976519 793282039 618852610 253306644 786699619 446795257 33450849 957003357 675844668 252768150 106773181 574763016 582313492 419030465 37209002 300801262 174759591 353732550 222881485 276327360 901538753 36921904 210910525 116693184 795275389 632364416 448932782 137949890 999285172 628987281 655954779 279006363 640115119 498338765 877632889 610558265 616596548 253742867 461716488 507310756 486330464 725280800 567069703 720835030 869566704 106735300 69138628 324245837 797700587 771755088 752097311 487975666 827799291 144567617 735089188 248677087 473739265 942141464 633263115 888169889 687424725 165447376 470560307 270969992 274139266 423846859 846265034 124680909 691335002 581285525 570646385 630807142 775784870 341498388 685332027 562154395 979773909 616887617 79396446 669030651 25628851 403418085 820462271 137443093 187835285 640590104 948571865 120064889 820150952 25381475 424662038 424979808 371223580 55218692 206523768 270791743 525905783 927903286 125881885 164403439 585341051 725595547 400575672 230297484 366579214 745099559 109702950 475843025 906789681 38943641 351609567 859200560 260811764 836723913 913121717 434448133 937480411 808371240 819186874 888618503 266321806 88054003 382638768 899913409 926671125 470478259 517986978 474950843 721626032 23173754 666017494 173076444 503134910 767945137 937780765 137819691 862334163 764432224 282977964 728099386 804077135 279204736 490163145 488374257 504704606 680657486 264243182 829714805 896700599 510230233 144972863 534827806 504622348 858733812 484843315 18025534 671889495 851596119 420340795 484756074 44173391 333147484 526778266 879876438 623693381 737024390 934027026 445015462 186554230 820480779 25589773 682463021 159468741 707795151 10114302 948223719 136505213 411342246 638149802 119300529 528314229 920125695 457731345 357834033 911068883 986102992 577520030 218588577 917178279 36285442 442834011 372449080 379392282 351221919 819644664 435629164 720492406 550211031 942739203 883628605 226895500 909423124 872350324 271449863 889520139 493522679 815469971 995446617 690192983 995808507 24271688 449142191 601951384 941958317 846172611 592872313 520425575 324479481 144652547 571980831 124992313 519831189 1286631 698277615 769965558 814326981 576535259 242048761 847652824 185137988 951631607 331506228 196310019 263044604 150750623 315032164 992543820 738138910 775092227 11791399 208046297 644390660 349388716 599586435 575019333 991741135 868944427 819105865 737261796 928355775 631145682 536044203 692901479 435293398 290222175 680105957 473855435 894607758 859482000 239290789 52258757 143656627 81341128 440311738 768068085 843905754 268498407 323704637 605676414 423201075 697109915 415878842 163501101 66244524 785495593 653783361 569559599 636798 2694852 624326619 803198477 997785883 437989888 565837189 254648795 66346719 611865762 926265560 17773993 751328620 114529797 443244273 440293709 287604063 555102654 315316493 877670834 121704504 709837005 892119319 674882637 446809317 509467216 27390482 758427695 493597594 955349535 972097557 937083719 234502712 417897148 744685427 171363593 783877313 214790625 344197984 492437406 383555349 444878151 391470118 877470186 104326712 488117445 221313504 286963913 300996603 477635981 240333005 793617475 723807447 620544429 213055342 290734801 889654115 137141272 869329319 464621592 87318434 636791214 86868589 141093793 324762406 984391444 195065415 958061137 170705613 595791038 779043727 783858338 895157832 355998215 562827616 472906680 184044533 979016403 836244564 877720404 985517932 384833128 164473462 947600791 148696299 199742249 908152159 165496670 926810248 1128051 496804871 322026411 855472256 989320475 18285367 634942334 889311938 927449421 85802033 188284182 156310134 633362698 91297851 189436997 68977817 873553759 974414123 118674477 854399151 93639079 213964656 697810015 966816567 384843360 836247311 814473931 429825708 547509082 911078845 86847409 583009719 142473255 305999987 956347171 146081783 717661030 307257635 941463849 148205543 601550927 320248085 395058083 835774089 943921266 74765429 617725676 656004087 20699604 275813931 758264168 472693984 697291096 813094185 709605349 636831760 495866532 80280303 735481318 233081752 243862071 306515135 44709969 410930589 927385528 7877113 566515989 694418251 64043984 390556072 328690381 945133458 482337529 764632876 923891784 998633278 693546795 953866925 884153706 875435237 695021628 875194954 682335136 693825020 757116292 389492538 152839879 704528704 52746553 618285544 132057797 476278446 896158697 613371786 169193914 405308724 654741118 535717032 111574116 727714945 195460395 814509895 524016801 89233251 665103810 274086880 230843451 590246559 359760933 788947273 653299795 54280153 225299485 985656462 522275987 736547139 26251781 954703005 870344056 189056806 402249682 627588384 693462813 182816631 215938473 950697037 759390610 595804145 416562734 473372227 502729105 420204613 434189066 970701597 122827313 300338050 883624835 219050053 858590771 861989511 677209854 986998928 751347870 72060075 269183754 539253218 119889383 142799806 521846333 308802274 519168005 481977026 617380875 537195512 17911012 473964635 377791984 400014299 724041353 248259150 6188688 899141670 799258570 877298245 567931276 308286174 493868973 152912010 744285762 490557721 890776001 901476183 809135921 528556878 691858064 376401938 314556837 428800365 460548251 130695816 68346157 386324360 996115935 845643156 442222627 728752828 384228184 477032896 616917821 210060807 728051220 46514326 954775559 301281249 790847921 759091469 476584631 698336195 36105315 485303807 762918409 444582612 202828797 144611849 906528579 163353792 699297775 997454044 159889273 967462932 370595111 378612874 24536056 577682815 441198151 143993907 62597214 543616747 273205890 14659841 446957503 431330415 565591277 103966235 205640474 631496120 707758741 252660967 768022083 79114922 838127907 483285382 979092693 179990204 817098592 329653573 84109750 281039225 804442269 720799355 502885051 173517850 804758904 728446609 756176769 691020528 299576011 296389482 848643379 655148147 651769981 325075228 36905200 601396397 196698877 382535475 380844382 932733222 677495650 988184656 246512124 505599889 477662123 856484652 886915181 25236607 31806626 286088299 740522001 142186178 818672977 395122331 970997216 434803216 102875126 886874233 989808449 580640649 38352460 991760815 679208497 129832758 378988168 751266086 476733752 5469103 373257642 925353298 446002571 887043247 856420381 971265121 257516136 286760291 643831233 67522837 48743478 325039505 703296481 635152116 538081853 103591584 525429463 706882458 597546643 826788573 905576072 643124088 929435201 991490138 632960050 731536101 568103127 397870039 469935773 681481308 457179731 340383297 518166451 730005653 995609142 193795759 659993609 223310535 905200067 909177025 194601725 13371368 404898635 118108046 7664322 957927654 22620032 644277244 795949202 90398466 488986724 786128333 119284628 747135933 8282410 36809585 211895537 492208451 224514062 48723610 463795261 467814105 104665096 723001614 439335670 340256911 98796953 92938506 151955697 889735725 778234949 809744396 788429249 656838983 33757970 38759848 211114706 418225232 24994091 708220220 846821893 234276789 919075498 187985114 297747375 756941822 290087637 777191340 165378286 340107935 463327925 701843511 251436734 719305318 568002770 715581889 107090893 314278914 327657708 336636106 320010600 296618226 249377223 79675045 472089013 565969291 455824988 223112273 217452141 79612337 607310145 726959749 193977717 836191747 880159646 20301363 199872566 628001288 587202658 138758410 702266158 880517643 411983872 746449445 485118560 33845292 693535526 659207021 498087854 843605618 187243542 572162982 937089946 887754961 706524625 204911711 855217897 110626654 185789831 334324528 494522850 802326906 25936666 580078070 408220893 903753715 873316196 949916367 370189122 451407857 659705706 116615715 595130269 889788379 231554899 348854170 707488725 581258195 915402269 360481783 924208556 217955679 456355682 120675636 783976606 751078191 665406690 568207959 732708049 723353548 939670113 858572180 41320247 881711994 583569431 148288990 183721780 524960876 918639479 344477671 166424887 763159486 65095504 559006479 747982362 135566255 969349158 58490427 273076927 840649845 507708438 491854228 802564067 634785499 938760917 553582551 110673416 727974778 551624705 287777287 517453913 349580174 630470044 156838456 45566451 949567271 433916708 416740075 55067054 437004121 480381561 312123377 608262640 822925064 812385957 597132403 99518402 234084453 971662635 504274040 336874583 128180153 610876885 346674685 679352098 210977814 817356945 60416631 24410013 168542724 108905118 561965693 443360790 371943088 251803827 188498331 709559692 665336519 917826944 477982906 144374641 299216949 280166363 927946173 122678867 525912390 453056494 53052578 927574403 542263659 866887477 593432128 176053672 100707882 304516894 644397000 397508550 844415110 894892197 990017227 965530195 193343698 75806135 803849589 869449398 967596242 421948444 21096138 962212540 547653260 207017366 772323372 432186325 162084504 135911937 438903714 892952237 799991263 525793456 324621304 276639843 559964580 379707631 171582299 15950101 757348073 514199994 443098120 243988407 947799158 916325235 473847803 699529252 853013943 520174830 220143835 34350314 251689366 47347051 137017538 449090200 336326615 232315160 616114429 918446743 27518048 530866241 494398491 426745608 838342182 496072655 524312412 525366648 335683243 165137463 78726231 571869615 452666597 248196449 737552962 442564634 391418251 493727767 815754136 901108745 423813209 979052511 483930706 269182854 443747714 163442128 907341942 120660151 390071762 299070430 519485089 604289326 577677449 431508052 107860303 548376132 744481220 378283372 705199558 900158765 658326153 545789612 435629270 390281795 845288338 859511651 311562356 555788920 493577253 17125710 112016123 189333081 739675380 628007730 295128244 778590031 346227028 657850667 58257527 594339151 93102924 115774738 612776940 726236879 996504816 392769729 515443060 164184826 902409244 537300571 217802445 922887005 613876520 435494661 899529740 795085641 658543907 46596511 315253148 577834965 888811120 423492026 970314062 866237463 785593926 823534958 525621486 111523108 704153580 245625581 709420185 375979363 820682014 771057557 978614317 771517262 315682701 791652377 749811127 792089231 368633869 191505379 25382337 93516853 331329395 98164179 637432435 291229353 268291559 201347699 937120821 745035154 469862199 547520390 945016623 389990746 660281992 719364614 579287754 789160533 46312051 596571472 53992950 516745803 227327528 317658492 818378154 113234108 891447607 361838657 84158324 940912965 175361175 98892818 964079542 311225751 999532187 491776619 283061831 426819235 356931245 278569502 132108211 739268316 210535049 444980622 794185888 932193407 144939210 642784900 621656805 647040465 481064451 499783090 365416030 802470776 519317961 958031765 972207997 5072068 320812363 37321386 840740304 628970270 828369148 926775891 201072618 600332186 631324324 972544138 572864982 449352933 987707755 192580226 35412238 184475351 586076756 993277583 604400784 613937622 374523958 782226861 66776708 29169248 76408775 615470628 5834720 31486419 838464007 271710759 342222268 854436829 326149293 834053306 532356669 157453196 153230326 697439096 327943864 671942835 81941086 384729979 858073845 507474427 569611666 679997767 716399481 770955288 822163343 935277373 265934711 6700742 728385359 4380493 57553215 455292604 150789377 212042085 523893308 636320602 97534367 546565834 399232219 192660855 647477789 908378111 638322360 479366943 714141742 694643579 710126208 800558757 813987405 525172566 381265245 633514601 720228661 378998861 151850220 926262523 795605219 291721370 843559673 206125717 424662011 494681403 390472408 959426872 63078218 360984993 722333645 574284466 905554256 148455957 506681319 829130150 143271588 338526215 751127028 982305877 972110385 248534577 709723400 720471499 172278634 130986341 774406342 300630265 250278047 716500108 926640242 615479247 430278819 461310565 353309443 984334838 475991696 958999456 18711503 690722926 921342026 893143749 470656055 47061659 934419370 483430270 337494124 489993064 594880447 918472389 97036679 224338986 143622491 44970692 262855291 92376838 214343526 305641927 826093993 404226013 819703165 465730612 27569776 472933888 5988096 127283247 54788206 911419026 160516631 589679307 996973523 195531970 569606108 611407958 417407216 21497938 983313909 867208391 558408841 539083907 22431208 521532272 124417255 839918281 990315585 842143474 709516224 314741458 267132689 824867352 7497291 656745368 919321633 796837029 141316573 32642839 163764019 393914447 607224748 330238691 425151164 594962424 119447831 553868310 502840326 685027631 176652095 616060457 221943286 1867866 986522036 569791029 608103420 745438151 399339168 682592364 794297514 720232388 780885647 761013771 498323769 521320037 38189056 370845766 962040221 346910711 418890978 724187024 877812796 863340281 804899704 583188807 935106332 692661429 947710738 551677685 156651501 919551346 961677713 362056067 647597783 358545174 37528885 57911927 181426995 374390479 403259472 464248372 732188104 584596120 189253780 659209299 651800116 386376103 103559598 420492077 613114558 31532759 692189317 885756202 243662816 953250865 189387230 961677123 692031573 774140023 906426448 831597176 102027628 535153728 93013182 139097360 622572284 229195359 52627503 69328106 675650114 199621610 367528708 778598401 341881317 591447998 927679336 542775428 750980583 10951433 141433405 582857814 617324017 233053083 6070144 292808802 725907844 900688912 278450585 396725199 751144259 581769124 96779590 779175847 572001747 927592516 129552105 173021603 54877226 966953172 957579385 255038439 488609759 429002997 989902454 90294371 518204317 906514535 261156459 851333485 410265144 748615655 650009232 129597601 774126459 506449522 844088534 15470040 743916610 884565397 311132157 44581484 120459315 897936066 930337396 650477950 846721085 194479616 62018126 449527293 261915258 536901131 590669456 913581183 957031432 867989798 279720412 767179909 210008881 643484828 750407356 154312765 878145507 285914182 664515541 445137232 755529858 224698751 593245416 979383281 611450769 926599529 592602646 208109307 55124414 700733026 955223891 41263698 122393093 548798834 981677813 427327430 673633380 805205496 393198716 725178637 459755573 776192057 222941663 886974029 585509243 104070718 379635379 528809320 721142587 197916484 471797920 118032088 611014326 639369598 832240276 696407088 521764440 220310117 938957100 910052056 355551923 654206470 527095224 758814041 597390279 631620786 979758129 834685067 247384393 481837779 354259172 501076710 612611154 361636390 791289118 472127507 770244589 438914910 458593458 419364363 914911218 217174320 519430593 713461245 287628659 756960562 677739351 55160644 123929374 868384524 23310466 460024933 512790177 669154675 208081338 289552125 490032654 476768234 535374624 907462407 489128287 152023516 771430644 374127047 24428163 313125992 896886474 732605250 645650574 188411708 770061739 675901767 832068535 587237698 478025325 775274206 917280151 187133485 209640206 835674231 118434157 440807144 5071663 858252699 136948195 154914004 233330046 2989493 876629857 925298514 302030534 415412086 255356579 185448747 179648635 170759176 739248004 452318639 495183459 991294259 288022746 783819212 627125187 548732271 309357929 714401777 365644038 565689811 383890389 701948276 734494594 571733415 656717298 710502787 925993816 578833760 900268436 59946451 795101696 483915017 617127668 215170634 305114074 332430776 486044957 117103498 788384222 582082797 259610548 586589299 907341987 724050337 981202423 440369867 629868191 734042175 217841587 404037542 117098765 343619380 729646418 555838841 737970124 945571156 999419722 444588131 559879330 512521163 394128923 879228880 698507944 571417495 985628429 355226989 574193968 765862602 63295795 216357627 744857686 515069366 271509697 494837486 317064659 554224341 435516709 25306960 455103460 813342641 822802459 992041951 934502459 439628105 302631350 795955998 789477999 748553122 479057894 755486644 485832966 252904409 630127209 41397052 586727827 810656931 820618392 474936607 338233471 713258192 600945095 391724171 648938036 942643002 538406159 525590694 684826990 14062570 136051159 74025857 139577657 316827375 805642155 725226574 478733493 480931856 216112229 163563849 767293651 765782915 662114959 676655459 960203099 450599624 40357655 267976684 747237136 784034128 607959611 672301750 657309602 253559250 806305632 250796925 943638761 457534594 603114417 743223153 750214298 900476015 559246806 135852911 422422024 700068608 114721156 115498345 239474264 929753641 932106047 108289444 312067009 172715087 967556392 39121757 441125872 186998768 887198307 927582834 184255354 91572378 490572575 959102915 325906409 826203722 768820995 320926017 480406409 697182334 633978764 806231050 614494684 210266975 352899712 943802739 2209000 942393334 495925972 996159250 479665122 892187139 697655221 741517864 272426322 566798557 764213469 937845212 511501272 810828150 591546384 795707001 873728028 227988139 527346739 528283618 438258112 490357651 694945959 994400893 398649462 501060901 256179886 311593209 810573837 964674608 713112722 584910204 981809981 296167600 526715745 132519302 982948570 700264951 666141537 825978777 120773972 561633428 943709981 268864616 709218239 773606178 393060435 839215219 234318522 730080036 957781752 175556452 21836065 925424350 901820762 417088470 964922941 52467113 134300054 604622426 322234434 108399260 968168558 433250695 85413636 45188806 798413967 14941313 539429641 167871335 993768497 911072493 561273318 654752797 915711700 331811547 738996063 656398253 2923773 465525291 429818879 711648693 827266529 996179231 552301226 463942563 590670980 322423384 961420610 850100359 89667816 212768074 748941315 181349014 271512995 972887558 945208317 624102287 59179795 961775041 507875152 367386726 806371157 777728065 522457602 191867589 301712401 304012887 68721462 374453866 764249704 932855910 547565649 888751236 82293384 624312057 467513588 781157672 789943311 48241524 357000351 150496176 757676071 803384584 937406092 271722457 874598023 239526706 103678651 886519014 79006969 906363676 962728288 924810552 384093587 124709643 302253309 642645552 198232646 144791704 358063587 345918552 12870864 725581263 158637188 170788161 622224565 615967272 824850321 58509943 770461662 104202653 212437406 761441369 813845756 867794329 720874139 577491364 699384192 124041086 660975024 44905206 332032626 474481600 637663147 346597303 55161220 395686648 13373185 141156126 389017727 383797144 220401314 285894534 880337554 996849118 147548824 786469603 78843523 943471634 962510030 667554893 715058070 142915168 963845677 522359032 165962570 715220217 940502732 822549585 244606893 445671026 261907422 88743586 479072668 541448667 854614335 625545139 138167109 996528922 904143148 963746656 842540506 117881265 94733950 304400827 625756260 677302109 356899800 990643410 946692018 383474509 536478729 212162028 671761198 400335406 897080249 445575621 686154515 684085999 672334423 151437255 794658050 71336040 46357283 422943190 526997399 863524302 606993924 322550365 446616909 768035559 515881474 837955678 904224514 708936938 929310270 465663265 249448798 979781780 757567524 236836572 686448395 110218232 275967012 555250061 667916225 633634522 222713860 886031726 162667268 260450678 658713413 368949625 712109910 111515836 494993832 283338001 850789614 982890215 806992510 150616816 195950627 765678202 685820383 109881047 9790059 858030372 638697170 762392662 7403312 973971030 888929272 303998905 736143172 337419209 124487380 821225313 786565544 6002875 182570735 418628794 259372682 760634824 825177923 356042763 435437171 122049559 362169101 339100580 471361433 693382965 533821120 250002091 916773567 455840671 496981776 351641829 901057939 558272726 982805156 635106724 325619828 209669184 924917300 524068122 847983216 961296047 33351103 938023144 503764881 946393001 98510269 820909936 842262539 755112881 412370179 128417858 410861518 629024741 330104419 835888702 19882976 386390850 281047639 818521123 495417679 48209736 877351561 577991841 400151757 122193579 495603492 288660882 230133862 650156038 428359709 866011253 417352766 729693616 619750276 492601181 702433148 101794960 140310220 291419646 466123714 67283864 86354638 246273414 511156829 725669902 870774087 992599425 62506102 68980916 952053154 918590052 353670932 298979017 477758930 487157424 327756388 988298773 688654923 293541883 134870668 179218571 180775194 42510700 748724371 290137267 874248927 89991525 759857301 951131861 18243069 174933082 654252654 573823161 71433207 939220076 107762706 730427314 649528584 803784376 320535594 369721688 387686397 222841369 123519609 540995089 896480406 319010828 697224073 577612678 111436301 194457500 110176931 486375634 794297473 969035192 927300443 905915208 165847463 249990479 852619058 929897821 382568027 120838661 621947971 669825584 480716896 980741739 101137831 369954998 487514356 594265405 283501690 806526329 953958931 817542134 392597857 693919452 246325907 724292982 949975336 952853789 23873654 955783121 803598398 354983874 572123480 577710330 317766283 842909773 92446499 652383012 525188442 379245016 160413286 975280296 826054438 44443876 553857569 855647726 696197839 509225133 74787305 157445399 498624083 45640440 276132169 368923400 328301251 985788118 695903259 456890713 60500859 326289463 712132133 54597938 69617217 351129580 432385491 732920214 779544085 324346301 931965617 733429662 266404683 493256727 373726179 927487440 584157373 775127416 239182011 203273508 711681268 840999350 69345474 423778968 472844974 125902878 768868171 220226214 525219075 480851331 182100946 121138672 53675325 348922179 516117935 376903106 385264770 406854756 392308804 154005946 403764050 222888646 793479466 372129478 554649734 924760432 822056925 488836627 82231865 486606585 799283384 180710028 937397515 811081126 904471859 798421560 589681328 401907601 240821619 62709891 873821082 162026489 689997200 244473564 263729718 937367854 263872703 445863495 453431468 392274248 172947041 591781460 7327999 859707476 965993836 212711278 423298858 55494742 898494250 129417640 408332845 287311678 180266127 965696003 356583356 344945563 744052977 629745027 92031045 505872353 380830991 694382861 906299849 978157417 467309403 902986331 237319952 423920205 644772876 97960215 164765015 664707714 484512492 798123592 584742446 969262317 795439221 480465795 200292218 792849239 176507079 291321316 58187820 715274278 875710382 768403920 983966778 730512145 662863667 610305670 314509862 489172502 132223147 734928574 234186230 497162035 205988676 67058929 633410109 263603855 417999113 576280953 290090421 665675956 54205610 407843289 498869415 482943119 243283506 603939783 611186535 937669184 636585163 571897839 65666618 3749641 254442238 977236456 628409374 821229537 983265460 8864635 862634785 424715744 738974953 497247220 769521979 100112169 324323794 787811098 750737403 236347660 47583276 848126812 482352929 200210924 812673246 363977411 412881340 407398136 399146203 684476302 39734064 219496227 198898221 684621053 313984253 314215032 126156709 381553660 337207281 418408285 288043288 773639745 478690454 429550676 551221923 634728154 916595330 123929394 299354889 389662073 589442782 674969746 308070094 12404812 239523821 722039876 935980055 942517631 509921494 498104451 529400465 779239148 94825816 970067937 162415759 224134888 435128452 205067801 987920160 494280862 624028496 564567696 934243805 352027355 741627277 629110539 226058601 942318906 199822563 265817580 129057144 374367432 716374074 357575897 876982275 618793255 863756428 980321847 92848430 13609879 456100787 172458488 224317759 477455490 841663217 850796959 713967144 231551266 676101317 744246264 252222104 914335092 701383292 569779981 918076615 298859871 206928997 827543987 341446493 801669307 991789136 821869530 469437197 765794615 727130676 550087098 850047195 820156262 314234191 789674656 971490584 615661716 257800698 27517186 688141497 777578628 57133604 487579130 920567825 839989052 780242117 144659215 539536979 796094129 767087257 165927836 395711514 714666567 232125610 919718197 730101324 817189342 743587165 339605472 528036650 558774332 351241144 326379820 86368366 938836700 450738373 338519382 339154406 653016183 229013067 271114044 527419432 842828586 415240105 651632095 404470034 225697286 660799853 142719768 671868512 581144335 213734208 216546731 489082534 485906703 301054374 878240840 506648546 702018445 55916108 810463515 480530236 393588728 885409194 592633122 297863244 695170198 763614912 871896882 682955589 13301880 674617782 990836316 209515685 686435640 74260452 71980555 846500922 908736888 269173316 298917433 465300979 401895278 180989789 765233323 541092037 974819529 776631826 458637779 520471274 835142552 693765879 140836664 751702474 926752759 773248189 763308480 47853439 596683797 360772877 531866699 111982693 624845848 400962278 699587537 259041810 680702405 588666902 952704038 209738949 617640520 437093806 148628976 541648054 684692776 286988852 882923445 599277307 596001674 46704463 362955125 112758372 590360206 108012131 332019520 581308671 112884921 764352348 979824468 158706829 924578342 658919938 478038434 801716959 30509386 369346113 791869967 340791701 840031529 354631545 593197362 45657206 181344832 919724664 354228218 760320789 55046706 167354282 695560318 198159567 161991972 56179050 856180927 297276295 635837544 830855515 205436478 402652211 737409648 796595700 633178227 811630392 24321191 175803090 784484014 884276142 97494335 798040884 986120169 593744286 892647460 204320587 568404874 666810930 808294907 383916281 996450588 467373902 847953594 645273444 737504351 81572866 428545259 752406041 783989969 641626222 341024263 279627175 358185696 370487505 525871746 422181426 913353926 402113993 910372841 667783379 886713395 583099273 526924580 899265736 546176919 380940852 682066779 480549166 395831120 912590514 304379024 325000718 878864581 852839522 249337745 432913560 431456773 91774845 108149960 908047187 559038506 476762219 947205954 386595585 407311107 378147748 77224453 622851552 941029451 557292306 980901769 960343336 456447250 522377675 102575703 987458163 814771444 352954147 466333963 409714135 391362620 280036689 752825224 996388324 327110528 677461988 909930031 755591795 346932842 730253664 552647396 646840172 711712486 233179863 681585638 23736930 445222137 284965599 360900776 941898843 819279247 631460861 735363646 145244392 822405567 210692858 910963034 545907502 510251352 15210958 946144723 143895044 526558769 821147241 365927875 16159790 953296127 554429465 161141272 342624249 147152608 635549343 10571728 346039133 963420266 436229614 831610365 466373475 749831395 691317571 612796780 355854669 305898750 956828429 388411912 304229773 443751578 803959746 6377557 488566852 163391336 611390173 505005385 820677819 860984697 524250047 629544013 156066179 48123783 31112746 647241950 857802470 421190385 252883941 121431782 181167016 468798665 705818823 309050693 846304305 934604163 210045545 296002788 849100715 472680015 177519560 820134912 177118332 78613454 848881499 506855682 168279581 547481058 30685421 184172609 858737861 374671156 585237524 27389996 945001422 735501016 346169245 3062092 668802481 301382419 219814945 360740611 184500530 966965799 533889102 97647625 358282796 747166285 318878171 336741670 463317390 953017185 6334907 541046105 987718207 991606386 557826194 102712859 808439251 821427229 55516281 265260271 165223524 862592459 599082504 137648359 456097453 350925554 100451394 739056136 215619572 81918315 521088549 678852257 992639696 156718395 468194426 243783058 142791223 11752886 467558908 244248916 858770500 836447406 193954956 911131196 996479679 421771031 176016634 116981831 81719714 43863076 524039282 338579779 717036475 536756230 602571198 403877204 628477913 502386245 179412200 636208919 785027364 493052491 998615236 363790512 942663156 163748674 548282742 67328449 855533967 249165079 157897795 682009044 897269044 667991414 519347329 687337535 285360734 243330199 544620252 244219939 67010336 630641507 814550064 664881456 379082491 403043963 874841357 303748031 833883152 270684128 555704799 682175790 782608393 3836835 875507670 296456146 347406518 841196511 907447228 768955608 354810216 682080856 986872722 752197691 129229341 926765765 460158031 862867753 249165281 422462172 821427592 742930288 388852964 513473221 669288653 423110125 292067072 957762820 693158629 385005930 283653665 719021476 234693330 494725556 537623494 22249270 786094495 464331958 739744117 20833976 273266122 123690317 556151932 945747155 787661835 746905647 915420231 600045545 976438561 663394647 102737352 744770379 872968713 721608073 923013824 613784813 312230476 894556902 101108545 740589115 270479250 823877577 35495876 266698396 733750903 234333185 284648160 132862687 693472905 644853077 721192022 285151862 44154421 69019167 757751173 340871024 724689683 233605118 263828059 930709235 666798861 902474955 869098507 436510379 875661926 952611666 279899929 270849317 248707117 685744606 966341980 616720428 126042769 384895538 509223328 654869266 368560303 669331331 50616880 573601677 887527036 516635235 699281983 231087902 806076449 57821763 530228761 244739434 419276935 16756996 121125944 64656947 457700563 721275850 856508719 592324279 166894986 276513410 537059307 583243122 217585156 617862065 806651241 4246249 913867343 813995421 972223095 627679906 84085143 535951706 310081782 612564622 559134108 990459384 964721138 990355202 693858855 809320328 985277744 399038202 851988328 267443844 706034349 47699447 869289693 462019096 224258226 374675934 140542424 445340519 212420725 949913928 31243124 580268138 443049941 145465123 876351474 497292023 398850124 472776536 591337137 272648425 421469633 406862439 302230140 388083558 762009731 52239564 63746989 205618897 719324816 134232020 453853360 223589227 201864886 941523617 108994825 174327864 565336008 117620594 536838396 37646711 858915553 672463149 646333001 57670817 204458300 538808309 900694696 313034493 889757528 170547292 513810449 166350615 350656135 864673791 986583632 864077488 547988017 705925754 113474418 571202502 334002110 399358834 325572985 388043500 264590762 129142984 671250345 112881529 273737809 876019917 688799449 343065415 121621365 605260822 357839737 793605285 700540600 487450580 490206166 782833924 842890936 338666401 748148846 383769047 452022177 399434244 238810316 783398752 276634501 70241742 756217395 828031644 375271301 241801829 480101267 430057812 975882004 601772097 638633629 326973642 944331004 902357099 714791725 455671402 422159606 259244809 518055855 924020033 399202040 533512200 583843762 743199591 250306028 881634190 394508730 435473616 795047004 841563262 714423570 979136261 256611689 290106781 255701181 458812101 781916563 431433923 241870558 716760190 33209158 743590466 190578914 732818524 212294063 708549030 280092116 923613140 996261968 92228084 435707241 66688806 708500476 31271209 5948397 447184303 87224228 385413243 114613939 409949885 525491023 94450710 731500796 74628597 65515958 999791881 778391137 596979254 701069819 278301099 116294560 685060242 549009088 158740038 658538963 779398522 139960187 958448371 241277658 904456538 934628884 644896455 413683392 66206592 985712486 410576378 866460593 995605652 533533774 173419002 331597363 843678999 380015005 837207665 387101319 201538340 884619118 113756602 461269980 732151597 953118971 116355340 659789991 803575846 330173820 274489464 567908814 893742444 617180354 488380761 755032059 81719095 624042623 23213259 963249932 343183120 388524466 578762881 536912248 120191102 257874414 519046772 883268805 371994353 229719371 322685173 915973053 622346992 754851230 858045150 87785151 128468824 579930374 588534514 113131243 975654259 710934331 745342077 664293622 419400378 368806196 686917041 917823633 761681911 68017642 459867575 851824486 922436470 700479959 894364588 872402251 658673538 264049389 419384331 618612376 922613885 605863459 646354010 949022566 116298419 270745312 394820478 980895308 277785632 789530891 177940778 214710225 243823350 322852692 428006085 828013063 991738009 213649042 299325412 432055728 779346483 147873142 350271796 301413659 185612266 910150618 320254802 607968399 877390763 706213652 131638394 964632468 181580071 571966203 152414509 175202656 830173104 376083346 236510241 499474593 268686708 183739394 158904732 269045034 706906984 271624532 999406411 569728246 770030537 809958930 293506132 810508887 339122638 608837110 747777271 148450465 652549147 354298653 772597706 898593382 690601170 859719676 480382521 605084533 567371594 534857864 356858636 786044496 37311123 912664739 167258526 907772468 581888374 478031315 163184324 951846899 327710213 73609262 805184996 837416010 767689094 353989980 616543361 605813801 264296588 65361738 107101745 22186799 500497788 226813233 498637714 996620593 516449419 954009727 275667575 86592786 411753557 408970995 888727903 917083225 197211145 589051712 26175129 882547512 970701899 148386263 441824677 37324748 299895104 884711077 400068080 31195751 904065537 691824098 534565081 227516239 585828945 129300788 152423213 824456165 986848027 554160429 909272108 336939076 551570761 745475268 75465892 403535781 440409322 983542675 218989758 674145000 659274946 290993181 280782077 985135899 218489700 728610646 313707581 259237125 937498021 662067009 281205245 4756418 926282648 116408873 301171910 607540215 219642561 558439347 969933338 501655590 132319076 818522245 714169169 674302928 266537883 842135142 215826456 738421564 701978755 285862444 293059695 486208236 602517976 346398625 871913827 906477614 296085874 389365562 623336903 499604633 765652224 395462892 628704658 203576108 378313381 554304169 425102118 806794884 523004131 589128356 426322437 747067959 819718372 940437722 609654518 448279421 906268289 298483260 238112474 537079252 476394368 744371183 780848953 925322707 21030937 442647926 562554781 142706904 705787730 678973396 347923417 704896465 141175243 261225851 705469749 956126278 88405471 752516098 596232320 91275756 174977582 535003446 536308123 396675078 670133077 222824565 121218402 50121015 230729062 761307431 528970180 130920888 603594750 476364527 446567885 345467988 171980068 480939469 781761759 293068279 542998506 767145632 535503838 336505387 864940191 783184801 88028932 349285382 357282301 390665845 458670556 252853360 408123599 498745875 933427883 907915427 71700373 735590715 382815688 10611022 839359784 312407153 79605685 64718937 320058639 252320324 986690949 296159531 257777565 223064710 385206436 230800131 965974852 613517116 165230407 917068755 304810974 523845393 111091844 557471221 887451865 233480802 188641445 358123430 278788949 639076578 362623069 706569979 783979324 129218730 452819620 451832426 690499760 793245018 925041140 861209261 788086426 833781877 10697563 78033830 233597385 544022792 834899056 349707385 689360916 161822976 247667809 606573207 180850334 677463269 604216811 395502263 943999135 769479685 786439796 150129521 187897385 801572291 435659470 870286651 274042493 675402155 293013095 164689634 14990212 4457657 407321866 543561110 615482571 355934451 304800616 334860943 567424468 787032799 97552332 975209103 829516055 908516691 454557168 287160124 163600284 505751812 560828357 783006952 405732845 966359119 535833679 376193038 764102914 246312163 806313701 597344759 837068255 114737404 243655441 356874123 976739371 188626950 762180072 230637874 188669540 777374269 220296077 163521442 74941633 290257233 508735975 844253109 36077839 27898181 68903073 764219747 493940853 536042038 722770616 724855911 513035086 111812634 395477229 263241827 516045742 796278778 619079564 977012046 784322851 432684815 121956928 923880621 63611074 530602079 48938429 187794685 384058923 957324513 25549515 88044120 828222582 159389596 323855375 485124121 368672396 451645855 883529580 290693517 515368596 710471197 40371656 984929514 543078928 937351907 119774540 886577385 20841550 999888662 768550005 183068914 812567482 443905430 643816108 343894023 768802482 619815983 702031699 893629565 730645660 595105132 490883648 863476453 276258462 22297697 787470445 271420481 606735665 728215692 106464894 95587028 366608678 64782779 863744987 720803498 471681796 706635469 623773118 592120025 115974893 612316572 453085151 528633792 261607671 511773396 658696308 184858751 297949831 105860227 788474723 452942955 269452092 811917270 672298036 816416851 248931885 745286922 412909615 8066141 302712064 114388938 399347480 444317128 735580813 490789149 415471863 103437953 675135773 869772374 714971055 454664911 446818037 60085997 954293767 326307123 575618851 802343130 848893223 427666127 767585787 169892070 311294408 392357095 326886066 346872991 87647082 692994622 894697107 880647190 171477541 805294781 315337361 845671867 635557479 754262446 508857165 271619114 695206701 245885236 562188468 381300810 983421394 923862472 512160624 992367698 698197275 148493839 143826501 895450262 569243042 555396273 310902169 61732926 166117796 137104961 552712045 486124069 91861937 493477962 904788791 561575107 589987009 409627767 576094146 764262492 285627008 658191200 924541343 838537234 345277485 895397478 378233387 6095946 822912353 847262802 923851079 812415591 395981263 664447622 711388804 903551240 764901938 353232145 208950869 635309871 589724037 462908054 118956564 27023463 180646608 39513729 491634045 172169887 867816451 504613187 113800545 333924572 725375288 194199703 982909578 787122722 616025615 213311363 471994880 19728190 893488144 593207505 898346223 886803942 319001917 194197452 563715876 8655735 687190007 359522984 359394757 147366496 528467582 215789957 81294764 162404523 728896173 28436455 974323732 516180929 869531094 982143077 286153930 771983830 16388371 960582005 847786032 248206093 889621912 236432069 357961470 32527722 578683292 28814323 24480714 173004063 461681440 948638450 592886543 297877730 3856643 367992221 394417685 166197139 286072127 771676481 265945661 664302642 751889479 798928967 202823553 442633946 789388718 474223990 752429824 795584535 134087568 152158773 371965478 505228695 45166401 600720693 449705647 865390942 708429248 445285885 800642208 365535387 328061502 100673939 994636606 612277053 180211114 26249055 957356801 630789786 72485125 502419858 37421193 35734990 64143864 490675197 122278376 736395850 202688723 362547571 977586437 882966882 140621265 428781640 677191885 486714541 330143008 92958313 287592085 726541684 902796862 446445351 664554493 839411011 304057765 796727041 450346645 105970407 864360668 138744301 419988083 988593228 311261966 145040041 149892690 889609488 616527272 829701358 426325215 948925617 70896041 449139733 322428186 242355642 545926200 921738772 859993148 727173913 592878743 264616027 790172580 359668036 202685358 967841607 65607228 138792518 429331517 156482432 521172309 222756045 231798301 690272855 879386526 889284391 500971074 559503797 338493370 850984150 713393915 42713108 661465542 310770703 968295290 118606705 730620150 433698155 495737480 91635576 786995327 193684043 166357606 989155949 279411278 428127209 501622256 602273420 165744399 430299947 766477780 553198601 358493773 360405190 296712805 159944932 397154369 638616467 943914416 417530671 423691567 906023269 727527076 791431282 614911309 483058273 265522017 672632577 383403882 140889035 430746808 732492271 4305142 947565763 992547185 371084717 495906234 468193137 159948384 515585086 241757532 741379322 344604464 859653153 996871658 37653207 992673368 104678825 255867318 741571141 260436369 774216691 581089928 895711551 212246732 90182512 574282314 18313685 184640216 86016500 56381265 754572397 617823800 241068699 521638454 575427845 647314773 331852703 864538176 277890628 699542791 777998342 297343617 835739210 62815501 705324499 290276862 919401556 814829870 926439308 960080741 93272628 201398938 536491131 487630656 512889655 123652936 322975620 559951773 139312197 236308916 856961499 502077905 660542768 381565972 993019796 422677279 307010896 217145550 111433530 713985015 206564020 945152521 417063466 875842193 901156449 629453533 211817897 664153004 128070344 802701222 274155410 854673869 947772209 646502533 446026687 330428834 944233506 266437906 494317868 965692325 497320109 592097547 925486923 684348287 777100480 859033708 699401995 450424270 825053518 25417821 961418020 61586687 293073558 861494771 821880771 36296355 581123577 584406775 799287661 610157706 779553743 777810003 50336493 39609732 825462133 882894194 678880911 336510730 322474079 610681730 956434874 375579446 859565991 776424500 572180072 101625685 789483254 342440214 42928010 600515726 460837066 474345475 398200344 480571825 547028842 514197816 40925754 554836403 128679285 301234397 136130350 830910502 889302059 101574348 576502850 516734186 101847917 203705888 530623967 592685865 31914558 679017074 417622388 549270630 711413124 806778977 193615070 607659309 563627269 460954874 128715118 3518011 950109049 165350908 524117653 615867901 324881802 396972219 719619008 746508015 282027866 443932618 508527573 198744988 207788028 171041668 89662436 375849432 437333179 978749614 237249258 521569490 660055715 137267798 36229795 457644724 959953769 292906916 458235830 922368479 702083104 774016710 620245869 193309605 10826061 639169198 668726521 817976217 197893342 948116196 808592179 57591770 445470619 198919632 579184380 125617178 187307122 264445780 389602077 911687640 201118898 640984823 764054939 509933931 432751482 857678683 342411823 285748595 226422790 331458795 188233682 567157156 869495203 339634695 160523860 528227875 895708031 162192946 933169586 433545769 857241296 810476058 31530136 603548836 645384710 770658089 911920570 343369869 776063814 93459079 700063575 219215901 606250539 37243673 193493092 67720288 849086319 276569459 621288714 728230007 225622808 40962769 365846971 841937690 585517020 683468116 78834177 425619661 595136124 986044499 337300398 968858191 644476932 11628415 982607032 534559204 877503112 572137097 861433613 910404470 98402274 989809655 513861094 810108749 247749158 781074968 317248073 889434987 658381680 409567166 368508349 535022329 120154602 305398257 386234973 393713404 923331446 794308786 314189963 9938327 681723424 195323291 11404653 9817451 168919585 165250934 149103551 211752712 166804027 900302570 601226630 931995784 563018847 177630168 849252450 564204246 490417573 33404662 551654310 184307901 117803366 302847759 925283556 791591580 438144029 619678895 57447920 147326235 264699365 87739961 502052933 230123209 560309801 419393403 712303364 763127602 589793052 957485369 134248191 895296589 5362798 834209329 849397396 858369407 991074236 861227415 827152311 55793838 800735058 19367308 707690639 283389377 484314184 959898312 971409238 438163810 292982325 762509958 443817885 922331992 58881778 632835357 992657431 401511712 535190776 882214359 266524298 268230378 368202364 777007242 709991469 221905315 215714506 528969398 740176539 529614353 987474393 735620039 427494751 847058614 669340335 643259132 595821246 937214961 249775006 31623348 30576698 623396458 387514208 863145241 706212906 663023613 696072930 799425250 445476002 395920752 969589100 418263099 440997183 358326391 321414845 328589390 647684318 871924217 513552489 363071591 905957301 182350010 655028859 756071821 215787590 926643406 204404740 66333942 956603060 680427562 782597064 990250415 733096951 277332103 71031668 674366245 968996239 609294119 310096557 751934383 488259549 629644796 397612248 771622194 898426320 270858686 218194054 986362116 947080868 954662281 191816079 825985709 924952152 678003986 335883164 501782036 547996032 406251548 516530943 48226060 343959212 165607413 559809126 940099909 142288364 745622776 508529434 758802262 305756837 599397099 905425174 708691326 662379945 865503570 521302392 745567419 184288282 875852441 567391744 507771567 360569675 361324354 921091587 525987355 672173217 735478432 565467296 718095227 497975585 922096796 940276330 656995213 669345893 340596192 186905362 951527959 459423334 855979953 696748039 974749438 554842953 705477242 813910834 937787533 852661612 234267398 849821019 929450501 513230443 752249140 963672062 904606689 184409226 489342964 846720071 515011410 586800816 411542076 102698161 905678143 397540947 709231346 100821994 291223161 978196237 643489 521850788 327338950 986386229 426946774 462713188 104975614 189964062 14174568 100332258 690987142 314086780 674768791 843363569 542140153 94343344 822240258 460612338 166724966 256121514 730130688 982906059 670678447 32198974 914859122 348258298 233847996 412110810 3374619 146442329 497917431 675088892 246675410 664079314 206842238 367289990 524464186 458547339 415800906 121085837 254194594 371803279 936280696 211988120 535698638 197855619 320510780 497958396 706127680 954339244 616516052 809523115 177506620 343852246 458967629 872895410 511877091 720893242 571739809 279593617 162199385 690791193 493595537 958675279 510559000 150861639 313064851 124561535 908792165 600666530 73943874 549541170 504689911 332159869 480446658 915358171 970169584 984629626 571289794 780597685 953056227 794128542 663728622 179540884 927735033 575879950 947618239 393413368 471082669 390979531 892939494 931331124 336586851 299674161 470871075 936999021 271572736 99609946 627224894 6138138 182671799 501161402 119150862 569326371 199198538 401340226 952272845 490209833 33526080 755751630 997833541 343298861 379610981 627211699 150206766 468196496 694261100 413978135 7557356 375752597 967256709 13511647 929006976 741929189 46112854 572283910 383160451 45258067 474550446 460398660 277607346 115304280 915052228 533506602 185881613 165902454 330718902 494633883 958749831 374238995 30920430 849030564 130624457 673387376 322446700 914193009 3991989 633106503 47800258 827617070 314461113 73912477 420360036 94570324 57226607 325039139 383246457 378120970 896871564 592925033 30408607 243019439 662626529 356359796 177124478 855830987 213947927 52842436 167563075 337991978 64157225 907549081 812576132 337807184 731498524 990103660 262839795 436109289 695090140 193651175 823923667 168918517 916872478 79518043 798183610 456242750 696335407 92583841 426493182 703042735 755883852 936277679 34713700 703339447 702519652 41556797 566962512 185924786 318161116 245779033 195224738 327155629 345979685 459173174 525011384 202474359 488881202 925495319 901542670 263574148 906124556 785807664 979335951 693893030 673585154 796161667 855215434 129446793 485530265 635049694 520645026 318796282 530376624 691342739 549762664 432050921 370458193 910688132 687033289 830822500 509398900 449271383 48401077 806304167 626827948 79901057 480174447 9715130 204705250 476332149 978247171 957721374 770241244 853509810 795909979 835116337 712768447 631192468 223647525 777322773 233471970 70035711 248666264 478937297 976175129 368182440 458172260 8459783 103610245 518132320 429983606 543539320 289455766 885870667 684021782 102168458 162173654 276214424 929891116 966895244 535623407 825500804 619041541 808012536 166323952 688019619 799258362 354407345 385218072 930052092 915836134 914728438 376222294 320672379 845824507 46047746 329462080 314097223 510204214 312024927 866912986 9540376 765482552 756143182 435774704 701179404 875049208 871324068 803339890 69006796 208624182 13577715 5498771 180730067 708148296 434318491 854458779 558875188 415558722 381756612 300213752 56620193 574518921 949119647 702817945 146442554 184590342 552448871 511090127 895128789 300678018 415444596 772541378 39131445 587579791 463347659 403268718 167769721 427096132 206850964 924475572 526621946 193823616 193025205 963645138 919621923 755085054 485088174 49609750 609141013 514124552 443660045 987043476 100958055 724516574 109237875 813648712 795818472 672499153 530461776 887223084 830009136 564612258 842962248 63387438 959060249 80875843 229909382 987440884 891406055 691401053 491557968 963304247 547064811 284572171 46180304 723251344 714812087 886537372 476140974 189490093 453398626 252084067 885030792 236375798 681406626 739462661 491795994 650265564 545604221 365496483 788420878 298708232 512616500 488326883 402886292 683702786 385355543 910923956 303872752 901743036 78198856 348193106 242023779 45684310 155486116 691994491 960173773 900010752 128618939 417143895 874363884 642841806 149164917 730633056 312582263 410670213 617340700 953830274 253292705 576750456 576576724 806144886 384108110 22490849 707902177 304490983 242851378 409043564 864047891 768776405 692703771 142010739 803629254 974883732 997925710 337708523 903047388 944576957 4406890 42711059 418847443 389296481 587207516 165374259 225453736 597265490 853650756 569357276 952764471 177327308 359026942 312820825 65642398 796603918 60240 635865426 562211341 419845403 98707253 432401374 370345743 225383688 191760777 448654282 305604489 531843978 692239442 269362716 374164941 785566774 57079123 170468817 155364813 380675176 895672455 425993679 52516078 542854134 512237068 752205754 619430380 625579119 223314003 44557244 35833100 561763328 72527624 672183501 699155556 495504047 441942785 2411490 560468283 396707777 580508009 881425370 531083362 220268048 194996773 685169641 496995759 423049004 298221073 440291339 160194134 585742801 11381340 414476220 904520469 434351569 199543708 231553163 90245814 725189711 209877415 909854719 204177799 794669240 961015074 275375014 347927179 573096831 741655185 283343277 72017095 328605396 998516683 265623748 836499861 98067921 678532391 964823664 245557326 54227461 259402651 538226767 769194413 687987768 987612386 92799767 20568870 276697024 851393965 881722313 239001884 390504356 81718348 687296175 253800677 238211494 375115081 561292525 237269472 980531046 582626960 694618951 89536082 477392937 656015563 487620541 992490405 175825209 864175313 732365441 176120598 242800175 932214190 844329142 187051349 260318850 780100048 42968282 25857457 876193320 725189896 110437425 915551613 694958164 709974454 230056359 196367005 715502917 894228171 345005416 479170089 505948398 657278003 209392361 25956724 668705553 673904033 417871726 430786202 105251088 243417858 544915870 587503796 999897635 219976705 168429310 676332502 654288515 641325831 855954975 778657845 419627029 993291712 603631364 237386909 385726701 680531083 366599336 343885043 934220355 278527136 564921984 880261373 87460901 409246530 365481528 336421574 852635776 515063825 891637989 264447326 911434996 731889700 374184161 144526964 748504823 234972275 353578167 318145253 874543152 141439477 293558347 386867430 775871002 828280528 194321495 36498593 520179737 382623370 676528720 893741902 547444114 332564290 917261674 992232764 192416082 237988184 72868134 32549044 504232811 634435544 902072353 365978789 627749266 973355399 937951007 820101852 665616627 970737014 234385738 31592025 679411967 69776673 793381753 855390457 271145841 299901077 942078171 71512555 262208563 356862898 97870467 197698469 75520345 716962769 660870651 837746253 331283791 25762349 542046880 12206674 217307043 483426989 893292765 978903835 817278117 913607534 717120173 371099365 514991338 102614272 396053778 326903605 983149270 40380288 888807043 946186733 452641771 464188471 730920740 120899383 489039965 353778204 473804262 908794860 83946799 781714331 296856328 909856216 419482210 865909968 111476064 752818405 35714112 204273034 953033481 391001876 343187736 66762587 834616969 266627794 344353479 925384949 981293844 244558841 803022565 176880728 821188409 603714003 252889334 100306964 415777728 945032439 138487655 668794034 462136419 523417613 904196986 573397476 767825151 203952769 447545176 837665028 394965534 234567313 633156237 518924569 694802436 35650114 165953434 694694981 680708286 888879546 469650157 261539044 477917447 845917156 808534780 783883261 55189463 39596160 984218375 543325105 775857033 758942738 208365532 461801378 969439692 206589437 413016561 484844178 2240905 10067704 752628004 242747100 774474598 837019523 156349334 209588599 424288901 477642082 931210722 794932232 116742050 210211195 632987043 80235772 132046797 139023663 627714850 851718755 723425952 148004362 521154327 767122027 469778562 868494877 295029418 139131486 473876686 48687520 536988293 414896658 740058866 216796532 284244031 91953832 185883411 21110191 649057332 542488599 706078387 198223953 732346335 629634851 233912834 235223685 363852073 890096205 602527253 426171485 872769304 520206952 772088767 726356996 679773175 168968952 766437257 793727160 436125506 6220392 243609284 92696575 112916249 9133269 777338953 645885595 264555398 35077735 218789003 315184237 929935389 555817994 487261460 165571600 409189666 840841731 343930966 253203408 421691468 742155476 556060660 132258092 729136648 713731875 462500976 715881072 789849119 500822401 242454103 715658022 185362562 312447668 589663769 156999405 915267015 100834608 149680558 95273943 643035676 91214203 35360955 939861603 803277588 248750540 112013160 676100479 807886133 722814674 900757528 627117056 584014874 189648755 628666889 563793028 221009746 11103283 537247450 390935617 121894940 521680276 611389305 125265535 470590985 697092782 651326338 454823748 520964922 449757705 377412019 137048616 913785921 597427425 942286003 929132544 224580294 23656043 509664059 552717214 449082752 320801791 259979390 444636276 555131218 803523822 546096994 652294181 633805272 22008274 744189118 60837718 763650330 592954383 748635019 6598271 248739081 740474108 136560539 592151746 315300575 365434395 475468076 668114006 601173172 227790970 437170117 691557692 688975655 481960530 775406465 842923428 10883853 753725580 936850010 518465029 194322733 307502531 664310198 422056255 221364769 841592472 202022723 365813734 506620986 102622676 464890723 214726672 884481739 800428004 48018017 173909940 637842586 331840904 349213004 663027871 538400380 90845654 516361730 463787773 855904041 358643546 663438071 849047777 50566476 839287136 261264251 725934424 31131783 209800325 794530050 666144240 211970357 410892435 858731962 907548675 817641750 704766222 83425306 94897199 9732330 314527850 410752517 706145138 650943812 453065349 342237943 545427176 150462466 860462485 52960140 936420884 465452982 814331857 357025707 707839229 153988418 103198896 805058854 104988934 994720588 787255619 828019865 341198270 582301766 695187600 163269309 634904076 589933312 890861798 972059069 696947727 695887556 789993800 410832389 98353127 438369699 925849984 19083482 213770762 549857845 687454755 591102361 216346800 466374103 415455648 152630529 216419788 696530538 53045464 485938320 798024702 686802405 815636932 117124547 90622544 463537193 213788242 517296978 407205096 979409539 191481959 549206556 849665134 923718466 805995757 123571029 435589423 828705856 4015421 176190788 269485449 243292605 847616269 560236987 540587320 90514406 875155213 199383321 206344910 442349661 138798527 830018935 788669963 559856820 29148378 276034478 625102693 563328588 103974182 56564173 788835757 287916366 469212613 108002222 954677497 480568256 288445245 445604734 222291189 637443511 677887422 311762917 144113732 19857988 807379334 963247154 11640091 745448079 134125346 529360311 101431936 465693676 769649924 797134809 272599260 251408487 432469647 486428807 226361778 167496172 704835737 671873453 668612530 481966312 663407780 634784389 891161883 944420213 223895827 294447649 527873655 185883934 178857931 451635568 702199171 981506162 171921909 230412069 886112966 596595070 362329857 233618218 325359740 241738989 517625844 672477962 796475317 772612047 837643760 496663402 843809275 93944494 732762280 117301038 752578625 697264439 704807065 170602641 157338277 941679400 5987168 159509654 792535995 599636694 197291979 972248531 944481255 238593415 888051602 142539320 593574882 92082109 177115226 647111520 527810540 30351265 94971991 436052878 883092723 142999473 211800243 539195321 744397467 753240126 158054795 593030177 308419068 127635103 685040621 297316694 192101012 396596940 750604319 525579932 259314910 626871437 824887387 880589546 203520737 728846722 48295028 996739199 448345216 311466553 431121065 460557696 450515058 774022818 995440474 456536987 68552998 261111484 163521498 137388001 863729845 270332760 370958127 579273263 47288801 721203202 729911903 669858729 303473916 522143052 298129482 573489249 307144185 971351421 528620146 143579789 994408837 354610249 418034000 961973872 390353103 477324137 370279050 716994646 381426862 349789246 108334213 659612637 834477471 287335044 881560433 564874938 577379860 493717067 580231749 347351084 474769653 185009083 233124711 26534994 922838259 213652289 763127414 568804712 849749011 999062276 218692490 594865555 77574787 346239508 527685841 308511163 596654873 970480636 975527864 200249801 594409694 893798791 60556602 40111103 579765902 149429234 455302481 986281815 146729493 618914971 222119990 224276522 804799794 949474099 233041753 613094140 231508477 441709203 166006049 834307510 901212290 495085130 604749812 862203941 704041254 586449520 472004503 40245268 110353673 346465056 665860640 865339583 203824688 357208726 841498345 673016753 386991339 373365995 318292116 20376073 540317067 44653768 698926060 966756387 655629475 226052939 908027692 3418844 57835212 963529645 548650967 171821125 607317118 378817286 34108276 525529017 729668392 744178778 394842611 389230470 267073112 994098180 645986445 810533279 711482593 389025901 81526956 808511287 935852255 578590081 117384695 714338066 176890920 592930655 627018375 31960458 716466218 792525332 947656685 52225503 563249847 864291106 474326393 945920120 750933861 692294489 933168515 801301681 365820568 328213316 6949998 19897255 915345066 553439569 763089529 724370292 639887495 490789939 4857893 98732148 446395086 656334922 828370159 938763488 680593100 8023349 124345471 303399077 435462948 698059604 926440245 759106982 121915217 550091332 772573011 430130069 93720417 739924695 218580375 460554555 310025804 13242843 327028472 972796605 57492500 910203202 344297064 263450515 394588845 764244571 316059874 504247881 763237043 902431815 155736 435233003 706646079 844115981 651089323 645527318 932414493 601214130 562830023 546357036 351427313 263035264 969990848 914424120 836175454 776187392 615306332 88242017 163629371 325528709 325037811 28086674 272131967 231122456 798793777 175985962 336908612 548187235 216275023 625492093 58306730 381150277 127273570 566769352 209291755 656613453 618822509 715320935 812086611 93358424 769456304 87713651 239979278 768745855 203039518 169063151 585624123 523666776 881479275 86117588 355771460 193815905 317099834 706158726 405653809 655234631 425549261 31643841 127633837 382677993 260797261 942678737 646921925 787581042 599629581 374936149 237807449 265345213 291687983 120165134 321416902 925882715 345988407 447336815 197051926 372467957 943497580 381726798 893045688 651160109 955609440 565199574 183008059 336799930 699440395 104451518 780426377 988746206 724878960 720864587 488140351 971277200 658169391 466104242 588147220 899642007 421286054 971766306 170190105 85180338 710170877 572927211 743491138 631053820 530686807 699978817 277236980 467950395 468224696 98951480 809513247 25146937 133456670 788729373 693238996 781150959 435724181 875429221 185566416 478461925 471350592 236653117 487260571 889147260 479383027 65912553 461103203 378473835 204565728 657341043 902461160 815766855 312905662 458329392 724770214 396085579 134024140 917859422 644954484 328866813 3299966 612253641 553640893 599546843 909052184 572521935 146990286 984779265 312616033 348119038 148791038 112198258 410341487 719215941 781912453 415918275 133123952 60983383 402650046 116508983 891327528 130493426 755730132 378157556 851651851 794569525 772105170 720627326 678352891 234002538 297520024 567687470 172538029 291198063 102113228 119191692 19056133 49052442 850411027 930683103 235575441 664021067 591672819 316853624 9261164 945599720 478361538 15603446 781280430 336373158 452910868 157138801 604207459 158460176 686389079 369289065 444239554 707819999 169811324 180674125 402971919 464087798 260968496 687231904 540757144 85812306 987432137 272530677 595847358 538074428 937505551 916551310 96200153 661575476 608429731 291247430 436107368 206954894 174233654 682558543 229714717 5765988 768678187 852567708 232881832 410417452 677199934 243829876 41989956 841699065 648063435 418501202 562574477 149493192 285563539 250373185 778391806 195058639 78904688 725728330 109921064 66843504 75368827 879036698 889448985 466780586 581358311 372515922 382354610 567444856 509929413 289950183 900513873 457639576 217182720 936799852 447627015 95439140 608081711 252462009 438781011 534483981 722437922 62185878 849701819 834466586 328977624 27013156 237239754 503788375 884256632 232395414 229379939 112291145 913203762 782535369 250057634 295017825 652998179 457350182 825698196 808849521 603701031 146288853 123978010 431878550 33037743 411966177 310433333 758975231 889709412 42735377 55510986 781643067 917905117 266495957 864077454 644499894 544081633 893140605 992397132 615220844 746885890 244632586 484706944 754830249 915004146 389589905 365196104 72620832 323582892 632715298 125079407 319506712 591325348 779575061 238551415 981661168 909783733 26983163 42773069 374887968 261569326 695844779 238777119 737417161 507861750 57778105 178078407 846109340 898820519 549203486 831911539 147322318 259469519 859014279 993248269 58889309 699854127 293917293 891148762 597497006 816548210 958838928 673066794 8662538 250133959 185767245 586441155 506860363 433402060 592219031 376352940 336727672 717595667 555291083 646484840 81309863 433996268 174041336 910221631 281543069 568963801 900187210 19129762 565932213 739659051 902584143 748394856 727043639 283494785 950871721 1702343 377385525 736288379 387167598 185533312 514966802 751458963 718045542 562294758 731934582 846037738 496033286 695307422 753282811 375430402 136613645 250099621 564528536 869929465 796331015 261120370 62452423 701306622 519137949 761850127 314381639 623792473 361727858 486086392 58926708 441763422 275702817 41522476 503135199 457254584 501369673 997161660 384052002 720037393 181616301 507491820 132298061 901261158 468610673 459093888 112578638 368389426 475470297 1830894 973108542 894961975 747813134 795831834 105913489 525178938 268701981 748840047 751977842 307000304 299224491 913347141 380587651 670428574 58598670 651906177 230741072 600139003 345111710 785703799 925393116 204757131 627136556 712582618 324348626 785899442 89266047 665544931 483889116 118674393 214886195 206593877 610148844 532573037 498909845 564308791 671875427 87051361 780047710 787408668 173439931 974488848 902680836 130205290 359541995 695033316 849411185 247001599 908659942 587524883 257018737 550351238 278578405 27387114 443085434 606546675 834598714 644203511 553770268 34479083 695079047 236127110 614815957 776974982 383215691 411268183 835350867 418963950 782923865 462796287 144226912 692316714 753117982 499566791 185142781 309423194 210095120 796802228 917163699 14074329 448853103 705874910 849805889 793599261 250599264 512154584 834222883 36146818 424905026 217169404 205747286 854055866 500027395 140713118 387117310 910076429 644507488 601716318 772248665 253742453 390845325 255575370 433420285 357235003 603966219 524192662 316901377 831517084 38637581 221977400 875428892 791903596 39342546 501161781 994219154 217877911 64602403 660342942 953360543 991672555 15410957 51293347 138825990 455786597 627893738 356880588 99168975 246915556 75093851 435395830 6856904 471279755 135340306 228967466 634354585 708731518 386421185 504648892 260572588 60877120 225411092 747070442 231912152 938175102 815599868 791076134 220204439 800955217 454002653 258245522 687692475 419289131 673203422 929250478 159647227 286911336 989943400 978109797 361306977 976327019 754890073 685686595 575331612 773189543 668353 11583346 757683850 132162016 933451793 873569394 204656159 180577433 244289085 752741321 712853135 523554556 833359513 335441613 107972843 414705604 275075781 930926888 92354152 206830297 842907332 606909334 574952979 616822249 121561408 246887024 417890677 581586909 946438263 54511518 903421859 989500408 953830555 576897771 578073382 459140489 432786432 189139623 614860284 108330537 131764823 663793724 727978070 771669869 798911257 59242028 598984512 946644455 902500817 384864123 766942115 713065824 16833375 287295604 760362262 161368054 708312739 596315406 66434671 678933105 585093315 662971240 924283169 704556244 783363503 372189919 174428707 473856305 188314833 258388426 593449960 359806303 116158894 695324565 809905346 178773535 837250561 309563759 186105110 923854987 893423277 267851884 977251704 543919461 956882483 86135941 795440038 931551095 567721992 465364658 790557151 185272868 433998923 717061752 514040089 656067280 942694935 125490747 320412518 592173746 271735915 732647444 553938085 343018730 657685106 583498566 302652783 92914184 207654690 882799195 5910452 167560195 101684977 814024185 908317581 753364376 983159200 612642933 845218793 875685156 38140341 453802253 172384404 869466780 185942066 480249917 55005854 443973563 120839501 61640929 544510075 460962042 14643292 296267225 806896817 302637595 865436102 975957538 584985043 525218140 39580096 495591255 575602524 469577311 149985702 97897264 740911000 315232865 5177562 736328387 796400914 73612727 225944329 846749595 836022148 328942796 933051643 644695086 634148512 984336192 167119691 653503824 892218535 610306190 929712991 165674463 909793610 16723103 236456629 840393150 857603184 614328683 317912186 825681981 522091617 872852875 188692992 486703192 705824751 865031751 883846438 817136152 750452497 478490775 319134314 965141638 317028337 876788310 371242110 145783816 520976246 262744492 95957008 991152027 112794865 529801467 96201716 156708206 176283842 631190534 269313689 192732608 250259879 502372796 627605177 817649800 861651221 101079265 39733933 64954088 20521028 547421197 683505741 913783924 930032717 470017317 624333019 364571098 781698699 429643155 217812291 163320491 695774857 454905771 198459363 941019430 384406774 938238225 640750531 29620885 60943148 788666747 551561351 61145601 539617838 702977456 872101595 403232629 550696853 282289913 716451203 223880260 25578511 339787053 793082909 494014382 752570600 62572480 66031046 796819646 620851049 243863868 199135081 257000771 576051768 290019142 122401123 963590306 871132376 677641686 259999909 881496046 544390421 482113859 998670833 228231057 261151308 687394993 622798929 636906618 619468933 248648721 471509885 310896647 464570499 368851873 836036420 275715201 406988665 640181266 727133738 55850394 702340742 108607223 656258870 554381910 815688216 457703402 122601271 577088442 799438958 347717218 340502630 361784232 679071850 811135824 465661053 719090866 943543511 68888394 149968682 421998062 127771815 754838740 819412162 372604685 909547604 307041638 429159706 674429255 397595010 232181963 994654521 942136124 892030471 55418039 874779550 139511589 336510428 480520253 762976478 497545952 390298220 742140692 182739411 519760482 700607433 377156459 550689086 905064734 647344672 946837396 234156082 662867238 295704976 980310618 714491189 958784637 61677353 819893179 762632320 848355144 810257202 843663709 737675709 954560599 881730851 744876741 82392114 998001342 438040884 926227292 195782773 572421583 490942484 326104665 289540665 537269494 288765454 903778852 639825638 541742467 108337283 867679983 207745948 817365272 75515553 863374793 753267561 225058761 49112944 151174116 971107387 278699510 397526786 675042465 530045958 272102116 244254114 391506511 290185581 991829589 788864474 217231159 505885155 459848804 931743646 428620354 596437823 37472323 748847438 612337146 752467386 535090228 70420102 67759628 79919180 998984229 478365620 850209029 302600379 53225037 437196045 954925202 218601301 736821848 701861279 730095572 740517031 327298163 292482162 898214143 214584230 438709233 825296552 593774098 285963646 6223949 210484681 961407556 491752277 320635782 784503488 74591634 843867175 652934525 970827627 949756063 679080310 403826042 864793011 900150815 201549943 997765084 218157199 533427125 541239388 513109340 584334660 874774327 16378269 785469392 479561669 596031122 612503848 307824115 931922404 149689565 769768921 747661877 307807366 358249743 631567188 668735863 347098234 599772329 41224325 847571285 416025117 771292533 557615632 662303605 776241359 629608247 289833510 515638384 750591927 513720984 737503808 679312000 964961306 915242361 595600684 526335917 838525779 597129481 855083092 580329870 835377849 749120629 651576922 360353319 813253927 378161100 272682719 989119790 609495106 769960314 636380774 247930738 919323803 995757539 950439473 175856623 515876683 568536107 170348112 316728496 942249471 678129974 595654148 180874888 609943569 691491565 475843138 975989479 720199841 713612695 193048016 759258231 816706542 584987 361969777 65154678 930883411 240784026 504714734 413348748 587365173 911883014 210170098 359443005 352409704 766456332 835823423 708528126 853157511 442156779 114519928 770225478 914758478 37286029 558998828 25582706 805834034 886558454 784553241 811627826 192332904 681512919 349655002 45120017 648587862 595671132 224491732 188164939 433296413 417698055 475824718 48907294 527329659 665624035 134513557 509975242 110255503 199162385 67893639 765721452 203944744 540788040 355073512 402881558 522680618 216487294 604359343 672487158 338978556 771890662 327648478 466993728 728069124 329617257 561675220 935813820 30116149 813979912 306539721 455698663 498224883 247188421 258520083 641590750 538896327 380557315 132412659 2235089 243627805 737712718 916419041 700974111 913657684 329495890 514055699 197875931 850131306 321661579 542243621 652683960 738957253 181640544 918582864 274675996 824869550 502339122 961152511 197639359 833171739 75874300 235993525 967786913 221430318 920933217 972767631 736587847 870710626 263496288 838914024 440942786 517460940 71706403 561012802 501265829 365153394 993711074 250505178 72649729 764250713 416535962 759399336 386955999 324299462 949827122 258925023 506431194 964630937 949547873 568818824 569931788 469834156 892880837 445693789 947768447 985348512 4347081 449895997 133553721 337743398 950829934 385515833 360191164 296179499 742185951 794775628 787743680 457344303 471106769 536290345 943521230 827460760 190877601 990757262 968260010 152186897 381887079 748179916 495242123 236288582 920189213 699113828 741932411 345693669 301508348 194220709 474030598 380765677 849044082 457483266 596955556 829697046 229509478 453312136 799330847 477778893 970738336 691464466 564193680 677725046 822683288 930873609 240022079 202793342 104606770 918684801 536095586 6862574 179997937 95198476 590879338 116622294 414641040 402088895 729793123 690987303 265704624 809991451 95485419 606534136 506105930 899943597 354092970 248960996 504314453 401571444 257187184 261075085 967081293 167051946 11865207 524415680 236999357 804372116 113743729 259506877 669768826 999655150 833146075 185625108 896236489 378656764 262096760 997369021 875524614 521907188 983617590 259038817 53000389 90015511 817063125 233244560 926151575 932711733 553003452 411148869 766654020 782010137 767282611 60663493 357939232 637700738 91511307 722038625 837141422 698264125 196761965 712445711 712450802 917977343 378583632 907138834 20852031 204333065 465457548 422447016 672464572 556742502 13282537 762292072 759066768 885640435 497190646 195532648 722855163 809191147 69085507 543085177 666076929 459393184 654087441 56364611 222876485 443405123 34519247 937347699 933361025 690574063 394430711 552244391 823430620 928230478 844347230 149394331 873899983 154869635 629133558 29590546 301065196 148378093 345121944 377102290 45252584 356645050 914135697 58798843 933008867 971977218 495515470 340132827 742707310 732357492 303913418 821299435 927450818 733201829 191869909 643767775 227306142 548581000 911375602 131364564 466746299 667723168 709849592 112824126 73613315 145093274 257085761 355449888 741093840 560239306 882300019 349555 402484784 573432779 873776984 768611276 224463550 201148403 773247622 587488763 81858171 381703803 391331561 582896492 378554783 380547777 884628380 234013697 228268568 233582015 152302816 650150693 827302357 499102744 595699030 236763884 881814411 840147275 513645943 845267214 161928984 424247360 588111482 393726489 336607235 666086124 24999570 494121170 693825252 740504539 897087832 232905615 672309753 432101759 243507813 276751530 535568029 363387095 119499189 567321078 169197864 807413014 982138015 688320112 791887669 985031782 255929058 904413648 197798030 539738813 936548960 476184247 479072317 501957400 761776593 65938570 763525327 47353568 980852578 149653761 958987664 613698291 324495641 661183413 712488197 812779994 3524572 609452911 803463469 666164819 729971219 441881531 614504506 258197634 502670809 286042744 585865777 112580189 152128781 208038044 830530286 83733712 82265378 398306878 976835196 519980083 545495158 6883078 276775274 609513853 35927495 421814115 172686848 48462559 380024309 577711112 99496823 671224670 607204574 502294450 245991690 416253720 358651445 270013027 863391843 923965804 749812304 107526746 541769815 701980756 696110713 262392997 678447804 663803490 715331561 723889487 892070805 52276213 161315748 314860699 632677888 992225075 153075104 758950553 232436273 232797206 95366588 153169437 30403106 53225706 305891145 231850970 754530017 868971732 441105636 888904049 667646349 936722019 294526217 992779341 365349231 949088832 84581741 710849158 472718404 844569085 598830312 483266720 756855609 799563885 652905034 900018657 664476021 565381816 338166134 260508930 45426244 658815888 77308170 116011111 755885736 443625321 856354690 877965708 537477726 967184713 151859770 801053131 277288563 664039891 7158297 665421512 66877862 817931973 599298658 51081022 101023397 767845612 885767333 782893098 286072937 493015197 341410292 487722175 517171715 46664792 957024925 801522589 644868529 826701859 123153504 151009965 433895711 742665252 190866865 318182122 69735974 795271685 343542079 709740330 515041826 629402946 21112251 519461903 847802666 983819361 302977577 406565746 111709889 967685520 675510803 991143087 607676530 942864258 987512879 662326784 491924685 503074308 828469550 592866316 940621448 857023451 446397266 231535368 815798056 356518376 50994293 205313719 551236310 554704060 713797679 163261063 392204458 441739845 63791560 984449344 422186822 875966385 623563783 921290083 734651956 251904410 128796155 20706830 270706964 481386174 866136904 873568768 188417989 950808643 536254462 691400502 816980239 935661854 405116358 354092364 255887155 922884760 475375349 28826196 19163848 232081249 995193948 602933660 187623966 780044369 637114418 721858887 401119933 478545864 449517836 425173787 40581567 984468270 218254965 703717378 491150253 768287613 115036353 299211060 376760082 161666549 115874331 662432491 956208265 624356535 182856787 87052984 196742 13750188 398419339 913251406 506642642 120629513 254123431 662721307 825427711 146606331 662023662 934104634 800503103 636692717 80174474 930781507 273093086 210026544 987046847 929054656 90980696 764599825 368436464 490945296 751363749 847339871 410467857 585437773 836372878 511751147 727737881 112441067 171675609 163256446 243463011 658827477 395507224 120261608 770115171 890471945 226799834 337211814 363954787 826691722 939851873 369304236 803100339 105399705 551841802 897238543 630872243 121773573 212528950 561678419 314944979 160293299 687942150 550667077 287786522 733085550 136714243 36681102 612664246 576832227 41492572 992765572 169117168 38732198 749476831 517305968 878273109 708507765 486687842 700075353 460666840 253578083 529682177 780683297 126071079 607323791 138551162 164936665 82836906 388609868 893564783 858848886 992974505 298594635 856502407 358033521 505261892 175412223 366450749 200921599 918682850 604136252 827733271 324332985 481553101 214862957 668780627 609757619 35730287 170299759 516625603 453964972 901003464 546128358 559924730 801457812 525178496 218867133 761078936 997003623 687606865 700950200 822766686 714150095 473879659 445287279 388127596 500624207 191397719 792307232 409790881 829192412 856811938 807912807 923138063 368933923 467737861 176988796 765558232 893163366 849797571 708391927 932691154 190671670 422441667 521207495 56178422 78418245 642613228 467714259 90495591 727089515 697042381 193113978 695309836 701511600 889252199 428228783 290616943 838684743 597786130 48247873 176803357 100641295 317153659 98046995 809673696 149446805 496451357 984041421 628001644 784908960 400269849 748471160 218185517 998150506 939140759 542430494 626154190 634173605 784484006 421945470 103469173 844722684 745344514 597608970 26087418 374492048 649924951 366546877 532022946 924634639 674465384 476390927 738315744 852177240 201682938 459892353 320730834 822318841 256372216 751703006 636871338 512702091 474152907 665151699 721762130 398637934 8203969 538823872 434886684 956687823 462079830 357617795 80016022 238306163 310201016 823251464 490993629 913923533 772325743 531165730 295083247 81185880 452544361 660817379 359044025 797115829 904808037 802573525 454623609 979277391 165140814 253160631 850360826 766865222 419893372 381893330 956024387 635823653 103429485 941307795 704451528 338748220 220760085 416776829 796292540 499038890 236212006 578504592 894439239 542716753 496864666 964023904 84951758 22212314 643951166 641530674 527656576 460039895 119975315 975337597 782535628 65945615 773933415 209437420 87885973 276816287 131301932 215516970 421529945 514622334 291899917 37577618 624445361 616143874 976877546 694351823 630297838 214412204 374554002 920292397 23606388 182929648 719439682 396254679 483155136 943832872 852576974 612529513 845477191 24173018 760285184 234991791 564632642 133577513 792261442 91134985 413847948 969479328 14751404 291068057 398034881 306632475 55381351 777113183 704090683 360828787 917099154 85667282 258174598 107584329 844143965 362361931 468796908 283152177 578117648 597886867 408275183 336912787 628448307 211494531 263404939 772975265 943863677 435148483 709147897 270261528 164704596 402385143 917986396 926644911 298332302 27278970 344375291 215388602 959602494 307169669 702895015 890832143 705198399 500426713 549177721 650302913 440020615 220257682 142996092 498730826 143749632 920709066 449635408 965516855 586523870 321336642 809889960 546341304 863607806 779361990 688074888 22878286 194326877 167340477 945621298 913297486 240436939 873950483 960798475 818131177 965782647 901705419 846559721 284851927 618061665 489518767 882373335 834902866 723789492 833604670 114697547 336064245 929382850 10615509 197855130 255557453 323299755 722809415 523105474 176700121 99669283 110205398 798023645 83816417 169928120 208294184 988938909 552361020 379208528 189207613 50009841 655233027 114961734 268735862 746368563 256347554 692042157 607981989 602541084 439394025 218800889 242581774 439192907 735229713 588642272 983586368 579925649 394017919 964132856 444891595 329602721 821487452 76824844 603677660 999671088 795423144 580166679 327456913 436359226 852507856 257378997 373321676 258360880 928091718 135756295 178558374 644570293 234072894 616397260 629497315 708430828 141609484 313771359 700129137 524458313 462660482 815685507 422766605 980690585 699879374 51129567 636432279 349905762 872563537 75448251 101773849 333845857 575550333 827663320 775087307 231623344 540575217 670348331 377987367 482306236 715737022 254770245 670011282 21133078 417832959 560429812 736062579 929173705 555489534 621901280 475188111 4178757 953729248 916932935 463081489 92999305 752755070 632926020 449933380 577261223 574011738 846553398 583165062 580567755 275158742 679016085 274578749 480640260 828005923 708873327 551510007 176752812 22456796 642837921 311613233 640505028 60668482 519108125 890107245 709098231 841425352 442950198 725666671 640800537 568663546 748670285 91851950 546715588 232315896 69668545 584362506 62115810 804195255 679815262 939982353 374459918 390463078 918923088 555399402 458463280 750433918 924884863 339393484 31837462 268255458 446308306 702957911 849489304 748864553 533550885 385671966 673256386 225588158 800115671 807878225 184111332 81450761 561273262 724745534 810903482 134985920 29470135 102283532 674259319 809081454 925118397 765547278 65647069 443472654 536732356 764690268 872782659 691687013 963084051 896913941 691396060 60778401 708206038 61281007 722343278 359706047 726910696 464667490 262182675 419450658 423694934 937057752 505664995 924746838 520545086 198894660 20199921 723754189 670421027 382271007 678188665 777443349 246966705 458542893 437121344 535484417 405422708 515917327 224312114 845443328 437690949 701784688 718516877 517363979 537389061 503058788 968017409 127587675 906408229 234849617 225297980 950881667 284819694 168113524 915315111 663743556 755875106 578361750 235434136 874466207 439291433 475854033 27414277 242307238 205172363 494545865 745120345 902320450 317743759 498054192 507085079 841747824 3353457 643839193 387458888 884370226 99891694 358066400 965249731 145984939 692163760 351867962 286925707 581200582 480625679 8685357 817663404 73046088 118280130 97077782 98374552 547307348 515178951 657656356 252087402 252547846 841417525 909211049 701783742 586654106 855078094 39575035 261963842 68626278 62920592 475827338 905805963 818896067 412855566 653683495 331285561 20710405 328281214 492336059 168538033 126654462 203012890 7544193 32054215 222140072 956383183 536146379 782550521 7663237 632174148 609672792 227472408 357768356 797033821 674551752 539609627 636698640 820225354 417997740 550688432 294449522 466712015 368058381 674058226 525830612 704361104 696113104 364677588 92764896 722786576 747949459 943900150 886973226 51664047 866866459 39920394 353906137 616253571 211251685 303608500 591407951 587983232 149071712 862717014 182943891 342367375 698896727 846746344 188712420 992077824 141166445 471533403 170318839 775349752 321671419 290416819 600342361 471416444 662548742 393410987 911965557 33266138 164407981 365980682 200677279 173879512 262161585 709814936 371759260 201172159 223069923 874000109 258815119 941084575 128548634 428512460 657255761 507919038 10924874 217959753 411654723 267299803 694186215 996529762 21152564 85566983 39089248 141096500 615789381 932281016 461144968 739379795 73575593 64524073 350476153 51212755 506516667 578756423 356373088 838647034 572684706 469446027 203627314 904006928 53799371 233100458 180606083 6865158 970385434 789809401 811903324 203050450 208403006 198130937 747156091 899957139 356352988 749551241 395481672 92950664 221918578 723333300 882903796 243618358 191279108 768260196 871306057 238167447 563776808 841413509 398185405 509318161 651293838 952775791 984310880 86238785 750543806 918199688 169057755 833052825 139499123 716114054 999596034 545593852 2605216 572479887 940651024 51093668 638104649 453329281 284568422 644081666 100682312 71907945 207421669 6101848 520184279 510616741 715251536 657961829 797358982 528144466 128291633 713692298 582794762 608797277 227612396 275306515 501330304 815268872 451545406 131101199 375999542 755770894 283107114 193815175 495051977 316434932 163819463 305033377 37554916 381020518 374095509 545866486 891386636 141270418 408018814 909310991 496379203 862907442 411317001 449973358 543805778 839190711 317517071 822357381 190997068 763162348 357604497 621665549 588526578 772712046 558656222 668782305 141529414 91478507 660801843 102243331 950872344 743959311 682442227 532337002 385392109 419531240 201550216 817124732 160706495 19892123 155299184 584053544 658151339 692269401 625040979 985535226 528495422 249695611 423669845 188790344 976970687 22960381 36160179 14240699 36581364 985907896 183928169 63258704 20299340 811893125 852016455 190118362 67408512 171179677 436713433 382761438 394042991 359115791 80425862 29380903 499210006 851840714 717436071 210123272 678904581 425281950 160128039 919703282 477728715 864441011 70979421 571511258 230677230 936998859 205689451 94801280 772336436 292001668 738697249 409516032 474458139 399666869 944226593 863026414 46134030 994968636 397958838 473264915 117504001 449834642 390169528 273848110 665139358 663631732 694225533 960904123 52869291 916077701 15205712 725885135 229209678 917510739 648653860 970775923 331726487 881030451 352761294 968611610 200807787 505560731 203739280 330619718 223821293 644542402 742204349 692706096 661607411 438405372 853708453 345541039 533748767 983053522 998996499 845665559 667456070 174857012 366182493 407090107 253188944 504068339 868908123 505109948 867306448 139284438 202034267 961179918 226502126 442675863 77162888 378922054 158259620 333997691 89244982 877335357 413059975 33237129 306127056 726742954 977093789 752846299 525706251 869999685 658558522 450261570 276346130 987039210 581482393 104675926 383751242 94516110 250197248 621325807 721295724 281101027 114761234 357742278 226879523 275263559 207891743 180371127 852728124 739702794 139554837 559139145 827994418 876783568 988736824 27218062 840616480 729205747 338783179 25704730 778408967 335612298 484911596 739502308 256226293 385621055 819198366 267770070 230571693 387309947 32179999 801489678 82146190 519399754 139426502 674212738 305207749 774747227 430562371 863001294 37363787 729739418 795922893 378226905 366531206 698113704 948118499 788724666 407100464 382815410 72039286 972442757 529439435 200158963 223569615 678083757 180458116 54370646 448536728 592563414 463309776 924122766 690643288 721635629 686138603 572772686 206891679 199017152 539228870 656851192 600268226 327360528 715767417 926299893 48845038 320664485 321531418 426452765 961276058 152869018 582365830 323465961 84142490 492681220 42794366 264787325 930799767 247151760 250065754 286681150 272766336 788020257 944570909 659185619 527803325 480922954 221105757 428976217 997448713 900976270 673464539 795195690 153744498 269231539 704487633 209506130 506434340 279177271 557179859 204957259 962505951 663571934 274251270 651161382 461333984 958186292 243557104 158276707 215944025 397264456 177358840 978158605 91951358 797898751 677422435 429478831 592102171 208244300 802307879 48312022 746581833 857065859 764856589 505430571 877009494 397274451 180135876 272787119 263756103 353367599 186705912 544091296 356389884 872698733 412574662 655816488 643948405 84486702 618925882 616891171 171133972 939747297 159385521 247939215 825702233 95826779 848920425 28944657 869417002 778217995 329335068 471582719 415726550 569020154 963117336 621175487 99571369 474300262 734524117 266052448 441970244 154378742 174106986 344741208 903045968 479351391 600361640 815694945 299023449 366566397 880649814 417364595 822853662 517950217 142555318 477985753 189199743 523592154 355348279 127094246 876747654 846540101 780349729 806275166 237706488 623052756 563298687 989970086 730374428 248059521 891452672 172121728 500337840 477030046 903172925 157156963 972120863 652981946 236035355 57738414 115549419 654955044 510666451 898477557 363156500 929862794 948814209 639789868 482139513 961849975 985979854 818122035 549871196 844768125 910529943 980403964 793290262 677790077 244518444 972227650 300548199 626552179 787474975 480454858 294552359 558220933 480771799 584893157 951091907 697400669 501403859 533435643 569537363 515114791 414173708 557089325 912627100 213506361 551266284 587542494 290188327 895598138 786373044 70294460 929735605 735815600 901935369 178381954 871308523 122858180 859838774 298663114 925866121 159810561 896831784 82476961 966932233 933849637 766887559 348425825 102009085 94152879 347180974 891193081 507839935 588484627 815698713 166210307 470168599 978204603 162872324 846648635 645719047 81049352 166072019 476384236 106879583 965768834 173887870 374780689 859759600 337566057 443997670 271343509 151440437 863773359 732400147 353678353 932153252 215218119 186172982 614644061 77517280 787498447 110862077 745857999 942237011 229138812 86182539 872379659 495385648 111528609 470370390 87991153 329521136 186431049 520161197 496412920 792606107 99262200 253927149 742263356 468035601 48845980 50810649 803023568 615801721 644671431 511304028 922797907 158243797 228332724 617555971 529958703 617309438 403417864 933608216 816148781 7408158 210557977 677166472 850421156 853816255 671596405 435342975 290651117 735805153 110058744 924784682 686417116 472542661 167244982 334951353 656265535 153630434 768951920 372963864 605050316 694823209 406593836 674561130 498281514 531733040 568694340 148252715 28250359 48094828 594108924 530861395 314988359 810672722 378071794 152805759 735668632 157598634 179488344 165171037 149683590 464722733 738983202 886514226 497808889 207859783 724099324 424453503 414795358 690480261 329282138 48133767 861193827 716433093 3198067 677534954 626169050 443314249 420960174 257800602 624240575 942460263 17202562 419131771 327579498 889456225 695547496 586572930 407286297 466485629 45008990 200791080 70491581 468759407 841477749 685173312 419964895 105242234 614059654 610146762 661659173 385664871 985392669 591896268 365189718 49039566 207077183 560202586 519154803 156892641 317225197 674789992 323567699 19309942 807825925 290940115 454178274 61316878 908204366 269100471 457553693 527177371 81474628 188412204 605953913 757166373 67424865 393252437 379551713 95012804 8718107 18885396 33964911 412184279 556304876 649152805 237358429 321368834 237858733 573168150 296403039 131131498 850307712 284837252 121851656 315841686 663188755 157251606 272922749 563270040 228147537 958917263 934435414 906282505 924773373 114658743 726223263 485682450 147429719 45802258 643231389 429622299 538555344 159370230 428573009 73600675 906066823 189205801 156939346 341517599 121975077 323104110 400733890 566072715 842879928 819902889 654899774 259372108 474654 900419274 798667479 325668604 93306717 929419849 929436882 412519800 454097626 903755582 864374219 590751085 408414393 516734418 125181853 620048246 792463152 409593961 299862430 734787065 286338350 889372643 32778939 513486962 853764108 139688889 815432544 635298682 327023614 687593682 997488970 916115442 866847027 470925523 973589547 752784003 359334186 677658377 267806193 678359731 559855565 18159410 688242993 224025793 611959839 112912004 591549002 781003321 865652898 547973632 50032634 852579406 327123396 399740070 478322456 249657919 142642938 805316218 578006614 195411139 57274360 530533412 148989418 19304039 549209676 494130943 484906894 462577213 880362596 78091529 872970785 860657957 871938117 788838910 295577665 781180969 631655950 538502179 459258734 312956506 326483236 986737966 9134915 540306419 375331454 165294722 754317081 557080920 144835498 713625588 505727651 432296732 158841636 224878843 150222464 999834074 649520488 404597439 439524977 116531193 612095704 597476246 326143210 269640558 983442740 333280156 300601364 73264710 300523612 34867125 310737710 976288439 11954950 52720776 566014746 899207664 843292995 754935820 813567241 539988126 781183618 949186975 179050147 806553983 731094548 829449215 680675354 960405270 532190338 375798343 512684588 363161844 669103937 34238090 353897491 582807230 728245647 860122714 229249231 190274776 3239607 92839465 686473903 189196260 550431514 850519565 672489544 217766089 586249752 781200770 455366599 167362995 826830684 129461397 894587220 937888839 129302151 57746886 856143114 997300463 35907608 87358802 166547531 57555381 248654931 46011231 639892339 258605530 654146758 316780344 773615844 404252124 576502947 504802469 425567324 906970916 483718979 253463876 596909439 142314484 950641617 935801862 239314259 594722697 704940972 537104834 342040078 243164496 126664741 944043008 724344046 911151422 850255108 333984055 525399370 478334017 931957431 463486228 731736989 209275661 571657332 658354083 447714733 418402855 950554767 74180080 154655109 960222743 213398673 598328169 403054425 500711219 819134709 699672741 12438327 611332916 910489315 316899408 461494450 208578413 48057337 177326193 92119921 675400924 966667379 974685948 371140782 651407445 6110622 661079132 978917361 379074851 981250500 192670724 116728652 849524314 462116528 962089653 614968776 530974610 155391825 857351274 922347715 163047277 318196439 515021166 14575399 710261548 980639712 359164099 685551973 108119716 111323715 476874060 658433234 192040573 186917360 261496843 106397488 416912213 901277014 605971354 736310263 668221035 675050517 522221975 487945268 818238259 691019684 634797015 640203108 387692759 406997475 28192507 943993538 920416405 55733284 30789243 473730721 306637232 765543758 530458928 611942444 803498746 486908308 191242672 202231063 232108332 318112377 720045664 639992220 474449270 113173481 909036410 383908807 370096008 184082313 669549202 592069601 693883156 477053166 646326207 626603778 708193501 915509315 888830869 642675333 750323600 661343587 506946102 803551296 245556486 777789642 375501829 923753074 757503218 794556137 117016427 565471953 71363303 590801458 168750380 77932140 696428870 941515124 36281122 756303757 759441691 139192369 748704608 189905489 617471866 643193840 512202523 680373672 130137743 653377573 75641551 422866451 940771029 920261531 92478320 94703516 455799191 73816161 762106924 865368783 568165124 430196671 919699739 489187248 722063124 87452829 973350402 885649444 682340188 162066515 58372339 904369048 422597179 359565568 694782002 709624142 981296312 748174153 932011924 380282131 805356081 76593901 557354176 321044029 694739318 814657192 374886565 525837564 214866609 278255182 728878881 172029421 361751556 256566929 917317934 901301707 243114226 303272831 813344914 833386571 198962547 698573768 809907800 960587489 313171707 446749965 30166955 477417790 202090400 538870881 527519853 642557453 455263799 923200470 494359674 356296182 290342062 543802973 126648354 392775256 479044368 853166291 935249865 206300375 947604452 146070605 324523205 942068499 173080365 929951739 681921717 234024696 497385110 939678868 718951848 704415388 536132751 251581364 527190648 911845643 995713176 255142606 459735704 511638708 253419550 36019367 242132366 705667230 78558510 486188742 24147261 330132354 313362923 558740165 548969256 800360272 559471829 281095051 717002196 37788876 799670209 557111769 420068054 892174692 182683725 264362325 295276700 523688692 850815586 449268001 894216023 292693081 21072560 196069620 511576049 130293130 380079745 13673217 865485267 340958030 833637675 153449803 927419239 681579270 598274706 667921249 753918987 845150427 832279570 754313126 252929629 622345535 218718729 658970877 757694186 822911111 257118957 555170225 63757513 463653128 361496419 565815547 839649358 487417386 38717384 725374263 423542540 693265628 587550852 860893379 671958974 471632298 519618144 943234046 387449357 603565213 569086873 35009564 701750699 685186092 592073245 450799933 665556796 269707792 958464508 470933151 352073318 354861615 561985516 670424074 76869522 346587397 503805642 746624236 972874556 124741267 513226626 47069528 373870831 537260590 249544332 205854863 722722531 511990473 410238379 734870466 292704358 877443047 105469542 170628750 125939214 473921308 260749970 255042321 868393939 150743051 882452483 645228129 956218809 638401349 918938572 855984301 143639965 323061026 154404636 497595213 866919516 945372058 816556548 333739575 503988329 452366557 349509263 141187504 438339857 638564616 429614074 22772666 997897158 899852188 382872203 537182033 902766423 976276527 171836026 92419225 751921830 871423419 420353086 688292997 573800752 83763582 63337320 405906522 846613345 747543429 690870221 925706605 260911800 52586101 303662774 261620133 838092177 825382410 40356043 369485342 813471912 659575145 356213823 281868240 610260939 365319731 225540756 921720220 995188366 659829683 913027272 743306829 187679379 249388773 625760035 854873631 597786129 294421205 909777044 155857696 533437490 186688625 755255249 23485536 609606578 101154056 119035882 138048703 23861280 624122161 281392009 100031361 369202241 311811849 679989797 741627056 2066486 294652301 575008860 221179524 123048740 974460146 390619338 941710942 218511921 146534453 720239467 537263550 92110094 450451710 771825245 370651072 916908614 44242178 620098695 454642473 923054501 945156864 475190742 811858334 520329724 352273577 906548240 934667432 896203366 608708241 3230083 375877101 591751491 93668466 381478300 313132518 778886135 742062561 754114159 195275650 132870446 249505486 790640402 247117818 714687686 644696468 867396139 554192039 418424884 643370950 116569105 946192671 917218533 975891107 26872931 547102203 245647803 345852081 503097368 623965174 382225751 554057614 487157001 752534635 378032106 928539037 219633631 126152195 594850317 79088184 654511012 679868422 464974962 474094407 163448038 49847205 949276216 465521976 498933502 309504221 528110491 42570876 581883259 455319784 225072282 800701391 378198870 97466277 580705479 858131342 420522224 703457288 172128797 818086311 381893632 397952043 624273503 335063710 618509308 311471832 441594643 684404543 147946876 122463700 257829902 436434484 708058549 783803200 526965856 963938589 482758751 356106870 769045398 298552658 920165906 601329147 911786476 804007043 846822782 933501811 289088194 225584440 588060190 520007397 682307837 952436534 906549645 645193679 928131781 540978850 615869083 752094062 430409782 18363833 700019503 839056100 278184920 179137914 463784157 993781839 376636566 731838574 118390961 395828540 650727221 225227719 46860083 881799528 358559450 766450422 590693906 189701922 276881235 500879915 826307347 712811017 472551754 58944566 493711752 721180660 885694248 457348405 758264944 291304201 874102655 432144079 825626374 432993043 448435337 238755456 131000945 461797863 51868785 543749171 41474270 184279972 702077901 2539502 198292862 268966210 164333216 312559999 257792966 356696680 686714864 263519217 108084917 430704091 42358932 237789869 490927115 69943140 606551446 879088067 193393111 639776765 978545121 690965705 432285135 984620901 436974471 750929759 698328552 294429283 385388518 876501255 906141642 653009090 470637264 683433822 877287080 662595681 631668292 34409721 972643881 188946368 653283614 711970371 778225128 125678044 185919836 990276943 534807753 730889301 327659238 882317688 544069599 781836044 125503295 383496780 22067977 309422737 177552366 40362653 919872751 3640608 556026491 667497087 910637493 403567850 550733709 100649918 374410844 738062386 538685414 829978740 73357951 86074414 694045269 636257139 495461895 90785661 149104959 427438403 987661169 168515391 876379667 53854354 491175483 683304875 941028701 933889131 75659110 102994917 89044522 549547879 327664501 513486159 232601822 428729099 308854540 712920873 91344973 35157607 341477738 640383534 894251606 66464638 793642514 477442997 796023757 739258613 944135779 833131227 139460714 816413768 908804895 18755451 440064297 118504560 172140100 347934762 762428538 559613193 404432319 528222112 634238831 647722789 518069863 950446487 35902931 43950883 525909504 907815805 858350127 600077541 765089555 603752401 759253077 26347588 170238509 600374440 364679439 352237590 570272691 299994043 193874376 24698379 130396997 139985269 480247313 402743892 114949559 743669913 568784875 593037085 956738574 764978672 732564810 43995915 733520784 467531312 927496168 50950831 569032255 997562333 550589257 301423539 527796039 903433903 471625267 4187231 66408738 101574460 822489647 652192980 182075845 969998137 297527263 609710542 798279579 339448077 22416795 957087331 876256077 270362598 642309251 839127499 308947838 73546070 122784441 7483337 995370127 965860065 576189964 157220070 370936791 655828982 979286441 894694748 96762257 110754168 504724993 170140449 374730543 756223732 722520984 456177911 280696338 947247142 685317315 385388207 772971784 554215190 270547320 494657482 884844992 958041365 804373256 544874073 222429050 640784034 685080403 918044967 614042745 915007543 180553752 568290395 893128379 850845855 415666808 384950366 981627500 562177178 617643171 986611696 525554254 603494477 81648512 652666159 660389484 715519267 796478085 231404943 933931205 95520522 368612760 539696394 360429125 842633550 174140705 59301817 210190446 758436915 310270777 15094274 82269563 460231006 390667732 165867318 176388406 339544416 816948384 634677288 718201592 61265607 363205519 669697868 831656381 467755657 406079894 85441706 125077182 469968606 726501202 114115270 639653756 262027170 926932133 866731528 772711064 513908789 142134975 719048222 51901370 866614872 559011024 697673916 408103395 138960132 145265900 262069053 75459475 738264016 696719266 717974450 589310521 492610186 797194361 551307260 146274197 884518918 330133403 179665536 11454535 321244504 291759604 259178333 608079483 983479015 953243764 978644626 188078695 615608381 821439106 473075593 406855098 656831000 31861149 737550416 132543327 531146670 885774042 466127456 493890677 588324694 370642272 292533112 51716449 98043017 231824038 502262495 283403918 506024164 498837807 145049963 358835525 877464397 765811409 616416248 528247673 190990523 474238845 719046136 896212472 306247288 945722323 239877861 68768794 639913589 282595875 73926225 107410755 266587160 116455286 320873030 55231353 538998250 386012691 733812113 420225438 984063060 716161237 543697076 735171836 282582297 545405179 807194215 295202352 483232045 89740804 55385787 969811399 763611485 444751018 768152964 952286751 13223827 555304542 576412425 978925204 474654511 441424719 586661239 52842567 293366050 614404236 35838851 688708825 385515125 497282478 203861487 650291198 152250639 913143835 635236354 943596932 182241659 225863949 205600412 396305086 258777366 420055182 801051977 476275926 174407911 6715043 103755658 334304021 548025729 752605406 840596583 122654091 255213770 248809299 752676347 580264687 571005426 455674015 436522163 966369322 870477133 760942670 891323316 471963425 818943447 549135062 870733169 553354193 615870591 489053777 743322064 997273237 781230557 129806052 580078154 887070749 412008547 195797049 852601348 891628483 331867981 833438803 435445940 258823868 127300967 779484608 756189561 498240261 976582128 213165284 656522366 815610593 518613952 313856208 958708628 580468564 570468190 246538519 550206772 911579592 705131625 453390090 987476377 471539537 866671138 869455599 483453488 545913675 827504788 760164647 210634686 773204384 134502896 502237912 982756810 597048015 456017417 95986940 215340036 341923799 160979903 829246053 635228356 189367032 83033917 667878255 659139524 849110393 895118347 126162223 315251621 139540676 592250383 260719128 600943643 369433843 792101393 973990493 282167112 846300529 876052950 185605373 713943666 435915306 513849375 955270617 884638166 272892942 590470034 903640472 350076132 796362442 472251253 633375634 217738397 933084174 716611227 563455328 894290553 593989979 46361785 317415053 320527654 581838018 780317108 498779744 471834448 71604188 405870038 131007666 941843954 742315941 379775589 765953327 191283006 936109550 791194364 616246227 36095288 911644407 699753792 904362290 971790858 566150229 277109040 607500346 595153897 875814809 409046400 703504698 183459329 980273895 554713607 240822552 180374497 139813795 428203172 284687839 594497917 540275236 483602838 135814702 225921264 231364744 434244777 149274891 497841443 162207444 278676578 188311321 190226402 250011766 691605999 363540544 289600703 13400695 73544326 334007285 641573920 412898767 71408578 742434555 735446162 656458020 462954009 855185896 80053262 910498794 102822936 876610684 846508889 506999533 617966916 216683131 581405111 230567578 227386131 904147329 780112664 658577182 578391837 478674564 418490260 103319233 24422970 26656899 511837431 804003586 132287284 287628102 645631606 163904465 76493564 739977412 198439031 100980114 154999113 117524012 168802070 910344383 385668607 267102005 342207016 31804090 465785635 771697426 813516289 118109711 37540513 322252930 744127809 943958740 180357142 185236033 672359615 255570826 565303665 443087828 872221778 665960319 478522912 277611421 304300308 83365407 812286368 88968290 197815899 671038172 750484837 815615670 582600796 105146039 229680473 262013516 621259037 486787008 287032246 689864184 469154103 886666643 441385898 668177587 177532437 443372983 104599334 803270648 429754381 77779342 554930962 944708468 705014933 305913345 829396018 128486470 782945727 741279822 68032480 286195390 472688104 181025845 376110537 379429953 460813924 836039412 277670807 312586017 540254247 538262829 323789997 978455074 507882864 481516631 336479024 478627507 441408137 763265445 758233770 89714350 946432957 779634987 750276406 249577726 806509302 386357713 495023056 357893345 27579844 268315773 732954952 377638081 309837679 128861806 627814463 659686635 856720360 463420698 187297687 564047595 543698093 647201411 467578466 96412672 890250105 137567997 768309821 774359684 829183544 170748503 322252689 236981125 109811066 993885914 798425742 371159878 237428432 829345264 785581504 642996178 717315348 120533572 126765591 768873522 7623287 702327841 412502329 833804010 248526564 427473369 466528587 622585583 433812403 849948219 94351126 458107984 410866229 344029472 732346273 395664430 516411845 89007845 112435559 524188013 463800291 347725253 165478989 204430869 503521079 548291906 403553614 792072584 571167769 478703329 733540707 242208441 466347809 867045002 177345732 213713306 320254082 631896123 577784800 814427771 741019224 34338022 879080384 667381739 373918838 284331568 650762233 168938776 958526720 632107194 202281974 947399513 464529340 418986892 454218850 40023429 434321279 819235524 581601881 93399568 775829263 84238830 414945724 790113608 281050878 954494624 471886138 738103424 979977477 616957108 540008544 686254766 739673296 520881436 17437248 286855453 688520572 826075850 197441326 540520892 952712081 87847873 334915907 873039104 425991454 215331202 556084076 470895812 500161670 495870055 756663263 253560652 431936010 226760037 112785431 10783002 529399953 308923752 546900164 839246674 555875104 622173677 15861768 605517486 318453290 705679620 840356213 178690734 455265449 599326689 303681572 417781249 938872588 411429538 692704335 205586325 652474412 243350172 988586824 513276277 810466821 895234921 739294430 987099004 189704095 844061032 410420868 129552185 629255369 578515769 653070002 252530454 158746191 430460841 134520711 530808445 219713595 526333089 284051398 194605243 813821145 436817100 552789269 635611698 996137494 311471130 417158317 802729171 201594123 210052036 841726107 693947981 136396226 990845677 497050754 569988254 566767450 295261908 481997055 134490766 203142097 62104292 43540386 420340236 659059469 211450096 312429949 716548479 834043837 706243204 495700567 316936234 519069419 674782929 965086383 290696942 404246462 660854402 98611408 911049183 747859583 586613385 153046650 400952088 803440398 287012531 328656993 477852747 316612102 87626860 321094680 444747995 782640449 53790447 505139161 286546883 64428654 271141013 872161858 640220554 593029452 592826390 461455624 563522840 961988685 554406714 103305176 98383716 974506305 298990957 233269055 914093227 735774780 925301538 796829693 506651509 834905509 337365271 319537599 58899120 897158651 59361210 312603358 443072218 90554426 398134226 805945520 532181114 681444667 32968553 844229704 263784632 845199221 104183914 516079913 562140618 100424812 748905189 101388053 279529001 156485914 337621431 84558247 55528626 865556404 639355913 885200096 749149585 700417651 445685994 338145886 417698222 738180673 348105768 657743640 242311172 507569675 784385698 817971167 230035121 292864673 775907685 307124231 725463820 55805314 251799999 544222442 713561491 422757571 497406095 442385664 889705717 828291151 732450866 754305098 335193961 422383190 574532972 650956439 158922756 297216040 321565758 510768355 937092904 831694606 166738437 961064196 344485792 714668000 174780214 91759932 448791651 399183759 963127209 165589793 268171427 240972767 565027538 794247481 695811981 642527700 693794478 720448032 945563892 791261851 612945200 660644900 881124757 80279791 24468783 368495244 842745054 474291561 198210513 259679007 139022728 394712746 177006422 729025005 798468009 774422729 786030538 162456181 686309740 772664898 101581086 874099038 617355820 926416370 1055922 23081599 385924089 607144059 850716231 506768023 343533399 807311748 386129257 132787756 182819344 233639924 641421234 696373141 453116102 285742344 986102741 390273202 38705373 526407587 343023285 693210075 74799760 454902486 437475396 811914515 411897850 173961673 484064329 902010678 810359784 897541183 654112360 337649656 667434615 399194600 458780041 987052695 839974443 616849184 582478488 742715642 362570019 646560757 750314782 638949390 332577100 508492312 278181815 944356849 438531742 729123925 170592821 179459249 275693388 686128607 493801966 966597690 328023174 10856887 222700735 701561288 165421513 233440738 404432222 978646075 618231853 99157545 417666019 115005273 188154744 165798827 486096005 436613351 66625275 956491735 546567938 345121122 535546225 722857975 32101694 683142342 648485368 685365414 227225224 214169920 816525109 251337605 909345309 53609579 888188580 579024896 667923213 325290773 762270660 301811762 992688181 238571356 508396183 166946289 42165321 401002893 831758992 662319403 569729105 419866329 497088977 669791847 580801047 369152586 204974236 415407565 399479404 7299757 945027977 424096565 5527837 967040475 160180260 105087279 630687612 60713463 254492070 488080204 862364813 586365257 302997656 114478465 930598322 372479135 83029727 127252109 755506103 311124098 756138265 982409284 818490437 940520767 267221670 38457198 31724411 722976605 934768546 163177368 800049153 114601492 297014752 794084257 269397363 79694430 409917411 717551666 430283247 592469231 665843911 967222636 84019932 877835372 35240888 559970169 118792909 792073234 359163644 669785531 442768018 362490891 657889107 902162394 14939782 247314179 991366350 299567859 937301465 776085791 450535984 238382274 266308224 519493381 176507070 16738683 575696860 50840925 58874286 511018154 258360064 612623172 291151763 615059047 890782957 505105080 118342092 804366219 827222743 56378136 136735838 450007393 776758501 386086911 278169384 636547599 517615350 500527930 298512113 911037447 639207880 325984527 489869999 345590251 48936008 724094993 875476277 93564838 787144751 907190159 456348472 361937008 895896426 800535122 50416419 82936895 356595170 261730339 711198064 3347375 550168410 684850402 395401118 733833621 252937844 644682688 563641884 327889910 178394820 965310398 520475937 989142200 762147739 508031648 743844315 52485118 979783222 83020174 143179019 34496079 248649777 117206906 896894779 277097012 867949290 33771669 561101012 225284183 482937522 856727480 444129401 258719830 965618477 643560162 838198494 215937607 925149709 90993672 929566683 694565199 850627089 55195477 280352925 353019598 875290013 645735699 915672686 378162383 405738708 712068008 93220009 330430869 757023708 32135724 828099064 406843625 523775645 521893608 46426666 746608411 410711547 403155229 656019203 870597116 728096498 685864416 165144418 269663548 286809026 883148965 598771054 531590380 44135931 475781131 545715291 323987203 560979247 395080656 505449606 69383433 588456285 529313372 150162840 959730239 607687834 532622850 998989254 476673078 314564134 507793648 61791413 320830957 246947128 747201624 737348397 716609427 828744875 72117739 922246232 997890175 908813114 504854049 455345666 570135830 648173507 41295536 150498861 14208842 411914851 861871642 386481719 505014029 534145905 458346103 325190020 175179738 422538816 22461745 211485182 879578786 135676821 396852362 975184071 648674441 951410058 990788010 108687078 693327331 11935377 758979094 93907478 136235695 793954087 89553928 733116011 748072191 191877514 205328062 302956104 428018274 300344579 816206567 539619214 515395077 249330652 889945988 667836008 497347584 652570989 783993758 507354742 825045344 639192165 97995964 777338184 526814836 399734172 313367656 574592046 119417002 662592292 802740047 336819881 390455816 878275792 911905065 34882610 935971759 25894108 837880989 545258416 477682350 606131664 105469155 486025192 761098946 984601032 502437219 115532641 443638783 365377700 463974375 120235156 238401646 277846727 740711272 365319299 817008515 940109148 256623514 823257760 845982027 799723932 972644613 32429165 110860860 81324853 599627021 244321010 819106786 715697487 658643430 401156692 573795755 451546290 539066420 513143246 558356067 204458172 152580351 152450615 848546159 630156120 460793293 565858871 799962613 140938030 660396475 657045435 345380008 976778439 991406431 564304828 478469237 714301747 289767587 832075275 783539372 862482144 455056116 821175715 932656937 115982457 582034914 309693832 699322661 343300557 41391682 131471838 244941944 552911687 8732630 166497512 656668833 237881487 996243871 491798515 190042864 307172563 87193538 130649613 571075775 524746039 617007123 513280098 35206621 958722921 627534545 505329192 858448053 766582539 734374220 863161353 587253882 147079967 881788482 341814147 990633539 877569570 493988951 384508949 469422922 940529629 103277495 757376842 275864484 218698527 321088729 947427544 823891514 379771239 848486990 748325526 431366345 867766286 725102882 676329242 793010308 849697763 147063646 128082179 26402737 102650779 388763037 508492989 133462924 965223653 391095996 511130923 595943275 639758921 460057983 299932207 848877764 301052924 205581991 297593574 472343078 929740938 284511168 364190675 41812146 836406946 177995396 611830839 563170216 741342615 353849741 918903501 985250976 5633327 200863554 725423209 8195632 986986409 397789223 153151551 502742697 171274557 463007938 999035866 336063559 16150995 706079086 166787969 38569952 608676872 737546803 755518308 428527849 281206387 114450910 509200885 16937482 636967755 108015733 717529594 49235704 192190740 685718378 4424466 607646090 285536796 272274442 41733034 29692840 885736823 369599304 471857845 865571528 330227564 440665958 470684991 322373549 710850570 774919357 795437806 221250075 475563670 123683480 129732140 366702450 634102269 486093510 182943658 996524333 8862355 374440816 493870712 111605267 145248496 24973288 613107286 74554819 340119206 233099774 351104423 375353419 879474633 644531096 474316224 882027955 124409242 33928527 681456821 422172833 258899358 700378728 55579521 986343923 871339500 722966804 690664518 212341585 727402323 358754143 832429239 575167208 946260088 155300202 356441026 46533743 712021293 224262905 785966505 930862246 71692090 125617990 143016967 160520601 994675888 976398909 586095026 236371115 972483425 954234851 34115042 249869027 291813063 331552967 870927144 866438519 138001504 950837022 812403676 884097063 629550393 576796417 772895498 422893868 269745222 352283228 141475646 351992631 432744684 486871530 372858958 544067030 637248726 993902599 977014839 84576158 808597102 728269354 514795638 390107799 429300856 416308462 458786042 7893971 376719708 129291731 100973821 801497187 645372265 130311438 278762134 305176375 427090371 196355577 528890642 102506022 218338394 435037745 829019537 738448479 424392704 647215208 67627101 867368581 505913116 548135350 584147169 924143667 264394936 685779327 9877150 522322663 363239494 846147502 310266471 672971233 327441768 563076535 265647921 700239831 967750419 371399975 759221861 706269677 238793423 384485106 142589144 752965134 917554984 893454173 340205831 774201803 984171161 156967707 733965365 739518827 363441673 9091835 903848189 255322290 282841426 660275631 241985323 388865358 178584600 942246525 136441609 24457235 603975887 691825875 708018188 769058773 592200139 494746311 656912687 339747075 646655303 499334246 389828449 919294668 752425526 610247660 820856966 146825284 124474499 365351998 811564660 791917166 23521749 582852060 941407120 121163777 413845393 447352543 808440052 339043578 717744292 988182460 956477654 568354832 923695791 953280313 625153409 478334607 853296444 635744784 524868809 111544450 915567465 570391046 89148583 654990203 363860485 248716692 151750711 327850142 649623663 451524000 742571592 855736448 424854305 167823204 324654555 178269366 898652304 524101860 679848126 558658616 304813513 134862358 277935820 698257697 98743686 139776253 68703907 591754871 379579011 8057408 673019361 839767168 387893799 628073499 188834350 884426579 517730862 543536544 967415534 466135312 194783056 510346460 41569105 75565500 932803673 758967017 561960818 525457396 836233360 287419796 675749949 329308908 831596320 261703726 514333996 444202572 42623953 929368000 722958804 758695 271125761 26061025 426766954 165312512 467216086 310892603 269346695 444629510 60285384 467979192 493327654 689818190 745800014 639484494 95480407 345581915 50979735 408117396 298084924 967007194 337290382 299881765 171183157 488815094 412925751 42783708 700642640 675879131 391591948 553625234 591422464 491571159 730216105 864284264 111050686 989666246 700538794 144627300 154338519 636590461 651961608 738169637 985422566 629922343 214051868 825445915 245187563 763132198 414705250 121170325 792032444 187858803 954320128 328768287 823730351 766972278 701226078 268339150 704230842 18052434 18988011 508150093 749759490 564207720 46880819 295838057 572080752 136925951 107603113 733692305 88973169 183556699 33255769 601447435 166260503 50492079 10967271 712437796 567844204 49950696 26963054 303379942 609012120 757114112 597889152 351761323 559573488 653417743 947188858 290961518 613336812 855851321 243700723 865554815 992143742 873104647 785643709 179300571 674506542 763106131 162655459 537449736 932618410 828466737 171996876 978402052 762773439 586212995 371321306 326452422 874932846 474082905 997785559 396141800 423293630 140940635 316295234 575269612 124740803 545071813 221441594 391834587 289715226 426428753 769994307 726185896 959693822 167381421 570527044 430859247 905293901 486506900 706828083 207316235 333589504 679858367 138567762 785446315 960559232 726995343 292513263 958990452 631626681 579140679 803808239 248734352 538668701 334893992 649561384 878835498 458197100 303498508 139999943 598348721 345142809 846351949 32499765 462260857 898552405 712424640 845583086 215989758 129616222 212898647 731159942 329991042 665356691 594780541 786685022 193106197 291908663 372298331 257363580 354295118 892173287 370465191 104289186 648863010 705083091 521088333 810219554 973654895 127344970 278110548 463593346 527976840 174263697 933089879 885593216 790936449 604106965 16894156 122670916 612356591 312534505 988742481 547840226 475603064 293745441 747671211 580097267 305580582 396728443 502288580 884101814 271986070 844820535 24794046 995436524 786117299 639196049 539842911 453465657 101145136 588662161 851868365 737309062 165094662 934974635 774662390 373952166 644139187 792925729 499531864 225929634 738141867 305563660 389963111 954311253 553243427 560038316 898616561 791886323 126273942 257320612 390488175 119441010 492187756 141012306 448160399 146192924 341726085 962347061 88891034 32944857 810989439 361905176 426247630 195294382 113516793 61912966 49205852 64164264 818855379 224835774 504322055 174837925 815715760 146602758 186899880 888223370 433317786 600216199 528465451 683265359 332006542 784558259 870402920 791055543 75213428 816508628 40572276 906903050 212104670 755913055 836863192 38759176 897317978 479972051 151024859 927512338 912815261 146354103 771617914 250385467 832536703 425173057 831216514 485306106 430954581 279379929 341124815 854379937 531089690 831113690 772612591 150889542 231129610 12945456 179503153 691925682 684659297 37073024 131530961 227513160 840384824 989155375 287806376 590368519 311047460 618991083 138283886 493312020 826075846 689846528 749116526 750704763 35694253 614372138 139295099 869540992 723016483 918818668 242291593 116028403 967001576 747356765 714141000 385798611 842538283 977905483 978261394 196290781 781979776 689271059 69731334 735735651 149917528 781485390 202674113 207416547 984600519 451651959 793709805 522068642 312665472 518769104 610089517 890669834 589963726 976993066 153968462 166212605 630208231 211286480 124456563 749243824 506189754 147062605 730612213 531911257 101004193 139484797 988524932 120103900 601291569 676539906 365357750 277757023 307709320 829641423 842806789 410581357 313422353 645830363 393781318 540009833 725954179 697017813 343268773 621048700 627693326 708330120 384752733 300980648 158893231 260314728 822490147 423743299 892133990 904346133 712805464 120084176 272640036 991460564 779852857 284965976 366515861 98886258 653280348 16016380 166828533 544363190 641598814 97153590 991237327 677938253 694218330 831530876 995864821 22050661 81465645 879231258 165108677 713939506 689353996 924881614 6832178 523352710 522889056 236481455 322072392 154894622 438561766 235445652 432630307 38688669 134091171 785212821 175996967 486898808 521706847 113259058 211085240 54037747 488637140 128698998 778425441 42437118 888599609 463825570 934789840 700289234 720770238 735151746 736284489 216762550 90274199 444243347 394490224 313441555 630242585 939059698 80228065 818926298 260698390 321385086 967910393 239819447 608516073 353546286 248974359 515728754 341158794 554285837 253824585 738245786 516773057 592799972 220423857 565678770 194203922 250563344 774347997 968338159 36212673 716396415 690277043 7802893 695402397 474320929 660063647 309940431 569079997 171845350 615790591 430292349 774784966 259237495 277872230 218595196 297582147 990496576 200854931 57307176 621449484 15947587 323921065 562934805 594052442 446039721 211663 822390612 879900315 296105607 777041803 606866556 33317022 599792973 911072488 781110965 456084162 844057729 537323881 25324567 401509051 867431144 529160440 628827576 441647566 65451514 157838224 21834618 725442394 720436512 206963072 483908638 286645329 792453825 27955932 270486166 570009958 839720130 117846154 677189216 693872695 940835774 598268436 798271608 728319956 940908263 303546862 909991643 654768645 354605755 178299223 596288509 551063375 641991493 546833397 654049582 765682911 364526614 998716894 267045543 202179919 292429187 256933209 764069673 819019547 105990977 211273695 753090682 710666244 957149155 744433333 409101864 387543689 670866644 848067899 148408265 180096283 633980995 340609339 400080971 150605659 71211370 37756345 637771915 797398219 433231872 57098196 640505491 769407077 959111349 832375887 236396848 647508352 95681279 713543872 953799970 143946386 695711302 943153767 565249366 387478785 984132848 29248291 81487053 104143102 899112880 128060904 363964741 939594393 825097607 34042914 649880611 860512653 625740185 520097622 13921071 663536320 880592665 615842080 408829303 376351042 459310797 748570163 901880273 282934100 992704830 317071818 564486650 435611900 75527390 176239198 232539364 128101913 721152311 515059571 775322028 742812366 594160316 694233554 982779145 593168048 259061224 619769352 516381611 298347326 598196353 330925772 844900500 209235717 91444151 331297355 104238786 913353050 642638388 846681033 781066147 804535499 746284999 753924912 309702399 550227135 864600764 851297004 798146041 699439914 37133576 104643188 386155391 429194622 871755999 621137680 668456969 362290022 262804914 278963518 356108963 439167614 105485558 917204697 336332803 632347646 988644430 37297641 602113687 958734626 650920770 705060314 879510592 493901499 960380631 341923933 922578801 898328699 177265519 482932444 890381693 937165564 338833736 645309606 78540259 887167184 161176018 154325686 181630802 126818163 820154915 395664361 697857135 853005851 296399950 539329312 952585562 165477829 92160227 842301042 457793484 178671449 788637151 455986623 738662833 150928167 3350604 26513919 489958701 871567501 948339941 775576654 104865511 888951694 969419649 148621987 172116075 589529888 803153269 893898315 44976482 852395190 846811540 617402299 940676162 280623343 440585123 161442201 115790395 138565670 235272497 259686418 317127954 489170074 56219001 742052328 685147308 469576374 94355794 877441661 379913229 377720124 651422021 78805910 796493812 427888516 624817658 58254475 464346005 668515752 207996509 69629335 665749738 496599290 627427951 833505026 11252861 87892379 269335411 225382935 6232610 537322319 955738658 262915229 301127761 182833429 903942796 69467794 182386723 154613796 899426843 523067933 280924541 309581304 142890450 342581046 562094491 382833455 179664540 467005695 556719226 822286328 25428823 700531477 899574665 527581897 780497898 361983001 684845974 275146966 325866302 53369691 821178026 27776184 739106402 823755337 370563598 205616795 530902370 410075075 171402826 718787853 599940889 240867069 452940338 357116663 103347239 664009398 946525550 851582042 277592010 403094983 158237903 173391808 709525208 32461602 380598988 507661863 773773853 760996082 249704286 103091455 6433354 720901769 101427170 870657793 988498598 966419687 738116107 624099159 569070814 160326385 978599418 449088199 333149760 116602817 35265273 141426742 151169902 649226380 294422025 954105466 427594706 536104982 148721118 26809265 46623369 401376015 823545165 510173720 656013357 564055977 97110219 328533290 887270302 175433659 326880341 449053697 474732787 10116590 53204869 318483329 563418203 793531417 433666202 325336662 527976774 912120615 695915978 275640305 458059132 280117769 879741024 468167589 154991317 774414682 415591996 976733990 266090177 334239046 429971939 5940789 103604827 76647555 989916860 781031477 555118804 349444761 809695535 150872293 271422128 857365443 750841452 782331522 205497402 484936647 931233223 469896810 810706052 610895649 972123820 690019493 120932907 660277101 52112378 264362535 593044820 107961426 732454095 50753196 932480545 3523293 888814904 804772520 254959319 331485917 560971694 301325146 453105317 485340125 326554294 223986489 913236610 525172131 992548700 466333963 73835660 41223691 253659132 258657553 37902314 466504035 312684596 667950144 408040918 994231641 270414681 218741701 504846596 995294710 513355302 733374016 290866234 221269280 128053551 237561789 40834202 435600928 809533759 925996111 657138138 93707493 737868363 156538749 999466626 840650844 799475436 287360657 411731830 262134417 49213157 917631484 934187749 347950193 878467284 269764521 395398519 859955830 992737995 80680232 654701023 998429201 646812014 11759668 958032469 603450646 278463203 395424094 570248580 48663904 235164150 928060918 601149637 556298893 545067198 329212741 132456819 280483088 439169627 249803628 714810592 493775372 872485444 827723918 520197864 750941896 374076287 877964628 82816865 569871367 779512821 989641112 279622579 125972961 910385517 532545305 289732938 502006763 166965649 564658629 196294093 266086149 167990541 162981518 28840053 374389038 862031071 776667000 779683193 338718571 214853426 511563710 98555639 667037309 240585028 828724432 709309327 679514121 664859498 112304371 269320720 426525488 369466754 872037500 373666297 395155854 219016595 199047526 216061297 17495816 622940818 446122558 316297037 318154075 719526947 704237060 742570213 780723077 549303732 376395816 576029697 725846242 104206115 203274733 867491914 113950465 332335848 456262891 291172997 889449712 591223964 489315743 502468596 509437903 405814839 170511267 715826124 222019182 125696633 853895708 826283888 5519144 679208985 418559154 51040512 847497595 689580463 384098709 34789503 529882662 901719625 614404962 722047028 878357140 828888734 989949290 120791371 159604438 827101869 796442361 74830974 165550875 756454657 705344030 631450882 100587610 443036603 550304401 776459092 550446538 768302677 426776062 211232056 19576495 808444829 23579383 94055628 83113782 248240585 959586999 420910193 159708236 238484995 571787508 496131590 47530947 371593617 811245105 837998010 334553599 821770201 459672077 578365291 765242403 96562275 270322891 133044332 498200298 400710295 676120036 271342587 270781086 490535057 703864683 334323916 435242345 439653420 572020642 576495335 37628623 402875491 967505076 855471544 138443087 494097597 271066343 314981304 353970323 828024928 779978082 400875088 418304639 790351142 803919815 394209456 962825016 577442118 950358042 194475149 62838858 901253313 860363777 478515096 243740948 743102158 415529083 867903021 158142119 686748081 321670308 703767008 951937871 98203586 746426540 74910337 343866766 666397794 545850393 470411539 589926718 7136069 801510040 993886317 271730851 896562189 18978780 433518595 677471032 30286617 406582338 762089047 209419244 419385711 275247666 14266148 601629766 18008804 338414675 585617493 291912115 12220501 827261104 101047225 497099429 937584726 605194085 100787992 801240118 776551528 751720925 993004127 313446618 750485442 354644459 112773722 992368435 555894197 143740747 906390018 155643175 548499662 718736211 5648335 266128581 709972831 91350613 205665576 521923499 356217155 547776993 567445220 647810522 976629045 348650412 193842683 940121254 721969688 166907834 790681112 661738587 555633132 583713966 336950743 424673109 769059211 182084993 405825529 430365040 383084714 263932054 956084693 615687307 805531635 765024305 310148671 294530820 473147720 952622898 781077197 948661638 642687215 124450941 613044345 165068200 384422731 790762242 407840646 438448005 513379729 998750537 333697717 510507613 363994719 83248253 604720073 457471257 134730804 750102947 691159673 833748723 964167208 852203755 745943959 94474402 681801393 340586424 168401800 842885305 225997235 48011190 80428893 391949590 616815633 86557312 916323337 337225386 652714459 208282301 313729201 829108363 201978091 812663355 869868372 981999090 694356212 69719918 985719125 512650739 916326096 335030078 832816726 647731552 722440928 210234100 716473091 615602342 160438742 401502165 920679571 644023228 964429851 720121048 928709912 733726828 849340367 597138336 272322760 691352841 842911690 849625712 255255261 976431577 382366054 364055562 49504285 585420404 79516321 292479662 350527726 26599560 952181971 244535682 803394792 610776130 431159244 683707599 797201841 431540055 459148312 603443693 908530083 678390015 460793121 692952836 562151713 326519959 563790455 236986994 72754253 389719133 766435793 638262833 987449397 675103336 271033927 670719013 858643891 215834667 238986907 516089067 43435947 921140673 701808485 579271443 210688832 485658318 42157380 935842864 847360624 893469645 952928046 817550420 273691156 297189882 666290729 48697849 457417751 153814326 212435454 666783285 100427973 503716548 944149503 269532184 819839333 582969709 698277687 971653532 836428762 88907002 228404051 869935694 227673387 36541533 157381597 458334056 615328897 930727651 134812998 728040214 327037665 285470729 309500130 290756028 668919769 619177236 300015143 546983544 365606512 891697988 986058484 356306461 979835787 752896702 306682763 808282993 566082234 764222246 653245957 984178481 333848659 356794703 524321101 9477621 456584060 874006090 250737696 889770974 354373601 208257276 122197076 950017864 682553453 413034831 402937555 468215873 761533417 173066749 417463471 393325992 207616823 610818798 809268359 467463156 214712627 217662557 616331060 44264688 413727767 138118241 987199055 318984586 476441278 297583684 732911571 76701660 500607374 397480601 870451443 321166335 774867219 584837503 761418046 582337203 368448859 58764447 149587999 123500267 424578807 821212955 231635568 269831142 452949943 337915048 259857940 604572708 702405394 990873023 840341783 304700215 970436161 883382348 284451194 110068884 945176131 536563464 975335573 531728556 626620578 72628081 776617819 606756617 887812740 311776419 971223793 651549464 8653298 406960109 229260832 908218101 571623137 416152228 664151225 794587277 15963271 115045004 335619368 794715659 106513375 631835266 218330252 496206597 581896811 532939989 986730621 216340359 847239310 706201342 132402379 541743795 591415578 168785597 576456138 323902982 563620639 985541356 218355245 924730559 631001670 755038289 701047510 329538314 240352342 393129421 845833212 80443764 351011276 390187938 847164709 713625119 339754764 953278295 66618136 862818870 389423376 889825847 690582445 348673866 377613896 792913864 432421926 796441765 133179013 341958565 768890830 866152789 137014171 631690933 859362666 72183915 354543518 308056221 719591155 306122659 112962450 703247928 950944638 728079238 8768203 902678982 706449838 572002072 47000411 59553738 21133767 631497608 470732243 915452515 954513548 717039247 259979869 577498815 855338531 786231852 168825551 689059978 481998878 833994420 558065515 802799498 847184329 693842909 497850712 222558724 393145937 821945263 36355061 441779134 425291117 502996842 431502663 961361988 65325339 658307053 505315062 766219459 796776523 161481857 451453579 468274239 385765446 429977155 414214144 599239613 944096292 351213885 167028237 73128379 709200837 816783679 812035500 123979719 900840576 551731078 546486303 681354835 11087422 853349544 224132373 387379965 472750207 763150680 531786855 456076566 799047775 398899031 816959532 820540356 296778666 883216731 212575646 31068476 625756152 125975826 943553019 242897116 991749941 725949773 223675365 941495346 616195853 380928213 75331890 586109897 497638578 842265406 643313504 653724761 367931383 530108857 289313717 318349860 823851888 989310931 870295646 490293582 259059656 483957744 929529528 299047047 821704542 645457207 717886236 351792558 620421823 578612652 268655593 658202017 32526220 175971173 34463967 318329548 438961127 178032646 738507479 730275805 917530902 946984361 43409298 197737997 230861465 688617739 535019090 436178090 32265605 153949540 229420726 55329366 584909864 963615838 193275496 342662537 271445472 322807651 459068764 464465691 363821628 901244346 892441618 97463704 317770033 705870362 527503291 671623819 702969085 716873158 686627386 638771636 656965419 780029837 319180639 830771695 247456362 643653333 308651756 732564284 482772735 993878795 203395632 215344954 803244397 61862725 637788396 765967068 186660641 168240334 576410080 647790392 592360599 301029973 834328402 857374730 921730059 97318300 33304091 150607813 440368569 539000483 121715624 807213422 783104647 616315966 929761655 730338745 205742914 404150620 765097488 758176989 191653297 760767304 947104965 668267841 338939793 47199517 253493259 464208084 641640197 340002103 644794650 505337123 515809839 36212015 363672738 184447041 536257276 717160968 708095718 228406569 293309780 949756334 171861546 480266270 502002479 163426846 441492517 881245275 996023139 463768960 895467790 12102100 736707409 685077359 58504364 909127934 667711074 20807643 616866747 520959534 903819185 645415812 893961197 76459330 662511626 320301149 857264963 214138670 669851409 672684224 982046876 321984021 812125369 247877355 9052103 40474406 985094949 177851895 231045223 600187625 922478800 299352046 603614381 792607098 609146978 647840254 780109508 768633061 971496021 996967609 502786335 281334140 432094816 475819692 492661796 783103967 273049649 261886317 679389567 45148581 631811245 224831163 99796290 361643290 893500908 874439831 729699677 362340247 899889659 431482681 884841547 804126292 551497633 720471760 245657433 735300800 116996155 201135441 647895535 446326513 394763040 147302698 817599108 658216548 709961122 639402973 384962235 220406648 411665554 848127392 653082577 513694880 335991617 88271986 817248622 808466983 865096678 931128000 67591842 332539442 628129929 762018488 342315707 371768794 416758617 461414419 323119973 352182634 613847879 331293805 194808665 388463502 387242160 59894118 771490697 345103597 122207350 95067441 795214725 166710740 400487829 125582777 531190563 399103641 954420645 607507086 688440363 192239942 865647007 127295394 622739905 7491232 546626860 450152555 611356255 587202585 223830137 42769410 166568379 894057781 302035554 300440894 364314619 991738353 609044062 802568135 863346249 939292711 597552865 476319990 77911960 734624669 64077669 22462295 118549147 890221364 751464115 330923790 874676378 640582642 482270493 964017065 546374353 59765607 434431009 771978656 554742867 958627429 772540269 582089024 626672521 191704662 776868164 35081014 966313649 984353706 112519191 188142730 660162524 230348108 921195730 141807270 174202154 528562986 231460764 904697630 593624539 855392216 61961874 922898338 648731086 38021538 189337806 866321025 844704906 702616725 800239961 338300488 234617975 896800942 650227094 801940521 137482357 962273575 873620939 648240856 577349104 527024170 889494393 951765607 770669634 758054654 28971794 814907149 66648588 82902091 630146656 686623734 7438751 647324580 560913800 772429582 167109978 599780671 228444583 136988963 12016239 834598109 831601523 582609372 884193469 964532122 796853857 12217768 843386475 248447706 265253197 227774995 974607938 842948930 873700783 766314024 888973749 988246234 579095893 267725611 78923791 239712120 759099283 764386764 464694773 991506205 99364822 847808213 180581694 813784234 888425088 671576560 567266251 511637217 504295765 476046532 938590699 327022465 175525386 445872719 188394951 753359228 427308613 958308671 169481672 223171098 542699747 676161421 18512506 907409389 231674191 806107235 204856548 271666331 552174927 134764117 270668022 50695284 135865097 426877812 923596451 555917151 859753209 419914581 267056756 287311115 274186121 892814301 28870986 2701637 996746989 508660683 623510839 22451001 913090656 505665644 823984365 168166080 426049463 218809996 189942611 938493710 97648615 443925242 841825981 87775228 172812432 197018308 147664202 67736415 284620349 763398245 262246608 878061097 870473655 686102400 106177326 782532080 618296938 329637049 327505077 947710434 249532285 221226855 209907291 105273251 306331281 301836545 37886059 330841266 276524382 490431805 101308152 713509538 71202548 976954440 903610185 269180462 132536913 529640164 372535177 822048209 926440728 962643615 167092496 64831905 401721292 682644713 932558024 267202100 285660954 198516497 998324501 241764457 689753482 467183752 438216939 652563984 802053895 601070635 43985563 807370713 403773637 902908466 781852284 256506089 717529603 572557730 342553955 192131115 900694942 459846154 85872415 73839012 988428257 651184800 155283973 996140691 62194828 769930678 575627020 526036582 480601873 565016014 780773662 884036006 920835120 397387278 204092553 936974740 730538082 910212233 234506727 341978863 620468528 149495068 617696702 757180568 157852692 338551996 380382107 977515079 455001049 432630170 41808724 713197393 125143149 184960993 100669066 434253971 241990919 892274710 579099449 833692761 18406543 87447214 650304620 841371807 889819425 223041832 63425315 721119736 379039024 52765925 966221969 920600370 854102202 510514322 719526531 366216186 16331836 363129214 977442928 147804603 596675002 454965307 362027788 69518792 285438381 894829423 820412969 721316896 883149275 985500228 395798635 539301274 527049309 946582732 348512511 155533413 171189182 665412985 385802500 134643679 712159111 993396852 923973354 147306479 637304947 280148588 576085809 982762680 952101694 866312700 25636941 588790681 384842022 33852640 49571312 363635855 326481131 73782097 652257320 840967423 583853896 39776442 41277604 174990746 985591804 181549050 646700763 976580387 602331284 46099667 846044961 956976279 539949450 438462066 808537986 414359651 804206177 923880287 606293068 574040865 739213587 800781035 962180180 591122682 375114901 312140668 711673375 827223552 566215103 634547247 626916458 99417077 182172508 54277528 173843924 198882476 257605234 647167553 704981534 903518636 952323285 942061761 542943919 928712999 613667688 754729583 449953031 211119570 918688405 949043801 164968884 264472841 736735075 634547687 437322102 793801657 179844511 182548410 130422394 188036438 191846394 220110781 881676793 841245345 259448266 655319270 433847578 851314820 36823623 959583402 939693275 327850740 375152605 952650314 107446453 621980988 867328576 397873126 941785565 981995160 166190287 994103306 179384523 5708984 742647680 987953064 584230553 477695741 457408870 885840628 955581706 347712406 565024341 49880421 440351055 652550021 747378345 210616740 798130216 825131261 862888439 458589213 231250652 891534862 925995256 116396323 604703903 184819381 957329432 300529944 726001176 734763018 796658765 500501619 636631603 787107639 123483285 546781943 17505512 60624114 374197326 583757858 777121678 35770870 300457800 141975146 670515129 784510084 589982838 976054859 530744589 386416394 66156339 372918579 467565424 519938656 821578396 948470447 76156611 409659013 437160197 213614071 701706547 213886655 708641304 722000815 801311225 755908454 97901246 234481872 315603690 619297991 578828685 273173274 600984554 19484219 702639777 50128056 96819881 652037476 230448850 521244815 64745743 513165616 951373091 989204862 648430855 200008612 513330992 436206186 107048797 161210002 882196473 862805080 429882793 334033415 609985713 949834081 273922327 282581175 750710070 315441246 58055812 161973635 196752875 342648074 37854231 466406971 549410079 41628925 807202346 431657981 525359040 596664604 436197037 91321545 945099969 677513465 138402584 496734010 528143461 901556035 974766403 965671652 569969767 284579689 269423768 760274705 513670060 958965130 297775049 749450481 274083446 98276020 359046671 772490206 724940701 872387726 427515885 665721157 395442850 255505899 27964538 250583918 273923226 219988120 847741352 24523597 632057234 772749610 192772690 30877571 426124623 39287471 219441406 291491584 601156391 146306703 30269147 167666336 555822068 452442000 357402437 823206417 197835017 758332660 111275685 872182097 642071371 397102515 746591596 459292107 405350864 938169819 808409083 591515889 589753759 717982650 835599909 62902117 343109 633737 313929900 916521731 937370287 692028399 621284448 127777872 354603072 306940264 846823989 214175642 634981343 451055693 384229607 305926453 483443669 321552512 572741014 941546021 262163904 393305611 941121195 124939224 828116400 733159194 927847656 75930571 402044030 492161017 955991036 14875860 285815010 609097192 322488047 384081682 600677962 36134924 813450846 884312860 175169765 678261861 403948331 618045430 2056604 197906673 696150538 51299748 908561063 865390433 282405911 112185923 926207796 96992094 315041198 6350027 908854497 458859914 566329529 52718159 361198630 94169701 384879198 667157428 472452500 170844848 750201565 631419974 943749338 716861355 741288898 194993727 558932546 138682129 958435764 121589024 25539118 37904613 897970303 7236633 9902881 739689136 730936945 804972908 825741752 180428273 346634375 813999702 77639576 923910208 673372007 592815009 58650790 799169155 649822186 98430794 548059132 910565424 55864398 169793824 149895072 342181310 914446946 926067219 434828657 706215763 401262534 273722907 386828348 525167112 118381540 105380663 917875116 449839468 45810837 263779066 812897671 392937420 762155285 175668672 520544298 22301463 66091756 130293005 865277668 678110933 900987925 797375378 32256379 662949010 569763256 434508785 223315782 425218971 451436858 643382675 963322354 879562092 870810763 155383959 34383204 924891292 481104557 591467090 129360791 210638245 31613949 711009675 122629677 835660309 991219852 733220810 148929016 502993623 502322482 462966601 501947242 175810505 244815036 744457992 675562545 434016911 537772398 94554897 325206065 799236262 151226904 804702846 762981124 228738345 707557814 683920885 152898801 844057477 191798734 589763077 701446504 849522559 429080667 329091882 81558975 46579158 472278344 940356089 845592989 520154912 89982463 732495108 568551402 924123515 732641825 73593982 891754185 71361064 137285371 806984063 925556038 582328424 921203361 241858736 789319509 306606298 690321170 423730539 802402507 595380450 539701430 617252934 973215897 179008414 356160650 621733843 959291879 981923631 174516547 569020128 597016818 582852200 804360249 719887135 923248771 142437656 936604457 563677934 450581607 289973630 538250662 398271404 206510902 548570967 146986406 302923304 23795729 466986534 409463521 549662446 366492613 173953505 949004368 691876268 794078073 645673953 884674501 384805519 483205732 713301929 354734182 560910711 160334184 939002558 151251174 861160050 936287675 905418173 694133142 542472136 62154492 481769925 742819959 992690609 217192860 529307319 107416946 773482397 901285655 233966763 60706337 630768420 371866953 145083474 642487877 379852461 824457790 237609849 707793913 926465583 703565224 285345577 45655996 301885728 724780452 91812890 552167716 257068650 195495772 738818559 563827058 453445258 504785875 542587356 524748588 137675497 663585376 912772200 943492157 626297467 683216477 422557164 968874451 95669297 461194491 113418218 987064056 859233435 827265144 795205993 16940777 898183169 740912147 526365029 782862152 260924693 930081801 519200174 806625513 947734470 598814331 345196229 30333901 674117947 71589353 37051916 188837909 387179194 132608455 62324762 171908986 367955062 568508298 123125499 610317142 181825613 842353736 176512999 224087711 31260378 595671187 516555757 432513886 402943446 330846598 896760091 908449548 491936130 882423664 324110763 970711391 94839799 401715321 506632512 348768192 776412618 753517760 915215339 731126247 188571673 357164977 324830608 319525098 642525503 730852919 20426751 123051168 712440557 490701865 230082417 457131615 190324705 648703081 2178272 361289553 441307567 550155140 766980872 790465711 901483173 997787677 974668606 630626534 884461752 167028118 125418297 161488926 66609908 310589992 431413423 674441713 701098106 457100983 675397344 734444628 457962532 761583339 720175434 750968894 503090062 917414319 193252489 596194931 289214243 726620668 162700028 771583025 688096577 196923299 60338613 161846418 464355302 818975439 781426220 152325394 625652959 504730509 239959045 615421594 945508132 490191893 751666317 83359437 370445150 66387605 620041126 692273717 66105477 522014116 313411550 738104758 68555302 535702959 859961640 89366132 27933253 771993517 853629143 810123225 759585117 385291604 543571997 89266058 510130983 278257486 261267068 68939842 174290950 895398271 231033983 759682205 406439141 913846442 324676425 997189288 869626592 185654448 785352889 57540771 359780614 194378621 588336729 149854509 87752388 343132616 489787587 459173458 507953140 412365526 568624779 267013789 898844974 747925537 165993004 471788973 634660330 586485567 173280628 10654034 108733302 764080187 410055195 686345178 184510738 52127307 498159351 623639812 99742818 933549557 273349807 358176715 652601890 167422941 485451791 519173468 931056546 820459921 269431627 828501713 575326343 492898753 550964282 665114597 786048318 555904774 489801807 572856933 704296437 922646450 203013626 237871724 588966433 186624655 104476186 175470789 962329784 446751505 796787358 469355841 939565868 735977370 564291210 512345786 400370713 739995388 9174005 635763824 21024948 25790710 343241556 205815004 830969221 689341412 293199766 317088977 814978794 993071556 642738479 66819409 552039507 799350199 768694001 978245056 138675753 755769212 390297919 933307453 290806065 25366424 855551638 160907360 852139107 162874541 174889910 541750609 968299582 714651779 518408256 468362059 290212070 516828466 437364673 636725793 350067921 174208204 477471118 190630724 242624089 888594968 975551653 804510442 773684971 484597064 271653207 305160274 797192057 719518393 888677981 542942952 15910041 717269733 750339421 522578294 590531136 780804841 469162372 596715141 734962137 103805615 276643197 986039840 358931995 63556790 56478108 449138649 534873679 55595755 845078883 960700348 849302218 795185209 439023148 200758998 264617659 583726268 984948447 609804487 115474528 318076721 247683794 353984433 426577653 79073552 960988282 831282614 888238396 317158964 815726367 210481177 369403442 725376888 723531357 343685291 571711710 383573054 771040637 244146795 344607476 130183849 160461505 927623578 378532662 8255489 736832859 963948204 351262168 762060757 931235979 744204378 600129288 595156641 159029507 814490019 353418490 131626569 479236998 240463511 808756984 134873517 47758115 923078511 134438104 340056806 232010986 289998097 934510826 488099274 939628668 663297534 373341827 654153544 469246995 425359302 205475213 490586647 509275490 703648205 591146668 709688735 291596462 8803410 54356236 973787320 513137404 968572501 53028580 244598541 519146444 664977566 283501240 283436380 54253218 651855547 257374974 651154274 319379087 191427735 935979927 754885179 852346611 634952650 853199095 35125936 781659280 794248399 508914003 113236533 205740367 464712195 926240644 510158815 740520585 487705263 531682393 627018069 287738164 516832411 823852810 214689670 743369092 356336382 249260678 987932762 621439933 367076779 5949481 335791715 632140483 757582152 651682192 690186950 563569109 37525789 437337587 385386499 201400611 582664740 629696900 584293969 403364049 858002648 537207602 819412632 355523961 997595693 474234178 862240207 250135981 129159740 874011905 794850730 502471664 859549126 28449755 306665253 729724689 111264451 987052833 161479459 853019588 260995972 197497002 740295290 900295258 752538545 8386588 394512942 790004816 501595640 243497828 55418483 87975165 728003111 403454631 481495434 67564434 809363300 942202274 856958031 493723101 991707115 675504414 365184518 728609793 600070096 333859919 207834961 309555408 683093438 952192520 549755792 116094807 962505885 379624277 449865804 522311788 725239484 54353702 369121117 900051212 505395791 912913922 186915004 786488233 571140488 836950726 742403869 319564274 48444328 577931755 790286667 124777271 4822727 523722491 303529324 330659580 78088659 335444171 225504167 906701969 559481341 3471698 704777795 109376564 898087562 8251271 332967989 218166465 465078468 901907501 173955427 98151391 478156506 547529090 152664010 840882836 607863740 695787548 128495221 318433627 679411855 451042542 664919035 422425434 125626347 88835180 78170521 602433830 70179287 884801641 322772051 607297558 9454299 720674294 118672086 591013886 479076057 485544161 412273677 685948565 171948356 349028769 406093083 455839025 676795771 930049819 430575406 595131519 551638083 410339044 451275454 898429397 108065113 421701021 216061148 153000538 630812910 736720295 252742179 752169512 345936174 424047985 189684521 201349166 739489470 845620426 679875739 783724649 111491313 950941637 972929788 649721670 41257699 299977571 19096601 494364551 960180373 884454963 350787559 94230009 980851684 160765738 845239781 2359116 821982593 580751087 288139249 818187106 52637872 441946520 730876592 668976478 448110275 734367372 242474264 881906881 49917207 78948798 177814767 557254889 145900153 238406542 880730310 584114089 716603835 234146110 531624762 657913093 231088106 149258823 373100981 760184061 639156659 225938135 882044744 477009406 893038772 337772486 626031952 940417800 725477151 782867555 345596352 452886798 22873726 389116313 804381608 919862946 586555165 150527969 508894945 469666319 444517684 653981059 441747118 167597390 126680414 320355110 844941559 722143431 670209447 962554857 905869711 801183218 199594552 215299588 380046474 774968234 732251622 979611974 952054225 986908910 260868699 244377567 84104783 974735505 7481810 335635895 609569258 374179731 69390446 82343780 267680656 609910016 356951204 514653468 252342850 495204215 788778024 708969125 397294230 176683002 199670791 729827215 470299546 787777657 156336645 729667812 644435127 595546476 715495472 71890301 135080870 122339413 290662720 981697107 9518940 125874524 965590681 322060684 701340097 482412729 122930594 380627364 347876636 491502681 350662728 845568609 500518587 47985177 354640716 418927306 452653288 598990599 911181645 695460929 890899935 139906426 552873143 39968479 346008348 687913861 744605689 51378961 544505558 118010417 237973465 91076499 275786187 992205517 65388607 332391393 710566652 211270690 501789017 431053963 279630592 200046217 157840499 447829785 245797761 367695291 696649031 907781305 142015818 272133570 597848532 19371328 805621190 330151798 355098983 296652514 276144079 682742315 769433604 777785223 975199682 82161125 376063556 474045072 555221832 187185749 770282065 709523137 565022620 646640395 44515249 133380383 779365482 850371758 691917654 523624775 68399430 390464418 565450320 245687247 853004830 324979082 879624039 726840726 633145831 997765962 343160708 983840829 550990736 487912531 663673066 261667579 815299085 218942894 179132950 859255846 6322829 967601202 184678957 539849817 958703010 729720764 431215197 170016939 535976435 400398501 387606820 605133248 458350998 548285803 123651502 32150331 195818318 173239572 360955197 245626639 761365650 774300103 133152070 136143376 123800314 656976977 150958304 11596096 847214768 417477354 662938315 950165993 483178607 40357793 804060704 634407410 690490940 69898895 309485687 890982743 762894694 6179666 934358703 750250351 35843486 620479166 468898415 787687267 774948026 75196245 528790326 128128642 435801035 98050151 663130763 642757228 217499743 251636137 1445796 286055966 315051219 497376023 639341111 670996101 852806869 786576925 448125229 442384313 871892754 447766100 265913594 391328942 445575101 6886349 992991385 619869826 804694457 378635023 469310690 517077067 864035704 965268597 621785996 418818747 401756871 344537577 227989178 926482366 477920587 667852800 586979210 763051037 550908001 572206758 125258909 380160166 368969094 484268067 997659016 51258735 79871315 667476043 690868114 236582585 872846428 734254205 144728524 870071255 296585921 218330368 191635656 258370630 773471892 299827377 979806057 821049631 148411081 195752206 996196176 363052167 96367680 822335530 829165682 601939942 977073900 178036562 868504710 325969510 448822677 987848442 513711279 815889522 480792959 156986849 339495 348261014 776108347 600264236 231990716 612232758 933492490 173515609 467747242 743026547 401074409 233275447 439141845 415640468 546779051 992489116 594908434 903206821 631538528 137550018 352672883 57509343 928223944 753122384 522057221 204342679 132783551 954286865 875306080 6780243 988825535 21826256 718538830 19653884 471829011 152986188 679039337 979891909 182872070 484660452 814955322 398926955 262698620 970356389 207746233 380529161 43334551 880785442 440905618 253316158 263248976 987941999 859136223 917159119 477811097 261011843 298417560 909122890 268997509 686461930 679751462 54165976 576747804 809628685 574324227 362064305 679740492 519497472 459465507 204530651 673516156 861526977 887485535 290324588 522485257 688038472 928231716 483473167 306829996 503110571 434337938 98835592 639874873 993456738 314204327 15053908 933555991 82532602 90490031 624375651 878964466 385656034 529392306 470457444 421810308 931200788 780040594 724785573 439169775 178840932 861242595 490770912 754544436 169061789 285066725 786061014 841717956 474985455 353525363 33804542 183690612 426802369 951691611 593288100 645731638 700020900 675575752 82331926 669834354 90280546 639657772 260197311 90374395 523317128 216629880 602433073 435433492 620361138 915903261 309422127 302890505 939741879 750327286 138164725 825209917 485014791 660145112 785900503 424416306 468106343 405906851 65849660 308714487 167075092 598706156 98644234 52422477 752146794 19239248 534351265 618040284 308002749 279548300 110167461 291687695 606607202 711784273 318677575 228287594 985908068 761491153 808873191 980253044 525681173 779559270 59681593 445536405 742057177 958176288 471056828 225796241 914532902 141934883 462198662 207150723 706500441 75848035 75813976 172082287 193606628 851318539 411440600 211338775 265268898 960385628 28818904 861703406 260527114 49143755 606038836 947908120 959487987 407544202 790554257 369396167 84877435 750313 288160567 828797718 456673109 569794038 89511847 242619376 684814967 429955648 261131674 540442572 548759139 915273791 542779775 695460184 190568204 418206969 135757800 305099988 140312650 732370551 256366264 202060739 525615052 182165993 356158584 204504696 997647300 712967468 549512784 822302740 260784672 943261639 382335609 26492040 99610843 528547158 452126667 313656316 945922684 636514046 621939533 741111586 587371783 902476484 137999320 200436058 930951883 658165144 233596160 661235187 680742671 81558506 882103105 633663890 331797208 438242705 707771940 799390713 490484255 386921708 118281237 144265593 947086371 906901466 982536635 165134756 803291779 338118285 297187369 415992236 520268658 339187086 753166490 239915680 685523620 649091219 926725391 205399175 961706490 490478958 603023401 16178284 999065989 101629431 602506091 354177700 721780011 189835190 425676503 11065092 75967840 773644811 767611531 863909212 701042023 989038543 618739196 332377499 415479209 172574040 746239997 231265349 241098538 248664493 433472786 851211690 18748222 78207821 742745167 976224364 104365628 860931034 343133649 832808148 776023112 273784893 487703201 62228396 43764513 326718296 878242196 186474883 445705519 602313105 775933073 85628421 380661114 210284730 37292522 460651553 956284661 706301894 528813578 879259657 344066476 195801417 728105326 39556978 819118202 351101032 33863438 816037819 109194839 478935691 43065244 32765006 128957966 472208362 893661763 201424611 78051016 762160172 129665122 540095523 288531721 408672679 239125347 870990656 827847691 796323891 796510447 845289908 705023665 326050396 418013072 315977106 39324211 310970575 114383508 344171696 128403040 462099087 139491205 638776351 905766250 125821939 192629876 355858546 453682114 376784438 532598896 312615566 67753679 900787840 509903643 584563417 968401666 536933235 964946813 422830845 474479127 540475326 568360727 617447953 628045897 649356304 518817811 511437845 916196615 955242678 170528752 63156662 926132518 870628412 26238455 148539207 480297423 730120890 656697965 221997129 253071552 801590542 73758315 144056012 729217837 529645138 453307340 771141039 492651950 79311525 604748466 240735296 909242703 774287434 27474000 875729284 121925897 471509221 399467206 950180824 241448172 47782193 419993890 921396770 597508984 197090841 70418128 207432755 447244259 19703593 453557203 223629915 470393710 510538683 441594350 304030037 445606863 742948819 644995641 209266917 844791744 854923258 251663588 242955257 497587118 461267017 803591730 914838923 206411929 418560654 311166697 218854567 140787868 105541552 345306436 119884943 635365862 600575154 678313575 846710543 970227964 165959905 453367610 692957768 276222761 546881114 300431130 888286741 562443850 547279252 405972234 655691024 177059610 428530278 298530996 265813112 725801215 359717882 680459216 718474832 637823809 864418672 206154447 942884130 47366315 14458435 427310179 188177865 315732219 310225503 638971545 673101434 351995426 848618396 941709578 39676730 865794036 872564185 571809672 798068753 811714456 837142007 426834578 909097214 43676728 455293700 630943552 796187785 895575393 876048284 337342503 806112370 76207378 482072985 49723252 206435991 725635885 23621065 178336109 82508559 89059981 722860495 665468948 57681489 370040191 915162138 903974453 92590566 785891552 629771358 996307623 884740602 918435937 376389776 802587616 620749634 586193334 345599430 448871310 9125666 980790032 82161172 62694651 423175454 299910285 570052994 788768467 590404722 597389196 734909882 239405315 274955672 413473961 933821645 355775015 887096870 476400854 282295363 397164104 467518612 993538771 759796870 652840155 466084152 846025840 907840706 520936142 24649700 177983309 598767638 608480901 315219968 841305351 432563661 453642037 928231572 729030346 755929552 620330521 804488269 464487341 149650286 318156044 958807762 801520560 928832429 259195863 888884036 339679252 662546765 75949118 525174784 338911391 179162052 567162741 548856662 422983432 923414131 811872764 948113707 923498653 872530334 936510310 609370081 46826336 898396045 453050633 274131312 844048981 805948487 339626764 160459121 42530281 733919712 989674551 737563870 330145116 882923032 273014713 500092022 875501818 16031352 345145428 975538070 484225838 385311492 143287601 682398621 27776820 199646975 342672248 78568214 600886803 331963901 605947850 48295539 100344409 656413007 288087817 707700346 638954622 491714425 399626383 963870890 59000629 48797098 907391723 21811961 163585165 868522063 662010320 869026992 25759602 835426629 520824247 44426721 11513919 310270202 944964781 574543236 544400837 253726675 482921856 322618988 202859870 161912805 842725305 780266921 313340154 921371129 517262148 216358047 191223172 411954036 418999867 227117905 344962324 825215635 359572834 852004841 554961829 120028738 890640696 466786857 782213839 849864512 59435929 685548210 749192841 682087806 596090322 691995111 532946909 190597682 705272909 952253557 640071502 743249477 816468453 344023252 193072649 149756199 360519404 519604814 45193214 885379118 342913594 62977299 423330552 297037204 401846058 599168705 413085402 227773015 457011344 869788759 135112254 162809285 713830282 671843710 222888730 76137503 294711887 656957691 956309530 357877237 673673864 426076035 471259331 126972450 875101804 501787354 912451030 971439220 605789233 538874434 479885456 246243319 93129905 320227372 107297214 648735302 879178392 888540655 275647693 538123515 32418547 301555967 211635232 110990357 710725466 929360413 714686462 621853125 26856973 965070731 735375979 457212424 992527654 61169362 191922531 384165819 232150222 239882279 967582153 191431952 143239639 714220814 149182219 546571647 624400062 905025677 606785805 432293829 754658818 723422707 408259566 976627348 261898896 203720364 935232197 546388541 180916155 381106525 686269211 385717034 373507076 684845923 946928715 64139997 635098603 745683951 671895034 588304208 605887977 82631368 648128753 589999214 31941155 807450228 740204765 992978243 312433519 381246021 698729491 5771757 473442444 409330834 93716833 913784692 486780729 920944061 66366008 651776033 308524742 698019057 443937296 898230375 986825807 417576789 294683966 287892128 43366802 609478475 979086387 769059962 888482016 604658760 167622988 56193095 539453085 601313260 820514324 720565020 270621923 501758007 260172504 177348534 617425916 240417933 856528838 667408523 947955078 489497704 538151545 817375987 372099148 927589669 877787701 901903654 746040620 211819514 72626706 68847881 25159372 128547144 316812895 386430691 645095067 270014589 611066677 905779590 368397602 892174423 23094326 653949806 247040441 119535413 559753971 990199369 380161777 135813241 618029693 411000976 852405273 337703869 948138271 400499672 412034075 600309701 406854200 660749502 794002378 69013277 993276651 177294064 590876324 264523555 184067469 644696508 191597946 572506570 99179404 559077032 323835720 785394275 68451213 159294393 255143424 152212179 241312605 838999741 563546503 659715994 388743035 93498032 421416931 774128811 853839698 681965010 557061533 23463727 164787777 629545280 883682999 741985935 300914163 510434087 564686766 749428363 630084377 343235052 703627037 454175327 464502434 469698265 59283934 460423561 697285518 640640207 507896409 680770015 897416731 980202872 634089021 625782371 313522682 289490836 104409007 665061511 397599033 795770072 629625831 103827039 369321877 530423411 982761920 187979373 420862810 71374698 683698333 461873575 77368875 114137901 917250548 51674197 729452699 531729526 964229505 354252770 620524420 863182145 89544308 767424584 730808953 245838908 896914627 523989270 469644051 52149675 781051751 164766907 654570260 227948577 38334720 619286850 523912924 898984361 522228447 259527519 397976070 866928364 749885192 168939756 609963818 988288431 954884190 138467805 81617740 265278167 745088225 685437068 437224615 386362989 661489356 877734021 910483114 770243303 649162924 264448391 113218743 395671406 397935883 185736669 400800092 561074995 594778495 481534038 503898894 776644576 516689150 390052290 83183819 198312881 533434542 883954416 464224807 46419437 402934103 664574318 806745756 424993334 953764016 956642543 918915727 478847927 521619011 323224172 99644691 559733759 385806832 859463668 714230263 603231924 758336103 77130127 726082047 434431064 694643074 337300548 792472186 327801456 948090439 122361410 229150038 975920818 91407578 526324871 667803050 409028910 663802011 558475019 275566 52136989 477914832 925788902 252260193 748998496 652271639 35412903 89470789 449037811 191180895 76626975 893064012 361728764 182135942 340750569 590125368 897146259 729759364 618436720 501378383 571817148 777152606 601923890 54111544 458074932 952520504 551372251 558211929 719414650 185793682 546586089 580654910 143637600 595479054 526074354 525751348 834188057 780764121 151063958 319225697 340578516 736553145 967102597 668185094 726257847 707604800 387374177 51932784 410909243 568297460 598837380 379730156 248185908 803118031 930272372 23784119 209889333 851981370 144271553 110059147 66491552 391523912 732220539 786497838 393089825 145801154 274121875 649331145 700187616 630651452 307580770 494530336 861682407 347677092 35413261 260409805 444617634 510146089 314419632 423693847 676431253 535887709 461014362 169684086 391953216 859631293 820695109 36374863 598136907 56194634 587105831 710655043 843107834 917301892 702830852 881797012 255571849 771670857 521166058 575619706 203317456 723061004 62564257 241521122 260501508 356320435 705223805 966274826 347263143 477770045 489621245 344537600 341944413 464691630 664370928 468003915 124213819 953090433 249232064 186244612 483240687 994853490 130086682 262868119 97450951 410580402 136312930 713568019 220793241 331601982 356578243 79945855 498084086 219507513 7590864 869566795 297759764 7704262 336331343 2691109 934052259 727612482 715646158 201403274 52521193 291280919 407841420 197488172 541473208 761880490 852401453 25012652 311844866 61285999 975353930 770490413 435177357 613633398 414622434 343546846 205506837 233887009 2420718 14293313 616887588 951271382 368268513 209686074 625360522 721452506 155897 101534041 679562219 453281506 638690722 471778689 324530648 935797891 381388755 890894800 47524410 36365751 562178045 953069749 316438902 857246292 634422265 541746492 92611790 417055649 243216871 110712106 474331407 445143184 306036847 664171298 548152423 813692737 336461991 754875225 532768946 231825822 520646111 702812223 117535627 409458188 802661095 3509594 791758438 773568653 394665013 140264032 805031589 851786674 192029314 349383461 963170875 90347265 960461793 689668220 55704944 103160635 513747207 841908692 726047302 370721647 639085782 814051401 523932325 61878412 423807707 74755031 124003780 171830298 978484015 969596863 578815485 643022172 388671075 722097509 883300202 70609944 417265466 40080366 662412253 106746910 655107974 822278793 997815865 260581466 627367805 880449260 15079739 339553120 791537071 563459745 106481236 410095429 131379235 596336192 667683844 100701072 428320332 720583612 458306918 920759142 474767206 645479230 429772319 574560131 586412245 611097905 260110447 469629976 196652622 144016965 338980055 685476802 221108745 613817460 703300685 255198615 226774553 118166178 733134162 74740573 851619282 305699665 342701300 411904999 520077943 195403735 831705590 682509453 632274218 876008498 930938769 132115393 527095220 107384283 453458588 765232695 994540782 224204726 838056389 483287419 218331490 536295951 141067596 446147914 334172315 202255668 778400392 318646906 568006946 653846450 78783178 554581082 682018172 539053950 613331000 86172990 315461257 687688555 139956766 966808694 366064271 933788155 296487608 183365987 427086591 784151654 461012664 352846604 895024890 913393239 52638134 622191387 792873716 391848492 614914563 283541378 138277988 207517322 193214816 786959764 918618267 390396804 402518498 979190510 682791867 5572471 907384431 343832051 29978436 406405177 80548389 986525704 220193162 166666199 676255996 944793756 955266543 851502799 179413085 214411330 688613432 810018634 64374402 291890860 754622125 397099028 47830352 548353180 374601375 691030981 19291259 258046057 294468545 408129903 212546481 934993365 816894051 358642793 290811904 599792746 100686250 316148822 7546057 398143756 809667849 903470247 845499622 268084528 215766971 908041762 501576572 79631903 269854059 457264384 497016822 686524961 464832112 421836169 148731844 74215574 839778059 191796913 833368518 698222731 878068623 803885108 817226235 70058282 706842332 595541801 982747640 78497000 968563832 872949908 69790928 450813133 395416013 298468723 130566934 369010801 162471295 770559119 85866201 511087451 594377649 877904524 262714727 555440450 769977010 392234160 162516978 731629841 721968539 252518012 501189762 631226063 235302994 849201501 862429385 859665430 604323958 324957863 212670548 442717998 565895156 970324236 796488249 764994430 934573167 299432288 831229733 462215345 571550959 112770998 193291158 182108520 628596083 337454887 866249954 164494242 783040338 420837632 950676844 751229899 728090694 990157827 151523644 298202130 245649330 720689302 331288350 36166474 425186285 183034807 582007408 987665340 526356910 705702981 237792314 494316247 413953800 101941839 862850585 634570992 575996415 620272583 365873185 949586460 28199520 504691280 620334015 410180765 350391916 307709581 633705872 790910204 772742752 703396945 205598412 309113370 44346199 620478186 223199399 842432678 297792304 979347731 667857679 204582581 244415951 950455373 964477387 422532912 604809650 655619968 23545120 879955363 505938843 579956838 851958972 34828481 564062148 299985689 562610473 796739242 892841675 963372049 83326398 4084407 439671333 758334230 517335475 399564367 845842629 412365393 899298905 162558126 232387882 265018231 720703227 929688667 10628094 419364699 426561379 337059825 251691600 886199702 215017777 997746224 850461298 870859689 652309134 310539727 326823209 665897684 60408617 274564405 761433799 223668981 937817425 42924167 805766034 687202379 29141770 464599588 625129156 870031722 703036301 491424782 851691371 593721637 591466944 562237184 881095016 591843477 162817983 524939367 121188281 486278792 548242920 5328435 42997958 420011257 427997934 402981987 532368871 672313876 320422630 211376741 543890340 503767892 775885229 958314709 639235259 820955104 671931228 393825173 126450474 423645604 652016376 111781194 247994228 671331129 201803359 291010613 591362456 221382603 419384259 379743363 405786021 177553040 141074496 183663709 309229607 180177795 108151371 549129375 644439031 998775528 185287498 833566873 395012417 243123535 318615111 784060147 990515427 649023530 588483786 501285996 899647558 886774068 210507744 94419732 563073086 634323295 136140787 260909283 169596442 754133650 662912267 214581144 706018304 162544692 586630820 684596578 618209565 335550122 788576420 519437933 371370748 417916310 980836707 396053441 350094092 643201900 684995163 527176065 849902288 722286116 574717948 938627409 909496917 483405594 260653889 52929956 606081959 206629161 366770356 980696501 696470582 812636172 525119435 178759623 396207432 329616190 668762328 834943066 857433952 947089375 741541668 30723855 62812923 592575461 434446594 942115655 811222246 407432207 164127968 819869907 157064652 240668932 872924059 45484896 381579258 971866161 705481608 263289861 502769295 186089495 486052813 908367391 965001524 212865787 202619976 929376041 856076391 804682241 856896446 365364034 620117525 68215112 322823788 497083142 953024341 519863180 116225065 863434906 845512630 926753444 98937846 896580270 182964046 902671788 863435089 156013971 824399664 310624904 837234279 905728848 103835266 27065688 683585016 502501057 786562049 233587273 770099575 881151370 652714336 396434416 271056693 587375952 949444391 566554249 137558939 160315364 802482479 445251640 843606390 815576256 498724023 67773123 786765845 633248658 742890330 497886039 888640463 422685652 944543381 962415671 942189991 599550352 568102011 193972068 827762305 660849776 631075225 226752315 196776468 201162876 269182893 58740326 269602949 19408616 623331361 950206828 576466946 3837761 651109664 89112043 772527068 473167450 352034627 246413676 243693003 790188535 502548036 233127644 620934847 819338210 556757395 503942772 832470063 125729518 211684315 493556057 32235988 167480706 582337773 606929925 745987362 95691914 627358041 736587928 938108719 215223999 67175810 801545509 281630768 333751556 77902432 483533843 66104445 534666242 525004586 711221266 19771391 322586993 747942182 157437726 92081291 631916665 303941643 536436295 7370087 77346144 837062058 77328560 230372 821338053 704951482 810498058 42249882 606256957 323634815 229474394 783816148 232993127 554808959 483107640 987859462 709903168 859168480 630250846 606037041 599503420 251685909 329141722 388294521 843981215 81328040 376160465 646393869 97787000 87159147 632597220 631113261 838421169 783875108 211106091 167093309 504124572 441841472 44041016 616194530 139709385 897993526 628025286 325122466 194432288 654838847 546047843 166194815 162502346 111495414 413411826 29934680 332395140 639790705 562166675 593876299 322218320 706954539 481068149 91236657 927068544 268970699 462147750 34184156 923028059 454108310 597853658 225551926 346490345 233599742 523334228 76148289 577782939 868784088 27353185 948611756 92857186 349332749 656265399 703597736 813689740 52289362 727364662 653798632 66494111 501989744 680029515 811287512 888821368 871863082 104634979 661401991 635048439 781007737 95986350 183569567 620458516 252108720 845686676 894381201 485775861 931270034 34991830 667392359 171803772 787957471 262322104 80237011 90428016 365375734 271416465 210377446 107669040 501063239 695196572 20496490 544956200 462281790 917205159 323596006 455081298 101953279 241733216 825567658 192695655 810226763 81615130 56161911 614548801 801050679 529596172 376202336 716685919 136696341 181051951 752049878 392974486 408714854 309705835 988851056 98750617 333627033 260048470 182528087 794092761 570139375 774756354 907354354 858695501 311173262 722088139 298893314 609475367 288925781 952226304 41689628 565370181 431786872 477792971 909962775 70341595 117201753 662113957 156999570 751793886 318357683 49242178 503852489 786646555 354411148 716968533 985745689 369823357 801235625 609867582 202271739 545083155 615168644 244676506 947497103 71881974 778859390 330889283 112484007 764639576 603231502 724297897 469383413 399745595 332739189 470540777 798573726 47249755 298868601 948127805 790172165 796423669 24893649 520373137 348027336 207108493 988082344 233180225 195768340 268903704 869105068 919998590 220431116 971594528 194473807 428065711 207482833 340803129 114840392 322751151 5482795 497468104 601013703 946424175 888936978 36436666 768914591 452524332 66463808 30453973 176587523 523114570 920501221 582851837 651400284 876453615 408714310 602245156 104818550 683045311 762064823 179270394 637575837 893072461 791934678 629904595 81232952 112798368 342572684 32667017 920611148 921598310 192169432 473929541 772494488 44986326 630998288 177323150 217770120 3849398 508760801 363585795 355151025 816569650 59650990 941674797 968219176 837191166 960519662 123122519 380289498 93780373 922062913 981473792 207828227 517880565 806678466 265928941 851377443 44486817 514788572 547422383 561152084 546245115 903307776 785311477 981698495 570147355 677184516 577005405 701162164 62891683 886669584 696587245 602877857 937036936 384548896 437972552 579494793 29690695 153276085 906936878 153862401 970275232 92666585 502708939 165776348 184289758 399648229 792987798 469054097 246867284 743552648 846221844 218214410 802826730 486703701 835468526 195942798 781020479 514911177 929449760 961889717 445596031 801938321 888957472 742080736 145421165 866050379 722436788 63465298 374436215 307750015 780949118 168728945 978559806 502540501 26968754 434992275 829705666 873619556 133306244 885329111 125958737 803723099 554804853 373811915 515898147 654627778 337135807 881738325 942610907 85314355 997918303 44306232 670081262 240113566 946213434 645644940 873404474 946757015 185966972 89362548 388209246 555451109 408108679 711483010 27655701 291569004 421549854 443158769 656254466 782347340 204589224 460770537 299586856 200171869 726132656 31760422 520706629 346333548 835861557 788898765 533674566 257667394 936452304 339213865 591502775 297883615 26416985 912592438 689275143 799512210 761456796 466288110 654574867 883268212 778172370 376034006 774723150 871050115 389450754 627461622 908061818 150937120 270797363 53574802 276391140 647991592 409832732 220914535 310052098 839630183 461856109 193566488 168714279 63561250 727934422 584300437 818526544 164711971 961948451 973035865 659688471 463492293 334416881 790283188 112204301 316872952 507309510 191115898 181284776 519756035 628622563 238986766 568271424 790684263 24033994 207823537 619500734 397364234 500525960 193729536 235027300 341886741 845022051 505130564 349952332 11011148 247836990 934279363 932653712 427725469 250849478 597214460 736093076 946147054 724963069 955386740 707277578 137969096 684678066 22925029 501633 803238350 892390280 441858746 542417869 328449735 95941385 689396145 117633998 203991998 740101786 211951620 142557375 50015326 20711479 387030016 218391804 552384707 573470905 361079820 841111479 574480700 104375728 355613513 10283766 648755228 815607589 550507507 984932297 53721579 932722081 771046288 211438036 879862119 112061683 625085291 906292931 131644524 676430746 898009229 567938697 911471800 585585145 60928314 397832606 6058784 573879754 195264372 990176349 306625927 43096662 194317119 546142675 946729396 453894983 577024009 410957872 152628147 33402709 818470614 220149046 140685925 770881126 462497219 946733209 373556977 158930018 41109705 50733959 945559952 703582321 619637213 783867037 492954400 342816592 629114401 888680743 221443273 34432110 991300395 894559966 851553929 830014069 571969043 76331331 63718822 453208373 533050171 181387564 869563601 919559371 137436951 823180173 883901226 751758362 397340387 33193014 836953573 713576734 518465600 916538375 308349604 830900434 74250837 63324727 852972257 812216612 801627483 261703328 26407499 359848363 548087857 63519437 488125883 85298871 182112311 533736739 523517111 955468440 946115012 718886532 821835158 14562997 191476465 885745816 759187148 585371417 600046746 259012611 387014059 599017364 669638456 345239637 763018298 48066029 37816989 946561554 839359434 211309039 16850400 174081467 437076807 578689009 575006299 565511018 821794394 160604677 40847448 523291016 482259303 36402032 165575764 495630289 256707438 164035928 673597486 810843876 817107648 401264791 777949425 214518091 282965527 117206997 152639991 149286380 994352101 14754159 489730166 271058911 633732387 843185044 838853664 905571925 733643566 220142954 221234498 739974699 181642086 296154295 141427448 754846799 279252003 162661925 769104471 832343172 336560253 962563765 345866026 149750497 890966693 657330931 852526887 750823162 923748136 490587172 360423195 394403391 218709007 271607377 655306250 835969649 581799734 594035971 368515131 868452283 360211049 278250156 275714881 229299817 203116411 675915991 136227076 896319486 287931146 996709270 621096195 547280932 975920727 159531846 862141608 618114972 518185867 583421147 885491069 924740290 312146576 598213219 665981293 130993768 106366451 309002054 734478001 627796326 668236014 213068345 503341455 196338770 202254586 667566037 593444210 964479836 697929820 795042202 544730306 907804301 431054298 926985565 706255089 93174605 86064133 281040838 877397263 941836567 777291452 194948185 743164248 234685726 142647625 876576703 927450722 106209079 881756264 225136044 395098465 542116947 620447150 497461832 79406538 596973739 94126870 937993614 578286845 117239750 916318751 546358151 457314052 970312029 409839559 903938470 377357502 56430491 851722087 943458622 519284525 6025720 23215118 924830499 786792777 564981354 982438113 685178764 149714133 85490757 3212999 329671924 874713616 303549343 859306754 718140662 913281456 881804242 860638080 848109282 525905868 502679015 797765008 907569598 987562501 240206508 760779338 724324106 512459746 854774935 662740316 460972232 875549845 363239737 11588374 581754885 560276654 290677039 525747750 136892511 302805383 459572145 516392843 857039088 287970933 889636864 987488812 579437313 344395892 14746634 338681431 499521046 142266197 225795285 519817429 297388822 59950032 665342520 472269319 89420124 422185269 824597849 888265487 909557266 627577377 111709820 794943452 848222768 647372794 784582729 741172955 504264776 7610686 218566285 386071159 317816035 617177510 380343642 861440845 32787567 902441346 397227571 557854274 268587644 819948851 329868514 799704094 900380392 967162251 947020056 334429927 420933368 288290971 549719797 873874737 295046954 363880122 530283466 246731537 482265709 803144763 457895904 319328441 480709616 896950207 746569437 548011879 262845285 394495384 549938830 671569787 455352888 181139561 948554636 531070392 332411345 524124160 405030641 542856312 159956272 12951491 132381773 158398391 61172615 505813927 550546266 323137815 230990305 998190697 254578941 860600511 115349111 185408122 466419053 121158917 731338948 198644550 880394312 242725993 814565666 32912401 745808624 958095545 960382310 500374898 237634945 342811948 332231314 234657743 175051827 481431234 361848339 267429561 611753220 512118251 594109633 214484613 120965132 152025857 801912618 15958407 901749649 242498938 99538986 781878680 382350219 777738080 897916590 886255940 547111763 771810875 388906362 457681938 520344286 693940520 772383690 729896233 695335943 43655906 153572219 847794903 921369774 490051793 805577404 134553641 867077718 499678254 406420647 562072736 163946407 927369605 723060147 97838774 530384726 70064995 382335593 109897346 748423800 801821445 825820797 754573665 821484243 791365449 178710583 168340379 603101538 219488566 970326814 122311290 859980536 516965489 353103095 709965222 152514820 391483508 508069889 614369019 350151295 680118807 951311643 923385482 908105776 770199094 631333346 715518487 443146420 495607459 33276411 320871555 101132614 345489036 970033030 162380771 895202599 122561960 708414080 537819884 551543460 805879800 287482717 714209983 894974271 187905719 941421857 962797293 794787740 155652678 379512516 153250481 616291117 500630192 357522641 978757143 890330111 846355738 793694204 943393414 123075189 26886076 827473547 544082208 871015193 872849450 31068744 337021058 298720792 139723168 502595815 735857829 986545351 751165469 346260410 89345782 114480142 619554139 748822391 779305173 571763496 669807606 654271243 620157491 317422889 562936169 894946907 574726931 120966942 905964287 386022714 292356426 412165797 318573852 427131724 814103881 54874976 11480230 81623675 560011975 920522796 404050521 663831062 863948228 977157459 429939538 635411377 305689415 960671995 590864587 713799398 604835482 707492800 719421744 948554574 911702054 72642150 589782314 785570462 864416630 887366253 653866161 63088707 494526683 59385490 728469289 496677212 53594646 857294614 394063072 95176274 71211280 202437589 748788327 86124478 276713464 398116181 600555813 32263841 706834704 274879788 72684650 3035162 844733885 295625866 772571384 404202092 832504756 472321792 854689576 506754891 700685652 256243299 586920284 590949232 859348143 151259037 418950684 299838763 111768687 319884666 255424731 897691250 4609663 103965708 180119236 371316521 506108755 113946197 443775843 596026716 734431057 64757367 755169537 709693218 326807393 768015187 768905064 638840159 242828122 868218406 26210415 984627331 701662624 78133945 577345763 759961808 293362646 897329486 448426621 615175993 530521006 458698220 983046386 703191908 229894747 888727885 767695586 807934081 547772040 691630739 522442335 445863378 680004420 810189699 64276107 415895865 866498790 911661840 316499756 170358821 429109596 229326482 800110264 535907018 879819399 616557296 264824227 117343960 659380452 992051882 532872400 25239758 883841254 876794967 198900597 767135385 35615739 464941954 298820274 320729160 1928669 582423368 725410432 25149359 892499416 623944108 403346923 943561087 275388883 709206119 282431552 255198662 968829485 899869146 42714334 908818540 516140547 670382465 425969476 286720912 767151093 116613251 442693904 708564992 892692736 97250786 98446704 587450325 307720466 809395132 605819003 796382273 474589209 430456763 763765019 259393981 375140000 175300963 887358631 997255670 330029397 253457656 463764530 357089686 83547128 805309925 353844913 901197420 198779069 469847446 994313859 882958209 454409636 432027109 84838704 105836057 309596523 768426440 451548966 642235518 918512783 766042267 459104692 146506906 449778026 47148531 822567981 475170559 460742166 579276463 590718757 559064108 529470853 517750550 242840918 848298057 563291243 134362590 95451975 840457962 282323294 559837122 847308145 892680179 42763789 217026745 271492471 338799871 32312929 434156169 767368640 435978252 634702606 306210150 817472902 623098784 751916786 916244797 154826259 439966647 993103037 172234763 37635123 606189731 911975888 19325943 164484269 171881991 167423810 121540593 158969944 530673571 606525319 353581281 649723480 614339660 954640967 325006327 346579849 517024130 993967551 700031142 534369303 566213622 284035118 466438288 378911198 739983882 790234470 282469209 893407114 744959036 335589273 650906435 290243503 209967909 927021590 812297193 807582458 306918652 765468237 153311002 766613662 830583061 951691892 28422216 10793267 126591105 948125368 542449000 929620164 642414174 129733896 124761153 491937669 877840277 462847192 686977329 276777749 832768166 758795889 416424521 88854878 691208272 559962757 492677715 717699217 650053722 551658981 630809593 377247499 478687306 256350794 78737009 556170725 25058220 661469190 995937842 155277114 643452408 834650435 191932967 204579816 868597634 620931760 445424513 987936105 490821394 916822150 186093810 340313245 714049981 439654134 866160720 86297810 858096471 630669655 332704340 636573955 240089382 374736337 850468318 311613728 15020766 159239707 956299993 36540884 411593143 755410295 519816439 471697676 360668982 814627460 295489606 992227344 310150859 356107599 307359333 730673340 382202218 88454751 352275569 756044914 145237681 680044398 751692121 523535406 886350225 573499265 184824516 367979059 369036005 327589436 806146940 49206367 26430931 189393270 472709417 626068833 460086985 888693694 330100645 275283038 999811536 322353574 957479330 824478738 214503415 389710297 169703028 794475923 493691224 687900437 672079265 304546882 829319849 766692898 109363548 411882767 592361510 340739054 584273942 840215251 219959913 184942955 246880657 820166194 84119571 812252932 435776384 529443922 687847688 727625294 213122741 886161978 63186268 319921406 292686259 267473259 282611126 689245874 311343837 151377146 682165648 636682483 229359393 108337893 492047165 309902584 770229955 723889457 558429590 449207448 739928364 809243709 599589231 53825337 903001356 207021343 22963326 41568637 405662753 413846104 133907924 155273370 764910288 80096126 647183277 607578545 393604529 308236613 8441668 839189896 315711368 63377234 536176150 961305805 449186721 924158015 889385603 735337703 756771406 557298198 660362203 727739940 637641889 983857759 142630759 425463027 203916880 616077073 473723871 160384346 730451205 922664719 806179762 997015208 193993850 845613801 379860440 743583469 875673812 157567388 233555440 387319736 477050446 229649758 724875224 107258755 917004758 859167842 517735262 645810865 984104342 971455257 257895658 56270434 98879738 218022117 505542270 295442484 437441145 217148983 7800684 742740567 622938297 114101774 555913047 236407927 736937167 569949433 126832761 510764500 503663457 793399915 882210256 731285958 511943086 687706696 254044596 212976563 30373722 104119039 418866223 297580933 288044988 375927930 69358293 418127200 258948107 161478783 611838558 20477100 661861456 269478602 585019535 931893662 39805553 314105635 130066862 918606084 263526670 929010751 36432245 526222845 889756843 158610243 502649666 576108267 475736228 909927702 548643448 833516278 979670105 963194187 240730361 359747523 111084241 638764652 386650505 663938400 962753816 586738097 701614077 157597885 138770534 128657953 274794118 152107703 696977953 991031477 304759970 433375058 388558578 103543076 952318775 157434814 928417968 211424755 148988380 50912953 648899701 16605732 291060910 964754403 768740803 599914660 382955187 752974513 642827845 402729098 985637051 392120971 32198077 176871840 892406015 584816923 379613816 215085269 302651748 903805525 89567059 648954320 362949949 583982604 99417370 52773208 526837673 295591371 286786666 847842064 9287634 240083599 17424033 991270730 919258075 370086147 643737009 814427124 535580297 992540356 899326392 810665318 920487972 227858020 596680787 38738505 703015642 35185035 760365552 462407218 624182868 58463478 257181377 111587663 41057370 994336454 55967105 982274933 939684281 744751595 505929773 3568696 729536668 634737876 944410307 144078921 51845485 429056746 315317067 126086706 805015937 676965266 184557379 319848324 803350516 660192343 238065993 737951726 68125222 89838056 23099811 49078891 595823621 10850254 194677770 495093544 994127944 295116914 490886583 453361739 126587397 908411259 214865057 709016065 59099842 679587078 496098759 780302588 604911604 637477732 910398450 861563677 984968984 592266518 124297059 686457343 889058214 312431779 814022712 765893441 857790852 100766471 298638036 862479800 630995630 742096513 870850914 841202353 176240799 334710195 904302537 240613991 194718899 59153742 998321015 584813513 822376912 573318119 115385481 941945506 361202359 530689098 398163137 455181464 666064444 744353657 711762387 925012874 337677228 814246461 433848509 358277085 278800335 989148988 937282444 901503020 929518279 872870395 170790017 989089131 45961361 227493619 568266999 833526417 929661805 79756391 785562038 602483104 269283205 870157793 737897931 121740954 960595111 6760833 749839030 488207614 788917204 877408513 709197606 579004590 81407220 595908346 561645510 302750086 106513141 650470004 419711161 727294152 403114982 877036419 938807714 810860145 446692411 17608014 814050582 777750513 734673976 442902811 781681942 356746004 437750095 551022772 575123642 400227253 706845920 609843532 942556094 19846043 168369826 947421052 830082798 745976734 156255506 81683801 120767265 269402685 76988024 970201628 437746776 499280325 231072205 824087289 581920817 608272686 683768835 44567171 295336429 693580206 385415499 506026220 351859653 381395862 176677579 155109704 731139019 260668052 254167429 62347378 228101933 950357077 413729757 864711530 651181750 260069168 163352856 89365542 254600126 60268469 435085916 396347986 192302523 105785436 17533567 464100723 439554853 529583374 674969408 842744138 337046118 962289537 292363701 92721863 287468856 377335544 462687009 571656208 606980339 100798510 837437849 216226519 132720506 57695903 947028683 831524415 519298327 904810051 130709421 342897103 936007096 935334877 450440208 934238321 268383189 633340506 811121165 472593526 92776191 424659015 263228944 691199278 42897773 790534683 330059437 912987344 121460079 185551725 105258672 750267458 791097433 57157008 781447655 489863967 805294701 562449098 878173114 601462631 55669675 490436304 253341844 440983106 267863145 816315943 424304477 604996746 939375645 928721165 9748123 301015149 28573099 495397075 508556533 237111234 370373014 263458882 666746742 632492256 833942153 4818134 489498184 291279637 35325550 266396337 921207315 726824185 17640458 827774171 375890797 493419732 407421504 198297020 945872332 669169644 288628122 537872189 385622101 467681206 253527012 688435351 997063383 472970848 5797089 653906476 370772159 924110749 828153085 117164473 180284622 841863052 856919608 76824789 341554691 332743103 771875024 360071519 203254608 738530497 578146221 785255232 750664186 953961639 973933190 665009685 539732585 39050818 256115024 655175823 99424280 421393476 399549764 400658060 830103972 134777269 252613069 195748806 20977706 552151393 70717570 295005666 727713641 962338946 504569626 499586497 28641620 927206147 780547279 654305758 422947935 97937055 9212736 449225014 237545005 366129196 81880882 451150238 367175065 497864334 340254290 998615813 459776329 568712541 198669012 22702533 187646176 585602137 20440766 379378722 541058243 619434244 694683807 550282722 746004887 747288404 148526947 235457431 736812026 326987082 638576788 329513328 730193341 685132736 662269627 298832356 865699228 531732995 695137590 641918982 947933833 523650771 10249241 168958930 557833938 976107055 397212736 817589193 759612056 964215762 228692576 904433141 438211115 596019925 829113191 808664411 796625072 677162329 229448937 647463919 795010161 23224944 643927748 178502838 446929358 690133923 596531340 664494921 694731079 427481828 346031573 5014390 788387179 478159990 73683432 954495141 61279310 104190576 396747005 102261460 247256612 649238843 86439288 468642350 738326833 568324484 959900966 325420894 591321318 542083869 292894328 142007377 243127772 693407577 454920874 258349892 319930983 584775025 98189990 860610582 452978387 782240970 780697487 266053836 115532842 353455937 660848663 145042305 532946317 598617859 774620715 733341753 550333348 49712739 486626759 146692785 313657818 706900484 85725289 157471566 231216406 941187884 186899664 458455696 261360751 130865830 279637008 841394394 772949579 992685307 390154677 188016824 479734401 262901369 653244289 628872815 935754411 547879855 333981658 38306088 468300282 354580466 338494922 844825723 503963739 657297041 551164689 87265885 953558216 877132353 143185837 141938760 81632345 668920868 817099223 331711163 653013707 833803665 354242556 130877997 127101479 101864960 153519322 125981418 486109828 151994176 353924556 414301459 861876342 916853452 4622914 683305364 317342897 678448920 420145190 575477953 637673595 48582465 580901552 690752711 960500691 832704981 751802625 604744335 917922110 474089557 718697677 369771684 178606694 228430767 423661847 97428333 3374159 744933625 919480 598358431 796645156 21042659 41047157 143096351 310952989 235800672 537152999 261913328 862091905 367706280 64148438 784383997 526199359 112182913 126001139 86102915 826471799 75996203 832479790 761953187 917298181 145077223 120955906 274344662 379342609 506641861 849801088 160866307 253002292 201516174 895126354 755406258 265885807 321509387 338707682 449304974 6765889 969635718 136919868 688120189 574016537 884522429 157062627 660104493 308837959 108414491 629011422 351164454 848273112 222043469 270137406 77373808 398606903 546671788 548172591 791583464 566426239 138323894 778071971 611276228 468211959 266662504 717255313 837242661 834691921 231038756 610038500 257777689 742651016 809966017 678904326 692084464 61035170 772342945 493947325 193003580 38307929 542958976 397498825 787089321 570486559 811405120 940645823 937785201 287689349 731908504 824775871 473661744 275884014 728407310 30189895 88637551 700497886 583412085 168570555 259101884 217759240 950730405 570367777 112820568 495942846 495081054 652590296 576244653 987836240 698444256 660406932 921460614 79207531 740819159 459774104 480556028 316238534 480971640 477295951 371351070 883025138 704202506 478489086 379307757 163678855 775593089 30184771 812161989 620525522 358896678 480316177 89171388 651160270 935077843 921736313 945356151 78137280 46213721 650529214 626975648 144557752 995797945 915682050 257336614 863963682 749977257 813226901 794561171 892688215 442908159 730742946 703622196 641259316 194852073 689825342 852039448 117804065 695065292 642254255 742194662 146893235 36099097 925512189 448533150 600513130 178861229 626536101 323161902 245223482 547037764 848116415 123079762 743753734 816047972 622047265 589534483 698018270 715291428 417275603 864526732 939330458 939171832 835237176 788163533 649720130 275064801 151941559 85110170 944454631 741072414 331956626 676073280 679131552 834912514 797522113 704962658 242809850 384973404 472008812 529143617 96136727 544222659 160741080 951832066 437616752 127840274 958721188 735688950 268140818 339736166 66360427 820220848 125502682 884600402 434209728 637280843 192118263 223895599 126013116 32765731 462987162 87297537 475687785 896622 407310206 951477767 229677431 610240901 460115782 592955916 738175258 553784110 783356315 178974235 292367181 512963699 162375078 757250533 524014936 7088225 221508489 167390145 187691099 418501908 795027510 277307838 12881776 59874440 652750728 547969247 18312103 636220768 308788753 590954260 670298446 149331400 814517040 57546224 755951203 125911291 485516329 318046702 287337700 674164685 659601290 349545225 412147445 940846437 93427575 685399252 410634188 544040334 363333218 222859515 989181849 691474401 466245369 437283364 664254134 970368192 161691216 812838262 335648634 321199767 442640646 21152105 709898842 319554572 533423087 470801669 648407488 253600718 60030236 571331965 962764001 56708781 544891126 769039267 35939574 362371330 607242659 335823852 326639752 541850666 769790366 956504142 150120144 584587541 964133746 956380823 108907200 486366096 860628143 77315451 859471249 150277922 377939174 450148176 183218645 547307572 668939520 271770613 826082827 868105699 60313339 828692651 48340103 152570960 597375230 543306503 413420168 769886903 830977934 484673802 130654395 237136885 388823290 965939060 93579359 131914269 701043605 17270868 83621033 616370391 705778847 954480302 433250182 606977858 627458574 695244525 85353548 335741807 207709443 634390294 732725729 626343841 669999242 426224585 108131496 956054007 305786356 587853009 30791156 531576280 777067799 479246723 790797488 461486932 737908374 509797531 678240681 61701214 607090119 563766204 889572841 637038803 720997451 47925243 394683780 515186311 301859399 451669442 183901949 97767679 895687200 726392174 967478574 987606946 439888417 881572566 660180752 332702881 439657277 164232815 99644490 954805465 342462772 977973366 110914588 345259327 400781421 389705164 637237725 337068945 329621564 533586363 151251091 374038297 979902153 860160291 611035467 16317779 192745837 652678242 924932223 250756177 783910595 719263207 185820210 885302963 787723084 450421362 879066173 28967868 648131475 958477973 324621970 77224677 273583559 173859103 8367698 976147027 891840446 565722822 472091079 633712339 205551388 699306682 118188631 706841865 61253648 864595771 622892817 828651347 18770146 150251718 475822401 860505194 594449810 926260978 619443891 774745092 912697806 424686919 535287233 834626099 353370702 186286468 93968571 693751505 183224559 776801607 935360854 93414620 806188189 931452252 499465347 859148700 997732657 614594240 570522275 188651599 779409094 552800977 209160964 198324867 453568072 773737064 300540080 579804692 707203888 589200608 195121008 865120312 390546846 201901645 654791473 45885231 965822234 170794292 546891676 718806692 229818611 688375313 255206958 665289085 38662120 741476654 176710765 389537572 672345847 283899134 570707193 684415744 657955946 504141152 823648456 606141666 775974273 125025325 897356952 945934476 933732371 181629177 505887227 739052725 762195918 811765059 573056861 858583321 103990741 725776162 594072769 952521706 375784617 351661943 272560624 318103842 684293297 837287816 964032173 291118231 559994604 341987634 785022435 6233121 380682564 195712499 562601064 675944019 366108873 814921710 509969714 716925947 975959414 344110108 886404329 730726091 33209655 872901567 9414456 941958022 624646029 108090735 531258194 777238952 69023072 840342358 347736747 368165204 529651299 404639472 667051917 7272612 318401346 906309705 424905899 671132427 118503115 864470620 739633914 698830424 743728514 644548663 25296876 134496516 2821229 100037869 861590774 685380668 645032326 618638295 999388624 762496801 660291903 706949806 530360850 206245957 79699078 175984367 471346942 272135471 188708166 228888409 771088473 469816453 529040216 799846210 389724391 147749852 22837465 643279905 157025096 476153313 55183731 300779652 598098365 94623708 821777730 566623142 439360269 328720829 560644030 739105134 488817807 532687573 533648667 322220729 910282126 486698966 772276222 390876953 934665625 281769031 359076040 869944768 193890278 814877901 253055455 716336976 101058531 880103409 106787750 219448121 600723664 505383271 437853612 560589757 76112038 864234676 282984019 394006383 49483678 479369412 132897073 903556955 417689369 688844812 870573329 405900361 789257479 126901928 15134867 107112574 67465825 862586395 802178410 792784397 755897784 250326749 811830266 739802082 610130346 558473648 330637966 211966167 80472425 179842531 479068197 256628731 80681522 57381557 143910583 150302347 271138473 778883203 816183887 796312795 62724079 993002220 659566919 20272105 379120656 313834212 394746053 253556591 710658484 175741410 91612853 965314058 213344826 73855387 954018031 38405929 244852128 545402996 448838441 863529013 641205053 958897821 356879283 81827885 200743067 487878449 367367120 791103345 768852849 543394345 799130985 702367483 775508122 155443907 11449605 724140810 698994267 537820807 223429756 459920382 970035628 769209640 421221148 577102081 807417240 639870147 919376911 761502022 495826041 128915486 653643761 885394371 565589320 941984166 369609648 561881790 83955024 501766435 25782412 169781135 195795966 264155567 590199452 404000876 730596046 41702673 851324054 852365801 730270219 161139893 364771450 491281056 167531481 916130256 82023906 511336696 706518444 379552851 443889730 840337928 94541016 598118037 157337320 354636016 564821655 621012291 992336425 955943898 338842049 554724471 296871674 415937342 720044394 981906949 804094042 21194307 843044634 415993502 114858461 208332624 458475859 669741040 482244127 456544690 880937396 375622571 500045829 613028093 390952812 402772167 472031101 330909190 562280679 248122253 437229321 861500697 929940265 776202376 565250049 441190022 262328986 255062426 769968109 351012555 97830287 543010667 832978762 85785388 996745183 432182277 73676929 557064599 609753053 771140054 836166069 908302671 553638463 173569358 830652028 250322650 523958342 808723419 790841712 254033495 48244460 479615043 549142930 388027580 107956552 423017393 40649193 578317060 56444335 207561227 932319314 503480176 59094788 56976538 367815316 841589250 345078736 352536770 173830814 380679519 241785064 844991894 959211480 887020387 365512014 183243517 900791503 604602769 301376145 164348139 79568375 540549917 367162320 600907616 138947564 923875766 737099599 106301858 957609547 246368679 669812965 360871519 413592991 931921408 442471332 867419579 413805440 246446749 885183111 175041215 803985236 711583195 712751979 704452456 891577620 539477684 25000047 456977171 808344263 658182085 939071135 160188989 521275501 235330273 268807446 498261453 425874385 383705464 358703965 363313859 820623883 420010346 60984489 206966816 341774078 881648752 862545101 587829029 854723350 268565592 922957670 893276683 533310539 759959273 813777084 167294376 925551783 30240104 185736848 85770648 391385749 735483751 245107960 540654833 19834796 336583111 519391117 663770565 817803222 161116671 666312330 274227034 593259966 878963751 992966939 263429188 706018451 345192952 237849944 415843266 129668840 7587519 4105965 671039862 865451654 1469236 401417172 157456835 330788235 757517973 759431428 475768193 57087502 666647838 69699180 619302273 647247934 517769235 156094220 464196348 574197994 316114467 791644214 421371026 414298144 238052042 968481007 870403003 564314619 28010680 254642825 338479711 317325384 90603515 296365601 746955739 934806542 545833641 552859481 886556139 397792895 496790482 714321327 173269731 448056841 401573190 151065440 317495914 294573074 509382351 187836134 523642710 369832216 979140049 627689945 90536403 79316454 111299228 241281820 481714050 281463629 392945470 651104411 237392291 571866682 586580504 199328661 737469653 835505233 20115554 606067246 127586349 895043979 318423166 353621389 887961452 680641442 108938697 390224594 644891133 912317428 617090300 443503575 621230695 749457378 378842356 948903019 247185890 343077489 377812363 609486551 144118063 643745574 421536019 747371864 208946572 194634790 701932467 203429226 107497002 612705160 338069157 727643732 152458184 684171103 652226510 986892083 251480400 503950654 981003361 47436595 343248755 860458585 433908646 78412849 283293580 176912737 30296555 27869578 445177720 329404035 692414550 481473835 535709410 284998524 957960611 558615384 231457074 379440824 546385598 765313852 944483173 161694392 632200336 761928389 464724143 307951136 321769502 738685076 911526383 887282039 67025190 481649697 106209269 573550061 960691940 428065832 686159293 22909389 17174288 705309507 921781139 420117823 83662853 302767724 537305872 930915052 214871605 373481739 713743790 824318940 595461187 316968788 219617867 802905342 191806058 348807837 932598138 295677776 58985344 613511711 408165065 742559138 880050021 882171520 659345051 985400095 944651787 61398326 721901805 954811124 659290056 268270880 846976420 80026020 363207591 915321377 35103274 337017578 103087821 56348305 892753022 638329841 97436264 288617014 349460372 625527353 281352938 266377639 554714238 955371631 216301943 742122650 735638653 511743520 533820592 298680863 407874182 405607571 738252279 15275295 73829580 452920053 960941422 572370364 766872766 439607097 925179499 282104912 88774547 736632146 928513477 289527006 333092758 367077362 164705157 543810913 640954726 511118647 665754275 389768064 522495059 590247826 985473855 767473793 519875400 517403395 464469888 141974111 188603224 415019831 165571353 232541229 895150828 383290889 937275699 407607935 892268549 589951105 534835302 189486495 42582841 551334931 736023492 62153558 168541326 461369196 11245867 657440421 714170868 60380092 333322728 919303105 354397185 62209995 921435287 364198345 971467749 8821126 232411386 269952738 732541760 283747926 621798878 30925531 3753212 256514297 39744070 630161328 425223715 259635213 143396546 992297046 57748375 620377821 209849529 889395222 886157353 238313970 498612857 57961622 522010377 810156905 407218482 39623183 314308360 715272180 37360462 632874707 798279527 165770154 625795573 570503622 602471003 933842188 837554129 313389460 230253575 174485364 387702454 204091637 183012465 859196181 850883918 95935968 185557403 912743466 886822054 283710452 176555318 53306621 303146320 900486444 293798820 663784535 57166914 87637785 853530515 737051250 35559655 207663070 210777872 915764333 113394447 93177887 991079111 176758387 987873048 411467082 953870608 998658903 602578410 269268566 933337222 269552451 33917581 957524361 625089808 108624517 882322988 20229268 602553604 542423494 825175534 640743890 824289329 642183081 192169811 5662595 130424589 145708782 597609459 535566477 201194632 566255643 213741602 215794918 733071467 830846934 955879082 532743157 558505781 403460469 353368260 382839924 967647294 644844200 557677930 529932118 711078468 47740220 50105476 802690161 561774018 824220735 22823288 773120276 563956236 221480626 128476695 790976167 476489599 965131418 305880290 51471943 550525710 577077292 811916979 699152160 338000387 788326156 321671014 168654261 752337326 866644681 328733976 461266540 955668381 208758704 706091008 793887838 947135265 440956218 361574298 381275530 935144842 835795580 767763456 255071165 759211351 186484404 371275198 197982243 45918146 781298481 727835428 998911201 830857751 882779670 382633731 642025054 335825204 981544972 388182818 513915083 328498337 521153581 620155557 4777452 174281967 861997644 66137497 768745480 647367517 643307604 816247370 483529271 981147668 366352117 779887858 146036050 835519203 945356975 780573344 89797631 409052188 76547092 654380479 137540108 480226661 386166954 193537874 461795458 374615874 495694348 869788379 119797797 374452333 943586785 87906797 178092112 208695078 691376459 851296521 23072436 341651327 698227594 158518672 217972509 71349515 333287844 515047995 955567542 452542542 877332422 480904908 63702043 991892833 734593838 427507785 771586409 102296979 646518764 315743779 932290005 410451715 383043018 52830654 294424151 710311872 723307276 4217441 398988749 337649422 71866522 969317548 143648306 182362344 716615270 747436460 751260127 887352660 509238794 106778742 463059419 697622791 380037358 194056251 382530404 835391745 890600701 752034525 779496195 587267298 413060421 713464407 328485215 404147387 841358962 484066993 698323216 806008333 303936779 40236277 224286655 905299651 45470472 82057997 248201867 222814379 718132675 662128269 644621763 923654951 293971069 120497455 828731443 850724888 824770370 575483408 281301558 329845780 665427139 324378207 298427715 378310790 532815581 374093340 223412070 561562628 184704379 209246600 434193479 56855802 340910624 695841617 838422747 648725025 510137971 512698152 52360320 580594656 1990077 486451760 786187441 146827790 503286832 903532781 934891378 228561408 179924703 946358020 450056370 499087164 560074413 346006415 757047575 235348261 850417979 638935449 752588776 426624098 707087223 224718321 474752799 974860661 478017835 457893718 97887035 521555696 24532967 99179782 286489101 251493054 817278494 100389140 410784638 515714353 356936196 569183319 807598476 457312334 421207196 933298759 515768609 163587636 191153728 293275920 261726923 958780000 560689583 214657967 47175050 501890561 752857588 977705029 777745484 501120032 739237261 791676941 559234662 752841465 461028108 629181432 313648179 73887486 405789846 179490108 452989839 915321400 542807474 706210201 821361576 552732016 351462025 524328927 733647756 526341063 941383782 683533227 417356658 958753755 693998876 224966514 630522281 790977548 805794023 306195115 823878891 111978346 246330855 866162470 365425844 397614387 30608262 26211302 403389707 798556413 422775208 910321057 956165296 56574848 726269788 398825437 944664450 133695308 78416321 733103453 282321485 873465445 537712168 510828789 835087682 291786504 542839313 32439765 488944067 336929365 101696381 307219914 903286977 666390431 512564393 9656973 550517019 327245784 501690438 607510290 326981775 470481298 482418227 332243755 629384320 211522369 552857033 930607889 688547757 657787439 831260395 533462899 128470851 670624469 825789300 735562515 284985371 554418342 758239294 768695385 713123196 374571451 139722577 87804573 264304549 351769183 812609782 81269307 109856945 14588291 622787023 511754506 35457520 103405921 701956996 880855305 13459607 743800791 674616490 336393494 969736114 155607536 889844462 333100256 847813925 78687916 612256075 318387406 661143544 63574900 390080977 192511906 641703370 439520749 418870536 955888592 529982830 434282698 939049132 766498091 529522589 537493377 229901388 957001471 920479802 600365510 820910035 67566781 33335387 486626480 348990785 358432296 271705878 804942299 204536136 302803117 567062497 472301719 238380709 150629283 82086159 579897696 143460002 931681221 699893170 734004424 919047333 791705915 114550611 545796595 348525286 931581367 431207888 118752204 320296131 814266490 558607596 248260414 86286020 80125679 349004161 558517056 822915443 854929008 563645225 743725963 668837680 769653665 81084925 75838930 739574136 282250925 573122085 944836028 532513123 356415094 463635113 944291934 86520624 228546121 304494833 790466439 692218082 466816904 76653420 427372983 801727758 895224389 396727162 2017930 643487283 771859529 658187719 10914292 53172171 421215561 427591447 62773409 533451124 42944402 457398862 128481912 240323478 308818569 951159978 700117741 216678778 485254799 605692789 980912327 598846167 529055905 872316729 574088309 595005448 194360086 540787573 748939553 772629653 903939203 716552085 862603262 259990362 147104090 566524738 748456487 42968600 976429021 609664097 308109861 76971716 264636735 928944428 380521934 162596943 363125960 19901055 71320961 172045179 169853154 891364011 756846807 82693084 377035471 809014131 507892358 376272978 879671107 153183648 677020056 725357691 933599299 339403729 974210358 148880577 248571228 652772845 784365520 628890350 682798300 592338776 150369481 882263473 280936735 843014158 313365870 551556740 900099339 648832021 967824144 624260991 284698341 536296996 362863918 677133279 362953039 497019216 381845003 555451906 898165870 772772986 469909393 961737701 965352343 337745638 104552572 96798141 70582611 243964647 223416722 45197628 346924968 484422260 621951525 270109973 35962957 676943589 819471180 713908436 356189161 197394650 737699557 278393600 926824499 861092104 475332462 14264018 194532079 788605272 537248817 169300661 518086293 99568140 298003102 806644262 905738669 571961266 372517275 447521733 336516750 889348886 685158579 237569756 405555896 104797384 220605783 869177037 431039200 901485387 533463480 318531711 708268940 50752135 678559547 794105355 572911922 378452030 604595960 457217457 436312806 302332327 208725977 353994536 88511826 433614204 48859426 180221268 770376790 326750542 667589029 125531049 550460603 176848540 544502730 139844087 552937257 276545422 373177569 264687340 674257155 377399414 494965643 684652675 429464093 147713295 721945594 430781429 963842176 216266991 155896532 390525472 186429523 632196281 954249988 588236296 992369962 312375946 330069032 621454 988729226 36968504 25688810 875790823 127981179 206217038 504534130 536359170 622048282 730048451 140235830 920971780 508481706 702276072 270081815 301553690 113391924 181151535 668181625 324871615 445979198 591729038 391755261 511536434 137595832 429851264 517986915 900999994 774002750 53989949 740306606 428548823 829123508 36489638 835483868 949735286 789878483 810555858 58535212 613056159 284947143 618361039 961650577 489420330 684708024 264478467 56832372 64773430 252029403 876923617 602602856 934540632 206231407 180747887 288334240 701283356 895869422 719701347 776805341 198940362 77220057 961037179 188123813 555971470 901642405 613439893 446786484 388342388 160930045 962320641 279816779 736858002 283262868 596755786 797494156 721205561 42105057 974444126 294634298 933308739 548362493 738290352 145622309 968577672 683620933 629073751 578159375 512012938 948835801 100669994 101633545 239908604 69631738 23487624 74957742 936536531 458117058 330884633 622563703 804024566 287066089 213019300 235439728 410003417 209600639 844590418 878514183 282034702 358357734 54242751 467525208 169587285 599488209 670803466 392956950 409929502 562440606 676080108 938034551 711355559 711162364 14674945 329530296 258279983 911174290 780415500 832529673 562515615 615123335 642981616 538945091 157555203 158553141 366167582 995302572 440515141 60829799 485534201 411058296 417820443 627172226 939811295 287144851 877000280 644891623 911434266 599282757 157648745 586142616 69612861 372495329 212806115 745988292 909863754 554187491 975380677 740918915 567916161 887314873 300253851 980210785 928683547 254412596 140523902 341215697 983965634 86086707 966296400 698825057 152861206 41954329 70517087 872945649 569654546 814541135 405626331 920827304 302939943 730449262 664765331 369938493 473785828 961653725 198869204 687578341 555142989 563531688 572850587 432155380 272530500 566028739 577238433 114429119 168777857 318790571 298273186 868886541 879207383 393699296 932548148 422052333 866087692 399899208 165425726 304527957 181350593 210257919 98618349 887382757 862276686 810042697 826157403 616469625 411580360 400458552 285784427 192505615 768714110 637840915 757985866 68640879 111125062 375557467 212738441 451078197 895162468 623347222 951002919 989274939 701220535 365234372 34608112 186470050 102999085 109478732 257762583 138526903 33108661 58040767 898452320 401051985 88596838 379891764 272597242 704579779 464995154 609864329 469658614 252676990 978142061 869447628 945912569 878984645 211870201 146204412 485334217 228756888 68006061 592967411 678507463 477744672 484824326 987668627 137914142 188846621 360328278 915386741 703446501 574539151 346300658 890313268 964818047 391221903 778727800 8114412 337039541 596345943 130474493 552524347 439930620 640160710 962726274 380554372 618152016 148153380 732922487 601312942 902146701 595716497 308108907 807830167 433953964 514746237 237038524 898026194 700817352 217887415 475157396 882796889 266253068 557824582 605432303 513739815 946105620 313673344 995731897 666312407 510783008 208241651 504864302 879785695 488498168 820355360 597712480 245800331 438716825 366936131 290501235 359445367 479717598 540072302 900555708 164336700 700600291 752348315 141778667 221567579 997271707 187060886 44144322 891962189 3094063 568101184 983068732 420373765 765883060 38566544 838197779 754002152 466495050 262917919 314260704 769480887 207216191 329076116 637958996 482384961 777265858 418449767 190993085 600181122 443732144 297810708 297528172 725367634 719058019 727126486 678339632 85954876 56026098 467873029 74508886 515411862 240051855 868983141 692059234 186747991 541148869 49896940 487425055 984381909 260758918 288271377 365297637 941253588 218902795 5898061 860334314 63031035 861955528 458309942 529594682 394706270 812952386 573906707 984249527 111403335 300770219 184268226 986460494 966280045 168794686 468000324 690108043 293015267 146081956 261272237 882059195 427141967 496839609 968152193 794684636 86098603 476961396 353123450 134429869 249355239 663228700 106923678 451263802 988945109 377200644 844251370 198464258 961192692 117408154 231273405 471395956 486222457 655000705 238572464 502008941 961648878 228419548 24771465 518591425 285389603 754202108 49333045 455660991 432681995 653150851 583697545 852192685 207819698 364683293 950304094 871457987 407979311 448433898 228677403 745302539 868869824 530723340 252078993 826167979 261700234 788384429 319911430 170270704 963077239 69902318 197385587 543880592 60438386 826386016 65928211 690352622 827288823 511445397 245419428 215108811 136938657 177073184 421372491 590277083 732350815 665548719 126349994 336488988 548284980 816235754 972848025 214134146 164559047 661799715 561213211 332098939 241768761 994279847 906063311 348990339 788657134 487895068 884446170 874105095 292257809 494860136 472547276 616920149 136636176 253540149 241530934 291291858 516170330 740415852 962437580 476720 784031952 353503638 811325565 116728637 167123361 79808361 112064579 855277326 893936734 148811609 413249313 811912394 818759501 723143481 771709739 408497019 752114141 820813247 721734210 486455694 50745888 291180117 9141916 869423700 560298528 187514608 223321678 667312886 829004380 99031166 603216050 635831572 851324653 191858715 61385491 186132165 369315266 43760611 262055412 801546583 77732230 228425509 771333346 900178266 252644942 717475265 786072994 351603304 185471878 142322516 87343084 229981446 226299398 764612084 578913651 695180033 714525102 577378759 933339057 875903452 550977205 883543192 501150945 813093705 332677798 916454916 483240789 20872013 266574331 430492976 620984156 545998904 6527239 226253049 552384180 107912652 621227001 910389969 286818355 325059531 251746054 72908674 192167377 714941392 861404335 451007134 713762538 270583114 995344347 500650987 948329957 182083809 993866696 776402482 343594480 292423299 705216258 142908850 211221624 27422065 276422907 635135417 111534012 301609458 40496570 203455148 806547515 428796813 600113150 379576610 285708687 228156912 340057360 594287841 116459741 361041573 465016447 731235576 475712152 180786485 300164589 133198774 483195338 835511144 81377894 588908816 271448476 828602748 953220713 308433058 55771188 168235343 298280561 189009362 443988345 479672648 630899890 726558451 351523601 546705364 286436186 707297066 323996168 322517194 738284669 867441668 767438608 721437682 603734158 532397823 715620402 66862247 228063129 175387673 715132752 696288079 514382506 626304943 906775414 53389844 615070520 191432953 14327292 888626735 654688733 802877661 447921841 737272915 289117339 439350321 948069093 646234708 401245983 157249946 36506569 872051043 994049029 259438630 430114836 147643431 282376095 835911147 898425308 982708730 72711396 423330849 819015400 408141376 191285821 575356881 823063506 858359644 861755632 186955535 238152470 728078377 564654504 936530686 865250820 326599954 202606142 870517839 448491310 804423365 410303044 281337887 210019493 425624017 608439199 298365005 43601398 656327580 680998372 377219225 530593591 827080313 274548473 489364092 37879171 948730008 309941075 377829861 136680341 318665465 639548156 57122313 50235502 687277335 920901979 351046503 39338278 834810438 796919159 759707249 69797618 63770693 445062373 303554771 47361509 50155110 3545036 585033222 736308005 385980596 281895667 968926696 69349268 271135923 184870779 107759507 297168606 249628065 946532634 180501769 876925688 770497868 643054030 106593679 589916340 545423164 940822589 366200031 325946028 520318402 480569759 6208635 21887542 462627986 589123013 465158144 182302255 4884861 648923558 873129877 529189476 550768488 681372260 872234958 120578425 968426046 303161910 817507167 393211996 206758219 204534217 876798702 938353403 541258477 914405580 715114190 719472152 595632740 63640170 324528257 760641650 901306591 992308598 452833818 858396908 764002582 346497262 883308775 401446800 650439927 237888579 624428703 252214027 644909776 566386865 785329599 46121411 707564602 864100182 339845680 32389155 80857749 759070543 42394243 627878455 849833301 255257268 292464226 390093762 487129309 943484344 968723449 975395204 616206032 700464084 143926077 482201601 130886987 386537348 869746129 721771469 153009561 671258946 146276322 268159938 429025290 382532854 876782376 212210252 296360532 609438860 514014464 845326421 185484150 82154321 998657622 736675289 913344866 423735324 494508931 555893915 498491146 25321485 362322728 70524148 923225912 857487379 129531381 77150307 762977914 328571039 912236385 626318645 395036988 186608824 349243385 186110631 856964426 913610156 733994268 140848588 561967419 891301861 881498999 271198344 852166893 26682830 603058735 445094216 965325943 44462297 867007460 648315198 371497043 439636407 838169424 631916476 116451080 13932827 495518245 441997872 408851265 386749280 176526878 304396369 749261075 733579445 911527719 113995411 587174936 114029020 22312947 756193451 879082177 457700584 426854207 620837991 80591064 71508715 390555473 475440628 443736564 647916570 724411207 868548394 825165843 807579240 203897547 508772928 368693739 753144102 649755183 387312043 150360895 539303621 335631599 844084952 231962084 169265707 865612763 536802440 841793760 589330934 393063214 583259195 908552805 643955001 440007761 554894000 656031566 381086075 524236933 868629138 92216399 856296180 771537859 632808486 868494383 134826091 634693653 759867061 625328159 701592695 516728287 747262243 390627788 469611627 922305220 317530039 271517976 769172600 312640966 806300523 114907104 593679633 539778642 975523521 399038420 567195030 546922167 562248525 350346663 460837362 432173268 386482794 755657832 273395950 961176536 633518833 443211236 400110137 644162555 955353767 881126293 399714995 106382350 632013644 596969500 212648306 102567733 706835806 703937525 830228392 912373073 262804929 221668788 322659407 954569682 479918331 933236362 558627234 787938334 80889128 655684939 388884910 305366991 201093826 128952319 702216321 872058924 538292625 156761714 656737965 360078740 254703709 937988145 290273431 518509450 602960810 952669957 881655802 335024267 6125879 425731843 915725203 290872372 765710736 11653096 907741284 871379387 87205568 840782113 766703918 642731992 837010274 468300617 224062675 904025752 527315571 472711634 896156434 541851619 737609242 163055507 834977277 946410007 203920870 24582414 361905968 764057477 607948826 709466482 303406774 233417140 845532974 746862229 867573289 295017900 399714089 949879261 91709596 95224862 46592281 329112702 862654269 241714467 375484145 63854094 209913848 126919487 252267804 137725004 129692423 998825588 430694407 678703979 815997448 961103282 864360447 519117375 202402481 105446540 981564993 872859038 368106380 977617211 221798799 597583754 544140784 186160259 232254251 102088305 975350594 406866766 532984972 114371946 813655152 284796205 964301293 211840397 816712793 720331127 622605836 775229772 246606198 550829580 59333179 483357630 957762653 708584415 394576930 242001839 985014236 140228054 203098601 922596873 137288313 602331144 499944904 919964715 800465267 81586618 381641998 116784751 46511028 436267305 240799684 449498185 877709414 661029291 652038149 336687521 375140101 935477882 831692702 62807374 242058827 471076684 193513109 489134296 381493801 197529378 733658249 417974315 805774961 950408245 15023874 433989003 155576483 920043074 249189965 26673660 208904185 263916559 588161379 842488427 990769528 879638196 16493809 387041537 411440974 398251295 717894990 939967269 261705442 597892862 532497411 109010916 831309083 966945164 531903986 333714774 862737768 697612874 49589363 598099851 984829168 908390343 125718238 383309017 549398847 19975333 114356611 374579394 789482846 846024356 589032940 637486990 816206818 649286348 396946236 408874793 951913247 660906854 719716976 974262750 762455 793434796 999982419 506785982 36942981 456075181 558909061 731882829 846035257 123143901 62050795 331237193 225908324 267019160 917572227 375769837 17029984 411952443 54743459 155828739 203857865 141935190 110206177 358495956 917100529 799411862 279490881 900447681 451671969 112657329 539932901 555414426 544722595 63307593 745436261 107313348 291282833 283592085 157797833 298108186 373616511 973921168 916384377 34485915 919297501 381933883 997848460 35720666 965914947 250527073 442606909 144023125 532862509 648579442 449922491 468097699 822340173 848750792 638996203 946171231 349772265 793701913 906105394 314522608 946676870 64557796 267910468 680813447 93586364 702609499 162627275 387090375 636801120 383796113 452545763 39596655 405027618 529596475 957937776 695886083 901985379 96662288 771739518 796984389 912952441 187084927 176733440 417276264 997989229 937521795 764887075 903561545 237134615 504661813 559256141 635760595 899819205 865077517 291261536 512485792 271397932 253533691 964037757 23877984 722848477 61117164 574458501 860561078 465888201 117271823 213096820 956456759 149410331 396246791 308769646 995355500 908078317 988445484 908181445 289554090 421124205 873911900 174378377 111938464 285034489 532291441 833630267 263870035 188055270 555128216 405634912 264124053 489296329 528902503 911515739 701295482 279655106 581781582 696798201 63751102 288882307 450513577 171185263 396330258 621373303 354868515 942054752 622929381 991863615 81479311 687333311 385094028 255785483 919466352 624557572 868124893 365041090 386829882 854309931 790528241 867931854 972625605 200737545 63492580 478377210 671260159 52712832 272331103 847327559 424756230 659918538 271508947 866927167 538487826 866510314 648166170 704440213 663590367 493798833 413124311 440249015 190963053 387080058 414183542 45752727 738904134 133128386 730542756 92661635 133111597 630242024 480336028 466081138 466953474 567734311 816144824 35249380 811448426 681868715 564430804 921013807 859650383 745616278 898603417 316290224 999688210 792283153 529314693 756726876 467097335 200831276 710742945 860466227 883683154 417542252 69006449 395530948 362584727 206636816 394694218 659080513 797872350 899100266 607145293 260370853 975549419 513881729 581022398 814469144 307575660 248795244 737122245 499311507 875793387 564205420 320553603 830369218 384411851 541822106 330294960 804847493 815898672 5080649 162158214 576659747 329896835 736321021 436436185 658455927 108510130 647812637 752325033 323938245 171525423 941456964 902981366 475617941 328755989 637547536 972757834 489578584 991344899 675889240 599319722 749509607 361245059 291010925 584060570 795737005 797502786 450218179 799846470 841112447 832924101 627067231 772620891 542403637 277823490 406090975 719286076 661246071 784634814 414913650 985910182 383480169 85866221 472142573 726657718 286543977 424298638 500651685 333900376 675062762 285669640 367639228 221591671 351886380 476735448 190447872 270292056 937490887 395511548 254487047 295673820 106447981 526978992 829241470 48317655 917232119 427256288 271197543 217954231 586829837 492513175 270187786 60923227 435780758 732220477 198413779 850051305 639192203 238517266 619332068 458288526 179382380 574009984 984634526 972358202 364565678 729322409 190828941 526096031 632046171 917578682 9676965 826281129 55488919 85971816 492655453 247225265 884809544 539578211 41553019 419831833 159199315 47524495 883580822 2878102 595673256 235177497 302196913 146105256 616073059 146484375 828309916 411305199 119994479 932091597 807235392 565958972 62908434 458363452 591645651 911157250 21422441 744778908 912732125 189459772 496051579 929346705 264533916 265605038 978879120 695343861 914156335 8760945 498367844 821472959 490591003 629333030 916634189 395981518 250955378 728521292 57576028 476980261 551051342 686619003 201255234 281624502 214465481 509726187 150777935 627298168 771113359 279604880 250910452 990446059 969857293 989156353 26007755 771493835 481530787 839531045 233469198 715634062 985462772 244450757 491006323 330186937 948924650 606910511 785347623 323556768 108189439 132330422 977246010 600738739 790386390 677258832 274098898 400133903 812728629 131217619 570444429 619035269 359435343 173827782 676296429 385962765 389090744 595558348 500267672 456043082 920266174 853408882 926559767 317888895 910029004 741472075 943635325 975221582 620260871 476901386 453844817 839952071 235869319 569674962 908640170 893342993 724627088 616181381 677171212 35098386 387986699 46606776 835371703 588654710 72634024 2589401 526011583 176566088 901474714 494548272 746433899 653551181 691625165 31500967 779662045 581409243 311682922 657968054 886736010 920314186 659333434 136776277 415546361 10949438 709633210 82311757 411343931 400742711 508594892 139780545 982025795 109698511 215682373 19602370 386867907 998580095 60893900 252433094 187491515 516581104 553270172 344874551 139299048 226249646 651213460 827197618 641103290 368745062 741140026 828886787 421645826 837137688 414235482 555707647 938828167 179623371 621882900 496728864 733034918 601710371 850256679 414991971 366002576 705880496 865827490 363106406 273626071 382600254 348893711 598419678 734539307 776870139 618127392 800502258 850861104 832735594 448299957 354388820 922952558 410165367 705382297 356188624 638076716 289598411 472144011 436414121 208985096 438698532 171768444 749635663 712504238 649325899 13611447 300740178 727499594 276170384 537996508 909533575 675033534 287080942 817861399 736937693 190497283 23831039 643606116 180139033 408153484 366559656 249746498 773868861 535743799 70746883 342103140 882171657 496721558 355873259 411574080 720341908 467675766 364199125 768288460 788033205 305728796 733157057 330068644 309464317 19411583 907973281 471468871 558594504 827144911 913469153 666916023 655880680 259434370 494980582 451040544 409624311 899081503 140369503 123277272 788122740 269511870 568322363 598311598 220065467 144142794 245970090 495641648 968946894 85935245 635931135 702306071 227435666 207707004 611696033 370140244 554361742 260758820 667318927 389063952 189665775 464962318 334169732 614106344 771944750 797322970 25287276 604410301 958799533 11828105 187223174 900768919 419604680 235477129 243025624 296852097 322902586 942467157 113651734 897967686 807567822 769351407 2062333 188202734 431863393 737606115 2591360 599119893 741282304 541465267 109500433 477361026 4753352 627516909 772070514 55872448 151896101 208731065 602910036 32070773 959233219 963896112 603394195 360813660 746876644 304353064 542997784 374088470 469013656 124313886 222256898 375046794 719217612 397958417 431484738 497436679 790682910 285684078 739302174 556302876 492318797 559022890 60393579 324939840 995597696 118772120 215485947 989582049 151745971 549777280 504631777 595479924 769504567 549107978 521197414 839362507 68489423 607130092 351017703 484210198 542863788 263830013 403397839 698649254 802455406 549493422 351699509 448494254 899191438 195342853 522492812 652169090 65864466 363487546 344795103 632451803 248683794 200698967 263892380 911947808 164805002 352690628 526787944 910862337 834184768 909429134 437148076 281405527 759357791 473321063 160784699 265040415 455556102 816991870 851173006 328305630 21591718 791884143 208275773 123827483 274331009 167385158 192014447 231791355 689092531 107037660 983699678 198464788 902489039 596640102 56397667 229852872 712005880 423925397 360534026 9171969 56008874 923138737 379624842 5682468 715227787 231735474 805611376 897555542 900719169 395543859 245502343 945380215 948487390 514612339 758567333 696794745 888836330 144054959 635419296 365024058 328839138 138574708 828916331 136392756 507502773 887559324 758865635 834244049 515410653 116190478 482422382 483323198 60731504 747609285 216680901 464225762 511976661 924683843 4797741 528988654 723612640 205626386 622405931 764224862 158466860 616185618 682158046 648843397 131231493 964338030 425305057 238872860 886705273 124484128 108581617 453345080 539880612 424998573 320022363 864459574 138179353 604128290 50784400 212429670 748143574 480415312 146650265 357002815 112172617 507120400 405311992 17917817 399826625 580190582 326450907 373405209 921971389 737237307 171242701 57871462 400289284 601155457 403673683 186843021 137941640 135990898 729940927 716093708 68910959 520657057 974716885 210229263 616644348 70590853 832021919 789397320 359744319 856069468 628470991 724916766 291818209 358834829 122296270 267885269 826536207 857112570 467068926 647669822 94428873 774085174 845704276 169900874 997861214 170346072 970860854 286742281 274320418 696240760 906206296 246675732 689648267 29580495 254140213 363593297 537104333 191590587 464373140 22346325 279131304 850852925 759549813 399077266 845459187 992582824 140180317 996623708 959000947 509936217 412503202 846226522 671636289 19047954 391255236 663976623 760750645 898146143 542652223 90474067 840194326 991694790 777156078 896438838 673496492 974124851 832275548 766626569 559522350 252383132 774895534 476937620 864506996 688527108 8178375 569327468 331407885 291167816 290240521 173646895 852589688 94921140 523795341 664382904 716063825 45388085 569247617 67959567 360906311 372462850 333323518 963418023 231899146 674390690 210510686 648447705 115101919 828461644 200496506 208174755 958632634 926723337 269987991 903382205 388480132 896115757 621430146 424810210 203735920 67699294 453149114 53393423 57908071 586914062 864980886 126356099 442275299 878885886 906430724 231582125 900301467 340239570 921494493 978193825 22524457 395915283 433862828 333700092 263305469 948437642 892938501 699901095 416834749 146175479 541101682 513574733 444336626 679541979 642440178 419615258 517705522 653123457 748563167 731340192 696893115 730399966 326352276 608267177 400555290 547434882 51485191 530881564 108066742 24775947 429633982 286617375 193809571 894031391 43763061 227754096 318998623 855524352 822895291 54808873 267425710 944390651 279947890 66465519 219222041 937323143 873462619 681615251 421063497 873672350 998092439 985023412 997128723 977709062 393574098 535830299 857254582 218460070 61706156 734801318 19642668 328002551 309710393 543489958 569719587 267254179 550232905 445555219 328376387 532598598 608406335 193865996 969901696 565086141 461230258 693792243 387829579 526926997 822117290 256527949 587530893 373008240 218656060 779586874 909380160 37533216 873127814 506071396 516353177 820573263 123896056 609262486 401828668 586250158 101883980 373528996 893824677 642183448 538570643 475174846 288530579 604943700 574319096 51531512 105217701 285239320 243160987 370940000 245027105 575696503 296917137 327454954 604824952 454237674 496430118 148146203 960252776 527657420 631262853 269932581 677145387 806938931 453501040 505478530 596192870 788054316 127753187 895770130 54456464 318186802 169551466 745489128 754359182 293973046 627421054 897444772 148006765 785855356 586295682 474877664 772272829 44081699 339120148 581114621 626737218 327265495 964610704 220834609 617020270 478670010 814248207 56734936 986259044 609061488 919728333 892453055 780693396 755960938 928421889 196479945 360875465 445240776 60461050 250160900 135869627 801342124 107503189 890366909 490429202 785498815 202361328 219148335 937154363 655770388 585834814 314319838 606272064 64427086 378412341 582432272 763641777 151166446 965156202 814589622 521271715 724801474 272670485 787382253 832821770 549089001 443887220 217012342 663993475 669420045 757484236 85391489 876776913 691213195 371736088 484242389 530104524 73082887 227692490 390638057 295280851 749800172 172702200 238890321 925467830 218998067 684691403 774332532 785667529 835741166 544119481 555495938 489013391 817196639 964229075 743320973 899358454 19117009 259172880 808737514 645548585 751019530 145659474 932363404 167323172 84862064 91791790 674966891 357597454 7870788 492904640 573337770 139130635 937542160 21946058 398928288 155341702 368166973 122832096 260668572 144321982 112605422 770446048 213949369 812008460 339050935 47309567 312596133 959578987 75593461 457498732 406770421 644050491 977279099 641358578 815786749 534064146 210387347 133540677 919199648 626006653 651085348 861517727 505617390 595845253 292342590 820159891 996952881 400473224 156156009 107173502 310586778 134844529 142483194 877090849 216993623 5296157 932310360 20475022 636190882 992070043 206904276 479780781 436750517 958818035 413921493 17478172 477966054 735390816 362891444 760771071 564077005 40704692 20232395 365840419 15412836 88381256 86521138 250229104 317256180 357945240 619026240 386667736 845249188 475850440 214319616 964082651 203479550 53093068 760440612 854889596 878656387 887033478 258035510 758218959 360125970 480043290 33094910 727138329 626775398 801852649 708301225 249162010 737602655 916213590 71367771 371503145 690672911 496205197 362036465 494865809 541298812 940151587 357444805 587362419 598224959 367792920 925119335 127268111 787558623 430056857 681996150 853004090 630180819 19934082 2384278 609470977 11106342 878485012 91031984 210328497 921567558 376860991 168005288 70878755 285223540 650868143 7704725 402135703 433116204 728567384 796602262 507043065 696285111 848797283 953208336 759846156 805221828 783875550 595033992 964020238 588233058 320733370 758991489 6650852 704095036 224893103 410876157 717353682 151498425 792367615 867471760 381626269 515701176 65448563 731598416 28485789 660937016 35163423 29906233 39021538 708881276 766001774 568321382 693479370 412103228 920340025 357117985 271632319 733461612 430812625 525919307 349487076 400074547 362373930 871527484 259515337 213819210 441330868 896378141 981070100 221893833 830547728 180224664 544106250 243767894 407592011 80143664 34317470 692468612 390961323 158494719 720955494 423555966 822110182 529808815 528099191 751583928 349495140 721929348 825539426 46046290 683062395 866333925 839538539 604202843 933627989 249720426 967133117 477656116 857738824 930086252 128603122 30670598 440643395 598230836 640400338 553813356 255521721 329403254 598486661 122645133 334429737 769385768 420302672 833138691 459036238 409645982 320568820 488194113 998680032 359566066 73268680 629797789 463686017 975743495 325189680 524033827 203074320 725138986 629889212 969568100 338449692 990240261 294141955 282943044 923619920 773162819 714395182 85089302 965588453 217299053 92424223 701378217 411481590 92857263 901274670 109183159 970701463 94702734 603637217 233056790 181770497 849902318 799042909 325512041 938778337 434009349 766145249 750785149 356327667 447207467 610578474 444648233 658930036 659354354 483748347 50202403 237193344 276700330 992239251 612266926 898764450 314271497 757983694 421786894 275247069 902206169 193198392 747893130 461947896 324248021 433162889 635601467 226284114 554652803 880118305 871891537 922565224 733460813 697638760 55830142 43025267 766563037 295426625 832241741 577824815 513152401 893873717 477864193 751166287 14633876 601579536 213864876 38606304 643560622 953278496 964024291 948653041 955910529 406011564 68008143 525760387 304433235 737257973 370651015 875049592 815890371 817792637 470319468 228036843 742911761 453563398 752320926 726488229 978238220 5604806 938339780 693739666 243311444 930556268 439236188 747501093 139233882 995587899 525796574 735261470 799673920 770770044 843167065 388377019 575663088 726547866 867760961 161236260 682954960 459372911 996954050 814804195 141697150 531342683 704520988 504739363 618040222 196543106 363000724 832605637 715862778 306741599 181145352 159127241 107514970 695554284 605120046 731810826 381052909 145008251 266845267 355160249 117854772 7828409 502887147 219417195 512609697 754435912 217181647 355736074 855896532 989851790 824871642 218710056 122805371 524806179 790981732 731448643 717404061 481724198 710364403 550852656 718801437 450389661 386050454 178450802 401528633 237739486 279796878 24422243 86921535 766245429 278470399 507006114 282589253 160649458 807197693 35859697 967986913 534884249 871801378 43121718 520240692 47995070 619049016 487609876 591330597 35577044 789817037 998253371 993536926 402730112 18325564 130530784 802062423 609000430 601378818 507468644 77502709 976688516 74468747 160173353 198921260 553789396 744238464 71238961 596628835 796787505 874729245 935464185 670500252 229541214 904880171 616607204 687916214 476205955 735059908 583479765 240153237 123297378 559620093 452468379 75512721 333417468 247269155 183994066 177974075 212606235 939121997 21119733 470449563 424575979 460949723 701720984 791430631 411172641 227241388 906171689 730545015 118633112 987990518 628828934 185052048 773399698 273536015 996354260 767428758 153450944 698682792 370161986 521836766 240502172 721059260 845068417 65501515 462274859 329743037 326872631 761271480 629616531 725950218 81077824 651410077 966426976 819791939 643357724 916321741 682798835 868254884 112328796 270337926 997130644 69695854 595148178 849228359 293339722 481688002 840474178 874760685 534438774 790075354 446947699 541679196 133075036 475861318 919718151 937573686 271464944 404532404 664839151 479612074 220747452 205347623 836074070 926001849 446602457 168906525 80515659 546997551 913036855 102801200 130131798 300522621 815224440 198320666 182398485 813878934 629792364 108384641 668913154 227658530 556500231 922755720 73755262 283934639 350921642 80818426 622455536 545384429 208597024 968791634 784157927 834273922 897091141 421971606 730806374 133187530 38516514 590371974 941394944 765106262 171140919 828568156 959938549 461658658 88414821 97819198 416967920 946809169 542041528 562198422 189518843 652882383 556925693 366782023 919799244 330646411 738674675 874481940 438549267 693233366 392927985 703243023 530507827 661237161 279055106 286985690 16135141 32846584 390141760 870992700 786771437 48296780 688697255 473897954 108098662 767318298 723688464 994493701 950297085 289183727 702051329 335599446 719308002 386792898 337565202 890451409 756487787 477589198 875313165 505395145 973680123 211784102 877354058 207277921 318230572 575203165 578487729 935735198 60483186 268589148 926345662 17921244 916672589 21058949 958487444 112510915 918095823 930645270 619873145 596017016 647759866 769720 485201852 355795865 758681673 426171614 284895964 675783213 127000206 890872537 365033704 400423742 209049607 203756392 479211337 99737691 202009148 492394063 877421645 304662385 426937076 671099541 328529084 447402425 423530084 342989177 95488021 420670377 572812181 187391075 714337524 938311229 325324276 696016820 109707 797047378 531590488 450228546 516788492 852853815 771802448 117272164 355714295 989705148 484949916 768919857 101838890 530416472 77914197 759561847 418004161 170399474 92266403 178379681 126291140 182568362 197871254 853915700 995149684 7106572 745838992 901912888 326875788 175975861 956231903 752298321 775428001 823012829 255276991 163373102 705212646 602045022 44400121 956719607 102146178 589063264 850820725 868217036 606347480 254030140 163632035 582242799 47823571 176187668 569248063 879732322 59215383 89343230 808127393 49982939 51067357 477170488 164913783 445881744 828804948 431838550 196131357 772619091 872020664 464938350 107308670 771281366 376729893 365900158 344994729 104461392 304374923 331319141 192261200 481852858 526090032 545672590 314804834 618084066 306330910 271666372 469041444 373552888 151857054 198728252 733625649 262179134 601532082 305130343 942784005 207587355 786052166 827707406 911042426 72172429 513578927 959769072 993994724 268915937 988993547 197122885 801223970 772356922 643875456 872437895 835351276 958665219 240170475 831078578 986749377 567413928 43666128 317462585 476529555 580277936 84755364 776353203 780370225 474819470 670157376 653581655 313969868 53902910 424696191 634026362 157177215 128408075 775314151 21595482 920861546 325632901 876502568 936292109 442740815 392254687 603309183 903082537 711584645 581976881 287921061 273465156 955546185 959632603 287351693 856789423 188712532 578142286 380504117 3388686 987207259 226604774 904026451 688131368 811512448 463061347 783349484 698757324 687878196 148684892 28858356 833235705 798973204 181229929 604068634 960776188 53616695 478684480 648703126 694034244 204307869 368487144 834703368 55256062 255643086 991066115 126533496 475467082 25206926 268435024 893603484 763816171 825481936 396864836 98713717 91148005 155077694 806487467 317303334 877334738 377688571 13100144 362030010 205661801 727454614 934719517 650391711 76440376 721016325 603154806 755219352 867888142 815238294 28334195 757715113 299864724 923368597 704096037 340808493 118798676 927876088 933198375 409021386 372551530 987701320 71117591 116986291 730146686 700097655 241550603 827078429 586553033 186719419 585832031 828355325 213353525 962123993 538781773 274168622 392606098 147379037 56036654 869060318 28514134 338177609 402760251 961807931 275533312 776314751 438089598 230589545 353964491 810836918 989033138 570439212 528190839 342394699 778307903 732368264 615864415 429945679 688970075 754811646 374154222 990707582 93090978 883314477 231834922 58490848 971766337 22961786 266299185 729306886 2116287 723957845 332485430 787238263 579472636 969298461 706566489 744662537 265966422 986355244 334149418 197168304 86930332 652737911 144507898 547194917 5329256 571799948 769333166 69441102 52804687 603840894 945811128 341219210 55115834 490308198 282656901 641165982 812613688 255144992 557870423 929249462 769226275 735823246 729067054 876600906 639071139 287530986 758257079 294192722 350611446 722836293 155629381 17288925 168822359 899144482 647482671 664700867 167417689 937923071 548644431 303006022 253023828 338551654 884405075 873568133 615903373 529950268 247780463 156876247 635944301 972779344 875227879 476207442 89347282 62374393 580375910 372569196 43110078 30735396 558569965 424394492 264292240 266546000 208153449 235408914 347644504 492584582 885531570 569167503 440634529 711122663 653834716 861391871 738220518 494242755 987723174 710200252 310737590 84504282 782807672 959738841 999452940 956917201 256742313 975003479 667826198 638006590 74578299 697262297 360960528 437895077 405576180 268358246 194599955 978657363 416727765 44517551 569599410 245207708 605923512 424380602 676504379 831700963 631975539 208332945 422977585 452721916 386845291 549687997 194476352 244034545 171061316 206385997 546947440 171533350 107895466 819349385 911866557 677445645 446232325 342245562 323007938 261955688 606788805 32450516 967086990 218175912 685970802 492671116 703836312 187254707 398199055 32879001 279515561 88652888 500906735 336385523 777465460 636330995 786160547 441785316 246478887 313543635 925591111 476227944 235523394 531926438 173062755 133489389 681828037 22320835 644747339 725464204 491342565 469239614 38962253 633168193 255138476 327456238 555165853 783822525 607555908 386741248 534203496 775030884 69637894 434143921 689821439 725674939 604985385 81473638 840165964 453938766 687032187 999195662 711613114 595347258 611828974 239177516 308926371 472104467 879457599 465995122 342536570 481741948 366470125 306765234 587786688 922168490 525675358 517484371 284492617 763330624 423692748 509788060 514405111 794445873 363660635 964767742 477514911 424700440 250878029 78431128 892906613 608130998 580593251 899581478 177787101 325553136 444461006 32003807 312364223 176461790 256121220 79915493 979728773 386588871 629170800 825229838 211287386 844034255 957916515 784880722 810731306 423567515 753221177 199784676 106276562 273430856 696718244 671145432 778789149 4994565 294082490 58578257 474214289 503045525 387389593 524829246 86562873 861306575 896446300 314159240 228047007 698243780 371013311 394287217 391282852 640556821 385912722 894401391 355572373 658927957 660225803 715279259 289547165 698520120 686012313 598412843 958932637 421878951 521873411 914453825 694253618 2296769 545418044 198186760 687221695 726478274 317989837 546526904 135376549 692907501 542590260 712401484 182255109 405403247 134932035 576138103 297072691 502021934 674188145 933099586 406593247 620870656 976457920 231332658 62017877 872245157 571375867 588277727 542672706 458944629 304572757 586712594 156760773 265100453 16982999 994787429 724305980 286123849 286851434 48489844 449169725 653880271 612817702 828258493 229328922 702518017 478755439 963783151 304079052 67090039 860310681 931153134 922147062 495190726 655802494 114309473 272190095 351324131 35087650 879115518 19058706 797843157 590883566 517495092 183896287 392721853 682610923 730352772 661948289 785871573 596064278 159349860 641013826 142569676 707380162 989311515 864397298 904114422 941979430 781117872 480982803 791003284 161029096 710092433 620943632 378791901 504890770 231979326 569010406 84493276 270384573 480800077 550475471 464296666 225292183 865976831 696888069 76140186 825752332 484317277 317499434 86244276 462876638 207702809 617621873 844177047 317796779 786530664 792902567 327536909 410143108 512162136 842662400 869126562 301887766 730274364 246939998 229200158 445413316 858952091 556561000 387659250 357031457 615253297 9315497 741066779 754792528 643333516 32905689 791687582 606166848 47149754 533351893 138092869 759829280 97334437 5298757 521090224 196041375 171154386 804936026 226939055 205702102 941826211 352789999 304620517 263079346 607727418 200323839 336963034 248698524 686985147 430701732 983545362 113957187 271952409 36018584 463777849 774716063 644244225 921395268 722082638 948949480 779179105 625492842 84898292 819408904 8961811 527945587 218683629 628802742 675657908 206336805 338569355 273701419 929273387 96710886 694129772 81848280 374143473 313665861 267433713 230049294 135999588 672688996 169896714 796347071 330215943 941114875 251027480 672816952 266607664 856756103 270550862 688080892 172629996 766165890 192998575 72312637 765000249 711106269 211559792 999091527 714627614 794526824 773741044 451718756 262849646 919995216 894914943 616205220 223717275 145267548 538062941 867997852 240007216 507522812 165190466 149618697 826682345 194482973 683939026 269999754 834419507 938045211 851039779 571462625 245908129 699544860 495879079 596658925 666648239 184324652 811236422 50882061 588344553 440193687 699199058 59786393 48115923 782610078 969970774 450698624 495116196 671789777 438967738 612616953 172789321 243669316 971754585 285590602 350728927 496912495 169899453 322575780 947145835 59128750 107832852 74027485 653310827 812486653 661229774 475186126 271982658 141104613 41279510 342484424 834948544 306495382 137613570 721566410 290699556 799440374 195883792 402269975 930298520 259907343 298015667 503965672 694396202 662489524 427857586 378213269 235658426 470925754 467256476 532095345 101023273 119215898 705747306 675727780 776453808 646819050 475974098 693807703 244038778 593585569 538976132 561462886 726167775 257314759 892294972 715828851 911097620 410999325 870654070 551839619 79242995 905494177 642501161 222949556 377643597 480494260 549012859 860078295 113289560 341117941 184721765 633622784 510054351 669594514 933162350 917316678 812291978 388742310 395474423 300132121 765150165 787609088 945272884 633656674 201298039 344678544 27890578 329179151 268424634 330370350 866797205 499447495 93460949 623038723 361490958 686498819 703507773 89158525 875307768 10180454 339063599 812698642 426767113 84528496 251461366 266359190 157449775 892711642 475158969 170104294 477252179 496024884 500284151 601284924 547616431 920308201 747913685 623481224 548179040 660692708 312946265 870894828 794594196 683419944 359081287 897559743 851075829 181729592 842805756 761857277 130533923 835157385 50831899 780701593 915497836 815098355 482080184 171063173 762930702 11533763 70708101 220279259 355489021 257292072 623077806 482558102 997952478 235688818 867710429 739242305 905151951 130802073 513278151 595355732 722005898 147783119 58972890 505377628 55829355 199048796 871196838 407487431 768177990 342109243 78767337 106036700 713724877 89790230 932378852 456288772 928423821 194648460 117230790 684516439 208651895 155945857 830677128 381788618 491775749 846166021 942259001 127664664 635034331 251514400 688516383 933197091 877835519 978130014 516794366 713188465 674489631 620371771 694756747 626474871 918074929 693814299 930240664 214210763 238758050 275661339 558340001 533250864 565524089 819544178 334779354 442708090 137595433 682512242 811914193 656603007 995558934 442984539 395661786 730733789 590775008 276434627 10259934 258998927 969608368 343827700 385989287 641202678 74953417 244296806 500136805 329214756 724413190 681786664 823896641 653169800 400771645 306639347 395470325 869747005 281152825 589479278 867973643 794798406 254973178 413818916 466925773 753945099 256946689 357363244 558157991 885771945 985492512 732863830 243847631 801005009 861740417 760606602 960101005 296546374 686029102 996311207 226877722 130592811 342242626 353584445 822603612 706677751 672350939 627561055 584022612 203681192 871662741 430473203 938246566 174674149 190654155 907628752 804597382 674332444 404166211 613731889 69477119 564957082 838516459 234601888 497902247 908182221 522461848 538196251 642233119 620618701 379258111 917844588 486981055 426012601 750491377 506989502 689715118 252334841 756218773 437292157 810113130 640083866 303893312 197322856 336852470 887383813 995217557 850844436 388482932 244790530 366458854 189122543 933403479 478919959 335645430 846975870 165048101 140852782 125992614 638541787 352243430 849541567 880400538 966334696 552230646 171263404 952490581 614346748 654004985 869523709 825963066 524956607 217390297 143233887 124842573 744688570 741237876 832312073 147612038 495184003 230063836 96914613 432729995 996570193 538400935 38389030 448891587 347077946 396627185 63637176 135134971 346500865 278135534 269682792 966762370 868928505 197579377 410783144 187847274 483820030 704859795 740571629 582535470 911165677 927061984 139570312 47610519 385193296 548843619 7763576 908612235 705141391 528208928 500892909 311631968 58517227 350411429 482480616 420338240 274048010 934079281 932701167 662723124 672563345 765996560 120856467 742466776 565999868 56493814 905219813 252773762 956641487 530616398 413259377 6559269 550030575 883745252 262152600 559661076 748505729 331902181 638553418 731288066 47229788 208400404 357301186 287182798 591555521 528803323 801701123 939657714 25612440 774780414 390986546 807325122 300551698 132444311 46757050 784699183 601091674 231236418 129926198 438655290 983917528 38750139 70087636 131184150 27260855 600748815 797029017 995026088 135337995 564567431 221151568 906443703 124814313 818876008 651076160 820937694 785289492 512583287 538941160 593113248 471785937 426003399 80368177 217587812 875857073 695293113 692117851 115038925 23018109 489564950 300390990 578014233 693340132 854581802 29697196 744140173 114094322 211972783 267092202 339040393 193108335 834999363 629689252 346311614 498812681 85348922 399617475 905048013 430879149 668757509 330529833 938595788 67453304 210913675 798397764 998708886 300069519 660876775 154206885 419049025 531091755 219942138 48161523 756732634 452878352 689376311 399407553 170843084 770836514 770573084 565857705 121108374 155343710 179389356 682788671 233271363 85046549 424047882 636747725 47280808 307682605 407303095 356583233 162269740 551668024 532945551 568115506 599767987 622498218 261466242 573490820 359493441 108451640 317745261 861760464 195170170 405585208 1417849 946330333 877792726 657151743 685858562 465312700 509850834 463397413 578739799 268988949 747016829 751577637 936328626 334982381 643162360 995156186 383726872 616191428 557140377 257005867 485629913 293707271 571818530 832920450 543182673 478480234 823420340 884232921 975468019 452467021 626172476 681704381 580062080 828094156 717317898 728703053 750215453 204044493 817763537 351330073 706152561 850042439 752120032 451974754 889814845 107690224 528022353 309298049 884230000 994956952 860825314 841984785 49309433 676552266 160361582 865334113 665028644 149763092 198105795 578949580 84297188 507563763 773373419 954234159 721181731 810117870 590911333 630376156 144626077 976525512 910007557 300116722 99677136 423572997 648181585 526209867 645789817 768110424 48696270 599306685 482357067 917895720 264854561 191369960 792295529 536525457 684965822 211456778 761813571 17794544 674725314 995804664 55642474 995766293 530336989 363804449 340063440 533490472 915902271 46662222 799870781 460948357 470134137 97601625 849531637 526061055 295189069 816518250 898985827 544671212 743828453 105608537 787301164 59974834 864838177 939503850 611711700 328239349 374264455 435878201 808971247 416754772 296674430 389816732 627436242 314444371 780385566 757472931 322268446 55945434 834768845 981621870 717030996 429945047 38355824 697505738 177114093 701231968 932474222 151714270 729652829 679011216 350891230 697157608 691908398 606712135 923050945 400442446 741091794 301604541 485491077 509021889 368147320 4791305 5929263 386204747 314714062 836210491 115351124 56398161 130420317 798205375 527544609 891486324 559409315 771529253 637267917 455152786 581636020 417672826 427253645 254213116 566244631 574426750 956014737 612301223 752127504 289926573 752643646 219783742 692369932 404678925 976561359 788421866 296853042 732345208 256005905 310218097 59475229 501878140 846946620 850775838 572688456 780358444 143165185 783685568 299681786 724899770 21418385 812648094 966672136 107510694 795096629 128843342 954965374 120057388 468402011 970865405 377514809 781494134 785966236 705735465 350224311 623455919 951206185 610655445 815141 237781157 313815892 501294307 613751634 900914921 606466805 197250255 595799132 601632139 857348175 877930442 705831558 812282652 838927670 186107521 274957824 769174795 777066682 819618254 565350692 377056185 753613900 251875776 740642171 705882411 220932610 254929991 191182198 935730442 749879029 59856934 332823608 411204302 75747239 383156980 887734742 537545912 431466108 991806014 359413833 113916822 434924404 438401517 408879977 116282285 209607057 796586574 212256643 588567053 830358864 304737124 368089845 968457359 748359622 857602791 909077572 3176974 485612172 196925359 229899930 168177915 669114743 88938317 257352812 235634251 564009476 208000577 943418179 447488406 638052219 770034589 585542587 842570512 56187928 950312074 833774208 285361723 479489756 329855191 602934765 154127166 330408524 210120350 964431635 956703757 447242762 882621461 15987177 582033619 933249071 685998701 349295239 470540414 967282627 560729796 570426594 366492270 199333893 874242486 34296471 383309638 844330205 777499917 449141345 327669869 918341946 387692421 345095945 985839150 51147278 175700462 523612743 683119839 213000174 715028681 279956976 930589190 831025748 128779121 934908616 385112057 594286772 60741206 99834819 349976989 995573054 117442943 10636695 851377546 45270247 462780207 691607668 846823291 599761993 566346 714401444 131484768 685418563 41774190 432357335 680041716 823054486 210598476 776594466 950742094 954001664 242223847 280008439 145358359 781240856 987869351 773365535 340226159 740435666 434927029 183927597 107580482 62115986 29375883 839525140 254408938 134397727 332548477 889482438 393119172 724394498 958233428 693546442 347806609 405772626 972739518 429512598 32303544 114527360 926478959 16673530 65984608 828902840 751669681 479330099 585573987 2614229 969177936 409429716 139517653 966832554 271682883 208071200 48358725 391326389 573203281 217561619 995972330 713584111 841328148 939308592 861097727 325197064 181329308 436999842 364976063 480199853 772290987 341273348 969377722 51399546 118490678 368802788 26031615 140259662 596929853 287236845 187988273 556920329 389791583 757286452 287800701 853141943 720910964 463459237 832078368 693171231 483791578 674222381 785963673 433578282 782637587 536637830 139673077 929687150 89145718 6463829 783591377 28699214 572154581 994007147 799095339 42330266 138369286 330466173 100117759 973069656 759139256 211564654 374316024 379751155 885797428 116715557 959275707 569105334 810155592 225817595 725015743 866914956 822436382 879606554 480159473 390938911 192119340 937851262 386348469 293863144 313132886 720102503 614126906 303678225 322053400 804369486 537126118 520640859 771739914 449389270 878029832 568586188 524827970 342815528 788638786 900192845 767832457 695563152 703757227 161792683 107558608 627115757 913685079 859638670 588855933 124751216 990334046 114384471 803348538 741297102 225439146 992195144 429830726 124054229 461319890 860735276 7858605 826415513 341192747 611431907 836719072 301011915 486956367 347175423 88863025 591016047 801807271 847029090 298218476 334696413 804333088 41567757 349408991 846047109 392184220 464786403 257961417 654373183 887213187 734096555 71556281 391745557 121527663 120495699 396367391 598244351 288037036 458170401 878519257 446631126 698990535 601599919 324754690 400403019 622447807 559515140 746637369 548002401 315147776 556083514 800926908 71275693 869466647 497933385 969386291 611408707 211789131 892425555 69165451 69737379 339128131 316351412 899698921 452007314 558424294 688622311 905104854 66531488 826860002 906825161 244196075 794653240 753893555 808221858 139781707 70490603 344273593 264168564 902624065 119441141 869436972 209075151 817594471 751662105 348199486 952561827 186874043 419609378 744031014 35761889 544885655 489119938 741201224 715946874 46809752 47064367 265324953 549399796 546625606 114809725 10869630 256389901 544198054 481880472 462432585 878023053 640331734 17950737 275689449 224551218 261825771 618738209 206054799 319658985 513750104 802592369 91506757 188486217 289223641 507149733 124519908 865320439 954924545 588649148 125009155 146952898 936804009 557377921 499475820 302835193 799265054 305981566 585652963 771647530 576783255 353468386 930537689 675828306 81767338 948351235 897676763 884187551 766003461 255913226 504446666 933258491 733015562 752391515 601585427 596024541 787701406 561557067 364589555 107657653 800496989 539519348 544253374 172803300 382097123 341980345 958350552 359510427 774189923 309399963 723414112 294821433 375240022 597049191 953608166 822751801 990214084 441028661 839133255 996486190 669912099 392503330 803552595 410081605 317639878 967443313 680212723 289436669 281863375 962073810 338514297 353204834 341046421 761775766 62954933 429154528 160387502 744790238 872137639 797776238 61370238 834857816 70444761 67639004 12324805 907655986 440357225 501501333 764484186 892918570 922540016 103634705 137302768 465812030 137398177 618328081 117756754 162348960 25149118 581131817 503652124 673796658 5567679 344453995 529635011 562180334 906083381 717247316 350899259 626275207 83776918 268526013 786425064 13531681 398114456 825322749 16571531 935433901 96980986 691574662 65055588 879931473 525559075 684340428 310374649 68165124 821127605 900361308 996181433 77321844 919035796 418046842 506322537 983575344 657058846 923869391 209748912 582879495 123405949 483067662 550761021 826332508 208352071 379092971 94504002 556455035 949825314 522114896 42336636 324815883 349690696 3336472 777954705 585448068 748542496 107238171 606254609 839289852 977883199 812329293 901116982 73467457 10210463 917152090 964151828 681524930 722805622 269273902 869584100 530053706 152446885 119832621 690031162 653420978 282996751 982308636 147642208 920493878 262615157 159495508 526427777 549325009 648346804 611850710 245499452 748453497 229666335 585574705 469948978 990036877 110233120 817919683 929950827 405574765 885521898 436454170 77323772 123789272 344371020 93859387 822981517 59565022 784958093 46367814 398191633 625656999 713462197 439565144 32755866 515761151 622592383 109557956 50528436 433710997 343905941 632669332 981771967 874069499 15873056 786079883 881804122 713925176 718955222 936293231 366746051 546064044 980102554 349492886 386606429 740193560 653806068 6363112 475396671 938506686 67204826 474651103 315092340 539269681 500877768 746043102 384044238 712990040 505942994 647511968 589660024 20693890 214813652 465192303 30581809 411583544 480240057 989728331 31552719 184189873 294407677 165360509 659014497 201087961 139211338 846184735 46018067 918698759 371048544 436024815 647724003 644139381 155927595 605296868 948671955 777254940 902508608 937207057 977703428 890098154 1254882 297495825 344958601 609309336 167658397 745310958 8075921 803863551 110183522 54182122 319784157 247361638 28154864 213976195 204382929 647496150 270614812 380462638 390787457 242339400 637828507 324162220 402535063 234678378 75232740 153501069 886244180 451340156 835717833 393268327 96307658 604051109 246749278 876723146 757113944 549194837 412894641 908393743 659683947 312598416 402480762 168447589 208344343 375036382 596179918 172734319 646445432 20279248 824324492 81915864 142496284 762215386 998431616 822212299 929184536 671979992 212625179 125090022 537089697 318375680 162074938 922097050 409336468 768821570 868736621 972984868 272282468 449376856 390013571 292198839 714065100 920626774 167607976 857843531 777839518 236217633 175552227 549771418 759732274 70259570 951393797 964994531 37679444 1768062 890237386 605954724 785018660 254258458 673567017 116358001 958842608 649382311 914801720 980088267 517112002 853860348 518988187 751511223 425889137 659176123 511066887 774536196 69829448 113720263 636407413 474317400 463656237 932011560 935155225 969506258 408996894 884645930 146671299 297618035 815477191 564171267 570749688 21403201 376006392 669497366 529318031 265929142 924400668 352475847 600750427 280943133 38794243 339385944 476897990 700201455 766004167 661582139 56444854 407876053 829886612 138459784 520873235 860874531 719491357 827536752 166360910 102249384 413065804 423620550 46209442 186795891 511518129 178143874 457219346 956691923 105914496 501041343 596693039 318963831 908556891 574522550 342802712 397346127 793180991 594674699 741082376 327534614 671257439 202402627 647575341 935139307 752605629 72935050 965469075 240550386 793583042 993842429 468892610 658327588 113023688 978576178 611900938 741869069 992608854 56422863 425740277 253781738 803426299 60759351 571294658 646188123 428232397 28901819 359523842 909153910 669798341 495502433 246469846 300485007 740183947 34218057 404910616 503507156 394734061 336585502 270167473 432137032 76898167 225274439 582547616 882651478 944857383 635782446 463834572 497076806 950039484 981606890 300879288 84279196 369020931 264420187 251867382 525544087 58070787 310349911 830795127 691111680 276526121 476656453 574164926 815172866 991138852 741349571 870932214 51500085 633309920 537245715 630857534 706139848 330630807 434127061 145972482 379663626 224315247 710124138 807413479 35366923 361667319 552571872 990694192 280084929 104953510 845765324 687418974 399020052 27436598 568963451 525334654 447919384 394955528 279439399 419899700 434279954 427066391 195875546 714485399 202562766 154059039 337905064 175071498 1823227 160310121 888152406 191307468 996850199 594828680 140552728 555090184 480712821 389973876 355373285 779628908 287048486 564677230 947021761 890601810 413327315 772068197 635247612 81090783 496319317 625286703 596963801 41336265 210318489 976282353 721862127 824259117 753613775 277959993 599687655 28309688 164940361 727673236 321771487 195395239 883260170 491537987 883697862 839906069 558600134 725918759 665901838 379030022 245099980 684035580 264500338 395752850 173357429 19395457 662664308 896163160 729312913 220080357 933433178 693595814 227456013 306821482 21703569 421995689 693952978 531352715 22278493 824704825 13408228 86032671 83022123 517988178 688230505 678832782 573339653 760690754 564998515 898443159 84088160 847522913 554274662 875052899 837951076 18007426 741030162 111304298 886994628 267954870 77015431 214857954 343621831 71149196 274604905 510284497 144355719 306825615 722688975 531212631 984329510 171297935 823703001 471357263 7956815 326357302 534316737 307736999 634154132 19308451 563515104 323324982 264341613 669864403 588838424 542578994 788226956 31955981 7095938 362439557 73922291 114528576 84230249 791643518 494063804 67706769 576724899 799710963 650346040 747249503 548722762 353270640 195344738 153225802 100769464 941423508 20901400 102720500 21963016 677098198 23974724 684305421 552402187 490663317 547160009 760041639 20095975 570134287 328520204 587240579 308423640 613039563 357000930 463285300 384269382 673336718 278144500 220748313 140898777 780890195 912104492 86516798 178616518 392129132 615086218 955764995 410820915 620758073 720668389 506634382 777175000 865194380 560716691 852123441 293892322 456811836 555809307 937309260 249968774 367504483 729567227 396058835 644916234 735291319 620730275 53223867 912535787 444625311 944128684 188045871 20184613 308383176 37678231 625584897 266038682 566709189 273165854 259908267 248586641 100669501 432812123 448852011 942445138 119889434 247858655 692140928 258328128 973933203 538482169 881739867 690694126 116015384 55248461 287082159 219023091 573986789 170920947 772830004 89436153 219960670 172729235 114153472 200234613 575470387 818031230 74505774 955462793 288497414 79552886 601913463 533581131 304821312 598552558 373394206 918831317 227160241 474583439 793230322 491601416 427423845 53953854 48654079 540479140 584867648 411364862 475209874 275100360 811694755 624001482 15782855 369974100 880680043 845291586 619382800 391884858 122689518 110444294 62775662 977832369 428285675 560998040 154704260 568457727 407917015 750380226 960403313 300710937 645601844 553109824 780788073 290234587 244762925 509908513 547151936 198725230 45946354 248289037 548616589 734701403 415106201 784995782 568976405 308640192 704045079 983410740 349678945 401861548 799066810 972189952 169414010 529191938 100290811 136739699 240044814 184281750 789887553 343407776 70399506 866739673 998329673 619420624 246457920 898374482 984773424 922076496 533763296 684319793 394844708 648256471 83557551 332700247 137495860 454275380 831900016 386855554 18760196 776926131 846130894 443493028 404235788 201011651 155315500 620156517 412909181 985156599 562499810 980979532 122148969 334833975 542196092 623850897 878104125 702666896 460954108 337458623 454957453 259101678 195569587 299002491 195148180 942534389 2358357 533900398 940908738 584034528 328259161 608670709 468875858 310021564 200102667 949985279 662945595 794851771 198777661 680393180 903067354 310150741 982836998 45363956 486975051 898878342 153285690 437883059 672162025 714836750 648147718 865318242 491101293 300590646 307044859 901982076 46222372 524719600 746993464 632693525 55373549 108532800 417722676 712944533 733730279 81177204 467519836 553098277 370969146 844086968 194524519 996766154 413779481 778080162 240662477 865766989 660522684 354072715 823401837 449680478 42638667 814214304 824236735 995467448 351061594 1363578 864499932 115518048 331223467 256632989 565986614 237587910 460563041 17827328 983657098 474146477 446715692 326325579 670244182 565936099 751000495 990592824 625228080 644275908 843998895 583835667 294649761 561414261 17289960 11543234 19029180 903549006 582157382 658998256 547966413 107630360 631615934 743336594 158542567 611453597 174867522 721762771 876201593 987580110 104585360 529283089 410263671 44180034 861765666 163781026 194433461 888565114 266455546 646566236 822700491 863877016 111445216 474461234 593248880 700214895 735600917 506999514 392256767 490356179 69593570 424378338 894099685 436972122 669915742 453963746 510528987 933152224 417100252 334053963 625145522 305568061 264106651 818787650 804314509 904389426 78407420 217794232 61328518 824618751 713362250 406652851 704639726 780206754 104382308 525883095 655040339 333822560 451349716 338274766 801154307 822175808 947667866 515657140 299698199 300328553 547947303 483315566 405120255 808559397 456294492 952654914 107907996 76290883 320416354 942456741 973052327 537642656 563517798 642161706 617507675 638350819 840027922 516595032 411234437 638435242 413256082 54225725 683450894 437428503 169300486 620091704 565578939 437173559 121596145 640781753 5825024 939618587 86521622 681277841 425155238 22585724 460262398 710940910 922166591 502441441 80587336 837859285 428389084 601355502 718453548 426411646 183932434 856875910 974441161 620969172 839137651 933287936 100595464 730057334 459592174 772332388 893645538 64835407 856170390 135856833 111817955 367534239 669661873 517350465 457607774 705926499 887837763 210412849 500439012 819365992 178441961 567338549 77406476 300840594 483850452 52584999 800482448 130699370 717910423 853230980 754880877 294449347 983476786 434526630 107855313 503045709 393094669 144150242 746854261 603704965 382408223 165835240 24549826 219188302 187767684 513525055 478965772 277331416 313315777 37313877 961062735 446421108 434310652 744305587 167214428 434887904 31791218 341004007 565983349 805764454 605262699 11982041 849715185 103310466 253440626 21934988 270589114 253278072 984068944 893435712 221376726 601087903 123610665 152941108 749175711 964106753 781966378 889969520 489675936 718195518 413276100 985867743 614321243 976542797 588545397 336499998 144413821 742705840 617066052 352260415 593107915 381342913 815993395 407302271 607917483 838537403 298684451 244469612 381836535 891707489 665731589 723965473 215100629 26091009 217696600 795194460 532005106 333463202 423583644 216409675 825297190 740776253 366328094 925198395 188851334 922572529 690148334 228596435 284379358 712784176 316904436 115680892 188377896 580548796 42386799 383465241 107302223 453092595 83890657 872939607 770575350 869146084 29591594 632738928 23885321 719595266 829635773 193981802 37836176 147860501 831722922 202901713 901684723 128706472 195981980 314383955 339774383 850979274 216146443 767302593 165936153 275094554 506919647 724417702 349111614 452890419 293619396 427507077 651139046 106414546 552545164 673678380 81247889 490077036 752019651 779389104 388512625 505111848 993321829 881475709 552476913 176594041 244144482 833802392 484972652 633159722 293962061 566827736 916490429 525160695 156055758 566549616 650941537 603883677 812176133 739259726 432711450 811733455 946857445 613686519 413922252 590036856 139767304 240162890 166601654 491273634 68853607 843775556 388978118 91379988 365101258 639666368 517695107 350694961 457067558 516014016 265840139 913032455 206057417 284708974 278778144 110615478 990069298 2467304 922306525 239928698 755433219 672697212 861380225 26642382 724179815 93072 378000496 987372593 642346554 491778580 408736948 765012624 427951380 590739144 297135432 729537851 365360380 973421315 901266746 329605330 269303642 42270930 564600178 253224583 798688637 136634586 696979144 487096134 219286864 198600244 211619339 958061988 11508796 978668189 129499181 824793743 607630679 425679434 205186194 19705025 627430445 825805184 220662999 174625047 395787115 336830407 858416345 442269032 586809349 568328891 967494338 561025604 248793838 911152494 532258152 401408147 705084274 697944452 345647296 509646956 726732331 996205845 596272838 990203296 648909602 503129335 322239935 738758028 89770387 952403990 144683254 831013241 983609579 272313574 223929702 64336243 290565971 2595792 951038644 205093856 554441572 751915705 251810138 36844095 280407235 851666856 907344349 691345233 169752154 835437608 202224212 961651916 744809247 293754467 491333794 185111810 97845993 81324901 638823583 367490652 806207644 476882388 201957607 474941315 845755700 127610331 265990427 971678671 827925939 313444878 297735234 338634568 663051095 692211812 164541483 422573984 702392410 511072151 736567403 762397151 940057819 759499509 159711631 189291741 82777416 957041756 847574340 767186793 929168751 335085132 271589311 754817932 660307288 310293635 247583149 519609851 888867617 721785127 575525221 337352017 236136413 906621188 863590109 348579550 549630089 185447959 540199473 284665123 755734798 94954508 464754108 508093100 940149821 883591144 74654825 797792770 888365134 608433631 114506283 696104723 446218788 562449844 740436460 788004538 225046067 958143702 371533764 15329838 170334490 304496388 699339042 646279510 78854526 111726486 470938725 117878200 568503552 765556731 454758012 747036013 616677789 219935229 488757312 757901866 851220856 574528868 483660289 666307237 209296864 310575614 304519297 286830408 283859559 919877947 163576408 807419572 168431770 897609550 685152348 815601327 568099358 973738355 97881326 631238161 648452823 978045393 241058717 497453522 690232226 230633923 538467120 932735271 431295907 289446566 56643343 858453658 658912761 738308374 23524496 432306446 657457061 702243931 865345104 437303848 635540529 46200764 566820220 698775858 879989072 907559172 790570586 273467884 965466948 873148507 432153852 661459092 883650652 176964171 225723701 997174733 105007330 957249216 777960259 199328066 882210287 61758705 956525545 123953356 372212023 774871721 602863923 887655562 219881768 294264700 643073981 582258959 18514036 695454793 336613541 382101967 697900684 782612962 650082126 778794983 149146610 537274868 481719183 929170278 377680799 854010360 613355950 561806886 429219049 497847827 684543076 417805407 620591940 228498182 671977357 481240095 918429392 220170524 597530291 260236919 501876640 597066850 905555181 119705352 674673216 827045299 799797015 70800580 891414469 715172085 60917879 283814112 137123605 392228255 325153649 471780015 163665796 850332103 488327274 286916550 709588693 861492631 184148228 666148663 217609790 729736825 758301646 580319661 834889129 761350536 94645151 578902769 376838787 832392480 649279777 443813071 529376110 259202512 294080279 734899398 873041869 557748222 553309513 29936496 599407217 335514654 581288597 419633111 584897915 371812360 513419311 432766635 5900482 180930029 933471113 493479547 472035329 486013944 958075572 975480995 348080133 878583628 905583793 151925239 484694394 753935656 422038809 72324199 895852274 168781090 352300602 830623269 913390427 610761374 33526507 476384783 602897666 807034971 720381444 481759333 403061962 154494969 588104062 427707488 385258798 613796831 238823621 924368635 665346194 700383103 130819420 83883898 697594518 578671983 169817384 2295457 239598985 439940100 927144773 536484834 738964218 131302203 706477736 293486662 305246436 180805529 32113904 924025535 135546358 749280104 123345355 186126783 804199056 383674378 744765783 483283354 801965065 146798836 934339742 486096413 865449775 644443659 723912192 131479174 512449704 851479176 422663930 197615474 863927661 673485479 771670190 243330348 412934890 576614372 310562680 780021409 713052074 489372757 44867162 431776631 495748655 566282544 244080797 632933827 793465244 382654297 857587633 521137572 990384549 212108552 136744903 281930111 328923582 118549666 52816455 593375067 976227572 754281160 539409028 152534862 624868246 125191633 546331417 662134553 392012678 188780371 742031834 951831580 408140360 857781265 684186325 925831116 919002563 669018917 220645194 393074792 163199708 283361902 713410843 663819435 358620738 504572189 613407701 545066411 927831305 247573451 732324041 286399556 414264757 52923709 774401343 275884479 18851903 991704326 407520869 743407443 848134954 981384378 383336257 702870019 793967261 517917562 815078792 911602823 184666114 764446805 903877953 871259433 753049733 625315317 451753745 743065768 184097333 371875664 422430335 281611402 738314642 990379219 331007675 669922258 94832696 14262545 190700470 294022651 965011852 236894708 507016957 177768134 112967473 171749556 253408030 237098485 472928113 293694321 341808205 445378549 770071292 681846670 254738404 966473401 322279030 923413850 484136998 991409410 568975749 430183623 939787005 903904685 460833300 287719200 894263818 571256565 45623940 11750969 569473262 855935927 819165916 59855181 480888540 244137360 573924867 613391470 627483530 24602997 115804296 669057479 471223259 96763597 799089985 557604285 87413462 72511352 273738073 328402326 101414436 137045648 550888749 781975734 115745971 153527317 50562218 385918736 617997744 447806113 746533919 253137596 983610154 675067650 349331580 768684029 160122922 133234962 873821213 883346287 78186332 687875615 925516477 966023999 25958326 546089531 520765734 833783784 689319401 88949635 868848193 235757112 578450562 294597580 594771029 874174109 790859286 874162820 700938812 734150546 904072767 945902581 639520874 48462912 980582426 226335359 976079431 20300719 667548894 710909628 461077512 143417439 410737877 716978103 717310283 752219728 443419608 114801970 473218651 937115329 574922619 96911215 92872311 336952196 911464592 848090847 943646777 437964754 792449365 143790684 113896200 191380971 342157148 40365945 84190594 322826057 288059144 330139564 359386650 288481843 86888508 149390550 170082244 26704199 743158558 375654648 988367540 471657480 663062710 119830295 144748640 224760803 116579393 82775795 722304063 19836440 168536078 226330147 559189131 172390394 395956911 773478043 669730623 287265242 83139724 270477137 797943167 144079217 416064839 805380652 712212919 416527516 3738606 371447512 58832858 318537861 976186144 466678851 329785008 643341026 724737221 803800280 318870238 543179816 961125048 854207297 843042546 592242785 136454851 700841435 945066630 610523799 770733049 562110122 341041518 417865805 607675317 801463043 620952839 505832475 944084611 580656150 552955533 839269065 825263565 853111451 812521572 783822817 423087345 610650593 480211194 25101200 478581809 926957956 111643715 214408851 684356713 319112259 32527365 116023354 912109371 244811820 41691425 97411246 733363325 458746125 892513651 838477104 985028897 929824511 501489371 355835682 46154454 732247760 731213647 891019390 20177547 965714439 823237015 673432882 547008103 713422904 116205902 449181163 122953552 927082850 596657060 740731823 718055463 158187035 317299161 215504529 471634606 407357428 529377471 347130617 831369891 103441459 608828479 401821704 238656155 143996691 762906271 189559741 627569884 497416538 73202023 139553841 544794566 192298674 614128457 221462866 521068244 780041011 307628905 205366752 516790772 143329380 203587588 463448291 588063528 505494745 132421809 414709350 919798647 794965409 848868197 846769338 549685372 453696590 342337060 473759190 720389368 846789759 73546290 284363752 806432822 606439723 392296744 443088126 179646887 983233842 735018729 77114463 266924641 533464971 568334391 710348497 678103978 540029102 786987117 730868389 218877889 280101549 566053981 870873774 246838584 458860657 463997385 105908892 652296857 783145174 16153399 809332183 637560890 2517679 536725265 778776723 509961287 865059596 615728680 913738560 17483480 980828186 667689370 191857744 328938397 330950597 709422164 873674434 266886312 495215623 395264588 43606132 904120677 173491537 854365066 353297765 439915786 736010171 343574797 33232968 483667277 337991975 96747858 940269661 86521014 726397132 291420688 252413696 196591577 74401922 640881018 588687894 272277472 33411758 878848766 967497941 124656931 163408418 980509453 354047169 241557419 341703013 783217085 633436309 38371901 21066808 680431421 443398193 347947249 406705500 445052143 623111052 415301393 664907445 716882031 451926133 247720771 708940880 674215348 70175568 761555647 617604048 57327220 587878275 827628974 807673040 143111729 669370771 114956945 469080874 372264918 409081159 374017887 940368528 216145136 688178603 107793974 670078651 786431002 726495747 559531954 365688339 821047045 398729354 561817517 172559119 533731262 840528438 348493604 994280511 461947501 371510148 237857702 130834919 485835413 715864258 163770739 549477927 452140302 226924419 25119444 748697066 696101551 790195823 34757556 577772648 911931716 241742658 742446452 980275649 394806073 648290517 643517747 80417941 607814841 240934239 766335082 905770901 55930904 100118308 974403058 676123621 188667139 550050257 367859536 594934549 473901026 651882227 150028414 934257828 15484350 773134829 274366198 227813141 900859885 668219228 428075383 957360629 605852504 396591557 783624837 835967844 425018800 276176776 223018717 789255577 369459219 438783303 383834115 311097695 32910144 493215784 233012205 648980856 466690930 872553308 424733778 587882073 57033516 745169041 351680032 976863353 690754711 212607299 204848483 223738908 191930323 70075009 472405151 982988880 473618209 642740662 497099585 695046010 700575123 460851414 381459805 298258887 980082752 771689062 795556083 617393534 47536669 965130909 829342618 36991490 173458747 49945772 314838517 880089890 348601224 515575 606553233 208207199 216633433 369831552 714988658 408475888 732870202 444619449 266726822 746342979 542684683 375513098 173788038 594340855 372427355 999577462 749019176 457925148 959477646 414163454 241539986 803108078 730272289 339804616 344663916 950431042 72850678 247590655 632251922 420562026 964088077 263321095 780706222 239721223 509239428 867670043 534786452 501768709 385060329 728297330 553983659 603759804 93374998 360124270 701044857 981890850 124814143 78499110 666179927 79631985 999688538 587926824 788460252 403497082 655276635 97562322 998733840 351996489 323524306 213652308 930396583 409500708 481201505 892717889 577115069 741918554 662502140 629810178 585123022 269388943 833924301 149780105 647840288 891658861 308904293 292980633 675785229 915002787 970484976 866180285 283375430 503057272 469114478 916667946 51130706 286615915 152751976 25409072 44271296 783357007 836521874 210929947 337445488 780707390 947259599 66563447 611725770 592995341 313841672 727700205 448133750 388417169 439337085 495130046 752554281 199725571 913656043 238629704 618393220 228036540 196600389 457050725 235923331 236143211 620409424 497554916 198488785 895245587 424962303 978749519 586547505 269795711 468740687 473364622 684906788 86830948 519942997 130480540 137385755 502940485 478226659 384743692 196653708 626399844 348322185 954466542 700840508 848995127 786360486 662621869 170106095 772581125 974523181 725991687 738521304 314074019 358335059 11908418 977889066 487946052 954111166 237087128 164151092 816303287 563439516 464845490 621254068 179054551 655071681 500923864 237309563 397642902 408561333 62067772 979053864 369004997 38840233 347523376 305280481 875599039 817842288 598427484 546753332 971110399 132749733 11059892 720138708 968971456 224789480 472453373 681642477 191552961 639823105 861972994 104400628 939634694 33355992 543344580 78591337 927408963 20402992 576104470 550964187 754486721 438571121 623199133 104474402 717981762 799297432 976018549 953735868 153987707 800551376 47031099 8972636 999570328 232751570 747841995 337319636 333037020 702904494 800720591 175106516 217380494 427357683 187788701 982216014 509319094 322912089 465575523 964851633 524639355 490632661 952142865 977526894 81780073 354711284 7791758 643421968 946427205 754987415 717646205 87415769 170766126 650939933 938093310 51092673 609812657 476469626 240480169 962928667 791355364 729606865 535212170 374711365 400257147 128389830 469332315 668389910 497903581 683890916 182891374 183502306 493368492 746753863 886954 61603962 936574345 409914439 63429167 695364659 861643009 491112257 241078810 229931212 207675931 793231310 228045212 336500787 943672410 173721667 205379759 555659918 8208286 280731677 516822491 608619090 217073638 311111676 998925705 848318539 844961348 508517679 198113136 653992835 822494558 191305281 186891842 452927666 569355902 42451850 472070711 866783011 521149205 632508948 23190121 417917192 966402997 565324263 667812883 127861934 526065373 561023693 756951484 365388835 613945309 972512722 681910806 441866858 990094406 669025409 749352061 578057888 739377571 519762524 794586371 690232846 43654130 280018728 85928168 823969769 635502563 174311750 720016579 741214077 192219044 736613178 550234475 985662231 660754457 231610154 299676356 891474368 936899405 643617775 928273660 503272846 406226517 897759984 458820235 469408021 776764785 275714228 99014503 511346404 6371442 918964545 624616811 385558697 866701516 879281854 353641140 446913638 151166015 26500782 164955456 416025471 76300290 526691993 128914490 925490163 945712457 784616346 923586073 625086558 213615436 551007502 623869970 811376193 926157123 344983473 818962106 388243776 674838946 423442619 385574721 958046693 114733627 841310620 158085164 23960744 896732340 998340341 337058160 298627413 486180037 483976517 171088955 655520338 262592511 183017471 312500033 264341193 615141298 463156892 116070535 961352463 277174855 410042848 791019442 436413974 458811633 58144494 893945740 606639467 986070258 276993366 193642812 124162830 941483236 897135465 611190029 117524567 946216440 552252835 297339474 321823138 345475393 916250625 675614951 989517800 450644834 993383868 27310481 738401108 357753172 594379185 498781375 763721411 359742772 601014032 112138836 553861292 715841404 916537012 857101390 869325648 436504819 804248995 533022813 324522582 158011543 486410017 41329081 271140997 211444075 226156480 371851379 15988578 276052520 539783917 917821754 993403307 375525616 320670750 336228652 181504656 769190465 613170173 999146435 660614442 678136212 404196300 960641915 826440283 33936973 753929561 321242484 831469263 155476769 272326550 924461023 572099531 766746368 890409051 336099641 306074353 68611170 45959178 542670309 981225880 848699035 293493651 839734794 709441497 201090214 388922828 845751035 173477033 169488436 162921427 846919408 145081801 418466056 595964108 100308437 31816188 964177895 212845450 800169779 87592968 988067841 201784285 71259476 426251013 357135908 188955857 172447885 578761297 65086239 282624999 202546264 109377922 190430522 406759242 93355248 244208710 916959870 756605579 542224032 676214271 695816055 501712655 140645926 421599257 353144473 848884360 621001487 205368006 785075416 487245068 964105310 47377239 790239718 430429892 780175426 388008718 459102051 717654497 379077155 483251043 953419880 595758285 278806103 20337557 881516016 286156179 471668853 970866439 711561917 493008757 137512696 133460633 725568306 400423522 837114234 818533684 675711701 9545628 210863909 24451308 126972252 139456073 887379059 249593692 876360614 240272590 36625787 590318804 34739587 246375397 259419765 733139166 871568954 216979179 11049576 815818325 690007520 755492001 520061486 370510797 509366653 755000283 211660970 933523820 125900223 846226894 399358478 106197302 411832496 293699222 503307025 74829114 420435383 914714764 113861110 523643570 192649053 554173552 472420478 819864223 745350681 946302653 275181722 635977390 468848409 196275498 206925594 95255949 951884782 931329635 304722351 304131897 352619526 343028110 690029272 614153442 79517347 720317123 551001948 349410289 361166925 980191507 362219041 921956937 734290676 972924413 54208182 322522843 278353660 747019386 931196860 205180764 596749606 212471179 999023690 776215643 503176686 849127169 990837451 987440168 491565722 149323912 601325087 532228248 325479366 419178576 248592879 483359956 283472719 364452138 695991341 473052483 584572016 937756856 718532627 601008158 281549485 968154934 918360078 869970476 88961101 579802238 404439722 848670498 417094952 626963613 184480812 408901422 209578706 408591748 381557058 409098498 87016547 348967881 250521272 224121909 468032861 975153516 694201886 316950483 375871055 134721824 596899416 944682177 214651524 744814155 109940300 604514453 131665139 358426097 638234499 687175086 127620227 776634918 803610858 931134284 89774072 885396136 36442889 342882404 643995227 291286148 184082850 696895721 114993902 143507044 294544650 253974939 477429620 63737396 496330279 990148298 54134308 592525038 848188990 46854405 903871510 864996703 7716104 27552261 991524299 986067457 946841482 489294150 535397511 54832116 917118106 870018994 15289748 623466136 642361809 858333270 976598487 114483682 799517558 427728229 700117107 234198069 95445571 920399517 50315843 274290310 586750874 250238887 504706996 595020191 692905929 334303435 364441111 484653337 250963280 976706654 839754889 863154840 77273154 590314011 766887009 711458909 69781046 797632417 150341792 124012386 142067572 168264726 921510718 510652530 923754680 290374820 212140703 882993917 180606276 296296891 471719602 101317187 318019907 95055095 863073179 996016530 319535764 546108893 785134508 439119349 548903968 533613517 636181159 610654781 479871090 182400724 131598962 479581488 204172490 95938247 877297574 195683227 380681886 661980438 651997277 819112429 244697444 192984884 984772590 611821933 322478989 452699249 667354664 293442306 812284648 573406607 138145584 682714447 372689441 52926331 121009832 121717337 725792741 878098463 236161216 235993962 166167949 136827273 709922366 191570690 313439343 876603950 780119208 283643603 499957423 866849512 657451290 827062074 316728142 908166411 936770350 432091228 483053632 507182873 241556417 623600272 875372365 267920307 210197172 718690695 673487818 561571686 534909080 191958044 834112444 664577885 880633485 241754191 727946615 739106273 182403103 570545068 193761880 280478817 122977322 94173429 228104484 369317653 805452155 730430693 685328563 896587812 431616948 673282079 284002236 234966867 321377634 197545517 852888760 126998265 895170134 574867647 346963537 794430928 718425455 780268864 592355201 561759317 357932592 300891584 621924308 508831110 233926515 878040283 786231175 668411679 967783730 740509445 802421294 995294805 117516188 671595512 122437782 445757594 987204797 906576203 907982672 519457967 156171067 814100749 350102839 190883515 236179144 783906081 342103472 834659313 144298015 972540917 431830396 97755773 273124258 339008714 998635178 616069765 157252465 43686720 31547322 587509 416913130 307026936 533439648 564080245 900789113 166250994 291738299 525719410 613756364 577730863 22789750 319135705 641137313 517120140 274852749 20961079 363541264 537429588 593199876 465027252 188910411 292569686 417385358 447264688 632329371 858194967 258600867 144049740 424900305 326938640 762343377 961826419 361883838 988595333 637810018 673041527 885186607 886500653 725746331 681525726 300582659 213595 106467213 474091237 869447761 443945542 249215877 822751700 13860778 50643705 754247213 57498309 951359240 322142271 285188672 983569365 317137094 835713464 646459494 481609562 109411673 308388612 14647798 806515446 380351957 503288080 922605353 770272442 735068769 365158109 769899412 317032246 631868049 750876966 643935602 644133406 351552954 552495022 109792632 735425980 670830736 391428588 430113670 693469633 243418284 404901822 969915900 528929294 60691166 222729477 30712275 638922982 768391270 542803540 944778513 549747392 3844128 908474115 882702036 786915772 755519904 164703714 186520106 38901207 424020703 530860769 630693054 675389598 781286906 688506320 910308875 411507349 765962225 549619639 131313789 165871050 475407915 788035849 831647236 184148689 647295103 500978467 66360162 638132805 253384739 357878617 587691566 44335305 736362171 273602599 863782099 209502714 492469265 948741173 430515652 893907496 598956556 726162995 890500025 136258519 740615854 331747637 295108343 876935769 701323788 195075229 311284005 310195044 935472567 688402347 863033642 761421528 159917534 889053470 521529829 991925268 786953422 25392578 469498609 946178318 987134393 357008409 571030728 728867512 547476746 321908936 656268674 947292223 208947346 143547443 883076522 233594725 487288068 769867446 941343419 418245831 448733152 736633061 770553397 202830499 78038280 372623870 29298927 408868745 809259110 236992625 325953102 527436647 164220989 274178414 20605972 778656610 975048144 222149553 486763922 376118623 587608214 756820180 309045335 342210807 297211815 307065005 26958862 590376079 520305244 80620891 976266135 765047101 737386761 428962921 931923439 248402358 624092766 767587439 823786692 531083413 984973037 731932544 446362005 399832085 921758536 944989292 768084049 830405074 813479596 44281594 351812213 229781145 891140954 967194640 930637032 94730043 875235677 701867513 589779577 642586630 596088126 374735319 702783183 912826661 953579877 252646643 499129492 434439116 557946935 828840583 246249312 694891495 11640253 1010485 746572755 755190938 233600580 837682236 347706858 987724298 275835701 689277696 296529705 183553321 754647546 117789555 833951608 475206193 487279572 915513495 921848778 845944460 402414348 636299812 625177129 443458268 487545171 200935560 896647609 228234873 509915506 338380377 253832129 897563128 965706426 167581264 143472048 695367191 428392608 443057966 89554593 715274538 833440003 495555448 656571161 77316528 496715178 935565881 395839252 168380343 839728998 460099437 714765886 922715670 852859572 948347230 530898490 725775591 772264718 167677955 22348778 127757377 410168054 995780505 341338244 798326528 406155876 796512477 188733767 195310265 466300665 829523946 446013641 272441037 305677794 32066658 859629849 324700541 727618669 875652498 569895094 94844463 90493741 218477217 188404803 424200179 789312014 526766552 604385709 917124373 943236554 589186653 526921476 901838131 648837336 67458470 689349955 300068926 742210510 729113130 757282577 440135587 472458102 699911396 522219626 19511364 716836559 72684477 349612112 318641961 978904064 258244057 253951315 12650430 194003520 484524770 346598998 168810100 992898803 753602804 937237595 836392168 298669304 72280010 62645851 456439495 526687239 871990192 345511443 158780106 372393879 19064890 140980855 894000286 421641170 930847813 123034364 37464588 503891562 969437894 740483626 967906627 296717956 800507947 473228564 807786386 687902630 823148868 777493708 251921804 908774156 625141172 600031754 267342288 303813583 968728191 291456497 668130771 307453654 989667288 446518871 340105486 40171175 537623439 206486142 143056416 939549227 86763530 501504608 951868166 23831148 200454461 661971966 829850797 755646186 890388472 177391443 529946236 220434333 166539175 839154186 933060773 879180328 837200005 801985680 110451137 864944572 892949665 618406429 301137170 277796588 440191768 654793624 951188259 718446534 716665098 155326622 291343096 34453128 658894031 86407778 781104148 36181730 981458327 853382424 891998392 587678919 456930758 512884625 899955910 665136619 912297152 748945846 840248575 178114778 36740396 821087046 383442334 392186292 679808058 72651700 965571804 859944170 945517850 865692048 850702475 279357385 680701616 444430861 303024551 734275520 224086527 600512073 171108362 25473739 468645315 223314868 595128858 970861075 130276311 722754418 551543054 729568628 813375241 335675672 980282203 203875296 918188447 359175353 98917245 418807357 948783882 778673007 610932386 160487570 139508366 232148257 13373433 103658406 150606510 640858619 136705407 195262241 839995637 602679046 59834010 43035365 917374364 86247331 394083629 866293246 112609244 60448845 256968921 235175057 359684852 222863316 828246591 52291655 317671932 689817012 588308398 554638832 195605783 613297069 167232649 498925766 750865573 825833475 592366747 208761388 90767576 785856470 649980064 856436813 154566682 963563842 77113570 202006276 563965202 650805214 415661757 325132742 182132599 35021823 644940131 735504121 595670660 226771486 147373969 671241061 110510942 821989047 200862794 511340670 257280380 816644141 481993772 115690093 568100361 793695556 114159777 866943417 403562278 700265637 965264379 59852152 424269401 304450699 458062532 208412435 18008164 214982390 928311655 572899791 788165830 841067267 553976620 729785146 473022446 333887445 461484649 999597534 460057582 884320256 465546506 91109133 157411373 607395392 72538584 772670257 474158394 562450375 391469028 387972363 740707452 562373910 293994212 946355609 80075257 885400173 726304264 861727776 40232028 38438522 254887949 101066409 75666758 39531049 693898333 824469976 944218450 298941452 589320575 958412368 756186065 695624878 406373168 658821788 486277771 885473155 774005051 90377470 906873758 665721360 604624136 229146843 192109198 841453678 701701691 497045240 572050728 952917701 656587284 504510520 833558946 789034569 643752003 976800086 981283892 958812467 913975881 453046883 181019774 77742681 145011387 285100670 915518521 992356746 575658385 465891992 449916214 793923028 876172883 295856909 787156011 105734658 366155702 518032832 576434652 632297662 380063635 663286647 737355946 604902636 802476390 777765299 618031640 690671241 770388089 101741294 362624469 155771321 504970674 213800174 998489614 985713430 512714670 827104538 115768776 842577783 813912366 192366631 558830767 848372435 455314070 46151517 770970689 457912296 71100364 159493468 329497732 546719156 258162996 732069016 901273340 451549955 455380991 687269419 628476228 275780365 680256870 873865583 525412063 476331144 821144394 397931427 439244574 377446334 581016564 216740556 297808880 135065475 299049549 554338541 510731188 120598862 954225231 465155660 417880576 23975014 988086379 546403777 477095437 504985631 893214153 361424596 70711570 825380774 133985222 231282824 966632776 110205815 400677980 19424235 892041422 566013361 605719043 351570016 81286814 852745936 240039188 120585254 493157915 462152544 522676109 693461168 740965001 410304612 596157386 282747283 918551027 169449812 428155538 895883810 575824401 74789464 842628536 566209978 90685105 189260200 161326194 869242542 741625829 343219287 244709367 37537794 564515695 709303965 628651320 11705508 463930020 973751849 801269494 384187680 518827344 209222910 514427604 746355747 148111163 939242747 721905366 251132203 163638114 142262060 384410136 257836238 522801717 761444035 910129542 528803235 617115658 283613283 54028208 956347203 848890225 877677700 386588415 103756931 664607960 536172241 801347464 222657774 870796727 306145526 715882739 543731738 824471454 707736035 51790900 316306359 990802567 673630660 695211542 749550735 439421841 640123538 570333089 137096493 878113293 352201584 649800609 95921865 89711816 515412993 256545798 908593403 660462781 872520403 320325973 734663866 270717986 970891295 735096690 243618521 982499602 342378564 14979510 785617072 289751515 946023994 931140196 688398726 697302586 867557037 759270172 828404731 697501971 729523697 518615998 857650590 226586652 170945505 450058658 208729207 175189551 508624861 758326510 769012218 27090031 574790454 742477158 312148378 464861941 278362448 169782442 267199036 331970391 599944177 620294736 583262036 489718387 49778774 857408518 129808432 938812801 1863701 440886553 27364705 376184239 454788806 314164688 766262299 34234816 518436115 702057536 453685266 512190627 9481446 840541448 128957129 784014775 836624746 910518008 850678587 983040572 38886930 33128324 625293513 931557054 209211752 357725518 53866435 379794033 358571402 929562856 25800267 597559586 282903270 832108077 144162500 751133536 151059149 102904735 314532181 448371539 640123710 443824410 265285258 714070048 34547522 430737455 787763633 212944490 519766216 154296941 824995545 211815095 913308351 41760353 699624084 516579127 154955398 706222445 310667649 399738289 439732927 109172409 705996590 894793531 432790687 565955061 7206585 388958609 837533162 130671535 506121674 54384502 864935529 268644944 398405951 975820033 961899295 107520674 744263398 565112094 571241573 822721332 849656437 667275345 499350068 751032412 788392287 933946423 107331344 658892842 40454826 580704898 17205637 626181969 487360574 375089827 648910833 916121810 404035645 67988853 357010840 267305166 673747791 848818199 87579800 405645180 239576210 956547104 795976366 647043405 337517 507280105 655560521 444024142 568969170 118146506 504801373 782654394 430934536 666613583 250008750 448307433 895825781 458846116 249351577 835021268 155768615 633740535 29963725 624138260 894907700 452340221 92537605 480972205 28373709 536805714 321695075 960039562 445564492 385282833 778312708 957377031 788096127 771601702 228123701 96678013 366452353 462032799 540732487 439037554 697546733 140876377 615884880 939897280 208446980 912599649 282789676 304210796 785492838 15741884 214427955 356914578 317835542 580565883 335701681 306277134 213197426 773668326 708248537 350997015 194565903 528233693 863982507 783316760 32510895 439321460 77775607 501829821 931791408 461385934 530301234 701207403 370210581 130011364 638420221 697978811 480276311 485716749 596176531 813895315 9931312 619801726 162317820 3984751 617483596 794598844 300151513 684044774 695560154 823244604 9768651 925615738 494450931 795778387 880822823 581617094 216144410 287344909 308037413 779653862 182561071 735669408 257561302 24754212 844546765 349173576 174296048 294941381 342722445 889479328 227882616 557615881 477763544 149678159 614199929 975671602 98441914 270463927 904469411 764359686 417738938 570452389 614738317 564518357 832942591 231370787 243454494 493238838 428400680 633984894 439405277 377922303 569990883 195811795 919430344 777270909 62459051 723650090 949528126 670504304 922924961 341668242 838073150 364385026 526719875 18435200 859233080 133764768 321685642 923668931 65987115 758100738 534630975 585293415 586878716 268974552 224207128 461307681 557817983 53295990 672907949 822036624 253903416 642838941 437528031 808059637 69518262 307605504 805465686 438496773 472863815 848784357 331852681 68858354 949475024 991289065 250429217 459608765 219142588 366415573 270639547 272670337 795867595 95691095 588450927 297460837 607564156 880659466 446634635 223991666 395310412 395321967 332277868 686899219 465958553 156154264 783208492 2330692 173402032 289551478 295694562 777200744 501222297 323575169 505980248 998366012 479340525 988346259 640822921 389937311 416469641 986843124 338763987 56408327 873536886 983691284 173351208 98762133 648849393 82151706 8213996 213742260 191418533 188249533 323391252 43709615 261140356 771203713 923826990 508197160 970973450 870418489 14882183 714573944 276505176 775244324 53540663 742346537 652630202 647353026 865107989 481308626 203530532 98763065 149712181 322484236 48683006 42903762 304126145 803659151 509686154 625811548 559989844 409809435 97798801 948382322 914893190 577185059 65040388 913527248 735593030 592052875 356839902 253043713 345881993 974898202 147810609 414307785 904482210 683005102 325704688 563121018 408381039 594929947 94540268 63656986 433240798 127246770 219474917 295589075 760833136 283693021 564003609 627043644 696716249 805524644 851937400 930171649 910160902 877856810 124723556 616194644 545864213 700103215 600796471 894606695 214599852 530114575 660430475 13238269 286993119 768385980 86230524 123230815 656573478 218063675 547986763 788651156 330284375 306778747 634511705 296191884 227430760 713375647 36750097 618143420 20042081 539771783 240317510 20901166 457296698 624814724 516622826 289989946 86510629 642531405 296126863 235046545 766417342 36421349 293354541 129207108 595764197 840002278 106376718 994951772 289793623 811524709 962051657 501186583 404568396 900685987 485382326 692399262 113502844 427017700 681690183 10493818 958473725 798111273 185184593 786005792 166832224 470585295 469643202 53008167 429868670 792284833 479800592 360949766 220383150 158719008 225611089 275692732 153709997 53626365 104270352 214238124 273016979 908048297 795436684 422678411 943129380 696482698 4477859 892490631 907612118 336016666 721788582 814086902 215597187 917737372 34551301 351683583 734105046 949580906 545222398 116986563 326228889 288762809 776332570 570170971 3573179 383043987 921866167 276364914 435509972 104360189 987358764 523598433 722112828 568162928 52178522 413398648 91587400 701542205 819686562 420476182 673025568 644328081 266492524 161420366 256356461 342687373 171686143 505221247 550058045 722506752 977320980 9690974 864133182 858992831 1725966 544735359 957997108 497912707 618517247 402033451 725119769 61136846 54167192 207414098 559842498 187293974 50114538 774189055 859277444 221753526 922256867 187657260 825207459 969144829 442473167 548122396 564364147 708422343 158433144 170420709 829142184 66355587 187762441 82257621 331711358 493756831 778491993 857802135 668748716 782987020 953255164 880796154 343188924 83881453 979631459 800203367 679790133 140588359 334408976 786618832 633794627 672096529 337244388 476146912 581852694 505815035 922350771 437455772 976790245 677279735 261908707 357233620 433973225 72356040 661700985 349967030 776701212 335391222 329893311 891567614 243633162 817876166 725552165 433416480 759637730 832131718 559726873 743347236 521717412 484354196 449510663 717047507 445932788 716239902 748039678 667629341 338764679 404808185 807516571 763507998 779115830 104926488 794940049 648178233 411251102 926679187 242986787 155343311 463825087 579292269 204599117 630739530 912501910 726455343 761506780 710895849 221110791 596943044 741432766 146680823 684831595 965923665 858145995 969226972 17900514 534556666 219956020 11537559 148615012 505933072 313490537 192945397 669797628 671983606 723298066 132613023 283131919 560899254 977399226 865692495 810804992 483885825 770175590 984096553 251368090 461027685 334681422 930842281 78484218 510864948 620721829 229359465 843781959 753990120 95598300 58332138 919368777 289604383 11576255 738902034 111709761 819914567 405127937 866975527 616719254 547663000 493116715 189920546 366822106 877259012 361788506 821905743 355185622 883110571 715495999 931660831 689734721 882359052 407833858 43676132 683588475 23446563 667729179 500503677 689350887 368835344 799095638 564861748 709023849 866082990 664378280 523824095 572811401 616193390 884220690 952398016 815042802 181187436 324011251 20438877 940537660 617612290 238105649 922139583 577395973 38616525 764898848 483291298 31154803 506690437 451648004 492477279 669809522 396676958 850657275 33178008 989133463 348428718 404325197 674787856 886281587 548690756 247570076 644566456 985525244 908009895 341239947 431344160 668430354 266826496 506587147 238738956 400128612 897569208 832733167 296244688 642368983 321039067 114519845 521514548 161352442 276524044 437960999 201132763 342920430 406099066 781363824 287654050 742627950 507363110 999273910 75185417 285247291 250031557 340843663 764933067 363847228 16277379 387901417 217029642 522323336 848099505 399507675 845133408 942936868 348341316 571760912 986125602 583157373 390942551 703323402 933159207 948370790 458033976 683220486 644391034 9551707 707686356 812759447 253053762 370562200 687416776 169424349 457490922 437625366 219509493 336991391 418071598 123294628 664675854 379230849 338074143 830962957 441660299 257412852 550759189 901625756 965643781 59867946 270569385 705618178 143512220 808679779 761935527 15711473 92711854 981662537 736333380 131924943 388564018 608218714 228197824 575261572 89073856 246529202 542474834 267848957 201375882 67292544 807608995 37852938 460106681 340193817 751097183 878460059 691225541 802935134 782078258 127088122 605827938 490356931 65055349 229951497 703837127 164182746 496435795 489787348 766881494 799706133 92319200 146179570 912293895 99348592 988638752 21134797 819089750 185858915 605072430 689256030 178404322 147462602 531725672 118534564 924056036 834647313 825607989 734016078 932147177 350893793 200987633 188810601 562184234 371341397 55347825 614315250 366306740 792929055 213522172 33787810 315763929 810150663 21017950 85017472 314585969 565760674 622989866 504711480 956641961 181301648 500464634 729852210 911633549 770699226 506776695 550518596 839868066 31462832 9564163 440020880 673841104 728241208 168351490 789872457 522128535 931716194 271666408 932564242 619985707 359743424 291330943 542874868 495702264 269017259 237569461 945685347 327734892 628581664 797660992 333723686 113097768 49977818 16223411 508930026 329180705 593254688 764440094 116576520 474134715 898827504 938972430 570150073 276080682 860890688 231173003 433641132 157955638 81922276 788908580 906517440 206197111 857957784 819031164 783047204 766960258 364229616 213465716 425705590 170913968 300870396 312513170 694693367 625307761 837510841 288077147 556250172 867774035 247840126 766810885 419217474 377712657 318409639 750491106 781272302 82861538 975210346 187128955 516097084 834395171 942677633 105649713 838687193 997198657 920314160 43266288 380245865 102912067 796683415 589993506 807400097 701355088 849483306 504568691 759036290 75414869 545221324 996339538 217266989 39480140 887171889 558634208 66743501 297223598 92063780 860782122 554167216 638121397 70458887 493221904 556166768 738569743 875208766 598572170 811088691 16090678 320513176 27725710 842345274 904364879 240892033 145413904 247382251 782795085 421583180 107825109 399545723 289940493 493206587 313061940 752645251 124898332 322568991 108953832 58305725 447499828 848105588 790948847 740567346 838309533 131525653 362474859 428539098 986959536 439036638 424945378 574983214 801660291 84773660 202571086 598345026 385218141 359496373 242545540 13062883 513612270 589695936 671329626 300228904 724798068 385276284 749786123 807964364 300658219 710609179 322073415 170516179 269951102 796108036 325510839 905214863 584489772 167796385 252028540 820389441 424303492 616131932 574987968 537829657 14994292 22411324 858579357 748125406 429698130 350891676 146428301 336087243 733649271 482161942 73297685 167275825 36898692 593766714 183196356 375556231 4799854 81268536 656964780 54275648 687843004 626425427 673665831 947367802 275441924 591327409 913880126 149653950 822872896 244635917 66466765 679111501 846675878 533952466 815831388 290328746 865433096 278158248 267575469 324056648 701140398 755358205 471761303 483345734 285981492 733111753 895710935 742547803 211827570 378802529 686279707 137083698 762584006 428910406 270276817 663246404 238286837 557274367 401992478 33759583 822347324 453433344 475793990 242744416 914028354 918472073 445707946 608851318 198280518 850213225 348906133 38619306 80451715 843755744 504190417 73924388 793334153 599917311 856898493 861895622 621701122 295698913 292951733 350376859 161691038 729416837 895335537 766624264 411701810 425656935 554201020 149374609 931858704 384044308 186666295 629453017 903188896 138099323 998066557 820045573 863620045 72982329 730377680 629729485 167200559 670383311 259238698 993307337 556204758 179712782 955080259 952461243 603537307 379003103 632459794 137975126 319752384 491560106 652437228 77529259 217525424 794956084 209860791 632906940 115532375 837716772 853471257 227581563 173947837 859802832 571131182 47979567 295600395 229461656 347985480 494444835 398292378 775130668 330006269 879389433 981494771 330506533 261513481 388317174 290566933 459791190 163471715 399069771 942666703 373426603 410796454 190291211 823036059 350503273 80235837 398251314 28796979 699868668 621402610 775973765 595467260 534785146 534814865 154932744 830000921 174860719 540052196 422649021 456797977 628153149 261059642 775142119 416048633 807731797 865321549 99252784 816141557 684676660 107139666 365139699 495918912 815627659 774753220 478930447 909336655 932791426 989265844 723000635 602708122 970853908 448379374 699282791 500906040 706095308 855049112 430375544 285298099 721791500 499666574 916909946 448987419 645961138 618451514 986298158 690512176 934923797 390991454 511695487 91971175 333009206 641736059 379904637 695287614 668265810 908059473 718647507 630616237 711127428 405926214 50156398 652059040 630767908 446901741 498216832 148104426 756300912 41068357 930649864 381900709 30350146 871558335 185731134 183189497 756336455 933128092 931914502 267761251 151789574 162373232 619230396 458669760 559685411 474081733 935645078 761131385 727540964 839802226 342479487 53042167 852965641 503121064 706438426 502921101 78552282 612934197 875748284 621955384 629563781 2852400 890578794 128016105 370805169 339187760 305142015 394723224 797746070 559449726 543670822 478863949 890071718 227564205 394829351 443374056 503598359 685125804 464328537 181766633 136589093 815350129 748505647 112670969 704066283 859053516 691126101 620204730 795335125 608954509 628180010 830561488 933129373 435597303 618036545 136589984 46910604 861371874 135775799 177911958 172942361 777543025 60871087 936757932 359907363 573855314 897809269 739544500 572376055 243043099 395568388 61147925 780263098 936504408 996830083 542582396 828320468 569317122 285334144 384603958 485129174 905755258 14479619 319402554 980762993 986858307 685308715 655742486 102565155 199674341 133094073 197756266 230502502 186359271 272865567 661856968 685380760 249457872 319948787 243324855 999448268 402626305 914041718 647955125 970956850 787915782 236533414 55109644 159506661 711948338 416467986 997786314 546332580 645739779 489802573 560946997 938204001 645705205 953119594 376526295 327489127 758206913 457558290 135801885 42554203 663810128 207153466 586696241 266338956 261283687 301444211 355470213 32824424 980561754 97481508 44437729 159768444 675581861 220551296 211027363 553181888 491305614 113797879 875514588 14849131 496019381 551421962 880530820 699172706 46076812 251110452 459643327 79819046 227684487 32307599 764942649 809037934 989871443 821640747 830610218 188306606 266854894 132002188 814590346 109291175 289234898 471938099 302936415 317051156 232303405 837935379 961909298 860091981 5536350 288964009 485096410 266373265 81736828 807397693 371706510 907283241 857065788 107139805 387138729 304320914 869460677 390975728 231951626 868805779 307772898 199689046 242926137 914676309 872154169 754196416 656187937 221016922 937416430 450958320 725020532 988600269 654201640 205203987 544745525 98382073 114040610 94205464 69037066 857791214 82978601 653500617 968585287 448052978 984091722 814821063 905173610 907889834 958060585 52795707 15269404 946963583 967264215 60028397 279995188 742794827 242921670 695763680 813723560 149406598 69285589 906990455 290595234 833738180 960812924 539116390 479764664 463695306 893857488 526524764 236615375 189533398 189022051 491137558 20971025 361435522 396535366 528483967 551118862 586675889 442595368 914912118 144796467 331060826 847837360 556556667 574759104 338597800 722791423 87566671 555630931 346926020 528218535 676429058 470203145 594936635 304574799 529889253 316845897 387824232 458116466 288362039 780763400 652343853 227471286 387497692 395991026 940802546 615885506 977879564 168597633 756516038 200140451 386112656 269593591 546500425 100077921 898324136 54601560 961320477 501868076 164439028 963993401 833324621 907360058 929817461 374644781 174912186 332884072 851396517 875126899 428317833 9743209 646471103 84667174 771211479 31559642 167593456 87703398 883003065 3368881 49826093 463419478 46630701 547326292 495433670 17505655 111571804 266409688 898821925 42506370 242097372 744879672 580046884 832551721 774337885 800682538 176290859 744687725 111509234 742418022 910585905 673562195 186850173 477717438 955897176 295456423 817146854 230869816 459843351 925412021 792787438 259811870 807481835 245979900 885391956 902160892 227372776 620880725 970242378 153054072 931504724 465258511 470239667 349608165 206120435 901719891 202367829 78333413 182210543 81583133 13626496 477871700 534321883 989088492 682528763 898193742 186638766 632422001 996833835 666829611 137437872 625227633 337281339 781001117 663928891 147899188 632181544 695932400 940588165 673423490 917230832 882330346 23286279 86319688 28746252 387331104 488162650 262241051 701670754 688731125 997304123 407292392 660183023 351950440 577709463 52581300 187627930 994384 966119097 241001866 684242354 973850186 266451086 45862271 101117209 836230830 463317279 609026223 574880464 928371154 202280348 290308457 79271086 854056293 775750654 830640786 259688128 866048660 60058983 192557151 192614694 913860147 189820182 845980282 39958129 102768897 281778735 701634063 814984399 567781800 57349735 169402351 757480523 95043182 663595026 272469115 266767341 106937441 404897331 374388617 990040857 281222525 401335314 359804118 774276117 125735275 258137542 559561059 980737922 382621078 725829376 827170284 340287653 711845118 834981851 566161556 50521366 662452189 449506163 12905093 785705303 15276427 738608999 905375906 38226516 667727985 162262730 740257810 640844054 926978432 493683982 17434624 269767917 950852895 898994819 542128661 322460611 774481996 355547270 933958062 224681460 230987718 179675260 694869545 813894142 339266099 116066680 804524659 61884840 120797673 573763980 846798370 350312016 855078719 639329961 988339913 147778765 577275759 876611849 477252168 406186959 821053603 955351824 425144251 774810592 558386634 175318864 148150953 396291638 757442693 360355941 881052388 310970834 111502723 569030635 41095600 817602116 434866860 350706077 369710367 541961911 825588334 592883373 965301201 936197318 208092456 982191581 673610325 898513765 203052764 8693902 877342256 286847025 798443116 592032664 69800190 402564731 863359716 120097376 846734793 314412768 339665687 9271312 937789720 554445526 111261052 67064428 241991369 704235440 738789111 104869423 261643382 390867185 251308608 421943983 23593349 547302688 853666409 510075405 681710270 397989925 956473972 893095406 441218128 40608369 951952910 617314095 574564672 355638023 317813761 698588011 395398307 253837690 146516675 659657963 758463748 619952416 517322902 28506274 345397797 591492728 347385478 914609097 594617781 469429198 934702082 217011629 367124020 248171061 642069652 22409966 745702746 648583445 793908976 850861226 694489868 50716640 804675222 978883454 495102740 804840473 487389072 427573656 428315813 616048854 367508099 576838163 173332856 592439506 933865841 732869140 831786760 24401880 377725851 33106682 747101382 936996063 747723507 428084748 173201393 374890123 974332048 971435910 355690491 183961194 251143227 615924871 138519456 810040842 680325875 445079103 585927039 14674629 523201434 376763478 938368893 104201874 460861535 681213170 710005616 377140000 4142363 544649162 84679109 800812045 725900156 565926165 515600109 31247594 360136649 548903025 533613321 935360153 467348908 852030068 956650774 208738999 462784743 782693590 918327024 568701843 81762764 244146362 603291023 238668052 758867939 74700351 552155942 429809712 727464696 446721748 522348579 36195150 479255172 149791670 951525252 855560029 471161820 805867898 329031346 867930839 148245263 496171167 769821133 356892860 6637801 191430205 330723849 113559394 617918796 469286345 391677579 724171984 654779830 786859626 554305659 897492981 519609682 711515840 390178426 824385714 333415351 115099607 14898655 76092715 149554793 995344855 662656946 31786851 470517025 417163943 769078373 741129956 906587593 136085288 346177490 229962356 99792012 922175322 856228578 952355937 206185192 496268077 42093875 684238976 676673782 802185438 567862562 84087099 168778271 66736635 433159198 159067761 481480794 573777628 920694377 874281362 682559657 353092955 924129468 700698588 150369341 504445359 92840426 154156316 111855110 855558283 95393034 142851032 382760097 459553416 57879311 580156406 512359927 758376739 27748129 224203963 293300381 721730164 465958252 246748209 537482330 416181 530390306 267096855 4429778 682954610 717576635 296841260 695161602 801975896 652130631 183579629 193278797 77891255 567526866 661626985 552936024 846313690 425208652 592726175 556429909 961054952 289937325 330763407 202134229 933533466 111475328 248282130 192698953 463550632 958235663 63464116 768453359 741462434 706658248 350182676 829442944 519186624 88210893 45388247 412565184 458953518 440266598 939492533 787842204 842878545 957332244 194278837 303082916 797129254 501954421 347207006 611542342 208703036 664757318 699793025 34334688 310437128 397483755 714881929 113593749 284654738 550268727 16956594 328083170 671246838 631577665 868708735 459866236 703037109 648518256 720627932 371394540 82652021 749788330 625801948 208920042 530277326 795226113 214000426 279158826 838680730 417154711 285172279 632043273 97480437 50349585 202658425 944255060 738771209 410409099 342554560 155934423 667279677 940530813 587468493 858551071 184105543 273079135 300520208 209811660 356836760 181847781 369665735 987168522 282057770 627444123 267804555 905321966 171834872 899078982 460000095 831137419 668200161 378045933 994112461 64559676 128948598 423311623 23280505 214201007 793767948 474916607 957235241 871550562 523400920 337216168 529015354 543343043 961792444 807147588 40415124 572546938 958489571 732178809 293182739 111696174 124623203 398647956 609462562 806404270 197463591 230404761 966341005 319863409 812844100 196848104 717672442 513215892 640222533 251067745 728423988 557943450 583094053 937928760 414620739 938475735 377846337 61316328 859930655 504758095 352524262 685997815 599671201 812706123 46974926 946962081 236885544 408090245 65156929 207687526 409319854 131299329 996092795 913224835 707103330 331144244 731602695 311737495 400754161 384958813 499185488 525979646 361513266 36651024 652894597 453926593 448174891 557899923 979169022 862545395 295035050 118973010 746720175 529219668 424525767 588296303 658941638 316455153 24771720 927167523 19779968 501512779 516577058 344584231 439396029 202077987 460567114 682642591 6881547 18826611 998512158 359263734 781248636 856135596 31466815 630597699 706569623 664819309 399605470 26252947 878257836 587793261 809162183 672142759 456993632 734497100 572898249 43918182 836754556 210758627 659545178 44888696 924302511 582097873 776821253 993677330 245840571 956721267 592105199 617638673 935475153 363929720 583867763 198415722 718447946 283928250 184277942 935680646 643253613 77146833 79234830 332380761 803584141 931289155 266354744 143357117 747184806 684883445 829837158 224656104 139032738 510669047 221397040 783391870 85912179 507602387 719196392 727182253 748502749 353893707 769175276 499530509 675975987 960442666 679321420 260752454 610764706 57414047 928994674 30418971 905822309 379562359 693081850 732815407 146539191 156396043 185423404 892353878 384933344 175984444 215189604 75154419 137807468 689120136 419421312 714326548 29952854 242480698 307683174 280640126 592660105 781849310 388255250 520509798 104221493 792301887 938539548 445541451 731438984 778388254 417165791 159937358 493709605 915804265 212628046 817848283 731506051 703697157 608218062 847745367 510527690 929281946 765660075 783453741 262417316 212568179 702908218 10653366 995688686 672447293 981084942 409879144 825070908 926837160 850944484 115602037 154915551 655081145 581895913 245364198 681776172 524930200 852103065 913561842 845219255 850156168 771675758 852359956 133256370 579259798 963248726 691105115 92240483 668832066 477800290 998942201 158770114 292483090 907858730 216930433 712777323 563281253 791395627 264667571 34078545 926967477 675755451 656439445 291999526 785966123 78271854 839501588 268423864 777270766 958745846 387181824 846229253 704355751 141199567 359808916 421837064 898154201 565010656 699982043 616086764 357470431 728786442 991950084 86282311 402171387 865066842 285531226 199427506 303526105 176925500 273001530 684874435 467267243 62276703 5315440 97472091 165570075 964760675 463732387 498850062 327078064 673751857 301542553 421422345 976810087 529326431 598815921 947000927 242352338 924007841 641925714 496571941 957300704 714058134 30124541 800665564 124510872 23447439 636408781 311235271 870209838 528863813 364089346 279294591 587996312 10517153 542457176 52779702 549527720 627342651 497592654 342661098 950992167 345272787 27286036 70829547 97698533 287521059 408346519 504405109 495063189 710367667 956892622 35607738 982306596 689024150 41936949 623960955 929526915 917838663 444338866 553219679 502053033 501082655 308426200 931113842 245999727 714914699 315514307 975886324 542516345 220147010 18200644 778704072 592777083 296730465 518898984 49254559 828385924 233346718 584037773 3459655 519234330 527684197 791912887 181557057 967928273 271389461 431504523 272108054 697284289 180969370 794982370 261131902 424524501 860801764 212907962 958174815 583666957 294509206 205234597 961429098 602537711 582666207 525860793 159912265 808310277 803321606 513737361 274989536 90171934 347687021 147913371 904784138 732597102 286333692 374402389 209834504 560839759 2305983 761535815 219108691 594504613 221360586 477995504 759428885 527105853 935097722 985108772 410624552 235858817 275601990 255827448 738285861 347220444 378659221 528457933 177116632 878168972 356120743 320073547 95026389 644174139 756798338 516734674 212839624 756964892 636547001 787337254 293022292 401008346 134936244 677600864 806886621 240377354 625351161 626586032 659185634 110401791 529057195 540134367 228401848 470593313 593307029 175476847 670541375 658053392 390500157 932415794 612681313 468681177 828972760 777381819 920222586 349828229 477708865 304819578 814667423 368988881 944351660 668407059 532438072 329053860 118186729 665291181 5140137 623164540 809233119 344204543 626525242 720585175 896809600 161862244 760915173 356183955 852781641 158103877 272353924 809201561 646751193 220717615 176334091 193513097 467337055 25754798 731780540 587133032 790557540 187737556 470569266 599417526 730553915 787 768682169 129679966 877128349 537341774 351710127 165136607 813177568 830446346 745136215 376149008 947556614 26415109 236244355 196039194 440117451 758816614 315001751 419070080 19321984 759908627 581023500 748519631 193813344 242027840 904804149 842040686 596803642 229846542 61949686 470692368 965837297 453305654 830031694 863404112 711122384 103045570 831146940 38450439 893050227 769648301 114994004 338149743 618155041 646631414 517490131 562731912 880011461 303152187 920513604 698872583 821649830 879746589 924122195 102269952 378605065 602556691 329497715 672728903 117211960 162299794 147174845 41010213 22399506 56407786 989913901 375521095 703986746 389427541 363943693 602443316 680784932 389647703 619753745 120865581 147776252 293273011 523258446 451431202 340310405 851679623 283627310 294473192 551024410 461060212 41261820 670798611 154646279 147942886 94429983 359675901 443863305 883881717 288695951 560686233 322284168 410671325 289535269 502565999 66949586 301326510 334644910 221721451 713251256 659974620 295514734 471603157 718993567 638949529 548712650 739999389 870198978 293231357 153208764 943679030 389002433 406352720 407698798 861924852 814984923 78928717 837293146 324886033 419177308 30958131 315778863 729374631 695305651 86842476 645106119 509218455 945901619 801961388 606070682 904089628 727939951 320239645 363228653 252814798 763767403 266594104 939462401 161266482 668141248 12433622 217726111 927380416 132885869 293087026 985282705 500650237 675085981 410226056 366241979 726331425 904135554 792015547 724165234 152097520 669097785 367537027 109106451 100576961 118950771 732679965 476976393 107998676 510620611 717707228 255843246 893365917 619405268 890547913 163929203 592507960 204986515 888387052 27579568 598138549 458794732 205573133 560511363 764547981 729582614 441176922 537499172 932190070 900363922 232315503 970448286 339871130 403253715 509972020 509407213 617570850 207463264 646971928 675345603 284943381 597028061 789922033 355033341 697393905 937313262 543630827 344066950 778690969 407627835 956385177 17532250 959417034 40282181 399084928 404758985 259197025 520441039 704786059 120179125 860891613 38823899 655097912 315615444 907904297 97585105 694798237 251119930 685022257 96935415 816312033 899612980 294171985 298740835 879281310 508665475 39793880 990128643 392439110 846612376 963788944 325008136 186194642 561313173 325961367 969074624 861519700 951691130 511747108 105434033 997726252 232321593 877634765 360649816 784237263 226924326 470852912 836195402 814351202 670855889 489293617 320910062 949807100 843252077 120318385 108729531 11875969 692135396 238693353 135840986 375653846 803061822 798867784 614693602 571972744 363101554 496237374 942215011 535593138 7706784 911149122 980824693 21184973 948742851 247717097 339660077 9665548 957243505 194382659 803140850 154767872 588363241 135264275 392620011 795316984 598682388 559033574 534569955 28310259 819033675 586471157 550148433 730736524 297352912 385540860 730091153 874712422 760022779 111632551 651099822 719075133 281657347 609630893 513711715 974781520 432396361 316624223 976092554 165211766 356865531 400227889 217399122 616858770 802281334 943743389 447663396 567118902 698568708 903331248 238974543 441445436 705864016 671629573 3728728 182322108 735685539 623751550 549064378 460890369 272393415 751138567 240581144 81173332 625228456 201506715 979740529 87757550 683996968 622309340 481862253 909864681 565921660 546793839 921919027 208420871 212509906 404677125 687888767 36157839 85925722 146319420 183596924 555875285 617870662 286622637 95173017 664522723 588916177 373428203 597691699 303772743 452112412 822093535 184288594 690520396 19234333 246607218 509619876 845234952 190679171 784818972 93656856 124326489 162127440 228769847 521127994 673236078 408891603 649397277 971071213 911400072 637459378 965729617 633736627 61808833 57522786 54138029 528307692 410381593 404304921 46461863 536265662 837946967 43294546 751438223 930366963 979334560 246450366 53999073 937716933 375944391 281850404 618983198 831927323 950573004 559682027 480568029 56919211 403349455 345399036 107585978 826389324 379443171 273549508 757985701 648298597 736453014 243155382 143388756 11766490 459374672 593494730 940123053 708453427 211160052 87972462 192498657 398106841 626567010 961012263 517698251 448607446 122748070 921290861 709309876 31231910 445706134 909804252 435930660 951762776 212642392 968882467 638188757 672690702 853555332 609681420 769772371 124193567 642759069 441637746 66496773 503844526 177963686 908309396 554586451 702075040 15179566 799004208 622912013 582882443 724253911 903356019 564799776 209867562 949721516 810431929 940675022 122433163 266765923 908644736 98694359 454199699 311342862 572022144 262897828 442249447 561698740 783474826 444519480 339420034 541932137 305075477 563463706 379006187 479196270 751086139 944458574 356855226 546240526 613779029 372825062 713473531 758213969 644718845 454507136 77669978 734410220 405134740 514234861 409600714 274906840 417797221 356460063 408740067 674497665 368085671 785481720 257418268 926564251 255666560 809077840 670267214 369416969 831287844 486167321 128420937 834131205 300049536 333338527 505120683 370143686 920182366 919893439 258798772 389089902 177619371 911190185 411519577 65930885 944638073 510137183 695622857 264597917 860879918 135901024 763795214 709114951 668708819 277418467 862980809 381851415 893770435 328757104 488296911 127766864 833130477 55636348 769145546 382249996 748260852 827817424 228285069 580496176 584124147 35356493 250621421 662880557 678476880 484493629 580494807 358052908 844429931 430449195 358022671 659466287 47058630 764691907 481260901 756436831 233203899 766490833 647742107 183107168 23957519 936843034 544959775 799510133 906224939 504905119 150247261 941965769 166562495 815932949 950278219 114248001 999331166 238954508 353295419 543251981 211527298 673252872 725241870 615288607 12292795 986389246 938422417 795433238 155060832 521248904 525369831 309818225 459698030 933939356 140266088 561781635 66671809 711948057 935569067 956730224 566691366 489742304 31506161 424740189 129896956 136506082 910936122 37042557 996003795 353114271 997804467 120502738 800858627 774214696 629536945 878218035 397577495 833123658 389097482 296524862 37706248 229920973 17520326 775480028 597062348 119282151 766927099 245164648 371401980 505937836 642913208 264441641 576343086 415161264 929001397 752006128 65178636 49963967 572246304 699844504 703786390 370808092 134433175 493010369 927068596 568087200 546263472 245015768 110924314 130189232 284939000 430860869 662841602 635498870 605980387 92576312 304291840 395773025 621726117 817097261 975805354 666057157 249100243 573287774 57486922 323734108 806446743 859779145 567253830 751042897 807284890 415674867 25674647 671965489 187415057 142851185 789834430 567851431 984826658 797161197 226864625 241068638 638523129 293253586 559543273 344734621 387505402 403225839 861031512 646768474 715005901 397181124 301954269 108924531 10342441 294941673 144707497 498220805 579085493 129950745 908587308 850407545 828347801 505072581 46574092 879922678 635421549 999010684 820820694 666542959 45280220 78184084 88582097 786722738 719482480 954441056 873787056 892768948 50306119 115818167 836980400 366872759 669109746 10263920 566661723 303046116 990501333 162347417 122165759 840191084 875937209 635947557 276450463 947751744 914566592 763409552 627378707 913911716 867420232 9206811 7295920 967459618 408594949 792213505 117120787 20220807 250151502 584495026 64201905 31798197 924295272 513082869 231534738 83997620 995184016 180690001 649704922 955437476 901172048 880146668 874425114 228856111 251535139 637289053 923066175 72551717 194591153 744239599 525379949 969475316 268434600 177422350 57956511 995194149 941234160 684486947 538396719 280500333 902658040 169519223 715616558 599153434 96397944 95600685 293012980 125346313 493015036 827246953 13944960 485476564 789873644 453815877 406639157 243176417 217746970 922975630 683280929 429979616 751850915 609478856 897059002 944701722 309130625 675994383 896599655 589781787 288251957 737963028 839331466 538353095 61198500 28240868 398216042 159874545 560397308 125767840 458584336 840873124 8733305 798963692 63335805 516445757 365278162 437334796 54223626 708450361 914387416 188085823 907256105 23738409 738576925 584251445 285095343 192642796 205305070 799102636 699306988 553854032 70584280 670117730 486751965 551807412 556409617 155263556 992887128 158145903 830107937 272817583 785309697 30840576 611351558 398002356 624596479 584371134 772439655 723892100 980539227 966912592 278511329 992351820 977538064 160270547 272278477 466917327 604840546 327016785 907206853 459952433 104189315 977326550 475001520 913516215 259504971 541356742 713635380 741014367 456108376 659528188 304512038 441580276 513141740 595075406 481376126 955510463 50430177 517481981 177843973 546215481 929840518 376534412 166958272 214883502 704267397 73329872 353244380 480405242 499184568 298608435 273874302 148147953 572724120 554881378 343522646 428320702 436003339 85210710 85678081 794612584 525004553 862152026 210093727 876673024 57307644 265620615 225276464 688624955 514854216 317595519 360954407 37554019 68036616 735684186 798671910 760595175 630420990 637254598 542236961 118042859 943874247 330614648 978664817 945687422 683121687 676159903 801390154 233418002 785896100 26187221 240619170 358709729 836930991 936131571 738388889 348819321 625018897 795111605 704641106 212825657 675238687 250421538 84120185 718178320 177502510 709117374 267723583 470138792 444289668 283994870 855985346 12597316 139607383 505655190 721405888 7604618 301425666 113139562 306645174 443236500 655253948 731471253 987920597 762564526 348459928 763865413 440764081 319944994 816018726 792608065 360607640 566903890 674061141 797511343 941354112 764802358 234092982 574016484 630216757 628245844 532030236 29553464 468826123 340718890 210848771 90476417 996590543 675983912 190701350 30138196 417170575 413330731 536408102 689930441 669625246 516120905 326228058 155672138 568994470 931009919 99839968 602260844 689050059 410967136 367244022 581105741 3767399 525689378 936101996 703366712 174223520 73243298 314041564 840754960 175970401 996053474 332534841 224943233 836056560 910075435 293720366 622155424 263311052 372360344 249134590 387795796 694956279 880228530 481192904 102043036 741893329 622044927 971305744 552546685 407405164 8775129 702446975 417743959 514051980 936826466 627846571 600326134 782979726 214701906 777074671 554921274 118487406 336718825 620489965 653774761 667803585 237618694 910986157 644826728 490706815 193325799 462498473 716941311 859152311 55757680 776768511 198824612 935231560 473608081 501653821 822180131 609596743 192339492 70302445 121570576 621962324 409053214 174362607 48993671 646142894 693321526 716059046 892300278 829789829 625642206 651003166 356045137 463906430 638639720 573123248 120763704 790970109 577558372 7806242 645012838 831624135 718695973 142831643 350623517 679660803 388542790 841262879 129721624 156320239 56490496 191158301 710341011 882847313 708399176 99662069 770213014 583742319 592939938 301778697 410257634 236790276 827776352 33243325 196002938 202134119 232990694 901183299 212602917 463588496 878755149 641555293 350810609 762798504 166179656 4540030 231846804 658181060 599553951 240244607 534633513 225256468 879135778 364439301 757845706 828631107 781946882 211412699 111088977 924279519 85229935 569292626 278314503 111501660 734684425 4910737 599706263 676455143 53071974 798697179 252805956 232977217 27590692 802484719 511767785 953161196 735546058 724126292 53238459 315344455 583897647 255197603 872275041 589874927 100093741 446470020 661423241 550667624 375492512 187208310 117983469 843469180 143812188 114569848 644312572 101452819 940453968 896489045 868510838 626800604 35377445 312832678 591011644 256720845 446443983 638734763 920495405 530855875 610970703 161477714 469755136 938937997 225881701 512560989 788237128 356725687 491627037 817554931 461185125 349900325 361819485 688020957 646787840 718471288 55505784 554972294 452680270 628690929 128778129 461457490 872387510 436626862 427860672 210338698 767182570 772056337 119022426 480604769 543910903 320958519 106268617 781048002 720170182 266938136 321529988 333951218 828335704 641928103 47626766 728863717 842376755 772657041 825380564 73822873 641286075 788403851 669249019 432618699 919229757 927609606 995755192 696009232 791819021 77605750 869483070 350749052 830009524 936903771 923348095 439271368 614485087 420798128 187232014 814212640 806009398 56927925 996509271 689549920 515936769 50000717 551436011 977271244 48541652 59909304 590431566 178881378 674303121 928437094 844640597 696940430 665056144 2240214 226954426 842570101 248515508 957242059 810393465 261789094 698429319 93487941 834901513 745915567 645580736 44764165 249432176 87443497 351213420 153290679 697835743 881083007 82280262 672612167 16394585 782469604 151437021 260418744 966807066 931850173 52216706 613345016 256888774 79896777 86161028 975131915 440491883 350281785 341652104 749183536 199970901 121413756 561279982 326605913 847104602 957213591 16072417 221162414 508582897 144368041 313899535 748313167 805430830 409553749 523787494 305613827 68716370 389678802 106879881 971644941 780699722 832894372 746688075 657330358 960288414 161818665 953576936 999548568 670192490 612733891 708883131 338717999 322250060 216147774 870974659 596357622 936444531 490354183 445065722 73758382 482431050 917383249 83758369 124697969 685794912 208904567 571919471 44042137 402979930 802856399 135013432 685675847 291572683 606705525 243068516 9035945 588619527 967789770 340466598 439890403 297633648 671226553 530978290 923599644 91752060 223822750 938327160 182945525 850708912 893192449 742490944 322835077 778952090 229326021 218336817 45191336 633615907 689736229 984845554 305217491 461747228 809144971 574161915 32152271 308807767 10777283 370342083 429047083 644922388 778249525 717601878 956907880 259044041 315327971 847004165 611401336 409842365 682499019 450875762 476561093 812287551 625819948 118347918 408699174 210671899 654844102 761426 123690947 487636217 883479216 793205657 167519547 237526358 951029649 903543104 721331074 747180111 827302284 211082387 290779092 121706315 727496816 472892961 71836026 218324522 255609913 720174251 60066838 293081298 725675686 947967661 277195298 791368835 828503750 297636715 170842665 998799588 822937926 417776246 714567428 315433566 840096244 797157618 567018023 611168921 923718068 152606145 870904350 804138688 995015549 587500155 694400143 136542635 139437815 925409879 754499879 652982325 814341281 261011101 734242824 286461029 555396050 737741399 771263575 288497641 882365544 995517086 819186518 519387672 559881726 841668637 994880839 229150437 550649982 410878813 994071004 340000212 716981986 129731966 382564154 252854116 338382694 539006492 360656014 562841992 884020064 598782118 362743338 910647486 374932061 600458705 810390823 326310267 332989841 213197982 17877540 207202903 207855783 458911825 282032986 378805043 727528160 360096648 752641122 916719322 794159071 214189453 964832847 708058029 268339195 390936615 969200329 868097247 671663574 954722011 639154455 323157104 532359773 538803619 474674130 42022725 980436008 797990192 413352799 738149217 947732574 530201994 921572829 277620714 826851969 76249692 794615668 837871636 525430280 866299317 759605009 224593224 83474376 231421177 708712281 652612960 863885180 967696613 105718931 558420341 840294977 320436751 922422683 893941596 508797985 640734704 939990360 630387744 489985485 642526286 239086241 508932240 168454501 140189036 522857240 709399567 217839460 929644566 524590611 665121909 503084803 976951931 866877262 989262376 837553316 634733683 333400209 318556650 392826552 174758511 261136600 716909166 790916274 129257841 993513922 498319957 728316727 78808940 85542639 552934380 980622659 360202954 610995532 454396695 123201085 883936471 767449032 282613235 860215270 884606572 271025913 677878015 153435963 501392643 192748953 370104097 467829424 869034919 738761766 514836108 896857253 603352129 200899811 631341310 218822009 482158680 514856441 137342107 228087515 503675784 17004530 574226452 948764826 106977026 433329051 768081206 754977947 524019952 904095117 882762855 518763426 406486773 244994715 268616768 249963442 863517194 392025518 199036103 876875258 31960527 610539262 799664609 920298458 140271331 714755906 774140865 335725335 461293443 798053128 149842735 8201391 47596036 147887334 550957539 200505145 982283660 445047302 70463860 893584223 901277025 996528070 147499387 253415455 991617475 479073742 309692749 434152429 917223638 931132712 828923091 892476969 987608993 544515966 563047809 16998736 754327157 9191634 393472138 153540344 519628781 514677918 95064284 916361903 443867774 610627234 944981315 594967525 680136850 490693338 960151579 385742960 314005686 478727156 850553047 893928742 530168925 457218026 432307093 618411575 499909090 375955394 32027416 186903678 815075232 100591470 772267829 287192910 172277340 827559439 769280794 201536226 229062574 466254292 642263428 241414452 851577115 432019566 957319232 709078483 610739184 19731930 892077033 10912563 561807600 738954905 345846417 231942143 320686112 838490816 703916943 414888595 656076072 616589380 477251187 264473482 665198538 128681751 86034383 445314579 691307270 100763645 303531334 292193305 614639265 124146618 272445154 753403722 11703817 411141389 552410033 510557619 223176838 734052565 922648548 114891574 538272996 497454830 43479041 351292545 132654853 514098647 998531003 683580373 699076025 224407715 644485880 342905422 164378426 44479617 325953640 33324521 184220394 130731534 863454274 376546444 79802442 516120662 831618865 294851588 386272105 846916732 170044170 670281414 476059164 9056430 454119558 165637671 591512959 75370197 69896615 309928346 837390848 186376011 572840144 182796589 924594558 838554576 575268032 71576288 615387089 434501384 100973653 561106058 912366552 829769355 757925013 888364624 140032157 540558103 961319600 166984877 256538520 273185484 606169416 259255694 355551626 632133503 233487858 421605050 150465224 718846040 115944702 225212524 679491598 475394183 444904842 290232171 352980311 438484542 282023422 946337350 579650672 732867629 595287776 639330143 646414692 534198951 866097513 751221974 45682529 157995760 16783638 973061851 100568325 138253762 393313431 978882913 914131973 55489272 855258967 791085373 619822489 178015239 63089640 124085307 360643292 761381963 245483298 769148502 192780619 457167304 483827694 895431998 414020184 480690031 382654377 515889308 992978917 984978879 910646326 957843480 543619211 13164368 44580226 889703594 475051182 282234266 166947327 794756807 514679765 589824897 568566856 606739942 432897511 931498156 963776964 284754029 720670823 538266975 71051308 471122882 668760989 797425929 92610995 598610075 933665459 979370436 186503011 245987968 603005949 947370509 778759737 446751914 495642182 59798718 899839361 842591814 310301459 426738683 703120734 387959421 281710993 649143950 159601093 827633792 556814568 98750690 25497238 379177420 931990296 130464356 529717926 783623132 638857413 988064815 273800400 112355995 164941875 430709242 167105554 101281086 249996649 955975742 614154420 513539755 911125249 845996711 999972505 221721834 563842459 763246150 634506570 393006375 278990638 632700648 321976889 215183595 606163853 349938715 847152957 141584418 272311768 625130608 998790138 806451777 324874925 912303594 756733984 788342947 873205496 326822423 145207099 609954636 411273445 248323164 9928969 944779920 27279549 428881149 859710799 650567005 899723232 485589847 877645587 915692942 794075659 506907722 903740653 347669033 647440291 632606170 737486629 732634031 667427088 644513248 7729104 39652707 135182438 30351959 301099455 67450069 961152944 958709812 736633603 833937005 800178783 845803328 92572658 220933537 140276478 177315244 76282913 936810835 831235339 180532067 146351725 814403568 174172939 999859919 590674792 419534315 722345327 598530734 681285481 208182375 228212873 668416814 972489609 274296496 119651465 832747190 901510648 208142717 593076111 754344614 180749435 447984657 303660674 385758058 33513681 306462374 591554610 917803591 790952956 836559795 402299968 413887897 200069428 650942254 917774692 574783051 52508522 463142839 421755132 78664201 624789644 844473890 777033648 949174018 656909289 6310864 61394610 818125673 649783291 134643490 7914932 956577026 240211371 630705275 570344128 664754851 527177255 74817174 232810635 495758163 484595586 296506594 853046773 821161058 35476244 502270157 276927191 392261249 129488417 782017330 532072228 963599961 402931907 50988990 621493707 311674719 579506470 18342905 174501134 927285390 455916598 842140415 627004307 128114562 292649671 793216829 189608285 698004025 467240145 757929314 497949294 346313868 690375070 117067727 835576630 675381200 9176653 991273394 126080165 339493208 578709806 698676735 803285805 541609410 221416228 220746421 957789810 755394679 225850074 108989668 890348869 24533180 763731332 263994413 678621696 715251901 635379083 741215196 152181167 743086093 57745388 108992328 298624696 419070127 527485914 497306291 733912273 69934802 206447576 6800478 977303085 668595832 815836229 763319678 34205469 631413019 586989638 48520940 681631815 906449845 164551243 976691433 238834237 608642117 23420720 373955477 828544689 358726945 513026812 333713168 111003327 681553994 246746846 373798398 537787388 577882808 883019743 793183953 598365942 967640991 396848607 362101898 272286014 711230534 851367132 828225830 493127337 440822410 170334038 957108498 10646116 192800423 509368301 677847383 28330619 377645794 30251530 286293693 731239367 994531266 22716065 158313910 830529926 447966225 401824162 23439450 226449418 653589015 852339276 959887484 783192294 826508501 334432907 712412826 860313692 478061639 160564331 539879881 93466480 270165755 977504169 481524980 26963015 51767324 730859363 949095767 365393504 626764477 408140976 694863794 120954659 584561033 250994131 311412171 81592872 365088516 902315828 948663010 307271416 7434963 466213074 738985934 113675638 391925727 135667678 865175 770302257 150283298 759673406 186046287 565982131 18610199 343093434 560833341 368615511 625393508 581828293 77965845 15080142 819318544 362210126 332052169 808558531 816576040 242132676 189784105 27825537 494081591 129676052 696830675 17678562 7250869 70613836 647319520 568881329 23560084 183717873 479621409 338879216 190173640 131479090 54164857 627475710 109939240 513007439 767876989 348293390 496169452 543579132 275777462 362613590 129607896 795155602 708802516 998260701 72059399 488133625 366687630 33941205 627465315 754676827 417261254 384347381 5006575 392759945 464464067 212589627 307112513 261208763 702447562 726610004 25995993 117995697 839753175 712845428 901789740 752841603 986841072 933988342 899901869 766022637 624714564 250194492 217696725 405344937 542471628 482199363 511528008 521135084 702229817 604056026 48623125 499004621 974778558 35221710 761950005 882946297 856216413 144015639 228326980 159053328 382593165 224127207 808646747 936891726 13244928 300605970 905285541 517399839 365620347 557142268 691371506 884990583 757576157 674548568 189353485 783479641 157396671 578757227 118287724 438050953 692361953 307262012 821215944 164758541 232390165 918008118 268509990 288414117 44204687 575183783 76724573 154860575 922291735 607923562 655841559 619410251 532667175 644550038 444969524 410560438 141030243 717507648 669621202 926571118 157996422 656354849 108222767 517377430 915558458 903409491 693767665 755094813 496918975 328558268 80772593 286882614 805297519 555329553 432863065 256554492 718701841 906390300 650505534 440741246 360744318 574206564 868984449 540993971 389666842 405885748 421222355 946956003 820543821 220821814 93986053 68778896 896884586 972473100 864432334 969178448 909149398 317454977 491045056 290892288 147854143 137746895 78623590 185931941 368430280 564959758 766879486 914393519 358754379 802513719 878483326 300355182 372549640 463827157 875204320 770454777 605880976 581137451 239011045 341093951 183165713 395957515 504310590 77329543 218706468 157658156 407511697 728250192 152140967 436714984 774159072 479154793 3723766 118273672 764623274 789835858 646957696 391291485 222150105 63773355 109019230 349765955 91465256 614593498 339801949 453042309 874370534 121016565 502891796 303543738 634591743 266069960 936449941 57017671 564227623 586222758 736168511 902919869 243301855 383207433 807991432 401394679 541568584 918259241 520174122 533079461 713386603 395548323 724524340 201885802 840821105 204871045 221084980 407546206 913710377 809493831 671936572 699009715 470864839 930731347 441298012 498913585 413553924 438667762 62423633 960164820 787245505 445889154 22961613 209813672 277857605 566640357 819658632 339491924 739530405 204274531 612363309 140364563 591724881 271133198 96043011 573837262 374705202 263070579 99221754 402112604 822317919 243131581 157221356 868544791 245626505 300043932 279731403 157468714 767585761 88442836 661914463 612819237 224362031 899889256 243641452 589421334 491955526 40286692 384224137 772274678 375361381 677979086 500453422 344488535 506686493 559595404 257188364 118048235 985161962 82044425 531638994 324655187 924869816 798426490 696077736 717022866 144896947 17802472 518025917 33124096 103936415 914906459 53924025 791091165 31896933 748476599 439347542 735316658 700971677 335600991 604783335 543375208 269526192 510306506 959273323 184790615 729914792 286445568 964059617 15716302 961613466 60165763 914149301 158979245 746757897 144817564 333659955 271366500 844811206 148264276 254242295 632550611 630824807 435764037 184920095 149615507 447374924 407875300 427837064 384363059 470231410 628581270 358702455 161255154 123714666 41280656 143839452 292121848 953358356 733761140 532441231 640481911 258045469 225263911 944007049 39403451 435910572 338370632 432509478 636694575 2326930 20096815 20585188 120583798 701498658 32740915 10035604 879042064 995834315 892862006 916712822 259905363 275418822 192492215 167030479 808425633 789411915 60215530 90490318 753642270 882797232 79608716 766382076 491784905 275579224 535068835 483656119 313017293 998059776 156088645 670837869 818973069 340032739 915449700 719904847 666367136 294934975 866904371 498460128 859490291 69638443 152286706 708529581 629765779 30412323 541451982 534264537 323627640 460584773 993999336 608461897 523311144 72919496 752934733 470011518 844162748 286566009 347453063 653014435 643670996 614848942 252456847 246586024 71410368 826216470 113567891 17860654 929923316 935959767 103895413 222243612 254789106 863295623 118194268 56126357 844654616 8713460 274991881 685131755 431810573 670381750 770097340 183392264 408544273 75785934 125644099 109808732 74676806 875480047 947745937 64577384 65207404 682952185 477922486 259183081 34508009 312139245 353780021 355603182 820827240 259118144 814417517 631408296 427756804 968484053 804683012 958698605 931204094 103693647 834578145 132234411 668789572 303867433 618550644 498328520 531921826 831678653 535533722 196361070 547556175 101719232 541668027 67350591 837423024 832240320 462457559 719548317 601630065 540882243 192704865 767726224 155733839 465955436 115053101 527408167 261237019 454569434 179591759 633733421 452184654 128568422 496848588 12485013 919088321 442338042 45466259 788400741 487023257 101509021 337473233 268250072 467213649 701927379 580666369 391956730 267032065 912057901 189768279 715549734 884919580 358367718 308408529 108910437 403057680 513938486 959867032 267011097 20448570 805724746 710655015 263027609 29106149 482203464 450654024 223134889 48636223 923120653 396057082 658148304 462759829 799709668 779849800 367010016 148601924 791646819 98351479 907125512 470227046 761445796 230730709 770833812 664925358 736846390 915205832 267656391 750165991 393004418 571485308 974785129 390519762 310944705 427325681 278454803 503322423 283774628 580092710 568265662 389826727 748510632 176459431 22302306 165995428 239069270 25252264 655609318 467622630 639984326 826976202 707325376 269070024 231192587 497648637 140340599 111536803 850449375 149299098 81620028 636296115 320865124 60268527 232579923 223036117 523007522 521443107 936981879 904138778 494274104 564339316 130607128 398033370 361418128 760028006 274770422 630469056 354242489 219910885 168172561 339201735 169382434 997849681 847658000 979377950 377362529 367525398 785816000 519902414 886579115 550080744 531789278 150578626 180880607 598067254 553847692 492969943 507725963 456681442 520230545 185482250 797341735 74612873 391813858 721348403 773022577 30771707 520892501 735754543 598606393 445503873 543206848 153718811 568195211 213251690 48226690 585893536 11288560 639279428 882725108 752145607 164490393 628099378 42039856 502872355 32034335 813694734 821233611 504871124 347034847 115987867 466199843 614981707 845695774 453400516 518006146 861026473 419492307 440446660 762602193 842813996 445973644 860259528 388966080 409149432 97093350 743015230 633251825 690003514 327043612 193274130 540637219 567631467 228267474 117781783 950461308 259614312 963626078 666026157 600756023 733968539 125430232 783426547 842879036 886466536 978343733 693552053 72237984 434686177 591404943 530946631 19775340 243848967 922557337 846720366 272074621 632962611 504523313 248338830 452635618 204581166 771670641 69507443 957244553 309285501 681183318 839106353 881627263 231641711 369360505 968261940 788650440 463554808 923979080 740766045 64545666 680897486 512650645 377895207 240115343 505585142 100784505 777638626 799334519 111387038 104762210 506830344 906605886 873921614 872941182 78525637 270052027 963723164 488681654 789367224 789585900 210623337 75787261 100489070 538015506 581534339 572238297 938280154 572165524 241109466 910243325 678133412 297003560 368745809 137609751 509526152 552647852 588975491 811061408 581510325 270914364 721730077 790037228 628919717 874080209 108936441 712964636 254107078 874276104 549269149 688483695 272348318 729879956 618870189 990577647 417010862 538497124 307452780 152822627 688417080 773187674 779930907 220893167 598031645 226146364 536386408 398687409 561786192 342218827 100880012 786655543 832860229 96440950 178234103 686995199 111508295 621329627 42405398 687001722 550796304 208290468 245669412 865624 215813863 87192661 887661574 661988744 310492455 746270321 557702643 849161649 231320371 758010423 755652123 946926821 24289003 880776999 317888500 812202357 318087396 633314640 136725005 833407448 276942176 518644581 543032249 52030343 957213625 437667280 680688701 284295508 732572593 144764538 269068941 409921799 245646975 135107774 781290025 513898204 152340861 501298284 655166269 492155809 426292472 187370419 384941470 337729852 273189111 627619734 392751604 830345661 225258181 938502864 645370083 476131641 972933432 204495686 365892182 32712796 10917182 792570246 780889313 519333142 464394585 507866817 772638158 40542560 170594973 219571911 431204180 919832938 551343840 569030059 533171707 497605714 369618231 950510999 782157497 279241677 205238628 885953950 639863479 306241748 477035518 425007447 659334058 219246632 178169361 547064160 267724231 587208582 502201483 623419524 732661147 63587105 288032660 935731903 876630907 920392735 889455134 9446686 476731413 460080768 132546361 305586252 933042564 525013955 11500190 419106504 91312619 834946601 837299721 364991494 466616344 182618812 980903607 583677358 451834794 837206750 873328896 187173012 56027733 940150005 552362769 55512919 41193733 360927423 331650571 427465443 927658382 177469968 393263964 912453404 49184847 221542391 241825905 941096185 181018848 545667652 449728234 395350583 470356865 853900787 23402328 3847996 38966812 250468036 411367619 68357690 330667118 955368251 709539235 153157488 169602560 151565155 975259174 737453717 772886659 44226913 340225602 176734809 370890790 798030145 115397842 466608568 873454346 964644838 324543483 567449013 362340608 812933186 811314133 808184715 837186222 889270506 357037234 966036809 465354304 474361892 191859766 138664641 341564070 503247179 796088178 245692429 230634403 391963514 569063856 436778000 650076488 684369793 644209048 791406602 691058146 714557185 498127267 927729804 50100396 89789676 723657932 434618816 874513648 615625768 169949117 893494266 279446228 34101959 121243259 968468010 813402549 939977320 488336033 212774886 9966255 546876054 182694922 51339349 472977291 503766434 374360743 446982142 327133238 423614020 510672688 313927372 894526011 530209738 80258807 107180587 27210052 643200949 77185062 577762259 988555119 171274367 508602575 452359769 716097457 190875977 746640043 910551529 889961052 338877648 194360490 866592942 522631207 583908524 949849295 791404489 597137359 200321571 145119972 760870464 568178326 833524460 505781173 692994244 157874293 319823127 210814222 992074672 735422468 104512394 552532294 867310533 105574889 417744682 373463011 660484621 34214568 669691952 317605909 690634988 555158484 685848814 767544942 579884994 331128080 961675595 514283306 820948583 720365210 476953079 755142145 289198966 8013274 738331579 357062089 732872062 93767402 919954880 759417854 231207517 996471169 907248858 210135529 553041473 984186087 521429735 606689654 423468953 97977022 707247123 574069819 319813129 29595044 955093162 504619730 406453415 813311206 314657670 409706952 863697887 235497321 964598197 659854655 853519975 902189493 205022480 161208653 428159715 68534338 695388880 944847373 656105383 101631540 767013217 786523990 468061238 645317938 503904960 124991249 152372375 72863585 291910520 128152879 257098215 185222720 109338590 155045378 952242233 332391425 875076210 506839185 255515068 759375170 444431692 381454779 458094353 864229106 909515662 412690482 447838213 289530571 640630812 498129804 506089175 328205571 390613613 297173491 196216989 948268435 828213144 533376232 109509471 265250114 250493408 611854465 846323902 452330677 951582576 26181845 139666714 292761020 327725189 426404070 763768785 566556754 500137039 166258963 718283810 817266138 992302684 320547691 109041534 916818952 897977254 343361404 197991929 896811585 945608400 225586711 153944573 862929395 421880589 44720046 317223102 132758610 282948110 11701504 428220765 326428646 967903549 41934907 306083020 260012994 619626642 981491312 595686540 963851425 26196776 148121222 947193169 151202032 996275446 482011993 687190389 753272268 211300768 82911456 585697497 474165155 998015423 256974159 316883861 243900555 118321982 565409999 542729716 653462585 674213180 154991139 165853225 664836883 928142626 903953376 518602686 937002553 867091054 698055212 232751438 822479180 328502911 516425467 364490100 412478101 713836860 308100509 148212427 891251036 968984051 350740521 212646206 463830361 843371835 488654749 152959886 95521489 461882068 682404479 426166660 292423342 874335348 863749666 177106857 535299764 393499568 537265878 46202665 613276188 505452204 678748096 478159487 197057407 133280976 719467967 15850511 966604689 27784285 648406372 393743048 467534219 427440515 624601387 541385438 222197373 722110071 358021929 741122013 541782974 148144585 845603607 775330200 199220505 729580826 768639292 234904083 557684712 510705682 574527596 742159581 686065751 833605696 377395507 875704471 830228512 468290106 145733649 311250949 393887179 631504053 627411 639238943 116432662 321755152 144196675 213050876 805870595 759207695 358651553 364190140 469622569 966621514 53216564 804690463 381182154 360080071 317527545 449350825 890469054 915692832 346207790 371048175 850013254 9308266 473408113 728203706 274048009 668362653 414409447 112365287 766240080 195922387 89249207 149793618 718403011 290819285 669070941 523435596 113220195 1593602 444575598 322594316 521448923 276672085 138630056 766054229 211389597 991072545 784971302 67853526 641929507 111938534 851806152 49572835 342340164 487924771 696337139 892693063 272965637 654915280 831444605 584927836 670683151 525548918 338989207 653346839 587967207 429255971 299084988 544177037 51641523 985098561 877903087 799340559 928975635 111645895 542309214 751243153 44653714 916614035 116735976 838561624 302772665 288853217 508521665 908850910 795474104 827177584 514300548 78282105 159796982 149668752 48427836 338870216 841864982 825546479 442444190 126209090 500748624 305060633 712195600 252549058 911752726 309110161 961802580 120789690 540102987 117722232 7295744 201646875 105519076 890368104 244614129 964757915 169755274 736290197 621495254 699709252 890296816 694406881 690505392 83429749 707468132 149783030 722355521 447648352 885508442 170146411 215846563 844767905 491189567 679956116 189858683 645715706 426534534 638418706 104910622 193531091 180197896 577979943 918158433 454134963 657800822 154031873 972975025 983599410 659263467 327085473 183279156 879706652 549856371 564777127 330785848 294072648 555665636 408411760 691618616 887028359 998251759 887292946 161703299 462121179 50449643 637093309 106067640 394355914 663274507 425413820 89698759 467505270 161811182 763596157 559405599 974118343 889202000 44998481 468259172 515505111 710354431 217399043 218499571 901073994 299514447 625012001 649620879 995586572 569939656 683209579 368784424 531571701 354077654 845512504 174901116 729845722 507395190 963275118 139946538 872048980 895586506 545350742 364830779 61950495 637753813 332450151 390689830 176038203 707782022 634161753 183838597 860076753 969874775 19953281 134529606 693236963 525446308 500272599 78225331 613350628 258400660 182466169 342000117 350513698 645374780 56403627 449201726 299159190 591509476 225417802 493970695 893710208 533528953 143652698 99845138 55059939 418263414 134658240 202451042 443796286 731508007 51251439 800049063 905504396 133659256 667756681 204962479 498320342 513212716 626914319 312968335 790852662 669301862 849280350 715047864 763092930 755599720 915438639 3321652 902128293 933338083 152852946 154815931 322003644 145864040 554289664 875035991 149582359 775203867 392769602 213456389 921288106 222527348 29089631 478403564 68920540 88317845 373622983 82431753 918067291 957468829 864420129 333949819 859410436 844630227 880976320 912706340 825720768 116738638 263292437 387496905 441249490 712305001 801792459 584292451 468484464 920767063 741963870 671016692 640737058 896332119 644149594 351080718 239574883 594895860 581807062 676761608 508931785 909677677 268915341 498348710 50880154 578768531 24605239 306619254 544726209 443459558 826788619 314540936 103399523 461979628 793133454 52346760 30718948 377378058 313226550 153183690 387519138 371480781 7139812 837253910 160488924 728887732 471161386 547137311 899287215 774019943 113875071 325361818 88599891 933883911 109894271 640603785 372049649 343893139 912068672 971005467 292408430 241908630 608132166 822098598 859920806 722927216 224809942 251765296 80931117 215814183 175593030 658061979 257345568 916781823 803257273 675139336 980768226 409662169 884033364 549355406 364842926 379817849 122196110 164599258 94355814 421951090 724431799 129328655 547188595 145792779 29265319 649112797 642518367 220156031 355641970 900108746 665723872 60971176 123264290 67090774 838707326 237573316 643299334 533511461 339553889 99402498 252476761 235983540 324458995 890581799 592153912 359920475 932502644 850927359 547873842 720082216 613775576 682631373 142023694 491103244 466301025 975759691 768113789 525353541 685836606 610927481 127697249 255223909 408417634 642487755 800805311 692044005 818306999 702629468 670038324 504254914 488107946 976595480 716392855 145682478 707184818 805176274 18177129 691814822 411581850 835735700 522650193 184360511 841997474 747074635 51157 236122565 50238429 141337086 706562643 831050896 120175376 823495458 486203652 895675127 299154189 864179711 471322733 596751833 662173078 107280711 392275195 92551923 933964503 629964923 179701328 921633577 142258415 354164569 181822686 892687541 751915331 882267224 692940991 240273005 9735340 308613771 89525443 403678481 352716882 674840386 658068500 435241011 569834285 300865940 355293394 205380796 792736976 737753210 309615951 860542180 786095129 829730985 231429476 349798835 660419628 392270723 323146535 960800982 355415412 436649622 834242070 626304498 59693601 174266257 521062035 794157076 152726818 165539279 175120568 423620305 722922013 675599751 388462670 653120948 583047992 350604649 152766406 917689964 405767959 238957303 761117174 650443933 603151169 266703286 310222124 621403345 276444354 8045639 720779578 560376407 371233027 278831809 101059405 824615356 28070543 438743866 566876432 343191910 354987016 568771349 683637582 357723969 345117317 975132204 610768388 533483863 620992731 573731601 660452121 690543268 477617389 528402130 996557684 642755739 883651365 484332254 272420155 872276320 854870699 392380495 599811231 363715796 450838103 802568726 900101430 503889373 217436979 757168199 216176248 208199427 148347560 871075578 733655763 783357469 22467061 55169087 6029021 188142820 930685154 103910343 458349987 141319050 627931480 879311005 779820473 499718811 227688351 702633096 620013229 950863899 786625282 713265334 88962760 540087082 490870064 663303099 65167944 907069698 918366896 450046046 210467144 936798481 852354834 883357771 968168791 730787554 407842918 788007681 593996608 36145357 294106517 330095616 563929600 578135015 887394461 18599675 278952113 885589013 778890031 897358906 677867794 302984946 26173768 134171072 329182749 652194165 211628208 737390581 94958283 476511850 487665009 519105303 97040697 608695275 662881512 542652049 393701614 390455337 373096592 510368194 820080413 549501375 427595172 182041534 697734001 935226980 729440163 366284406 481709149 420899551 54051517 527555769 594470189 417036378 526312215 72079712 167272942 57358123 813453093 732466505 490423876 852849814 526434831 417230018 445828434 822465822 486252931 586351621 771082623 422626779 954064151 761978291 657170630 844965382 15817433 478281987 273210497 993938370 931372067 21044154 944364602 62129188 436802249 287181442 100489013 540733434 751766344 315849813 134784735 435504719 408631437 985350333 640440263 722807709 522051825 937166532 404584910 125943017 818195055 513777171 472562594 38618911 888681236 727273925 19785382 739232789 725754800 788618948 605450098 233770829 170727201 321039803 684709710 210212742 858871375 264768520 44472558 666836059 222167694 341278346 802801237 333520691 1846350 461785724 992333004 854806246 644564443 741799679 597113239 126703443 728260809 109708801 846411072 818737803 362750714 921259846 35367812 359269392 683409120 532132508 320172552 708204299 665272430 240983994 586395606 133355732 905007604 222190918 756331512 948435990 935437612 946752848 77018239 446648768 526528376 531627686 430610530 46707157 724853403 903713797 380433834 622560042 680200369 33409183 337135567 139749632 69339308 926471292 696817880 180451351 324834805 354681729 809171987 714102886 832901982 58874762 335947647 144295856 22057214 981022330 162131869 388731610 457770398 726653155 398312032 598606780 845566934 194169715 106620499 553066349 837328913 28564377 98296794 858440416 767234012 43577089 814368665 927065798 16618257 166641133 191253609 224305399 866196421 27138792 293246097 127938746 390360458 736631400 67024693 493583672 144944229 985723980 494194358 71774144 793398579 973629802 98341331 862900913 930145621 986082890 312173586 506333978 346506303 419775588 268401763 538877658 375777161 827548813 342639125 254211525 596303480 869419223 153291252 852617411 844992577 773719691 417912771 451453442 621722204 131640578 858284646 193176864 877580010 377882242 82189387 876023392 128150726 614503442 545966745 898178332 18915065 421814700 982943910 803133525 64823285 993418140 22875303 743467345 495880166 725260376 923344932 471335039 217378642 641206486 117478679 925817337 247192258 434585713 227265486 580135646 461567466 321618539 397433722 756809815 787339950 866591166 703203991 144424547 466983893 581591249 301332268 776407678 727466978 476251390 934107831 82255671 120397117 750292847 653620073 97018810 123927163 730781457 561845910 530376968 626190247 261443621 560296502 183719647 113096399 532841623 157841881 255779950 353102790 563350904 815027340 252142160 831915610 136248411 606334832 151257130 968770615 645795743 742026065 793621133 432852428 798054547 730816776 216127180 367415167 757954461 186298796 63820579 874371687 961064798 580596344 950797282 704972092 535252132 206095009 175759075 842613153 446442745 458850185 780781218 104893912 300378691 276966088 363498355 184682647 878532946 693378149 356068507 69419361 97759347 64145721 45266323 629131759 961084726 637894574 613818382 565405149 963361837 434145035 622909930 384794675 93976591 864706739 241137068 161936885 281702752 878332299 39681737 473653685 507256059 486449768 736340311 114015161 759077299 543293605 373312790 789297807 598605251 515418910 435578446 50867970 698199849 183033946 272594368 961278896 270590037 366770648 546925560 554019304 133957730 882818718 442726401 356777708 336253299 522110102 990163522 166095102 546017679 246243888 703529999 688590524 611647333 903135454 112844688 15087379 737081622 715160846 873531974 569128905 25383337 19820825 319004744 730249197 855706685 837049333 586421107 304989035 756636536 527739714 727730852 87187141 103406077 902477270 992003989 854443719 863126338 113462667 312935205 348487793 355117629 295143924 736663063 718681535 406758630 341413277 365027706 971241071 834345883 262455165 292948137 383145683 635283317 198969520 660249551 472447689 217165381 446190043 131873913 759814311 110658716 531563832 255514286 587100817 790487344 214722628 177979264 679815713 510812699 591764127 619290370 743735950 756870846 937730216 938794528 730909213 526969421 97755629 147883765 189452596 462007099 575656860 730868191 726719948 927053681 265284838 568733049 780068266 600773901 715809705 687571868 148611737 327286734 664419568 621446062 146202877 46143832 961254020 924142120 930022047 367860777 202253746 99489047 846897010 897975275 778405347 51109723 554953288 74795071 801594737 222146917 306431113 324992358 248136656 359604346 413504531 118817661 430809957 741925788 925382810 309557590 517578690 263220131 289718024 426788351 796008484 875800055 2573853 307006445 188707621 531739600 962692633 739803970 270208626 301761894 832603304 203828745 310992660 751571042 125236217 622794363 703541830 286813843 258409148 99108284 816922836 743474162 869725839 805764427 345729173 254975339 269599696 2135900 652238241 379650337 694660605 917364826 404631823 476370478 148492709 145803781 120027400 59631220 206095330 854340097 849147434 870655014 943053318 766868134 956235701 337110529 335084348 990793676 494733490 450395161 229116188 914508680 340116207 329056904 582696836 818205254 925028525 538943610 749633672 24305052 270435899 651218511 435931362 185395115 771183798 416945352 832089947 881060021 772831953 359502563 75608080 119024552 965802806 830476707 165079433 730818803 336803059 679711343 960659302 854423045 511730289 463236211 609704 679383273 351958199 604926125 978524459 181594270 362054905 882371847 891356503 897197271 829576379 867479320 442938319 750080367 293226732 749467126 782083453 843806486 494780431 316865213 749441993 44593585 754549823 943415454 210559352 801788807 295607616 172597716 580075348 941354449 263201994 167799178 778994164 899205517 464763548 36328427 96595022 301642693 794810320 632098259 713565433 314580888 25124976 696596968 746618459 461394018 661273977 749019768 311367269 636801567 409826601 173683325 823679021 746184312 87359824 586382012 121916425 55673542 506986913 471847395 555574562 411886690 908018627 987858716 539572030 217284591 673019727 895796591 701654538 35681307 950807308 645422205 794344164 615391339 177262986 869199195 40088386 390661497 166403061 192342038 998653911 507762368 644836472 753554290 406005463 58700254 552319255 121187696 471644030 665854501 725177045 905535078 389465003 719939508 413392622 859928596 684349857 232176164 846999311 870105898 250398518 912617263 511151084 129735170 896368722 595421741 342367651 684153315 567830854 705266323 406031488 228711547 534741855 314819391 703194390 240106890 912400931 64462252 691102207 620235021 193575822 156897786 540057805 379549254 436987191 114951682 569800573 887639560 721001491 599615223 152946563 109562315 480950885 243881924 807634786 257052321 256212527 756814519 931644507 75909811 596230300 875165203 584904413 821507467 487174836 108835592 436592395 323407540 23869006 236426350 279854744 294485192 576195688 352444391 845334353 423075908 592767010 24802578 371649827 912563858 615291558 611651220 618977430 124054075 695601621 415348410 15074722 623165608 41490227 411559382 251970775 885834331 948101905 906104785 322077013 705762259 831309078 527791149 995259103 716180692 698267814 757099057 745992044 113171004 19524825 957819271 467127406 66380903 548198916 563535481 484395202 68612305 111072755 191340572 310862541 769242591 216683332 208795846 563190106 114797649 456107584 65699264 407712857 375353748 47840138 332754589 905910506 200419701 809092313 931276919 828011652 324605976 742174469 91864365 679815661 176702513 527639918 466321804 245017568 430912443 472821802 853739207 838909176 943288575 599393946 742522178 974950450 39932805 497665062 625411547 666380187 536016973 691678073 514427434 121535841 934876822 788467744 103866085 501073641 429264768 235850068 859726278 641911294 491410420 178573969 861568468 800550631 704306874 467256743 713559029 562410689 120278807 824592828 113623095 536249834 887989532 656628189 467179109 131143817 38438277 359796472 101546103 37424604 186002475 396005071 112864348 776961101 443870513 137664437 49480318 675881027 697896682 572265501 700379806 472760039 250138023 167397489 184808989 609824106 969220263 128816093 733795117 201509186 803559104 276313621 961269834 591262767 705312843 553887557 354505292 296785971 348049338 955202775 870619177 932090527 210284534 914802509 941798756 924954494 307547671 62278743 229431229 767787993 364452955 697930064 656009339 297642717 897385546 333564499 980226894 584335458 322134472 550034381 916759701 27850034 95485067 371852904 36003027 792337879 737587015 901719972 54385611 320413765 218576625 82522650 374301486 977457831 623920822 116804180 748778203 783558391 302778506 458985186 194450325 433538470 392591479 135395356 752020042 792933794 750849035 887309399 826013027 916110607 2606745 914316637 558148878 715845826 877073883 398916431 695514414 134552739 601442273 626655458 850036884 553745783 690659053 763565207 279302680 699876559 122834253 941616039 951838561 706529812 921973981 834560789 343547245 613315314 892847906 748895563 464980882 682392367 292662704 835045903 182664423 551754608 348378927 658885814 549155918 224383943 404544911 954440355 3107286 734459993 33942360 132487332 288291798 601879797 790757590 754549963 591083644 453571069 453515935 99842880 905275580 772452907 864552861 123315946 850351729 490998601 626722368 172972524 598867873 472360945 929500920 965595804 6234359 998714596 952875721 856415052 777025189 546967817 319466069 744617960 109442701 107861617 535062516 168961076 649429962 509363702 337632678 878758830 776997423 484880202 577739020 437705535 197643304 996215050 174880468 638960024 537799202 655276023 601722885 951443209 812586336 915699448 548503184 355178506 818551679 39736379 913892380 9787134 934766713 702399578 978204980 699220641 149802081 339721259 847569922 599359690 356399471 11419676 718478743 232462994 504864167 334158468 316410286 43887413 543472222 742593697 676381416 874715839 268556138 380107448 410173740 464601081 310371979 554638248 574228787 929971371 163995606 961221398 351175020 405355299 212393645 11180030 441824575 730001739 818649442 655362498 16614325 677291972 726330401 479308501 185009317 805235163 629189659 80646774 770055867 150463304 230642450 226185004 506360869 555084703 555700340 688609586 21580164 232679135 625458465 791579447 21809741 671870243 949857320 658062182 456948580 74107988 591704953 267995243 513616637 329446564 603943332 810655847 952853398 132921109 278624024 633616494 465084867 171356347 386262395 644772982 400128037 85229804 510593562 23414478 968946308 808741246 521660341 323019843 739667743 219764331 220418093 962054310 779698805 697136365 832928186 851957689 748637066 309149052 571330947 758132192 269784391 64342077 122077628 505499126 889008633 232091163 499122466 801235500 309934454 674815747 254258155 320746911 201365762 110717413 645734618 200315598 696910544 482992866 41753212 182410723 438334302 468680881 917530448 484158251 499074704 29158427 365868479 286918278 318774205 265482435 739811027 222212269 70067541 946883632 169666224 747026734 279735071 41573599 481572389 638008674 649623143 889194138 595044574 249425667 985668016 409385672 627100149 912827392 725124052 394881171 999741130 98871782 468780793 584828888 974573102 241293031 581175473 810288392 508248408 604073028 698949882 703004882 874306051 18029836 180160820 442825494 397184201 638124103 429174063 158674814 145511996 244102780 441467759 458087429 977855512 14600677 368542964 264687103 885431527 847486976 88469466 321856039 227609775 870965084 655155746 748109144 826570291 501334199 827142608 817588548 809470120 832297888 930367877 673630590 887161185 665180203 86420840 5119576 991294547 639488293 844304774 60030157 531539655 309366115 625877033 230676272 833537718 618281244 6559191 337179052 68136937 193573101 607874391 568030190 126001018 44186409 804500721 411017426 948280830 519802076 473989929 541408189 20732248 866502212 488832916 929507227 318561587 641891485 1405608 557577020 277601596 914064417 497455296 327941893 570655549 467010210 85647760 514230463 806275711 756999360 980131178 917720137 321509856 59249154 37813521 979428608 727479443 763623488 419263295 84842011 278213691 301416206 958557494 244102906 945846436 605172125 966765536 656199341 245014593 313106976 888615967 616061552 227669810 566169716 37282683 220301985 846124511 937036209 992883954 547468921 820978740 232510536 486312924 343146462 456592788 998613915 498937739 232296817 510916697 149917432 518983756 802051642 518759705 360256136 980333204 901687272 97477107 456030528 823938671 742227413 612909618 357130923 124837288 42163243 728881438 409894951 671533135 787014623 667359424 280408526 987468153 230413958 714892890 804912647 608068627 360259986 790236398 349605679 28951881 783234983 708374801 245209147 105530069 16140839 345719591 779148224 105134764 338103076 102591388 813526616 588813636 206356042 653782595 657439772 977085754 436065638 333886686 436812444 728762379 441070621 305731804 276810954 935162445 178351068 524449548 487915712 282311907 418389217 210147662 465742078 71828912 709016604 723582698 200553670 136943039 488326004 494778724 546967338 12945819 640002363 720841163 849857488 913217733 583176769 483824157 628744748 732666693 252955684 633166953 907513555 498680464 65727465 635949070 752467845 756019470 337777289 931425007 597681470 796499244 545212798 762030589 610629822 246143184 608227653 374666388 711708103 245549328 412918107 520113187 886181624 385785801 623856528 160752790 867453798 30151608 935280511 964573920 501036159 478882417 545365550 87118798 904478100 707984773 558137399 453009290 541290496 536681468 777657270 188395945 377737689 35935263 417749101 890925741 997675225 259364338 700808357 198565159 498128774 814018573 855763187 760012405 208237543 347016459 674921938 685239365 290042802 634685591 675141000 40246584 370545894 244621274 365841507 638354051 768355167 871806753 658222077 540188906 116586002 880020917 505384732 807395539 287775996 789942268 229576530 256601738 751138340 372549780 702019558 327073507 623225725 298258041 748189740 118555243 956548041 960101019 995039341 496865598 22589193 451959236 719629734 36507985 192764262 288750082 175229398 610122502 619284267 249456779 554275017 878867853 528632113 694258787 388626331 205578673 750940379 536232832 828603028 705708376 582081795 261429961 545742020 64197220 273946565 578153054 617225449 418447068 854857596 837340971 584020886 168723184 604148759 396776582 833401473 614684864 266912847 324852709 451854400 667184691 109468205 819161266 420697297 818233473 753898478 322919327 811840178 584133645 450231022 856981878 52708813 618703637 585557759 343542897 852806723 737977001 215575421 997021231 46720058 598889734 671655344 112620132 348113289 511994399 681727848 735217202 272813819 32471564 262836640 927894944 152021708 449000843 615307332 869498492 907479169 910353254 316779131 540595725 743188777 876577825 172281688 654933604 554471790 220859401 984906768 383408871 458070779 805934665 302442533 822381299 682625248 15404045 827218282 300390703 162454724 61048625 409762715 819881836 393243550 634962610 236824209 142902283 585895177 757773305 778704149 77243486 184932564 286326251 53736197 441017062 139601235 97610362 965167607 915162722 820972486 261492291 660558684 739741050 800678595 358160337 991207046 354098290 710098231 474799825 772736882 832529335 801017210 353969021 630315649 577450874 153565938 470009598 364666474 204540526 674685244 929198363 92843312 341342784 812561945 16076220 123896944 578400134 440042406 497232884 475881327 860905657 919816237 880844752 313289220 431762142 952811961 245141838 220099825 871612168 287508272 726720648 863265611 531054301 330911342 274342278 435653204 406002563 839205393 942961714 827782089 53290044 384106503 808189602 902206885 429619800 17241519 642633249 268929847 531486589 401903964 928025881 16450087 409913066 556982683 894428114 171450295 139876790 609835595 175930529 635252859 581999443 59180372 212283399 977339663 477250024 764254894 861082704 759780631 539649824 292559672 998697435 853228373 330090411 745771032 581392886 347688438 735174216 481892264 406398148 481307799 809871346 281074409 943577679 288603663 681103041 975285124 734856873 499953446 314994504 564195477 715657320 449118017 274025057 846644103 618558979 639997592 536452989 550335921 824625595 240105155 387684962 220871070 446250644 779302444 632291761 658188518 782857741 817043728 981257975 501329706 60240721 826317370 290972801 498624938 346030559 755011126 930446685 198953519 485175015 67455436 208321645 212844553 545897790 775684465 971118359 772557403 85087391 379244418 68174578 925152105 450644956 771920893 748437224 940634043 655127041 164725216 619257638 259274057 88447371 667073178 954378959 807566959 195944342 834919159 274372 139731038 403825113 415438030 936802476 811199121 908137515 660215524 327695884 355509976 80256267 992757406 112650185 345431987 362130802 861841880 381298888 392730273 763375499 835170273 396217083 107340684 661841370 913291616 662972017 624255634 667806641 847309875 707687820 80654511 935680494 369521476 534270185 222077896 128649717 724988495 402442076 371656683 708083525 422005233 915050449 32671307 69132684 622036644 108933677 768428793 24474964 773646226 301233269 837764239 158032205 53886233 722072082 354183820 735300186 211334674 16715903 651105162 306290453 818451750 816157575 423997639 792705308 311620453 975453411 845775526 941098240 213842000 607601790 144631549 55879769 879650265 203822850 77289999 35153125 324120218 768981735 753015425 686687011 114994067 176930266 481117729 296594568 244752475 125656667 875811933 466687677 733480192 104107419 157107723 698941338 916118942 508983335 606272142 9418541 366396544 760556480 768113505 736116994 312973913 736565440 59090788 493908243 832632911 881043019 990025719 695423544 74752717 181414385 195032778 821400510 937219586 868764432 86860751 606129658 888119941 639423804 250979955 424835794 684813648 813132055 899464645 184494111 225771232 884622050 508483929 50855997 270804770 391749745 280578876 677726944 639255697 324664606 505991928 294172931 564713435 752680461 811684652 270594368 362801597 235270682 413321236 138138243 441838671 101982429 941261795 383973721 777462127 973524662 645359744 25278895 233745614 607836450 925847787 400326100 316236602 899210565 39047368 489480676 317642538 576063683 803473279 205764123 139042250 371597805 363455383 313408460 473483300 871249510 368903897 494471349 676492881 188569918 228693756 693275776 285009625 726230365 402939098 281299492 388208748 212986018 565769475 618146385 500185852 508099895 602841669 152374815 698518645 369224290 318222841 361604449 990707204 349485016 106043889 199280878 382912050 370289981 952157846 350220261 656252528 29033543 881462603 635705968 3967836 305353614 92442935 516403878 339771449 285743374 962935047 311228882 904796900 202320594 811709921 945962868 645930633 813320809 802865300 684846546 924766432 327349972 450414507 281403966 249752826 961030732 800439273 868130156 199570875 24884130 96380932 169520948 204679039 371716822 156785441 947744477 689516504 50756339 894500692 524216118 580896853 840683614 495029165 719622195 331526688 371717859 670218006 772048441 807918728 480509969 229241227 568470169 903488366 671433292 7384681 903429062 823158588 698704154 781223705 217771839 864606990 437760552 3558464 736132082 654227214 414075059 393247476 260717862 880140573 866181471 635131471 252594262 61946694 543873104 382670771 540175100 301248576 841875318 319357791 762156283 386802312 672892815 334895577 900142160 411742162 921930040 444193750 136650226 519137426 103966895 44002252 699931468 7515089 904774290 785389327 341292469 684098212 490517029 400884669 444063332 239075871 37239986 318242381 202871053 595863128 675876998 938972931 695613880 856704239 406306522 794434488 359795347 411369992 790654358 967169873 73042920 880834783 327166304 455152432 386094396 225056486 117950280 135850401 160345605 15147650 822210818 783643588 701911189 633873758 996640041 158708695 568711912 536850401 992879331 286920206 721379192 955967854 610378500 845064272 283328807 563796662 210422277 519030295 162740173 727040709 832572648 989505380 624925986 726594060 431197368 918819380 708780591 326534465 692088328 491145412 377409868 119237138 348523932 141495643 51238107 40551004 542674885 423575713 620412401 840348648 416481440 442081566 649071690 383334019 724117847 498692209 350062398 51464778 503718951 151801761 384218531 923680997 410794090 445418113 707824970 642158413 619688244 43328741 586527045 836149795 388991150 677893599 203909656 318388054 408940753 425234126 283002888 922579498 655317795 616586538 908461690 836808840 569881607 30182045 705840510 842128389 748238914 3077464 542074985 807632352 131908403 121341943 254544289 959291036 178567253 947960771 861174446 303376916 272696221 255153042 98065134 575960035 839817628 22451350 848101097 700095207 278714533 840341652 929303649 660684569 827711316 602211623 98558175 623170930 515632431 825649732 33054722 63970090 194565627 102777237 748396022 300746663 80581980 790555724 969450525 269902972 165637345 390434017 456329277 327208458 92165249 506765138 866292296 818171060 895010026 462896123 276314500 733779687 586921483 577587547 87121661 110879932 917093024 606461059 615262386 484315596 638674439 551150008 226537042 8805195 428171061 207963679 142815734 215411253 675605771 122370222 618113953 185741954 467418914 307165386 960116739 932740997 690525353 744292441 546845449 381905668 931649092 847067748 511063887 52418058 137751821 324750826 756645320 516345407 762684220 38744654 811439961 928984541 696726279 110431109 329875582 341525014 264967729 852064619 373589437 533196053 749305337 315591516 981726565 532464861 448163379 700967862 708369950 401583143 77334819 868663250 699962151 27578428 627757511 326441137 751396545 167614395 828205361 125685632 278586650 776116421 512057669 914263702 970069285 787257436 144101114 475081976 139492085 501981866 503805099 535323430 665125631 978196475 968695862 856304777 809906824 202597030 20783588 413469284 458914418 496281860 555427747 776319259 479951288 460887165 716731791 900322050 174862608 669271018 719595809 177586005 817976002 12002178 156115973 719756456 16456759 832910663 32146404 174096703 362940054 374179178 115713347 712805097 766906802 165149203 656398003 566182920 163693529 483478957 378000638 240889498 158969891 638404189 144029030 151560471 124157215 635519832 173060023 924060223 255750069 858843830 770381304 951935445 53404881 387333744 432060111 986853269 469605752 517301615 923132443 614418773 802531775 163500011 332615139 929569312 399265576 998176701 945444635 763339066 561763675 733971510 824536152 922827282 691238616 477521794 632723702 422900350 258932152 209651397 234667047 280478031 576425168 78248974 951252203 150683967 109727510 713657518 910371556 10949094 449747393 627361526 616035314 32484062 373715708 351920178 904306533 6120816 580305022 544374719 203075273 176767313 231636335 361200803 222931573 670425498 106110055 156563587 124067113 775925511 458383598 26469400 153546704 872930234 531533852 105787702 728882907 162407280 829140596 115173077 833815599 408081006 11966665 337477128 9902459 471822782 978692147 946291982 651307178 474622955 688612193 563698364 235240012 570523023 317016258 465719016 983282074 821898032 112203568 222596319 607547649 25793478 322606291 56440563 532246905 903909375 40956306 280570114 704389430 230627332 324961034 39553290 330624026 674984490 190770796 58041312 507913385 456333027 422751898 620695482 359758655 623900182 392326212 227011185 319981407 209978384 607002488 230402881 281993974 173344297 136401043 694526604 533234401 432507791 342315084 72196364 58950856 910697812 463340980 171880778 939525100 24969582 605784226 663283242 911141839 859679770 752802369 555764512 188445963 546753957 111599483 318418855 730816960 890042840 185996116 467446729 57698958 508983312 754467201 512806483 790039368 104029948 156039941 590011618 861194819 500010127 208400467 70107223 353586351 333687545 531607742 736451654 201790114 698462919 925496542 769749574 736872738 704029094 502360682 204778263 1200022 454342391 839133647 443726718 717520030 712944732 852615101 894832554 653691314 525538392 829069494 184401685 410113829 497593561 908068340 459650354 47678380 675603819 290529892 79964433 586948181 586083475 950757854 732961955 653060849 461105722 640464234 191823836 949213916 582337083 722408021 480351081 439244274 507623907 56227526 174085842 984519148 481381791 13458977 199077971 277252637 264792986 592470289 297511825 463691660 204817677 197517814 98973429 699846898 139539786 852392773 266594083 874421868 509055088 114891505 911117217 830581449 589193572 230362390 546390791 562777476 575131546 942340320 499839539 276954285 763520923 616941065 687700665 222363759 364887411 229741958 397849225 903902997 231682092 340597522 833249097 532752077 897713690 82567525 324463046 249934439 154563284 840446773 101132823 556644743 610190809 218309967 734122308 7216513 52385838 306390331 704958791 128007793 620380361 413984096 734475399 37368974 677560222 361916814 253174684 919928466 42660043 312334491 176368556 828009391 951943629 586321698 848056371 219857086 236869028 959515146 567214550 249827816 457611028 170100874 990811117 785434240 744448602 413877987 791167892 733718591 140055626 45070427 661741938 165540955 373491247 337039441 797261307 227993624 917083948 714850349 970636634 559900881 952857775 674403591 719994657 259012413 664202895 576686341 670653332 492962822 482675486 992455011 543346723 844773319 453643413 935289532 821960353 640021049 90426670 49420184 554867254 775689681 719312919 538050264 543502687 491998714 932493634 660899879 656955793 485623468 891889818 449996937 320147449 544485160 584516619 492994180 381437839 568489705 971591518 76423524 211769740 556218240 52254087 131665133 733584609 301266514 830818050 56526270 535479311 809399780 713547651 710305767 338714302 383900938 522659541 637585415 207478646 686459673 107364847 485225249 121711892 220333784 392031671 678597146 214548101 121018288 4758958 557223618 59480276 601406029 406484746 155281237 800877304 154812689 957535155 397109332 191922377 160412931 134141160 93564251 558406136 580933992 440135160 93499408 782629527 577682133 679104358 949399143 607875683 484262006 914734011 235540687 300135990 746846018 203533378 42222585 674077239 963563637 58741157 15674458 639066252 187395193 642027091 277264381 906135601 93135899 111357768 584637577 398054358 11677021 450622025 986418697 842688437 320605911 565632340 197350752 309660869 881818897 634937645 867833472 563661270 816426131 59823350 941040519 38875576 280491351 842498196 370511963 999500381 597735207 680755403 543554279 747277996 514770495 716197639 300349952 368022228 633140415 696443583 847326989 3656006 520315197 487258733 579097782 523960307 749018439 624002752 770323806 372524618 185125017 783732576 90149321 639263194 701765904 187111736 532031366 33995077 302039052 246536717 557688055 557980277 990890614 985582926 674819462 765495886 468841570 614389394 54343067 117202124 259248488 270031723 902694048 894710817 245750790 202840601 946839784 222243449 852077730 560201819 315461429 911998269 830891629 643173342 734136477 277243176 789034549 456808139 223302685 106620734 146595060 326686501 793729906 90518223 98854818 554087970 25789421 267387303 198177834 650694560 299700480 444382347 548213941 217021260 953092636 755546933 145182167 207042770 628022374 419810170 545909147 777679972 664080765 528078064 298513823 313392606 886705288 887948690 82657647 154848035 908306318 165176107 564966427 375976664 434791955 277602735 964295842 317966149 204410626 730608165 826094636 236542836 84587857 388478972 378753458 359898279 995749325 552130343 564550405 142013460 20745462 704215105 81143947 180741863 658017299 564798832 428808990 773075672 763483020 836146578 712299590 576296256 862676744 916134171 942935111 753854920 855909559 331084754 934597130 866775124 330934613 89407376 666053360 5219638 929191001 165704574 327174692 149427041 458220506 627217712 884729571 947925272 640968212 667731856 438643673 487592086 793879210 984050399 859621179 131026276 508158410 999222771 811954404 516366182 343911994 910036100 254197695 216171054 626248584 282056650 831999150 456688132 473526562 138921584 770679049 600206449 862082183 370170945 673603511 199523841 26574662 227628912 855972955 132593846 518287123 426593721 515453052 22803132 657224899 813591229 503284779 469054866 634187321 147380812 829949562 537768769 417954546 671564225 169099941 587940484 752012415 504043617 671522510 575144882 4273224 619046155 418626524 345490967 73372670 809986393 44485636 921099944 602947873 33611693 202436301 357994472 290433773 314887919 166554441 699360549 807383852 696585892 250015500 21999606 257465682 192434308 689614025 132922157 281549604 115454196 186414801 236414175 821748243 277858563 536149752 710254356 812889583 883672247 978657794 356051928 543309494 605009368 304824621 440393603 756703680 583300930 103344636 758978290 708069501 315604684 30050472 754943658 903348015 514256331 970357581 157213947 5735201 974968381 472213732 625290228 244719939 801153595 484565655 527485081 482093032 301658159 30882068 160693239 206723882 991336210 482414925 358127988 874855455 741136951 916748971 998794208 198007474 5709596 16954186 947239176 503388102 74129074 951087318 933307019 977959389 536843583 523608355 741298996 884440819 274309529 710335746 307945280 321478288 910559730 180125413 544530532 530074962 613553361 258170466 148505886 710542372 841384455 927457043 417884958 379583584 819080963 507781606 292260530 810447881 986481832 108200266 801051007 436949573 18051172 434356447 597658744 322556780 831937848 148600666 61340984 8016911 45096057 953571971 624437059 82117032 339563572 113507031 68421218 448497927 755430497 752447285 636331463 921770341 724065157 572640114 369120056 373337875 161644638 835846875 71537640 88036550 230200013 603698135 100269679 41580294 756124578 174679071 646841703 373616575 734925532 479541742 192462432 189638066 60038487 609357886 929460976 465262703 404838356 759152336 185089847 224818095 589182848 618207427 128985872 189785509 745770570 356713406 814599987 737003406 420264083 111792017 638300403 671736388 705889800 829345604 125849903 16101632 381808911 223288226 689579267 738335300 978620446 613326387 726571905 890596035 415655096 580286428 507471595 682112348 576002325 488943402 986738649 25062778 512322438 203844547 32471528 535597839 614054148 399178789 272398944 508119679 220510018 851431814 196391276 104247339 784242073 812357711 503305690 687544750 147998056 292048187 363149062 670377169 393757411 190323521 558056224 863554978 800189887 471286443 992424316 744545717 967365751 209117784 416163191 500861498 944534413 130334423 975230859 569411189 788027465 959616285 149156542 312751597 897840927 274448392 402890928 14803649 643433803 953156893 489949968 565902983 315983067 215346190 100561539 777881693 792950570 401620344 741379109 383770989 948183219 680897961 979898384 929549148 620196268 749649417 836893473 133789468 603945421 85163227 729746042 65991032 359711522 771225931 35522394 573317865 23483307 439596852 63986085 289409854 111413361 813154433 844179820 437505978 710673431 851705753 88449230 833056750 447372875 893268537 302651032 427040850 742317284 636460596 647614120 220684161 264937372 379915792 44863457 796340584 256690212 167315549 199387383 431040031 858104275 351301459 972453725 545780715 979431412 980476521 538592870 980555989 321510816 342028357 32932543 781895368 725540339 112722264 214322146 185537473 825989643 680766012 752408449 350709635 74798870 743301262 570717646 984983145 286407145 788128409 319107221 829623025 320473547 775287877 960068230 518849845 854565133 43946881 672564331 455840187 891151762 915820414 997155409 501637299 505107837 100951052 774089718 291425408 913406049 601433264 47426705 328484305 75972232 749648948 787765023 936487915 111819125 460392065 241404960 552473021 40626245 338270095 76673020 322873922 874304241 712645406 678417321 106811403 21989009 733850622 614961830 881423813 19778309 730924751 727408488 175968236 105693077 528242338 897577057 704761937 166837027 933389606 951434309 670581955 481204480 240816416 216286984 842225863 937808824 480633975 750009725 453793849 483518406 130433383 257609446 931007536 919317313 330733735 403011959 583678314 517984344 729398457 257385129 286335541 806254342 867452241 227623987 877140958 582924109 589262643 687336658 958559043 99621568 895642258 763863753 997521498 650473712 803055690 533462725 121820255 438163506 674239704 456586406 532454643 837151607 167657856 971798642 267061348 314526960 755638816 723847372 483549229 529451710 952356533 587638134 350848582 430696991 807625874 669975915 161939226 106208714 132088696 12787822 148548455 900455903 672273534 37785719 71013988 28556530 32228232 414173329 814559873 650057397 596059505 905487180 428965299 492501752 538049616 364300704 445844439 231053528 739168235 457618130 863703037 214725526 924759210 758333511 730660514 842000383 537943134 327279473 387732373 511550301 746109464 922821565 353864227 60937570 722033692 814520545 749807745 826889586 688313372 914171308 618681818 137798974 621464254 985853582 275241013 834483410 982487179 438023669 292621401 867594713 989192286 230386208 34438060 727359128 308702572 412140419 954942176 971202695 635990911 147259928 446454949 90752521 900565918 381900837 368102415 436836503 711329903 428206055 630683958 434079299 783287858 196837640 149818815 188123016 266426703 44892805 208939419 762751350 302499921 512525702 740374220 275166971 659010956 539726895 273584730 377612803 984889212 120380739 969724895 901273831 579576868 629350831 482910275 439379196 809943363 984697090 563933303 599073743 880415930 421887306 99423524 68435970 149565300 772106550 956800377 144514559 734688627 147654603 12048629 291230039 236126943 932752579 968718534 237823261 490964361 648662947 657926277 352580671 416967506 195065880 288831072 828619374 708639410 756480784 689498729 628147997 913864089 49585849 77573993 219040326 231542757 852623214 283080684 70886666 200093078 975464253 596392473 22262735 50953104 519519986 47920467 148825315 409636017 152112429 343411555 595082514 221808475 470993955 87338955 149427842 948089628 742105848 548496154 849731610 293360289 618477171 880142936 99284841 145973456 563476478 73866426 527544814 70777629 857440710 840448265 735527388 323142986 446339597 440782861 352571460 12327319 979123724 138090061 657782532 854610470 778925437 740154238 722003450 39366878 794485189 240382673 119466969 845785882 778019856 862424838 168197208 39180927 709198217 839180152 218869831 96742333 342389760 633946251 847755253 722477343 80375138 98985062 438284840 78604379 986896424 380562544 877432658 303527430 870026276 414274704 493347169 921607436 877998664 437829501 759419853 208262950 912431563 519730744 535268978 371161407 23079800 360034951 320016607 347073969 463535030 449797139 968585174 451123633 828258378 949559472 771807080 348423902 840554204 429520102 827074918 215533001 547612318 727016235 891643075 892386142 2591224 535709500 150036701 313918942 970404856 183030649 165360814 419629248 247889959 626091276 220469455 703999412 425863217 459682709 353631707 183609381 173340812 742871548 675530199 244432616 733235436 276420888 23857863 317868781 177881395 88115574 542207556 158117672 934286978 684116739 953562664 355940711 261176360 215346635 165689600 562494591 230606401 901694920 406336679 192997008 47124131 673168714 657348147 717157288 59268441 161513711 191012287 92231562 169600100 515088218 143520698 298464423 347932038 891347469 15936305 147326807 141959481 701805899 282200655 133650257 858981253 556673124 823054527 659034035 983299056 482577017 91089106 948511795 562993626 582130070 778483136 312830548 603800126 788403647 72695453 965208493 313669588 688166240 54939102 907712525 11501504 297749466 39001220 579791307 724862288 670036833 70554861 139192874 823987517 35633958 62614952 791632477 828474175 910533639 858847960 665561629 271575864 220508124 716889398 337607420 267537335 40409175 702455558 932946665 572671745 837574607 659352636 857028952 322706715 212611711 605093766 374554710 280976203 176770624 365622470 308893530 463998396 515890907 840517254 189666955 62205080 75269531 491754774 61250161 568667241 622914765 905962182 985728464 706467179 683583589 580948495 922514053 745610920 554333390 168332333 698767250 414304783 248306306 559427306 318085138 546788004 561498383 777959488 367501437 438139467 932598546 608922609 632894537 83284390 530535676 870707278 476819181 447238083 160719797 168962939 876379564 926064437 184970968 617706334 330720551 442603615 692935942 701960608 494194057 167085062 632859461 823993478 545870587 540640286 561370725 373132743 105128180 805842944 391979317 76352301 804545675 943157655 511198990 176025615 765593503 8944963 783139442 728780885 718620633 171681976 428483538 901316959 868229339 406240092 473210621 947569255 167825674 518459931 920460749 747877960 209107745 951231285 533600876 780995528 905942693 152510149 746400822 135908188 689201557 742134467 151483833 836630852 865607195 474472970 406488865 332331189 112485208 846284067 506488591 885799615 232793205 865915536 707459030 826194648 700049696 383428634 44900168 820324885 731777946 526190938 718414377 34043607 76762641 768088830 787699477 239045439 205129230 841862183 560234933 561125274 927026133 692180637 30697107 368852839 235889624 803643471 120721244 528366858 494129639 547111874 989301335 731147448 753176524 104816604 199433826 731923438 386918451 894532727 919140344 492139191 887964334 901829627 178532231 807483115 692487918 767789272 372023467 972279273 511006501 783217274 68702760 373872394 317095521 743444600 81043583 977025534 508985077 911634948 525641817 28068711 938562444 373683375 563638853 780389195 635406069 942586141 650921494 569504418 4908851 241379215 95815897 759627786 206049287 520223910 30012092 261172614 869066330 270621830 434673335 270259073 807794056 807639152 929833803 239613231 401537684 558364893 977295205 887981020 902884823 51516187 807297761 795299554 706049175 940366725 763789584 636943073 171323161 19652751 333998212 207608027 436680661 238670681 99745987 183366298 972074544 197258682 701274558 586867815 323574175 920970898 742296031 551594575 681156172 195686188 839438323 829505914 870822425 611763536 460652312 965494935 956564069 908662425 47592829 185584030 174260508 215164744 678832872 562216267 596635094 913129741 178523808 363350537 957782080 235924761 259329956 567470491 836851097 228797806 210242432 110051384 287513166 196329669 649472619 111201277 921138746 990590631 125993370 963034935 125563620 109923492 580732287 169672262 271487296 561214002 369819813 339202570 396782908 408318576 658822266 109943210 733956458 526519864 185226094 927872987 146015954 610896168 372112717 336708068 979003768 189795003 119638511 59839284 444970144 468325303 545176104 352142848 213552629 690201819 722105457 457499510 985912343 264598654 308651741 428302974 235822573 196592775 442130025 801065066 397333070 355484789 104688393 851764035 330430416 280163682 348347909 839443492 761912735 173075697 313413978 17486081 120778503 962674109 587973748 85215525 576399180 351603097 39974453 681148771 185664349 355901775 675274444 991388543 334915954 640570894 586880427 879266493 751667488 536747335 252701272 915017217 334861922 782878693 237002735 198389587 709185923 400463189 735680169 50915040 96613540 63260970 985376927 827120947 348596084 100343463 739027008 212970186 74551260 912040730 431962361 505015758 344670087 643062930 464151050 820892966 445401922 431112275 121143792 282761115 64478395 105146918 871672807 93761534 250949002 757536571 539771184 701836540 472278683 702198585 962716739 528861711 604089108 739411437 313131119 301126765 44971600 380930317 579592412 437883313 735585946 760257386 215459928 994464830 70207036 494220864 495819925 668764755 197270564 253476367 679464792 958012035 93847039 143335420 329139156 93486758 17240973 733000426 79059977 3080897 881853596 994167251 40633918 330390899 871448253 729749488 509656166 411828887 275227747 957713306 739475184 593516470 454277460 676363866 121118890 651934161 208143298 373503517 187721320 134043578 81474226 458632712 244586515 833573111 625260524 861539280 827646514 655813208 189921197 557160247 845503307 696315372 387844891 902398144 324029684 208431555 796967162 62736034 466271391 999403707 890117574 314709649 350886839 256236643 792035308 144390428 696617973 217150033 554031270 340741586 434517416 100140242 336142545 345869842 425963576 504876506 513172099 465103427 706166843 70623566 374176339 147241054 602807754 908523151 373534265 102234621 910623028 377293660 908344246 258139255 864763160 55713020 897746436 746544039 504624688 765607308 510772253 864757852 723347696 24819924 920393783 671167735 78433415 127145448 830440072 289700402 485518360 448304817 481501056 250940860 631434569 101047972 748751386 985771305 71004038 673556380 964883828 113940899 55523085 974438990 338747005 366029698 59552929 129289216 933004245 267618268 764530670 185288575 490708349 555517912 987772726 924848279 9141790 774782879 269884549 378491536 55964113 522228851 873757919 316052952 838128709 385917395 401719371 363765706 836970691 907927786 856208321 970746550 762487679 431976819 167829997 368776077 529618339 985645506 150885630 509261363 261707324 936942318 342914572 521720164 541619602 755094335 726508800 719895118 589967566 850400553 144947596 159456286 509500963 428524219 311890642 560558351 9707506 730939803 525129122 607034151 513933595 610598373 916204020 765324489 354878259 45044079 649527713 753273825 143198284 77407122 815523860 331969548 904386480 82006090 81246658 588454846 40255629 28271240 293983242 659313780 676375569 850831199 946732823 518205828 669597302 196401583 779050012 505818085 829863898 632788831 565730574 734308640 424137179 492904052 448945738 243173956 693392190 612661749 125528864 530097572 697728294 63717449 288259567 36798222 56519536 831206017 797145802 326424533 880285304 222777375 101082501 622314312 578919671 584768585 832186895 685449735 519348654 448182783 8700505 66107409 467306443 699894210 584374504 401116638 320786519 420724650 374464936 44264835 150944308 64475083 321204482 591517415 13478191 81187 997852191 593879678 708403997 122235060 156759577 280656520 316558432 628609453 934595283 102763923 289295047 135163980 286342960 530317232 550364842 726622459 78634839 31078704 386051711 521079010 619907697 729667647 326888048 382384607 824284177 776679000 317651087 629615001 363384306 943824606 448668258 425691947 123601268 644268808 638120451 775752671 842215451 294309222 617138682 652142909 554273277 879613757 238988147 467465108 456557808 275804931 791274907 807588237 594448401 349343184 60638775 5574798 755703216 187716154 476591187 405998567 451410762 85306975 129377503 912334980 631000998 562613714 974462009 901708700 349369029 304359260 222777419 664274899 869689114 254517478 646765772 199960656 396554252 558641631 942886721 491061582 248979429 337803238 242103650 65785648 324695725 656639542 446810731 230131298 548979215 572393367 772207681 911606808 565598622 835384821 324035166 65493493 449441778 3879873 51507309 885453509 566326329 198494781 768790383 419836200 90510007 957048962 899789153 38614207 652675913 515285702 582843813 355020869 987421302 304408371 584044860 916385060 624207235 301570177 879070351 881039092 443337567 57050427 787378678 861987550 142586072 810649867 604263433 639888572 294561884 523204000 343320569 461052952 550882556 493640367 944035195 977978074 294540079 712068337 30900009 170889015 193328942 294518687 407809546 940627044 744323779 150090334 282888937 650012676 969599594 380129118 289274657 701343617 661602132 524747182 967977082 350564983 151051228 112043043 275553765 491171476 780470995 264914716 414153560 109622574 457437519 928178420 265154199 259855069 502376081 37899651 481027492 856572687 965788020 255951783 824139985 580720646 526564358 983875561 622709313 825255561 863978505 975107300 282951081 459019056 548367279 992579280 750879278 828138894 375750120 359551843 801557841 499896404 846083633 822158761 857342280 655250806 593228083 472703868 926061338 447141861 701022645 831446880 899517251 404316638 444570457 502006633 241415071 323245443 9290339 19166497 680130326 797912441 243767615 399232532 917207263 226963994 117337257 680362977 795254168 761318009 528709015 126358076 450836876 571513854 639084809 33282317 696739934 22121864 196881899 709122823 357726225 845211089 405400914 93881318 914224536 563821762 105781343 524350083 822606844 465422944 348566343 221437839 288406872 803061375 266615902 644238317 73599951 84147974 759391877 629517836 683672086 930986590 694916360 474523165 836447712 387977939 938042861 665418709 704915542 107475013 958408800 502438712 203636101 127959772 230361457 56852344 314927667 42165319 744195284 992551757 243167911 794520612 900846488 37948758 785087611 428109787 578895926 267288115 835664108 150820686 798711074 70052179 136579448 573687751 188332072 111776916 995111766 222945620 496551843 609931426 723833819 726691620 811582227 114105348 507165805 723290080 440628191 407842374 565589368 507561717 654914643 221545177 699312794 26459133 120902247 471988958 462465603 707802882 348944803 471961046 134866092 323153601 984145530 32852604 297802282 217829624 620549711 871399823 674967820 936769370 692762237 483710271 855702065 37710313 346395795 60641871 777017590 156972905 883894239 453968733 674460005 320802908 349522634 146683060 396035474 960580778 437932602 485882064 522291793 578601346 237020110 300171318 351377301 504683195 338920532 275020182 588778909 247814657 12920008 805562473 304690685 157455928 711055646 914768787 414622930 460957610 68665184 355905663 372045713 396713045 334388503 724880624 149548314 733270466 728589651 785892150 392364145 238420903 528390437 584216984 820270565 744016144 214259109 548414162 788582804 426625764 34457473 846371898 845280265 797886576 294589000 125633277 111915766 852255552 420880117 312121938 44056234 287146574 965943149 872148988 628233932 21528222 61438854 60233176 610881439 994375168 165209813 316298608 880987961 82080164 673681835 518090601 676123736 143787438 246005988 662661234 612658874 90344628 495419561 612485847 369472629 219125425 475666112 707019261 745874835 734268650 614542876 248974807 457980701 993352256 945332183 381574100 60424313 357525336 333304759 730689610 45623417 810577462 596518301 98597583 531018653 386514655 537826594 388596446 595639961 971704692 281703253 744097804 342339166 969674296 237693756 368349106 98135388 224089494 643807889 354759282 149066567 469709348 222118314 431562116 172909455 833751563 377660222 236988907 938280930 361170686 963670930 180882643 824585069 161146967 809705138 253357212 722893556 413569715 881504001 577537910 821252195 11670980 33796277 32746175 956732716 681365746 192419139 868093713 975707557 172627037 648366847 662593036 574881719 973503119 152861327 115789079 231486664 720274852 198901075 628166246 916041341 892101776 199572767 323765750 365214727 754537486 918093985 110945322 57212539 669651815 797416492 99493898 87604467 611510132 92073543 598884484 944221091 39445350 865725841 421605427 298257069 656702527 475184189 634070482 6974521 632247984 821255555 418168548 197638646 104227386 109329397 799303241 409000138 580535647 936714498 348644639 154064098 905213527 922032461 287074094 470198650 492464887 635092836 391554417 549569401 636866346 196038232 200990189 328206216 726410415 560111687 750064911 223718496 469975178 193813243 384187336 867482542 272525415 365038601 247455306 278398755 294130654 147311654 256994512 50669305 306737565 140800937 387537231 595759781 700017764 938134593 701772423 408097349 842873622 702707659 394364985 258032733 512528991 891092001 609665625 163307877 433554320 341333007 231362600 361239628 119675356 880239458 420576911 792502978 865195432 756647473 954036623 563284718 980308048 178087262 284039049 242979836 994686958 892368089 118005323 95085490 966575501 307805327 209536989 35301432 811174312 113363342 518733902 980324406 236601642 20866018 593128337 126567403 63018613 640823211 176039965 571864824 732285671 974035780 813921222 497707866 933714825 936210494 484086659 969291722 725736849 271918642 890389648 193369683 105502242 985769156 387193749 984137133 878456979 901253767 264525356 988609971 262385120 786428915 692024071 764519556 756013358 981317209 560741291 827978244 298002087 276362239 962725098 709155492 371444640 137598041 422448677 431636441 335443573 675697592 740361596 821069930 933255604 50384457 158699411 337661171 319018701 23231739 763358486 956440751 77665082 545192824 450032935 391364552 572432539 835926838 652848656 302247806 602218546 347442969 864188804 181417289 553699733 392184203 436477578 821397309 970306985 777813576 696360764 979520696 312827551 5601223 154456265 720061487 351175668 825352974 76216690 513877911 800296126 251441851 955371750 280557286 527886997 148894260 182936762 387666847 644477255 259866930 240361223 83278589 938593625 983908479 715064487 835139179 160743260 872316770 347766810 225879466 509768011 166661662 968526818 222125979 512158346 932203310 398947171 59193891 348921927 404631970 380685295 728821076 354177950 99194187 531055065 452119965 604041555 721907471 108194978 893533062 995956143 71410081 562885741 461615460 627830266 651897273 96174191 606619538 894651406 16820130 727818922 358535212 83531849 760499397 155121 771597156 779543780 404771416 231323948 989480846 992891783 136937128 625169615 930414120 509435310 83021265 337427092 536804362 278864311 557573439 687054667 325422634 307203834 961478520 410201999 128863832 817945064 918551069 289980453 753822591 29600970 410608986 268769670 165257659 359842533 560943920 379691360 519207914 189417938 712991532 452021183 159336094 510330830 555651473 411796728 264091075 110637128 760402822 204614996 119281752 435151797 105364345 57358946 745922101 848205813 11405236 285112847 689212979 582882940 902628317 792053379 403447538 385596769 355378585 144831417 305840719 607994786 161884434 524049887 426547682 390967688 746475777 397408332 443472509 334089831 927848983 5829772 95034626 380783222 61375339 84454628 501282739 846570730 547360877 506934111 371087282 354560121 785373719 707563162 756167337 19371973 617345883 912771154 729869206 850629676 101537945 910938278 967965760 615739096 464991115 178637645 170345992 834048700 853206544 761136645 21060735 140645863 588609419 284325061 238619674 415547237 208140036 196882326 812536413 718065107 112750376 857611081 620871854 428335817 621244678 246838123 777715384 629164333 462061863 563304104 741976168 472138280 247530783 379256773 157981351 945973642 262859425 82321976 270587400 139828555 581601076 592597591 255664783 393795199 902473195 325472581 381067155 424057707 745433436 768987372 634051929 78763796 593086601 228732969 722197217 532118439 3915816 869811416 79503448 609354113 673561472 660520798 666630447 356848774 284137466 62977013 503768829 389886117 318934510 496316267 806274531 943963568 509390107 462156616 871325915 406774701 678307657 645532187 90747887 56852895 905639449 288018466 405770909 882889131 441186044 326678942 92885033 382391833 398923365 891732321 916995072 704821547 822894860 252037151 682484846 897948300 163218836 174850805 233394273 515617719 135052024 899034478 211323578 778091905 526005079 137833909 133327126 446038811 808799750 94909958 583819570 982460563 823494744 338672196 740187180 909020219 121635333 700740388 379409585 634999265 385568103 213422698 58090550 294250084 303383584 413773258 131916928 152743453 372841027 606860978 353652630 166608661 3165881 318447681 787669938 488923859 782789614 934878049 558196672 934366703 375608373 684507564 969703776 358756637 552880504 794561679 434950903 427115368 978567552 856170570 969187542 580367090 630600848 85175491 100641129 774315291 183476173 829085781 6925760 78218753 397932719 497979717 601907094 280667700 335953941 447372204 285623118 804932233 434780242 444699033 526356305 363603619 923588844 815315932 193258693 831597541 767542260 411913597 522607275 753009745 25120773 894116063 747488933 889759836 273492201 639546904 84531185 298484395 209835251 320404345 103980001 684798195 360027073 682993552 468901922 162962256 333504385 264317445 141663292 421408881 470723589 961176556 369639312 392767834 591365165 796393712 998518016 356936465 63199344 556102465 711101816 588979787 939043547 580473512 286656744 813965272 332391404 274404323 550207862 122818725 235445541 883529269 621530102 292227455 110637494 614143727 271496063 791999832 939022786 140194940 496685720 657364380 133164700 34442864 747508767 40346148 336274491 565262034 605405 585379751 735420024 176399517 927076122 426566681 120590759 274177651 201378439 377428533 545836321 566741596 394590372 757703803 21897405 988085878 775804605 288802214 240614757 505987563 954091727 319674097 734588052 869145516 125719113 81958514 599319943 677609313 750812963 145713884 694001485 743410352 261013182 579856398 369949278 457252414 326086375 823206935 212890585 731311426 788990820 890242037 416449649 331783894 459126290 277095927 173338375 644123878 945881033 195850109 299262658 812193939 441587994 198855213 129848230 546354780 480133139 184124406 554238651 241915276 211848943 694547772 871328265 9252959 395177419 328830269 963115098 621972139 650452221 311995237 595273440 19093935 55753596 6112015 499021433 215768942 918963437 848241706 366946410 360371497 33061997 891111825 48521579 485980067 645791137 742562400 236981925 487979312 519794112 367832551 452711906 846642865 749425253 779480540 558416540 434136635 287576607 911561542 815923880 466851517 190088856 320572583 874841555 19721697 628798618 131361479 153485382 746628265 164458463 994518572 792893785 221672752 303670669 802345986 384300651 966580563 204242170 816801985 384066660 548524187 975760872 759871768 124678222 454870164 757080348 729200679 83953555 933239523 242688274 304124466 427646757 633430379 607618618 552376449 502385480 739542857 336398339 797514360 584229338 795491247 876447662 666366832 635402355 739565431 357635034 991749195 809001281 910900172 292310576 861493629 922234901 771343679 284825730 599674640 156972358 941501830 959527956 940872506 182490889 491782480 120557696 968068486 109107745 532341877 274176784 848716147 14443285 554891567 619963516 104848678 11653714 566956091 699046637 154587504 181194153 493447111 256378314 553593614 152486063 858335045 345814990 160236702 307571591 342571380 200242108 426229624 373357573 553005429 491881104 970357430 334566622 846860413 37985324 461971722 391443258 783736524 897883559 294319531 572130854 180606531 705890600 849528566 608720033 900898103 461123047 515520792 628384768 765659735 166629380 708037809 979062940 715887880 441430977 807615144 265692121 404451018 508455937 547325788 190040349 70531557 354431288 326227996 92155539 166225663 130555305 179887280 773007527 7685476 395184066 682868401 432312877 364018855 701465262 344706935 806474863 877126196 212963135 958404251 732512209 76782541 832260466 352779446 943855032 567225128 867633258 793968278 646992750 299335843 299123731 195540785 867930996 308159038 907683677 492795119 331761391 637598510 585982280 255079126 469090672 37427648 46524121 477870496 408775470 303915979 506522966 996567340 127946848 589855867 370918549 756994593 246191852 992577697 779436123 598044802 188554088 946248371 873938506 235437430 128996248 289029375 266388642 658162880 345521102 143972165 103547733 593661930 601360478 37409786 400361001 684330558 686111500 851682911 793231039 551266474 874304862 509876918 986084179 210386660 284946520 252808050 718437991 470455810 345722843 855518287 102351343 993302597 339988073 243113924 605748711 629661577 309195179 126378336 421828005 538136916 332818069 682138736 156130734 320942742 386176368 533419790 506065356 884504624 858192023 905287975 559380285 616015723 910355609 404891592 639554272 602768585 383746418 337075791 21548765 132555148 473624805 626052255 355110132 716839639 615139240 740551722 251624032 47550986 959637033 196475557 37884049 710182986 864739259 789580084 507106647 380526754 870256023 909558401 562922856 578803453 151680138 250019907 782512766 670893572 992246074 895330432 351388309 642854291 614170251 298286365 64340995 462939123 319444401 114625802 771680461 516824447 778033097 512751681 471474212 148860148 260452826 145410614 695681109 987799637 70245657 85697402 241988434 715756231 520026885 677132890 547617572 763384522 14201918 378939692 942852155 742521189 714024096 439404572 373739092 942566927 581531159 662835927 385565297 861832978 651605224 196732712 553644757 81523678 707254437 998887129 967212788 454462481 402630792 58491141 46908257 210742859 599347740 579484495 130659872 422543982 642100682 518214700 797317366 543720920 719443144 938543707 486784230 591982266 822977307 999676507 798299929 842632003 547063517 637694973 914914420 882476912 195242776 351908222 312397822 507976381 981307489 656297715 204853342 255695742 343353331 14901389 825284156 203451882 114881154 265012331 906154512 105999245 372040194 624004606 398960467 287025882 945625600 322041300 193488891 289120814 638247958 463565323 650565203 824871290 59177286 807771630 478841815 989697749 686191458 540896029 627009808 223799109 289695247 311117420 682539539 802384020 635075951 921057466 821226757 359726882 797260587 548664838 634399348 867167308 741691364 836787744 249077893 890075706 958949117 345086927 664405740 725845862 151683133 834815074 681977315 693931498 282698391 821685924 848123401 809480048 261846796 192561752 493363372 354541288 650220492 923409775 182442399 453778799 755268264 778548038 412207577 970012991 810262689 263903547 281006576 856682263 419891560 6002766 720008621 372925408 446898706 144852782 852266976 82671451 868578509 636787272 68124060 804512830 505493110 894111678 848454300 903481694 129168110 56037253 426830882 616168310 43765469 912923096 621281935 897586961 460560569 187488435 696546790 941573927 426668160 304905348 509246898 877533984 972580382 780182541 867457010 657044924 809361188 439785494 700653412 527174230 494099984 341089176 562130288 621285000 555651103 240275019 157428244 189947324 57893225 478206791 465617732 460369312 4202361 682548294 671098530 66286734 527657919 788661453 945446674 496297977 61218196 234831293 409861139 239253466 805021466 235285079 261812818 804277259 891050304 310673682 805530084 280438574 413451037 42636508 536676561 635720038 500401074 156557676 479432331 836633014 853113122 276861736 587667523 100263707 511938897 488936469 830460746 19985475 697475292 348302701 842674473 512459087 129707656 41026713 111267984 501879572 313831301 326316592 880619023 321503575 700060120 280041392 386367141 61903692 663909741 896366248 503053172 474755294 957343104 207815987 21756130 713162193 465907258 720920770 100676990 741517075 201496684 571194917 910439064 739143179 780941763 561435214 339526610 337119711 36606595 723494673 289790238 159501552 50530944 32445808 914195216 154331428 138399866 878289949 890758752 657980946 501335698 440258709 8642657 953416372 197717221 290089747 275030459 184789879 164847255 98188317 300522549 653313618 884135566 439426608 720109829 949096153 77743164 42279827 782579875 174830331 917101885 774013441 441226020 612975573 415874837 84195906 530840775 814849409 157729853 354448423 959163801 938610781 684825311 538655889 234243984 113614108 857965007 836377335 614243755 630716522 725944670 213598144 179924158 264005307 783049437 70484944 227194553 929053363 911874429 910749887 152979517 702953132 705349456 739018795 317008385 282167903 442134020 905473202 270100388 439904205 472826886 386857579 811426481 918091161 550504082 617106761 735692028 771850274 311082971 713696582 248707230 217496691 52409307 674583266 901614600 769060457 460017805 779230948 269087545 977574220 39286842 833307191 203500118 515706435 67644564 381740207 562999396 130004614 747397382 171149166 275873173 605200845 356356195 216971130 4402217 234531126 503683324 982880637 399290680 457991962 104457579 661103220 95968185 169487708 735726911 194955674 544089980 987379125 370171829 272428753 803910533 524555151 33093878 383486387 557536935 706372187 599220439 92428021 281929188 923392135 118567695 901397304 542747163 672724149 187905891 414688728 278507933 627007463 772521107 893096229 349221175 354102112 948527657 732865285 12828331 425488282 153147508 130500019 876187542 838558686 977331643 308224855 426093366 424385451 791244487 839758530 168546294 559700714 427796413 670218207 495231755 870071952 260688468 56838883 809211938 441190645 594238329 30336712 543457086 803621052 751817292 745207550 657258451 24996824 722346353 787015340 163118091 524354296 906439541 906472766 816366957 892092193 775524722 692787750 614990099 514032431 186385704 49903015 735804246 720704067 620836626 370066072 346570273 698782570 820791047 518772294 861787844 874136988 187618208 295200232 129870544 317387454 864075235 340135684 519621508 638140359 887884936 533375632 676836306 592000837 432019746 350147079 372209136 396686247 928136929 340303391 864507790 900287773 528918635 254795324 822681763 907739961 83787978 312035077 629809511 694554229 308843696 254430233 72468997 52129647 678077812 234846313 17468778 428838461 893644393 936611011 308158933 782126327 502045411 578671502 215877695 373869361 515190932 197412719 790867344 773261521 840933651 784565491 465811449 289273778 68049503 212199832 237821789 707273486 229018151 694234300 650752123 128145667 447314562 105885869 233490673 137337218 683018197 150882124 52566059 281678480 241636063 657413064 671986663 64605830 712117018 375975075 390112292 474249114 151621459 349029748 482490817 252116879 111621418 14189088 802310951 250893818 538283934 965574091 335321409 143601539 473800941 259443320 432051893 43710432 760662453 113935798 950059346 821961713 311381694 619558342 253806790 517828372 18565796 621312762 967640997 215664269 302855845 535521536 973634911 163963464 224685726 420788572 115284932 124294532 554697717 274649679 894355224 448953865 405554959 154493386 589350273 976044283 411548744 741806260 989228502 248185507 785931448 876891343 243048075 305780645 12729533 980362237 204036774 408978169 602856345 921023220 463550811 503701669 224684271 109602048 121187872 653485221 782782453 160035019 554885838 506286326 477820543 562834189 614098764 990007859 878984733 435346270 825007607 135398069 354728077 717688012 877157024 621620449 243538154 690361130 697880102 715488879 889272321 201870722 990706796 617980121 99813321 496693585 486921687 953249117 551141624 892893765 80054244 385414341 139858910 35214503 31937385 328127120 265564427 577143906 761728452 935897666 175535114 225254763 375667144 486817965 768329522 71018380 815827745 865711649 557637540 815033802 377053800 666348795 686987495 581884928 560610001 495920322 572900436 467893040 968351682 431833339 357654566 329323564 858302728 697304647 635648456 502770788 113562645 408171579 447448844 934665072 928224108 955533991 195978202 338209194 569467665 463960858 385645643 346305229 92987019 32966704 553181182 721771970 850034131 385752705 955233691 505332359 463781036 378336157 44771648 316712870 774243684 522227754 343276448 381847609 15345959 970927615 824857485 250879437 54178113 386328299 174334797 900282872 515783131 286780085 99378444 269296970 384115592 278228389 909457434 750571818 794705749 446555046 302179602 785355607 957222619 826667709 6569757 211615363 704111129 415530228 749011659 437341338 218115095 297144591 30924732 170206210 18702708 981061731 236535588 286589964 452679159 953107253 12286811 840063261 50409066 649957786 813691699 881153694 264541497 25883685 538247733 482501613 86971595 140600768 650847712 64757224 306803017 918339969 799986683 786178174 977058146 19012273 745329107 936204146 370797614 73274530 340908492 937236938 679034650 252543154 539147656 612054107 429347353 405880182 680250838 511846567 973188767 828462656 991780427 414056721 985426534 610327297 542164183 780452950 184308983 974691001 163456969 84646511 172048764 367296380 719674436 690920599 384817679 490212249 272819565 479429376 120317136 962388465 328841149 797109243 277348999 790274293 422115879 588256165 219897087 532308882 527745322 689107448 306826776 924327721 845978707 671848230 767170792 684162953 952619027 894101361 629123421 37129802 745012353 248474600 822850306 583272960 738454336 169697741 827943995 227541579 548400613 309474067 410203745 949971243 550844924 186326096 100971091 96814344 815193993 360731220 921733977 876711045 379470252 839823164 793022719 283424711 645209825 52199654 608515253 409545 498364231 55303075 225201156 280108433 365337391 417950952 445041754 654404888 503831450 392878228 180380859 287107961 283896403 685604040 302126106 672602311 479026359 350112787 212496 733848888 474345586 337914691 621312178 741500896 157243946 538644382 741445394 425754686 830699137 426039984 301144009 554606273 379353633 918829258 662049071 164849085 176491566 734202506 263282292 923848336 724450382 29290844 452847635 241942469 897113608 614523207 865968748 876237256 266644537 940317236 104884839 195904819 43492320 310308502 553856390 4880298 86331378 258984108 176601966 425752519 502569816 418364236 355842895 142586 958236683 233751257 741129264 902750540 783454680 834598760 127953841 349061966 312483077 462589437 709385145 419218605 721675214 191428253 579864509 596066417 731786798 289689191 338358889 701281317 689989162 649912183 53463652 464446377 377403172 420081381 960751913 666060717 880638355 259979525 234824214 725157081 476513289 614254518 885118256 43157460 550604201 563032442 707352683 20499923 825101106 168131789 760052488 646109648 900634458 90354650 800158390 378975951 394360156 207337761 105962928 239685985 193241702 80914519 892760840 160586306 894245847 973969354 702959569 654879645 56120128 118222738 56636862 770214195 530153743 206615101 370790571 143607876 643607645 638718189 952656668 887456697 472941907 91833449 418047940 51221841 102292592 843617904 948601153 890375031 977449604 139831009 881172877 439081683 849980712 812852668 203522149 506500579 798851823 596302992 952673348 460365239 175326248 277710929 243354614 447229381 987975163 381439764 466821319 269698053 382794607 476079376 467578015 647490347 38608600 808109648 539811117 701957802 722287 536489315 627932742 968953554 792983162 678340397 86522057 75594734 786417485 776101918 689989108 883467377 763029838 470976953 787445006 223857779 861893891 584688602 723773515 778689075 802779802 115462861 576911185 635355060 680788469 900963922 403159573 951835528 643287077 34068565 373769354 952077342 284221080 930032527 966906065 936274825 41668307 761206233 806060600 537908645 518685559 251700089 509064851 1782732 359617758 763880518 931520675 508838851 109502281 127145882 123303948 851943326 223419352 713551015 419658060 173310024 932799797 10991100 651244517 484363790 414767678 56405486 826662296 787840904 268230847 893519734 388243226 25243883 388395616 902930155 18913426 489068031 499672961 855989096 285238742 776331630 447600073 174143752 887231664 527206461 477204547 410031247 924790547 960204954 321293645 80916672 741502639 732938418 964074074 797886148 336252564 353063259 792266330 658328759 170412720 420575350 600970721 485125610 824788323 390141944 904929311 405395433 437962763 304228328 500479118 767220856 872433459 692076230 118995561 830742056 303323163 408778735 532334863 270826060 998236765 835269044 218203842 419319465 590290658 890838573 928651573 56194253 700355304 974089795 311030579 673561233 539696034 720455843 404487822 21850931 585132588 574511712 888636175 997655741 79715900 747933655 353693946 763184728 482144324 826373019 89433771 941311974 238337582 152335531 790465651 604984297 668214896 280192954 331619176 628552287 149942795 825454419 525324174 443612383 860263358 437580929 143683772 680376512 257710953 620741489 708500638 741963893 691524215 965085376 409968089 499043949 446486291 986408836 733462173 736679611 126197112 923630898 374691160 214255962 180427040 10148366 510336469 179639269 18543365 745965733 911082548 280684414 220800487 522135385 345350969 145951061 411250785 157254210 271938152 679087015 917940164 367939536 709267914 484647727 308330853 581002859 668877655 955981222 558193455 171637555 104413696 223666480 75616205 914250280 227126166 644031863 439628436 433717092 788494226 310005006 720931978 903161060 774462841 589730235 395724865 500966254 197918997 278724461 394940925 730312408 68483650 243818206 407229529 394098883 108604997 3978354 509660094 296946721 92087728 935819480 440081408 1376224 264554172 710060464 255993426 676794435 983923232 95726080 348873276 819668877 334132978 287483866 352204514 576944046 987226982 576780773 707817691 368517306 535055301 724142025 67086856 723550065 298237917 619254634 269884330 571521428 737378583 373222096 744437032 208044425 713380285 968359582 948283027 989800493 489921495 628832203 150555245 660006385 229566765 585263919 496804168 576774523 749753482 15222256 703204994 8801486 778092602 850965353 637783386 119825098 159521365 156386646 103202750 291333205 246326301 412794547 139357429 906677782 908589610 832096091 309323088 463046939 486393198 397479186 588153244 114852274 300075214 831447900 384289989 313170719 73065609 987494167 60118118 891886541 326072436 381126190 665934586 876164455 80518138 324481241 882607494 49267762 142144126 505470770 150262159 893076032 947651078 130602541 79692496 715419686 178558967 282182175 803074281 33063231 497405383 272675329 845318596 294069795 946319409 788461733 767048289 532845438 19077575 135101080 108269530 470320471 952687681 711942251 5526160 38580524 491599447 43410492 190325771 799030904 626332715 590689168 306325349 317577111 295026648 34701447 385125867 940398299 646649777 627035326 934551115 193714089 719931601 538170433 934708669 690891766 881090386 984624055 487566093 189909341 792182518 378841694 711518539 759621400 343286966 24003175 364966303 803671328 84315706 34715661 737634021 278976553 717541563 336527262 948775840 704073016 73585240 883647894 110124587 732299242 802608536 813813753 656542023 152286996 402462666 356351816 672222119 836900188 282576503 232904894 345587235 362016647 212900682 444161600 281563153 958359210 282633099 320006433 22720302 864635303 32876708 219111792 4387503 577428435 871194609 185251616 25939115 410177300 982881863 937745025 947401704 462187300 461635814 983587431 876936795 809880633 607356237 538426369 425792821 284592390 429480122 182271047 452196857 840747274 854655624 448086737 537143564 838739225 231920179 876679152 199153078 156350617 500677308 226978487 511956869 743847145 957075064 470338853 65931101 575750081 842920653 584823860 497296401 133147270 880948613 665946345 12273042 930940924 745056565 855859414 877204444 225282991 848605627 869062230 246320517 56954919 146150058 575880213 627427919 823052540 539165928 238633415 464981322 964689985 587311029 959128997 458005672 684294820 719171191 874033577 5234544 594372704 731730620 196774703 298598698 237035952 629987510 443530019 745920131 571593369 100464099 773791642 889611362 273473533 921325841 348399192 759295747 331507348 637022608 108239770 827225592 400886735 509936938 849661398 612402185 794385470 97258411 894350491 278480989 154935453 372590763 818937365 351041365 602445428 293612262 922368418 872450920 286161040 690823527 829637588 890767598 365018152 882184081 677128396 181874731 891439338 806021687 294359355 97652506 362747605 306952973 223781052 10330300 456239318 567745817 929729385 744970354 186024102 305397615 426343020 40297309 541308333 199369257 290837513 719487263 378900534 780866928 742610403 727710860 44053212 50866133 236426362 720115963 41496639 422819274 7318901 493828106 371600155 70634694 541619682 423358667 452665054 469667274 856061769 62129972 164316167 86721391 847614253 188034701 749286516 99442226 173037019 794625314 894865549 427016072 875115830 884330596 434646572 712875251 467125521 58969458 602666493 649144241 443334128 963903382 300671581 226159859 793748042 243908519 607831914 807984209 167970778 30246809 871374767 652081138 232758627 70470523 559708976 876035686 46439071 59823591 70873374 368958980 966674028 8951834 584037320 153338585 389087114 519065993 75233634 380299904 335736945 635095811 583433123 324490952 686598309 202563148 2680366 148686746 566592771 684945389 291504360 694805775 743980350 792074243 710262890 14082459 391904737 42866884 627316181 303361201 515862708 260132542 834267982 75523938 453219486 169369593 901705163 314134108 742636370 772283656 196474100 439786166 194949362 415087935 240946457 520487312 582868805 103607804 911892666 759821439 910965702 106971010 685843615 227653301 910894406 658946007 534148612 12988247 712694809 486240491 977634599 451815830 498502119 394285028 300214296 163845052 160213442 353299236 62301703 648388928 175576456 503151883 754203596 779820182 548430557 361016149 820813 229021024 562528280 810095808 220864230 263289025 221802098 221637894 85782724 458113238 666300071 684187023 69920410 712574015 467546748 244826260 188224284 906253989 484936434 954814188 44052762 843611994 99967522 657975060 94274306 126848414 350001698 989650011 22674371 818067324 853370422 128729505 222447396 817748503 608737408 925231220 388408191 489342707 640434240 510645495 178809405 440714329 655424747 314464205 83645899 281377049 453849750 915714589 84966334 222050431 959028046 915524078 732073884 706092377 122236445 753760007 849164826 337879879 490304063 618437316 70091537 442241104 30317668 353235237 846181374 515839674 76626282 91956025 539725344 51105777 435752867 68545978 398067821 738965288 312380293 700622175 546829398 310917899 655848633 283697104 442467019 552212937 786959045 493362201 855032365 874349703 759464934 362307385 766510196 893787192 524593797 470260203 869211257 385746346 109028762 558340864 77908195 899612958 631034656 421175757 261214715 810539859 112613659 762262115 98018960 394961918 796672761 807464500 987344242 555856788 476941792 937987286 230608185 454889862 204908633 3611501 500736079 596879291 783354948 613180991 439672155 794940473 411287865 526301866 379315585 191767966 79471277 487364758 643331086 804695835 926929278 910646240 178306922 850357354 303675551 551107305 366835377 662212258 189147814 229067804 44100976 186036069 739489387 985346369 188862887 88633821 836303389 499164545 768793807 115051337 508124662 955642089 502279049 700412913 196170460 194983716 630374894 232465120 738893387 11550282 637802050 214801086 436455800 744787012 923742456 324398691 395636661 660722259 419044330 837132694 115560446 974045908 54722988 269797146 538962693 457234276 178439258 57620652 828189091 828807959 986566560 403235743 651847757 101750609 451202205 184587758 933682622 709740647 633989116 602283613 324125549 917839720 168545342 134638938 154414178 362706439 687068056 614930520 910478017 522991600 148700467 688802096 292746741 246167954 535243342 142843681 200396421 493800778 481202946 808080133 76187633 462539765 231408473 177848304 601048365 459051557 611623751 910850245 393860790 64064102 553757310 477659468 49439086 632544161 73310548 521965328 765242549 96299655 725860572 47133902 222526445 633929540 426270516 129985221 260503334 197888635 322468747 475706221 864667981 406223446 712961007 322962868 711409946 799510222 241097402 731567340 233401455 701953064 560872017 278865937 367753128 11534260 604563862 265488855 440712523 69839608 173683176 603111987 855793940 614209912 115288451 401668186 58648289 322083850 587919747 64434754 941416471 229942228 173321601 958229227 566415886 919709343 636096983 713874750 436485215 877804460 699290785 279692707 116883625 419073676 128568645 229548990 449215697 90515824 21107181 382338741 11983522 940361459 665427740 961612873 515174967 811486782 568153849 813068264 946162746 329998218 272676417 323579773 813915941 507647422 694893250 858624963 113335372 519507711 782243563 131740169 203070255 488027261 180721356 505839924 534210992 81438093 810508906 829235713 927491997 331822401 846673793 779587851 3557437 696912824 331480198 93068060 481040171 894208116 951340331 417023309 370307153 358750871 45381392 302721105 374011627 317656759 826949847 308290823 879321865 953655489 716803450 161959528 262490745 554758865 533837888 240546388 85737861 253280091 422266807 48372806 80374947 414394040 720091172 805278461 165687424 217400321 965845162 806779583 6616309 506563061 307298491 262869698 713761826 641588192 478301770 794250102 548059822 218192894 196984223 562562690 184641891 997221026 364348039 947784638 253048468 489971467 806174107 362572858 956406998 916976531 364372351 22294808 219906945 801816760 64461893 250839613 916501776 149661575 706494288 471892321 93728229 963462000 903980427 99436914 542528340 161186352 608199171 867818648 152101883 635828966 763495820 277046730 426381605 620445533 826176470 239247503 785975125 500422446 453822861 564502210 608850889 485497848 543376341 663769105 7071899 897219943 848238387 171928040 624347426 565181219 537991481 432820428 468556403 311021305 83673475 285613907 924166638 273026133 41760566 152156699 42790887 35114362 50908626 311899937 379466504 160918309 765775907 50159585 937985364 870618410 405591103 54331527 882862719 75033897 870533838 318529557 331458109 176521378 196658363 206512975 818605158 636897716 320998314 738762145 632540558 968439180 168670586 156968269 769727852 242380694 194546232 700146322 557193780 965480412 218908130 489965707 411409440 693263068 252978395 531754056 917276729 211557257 43168917 196289660 822070540 573646619 290401320 477319913 269594924 990230741 977828060 425064167 626142659 733238297 804771907 968632543 44640108 375556449 812760116 893354350 374994121 211109717 699929355 26518909 12079168 857832427 273371336 21885135 824898122 115355080 69672112 513189649 742684601 656947212 52319738 320694490 71722287 212926816 529188483 900229972 968118247 760140034 554656361 482009893 23919954 241335044 639754830 288332128 574813799 624704366 237441051 345626995 331072738 900089630 401547832 720879468 465487659 109797994 954811913 693005590 158737876 977006602 394809049 836071221 906604127 718099485 97060372 304082074 258851841 65658834 773962335 463291614 63280914 634782650 629365703 721340080 283908891 993705995 628648278 671053909 261410269 617843716 58610450 180257649 39136923 90579567 384854499 548953547 657829038 81911861 133971371 480050776 817873582 48633404 611930966 143081229 347029279 304043808 904443245 696888082 100566673 984505176 113457659 216512993 171503902 920871266 54847339 781647911 848328417 792175234 516534553 572242170 164778040 222886740 74894484 218763748 592739525 351207588 668373100 175372915 448879499 550097630 350267461 443328453 160171106 42016571 273970972 80611376 773728293 531912488 101677196 542594519 976449884 409776742 517838980 726790350 565213539 32147002 853522121 70227700 260958254 857374692 216312786 327990651 111258428 575702966 879913936 124060771 119983285 719390394 174182381 572009197 714614479 401931953 821747054 328121000 987343105 891133348 241561485 981279029 351087218 652250974 706982061 327878936 912564215 872465857 97739980 978209415 701086552 742191711 684519725 850488800 865484439 919015521 937383889 115831467 944083484 239114680 744907218 400315431 20751885 703658368 479746032 566550885 924777184 992560825 619721904 57812023 957384522 188363865 622539054 394100125 818172759 165898709 321821519 941170373 818689505 895251494 891604131 362033241 650494468 680047715 468466479 424175895 214559121 141532456 681365854 640916560 191906803 396428545 694404504 24378773 429156319 16434965 651341254 77954643 621894326 748382498 491479584 515753548 652945082 384412808 885228404 863674237 45600638 257206958 805526159 709556726 883841399 274258895 888321659 807453115 29298935 792625771 252804485 400969580 296820885 469305797 773047630 308838553 373645485 512823078 759518149 528807652 478654841 961520847 674152528 853409146 699695014 7882294 68049199 729325414 392840519 834714738 877407657 372334525 38294093 222101335 933770695 882514399 558518126 200822802 167208091 677475030 810449463 220135967 975762405 590786815 200676670 141104471 161096853 998253442 882713885 577747636 835931459 941726073 466827152 784464290 85096533 689349652 459196693 378466728 410125500 384784772 842423010 890170080 427026552 991824981 361806398 715485481 677070343 636435001 17525350 786269952 978824254 553974826 372906270 810491668 698277656 649725125 400520779 334419285 870422215 310300841 503236005 901462706 4411717 315161978 147105272 992158894 942171559 923504828 811978392 491262056 219523929 918952603 169532708 278597662 780097901 602576269 831551486 527579522 244327776 876858494 756176752 847837274 328424002 282030608 141460322 685607341 709026873 856310654 423125086 372700756 564983203 474189633 21499364 654457278 335902518 839047044 658535972 432992023 858505756 839247736 198889087 270349806 199308049 720915567 81218218 859420904 224520941 934606126 535834538 782842309 898663493 973692299 126851358 892859896 741305960 824332614 368209572 81599125 784849548 284671670 203792388 663876236 6312316 995185022 57186179 608682876 883179212 607881152 732243207 441036490 852724660 73572750 913119013 354148291 985512609 840792974 623529089 765578558 363314751 463404181 934904946 436069119 484720669 839364854 788883463 619934658 978776999 332056488 460331841 521577218 140175774 560620573 241679188 407877184 236904018 44567139 963282024 106329248 658684464 534898433 574650137 80223269 828190682 290755863 798045275 994981194 150969842 361565684 513470466 536748987 390766731 728224631 256833107 751765084 931257703 696825519 697075010 105488870 725651984 861252933 257646157 501165294 456901549 68920121 532668046 979439568 817716675 74679963 742024025 587040919 873799046 210945294 410764047 138482182 370722518 995500538 246370671 206530935 884205008 894617768 693770258 905887009 266477580 272571240 944990228 809724957 287307830 728270218 616354207 85823013 123838520 418787461 166316743 90922437 945978442 523698761 27880800 187423715 792379945 151514399 351842567 121901078 897072767 626738251 302323916 609301263 412121112 3099629 450223274 338894115 980146446 940926081 818650980 681177834 375262619 88522993 437287927 5474009 729286804 720982731 896971958 427239225 531154532 170586581 679760019 779038039 197795785 918210404 801916253 755297580 446268522 509379528 52963421 657485645 811554705 810784599 766220048 64058574 754439733 652152236 337171237 985605804 324678051 725807164 653758118 659689323 334450810 957043891 933548220 306409601 865573966 115631097 296084048 963189364 782646445 598795038 236227086 513307470 677805723 385708130 208605450 431204914 173938049 335634930 294015601 60879367 916048836 76955638 270121024 975716981 146426039 696658343 399099878 108476602 937967003 647578787 445422221 321683041 36869964 391264951 636681682 993095779 539060499 752384819 476746685 156642481 753537291 80028313 730538017 736641280 708757527 807381369 510638753 376617112 395400453 652836324 272577591 250875205 314479059 879938053 856310701 874555327 561758436 671420401 829986797 222083529 929773371 168682091 729586418 790535293 976574842 312349351 733993403 172556990 586217999 332440664 447591675 302814990 422743480 234638850 713718871 902998060 103237380 335400695 265350326 932700953 79838240 728684730 433443357 399554700 83203305 231315405 836310731 791805506 657145570 781205003 154208487 308872390 371780528 387531070 114465580 727053850 192504291 737369902 858846496 847994349 15264008 830353541 931751024 997640763 980424021 368308553 993690769 505938472 447194364 131989685 422697853 453732713 213492856 185873457 482525843 763587341 319894536 82428581 443226390 636197335 947972118 321749028 556569394 240539823 800987216 144497670 879736277 647390918 839177864 283790716 258490094 377941442 168821534 382368289 781967136 883854028 677889475 707025627 897245031 59068404 556286093 76312614 326121726 930399179 851548961 622741099 737177047 766057583 258184655 91259686 912262877 985014947 248232674 812533032 219308364 329839428 141746999 610592760 252840537 302975139 547991629 271660188 711224573 796175357 894883555 980094526 765170707 611642228 921998289 131744835 273033862 979364309 114964745 929107633 824586527 95540905 294767063 312758665 900706946 609767356 262072661 190535779 688380286 53629703 592887148 991483697 327775933 842266767 956225173 601456810 263325479 294747415 982444228 60855206 826918082 580942521 503939205 193132581 342669963 494420607 829087465 789378773 604670897 566839655 143286012 583399378 264336073 658908441 575061360 626716322 739044856 118055675 624804596 422160830 511302465 459161508 856388906 860633004 521361564 895310980 281195402 624256110 301017175 432096873 765818457 207352049 111222224 322015261 886252367 466797792 66655919 952702001 128186625 458564612 36396510 272895460 358823653 19954282 239988412 873385885 390490295 508485794 249108821 614556501 938959492 25395100 913704824 86058883 746643642 864574990 476714011 143919594 711440258 592232662 984655958 322764479 553154686 493112393 352565557 268469949 873374668 545189788 897285853 84321069 463214743 752055921 935558723 77021345 568080705 983707681 219922877 75478431 832012789 446127500 146395939 157715229 104000108 231422837 4556540 234829412 972643134 175756242 921361650 899392089 85350791 368871451 774428175 364720793 755473611 819771616 860740047 622706389 117482950 688281495 904350579 26555724 677844442 160970128 531913215 48516639 238371620 495196252 908809194 444063386 782017441 208280689 197031137 149400929 941861555 515703455 512415873 226465423 905045989 127877668 14424991 957731561 306632792 129650416 741895168 691435149 232422978 794854322 852587278 725015029 426222904 157803650 634888551 16993492 982059102 773514093 329364663 208040502 242728917 33516795 752552122 311915590 410727000 36767815 6198692 94234111 792582559 531799180 648965430 736438280 7418884 843455133 245059664 280601153 229648841 120622740 241293396 960161509 472669018 633842020 954297214 382470561 866389233 817674967 352588162 102771339 180925048 158043839 268089355 243747271 812004934 879375837 535700373 502931794 960057166 30901127 685463643 415038001 939816627 569593506 4757882 777637592 854074474 572292146 710588442 858690877 587740831 678075910 407695110 88173545 898885683 674666595 452016423 161561175 184604477 66066911 640686153 594116390 560934826 891596067 349092400 841504674 406719173 967572488 849430857 171953189 417137349 471409906 654263245 221501960 29582848 374607260 666814354 423269418 792307749 320667329 78975151 225854889 559916480 859070476 838062135 162950223 905146126 314147594 841767032 321274841 82407512 378728787 593049804 55266754 288266757 165603201 281916736 7897520 59247253 150238910 134191844 215931422 885046694 653436864 845085511 669321159 165749674 243098634 329339731 501358445 168034183 794215316 76566296 902781195 844565742 771365478 740155264 179813458 355792490 682187105 536783749 363941910 492476886 194298765 914593300 949105505 976821365 540976561 791772600 542433529 783994771 111061515 660213706 968318126 814638974 828889179 426804076 209573153 984765171 157190700 597059293 76696745 846207817 363586734 703314860 552076017 880838517 102787497 626042302 264870908 527964721 133989756 69411458 360215189 907307686 405184919 722305228 827670122 715298629 284066723 304053999 310769726 468207407 938540734 269532268 141266165 585809170 552684943 698953676 408798259 552294650 13553865 584464893 356400883 780088027 379771292 915000268 823531169 822282366 617754127 414114981 172818053 635153420 893215811 739796795 150525052 814279932 199256241 980056814 709974596 416514187 2914880 949491523 195823235 684127373 154597175 60970155 213529443 292758611 135361345 353421657 412259124 690823481 755085448 113211195 3646152 378706035 713088392 715771090 455178899 813109750 72389300 821834229 66993330 991598284 460662001 774194573 434671987 671599227 49506260 476048258 815972565 475221786 163335447 248145255 984244361 915421456 701654817 689991654 776074150 165154405 914465155 522153426 870463627 851386582 687192622 307472956 111482314 1890114 151466023 487770123 570713436 371827286 481006470 584348905 540283634 366212446 32698223 879735036 754299179 587245516 706312601 28714464 866553596 35592916 306612892 292051524 281917304 810149889 550306501 692854174 983994702 314413365 133198004 500195175 708004002 597198371 984596384 884903688 126590007 764691495 325281339 980947773 676624050 723095416 626454107 196485083 860402595 886521710 66146825 682886693 474118260 535836516 838571524 42856453 15298727 414907408 24769577 218534227 435916982 293274410 366897815 979855399 327404284 896888956 75291653 361031150 699861600 455852393 315018983 696725548 850572112 755874313 701912403 544870150 775608182 937079113 384594693 409350350 324714046 255709083 45437364 213514537 764026120 236771409 42477710 998729259 578216655 330937296 34183046 213928235 317381228 169231987 389292298 416530802 752371572 641142505 937318364 493979319 364290398 323061485 908688585 512834383 591404508 240415476 676947163 574008507 256789056 773016580 469914612 802134092 990239445 767059447 159675635 241479708 819542852 512896195 702943567 796037036 811286540 754119366 74999364 285182659 904159218 100969191 189883818 4170552 365228720 660533962 501311449 713844703 237126364 292289725 648556275 747010125 856036199 954637127 91831658 483276008 501626710 128203047 885388948 945546916 373894066 8028047 187325815 285559958 419877497 383519980 195055360 285581521 134914203 952808628 467778987 14105 833376231 206683868 949412601 451838052 665402489 379303672 388729 783167698 925765811 767338870 746424200 444757930 208951224 618132634 863187503 167394528 393246271 88630805 880798659 818802505 551490832 580248200 6242076 500611637 511821953 351250232 160464018 713358910 247042165 34910394 527106756 360072426 122864866 314317232 286782831 391334480 731784830 567865159 60674947 385045494 45044979 709912337 447850704 763923200 872855878 141048424 118620615 407933698 71224338 307403110 252048381 816494525 250839034 486338551 155624766 567578393 778787858 79348892 682645736 80929208 346590138 313308344 447522821 687815371 739228123 870261187 76145405 817788234 262688762 374224709 345542682 718664052 264281692 479417631 839757695 947516625 615956929 62927682 882288355 856991890 303097923 454060141 947011935 479224200 244876727 282355830 484417424 465329209 320697483 787631574 144613256 578316554 122795297 846309522 212836721 133290146 395550251 417636083 274815363 978553048 685066337 169335870 623789394 719199579 166723825 502337853 99258558 17795773 204399351 781190344 565247875 665943227 305823668 267218703 411974721 858401984 772681215 950907297 7094611 346912040 639669207 857408896 627841372 791329807 254425054 245215775 693819542 608159428 673702661 868781023 794511070 696390278 833704740 770282285 18690461 107752099 123539052 777331180 155955449 214318818 969390746 742933699 321033314 424837272 10202042 283444492 148814281 878783148 318874154 554594781 490088281 849170110 172683848 803824824 176301692 870491727 641579649 238175244 386574681 582970305 277114577 715802627 825719927 811917414 536564140 929288815 207204588 725892526 214451681 944743859 288802796 929728813 570880778 951716754 998480672 124046867 732141687 825476928 61618677 520181367 672826662 135303704 317503084 999668292 448777543 288095641 730128387 210004378 23416576 942188612 108622822 678824271 117672190 5415770 511396518 892592500 451132375 95023504 241097313 328249801 475265185 282365781 412516946 400394138 776565958 484834866 227379142 855857022 385543304 752869869 725386169 919779134 753989823 34437355 559557601 809587198 287796908 516554521 417278887 662397539 159771138 916509654 3321603 820092856 313432573 222265465 891286853 16721879 649607257 854378913 487080889 357076422 315442220 155093217 386432412 478068648 369197898 27019689 411348916 374805107 462183786 898330695 472313529 884806947 120803630 223719641 478954402 339600823 116190180 164738231 93470878 814761590 740169589 521106736 308700038 46853394 318739083 589689402 468202009 615760276 580685819 96203649 399381966 515865633 200693974 983165646 339660484 399955931 372539362 303947656 172245259 720503913 861219064 538614150 615456467 97046691 931229834 627890673 997145822 264159457 287486202 442582891 998385716 668771923 321861180 840540185 90168787 715555809 867211355 791549126 278796751 387981475 931606290 475456178 726636272 855668876 580160680 857137439 810664217 678939241 780776755 881997675 610747469 461613005 76101377 651865764 636313164 160011410 600597335 300455508 352383668 845660215 738879874 989252558 542639509 571108462 24914001 220158427 229531537 383959240 440019598 332124135 62679400 868215657 865142746 918653888 461833153 408434444 604701771 727780761 372519255 5676106 897609086 175331619 424921147 517149401 185544566 882687664 923303153 567460469 339213725 310321221 315595546 970040217 851419346 956375967 266170569 321279384 132915311 535662841 663843242 934728434 328658910 474741712 672532397 143127167 450221452 338230980 220321561 445194712 870404788 798182174 258100849 740952088 267147430 590487458 974008001 151812034 252012512 453593709 995125957 923842246 170692808 526242451 956737796 221375863 341954652 100829689 323794973 367657591 235920265 958075450 486990698 470509829 475393457 761016429 753831672 516888281 475718155 214776776 967930400 989363716 804486698 789753988 388778722 464088071 766065806 514233527 10144736 238234820 398360227 575159614 959195530 872117250 121815773 682314342 922791447 131782822 957838263 968567662 455680308 271596486 79498445 298681449 408802514 205492277 110365328 567524395 659856231 161716835 625043880 417807424 964948379 178697357 559930294 678698261 761247825 163505909 106912930 72496839 432533438 377969769 767768648 61306878 62947473 537535880 256191051 877952151 40469035 952526283 765641621 21949475 286208150 883230712 238774932 104837200 956341303 332220192 607319703 71627498 787132321 296822974 624874902 26376099 200659731 38989211 825072877 642191635 713515040 833254665 369482971 292297364 164832715 647290714 530799513 547360043 825489465 599239836 89346264 295969528 957395754 945129150 129253223 725950884 231734748 309276056 95567398 425966091 994539973 996693419 171446972 54539541 540179108 854582298 244874277 37076138 490471422 523404818 718745563 143367609 727478439 99734862 463317871 219176217 391014650 238201942 777963466 13310988 66444269 739401818 671182253 25060752 602814449 299758133 945353722 44629338 763381560 55539924 788620458 192147498 226068066 987703273 492580147 413227457 650603481 301288720 369638119 930839998 819565539 955077307 588240713 765615960 584009901 578510168 94801153 801852692 490387366 720649636 555768802 475783250 257473273 134023374 901917812 308452038 391100549 267001140 664684457 16346785 213319550 940950290 287924234 883375512 572545270 234200575 673759333 578950898 226265849 209236333 179203865 58121075 920375876 979623852 196833462 7498859 989833547 111932569 514499064 523051164 9283901 354869671 789429810 89418569 798161680 509176499 423798424 13502792 22450921 951635986 228815889 836733306 558867381 918704126 362980419 281075256 6759322 774291179 899348770 444620063 242849762 49612988 161343670 283002397 860356728 525084455 953776562 435562270 397749686 181326527 269513154 790011042 838738714 377376248 740809773 653191072 518764973 886013431 322524458 341735551 298870922 131747034 447283784 285736753 179777181 829741016 11793574 135097727 215310154 841044505 510892767 639531828 464884157 27278449 6753335 710037689 674169305 915696897 800542579 156644110 466579181 773964529 196478704 910132339 797870395 240474937 865847362 559017523 633314474 502051576 760730394 962847699 776085931 296238523 697243983 818666353 80830372 791783269 349618971 697247489 648838825 78800287 513533447 365783096 467557138 385749964 613532594 355816219 295087811 719332577 775136656 231016338 661262238 987166833 205927699 981421132 917358308 509283717 413885031 817097663 483402755 203123691 973577372 172289449 356693327 764742791 835883402 94807889 881512099 669328486 670300592 629923432 813545381 54057128 680513769 278816469 392828377 860932343 305113409 252081663 497147839 123507825 567870153 778791258 621239102 404266078 729517007 489779937 143079707 203021945 821566366 821809593 11148573 847755923 824078679 443303006 412830805 178046581 247159552 777709404 225899358 614950773 783488395 417200169 463300933 360859756 127881685 395304965 124311622 598822623 424096248 563614020 230088926 358875562 46802757 490402359 948113053 643081300 49568845 412506138 848798650 195020456 815559495 560267363 683062627 748701891 27544624 159274854 387228875 576216380 265982389 895988496 644448267 986257974 728953395 227886659 619800515 606654523 110963094 388158017 767608267 325681087 770823197 802215463 782597190 992793286 361877475 400922046 739698459 147033016 951500734 780770005 489541142 380947266 365037018 248640779 158906013 255224624 372427858 369831702 955677816 998197862 276736850 126026088 329689344 592038305 6472776 844414985 313293444 155787760 587900325 468327307 707503958 958310063 812067771 834837720 18690010 310773133 962349046 814427953 269289825 33489747 831347750 411828540 313486302 379229504 677784410 101476008 573259657 637415487 20572022 423656311 653187791 693414 388247813 129324358 697499766 560520588 95500825 969580819 701031323 551306232 351013607 307849647 986165288 163932145 551998256 517925846 532826331 611027018 56377102 804584357 897835840 707040375 414899699 201797653 962706647 902318210 877365571 648450275 487598516 383038833 186571646 851210449 363005860 727889646 995832900 532935348 573366556 661780393 843220007 976699407 765648976 708855217 872888566 906017780 83696106 889941135 43315484 990451620 324528229 278060948 462748799 609603220 675913711 403057448 173691068 542432727 458091136 68725535 236830193 483203737 529080348 989754489 614480767 488834222 44166508 227610460 347744518 389149434 287958807 611193772 483075 304948603 98017862 760649633 507942989 290159828 795673355 951603445 457198039 86992244 827045892 983767268 710365315 900632312 768268847 808245099 87545553 926702563 409601323 842628091 48938684 401590580 756325434 223331226 544469008 848207645 187841116 177176876 646468327 173120280 945779245 497924272 994866746 121017288 663069100 486492892 505255049 767485490 434764042 605867244 989632569 798516285 990059277 651463395 317585476 672229444 91223666 299197221 147091217 402066245 828274626 113476302 602509541 866623715 162602026 845410981 66785176 38945278 265295318 670648156 909788253 855556945 180752540 600617723 998833558 951575861 953308741 195660776 904146197 300864795 822248227 931146607 393268166 27517497 681787356 298775987 390038165 620130411 118397388 647110695 318198858 730747057 135580848 677613459 857150065 794842072 928023459 980115396 300148853 122051613 469906760 665944858 871907471 311703278 920339707 826349075 832611515 29495520 228905000 214142952 733908918 929022825 953572855 107627397 29352151 459041252 87619111 545141287 460548444 896333194 980772289 590028908 185185654 12302798 552113044 646590847 240574573 998170023 960346378 93103176 700682454 704628048 135773848 59388766 291875224 130291314 627040212 455963820 944879331 128627087 766962476 882907847 897039332 95827873 414649256 573312617 341774576 69828145 353623327 435870359 892013696 776948415 281607898 160367505 719577223 97730086 22715546 799648596 483984383 733576868 167662067 508991234 721916297 979820521 613447950 916984318 13444739 788703584 166274550 744034885 814015104 963911132 139959441 530338495 90355016 473345282 696605840 602251771 858756362 565724088 675041971 368147016 298783429 745868128 63846005 810054858 481886700 922307837 876164957 327446497 748982830 294991635 124735602 400008399 258732233 692961745 437575693 798941733 697685299 30029262 743225458 833678786 109276520 84233646 172581129 944253115 298629133 576283849 881916862 448443102 558072352 668283146 576546677 464775222 484368838 139794103 622607189 230309976 929553793 726285183 59185106 48635513 457819593 408043639 103678820 453315116 849174836 47906076 70066236 954983585 291944264 324967722 598418179 293529706 767470138 809596492 214602833 724349138 704180096 408776975 258013806 484355249 242892195 33229191 491520635 883087649 521375869 255253347 468483687 204590893 15849588 935430542 528687075 948125907 780003908 803758804 647955461 778410657 479537391 307599491 123411300 764928740 62756374 422053311 132311780 67375236 301151093 511573094 286860533 380118258 808238329 763418981 514302819 787772379 319450253 37959444 896024578 746814149 496182878 775081756 62463242 856214489 742372539 949275043 83857931 739890781 911209954 122796952 467014861 25368283 966234969 765964335 910183996 33365730 870964249 788631729 818577156 331444591 428587693 915913387 269173070 472732651 868116849 769332508 391206175 317684173 416793437 580765647 807680630 329547360 582577418 96989926 656078705 857382823 944626529 127499571 796277374 232895399 369175880 311395334 907487486 789118384 194066840 625692619 740194557 585599188 776700709 262459894 4523791 231601911 692084006 148567094 865188244 483995230 942337941 521600957 615200893 628073569 941764109 185209914 827338573 31916252 398167881 756053316 804705811 83807533 879288853 556517224 412480827 472671006 10742620 730055481 637592658 54293355 434252783 904989385 216614625 534794244 965907929 869624611 741733389 785111827 885967057 269624013 154591886 453283029 682844915 210524963 27612936 12024336 526543335 265761760 801124457 447204982 213684180 512207938 962232395 407524368 501711392 988225009 64892130 99019138 120975494 731113456 415963137 11834513 891782469 387124265 75707674 339655156 848093827 777290930 928916601 919318980 838715384 849637597 179469618 786565356 758888967 268200406 904891513 119467794 794981039 724693080 635721847 353291541 934117156 309745294 386047111 251515886 351730160 490161097 910354632 27112870 697815854 802553317 425535286 795762595 587534637 171131547 828803232 692056513 842427641 687163051 974088197 251936655 884451149 593967817 560340294 580207655 448782188 873066430 230106139 213615241 399736802 945753420 587112645 886649061 11975240 612594062 826004833 342823633 506589858 984794576 278838630 282551681 218234779 864245685 962436321 294151140 159093616 799299669 516372526 740467268 946023864 492651978 77641965 143526628 605809312 21283113 454204842 456427312 999731465 413395377 133425778 896754278 277539417 954802111 366031399 328385952 424676091 974896935 666530374 613293712 109291026 473290960 704542605 546378732 779374287 409041865 841829930 354690685 504867720 537199032 357936515 28620219 981315313 363462944 160310587 99049975 277080724 968014364 616443521 337409491 934860352 829128195 569878886 694054750 501613985 583223912 364685972 432425629 869167449 179037259 598781267 406553288 845772143 396442414 600073745 981108547 416816224 36983073 532669369 105814295 792948293 821957360 132480973 739995513 28805723 410542627 683803143 628321518 253328054 885942403 898625727 451460282 146340938 905719162 384276113 570395405 312461888 343868213 136609748 511472243 668847071 494197683 743011785 853649593 350076702 413876953 821763194 789583278 38305935 433685907 612460343 487617289 154212041 852009681 123136261 765845148 868740121 555765701 376507782 825020874 734395432 623791707 422982030 417055657 493478235 961582229 403213870 809890702 25013347 92580377 930180143 297143659 840537326 538004998 103145384 850901981 553006154 177412828 731737916 16443023 67296003 568531793 222715722 946125923 777652460 547853707 390498406 326055004 269067089 511533922 925312723 113742027 207673052 403209635 621280623 466645878 760864878 562658954 517267793 113862499 684910956 135709937 682749386 831470352 450335829 802904790 353293372 682091533 9647953 125212592 783548259 317290526 360540970 29474768 238297229 872646102 384883709 360467924 359526975 100917971 167974967 667958661 847420866 112292539 700867801 269972070 21979843 108666411 294660467 331132666 255449546 151306966 151535707 208322126 625487842 501980855 948481875 103930319 389416211 404511073 974112413 144597957 265052972 345424023 450809788 233959813 388650029 578672155 181997433 953843883 383580701 665831423 727378418 834088494 904437645 523144112 299894569 113380321 776447319 251927520 685106125 100799708 131392060 544620880 221952961 271759599 732988210 465128866 315138635 543454987 225118918 129817727 743502812 421467364 427039623 961042426 153057142 573071646 279022747 954451039 709176651 304308829 418255002 238169509 551545279 427247089 182932906 739933419 665349830 115185677 3488352 573068215 596884517 682709361 211120663 496515799 810400324 325663078 839213162 284632606 212075788 810671281 921320854 183600097 214151617 807526593 985485692 289376615 370055534 494618858 873811130 655111770 947313760 900908941 3778686 240761781 377360098 685623424 930739566 445250797 907042060 534169545 156092930 690111681 679906320 230988119 974851122 64489766 903100472 541929290 544191500 984325726 930928770 538940758 266211811 166096406 854276518 428832226 301500621 405162659 40297790 319806272 131369958 190765162 528977932 316563612 648345616 662199576 324560901 386397894 965260450 910727752 360446526 978299063 795223575 946630127 663917496 428265195 335334230 557518732 334667790 13798022 624390551 138243929 375114324 533077990 959778833 367286546 508002956 695948669 811105968 16141837 683106201 974155088 699566355 438696654 814694431 432446642 119778239 674931230 671573862 400434753 63319192 787319234 673831684 319833957 14395251 702193794 657016211 447846606 679221138 95760670 517662271 912887732 891546201 309303070 189998050 266437728 173995963 919468225 273355537 794173562 306321656 953318136 306100263 522553271 999801694 69117216 122877917 994646919 709309022 438791678 191002074 326421294 451927593 185675062 821389184 217263655 369718390 176054217 536208073 239229135 278281006 157197051 156455474 606060877 82956319 216177493 373864858 362102988 34658445 158917227 545414638 719460174 940180961 950550665 191969328 294714465 106196554 822472940 891012546 159904538 574232374 733844677 286223360 420607299 38675411 802991865 246880015 5339937 793142111 30372731 568223519 686959093 356487083 301673527 508451159 953001318 267771165 580798470 330594849 906722125 579677817 757532266 395443426 123945560 695223660 24327783 912325028 839811185 239059092 602864971 542244387 222327054 578672355 550185598 90065714 503195928 2523518 748990119 158968724 140233466 157249200 814066593 806592160 171869007 466803609 597513944 82004958 142950103 2385114 100128488 376083840 686032263 388041776 172079572 463340464 149160694 517777959 334297782 655776178 424098839 834989524 713709163 259254717 499910753 299751776 361038029 69811806 82973750 3193011 79499861 197011039 722838528 133096887 842593553 144658773 667825647 297461400 673002736 319255276 376221041 816459206 787836969 649209903 341039982 277763136 669362049 939205289 288277265 263279558 343076434 183003622 72322377 768921119 618247458 741061561 771299465 237754862 416501851 355056794 329600099 921630116 967667277 496341592 351882542 128378713 297363334 524705280 21749128 855414656 181277029 109481830 372672921 694356438 957519134 525748528 452384445 122868030 351527124 676204613 212370933 786703987 862802221 840306113 847802170 42535929 555214004 768223343 954475494 844953132 757681806 190725951 21496254 558868513 93832107 200234462 783513087 259005618 995589566 303957969 473140549 522666762 832230264 110598654 233120476 172525844 35232856 786763088 207857067 680491894 903988906 945138916 716606349 879339393 736573112 732233792 536273156 397406434 99941154 364234961 411770705 99844378 835879711 34374374 280279134 509305036 84224522 452612729 322175446 214921011 829633947 638696297 106499531 122401123 789111119 212409580 807310401 250791336 322503086 470726633 387282490 790788159 410101404 985563971 774758244 124843591 983909084 488069420 901204116 700912208 439887852 834795479 159333388 705033050 171413187 614544647 232055736 435126544 36280307 616013913 669872663 781741975 296956317 420770135 930228991 264566815 603898065 20525166 680620843 230493786 707423392 221326428 977351851 4014378 70816129 996957859 408839365 671492018 977022354 940525845 596194645 865908994 304018860 513048864 854474427 429911953 397002865 413225856 299252826 219023459 207752311 187602369 222678766 243923503 914569013 224121921 664867284 726598168 765976989 924310601 576391146 599630646 297033950 70820149 467212714 893152214 43085544 213905300 313872718 963347425 975001894 666226941 251215443 983335227 11307218 173964555 39769462 293498992 573667042 140682589 191111855 265546404 198894154 269419591 490821510 21501534 584124576 273115775 804045375 397905817 709811456 591815282 928687517 853401075 856523818 856547445 165969267 392983947 402149250 83250850 986882106 879392483 116903849 225290743 213616225 744306088 629839412 718183374 96219252 912807141 244782995 960071385 938470676 365945831 528083503 557411520 828645180 292762611 577379487 355139137 430735819 940821174 456340070 820894216 357923229 227342075 71902809 966126484 247227523 957039584 111904989 785200213 346346098 902814978 149074061 315117657 686725717 758229663 303318522 604378687 46159897 916786285 118013859 884605861 309258378 737622631 67570164 805136078 537747882 439760100 970698279 975313327 831191288 37905716 70415367 103631445 410365188 929097876 904151013 891548317 312484456 740861359 249454706 618828084 96503758 687456714 693447477 57801577 871603770 443321127 536345222 209985536 389459407 438596003 447093789 907478847 155773136 51614909 891775109 361673486 723602133 93527248 4644665 28037765 670927847 314347806 826159751 467595081 432477741 774672179 510954200 703959102 518910127 659627983 808960743 931054536 959890734 469121505 57253139 891408063 581651197 929780404 66036338 893445514 15049192 741447488 361063944 62538890 857172984 96550006 934783762 437967450 226083148 319681160 255191391 566601052 871510482 848576183 107010561 848101296 811097648 378217529 931120508 340331256 847041096 791406158 899749040 48473872 205112230 595730110 554380506 990440765 703237741 822434631 284215816 667552174 751733573 61999443 354780613 31404090 938884301 856364688 735147127 178626712 457704158 127478471 952787772 582098119 583783313 590013919 77901796 766490008 963734317 363411163 506798022 877841237 648567702 235607742 165464862 102776800 373648384 252433600 423987403 198389597 488994835 415704041 222133900 878753320 741203888 96437883 593041047 86847093 419533487 175850844 276509232 715782073 58593939 551321324 919888133 597747754 655023644 984868029 197342580 657437186 886556056 241068671 175276956 201486740 882327923 317269044 665476175 572391238 463860540 839557249 497225279 438136914 457416755 254696819 147305810 790548626 28037418 520505597 136915075 624779729 967617122 532714233 673303847 776024341 359550165 478744248 340605160 226377014 342417512 367875952 401607735 206829687 8573047 138940429 486187509 74428315 299792652 401980858 30116379 792812849 116416243 16171769 561711343 282671362 808695884 491642549 331744725 107960460 833392023 354985118 739254249 200161526 2395127 892338313 432491629 527072016 226125523 230359354 655010019 42415143 178905730 911462699 404687293 161628571 112357416 416836768 681139538 77092266 346488192 404747934 999752499 545461013 137116183 163866425 950364980 154957181 70047402 900414424 508061200 633561295 856237268 930611298 456042611 758128250 493033330 473402161 25966030 949935427 528449174 542622559 907328430 82781975 629706461 288838382 860073810 193804370 863870736 993384236 648937605 82579793 418417227 943511189 623303922 279102011 110807956 835527650 882983495 978060005 878699458 136683224 249419193 236504841 743591785 700026066 948396195 978229609 977259304 582715842 589425110 667190753 320874909 385390429 465664038 71690282 117824299 213395915 546503095 719900095 45865684 990209767 48415254 982105284 865900608 498967208 565301293 716848176 839236920 15533102 741119128 140126044 844540033 708109648 437169846 813268743 809197158 730872779 678575478 557248320 963158438 864436947 321350527 309652850 242086588 462860899 713979593 359187539 188227577 145663735 985257000 817302327 766499263 368706635 893143271 657800565 318457263 679363684 980790863 36764906 386719268 695928091 817017975 739665637 381478939 400979629 403113009 864943184 11466210 838618276 606610972 686906575 818951938 406456778 571735596 28371814 583792815 992487584 51904328 433914963 394452815 529084949 64417565 499087774 793318426 675256167 574026467 545955623 339637267 319100582 568194304 576974312 192394815 458955743 74545092 670337710 85168231 608388331 804392374 800996857 820909757 517047893 88940299 874383519 56167927 256182729 148407855 635569995 612648229 680108019 720225283 689259651 273396456 620244318 512023826 1941257 87831202 510904771 789006645 756259256 657079786 946152437 987694742 34991161 179565281 408765863 791718781 783738226 851592058 309726886 972332030 73200998 918360178 998163612 580712087 619162327 463415497 714232012 654061488 32045358 524663454 727166146 212789311 527940470 394682042 763720027 436659372 598498679 209439143 11487414 991760463 497481094 193369079 896468403 454805302 852360945 928433748 944368870 282369506 834288052 22132860 535632171 911179037 995768455 168242503 601283693 763543028 525067631 129503531 899023363 614307977 979191509 209342951 411924672 851349977 217426446 761707087 509162744 614033764 631688298 528607718 965059270 838505215 125236029 145559289 891308890 408697067 311142702 959306771 959608185 483086300 779683095 14652787 341541429 110372852 411951372 598355894 79632924 506962601 620296850 220448945 489166559 638325122 699562592 743049671 431071398 661713070 944396528 936218464 181785257 1974021 44652087 806269031 664334290 630269319 143968601 431180171 922560986 368456344 353674307 689773246 306455257 776395694 506401431 183591969 19173874 620471589 744895126 859242146 219169047 470611382 587266367 474338484 779154576 426524292 691703357 191303697 29214278 268738521 691826922 541162937 489043625 124317398 565257014 853118556 241503593 830767525 101387903 477188468 847776557 574832039 721645710 602684557 728056852 438721403 234377172 706344908 489712958 525066596 352663583 587308873 912351304 373851809 740967931 857453482 713999507 447777404 965777739 844713349 800331632 601253398 818981377 929676781 726151920 459075309 145412232 955701734 343295038 781654590 734666749 947254986 892179796 688464438 481959655 838281804 864411022 206403318 313499705 246109314 311467374 48031493 241125823 214618372 813061832 472604686 663278863 267810548 910026448 456183552 718713445 999044942 7091633 172186192 278213839 973172638 824671184 377049072 979472408 6830729 877854314 881053861 971601496 992539869 550298668 886843371 780134653 643033311 439983773 195010309 728126276 551344075 405521231 680315264 916738877 449133667 456307509 341570289 379351970 767240386 447994117 32373251 177669550 694575865 435833402 188627399 607061693 7853717 134519775 507947514 386010323 874007239 464534071 444101416 167042017 96437096 413066406 150061827 167306421 240885939 601234503 349701265 760609594 370383298 442971294 951388857 819215311 870520453 360906103 940150080 475141228 369027998 891651168 269947593 466547794 582708543 747494266 229726616 353512249 68977954 801279936 855113787 349882388 699597748 868458601 486114893 443628742 52458665 540347986 247463202 101284246 898917520 973244293 272730988 375805646 61214137 198143669 500130541 602145393 917007009 423436247 192799012 329536991 619622216 107904472 971934901 843858742 766033823 335151331 790658955 636123693 656459371 32179916 532455055 626643735 786079112 800035817 119812663 23301323 909303298 735028362 162909362 696585618 808985100 679926709 175483215 339156221 369690553 531300519 793382253 260559026 944869379 535113771 872550711 919616470 963309140 333604204 849931863 788307587 969288024 467985457 334444828 6187043 72400237 425462395 631100300 94991549 920791929 230900326 271956199 620809156 310511339 606675871 262026019 950490704 433865325 893201021 119337241 887055538 71840625 930275052 965234550 318523455 396067000 268129024 802348429 55222030 121172831 333041163 823815947 295390514 461137373 146522320 533250189 724055928 881091332 370026268 246054743 480024038 825883462 379255739 509173150 989370288 567651557 102591211 648924760 601588214 782216955 846345282 983472209 696830725 748802083 440484839 179616876 273515971 732581942 777141528 680556227 426271157 789297441 227699318 314423446 306361476 978032385 444391145 585368820 881374516 564885284 801740568 504909630 980414866 980839101 229489038 915018619 884933150 295186610 889754525 322340554 760666541 248017291 320643069 821831889 828705661 922934964 471996571 474227785 515422059 780561342 576172200 517725286 572476652 695641651 555566872 960402241 469828499 502514881 339537204 627037131 880520020 747700573 979271870 540468229 93595725 701996118 711643179 343409929 392054930 786763751 429091238 569890034 472114932 661937848 425605773 631865748 777992297 97860074 803978640 952369339 40663901 36820523 776228833 195877259 206546906 695473618 695185092 232009473 773116185 643306437 526324352 410079505 87228729 232613292 348944626 723552178 186304627 629057525 767507452 950641219 368859077 231302865 408727750 342772445 721542647 775371469 53003452 393011595 436672991 479344502 784080857 738606565 337386732 794815407 611121143 715228180 492647203 1867678 357561009 455685985 522960938 283888391 105002742 255295208 143390788 556951388 748685033 347721425 937421063 665285500 481368738 845142173 833067350 796456618 846797869 252498504 322936341 970966825 314141846 659176667 454214068 262984746 378183782 626035677 33595160 377208000 690393920 634284922 36525457 579123071 678569832 709295480 363069382 327830689 245144438 846764399 753206335 218784037 891055251 232923695 360057225 818706121 25534356 527869777 951762863 337007177 64254281 583014093 518031124 757364465 61170574 729270156 250275508 476111229 318164221 110628133 198448254 913231659 804477829 116312416 133018072 178726392 359234940 632127035 292511548 703296064 199876926 308728195 72611639 25882883 253060977 68419954 483028204 155350948 172522834 659279847 142527381 681557214 690608162 179714398 258841159 984239941 596933174 407176243 522053220 927302829 876151796 414824142 573775715 754005226 615386832 594146799 933526194 992671166 406432873 93540416 148489618 353350168 263568844 381999940 355028863 931882373 211636263 157476435 844517126 411159989 433702871 398541786 295678539 549465963 178581232 410728789 252672608 552697890 541298593 347787540 685018364 687790945 730631735 480493647 403866169 758864217 792782738 552244171 343113375 878276492 545686108 524958645 511536957 703292502 34179238 34079613 791287762 731893533 534268511 186372834 347022960 213380329 829198387 29542970 853198599 731533983 211282244 889556227 855882141 4921122 232755700 757584952 662293099 999336115 488326434 847423047 24122378 328380468 130578032 97031205 16827219 977759028 697656318 272827008 516271554 550766639 473371357 531285110 538940439 83186110 212898553 408657481 604273516 1240320 198267137 398946414 230310962 908188884 240193592 246263988 890552528 506472556 120885270 46389693 919588768 462319299 731863806 73118159 74771740 267956681 722480875 390324431 826717897 663564184 864255092 433527884 611548218 409826354 643283847 911271117 894095805 580337739 363776477 866315612 540722123 178985493 663700728 687039579 417535855 6167627 130560257 298798468 705836290 570215862 987979242 596124746 549950154 105941662 329106557 774702357 138646058 904405866 768207237 657814181 942109298 103538226 427455058 989045838 867673756 846853361 641674541 196646488 343186799 794494471 202791305 741153755 867916771 887193615 601540202 753076859 813833071 595603523 328683719 78068715 367928251 897351034 304696774 437281936 499715414 891312522 890742743 714633624 317907215 953880964 906373195 788396949 774218352 869458584 912333013 945603051 785525901 88320379 274707293 996657979 100802676 368443652 339594135 836155514 382240105 485095391 673934369 977307238 379379315 515644163 7093279 115894054 940020148 327202413 638108627 174906685 377234015 719051012 887349475 282715722 366297416 582370666 412452749 278101223 324959078 955196018 88232252 785779505 718522518 874553147 946730087 488589468 246200361 782179160 830591501 378185489 988213810 431153596 604957813 668152959 738326447 797750130 282199409 987622389 47572353 115896760 540784951 143760569 252773464 89787862 953794527 105060218 876944251 631419741 771636456 622443916 503741060 622186325 205266533 194516207 318564885 215959802 337530181 798274344 503700712 641857399 847283231 749672740 214407246 581595624 79358268 144559227 15157208 411763785 562411593 266461779 718203150 6362652 237289369 805857717 167993205 51600901 374861710 896107918 913632542 255609427 959687191 577594131 887645196 35921502 399844664 390310572 672262545 120147271 381963741 697644769 242598472 996775785 558740074 776775580 134814880 271064367 953304721 755472641 356395532 950200294 433987578 980984979 723605806 607803802 578453161 576312810 641003961 106246525 251227824 487558920 538338246 282610687 102191596 753329396 137615627 430172685 155431933 868229697 753665599 773957981 877905658 794833400 949617696 863164967 517252553 407739620 877569179 372005737 311097782 496860021 202569485 544263908 467460403 863269232 79937144 46620712 184290846 974862521 129527294 786149353 920003544 887385083 123182322 782438453 547470479 807421996 784172245 185316565 19140616 919890069 378246272 100257649 356656518 753888811 596051922 499994324 904620052 261047753 652632013 341911234 984405031 625807428 315565039 75547698 274309790 11844177 206545698 996568223 848360937 990917282 799170499 614863409 186813278 691096500 941035929 178687481 311913089 869262358 582911579 625329962 641298284 964301560 126903915 484391110 932348624 332201195 488733185 598201509 504116735 483629954 314236646 868502727 254804975 967340275 737478962 651027481 263449071 308951968 87776810 2515627 460287035 813745703 346917684 922145657 420547930 861225490 995008019 34612536 18234259 435685004 880647772 884984695 290515912 137632118 987945228 976180520 973619701 735189023 878994168 880852924 701193318 82867399 969904079 169066112 7585568 11624888 473168339 281606471 949911586 285156700 29453576 368778197 650025556 88661839 423724998 511520793 827948215 601888738 528513903 772951223 866351934 978732596 597146926 638851482 313059951 173128465 94412811 665407558 294140218 482270357 474330320 168355668 378030318 681020601 346181071 421717200 250486313 893867535 226220307 368366960 540377442 726277082 568426856 743420389 690367910 212544049 504491154 381682466 407024065 757366327 17344264 509718406 308504871 157698991 877901336 594533090 304438241 357477100 772578951 127372702 213087108 443671037 862162467 807996987 369377281 667121028 993361929 25842629 958064830 454301433 335229239 199794992 265423052 969497226 674077866 633101301 924381222 730005611 180547186 693494325 145824702 791979701 248413872 828946037 819419132 284297955 174735286 878774208 750926616 639980610 964283160 73846006 651076556 845594347 746131002 137977694 290374761 825874863 890105497 597891603 367479877 864474047 264423091 524425513 860055088 115606359 894184742 161140955 191750707 63512567 941426018 206352155 118986712 40721863 23799043 798371230 477651767 778162618 836883028 907599875 153839380 959717308 195202330 792039826 907526576 105879177 706438133 570880824 538514177 986504436 551678370 515607822 993117432 458423720 630547103 474964999 988334577 377182552 208376460 9504093 833167493 743414394 310256800 933297731 364825544 555306800 689814981 306895972 686366844 237711124 637548719 913215772 872954474 635966392 655144707 46570705 1961126 105143578 629293780 139578358 374583636 24038177 489133379 128295925 28361541 937200858 775193392 317629252 195246819 969448133 838494919 785721384 4619280 57835567 819549195 224979627 274598105 486172691 986186025 199936515 467477186 152401240 141753205 12345425 689630375 326684751 920016985 537469700 615750405 613899324 958539123 804964221 178771763 532247246 602571269 819177757 665803978 266668205 399819188 929968849 955271655 925458938 839817137 500719867 406931575 182218815 596030516 689850354 835287566 71421007 942442999 637072931 343930031 693334506 854252305 521102561 626358882 26285677 794280912 919358426 789319602 292350332 297640892 779303965 842838270 114132542 270318008 586425703 736547737 107394824 158759164 165946280 700304351 551859756 542648423 4330801 726924412 904716749 637319376 643203498 230220426 228123190 111437908 513819668 164904051 371076666 233497878 305410437 468353920 797385277 604734507 288066736 210439334 168750790 444657178 879010758 606226442 719442681 183736107 867316870 489708272 125731976 316741170 135308468 426103183 356571130 451858344 817754144 261018493 541553246 419993708 306857693 200559982 104337961 574478886 629166516 471489808 349573940 468135413 155111958 613657585 546771270 970998071 990805699 456446921 786170436 205756098 605744303 629493271 495981444 282879266 752208994 306109564 351470054 700174067 167466498 384826470 9960271 534233686 267162596 632705214 326242322 890327478 436594075 726370778 448389563 874254677 404620778 888132704 587909056 875444106 455543588 420969132 479729793 545108243 923466828 115667696 655242214 523316538 842697201 277502160 338041389 137812786 393139602 674047412 436206700 663850150 671687937 554095834 107772226 70620758 466568030 830757381 901712789 806125538 426239960 247726101 616284175 808822318 544089846 398632065 357415001 770374585 252616339 103750862 639695965 327759394 549859334 556834852 815547305 35004544
20
7907
20348
20951
52768
19319
46239
24101
3410
13632
6120
74698
14195
18966
57735
70731
40600
29737
44608
10542
55771