83472 285684101 307745472
670680491 344065750 519922392 961253181 231513036 403267043 32581226 296839030 971905113 844703554 819634975 742439422 119845492 98450637 535232427 843422638 849556545 532710411 332507011 273313629 395363525 972938369 132202697 878378601 753734281 120374087 613242020 845030089 1023044519 979578236 994821641 26142881 297247790 523209642 256498371 800627719 321170218 767793190 717060919 703150277 468099177 320858659 772367638 371374099 539711178 890881916 366780802 904832766 793678713 1061187690 505973726 50459411 416584633 600560883 201618910 654384999 494207759 295072498 358547244 3589463 586632956 614046550 538255152 561955279 226193938 743398159 381109804 1199885 358378763 831487473 554647232 91157238 752205856 927235167 1025984934 70953014 871755322 293583110 412106191 145208144 812198500 890850057 227183460 252249323 930615877 959067874 19821778 67901459 346937520 651135145 589035835 461405611 952051330 427787733 260463630 395350472 858378072 673410246 797642713 506533100 979817946 524958679 675358315 805762935 628716485 224524972 376664478 849177435 731257902 307678715 1056845197 1061262224 920707430 867318942 144363989 898953908 320872846 657791710 396919203 637826657 422600543 831800287 927187363 382517355 770581642 682779909 984752 385950831 85987431 18040360 164513730 974656432 473682424 1073398373 281293109 451109621 673913453 657322952 413256101 144420025 1028178823 852264464 919510813 717325606 803617281 791119378 260801811 488871313 75565993 946121006 183446150 159492983 5841609 729139572 378331830 1000918100 346317219 259673069 384439042 61245855 149175806 418197844 900523996 1040921194 43625179 9521682 275758719 802789640 392269082 619675715 200606339 110504487 980162195 412966084 301051832 425575744 482896612 1060676979 535941126 87714576 112253277 565652875 920922187 99877394 137974502 258278974 355872392 444644467 151183112 850011360 456515725 936720201 820832072 591810273 538945626 672215667 677953897 53979868 811542607 574566653 1021131379 757578834 451198193 217867011 555387902 415928848 63729891 360318592 730184750 747814173 452750999 783702916 314943287 241273183 511659085 130058172 23065298 1043951171 41473050 587774175 1058872416 648738021 515226234 349274658 805522385 795699798 534063400 919582798 239061172 672131141 424333316 944103462 309329067 368305189 779395438 19417267 610230285 467760836 1073252618 970373113 76832659 353743059 861722096 576719069 619974235 69614907 563128002 920750114 33248652 261692182 204021560 45668598 205055575 553390028 926375037 292164915 288795235 749475093 715304526 776500245 975529609 191392395 179977598 476452298 777533085 28160478 454894490 33197066 117204554 374841739 289885992 389984448 1038885541 182155583 776039691 750746484 617352591 802370869 963399308 731663947 212542344 880408932 1026445394 718417277 1047347429 16418427 1014189899 829537315 652677614 668732911 194930468 187156791 542615643 870193491 956251538 651584811 825395091 270826202 19810874 1034525432 53685182 425496707 105904768 122678398 939920210 895047460 748589987 621242744 604261157 163891041 132805814 565670925 299006307 925690252 289681853 407844330 596366921 852544004 422260564 775867767 987560803 976872771 694022151 270978666 97561285 513429149 332879627 775340674 1002554796 1012345350 961490597 810608813 774485721 990482199 32931383 1009724704 892314068 504215974 918283775 831311506 428056369 932957778 106105598 212165515 365530291 247349085 790246512 769791488 940281608 848841560 862617555 581183418 945078396 322644812 505027122 253483186 3893726 51902839 971899690 584083186 550720580 328982252 604255497 253446420 993761606 975112893 498215393 416531447 789784311 646986435 773759002 420412109 718398491 483747520 90062891 266671621 340215598 828103804 969571477 497833182 1048922426 701842648 399739426 1053810383 626081024 95231591 389976876 20323449 941118342 164198500 739142733 160805346 1006781169 410614215 800795750 252340882 952737869 741558345 717845357 431275049 8507585 725845425 1071299111 461383747 290163731 851579343 756527243 469017660 77384363 592801220 473005581 84342009 377183318 936223833 217504009 93277265 600794696 766578640 400481216 597468711 143008345 165916098 1014996715 429375234 657513617 849762205 336466216 1066889269 316515482 580791240 811219176 1033866334 993440461 569692372 935848931 722990983 718887580 308982589 627113215 887434114 197849789 334887303 543908715 433642808 674744960 1024117553 845151353 125437221 642071633 781033758 843031795 393050355 402639039 280492859 704364335 991882966 790384378 66120006 827099260 577593407 783625701 549605578 477315211 959194012 942196866 479832695 970642926 534436828 915386856 481516480 32684683 356641872 266962368 530157041 479328728 400565709 213281828 319374596 75437008 738570736 8226497 1052680901 95519329 865604456 640683597 233527327 960196699 164556512 194114578 215166745 173739930 808053917 886127365 338707267 800935303 687337455 486487183 784572408 1021455004 706741918 910651968 305413387 37809340 794895191 365954459 255240002 346257097 224317586 874055175 140585089 880443152 44695321 410138118 753461129 33573552 959627363 113508800 152096687 813340122 371462168 49724050 585321407 835098142 744970401 450939897 615180688 987499 451486009 204578875 1001537532 1037099293 567055336 500745307 776272301 458211620 787443973 560731892 530881736 71908961 111172526 508876549 941805450 575940479 900307949 253607601 756392115 575691334 863459427 108727244 390579738 444480046 837453658 950231127 395131389 874719646 70450453 1007373315 305185006 304763905 892654564 492390989 914093595 1022577218 6636725 320104731 206889973 807631426 282745973 36490585 580610158 394052501 12753627 146575868 405132338 688468154 441610708 1062864200 150927433 681310865 587424781 125787195 968325476 772020250 802695513 126470448 950910397 215655151 459959042 720933548 836720481 602494140 332728950 141035444 1019526143 744294299 916881059 1073072447 423765176 218746058 131643752 448389800 1054304153 834168402 923438612 145349061 334303734 488285101 758865852 852115795 498691672 788611403 253567540 90030054 35189372 569051515 149849979 837586709 568436943 37589640 268566676 138530695 1029707853 387631710 144043265 491756147 331898714 255158756 10253692 888030439 482080280 553858834 68243771 673071318 971388043 68581566 865096951 824593748 585841624 591875686 865263263 153920715 694649948 186385406 544129830 376447076 747930791 62553831 1064626460 282195701 386763984 495320843 173698647 957626599 159075791 299679313 41703977 120554010 328694416 428070426 251002818 752087526 73500489 888392420 656267840 927177259 826384911 154108761 423003860 985945284 656373100 939145298 840395942 122766390 460356184 75130731 961098393 915228242 467228403 871734322 500028951 841447437 482786553 153338621 998113242 486778229 585891781 588735983 1004554526 918288449 34544603 819222796 92317343 768074666 186906546 282897331 199517283 214293862 26097883 218642071 26075440 328058829 232931642 199539890 954079625 847176904 137579251 788438494 674635268 383436440 818330757 901901295 502508484 704644378 899359108 570513811 187555108 1060601918 859205786 317995003 616703234 311017629 230288544 591914470 32294188 208746631 1048066149 244936897 100678386 219616532 1008722065 754899075 125408231 421453895 680276479 274624422 995707917 89521059 88630933 658421175 781382693 387256307 913258156 558213630 155278085 583642803 275351670 165358244 433104804 941010530 856046685 888820414 568590240 649807295 518478986 723390882 829484508 527540208 810871704 1042637019 884034085 642076654 565446946 421279304 337012520 700492314 118888750 433080015 479938658 616610196 205598524 845006113 383563399 193366758 670086453 603797438 529872836 736469501 309466685 409796545 466526786 483311185 994211225 874190474 644967257 644020597 145021971 709661866 825378159 687716822 513606608 30130643 901237361 227047438 124352921 455068627 209216661 72093871 851784144 775325126 849989060 985553149 812138761 324128791 391086423 963256114 463105862 847120543 516042098 882070160 493887591 971430316 720274950 774540467 54405544 288632826 675411707 890245317 553464169 661633417 950284801 681776682 391213434 458582177 234175037 186554900 539406550 642481080 489526879 195658473 417714004 343531266 733293083 157450896 718873850 356334329 642539881 97004852 470789516 186016444 936034161 474744820 165535439 1006728334 601923684 322010278 568025232 723828274 338049126 853800009 1041490470 393553650 551134285 1065994208 614993496 863141225 280265042 589618545 688474932 237231603 680881895 912281479 735361351 749571357 863796683 695809554 692018821 1041117858 708934979 1033716787 428706734 844373563 179064009 340683103 361857890 167624997 493706080 587756439 368641800 651397005 713815060 699384087 250478979 214254424 958512729 1050630198 123982989 137008601 98250509 1042500446 880320771 158220047 134859680 960280117 627099218 898312336 914329814 469510259 484712260 914275546 1035594983 114719409 57748596 808290165 802354196 798500371 218352628 1041036360 105344430 689219960 932697409 300602470 260195366 132059465 456804856 505194613 686839020 476519108 362582187 142357376 98127529 46283682 743522233 543529899 672446816 285348444 430939686 222703457 380211838 114853502 707480452 1064256748 2053471 465310189 150277306 146955048 261257878 204903739 930998174 757369774 1019184458 689599101 315290254 217483002 1000186746 930247466 474454098 958470619 823114062 76009514 135276053 932621753 429579624 153393495 357987899 235558953 266175770 790157297 574915852 754540300 656802156 47296555 940530359 55414839 890349045 504312365 790747633 828322004 1005846262 1014406389 705294906 325862873 755995267 509136125 573856407 633271926 618351176 1022575739 1044809699 589013141 258605676 99574124 825035757 92078679 553166989 1008723407 427529352 253528193 255144211 560998310 464597235 965795235 899998086 733640138 125276594 290339331 228595240 206760603 385187713 1072666209 987800843 214530668 952966434 229314123 464787207 385813047 95937261 611473940 624465469 987687645 847923720 130916847 802555730 447505193 824884390 475342862 817571121 806653553 859508641 400000789 551600652 320411028 641775080 514221796 597120299 1014851354 99240673 407769901 376861719 992358434 81368862 230598914 334437918 651083062 351595440 81189402 372410645 986610805 844077764 295500122 863688678 741040470 908787420 157319167 1007286941 196098457 403537262 773311350 798780949 86271459 696760721 225721964 645724066 498079038 495905924 822450495 999313583 1001342573 59492022 252318067 526447692 681647881 1071471915 211437424 374406101 325186158 704156845 835740710 850670142 799533476 450156662 168988028 354419488 539018323 403677934 814850213 212393875 712943598 609509302 522057759 839746893 366873066 593321510 220859810 342032877 74806757 283869625 299045904 853292846 875034969 878145982 825473251 100389612 266786026 366761890 25451455 257796626 43588409 690155625 933151461 531998943 169592837 322743380 213713260 458296614 169541689 493995031 948327811 361166503 756098238 44214027 45259165 549117935 700652091 265154665 866031687 433767911 849777295 440453640 758646314 917694879 677890821 176357324 27757668 37495900 899861967 124364976 420235041 456994935 810670474 1032112770 40747204 935222278 1067839882 579750361 604765908 822286472 822364620 818981284 198066423 69464438 763250302 911543077 526491023 1053341689 80628526 679668280 1051492472 1017340301 749829714 434823466 414399238 346780509 369547277 892272336 531610887 71917450 643082242 21129617 959520309 395347712 268015425 677850557 452360221 901076356 984234367 1022376295 671990972 1027048285 598952980 308203884 249610404 445295039 430136310 220373035 280522511 25735606 73588908 1040102795 1061372476 640079892 582881972 571799249 581781929 333871515 270476178 319398444 674485134 972379327 296272342 111697362 151740011 611262213 464644994 915765144 690852603 229300990 272843236 480182426 650834372 81019489 181188785 20383669 389991731 1025988005 895976042 731754069 852440035 180994855 205022701 1042611809 976719540 811763551 867389372 90671855 729304375 28993656 702563246 1024562536 685224029 770890684 435559060 131938517 1000296023 1024024816 657807440 278554832 282707466 795207235 515480853 466728230 282066113 304159781 233563869 748219262 509691899 1034037180 462060282 589783932 950330492 340020568 919383949 581422296 182484770 382643615 334683120 709810096 25989281 429362976 749928848 324269006 463575791 92505790 7656056 659512640 335632665 1002309400 354856291 967793881 800609116 175614157 969667055 328816846 879047374 765828328 70693987 259840838 872149848 67138379 950840607 852673059 860961486 462341662 169106921 718830168 739457861 1053558871 86824983 466246165 204132929 614948210 287815683 289001564 346712228 615052603 1068608930 658409565 538228208 310249237 339495739 978349414 816711375 433575504 727854725 230354711 411746980 156533164 976461963 361962308 12462647 648220300 425831647 432083631 626109246 610788386 927185859 446370569 788874605 1024676869 426910998 29821929 834412903 523941518 412201753 885952044 181794562 529771340 885600742 615947153 813707031 879156740 134117198 1056458398 253431403 1021590664 312431832 1064967718 1006926957 575460341 753435680 359741338 143457816 893877751 180480722 599060175 119553293 54669261 1043670488 810185266 601256025 765643155 846594475 658295526 1064609466 1009057565 990722305 531740933 977683467 596431226 166388646 769228376 64101969 954030392 814823151 628012812 148033695 346583364 922633853 850760635 751213480 181150032 550609861 884699629 566752620 134377791 527794855 472424535 15453920 828860182 756268042 479931967 383223140 253848280 533213839 939955896 641088116 252898381 95866813 519114626 19665661 853717155 1054356012 893432496 856455619 1018733509 610158203 694921192 387951492 771326658 629188793 1034398799 1037636698 1044785186 601880540 329155504 392771930 907496549 43622143 755636956 653725309 130151170 956152754 364480494 9569259 561592460 1014448256 809247545 1025018079 896466252 42865866 678592777 410440624 904731254 1071106023 644442315 647183082 499750349 508459522 482818901 225811149 1029441458 711154372 105602256 831059134 871746927 333573571 141889860 509546542 556622766 830144524 420352586 239047199 577556936 139707220 470111057 318818815 183264999 1065398350 494301608 700067188 441450575 1011918826 1036069331 864806980 963453451 805157171 87449562 477494801 711672582 1059043772 173568046 848834782 754312171 822374524 726903606 463515140 519836255 741402962 250081788 1063109776 22647148 659346519 97521421 314366720 245198333 363482186 288382935 554420467 40882761 411526800 26011032 561824105 937247710 889459288 631867370 172335739 197356644 918501149 379115016 189598399 924451886 965423624 257544274 210966453 72393236 57158464 812856692 523407319 198074623 293260644 688969748 150329415 290122178 998650993 916838096 822116974 834726706 364166216 149639098 663424751 279353841 1011239949 202729376 95341446 972693566 953793482 482881156 519403151 10741051 761285354 994655946 887626995 285709902 623588124 42339233 1065341875 527290104 253945006 179511049 323142392 706915253 490237130 582248013 682790799 240396433 672903997 442568711 671052296 825809435 689589452 654265835 960737156 533961075 135551246 857411481 986278571 863614561 787100951 378430535 998328109 438343313 248578013 107468890 948612042 1001810141 467550477 920762929 930562222 480506755 838580402 191702939 479600651 939162732 979490654 58673629 128202469 669173116 1061455426 305989439 639841585 297401201 174875680 835576332 74147947 507085682 696623087 698150480 718375192 300687549 136526681 86697507 395775699 481966937 771070528 1052227737 27852619 915448954 259078311 12210968 952447269 107606197 776578998 216152672 291013234 556371026 573264154 411395850 652568091 864110172 609330385 447598082 416079536 70068518 656078445 108028178 9350528 470222405 458605639 683753604 661540821 756754164 930561915 10069873 596279766 831051889 613324820 814083493 456377979 170392271 271130408 706558582 849487518 6386627 882384528 652559237 931492519 969194799 533395904 365742414 808374093 402609953 995218737 318109468 256739865 654589595 171969942 924044107 449577771 810487464 887686139 532322818 249809399 389997283 982597276 588822877 318417808 528687095 1065250235 272667030 75067512 578698845 502623767 201585420 41502703 1060503793 795480513 419222860 135162873 904416741 444396529 36058989 773407013 875353071 981674364 69121833 1059117942 19960848 354952426 723621634 1046439586 715157076 671888115 863310322 520826343 77005427 320704566 670578679 479584565 888889779 1013404208 785415584 59785453 376908527 264071021 559607957 153066620 801830152 1004666849 404781581 281661982 71970841 524317786 689904192 1049513949 238270439 668389181 991335132 357442631 125528103 949704643 1029398742 207294434 943286549 367946944 577915422 138340481 214304048 743152963 324477012 417663137 63441420 942755638 437592854 949687624 450152138 444432691 148650505 392394833 576978870 388995343 432676165 633883053 361103241 124023664 53639685 1014832842 729205531 163496714 800740556 208740998 71910154 11990182 236092041 422379322 525557791 719713181 1028843401 195621210 135777082 876553250 964745855 605626938 455152388 997389557 881375669 501560132 280357649 215106813 745064779 575674020 576643595 879807860 468337021 721369614 86868836 572662364 314987749 662138547 26033599 1028196808 910215648 730387264 592750332 93968629 99308000 262110511 840667293 611726497 353519980 597338586 485119593 91719876 474860800 797356191 121317958 343407539 809435607 344760044 692698186 663839052 829291785 425508141 735208215 420478740 126551546 969434187 940127854 97779643 725527061 969032413 172128646 937158996 969351754 592078878 428881368 483616447 582417645 635439446 641037163 704846 958069103 1045586736 860647761 343171925 540531994 764377878 435334564 601981852 941425785 762078518 707591278 484330456 906896573 863342506 325278960 514867778 719157514 603204755 223768418 642884565 465932388 489664007 970015986 1014287708 121762463 867453623 137044273 234676122 355211473 957445462 977900461 1059146411 62619656 52857229 1062369797 196674171 843940488 749248117 471808196 626082551 117731701 663783007 768338274 1046447234 1027682258 374408784 168529013 947904273 40356479 636848131 616437834 557760850 595382145 117227552 338925284 297515958 649398972 668201008 504537488 800971945 397378716 474106296 1015924015 554268256 33512896 781099937 97102795 782949050 663634004 327989524 7929321 986484293 162563080 374775941 684070629 113788754 441822547 878159029 101236335 32205870 1066927471 315823206 893683564 187061173 232841761 492356450 1026477136 70026536 731272795 864151972 443296118 457468842 610105590 1016287705 558226320 805661206 69147606 704488067 477368115 141264076 367603386 1010430968 299016479 285933751 548566497 861163335 34547503 121014691 66234291 258181942 492360549 978635327 369875306 660721937 917328448 462582085 603767320 706290270 155900311 544838445 462061749 937289332 388613791 1030150853 495091289 952621163 484036616 556462233 193626419 591280006 781129098 683079015 678181934 668787638 497250418 923946919 958109979 106811657 460922369 749344387 1068523132 870935591 872727291 83320523 381335016 467757223 510712359 1904515 214630991 784313542 465842427 220665732 230117780 709952474 103249776 71692547 532913475 60322671 508720272 343981007 678885917 11298679 818817248 724818012 222469360 562834387 775510520 782082270 802295028 644621984 261740371 916142443 960929892 190740624 717291198 506045925 94426067 286902506 231036211 710558202 1046600578 137750658 546822808 739789969 637563676 114866590 970586742 86533484 700145454 49367857 416046982 579136851 544874124 286585511 657831010 468848494 296594251 643584179 617199990 540579115 163776668 697887647 87555050 90766250 879803910 326874541 75708157 458165911 654798742 919499415 1053335864 830593332 414611263 1061288320 1010048974 365897102 161701112 58814576 483811343 133957491 897296079 795010171 909066779 272969199 44004275 641387010 222910858 27812995 287347315 259803785 582869871 163799240 1011483227 126094687 502508768 760497602 952944310 107676889 665629129 476871423 42922726 548632424 993921041 174438446 803592964 594762723 507645045 228655839 687029244 699841038 771080509 724734159 92063105 547360107 881851156 401875880 111845196 463097305 73688894 360960229 304925958 1042576941 936341238 520757902 117493815 517608397 179147447 62649578 640672355 1033950136 273081091 1006479422 638428174 1039780031 10384332 396812617 325951989 568235783 1043434530 793212732 332276388 734314485 154767254 918049411 460554078 434777058 244716763 930953580 349409995 17421965 551948496 779625227 143852947 901768472 342448207 371862886 824724585 986470814 292758155 945282048 795903845 127258386 715027085 115825968 921535261 846903858 771164081 208373877 914929043 545983285 483220478 872572879 631384666 112005756 944586993 930039037 407221281 382658781 840225508 596283562 944430942 5581412 691626525 360776856 468831651 423625433 331073508 1059676384 1023724285 169451203 227980800 111784480 402707550 333076267 364771591 848652188 558321649 678103643 115135124 1070196780 240576269 136337192 406503454 223946018 891739275 879634434 93616793 324219337 945657823 156236843 575411651 489857325 578302891 541922204 615930594 759470924 53396121 295244316 199183976 504439497 192965567 363567006 869838873 434423285 870074120 435965396 312248387 534931082 517325178 15858583 579155930 382752939 228014631 1053005165 706302770 755527862 607651757 324628467 278391455 392697089 607488240 92615627 1013130670 672642290 17743846 450028270 418421224 923074310 304129003 581417843 416526567 213835487 465554557 528306210 960390789 868146590 189251361 974719109 964542945 1051206819 229484209 985407591 429672772 904369711 121790995 153019708 312727216 716742048 951017084 58970946 707118519 537939473 232626284 973982395 985877198 271560677 1067529221 14192289 602354999 387032370 355051837 303669188 349622040 666869541 678751566 752285017 702443012 500109188 825665625 214622779 503433684 624949920 464536017 186913611 359318393 179726072 276535987 943113109 755327044 760004300 3390322 574624414 563008778 774027661 507135375 167297520 986988671 529045160 66746763 63528660 891176445 780525314 809911138 74317525 176824518 659649720 26332242 859887168 648607791 492954956 757402317 1049511105 807288810 864583284 429380430 473997686 960767884 379736347 911920491 963406407 209646049 447412699 685677775 611489442 237821942 211201033 252641701 265360652 1048530000 692442907 573112045 917868794 133081256 332199536 20783710 436395727 1042021102 74483068 190668185 1000012849 576730530 807829550 587066967 987050010 35485154 410033003 267538952 6273594 735012998 980742718 182278035 961413075 702475303 345738606 743795001 393726924 560361735 610754884 660834777 291645258 419945988 460464764 623143066 244118593 410150062 166542623 709103641 611518168 7424035 666262127 282847106 304021332 722763076 529264870 384057674 476363598 899752149 901765374 39008137 350709879 719121155 1063937463 995747946 290129049 698543447 909875911 463776450 287874481 407102724 512591907 955012316 195571052 1060273362 133194652 910837439 539465849 832097892 863919762 364484822 620595180 90824328 402281174 297919585 141343357 507271861 846061199 89530026 645753811 171469409 759764466 93938539 114528594 567085273 511059433 130656928 402299969 919115077 248994955 775499205 307851172 633163114 981187285 1056180450 861954715 753666097 588104192 622334023 435651467 82341126 925763554 603483734 104495316 846340356 353325286 306025458 623959247 164878883 198941907 185653118 589511965 846397269 868922624 821274433 157733563 533646615 839802256 816052314 148807485 800424367 443346449 718063496 415607682 632266531 153567131 172827339 239954344 521821317 382801795 499645595 300837707 619069103 572655401 989621854 426625967 829624241 1002729268 130055000 128593220 628708319 768316783 5534464 308449730 547539800 424861739 903775842 640728535 711031267 746043855 49368472 347175214 165555764 939567318 336258805 599840539 261873813 120410881 879371137 742368929 1061130693 111985454 246154694 118966874 475895515 893761020 893907647 990834672 652578881 512888742 658234796 671994206 770974988 883381953 53252317 339760660 220346652 449715966 1000184301 695306699 989119722 444395028 562545544 432658665 632143785 217955933 760721618 975134482 837374908 108477930 625221750 291002700 852842005 854970328 858795954 692516375 1013189472 821027174 685736711 904628806 585110855 14404636 364017819 315750977 435141172 881721570 878631957 244189089 200777383 784568161 498242218 651811750 398817278 857630388 634334745 804716920 366371316 256690445 1029937535 778278896 1042927350 217444922 404217333 211347341 1064890689 736657611 486963524 545291045 545591523 375235447 102930856 193321737 373868822 355921444 692473747 934563482 832460235 714999963 483535178 437496103 169792204 515701200 409056556 234747233 948850884 132388710 446913861 2190504 812609564 983546843 135931498 624591512 300101097 304919731 122304283 50245194 391228441 838288699 1044372014 335484080 242363614 774193988 423294299 1002735433 943573740 902078455 731846984 256064554 664156463 729898976 156855819 931772474 273238743 1027106167 414642507 1037520015 40416407 1045237193 1044105623 196214391 913050476 193675313 175845901 476306459 319989778 608925131 290457961 354560630 119956975 1046923331 796179665 288891108 218088076 697209779 445510584 760176049 585804974 311036785 970671893 556260496 370575071 991660904 447542867 836791655 742205267 396091377 974331478 484715324 46060264 171337708 357902725 1042311951 157772796 828856301 8701606 309163203 678014280 785205481 197682092 165916551 445772628 349779900 102927979 788368562 176394203 502952665 260728077 669648307 289264715 348584078 359969915 669015704 407986031 750182352 404166765 647123901 313707833 750629679 510360962 735887120 159547275 1048150932 846029579 113514266 688879893 1020430947 223222064 386394539 697951336 709313572 463049986 12029770 420371310 702332326 39053645 1025790376 801947943 1190984 820625687 799267287 913311140 86168834 659924795 390135847 529687255 384071949 456551446 821149424 368896332 878225370 13634944 595075009 547481013 858273562 65018369 985050520 924315865 585575067 10682311 199691940 237098665 768775524 426045217 645194381 859515986 427849421 130933894 127380722 505631582 698902406 31916360 955532773 923588420 262976694 678583724 436609869 208508751 789650303 88441154 413321234 33748394 906095417 347730284 527406872 1002240965 564102996 754405636 81699204 367194048 866270253 640849649 85077762 336186079 201852594 98719598 568796410 938055221 96568635 183887213 471272098 672124410 580411907 421787361 97646398 42379431 612692762 979383505 568171239 1009559425 738824355 566148839 1043063756 995038360 1009132038 283143570 72206178 928478492 445196224 564589679 576881016 802436828 476160427 994467265 395097081 121205759 101475140 631256993 41828412 470022737 1069844268 511242395 232395233 620036178 211259714 1060321048 324779015 666102247 392564208 590264325 613833653 436054661 675587386 95252731 312641506 1054189315 1070832547 505742130 684512520 32434386 654168431 811581287 526772643 498168247 786986469 284433146 617653697 138235972 16973427 510625849 1027667043 564404333 65216304 972627314 373104639 63355690 702489640 161721172 132488002 226376556 1003986905 996294831 937955299 287325831 650889325 947157170 651693054 36943391 1008074218 685757238 862124974 438243472 939194110 259780429 408754683 676199760 169632640 928244924 740530544 13636790 458449714 489974631 533246528 81975985 812905303 22918398 144648760 553353168 815702849 44729926 962274860 236316244 25852123 671674021 263830207 359702341 130384636 594554385 894526807 751619994 957416794 264153818 47234586 759637889 64215758 624478996 615167698 127922830 287933514 339874783 358605558 588351154 121266896 575746434 477425718 332818414 627004698 584120217 546516303 33736305 890502801 418547626 807891515 329116674 929034497 852535371 713501605 802422671 565046422 989552908 246130779 177745610 243514892 998882500 138911443 675725785 456469875 396368217 324719611 460568081 882795120 330607180 668025144 1006030530 754283908 698789235 295697317 9634122 873169523 418171511 978853690 28672181 619882695 128756344 25172566 768470235 793230767 132982751 301850782 523463193 889154421 532880650 1010681177 260870256 52234578 452198390 564085081 862841268 159539594 233081040 383870198 838768347 786958100 713482545 6328877 314623182 684371496 62462037 179276090 80603240 153864288 196177471 1000494389 989601787 30812019 955891852 835003718 772749177 1033628084 739734824 333802256 917886409 67042030 907293319 380878677 966892371 585381476 317302552 241556858 998760412 234731075 976944390 682241291 413337375 712372836 464428560 1020790472 820902068 812414139 101256690 576810681 344815710 171746796 366216596 1042915665 724691475 823172262 728678968 996429296 368710074 243682344 63570623 1010615016 334136322 1002374792 594019847 415828912 680676561 259982283 567377149 543759337 294324853 23788186 681925540 885845185 1009552690 870974562 427587276 998839420 472210874 454173996 534146918 1019414571 1031557884 1047443157 681975728 296175523 787595298 747174210 990070459 768906423 469597414 971853980 204896596 661732525 88061143 752941391 939599982 869781775 40404707 347741300 1073020123 908460910 839123706 300964332 218033389 99959923 266583072 82677060 7391156 878697791 197488423 610721494 183734765 491861013 1011657774 296850060 783563704 980128939 481373867 1031363773 994205224 842318952 856820048 1069258801 396853218 499085621 1013015868 884199153 1022820451 69509982 155719955 169728299 152499375 49665010 1066481921 336001676 193540897 988860562 673594705 822176138 281538062 843034714 486848661 960224992 843463505 75002354 529364618 391748214 292158312 594465585 878327910 340712891 708139499 860114626 146698912 711661282 368588926 1008118099 471871451 937034244 449878143 741643115 620813465 509858756 1026943595 944733740 499766716 280175938 902448624 929510907 168095253 1035742180 302570672 356942073 143632820 310203014 185258025 196196978 431939602 841060439 694001515 304165151 955332682 20027384 210413703 489924982 1007848337 179578503 357016436 551760700 617700216 448147890 62065554 985600215 501704455 239312388 560479375 416232600 987154698 568563831 974209630 912040106 579762815 685468516 985654332 640877673 424034258 741950826 586395780 638265270 43218795 603654260 823017799 887545151 29596065 710356315 724193622 277847710 207209589 817638868 614823728 299804399 461795442 120530413 860556983 655292460 262903960 979807718 128828282 212234019 1027369111 626496910 806525361 1016521623 610922483 490814273 736394482 681768397 115368771 205798704 1002087934 1069729355 610638008 459152590 532304056 961410286 770247380 887454326 447915314 176387562 112678235 952891811 133595817 377178874 1012458937 427428276 111119746 743059049 30626322 862210233 978202240 773047372 949920173 168391669 1012028753 43768561 396810685 426618616 646688748 709693028 911924361 52145410 688405426 842169249 33363827 385050797 137937865 227611731 953888238 12356209 860772005 877629710 273203800 977998265 733560731 971127203 544124647 279573070 418956334 371217627 414991839 910980046 252479424 813237787 83323953 116617977 1059185388 979212165 179702073 249138667 520478876 1068887831 625023661 351202397 850523635 497908312 665948269 219360436 305296775 80914582 939891562 106908545 660768168 234324993 342973900 565431497 607508606 292783006 689357120 756069170 197245688 965500423 502106419 4378766 172455882 358574449 364591109 268054602 1048763203 320131073 449338372 663718512 100249656 482240881 1000142284 585714616 710320943 480950796 582436108 305417084 126118380 28654355 761639329 1053306859 323923191 113129464 242767186 508720331 102025970 67606346 267535692 534720662 582361192 771451308 508948098 422330994 147460267 897800704 555459473 987728434 45226927 6308433 768736432 244468743 367299948 752562261 91858920 222790573 762471570 669029669 522669022 1001868335 690987993 412838473 951549351 886039948 880655563 422454242 1037434582 87148656 1001602845 50331627 989956091 637125077 509929989 204268260 915773527 382289442 930156159 307088991 828885583 698709417 343135764 583018060 1028261223 625260294 1006089401 1059689662 469783656 1036104215 517220424 1010181670 407843007 882702381 559617334 906100172 919972633 820308943 153919937 419937544 995900078 781404253 1033000277 677654339 296753978 987989949 232438775 733657080 524393215 820988939 190001300 677883954 995782560 452565628 364202734 338910289 648703892 424921557 1043150498 399440041 816055280 983643434 948602412 919262416 791544215 1069308736 147414653 600529081 560159243 953344753 732467508 501667774 323161533 790035730 701372205 791240528 970569713 465584871 295248210 652381787 823230406 688357864 777659775 626072717 476941526 503434026 106329650 935130651 1002638897 942514032 944802206 158692883 1029204068 649298798 530287936 929694851 835466637 895268631 697984310 1053627805 644917122 237549953 370915939 53723816 125245950 231632054 563810296 811194556 133433958 972634891 227239670 1071035281 494655343 274640165 361747225 901257227 530596701 1013602577 569257413 328283456 452563064 287019182 1008956334 855779488 1054411652 703352744 257512624 941283469 361360907 572217266 159014959 693607390 1047005618 299809128 755201011 791861067 761030102 428376971 678582066 314323932 525185072 67316224 645708251 538010545 1006406050 622569229 913275149 773246193 1029686562 1357719 482916785 363757758 384761371 1015358913 710256201 82899649 645599239 1040905156 591927187 940819161 88635716 686629659 240708594 675487275 94179240 206545728 266616479 500167980 441734204 679992742 453372068 856908342 433623586 1031773736 288283519 1058075969 98236416 1035168142 1042424206 462352649 971656227 766887358 1018072500 828125035 723393914 802097529 88295200 977058348 641783022 969485306 709798131 265550997 1071099570 489371806 543616010 167992571 506111045 182771566 841574201 754935336 468156210 984596814 259351859 248530343 923177015 14085746 677776904 650564831 3367276 925161826 77501666 870628287 552057534 1003228758 261822017 335525443 738851653 287192606 738645457 565336908 492296670 1012846815 327995758 1043002747 760716861 499797605 688320613 691958416 394826771 131524458 774053788 698191563 404533526 678705497 33423132 776238057 127849734 477790953 1033287871 115748885 1051388424 569178644 976106208 576644999 458254760 546242122 610769286 106362743 702391782 703190488 54716156 1057672570 87905954 673935224 687042942 847462458 1049140765 203860154 258536242 214952297 28695541 542338114 822377117 16821746 537411797 397772206 778916190 256107077 912845608 271839533 740704045 441523616 62666729 638614707 45658077 590764732 901214433 796099432 1058761740 159111855 832327516 323890619 427790378 830234103 1026838238 600910362 615030196 219264802 780961986 600019231 206867343 188750720 687238711 149183043 749759458 103914973 617323579 65685607 227166659 432360861 809000902 282356733 850893576 246725499 132005067 500900427 1008257132 282118604 109036112 595770699 337232934 962109211 697299486 731578114 931602697 978510875 783205291 857520999 61242744 352102033 345097274 785879904 767303230 1020839754 53793538 687498936 794984877 1005878854 928451613 25402659 928679443 138525202 899461888 499968438 149213187 93112251 867298047 103139135 63908616 42953282 793852725 638348298 629805758 977095513 692033901 786915000 719018634 745824719 931254215 914027759 417346844 609180381 181502251 55785693 1042647659 406677806 743955741 546650613 285036904 950673817 154161939 260890893 182446274 652145176 434260188 15847667 366559649 70536145 637407928 500979667 142713413 941606508 759054586 200876216 1006854538 193471552 1028525084 451442137 289840684 391740265 77020181 594831748 506892223 757673296 851065872 947145870 840742698 588519287 828319465 42356305 860803060 114869584 713680597 340792247 564176283 1064524142 247758643 448638122 521902678 737206365 342844962 194138154 585419701 433855696 845817742 298081909 209151635 473696899 303761439 167675160 722319968 852536616 353548025 198730611 419388754 955675783 374713195 1016273488 793831428 665299730 169774932 153481404 957710274 278053358 39281235 952255874 944016568 787095437 861750066 801498034 326404289 367850232 638889922 837746220 570899053 1046340647 389606043 141142301 227285453 683316689 580096542 671792050 100037343 626159299 200034708 162156575 1060878326 304270298 951477368 261857870 442422932 458506980 952631045 165310014 782224437 769293280 247162999 674172561 980612688 256534247 623665604 411406236 168807673 500437623 28851004 693637652 729181337 480028090 14330215 499447098 646488375 63943961 1032054456 35327149 678582519 444415730 346847184 248050861 835776215 84659937 210585857 974100101 804841084 416047164 918272575 939471180 224350394 441147337 370304383 828810742 918592130 617768319 934155029 636575322 996418569 862741947 53170476 66662175 236726267 266504718 398472060 263114220 432776448 968233406 497837187 756459383 422301146 139736163 944925411 1042096631 703418563 475409137 875882726 354184685 837112768 115787642 749392769 537480889 752285853 748099621 861984977 539819315 261726533 366966949 722779813 127355163 98858571 493279442 757529280 513663019 7439780 621079508 619215915 616526518 726310272 735296738 116759562 508870034 749667993 878198923 483902649 786208321 269105308 883260449 941339908 44860196 1057191847 775394862 202406135 49699070 314249116 482863721 735003989 842561997 18021427 1033634187 140674190 174886880 67720174 619798382 998132044 1058156290 228114888 355398811 502640893 873613336 475075809 942821085 383089845 197315256 611727558 795777287 865081937 268844785 981695866 376005204 472611541 788796936 884935145 233640694 1023599430 127785521 1017681301 908354345 973131695 936344876 149611313 547324320 227889674 51902888 843226424 28950552 486069923 724618134 648035381 768487413 790043171 806041867 625810613 729188862 83096358 1054964380 91263855 177791604 825687900 544638138 214672422 492674051 366681099 127548448 411572633 404028677 457928207 395959349 902369131 890216165 558004444 88189576 660983045 923356047 973532846 50647012 67921382 281694847 341553540 126084733 708533099 113976958 656649009 537128882 18426864 623886469 503658587 726477743 496260239 835095848 868570917 87808875 556704156 914595320 891666310 416341198 786004909 1066414442 935189674 934793394 140325456 191016391 921204701 633045194 56679475 630734046 212235212 825774997 676256325 769817102 73294439 360505879 173678345 451183951 397697965 470807325 815924657 404777120 165554500 976956722 578059678 144797560 351814155 167410632 361943778 857276311 564028515 661581692 1013015731 302806226 757976294 571643020 301257299 594808847 86071269 977935558 544108924 978135283 373544496 125660109 476681613 729683129 645118229 897674816 787318324 899909027 88625964 102931609 320885457 19067622 1051888485 457226308 839045516 90399095 191721896 754616628 784660018 988442029 546241987 385093787 506854730 737337213 845170517 48864439 627955724 848544191 993046419 521341180 22210675 869365595 341616264 818229361 315506594 263871475 910872286 977883858 674509032 139704036 1057623074 152969902 867511241 552302238 644411859 57703393 211264668 1036466210 389132809 154368404 12536001 374361553 813529010 967212628 253632393 497863743 853306415 645272974 556014637 105832279 844325273 218646745 741596968 805399127 24228224 956732504 75471571 913764921 384930607 529557349 795812094 559599944 66435226 771235825 77344035 337386196 252371814 551077063 387679981 1020304251 356880111 663640511 949264232 32213013 862918575 622345815 252076454 26575610 14699929 492004047 993915004 202246960 230369150 343437127 887394428 412512012 988897510 168928653 632743140 933661850 718472898 615792563 614779814 745408747 78993312 991544414 828683940 157363389 831727768 677029350 655969485 962298530 982588100 297250527 321725475 529766473 517763838 560835504 715187186 941696203 282952396 876391102 145130083 545012081 125231194 308661455 100892044 184102980 811815154 691562377 548659104 661356040 432676701 955421949 1013190783 304103463 60768399 514548082 380907506 222725705 197242947 530770173 253471088 63318412 205602423 1028383613 536153388 293433010 797156280 218362876 599633693 508302454 623972997 320098302 480042985 111234934 428042901 804378493 708510510 43246581 279013458 698561027 1037680983 719684120 177514156 959973692 746454301 593846964 289465148 376680770 447492820 457623592 278710796 848074733 300276262 684384437 787620552 862979017 686733703 635454654 990517525 393661048 309334641 610767211 150363020 155444464 145055980 517991073 635333370 911303953 72641900 638269082 815039408 693783955 850265029 506146068 225982168 903399969 350932101 1056776654 958787948 548754550 762046638 364271341 892412924 223400567 517561733 429128305 104440058 349430649 278457015 298888666 56415413 258095016 729468503 900700120 365376448 865375462 919874333 620329257 961768539 382323289 557172417 157296089 596767804 526095299 644938272 988172998 190819052 404476237 28944236 67950000 637080917 717071128 661948001 225708068 271353498 156842871 627706851 203007041 514674978 244192643 425259752 553653855 520209343 757827277 354218799 1058240074 720449171 445184317 1016739195 910141584 968485590 302783001 721328970 327454425 852016951 1007021561 124514498 102080347 26485985 662155532 504935065 476314909 51645650 943628819 479310602 285640283 676509649 689455956 266455197 810203325 101417284 241613743 122002348 241303103 277219689 691149060 150824421 950319406 322732592 493804997 917115475 1055756504 1042198139 552982509 221580610 356807757 105848532 730736822 125466170 206969620 944245515 910661205 672505938 556862796 693671444 1038281379 277714347 374714174 216149817 616800653 494718356 721957682 389335732 4795796 1004505307 141981847 539063288 531612792 1004490295 252677092 933434224 629284141 440625367 689102673 869284633 135794611 924394075 626950074 690597128 537040555 332916454 818744894 196745495 1031677313 652381882 733515277 829960296 174192726 313349544 8876587 760862099 648064949 907847435 1028693850 343869858 467519250 338346623 924652046 1050608469 381114891 831808443 558797400 571020583 121099779 725606623 314424062 742410465 169638107 512040434 587251869 421009770 77271723 639410018 642168359 837866182 473813903 961009370 695630846 1033350993 476119430 215349262 294568268 485359132 844404012 826934623 1055729927 673518640 56491492 942076954 12524033 396502445 928304100 1001666025 408228560 977711875 15260804 345398730 845211636 104261686 587314544 257461344 550211830 662622358 249475066 1025536807 173715374 1039723646 446752177 685407407 268036549 699953327 889029068 830287620 569511807 233493170 728785731 7571817 720945959 322154582 128417185 204664612 605069440 997716925 1006296667 588965918 41906663 691853027 63612542 997058856 650514963 274629034 1019976972 397872912 416853181 380469408 846764298 36545434 519159267 181802627 595496285 687579079 571986294 343010886 269664139 886513574 1024472552 1000114701 31821341 322923999 505937362 68403447 375958154 628959657 688991746 796492434 811706623 935707658 482321802 574750938 837476071 359136563 654560536 230509735 625317148 47799460 148331999 160449207 62037433 624764883 90532145 829160234 1002530687 1068156147 600863554 480960846 735061606 820074033 925664668 238648608 749171516 1062510899 759144192 670631105 834769123 577295127 753500446 527562750 60928757 281818613 367181086 271587519 41576656 51867336 151049932 828714453 514485405 765231283 434551624 296370028 486909804 227987697 844291996 157196460 739916387 605482503 1024567573 683200603 366519577 975242469 699241385 1019227875 461635161 604859699 639828354 521788946 434966424 492681298 252485322 968136040 297197191 682589017 862313035 364579597 347572043 1048228448 425032214 252190098 765764061 547228721 376517357 408763510 244719369 526972345 565980476 821124171 907362549 146213888 965438928 914762363 640644035 709969016 1037061944 283457860 605593182 552936445 1016335989 281966619 1033289399 1023333464 965162729 315346160 282308421 953354787 1007818141 837185578 1038273796 496854000 941193779 710496710 735907862 843055642 248246990 338494641 978073541 349116050 541365109 203392574 1064347160 987092796 670811775 776622049 403472432 1005835682 410793881 579577010 953777815 1019617751 201126649 867179982 514271805 680571863 67371534 802088401 127118053 187582234 318309197 819425372 327211041 1063013187 469355106 557296821 600970746 464154233 842948673 471657605 659214056 675211338 423171078 240988780 24007745 344089351 826639630 531245099 642211539 976895979 183784007 297220258 29030240 390034122 362003188 125286480 885254007 585661930 1039075729 875365166 17097481 274983513 510662410 359833530 761194651 345495923 756913934 340101478 730828337 175518851 911783505 235062582 956415511 875463223 1051806533 906406307 32741204 102669040 244880680 865999521 929952657 665364381 781314188 931798725 320109046 268767115 457390125 753830959 668230762 735695104 679168788 951865107 942855921 423489035 20953407 905619234 866579417 746958229 634649666 85027220 929572285 1073004868 805504766 269701469 389503631 260143181 488178204 225074221 954712650 436677878 386337285 604758135 309500585 817637995 906536306 1016689412 990605246 925495841 935755337 148222277 291553842 282660595 588015074 790102372 929162167 704932459 255965061 863477476 170595452 387755793 1009703350 746724160 712008038 695084156 866613249 725610029 955049750 377444952 904737234 595588784 829020098 390737011 51941274 193231482 187506832 410066050 158381735 775556823 755734915 167135279 122863722 379490054 427121158 922176475 640382377 286810700 850062815 749954277 737557544 581193747 53940466 425330831 1008629110 994566704 462866825 398308097 142607087 237495091 339837690 647397704 209127129 357654352 816584164 853447630 230628415 782982909 539730122 317067023 232356553 143077014 763465366 207223596 199612832 430006610 746307360 128961535 53227115 794729635 612600926 401711915 206490560 250216913 223448822 916478541 903578229 874566040 39571403 503818639 640868366 144948567 478060601 566380560 255397637 908053397 888679602 986946106 2560063 353911864 941006758 869168731 143097193 1035483911 342926768 98161698 93632033 100895217 39404756 747894578 326846803 202032263 454920183 350116021 82523913 869989939 290232424 241726842 730439653 657128728 141585184 158534640 428208835 6845878 17099499 894421255 58988438 499764369 240319401 620157249 739988263 1026619495 64860442 511330471 275398728 966355408 240484212 822519051 738290956 369113388 672791876 487782320 336177508 440412490 580758934 923192909 648179354 1030855388 1034147229 542442316 618763564 425166279 998431169 944272555 601908102 1006502001 945454063 958950255 790435486 97649733 82618344 995297404 478344701 512295788 56683328 541815931 390532809 247577613 456561815 631287453 187895049 442096271 885730682 197349220 748256607 1072631250 598607117 242989074 18781063 689186365 111258537 1008010373 907808712 664443017 800571098 589883045 49121102 114319170 916632819 947878872 896053728 924612608 206483405 524718164 885285627 688748189 501204366 177976060 29146946 865888711 553975047 581472530 755345605 392923198 338148807 7969754 5685913 284905956 99633684 469251478 468395639 314661018 752922701 584037870 104774135 751629940 529178957 997162199 513139141 634691730 70737899 433926859 280605301 362185448 927123237 140422745 552819912 798789531 1004616714 355398693 542250339 930612960 223225685 171606569 498050706 394729190 1040038762 697328277 165279416 833103296 70088920 772928730 305697830 974062255 182267854 708141691 184788884 83471377 1060496108 865013137 166167532 315359112 229201334 69685002 173804699 511558409 77694503 345705956 488519332 774835321 247931128 553592097 17587099 412173752 981145751 521786051 405774025 171224790 191989708 561959113 198413893 50190896 518873255 31154989 226647487 318284085 777902658 597911985 1037688500 527551720 958971644 948699688 493263107 696063996 362002435 814127083 862591482 722852651 721209323 619326855 716360638 1034733019 418539169 581057692 186608464 473127098 446206361 1053210143 195120895 96353711 872798385 111949782 442538852 370334472 940703220 492684211 973017626 951009388 830742241 760709917 375368319 836123203 947542203 302818225 567527374 319616270 215245767 802299147 655824689 893506963 203406025 560095904 244771857 122611477 951918175 446954968 982537901 1025339609 156079971 238677732 493494822 573494491 872437650 225529114 624566609 959479530 302227904 770640725 117469212 875215123 370518301 46047312 488061624 2312809 837765273 448475470 767862869 38476679 444490950 729458085 512276955 962716823 647197 515004526 23958468 222491356 818532663 176945679 1042087892 293804978 817424324 879585140 140800447 134238623 906163398 772195043 777507633 754126316 36656837 148106728 351241766 689778617 265704718 904485462 934336597 566136496 254092716 788107784 495013813 316708202 125722094 951672023 5848443 57744172 262677110 1010717 414930230 277778020 229397743 440287988 250124654 778542312 223103126 507936618 158841260 149256178 329580774 618106344 707415086 623511524 1067860240 867853793 397638271 970798572 948607509 282279777 877993607 137806535 4871739 286218481 577552510 1032479285 1036495476 961489071 91902396 706547102 226584367 462729887 902783907 569691633 747652761 443190852 203490895 404146028 445760676 400460848 766598729 204817530 207538473 953535314 626860653 938495300 21211958 607164578 744847954 126579522 355980220 536665227 71106202 235991925 303457255 5326452 751589198 714664623 672063894 939651817 309180616 485227702 922788741 1024714001 1004030654 245342130 278244321 1034881947 402682490 869045963 357189775 311734856 292655859 14812435 651387633 583582107 122627735 924715765 229418937 939833328 955781841 998698429 937392390 459397505 450944704 240870982 731404792 503075496 509447609 978554144 557655180 602483180 1067505009 957521476 1048805771 802221130 592732404 965705295 110752379 412700934 620257505 473728084 79343763 826411675 664295952 343776622 678249821 671977633 749092817 727707812 1009431494 153913983 1053071663 949163086 1030056443 372792873 203567960 1039895707 734685644 359029724 620702958 661713022 12850908 460217686 1045587107 838699889 154040349 434436450 952967454 885354247 848763169 190314098 503255641 590279660 1046095601 638849324 753842358 128982413 833110762 960944544 789361174 868543218 428526816 711732811 261516943 819759329 315413867 5677841 104761999 464146297 995895826 575260079 637065167 791663018 256653861 312869427 227036579 1013740948 939491355 179346583 515207751 788935434 182364504 871620630 899909951 1032071170 426755629 329079241 651336757 717840972 513743283 310255759 1061742498 794070335 801818325 609546719 1836514 775788677 948931259 793482927 723974464 855401167 340505158 349525336 756843902 493352036 822765525 159599368 877728581 301567697 1064069140 737238864 400401072 463682743 287683451 963340927 111968727 831211105 942921035 810695688 251792831 791409912 781771145 303305338 102925120 547442695 392428581 965846731 118543334 232826872 951669958 899377497 968221676 590659538 183747428 306732162 881151733 469783660 148297314 605618650 424748115 395251840 902926882 879486532 453751290 636617044 502505427 609784777 32935268 311676146 1000410834 991860496 69174498 289195763 349086377 663796404 102576637 273563631 692152878 687757064 15018123 31324679 242707713 559686609 935683101 509987333 934100962 463345911 375170874 1057508263 831005980 208965444 110181020 371814048 395661865 418869155 906509877 291652759 478534639 135399595 279047296 638798326 513339003 975202548 689106524 603058814 758203195 305921302 719437354 353630761 821695612 435507289 434390860 797794106 301839291 46384205 944089669 56884538 86862339 865253444 162073360 872036054 181475531 682492998 587720620 142080423 1055730587 551618182 582079327 1059088514 894692443 54055508 935485090 54142511 62322902 505275267 641091374 743578118 1066603954 429274802 924305220 892191793 491671055 861492771 399699547 829432754 779684726 123891070 869446458 975782858 208961950 1073423315 341570318 571907143 705158591 310431345 186443428 830940335 259944548 604480034 210837562 207714687 561006418 466874313 269982178 290646932 522095434 95844685 1052746448 54055549 398015378 478717560 508638754 692035480 879606905 177172888 414402092 683862681 935705877 988606428 483745394 409763118 464474615 545083782 13957890 402181576 778285651 424233172 565027006 43839255 783462794 781718203 290505941 832091272 159712119 59205476 332174412 1041785339 438002609 984450818 509939576 711135013 935409367 687103756 236128652 512146204 560669406 522483216 665058889 137386787 961517827 345196743 442380231 466242900 790551304 700030514 803675974 173445 142108882 961516995 492261643 340711393 977819415 262377045 498340248 115191275 509186110 696188496 566098833 230375478 605980291 684485415 637201698 92064338 43527681 461455715 943506466 503809662 836127765 988480399 411871304 919366446 1064089527 343846706 715135622 449935403 338351917 846741984 664769382 518511861 164565837 172229384 755786154 249480171 535549384 375363160 695572169 775149984 1057816314 918158442 170664323 931023328 983963728 595898566 257384102 935549927 812753280 732676396 582292794 940818247 89050563 1018666468 912989913 326771073 119186074 697480942 414119006 919685895 228737300 1053376454 938265344 103792007 39585389 547499170 684355534 302439279 939158889 943865494 246855408 324476618 218877873 941248642 237287384 425166699 292205949 855077501 181813141 126434792 765415562 249344687 251518491 644433683 265598627 423133251 98101867 835520040 51321549 1070484424 375838996 238408328 713651661 549194516 528938457 168444864 748353239 1062073954 58313394 1057997093 1017750753 36386698 98129425 196690271 50130282 1028816665 1036084930 421170904 577867452 325243258 219495188 780795700 213023351 648212612 1040916193 614347197 520840130 178321259 545157095 31904198 95198803 1029027022 965395158 86144211 81105226 331751058 844299181 442045306 816566477 464833383 97967871 555684243 818440411 922567017 504725644 621088877 234860139 191657401 842088138 249918972 727964706 493827663 884656595 575381932 375804376 385077637 24125417 252487035 1038021487 540465054 732797577 223344275 247769938 340579963 781712419 793845205 571593227 557690131 928119778 931732031 93912370 752192426 954545570 850435130 675862653 436766460 1061426106 633725840 970577462 390841079 825858900 195952436 260656657 355032953 872286969 101446992 112948983 480184359 958743178 206340338 940413754 4146039 177288374 88021271 541000080 767208565 545371579 288588633 788094836 371264351 919999740 974529595 320533857 212256989 500997674 508061705 223873848 710494894 7087030 469898638 166785781 188189929 54634531 153423815 312570645 478620957 981345314 1068876992 382375326 957634417 638067541 771897441 493096371 999343023 583601447 423318189 118350345 347601387 656005472 47153360 372533663 930542751 465007639 41018662 100754853 735719940 601413599 932006683 681274380 666901742 238258260 240153405 719448394 616512513 885035284 779495968 1046982737 520870845 668053727 313711644 664226941 155840022 969820643 919748458 236712189 331752002 685161485 54921775 738049548 547347848 861639499 640744404 240142406 301598488 640314891 904777712 232122369 528906686 729341653 338396486 677256240 738571875 210659287 152021944 215966038 995376261 739694310 892825405 974871957 163467669 151306310 647774411 601452084 781774549 358975363 977667494 569015522 514407981 15436025 1907724 852700745 1026897595 799824660 769142639 917151199 820540651 1034901828 896676039 717873675 20669761 280893490 106516133 525451959 983982272 811276400 348573360 947255846 558615122 926450128 673752290 636487805 428845601 14605979 1052072225 333028436 1011102913 463392420 150676627 954472567 816881631 410422317 714539636 410625319 126944029 491486911 188679249 396726899 466063479 984188360 850931939 868001607 873652154 747497233 942564869 559260558 576549128 500057249 882645677 526567663 75366310 836414105 526664253 881126506 841867627 248298611 744683288 276724047 23387094 99757587 978093570 516939774 230644237 434158783 874257270 514508060 576892564 48267865 147079087 129731850 358614211 188455328 1056916060 609622224 797590375 414593950 1044258580 566354441 917344869 831730273 143591255 753717613 184753306 301130777 812798257 462351423 3996584 87703589 442425353 457423239 347001620 677165031 450587168 731349750 327969371 653168133 49744541 585113995 925491315 910881347 147333485 771382637 441365021 13900612 665499508 382036239 467409822 1022150385 604676803 1060156765 663951642 786157289 718285164 723135763 421117185 285079815 299177244 648625457 28868883 27047614 10756024 795533856 548622854 311385185 497957637 514640818 864130495 866511544 448812392 91671396 851650590 157426285 129928405 183835346 839861950 524398642 572805399 698806071 550650818 1071141341 372785412 910486231 538231778 329919964 873539794 67271083 775793439 933349226 794865040 213227630 963414027 175754515 1054005138 150980456 483905647 156981169 346881873 1070196102 176996488 435578754 462911525 711892564 736771733 43165622 49613497 902627542 700833587 54113056 422266319 712660560 870990235 888134140 633682953 838141058 969525885 646810970 67180429 343273198 788234899 360350145 810473044 228525637 1016976648 586663661 49120358 864373877 386707206 310249054 596829447 109677173 935051072 794547260 663287372 252609648 183080719 590643364 545832040 220613936 190668891 124702481 347600470 430822348 793667764 859929064 617235533 831810038 638936629 874879479 58444408 1019506686 68830806 479079731 897364769 916195524 450075153 575431467 862269039 828204742 954434225 37488356 386363188 468687024 617724416 730738369 243545132 541099751 741043541 1022656411 490406615 148510969 812507 155532931 448405251 620660097 198462961 2128014 505106994 260246104 63473338 98091584 17727976 481091023 103528189 295479658 171354489 222879326 265729264 777816657 142524412 655741480 264043267 1057883987 514684336 540089022 196693878 780044956 1058711203 6549451 474346508 1629904 636049770 717610441 377949980 1037931057 146529585 183784025 366969301 745871361 407919809 919358209 132265743 422083309 651762837 998993766 702987518 348341841 249297738 21564223 860360170 151781102 871018832 1019279461 985932152 1063666528 746619951 1034277015 906304411 812129306 728744908 154708400 423670115 796357515 620330141 147053181 629538166 823418239 805099406 67321225 661968679 630584179 89327332 461629079 67697609 967235836 830374383 550563773 53660188 679438564 836502665 2443547 319464781 807076149 427042162 120598515 943278981 1006855076 263622529 795588608 475892239 363272108 293395871 688778962 865971840 878485995 747163143 562478581 479988653 874032585 305610989 42724141 736625990 844390267 854079028 475187230 821057688 936370909 952072553 1021669903 270608924 274474277 652051311 638143771 18640523 1017067411 604046771 264825263 407640773 36140523 1019049972 503913771 831627183 14553693 679080250 13039184 520752933 676476890 404277847 859427876 615183096 880152331 842369652 332988656 846699406 239182776 933202699 472617295 324380676 432500625 649011337 1050816811 682406860 385856346 397944773 16473304 593730591 542893317 953031472 217744354 467690757 697972393 494944915 711674787 37382731 956745147 358465977 788870473 161043301 740908534 1022709706 1060993285 234764712 743301791 641495792 917441211 1012287300 631221447 341298187 262412494 360778930 262489886 997338873 925991950 104110704 81695480 760471916 451079480 665882377 758023647 137283813 996558866 212796835 466918225 148709012 607992888 614989303 887057317 122146051 27589085 251264171 417671358 603951146 155906394 466060267 566555965 41677569 479252588 448397928 671361340 209566010 593804260 14703763 635884462 167953353 337977043 265749671 446414763 527684858 329007711 115724952 568825264 335977901 1025583881 365335533 10477743 150079718 1007609124 1072326816 802596454 597837258 668841725 778459960 949012210 519819413 245988597 690465443 349467949 859347481 779076822 161939381 853389429 760405779 1061661567 704964343 524377470 453853018 571512632 974214665 468908220 277942180 391478616 623692655 19095055 642432199 1018975266 427655736 182756122 272982991 62503307 843575922 923122691 1005314863 445392497 846890612 551958927 509634088 785862560 456125355 670393734 333109622 58101757 678491322 473908825 795665897 1035575456 245217240 725871143 270327602 139620183 270758617 872636856 868911604 465123665 269783994 146336102 922098358 1041916921 403470499 662273507 163379818 116274645 752884096 891957993 406823001 847901663 177952455 479092523 295531710 338146258 359271389 79513647 1032060219 713864527 731345875 261676356 764819303 590570596 1050009512 887233251 458104711 384866714 306421055 353290787 167132698 988821977 740017864 728373105 783677532 951409375 1041737376 726755812 781477218 764903477 240680780 135199366 671494882 21208382 977830528 513777625 557255185 570178138 375870179 871104508 404440671 90792936 670692270 807554506 609835177 6763413 377790706 966534743 205679321 835614571 203395962 714658599 563373403 728175148 277933143 688322772 959384597 925530519 996042707 141091819 484673274 374800580 223186501 441276654 468341033 1027258518 1058418891 175581677 405770606 185739908 785150400 596807730 1005209138 590155352 64569039 231049570 540931406 1024105577 16619407 66818114 286488850 470501804 376588618 112320709 761144941 116923068 999683824 114742039 98093869 583631232 601067905 774308472 768126069 333820250 132797554 407810065 825038743 989693442 333210227 348598210 74259818 847341629 291898762 516336117 132474098 1057810676 750495325 307759565 844450350 108587159 280406986 387338111 1007373544 670976301 412179065 789039571 920375331 494709290 852606968 783247567 365803836 575606476 658705637 737943416 400568365 390154604 336163635 726716584 1004406021 758184257 713528671 722105906 22096927 197092340 161834398 911519380 799568518 282094638 959914923 219585570 597496251 738793829 698557949 235380225 537180799 498924200 834837853 825949543 967859911 874268088 673664037 964994314 537906815 375626001 975433920 736177355 909962889 137977604 312647128 2749249 834053803 349516660 715137310 279668908 532735737 10927631 258581019 516036644 226472555 453757826 596916903 667856546 91195180 428820631 475843697 701787170 413998209 7836391 93062027 509237172 976252298 538431706 502172885 144273124 1064568141 363110589 395973527 217207176 986804779 495080017 5788038 927609898 340678072 196084312 120782126 265299383 810972118 439278114 945094399 536917093 41636954 113739065 488002016 993638683 158566048 810062332 242940995 452321359 90682309 629206162 71464621 607364985 954732312 398262087 160558284 915627595 561331714 489193506 254872082 1005530384 133665341 679946578 671733656 506936662 547643282 631654055 670840120 1072804797 941868678 701479442 205376678 331185092 1011444999 325926169 7823915 605683761 882399849 946679537 217762719 509416634 618507123 234767844 173676122 215030884 636677463 778768424 593785061 675368173 975552517 865618993 495924619 880845579 153729207 229856712 823458163 964310168 602624550 595497353 753041897 1051115411 577567765 1041500538 387348552 385610595 58146995 822309948 581109847 120325857 1009032742 478657673 166717227 244575058 712155781 655640143 169066124 579755630 148632753 904007889 807278447 329439794 603289165 889531163 757866992 550156699 177806016 245785462 910364237 495868750 860764482 583773418 981406431 382106389 724797666 872313871 575531460 347396715 534498061 78583106 661057583 385471792 289707724 183252118 300736777 827469546 150132855 399791323 1035061561 988724995 765758965 772499789 571138570 206170454 934136396 907847478 921100758 874802133 194231850 154140004 866695683 252333763 1039807790 188186332 902101650 404813330 67884565 656312754 771309803 34540250 802679846 462985867 568581378 620491855 431351753 684065831 688008945 92616392 217985047 698369587 536888554 1050715490 614697536 264104505 847168519 622180326 397776798 868767124 14316045 962823206 386450114 641004712 958709918 562037711 529520009 16985902 180674203 71229230 103901940 806667396 490754133 805851346 449710631 78856469 832448576 189620580 31931310 213111656 18163800 547590049 141383838 296329860 480578603 48500367 588059911 915776291 581029829 1010772397 1064640947 692290426 170935527 1071892248 234373654 471435855 412669457 855471610 626127584 65080391 1003236164 953849506 540447134 103719370 42689535 699461010 704327030 572717549 430763234 917630063 659134269 1063250423 54724665 810549222 626221659 56932776 24961230 218686749 762720300 101608646 205303618 130671372 397965220 410660386 512976920 549631324 746273830 1062335516 390635034 996892699 287912226 385588257 415897156 520120685 268712845 782478683 300423004 912806450 1062090549 1022862612 857430153 499921493 1025548109 23009556 582346355 690298573 866252331 90859026 261750926 1054241257 241470074 19771139 549679501 720452261 815546450 635295708 325474465 197957520 36206306 373747083 784875804 391127206 711013359 875473491 1004352626 837559986 852331142 1056690732 42146252 245697223 360610751 1038028911 944879185 508930805 315203852 324065733 856845007 416155163 815523169 759085770 191136932 716864409 902519311 32171654 245774111 311207906 369242610 881967315 614026717 479453467 587852204 443289994 1066077563 525381205 286788913 277709647 115035180 898390096 901806323 347331015 661791531 419907170 742528661 798935984 600253928 885386134 472054068 190666195 318031150 499066380 51766621 289157561 1070279889 898151682 953902991 521821552 338725819 841247809 987363578 435906869 889571193 980553626 790576945 793725941 866175803 864397776 188169788 361942019 629405847 245881993 1017695975 746756502 1051511906 388473814 620317537 900267337 509305704 390822132 602201689 993372670 314557021 936828099 864175282 657207716 170597128 650859882 809821680 744543226 255392537 12598741 698687593 547195643 237526994 963055274 689922824 537865764 429727869 125729789 1067214840 1030810687 146488986 247974970 1070472162 266818118 298194738 436504062 419495797 873555175 829000206 401797009 290645163 1025793382 520264242 597915860 664410159 404157368 175014033 323986989 1036073840 167873308 1058221712 770279980 72856140 822082584 79564586 98518739 228242859 1064380416 867655204 1040724122 814362341 355325925 338669476 125553169 553483379 241039869 699376876 569898560 82340994 231096710 112460406 497695140 130703772 531891857 637488350 150726486 847614210 990006321 930038770 419351462 479794694 322713046 704343797 245868101 395123389 1069696404 291534876 544372993 81496418 870834506 264836045 219828718 984385580 846458814 1036287095 644720851 759292427 35216908 647460942 67037356 155580396 116356965 773315178 1070320001 160535915 411761691 183931903 275243766 352753398 226592226 728287638 6475469 109107437 707477792 126491026 458256558 397942562 314510916 987489087 1017075385 504918400 430535203 447360124 521402280 52032594 694072244 769772262 678508351 1062165723 528725417 214175728 556688545 677938828 311714795 919428626 525587781 931588490 49176757 184985577 416358642 398830026 897828549 885396938 489397603 77624956 128827259 57119827 120188986 97066447 641363641 937959457 522095190 913439869 334810785 346463283 902564502 1002465641 231113279 783954336 968646842 311044160 748948836 410889597 296542918 950659772 928803508 1034943663 861845008 333006645 116996995 73494123 671529564 113446591 319034880 707416871 384122415 892623641 994719143 983284199 926148725 827528686 151057241 260201447 337116419 479948467 73531 74939776 782621407 889967655 620391822 808881898 80587790 107272854 13093678 1027369664 547859060 418201477 63793334 570328663 694050263 59307545 280793672 39437695 711809788 451027955 239035919 1000689115 1062380566 756042309 592997262 947371992 115086973 455134331 252432649 407410868 641593665 623720936 243344898 278335393 197050870 41634126 429593781 367078371 154835770 601403185 916472611 50796053 973467224 837623898 585757400 597636346 439076752 1030423612 995582678 720232646 79210500 551701140 921497607 894248109 1030768206 579915039 1007198492 475402987 755402197 930715642 503121400 326146762 612512691 299925059 12847971 85368579 540017196 800006573 216334312 241885642 218350842 23958474 340277672 948597031 1066672213 597285987 350870367 766099261 384749585 210186766 751934925 617893688 880703420 735628187 130049863 195728206 639670817 381769330 701193177 88037353 493005750 832377214 578362575 1058360776 262887694 900378870 214720204 718316133 379206312 806736410 961513885 610780375 578868627 735217336 865604322 578611195 260065967 359273873 571076331 982682410 601834828 475892457 984349237 846242182 1028412849 914251150 787024420 485543157 1044744209 67414900 931507827 861332741 782880382 899648454 439631797 577383762 983248071 629619032 31840856 753867930 170638066 532332598 261862129 1037812438 900667285 311541102 1069633788 631762036 121028407 858934002 981899908 255871493 356947134 495939187 524455824 1000211581 418516942 735852086 589832391 137202536 585743396 935986235 561172449 368717828 162573810 375114451 1940548 295254381 389984552 762279859 472276669 489756709 803993892 203920804 541295177 580900170 407884780 109904374 577274607 958107309 432883717 984055420 946495272 715027824 965376579 301964416 671480409 912659148 486437050 939956208 771389586 493504650 740291887 47978962 841631028 621275676 556441365 807200911 953219429 46721592 181110497 309958683 9322269 428333151 946735626 575094800 521273593 241877204 924881400 986882146 1061199589 936950541 384783224 1052573974 831074650 471934583 597786088 338723979 1055585354 78221885 797526410 14280886 326487382 500306174 672673846 948406730 292212535 892454797 811413706 699035858 317947770 991542431 780702301 3045635 204793525 262767583 880237035 514568643 255866868 94253843 282140856 197656789 737800643 657828970 260476079 826131010 581590446 752737321 836780300 495372236 261132629 239433332 821545666 1065408896 538413429 814556404 467364235 462294084 703532053 300556980 1051701564 82756822 640707892 938975223 941589443 488845680 158922573 566878344 996273825 958959504 480434634 963709792 522881951 378817470 93485834 812026368 205886188 995731802 537302784 532771971 962594361 467244465 793453601 318386853 197210470 1005721530 441689572 245307102 347348137 933872178 479925668 447387920 643907789 443883847 573911907 197854281 988537724 202464775 722219200 660594971 606897711 411722067 970761846 296483417 720233738 70354814 33926246 404768867 1060815882 340503391 1048199443 275289234 1042042755 449379010 757188429 169935216 592562631 1036317982 770181820 438050859 68109552 43902749 1040625407 287310134 501375122 616234839 1049728735 844430985 114427216 946156427 156188024 602665895 480258762 1064897832 232139146 334196098 421047099 44592139 198859118 922559095 1017507848 757244480 490253827 444114272 34594626 631262519 618661880 618692135 742472673 854839079 1034253081 15752408 62899612 519243071 329355862 20017989 931300311 806131160 181581258 261266212 845598311 206690789 321683122 127501452 273672667 531174539 295949841 48228133 258259998 170915731 477678635 387629502 617170148 541469051 103416490 98008115 962722254 999751417 276335239 606454141 206806523 800209939 390713589 952989363 325699061 611862826 771691427 374134538 144160036 48560002 160887705 674815391 107450755 996786166 148319894 950374366 801913716 1031091388 578229106 768042963 277056032 804640332 154138741 300788775 803894495 671635128 530241942 633860705 256418931 199855647 886359508 66048063 38106488 565515601 22885287 491144208 224552377 939095860 17824515 218906883 567367130 1044881108 606202181 767075520 852286714 614610162 413129663 732809081 251474830 569747826 858515423 1057635050 718859283 630155725 627996658 572146574 56051943 491761504 617747796 21165007 253035845 366415491 989876255 1013814297 138229174 720580801 416521489 670475450 724428376 310433192 934796182 403327271 434633560 453054176 292689146 435421902 938198013 53308670 319985716 853399330 38568617 968707418 261678433 639575403 583755911 402197605 280349860 645121411 850797516 890600203 730095454 144839021 858911432 352630335 953649022 1064099354 1008441666 909694106 587198901 805823782 322679744 251753813 300462735 1037432242 1045004720 603069728 545175033 266638131 434712741 978444322 903274845 667534866 227930826 425627306 163440722 400490631 802676201 373683187 905678045 1054321135 825296643 141350071 835069692 699631076 208145759 597753675 1063174320 634252623 83150076 204882894 700840871 187429828 1059708931 914154842 533893591 1013538636 96837505 628292482 267754519 636095787 1025947121 24813845 320350144 666746560 1043527547 53001752 32702477 316125093 212290221 880429199 996140428 717540530 219200817 1045118059 642920799 51395007 336221006 500433906 629838110 357517929 964890048 518091077 664236703 595809238 148987734 85736433 132106730 63031635 728860748 725259890 344987939 477202218 656845544 558954072 990715988 409156413 677478536 767816341 655345209 336599126 24002587 11284540 842639357 620202125 993290641 874781408 839711454 352804673 564436533 902966071 53417667 1012598506 611798625 68140782 924078446 978582524 869861322 599338220 909184022 1025107622 10792378 44411694 1002228027 201362891 157021689 314889373 465798373 920360524 712822573 92467903 920446442 153210003 314609971 491272859 6311020 589532928 301777961 415805312 34203607 970189674 985525699 668758416 960705464 579127554 532541650 1068125697 271289896 864154038 85702048 351815503 1004544676 475456806 703971641 297435317 121047299 78143898 5309394 672656991 486452789 424727761 388222615 694658248 548136500 891300003 284699349 149758934 996920931 190927892 820888091 953577609 1036619591 615441676 656281056 412277981 235181489 149595260 257367059 741223744 192683802 135322412 882625851 155857726 881487278 335724849 1067683436 582462579 609611176 952822275 920973542 702533636 508051898 1020854943 836468727 564860173 767645348 918017336 594658343 878961044 362918972 165515925 915033928 15238559 337626921 786028925 227985090 339070477 709849777 407509068 268815603 702486654 814077876 5161590 978853788 39549386 96979731 997750220 801364230 438266917 527241826 1031804505 807697417 892959310 1045936194 333491625 465008561 96364002 522739883 516991304 907816894 106337518 288643721 179056947 636955921 361241386 431677194 1063249824 941073580 636221962 957795745 146004273 735953022 751181170 185217351 899647643 984158557 71558900 392022076 673071469 130337156 755405225 736866938 582503761 839191083 903809857 29494293 1005618295 633081605 10036515 7164916 781051901 889066754 191844995 15403456 187662876 740727308 273654331 310468908 600500219 114453188 304694835 44156658 828369937 978946550 173005866 388924947 217263253 764242151 52509603 316606470 480049249 457411482 304852178 664271860 121929582 419267618 402574868 969460616 672786297 458407721 105203379 485615071 728044195 952269927 1058647413 45295784 1029885719 516472358 819795055 221954210 1025600214 104498473 637036613 31478763 532180651 67313969 511101995 1042481015 552947620 682496398 111777182 883851530 629214723 548412814 728751100 1053358514 212769501 977888478 51868954 470428477 692335622 443876738 603156995 767662704 392508864 456717266 499562731 998930214 116103370 781282077 423632822 1053376867 273657780 144119955 419220146 746768881 767322925 270486340 223469199 741451920 251113922 427863396 50494717 682797264 414249299 788600253 538448937 360199031 931169511 888634741 969408808 695621673 936933500 870671079 707304707 499767165 176753486 698256544 974739612 574162789 976568474 262262012 1002710384 558685529 316918692 609641330 244092095 651834587 957066541 631216223 931542486 18449244 637138923 488507395 380352971 812620183 977787691 861490888 647884534 858652761 322894088 268430496 1004527849 899251298 234386004 489781387 1062286290 577250573 142244005 822596087 862524306 346277183 943360060 1034840171 1053811261 349654052 890741350 452661152 798423827 188482377 548903959 273740967 797688713 594740038 934829717 1041393712 1007595340 487313591 535243150 392616717 456051634 363059366 849101366 305651621 309399859 329067111 940237606 697903202 275955978 234690990 868380248 696768331 447591715 84470006 996319581 610320486 832241368 171435851 481281898 997971642 708941875 653697349 294769255 733201097 1029649178 131302514 523659381 188649775 273585126 111770168 135941623 386563164 183933847 642488184 1057302641 268121793 1030338213 676672750 829300482 89365497 488368357 284792659 978313974 305036534 117859825 452069286 240003136 370107982 643726685 970437856 235306564 918729790 579267584 684518213 332658157 1055619153 959897055 601657200 944664895 795397061 331770659 453158977 1056625176 983742329 22302721 203105526 691957046 721886042 779817813 601878543 372487678 898755696 89423670 211293656 14269247 59814988 810786737 224950115 613647008 505487964 473651381 523932211 116053865 803100344 312134033 542232387 164579403 567710876 244563273 887874907 906884890 151350761 500985392 815511213 621665896 806972460 133884787 813971323 468335250 118722492 378105254 240954845 601501948 596834182 53494879 586798095 906310639 750451035 413368455 690812588 952445500 291625132 774612040 936951949 789974944 763041908 126608310 240656861 595935999 395905779 456784802 836541236 637167916 173619929 433790723 523414608 1768106 714468116 572936863 293338283 997439180 873214135 326869469 537502786 902861350 741337765 547422856 5461302 267214991 1042277683 428956855 73960544 777616780 632699489 573299160 569384380 179257374 10051207 349168575 478361043 157307227 672996376 393918659 978462873 38335016 823603687 19921801 936712572 606096822 197446623 654324542 1006591012 494065385 450652827 726046501 381846711 927706371 552055171 130109480 102125626 290183567 493588134 293431825 85028289 139879494 344281199 18506492 844432066 1013641814 887490109 322113459 817007531 167408992 923950629 611561928 515150543 718645929 5744179 487613950 1042473199 51157186 1073461807 408101833 1030947790 757508036 685472618 740058927 5664336 380605801 761287422 694158828 143440522 904762218 1069250403 914094961 285970597 874935018 166955060 719163250 376963237 499598229 456722035 81635232 985589698 889773543 802748858 187624423 117139409 437453981 924157162 1038868492 718847987 322912146 191247163 343488485 500593463 824980134 226929874 482533736 1061778229 405946051 322910392 752725505 793618053 578433821 132219949 969595056 323193464 709548251 745797479 347220751 275057577 1036536678 248303927 472474156 1045529074 114290089 456902455 915259968 1014377490 639502027 43598569 25701818 344470935 909902278 994131021 333133656 470515485 506605779 798477285 949274027 461651106 667672748 679844411 223853485 238454043 523084533 177286766 755881864 529361207 547776449 19309086 975524809 285455017 327611023 939744627 713895249 497164243 688404300 1026554575 834924910 102157665 785253554 402387664 146723019 856204666 910441336 10062259 1048584930 42080451 401916044 488648415 915138659 746364644 652783691 887083642 948228736 794859993 792982203 599742309 648418515 175485468 339000659 172018349 812198479 929093492 261731058 606172258 843546569 582731727 200293949 915707281 993587070 668618259 207843114 1004405261 724597275 238165429 251139498 846790473 851165831 746677849 447782196 73751509 627096704 238537489 991961214 499901483 34916457 41437380 761520535 258937913 97879304 316936239 651854872 794035567 427163732 920411111 678193235 275629616 595596518 750332130 393473738 977333540 193678401 627113372 782538882 312582706 14446930 911166622 386393544 464258653 421644891 853849555 767880818 392177962 811394825 134874730 354153824 789406711 395203362 825872874 889062726 643575698 600962207 469987159 195357397 535658062 924291223 628070013 1039433246 377370458 744300804 1016521357 954302240 39875256 500843583 725762027 417880984 208340066 444798668 1012257227 2780155 472829563 198205052 677356646 385266667 863865505 310703874 318262229 699261046 120950483 391618147 888892689 676872855 222481761 262300221 490071400 897000466 307559112 222662995 572090820 424251109 46864588 124796396 832811719 598732582 429853884 1013968112 181769128 884356691 115626100 667234922 467989962 200671001 509705748 729584369 397304568 867348392 23960356 488319975 254438734 1034155330 684407833 968820616 61763504 13492968 697480902 587146459 65820552 575924081 271488303 637018184 625690299 714339838 444967661 800583590 446186696 628507875 821815551 486967120 752866684 419161075 9530370 648915093 330872695 159522259 288866048 339765138 616539421 374231855 602200053 310095287 1026988024 1068869838 640832838 771071222 990178836 26307921 1017085131 412724835 106375925 353950279 561263270 1065646600 756758500 1050902899 41696495 151968919 25493402 77105563 461871675 928452185 351710103 625518460 929161156 678489441 357377924 939790082 988863451 615411143 241939402 826145448 576461383 125940034 904100457 429399417 566806881 885754464 318706463 866635644 496770692 16816444 189465737 190272180 257128588 46553379 104495356 536539953 481265847 393038645 1068377205 452162249 363312063 693523771 449609337 289640457 1035152711 114239706 71875756 767445502 848558977 863589607 430544033 378663901 698972911 467020403 1015325918 39500225 307367796 516241936 639820839 1063585949 469944086 299952178 82139053 858591087 262932919 252958715 603631551 826482628 2341826 957343129 698582770 424084926 103581549 65311066 609037064 115975147 504239797 552681551 618643884 480942958 1036649776 938343601 865932899 752510331 28319587 689892362 352081378 103382514 976255452 422397985 828114767 483028274 218480448 221890767 301174747 556088096 167359448 164944962 737466288 185177026 13141480 342923779 535350614 1032423680 458695065 837954728 132660298 117812369 876516819 62458416 941178931 824907607 881678040 110943307 400245860 848878465 192492026 349624593 180339671 430114338 615813760 226318687 960719973 673116306 286067072 273657054 11715997 823396284 642882995 664829689 1014865972 804895671 328507133 655645537 383761846 968504702 279453271 820951389 931650820 1072614051 773579123 644202404 387043917 698592817 40117229 739760538 1040042195 980675124 905340568 819506916 224562900 205229753 54542660 536268831 134971292 1013378865 128712576 819801673 683112395 250866971 31063654 992513645 874006233 822155914 682502868 919637209 646027865 808730506 689368717 203743066 894344717 428413131 416828120 234727761 471249946 433354676 723278371 183239899 768884608 704811700 201466543 168122037 350259099 925908162 475114628 104121881 578816116 792137885 158727806 714075209 598999046 137308226 830145528 162159390 1039030200 803852441 651296592 741903152 399530904 998143025 1023695220 310190435 140292188 865753303 566925426 1039351169 103896734 168725957 726200748 645200734 741612270 740694581 156596865 799455057 367615509 233931641 544434905 628726935 354280923 671375328 1028026711 548201079 133340985 268097002 744459635 21050700 136806561 118548822 842554635 772544310 849298274 666223121 983890442 698687364 664153841 909854742 1056919918 80368933 1007889261 77551826 1463153 243324638 792091911 711835696 444144165 1025729862 729110706 855150448 249530509 361705741 370991991 281328890 214374408 88473631 461139315 107176658 982038286 1030963590 750407941 657629608 547367119 260816112 497739163 693188694 579411855 56808891 779230036 713607907 681731020 357089288 29410368 854238260 999668262 778380592 604045451 842008595 971044632 387588838 895180778 121213548 68704801 1004732127 696786424 903120894 437334515 781741622 808836617 820583304 364242383 707336077 383293801 1061911011 1046358405 604367520 564481555 539799461 872329167 565518291 777598948 275299769 489761671 718539488 985165610 956417545 618348673 691970857 187009388 337791846 300549435 558590375 118351029 78133721 755576436 461854500 730321284 596335519 244049975 745138756 766113034 155925808 1030905090 997496667 927387972 977174408 1037420849 121812849 111732799 921735090 344590988 279297474 430984481 835219901 951422120 981901806 607822869 1029408911 639828294 662510781 1034159798 528266610 189995474 326042267 159263800 525061223 932881261 197145103 51752460 543976188 825215396 169406365 716933941 1011937954 827867005 826653636 960629227 17655545 954825448 408491694 296570700 557964735 328687699 1024927699 709415967 600439424 101460601 690499252 59958104 863736572 1045783423 157822504 72405122 1051067125 270837500 931165363 1059678314 487225554 20848056 799697322 588722374 334490108 1032780616 396261643 659326027 790429592 941384090 949477794 612703742 858354036 698376959 475336163 445260610 159743569 555460182 724777935 196098774 494374271 121113846 1060801402 863476252 1068610354 24560629 699484617 27424103 267342809 138508320 566066080 282091520 72057931 562555353 398125713 229421958 638260857 901785908 165105614 578396542 408150764 790196069 582960695 474941310 812864176 646992804 239214167 848548981 39495538 864817738 545410184 1645672 583633389 331102897 37058608 672027342 240186793 661972858 1001801127 36668824 152494523 382940111 306406743 789559972 124863914 629715736 1068825496 203016490 951484001 380617096 538986830 802305574 360034183 18095984 550092397 1038979076 28214279 204138214 455180869 782391696 737777768 759235795 384960198 986257737 1032797223 256556131 524858699 251488460 679736534 667409593 1014876811 725493882 330798707 966477535 513510412 267767059 445584521 180400474 464735399 432303338 1051092383 307811440 226650805 519869959 405845027 26465950 1051326206 35912168 530377644 574227733 626408846 684972591 927016281 227976771 706322510 1026491833 627180733 346988293 955517802 375628490 418660706 855956391 841994924 438513743 230635976 821843741 222433871 716473977 574334587 444991216 301144332 848340382 836387420 698170321 389329847 524241110 786856871 589158303 807527445 864647197 385450584 955865121 682871205 325491002 528704832 17831977 816176341 948633958 338071975 737878468 567858223 198129051 527302435 179948357 493752820 503410496 380014763 653874122 350686109 409448102 776884683 280430939 512766793 1055248106 409721287 341798063 427870749 521593374 476200654 340753574 21986600 861847154 563856457 482772363 468022022 186842401 984522992 452278737 156949622 741848606 363355607 33818738 509226832 433710744 387522307 1063496904 146194221 720011383 286955045 426683258 1052298842 657385595 797060118 555773286 288326240 860723976 52549924 1060110179 758331466 836798905 310069431 890802048 1020139930 746167862 589820274 280541523 198490197 957976402 351048180 182176490 866010854 805437893 26918144 688657702 711653487 621569383 822085618 516013335 239042853 972772000 529346383 915211779 663157480 158648456 663384327 242925861 222351134 1012251051 511474403 485932117 577735942 244006532 594084347 802761096 238819513 847231740 385498228 184506303 203146934 1015595408 27935548 745556818 583005767 935702542 452226967 614225300 436910556 842300839 1026734148 937100828 1040064401 84753311 946846110 1042467521 57088861 276085646 605304382 733857762 922162827 589601713 1004497833 73803118 940851249 799095943 543805 837932993 1036516300 1065763996 288392182 330183695 746517491 889150216 104379618 999292790 19249298 339699705 478255371 198362197 711808022 35520257 90016681 868158418 824208848 706836661 567948080 247915660 868679155 146827602 810047131 1041212001 112417796 1038479059 788442286 103989487 852898590 685054977 721314545 115126452 107955636 605759079 64506766 101312087 980378745 885085064 913949376 975540076 158591584 237306583 822263556 912372330 534233466 429098642 548972900 475694772 961664576 509931612 387956047 21253543 814199858 1025491005 84669283 352245947 527728463 370422836 453866420 620186695 794765222 517802701 888666560 566250100 1030944306 304952763 829273432 119003774 289328525 694963078 696278940 598906415 32873141 507578747 829747165 512869 608654762 685675459 1056876384 26645249 216396019 351919605 230492277 299279024 1000688631 1053620493 210458822 525353604 577737090 1021666122 587820155 469966223 642557905 184764274 639274370 747678714 439415661 500040239 270743486 433292901 1005769564 1053631511 580372162 158364594 263067453 77393788 377748469 26103444 120404685 11687613 58545559 1043537481 863964637 1026233010 634451811 362212185 348962691 325547653 314727844 519983280 170329690 344268880 624541636 43723549 570821450 94865049 852146930 648139485 282088395 1073370387 860786522 781709314 70242917 346713936 739703691 266670575 737716939 919308116 1050469520 397256946 709442536 483278843 702003808 576257014 947739222 231819741 454124781 661501235 927431942 1015957792 38693917 511506384 927383092 383849582 765209676 550317548 620960036 1029414676 604876702 861019105 567688036 648453956 169409456 661005073 439213793 356518078 153453260 125700078 211932592 464721448 998969334 662312689 490997051 218786719 152716992 400343211 68949838 966189637 67592729 789111258 608799815 777519014 144977206 474100013 274303238 247148655 616440423 873616196 986869334 892701364 862804570 888204807 2916215 525920202 863924546 274094618 442745922 314064646 208586081 13837762 33074453 992061758 62339826 36716114 925424300 591704278 60670153 590940725 654381398 392566315 818343211 678381043 279410507 604929005 109710821 519613945 212062236 543581820 964642268 339312460 168392481 46501325 1162170 1029816388 463283794 728057276 604362868 783496739 709812340 478044246 833506869 211575878 579956293 720713142 581439965 2226241 340649900 520514133 966022254 1007489783 444533358 583569117 480287368 244211879 657939273 778076980 502953048 359140547 517769734 313971640 771364748 973738521 1049260977 732450331 25998691 397607768 80447807 717593952 232678878 88513277 556510987 371311499 984074297 165111976 515762347 459770349 784142638 312271025 454572280 564894369 214552559 861973114 653499269 314333753 925781591 577877458 122745553 866744405 721274871 204677788 474157123 112060340 815491036 636017428 564766415 964972 445103230 739265556 1073627474 375399946 411189801 784412749 652308749 389387376 307530520 214040212 1040944112 13894402 983335401 709829701 820655559 463211017 728506205 319721243 980523175 162303864 37380174 474423685 554370864 526327514 275555031 108657605 546578408 1028156311 630695862 645626393 781086653 441497821 281230919 1068958701 83705175 515626783 191807629 784644291 849768619 590614873 826314889 333284607 532815882 750372899 127589271 977558983 559194518 563422985 1047552398 159310754 370488198 865538717 663028862 559282784 747510141 1037755682 336761971 912491828 581324478 1006797742 626319779 605239319 543491526 556002035 161760335 216757545 37038166 186070465 165727126 799948927 287591972 428683782 572557964 371677116 186793353 809097740 864464445 71728367 532436547 384013354 794226311 241527443 1022857726 396747926 757276893 682521644 192584417 238706198 377116248 145639612 993918596 411490953 767844659 1022874972 76792968 495790732 91586916 279608263 9195059 656568185 962056114 276057382 628780804 279000115 482526217 484249634 737236434 698380061 790132129 949550885 450394996 923282794 1011395830 895631240 452052338 656300432 71491910 1036603739 587550790 953234417 937879178 277223578 672686529 1012661888 568868581 271404271 887706079 559904698 711241599 645484791 757020002 182150265 131226397 369901182 939379227 1061513181 554885818 1040145429 536361566 694319934 15458588 299882129 253804678 87187782 701218978 23077668 1060565329 33127718 485335737 239130708 600656033 203342639 54186501 533967431 244946630 39689731 956057593 266773681 447547523 612083515 765019447 1003134396 691936355 188240134 361526446 399032674 448000542 196353953 696466434 751497609 585652884 478044885 970038610 600517746 552793549 592669144 290518747 883999534 258394853 663788147 229189273 1067028348 344908935 410500134 88937342 416239957 726466212 172919870 1048239831 545424597 391500194 934216668 543933756 1059653569 903656575 75170898 666620716 974098519 843275542 1018538597 1021515583 254257559 454898505 733007312 846118447 720727951 230338423 45143623 967713539 354431242 83198939 372243935 373418568 809962989 879086493 372685995 1015814927 104969704 152987111 982927230 433318918 245267694 583068883 812870212 620993973 151102960 696613461 375200834 477156682 359652918 222016987 171777680 722041442 62468482 505404464 328185148 144181654 645733948 925196389 707858553 249821791 90337870 210583635 941240374 135187809 78461010 580497320 157394054 158282707 85649393 117739856 957033502 328533465 505330947 1037875820 546038776 924317643 480604355 756461929 779963507 710109697 458190666 866357945 587405417 414954535 447973507 608687367 200078300 519891104 205031789 686004596 59885042 326486583 414627974 509501775 398776460 283342275 636196850 569686431 978442502 200563044 107174935 920907123 604933932 1054195004 419143177 509824796 261693014 45417807 1034793264 299774144 984557228 780058563 838250280 228754389 619447566 102438147 398627308 248331389 816762434 925926928 101009138 667460854 434977948 416727116 775493321 831706141 478556858 327250074 920862784 890472393 745467739 539792828 640594178 409140981 934918527 409995849 167333756 173501167 46612119 344041585 908810130 761686354 724533589 63114269 350698503 357073361 1053345267 296265918 298181921 635695163 564327902 690750586 8797008 911127052 149168350 593032121 910829709 687004880 774468250 367046029 728961630 1046785927 481658953 694889226 302844765 289926015 8968902 367475393 176248930 497860943 592203731 166208487 395254253 324681417 42434827 614577973 842417304 589135336 95369449 271327034 185291352 204513271 310628802 473485636 86643557 346029267 1026115343 753610826 613287140 9946999 138339783 248315135 334849807 549882704 355756105 220914394 188037703 364486971 636283421 1045439135 896246123 543063146 546039278 619879999 271783489 488463988 559808316 896525719 60450819 481565495 290413914 417644545 1022372696 628438368 217545175 17536384 397859090 692440717 98918129 498801737 875051095 317330293 824983881 256235881 258977902 759899076 252029099 555320421 954103621 671028985 786514741 668945652 526621395 114001440 193650699 1051679544 830678586 612618872 681870667 284169980 523209221 87841534 1055222045 677442216 625371521 12480301 782419143 102450169 463605132 357238196 580849817 805444590 335301765 752457217 213846414 344315792 340008591 60961732 804965851 981655762 341432359 787058874 940603852 880109617 278519185 686797989 1062405557 701740713 71856246 224879479 912992731 534716448 115939198 549593975 109453049 501955663 679069727 57794427 357881857 1071120548 802537904 1043926533 379451556 402242107 864495558 862697797 805197795 555414177 82368002 467756876 835025657 972665000 666177073 997094941 997749017 487922941 545034158 947079360 665607709 979684731 803739369 109546063 857926850 989692758 991089489 23258226 997476896 401068304 810669026 785293764 73716677 708444252 1043651325 694089831 735293254 732053456 988152850 976186245 342463432 258929201 776687021 1024151935 907386428 30951083 394265269 317308397 135958019 1041394873 81321727 113662460 636129997 466847306 1072236633 412939103 277238650 724812147 301318003 91972469 1052498673 918280142 459075790 563476145 844018121 984292503 473042874 387964835 321194209 929899657 829493225 19094017 646665576 467367856 778364990 649198980 663698203 331391419 1027518254 1068898886 34237057 422611171 392541062 88557380 636480042 601842764 916610552 916401589 483865076 48601363 894804215 940297124 257405464 365909204 618358854 524127981 1006525147 1026195020 575491949 179457642 66112046 521478172 55191824 726508119 580504104 765693687 608944243 489606647 320097439 961206779 340562233 120443968 1061293176 1060703310 319109811 408785152 914501905 354395432 39255150 49159295 267894244 226369111 15447707 874876028 877998794 568373138 280277964 637407474 650535892 527040625 237303732 837151797 688115469 3955395 492761981 1027324430 158035439 424698051 794170537 360140251 541740143 836104894 406643171 943247997 465406161 533252886 231303570 157105116 273949236 820001813 525783913 259628678 921777460 512585775 86310012 294984623 445016434 539248490 36753212 520515924 858457896 1020135500 336481294 402359508 811692774 489441242 531835315 177830466 83833730 508732073 745924427 1006068348 160693443 905915296 380394218 770606047 537441796 137452731 279148650 81823947 445739508 726682126 776062849 967752542 996742539 272275082 1027545349 1063627957 174314512 631332298 384124394 24122827 173514938 923337987 885087022 751992073 1001036908 943774584 524275136 882193276 1018780827 994309373 912409836 935861473 485435281 484421981 838352358 495771032 403532973 539431452 554655875 374513163 500092054 1053160776 401121444 1038242671 771040410 592312649 509817973 680202636 640026567 352759619 860509746 746399675 1011782629 64700440 582393981 444502723 400007561 688610446 994413330 689706185 623641692 10143930 961572629 759806231 397665956 942299809 428416729 525957730 356185556 250945610 650104371 332034814 403431003 889970458 421953295 897217456 742209050 315861514 794277962 989738635 989486571 693915483 870873845 408194619 539330811 272105609 761666781 878503002 100158079 8489637 794198285 979954631 831382076 894665978 78948224 846268450 875224439 816837598 9074266 186080675 719276500 680321316 927808543 445438292 860599788 144987087 882713348 644491720 185059640 272132791 450831652 933351377 1055821370 367762748 225217298 753175713 636144999 497388564 358226614 114243175 980959293 637156923 594197339 692142108 396872552 469345392 690580295 356937172 470382181 407678026 156084798 770685290 717977810 948855209 948727020 90537027 1046697222 258573058 35301491 573946126 982923658 709928755 499235919 534997268 920844710 973441603 527601656 220842322 258450411 431558446 221583919 238623591 630679311 650963322 495082644 57141876 508434589 783240305 3375680 551215555 178215211 218574751 173351055 260421398 432671729 464373075 772828424 661822936 244979702 568441103 611493003 997667878 462214962 427429512 326013916 78261099 149889490 696697547 458085901 802224530 463326476 936314883 57117975 742910035 532255843 3300701 6229616 170001598 975251677 556619214 898451636 361172289 1043481755 299658675 594360287 773116349 1039399328 335823755 456781263 640623816 294282179 543383568 443568737 320777373 315179391 836840442 696032924 566444127 574591945 335964631 273627923 805107111 183402043 164839610 159352062 399843455 17049444 296030160 683828757 517831239 773392711 100005741 47769950 1020736343 40344302 286109503 987523522 658984588 1059258561 187029724 116829687 229659586 288553584 1047600370 954944806 269692752 288376467 682093337 1006863408 195953327 140353719 5234924 510646918 347619190 732230765 612221874 991056211 672827334 995070356 1006004117 551393480 641189729 38150619 630912972 629508296 1064639104 534793878 587801006 516815217 336713356 767812180 13409019 397838953 234049032 575137182 742715531 1013974206 307888716 521686717 88397446 886988092 1003073117 1061414889 924356477 880836191 192473054 453950667 255364053 887912497 900163573 693417011 1071010479 362688972 1050263218 768918580 822339715 460233390 270800065 645313061 1047062562 728923277 922469237 74116612 368669546 450495729 67955755 354288686 869018244 161331180 542820726 180432567 1069545202 315534391 494855614 671952609 554892875 673065584 1055866450 375313326 573258324 1037730090 948546269 824887761 718051972 881053958 583801173 386162294 48396717 225230014 805449031 585114389 541659047 692287437 682813415 495221013 578672863 1016814699 302690963 993290459 996527044 860355907 334739222 316185451 995878226 566724151 998930009 537171580 869357032 999984659 838107464 993552128 291031053 878732835 701164975 810645508 639148018 356880846 1071281791 976787251 159798594 205861843 825929042 726298987 617551092 33035060 315302909 3664642 675388360 346471615 605208813 915893076 911075637 1066992921 18442642 843525325 533266037 420373946 493857724 817979065 1010961379 311712950 261713642 139925183 1063423315 485289536 263587174 897654269 792786195 604700364 532599732 864050813 505297814 810870812 429610386 778154228 207223091 865736635 141365775 483720300 409146369 1054597609 613731568 141900640 2731705 306859652 991541291 519900919 223101853 587653289 106627154 808133822 606234887 998491795 706373054 107253393 218885549 408540205 805546727 98111927 294276694 353008885 148396300 804635210 610112107 352974005 553537163 573039210 570636632 573163834 855108031 902074705 359571775 459050155 845631097 564362511 292612965 1036172192 261984071 792556916 382408811 1069568757 785668685 130916432 144000763 93745975 322708687 581004657 908709364 534908458 358902474 419391265 252942897 478187083 579555277 492980331 934552315 402480139 128395671 314409107 943478552 893783282 110637439 1066683110 237321327 702659101 650692443 574590242 191526840 1051868345 141175051 229715307 788854460 1814476 925265716 126144507 199958862 103680054 760509670 381832273 760663737 489631793 467076905 283351147 365603738 226926770 228000081 470518457 343822717 748682539 905608053 783333148 979688262 914917505 1033997575 596287827 550956112 942736815 879021662 260755544 157266916 301391308 31726637 736825701 981042354 305082153 988988148 496395379 552080693 412898337 775978433 905666628 1021352194 43133919 149803176 846089078 244053315 304097063 954930466 413158905 735745320 279644790 911721871 668603758 719233669 176443345 554751196 287177680 894369234 748967094 77922811 695808491 902899752 692172638 723232632 427037158 549940529 826495654 197551277 617168358 64088794 609190398 1068362975 1016376277 963488265 733822437 952636186 376201119 456233967 1005216916 472349913 683848435 853835877 586750858 105589809 510761112 1068559564 596315143 243024783 321536150 627973186 250802721 69195816 624276025 893496752 149627089 792509656 688123461 365923858 645251733 277457604 220689690 777025740 229755981 611063636 713033364 247460179 725178902 92559586 161047300 868956379 960986128 279389216 410902446 469335455 500060027 192145587 1054140041 729154189 477530468 460414092 78811207 481232767 1040989483 659684715 495059459 992928555 253231588 17617919 371661875 116647121 19351562 310131128 785123070 440792587 1024800405 20400064 1063733613 231536946 444290406 652423506 376824669 817797496 649289162 235437618 354934152 456684907 252260184 207524060 119380559 556800858 806452213 671347128 866328369 655058391 1066982359 976249586 1046504670 469084685 603356602 167498909 167399435 237353083 208910747 732725344 477065270 97034326 499306575 195428566 903325850 687024330 35467188 815164609 753326005 797112755 11368784 87261839 601101273 961782073 366602488 437885663 818242497 1023598806 261141115 421781903 67770793 645896307 405957358 941549864 926275197 51511869 290051989 637278229 871588764 268756297 462981442 882076131 960975706 63320445 868088885 536192285 571670613 624308599 16366547 231044323 450382088 995836034 799160840 726596660 821195992 703611867 529052534 941750241 1032131865 259295766 662826837 289309762 533045122 314532265 433972974 801756652 197494525 31474867 699062081 440660014 164347830 687078821 160708268 301359157 221053992 200516558 158021620 811540485 808037411 91880109 710139330 633504398 981120411 961845716 50328021 894878614 568273581 95421392 368349618 129447258 752732596 336303985 484871665 173094434 993206204 542552613 777721817 584485683 931035613 389991772 747265927 923400474 598024285 78062418 430510161 687931371 416928090 558947586 138985189 27890075 474657428 871951894 776324957 492541245 193076926 892968213 626551177 11141829 87086729 58517442 108431182 939564063 503105757 938471553 391441593 9709281 45117827 134705051 993391859 409727016 848839803 570808742 554929201 558948175 949128878 1025753709 299799047 214869391 47058769 814660117 1010627539 117562064 400137063 811517927 278694690 28191020 958544802 1005227971 382499792 302785307 137534342 696440176 783458511 303632566 564973648 985549255 888567932 571385802 945630268 80689798 772067800 376710070 530761976 618945229 102052043 113906421 803031402 721055613 523366585 480465590 702382631 578762073 62940276 381855299 504778412 1054539847 594973472 794270927 764860187 66101703 230959436 655517500 460385627 1028919575 192388295 984589567 952168581 956760680 617417473 778977875 247103632 471797108 227370707 579333856 147700868 655514773 861455435 495281049 764670177 388165555 319224185 461269623 280047480 1022312303 426533465 221748730 484132278 372575310 308148089 801946904 528298010 954807128 687017407 707561928 953210089 702586607 50996170 668648843 30353132 1000838335 637717575 973160302 797354030 636979673 1073322192 985799304 877624410 294978029 678047669 224746775 747726047 542902516 33042400 26012902 1029075925 614418309 848172745 814640281 538830169 808261734 490511659 623428040 948209139 767426879 20324526 422979316 176833908 173438670 961165872 964980258 84159424 856246454 615722663 657333335 509083770 420460351 265246848 410319750 354339731 146339523 731311962 786271715 168551528 183549242 914382816 411373467 914282954 755146407 321360783 748341085 970139287 19292149 630182590 467628300 32907737 1046213461 59331022 990221226 343621082 954115853 713993303 719035250 468407853 394748326 362370325 816586253 1057347169 163947397 428171457 817765719 327554401 860755591 553721726 800869831 787154868 237705139 983006811 435014615 1062103433 252175809 265347296 863058978 767035995 566383785 26327523 954792738 914000157 277822366 163782499 848889775 18797647 934006812 327987693 414675129 792103229 641772650 71989116 437094117 662710648 520058562 148734176 581666269 843554001 662090873 625319271 262915582 703062417 1064757686 889708027 776301273 340457768 414933759 209582790 997867579 583836609 259383038 165983294 84819058 701579133 525339392 756853539 935904483 870984017 850552104 309303940 10137661 658936973 990671573 475987795 965285869 330318387 213699591 864956096 607869253 776376720 350218099 683239617 60466803 350462329 459237623 1039841280 580624723 177096942 774649422 484346041 499800478 976230853 801666549 16454778 212550855 748366797 803425226 305839719 104522256 556892682 278826668 721902477 257962671 379814941 989902042 320244430 994227905 83014802 664524886 555591444 481470268 119512692 815246306 295557683 737667767 778930437 726431991 694300270 550206513 564974923 189796314 968458443 515350295 902712085 172554637 732291582 769952166 803172252 797302734 411517325 887118956 421936281 516165024 38449940 462765447 677518241 680197651 927358125 434519802 843444775 529922151 731530139 904533910 600091649 627669789 355417024 865236955 944590926 1009686804 934458122 737904617 891595220 907444310 980645081 634082431 122231123 559444796 305261256 497642711 1054302202 819471595 19468248 568930959 913889894 537180638 822719756 301365264 652771414 552940433 506387010 23991087 889597867 931361362 41910314 611822215 1056688085 418651251 811520950 462833433 4891380 976911463 769271230 1014916121 391694072 1004688078 389483521 440541769 627680252 959216935 66201429 347512447 196745447 10110222 821959178 701542970 508744197 990888148 758542097 607472074 620887273 147671561 134510372 598204993 623251232 46036417 357160695 717412037 889687359 261605207 220612387 822129645 440299377 873293249 532515308 850367317 572813931 681208232 84750457 27880364 337354545 1035285924 998024491 46622929 578520333 48692664 443718867 197058137 915663883 929940099 345098521 12574737 879214580 218053903 668574772 442156547 580820853 595534957 436824281 719893025 915224902 268119249 146096120 423407509 484853257 366794554 346722122 134944108 1008304907 970392356 76624319 537265538 498591516 526760659 525260052 84790195 199503657 188623842 779978190 174451715 670518064 828487276 696515840 434780422 1066448147 340206334 352038323 809034622 971472759 824637620 1066538296 990512953 809894091 1002666795 104087785 408565565 178942533 999504915 439388413 240266260 604831377 227980708 307073175 290576506 4464870 181889685 165007365 507733370 732467921 1043799881 252531791 757900356 358628346 170903670 966244384 562672683 1045835421 53245326 363747690 386881913 1072727682 354260585 1006179988 59816759 653808569 553524996 793837464 854392690 426271143 570368121 268299108 25931955 187166462 818028599 353422960 581303170 826227436 292258317 241379733 661177226 554337689 846949636 985993107 778152696 335341406 527679637 765651322 863250620 646549500 957640539 13132526 90343818 149526218 922372418 150164233 918839055 170502238 242380582 80579148 787476711 397410877 153829743 584140075 579772888 917005174 173267389 1010405523 289019517 791810833 386556848 39109303 195908877 397313526 43418476 1065795579 585339581 52807226 115098604 558258088 60442692 632004528 879874534 787790009 913677900 520288863 396285795 566447924 720679575 714129592 711041367 612993300 244982091 911267347 1000229593 821076504 84098681 897196296 298403247 544109885 565544676 632282358 260787434 345196871 250071064 632096892 463669142 50993111 787324285 245460629 407007833 199040544 525638758 66115630 135007474 932376265 975428859 597668774 210740353 549666580 439670415 415688310 874358191 949893148 52800455 860858640 11629573 295102822 882704454 780077964 588000215 173108742 1040604348 8811999 149011691 585808732 7129824 741911966 819709700 304777543 975000753 167535554 206134379 13387115 1044923701 243110763 536676414 892732369 651240197 307857117 599243888 482619009 555301503 136072788 927092330 955242009 593707788 828935197 834561804 855926629 512071229 417780668 974058799 61776611 56934806 459289679 738116689 971647445 760767603 98634706 332859319 403606056 371952568 902508911 305196943 991870799 47605516 908465627 336364884 311090816 1020636720 213894764 109707377 778636193 1035223367 785522532 752837365 815958236 999922749 985153918 366775073 652674890 496943373 815718375 209512398 1065513503 880950142 300457962 290882958 664494749 925689540 692218528 89049514 374485660 872487126 226695663 873557661 994046738 427053784 923463853 881010253 687926798 720437494 361728823 243898648 495241268 330193638 578778243 945679130 481084204 817757124 219482672 5643182 15208605 427747433 425782524 205907660 314288873 400573239 516592012 598467559 863966367 992327485 505724477 401898933 245040049 1045539358 531266449 287877937 619385052 794205953 355121421 768173355 265865542 344620843 238586263 890521332 1055151754 560182837 168125516 408785038 734766752 555066216 597049891 903067851 1030593674 844518757 692061184 401920210 969569376 956487216 594068260 424384785 584356532 961095983 381354172 698321050 170875498 50823962 415446389 154573910 2823924 332148519 642912070 152343116 404603264 630303881 451478027 553670911 1013172340 762630657 977531776 935149581 93415738 246409274 1030397108 363508151 106607414 236297080 441201419 677696331 90140255 213674166 669801784 896891462 673297419 930524487 681800507 813794721 242114475 587688803 980154374 939784824 806998792 381383976 628706251 718301615 842118332 833957043 793148373 34677104 596546099 443774502 905124519 512908101 174965020 414114436 361118278 121455071 788747423 346766467 910034713 259387750 831232875 762682430 71124482 626838241 190638427 242388858 214948785 547700673 970916224 665831869 321901484 821257063 854579682 354569946 661757802 604839851 381336219 111539575 712679435 462045269 566999815 738631988 588607747 9544142 1009333690 11478019 21083487 854620340 268260588 235853811 587992764 124198841 435651507 298437554 1033290438 477566399 585087658 738360263 886318335 845219166 586797586 453247769 977006318 282868205 99048966 356657401 640546889 699507921 374012602 679908216 669422351 235037089 479211711 79333480 919663209 703781675 197170824 21189950 89329759 967635716 548894856 275048737 714488620 667991010 890454990 737798688 554768557 531030265 140621010 932532302 182343203 1047374411 70334839 711891269 358524428 1038570247 79902159 163799135 650188682 293001459 12370472 499091279 471811061 975015249 495625878 902264119 1064594241 141185802 582224789 240178309 848393293 908281348 178548110 94613365 264837712 653857307 947521150 602780314 712385825 269117008 771129529 911526129 1945204 78848917 68239179 426740626 522150190 823353396 178430708 203333283 3586793 999747221 57543035 847671557 748451377 423680811 317245633 534711139 548914904 442875833 110890250 396121248 594450749 170888663 311501968 343200482 722055988 386649508 976894145 315450109 174741749 462354641 370194905 1058722123 382147103 296522008 916814343 134130712 737589791 794124890 52902309 499188609 278601201 226474647 649332785 25488735 456751537 687743355 330215398 604183089 503963150 198022425 573727550 682916047 31969167 931992672 898917813 6105237 315526215 186589069 362443408 128779694 938742366 808077561 482287824 550871611 199629005 136608565 351265708 430909395 607840965 563163069 558240339 56912435 421062840 37639838 581838793 324893277 79245330 901254355 61160541 924713192 777821736 363889877 456160474 378030369 14743967 960019058 39047319 769529120 209738369 500755703 922084914 158654987 239889247 1045692740 290886426 642059642 1066922728 640412227 96960030 84116710 730346456 973091512 435286672 879221901 14547584 969645195 855747728 289784212 856498773 126669328 376917337 700641148 636289033 525694431 779223673 805046018 198597372 168456549 15228305 213775140 730136795 530592275 382204012 456981299 787252855 580252407 1045318721 153324683 357443238 576832539 821753751 302512874 642208801 538308646 133902999 1011766504 539202545 45893823 22745034 395003877 291556023 873513148 291486202 238533722 186218423 218215626 16878779 337485934 760318779 423885693 112893158 184059501 734076489 1070062932 229122843 939036697 155557511 420848040 503302833 70493884 987397369 476323398 396749201 1004026865 472333682 979343844 253102875 388045220 140972058 31235206 548669220 336912651 89599789 341099696 334712570 161881955 5176695 277210870 116982228 850580243 805559614 412640280 588781194 69965044 769901190 551795685 646666193 210080835 844436729 274027446 461413646 936487317 801968820 784163382 218186982 343871842 189834309 128982156 268537572 430372237 491576491 821556361 805193784 751680940 1039449244 918275553 901110775 975529299 1057199874 759463616 916829079 216238670 272241156 333135398 471183110 791651873 894282972 362263943 1010352225 588254365 712918546 416913966 1021569400 282650282 502891723 92249462 210721708 543857572 22783144 384425450 191173224 607902124 692678031 774797859 702145448 550142969 443470584 965501292 1054535357 122890107 872425612 547812870 661001549 1024155439 474095953 1021122600 496242311 407106185 748196401 723012547 181561133 803649204 384519824 727211957 387155219 220971608 360938165 379826345 81352103 891038329 877441774 494233293 495450896 302569114 887855947 820544333 1019609228 934875847 2923127 323323639 677354513 278267807 475415200 772240682 777060416 427074838 845322243 621887392 860692577 319343572 649892205 559499874 463851360 997681992 931191982 360550589 316870741 135308269 185074541 599591422 761052232 675099589 780324838 363367197 484247133 1053615208 505459795 204609733 1015406736 885505573 1036330318 698430746 856113933 120442152 1000099432 310483140 127724146 1042148010 270937885 540258911 165240133 986327417 98177269 549698252 278122536 663940780 939615554 598730779 515272027 357499891 271136517 220211375 1024228241 451843489 269783581 943935670 727023488 848281013 380675196 1008587797 299214465 677000687 574741106 668210181 562750068 267236174 892021316 447734847 999782618 380197782 702389407 965180814 877017523 598824437 997734672 639124430 992693340 256088036 261680239 757948130 782052620 238275718 540031806 1052096916 876477192 776040936 747626732 690314286 878060123 914263150 246675964 805315868 943732468 99844756 68930542 164632372 777751759 465387312 518259112 706522544 13442945 87424384 166393087 986003519 294518685 801576284 875665811 64276850 1002726480 159942726 663152078 499629904 133975316 491464003 879832108 467281342 107807960 624886288 256500836 135731400 1067417269 847088188 39025533 197822346 11440368 654313115 792920512 821557140 333978715 1040191453 635547485 905157607 623937675 893999986 986363682 902311588 154793624 211594648 939281776 74137455 195568003 550457723 397302825 194413065 898274856 153569216 103199331 30741846 508415636 16839316 463652316 484181095 202251466 756071308 887746017 160740077 672370439 502825306 781057574 691923192 569078877 348883512 152878287 14705435 1047276507 268744385 592722114 768539853 701357301 172502786 228787749 645334401 17463630 748997008 374516258 393892260 496388921 241718914 815797293 382732967 809731515 860419038 277117937 307906802 128208507 144648657 613318416 804389463 357273941 1044063640 187554676 1001738021 536346358 736438074 1051193364 554263760 454150122 354882118 839718185 702625255 622982439 890408443 799666446 963363517 589757618 660300465 261110270 504796643 65825142 520340730 1057625762 486022642 403520194 981587440 147383034 525755343 882432392 788533582 304617067 225483038 157456680 476586030 1018178842 425357404 238644636 505344155 1011680139 216794591 886391984 1063446775 497714732 830635514 136421610 727388192 910406328 431947152 22938360 593929902 100420050 170817511 874271996 299836203 203743676 371676812 770479713 253752791 708359918 287450244 678149380 981465196 972315585 1013540367 158247793 178240776 1065334642 1031946985 133853495 754072124 983059233 860576569 684193739 291253309 871537875 510565006 876838146 317449937 172175301 938933350 1034784893 122806650 821042712 564690108 583759296 157711671 736317560 336409991 65082205 74541842 177915250 307662589 701209768 866710201 919881883 280120275 17181874 1014351551 82954725 237310753 349468852 473255306 136201998 8414432 78170069 489089639 1027434222 356289417 855370768 315396001 175623307 565195266 1006976759 492034321 669501595 451992950 50439456 941173008 208533352 309252988 840005893 345058192 102575080 265183530 365985351 1039389616 58422210 1050896496 910398164 771501911 236571456 213587653 530263026 20085474 780590537 424259093 209764233 738448260 76718657 910567699 1068782179 713993870 783998232 1003436383 78834927 690032753 351365066 341595012 74501875 865377780 1032058179 219181062 998271054 149075536 706323455 366301897 137364207 687570317 701612875 64324529 413950593 729360667 648555105 70028950 4361178 410061114 110719081 618578534 753759079 595301257 570970906 633600385 1017047095 455696649 104122968 805719949 92866816 625731932 425511255 161842784 602315107 665724480 4294561 319455078 107076635 165153688 953777230 1051735038 314739920 1038504701 606828992 691706276 187790631 342168111 748855664 217728346 775719950 810419135 582441863 747374637 160402613 1020866737 1051484148 405328851 581340687 1054809287 1050247393 258981386 374381880 786260548 366674128 957609994 221791704 1046180920 401674952 985786913 142349648 919084154 337769064 1004462234 103118990 472593337 537392428 960451769 312411738 774422345 99621288 229269262 966135135 138982638 214586263 443356890 633823437 117368499 204494699 356989846 733596313 826330559 354586710 691934699 373091759 541281569 257182074 805381251 49387021 949962317 253746298 996797699 626861926 181506637 1006879725 65792115 67650712 483853342 906527491 820361336 580505004 281955391 448333497 137650406 614109291 354226967 56719523 354665289 135453806 925221694 308256509 486480116 839857979 843193687 140766581 256667215 222365689 753833236 34927842 461573762 677610853 711963736 696105302 712852639 108859583 987126474 923012410 28394919 704692481 983827387 139344578 165241949 932372743 434779947 1032826928 375772135 186248098 678564549 1034059273 194251285 363395350 335064493 859343740 239975991 250180584 313445126 1066595730 253249715 934468989 565055003 200837084 74970952 142887121 864223720 401215194 13326979 915654688 393531834 611518829 374085934 841329601 835883071 1037319616 192641237 653656132 48071024 1047104824 436097749 727458313 221751882 971300451 834537213 977743169 121104526 594075856 702660359 923320748 481803292 554109979 733079115 220823682 988026219 949923980 208902026 135040076 83768965 647290177 85992161 715079872 563992267 43919377 680024306 151972418 164112643 520552631 152273276 687791511 408170068 915785585 836379031 24260342 453900567 949694540 710307273 682474186 644959575 853242275 265517182 274227192 785193534 571253546 992369419 803317961 874252819 385542802 624762698 778049845 80665301 662802330 622624707 332807074 722537312 80738222 278926289 26301063 345882677 687147313 625656014 491207288 261372975 1036968522 522250370 462857023 779308262 547718597 220740121 460759567 938263390 672029494 1000178407 716340627 453720869 178503902 339812257 879982875 361126728 56707246 856418957 743851383 930370668 197319090 483843984 188626558 368801976 213982171 232745705 684040902 26961199 209086630 262328047 612762635 158219084 720582332 451961232 172040568 772132187 606136384 929016385 904295605 261987493 67333259 268529382 291662756 743883395 332330852 73084720 326038275 548054842 979352047 435068342 317207249 1054007238 11059679 1042066537 913584280 902435546 457178344 765669456 821183708 800335266 747505672 707765513 159599578 733472000 439909149 435340357 835784316 67158952 315374386 923173449 319735944 891779867 452366601 967353599 857174135 951106457 355478476 146141491 598620895 38535446 671933352 637737909 761914692 926036734 288359365 330534262 222570928 865511963 1042603869 746172668 710492032 774897730 944493390 749353194 928965163 1006769861 507846108 523018450 1022038916 262897768 79200696 375238419 635464266 1046783749 721028107 94023960 786956250 611615279 520279974 579280394 42339203 395727999 274265583 725790549 335347150 228751325 978993224 629537076 836942394 523392117 671571931 574556063 118932436 434001562 1019140324 18479587 709550931 380690976 992531254 196541053 853999526 843724697 799631179 891974659 652670023 736766775 376026322 224480921 892209769 641207209 762400261 51887207 237578823 179167968 724653846 830121826 214466801 835172434 97511470 564626356 924969950 544351959 399706666 158343338 712254229 838472083 570473819 456105338 730461226 79135458 607686907 641946229 139347999 177248861 1063482762 18341292 773928202 312725749 640525283 894515224 673154519 349524176 638232740 576294756 637723542 635789770 597834790 170517619 887930114 1020248187 332000403 963129887 849776650 535451445 252038464 765692239 305853084 955024101 389401024 517608272 785475687 990164872 75391919 104887005 764873114 1037984326 599841987 275632894 794260910 790569113 659800216 481044082 235221313 491302715 848984552 26847079 777301654 352589742 568433784 184184904 198536346 616155792 902447343 362427974 521374600 575642258 233462572 842430694 245211994 226086348 851971912 946655726 18779536 541143098 460590998 496780187 1006599593 877307712 519679543 793088436 548613505 49735411 231129279 716918821 845416606 411309026 760446197 1036057689 168978145 117986249 893846750 180490704 457779195 965039224 80004780 264410599 332477462 868118431 985259886 687371839 836125516 641252362 339330053 193068474 870089544 107717695 189778858 190780074 184773850 985960979 455463168 972560902 603668253 698832294 861791481 653355356 748232847 314906970 544953257 22386906 331123219 124751175 584237856 53845748 531276099 792074298 639960034 69249061 770843466 761389630 466076999 234799974 630557794 518660580 75100466 667244396 325804169 216196204 501804273 739995583 966704782 315060803 337728910 759565394 968900283 814167211 1054953703 127972430 429432609 1025793386 765668891 276807514 620973388 886896260 363306861 409829537 505795836 338888790 636901534 667387501 1052535689 86722224 829551199 770149564 632703049 702967262 304248660 512114091 197980512 185736264 7481059 550940228 818019057 139632083 202824635 839994323 806090718 1018052808 356336219 472125835 360729496 637574220 521163117 772571072 512983807 273109364 874802186 599677143 646447290 10887049 608825082 688735823 22241391 268445312 486030074 159962007 128290047 633223346 933181427 437905410 58062404 41751283 61308443 244047147 705146189 2370954 202576258 138525627 13180989 667454398 111652445 1010967255 529791884 326586208 101139280 561388737 1062698888 214227000 457860837 177803056 519567390 256336618 798824653 430347650 194448650 42392501 228144157 293658925 391043497 641691868 580216022 207090668 963675317 243270319 848161107 570179807 987052280 700528876 397153112 1051097150 740556562 1054624773 95623006 1036622089 1056746786 414485402 64858515 431360188 373176633 918653301 126977184 701386493 498556327 657922842 789821859 156115760 1050850868 553197789 871422210 757934897 797886106 336765305 96253040 4773370 946506087 466356988 557950263 824218513 19099181 221660730 82699223 513278810 378244484 822236269 172748369 578442677 1025262703 163942871 516745804 888889017 919421611 288146808 450289132 655233436 362656604 867400496 283295847 124180490 398778276 1034755966 1052143652 718897668 573089193 244400412 222363656 950254393 202308729 967214866 250940170 212128518 140501570 188313646 97258801 408522710 901456639 738866919 46400232 862981712 562702497 639054288 917072814 499379951 379215516 741184467 37925458 515822507 632168934 863254579 413312559 206827632 11995358 520035806 926770795 718376448 851055615 439951298 468590605 900894855 879468592 1003453775 723049118 512261824 130380143 779837426 762743747 516499296 606393039 468441178 596096742 1005417900 697015395 500563620 1068283052 561872168 888330415 444541075 424245982 816891554 212897354 195151956 669191860 736038240 730085802 306577032 623694810 82761308 375725950 843610778 114033796 80797148 612833608 4355211 900666017 1034510402 934918206 603561132 461371965 210877344 21593693 968839691 343082596 801603615 496152294 954994648 733090810 661775644 625796205 413191987 591244788 212435568 902328668 355325311 636531157 967603955 281389540 229108586 775849648 1005864338 783276885 385580160 193387440 545101812 988145172 994943165 135463533 695978559 308995188 436289782 212542939 190288169 869739152 234263453 417996983 181955437 66687021 1040884604 98163402 822433257 548423534 199524128 832950240 850207636 688522213 751840107 265983474 53466306 815821914 288235150 278564961 758777444 343360875 37394147 58263999 442288044 116277736 336919097 890042753 343198783 81782135 311323135 623439026 349266635 351998446 507850930 659690937 312194294 313639297 462066571 240352948 147755270 588717951 506593946 729065185 244665439 324096562 792843925 709543046 991418048 37944746 649576638 457825878 855771019 580421960 1065209756 106844880 182526029 924538905 25903672 455978654 157300413 385628162 354090297 960656803 701111873 617639550 20022508 46174284 495798066 996938145 835215718 937791592 133398782 282539933 402566075 195001792 158706917 275818283 371985023 580448873 776502789 938091128 384793284 341949344 424680440 117038117 17637941 489204565 894279944 605121650 956976638 514239579 368544778 115302472 213022965 496781484 651809314 579363139 262717593 839644274 263013020 188659578 225867342 975882944 483026200 508529129 50621519 70720568 1001578468 123380237 415972455 728051573 806350564 344132610 912972765 679252477 668694686 423208780 389468721 636884394 89678554 511216923 806440909 637063452 549720959 675183973 915412871 115660636 1062770189 497391500 766610540 204415579 747792007 335104172 976085824 925620370 183682673 103344989 786471836 515529025 129826375 172608936 706635608 192450530 79635093 549319059 457257851 612873765 503212856 364280953 203037780 790669793 486530723 669783373 1050984239 786803819 159309424 199476985 772990901 120534786 1013892105 386797240 439813567 757962681 950195046 306604410 811268305 412549113 692568800 834036884 481177195 717428587 218075764 680375672 455255251 566208565 192468492 46587236 159524804 801622362 485365545 1031306338 754485752 10054485 786667546 853836364 705687935 471289297 495880923 812176735 670646594 64321228 40223472 478964126 549790803 446690221 459265903 263442710 828226438 1068983725 205696868 730360347 1006824206 117049114 329501543 133919153 910853889 76098046 243233431 1012840406 457645423 489069211 884682213 884953750 13758292 37222663 187193109 736167958 372786785 831981019 118872874 48174588 244147462 592889930 75202340 44436062 133568157 560945596 790149694 545586313 16292721 412135003 649263426 360192541 770129420 610340971 519653405 59693248 709977411 161172129 322226807 726232411 253859269 291096614 18070354 746573273 76861363 996251542 864337530 972541521 408550769 258683806 948409942 826451025 763280042 254359422 283078868 766347219 412906786 244114794 444963071 1059583109 367993295 897655259 1067876794 140997361 403232848 877932958 89206374 199219956 778331192 317662038 771561728 836694678 531828849 575294033 1068365555 150028540 168083780 592683708 157835902 887648292 576746999 276603744 37352712 927168998 285033689 20266843 590025646 4073410 705903220 1030113544 267257237 566671576 139195115 159187063 676670594 875563307 941722755 620279347 1062041769 950009383 151200505 50074324 324073153 701098168 901305595 927098150 461134295 728592329 785479674 152365839 157030722 765668648 926556582 742829289 476262287 202176495 487862405 1016937310 664055231 1052850553 198248627 549709205 250524519 295246393 552483223 156798939 782720316 448849070 143903557 566940571 1024445302 715112922 114613954 563172549 915654769 279531199 351980011 506983174 177767417 711092007 1005098795 311271629 64520046 56933095 987562116 262477494 1058889798 102711515 987828141 400641571 1030031911 67757573 1055629200 560584531 702415077 483195139 623022662 470141982 48237374 715325254 501023384 578154620 941672540 251599041 776132165 59747662 651428806 11539558 819390283 1047355065 160927783 120629909 407635273 45404475 579060204 695417092 928051769 806178949 208515622 391913891 276301370 995490865 564375486 948531269 315936398 296478765 277310682 536539639 283002898 789427666 120267164 776374537 1022058343 526023518 106519377 99220509 103355771 209329453 267234857 624321086 885118198 767814878 837575425 263511617 902158951 67556496 925781827 302164607 487976458 441703500 224776129 380308232 428152469 163829020 516560106 377760256 792812621 22707407 79556089 934132716 470190112 174767086 101784159 85725239 869519013 461179295 193226876 430033546 82869139 719068939 1029252326 985840679 494657966 382485044 380675562 127149461 411174951 983519718 624535890 157369943 902184933 535922578 743993505 627572739 632816463 456886062 774151371 76079468 75874512 818808281 68544549 998709015 660508368 1031130204 545744451 862862925 380607410 776203407 818455532 312655307 843816491 50145157 230389718 630343555 312007086 641722527 484009632 962933519 769749262 160167951 110348736 210078370 503257740 978399197 162572148 667441414 83292306 676289345 541983408 1054721865 1073371074 6044736 725503854 330988303 52742141 160987812 567849184 953714066 97210733 836867495 195233667 661125538 433731991 292928532 378893458 570879944 917175942 226300596 743975709 915020462 862086800 673031732 56581143 520510518 987444196 340602415 146158415 878343886 139679828 1011786239 689691116 228158664 330693714 952660476 995189417 26121717 413352038 656630685 834916208 294072566 954351546 919814455 1041188521 117334425 833385433 306544914 449516973 692271846 714865663 770935007 386250631 243326241 936433468 681472054 1042941311 1055011048 841843663 720275888 765218142 235119213 846362695 537912647 877244475 610665383 334670452 1069537404 854996853 490723185 865172217 337082892 97327126 143575219 773189655 634255935 158018035 74336760 966174543 89498147 983175744 815120413 769795908 999120508 79712183 252768495 597479759 227638472 388719250 757224267 284326382 216502402 1064593875 4453182 268112783 600409867 316796446 407966633 217118973 276776546 240617132 546986054 1066613938 1051549276 781027533 617767795 330551021 261353605 320974282 691280522 97413576 500327894 310585794 443073240 791726495 60303650 11158386 244100906 964914055 423158996 912973954 253940175 575748422 587578511 309100872 1065623476 775337980 718466386 612695995 293865486 539616731 1021797852 305188724 698963195 107929845 513078553 854545811 966085946 472664871 704948035 687792638 882252499 408949643 262926365 852355208 630841153 233110387 628208445 215615583 504818871 552190703 170814517 173363392 867587758 143159689 99922276 1072288767 735996726 912816802 620746775 103933420 219608 166862879 380077834 540442943 398912349 872592893 1057031702 962061341 473547916 830278628 484100211 986486907 677985744 467853752 947608328 295190859 637654637 1005869756 835008455 553885063 982450089 317967736 131482856 580725170 269265437 906260289 796759245 80426771 646274194 509958874 524198524 15070062 446376372 2046966 931706193 603021940 39953462 33607647 1017619932 966086963 950265365 443911549 923348842 559650214 1007824136 300611369 265670851 190691338 413115726 609591279 119190376 3313612 977175766 454943327 491595593 402188755 153608566 578117615 898828501 303610976 429843044 439111392 597906312 365124866 538069358 329374189 616972624 969664181 131114791 896070521 515877020 981221259 854185043 262957487 870837349 181750681 733339717 70228024 913921310 615658393 890200127 777054987 642606285 313999576 869074936 54614723 132967109 670801607 693365748 1050886709 17541991 437895254 234468407 708348684 803188323 587780455 325114126 791667696 630445412 489932772 736458245 671980269 25051292 152898048 818557036 115019778 564063101 342419514 314821490 149261751 269517249 896995365 400806449 740726945 727409268 160397621 26700813 355891685 331006569 282166948 207540203 853456670 596256259 819563694 91210409 1026389768 943111210 1004773443 298535522 949125137 757813683 268311359 10761967 839176993 154355230 761126707 650114693 772829856 638948906 102957090 128383688 664435412 606264303 424034970 785911508 768537615 144818218 189058680 251783852 705313242 801660574 463744546 950599138 618326918 1011757095 989064894 496611451 543395919 330745292 336682607 693089543 782617812 996574824 146217273 30144616 366857042 1034579097 433641492 848245237 459025454 95888577 427551557 1071031288 916297357 846961529 437676242 227074646 251047377 347708870 198412906 764257471 674979463 603619479 536143499 57059897 1011230234 430363857 84217558 182328330 455661588 564285170 715049602 67514332 301814339 631127501 384728502 43668177 570299119 676648579 199363365 902111763 507777573 118518196 459768275 379424942 701954718 602624986 74181877 320525206 326208821 336237495 394081507 1268821 169473240 137051426 1039632276 548758115 808061471 159598993 855534741 656898113 469937588 390215970 622072675 21255260 51220752 687569055 973757324 1001650380 820522048 591267074 59339823 352531590 1013598789 124996786 201903707 653355887 716965968 767926417 293146998 333469750 1021008386 376134073 712658352 797578923 459364510 181279997 144786377 93876472 393895471 1041874285 768861169 184978456 338972451 142092970 699372281 740898384 344763898 122499065 588421358 295352950 129359899 237125572 22444990 643813748 682343582 860674506 868827636 537927858 103880735 86536058 527161131 439744909 166058784 942922133 990413039 942036923 591566870 950982902 301123485 804516689 997994725 1014280828 197076002 972186386 486813767 242056912 733866857 1004742802 181377377 700772051 637513354 11048214 920627100 522304538 305305541 764809344 747858545 152721336 6813837 411924696 801650002 562402948 840881753 976400327 454685168 9301061 966242587 395286366 626699483 132338478 1070843016 600897135 236671236 687792604 983206118 841928407 691500058 19179383 301118138 343503626 790608215 907756255 358264685 794853077 879286593 24495962 577330652 213955734 30516509 601928690 349388407 1025800933 851949314 191377874 221359572 73909407 324449874 734709576 328219624 669210119 357199291 781812571 203831405 988366015 449689437 1033888802 973883067 1011612102 230129913 965324229 186313863 534368894 869355806 542310881 800288277 479049452 487721897 981188088 555122721 899141166 928522872 942390679 465477834 544735340 707676722 88279252 921562759 704748642 897790072 338997266 1027010967 962241609 1017828195 423114407 502164564 741416684 298412258 877328967 572947026 753787038 145173873 549125160 822503693 965122112 286535948 564071570 564253298 848484667 584718659 709770893 665341606 644362195 375775775 105294119 815178575 14884036 726743619 691116754 369271074 1024419043 518976248 252649041 505041103 446154588 944905385 908950578 395867740 652732621 131110191 920506116 645158079 1068639159 938734684 165225417 459452188 735011162 279835658 498533200 798419376 353457248 627433534 443430332 13143602 467625800 607021599 145370433 882588602 314361719 1041280726 10057892 372140127 440269771 486266630 569100361 605743743 210892141 19191699 178839221 580920189 151904007 302598345 686294852 593996329 926717867 49001691 156145222 603561205 586005653 636659040 703711965 755995263 431999088 27867344 22112543 510565341 644999610 159727943 86900471 291968763 45354231 110928230 936720954 423599590 709747446 344485835 165923530 629058011 806512918 240187099 288225961 842667786 806080792 46253295 79544770 337209797 570814152 223786788 108850193 17417362 1038481758 107333940 158476222 366925709 537078857 140458883 786452260 742378408 605315469 853546008 1064913916 597359291 390414161 683423534 380275379 595680550 922691579 812012399 276758234 150924240 431197101 210795887 552592949 55284283 22255306 826598969 162104144 390511444 523672665 87616888 69718063 811036571 73342328 707443402 990483630 1006224836 146461046 88993830 416040266 355708669 38599201 844048058 119291731 888663352 592611113 362140824 850858188 209598363 620447222 971959643 828266904 509698382 877231034 539635865 697560047 1026787263 847533615 657599803 433464874 543256870 305819287 98309853 431881432 707886711 372250207 272522475 131523381 682372500 276383040 877279047 1047227367 319452392 204977384 719036795 209526406 139323940 452065407 760931484 762637982 1036387208 929349475 449678862 874669738 600105121 3488400 369605331 880256088 670774556 742231139 1009310028 1037729152 48157107 874567489 596378729 397019099 218677569 829390479 595673160 279457067 399170920 279187607 437686601 37536149 421942540 1057623539 962868248 57168920 795486124 233538691 55373686 412065440 1112120 170243694 710253681 538300311 575053069 849132828 642089348 602368162 224237541 481887616 415122895 35637435 1041406322 719435448 780731523 262606433 449067882 452058052 326441423 51525485 160452907 1032595358 348359645 831566095 214620806 970510847 878030987 519284051 536052132 896399709 706113584 705607656 392310592 397699951 804965822 1065055876 1007651145 370787213 50303876 487457426 389461429 6075838 858511770 711077153 666318883 629136085 283738897 187572174 573058047 440111808 897434340 430410846 523575418 84496865 852135528 534377734 701428253 978318433 535602454 772274429 287478459 839422061 637976965 344025055 501162537 496622850 968131256 505009770 692264642 298280588 610841041 337893797 498254639 948391399 971061806 979656955 659428796 705389442 305031521 831469195 654918986 1024989584 560572122 960825234 323654918 693274347 599570037 2315086 626717882 634662457 82578575 588847100 943330032 993031688 12929993 1059898483 564441436 178248506 758122038 316964327 948051891 284765068 283875967 431027166 402245360 715481555 965703851 416252496 1008853789 335902425 297648068 723297851 956435742 630774467 596720962 914835030 136137403 698311036 146489690 500151760 968495725 875641085 729968245 875827822 462105368 126410618 244174417 876723780 911448549 233113000 144592282 262365424 523819683 333120857 782421291 147549755 1041536478 493838903 567296830 975392893 976181288 989171681 603815756 587325897 725840873 481002303 331790879 857983621 149547228 53282219 504214281 226654031 290710647 961043044 788428321 627427936 466530756 1037550885 1042807874 112333046 1056648115 575969553 737560979 847952575 1000161135 3114246 224523560 86827698 71982988 1044494583 648467005 589193603 904989626 719289659 512442273 563218461 740472286 467512480 827442446 645254754 886889924 1028147782 466052455 588076486 496560703 1034383490 730696389 633438073 392348482 234713987 199412642 343832984 351000045 36689146 15011548 973274690 707558219 910606002 163007330 840991618 221718156 45471397 637656220 1063189684 578338064 321164224 679769812 703970816 619733593 594260155 263892934 671950327 3116904 310326891 761340817 328638497 125204958 876745453 66583675 471984686 379658423 258365208 1056450188 988304145 903451284 16689993 166955768 588688694 1017895959 635571836 1057721984 715236935 226971062 718366582 995702910 629947583 37938990 1028902369 77622105 431794469 88450693 953181087 767050913 1042625276 973039136 919785278 431325300 540056761 342077348 11675822 888017390 665865510 427519908 839082876 425918336 554492829 167214276 925804614 901029876 899476404 547473206 763265201 248061219 386045835 10059511 1045148477 1011691972 426369055 929576578 759929710 25926763 746714211 875993287 600938695 704432659 568805085 631907918 379356756 231069378 758463031 357045833 114000279 755512672 754430295 248044263 77827151 426017098 1000093621 972265412 311869258 633497144 1054707015 972684760 1054838096 961293416 563156516 321822439 578073588 606381151 273903254 607183060 648696588 710397662 615638368 548471424 593785725 340854974 91946412 845158202 747733046 377137688 912977656 838501120 311134465 355577003 720163995 40848429 28366351 659308723 59914209 398798070 528528775 236929312 384698641 115452425 251089475 425583495 441096315 750939525 918975008 806369118 636086785 741612796 150326410 611443938 1026890859 364573983 197404849 259831978 914574556 231347086 1018095551 1028347274 653410000 516965490 822198327 74401378 425865483 807251802 137745887 11922937 127648662 555147000 465049872 844144638 543637940 995598216 674000696 81545887 821035728 246370881 914494464 215863501 630548468 981263184 597032138 1007038734 296217484 365279805 836214964 36285044 910635217 249887698 302106990 251691979 319579101 208024161 741708888 1051243752 544064970 968090840 986713958 145833214 698424322 459815434 64403875 839056238 565356019 591945721 894270490 951454303 605086476 815106675 716081889 759517415 730532890 477489347 768975071 117787415 516802267 325096704 954888664 394915341 98654377 787202762 439601729 429687774 612388657 983838565 538930422 803184693 629455266 10087778 219248875 365271226 474069646 1012210649 55434169 111664829 782515571 259318704 656309124 681589145 846233131 898769210 504991869 787840476 604169860 396325526 306552269 578750966 145462742 398616120 939964291 593050513 373598626 626564843 521231576 830239707 896553767 797935859 521820547 673351853 499352489 693143312 524364537 269588846 778262048 872940468 504553747 756661065 748004834 60610838 400911110 796704882 412833281 572926462 457020883 773056001 317105861 252312917 90070561 736117235 275654600 629006049 853797404 87115973 125612837 778509899 762028430 1073478515 791688322 677619694 260729225 220118535 307237995 857343170 290616293 197716890 966644948 968652550 374326290 398395296 1065366594 697199077 54273616 865145279 1040573388 54613939 1023414221 630005298 818768598 204891993 444448817 352646587 757002570 604656048 18565981 288892318 953228728 1016001591 405219882 476385493 743091540 197719736 720772642 170412010 894871947 886432850 624371383 1052711133 625715904 875991565 987834279 511857049 989921342 514562505 63202340 933349037 192260392 160372445 741958677 460879746 988099879 447670429 50564888 580777737 940928256 437351894 534749027 897312332 957738283 136145463 1058097089 524615284 862195765 125148186 788350272 405372796 732479706 632439464 429998143 44355822 350366115 844635327 868203616 50970114 421257121 744541577 223224430 72049610 401191547 218411743 826123735 319074991 315794564 1055148154 548795622 1066644467 403363906 463909392 732835608 661746889 361897025 244486508 27318893 919476767 719060380 140029637 225789551 813025861 271892358 494288073 789415128 312406781 323198187 515478622 698332276 421062741 393674540 753453597 736619082 576227029 86742194 1050652340 981846586 1033709512 706994452 204048869 255386767 259586218 773573792 318679940 2391392 295844913 349526256 201139409 426435951 519277298 420485351 638033127 639730201 385839721 370221793 129451853 140677500 566600987 369400780 572843956 273221454 355352871 851975759 372373422 735611590 587672806 713138761 939581911 520117101 648724120 552018843 850396170 489438605 1060516861 1049279383 77620191 553038905 451964904 799239772 222906809 890782744 420640774 492463775 281780849 308024497 617964443 1010833846 18107947 647485773 50884127 916805438 867934972 78474512 1026611358 223064445 867007894 258307053 25458097 530270476 670419321 473966980 793252605 830853231 157475594 446152140 247984026 155685169 524935582 859702675 100351002 533334467 64200840 75643131 306674011 220858228 778027203 15900107 594323455 966985072 404337429 1036228759 820406061 585207381 208984924 721427826 1050653838 706557881 666077234 705002412 611436315 535913380 677145298 1054595821 401100424 918614294 77772292 522508163 286193273 503245633 1009986492 3176327 28171477 1023895391 843097592 765782458 673637246 817750880 900306494 709604186 228559304 331692276 1001971413 495917958 273083499 483297718 873088471 914112520 909161348 418444870 80667657 975729402 554333016 799136558 460795313 180773337 217668100 319058710 1042952157 167997994 721004376 253689119 787788621 597537900 865124221 370171663 935753897 239745058 364151278 857740137 1018909879 601207320 1054462929 290149469 106718984 24956024 463692189 819290218 138906220 629643433 757864156 983134689 879564994 551515935 867864585 229818421 819965915 378090945 809184981 889044308 708179015 488357007 333233497 115337178 762217408 128393327 438127945 88532426 406253262 357802933 647803443 123352377 379123411 658740276 9620378 944976951 152651939 484482670 936738686 831408316 455704779 180180547 409796120 155965000 1035549252 277399356 743624755 833309280 378470419 315729695 1021310286 149907019 1054465629 206413987 51889868 117219741 887628895 627271559 696373225 172408538 184544821 736679240 8464412 778375550 460207891 568377049 409950326 527129031 976368787 396527960 936200184 683668282 770449278 804005572 697540622 757962261 695379408 820149579 678162132 625219979 1029356819 1003743843 759269206 117416836 912594945 332424496 511868077 266171478 365013022 487579983 790688688 341482784 411718893 487186682 214022729 399421867 957632069 862447138 997130627 911980255 37574906 19803013 63113173 708664231 811905085 540177599 531207972 28555936 245117237 822342968 490851686 183626652 779065604 547842695 633933861 709582175 805049166 454387929 316575578 1020060190 900446832 827648732 73171309 134808660 856811740 894797867 297073035 235807814 51157113 365361851 642537404 210323210 252375941 86320736 221442657 178075952 138047420 1032268626 815045250 814373675 953152279 272941698 480920927 542090583 911290645 898616158 849976395 492522506 897137339 600547859 464539948 264485228 812130588 765491103 899843793 812329044 514976662 252431910 639493511 302019827 208760140 763899743 179761640 7173328 106301044 1059254508 453671628 875425236 21208671 671224506 1069117489 389465077 513250212 659816670 906151002 250781281 46636902 282569855 497385672 729768106 124990658 151830606 422181445 181897003 541271129 677360264 498313501 283637135 72084319 486957584 706881363 206455485 37049850 824323315 291831057 51465452 923075758 836214659 994942476 736654107 136796506 886236906 417042236 973494645 629851672 819981886 740292413 644670852 875850684 784012337 288922107 369546539 842499005 192003826 428243148 778267045 533592955 213776080 312724397 122269084 244968763 764379933 919251794 589233775 558664265 730808572 740184944 99615362 322265509 1070129150 1022255232 409670854 1054299887 416353200 995240597 514471896 518718265 123610741 880584553 98233149 1019408184 664017987 428278635 45900197 605291622 922155826 565776138 399791230 789598011 811472672 675325509 1055791843 557485916 540252039 505235445 603749374 356894889 624377997 700214145 1001842471 161691607 1043131857 494476105 282446339 291140523 15497257 468763221 998789966 852878114 939589531 474223668 422825465 601344806 741320071 109236062 894176878 641007582 484272780 364750454 953708835 272237775 903596617 482464409 840450008 881334451 1023430159 485069555 673570138 1047711478 373405555 117862594 70823240 1041882126 769015338 120625730 162880984 155012729 787731133 166996159 897057211 583440516 179668699 504676373 461505100 429178532 53839367 348126378 30031408 767130843 319624470 520322107 943336178 373112004 123864841 1049229090 381410895 416206747 328112254 271445892 988973412 447999806 284089221 345300095 815243187 490027061 1041173614 993690836 743894166 833815861 780396141 746899033 317130155 129087236 488132894 646548300 157595384 1063180477 568545884 603019913 348427231 95046457 411486731 985650564 598030072 487632938 276682437 591979966 602924069 633990431 347932073 632409389 674081918 804648316 5342744 934806419 480603510 118674113 732282690 639532936 241248039 641293136 931360117 1063894943 878946502 978394001 136422350 761076346 519521195 742267243 651138121 79606450 103237827 348879617 809455663 619449658 79291336 613103402 299811310 940237785 203087071 831035276 848604756 426705577 701518891 878873301 664314729 753799079 395783620 74977820 918745019 542052983 97559631 48971912 910575519 44706759 706499360 909297848 395207395 121727158 119042926 975400655 533658665 159438313 854766920 168201647 438704669 795032863 506755062 486684958 903901729 702359901 518533589 432265429 799386481 1058688342 909009235 1065677226 491335647 418365553 806040244 680208803 861337224 792997948 313477553 215117462 529246836 245746958 199399660 353577207 830177223 800198817 569050194 232464363 350353378 835329190 990748499 664138468 55935406 1058818478 374343282 714312922 699275012 864045725 755829706 1068168895 965797283 877197227 741342853 1033198946 1028422432 247621293 403266069 201230346 464683463 83651838 117584794 1066260980 995795638 843386841 419248404 979606388 82920043 42501315 613249799 978603212 368760686 1046857732 18865983 169822836 156040833 163358635 958487358 1014173641 177657147 329380633 13017071 461253232 847363246 541868637 32901933 827159259 921057184 628727171 316497125 945061296 1020049674 89689017 709005484 1022893158 436776181 67951316 1056595933 511194699 868880142 72553767 708427712 180685964 221280226 851595941 254666439 880505715 650211355 46430940 152826645 659749339 196948970 332230592 165521466 449594121 523642988 388081396 40466781 558970727 647087413 907927097 558385281 368756947 247394302 715845429 995824901 104838378 641901017 390644757 297010254 576367431 137033596 150875441 844430048 787810348 232513625 4390992 88027312 347245822 294004277 879051825 988593016 721617484 398288093 656308941 414979111 63418960 459562585 463383204 37806874 914131096 157537921 649803655 194003803 943613835 818814828 311475166 271144916 382914315 443568365 1029530437 410873863 626778069 395224462 244243226 744678477 621971771 350872888 442228274 474961840 88504306 997477645 725299439 841306448 795605307 223681050 177571637 107459653 1050395254 401192738 615420572 214272389 679869553 804675759 971859477 872375067 881053481 333885837 519016537 192288923 21130390 266504189 340677887 853133638 154852125 207884135 260190699 718429463 868679037 683099585 542966585 106576513 561412060 472299371 655943005 145218889 724731858 1072185939 685363015 437049609 277437026 889358191 1043978795 495073099 624320839 1006149700 668217362 498735493 986713887 529978282 417932300 398760466 195654047 393482332 988538350 18380013 454175051 514362899 926680220 868264426 913083423 330336203 180636311 330906130 820090643 612028360 324785780 203374569 839196479 976152762 1005758313 111245655 407461268 82845961 537950105 299210825 296651209 894044288 307002636 305003405 405808106 382043369 419086173 967385967 652636692 372765395 371046334 277754780 704982371 365695318 552341575 282713240 958942807 149500302 300052559 76937470 399012134 63287426 506977523 485441883 158882484 362893417 589362850 108404904 934026869 811184247 221740140 318551788 788600730 184840 108505738 47518672 855534033 422512126 597137587 1012947992 449875907 310191448 382617846 429904405 51117821 547417454 132167577 954092138 593209283 445321042 166105706 422014094 351930973 791524816 899552466 13428771 182249089 693801114 573550959 690844879 871625389 885931511 629022945 785246139 1052431073 758199721 465189213 326305107 781434174 837075381 336703901 655263204 562085537 757563379 163723086 218077755 761129002 830972290 438480606 777196688 678888313 328005910 815264908 249284506 525605172 364683375 127465294 275246226 624362932 991019822 816460859 118821222 238707284 898314614 932872865 782959162 436183134 175703672 876664589 544087380 679947718 996285875 102970024 434389538 687310389 1016641309 719226336 263714768 216110587 98699558 625596469 749630404 1003565754 64438268 1050992428 1011492931 510182437 739759588 400417073 226215156 404758091 334061522 330974838 651492664 563461272 700413833 619218791 885178411 315553763 598590291 1049764962 32105179 416366689 635053662 195471670 392118882 878427850 573000868 487491184 1016909137 309744207 821412934 797516207 596277632 879039921 581484156 193934740 488774246 204804224 75225279 82537167 674400908 966495101 428251467 697608683 301579632 231741710 86871279 966496863 307712842 485111795 253367360 1009380818 955561671 123849703 848347121 491450612 229732585 801661568 861432931 591440799 730048304 215617814 75571137 863472745 318876030 929149182 64785329 229261541 901795875 734997170 342288451 80357649 309490437 427715484 806298445 600041575 1041795535 226568960 292238222 184172038 823318832 344977631 407303899 984156374 835811598 270475496 479646232 206596823 356416112 71053110 594358183 825583817 670550973 965551274 520078492 308228649 1069439212 783749397 369983964 495510356 276549161 801021029 641599121 1047782582 520562382 99280308 419916536 354470718 58881089 536797537 816358170 145695398 662660323 270189709 459819970 315038460 408205619 1024081611 974486903 1139305 100301362 144509050 1031999417 582421942 23700030 394067463 660515633 417781068 396583281 305570051 29577024 660344282 711145465 1058544348 252782168 857454462 821298467 938212219 799575765 61037895 626052976 344335833 26276790 910184805 739666487 856148550 879523643 764756306 529774562 1052566154 444040680 729969856 584206990 886514306 653939839 687255470 390050969 646634618 664513609 603400912 428336656 633237885 112328809 675246685 613612816 15197761 321338676 382509621 313414571 617574890 846435754 705649783 145391913 38769943 82685006 1031703952 745707111 392662876 977202960 700428643 900243656 37633240 918729522 470472574 584217173 639810289 399337740 440175962 269210797 171470528 408615083 846836342 710448259 366377530 256963202 311194013 1071614337 693921408 375335177 78431775 597176407 821336253 620736950 117624802 430170711 792999889 276005490 600265605 640962251 389931606 773377222 248147952 92607724 713594758 368940384 661684005 542640670 742809043 36402727 27405127 476830770 265862323 625585996 783752935 721263838 291754209 317338734 551783848 319662598 723383100 425344184 772114321 566585988 900861671 424149439 685192905 90628154 909863532 543563190 1010370826 1012559917 390964410 712185937 12921481 271288553 335197171 622736300 951255249 520669842 809481051 865982414 465454582 255836818 564018347 554088537 891499962 659800430 776988895 729935173 834528463 399454194 2605233 115963940 69702872 236593088 770203054 787784860 768890229 711580840 53852516 175245042 378297250 819591111 107830158 888649524 872669282 384744019 595344851 334931168 295326818 1023467939 540361658 528792605 1043221750 464298874 535351039 380827854 996395301 259198116 1064294482 657683734 136338047 626617546 461962426 1044908531 785879571 3617988 654287448 1060608042 1035787135 877896865 570862276 668146579 137953336 822896226 955481927 842254748 550267556 270225513 438214652 708340574 372874040 999585062 199832274 50883386 669625006 581813948 909317287 252553567 29281233 282172561 182603768 226784587 4027061 980082949 956023011 651473909 20682521 1005928343 1013437058 127136801 710861998 812570021 1028010350 786471055 100117078 233204677 329278607 180296604 228633037 414189167 470978278 495284629 1011493335 1073433355 436729669 964178511 195802047 56806878 223361199 833501091 214990114 952872511 992497807 789513740 210451003 391832249 654785019 866508223 625634559 84025853 215190217 55294383 738676027 555252688 1070448214 667376299 408042673 134821061 553722952 331009925 55656187 701014330 1073615595 574469226 2836596 482738675 249503839 380564629 921596309 660442401 290810187 234509127 487603254 470555232 417299149 336651809 1025524136 564411487 194557077 765793879 74246677 547713868 646301199 109612874 322540251 24793208 853515490 145006572 919939109 733117338 1030648677 891477811 658804430 1048063045 687504577 638411764 922389257 708321257 315322668 58757331 1003556875 782947319 851033350 522721505 795894857 812167968 423844671 36073697 651813640 599812129 779224684 739400401 744251456 370145570 388484961 537714214 987523617 606229399 255652693 707929994 584872147 734746208 1060019498 125780674 115466686 1023920529 786473680 1014328141 480387098 715409830 571015542 368105836 167245223 815294254 412579350 251262571 231844734 622877196 619369644 561697044 322175573 454905109 871612532 189577307 433665910 1064700887 1022295984 335000672 211977806 150208401 262618803 994045470 717982123 618778694 304909908 826572784 921198239 731631175 388672826 176891783 902360509 415094621 169337161 113454717 376396086 972821484 1004958547 38958602 76725199 120318822 479152325 889952243 891757246 845801878 715582090 322965356 1009998211 240925849 362453362 178909198 138148790 272255330 851742196 336868426 605391278 637375373 1047158435 83254481 562194113 298380671 719285442 696968882 896940498 420436839 978744884 326454418 764962928 513543742 173355292 694149083 748630381 441848156 528648443 198006704 615732817 272887204 253781965 604208212 275546440 527612577 156627710 376825622 734901827 583014512 34684587 73028380 442845510 573866546 381664834 105794444 967044212 302588545 742461078 13551310 368262691 671897059 498337092 707321355 847508356 638138715 463762185 389901061 241528999 587540437 912640285 63214741 338632938 220421625 481759844 314060139 594748474 392450127 177354631 419641897 458543978 167080561 204441514 787057148 484415744 939192897 392567472 798134747 489267876 177969034 411934734 744178756 698421028 990709613 264365713 939757105 989446990 594807510 159649127 683878426 1048481590 35559447 911925966 180397270 923608698 329599916 958277415 646067858 301969971 560791186 872410969 829662700 491931236 15740929 517973989 399489151 975528444 143467876 348097657 533422785 131835502 531390760 567384181 997625103 918040997 949289989 812118762 900084449 122100912 276768182 253512447 64735699 222376158 703166246 93120043 530545671 259671199 974437304 714269669 933383871 221400229 422936327 37961949 475657862 391232709 832027361 448026939 982842074 369770011 94090076 551854301 599148391 271789699 415763146 631825292 465235935 761785867 1027912878 808937129 709240911 656149851 712132660 38358098 922820688 187596228 891768801 214340395 803453069 375037505 432653138 545680696 865238147 41278010 1067935254 651378346 103651094 296442210 97146595 1033797776 534657149 491572897 866794574 343745268 877345468 14846601 702135564 524373730 802676755 952064578 506403735 741999968 811012627 916250107 868658991 740268021 197059173 27472860 486670076 606482109 952077340 358076423 211985487 439715762 650496952 745454723 839492315 107877418 932863154 423570610 431934500 224755344 659489074 834069836 1059436114 33130534 877998422 958770765 426147517 647447508 234218649 533450642 813318507 848537481 244722515 597664637 575862639 1024020067 641140438 484586556 1006056171 890285656 779844771 337865124 704876488 251923409 679056382 873213328 118687942 145472599 784563190 851950772 410047642 951153154 305458828 414416005 853593643 635315081 1055032308 531297510 274756470 836596627 771018108 928219174 1019133733 1058660665 69663107 470514175 3783605 559559260 446151570 974151877 730515445 928127369 960039969 478235800 374107804 895152954 975687580 179129815 1044727334 568759671 171594337 37602295 160994776 409041849 161237109 777744589 595858912 108744632 347660953 711620640 723486884 187838948 831146282 396424116 193853302 106683024 409870474 326363562 628891860 697126058 616029088 689021297 775714936 668007680 73706295 680282125 402861549 573875232 880108818 803609593 509749448 281687517 858398640 999749966 53864360 986142964 449684936 159391230 792305713 602869252 65642530 652242263 615340489 140836598 250527882 943812831 58908278 659017185 938659481 302442455 698920809 825010555 853737001 723162271 735110185 977723571 1024841564 806953301 623802579 48090452 769708333 251661086 723966368 271689414 107395981 26314055 414019749 302471035 460853914 948686283 1058426028 1037888161 936107885 681023048 752466111 203983994 408689524 965673727 184571307 788637002 1062918410 888783222 534860183 511578942 528915229 271098663 511605295 477282785 100507075 599763986 80000482 188561327 665846232 211633548 93668140 92744949 140865883 626808210 599677867 848092976 434211328 571368119 518316417 788197559 337221964 1022748709 1064439484 622689283 1016521763 99098472 544430629 1019553509 364385729 1013049323 196317410 456999217 771844993 584005683 230011978 124775623 170738501 914153978 626079777 419018204 235098412 501120489 372911125 899717616 306017443 111110295 171239933 355779435 230426376 598447332 446283644 580868708 99693449 396895410 659527384 396120620 285995052 35654476 277468670 12824875 695951374 254733018 504826465 668286360 312433906 287998068 778834081 836536671 193178739 868346134 466822494 967717713 984402358 1016215055 46271826 646492609 476546817 665422072 56682978 687790614 353511952 602587034 537178969 667193850 26863096 164834835 621312129 13265932 625794837 505424752 761604673 680387530 191468257 706524634 201120077 654580509 669866360 488866478 909683639 208059145 421189759 268028556 500607629 734974432 217203486 444016071 475644211 646521162 21613080 442040379 74498478 1068024163 237501054 73854224 809383714 89177588 611853976 746622266 455071565 216676971 368321563 382887095 425538931 122365675 448019253 178631358 285880100 462327685 1050616284 457328152 434370657 49830290 252419991 123111953 37920385 673266258 413770198 269836434 368304914 666177934 376087773 201962383 659462601 997145976 667121349 333958563 929206239 149267282 78004719 845183962 100031502 427102706 890966864 491902792 544151842 156152370 679528567 817817469 236339915 673600132 127176642 693607826 985569943 57965863 108682700 653249681 954593941 905994732 245974825 890329278 274262971 805565887 313553398 87305957 368967556 728746862 388661227 202587833 95346341 171670705 528319386 141132272 140046029 752459037 19355391 300687727 212144265 995110802 216178823 511085751 716094502 891046070 479470184 929449218 214192191 639555525 553928224 707126255 972903540 965327350 686780922 146749899 804480567 1019587064 3503894 921325046 938123178 857956596 169170589 308551908 557719661 741640134 126573025 191660141 407687929 780010109 539946593 346055198 780076689 27103082 220414490 27241799 852734452 423083703 853030851 369876797 262425875 580507417 49583292 783482487 890498742 325276396 949884802 50548148 574559582 182076011 533114376 772439166 736047840 171007343 499221842 98496155 920527757 395296083 196163042 864614509 585785187 682514145 214415675 1013449956 275803661 147877566 1070839520 956996449 163394762 178306403 40946761 274144543 25692788 245420802 48754789 578261665 860573854 228654001 136416819 554027297 1018716596 143629256 695102427 634392213 1024503667 724625751 548426308 852499632 437880246 77759768 570707313 795597047 335275600 135406795 1012465282 1055577297 352976014 758842256 397823217 42572498 803399524 606590820 112729776 846774604 942178898 429498260 1017213332 989496895 577931359 474239949 719617357 872853028 939918730 629981890 799022074 227894514 616952819 963089867 725594739 763631749 358534333 14169633 968025393 15020409 308352919 11672788 453126874 1056118981 168135024 233034833 486162033 392229926 624965073 92748338 256014342 203967108 888170608 737292076 1002766558 990629401 814620372 127751100 95291768 690004454 27490270 311323071 657927077 404418571 50038056 859779290 208769780 954304145 414990156 244883820 1048406422 165365279 176006928 669398454 255055212 673001260 383640433 610318197 268854651 475570868 601759779 612840920 994434864 381862493 844047750 630124725 303655151 358052118 22902669 445244914 33760692 346862865 523821860 637827496 18687132 334283095 383870751 152896958 863725587 747915181 266716822 18252929 1009428586 153744820 277954740 1046309461 701133242 310880270 893437425 703607631 80307423 926350855 717452569 559897573 452378040 405457717 45225501 253999353 140211502 725356669 56266496 902920342 26523908 145314251 55351303 720478500 824473646 185287235 526681207 577636556 862316714 500260463 409678088 758089778 976341658 456084708 845107401 217688678 1058910539 795961137 869864430 630037455 970906809 814604353 755958509 581343893 812180029 780303600 277596946 654994451 806168023 103380475 1052877791 742768249 205080654 512976744 546895250 622952327 21059598 159209051 711970275 728021704 1068385751 749436898 710853211 190042496 588399245 487636864 222200350 932773081 1021258108 237183734 748452361 821176200 403938350 822432915 321233815 228403962 568488921 326661106 480383570 436920464 884019398 160212336 689486896 261725627 859825452 996140509 485213094 1062126893 972493696 498901966 114748574 285451152 334063395 559944097 63716940 150375832 874530182 408918034 689264397 555481029 826324783 833283454 649362543 1072086201 82646321 393381321 232842313 628211188 45694244 913311725 621959778 517309110 164579575 69657518 947742956 65737438 280612543 6756458 650778267 154176932 826650261 1068825263 873281323 537077792 6765903 374220614 727690969 365665294 217503310 522969632 1066813616 603854738 1003810498 549643940 13953631 863034653 374289264 860520544 561376501 757192983 914275843 243316415 699849739 389820380 1032062212 549646629 186811342 401282343 523885462 686154408 322613846 569197257 566230608 66673417 763584740 85405954 793130638 498768008 503838665 1055211763 46502224 697742783 722865619 329689944 1033173373 317141412 159559421 804142631 439456673 28555513 209518540 827476381 920290916 290301090 239825211 96033993 685425971 615417307 156252258 506079238 517877444 201994169 635493742 644340715 598667356 555968441 994251370 186669599 186450628 145330382 997412568 908581217 502324385 801371673 323210672 843021741 316425234 543688764 881221798 387045557 906668598 841750843 801204863 1065731104 657005169 964414700 447939336 445998942 425765916 644872821 13568878 576534410 601697248 318518387 935222096 408955358 502402133 958795955 917356366 674599167 979659670 126885690 1016029940 1065698730 156847809 252949550 378968185 971358522 251117360 745120719 322655212 434402831 376151434 633677270 692350859 866126108 176094162 961256120 913445821 111200925 724145528 329719941 53740065 993739791 548255552 28217590 499196662 336261770 1031260201 29183265 476197004 947419081 705125214 660462870 618452364 182714077 384884095 336953386 983172995 569891804 950329857 1053265925 705853573 926341132 758615239 60790436 319282141 312166459 763910977 370972017 102442923 71327947 523232280 144367428 488065670 505904659 203370087 873498337 472408762 249376858 46299425 1015636045 257336268 826034050 475300844 823282190 244579393 311897491 130183142 723584460 559775714 789409747 21455176 1064665483 898012152 685456123 434527650 1015990637 556716630 712078352 357207743 567866931 1024750713 820229261 560458234 92033402 878914846 1004183146 119989594 921741515 616145749 120852066 774638821 821666941 118543285 189051036 527484228 237005422 620175316 506702145 409652304 390144392 508765492 227072763 851415269 896298848 1022558259 724754895 800387128 618638563 975300162 540941242 995118421 41555666 839749010 65163785 762848120 279326007 597973139 1057863782 40197806 305381683 448271023 974582955 56286358 172038795 1004006648 16578793 683306958 1049936563 1043939504 265878397 143766887 690616010 883564467 730647525 960791722 952315920 1056014806 1044242381 49399160 660651517 922961004 19446521 682939453 92617883 722296225 591786459 946390695 1019952727 37240658 847266114 816469061 1025542762 581987385 264475719 895534191 127319507 852438705 71842080 765032403 1065087792 809062628 305475003 804837723 804368999 777279216 910186530 239816042 203160188 338530060 839595966 896096925 656763073 427010616 411484367 517531901 669868436 310713924 897434483 390512385 33812724 323261672 152292839 669641665 220464698 267204514 259632026 174701237 804876771 846697959 877112947 560403996 19099463 568930243 771555819 368229765 231346024 389148938 296671367 934216975 507833465 302243459 192886571 332611487 654764760 897086693 321894162 184571655 423831075 274892602 228145846 586897340 368510490 999146321 247153773 560368076 490215352 712387595 82667611 329624307 209358532 154349408 93423709 831584040 37586198 364801530 567451016 325561941 37802820 972087219 89359228 1042647941 657889001 729371858 823075193 637957756 31176859 747559236 1040282153 746707218 361288783 1006899330 1039766207 218312567 1013907205 1073547634 59943071 659982855 120142888 385580120 769073437 141479170 326417799 762070721 550257401 460958429 317973551 408451174 85099827 147969072 754119814 905307579 910269637 777878660 626336019 24173043 833754061 133989451 633893078 705834482 726627001 900392100 934219631 371193143 915313454 337325802 785272024 916351926 91837651 515351577 581984699 609882814 1038688945 719083394 651056483 187520699 24920652 31600274 251131914 996373159 518961379 420682854 1062470245 581865 573392666 408708758 574857995 966723048 821049058 954808293 780346392 1017380989 654294270 820555935 35825797 404060120 682357924 417040535 894061354 69647020 820589834 924839156 297741543 578656825 797716715 85090438 1036586615 885731383 159205706 436829337 359965644 285995514 166635047 944251570 460454344 996778064 605086225 735839656 463887179 164124888 441467402 116827057 54909387 403468276 157504226 526087695 930527468 1059900084 763560132 999453779 116851388 1034104290 326755528 908191329 751077650 353043623 780068730 475098840 524905671 701546337 900836338 720720837 118074704 577938339 301416626 736894233 155581323 876698289 538657363 372872470 561998956 626136995 1041284446 310399840 844381554 498786506 295555199 546177703 966968975 1058554608 778728464 818323427 913213209 684229414 756402476 702040921 978371966 999601316 536867291 48183047 152489449 38145699 84486972 730115734 529405511 823325963 879329692 829645664 710455726 630904997 1049263297 266363195 847810375 195055987 384791908 542469107 392133563 94262738 161793031 335627822 578738670 788970827 1071266961 424490671 914778304 579580294 518605420 472959773 1017831895 645198175 440353198 206601039 1061833165 901221464 970117080 1012724548 723323707 418833943 799274851 629986524 222297685 756559475 506146060 997176649 153196099 880173878 152568371 438628380 28860585 473643021 558748339 100640876 471164009 1030044709 1032583771 435810340 67162628 807355334 725901649 428619797 677937909 661679608 1009304912 554346236 688165668 171970357 677862538 393923029 582034414 405364317 12793155 358232265 193335665 686370097 622234776 990724698 747072823 104962640 957083849 78327956 332606810 794874323 427766782 169143655 639382190 78561042 1049027141 99269867 497589218 548093870 1006683698 207462216 424297422 50771262 816678756 236121212 938992993 1062290281 965783136 829161005 159927222 1018050747 322226882 252772961 664377813 773428377 950258821 334346936 874920826 938549236 304477219 776905769 297511940 326739474 633784139 303822915 179476355 669368859 139525686 92969590 982868019 670782484 109256782 266904565 968277851 944894733 544122896 400755672 566918208 373041721 383837681 105463566 615822039 109681617 328852652 1018421022 407695561 353704888 587567647 990949882 148161548 342066922 1007669119 421023054 893201375 801279906 451522135 275305490 758592616 653042477 439890887 570532118 245328753 682611153 887026570 711338513 140142632 764202668 107867142 118284666 53561732 604559648 66135939 616758053 274842716 596366316 762303990 585306174 316126752 1064613961 341648911 424037743 707371569 650483992 733387172 1017906470 165601937 120345265 929046303 720641605 630491220 656047644 430710665 312171368 700323118 599608035 874230697 914589197 126373347 1065234891 868121162 371939902 35187155 721053108 513596529 590405216 24468906 230310415 472294091 460018327 735019713 608832761 688261105 168186676 885198006 1011992741 889362689 389240890 1005358574 156365957 540585114 136529808 551501560 1026091392 319461947 105251534 849924194 836637593 267010686 126085108 786371618 402254677 626917853 767758578 815095072 387225155 848887948 643597210 722728807 894884752 316759865 645011254 733994836 777542537 912783388 461700307 398411185 999226735 448672778 172037548 952066273 350609560 759911921 370024540 387076994 55036016 996813107 640767265 649246288 281713899 816712281 317342870 310166580 40466861 519177542 698770848 186311791 686867442 704500834 369685189 123992494 19810746 50717365 1061254583 221774707 690714603 128406437 925937617 339468480 729228613 186558494 938234378 742440755 629328828 894019597 137197251 601562194 549336903 917307505 25490954 6006290 372954900 899880797 622929503 395990511 963587558 301618126 701093565 103728664 1073203743 1056196940 494306797 415789762 882387292 14169352 388681879 48362774 248707338 442050630 323889955 1023251526 563334321 203543910 969713774 415002267 7082900 583007872 273246459 784848619 1051511569 988907396 657154529 529778104 93671407 858435560 1019499457 230337678 766117981 558086846 764061034 722423259 547964673 886358894 1010991399 445635459 482905376 32116561 465965351 835237793 989914413 191715472 94536069 742066977 636432085 260900448 517669167 700599448 355998403 446479611 9913120 795627738 555376307 693639351 796825039 222389772 712960113 200117706 475558658 201683049 932982885 989385380 800022846 450088891 90784236 932361942 689379153 8747961 685602780 439194388 92808491 21579596 564925980 936602466 444060129 990485337 787049957 968332083 555132167 606081824 1002730190 742253256 858842428 500184778 111964952 728785636 767787228 335674169 765485064 589285147 447632703 836121514 600712317 795190373 860577195 411558157 118275109 958053090 708541056 837785306 32978800 42106118 680893015 449719600 746915154 509706601 1019156765 755332822 913313631 557348555 302773711 347680581 196243707 673998869 198783630 186050417 228875210 1029959986 352360687 213032784 99129201 280718425 163320603 80107748 22935556 459774171 1005695130 291129697 199819091 855773402 127143760 417081551 1007764304 430149940 5057510 297147364 417560854 679853206 227010472 586343969 248081806 547197843 265014340 4394165 757227571 22635378 215805281 134719240 947536519 78503841 843295053 664722859 1029199768 399696904 610226923 514750630 324220971 440983955 654710084 439273505 647731072 79719864 411416045 213724052 373402238 478871360 1039664672 806181491 988378458 554448576 156599732 1071666861 163027597 514558260 359463046 675430987 864459444 863633586 1052660702 752411499 212378626 376083650 289022116 934982141 514542639 770188338 295585422 349746746 555518457 176095507 626455184 450024359 979808461 183398186 834422250 457243319 432374506 462028020 208678674 732687316 256132721 102156536 545972877 679744881 640460235 967128390 681729313 877334572 799727012 710039141 110471530 175179614 721636116 973767243 998820542 793759503 634850926 863286649 725079289 842192646 1062065386 737883120 239509817 920989395 987337162 648492881 328346799 21273502 399689260 642410002 976751920 789701550 780540070 847110745 196633538 341718167 754502051 973322448 561213284 939617196 152813270 1038350178 921591015 395354649 547340093 994157472 1017345628 651819024 438419767 776275529 948485634 424981463 657068068 131565047 743874793 646674408 903976945 551315025 606295794 196356769 947573223 303807111 730639956 1024661038 865123936 709250230 443187844 887280848 435251016 52169551 128233205 463837044 409723836 680145607 419038452 23360686 1018291435 108722639 171008407 232972327 465957961 1033670747 592212202 416196738 653428517 545320662 650938450 185924399 76804830 518439044 53422652 575344067 808139075 760909030 726373193 409789505 789872791 242450254 898460271 799288160 544887055 636395241 785768053 882329609 750914920 190753700 320046748 167040342 831235372 461455103 77164683 339656641 489527597 225089763 306988486 725378443 551173108 496266156 131668186 700105289 714314020 910990481 366335439 289492627 392049529 968144843 172307951 163134236 961384307 363154937 839907748 1073013392 831802427 375234419 614132307 184224898 683261941 987137893 262438432 163048864 549722665 125047177 12714902 832381702 655525242 42557191 844356442 983219882 948305853 409110877 190440196 41638622 103252682 930808090 1040609681 1013224205 522005340 221111945 846344756 576834803 302486915 766401425 203957730 168924539 859292507 338486710 748997125 562298279 1029459105 244094838 109060983 451526133 885795859 636091043 383772097 100082036 699098982 681462628 504960956 269465206 217860873 211723557 36948823 439684982 746594716 221595307 74336214 1062837782 83882606 37098332 952990459 454088005 824704209 47470816 681390497 742950478 915417018 829107817 198265739 457564401 242871223 159986977 1060027883 95688627 835560635 938369820 634530512 593440448 927949127 340963484 283950999 815577671 20607797 530675667 499868828 738901345 310997324 362911112 968508479 981437435 198968510 1069818401 367011533 162970215 100521243 334211042 542696955 9865818 972947038 875417142 881405338 901568359 562778504 705041534 352122410 394869851 491180193 507104122 803124461 57569213 819824074 575307162 430560393 952662893 748878274 425082414 690265112 1000465385 514092804 445690744 507964135 665960751 915591163 967800843 941647124 10682841 881720086 416969908 487540185 989852660 723284610 860263809 977611909 83119891 683235301 488903524 121493789 488105268 75270398 639892329 758350097 145319304 880439587 757710715 512076794 345308349 63892397 596332573 975122970 249877518 1061371387 1051265603 576576900 560521754 45395956 343235755 6757812 14978743 584616646 698087812 912242489 23387507 251271351 404047294 647823290 1063908991 565929453 861814773 917905792 816589069 843370755 555579086 957134135 331422868 843862044 114675694 113075165 102024762 52446606 778701920 997508742 664172069 978631699 132338735 510384415 326448246 173977194 312573188 842552784 481786063 464529849 27538144 1042852822 881435838 736436130 310052816 422471782 510715439 10440335 856138187 834699974 752904793 150345123 258576711 451564883 23669257 229045324 635437682 996074106 721685850 644519707 966856780 307048816 544353766 731697217 69087258 837647054 433306300 836646415 941123160 739762922 1024679383 945696585 745393493 469061370 678605628 363429592 691098792 191896736 557283514 94372705 272115223 675886128 338504463 375815404 374155200 929332075 872687453 830358456 577528480 860416992 836321523 1060238684 147325593 390081905 145705676 999951925 130642054 91991734 993789875 917478731 715087817 686393917 556063285 77238587 316942006 322862557 537828681 23848726 221126137 70438334 547084244 735600227 799264120 136921091 420164748 885017854 1010197044 83831507 1045581897 837853728 882387246 228013113 932968393 191303730 167108428 182752492 800735940 872532411 936586923 548934715 781806012 288411486 756755545 340049121 626946254 958517325 559691853 1031275370 403334541 1020481981 35253631 593296781 438922556 660992920 753688881 276695170 344679176 442696160 128990522 624613750 434229727 49739299 603048950 1058812434 870613014 855159124 211108006 619460415 797651581 884798386 572133122 374068405 484749870 748171517 719115174 725562296 254448895 629185611 569643802 553740458 159193075 975476184 859827791 565400278 615719462 691903321 838461471 1044652417 760459260 1067644506 58672692 864384299 290999592 484533296 769616080 716978557 921215094 119407671 280102689 787741161 8566164 276521886 992649845 392494699 474327113 809557264 650489500 1016953950 446557687 336311752 1040135590 775390796 1033023847 943144554 562013760 595275512 619652240 795633870 458520649 352419773 369573227 1024448567 336134828 540717515 26944688 443449382 964908525 86229660 530661725 598885080 517938966 1015260905 877898600 868361329 485128964 1044317753 14167911 602061523 905721975 512511569 1023497165 66684903 678221961 786261250 537875649 807543484 52657129 172474117 437571062 480440970 347363412 487499524 1063993730 763388492 329383396 521989576 316292741 329975069 170492826 82479766 598577475 262939067 426041289 750451655 1045079081 61635945 766979762 209688932 25772585 199655766 283616472 252614797 1033514189 237216264 840529521 4055897 767455990 722054976 550739861 576467855 497053476 934344407 739319411 533517277 550192045 1066216483 592886602 137673048 941047695 418482181 82046571 146653565 554525621 202303964 217890766 19213286 60626446 962914575 873355276 321977524 473607184 566581493 858045860 98808173 508876987 148355557 161237324 534600100 1064968780 1009851203 394215285 332247982 591145450 1017126683 421177545 353576119 815406112 1006978756 457449255 689443145 210681747 147625598 200371568 948319963 636107603 987619335 620860856 606874033 500609359 491404601 150496292 90321290 168749299 159404988 660859488 760862672 868776235 121901602 64798355 588409092 148660799 927565298 380274449 510674788 568839950 38923313 1002294169 435970431 174740794 459953189 979084445 600648728 931815403 113036262 1047484912 394418120 376520922 90775539 216908593 421180324 609150645 906722366 182088398 955694270 671628616 800153204 478947722 793570787 662635049 477019996 378685401 70440395 319205357 704701912 963596770 339900215 882531644 542958974 702207790 971420870 452745004 140564351 970208006 380664199 198378144 730355721 600014685 326889709 942946223 460363879 197708838 159565721 923777865 2746896 933728479 160217931 87026800 1071218049 911673973 15011018 314529631 293694307 635408585 819777414 1063370193 896394839 889064300 336641902 986939557 34552187 365434697 810652261 675373721 772151909 212341773 23953043 189508160 571686856 831153261 773183779 371370274 487954513 780765976 611691233 95448896 243236549 472162128 532730769 1065539475 436964398 508570819 356531661 47635396 891396066 539971219 1043024932 201592862 140552258 368628686 142749726 67608337 452809705 949701386 944642875 987935972 41673662 80434324 210954448 375021134 549119725 613087270 602047945 62596788 384777224 414742334 432836120 658661971 520865884 721814656 975351922 318823578 480526299 817524309 432994242 408619035 985178938 300348102 561605109 347706152 41846036 429858534 817683841 377207485 417392069 22751182 808088349 723904807 679632020 1029285425 961312184 376479178 453943498 623487773 220912000 312970776 676805543 946104277 937052431 142318624 369722162 954743852 1029330456 989911024 712131587 322105513 718891177 467413705 1073019726 552464080 168524866 272542573 910419198 274393562 582935249 489584986 700880480 270854020 30987076 46250769 1049115289 471078192 1073521606 905497180 720699814 903335175 159254596 5366667 997893647 317003613 881245013 88427795 835729555 734935918 755109640 29546265 688843454 10181985 98067800 152409304 817142143 599818637 424680784 637653639 222389304 329906598 429343816 360770512 286021678 709722690 406330817 788285118 339382029 998320222 885849659 628505513 566282724 43154212 708589755 71444342 509118489 163672575 192280552 451374746 67596025 174323733 138789930 904974612 346825741 167202781 392031308 1067001551 10332431 412125520 434004811 913506319 742738866 88368845 1005269613 948486644 867663186 905657432 890873932 437260039 848514679 380270330 575999333 990434178 22196670 801474453 297202954 294349907 800096711 925481449 29485891 833925914 978894458 119320602 620092914 319254724 928304230 496945296 292446688 1066629781 94348262 551019836 1042938894 996969704 58395987 233115295 327479353 566741137 243855689 160243749 281278528 28502027 581050590 882296138 990084916 594069434 104210294 600311418 957724671 827765326 740237111 726487377 974680937 758283296 368196078 805898376 469319133 555133736 92296661 645730231 1025960414 84810902 957137632 979041313 952789200 738420599 27078425 402124656 340818790 510555641 855327406 590758374 667682554 509079116 525401439 415487395 619470358 617536769 234089849 617509543 848492179 1043314633 45045409 990742826 690433005 839710900 38985035 856337698 555428848 97169606 813035676 810689573 264494151 1048274890 28134192 557884087 271748206 180087002 6358094 2664560 549324435 571936720 34395167 824714352 395472588 772746306 854027354 693647786 395846025 37437111 556104205 645158550 257193909 1069538559 253116224 736287648 248925131 71465949 730924733 970480881 1020333833 233886362 1016450068 938505650 777190836 688362409 252811736 276534631 726236333 158652597 622891630 763631176 706126367 940729560 1024816048 255162742 741862119 446129227 523642856 195449540 550773060 448492951 899305155 659176207 460162595 610465689 328414260 405931320 516593484 739200867 837911667 931656012 16939716 29610334 642380388 716321896 198175681 316427998 393939671 242869584 921333923 48979025 339478654 63541511 871895115 774711300 257794026 627071770 430645305 393105068 324534402 437278892 736190843 530395768 1035056507 641097752 89962816 716866082 905542039 15351462 1008406930 86933332 142490017 384436186 107666676 1044877006 765158547 840122805 992265713 707663584 480563651 448491842 40779050 600490942 565281739 771363607 134725821 970117659 692569523 432513645 378093624 456279206 892022943 414884604 1048543578 988956925 575355471 475515312 408614357 487275657 17647552 27838064 402700335 512199277 658996376 636535851 950144621 63307943 638630584 484056209 145102726 543592616 980323685 91649076 657972736 520228347 35246959 913926066 281487959 620027322 655613105 123946205 617989824 786423790 621958685 527069886 872954940 685633104 435979952 207397030 688684447 71343706 790039499 303453537 113057349 909079362 558257997 487959238 1061586417 176466413 293696733 186251572 890390692 521918481 275418521 582515620 540768395 80800477 536577583 730559670 318405311 97411356 559675974 318783147 918545105 938026166 210851450 267088142 997638833 37709131 925370389 528037687 524409026 733734169 229314201 55273190 10394014 796923877 489875162 577285341 592379411 948902905 241418288 495161268 256036413 464412952 693787626 410319494 689670126 640070828 568523017 97494172 424771495 397834969 846667163 285032664 412732989 232620244 392244853 892307018 177313759 652092809 19325137 712942551 333546568 422061459 657300693 840667124 808339766 774729324 341878893 32155908 663037374 769087233 178247690 30974781 920398562 60275335 148005202 433442393 923376059 388508066 386126039 579487985 467335942 328633959 173064793 242467659 1012235055 518368572 404870647 818316002 409382837 313070748 636070043 789509670 920255222 1061344916 1041589733 769726793 83063327 361249541 221483261 583398707 793472991 143783461 872273448 242419461 480345873 266856145 733274474 252023972 114248250 343798753 798919769 324559067 283056855 627189994 613884886 670965615 503212070 572390501 393700079 54357512 738767970 95682801 173779555 132361951 688571889 923742547 493122508 253892465 446832202 232638192 321963978 107180199 797840279 58870409 311773211 1032120236 941010819 607523875 371659630 1004444997 590634259 556052639 85322307 212779887 988027749 676147569 239636789 863485862 283776377 523024399 37966719 17404014 297206998 1027163972 725742978 525298651 796466832 201405779 483393676 733924769 914628054 582675634 873306804 553583266 582967903 790248285 734417227 39827945 251157111 823621983 543113901 31937803 498276159 425808896 247371777 19452245 386770768 618005333 1021062604 674312054 951372518 927576470 475460619 441752572 55599017 25880316 228566126 583162035 1003427752 498532565 1049777624 469167898 117695077 967730127 50673259 422376943 895265428 825193311 174019272 938422629 608129003 884626666 960401618 725791166 413645389 38107805 684973585 423573000 372037266 313856823 312327884 406459356 113069069 681026476 776922253 579708172 373839394 569962675 908691686 351867799 282496101 794668099 606478008 476081818 844855694 1002371787 687411836 656872690 192714511 939037 813548845 542711745 436348487 689740556 1711263 686365941 340069868 17146529 594509681 261188139 650310561 24882290 30880942 47271737 1029847991 1058958295 581447384 868688388 1054471067 837556101 313147147 109110412 186783321 187117450 615253921 848016529 1068485861 391385331 1033481237 632988227 1003155514 180469196 570048805 514877491 503424304 485515508 621465261 706242399 578538257 137964525 533345609 562733086 993271196 737645641 748357734 805060797 857342067 893001776 431635270 1053355155 431826772 327576271 809177790 967268131 812544947 1048319446 875720036 308977781 926393511 705600071 18141873 966163074 385755179 783659656 207282852 193535270 871704350 619546620 490957714 465822828 617071943 954607842 20500571 987566316 898484142 74666533 45711477 503090126 494638665 937734959 223614522 605267732 827094562 94459192 1008590362 129643268 294475 732716458 198742613 909431492 622165778 67386065 966992539 806542825 269833459 999266713 213647310 974623872 234888048 776483409 778532825 998145992 263281705 911720765 227856330 619474292 666794566 17331054 772592682 67996814 1057579576 106820589 52752459 608134418 962871844 532797393 309332290 576455640 362569789 800413745 407488711 511557787 708697600 751032348 563815958 1063840630 937337617 978328098 554667230 743245135 913359880 463050387 924456703 94894170 532535875 676417692 353085132 419664318 1030875552 1020931302 639419116 707908618 436097065 446383294 700909062 874854354 885320047 770358958 344547752 674413635 343400242 87394169 1022382348 1049091587 7561565 924833000 709159197 642099705 1026904941 770500911 904093977 945355426 558149878 739588347 985690476 522982964 37767970 372286714 391194169 597814162 1021869574 553482376 618620755 760123695 195431770 786479912 771029173 47717786 970056497 809823496 116186695 250160951 527732537 481136550 467221734 952868789 1060488422 1071614977 611976610 792829458 663507125 263831188 505823284 301166705 740761485 1060119361 520654526 629807936 808214241 157400790 822179326 228403968 136806957 358298554 737796497 556548687 42044424 911583740 1020540077 206973002 578841868 812595425 607340532 333353193 178973652 1043069270 280734603 705623258 283252828 505526886 50283964 674325005 821128445 377182184 842712751 1028470519 1063232118 435081403 63883513 206392765 680904776 467449268 106752535 735979574 357860576 281243851 710565787 226438452 527618176 907233856 133253507 4047546 612708372 691243284 960774159 574597513 390269882 37815917 589968445 515914211 26137136 374392439 311406595 856762466 366931752 382730986 1016429698 666693399 546787910 177652350 437047001 211430321 711196053 291951931 825112562 977356442 208710867 32602520 955551595 926797380 326877245 389390478 94108302 569796621 376962312 984370439 271126535 464064380 243065209 653116018 783523765 84091239 1057203750 959712994 946507967 806020644 256408482 149296409 665404710 953095442 695186490 797912465 830543042 1046288347 854205267 1005039891 120162123 715389685 750125949 274451801 117304016 36758970 178326104 139030536 734757497 954649005 658872932 690200525 939685892 383188142 254484308 92961097 31130542 829180589 190262709 480390402 644430965 654168667 364657074 639290169 19333811 380552684 162793994 942966788 484174805 8158738 381963067 813803112 902214540 937366203 782713953 911660915 952419784 329159263 939492599 642475251 821692463 878760982 170211383 219568471 455075787 816385190 929476996 283743553 601819825 73003676 881971648 618325149 66697388 67823228 125918145 125505857 537963785 101111355 239428100 898628773 645371718 785983206 948400293 711412882 529516546 861667444 544429835 978471316 696311765 712049471 1051228497 259351799 916496007 753935060 966595976 832861818 237800033 868141151 979075187 282316825 501075446 850604973 963397589 971125381 1058494625 568445530 34379794 612285893 797055985 287408303 754654882 175283444 649665711 259911516 109567903 929149831 377480340 619608899 6172758 470474924 105576393 678890617 359247271 1031878877 910528118 968274875 399207181 291431514 713557117 546801131 467321834 432061468 849681811 739074489 821477297 484975507 1010981187 284482995 433301690 874510181 178719195 971853204 347364724 594058709 978393710 302184612 535379281 644238163 379658834 214980781 734028763 659654030 871387508 952064240 395272580 237969131 444792748 419171121 802023611 631101179 279658410 259309499 316382451 466846271 955107602 140845080 311248695 33741335 605663795 60176033 166530193 233237495 1003999867 571065824 456196219 558793854 818500210 433177840 533224200 199454441 946933846 1009973232 765718425 811695438 1031659073 875121492 391379200 272004363 600965807 820433061 477364921 874780483 578313173 823609351 734030560 936759277 890737476 246085012 838117908 675584951 711531342 1006771013 621073928 883481603 221164055 257464089 48876274 170331375 591199401 61348147 941752011 854895097 521272737 766434984 1015950505 300048177 853191993 40737698 116632265 80161290 456588925 979720268 662550334 1025980003 325610495 654646258 741761467 814869092 486228409 508798750 810542482 33582928 697338505 58380416 711244810 531515172 801405402 754668216 534787239 138934202 1034087271 297509216 12701110 18110648 819656572 476631189 531756434 466652717 516302765 333599349 974354426 218011881 802436216 257816757 194899865 819293934 609681126 1003400927 929738716 31751544 910256680 468679320 694472060 510866300 370335793 1054868121 342303536 604205391 499999385 126584162 583766674 1051327088 329139707 125142643 793654374 1014189579 332386188 605821262 743270241 929398955 767599349 294304499 165416937 788521090 618360403 287142180 178674373 816793818 726353737 218380728 354448912 670067959 700940911 39986878 233436803 157959955 35078998 566124782 874115432 669729723 802746087 444938166 431959443 512080982 644980778 390194414 695918088 415821890 396098514 7663093 452111987 811112015 75314561 266886454 1049152756 661777217 1043982875 122412898 418743343 646307761 544332950 653811724 843028234 759610209 318633727 202513116 470385135 569614549 259956743 674780682 1063587506 853740649 757365772 596557125 856442726 964501519 955297300 513760733 829469116 159949772 509827631 978385854 328951447 820043638 437509658 1019927186 447490102 75592980 859913441 521280593 889353723 106497813 952703042 416153976 24573831 500402703 1006138924 1038379377 304034254 528919265 348905418 235889646 147098337 603344647 893242721 427395110 889286179 470201385 936437172 627539217 681160373 974032297 1812199 1027360018 399347735 786171758 984801597 788013968 86855504 73939941 886738453 378784880 285093337 360779915 1068753590 602718199 966792536 640862065 218521473 662591430 902787497 474457139 170091292 357609219 301370039 259160193 9288298 236654730 452762411 796579592 874477400 738390609 674805433 1013891605 932060426 496234358 1038821815 508006963 475438096 386127651 22482522 854982242 393021949 1016310505 1042198646 256449240 274850664 311410595 855119190 387085381 131022837 993226556 439798591 1028641700 470604273 880421513 194906665 495202180 429319078 1027029377 358709601 392552546 804223166 660155953 734660116 468724960 1034839065 467633439 1039582849 336421366 659800254 125083707 350112017 972156630 465774500 380988814 27571370 282937205 605693219 956539747 1037462955 335753691 872394364 1050169040 614058207 492156004 895946321 837067475 878158300 486865886 341307381 525074378 256537155 61329517 174755871 998825437 955773918 1052663266 326712511 275377688 19898674 616506676 810473103 1064977621 343960868 335476978 155096654 248315968 317860519 145495404 1072269341 428979821 975627775 511413103 504971093 752231114 615067495 822075481 827246402 267526477 857781102 664731646 1029593116 287399229 761127419 747512155 468401692 282507774 94756209 1010088928 1064649029 190189755 973731989 178158668 565338388 695266564 557124061 370867990 808963595 544137034 950264486 1017728798 729670690 1003711873 681606073 300700360 42447552 520031571 785487443 33713984 26403095 558439353 207123059 200431627 359648504 129783790 161816089 47435900 678909382 99762030 268678385 412574618 266613948 950462565 990204971 998945257 986001163 486905179 373177593 194273540 280626591 421555547 129034241 1045012764 252249631 822660507 349053115 758817318 966313259 119696541 437257058 148481565 98307495 384473839 40633794 634077605 175356701 994381201 342974627 841862747 346109143 823941811 79406015 898664555 841354838 504091185 266672270 1070063012 49442562 405058821 1037820459 438850361 259562384 542441311 578990762 36297282 807404116 391473511 537762552 1043222831 852090609 549287668 865946290 377968241 677516316 607616438 987184007 288559958 736796570 530176883 1016319701 193075042 429678459 1029679693 239167194 698449668 519060769 109609929 596247933 216853295 541935742 312714042 796505579 879287286 571425935 725638361 924808636 85036150 528358290 622111526 671456084 1023307120 260406359 346665817 185382739 260957534 39949137 320668371 250767644 257871106 607964185 908208679 764634102 611479776 645812070 1030342982 18395487 771127490 860932210 910891825 433962692 602134683 260212162 422794852 143139543 815902358 101499197 751965801 335975850 237921318 791829445 1001068755 319300705 562792238 1010289653 162399029 496381510 853098457 334730320 467903451 565101497 724174985 566095960 757596531 909762211 651700692 345535712 641085712 341165785 353129902 311726369 271297529 265095642 905841294 635680187 286602300 795626932 446289752 32056456 838204004 451857455 777955630 740897390 574900707 252848275 127977920 562486863 772870187 481068661 586716435 547858904 561906580 836636589 410144547 763886487 19798660 33467728 422456503 519624547 536139339 737746466 1009187797 964078249 825435142 131575340 454982517 324720594 1031929632 777452912 234189735 581759384 1027310106 705346963 663814726 409101481 1031763308 86939438 812776254 934820074 112245925 755986005 643010526 905861688 641301294 678436188 601919053 1015969649 109068115 375576393 387783303 887546591 270832883 247537867 856958082 898858526 168419253 750404120 131895032 364845406 83121885 90579080 927759948 147832392 758947856 933716757 360510300 741127434 417647114 979074613 397307635 699804961 433120483 977900054 697701896 1051929680 225725997 863735951 40852939 973321425 909162127 245566872 436221049 170141914 666188438 182450705 661571118 574790860 725859739 868664548 993375295 506680964 970587137 923465126 157084133 68063319 745667906 862338031 536480032 942694522 192397211 665019879 178892791 7292646 677666360 125821627 720322156 200933644 218519792 827373987 507082026 694242272 765772118 130610544 366980988 125697124 586111636 273881121 572523109 638892572 247326003 920902869 593426636 567437312 204660152 313148751 37511483 185023251 744687677 505868358 347447091 831411481 201649407 546378553 832779521 628900899 13344111 422392900 137684806 851989882 783293017 27431130 227410110 713758886 210606330 136672410 727982089 454585574 255971742 1004628174 771667220 438635869 218711001 504357838 424857516 948911827 98140642 208268333 270122717 62956397 413875453 815172541 769072997 973029393 1049740086 775324884 215664904 873293381 768326106 1047517082 326047046 333048347 448163371 752663974 396930370 121533303 301268042 624562243 995943253 595674397 83107843 960767399 482040786 139347786 744238795 780458950 835350574 493661957 399793873 145166262 636765456 735371008 500880544 805582257 632483479 214168440 842885075 897690387 97201724 810228336 1056270032 108453620 441332014 340571285 245325792 353529158 111714914 779203547 607955386 1036087221 679577610 436897024 26341506 674255535 813937810 349877938 406863195 999964545 754950280 994443607 767352378 275787831 480044203 950618506 917436069 118386581 233095857 78558813 247607728 846003569 526753381 981332110 987767469 659711307 890785926 714383679 674332454 193573259 401563217 430358448 62727657 51790374 725958747 913062356 242559988 940856192 403952072 738046374 409236211 790046371 642699718 451088622 184237109 595610947 494227711 484124289 71661372 835576965 566745306 707472458 883015605 727233742 921515147 712488916 773505071 266991243 895647402 279373081 404099083 43798459 239681731 772241762 910420402 427412750 451081008 310770663 935193057 195957605 40464787 389250092 674286842 83332565 533503180 593828039 640098228 691923031 332401763 12648275 118699171 858712652 819028327 572422492 299569194 1055945569 186873814 732156458 370571968 32785720 344761427 722451206 716755981 240241312 796555440 623048828 31659392 589066017 958696905 494996250 874097037 306350631 693265947 57081510 741446432 497728167 1070256466 870468763 64656584 48134148 840365257 12036352 836178844 594671039 667061440 978860677 841862220 674717719 380825519 670826583 760203292 163325118 348499290 213743434 503991688 911556519 464601258 266349561 743887996 781922526 911314427 452499468 194917851 807546472 658448825 483346408 1060698947 898558802 972868122 614923070 613185936 510445850 422650133 455285320 738441426 835784978 697648513 266730273 899801548 362171913 248625493 299099997 256897365 28490192 268798847 761754587 1011270379 887750415 869752201 194097185 336402171 748768339 948243008 235890090 215283512 146662473 108873392 854598421 99933128 196746759 150494858 10803044 822121991 210555887 952570488 1019193328 579991235 311345158 492038427 711009272 736129443 295196155 740661110 385094673 832034171 670526596 503954288 911845677 587529949 1031672712 527215383 600032432 601725930 277257721 116876428 923171326 482889074 38883667 213402265 955880580 275621842 87435474 816876945 410461842 861950212 856698328 298886190 823733459 958742661 762939703 28621785 1030251965 457293529 596473945 317644509 608475264 604296990 491020653 807084006 741394524 182775588 22231035 1046627992 915210714 581952827 992928978 673101342 73829728 336516565 650368168 636167387 856547484 1059199262 121509469 730357199 937674553 1062575135 157864722 1056216196 669810952 818942396 504554065 70735316 821294458 896100215 655012501 189158770 941701954 717782239 390400737 509551111 427660246 781308492 195147074 469091880 321780197 904372198 854396207 1002299405 716306978 637272796 567606254 414873990 548152587 388870402 13844568 115494387 282519355 243980749 462459245 1057239980 1038441835 817886655 656503780 687500718 610362026 310019629 700819091 411509517 682074575 907416200 672001074 1043878824 96393986 276301280 196187615 1008514049 837766837 337294464 767885331 849854348 771821174 152782355 378106692 991828251 346116789 400132537 419308238 113278127 401474273 834307768 918494671 359749742 869303325 23069011 398658322 346857437 804212039 938856728 211142259 41565508 162983287 1003153681 541420160 11055067 755377884 262020689 187672687 1032223252 665622706 379821523 169897702 1019205628 641788454 136080224 308444126 954582844 772202775 1050983042 32259068 428273752 613518070 455063912 1011495823 348491491 302968841 976918429 83987253 88833489 486902257 280676670 974963046 733037569 373089967 177590264 889792483 919609575 622385699 745443952 785949380 586925860 536198447 192012694 1001234043 555787906 589906008 442205570 46671606 838033253 110065445 365319776 691483863 259342595 525380975 211017568 568786403 831304749 970704349 772415753 456647805 463642801 432684377 1060379679 671919349 798178989 791686182 435306737 559768188 44696324 782254910 177176189 393150746 742289834 684293899 536064359 900389629 11486841 181768425 833625122 838929301 827959972 65580564 983155765 74869077 46516907 293753201 888846057 639525627 327259989 429708937 1016744647 184989387 379345919 157080088 678828152 175976724 388805045 732876722 948329664 147235636 318019052 93895673 983057050 773163907 53057817 864360774 343993138 318997185 966083253 132730801 806897746 345856345 567442192 724799716 852994533 64994411 387621809 606871021 637595743 805825904 641389385 532068747 245871156 672333381 182493817 94329245 604966446 181441357 562172932 644344615 925371356 1046644303 436046275 127861597 64974187 449829718 567502870 750117416 543425827 498423101 268657477 529534842 59000898 894288484 242740736 726057795 552591907 938927107 231414941 864580325 19787660 59407573 961003877 844629781 425469867 539841716 13556986 119153908 583627137 534751950 321462435 16679924 626582419 98256137 531013352 592460650 956468670 624662777 266842940 37801915 908192262 46194017 426863562 171401115 853224258 3496002 389394832 938997989 576641608 636617088 540489562 285390840 596028366 784285655 807274639 1056918709 677068276 847546041 605494048 139891254 5142578 963925936 367937762 1008911700 9063483 597298580 863175939 109374647 549404833 702883492 373353732 835034718 94510877 175970805 331566984 708922726 60854898 393911696 698163962 4409853 682518545 990886037 795956595 139838867 451837365 460939487 418167729 791773476 493919917 624144487 242432885 62108378 710775625 960369614 128858363 1025778929 994274415 754901838 109284824 601633586 893873031 737590145 541410857 542441288 160541458 444775200 396467882 503467554 577029001 101486368 593399507 445145636 990345509 766451118 612800967 484616970 863635545 1721872 182065652 1073194324 1066991625 698586962 854938305 1063909030 396611794 514551054 894214344 72887266 1067203490 78714779 941942475 929500687 342360631 866930671 869070038 757985420 494342726 685500514 733987179 350338540 189946203 343149291 616074053 367739760 612628957 1009373373 294002600 395392956 336637944 88938654 27760514 716409134 589932323 596210839 580437207 311202198 97544110 132114142 831872574 434515127 600324633 792024144 673236575 253627645 809816725 792267766 734465891 265653844 1035069633 262481937 695075500 365412362 85088510 568203473 557283579 508364744 351076152 456861605 568729658 485721127 789977209 747385641 553077750 755835940 576176542 968598997 686969158 709144386 472181173 1018399255 533658314 931409538 973464858 1046917244 732595892 529880947 150411870 129614798 98662925 269285759 999097838 326417645 429650507 339060682 512922008 552882864 347645349 191679657 503966863 462110152 684779611 223185731 4890429 272859226 666151081 579994480 25762994 965465960 425912455 1028460422 824795037 567933090 152333127 216738576 65167389 153950749 778632045 286221282 108628753 790963442 600735793 1011834433 370195187 181659085 219609145 328612227 914696005 882116200 227346716 868628764 987797249 940545798 515510769 683359516 1057917626 40335263 613370147 81023949 444248458 746418748 577698227 996004133 252109 307519285 867903129 106482281 808781804 826793565 854822226 1027507921 460338102 890631583 397151725 1070111590 1057002895 776752002 703277317 563795256 1065791672 53645881 1065322626 645959103 642295192 221483926 140110131 1047676342 435188448 169903511 75836187 561159368 493730919 123250774 701272144 958849221 441075835 329134531 322552303 576954124 1019737429 702364348 840039355 755292021 1036852306 541812880 24608785 122930542 701291934 1069479632 1051941215 66973100 46360981 564346608 966175045 742714462 847737283 51174974 1061561944 912922519 970736018 192831294 606085242 75817231 169368960 844094650 963428422 571308693 555336775 389848656 356974965 198444250 1015936274 529716088 327926001 620936980 69692511 276723892 254276263 16851360 677071843 1010464200 227622256 217963927 232287695 351697257 393551533 88684643 551866737 587601870 586875872 450663073 565390427 147730765 375210070 325892692 128499421 75574894 747918155 596667026 842314448 311405905 615709715 323489279 191456648 561481154 274008279 127207879 80579676 927122193 1044027106 751832259 1037943915 240502606 711850034 993851850 754149442 542763224 880169177 425261868 397912578 962000136 602543419 530912376 815254192 96949696 352144780 903650789 193410595 814291590 6178346 733100133 600253766 102966627 500032825 293342727 377470227 505715003 984415732 696788393 767228475 131197062 206009490 217499097 157711232 61485662 6039311 563676968 808182132 999427571 505420979 818542856 234172232 462559759 499006335 551970477 223459477 491535041 295050131 817809438 1062351112 983473447 318897863 548390135 978357531 392548563 948553691 590435179 757152630 687486186 244398858 56265164 24005668 43718077 247105883 758320026 130239637 234960870 724660741 148626472 873483958 1067274946 366693809 750960100 217488245 56482767 1009285971 968724455 1012022097 506725435 177806683 691580439 268147717 698733805 3843587 764706028 557760232 824490325 443006004 452417564 907236823 360249133 380284726 455745885 879403174 218829757 815460515 233917480 890323411 52323323 390215811 189533537 983855206 941904749 640748702 270442130 210205576 766286283 555483078 442672915 374117452 22645485 915134647 1053895833 831983107 970252941 380180165 186622222 145992535 95383025 936647644 137391860 351214960 804882094 696531107 555694368 544893404 170696498 350484540 354219051 611285367 788845998 835958598 848215022 263350470 488814135 544879531 801144209 826977021 665078055 874701278 126332039 874358622 12749018 653066021 188087456 549901782 74729653 642151599 776484623 820168698 631930129 1060869121 579552063 992554128 438712394 1033656719 239989857 309969823 437328492 708412055 804061246 341050030 281728706 267292034 479912839 623418516 165338836 489770319 328389699 539471083 837621327 500221423 741738818 389523773 399414775 1057380859 432416466 229001123 627528912 170785598 774477714 679948489 101381327 890283016 185923124 113193783 22117677 841814354 134730383 1032582688 672257894 1028633141 380962929 460611147 227825746 872801183 177370657 776643508 806427997 377846358 218062035 419463284 126148725 61724120 929917907 799570282 796372153 942332694 28468122 909293536 928372199 379742529 273563583 839623793 746796105 774790199 887803328 501148189 59818667 218575720 102137748 467822274 696988336 502327332 766308627 87975263 963066775 102906926 58996125 801654264 386287017 490358321 477936838 509042796 310342014 372673343 236937185 55243308 86356417 265831174 178350161 237824538 785077269 529808063 630785225 1004366239 942507152 91271036 696241515 1050607086 449158198 399939324 443369927 399471354 262707649 234641349 198555776 696565569 200594658 941430342 609606798 31426542 532003656 35796403 547710856 769264436 628072955 465184793 977647383 326748228 828306286 794112390 200236 193605422 617478091 311431074 4479774 686928384 434975407 878125727 281755095 331792273 20585722 898598561 470910692 347750402 186554905 808276271 591604659 263367801 138621040 281121555 435802223 513638743 357098700 916144563 261045815 822483719 743781958 66750193 41104708 123580224 407784451 927639058 241485959 567447662 245279394 1033011370 226998164 415870604 210568921 277599473 432647230 122187387 801181702 479664354 35159412 607627205 243979421 752292386 919289871 308069702 871626575 424359012 1034166673 668532088 797108080 603942634 571891301 453002594 310155956 492394160 550720633 800866301 274054528 285499261 344339565 900142007 14278890 537739418 393823726 826133396 949737142 509112688 841948307 1021823129 429144229 305470477 1021403201 485924738 566872161 695162236 986957745 55707528 1013941177 961118879 983416078 631023599 375030641 127002851 95646761 637596368 1033150841 666080062 84990497 668398363 858613068 785117903 783282363 31210891 625477160 281855869 492588375 104413297 198401361 212827961 565657997 165348850 339149824 694982351 466297023 876344823 866846194 337207047 480245875 909660994 437656903 145841475 507012304 346787855 1033010498 813210343 479672087 468159182 978124980 1012325558 803256181 93641170 163376348 459112442 421557060 16577334 807592189 838576682 289096640 923390749 128738938 956878931 88787015 785610270 281900496 807987097 778122842 510344663 364742322 789252644 1020221265 980356389 684648751 222001623 379408515 216596843 11395173 673723773 78313485 904594723 1002124162 653493960 701187180 969576980 310932509 498687810 640551365 139243889 637742390 578740965 1024461462 74482764 399113019 503468388 838081351 202621157 573612861 798478541 399580552 899404858 165767425 1053829671 85338996 934628974 972769980 218755120 616228427 316066347 933797406 613806883 1044406152 533642760 429865306 710148127 605788248 692544314 1033962331 493495825 568735807 353449321 378126477 10378611 194782333 1054258329 484323529 596404324 870055366 934159659 227420588 754822611 114062746 677584213 18799606 80949377 889773201 482559282 580181082 78753249 965753795 344690988 848562760 923944924 43233847 163754519 1007919401 815127473 712869985 595050256 508211567 205624365 806393015 746524158 382304874 79797913 986608154 71414587 287960165 334198430 60609880 232220487 690481068 564779065 730792767 107482883 640763723 765694734 322111766 232735848 1019737807 593082461 549745993 982012359 257469822 345874301 958499480 754035454 146753682 299270523 576047406 856420625 226043523 339211626 655368319 393724583 919986547 456712467 571755393 951791117 402280296 254126363 420266933 20217900 538198584 656923301 726083958 475856309 856757934 864722148 852803881 577458045 216808581 917965168 127485930 533964683 998769008 361890880 21318388 457258997 456477672 1013238630 496461195 753063953 730601245 93839804 1030823929 902606941 227011409 53131473 188904712 1031173981 971339733 896593953 42408716 584806972 495370775 503051131 795004587 751171234 666994864 147717347 710343505 219799312 799732059 792350282 349848795 525135090 964136169 15250281 482728736 169630236 100197965 837632426 594259949 198736097 262035863 608321677 518844950 255783473 391780723 207989598 136662547 745493550 353303696 373209499 620475626 65269611 451178728 114676758 812704939 492570937 522859817 220439615 283779586 982009265 817373619 219724059 684572800 549925805 568687976 967923931 1033005552 593739452 576871782 709543574 641381812 207869691 214895638 472239433 517645350 167027605 230448921 945161325 235960051 692613591 272242228 481895594 913083269 285762904 836031802 116944151 194585858 701384535 313205238 408527094 863416450 975210246 612604507 406597952 64153970 148926928 461676683 360788469 886413715 575573289 809375155 890007741 482621842 1024377200 889092184 354654388 626928602 691422550 806698721 290700943 357277471 23498089 244905051 496316702 100910251 398633347 276857800 679785897 498364128 571346263 401613135 107362842 351706632 961798042 582963597 511169125 804930237 797273458 79468300 487499689 148322083 611881179 239130722 670352072 10437875 704141621 1039726777 663443190 645742055 348076081 443030797 476078709 358254700 581084291 251806134 656297649 725789954 414272282 611302303 1057569371 259980499 649997775 767804364 457114066 511202666 542022633 558450731 815918399 243874304 312695565 11753171 703076294 253375759 624454366 418358336 1032133785 869193192 864607888 135438848 861089735 519332911 847760258 273890575 1015667010 1092507 107115786 26993050 998658238 376100365 24824908 367678736 160611835 936094790 897832696 939990453 765942791 629931534 386402044 685109890 508307644 908720088 457619852 614240975 678690109 922828597 754852926 866632440 553678791 495615732 379127829 973544480 526474025 815361435 811171102 723372248 514647971 800053046 532054621 222584408 50269656 1030525715 659310309 409696044 457071432 806392435 581712447 231628593 1067820173 231810841 309076334 881337811 569546924 1059729298 444576928 83380137 181471305 839383621 948476692 359102549 808090090 1060762343 734429170 910625054 37443608 188034368 867446112 418627406 228749295 209283232 49585430 389920079 931972256 809602213 881327637 62582248 682342465 166342044 400665485 858329871 61952586 404600671 922041749 980551512 878507382 358200772 211056167 161819260 331660577 519225929 108713774 1004477712 613926349 768149986 257686503 71429677 204905007 132787143 418645934 227072419 708903743 846827782 399811538 1031730762 702115691 451354623 715474493 120444767 627679229 1068107024 860172410 736442353 1331199 68926556 959311896 196322511 947041596 844905297 78434236 866735255 843731480 369321422 884300922 94892943 738814059 555211746 134959473 222576414 193179050 214026340 437951768 474849324 709989568 153862067 52667728 215463989 766559241 812658858 607599224 919653256 727383289 251288934 1028456436 39816000 953277522 690987899 745015534 577667620 766113154 960466313 88438140 745376610 811374330 509553088 367608953 608470807 1042296581 659290297 390321424 440667324 700370432 254212175 874293624 807439135 673786876 689605919 1063564374 1044572731 1022981331 1038467681 905461015 700452563 965260292 689116198 599902825 502630098 445272608 1030665591 938056022 465713435 410806322 422379608 259546965 568240861 48062899 615403040 830100537 620072760 80966194 517643201 604672029 549588275 381390525 690781456 660480556 574650983 97222892 553135728 923325873 467829451 288258587 197207824 131700571 1029139997 827913676 221794471 489762370 432657314 58398648 13501939 759720828 166862240 694379949 648665516 274468368 232287980 310605783 599520370 558839032 609727276 839171714 802603435 307201216 418191602 31419745 791935584 215330413 452136659 770730835 437206029 502389608 525851312 711368182 511259835 668432197 379443064 182341073 556117929 45656392 28667640 924340753 69656621 584312251 504140803 663290904 367042975 430328508 222537454 797233620 377744968 631225235 509926032 787237073 700298836 626402820 288270405 189330390 1027710707 954590888 52201117 930085908 447890011 124776726 1016723701 338489365 394247610 839580170 268698199 678850975 1025932056 938076786 20053066 116325765 915981876 353378243 231571045 606684914 507464269 315418665 306630055 512623925 242981351 311196252 990811126 436802709 357778320 583935790 876629504 914340907 515262267 947312165 604910413 327081240 164174948 535273815 122813965 978896453 294707696 1024166951 532908192 425362323 67094705 697297201 64441805 751191071 3244479 662525948 519287162 33011279 30795202 910734902 800554661 125639603 876347053 860741630 607976219 1017196054 415462508 128516122 300876708 716147852 793190953 228771666 953508912 751340278 741135853 816345805 472971517 771068558 715714386 601018164 48365427 400572789 604171623 441985236 460735619 547087887 247591627 898163712 105286831 702232796 1051030909 505867566 834521083 837693185 587365667 683241868 500442251 247820506 978874750 1019945876 697378159 443475554 529119006 226282127 221850654 749183393 508620247 841591537 486575206 30444099 415132860 119706398 107830733 939958520 343165386 604462691 44304368 664822807 989460500 124025917 188537506 513238614 672017891 798312062 380584639 996256558 535824302 1032898460 935209059 915972906 144300263 338534973 916073887 984641042 688821128 816946357 720341707 5199751 988411762 749338445 329483004 630471073 445152664 844317052 1009535575 395357406 557132142 5681911 50208910 25915289 603424920 605720899 880384843 896583218 301230533 249477795 490662266 70353688 944432505 922945322 973810982 523568810 441069566 432134933 430077903 667117237 516897647 678783507 8904250 117239363 540368098 612183443 929724412 684949364 662503413 990426663 162735882 576159819 992917587 102755176 808651514 988595546 1008978947 494415383 757240709 596512787 699702097 59702556 797653089 213550036 758425418 316904127 201135753 374143334 864108794 511656641 754962804 940144366 828657771 211823326 850071072 684816266 591734731 159587390 1061672467 733428393 1043698035 458623715 611458631 504052370 1010509641 821555645 1020496597 139160148 197137315 808921961 943995622 769701741 300056630 757564038 395183842 116705956 516922907 844699384 691376751 955237544 474523545 20843986 766319697 271514404 1065054318 996788011 778292494 371796964 1012549319 807121387 829674450 79193541 158206796 943495523 981525513 339476664 145102770 291848441 308186369 741782618 909239946 541273037 585872921 125992969 979216367 960505159 253566168 229632158 961986534 270665978 850996183 264633401 1034817604 437383187 790758863 755999419 1056119632 900499156 589562130 981732561 701687926 784893049 779968774 546808134 1027493364 181649698 649138175 280647054 612564331 308770784 135861699 929325735 538080987 61915683 202158504 527105030 894683613 805749236 269004177 1062030314 696564534 191147169 942697968 537190740 496974703 610202040 731241338 465992146 934916391 549527862 798568586 821023212 142226285 1008027493 338216061 277615039 436774166 171569738 598091262 360998193 600977664 416231604 403107788 134759861 450678517 1070289523 784243600 237416236 748919498 218169769 125318949 249764529 1019274889 26332302 104781774 307191095 434552063 775673409 785063825 865085356 57886034 820841736 756737317 726997610 496110519 255443764 200779765 195208843 12026321 924705357 493255958 1019572821 649798742 646321108 649370480 910480135 748865587 510692289 541480193 76532466 973987058 204154128 636134950 936373790 438067726 561788191 691854807 910505581 715222654 683870968 957057876 726853585 379390793 655266716 43781949 513340670 497069482 868378023 508775858 690292053 993654460 380203379 198413499 467599845 354245402 514883171 537342331 859834658 1047571136 212183612 552092197 36015719 333580597 686395899 408693517 482232734 270423297 1060926286 349500046 67088854 495238877 896157270 709819344 633336545 560182609 26894702 498182791 914546756 924797954 454804365 672879810 472791415 1069563467 624003838 724909111 922736268 1039260909 491776758 595100134 1027215641 221937283 371731895 534039343 804916091 1052232512 316037221 880961667 1000114457 787018111 773101955 531071342 141312000 937194516 149806898 432518369 283369528 264515268 6699016 829174248 93063766 822045884 348839952 316817209 306640515 732152599 122307753 673010782 578612099 562678675 60181012 423683841 943789193 597046358 56575515 14934776 258690421 411515807 295096548 292416147 183623813 687791774 73996611 846304629 976680689 147651444 285306670 283679755 116259371 419441244 191575799 927757773 386400190 141564146 753404270 806945467 583935759 1067206575 439710884 998787281 897207614 845335184 421668136 984531132 30959612 434186429 496237572 506318829 369683382 412325975 636863213 313874505 30363719 400755434 235322392 226658728 965476146 967845827 21510371 415023098 1028515504 608149527 93846385 104743176 345522025 1053373757 439488717 784568040 72225101 761027648 73772828 1030571635 1055885403 413555022 787406862 412136014 478942554 482774137 828689410 431205856 794594799 875082596 454472132 397649035 297582622 910397562 983986274 928907059 710013086 3711324 631849074 1045321441 591355613 872378117 371831151 478136649 1028235663 377715836 115682503 540125200 671308255 448449073 72785686 201024164 70400589 368580927 615771742 561163815 206077651 685351352 621104317 1014668547 377966218 1042677359 1017771615 931791249 721513766 481836271 526563037 96883652 320496634 82151238 1039287450 986122809 195534880 177415712 25232296 257923587 920931425 134734406 128797523 516297842 436791619 360698315 684988927 486503810 736491099 414964506 188242258 597113330 957237609 730059927 573659328 515651641 1070943425 372760700 344510534 566887694 512733739 168909045 802479481 160334899 733325039 606461059 1063970164 820441390 102472294 427321234 652113534 600031823 141831154 611965894 539588345 270455796 1043938715 964915220 695377123 11842271 937848154 599291287 298784797 447125051 584204133 473111111 559225101 263487431 788276145 544456321 450655923 143801434 785895671 253183040 913536671 178507443 902252723 500069253 838751691 181118946 150484735 262412675 811786659 18696134 904903964 309618321 643645359 357072729 651103048 720424760 987784509 772533777 860753662 271613337 246350947 193737689 403432390 827466206 643194834 89955895 355246105 747962475 165428454 489638224 972292330 432893019 175237508 759473290 848245057 696899525 804530050 147615083 979601458 398200727 641414425 402614837 597676923 29347483 1015764764 500119457 120457076 494892189 223257656 582386929 798408053 117423125 103787098 299764454 748030224 1048285886 596230489 136280433 601230324 306235465 286427268 1053710063 663466591 791037980 752819764 453942273 335925162 1032972537 630536466 746161135 385012539 702596773 1043192670 876439398 682767572 812351281 606812058 959497498 586668372 682542975 496872956 1003833951 808444267 38510950 1048681181 678311811 365415930 363090494 1045872588 176309454 1023526505 787700352 68875520 140131333 187420748 796566984 624949117 180220535 905034682 238802851 1065711533 571073839 893392813 37626274 334039092 399053882 157834367 427000520 581011291 678806486 343804722 933544965 566721295 720128005 168645984 249525432 920273230 109216272 999023318 780867305 435316997 473764372 414920409 541719651 656617709 857263608 1013535856 906675177 976146930 59490163 1059150083 669466506 884111289 705295768 290196390 167456914 375217289 573765136 1021373781 468871650 93697272 904910835 650008845 167333072 403198440 633680839 682703009 14704099 643258683 654608986 161064358 142170964 644413154 600274308 915745253 506717673 821541442 914115825 115879530 445283409 828292795 874742870 911093614 617649302 140188697 959307494 565166731 867682925 727379333 139978425 488136924 328540094 201108938 640189444 151284869 858884375 841059071 847019692 1000343450 890461198 105682235 732155669 125311656 8087155 495532562 452457387 432145360 57359055 342041103 347848895 950656049 198346484 164155401 625763048 332864159 333070399 32853231 248540745 736536859 571209171 840479533 687410202 822311416 762821186 407330580 183154662 926818711 1034654333 794393817 387545287 358451312 931436578 17431082 378067299 665110631 405039581 276134469 641899180 1028049343 111576612 989402559 738224770 23449214 120016261 444620461 403094726 736322827 455292363 234463349 812809915 456019403 1068396243 279462212 205326452 166754164 957538702 197738619 334014599 606998528 635640593 966095550 891878368 34165610 31540244 224646206 261835375 87610330 421946498 200316377 312163043 604276411 252336552 336244988 66897382 589778863 106207746 239581981 738985395 13537944 94209510 75013234 545461225 233814149 340611974 205096311 878583487 474474914 589887593 544337844 734521603 943220376 1047676289 769929334 105251916 459095783 808665679 423140617 331856849 1007554109 31529646 91098243 145180451 53634126 149195459 1023969353 457466439 481890890 1024028770 742514706 974531159 335858088 47897336 127458929 970790197 387199201 7791583 374389817 622570636 542077353 478896239 997816560 1027280836 50919389 397577265 206578953 138582665 778034946 853953406 1019356869 816457643 36386363 873068142 45729757 467216544 642744073 708117816 212813209 427297524 274842012 883122992 993748970 166795351 543112190 692817855 592211310 953104495 889081494 60692850 93000299 1035146805 989180172 440717485 1003710966 1023452311 434706480 617756824 1043164565 16860716 405369083 504739865 1053612710 475136832 351800416 756559553 811844813 714037074 903398527 435826164 466887007 64023371 35992766 332967840 689686186 913363447 518644996 107715067 1049137910 145225218 147709599 516874352 857110519 936463492 823221936 119898966 631466250 761451590 212548192 155857055 944471920 591727600 33504452 859091986 899337152 316825803 673490457 292221149 579415811 608567512 40007298 246630456 1051548660 924401404 250957971 529707319 454619064 294934615 1017816645 131867432 193914294 3303033 972418320 799694135 388746375 959161566 932892514 900469951 678787631 179824604 388046548 5261123 532510760 1017091036 950932877 935190507 1012110769 177966406 273996488 253537407 566366951 145085222 410162486 87128325 669767994 429287480 306867253 124619743 374904368 62497237 403033407 473578588 181695388 617287483 870360781 764878844 627063072 567318905 437752759 941646318 561112317 697716097 317031549 344922000 861906730 215595181 673466000 987785010 818982012 476231147 705291683 507212426 698486129 274240023 806229170 857256428 981094940 1068530881 814410232 731781309 19064502 268480659 57635592 443969806 436257919 965577064 865483451 790253162 564400820 822801458 735555293 1047653869 215310705 74464732 615264783 253056749 305201 508399049 718009774 407960702 968672165 884900757 33251452 55346423 499225425 87428845 604300007 539339399 424445678 233016373 1042151849 15728555 452468921 445626976 773586269 279978661 299080322 859361636 497624706 379431955 1019443594 933731291 341120887 33385668 899309604 597772462 778052409 730250221 550406117 355094392 449264131 452165903 137212223 537052729 359041973 957797722 435195785 334216315 816717852 948893242 428800650 989052710 583974747 79674611 959350290 657767906 757622194 310483243 44729256 249015277 596022587 320869920 943470233 104869827 232086075 853584456 3023506 681214542 27277374 245365828 811481071 869359143 621773588 36912097 675864794 210477118 12381342 568486571 91301808 663775991 718923556 909600181 518591439 198255256 624657829 189741717 431098720 676412526 278759849 856305148 23696608 13679738 579948578 987349398 343064200 510752558 20755017 1014351134 502129391 988063406 61701755 690562591 924080237 80379603 46087047 356122620 380117166 546263457 109074453 410373398 935141287 538152863 1072109257 577558216 216414043 855851373 441104631 996298194 882394761 377740329 676361291 217883452 550923886 1035993613 260193147 890539287 974271074 211911273 14273619 1070842918 536433315 629814452 255577936 665480438 292858153 397128604 444082338 956834404 79778856 984517185 5988533 646798549 721496008 707364316 74279991 867418013 957447202 199775625 339903424 277678136 842975529 643963045 929715406 386383614 386850961 643667735 596918353 475265376 531914485 374508334 257926433 160981620 961595802 333895561 207176401 760961566 763068922 502103302 667924530 565550683 548665547 891867369 209548933 119475614 400285625 1005013097 789327985 117944718 19045970 326486336 684846795 1031546424 256557770 511678532 287898301 52046564 359090306 375640236 184675566 354307848 173913933 1051254649 792667467 694821564 490529118 172880616 379381203 152250143 670243414 464049039 527537635 482879723 876325302 899319965 100392749 614504731 838130339 949745738 979040055 761239911 518429843 324575585 1018683020 377264314 986933097 92622117 733162506 801673347 355242571 849313087 31100641 175428962 427487824 888029271 275014879 204190489 120451718 166363499 909434909 755160673 176591521 387983665 971991973 582936522 524707298 921255528 635071151 782756775 666666256 574264398 664136190 266360754 723244696 420849608 737217084 237954343 197048385 443641205 390038830 417566036 681405295 652176245 610053886 578479307 2004346 756352084 511038903 200861903 330084767 502256547 92500242 35968764 813529885 898651309 954576723 399106515 154169146 144712043 592541643 498657026 958711172 650305121 144674500 220420855 494427632 923305946 672554799 327579613 646337686 671167642 236714694 744365437 530496338 449884073 429494839 458771848 36275327 575621643 1017339429 145210664 866806869 263896562 1068264422 590437089 623690321 699602607 1056147544 1028851566 898363569 930431110 735114907 1056527214 120784108 85955697 816081688 490579975 805965636 202347543 263453066 734992363 371624762 1002367493 1068718488 516010066 590186233 333067248 480120956 1006793195 750873370 655755091 488019661 769475015 902805151 789360764 754972259 387044063 980387018 279642848 74846539 1033613642 288285191 610226627 612019954 531708215 6496494 133301090 947689796 783761301 942710354 455979130 900185655 990768471 189824932 203343107 553104240 603384435 903210387 775442809 1009184069 915722033 352033603 802792260 87810151 64608308 893268314 129811341 636502559 132878520 583102863 19691681 152529540 793270702 61025930 423918641 189381222 917800831 591231688 1062206643 814599445 591808221 887944854 649555197 448963230 217896365 146004551 922525461 480821996 1064014923 521574493 583948875 812119178 728392419 584892057 189245939 743787402 799642597 335176478 35010428 570445233 912075788 47671654 220467797 753057839 57703301 569120147 783756815 348942863 713463617 966767993 183844831 702763157 771334394 942898623 620077547 1062682712 590552770 952252884 32466359 371153473 371491045 465231441 554178806 220377233 880493920 59212549 453533988 574079781 647021349 677671499 629308877 448459030 28245494 152495413 335107783 580630914 161679956 512241851 406437875 128872694 147832654 45505792 542638128 469957317 152383011 1018257969 1049102268 309562132 171785066 534710331 191432586 650999855 960326118 347744491 785952820 160391077 990047071 1016347511 328855616 975311126 68201099 755892871 668231637 996392227 621408671 1054828672 917126201 684959356 143791151 76935575 365100805 643294673 186072192 612270390 496536128 1007469849 676388022 434680116 259818086 721330875 630102254 530309036 264003954 1009827743 386991509 442178402 355416276 367060890 313014299 598439262 289699387 872429329 1064846321 527429965 502780369 289284685 295037405 2613036 504575718 833173728 113875831 412144386 938517070 308435903 300985563 79184880 811048817 968897849 961474605 165495115 441390979 98455623 597163605 713535839 1031209138 20030257 661368969 709734044 533138902 331496426 646073171 801923978 654826219 186210865 344327976 812571068 320189834 1051532661 521940860 676282740 320385000 742649855 328506752 61238089 820290075 20556223 53010818 168701873 589655322 147719576 495118331 483622725 911516559 846577696 448353723 514451324 585037517 503822359 577110838 978301697 592807597 819962466 807859072 1052384258 406011512 369320777 215916266 576851145 470360845 693320916 209258626 39685899 277069232 250046666 30252638 76165553 794714048 71960049 544454666 972189058 1024587027 554754448 847160377 34566741 508830156 250152519 591624442 1034306191 1037181307 848794344 987677727 702392610 733541129 345356438 1009019976 737685262 1015568973 624120637 495909575 539956108 373940954 947400538 812594589 667770548 80780362 801714998 393249873 395216081 582099911 495382948 628741410 179604844 361236795 954340148 368112303 554825841 387453382 6358119 245722975 422250530 976296822 132345480 125010496 483499752 508386141 1009564364 54518601 366877680 129758293 990056336 572983781 668637812 873446318 613331954 651337499 403496282 692082171 923219507 318497532 873952547 546347190 138877929 610624800 484034371 275614228 445890703 740700005 897690211 807767384 273259311 763656545 856533403 286970867 169296847 286489585 167623865 286164837 866642619 1773573 16612340 431226345 90209277 1037114120 6039017 987729525 542820329 567657695 158252505 985469408 325473836 854114821 981173351 322860263 731913361 512960506 931735389 105503554 473217931 469651589 245998202 967771724 832802735 813312176 776456429 506464883 115472718 321933195 237399459 384655955 30936539 260710198 927089652 437509906 86260746 1069763344 310328243 1067003405 906539725 698510140 511796130 710364895 71984510 818270640 201666083 492505744 432098518 69270058 832051938 862034266 777546767 771595457 385151198 897019254 711713881 966596034 155866423 617509896 953356999 679711423 457930751 435014855 294794280 30079143 198913820 842972512 549275319 430920988 611955603 421375957 992128800 724720020 299475526 438254787 416243667 257654452 1065180625 148887595 940588256 34338789 825260265 571163706 446490383 888774703 699854538 490815073 542244362 739998071 643602742 638959661 181304483 993955571 600839894 371330833 568151588 76782075 1005219712 482516088 319752634 357680835 381228566 724196414 782297587 999740436 768976344 285753632 525604410 423131309 1039106460 38835306 615454130 755569264 427164488 474843395 556024890 1031292594 60881694 933088136 628840284 1001225209 649397776 309379839 284930140 559037905 940678774 330013919 571694339 667996435 858588116 227391866 493920528 265185791 611071818 1013456613 719769096 891646768 263140819 288404450 14251893 560025978 294628782 703814863 565332243 288271051 1060228637 466045572 807760227 604035253 886440561 859741060 802370924 812940656 531927342 429380183 343557590 1021142907 69505278 181175489 1007140 262765703 276503101 831539869 227935505 789555244 708920198 926524514 327701806 114031364 676162043 238337381 368222319 920405658 15850642 826812763 62754766 1024774912 634784719 916962075 998910307 1070334343 103394136 532156541 48455948 511312137 879614455 6576396 769702397 903603655 979784884 1057680770 1061449418 115780590 79270114 305193301 1052998739 840149241 1039610945 192647346 254706541 891485462 90789972 1017415744 115576756 609142755 655630288 881502301 1015212296 142243579 842388708 922484697 165785135 293078530 605772717 13773095 728697736 248971599 710161060 247980671 494252042 1015038368 878484081 254813860 802933648 290356685 101516002 454737783 327047057 69237572 281869453 951088515 922910155 906788862 591630271 1004754214 944263353 436892279 42187069 209532048 873108371 348642931 763985948 410659326 517434697 546340757 189945965 478714958 816053753 682578396 77127635 602781759 1043792186 188579343 491392946 877491255 433726902 728415014 999523031 524110371 608488871 670876492 784131230 964177304 139267004 103077028 836328162 627286039 770614834 840475497 10331034 725688161 734949136 952406890 245348838 453707992 919518693 411279708 307316126 147472183 169574026 540929895 844796506 827520277 472902751 243436722 312022030 468484323 285252135 822821734 1060096296 464731616 792523778 263565906 298341451 930993444 691019657 296574582 211666474 185462392 723508563 1060389036 1001758208 41761063 463272997 813764763 63100989 955525173 320191313 512546029 257894385 120471822 97022357 345204031 285705579 451734618 227009044 471794625 402250680 885759314 1067538224 882188641 949426516 511873137 99761314 122818071 815385154 218609415 1001403217 180881791 754617500 358523552 799381082 182247895 149346054 156971525 758580644 453411754 727067906 107608149 392027764 598807218 959498208 511354942 428710931 812467854 702099375 921774590 259258327 485352868 33347549 269611803 791881106 738247726 988925296 254154455 648982965 520306956 1018654736 791662898 488063943 626191327 837457955 877858586 110909688 944464887 404475218 797484635 926029984 9418233 824450605 652075476 199164317 8215431 983251333 570120348 1066122480 579828772 1065758320 81047228 989110779 222679609 297811571 790742252 582586318 81394071 507602738 984216507 134756668 177094917 616699313 796241372 225408766 747959520 69562858 1045712623 283301775 983773859 168160881 59365414 783206038 557875009 31450392 297257153 117081181 613765504 486903658 551413754 855268040 335652082 271524472 1001054733 939015055 706990501 795430644 24187702 401826423 787915604 486341080 211880983 947553018 461252468 908225876 65694980 122803117 895877115 532731969 141683338 145131843 584580567 176218275 26055423 958461829 286735679 1008708805 508755171 418022531 1007289835 318689422 609588905 840009665 630606960 190328276 942249170 389809773 17917042 704374631 652447311 394040432 49629062 286068310 984395597 92797530 1065485167 556598566 840234649 565658677 747154384 371161708 443921218 691837806 354756633 131016942 331609633 840816546 382640715 619749634 1049311575 146349807 633228182 440292144 720526622 861595709 947742730 982145977 538230210 467681120 202212724 399861195 291128272 1018700327 835249722 667161566 979276936 62600137 386448543 67358262 47862159 868481877 171756597 457644105 411014442 114444168 281987577 1041241241 79007464 1046275423 897229632 509611 1022018542 739504961 405946576 597874242 405067496 615131317 599823640 1038223347 171626967 167281463 103343028 820733468 22726614 757646965 1049961822 624414175 460591165 1057855058 420510515 749303200 938469418 429741386 325113205 432752288 319538600 168260976 648129212 554317236 559428937 187804797 961831398 830220823 514339661 273720204 681941565 1020678158 578887111 538694022 747044441 722196493 722499248 354950700 168115702 64567000 459285328 1073574754 63314454 192571850 382420591 671628992 125430707 901808988 662918462 137751411 319299373 106408011 251815588 1032991090 1039093447 556550408 1057641271 738377302 273441337 185704367 707938443 333222136 793274046 397229449 957309056 720676982 1065250974 935626133 630768299 729745023 37700075 636001591 120739139 597435696 826525111 177252919 656732250 756152660 618216291 120933195 165798923 839534738 41285243 430591848 451678193 640608629 252999418 938285021 871577053 40341971 1000154063 950476280 72914600 48284642 951091487 967382673 947615880 544807872 52975995 576190428 227142333 537742677 59587351 395890264 830445235 106546152 1039409080 925017183 1013974918 160171702 863307297 149818412 541776768 515329451 756299049 980576765 617037561 381558550 905707722 735619691 90315520 237914151 134455649 854188117 883361413 839039283 769468417 550425164 765263377 50989919 344891647 611623295 734470543 893518056 429070623 985330139 698164454 397399385 216126843 538986279 927185747 600230795 288488550 191745562 133592856 194892317 766017925 434628630 445543645 829655371 755912909 882758118 896376013 750371085 905208705 715533557 370187440 596065303 582680194 848416156 1064959965 355294933 225508068 206568020 633812155 371666943 662252560 906840434 476626777 660893023 825634188 923018716 552682186 491439684 739460205 754794827 318478763 470101069 247923372 728257524 325387985 624438996 613896824 330857520 729551118 87834312 397400060 801294114 1036935348 512654893 987804869 121442745 419053687 974686593 594226943 658680267 740599300 600283229 838353220 310922001 770136240 294162027 952573846 591289383 273547695 1062477167 30189541 1032035388 649566455 506908015 270726490 140945065 889280711 540885110 747263322 952930518 1039247980 794880833 87597040 737619269 679799924 205008061 695398594 931623766 14494649 694012885 436591957 614557844 205841446 419439794 941119097 707939564 1054231830 689970525 961090190 1009891579 890297127 426785854 563250661 58184694 1024680855 833290642 293083390 770664131 80898245 32308342 562246156 626661066 969087091 26719426 190085055 565501634 108930615 92718534 68725605 206801666 1017374778 73472648 256210365 228372481 514615627 963035863 1069028400 235944802 843889603 475051566 744029821 795522094 663643705 826251727 788986026 421023504 453603948 368888451 815731547 487336231 491782405 694227862 757819318 769771654 321716724 920965090 259038852 858410484 225965662 894937684 408771880 664016691 721994791 409010307 106877036 877211594 853760114 736061767 463673370 344611815 302342899 859016777 836724357 671178805 387831919 11775783 962082922 569112871 286675886 762653736 356676922 189115078 368991161 409429012 776711487 949792806 524709556 668263096 946708961 881478969 991921160 895101391 941163888 1057786078 137100945 710317871 192581305 639340751 1062140184 118100857 818880681 619779464 1051226696 456633663 994619848 308779146 847909374 748612870 128473157 386300614 253730962 781495114 119660158 535645118 947247047 809053043 177853368 891962613 915965353 702190784 575630019 227063114 899791323 768533094 287927223 241764724 919790292 593783331 241396043 948318711 598325806 521290643 744713434 548317497 597986725 311172345 257523623 263412817 609630713 41748228 720511980 875596161 363963617 310443232 1073697605 653297826 1073033360 504736099 501482454 548344435 943617093 610835569 458065272 811383281 145892726 1021446832 77932909 1010058544 650766243 1024831593 238647157 85764660 97880020 908973922 1010467742 859919073 1048441024 926962921 939858488 894721180 265825962 35253551 2332954 57992259 932553475 460914028 1048962695 797243963 7067606 572729908 545065069 869240021 691427845 896769263 633433475 220101715 504052033 696133698 1064468826 588405900 1032414765 117291620 986716823 27440591 304008083 177555167 830378648 22118195 41490146 974830395 871292362 209614629 617589523 205964237 120409217 829724816 750509657 914457742 514090211 240249049 589133885 523688084 560341000 722083894 811085302 674202817 292207816 1025790427 509164243 768067690 960179698 540358834 830017178 874214673 793646433 958808072 111926933 712400451 512443859 623993668 745872730 177182744 1030027090 559102400 542152798 664691914 368315491 334749728 848479405 809266136 855119415 861045903 791674686 583433608 542124165 770352820 290476506 387096531 952055415 1011029509 16369284 639064722 486767075 777000816 498062218 493843895 168788135 847324954 270663692 978889804 110173296 662252437 993644652 329248148 10297422 460130781 238143242 473747166 769861976 964947645 489396297 975630006 247739355 445792060 733154467 756124391 915422037 185836156 310430214 253564036 954553628 55951516 508654285 244820794 17026624 741577141 61103387 1072895580 160071264 302671419 894705624 675417712 904740741 867013605 605207659 974539016 907194707 409775729 851476614 215636707 624379805 839070331 31739095 215587421 180324696 704763565 958849664 651258261 606744131 1024563774 106766410 366371714 853291320 538898957 1066897876 248797212 184225719 214731087 688502035 570687223 945833608 681195833 860206556 254638823 306619783 834513911 116930086 817686808 152043613 1010457541 506788992 330037513 459399134 1038371220 502250031 378244800 249836075 52695244 671712953 909518982 984756328 1004615166 453887410 956081252 589803941 379804962 560527888 717971530 198902568 333407094 926853597 848458650 915698509 464786105 636409767 287244250 207106318 424748688 935431123 978977694 896103074 435407825 834772543 784447786 286446622 840145204 358903290 124274763 788095174 588264527 184223500 753043908 195588766 934979298 571990217 242216403 759947474 235356080 132714199 661030792 415405087 982203361 452720508 229822748 585637300 414798303 29285108 674478422 458796793 658036324 691756584 256278258 757820744 88365011 972617347 855129493 780380248 744446930 1002767605 560046682 308655289 324181400 484131222 930812049 211291454 525558087 751906949 457374665 498596153 114802660 240881294 978760437 763795990 943825648 101517537 695894523 90838233 241072491 964265461 864504761 25866015 1019656669 564491400 498287091 833293423 721720029 264730694 858620467 408937884 456780023 782730188 777218661 961393763 544919440 144340744 512819834 976193993 200541423 360325096 449400023 949771115 44081837 857835708 986774418 87726581 731659899 476224340 675186453 628572984 588000337 1059470020 3929006 539379637 149573855 530836688 1059005707 399572533 559390231 216633830 605315833 607029214 970415715 11548744 278443188 229683316 686934672 24078894 67065797 182928925 513818197 631824638 646860627 916913141 1035115367 319795545 213089083 608300057 952592853 543403879 203633747 101113545 131334693 634889843 386982212 845319714 1063156012 557463095 1061073204 261795929 675544785 378841079 1033799744 987573459 50117228 613429982 41703352 110439059 760522087 801281763 189267723 525430010 926339968 284285086 679881171 352542079 574739703 585692522 446888474 508398935 440392515 343439514 674771424 594077740 885564222 134118818 77197864 870836424 594653473 256280885 796392098 987766314 332619342 22902431 167989024 723224411 133152203 820021575 904031699 810841766 915789708 359751380 231326589 609623422 526488826 352496960 883844339 1001167847 781834892 1061563284 965768433 588718228 674013209 14181059 392932550 364286473 354499598 174390974 102419102 11592548 544788051 429859960 60893838 1019186144 259752146 956857369 1054153521 376652350 449421146 552417111 846031372 653438689 852966422 794787354 1012875494 981759164 198069588 570974117 103681474 445803429 30769583 105445616 576296292 317529484 280692482 523377921 624605459 821101314 94077904 790310196 508101694 558930388 885168994 731036996 154954446 181084575 947969778 949708727 994644861 760954198 591763662 948169024 565439082 414821627 24896667 204187683 133188688 299106690 521321202 631186478 248615958 976936277 895268138 953052321 748102596 635294545 333470016 940460164 777458930 559919148 471137373 495559756 792010199 575537608 848707266 653650311 255553458 109330443 468151715 896966948 851077620 766269820 890490518 57696404 699288605 939056550 1017867800 705023593 904336806 835011314 367340972 386904090 799497446 1002913247 558522691 337444593 1005700370 614659454 506771572 972220448 573430203 722200975 140912084 975711101 820816949 291817670 150828451 752526850 836763768 758993918 190337760 370013889 486624559 105629716 839389914 973189305 308500431 101458382 660758732 525243430 969984095 570664038 125293024 919746970 424094270 40650454 794644137 465724194 386417573 129861584 579920836 883454454 723782891 812841067 35568912 74833361 1001554901 187961576 770253840 1038616034 796284992 122200083 509611948 110917015 78268723 444592869 425371538 555661853 82999755 169435857 599509282 1000109441 495966437 2339921 519458985 420510952 44611610 1000698200 748643641 648228080 983587780 470170137 366700519 908769334 489517604 97037948 491792055 53005223 556008522 777118670 811538627 791468346 1035789456 151601147 568946007 108650209 1014752398 1069593326 224707538 309291946 1007674461 320885158 617803391 583176160 569471864 36733462 764276305 321540252 999808019 343413808 699588249 282242166 986519558 117558585 794684427 1010546588 358191607 965522467 954322372 528894446 765538664 754792648 531952249 364954139 46102120 625525071 82288139 631192340 1023732456 111469942 529617151 517923615 69350870 672479439 429201528 998175967 259326744 490739982 1036056263 995783949 729543004 188293776 886676883 350783776 630208803 824008404 245365291 88888365 532774217 311030718 302968763 747266762 868506130 202330622 126041574 559655683 304225311 131939281 137403649 659454604 985637043 453004001 855016071 397209306 466801079 627246455 684936395 490707220 486879394 96161021 866423713 978910679 577499641 673522832 746467022 66854344 264191537 580372449 875264135 629135644 291140702 986898915 256339264 1070836641 565511671 989699843 940125264 768987567 388096694 807511031 1041642194 664637999 300941997 499801479 970192952 968644643 99965848 1053770656 1018021071 891888556 492983596 214902334 538348227 479440371 232225677 632037614 156281684 286175926 915724384 1034840439 466317866 358863282 831827357 631788697 187087114 377158630 971310104 63252785 468891486 919344626 822921053 478423707 836588310 819727285 123423210 872082212 816074155 242916536 136876616 322294903 879491046 934111173 533955023 688815002 183479473 580272263 271591965 43735362 466837733 235244645 818255436 559603181 207183565 90252331 305324691 37914163 781861039 459556285 982503093 690645807 325106607 991703207 131310828 379634448 24846211 987199423 262234887 354334528 854701313 117482454 1061733542 738162239 537428489 417286904 447496319 187596353 649595708 1055182406 542343185 456352824 846940028 60293025 725559070 380304760 912561460 700671588 383387348 792912981 3508607 300206475 569980578 195713795 463429854 808064173 938281953 805494693 1073233484 6041253 692575927 331424188 248103612 405822078 886935998 259694820 769946554 439559421 653237348 193613563 163681753 191421363 847283007 335872817 448842944 63771981 857550034 805276480 250430470 61810253 678226719 140313668 410631925 499808656 297769851 699209115 1042912009 584199038 480623580 791946226 90791784 407732734 570289806 23405161 895036140 5251171 117155088 162184569 428397405 122846916 874870072 163966464 911833002 439829221 314700764 780328649 902204905 944963491 637922711 130831976 839337974 599133087 1033907350 433953851 47269239 590394838 359038852 608786233 30525345 64853039 594354308 838245506 280478437 87949537 291937776 482405998 89366691 582497190 665305496 271593726 1058228620 329415339 500840350 685431831 341191770 473825091 830185991 1027019603 1046641889 667400552 407327054 404695885 734807639 322775130 209984712 594392833 806020426 746045200 242206923 1020049481 838041403 265661593 22172484 584110342 407214803 898651506 100610787 134448892 387881306 1019270900 894863686 774798773 1050196969 230064983 581552330 637974349 240785435 703767448 854032516 681852030 417861911 51797739 151443383 36607872 144098917 67787736 946110939 223981687 239299896 244332713 260587298 179107588 761786753 568110531 50182257 317413539 415188053 724321259 339512975 688703429 78816758 982881389 46257503 885546272 769801031 216753559 494403279 34348953 1011380651 286596771 509253198 475338742 19804261 1034519559 328589013 831077208 532747266 308447972 261074463 303270366 259255756 1073393189 271869185 112935732 1009910579 869486208 923359279 776043411 1029165399 51567061 939629122 346551623 192588896 1038013463 366157115 231606707 189115466 618939169 257317750 359634723 601732781 733507160 49692176 78057407 449469096 1059657132 484184043 862574628 604397371 177797348 25847745 453270824 352506710 10046976 817433891 804950517 486352724 670777376 723038154 941879765 455602794 961775254 143298966 352035949 1024607092 175100098 146830462 756612603 952903999 631015380 635668525 668085466 100678965 121775037 286270845 134381459 934465953 492611330 655719356 741097598 23641887 185064994 254864368 697732689 135055778 219875773 873562225 49105157 141851018 606804678 611354415 205080861 1066657416 174131718 973633190 934803338 456365920 842774588 919809403 863590425 50122784 58061845 389100282 398509605 257207075 78672901 802448060 481617245 410318014 421431211 481494734 729417610 630153743 129805590 486047873 265626062 735912678 701497108 922455033 699691651 805030959 369926694 201251138 133959543 1028310110 220825586 246206123 1051663203 904282797 104149308 773986270 972545643 737481807 157933001 606829435 961853590 967041943 716643171 1022046343 1071912834 479989565 1024335911 762135825 227019016 74412009 410804363 330745966 691735016 1059410016 1051140461 61203180 418257285 785761389 210029134 524333958 916076246 642720593 364445074 172712918 295018138 537569291 332313676 572054632 1063864543 683870336 97459352 195069994 943285808 985955957 808421653 729024226 147822088 336157562 34267014 85971809 558839995 429365627 1011524182 466420025 493313515 485978047 501740011 615366500 364899978 228964578 391342992 791036096 625502257 446783320 94794912 63935371 270980002 894204233 1034007151 148548063 381409725 753266297 884890326 823948357 45468316 910357524 711730366 126478395 997281722 339810872 759118262 471665639 927356381 198905989 383260722 867690197 669828397 429902510 686824185 287002830 395115981 645418719 303466740 410946553 120679731 402925533 911407818 589512035 627318680 268220471 620276094 372674472 967303647 886146048 419035312 1028588849 281055602 861117250 254620447 533861333 704844476 930909324 604317706 899342435 828440022 67003755 408861083 201887186 243935873 848472355 575277146 89970306 413979570 425074153 265314211 110675026 5071558 247999155 524288508 1018436873 25654819 983087893 294985895 75258232 746357232 379397330 282871134 592507098 43320487 182717474 194684111 503312566 559995863 890828105 1070695173 925826605 1020443459 445291095 205781942 367155362 696857178 119142023 1017882418 435300314 248094461 826337000 322603250 1002359702 680766645 571714879 946645056 416972900 88106557 893736890 1006214877 848546025 460363008 708066721 205756423 695993944 75519908 628886451 435385659 942662616 576463004 1057597422 534616835 566754196 136307089 729471284 539590609 190869885 741383897 788903365 144127598 1021011343 436340354 1047032929 994883652 572219919 431226059 535556164 14804530 621824043 374493878 873954986 111313357 863564068 305023258 307077934 680855979 808653129 501070665 785707601 718111964 259676502 606742478 526139245 902572240 292301529 814608158 593578952 728759519 442723224 112856762 165499509 76583792 226355177 852345088 996988579 194188590 20500170 607832116 608729601 210706281 277860186 543605133 781177864 417257870 864374600 944900758 57030100 604330248 24954876 1024888461 625241813 521839930 116428177 452664221 708578537 981449808 683181824 911358048 293979542 844543102 455302162 294320337 207826496 336495868 971142191 652548541 777522605 1046634027 528733959 628682743 677232857 279052594 66478149 954245670 501280325 279842769 272357122 326461288 516480803 728401474 143311670 941256707 330733268 792879785 535265538 1034632912 327580505 186547413 162837185 834383079 581301576 271160060 319102566 855249014 143714499 772645613 616777553 173976802 21408711 1016891093 35256232 212653228 647543722 747503889 577901882 711917757 627105313 115352726 514199889 612756314 608704853 945011840 14269311 1070753919 143938024 492818216 479261240 943111305 179373964 47391402 994208183 979260537 794782557 118185192 759877280 90845334 798873584 501820002 345908443 959383449 927583040 85939067 979396521 333296174 395272449 319225567 433056847 957857297 116844055 1013952466 288388477 199760560 98872759 380841197 54644110 378014276 785411395 1044205066 617418355 102718678 136927411 453034296 132148758 203532863 193692367 507940039 527730743 746712138 973675252 779204065 650911739 920923802 32252698 235069219 46445503 216661722 292785059 244970155 811196311 569908618 964086971 240565101 692643617 408311348 665720704 678127852 250699081 81846930 266851890 778892681 1023515918 389668419 935163110 126034974 898393816 445902191 281796093 167731455 1022648914 727853483 125281488 622753105 568716894 700688250 730662702 607136476 249870309 304777399 249200679 144707544 1043368545 786013152 274942377 813449075 1011446490 604913838 341063891 429353811 784970016 14657245 179789481 100930795 364291464 30614265 755019080 255931158 883006816 358064860 924285905 985162297 434733049 959169486 490772096 125734329 388372803 639582063 376908010 683143277 23567691 451123064 329970386 318477675 151708785 77333192 1028810501 17743155 989144845 533255301 728539803 68548024 828111127 911899998 369676216 411423369 66890252 699060531 59091875 68545051 588246461 137480762 1054215122 33038307 455032222 556647483 371329483 981386523 407425499 902024835 429935719 366432444 737658776 51223457 534066881 189741688 385951020 534262360 752707927 172237510 803832761 335534932 419039625 942502603 678015163 145006601 402224414 1023185824 876666726 348396288 412875060 362222205 671678904 814151914 1031567984 200315522 142330590 33631229 525673588 984229188 95570076 899762308 1037008586 385402754 791219517 74017627 1019643093 557867213 490813127 184723670 705815577 671905373 526324609 206438771 477022631 680731907 492081745 790765212 263297195 466785328 874721357 1031163762 25898520 1057950313 261187094 614497007 16147867 344290751 321108728 176169133 17908244 599787451 391016827 766699864 537580557 1040972739 507313277 876477973 375805374 548944145 156927757 15406519 378441596 522512635 863798631 649664501 1069167858 614582390 22728272 920875992 204100602 1053393502 850319340 126661927 290894533 172940447 934743982 976638536 357885489 188162680 136847397 837913397 139108233 818464248 327042523 852568470 728318482 921585634 1003500337 937103362 685251701 455229874 52737894 429969003 431694108 967389234 88122126 915085212 579860011 733031995 592978307 841596199 17287547 903018366 46646252 74108223 988168729 385696287 640748740 188150527 774720553 100660850 182004047 667785451 319701932 290109651 833431173 255905865 24681925 673218070 272004854 400090666 675957189 64769707 1008150845 411406966 310678168 1061512207 585706073 242994566 698753492 412476040 925583098 63542350 1032328541 1047436379 618412707 535096620 576207908 202032762 749705601 566792931 479908480 786597236 596034514 80410130 945300415 648037528 903055792 205273971 23648238 49692224 338639447 1065108581 284947604 893081995 116338777 574602984 45609862 144413129 824713745 1025829200 953232415 581131789 45244982 759019383 506585249 894738226 38628252 124975833 828810688 566664249 267175027 973721328 494063667 508469102 174307455 876193597 918692323 250147344 127051675 801185955 743297647 25900750 757323661 729790895 776629847 326201566 1011625885 570849631 439703118 129056391 346152874 1040370402 313134018 12136406 455102400 495121166 798907783 327129715 1052931874 406288801 443007386 94679223 422698691 835623431 27297594 135841091 292659196 526088276 542222227 184427411 887536718 413082301 297703481 97514313 607622946 257820499 855987448 1023491143 712972866 150546742 427429860 475309416 995093321 678781618 891866270 947504160 99095032 963174776 715300460 372128324 179835569 1009923213 811232865 197286655 554632668 1050102765 302998842 151764948 357589838 904363910 861465600 364829719 500121263 338658535 95439872 961286461 45098831 419933540 651705359 320031070 589497167 334475881 761510977 976100063 15733770 1054714905 820769450 905505259 467934790 175175914 509305450 10833437 557214041 406167247 614389231 788077557 131147332 199919441 208132275 297756658 544433442 77725726 43371482 361523709 696274201 427404417 447596919 916612213 486304360 335174151 782383845 1058835783 350951718 909653902 901321094 375207100 308720962 224958998 299319827 722022558 351096358 781198351 3735996 116965199 268994108 990132532 688825196 678452592 478838726 919637096 588459205 256734668 1032354979 717183406 363874249 1025112063 169167241 713088183 492616354 1015596770 791717913 535524464 851296871 798388994 949646896 978924461 952324701 819141570 859356527 169618107 457723580 53087883 568908823 101866406 1039524590 132114885 245315752 337513001 458287488 126292871 1042696660 850592689 579895287 437037038 454535064 138058503 800852279 616831712 740407215 25096803 721343263 528052460 360289230 690067174 573887774 115326219 1015065339 1030546193 307271373 791776923 119578395 470230043 480322881 281610691 637066671 104025016 971838179 271228348 982755557 325582366 246402866 218634667 550015394 3865488 868871787 474792522 413546844 886912524 543084741 426329071 63563464 466621822 476141531 1066072769 281806897 771934489 511282290 665442217 424783907 1056617605 677959648 142319433 839239587 575680619 659824427 403956152 578805068 1060505779 750316690 668246491 294307460 918927264 759357549 358398927 247213686 24175204 262793354 811957201 2195599 901932694 576724171 459462396 138032657 944472544 77150749 930193428 432722479 229510348 822025018 261167319 657969068 132014526 414756595 447806628 181004912 467306640 1073194335 310863951 276361832 685866840 531038298 38312324 455472510 997259565 383631423 735679024 408138595 323158129 551314291 915020613 185053699 243478188 775437872 692161647 325535440 345753759 188904296 770688752 13814916 43855926 494042075 600502726 427642528 125826602 373846979 111552383 23677984 274176112 591937896 661517040 799446306 1039044715 591904399 611191907 137851447 560984990 146978206 784939767 396957116 807425955 837752311 131391261 24789242 959496428 366022409 374335240 207485905 811017337 842847709 822777495 800970092 644329282 70788463 718992123 642501046 572541413 478526648 964162827 771331863 789592491 830589348 813372930 384959900 248483791 769163868 863794424 639957555 555589428 138856499 1003844782 818089626 525743738 374678797 531446753 903639805 240896160 45027240 854631071 701596286 309789300 832173757 621586740 840888913 968083430 719430794 783863955 719309258 616243911 384137014 996453523 41340036 343678924 218217237 618716080 354850666 542864721 513414231 420015083 932509830 511863094 48859467 885319722 873366057 248621220 1020034166 369757026 595204598 171196149 525925780 292696027 300449560 864146180 769514021 72595018 326143441 1066867161 889805840 179166025 621932472 952021945 204864008 552989790 295146337 28949433 878696214 785323113 710039300 639849551 836558535 839244956 934263429 675557917 932905386 860648598 717182146 507334166 799439020 615243510 1020902781 115258216 637667928 759754209 37959619 946252983 902223107 968601546 1061042052 241781352 831191328 600718053 817137151 581405272 837218773 19326080 601826942 540719308 495855606 34042188 1025342745 23961648 1065112589 389350434 36252698 1011535777 813726583 539456326 918282234 284038429 584328410 231523948 1033401351 582624616 774672249 278348428 300900237 874526930 493083724 487205493 649146399 27550980 643479297 482598931 453840566 24641900 983883647 19675449 781761550 1032868575 969448808 940356360 31469744 260823882 273605314 873765188 926829885 1047601697 671553470 130655996 645850876 601444275 61991059 100594051 360386951 818703170 643269970 448081029 302657542 728716804 847977410 120129601 975747620 1007793169 798384343 606470035 427557516 488907679 888377605 804607682 741707484 222234656 612040583 1053768126 465718325 616736088 748056863 162672623 8907555 690087741 124352363 138481649 147850902 1026715972 996514757 67467490 606227596 646494565 676577272 356267044 39802108 666345697 961634113 900510640 831243478 307538972 552841094 401207151 1847198 376027447 499240079 899816377 847806581 854093387 596063743 745680047 403608541 410989157 666654854 152345556 213826765 346183992 808196561 613484667 782409195 259082331 887346497 261646096 874557133 521519247 929572960 269314817 712129815 861553754 710171889 550148589 231070162 317836617 345522335 1025744160 251389491 255664644 680934310 242939316 846420711 518670535 991208717 257335279 729954521 91490965 781675793 68759087 817894402 245734964 818489362 326048778 908624502 731800495 76131721 293461067 466593892 433565949 710116135 772378429 629159436 864537249 598240775 108712841 1069889761 324413904 502157963 819759433 874106655 1057826546 158873963 20138878 600983158 651796995 806578302 1018890739 507560636 788095920 329488376 69573514 1044636287 739715195 287281972 615711813 502757084 411507429 826376182 101716882 1056196618 475858194 917448337 497878826 3681899 279786499 508022133 878892002 997382037 83987322 318588211 834122054 382133119 929847141 498787682 562306149 988631200 409501324 642413982 815189760 757012070 430167599 827485775 990297124 1000772409 321867525 1056640473 841045626 111982866 422293437 36955006 902670356 438022863 145838708 532477174 65167780 266579386 71840469 15523164 596790430 434359649 33660129 593073031 868132419 15275290 346961681 16369771 112619308 945230785 62893528 1057729136 854101238 406062800 766339339 526319617 113952307 403548851 507142374 503531675 619493721 55378227 417903663 137841060 795092110 811732925 1062115047 273296833 778704793 623624678 962236257 674064219 297530632 376242297 878336257 596161605 310261968 1027507434 491140694 689244438 968880302 568880800 869841875 935776117 355588162 796511221 694325881 510404786 463026530 330684697 454850235 1070448061 151566903 991343099 11380863 973622993 873376430 951688244 90313732 1019624012 849643388 509788736 1048015310 275445373 281995585 651435497 507148080 733094622 875393262 231944036 433124886 255889671 244406091 355453032 810620320 939886020 285378900 272146157 1035940364 550213705 719857491 574137052 139713014 605321016 636727829 290859905 187389884 614300050 10057978 592559053 587321671 800099531 479303177 803521781 930948600 936080687 658206354 775703807 557664892 57827771 234559586 948216900 457974229 832850977 336213045 816133345 780517527 874480886 98597058 619759422 736918794 678292779 868827560 98622928 282188099 922337031 604599551 1055224570 706583676 539635441 300495648 118384388 851252456 215918829 293050190 368128746 294579215 391362870 904498922 496992488 517804089 992190378 69557258 761387635 917450598 1062010521 551831748 845723907 72402273 854555556 537978626 964057971 166294026 967216528 589470236 438051563 819613540 139791375 229136959 805327499 408980827 910613124 299325043 480915478 520754525 103450302 981418014 494490029 259309388 180876939 875220220 125816044 216663575 748486689 168713494 50674004 509294712 684234370 708017134 258475441 443859559 984644803 477826358 302395723 527407116 323969951 169460205 755836615 190212114 1012647414 891094151 233424754 719402061 501744381 634789127 776767893 425616285 911106291 379452369 728875635 455791287 123487883 338034185 924435751 921893823 343249057 1046924332 246598484 420752666 728741778 714231273 220232655 99848092 407652987 946378569 815519175 694045081 670396090 138905215 381821783 232431784 780842427 6527420 544568176 826890450 907809459 1033118937 745282391 478828342 206253781 323520915 10129070 358159767 467750564 986458193 756982261 717875932 935475489 690611370 520689442 904183603 260029282 720153012 832215649 765243262 801490550 856470178 129318144 801333452 586204873 988047232 874319071 437776658 355751153 983339476 472251934 991769217 891083711 596762603 1046848064 270236394 315404106 268115711 981091822 183332924 858094823 1032046170 959385850 185688061 743513561 391443367 496256647 250467193 644372596 897029448 862840055 205315168 474522415 965389367 944040116 367756590 58190919 406072021 128578985 112090836 624796988 610572864 918531819 526573442 30870241 893602469 280524630 560306226 696801819 503044983 1054323390 326888441 464436175 765825759 848460636 182514764 605284792 611685897 1048989453 861755225 357949786 1050324014 844366681 604048846 691039784 112514497 652058617 921815609 404275221 38296719 149356555 296331626 808851163 679075872 1044004721 776146185 1016765669 338468216 667752704 42940414 704585364 161280639 829952273 606629611 407552392 309224372 227826272 842077005 809555573 9880440 1012594859 1038867447 937687506 525593464 384942870 291309834 14134490 1034176610 973600317 101540255 828112529 216644352 882476963 703145995 836294851 17154719 847632320 383210854 797589487 947222901 148980196 191594025 45369967 942016995 966554720 536690144 431966 1034407284 79086616 273302759 627865109 351898644 514728350 159104579 32501061 986506321 14857899 942037505 76504060 804265908 38168419 185100809 574345674 867115635 808269323 323524724 680505291 408813883 284493117 837717344 989309305 685338088 1068336380 160480899 566280285 793365222 1024102508 106609694 265183931 679475876 949951365 954255779 185761825 543183229 331649401 250781648 292736820 580917250 360804641 578576396 734709506 737550137 715964768 1023152035 633922867 39333154 943939443 566486563 746104979 125756879 550292689 133067771 284719133 701013143 67976743 1004120240 336208173 701631873 729344152 442451271 703181457 799338305 561786797 439284468 548622476 450702533 93519414 91023656 556760559 397122322 697131115 300571918 49012865 1036747660 818448548 246569124 826588968 1017233957 122033724 819456946 138547727 257305660 333003361 877095032 703805011 211272092 896725921 997581488 1016087003 645545748 529634118 794966187 182247849 217387090 454239136 804713882 339982804 196800092 196570751 436556688 328139140 278616495 515246011 922243159 691773883 77842129 724850406 47060510 317779756 155504944 794847965 672241355 928153356 372207744 978770629 251942766 714670929 868895359 562467836 201387859 285282051 919412604 403929769 198067213 201891777 812655090 20132929 673561405 28299999 1034111757 540513685 863402580 806782935 489696521 942944085 1046013783 330818160 667890930 294345073 515586543 976603489 125741375 819819509 257128165 417064517 1062921819 101602578 240824828 88600994 294074763 349464923 297471319 849017878 474470152 609320653 658599045 915020304 600492091 52355568 193508252 1024307513 288191285 529777630 756680842 830929114 1034739730 839346127 416058829 262042214 1027660043 260802172 296400507 557038821 78593433 997109981 692055961 183632058 1053126621 295934256 964549193 57045399 1001454740 1062780053 872560876 330288419 128031519 737556356 125512399 935731986 805849502 765829400 647685232 411576529 796765324 678721674 510976670 63572211 389345542 382418364 260547771 712541572 426869109 817717960 365312547 283071065 311947029 130088327 974269899 714025918 88591761 10574077 786849656 323361335 911757238 959305034 966144612 599168251 777554318 995099302 174425564 243813312 961157656 1033747270 571890037 166388904 66806228 201014818 936696750 39789858 466714057 467917002 719389552 1053244002 231410485 363550347 354213383 964161953 902281271 516375081 185431378 278021008 843256098 973956962 1036204858 790390045 686398215 401240575 168488630 1055373602 886941150 407095647 507277905 574502014 530257068 434703513 691933118 86770281 138448465 178449761 8960209 894310084 1050296907 1061561679 333736032 1060305025 678265757 1046607938 771389224 1073216694 384595907 688891670 874751680 79037687 888268524 323285445 940561780 525495680 965318196 163151302 198520690 993425811 1068886407 329896173 758064001 1055383058 199514477 144011358 1014951186 403555482 900403596 110797221 667441755 247770658 891704299 450478993 104212796 682222667 676993147 158833920 640539035 674768074 246112698 1049744724 228207035 631575243 944770943 409442431 1023282831 33274819 351362384 41726348 430640013 896521676 148745873 453060235 359248828 471004915 148877540 167944245 914570220 1023289374 176071227 755067371 878853109 106771509 396397867 606938671 221569662 413130806 880576536 217973127 186378019 329839862 647328440 374002893 166617170 253549693 862805662 168557005 198982027 775115928 67006532 650457367 715761202 229306144 7198006 505402022 577357683 437738641 960647531 301607873 8536347 971651497 1071830113 772614763 550425967 872837397 565549750 900719927 84513757 264475430 140462362 8915919 782891742 292356293 926839100 190235205 898025181 811897492 243418084 712792823 483049277 151889371 527309327 191423688 956628902 193393303 395866189 34830955 735984859 413126021 412264797 1053172754 701365774 19687277 1068435000 595212679 121907433 65855383 715852950 490024037 229094287 739559119 407153890 232552628 673462516 367976662 240951149 260292791 402158236 1012085412 862068065 192067308 318877630 828886141 123285072 1029285812 496119545 127044073 594058471 588002860 119768003 185543753 802062037 206800312 578322198 835995909 523740072 330066179 377670144 54591923 614148440 638887320 814386579 775670459 638709051 720604246 633049926 831068998 241020713 428268147 898937973 1042726359 466631683 771000523 124766211 948844004 889140494 943106851 1056042257 878810606 912337985 180094292 503923228 574202227 996333883 172728657 418648882 534738637 321664603 408958347 319600967 1000394073 951270583 721948451 620288123 733643356 786210331 1013204432 330530182 42518551 824531016 647708161 822139218 742004827 972690873 804704667 978305204 970302976 566561887 469632888 88552324 70220112 277147754 1032745348 343209891 872467970 479472386 837578916 834297946 138261061 1024275475 866370010 784032023 600462490 999599409 509779859 360357441 741569989 552804182 993999042 981773748 782499212 284539454 1064880262 1046310817 718374723 485941022 447683455 579483741 170357882 590639014 926506905 224886073 922558520 231743635 670746512 248393944 462197983 435032788 17295459 912832466 447529336 7741921 445178261 441277635 736464998 536472028 301114384 829955165 344335406 202173112 980882591 803242930 608527251 16163285 966382785 263616136 755578671 145032760 866247713 747775880 201473090 439844322 765403536 24304161 828753206 804381481 124122027 779219142 589009930 606717414 341408780 814873185 40917096 443228302 810279946 108616120 343627181 458821207 949554083 938627604 767417568 293571515 659498889 790599814 639809490 988193662 461396130 714243412 174617241 234014392 763116723 393431641 500289312 773177702 1073086856 777685304 988051375 469067656 573588286 891732807 595422822 1026364630 338843638 704694237 848475754 718025510 794582759 860549812 616335771 95015916 717622462 155027173 258290714 588135385 498040157 195655316 916615979 234128387 105448735 899888853 1007376529 505851041 941360982 728350990 291206001 324264823 839476662 738839583 974223991 583932034 159213653 182349283 521887838 873948968 618567227 393825776 16885254 12796897 888730185 146063918 693629227 717632665 983551618 536710606 984482239 954683432 1037132383 545632587 910592829 936871876 926064128 965141313 611607974 570637020 349198479 151191978 185012922 292215699 745927502 402442707 996654312 148280452 387631790 184302774 638468158 405166811 877734834 1002230426 733256688 923446852 771221741 897973786 90363618 70398175 14369622 891680248 172357408 697682918 411977903 91002560 798940343 645215006 958798460 104242744 517045023 551732235 161660437 435163622 270504775 1058142183 975720746 909886868 467160339 14304003 971876106 893424901 445376713 931256591 228325046 816904283 333136481 613771006 1005823018 779897124 981827030 734332563 799317899 107135991 51625767 393749181 918908266 881655279 1065256252 102285915 271353886 295358818 923324132 160061325 462931477 489238035 656622796 800643921 247722152 758683536 714277472 1022594094 128551289 129162808 184248464 456888520 412342860 679259132 510556137 101839270 883376786 1044729834 71848614 683820717 511597349 769067840 926442197 969605761 50890165 596649487 54338077 374893614 506036953 892900205 898726290 387745605 133660999 742061856 1042412026 551816525 337191859 945165858 627447709 1060335236 919597483 12833859 687136867 572490843 726724967 464110024 947596974 740208711 381466639 309115678 627928001 927868524 1024729211 15223524 236807827 372515605 667743044 801101602 539970506 340596830 1011636177 146963616 276620539 205237964 1012817405 49414135 822660436 125111036 88735131 1070206199 776558630 218826988 1733102 966871919 37524819 935435952 793802302 14102048 1040962843 544559144 541584328 383327792 477164448 134175197 355691128 606829017 284101174 528654977 470103510 207679382 943635719 360436769 126628073 909737735 719371703 885198721 296234205 90327348 73305475 1062591944 368518683 218482901 1000887849 967119409 662350160 879245919 1046934571 764092495 140677529 389018737 335876038 589682649 1005112706 480847947 420166555 139334294 21337996 391952124 757128517 246848795 742517744 250978426 105113226 396123311 812795486 949717304 114668560 585314036 1036952033 716210920 93294593 970362144 287826676 497948748 744222699 529661202 51494366 24563442 408785282 450695670 893040312 312843842 456652569 342258268 175655945 612756906 115542187 437271091 266181226 234547489 30297334 332626179 815218195 793630606 191148032 855651185 173083747 672188092 617369554 1037884697 521074658 680061240 144336285 34985020 955801164 859072401 660636579 378941298 1002432221 142543494 917581273 224467476 300943303 106176196 124878755 1064003434 320053095 294274799 492029612 997226595 911412945 82088397 865858146 960932848 465392555 941294966 33434470 40376999 320710918 1023347641 521581772 902022643 796102566 1069311289 433568127 295425350 806463273 1068405291 559407537 950319212 771598135 1062369205 587345655 208288468 660402059 721968601 1063151956 706762281 490631387 723239933 61428640 251947796 118343798 800019807 113275563 514749710 550438871 385260978 164008574 499274437 950948340 69374356 755973210 587259012 950189391 586022800 256815218 21823830 672113642 841817424 538107161 408789925 918181180 887740192 359064547 373607366 475065712 927803663 193892941 272542621 976505605 843880997 757448492 762840387 668273546 946057844 618787648 372688968 752651489 863838809 47284666 938688029 397148204 340252263 957709717 135519868 608025194 182743962 991218690 560483455 186474152 1040268886 851201027 839444798 481672882 621201835 1066142840 377877445 24638286 212419754 3952271 718046467 545803810 939607535 326007679 933799992 298455561 256229028 83062944 206473697 711469714 447281072 844777528 417988262 806299685 979729110 149262491 670917174 905824077 89871687 236632122 656662023 756407992 434185434 653517071 1062145718 424917262 949102988 409439406 42669898 481911207 665231966 588451033 1028566205 680817232 650752176 500951138 99125607 192814024 76400869 589519075 420564861 694136182 626470144 50510731 599733277 718035960 549839768 269042618 312535876 671962813 615774859 827678808 634220989 171945036 447391587 152810396 817399892 463236470 302103696 726335664 660517578 1072914229 673534754 419744530 367628519 714860055 735348525 84175862 291875013 211756816 235429270 980846311 739955030 599244711 935376335 962859955 889441771 708646721 732232109 966033387 597888579 105650382 454966486 628748703 483419035 734081136 177663173 920881827 116448527 728475203 330694556 29689475 391378378 669964843 679298294 1020949470 57235074 150826218 170180746 323647749 735523749 2382292 298238441 977271759 524299840 1008220703 582909014 592626312 1030225638 444473769 519369621 398057099 865011439 959670280 498971252 81624914 966301589 218466095 447809693 539200260 970148622 856801427 262977727 652748173 686275794 547520513 916523905 477059927 675668130 876095669 165411036 714798046 473680136 39318592 1041441355 277920273 925306461 35531582 116709315 1060720896 271403215 367276551 350711397 411456491 997313978 1073078703 108145865 803264307 109125080 163909064 356647541 1005878513 339474389 995683651 953668692 260681513 1063563722 807815294 874218876 824113396 302563822 400267713 546109826 968806132 362469674 302404824 738979132 651085197 1015388081 507395821 268280087 688905320 903717831 670624112 295851525 464107695 211536154 917897862 383799330 106554286 628232702 887100030 592532239 38532357 294814192 107753984 554127469 63881436 420266971 827986112 437884298 1012682486 585489225 949151007 939430578 831009270 150921500 1034667033 270938125 185888039 54395511 837475134 626772527 1002932972 640995629 231528967 423675165 27887475 291814949 434099131 593086363 363569108 889843948 1055063924 556676755 340622159 368347588 572012370 543483467 425219567 931812818 588995260 393551842 581812739 307074256 100913262 633887179 818554313 1020678865 824346321 1049420437 695408238 525489647 585708989 360308604 392459739 457783292 141316673 691098934 210742122 240279626 585337883 232551699 895641250 140369850 31911618 770653106 279665792 455212200 589701279 863520198 750819629 895566889 49753021 88990223 661575998 706766106 535557986 129781756 131956695 879847020 70633385 642142897 24426223 579590517 343240491 766088082 445702003 196222150 16927804 750950882 183803226 21162465 574154589 514566358 132835071 735092762 664932373 89113350 614372329 299544953 487200537 838641566 1003199432 711028458 573326192 381885811 754111678 205200346 749747564 89397840 758766670 85410996 114013396 648353657 265749784 270408811 194488921 912172607 1066679838 206856 613560717 208412378 756859342 483524640 10626524 707629127 956636194 137480101 955600044 406947510 1021101097 952104339 710868624 760943422 453575953 227058701 366229355 79822258 925947058 275626209 296739074 931085938 742869889 91569523 668367011 193711632 340886900 547541669 1068736890 614379374 250541674 460242722 940463150 555355454 401382973 653620819 467176805 736621827 825776780 948229122 741868890 1002246709 98224253 779851927 818351396 440410751 1006758515 598366641 955013621 356696998 620731673 189426078 419338320 17416653 407530401 696270392 1048993581 764838460 440830974 309225845 966117263 125763740 998743177 430372944 222423530 765857656 684125276 1010972154 554009678 737287426 1036911146 137347794 890593091 226471552 896877076 327566362 861601017 513714348 362204827 846769635 836987175 617084282 887940423 1018331360 92457225 223844696 850050032 353055654 940750289 413758388 914233126 218081192 622807358 544621207 557206426 200693604 206849174 955724082 976087116 555156608 926559941 513280369 662111964 204056815 950957464 329346005 378873493 833336311 430497142 603756704 854476548 373439205 271517402 376487583 104001105 244956264 107436411 464334658 343011321 104360752 503598907 1031275506 515023204 1044981783 31097692 592907154 970951369 592751416 490020417 360508009 96085702 448175295 745839006 175553802 119291014 568378275 934423455 123612750 143125287 859848238 637147276 273847321 408051274 955716606 789926279 484053921 369674729 781892250 764332549 117691530 951584955 983751665 21385002 219856357 178935522 1015723970 156954010 963577685 665758089 589402911 721092120 1034307204 856600194 634869287 216238414 995626664 737584633 148104850 653685701 676306915 966944660 905717344 744031704 216121243 178842952 506148110 548671648 838616612 457904083 530762993 985924559 252721324 95312343 629304858 374650705 434032614 179851822 843710930 932401465 464236802 1060540732 691280869 767772254 723748208 133410825 439591807 661356629 104997736 578157736 891913478 235189341 510990025 815500613 355705264 901647875 856719247 55174366 643064260 768936965 108956024 702214188 432904861 286824926 822138467 114391836 703970004 319351794 76773354 374023642 90875912 212864565 482011933 451313844 420700764 524747648 576917587 642095832 127839163 354244672 805230365 69744212 435135230 485788226 989966708 704355326 1022600357 988532184 1025093202 190314652 620380325 384572565 960734330 1025460077 350405446 499947695 998866372 430515338 892076204 340182240 449986090 94337697 392677992 365355463 82131548 263428449 234460644 55532214 280097865 395354843 863895931 1050864818 373637764 817821849 19741775 536568134 451540145 75181020 938926466 403319119 610949128 609681494 623141208 267069544 571337256 159920361 600435584 551698811 52259347 149546698 479925754 565708129 1072529077 447033900 401952082 36580375 577015951 616423690 739943501 200873199 909452633 190355624 653368428 261423759 240458600 631970510 829508758 599171226 939675313 380148371 959025738 970308789 350920397 98129213 611899366 479050312 885041806 98700367 767001709 768406890 599627054 1056179970 547183784 800445747 23532810 386624384 977288351 742459323 37981052 542123567 775956015 32915606 265775139 244801340 117136939 326412197 556433343 627116748 54284493 545119948 1044958711 471174814 697809833 876609404 578247135 284696602 165998368 984583680 466510208 1038884524 747782727 999633221 849395342 344959733 166392370 425795647 369017485 843032770 165987560 724850620 1069259972 745401777 496763689 23932078 663469591 187459848 633018816 569141547 99665063 1011998187 1065231869 879318772 75941187 953078161 340222531 222636344 929583212 920100337 884957835 542151990 998475736 763368743 868857507 412838513 495605722 175580370 311828342 117241459 517984117 609627916 781471580 150029563 506127952 746087689 1057202078 497077148 696374597 882671317 376461125 452870670 723016541 114282986 372122610 515635579 558061305 216804283 539944599 184168099 250521759 846355003 771513678 50240639 309265360 233328533 248461438 430115399 690177435 217887666 340172504 573153517 119767550 767022446 673781723 778369404 59868529 976907259 58606232 603217927 233893727 310794845 804817796 528096576 8365190 741065104 115607615 974882043 241328279 265660196 693562616 876255787 711888211 1038786375 56024515 400378038 1069825043 628508125 746471881 489843109 959280997 166961609 796774213 909531035 279230545 787655313 26134732 871565924 42814517 808993602 577941666 1030167391 372185966 4877604 589910831 568282297 849476235 236562999 978592632 151096945 333218885 197256306 232401882 869418052 469222156 338008848 64006044 399848281 411672337 884457367 66882466 950775810 168761033 257438607 853561047 764133927 204774876 1024670355 1017023541 1040566470 1056876004 384005440 111750010 64824291 587156562 990907511 250797803 96362683 14090375 702523230 519996707 966184073 5019072 1063429124 978922274 933276963 123043712 10782357 659995875 128314158 380122160 609467777 231278557 674334324 567008847 642677581 573336077 242744603 655903710 846485956 99465678 1021053249 579367074 469244430 405866263 553788813 975119073 591245975 908287910 341408216 518421495 979771787 20479844 601977963 627279837 118315692 532954867 167600796 705297801 164987969 275974820 677882652 485214014 188763145 202564210 554715981 420420170 827603318 26428345 233447954 906568568 636381950 724584203 275899821 818895752 1068190337 207550380 100705645 935266772 379500063 1033889682 159821577 59337640 862941140 146332175 880096999 57625403 762755511 1002589079 957899419 1010065555 179930091 264040079 673598055 501579449 147304984 68945525 830884359 549813219 55490796 959983135 867533222 245033647 1048325068 291310336 988763584 31994982 104596159 295758450 399682507 58713039 241900574 1039729044 1007664847 10395226 752824929 634220973 264173730 993023644 358459349 10590419 672033811 169949110 60288179 6152902 161526554 337004688 612563685 719307679 369386634 666642258 151799314 89882054 427110369 420579250 995705160 849517924 544896941 285658766 104220710 138856620 427803689 817876852 183109021 231960285 341868154 390433342 34595296 883021427 787932798 720700389 304792369 534492101 467333861 810192054 662751821 795479259 192740756 741126771 870470692 874978396 586279774 454140424 213130334 358767635 914709026 378753249 750925163 750094079 691041002 1016586865 929520203 943243436 498949838 853609525 602767879 798449780 504026330 398443320 87755615 246351556 959508416 616712855 964919824 909134662 805081612 727456940 727813119 337702698 483089475 289391983 194442438 20225778 614942157 66257927 594412330 595696989 339500974 340299286 19794302 965088222 729009984 339459795 332015371 529466725 172021641 489270543 489910891 906418911 368593828 271368056 214239759 947155771 125954709 330538519 108435240 661982707 503034357 516698070 1028681054 666738705 1064463852 550740904 1057933169 838375914 13495980 168479547 435370641 736256673 971329873 844799893 400433745 875940453 717487574 378509770 964254013 509566738 1044802097 784778930 286951985 773362261 943724761 307997997 537952755 631152022 371999623 617409451 912010260 615234522 875342041 153091221 64283872 588117171 582229734 1025560453 367836070 987364864 80079458 1049174388 894964985 410284817 482979374 518367797 1050308460 574440258 491170234 229192609 383835777 843556185 135560716 600921111 820734430 596330996 249731255 207914052 874369716 214300518 766257587 98342181 115117758 590857840 413980108 568633840 643013939 293774348 192615142 982428799 384531839 878755141 117687698 574005803 805906149 826341736 146523953 851802802 191760156 521353195 833269132 742167225 417434576 397863791 345856788 600114909 610379486 983895568 274959631 1028731223 284651629 897709914 822277854 496447643 1008432337 887575864 628021194 213518428 511017248 470594694 907577373 1013066161 916049331 820829884 472721268 193825181 171762632 455221912 983224150 833233448 927588716 825907130 989966695 748647416 904355273 262186012 544639391 372334496 848128815 865227111 463444778 414051526 868015035 606948415 864520058 992316492 168135818 261831542 877468153 307736631 702923320 533506587 1034301929 265364324 887143997 755873677 267911498 557991035 891860515 883113835 599705193 81662541 598545933 685027036 521556931 1047295151 1057196130 892907494 513576312 896254446 855983919 181185628 179593108 876578329 192564058 451448099 23954952 850469201 386057855 1035240218 694758028 190637644 702868957 930580684 123923766 612922716 301198347 475902885 188328534 780349556 841461428 176961462 54492128 172566502 337156969 1069716370 529016096 987018773 397071102 613864803 360598576 747034169 1013610975 17689609 879823572 63250230 518273721 162260891 132718881 919450560 907383373 672806178 472497070 821140606 741680177 1051789852 947850443 83219326 420989248 642383988 856364483 575113228 651344019 128253752 203984897 319924474 49997507 551443097 520127246 294368353 59025373 23826231 48969407 1049708904 157210577 529925505 933871736 511324043 239230046 1028614398 808970082 717137960 83651339 956230086 762009102 151005271 585889963 323974851 271503042 98566297 274525715 149500999 783262994 745878063 862109148 572764080 575458598 815516565 994710310 629808197 1009111225 580920660 265275414 970685588 909234535 961652746 967258781 142408988 387510737 657068467 868783001 527409769 6925256 966590244 828621721 67883276 975913789 683311712 974334427 727873620 192015961 564451492 764770471 338494958 445420981 991397691 208997567 647778194 278552194 913763639 824962835 174214159 5686319 669839423 753193029 827391526 964643514 433960435 768412600 260257135 456519853 479183389 48678679 479017758 267021816 324017083 497061251 7532612 423238874 875593090 866225436 829449061 461862178 426361206 757576682 419283963 889761712 174548707 229028196 389376611 66166859 1060870415 449210279 450883607 166207165 533030558 501871750 621632920 272833193 845135177 420122457 798988710 250108919 1036589877 192200770 381957962 473322647 515538262 92505051 281104812 450787840 345043247 492200447 1004115834 1072797023 747039747 725194192 342645603 86499386 509427145 912198624 328679601 573072426 420682936 735946883 396645275 257364262 26156042 742503233 722333793 302317832 844395587 75430180 919935841 621801656 411212121 535208489 69269551 287467133 900484103 319120254 768330206 65554875 847270947 185264051 569380920 508689270 406884623 695414673 411157571 1044467955 972357422 755360712 1059843699 303919156 242315275 819623884 665799649 1038013073 904063062 963682768 941259207 484730056 810652864 228603293 716912086 546890019 586171746 104689246 700851205 33206111 184482397 986915462 104893320 609885497 426309253 600502810 457934455 155257640 1065287568 752906304 193923796 140184521 825805444 22022429 701547991 238862212 757291206 987546444 964854273 613127258 653486782 230151887 424984090 374240452 1040972811 609257889 790291511 781111391 757254208 1071100815 363635569 83905699 873344946 891852636 1043510533 1051651259 289449946 781831002 468442454 260595445 1011871428 713349347 611439022 759927882 707341537 408160677 349742565 365474492 86948004 924745100 91944413 1021413775 874675077 704019362 208418314 516403119 296802969 118859770 876993869 1047537572 90595529 750981235 533854492 380310750 873499667 631669422 676600135 343250303 654455637 356275040 456669866 386503403 20251578 828094242 613152802 25196001 848753654 975450109 403220313 1029161870 651276902 482359192 381632546 768876544 919353449 9148114 86664961 802554901 226011191 1011880391 38369574 905180308 131776127 462305220 559512642 147723392 91050349 115468687 472045414 330120008 487571855 989675561 743420731 761626456 959583213 200744107 759124542 727908989 795104639 240591519 127406195 245927480 953876369 1044569109 859292513 446328388 555216110 908310374 226289501 953743742 838178570 631742340 983631092 724354331 404874819 946637227 483638543 549392581 386012477 678738959 968904758 389942344 805857688 1036862663 868001437 41592006 790822093 158225172 662624202 805243393 912906767 289231684 876098393 224260174 514308430 608138921 731418684 737015129 286474102 181465549 357676849 59913256 238292699 385022893 967843873 335072502 679208672 322897198 83796915 57124797 349781783 484220679 162404514 584720341 679099020 743542396 76354648 449994112 663317669 262798814 1044091349 500041107 592152691 368392485 395294616 543785924 499173754 618617409 597248199 531814248 323312659 606021556 1010022136 296954537 71669022 528372395 926289080 56414839 1022926513 79192902 983676204 19818559 670255272 29748600 187328193 662382190 699308081 854780486 438488982 736633454 934660021 443511487 208214252 463009359 242095692 126022780 1034487261 593941955 168014448 434165447 809381124 40876151 293858788 1038034982 322368797 395059183 5586236 164884066 355022607 472618945 1047546439 1020227278 49196053 185009681 589900755 469976360 120554385 679758074 461214198 543923590 810040963 568364260 508120163 35485140 816373032 14357067 170585497 931029765 978988826 714400464 367597341 977981144 449903702 238012447 481947081 333907151 568618333 58846830 785377115 789316764 344943454 41440875 716455136 765609466 465605295 610236338 707268049 344014011 448438103 706216145 593389516 154087340 588563722 898766002 506845912 860707134 448134372 484184333 810630408 589426602 793632157 828277776 65262476 653138378 237710164 375632019 89440394 997980627 673081163 606090259 468903933 803203393 1010062053 334502003 635433586 520766757 73408531 613265841 622272726 100794010 1006290779 442898682 408682906 279645084 452546560 184355922 717152664 608997407 138868511 737425931 410793211 320187310 836490921 1056976996 962458358 255171243 252895561 619785035 744678200 911346696 248444128 262781432 567138734 426521304 260819101 443678959 914739589 835771835 113936852 963528464 109254619 880079771 645537014 992289282 459205947 298310690 217574549 581358018 446292877 806198415 803716953 103033382 1023978714 952298895 114804974 412684458 83398783 527829745 70963897 798326270 1025648063 676081995 694022035 928272245 886867217 914052335 234064058 191372771 18469194 631789111 390018678 881903702 948734026 990013268 525938435 45222272 1002989236 202625408 583945857 1025221108 925564221 514920270 441441651 844874516 386043636 987466057 684681685 704877985 589186114 302182396 385815829 926411744 632285519 126668491 610038069 853835974 342883956 702340406 123418322 204210447 534258194 588565764 253470715 569079175 897767418 949741107 1016318985 800914295 909769097 517778219 308396557 1047517003 503551574 724622442 903638231 106904483 462337693 566717600 940287834 759275116 961246459 835494321 615065234 856090023 177538236 922310427 266358964 260763449 935359862 999933421 662778781 323678904 1063848033 202332889 857853441 581965529 240847665 831130926 962406388 1039230353 359374892 745338712 298122145 1004093811 513297696 802456775 128816572 342280927 251184784 537617615 665786524 687461247 591015881 480273154 268805322 486941874 869648068 570771801 438289122 355879695 185005136 803944016 1072475109 832508161 435420845 322553007 1031814886 112743654 689639439 1056818243 453577600 785050014 743888409 950193185 376176118 18747701 136894638 451963759 62777292 831668520 618206402 1011189330 724311596 432721516 451695223 377896907 319479955 330254904 397724922 827635405 794146723 1006789819 605070886 142558814 990680208 972378035 455900899 1064078716 324814656 531794593 336776565 635641141 475956629 524785673 838201062 799689490 638294505 101078964 42916915 135587871 437932240 922765134 356889707 639004317 162917711 587453815 519894811 128539609 928037816 140473437 479148479 589878169 159642527 66938043 374395609 93801758 76382530 1031231041 476184648 56330990 461460528 170255558 378247263 562030042 538117059 124127874 935847182 986180313 821923694 986573817 944613206 490854875 811828074 593815158 772337542 904271645 1059495109 831797927 980755444 10394867 201525883 1025426564 261723745 123579957 779168021 280910731 1066344094 326638498 97226351 734806175 416941325 151398566 588487990 12011434 565195658 691176792 622100492 554776868 598177800 422377164 109217688 454398214 829055063 354299515 418694851 498106502 247882186 544916370 300759771 115575444 146756542 405198238 962334036 445577505 27997598 499270872 603010189 397934882 650153966 1014659087 604530904 1026777312 409382270 880142771 126935296 287811909 1032053788 115365259 233424787 595955584 466393185 1060911726 104903640 837064385 106710449 807570735 1028630369 146360161 635502467 83432635 409163974 831186898 939390094 467190813 660995173 365486589 517101666 186305261 1068746080 664600398 43467698 559577947 1021473258 897882200 818953248 897457804 963179998 374517371 250818376 298211249 586228119 444773771 859363706 903349600 888462412 751515216 997561302 382668051 711189871 659114455 969665723 174774413 740570742 291480880 599852631 304641606 198103999 466917832 524891402 384190051 585025606 584725121 447723236 664913360 656060122 99641144 933710095 851921526 387391000 644307777 579628851 85989644 841646918 789319786 800022680 370001361 1020911211 574688492 534505670 785580992 492328288 879069062 918756912 213296005 979319909 874263723 507751987 523247019 686701692 587459510 197927051 871960953 488038870 923726039 718910313 896278530 502207010 513167015 246732742 204636873 665863407 1044596243 904067964 276096486 285365102 880004049 589607328 366773270 1065933944 398427576 1023158309 670173352 1059644986 84447394 53463614 922680743 1064206359 878706837 740875329 101222239 747944872 300841954 732137729 849934305 601814864 764228215 639151770 595789818 121528700 305763342 397785265 904385304 226127925 995956529 1059273822 341583760 522410534 121104698 670256704 96678315 287944443 402586133 506915921 721844938 968864466 803238281 33427400 579711925 478648167 279542922 534913098 465441224 552367554 814934783 675553160 426399610 959167719 317362448 777140161 795789370 478452935 508961919 972750841 366170184 648415397 233514550 1067617024 996176651 483337883 1034864564 781926972 1122151 764879185 500185746 1008500735 988142035 501500833 160757092 392312634 500284390 559635365 321375529 875194454 989593428 842125174 970320409 984157278 324944558 263850468 25352374 865733486 987867802 352249654 135251579 789288484 77698248 11291499 1000084066 875930861 911069937 688926960 28139827 195437828 737747735 525451037 629618548 908341427 547319287 715733766 554100750 343203944 1010074848 670987109 802689752 57183931 38909883 950600159 492986024 515904348 1010278879 469446284 550221165 4529611 835812581 84085385 226242784 1043391604 845852555 633397528 597389968 177954573 273085360 652254015 592638925 756064792 579210150 952393242 937008291 816596504 710477664 334800158 685412180 809897842 10688494 792502222 550023167 817719708 715245351 42345525 686322291 375018975 708719514 125937914 375407461 276265868 465976367 291408408 773058944 846934003 1029501832 196642686 1004533609 867093975 556662578 211170374 414413274 981099093 814873012 786761783 293495409 1035683546 866405302 441557353 589738908 16343152 381301015 221598744 307793124 125136286 837824469 604530169 189523080 842498003 230233947 758844634 882133862 197151675 960230233 117755485 1015701283 918989361 492711829 673618639 87588410 363090380 843797108 863958743 102206343 946753623 587659565 159915450 739073063 192620335 21934738 853466026 519090307 703273979 527824764 1027317620 658973248 502199873 890964379 711170799 35121653 627626695 675031750 293641997 130935063 51946087 31987371 661435046 1039258102 420810023 865058134 979518015 447297808 231704233 816848868 741755815 421378910 14396429 686797049 650412 125125270 239400419 60712682 121509153 916000705 427368173 506257798 91791160 606037238 263697501 1060017488 291902340 117441223 126956295 382688091 642653663 539997465 435994849 8875423 665088447 634877592 407060391 370948511 506890473 179901550 389407562 86176818 733448731 373046837 302715924 741914023 62931361 304687456 864873595 966489527 1023155470 570683292 968748117 706379309 221968555 310833095 720346640 283301809 55661723 398448200 246713070 839144145 116592956 819859886 1013689016 793070788 812702501 167547070 737709593 92511855 807042495 560548164 615811058 967510042 1032040572 217688014 161491303 399061151 34274304 192021128 900458488 781116017 128785588 656876257 301920550 30031554 345547514 788033977 756624344 744843205 820778255 153594008 1012124378 99678151 112189088 384708872 370625690 283020743 55647310 51773260 599728935 715887929 104126583 824425284 183910727 744789312 348222108 823159887 555763932 148865689 924948253 141035341 780713373 534286159 599645000 744402215 1054755851 246183876 406170767 130983585 195961572 856106136 791742469 121341159 829015639 857511496 1054366095 677144135 777186359 649186041 605887518 695182285 619965984 181701526 248634251 790478289 920870935 189703412 705987190 723613801 489364228 524344038 428670428 741503104 157761271 1042052314 96525331 666997323 534857628 400257036 314546212 909666655 423916329 751267685 455085459 718496225 1035727876 260137871 423689667 997971236 622086379 925731000 62873679 142372431 992808136 81848109 591455015 173621533 29719040 510388659 283921877 878083480 854825083 460517753 989326169 180001866 972403089 962486772 300862101 357262042 427398618 305544379 463937589 551381119 903790181 738059428 346333241 679834274 682861935 200262403 471670048 829833695 65733755 703428414 598947414 106156420 297502024 654563470 1035781795 164295826 361454648 502635449 500520706 243923038 612062105 364245886 1063492249 873955538 796782070 835233906 338633280 923465303 165717719 4022119 321982231 1027529722 597271979 58685937 567048303 247745111 1038519476 56262143 496725136 590020036 308393337 402726640 194432442 284673384 112223573 390207189 649087077 612199158 390118466 256878085 814063765 47425841 824877779 267613747 31361832 126136826 657062496 1024738934 326175507 986217184 651937026 636355392 950296214 364191348 811796446 1007290498 680717055 25814130 390704394 1053402128 541027267 461329916 296335275 145138016 1018276199 720324070 5792307 904906942 361589951 335460716 700025894 405226473 58045629 426421455 45181495 292658596 827991667 477001603 492757161 309981266 772973380 549137842 710515268 940331250 408010658 862990054 572526935 852334682 993960370 687482522 575056181 481503506 76923961 457715285 688476481 765466847 353011981 860638580 12170962 920027448 1045079505 980322895 905495096 248772004 541614781 542714460 537503923 505809358 980974429 924745934 259697850 497876497 381203255 134245699 972703817 831263206 374948503 513153700 441421638 555556980 918812984 162481790 312750824 235320031 29772045 929075789 606929717 93590305 218525149 569008192 899642934 306496587 536939470 595320934 984515836 691782497 1014892183 263882755 771953571 334815516 291228643 305748826 604345571 663220679 847548970 1006143561 838650734 195410885 664240867 560571080 840167500 89814416 1020463366 599077120 720595628 647146039 883609813 157553851 14352391 522089335 926386650 96956443 963865842 617015484 652590199 201598716 639565066 682162431 212332513 941536897 497336533 209210310 45442789 551986222 186062813 338859940 843293221 785034910 1024239822 988562719 94831082 316209547 237445472 551509383 302737278 988062742 601803142 512836075 457061165 205461221 773513988 401615514 184572746 23346076 554877901 936226072 811692267 671569782 481286294 127980762 166249422 347092433 105859497 629719163 737355478 326635605 516023942 674848677 935333499 539910326 872508659 439897592 138649791 653690988 199729121 723383681 509528227 211156914 664798730 1067254402 982896239 414825962 764044451 750482910 330633070 565963950 777236141 219572055 764055531 466917658 491261626 278838223 156238759 182303626 60556821 61361728 125380325 636249062 991155920 1055691336 605862121 655467080 313349307 1032213131 227077869 24881929 625048188 415622471 180686365 830420069 237455968 784587957 343094093 121038986 593810106 567203791 757619266 1022839650 926743961 736428041 340246866 257281592 267050263 778159033 56457178 392161787 385553631 845343346 928418027 849028614 229088677 497981372 233058623 895776348 1006081267 801487664 571740601 83096268 668102395 308447874 636654232 680826894 874981600 989400541 295654522 583459887 531603604 347707547 9080357 720373306 932192417 24726567 40368349 66247952 37002089 181694614 81268522 911400686 569420481 622448959 919033 90375448 887449856 211262692 531303770 732248800 702717413 305634988 175503081 797088105 849513346 801129709 977263060 955529872 129703992 223034838 406751024 451341886 463027232 1042790642 61014163 569794524 919473929 219426174 150795162 139679550 916117953 736107716 1052426313 211201337 639280887 275199866 310693450 342731324 811299306 564112363 385177560 202429620 285464493 415303675 276114842 979365768 233026972 776414332 870660519 353787072 602999506 512940239 36307243 690676132 547848572 231092178 526363853 192164687 877768794 73506884 900073885 204671056 307966199 185870781 782530149 563786722 514129493 100226870 1020764780 625674109 444665937 825405556 620014320 671533393 955762758 104034403 890056594 1028336984 218096013 496612330 247874761 35613037 444585800 766843819 887352627 195657749 1064981013 296734961 1037930919 740227799 613988771 1029457124 1049260781 107916784 56906137 962294664 932803594 324933202 481793103 462365367 757389226 630766646 633157868 581126781 304531076 262422082 524534491 1069078933 413471921 794093157 488662757 718461056 777302858 170076486 356166789 67796435 811617571 213827855 552373326 391469942 602875032 601206586 363015572 167700634 171926946 19964997 661617958 620867632 172459827 1042565030 949700899 394998349 685607289 675913307 939019747 146686850 196539930 995096014 711118679 484297810 566609896 861034126 67930645 617416512 834909375 758352760 243932818 560069620 239253161 865666319 614816503 797520683 1008285261 1028899236 855457939 323536996 1032846233 478152704 499323630 484805220 115909169 563260068 168646210 163657909 103416247 604436132 799073011 963246778 644981886 672552215 70583689 20763795 177959463 870676275 66419299 941197610 167672631 266332539 742793386 203283341 58390399 228409592 113645306 33278243 508095785 967111702 438605083 896682714 488855051 857354528 802669721 614301089 1009628376 244704216 294432136 857584515 572945216 206473601 759047359 400581962 201915136 819567385 971755466 559713866 580920905 390612657 811298602 523359287 542998229 876681863 976908067 1058253824 14708937 271301731 674561980 1071480355 408361300 82768755 796403727 812153673 893404797 941474766 33498678 121736704 909553770 426594160 344398681 148336307 451396396 691974085 939573681 413454544 408061045 259442804 646674671 468235842 303189170 969143033 6916131 670582040 1054165846 871350026 1002951987 1028659987 63260571 117167511 670352797 729771068 981502037 262748545 181339345 386849889 76984170 323862482 569882847 1000724848 211281881 151235209 1029353783 67800649 793135016 703390018 273993689 436606533 833399185 1052761006 993847966 397187586 848354594 694648147 8681674 413685023 634705972 237446727 263201579 989374873 873134489 882957501 610644089 286709760 1057413279 372580107 19151722 953105211 102217042 1040972371 901453805 988524256 658363180 329645696 1069600060 335664308 313407097 55039864 32886679 37368966 946935660 990082496 54530294 552721608 247314527 219100426 243332418 39529407 909134528 796448633 454888279 670815769 872229822 25703602 834840602 249072554 113404502 342754323 173096204 1063628512 499106849 45850389 1008530463 549526886 828244010 1032215225 23991919 677457239 847531349 50799643 647819902 76425475 827641418 425788340 372741509 35066647 565583984 206491199 442426885 518904476 418606115 408949796 717442933 357966159 821208487 979049731 27375847 1002318144 855479320 160496746 353759613 930862748 688666514 891229991 921754928 584095904 813158565 23652984 562092946 968751607 240026024 417701034 630876449 478596329 1017141175 45497308 1042646634 334648378 800862924 920652128 478987868 133972226 813402938 1060151579 328428479 1025077597 934872423 913685447 49582970 830899721 634381624 374651161 892711436 106829855 93680275 903020110 680772206 186969127 200873873 691089580 428104837 227621304 785343965 59192889 505791043 715178302 678605897 704955464 53288868 723526497 39274827 132137166 869494186 772071524 26706199 539902918 845626750 753044449 731657333 244070677 938250926 844210371 1056824826 463616455 906173166 996817559 249041117 98432732 981106687 792516348 879068420 967444912 67456203 195667420 51335346 50585689 101462035 248328519 963011799 1067036380 20190865 847409403 1061934865 820972216 808138043 519639471 587413532 949165682 626087348 1051668116 956594678 472672978 806983644 12400519 579253159 42138969 324279424 234748651 315520433 252776364 641483730 991295940 865166472 757326235 138350616 339312432 902761575 851478328 1016561676 259650502 716935841 389046533 433827053 210713149 952887796 601574594 472621129 995310438 327896646 311345075 694314751 682157946 650201153 243111603 823359338 594179863 59597753 157049400 197833599 646891872 807547076 1069130075 827925677 92077399 998185080 355523294 333540546 665217402 6148082 494108951 102996746 966388142 464469134 360742124 394423966 923200427 690098395 304137487 620396672 23245669 380582983 202006393 549464921 845982283 982750250 145804607 361971583 210164193 277140328 771680830 638902159 360632721 467756226 46027217 155299465 794628035 596998874 943284115 1023567203 658684992 58675057 260504927 311112728 625853503 64398877 346821059 573995583 763461743 317613074 966773588 287450837 604420049 735400129 917434428 614803839 657848426 922575890 217687287 728084195 545574487 1061646552 951368181 578715363 161651770 151163129 908106913 219064482 288878585 1050089759 483886864 152187441 416650766 156069303 131262461 264941872 140465212 965608384 210670867 87257395 494592479 401303216 90255535 888260115 871660926 40964732 536777574 984984118 804361284 868247583 306743199 77857605 61506997 422314144 360752107 678876709 786435148 235262336 706066545 815845377 858775267 627996322 353341608 1016972529 916279165 330964473 500263268 710158520 304743907 973845639 395042663 881825400 739580156 88143202 33914438 16641483 212039206 465263659 420201650 794849288 357491820 748628850 31408629 456257130 432213327 1041476586 213792708 317057233 778588887 42659318 1048828248 351766894 860529678 487470229 441920559 106353472 1049775129 528750176 270605892 8430920 139916834 565776932 588546150 466618250 386559270 34617860 260511535 194052367 123818967 377518875 917416937 164854139 841739185 567543547 423832047 160011213 115181863 428721328 437486704 220129226 586717722 538862386 783341455 216925014 395222121 362239356 246632371 979540930 763231570 418791137 256198210 283494767 621136713 77171605 351027956 260937471 1020924774 178201218 553586520 411775767 199001363 643840525 578472614 52573714 848394469 513334998 353611182 941429846 385412953 897207639 326208944 331371479 262656520 10481560 235189384 612920631 140182483 153871387 749935750 423661411 1005215491 1027904134 463245506 833766486 219744212 688029145 558285934 616975436 880232673 264521636 1049457858 638100196 405467488 387010865 668158616 454156606 636314429 720804793 571173681 160576372 489784792 375078635 22203558 694741506 448171414 159903427 833989531 50852440 762191911 102912535 341328012 339941426 39937143 1002826542 416099653 1071878689 876041597 688726360 980392652 449756196 325497346 638751945 995189879 129171308 996707397 15701923 67448847 337967330 692568044 523448065 489551631 861217910 583662460 1144647 632143763 916128676 482474387 6707496 229398085 794875055 205341607 451760852 939969970 580312144 422153726 927827065 926184151 621284551 839338654 765556870 212270150 685755343 995312100 231165500 970952463 764455767 619007120 159803366 775568000 152495064 528733044 804895403 345054684 813789710 873795373 791696650 442363691 346767109 509551438 961127741 1008000969 591271063 866025971 364526114 548677257 216027480 366976803 434900672 180837264 1003592941 100675542 299070749 479294150 53592388 137983233 692048472 479203532 990412726 244010439 709208671 709214073 884108983 994413387 716578564 304132331 431110125 240751607 998095343 520684114 540537292 729491815 322169180 160486173 592897195 10305059 603255297 224101990 454560847 184222066 58581006 435516491 679536967 579706276 1042054056 19867488 820467615 820130995 429474645 640988249 978840780 820114088 659522030 750646083 863326348 768633873 966081316 659596736 534557750 144121344 542274623 775229536 434490886 696791593 137030706 962842625 86790335 804441850 559448712 771739009 694407004 218269201 1065317579 65472726 415727697 787496810 152512631 384653992 252256701 715381162 245472159 989508232 768935251 394472801 846032869 757902966 1000234600 932373925 919159081 201898651 873706540 797814592 1037534043 42647292 156735394 16078114 1026706844 666687459 741085099 911379400 246740972 542255339 456408275 268636279 737506039 1044489765 100960431 212621238 442897765 534946363 1040029728 377555162 737782318 374128746 251757855 721277274 311586114 247703049 384102741 840239550 885223441 359193154 1034671554 965339350 1031866823 391666512 286688627 969884412 814658027 275782519 55554188 412239349 748091845 636101800 1016213950 1047022407 743265037 862885557 345082684 110862543 837133898 315985117 316515705 838299649 1072036226 788842590 846775717 154124378 934040780 793466266 101338362 883064851 155878511 955065454 579501451 275430409 450422046 602502988 906833256 666398684 954762754 1007359409 71940667 756054463 682196689 527422653 208882683 710458455 405435856 1000998562 576648229 1062785069 242078519 408817013 231982240 684630817 982076943 479977771 941444640 370099304 293372908 337169428 526260298 1063909365 765165648 739999187 834205272 495869938 375458328 957574046 110584003 877595639 768099556 320430162 611862252 1064502634 33264110 514534714 379034999 506668251 763205969 189660547 49325451 311308842 558718761 8069062 1055659280 178111620 99667657 690891709 837627931 228384996 198666784 195995084 659496801 372032316 25441681 201760781 954422457 853503244 894637707 149130235 15474105 962807331 928346967 503324972 391535034 531156526 491100055 399270300 379855334 529999527 626487621 236095195 569548988 626128938 423540552 413405604 604835401 179876584 768400394 746610814 411040831 177530805 956382650 978881685 753645897 10172902 477837530 481151607 1030118491 191394624 501245597 83170985 694401563 321582804 721682026 728840499 472408041 34421530 489410989 298057346 1032320098 358202709 409383767 567629312 207308483 611552630 9063562 734168051 331710074 976900445 52603061 552763785 984532729 738434095 287662474 503738461 15997293 1048453462 88476277 609947706 54689971 212898415 915763125 459437373 696897741 683057876 485783358 992265390 248042074 519143903 312667306 142737751 542649188 394117754 136606725 1052944574 711553235 799054088 714661860 843199278 681551904 990520007 797416952 382518406 206835184 228637411 210238260 52156774 71258108 369068677 934584492 800998185 504584691 518959103 763457848 934548620 62995366 328371495 639772783 745930804 813486244 675831545 365236684 979041481 416333301 544050331 442276079 146759651 396463822 646999269 502462478 383011484 756322556 165621370 904952274 737977052 244737340 63654057 856197413 217862461 710257348 243576197 362134822 289025960 138484513 923908929 904101213 832781080 310708990 121171250 903612787 298275524 766855666 620904559 339889563 743894489 974848027 218501239 384078805 690741797 114459311 736528923 697621745 1050992846 827708750 482463177 550683285 637979258 316303530 375526761 719506113 700811872 662637998 933533119 138696368 223920597 501530117 328824688 137233828 551475416 783669360 209711787 67210063 161259754 638708595 733023084 569089247 719422741 262713117 942704217 559472985 843171300 932057710 794299127 413223255 854489690 462150953 50611606 926434493 240954175 341921016 268251554 776794001 747803577 549889677 784831817 174105077 347828187 708777063 783729120 1061418280 450261125 174285910 98490992 609281103 58304731 741875767 807155569 486308507 257108254 1029709674 822912325 85620346 938866842 861644369 818842072 591146438 98011414 911828566 960463156 523614073 723556399 209079792 445863969 730695561 408886572 12078787 1072455598 700431857 99306082 196636734 824857880 1071011400 857655673 816468691 295431308 387592399 310894400 756583963 257430351 136378119 871064887 758343318 215783187 817918385 975501722 521903018 387710744 786155983 365525371 546685711 251178405 729056835 541303925 353632893 483626253 593269158 539984038 628260298 870294238 133902462 428939656 873773220 750802629 196994539 623036523 865511812 721015921 383179113 557368687 871689264 12127261 399357468 825436841 926635379 265785427 645169275 331491870 738944704 716615136 776459108 620889895 380652747 986853041 650002209 680399702 107881045 895347390 372228316 1062735713 666428541 996055540 725176381 571444538 920540444 394288086 986948930 603977334 153464152 1051889788 370296798 263766242 999891165 921929794 699857068 944691208 518667451 851445848 546244003 806242212 660198290 699881456 694247437 997807523 960918919 954103604 803750130 729536300 168214889 188932071 474939920 788644003 126191118 61366515 717157841 484146666 449236814 788362373 725283019 1035268766 499961155 349488411 1049693105 1053846000 933206893 843278128 852231444 184756619 267304088 380293900 458687500 199896600 997363438 16971256 353331221 980985596 874650786 994926559 250986642 518754162 825467429 672466652 205722325 793989014 856363340 810557430 784131354 599442575 60926672 940196233 649361436 1063541176 529321259 552627532 123740400 164366143 214006214 200677450 488814579 994237398 162180646 870732043 576323995 132592880 427964928 752942953 202915346 412075290 897773400 488141903 364879497 624786465 688380223 402969673 25027444 940535447 835528827 814163289 373782603 258140917 277879222 263910403 825797119 385333657 198289932 325170139 851429365 277877036 731497305 470068340 743759655 463480679 252179649 66098531 641318337 672759063 474516769 317898025 711570763 526405434 275353067 601674161 250756160 1017567529 3775757 968029690 356022518 723541545 494975715 116642224 894019908 633815458 620307196 560478188 936391289 410734066 22671081 509453106 596992311 283462493 710375958 124001975 47259237 402301499 275417658 176495884 982297002 433935347 117508759 1034618190 735086594 813660009 986263240 76118701 435585826 810423713 658132493 730337418 413833710 882996101 820620950 829463919 756717866 117853558 982699704 947810545 73376696 438155403 124663082 950670647 1031857942 367577778 306960162 166476865 636171183 552450868 47210047 977685723 845439135 1032252343 16573634 279143484 1060443189 420360644 73717199 620062259 159512755 756200733 86434336 348925090 748831433 474267118 363824686 794486483 25277742 146806172 577116039 451711898 239790278 1005304129 745144707 146829068 54554822 826234585 663881895 130247562 740893162 1026355112 102462762 511911416 215946573 78514160 903055969 345794068 331111242 24835811 406727797 67049434 72117926 174046446 526346011 423420983 400420785 995792015 561777498 307551468 494257585 612484668 983849297 891787784 179574301 438510090 928681816 222971460 600335107 959380443 817728931 508458625 66113171 592905379 159691132 79353704 957351978 823173992 396883290 259844702 767217715 745462981 718493491 670962248 390935857 528993230 398630191 949541396 386123920 844313492 92362364 154114093 1012564798 682850006 944032800 193326409 657357878 799574651 764400228 303910397 98400297 117124497 792832458 528181722 365600088 98128993 108589184 445024614 144847503 182681584 622458028 13594613 341739199 424004986 236070604 786716887 429896044 856516362 44410918 986287615 648094327 8368859 766516558 560701575 796151776 274135357 122982335 724305439 912243224 568651925 189320099 978146566 996206103 840937597 88195678 100865648 71411712 320040184 333749310 41450789 462666445 927573905 417554348 696509115 927698298 765891457 727307368 629500437 486588642 253108134 313301652 747273945 974867341 588339110 479215262 250881997 826890431 827612911 590026131 921655685 800845925 1041969424 298258539 350084901 912814807 667364698 936694857 765882462 791925022 923539695 190452510 758160799 698463573 760310814 903085669 983477707 798247511 1031472165 339330794 96569023 1072425076 644608182 438855388 72709090 693092537 819646381 200593663 293883695 800347428 202148007 478459118 1005817880 121571458 914018805 1069109535 183211807 79186690 909015750 30442374 137095696 272049157 1065780493 152572900 983844140 413203998 370537910 52496947 638554699 1060125899 577986738 730082040 22333631 986017543 768595887 632202740 632723060 1026041733 515680372 531423304 219010684 727514846 401405668 661495172 681822213 577852142 408428089 38212179 440758464 599450331 660274514 723443801 312588123 224177104 1011762777 189626889 413022384 989451910 584053656 107191779 646120698 239071982 700244141 884427263 328815182 20170088 127848199 941311594 952906967 492108755 780057615 830478822 1025854830 385405623 598793464 296248880 691161349 365592956 332918308 209726145 786525137 259521567 89140606 616455155 99078397 1026424044 482759595 332698689 377159090 509377435 883250661 595786800 870878118 1028886064 7096284 707620054 903241050 744492237 351464431 286498369 391760692 217800825 558231713 462774487 123802146 113692444 1019448362 784948981 919562060 428625427 634469194 770049977 463689714 737001645 756532399 849998073 125472966 625480333 369344428 595191090 220507391 62230001 863741235 1019887793 448453083 538885835 6661959 923536661 1057975813 335361139 427591036 433022549 527079549 381231539 834040659 65846265 803791052 879836562 439546584 1020143061 478571413 1001519068 900650497 684232191 81940425 977958132 737523028 153082736 24978452 245050307 613523680 90116098 423470456 522099577 393094529 549352415 639310758 557209314 179986963 261339035 1032738673 98674713 714291628 138853639 499753126 59801604 288816255 24926315 395411716 502923626 67980417 208524263 389757928 466524532 694824004 904053582 367145691 89731665 772218978 541266802 100697118 822602154 931526672 4484681 991323550 421880876 689225391 135576087 50364070 388607785 569885055 982018972 928296984 402230039 47083125 259014153 18665681 587406474 354497178 232708106 650542416 295840057 1009342556 91922902 290547710 316891167 21852913 845010830 87791105 864233774 878541412 831177304 209692442 347795053 518798100 115734991 1055050611 320513030 285910298 614980914 1038436169 20601364 3495972 836432448 117730748 512196793 78181174 379469598 50552119 158730506 946542985 998076261 506289156 190711984 538109611 696719153 274723737 291526983 646935626 820069244 278071271 670460699 933144034 408697162 526378071 767565864 718707678 625773273 1040521745 702632304 46867091 531526325 264228925 454402066 228142825 282903946 3723536 36158669 889101185 99370238 433885937 306076387 816883869 480536026 982124773 761859476 555769513 205191983 549756087 301380356 677019143 576254349 520451377 975388306 156521293 356696357 58292235 8084628 754337025 342361909 635031498 434696399 1010068059 204465291 808915685 894033696 177767317 416204800 913127429 959831792 899269041 222118389 169435096 1019680686 514134897 76903555 364408587 230022378 124608487 14684924 766787809 808853061 576356933 905159551 313153190 66512572 190061095 411731283 306083100 578993198 57530610 1038220611 446575489 656019620 72214187 813492372 873282035 567861073 743992845 592843511 492043197 457818788 341946357 265044396 708227853 136975089 725232636 1025109062 127662481 689662596 874935998 1072068784 935979737 1010284780 212194333 856434822 301896695 384665122 85908476 523491156 60700226 79410896 563078759 1063537404 969468992 76777419 98517639 516392230 940225612 16771803 57094191 967719136 656471762 827082442 954144803 846188131 844662273 865309253 32302817 41272140 544287534 269832611 278870264 489377958 134763333 524143031 776785764 1014333981 566327515 908354312 745975539 230085084 1010165327 124829830 294383972 480363221 392639960 356136721 793020101 230762326 905587027 791882200 239181877 815617591 907427545 88009626 610990166 151401110 98714974 316988817 674125426 772278478 383313173 426969303 551058379 254583460 602503751 461075201 247115484 932289084 316053583 851244809 194891165 209586055 67996087 854940291 1027824379 988384885 1015038163 1040252783 561686491 757295753 538706201 788799265 380480797 539779731 598962195 817188883 666153945 500492207 215719057 1037776474 536962750 245900868 715145354 915567607 485810008 141387079 1063616608 719197467 814599043 38633022 773881036 522340365 751142680 36445417 228449027 220892848 693524539 519193473 411990818 806189447 164512851 790660225 93415947 191593813 738631917 268266739 801357390 156244597 996066438 1024716731 702934332 29448220 716064324 83721718 458003667 287933730 690364282 950929774 136034273 1009879544 501839898 234167857 608502561 782615916 230648085 354401467 902639176 58625400 302242884 390573875 387902115 28319839 341034539 385719283 504407634 417175476 974952383 911793390 520078144 671484870 977254818 115959545 990259773 129798576 613000944 389372746 256002705 178509166 62868778 10791499 233441411 776365777 857113300 680246018 31557738 167697852 949636595 147006635 147690629 202669299 14395548 512151204 780986937 983137266 389721726 536478671 706333179 833411764 559022106 2242333 195199641 301469047 27551190 871720807 523117742 522895199 267775857 931402632 1067815580 768846024 791328556 801692790 903818081 291448093 1002527889 11468389 481263461 112430607 168895515 400863941 118148547 499401207 86207116 802029069 917098694 141320112 919068702 960681574 149019037 254942255 406247622 863568022 1006972788 679452730 603056856 490590380 823343994 108992189 697270529 267829884 848574293 710287401 263166800 79116081 112201204 911568725 209100309 711951066 847540584 935363991 283972838 453632939 224300752 171747249 245045644 372750952 180875023 254553559 275049450 94306227 127477305 380305612 964984198 636884077 48585436 850935566 322871008 1040393743 160600394 470656369 811738896 983813046 1006650728 884097665 88624928 235680496 693152741 710086058 223034523 872171617 1006091741 627141355 319522957 896403430 361739780 308089742 19289448 748963486 412099659 94178892 842859937 816442586 324928589 678829998 99611909 187228478 304347998 76597471 387311873 536638551 378187154 982636263 64114439 345745242 330341354 374891886 647317922 624519407 71268426 427148441 117264848 680214864 629393692 1064933665 809643721 392026047 403630105 939935973 454569707 20742229 581362086 125971982 263428795 485877634 211995207 90212431 670201883 984109539 190584434 481565431 627114304 467399300 430385559 861094613 68879818 648480978 923649034 64085357 917875466 488499537 236319633 609405275 606618134 173274397 391722591 909112408 331035681 911988760 650203459 674125719 919048166 904147408 17555676 704795683 818929794 398610806 378195324 731290871 355849673 344629202 970293930 878986598 74051015 69167457 1005473010 578828658 724205097 353202381 611758470 354445968 490919813 55596971 212296259 971176155 676737110 940550627 98507420 548932386 317692931 751919927 396979355 10160043 24475296 1031431716 432757693 492523750 714718817 352032161 187317434 19179912 988811691 937235672 388621876 548628243 93682499 313728107 120162635 815682368 247983198 676604108 1071957877 717889094 291701186 368205375 315719549 982867341 641475878 930055618 535911294 978615256 277315242 669375527 451101042 249858304 661650321 336779833 82629244 798740845 855105451 775100838 30324745 330136325 219829597 667735661 692036688 110469593 168175342 390736564 556400693 38477855 334045431 845063095 928548388 1058071955 440631897 1002078723 816289698 442540541 234385351 195239452 202155764 113011441 935523106 508106431 404279273 11507989 223103338 631684707 916071691 185026016 776782674 1052727008 996821401 472723075 614169933 206993392 30051081 826232359 34164399 765649488 768910511 664189854 873826770 789874747 337660845 266285460 430884177 78507700 830718233 1066828900 685741937 650156745 783385976 497844841 555509548 62996892 308740221 332029354 887125323 1035454662 41711929 209178227 274269646 641463271 411930795 993433888 19057423 293489625 947215349 406038039 985933068 293807330 506899391 390462914 341498401 576902444 1071494755 1021633763 510271078 535634260 927303842 290877914 459576542 479675063 136126772 530654470 154511357 259554503 513956612 90326704 1058817674 568961162 358233717 280675077 329532820 1011837782 639980741 154469436 881118070 488443914 881615005 606571613 297994724 658240194 77265787 1047972839 500740176 376602933 234956491 136949925 638421953 626278162 372389849 418353874 658503834 690287334 426070056 406287157 550439233 513670776 945472002 181800768 433775640 499958913 633759704 543946223 489357911 483421534 728458485 876539573 561700271 1065198176 188390832 411580930 761669532 265996824 425055472 706372112 13542010 262014844 1039697823 329559832 363471690 23356054 959500423 635094688 392296978 284415280 995746267 1070628332 690474129 329283425 71390239 661136166 529303166 249282533 281305335 364702896 192795285 141562757 1030331597 247210899 3828232 8453204 651437 657983244 1002791942 798601844 55528222 407564869 672407872 673139943 865055672 919983419 922487862 1048512547 152430594 498049887 20221488 765388412 169206418 702818828 782639499 784887768 732596470 11076174 734280370 607491628 54807681 324711481 1047617006 472179783 204940681 227532952 25963374 598410154 690595727 758699639 412183656 934145275 697276542 772474619 543864083 1041559628 216664331 44917592 479921143 28317042 383153187 37962106 215981229 847120241 72819536 259948697 87090968 751199181 191140339 40355348 645166080 901774698 1036331205 195491739 560750971 1041333801 752648988 688886680 857989222 990383387 702720023 387953749 555688222 354668495 866128831 360588026 668939968 599846979 972982563 264929084 181454885 462568640 15494392 580456402 171536564 338487166 834437350 78061478 411387349 178900809 439888343 747354500 876319381 419760217 1036619122 876667664 307877689 557044252 971538310 407549445 663175398 375429852 878171806 909089770 766626351 215302833 50688346 224658171 491458237 58273991 249579151 758944578 479670235 481344010 834555896 389471809 684685690 955631646 836672019 113249203 132742496 1006125113 28627931 127885436 603295506 249398774 545110555 528638415 107938491 789240735 344369628 651909059 261511058 324937962 656582790 497738594 526805113 487864200 471605591 400330213 339618453 199381684 437107432 265831108 424548505 843772816 888537117 705636450 813686290 697567142 846685832 1031861743 333923158 467413711 492218261 819920323 962258616 409201717 639899921 90901768 807415621 189820872 324501298 31129111 272716964 665953909 832640732 342290565 952386532 893529567 435363061 400868766 685729230 863808033 524126895 223315202 179182741 1021625445 467006724 693714224 965544337 47762783 1028948085 657921711 792072836 819516124 748961724 36401568 280317434 8005965 850591688 21940052 632722851 380846861 435756139 333619874 284361262 860062090 391309318 198183583 583028083 336501861 984924727 710990333 612851225 428579234 206692377 399255630 9788944 959705801 965271584 102909887 1032472 953020510 155649925 28888286 1043227196 689267713 287936600 66188913 80380483 578105917 593575161 992053993 690164806 58609455 959490584 725500289 6025691 711262732 872701214 15725321 1015245581 896852525 1015927440 150949695 799247451 252184729 19225516 195368581 823205583 205378495 488224359 194908562 410541847 1013835840 649562220 1053885689 1023237792 618160936 89585327 72572445 864183293 481478786 156847655 1068668005 958841735 794160687 163770183 223215619 1041732604 395464001 1021728696 931676681 674619996 564107356 453111197 696901929 166631644 968861975 125961999 777821891 400026670 1062859922 1045143285 565189920 123841317 160820187 27466849 69357907 559017629 37580489 30127040 466152121 991994476 970185361 507495558 131025654 985732723 903009982 1014569907 943489459 605365972 176559021 292001439 280040919 503197170 632221617 436746402 370257455 502605609 348172356 564928920 978993761 438205234 1003887913 906969353 657434149 905561408 714117556 240403969 869771584 41064851 546096095 474136269 643521850 68233373 645831060 826790958 896965109 120676736 973662708 95471987 991753413 946750705 833702819 643821308 813965093 622748502 1057575572 574579168 947867587 748004013 405021350 437120709 654621439 965519124 6363597 610565111 1061104672 297706051 757183155 564137871 61220447 214453529 471421800 135925167 391657066 251925612 75414624 193795879 660656905 428793934 1028859004 44249272 977017882 83292791 626693579 885461477 140339996 682655406 758387561 346986824 99372310 728298375 631811733 438511595 460234303 660124415 391912481 1035862617 825886545 483699336 525871635 729070774 1001817008 851612823 295080796 453642092 107422910 722563748 42359463 1037802745 59306475 716879341 945180322 511630582 737140687 156332751 369786325 234983520 168146193 23573590 820167794 407131260 455787827 965178074 148375875 626271742 368733627 99996040 817507664 424973746 478744875 346904221 9678611 479797491 706367191 149827688 180787064 400763968 103988713 812940667 473563639 847162641 671928259 574839985 564273071 348689051 54594240 456242437 536802393 549822810 399838752 373493053 817408904 860292636 619242973 872628638 82132335 1071783803 492469151 40211942 848161076 800011330 57135365 643629790 422800563 909382474 1024559981 778969400 452722546 410253850 538236235 19011831 554599651 843628086 533820018 135881666 756811217 574951209 624254239 1037998922 746727843 640481907 64079300 872653553 439448681 126171346 858378580 845239295 668997809 662645024 824417438 118008941 570818850 976996699 595442561 668444939 261561274 655169667 771561011 332037187 1008761545 79469648 306792378 109588594 292775334 170648921 902900493 85006651 751148761 348025131 510822354 413512787 265889799 240618148 435390563 989365020 678232050 413573798 111968115 1053002867 76229324 1002040068 623276756 789084301 580958595 950432956 1018132374 64860419 728858933 990067330 470395819 189685402 228136031 1027149981 649440974 521248114 828101868 532694593 503015030 298291757 392653494 24406072 557464436 17005716 862343370 615885056 479427810 936750861 629441951 10306413 428863094 227297672 784604181 976041216 1023997286 1049580251 62648957 105396921 702465724 818577207 613314104 631213200 949431422 149077376 329409739 665281013 196931581 87436413 37252287 1011878219 511732469 400602907 833600662 495896001 631376006 375206536 969725777 22916518 177754256 67084609 403703653 592924846 1025539705 861614429 971413185 23562937 705738195 165088327 580038913 688403999 683530005 149819694 168840046 178182512 383774052 984757809 732987867 680579759 848441688 411011106 56369978 418364490 124446777 34743931 18148409 816967229 322433508 699764269 369894885 367039885 774229854 334308768 365839501 520651386 219665212 128593694 428994275 678990870 230036791 539962761 911135514 346181322 454683830 379892421 66449137 659937785 87861755 305793014 168048192 1072894870 224424296 781508187 428826865 751664878 254879984 925261639 376439535 907077974 352021458 736144292 276936140 392604613 810134428 179445140 548623013 291357975 777241154 937930538 319572525 1069671847 215401364 1070844485 365928812 262297007 315419430 284722273 975289594 410685829 392717847 827809996 1054298006 385807991 153516524 341513213 374591694 70323156 849927576 974445589 968533306 458175919 491944555 574811169 225660040 925266617 398984610 442224397 393081629 219998494 810368422 523847493 126084523 1072044271 548510142 706238093 355893527 90700588 113435287 250382610 85321742 230524405 230433412 185761236 193076377 55674193 43252478 508099751 994981570 727781151 315533924 526219043 586443287 453124158 1054221987 720017735 494630205 736076711 160023992 394994351 11418518 809508873 1017298572 530416375 434530482 30196446 750974878 870830048 422678386 445970027 80774321 157288430 554006811 147156339 448383234 912291077 609188289 379351052 932327760 224354653 266590084 189550812 284054197 454003069 70653217 1027008648 1000411821 1046726702 151445478 488380414 3033819 979376192 375843767 1041132778 853356621 156229263 216047467 248729095 282188129 724470781 717239138 689693379 632479154 504921187 297609132 55054831 463922572 668547474 648966895 998703386 493680537 781993546 1029912731 988884828 654797781 874054406 782398600 52120232 319964492 979632462 326593534 708954244 372607814 887920511 739269646 939208092 262766869 445331567 482413533 702650215 717490742 620844282 785675305 599039386 810332367 663941331 481027909 858834140 979086098 611711207 576765989 733046278 261681514 551843634 700911983 228021963 436505236 465077703 615544297 1003882373 313174324 740128489 992783165 135075278 439798547 170189714 567928928 828173573 641704623 752626318 213411738 527077803 543147693 715919907 1014111646 247639528 1069082994 369412071 481047795 230749287 296637735 344865920 579754446 536442615 365817568 99436003 231997876 490512309 277230897 427134253 91343747 100022407 1046131577 130587447 701551578 533270445 680072927 1037885629 821435653 485539686 40318810 962702522 305645390 484034659 603145462 938439527 900809167 553947157 327057067 572665866 230807361 246246406 82578301 794731170 480408250 496885223 1020557976 1056169892 794243939 799583558 332258934 23918988 243304670 622375815 496640681 424605690 20384718 179372412 190517531 193091739 569463242 87886436 59872952 404505341 774506241 126161842 539101870 590106916 921386776 95331935 915141563 902196267 488187017 173513718 1021412936 983586037 838892259 719797679 837421448 380800735 252260969 998027226 521337848 517556179 904926040 818498997 383724330 388928750 932213996 212211453 422411936 138940450 1018843069 874323849 423062874 801870365 502759790 939682553 1003250348 13578492 138836730 110374237 250789814 911631634 792546932 570488505 325965151 111637655 449379089 230451465 966558880 1064446052 798207671 782538427 598938485 105597099 200333973 302637718 609917874 107708041 505235641 999728121 575520203 25106999 927072763 306672141 119141478 487746660 374998337 573867807 703858829 333699751 967595305 89480244 145800282 100919827 144492397 63332967 417812055 469024782 199148043 829629269 782975328 787131526 845263426 303460047 37449751 482630571 9985816 41134106 1053577607 648608326 24628981 826528738 632997149 361425169 906660350 209565400 743110056 471491536 923810788 714341886 781287288 1035486588 439200357 887628869 892138670 399578886 371769616 6670643 620548306 840364834 741715489 580812978 641195525 305459758 791981424 810152526 562464552 332934206 1000545830 378904479 181323349 69050271 1013975752 421665419 853505037 1048954025 188418163 499676172 1044801393 301240199 64630109 423513368 1058428310 684497795 474835706 575231654 194731224 325054339 521081621 947226431 1072212955 383501395 918825849 641749522 676625759 1063813374 829161222 755052210 526920853 374854438 970789892 905137565 1062830605 384488066 179319523 491428970 423830034 639045030 310155459 965624048 199423355 854189447 657605914 759238459 966308180 139351926 743058281 491150298 348784981 542025107 100143453 239238598 322124492 847346820 98900780 359547052 662541877 540269150 618792713 525362631 194810976 109929586 997018468 514496832 784627753 270209996 131816769 919025445 315323787 768506908 988739837 746705238 247301289 914226307 1005619046 1024509620 761751453 407271245 240439119 458777342 1016421837 75605731 607278851 358627918 727201625 545263034 480192109 797443582 1012546525 148011534 796081040 803700638 959411751 912591282 614990924 710483785 1017477201 138379117 505736295 1031283471 1024871634 131764164 675134306 730331040 488188232 826048745 194660445 348287769 944328860 365043154 508853855 435065759 371369765 248967987 337865347 219989121 286298577 857057820 820448825 732731503 1009143212 424556898 8746564 476216587 620698345 607453161 335385084 605217965 999105260 428045933 833007796 768743136 438077076 197561975 759290739 721035773 59962137 522895476 900862171 698563548 267018420 586563583 908926216 3168340 328821449 246800434 134780807 730470622 521713388 689184563 893079743 766979220 77814410 256137836 1056772848 275448893 151726610 700300608 105811399 242958947 508557739 783200235 4628499 447529051 249699771 679875038 730643253 150970555 1011817990 594858269 252933269 17912262 401953605 780917633 1014384881 1011945507 269047939 539520547 572608080 524400023 736277785 1011954647 689186251 805220994 56555186 674868474 1032796173 688824013 999661144 698790686 359244215 195795937 913701945 327091093 334043409 454130441 102444202 865211688 882383803 732848744 347487055 148653395 547343503 420714635 1054225481 482915782 957973743 182650719 1067216913 180075932 183201082 332681187 668349741 428085906 73644895 734534036 1060965077 1036426195 618400375 198565690 913662893 127605646 219613222 985940959 276715199 370658237 877485890 56233550 944492510 817158320 688769374 620845611 899638867 425703625 265912962 424399166 676307369 57248518 906080690 901226282 195721285 404750430 510547895 857812030 589298587 227467493 136643425 32667699 623789370 421146435 818067482 581993823 874628942 59209454 638241921 1020039420 1033424808 552397418 395543390 122334360 2268407 160573065 153380049 249691335 1072508827 844957389 657869860 332841317 208299738 394077498 661497141 326333879 885936432 717979579 780025618 168559604 790402251 1039425179 569177177 767119140 481236048 343840116 1031089677 763786392 428345396 321327158 1013687653 73062863 679385608 125085950 627048362 433668237 1028159977 466931454 283344180 432797373 853521122 673859517 962857628 594148153 159056028 115428543 449276462 60333056 952381246 452152620 296313272 789476724 420051300 631050319 824704073 390521004 631744370 293563608 701312753 185737146 786695518 469283779 166731501 791352302 514657920 1020399042 40248231 118481320 873626425 552998456 30909013 171755014 284326630 442466985 708884440 947356905 526347436 139489880 705277318 524036447 815358958 786979104 4637111 843338453 989332241 874718933 759787643 788746933 22970984 381617346 443469765 264637793 923174772 210850740 40566864 399083282 1069237409 518821094 168857044 378379361 198584248 143353511 889837132 308153919 163921638 602335958 614918132 832118916 347485054 88633231 931650645 886898583 628248942 24746630 468379146 1017877630 906120495 583820397 308210366 14824376 24417889 811119211 66323665 455988296 681507848 538305006 736156622 282649918 495028174 650956147 281352722 781351736 864598775 418929658 318328238 266626678 368517782 424965460 372707490 325874410 147423040 479491273 332840327 250115189 1012170701 722058278 1069489080 1055657113 1016293891 785071935 1014701859 351258268 37485338 55592078 936521085 205626476 314317856 897408823 495899616 779198316 1013060240 432956935 889015872 253425033 1068985149 563003694 65827744 723150499 826075876 634001736 638905854 834893537 879272901 535046760 587387843 156687392 784720766 1018203256 588195596 407145749 471639035 517836677 1000500416 925980929 468012460 73834522 583672110 1056733279 596720749 1004260073 800399300 759788561 740336398 971247625 76289683 15397293 716051020 462027652 439093147 910190103 961590653 479798816 773291843 200865043 606151728 451067840 706384433 992826171 633335273 512214925 84062104 222242681 1062004004 328289279 618150035 721012557 998731169 330434712 982859897 52014861 784122180 172081867 608648086 292309102 269307084 878910584 97057543 687346574 514771820 490859904 755830704 264715762 54876740 1017218439 727233088 1065140104 944799629 377963926 734194148 513466340 839665913 540720421 130170917 794546144 267029518 389258840 312432424 1062925319 1006630644 466533960 634228338 736983034 949803168 379716030 974223689 468306674 558217231 114039391 940871570 942300381 62155883 132811846 241505193 577427050 374206645 643478661 334901163 526563585 978941167 154164013 338550489 131030449 387122246 978152187 950929073 698599988 988110159 735984150 377160802 340956210 949990117 74985247 828475516 8045584 84029632 708075700 879718090 416621498 1007825443 191004878 93201794 858831797 810321266 508433212 136501058 417790417 544199416 82629102 890349729 514693018 415789000 551010399 194367760 599746304 440238538 62368899 1037221810 581281304 471272084 841971997 826644623 96106794 916091914 392925307 480574856 95411921 357224745 382649611 700002439 249195709 85121057 842082094 748942922 286088640 557174689 814294029 1022835507 20033780 414586877 474081381 62499106 140706895 65620078 542910130 527434560 95017906 648763541 729912188 268092094 403516271 393546456 995083145 308443169 440348971 175887654 139094603 809305258 133194111 1069067365 608806680 105590465 965599428 553467679 19574327 514623920 959039097 944955443 293892680 724473530 690496232 1050435531 912377571 169756308 965406758 933568628 957948774 882003785 1029662582 867256247 335790268 236315629 624552862 416063719 73133246 100125593 218214671 3595706 965414500 637176296 860330381 395537629 982857817 445355003 640119743 671600339 701212481 485325852 674082965 584559031 806918347 476219164 661298329 844042576 759713597 485520517 441480648 212189978 292402497 1046493223 85341742 812173214 265462613 670324579 330268629 6503500 683460629 521590073 204264915 541059649 604303457 109120465 647470654 603226636 671104524 440733358 181558872 513054801 408854837 567645810 583803005 15489820 179861120 422534434 761547007 945239832 192798633 777337294 309153994 214484366 209301571 314610144 79138373 563628680 142333275 931626419 654918225 138428791 740182833 196999458 922335926 786373744 569434794 456470986 346051615 87059691 663972413 681107513 27789716 88878552 621160738 200595591 858325513 296252289 249668382 653611731 467108220 137645071 529948183 133274797 630754234 330355592 783909348 297107657 532138437 402050 99367204 472516464 619503968 719937913 626086025 447294089 916899656 579246831 229117697 521399774 755608556 230953246 414356584 976570401 351543279 294760615 949867022 251871377 473719050 842530872 448095376 833819511 763777477 358664337 622745394 780419937 678141531 706874942 651036594 160980468 452966896 890554350 589585291 329465582 101177798 1052846853 550146885 220601896 926320108 682033746 938282963 511279174 361425429 182575310 711341780 672306885 653274984 321282084 818593387 931209331 432088582 525014593 489870590 733870869 899726916 465880758 911329170 314216529 76505874 580008358 388835101 678606739 876644434 44600544 45858890 717027256 541502405 396695198 377952492 99432529 581332016 393003578 1044383114 749421818 977909131 80093469 532116792 624960025 244181398 554416360 16200099 481550571 571465897 111232386 331111125 449144123 676990514 129719101 1057661568 628833272 779312786 8883555 902442285 997961680 952910135 496515845 803807879 560586825 4057084 296680927 1035599082 980004773 887310768 1040154502 700756650 698894187 797330998 260220151 535168817 2475261 351686069 564405647 1039154020 150675113 23502738 959970174 850639490 977374703 1049462232 523293533 100606178 179779333 72690704 501326920 189936389 671370924 879875335 504245235 114692474 477216611 137136038 457664685 942315103 970649021 715197511 1005868082 971813881 991915581 330382338 424711968 856839881 73418265 298687108 446507848 432519089 45393667 226869525 282416832 501704391 301336238 886902458 246188563 789135117 744301015 784509901 754040712 522281793 1050001221 945375367 817901986 1003165020 655240368 1040980623 898155613 244580984 826200891 623870730 208958902 274003828 990932268 471017251 581531245 49266127 146564437 44162946 288998254 384754386 738570294 591761317 900601707 920540384 1061942228 626372363 844089065 623198641 108169945 855798094 474364735 618217966 140517637 620204515 535198999 508893007 602367835 1072641388 809513481 524788422 907419978 351483830 537661908 710368693 703310261 399952277 30950799 650027418 549657953 131290479 227391232 61655403 158078455 931828392 1069671273 499323946 118632852 832969014 683775422 480823809 470357946 448606705 48105278 210317791 63099693 470543961 1057872719 409713042 193172246 842838443 672443344 705912440 200821990 779957312 322852085 1013247111 51256038 309618946 40172611 549564559 179507905 949266393 489307548 87270208 771883787 549304583 451714429 639661720 407080745 214976944 65565566 981431842 446564289 248289954 68687570 886146646 281219231 967634942 420436454 997203537 543968255 210685214 746463491 1021264029 781595324 968189913 400393315 531464583 173869698 635368861 549470248 408155140 678776353 90634291 419274885 733860550 694401873 811995653 996963195 206338136 198656264 861626441 253160609 359597478 548624408 261895915 881749851 1073620802 845545620 775785425 47540859 752240669 453542960 560941273 287849597 893652593 708067257 390443590 798601783 792855964 620571299 965722792 504270865 72659337 411395809 723011331 401822078 648649814 582464553 654341311 962493824 888276275 1042381875 1050706884 40737471 1057947867 90269557 513593487 51226270 489912831 253932557 361720744 179308176 51042752 561578908 739518629 71383583 753035765 538462212 854610876 183241178 1072303648 509591360 681225344 995291082 256398993 251606814 562835206 68524686 461167773 577759121 690915171 269533331 388635424 407823269 643450996 130351138 687311108 614108370 779773464 182259812 958069407 222382749 889314345 485051073 44768484 676340989 101008535 116980597 589419161 759077407 935881043 281161971 369021658 220889826 194420246 122549865 941395918 900604270 772864291 213144236 596928127 968738857 411182530 1008573729 327275631 568931713 326778188 139297296 993982540 204994303 844711546 595296047 241966024 1026116744 1022013218 582741413 845152686 591743196 754702431 244246721 22966508 298964037 533664520 134392399 796978749 104184176 636279238 540548259 1063800796 417983061 174063316 36850290 442993123 634248490 297880231 559345664 660851119 454943230 703432207 124515402 123827811 249026878 651177173 543704522 483211375 1023958102 952119905 444728842 264288075 134163414 167288739 24275611 984475178 164570255 85239219 1041685590 188382264 861215527 1067800376 720595950 768464881 729176152 503722713 234024636 388495035 495422819 843527618 845730640 792038860 715384912 693383356 776739228 187318550 696563209 1024164974 43771701 404280025 545159217 556460205 531826850 920681240 547925215 937402511 433340886 521643163 985678984 389197443 912682637 737012515 882174427 316243776 631855755 406685690 904284764 925626900 670089591 155349714 972465952 162624169 650467939 448572260 81725042 99197047 260757786 357959696 699891334 368788177 248850237 62492010 137013692 486536324 106226459 438834573 858614257 921295023 838054619 121654401 705645261 542088944 10231344 399131501 944270933 619818083 356906812 973960998 894522207 1042980939 813527205 347064444 135879279 663280001 368681526 811036708 1039026758 913621129 905912117 693762120 754214478 37382689 149368420 577004356 891107481 1070704216 942226097 975650721 30531341 117523220 103618449 682549021 237613718 966283265 551957556 677329716 874049937 808034662 796615777 401973714 1001525496 470100329 41668090 765409670 111676108 1033155084 10235208 637853146 347871290 942323695 865202569 136315681 564126961 593314903 416513461 606150905 738057072 828512296 413927489 25391310 772149035 382072326 761689066 244487480 562361158 415560928 1064394598 424647411 215203620 322042528 658805006 813137170 504103528 762590528 1002791982 438265390 530724441 784960922 922018296 136157883 808431062 806680679 595367002 1049859322 155436539 341953974 793030999 669011434 227303685 29647688 41590319 841366900 1017090790 656298704 1056982738 197873950 641656077 643339576 1053217657 424133329 516035763 99873 424684642 89923428 305856963 871201483 391912618 984868398 219183059 925034400 110446593 191504861 26980407 390515707 971782105 200124988 513868942 777381674 131315697 671421462 538595400 215243706 891841612 576407320 1006777834 183273462 504724900 821353111 682743506 235754612 338611456 784473812 82786606 31096017 818464865 889681664 495563504 185922071 594028554 7335673 265881088 274091553 584405133 36961644 794287373 101880875 625562126 737581487 626982314 954156358 781239662 728727819 825838589 845051522 21133678 601358828 30935198 385761533 216942238 822706895 364835809 110073570 558195594 780847848 185298925 641926780 508261423 1012260163 530169462 875644262 268388642 450662122 61434344 194690715 177298372 242037884 469006740 34419930 197497798 739829179 808212429 240015503 889442846 454706595 260837890 348670626 75995169 3605875 908385197 976038669 527970136 441354415 854872842 667072175 319204851 812466585 888700026 501283496 503585037 485883927 248681211 337323719 717689906 949563890 795850679 451317635 762846411 523489339 785325089 487183763 535257780 959135793 477199852 1064709051 371172984 627787115 466975805 379069806 74338266 150284506 624410472 144849736 187481444 970196567 337317919 497094844 446988745 209851322 585805832 448739511 712439307 320268172 1039058194 295580680 625469732 590140108 423951795 198496319 117069482 765580104 308614984 602512696 741363839 1032405588 773602633 514028417 1058135698 699223736 146885050 406933533 249777802 492012974 908913411 759571751 768530393 267771839 497970094 405805614 260095042 783953643 71701930 588404686 888248069 789007770 432431841 967558199 81550336 840360698 883011659 899363332 463731327 657910860 284130589 50280859 803406494 163583189 41496253 526594238 176004258 15359926 1036665261 69181699 428168244 540489012 79105089 739194263 342539422 654299483 274713021 169567883 397680726 758092081 949074611 590109126 972054575 976508837 1020400215 907293676 420350073 449180289 842987828 428016383 748919692 602248854 96432740 687193345 838005405 29140062 331082044 188514495 782236564 473896885 234333689 105754010 559888277 457158846 215652683 231630081 414467259 715934718 234457831 999114240 1028103675 338692762 673378612 840087616 201801495 428928170 171185490 968848100 1065059171 1000371224 846260756 589565782 504978209 323552911 905442554 802957467 461031645 303388954 469207995 1031431952 974381277 114546522 842813254 420003946 465380927 844959860 1003925265 426250860 473933754 284591594 590485494 970823775 263503050 804938736 822419725 820815408 415535326 47275773 558203913 64772101 926206069 963132653 527401575 431189618 322597616 123962929 450493027 991074882 683047002 756024531 145654464 340412598 791853099 390717682 242518479 916309818 668295263 680784824 834900625 182607073 983108631 871882063 1006036954 1016608155 598047696 219760358 706523447 824787785 272754108 762240654 44898666 794300500 517507436 601285694 370808226 261725633 583096701 296303212 624244257 502908413 932033149 642099196 856801142 683579007 526416010 707142314 329391447 366105806 754100157 1041722174 332302523 404073286 434727553 982632471 666412826 487831239 1049901636 476624079 811098106 85564777 884493988 1007639374 275624590 423609412 532604170 616319520 744078890 408727170 974377652 418230483 534792310 485315152 1017342585 805800070 242019021 1028033280 155500959 933614400 261558684 76604309 994841706 772549696 764778324 482276855 507773760 5191242 548724393 439874501 309091796 710527801 641227593 574336662 619701093 473572548 708155051 43553859 614677494 1065875413 290857427 613212368 720739653 790339031 889065914 886088618 592671533 860304208 701340449 665662703 278112284 588710369 566059920 523363495 824626622 25179174 448469447 1036737883 580520783 912971620 586912984 97227160 817992263 927171886 298697769 339531289 782767823 616840907 374471964 69493634 838244974 117810793 86682738 220177121 244767005 928170669 594945141 96949325 375195473 717943769 927764231 555982188 99859239 15179326 205905245 63161759 363651774 182377127 178872444 646615391 485033526 602001986 87118411 702747589 312120155 921454222 883536119 531390487 276205826 601743342 465918535 1067710412 1064240311 156973976 426965663 170107345 938418314 975715122 220441999 273473133 804109919 336009293 455777162 696212653 1005694814 124640800 246336719 764543802 348824592 301398094 227293702 80483755 963888712 244946403 490234542 731587832 423224979 184975019 290741720 470905849 222780993 436268492 535418539 940337301 994221977 376405896 642657890 798773580 861416405 468396202 488202930 484936114 1057965555 724129414 882783587 888097000 1047922010 159866093 795171545 867251524 154015915 417139519 244416875 998269032 396307558 451738820 115272091 38790359 1060106680 818844404 321018255 242058922 999744222 724346388 258983288 842358751 54540756 541990865 66452473 31285457 867410052 157544227 702369040 579441131 839661509 780425237 293271592 440923349 670969314 865864847 757638667 563875853 364721215 625341672 347041167 767870834 288687995 421749947 342904842 120563491 444662946 213607871 909692357 452340824 773920945 790934126 631396420 499791781 88551415 702876964 1039722114 872017851 769884323 466768515 289925011 681257923 630763500 635935094 1045206530 938332907 47413662 1037472236 545875422 416249529 497409005 431222675 616533087 521008158 610580362 979363193 587068779 51043274 1025487998 547545686 699095906 764030517 43267400 338484650 215086893 538267640 450571480 961138618 311621705 1073059642 822727468 79927678 864739935 191224909 354173175 703044398 182706526 693005035 805158489 104848998 685336381 16025896 450417691 471464576 724682361 218413018 987347467 793983016 706380430 928648360 856786317 840738491 524264867 373968223 450098191 527186460 1069514204 783032411 506013764 978204089 445432948 651310680 926743053 1037380467 550476184 515067185 283240732 186875928 372155064 226646565 691006416 185196172 492147574 807198467 137862013 517525670 1047612001 1064548649 584338995 310139941 777492392 373364535 298289516 476434293 484029031 505552717 446924759 999636412 942933362 1041866601 898411102 474072182 812725363 250646722 1036765199 721239565 181596316 565194692 693430338 167031645 81283850 629699151 408544464 1040254169 738900117 671770401 841549547 406203030 1003988243 626185838 437693152 880703381 556698329 653078581 791780296 752115726 447203965 719254065 217153179 520079053 989439724 454719742 1061159167 500488344 973202070 380747866 824551462 98107147 465385064 539258866 944615632 537055234 476800888 415479730 28806016 214470429 635905047 355909858 554552830 134333340 361852653 98059678 247206246 42367686 326207400 411872255 111750905 620187894 730073169 436107036 880916459 55613634 449501882 792412627 924783503 35694924 603201973 809846348 753520690 698831408 840816828 203551766 212931140 973440246 172242333 884024967 476049773 881990008 358498572 493359186 247500919 532237870 257659712 615204000 674155006 773118993 1030860160 604190706 123099808 771564253 957220520 1045464117 278920688 237067172 439212962 523334945 180013618 986956249 192268363 63449445 293811744 274246915 37143356 497516484 800865324 1014476300 72096448 23755561 929279502 204431323 484289849 2067629 1048318800 904149799 252298433 13141528 848275723 743537727 721972635 349554361 717972198 848986811 132601365 642970486 253766671 411083070 874483281 877872555 144906500 348172803 254243792 605345943 238625332 48856984 830261075 433868815 856459621 799073921 180498504 22706374 146231223 663955538 726871398 1036100034 561710206 474728484 854052686 863597404 728157429 74184953 926363484 386845920 948772923 442373723 156106607 924313361 1041181885 779174065 837475209 975064219 518833157 426332617 552818108 1037732023 396462279 549305580 912121324 709067072 474274636 166276430 732135960 1022956630 933510531 465876813 510100907 597785963 464458544 599831385 574617077 54709347 180020116 109218352 616142114 181591387 962069456 366276390 940027530 627125447 860865546 890302592 715266782 417198598 562989040 644634974 42725154 124210771 271598355 174141719 169198342 773186768 387929740 954900527 863199839 1015653731 1064936732 788964699 364932644 340590186 227939929 382257663 383300050 455301930 238250382 855821261 945827038 983775106 891679211 927239127 403297483 1003659863 1043634719 857190423 1071534812 961064120 400618347 965438272 77304052 187376606 153626877 928691159 217872918 468415851 776693441 1028684966 629909204 1022338949 905542473 756851974 543329567 468145864 521689026 163378642 413225922 128088717 493677533 1005722770 979076899 863511310 224778510 826906242 591151008 146732025 1030195146 769384120 528518659 510753402 44352077 513889338 321204956 135202333 142215522 348389277 976516398 681356119 492926338 386952483 254554990 178854246 42398328 718821499 413610891 972769967 140735534 107179923 540368382 1019937494 511663802 454366210 467975895 1012023242 475014442 427438108 894868036 736334067 940901877 988117520 911079395 589047003 417444920 145971087 1008410020 762507913 284562482 182339112 160800387 113703248 100098027 288694046 770673961 377309362 807782394 849322994 668803848 187251369 112144650 888490790 470039031 313751091 320400245 49091013 425080915 701500700 292809429 951299981 588561352 938585795 1051940315 221242296 795480313 424676578 719015074 548788193 463197695 796649425 427016587 618514542 16746800 775767536 517502529 315537813 516354810 621987814 103595703 88334881 626454005 376611626 496308201 967750004 657416646 234348755 32880139 608298625 172615032 780980397 48314498 203347710 542932992 794580654 621213175 598884085 290659620 482468579 101459203 483640697 1067423268 1048063291 487546528 1029285391 181682996 563869764 466518437 797377921 623370968 679296931 1069928954 554854172 402289943 976602844 987241177 342130667 265650321 45868059 374514864 1042659036 642806501 36483422 988704053 754038623 1019159487 920291479 338732733 700731415 625958333 211546646 701488623 236524806 1073638909 897460384 839574030 182777175 528326706 840192710 958679369 37785983 792186282 853649711 388554629 798856045 222752740 821521219 854317524 447360512 817095844 152038222 761119842 970344270 286682722 791647346 914786744 77310224 171980853 91410561 837400953 676461901 496735084 549592480 398169662 106079257 308564096 537266030 749342522 218635887 714424143 559439303 889628280 679286784 408024110 678687886 68780527 762746987 922799212 773258220 906597563 398565879 637185443 706478478 476986404 390594977 642760666 112062568 748625077 83510989 626990116 693331272 271457983 91127024 22316300 364836399 1015815209 331938068 255717606 848601933 1004702700 300760872 709731011 37355582 425089013 381664406 367111959 973648268 447661143 391008169 322541526 808853043 327450834 138729053 1073323243 391832175 22402396 436282594 563823627 766618224 96565993 582710512 394309363 169358336 38606413 363381312 1005511239 301652071 965800783 384553072 761576516 669938971 377396549 770521348 263566424 650404213 554780481 82079125 991455175 988104292 242676919 60028746 286614841 115608327 690588321 194923727 440159612 851667843 307398763 1039301041 702188732 145297678 819445708 414055012 1047216249 399911965 1011886653 786015665 873546399 271582053 726476895 141956087 999032463 1050379662 924819373 957857333 594184718 535741851 301640891 1005085603 1018517428 997354381 893173478 117637465 698583164 1062748227 633658088 430821910 489276947 591108205 706301128 381478345 28222757 745147661 446339273 586138996 505319083 553203131 796981491 185586074 465563943 624956804 582179299 1010202680 312921562 714342940 693482900 896737946 990438774 849385782 276502024 554606278 1068284780 337059180 384297640 490940746 108604907 320512049 923749419 784539654 130346431 235767354 475596083 645773974 738675785 889806858 393164529 262211877 914296568 695804680 757879203 610826832 410184439 710183485 984172902 926676201 654115349 504443662 956483551 1019218953 327434937 298948509 511849124 1005204213 751970058 567777373 904975896 177094491 1060189795 187433592 241767485 766878390 283464114 698686946 392765209 1357471 187341920 76919588 470990422 333501264 594805850 565373799 144334030 891828867 748162063 213290865 596557834 236177140 561123684 871442095 591307879 242959960 95294512 228722901 622090222 160319621 912394942 704611561 1000691457 344048570 236118823 756299879 579919844 10266443 444752773 67272358 646655319 1058767181 231890563 688796443 347042048 949322075 806856871 410146236 302421172 117294634 164354249 1066008267 396468255 629713862 1037631313 469197274 190889882 1030303568 393087765 694776690 22786333 448599269 520664024 352756308 500070845 587860665 959975692 59030070 21530283 261075316 484889176 896521314 866863221 168416251 461087174 585718676 1052597738 643953930 916802815 922737816 305278866 983886140 307432663 843484479 96752030 572817520 851158786 895535578 605003126 430747748 771189580 259805091 45708110 380534481 66434103 773825387 170008534 81704234 483522388 958813173 626316778 186437572 352726221 458714908 437310224 1034184796 554184359 1063539665 668709912 215680557 134082954 104885194 180093636 727214737 694321840 573726313 532768612 103023828 248198763 335793156 445123307 265466201 854664390 799638791 665039169 500978876 1050427988 996052847 359945022 595077498 559033322 1017436189 755612564 799411757 699697126 343231336 49506961 606808443 594988096 415352761 1036780461 230796857 665373649 1030871506 12959618 570835109 952680206 1001731071 35575182 337708688 40979885 501500027 63909394 984057388 878136972 997975072 634255397 550339294 171650305 537286646 468570956 989160239 407841136 841267225 541358649 79806005 50318487 291155854 365157776 712871453 83679688 968114739 18537917 1048305003 955129398 321939094 385940973 80743420 426534332 592088084 954215584 936184421 788315352 399689955 684546598 34209271 1018724005 339504542 504188973 829739407 571995654 611306660 521582328 125655981 433250408 144686740 381875138 621850566 791123086 586763779 691237919 807025412 192817285 928202032 32902389 797968427 623374113 498753934 688257109 815368752 611620036 426564275 930198478 227504558 546087779 568759866 525130621 118012849 186939640 716237585 1006544943 336267363 738999691 281204327 675083497 522252387 630582241 82336391 318719958 111457078 1034765109 836501804 92852807 1000318422 362229575 575516543 782553843 840763712 665713555 700526622 367293277 435367227 321800262 660635539 846953829 227493182 594380154 339253108 488982269 429720647 27233690 773448423 649052683 372298855 56377957 348538206 16438683 375614091 290599029 12027047 283286124 36657223 86781533 156383844 972188653 536312589 872657668 606337491 711331693 597115228 777401983 103169158 118469825 823742275 786358491 384124748 731525168 613965172 1033879079 242431417 583844246 533655009 264472143 488047241 476950676 631804999 149516433 44802807 4752429 705990067 1055387564 871855963 696189430 498734387 323529865 229876680 556062659 663801369 821576819 25220471 896797895 737834660 36399595 935079809 661750059 885356791 396198947 129538879 607870687 934751989 293017344 1072428920 265914766 628606859 119919219 777359409 519478956 403957597 347401722 148343917 315135539 511104143 449316232 83366728 126080852 1019521950 219959890 169414105 971453752 303738320 709722792 401543940 179100398 832979370 988437243 492820879 488955492 670562742 730919050 83731514 57280133 410527059 844942677 503535951 854459249 448585434 94446978 108723456 1009426099 540140666 275237716 144772017 921513367 187684916 914623347 769449915 411761934 736954745 628437357 164194868 122339799 1011301866 210151903 768501345 822775014 745093153 1064477658 798585633 778287259 771855748 503197470 711183885 531993594 579115973 462570263 752208352 812093950 884056276 283371292 751022528 667492589 681403874 175309864 95994308 230460833 46816105 441455229 195356753 423712419 349973944 317702665 713478008 492087965 762925034 130464813 1050453705 83375372 31045278 179509450 702724460 587141096 1057406686 878517825 5310895 951991898 577870526 767713738 472532083 213599782 977228876 711876178 364576376 354687288 611104940 896628776 141674717 868013714 794841501 929756435 347771627 568427630 179639323 294623566 747321046 550802170 480758958 204240485 393625772 505634180 719429812 430145170 583225712 135475700 723233165 584672043 568016571 950127842 949988895 372442895 1004939640 457815847 217965848 586738464 721001204 118870197 466515814 899303979 881497235 226357438 651822881 762815936 623599180 586536817 945111156 635027630 1933121 200761040 906788025 613905833 670495253 223780720 904151550 986846732 864942123 244093782 260264484 450418071 948663949 188473368 11656655 1068718950 27359286 486194886 492669800 853094147 525763561 452177212 426904092 779648427 245405799 285773527 1040515827 998532201 967136624 543533409 477613392 253957464 14043652 309625741 30843482 281960565 1052892112 740859536 574042323 707570248 675830758 695156158 892089726 590652517 791265608 355706932 318130707 687436336 909558443 718471232 101274751 65242102 624007106 796122170 123110291 274615078 986792376 919572404 854875489 1001202788 189118108 102486758 919252833 201912718 308454870 192040481 714665679 490330401 65442921 971877239 658181937 679769986 219865904 184202645 1002895279 442256390 364076958 697568800 309192040 430843686 714158633 134866357 1050779430 82051367 538694667 173194700 110198633 682267369 154055199 1069050794 141892950 461886742 534645777 431838609 437655250 763462792 620626438 624127395 742106735 1065496584 293498680 743188526 532877898 481293419 459582292 324316756 285534749 143343309 121960055 282019459 480501910 31017662 426146673 770725975 962933103 870752785 797977580 869242952 381837796 1046039356 17738 550269370 321698344 513607750 466415611 706135625 1028492990 482978843 329229967 540270625 107724638 961023891 268741053 62008351 220563475 415828862 327300866 273841830 743733262 281868765 342075771 34738491 535847247 45065953 821145412 672227779 377431 328633052 69945978 372953002 97224288 808289751 897623429 246574798 92926097 967572071 549705864 368977769 1024990671 959292213 506691245 764895278 450558691 591742005 716895918 1035736299 787622846 670005107 253263264 362545707 443691462 969979328 416252807 789897219 814172768 1048182656 356805443 89072401 448718471 784909472 251188671 160130932 401926481 445338889 1049992337 1001458789 607277347 604554408 350359999 504986893 767162246 736649234 717617996 1034892476 282898751 360769249 746444735 50468519 341532128 991929111 574421652 833506924 183250122 984843969 794268884 43477178 662692979 210752612 503283165 476715702 539221910 603217263 902260852 307233189 192468798 598983214 607040882 20018966 102282058 22104087 700288451 384658413 743910831 89726496 401148354 1050134245 163181261 150049065 985263804 847021066 149894651 907931467 765141575 1022572046 860630278 832896972 377862661 1062120820 395319763 344556064 337760727 120831802 396827657 1006295526 999394662 470805241 24497007 166984930 87500518 341109827 290004397 397956651 580742315 177230481 852680491 893112665 124446992 1025195811 586288661 85329653 910823864 152285319 1072853779 761389373 758426522 552783699 367455303 837557218 926756153 1052955307 26020790 246183339 433149990 1001225435 860277357 726996255 1063502249 574765770 449966233 870834370 1033698761 314808775 839135388 949213430 874650520 436699493 714897799 87011809 423735420 54313545 699891572 255713301 666559250 210553370 137672567 491559892 519394446 864959136 738965693 51659465 742507407 1017011050 48558529 25119027 667544099 693069642 821124303 797506278 513158228 123168951 912098160 267203082 266769381 654812978 492122663 380993771 455583098 222885548 474753030 341566163 8215159 525853612 108329470 459361942 749911005 838282635 643233658 971510699 314543953 379837069 538855216 109240756 338798306 34573624 283346521 864566512 948711260 916135992 553064591 705968993 481990294 620560647 159535376 1036054370 1015849390 403938066 978534415 132497590 578616892 621290433 310893087 700638085 37239973 333887353 387242516 76722151 1008123851 551241005 911151345 231288590 973974727 688798378 881909416 323676218 917737953 918558477 389149256 886184046 823893267 512360973 800625371 657369655 146484740 471677446 1069145714 935230043 12847616 913830586 678643480 493020115 1027457593 747921075 836610880 548551579 833289165 120829962 1008080193 825439414 998964125 153651004 382797252 829709760 259921107 89149 1013024992 534807380 218676844 571467830 558102082 75100460 210860853 422626034 68138926 233449523 62465203 314347375 480099632 895255473 713264807 159709086 544489232 627233349 63065178 289455112 221981183 570905590 664607165 57908452 759495760 116211755 127911305 228141066 1035078084 999967201 318325296 79416917 384807302 188625631 55085187 637381389 389008760 784413015 813028841 795542494 662695092 606703438 822591421 104573604 254192333 970258810 618070889 797976844 339707143 564409046 12742403 941977669 607219799 386035939 120271063 806299958 644643702 236417974 553259391 596040892 387412430 386982446 288689377 71725799 990572953 247234161 114913855 298346124 447395621 559429333 291460981 706102618 455439107 144134270 239384676 120207277 855712448 612926475 291656903 1068054782 896762540 1022710699 760900262 1033112518 667752999 822510031 393999296 604286 168739950 270324175 146869938 1048018098 999526248 163349741 929076690 218116460 166190708 895106778 508785935 1014984073 374713446 160246214 71211814 159015610 77538342 542368348 254083827 449475473 50419534 714655698 271425243 433786121 713227329 467657257 790633193 190389589 677824950 873571951 989768721 546465318 467261536 785577349 1010900529 212055791 63047757 232876875 410386823 868648453 527235903 932292969 399378997 1047808944 226497466 186825530 805759878 500963933 45896569 128969406 924948003 307850156 531237485 1035999525 377006992 685389101 464787466 262528661 541836340 747453565 368535182 608682002 548574311 1055667924 77241662 698389414 35964179 122431392 697137917 135537390 236941807 261980776 305675321 748031560 437933883 352653994 230087130 993014009 35813792 367425809 69555189 528229293 20408687 896019034 288015743 389974676 131417326 185061264 919863480 873951691 542421436 236542502 990470516 238123366 226316165 59002244 1052743283 60905591 592610899 627700567 795908966 337512834 578094805 729900345 656576724 414494000 492844030 894984155 134492123 1060516094 281903121 372848234 95166570 746328783 129300257 291941558 347488610 477608110 726501866 675960092 1020584628 26793406 105542318 948386032 29076902 986920349 322249091 342453047 1026253356 50023699 929817477 804600231 524726158 603984893 49555449 634053823 424198365 668359385 700636007 127401339 395232119 888592760 760830074 389018445 371991946 999157662 310888054 902832903 194015405 790816380 24676145 528372290 546563048 472473009 450181748 163279448 646608429 224983875 378165846 708808124 265284037 266008652 175192017 493996217 852243663 702296086 1046364771 899980416 845238403 618568041 100473349 396116824 725702530 17117425 586578581 504066662 885725222 242156420 687545206 674777100 430391362 151527685 395248735 1065001187 312992449 560425333 545160478 576544812 1035977769 198247688 857709121 67602909 1046354056 995231613 414239006 741079308 1006437761 548365204 951198045 133588732 483850020 883170995 781509201 423099739 837388823 225641795 366741280 604364488 466122357 611064562 830021932 333523755 288416495 286262712 410050095 227261891 168516590 975462721 901498765 195012246 536302988 578172629 595793719 404295263 801520185 162214301 808415184 309677623 126784353 491893606 532651349 654021633 370955915 1006633457 671120797 568177838 188734405 229226923 110584452 594153602 228535477 843535155 979801699 480149167 319208415 35030628 218194919 416570200 329000381 265902107 827699171 674815973 889326393 1070912004 584115819 562073417 820495385 394417428 529281689 785425821 808811604 84278322 612668407 272191133 195105021 80879877 519068625 779497949 259608661 486676748 183015061 321998162 1049171673 787679965 588577963 835417319 621630675 886940909 82924240 634502867 990424272 873156954 484248333 418109332 191809222 440066901 645926348 654465771 798099082 195425562 1055926744 418301614 799296917 237124099 1015580361 959182127 707169024 1049969585 922412159 94667710 700313817 101341207 850408557 883677593 351893110 42123702 760791664 777120655 1028872679 398621561 629433145 236942681 972160760 422875869 626961717 586804059 289549708 947148585 885070225 445895637 397846733 284718113 1073073842 199517464 369311989 793758544 681943610 998015279 121817906 984632022 779455679 738077579 896119006 130426461 81778820 808734156 34176997 182526859 128171100 621033084 883654694 816665616 157759072 717058799 979861615 693238013 619864407 933386947 460476428 897612747 496698801 297548467 531244961 250190686 266903038 595243375 169669735 525041810 788634033 242819885 298365146 192540962 943092631 943638926 133219692 686861500 348252763 782876592 679019314 520967452 309591882 479710706 71857336 400048833 371388120 854565550 173266305 77114330 943021622 606338984 259469959 900417173 521979206 205249777 325945556 466249004 635662956 451152881 72651317 499456909 552247993 812972276 615635042 647695441 503036783 21787539 431617244 538725611 622488689 682281471 529074890 913582867 339205695 188461209 173154303 280806497 756932039 323787165 774883418 640315270 703142230 792546647 743037380 509178822 834478418 753505042 912622563 979596201 187804081 946988613 967179756 936754394 430349239 163452978 751616854 947007791 24241057 878401525 773647843 358489129 471864707 452865525 580772524 767448316 208199899 141502447 486503115 479278243 995061488 833330853 272551575 987346031 631126041 353745124 344502920 695565792 711900117 1007432491 256733549 377894642 1011818030 429383887 298206328 904966965 392507732 346322953 168955528 287729296 420284849 576627874 1029231820 772978456 633764777 417592391 439698265 39347382 674946645 934741136 94380371 649247680 1025477486 868604637 645122080 23422089 329015552 1030864440 885115802 792280799 1011136214 958902659 770954749 875001154 656398212 142591821 1025308385 770864717 903626993 257124949 518527890 356836963 580693488 892817763 797032299 178233346 976947785 273837808 616897851 416334348 473495367 514000562 34681283 500201083 498983097 686052353 366293574 67333081 572339517 634212449 194429039 670124674 271978726 834909044 454301499 488933415 926788712 581906066 482909575 379585644 778611744 431081997 777273623 162378234 708867692 1064096080 534140706 758892652 729168676 493894992 664593327 736001797 288434472 161937750 386858006 1000907057 826605061 629105180 268912298 86842133 709622271 677241062 1040839673 501899752 218801635 516326586 316087386 747472703 409335376 816036055 559878920 999210411 98842111 874359380 729565563 278151489 169329428 922812352 543770726 837084310 531523319 606597783 635501621 829676950 868709378 474304009 709380774 192482307 353147690 809501622 4331379 47560735 945647091 390386222 588103335 183477758 958190192 397415669 114437597 584371452 260189284 132056719 195869685 156647261 81598822 16629752 95849792 329978931 441820159 56929712 1032406840 817958544 416512813 459571155 63107687 683797322 74421188 618810135 964933186 171961980 922046060 183303193 1044210380 401101213 1072683163 228002433 706377110 389434772 269958780 1062188646 41472222 1070953788 578090850 568323632 845031904 78577783 424763096 623670400 559330848 523006724 234800715 39019521 912386800 197457348 511741408 823301877 401964577 618619404 1067132842 1050485577 1033110182 767105123 888519770 76101311 807178057 967790159 877495002 509671241 509596235 318623749 1007959631 329814157 187233464 870515446 648035767 342191913 286658194 251136598 947846689 893498175 308316807 1004019934 231737861 810962618 167229819 145443307 675393073 967089192 324839810 235905474 737764276 441604437 982322903 276604135 90993386 603649093 495078221 779682521 991595820 294495403 1018412898 895708962 299081540 1034290621 806649731 142155828 440642764 19999425 606278217 684632370 457462716 68032473 881710561 980088253 99145056 166198137 138269448 219249998 771380796 543528843 128151874 598709124 284364941 262745741 580379490 598175968 330820598 347331583 464926411 775017568 680247873 783884128 942330385 771783329 966892762 281409823 67331473 492349942 214946202 602133835 1045792115 444679748 869682552 1056376292 634648410 684164205 388639908 209672478 342867419 383622007 210140464 523684052 1009464547 1022724944 620673390 974703231 474417735 665110624 79918391 387579338 3549200 476775644 57046690 393765665 152851639 645701343 99683197 1051121706 3903252 500508980 936620537 208879271 592388101 639380866 516822926 336624365 928390256 800670379 351259182 1023863285 244935825 877823371 1009160817 668206438 413330719 904717693 3237762 302822005 220828911 1010418474 596107094 1042526257 959339597 811255224 405346603 645029564 600030006 985714885 859546394 894291686 83124841 156283822 749650677 323588803 1021509413 754202230 599714154 200345105 373750365 871012373 990890895 816744686 258118987 732001760 184752834 378415959 414658356 301533480 252510453 93095205 51007979 669252759 868528909 706278351 352035288 578289029 1072204379 711457942 429451099 619473151 150551133 900001894 677739783 1029631437 717788301 721571974 876955145 1023620261 1069047785 872444105 301588131 153627382 420076144 641333954 634555802 765491092 43252684 717414469 614928948 145499580 1071512821 924231868 117548283 965477981 646893137 769300802 534288382 473772810 756331626 665688284 900049627 660534563 335667913 367144993 754634677 905537117 698377849 329639739 521111389 1023348602 428393598 715253929 826276554 544375696 804521821 296221599 235224690 460417332 1053131214 497465652 980602657 602701351 919144239 458185245 413514123 734767239 130102778 115300604 203316099 777729557 127988955 70047394 530076777 845235038 467622534 723417085 193763678 208699931 469841357 595683401 772906876 356401969 455979759 782973538 890847109 521100386 1048851690 504189317 248142472 193336880 60420242 627889645 872404955 71153433 497831621 456177980 1032591696 41165931 785792397 113665752 291648872 778272805 5935538 669866706 415951856 443579436 1069515080 856086554 467273347 1045949444 990784136 231560303 639472721 1066115949 203901966 373820136 22271284 336384658 290226114 273064499 379765865 933423471 311704929 917417565 412176639 773896781 421043288 853813771 980769389 586790597 750469256 353783150 505983899 1067375394 579633038 906411859 555525724 950987751 13446326 719489055 777699383 490897023 1004361619 331519689 506852854 819150739 479709851 929746314 414125747 653715259 875512916 655856829 462664851 975968708 211967424 110130299 553442528 627057037 650078875 878702997 739093243 393009567 497203790 77374543 873476000 350182794 247916131 632883814 781508791 886875432 904659436 276808678 11466120 587742929 1936004 102060288 845432135 660923338 290404386 325963322 1055531395 727410679 987717688 225990853 833601467 320700836 544205155 657995607 638209409 231839625 320568130 594483268 454309424 89722529 299304899 266458585 1030289291 664533520 488821208 100426076 331028460 375097221 143534243 775289713 736215934 1021578274 72009935 946593321 939507425 822897420 976691304 249714977 472805392 243974882 32567877 765262114 404744538 530220221 753849529 970226983 855195617 132187773 549412406 1042240654 783488677 93215303 774102642 873619794 764672138 824432282 140335040 916436848 653676448 300323706 880360373 802264464 844713865 380496726 865573044 986120303 333205163 550240430 857269816 539087723 494632169 266776767 469598943 192622074 54171065 334787727 413510809 193619763 269675642 849166725 112985901 645847096 838335323 557928468 714881844 535842661 406942004 128784915 309310796 867260215 535725836 508948591 32200915 999090716 644696299 767529107 104007311 1048273075 1042526991 888944318 836817152 542297599 480717001 126953595 672872851 578187575 530403460 546184070 330300704 23935741 643372258 36611547 272082806 70381268 190522467 778072863 387098556 615562922 29455073 757316371 773553902 598505706 985786726 847232227 141556503 154667159 650770322 687910934 812489750 1015529347 198151618 156898513 1004418025 35536757 617554405 214053637 123011478 196203857 651707576 426738630 58015867 150958280 268208360 279125394 489707262 342152271 421898660 398901699 342866416 622584344 314834825 721847478 852961329 291838172 132116970 399018845 284998181 924902527 641184995 132111355 230069596 166950914 306871476 416153197 218928121 650114719 1028654020 945956487 740265663 28220012 389047664 573685957 279157918 403779555 61383349 621241731 685121736 592929069 138677714 31471926 47091343 569561944 509717396 311909778 11456909 662731354 871356743 11687280 643169622 406852052 581883146 1046570650 670853296 936630049 161473330 884585303 22061572 276333573 279320504 944665230 926201159 432653097 270194281 818990282 130428611 167609397 1001608087 708920120 925559533 494220910 199041227 389478123 234833470 29794430 689290103 1038522138 1048514177 56173753 197245961 867593167 470628101 1065023985 214764836 736073868 101328179 733650772 893149769 453942503 326509531 1037648263 155073557 566333314 1000225400 791219387 176052438 795432490 791898789 22258134 536577157 554713735 344361042 1042629799 873820953 1038927512 890596992 1042253106 852696215 987500673 611284483 43957259 322894025 567918929 1022731848 448843780 125349202 928417338 311974095 233781262 241062703 681552298 683837537 7974454 238530741 446285376 508360246 241643492 531292027 196499648 777216504 901279985 1032854426 157144492 822696309 941892877 348297921 750459971 479747343 878830544 613803443 949646188 587128422 1047579981 388134232 62734862 949282717 61672103 756722281 663311522 36104950 258636487 965708963 485315552 402842588 809369490 533950340 171137579 67224125 973825319 713461519 423296517 508013111 191354856 625699058 681732157 965560296 105661504 934990537 655654699 342731284 328791084 907473669 352693252 536155538 978558060 244549995 537202012 219858959 999733215 906667386 24609638 648572046 671196404 31599964 473876221 750287539 182267611 457875595 517107377 106364578 61446560 779593737 53396406 887239442 905391948 800883141 748196192 620379275 143794241 917724608 658125975 911346356 112479546 303283337 924292810 402125715 1017880537 574115392 905283973 658929461 292948964 855316045 799101774 120082164 416805485 1067701200 28593955 151228452 682785807 538802099 183664217 268973769 620580639 826831495 962941825 184818453 941019647 60368943 335306769 279691284 629570389 59468945 139595669 774378922 185839658 886008170 65729900 100674420 278927643 1001832189 51298750 494319640 1048250157 847351162 130130038 359441167 793045075 78460505 883466027 646263850 575590523 409695601 801299961 858566622 393540152 336293248 177279197 969806233 682013222 170881441 411775849 223731515 221468343 864451647 81415841 520349254 701581260 300834730 856662524 173784372 472514750 812236497 949740775 58368501 357537588 205818675 194845868 835346214 217298467 912443381 723690150 838484136 918273972 499127703 1018597877 811106019 790604585 602102744 741796394 530609977 132255180 648495655 100241129 950347328 184518623 785679570 33220755 1069722215 342426894 6294885 362319729 131514955 696954145 454368145 357097310 67493980 543577561 129331166 190301076 914211916 799096490 235072495 848613281 218459976 1065541317 242540263 144429547 425164924 427603606 371205512 543058155 1064136934 1026170245 1037511219 814027232 1061249961 567366388 331954033 941594726 951671664 534996257 240027709 631537211 98646447 772624894 249589468 201277215 221248920 695750720 155527981 415693998 716839890 104404104 1065017279 176399277 1017012058 44975507 719044140 827288477 583039266 642495636 29970800 607840810 79376674 952605081 724678167 935936438 65923743 15879298 95368886 457607023 686812703 978506571 765662084 827368056 269779391 117195471 977837607 254398644 899334438 936302089 264786472 1034313895 561649244 342750449 762388131 1037391515 564921233 180616634 175610531 265873227 242360201 1018924864 723133998 177655923 611952646 771130864 337724904 304023354 623496167 912563155 250524689 549890597 68517217 355350899 770989228 1046431531 1043720618 674300072 912695959 757956821 821292440 1039839936 474296807 398445992 674058605 46151775 127031504 308699807 78198196 854917221 998737643 88688063 261002176 11414455 883929804 41861831 250115914 632877642 359510032 553433043 822713378 768542999 961873462 1008116520 539231495 732898371 924827256 682870699 788802813 955489126 1058483852 139045362 312879447 337418859 890204688 965211302 985583157 317413553 283734672 882551535 472292754 712243149 525732652 753374478 605832679 1065960007 662989323 252737648 1034969090 576614101 282762997 407161670 252463346 640627691 851396157 539698588 441311087 878524866 1059795724 243380943 992585541 657301399 232189222 260577102 193216198 335775204 17814082 785633027 590821136 532163913 1046743791 742365575 623117484 915962323 793036014 583474492 352015127 845009697 261042201 211774694 969331837 627844649 417369193 371309461 429734922 302084561 924689580 131183529 78991724 103158072 138164221 918697843 1010770009 270975164 679760485 153140068 129084369 287694197 464389145 243291600 734426123 248682012 833416669 985811095 881402072 466988363 62214902 1051553976 133395069 38146234 876856300 877971829 879138187 492476534 1068765254 755412325 813304699 286156150 444072294 831124195 335097654 176956857 16767423 254914518 877350306 916965753 298902777 1021367610 83101773 970052221 516724304 761954406 295872675 970965578 360088741 160258640 631012998 288003080 833666209 1053114745 579370267 832308787 833141802 238399435 217707358 161050106 1045476612 681694626 245586050 853776225 736856803 254584437 1068934094 774659918 343961966 131308040 961159676 709837381 985861578 140221359 645245253 25396545 633088443 223186864 749900339 683118015 385555836 702996133 503824301 634769275 80402825 708550269 791047416 150220568 251500447 571160009 68480615 957331537 927755646 357727825 737941239 595905235 617805189 977924463 445420647 363113179 230269262 592782366 371041724 320870342 582293170 449695158 903952514 160239914 396644436 584991506 318330434 599563719 442978241 1072840735 643803760 940734623 119805918 614097152 957429371 765066528 106958079 855960320 321622156 230728666 158640028 672412007 600009377 747930218 949793418 820345858 369060893 124633347 475715707 479887395 718749619 380559669 39313220 926483722 382375832 596511453 757731029 319447728 562466023 437222405 717268599 464082904 746747331 1040830397 344522607 663493507 1004904532 314492890 22768519 6542588 963437103 16701445 677033378 821392963 271730470 1034638882 605602353 951510669 754571262 685926192 919151655 559757130 942647065 392100348 781418753 775274576 810222107 444547208 65830596 276779851 199515267 400220622 381823550 162103877 1043904786 840173502 864454426 594510165 633003283 116343274 891995590 770073074 1004580276 622045268 1043854305 431000804 297693922 656124809 743145129 603252673 161067840 125885507 1063311204 903232917 343038278 212193197 512084375 787842993 167824276 820122688 193781705 412851637 851634997 1012798267 16377017 23441907 1026402928 976434185 538534665 449643285 308022625 266924418 662964746 922167591 422427402 202009447 948667714 572028012 2443369 542845556 946963579 658730899 493304112 1004143541 936521654 147153406 1021229338 230305874 383802501 462223460 654141677 444056875 458750615 232314789 935593892 491380285 1040304658 90246273 906116968 269686808 224669938 100030983 176427319 42744785 455866699 761098304 260466982 879726371 724755375 890682949 914517851 980582882 643986876 9394169 263749363 275845225 650511104 704727325 641723561 70364716 395075513 291773897 638232004 1029819494 579520175 57858355 174144526 364240652 231059479 433044896 818018827 862623932 268634657 189024843 407199676 270433820 339848532 886579604 209184220 872774596 37700903 735096281 588132427 444500595 782309088 560955348 1041437657 80222880 553211774 793034135 971370526 887448720 937967401 915993381 929843769 182920083 259783351 361533313 483259275 268265575 1055696670 1038749289 563829316 525663671 413862830 372026852 1073487044 1024591037 494439087 187913098 38228737 571232985 674362187 491309082 184051621 566072155 370471765 246914158 598872685 564659483 580051633 594229284 623272206 169247453 433356467 477393096 598529922 100624461 884571856 746692566 679454984 737846752 741182063 927030872 1057037433 649833201 924945425 461427538 232673283 475574574 1021579223 951387854 300300883 578178717 614858198 672005594 519117341 338505664 1034475713 206330397 280373206 870587913 166120337 697807284 899039371 154457704 895639246 558593737 14123424 259549369 515136398 465909201 24141892 242312619 196450844 767090450 775935524 940336318 1066224514 498473565 405423988 926122265 960090618 902646345 81311850 102529439 337352320 1036810653 876108686 750315455 141780544 301464872 752258649 742759703 1004281683 914181274 298777327 157498026 621129164 771356341 104637313 569564399 145792847 256358206 406107798 796539712 964416735 769203648 106649492 170468502 339940602 1053537697 580738057 115752243 651842908 90484460 1045039234 598811413 378025911 1073449916 366026941 757283804 678187676 900209254 591659248 578362765 120674677 892288972 653900445 135880925 896468132 782818746 465718339 421096169 925770591 969975731 691349693 811215384 453387845 553185953 709369148 322584842 293517397 353486076 252500048 621633815 517470209 243338576 866451864 1026879455 1021863882 894408990 388555466 618015914 759976845 388429168 414433350 519760937 948524832 236269991 488480899 1054832912 353119528 1044703621 1053092700 680411914 48245243 702001832 515759051 923004370 804231100 1044279567 740339314 23879936 116577180 275386679 1003349097 319031284 295705722 326794691 245651175 371450264 82127374 282167399 994120576 879823819 213606503 676030786 595837874 569842171 749735122 1022694919 403723763 90747527 590786743 829767345 17359284 520001130 303575596 751229297 678590083 874953113 518652731 272089488 345332700 627975204 687729599 657634857 826217850 583223362 930850368 765117603 744348175 844767521 396053087 195395428 528476377 398828419 67164309 683349914 667331410 661057852 117490723 516180085 899878920 35874702 549141741 699376640 1023981981 686109693 645889662 161319125 53701861 1031041231 630133325 999602609 801366444 161658513 490341834 693780375 675897588 467886081 943792464 129596252 196477727 505857093 609943464 473071811 421690344 5419059 859559047 975047559 730446396 815028510 133171470 388976120 75067381 112955444 783655722 865350883 809706513 172279599 721138743 265013489 870767327 230852692 315199411 540363459 628198791 342710249 334519972 279387127 1061184075 552029946 583350335 491441688 540158445 157532227 431348197 838611239 538112538 185090050 845951368 888837471 64712493 465788973 20437253 190352166 941003078 225991018 51298097 19229896 360181709 124883714 673148220 157844938 541497619 71788595 409192338 7589894 902089690 810978131 452067814 1024036096 1061415591 702168414 255069836 70566639 659483973 1070060162 626441574 928317533 541316478 834296646 815434020 111954307 451038314 215867904 565683767 427447202 377939389 224893665 1024713468 670785904 790524751 332537654 946826276 718784416 890281036 36161975 752159107 527631272 900676528 501191181 441370371 746107560 962490086 257155719 461125339 295475817 687494594 255280248 848744358 762479264 879650447 756648820 88638540 94715217 22181051 113544301 669157188 110849347 74537466 407956747 975018757 574264153 967470284 815911170 641770251 403553431 441576684 340525094 204601046 848909605 176002484 808910698 398290475 56961200 612129165 732633306 275596323 304724105 1064977785 710163279 442281308 944614637 829891682 795846734 379726750 683856048 142444741 920382329 1018330795 671074470 60430057 818705299 717378459 625516226 970295619 339292725 182544966 601811352 383528191 255881827 1008949168 952905749 1055848994 734827551 166082882 717171170 268832741 645571118 976959967 928194385 1061902270 649928448 938065211 247538402 344492604 185750973 1059267964 460147194 614337 876079309 989077618 612848797 819336562 150419313 497655057 352255033 155611336 685115184 235270059 434695459 156323492 565857561 382784516 481598538 851473286 24897277 537293315 465923899 142595202 530238135 962345807 177728465 815684397 1018143609 903816332 650251803 587379352 65818197 1007055057 543206675 916967588 240766509 192406836 368029075 861840544 1052989031 485109732 520025527 124997450 34927941 934247275 429406465 633635833 809314013 897835730 655677240 677789646 596854966 844600874 780757978 877603586 964747621 359773999 452887307 232703423 754279668 525454136 889022288 670732544 426107684 122700814 714613207 47307689 335473168 188839289 541875508 960354645 266996969 696185497 185990652 661810502 642262437 550728410 458986706 677300276 531332666 961018644 963220289 309562166 863591792 1044563194 635357439 470983860 38231408 698805807 771839216 60733986 212270793 772481412 905340880 230556779 304395165 905423929 118728333 705767043 207423002 56233876 654395524 414838986 683205222 540529518 719757506 903443083 41246290 128257816 331259924 499545334 568727867 270871666 68891563 959670545 237884641 238930038 975349999 769090190 824919706 645991338 518110948 548739777 1028288273 1070626158 701337886 812686948 634269240 36737837 261057663 663658571 30833691 393525324 568480614 365136061 408123110 629764561 640833476 981926973 1073268613 85252474 1011914035 760290677 791961395 619281297 787459173 306653944 261379940 900109439 285583217 906086928 738713496 675232007 835576249 160166138 690188593 984796177 905484577 938859078 54895581 153727406 855657687 652908119 168544692 312711115 789685143 696831952 387429629 1006482537 185824862 213641684 566171552 198535445 596066467 377807425 838451617 714447662 521762552 599141037 163596848 1028822957 935652287 435592255 626987884 151508904 51852461 241948739 383943596 948452926 477244355 350523076 744704223 784196979 929029639 531135659 325429282 937283205 89906453 1038832389 461526657 661149022 227691842 1023207586 724937539 473979183 806749751 514387919 722215678 7861735 719509203 382432911 292868742 125380187 856187628 781940005 267940255 266423750 339022135 500613577 816826472 222949239 685627941 311924698 748068861 746866770 1031132943 413697407 41971933 835840378 1005802608 363594202 21648228 1002898862 680775951 858872588 244835672 572974771 213694079 240932985 376436655 381114711 697669975 99796062 723397608 481443587 331034294 930454200 706881766 322918938 1043298899 908397636 1060912729 261406766 825456182 973030388 1002151272 757089673 218682049 488087715 698603425 842628208 631074225 804493986 842518078 715809723 615934193 563575594 426681070 484943775 578362714 354571443 908429524 49929340 628273829 835421607 322152046 157513001 720601652 708657791 299766054 147284408 122430839 84438772 232949 203933130 324683908 582810672 540245069 1049064484 210118108 789059554 882469630 536918506 944701972 949652736 594556969 47346720 571684656 94547169 521386710 796397769 754912697 33217237 547877333 344071470 728186112 563840112 139587981 336166928 814230275 336873515 835981682 462995853 831043212 1062850631 204329929 501444106 930803474 741595183 21773698 282381068 464103927 244080341 954803985 927662519 210616720 79155500 542301526 707646654 165130091 578162818 701621937 20521411 446251974 304741586 192642573 815900757 296530708 780559433 996452063 266328710 208822738 703909458 700589104 735497380 889872353 177022316 321032042 741329797 30312974 275647586 511541562 745290804 1039534574 264065236 62712641 542615587 182206801 441368535 628203641 108031751 832160642 1071478698 866237133 966189744 139576453 441944846 921871856 997209452 628455071 484240452 586548162 40644052 983238600 47006369 644961300 606690990 875645260 845066581 538507078 93102796 392320441 398965902 342262878 440634318 768392189 78388348 698832567 592446263 150135020 618026574 654201298 637551363 477759009 485796612 908133729 798391517 477114867 120215315 162778246 45680965 293263211 352318517 912623043 915729501 598082817 72165673 839293421 309625230 1029827457 438703079 769022745 969017786 444437526 586102020 163025093 587335566 597819876 610099595 1037832521 32603434 419434836 795564786 442800179 150230295 279332045 663436266 492524800 522659876 386662446 156217912 570218290 500533543 340543654 375064432 644618375 900698832 730823213 868495532 62283534 101825686 331750990 522165605 267214907 289412108 770222702 915721110 376623244 682250646 168190286 670031379 718168778 493910871 870467702 382554110 706807013 578663419 352822750 1057925805 375954748 456435689 792090177 9838876 949791250 963997798 875964362 104998137 582493846 478575204 366340903 485968551 323694028 530370141 41630786 419815877 303222539 1044394026 782901411 127469603 827490950 425492632 944870308 551954227 732812764 915546419 1071879213 716219567 373842966 95853795 275291590 76035841 617488243 427923629 882016194 459783674 772140298 64841779 5548393 172479909 745146290 220063372 673759263 116755448 315259855 430266642 863884021 725470706 917132588 166680327 843078581 783137127 168442642 511936890 791694291 823237665 671430363 145009911 527912924 90779683 568619588 814609757 297096774 613286422 667751398 516692954 4503997 778524161 531847696 145947938 827677179 902221958 867970023 1042853435 329225571 1044310753 693674819 165273220 163621605 1059511141 25546230 693581805 1023272179 245675869 4776718 796081987 842441702 539417314 78716663 339320273 797539660 410931227 141270972 119563764 609560070 861429278 251258904 650561625 40827218 83712115 875428752 1054339932 747490365 924740942 824699625 369511383 410981959 1065124723 140386423 172247506 642274870 499000395 356974886 280255933 166445869 882980347 452262114 935024332 587913519 770460401 238790719 277974001 916116864 155976831 323942704 130729655 632323562 971308746 584499803 373383330 840482999 587803399 27863602 81583499 945313450 319048420 280782363 330034368 368805839 469012024 848876823 568451048 152066253 863814597 836581934 527245817 571596210 83640956 465709273 972830996 557561723 783022821 128749585 930931164 152018760 191151731 690300469 842535270 213517231 733656277 627332057 622575550 1044498901 353633254 594031494 938609721 530254023 424960313 210880178 1035239747 594631250 581384388 463981613 143920809 54207513 486424898 950173957 205500845 111741563 676749945 894551940 794735152 419146895 336082077 309962130 713907218 432668893 160253394 671900615 842627792 898542460 925800715 165717361 529363560 656481210 434676578 185427750 405158724 2436384 765186887 996432852 481960607 565380343 825408724 743792092 612656046 140773219 557186857 795423186 231831585 200893906 62580763 187522403 1047072775 682404251 235295465 1017339094 414606710 941865849 593383439 691288498 518794510 929748281 830070228 91452251 906406925 936713308 1049194986 530220719 582338176 223907490 735166750 750168156 985987011 635292677 259377318 131522162 953346559 460638431 517282778 603352275 676938926 235591634 491634329 871119336 930575531 138677466 375219631 533395514 1003514705 347483022 859074269 725936165 803149375 745564722 192187463 802363458 1053601526 47150379 816256009 736759873 784648336 834031964 724005648 118299122 403861691 908913733 665276760 860611356 551812864 722577223 397383871 938193029 724828865 535530969 552942466 81551172 1026191961 95266775 345018825 117267850 910050196 642192664 344679028 375469333 661664735 707307800 844105113 888209661 294000388 802170247 263038616 773340164 160932926 1039994724 712499428 504343016 735329405 33221000 776677087 725682074 861326782 1071237162 852350046 378687384 873985017 1011011140 148583156 108960077 581423120 544179984 868035273 665256916 755756152 31140822 1058434575 861381895 793818527 131457221 105329889 672099514 1032301205 1048714016 913963500 473363943 486843429 320746097 314914463 441809039 1036272116 624327788 512305649 1067497868 15424943 952752731 184839118 483849410 1073401489 761951768 6352056 1058538553 890819570 587775076 478827985 726267367 600764996 800008825 710968045 596325155 255487655 645958773 74943748 969071517 207841972 837829581 713476953 125072266 840130459 183723318 526550744 840551697 80779094 219509527 695600495 770303922 672113598 831749825 511680735 508106691 1054906945 701947649 911828262 923148320 912822591 947914746 57349171 401954340 936335738 3696524 656698070 1056449722 616361432 359612402 187374248 152872255 494168633 1004943576 118060236 904324435 974961538 63021106 541788076 34349686 821424670 418233446 972249079 353910462 906451809 537222399 532736231 37062881 936556757 448138077 450270811 773135492 741481156 165019746 280665029 544195494 632740413 161822013 636830554 641338167 837808260 655414814 867566663 554980170 91907010 289172074 62061823 1021383456 428546116 183899942 850681704 836821673 934347118 227806777 841699367 775060083 60776986 942939341 457889984 405588895 187613682 941557471 710653566 791580285 220921384 749469932 799831830 343412493 915058783 941003256 354938668 776089386 248412343 619451972 731082735 398326785 102964991 192598680 293998509 887549575 277256119 775464264 930814383 996651992 1071688735 813237172 935047462 991540401 296015559 600138360 404047678 951270481 817770192 679744281 443786949 309853758 245856156 915930025 605534000 818277222 580844242 93192075 521046381 892465136 970741868 987840094 475378529 805632153 659313826 414593550 126604768 216128912 188457299 41024989 389919954 376172564 39580874 604053061 614270480 416099434 955188941 704111210 717769026 123202311 658906153 138358508 889224564 337784335 228548736 770850908 328410747 59245649 337186875 58062797 890786606 95916535 192963133 957999510 1014196475 934107944 320871477 573092617 773979858 31835821 444064698 460399223 170690279 879895642 888730263 1034552150 793036045 819452596 569267387 282942384 148675500 869208678 684531094 518086065 643413892 680392975 447223208 1029867152 155335153 742606622 98153553 300285663 201652212 742224705 744961716 398617636 138069018 1045766289 1038256881 261722453 1015418324 205236294 831217072 395728891 101201704 960174740 918403672 676485251 772641799 168464360 366510322 558897286 838517965 1056796281 454821000 196318604 117239607 297588411 731012747 655482418 531519527 222968929 769419614 1049957299 2741717 202043145 593819334 893160033 423606347 149649828 737749482 248301370 1035902294 558366488 843922432 252475965 443216410 878709957 874343943 55621841 527367902 1055873690 804023260 157999799 814788069 812885271 504500125 182972586 36399884 523284919 1012942119 826663149 173114950 1071239428 441316522 686266390 413982274 467184629 321429435 466716546 509417031 620481132 628915434 242322557 14717464 740265744 1043292264 714446658 342720004 492569545 765598719 150817744 411619385 590273626 671896243 346633331 258094072 183225136 961480798 837483057 330363294 1051678987 332180809 507521687 923089183 373596417 813676266 1010308630 618200191 497913670 792291255 52649268 676384480 73259426 167814133 193925112 760606516 747426439 896534629 399842249 305187498 958968426 35665178 194766227 381507670 479585136 881772388 298443906 1022169048 366278366 6540617 913718149 856115988 260288280 576124483 1057883408 648381066 840192137 1039725421 765095062 25002588 1028189681 674024023 277500848 850326045 379620363 726767358 369396957 710677362 861256613 481677179 803814657 556257545 9382731 71063295 83711441 597052671 456421765 204400251 737945767 125364480 791867109 1068413472 258211241 564706757 313096585 417455097 328668800 104208570 422524190 702033334 598844138 118629884 398630995 879106734 649236988 534540035 125790663 477490436 28378441 271640449 435370005 186376101 128604013 593879069 303910373 642185746 180336692 311428059 341761842 679147981 221362873 180407848 675868705 408302766 843822427 652943730 944676360 1037449420 860856887 249808951 1004474230 1553512 222883902 848769529 480945887 419202101 423750526 383899191 766210310 171682661 154536769 996092320 9074617 26388335 333386721 546482290 349467498 910775363 862805404 197156320 490619783 910364164 17592007 135184826 317661958 459883662 170949734 367332600 302771840 584453508 875563158 928200980 209809589 696149084 328259881 107443325 282942695 882806521 13451675 750291034 936191244 753836888 927178109 634397580 121336271 1056906533 294394643 243773787 703266906 630709435 424988250 518418275 651772802 751369446 464178380 827808885 934277768 591099178 803536775 908157766 605944397 722830251 885170296 885250404 605183158 885802304 885093127 490972218 379887839 759693481 352573627 527637793 705767702 282002202 263075909 272762620 906094573 517503402 878275983 799402871 482488600 931177560 983735918 199597849 359216475 605790478 558094865 700606694 832970942 84132403 583158653 185077923 950399276 129454838 409440714 362615927 251769663 205576353 512373885 272462274 6058876 871210969 259950285 51509064 30782521 941100498 848921183 334840346 478027026 159729392 527534511 174355671 369429529 734103529 434921844 1009862808 958735978 823287141 171412325 959231628 109086734 750561937 137993472 269722078 969994952 318713518 1029930928 983299560 635446602 278956382 156904407 777101841 249238684 807645022 549653648 663735002 545971228 868381588 215319385 916884910 824286077 746248170 673919376 230967945 40358309 510742105 777832305 437364794 277973987 580192355 14830081 12664010 729529629 917915628 823451306 425474563 735265172 449514683 314404639 981902666 1027033881 905230119 102433979 345838835 417822572 934348838 41283689 1027531538 511080703 995185108 646857735 126752787 469357045 520185316 57684020 27593008 427608168 242130242 213117049 511847118 147444993 907928871 840838819 603737189 178492322 128996709 700199407 873635118 169772959 980968589 617671363 55547599 171644710 1801760 106791310 973540982 522049884 155219288 376515395 74527187 344571454 228530646 313719371 531260547 125517963 47729758 731887243 802293183 158214498 403282822 64572156 181787367 901671176 324709079 642102162 294577176 52588244 72388096 372111468 374765718 595213486 980516932 638312955 852371489 250562448 951045717 655778303 1020421623 256988560 37622882 844327103 58647522 413790547 563162931 837895416 250494729 1031811795 197075471 862207459 394667518 849317425 877282961 1046143291 444254796 524960675 880370559 1003537905 362322897 934175726 687685534 32120065 898040787 294357701 799705502 475508359 217082766 865496002 804430297 134762601 538804440 490057243 651164654 474629646 1046798790 434369510 944091193 843486760 596987805 6754862 854929558 620808336 353983469 952737476 540353933 840883559 158740072 990962810 939638537 405952284 739741000 2812967 965594946 327097350 583796487 1017964507 447060902 167929190 521954237 990341304 1068529823 917174371 1005453236 722285688 85852725 917216014 431495682 573304243 714596513 865442512 116249005 323468745 728563506 217319452 733011575 269521650 141672743 494626420 484679184 953471863 896825841 547994385 491791873 821176642 132719855 663636154 825756256 962523293 524740428 603683665 977212329 393545666 305415719 882470249 965469430 918586949 584322024 946176628 185895423 344470810 503818598 146815590 825665129 654408523 505498837 747419102 979010685 750540097 355439007 841593502 684523015 289889970 517058544 567347424 9012591 51310447 792962745 763734139 377633057 875931516 566911765 533410340 788530071 974560813 415116616 690539192 926332971 210271005 136488642 626208198 1023597253 38334802 577806587 752266425 644069756 354327539 542874169 581515823 518379445 89009930 453512992 325686550 796295901 414775366 175741802 118930528 290745117 184667945 453239001 599591975 1021623007 304191470 69019770 394117541 907694798 547442759 145767267 977638642 202922793 618822090 740212475 572353149 918999207 67074686 602920060 147962802 1001701637 253245494 336690151 400174411 679316514 704335573 240598699 421895393 1014504090 1066701982 553044697 755161686 534272273 179975515 498169457 606738060 468082885 295139836 561423780 611402539 957267198 707592999 72420045 159667338 1010549345 659558203 359944451 451328306 392289325 627002775 488361774 458572345 948683603 554245287 101413960 286422638 905839977 497773303 144551829 113921469 984167230 888830549 120255647 849462520 1066887362 655752991 175816373 32347318 755567229 692457966 70112137 865447072 648579528 433645396 602194359 92347221 693902553 528174717 116494572 394296745 118038141 605699061 861055963 476341543 968076850 765667726 900855927 889619619 540172390 174842752 234739885 666710440 750538064 333800360 699132521 572848274 951249599 143239360 596480156 732309153 671486869 894483798 443869593 905038419 577703998 251591307 156232248 809601973 1046426475 392298173 287639013 641443323 1015722116 896388146 339960300 214425993 878461746 946319726 207856950 761900638 763303904 163419069 316514043 856305479 192290434 773597958 305146445 440613599 987727478 452001713 64758692 1051788661 359153432 53867914 106173052 410559329 384801218 924185688 52571101 284544796 1022686097 617152373 802075729 332516540 353166354 397427383 240838085 323049025 292944157 567673284 674476603 331127620 115675567 900644457 624379666 600359873 826560502 840795306 79823092 21853894 273350004 156867529 18797760 319663631 112258759 280006260 46002370 825841050 1066356892 509710606 232919953 724177697 696541940 710080406 398112236 219021926 917368395 668135061 1017638314 241902152 668505026 997532329 79082975 935426871 132544033 355844524 1041250963 917288429 838843591 107377698 553266778 214644662 423617298 749535448 201551698 202927279 984545356 755514167 537984525 982152440 717004774 464891345 553842358 247002449 42556373 986375009 884517004 681130059 482255144 802745037 86166818 350422785 897117925 864286493 677110185 662495839 441462918 261748360 144998396 786957628 830417577 37752973 750919142 632985273 565880843 537522185 989801023 917484065 566649160 743774242 943455371 863667982 920869835 233175532 353726827 317050388 76325569 467812239 585764001 77349936 491777248 422418842 813435672 125079288 43055255 460491259 462501828 552068781 999965662 585588561 549966460 349648460 630321618 154226880 867467420 756111153 427856840 263480543 212975011 825584136 17323924 750867883 542373941 1035734302 33366034 521071172 339885284 877200645 305886180 35539439 607263709 300753872 805050073 1058972347 395166261 896672164 132664393 54780876 746745852 797362632 154959959 574649604 851355109 826480586 913718882 56393292 1027759668 393970303 805908683 187393110 943876785 1022400161 517759137 83528337 764234389 528893257 502099762 1036273188 596363375 909610170 193067709 660740471 632695126 373769424 173593265 690250764 456780172 371355094 115240190 359516815 861271885 671546653 1045801223 793088231 350216882 59615945 1040357706 79320290 42141416 959159227 771564671 766730993 605158355 796309526 33494003 252163300 1052678520 620083052 54704121 213042201 992897253 884954873 84874296 354790488 440970161 421965389 442382197 747186950 540887558 367726925 118098975 99760977 901497423 43295243 898261808 182431419 373251744 708285512 1039376213 109618408 264900391 221035290 243049310 557031026 624448502 251480494 299900825 512203632 212265836 531514074 601188551 406409809 487039299 397068485 129556022 773676797 539988768 183734084 1028278914 683134186 363094729 489427756 658936595 837665399 734582568 694697182 546144249 774000387 827732745 335968362 330140661 2737481 466328245 720802796 195474824 69487897 465136855 712250438 455365728 709292550 462194356 283556087 437536629 625911719 636718700 340084459 884706892 703151021 737032214 345893336 704851007 215999099 294362219 334451667 159368794 905452413 839451141 763736073 903288973 322572379 81968974 784995889 86271975 791589459 849179238 263425967 667200734 723618227 849755997 539076548 633028718 614153005 188704370 518628889 507276749 372552617 658930273 19721755 325480945 720995124 490465409 809586311 1010088805 584306149 329402485 806310933 802425258 629335433 923125091 867568936 993021479 451457460 826344293 958316443 922139220 310626692 33864790 574995414 149352 482381308 234110480 690993383 575684528 540089511 13221827 220713344 1010628394 745067769 1045719570 896776214 1048636747 125956158 25426966 336474478 672076933 27107390 154159643 408649704 132617481 585583903 415009887 355651165 1025428773 303356601 625680573 183858415 1047611596 167057180 854404840 1050442671 50460993 829721123 647247287 926176541 468586926 288010296 347052626 118068172 516591998 654981246 777854774 584301632 561722989 837789527 692007602 295777404 963967771 707822530 643640153 250904694 564703707 702519825 105922461 745197437 1008469545 512108013 940532590 121884966 518902127 386678961 689049072 295710395 947345006 601458649 287103267 491189400 838583189 728514091 904615888 111707299 1012087497 304332119 239360291 26427430 829639025 14745976 160275870 940475142 1044909365 539021147 678074777 445170592 36209035 146778886 37711737 255769910 444431228 441498971 83672979 148670409 73628310 723527627 1060677287 674301722 404893453 774000861 701982079 840858238 1069876571 55223268 366674838 24167158 779975338 855016135 576805930 3559985 275637830 759487045 867635555 534825541 1069583697 715466133 558986517 1057093216 454458441 124359153 54587391 832592472 84031889 514021909 136045003 454934328 887258126 495815465 103340898 992948026 216164538 285025836 716044135 6318454 500720564 534076264 921409760 926595329 299798404 493611550 187590232 196292462 705835750 1040897371 865513080 48697845 67917125 389100242 994839340 365896953 534645038 369636376 248977393 906077860 219608226 98365551 1022494751 427854014 508061851 631149430 673747678 689281268 169988935 876786933 273020091 543717890 217948849 124066973 316603331 220161931 269110467 418564779 1027047248 309963715 812984696 994058481 648942518 158467008 426592806 299977066 889813489 1039175206 575599509 805885987 584856945 364944347 751726350 92157172 799047528 605930360 746287753 215147956 870982296 684815150 296913812 302221777 620978904 75086495 810215421 1055105797 916039368 786681801 314024457 852648843 883604013 719508494 322859262 524956748 410300892 293767466 913783424 347447867 240617128 940960467 376305313 39756621 427340752 33204677 287104449 438030657 958509727 297940651 414972043 585759760 474924998 630583755 594532512 926550732 756156489 828932678 352534745 883557295 963865473 921901414 341962104 773934645 1070395527 634513174 769123970 210467307 756691492 689704271 864634311 619198650 638090757 745967703 487342464 320557951 932881277 1056651783 1042861373 78657640 491189840 94436938 944709903 706771734 494560883 993528333 1030648561 749962314 285803910 1072853976 910756457 440044126 410776387 797791210 723153818 1045078849 949638684 619196433 695287347 923351828 262617828 142034001 358883851 1015432246 254529112 947139540 1007459198 1051275662 627890014 612551073 951780955 75174396 1045433688 846466390 807446538 360734339 487039192 464131045 515060466 753569578 169023878 519242182 566028990 706284232 95863229 674846863 441030094 1047494494 426212481 720277015 988658958 892045180 966911300 425431292 581120449 935543195 277253181 71093292 676166272 424782955 395862121 967976091 299570064 934200910 550370341 271599662 884004234 531968743 745404501 242085532 344579631 754854064 517097091 285798468 1063906815 346843011 449043561 337565663 469594041 568782240 374359434 964187029 227852426 140919137 221159980 646500656 640915366 901574323 286769718 634843827 1040825571 201971986 177371458 753430544 1023631359 149346909 743727879 23202164 258765957 382544315 528342882 909623152 107115170 537423753 128599968 346492879 117639873 170058001 894814812 441980091 38289799 638826178 272288591 509956105 552068409 442709382 587248140 645048312 47303258 42634791 881158031 988059192 265684676 645679781 1069966675 337083782 138927559 553833585 374364957 32146694 87175842 1044682413 783092595 712487726 719103053 711676787 612739319 736936430 886706448 314664333 417040852 245950031 532527949 653984801 167752642 441942879 114415080 174690128 820901800 493869145 813677395 509569590 658860587 314614214 813593133 790565191 732376495 318900124 913231294 818154821 596505431 876032959 526577232 486757085 99847945 53942391 710715091 981535604 2938128 718111203 70704908 694932851 1013220952 988211809 179186288 986238815 915802791 131507169 837130896 176573689 991279200 72281836 41509684 202684346 164901975 123558861 13791743 141877903 712860975 378103786 1000837403 1049238388 594037519 689867995 87730739 840604350 874730171 1021377743 145758918 1013035890 527726335 59718439 1073318225 587608365 547698822 516365040 16202116 662652316 173986739 356127683 1049235177 544663469 32362297 975545411 970500333 573524007 426634641 358866082 311925826 224971419 848238087 76283455 368095073 253336783 434217297 841130416 823785223 916695587 1003484770 43724365 939975726 736367910 790726319 70781767 547371903 591884712 1068344808 54831409 757616090 256305206 301133469 42169209 700866470 678564213 700540191 385541273 648431045 641797122 31645102 483758372 305906004 516333743 315670367 546802945 278532393 511702818 455185675 427683450 630501891 804991698 790990786 951810932 153418358 705941002 875746451 270460577 429359279 278492462 944433334 142808074 376930615 49592060 595018065 629689293 496614207 188581306 679549898 270940134 9488444 8543773 13705375 832336083 37378260 559233953 289788157 258308254 437625375 764841755 714946755 416756323 981206526 722780523 846250204 933900382 438613120 832271711 439747161 570386627 23957568 383166420 923631131 680952753 834143932 45085402 171215366 541893975 1054493102 346630377 288830328 233796894 540434562 510470639 1066866774 946082410 269071761 575682534 121051729 754044981 305894684 591403191 441096809 674537833 130403969 1019809952 594508607 958616707 510955994 659932726 226773939 634292618 953090535 1028190809 746061253 172949529 416385624 383833279 76884809 854234231 216447373 532099297 461068479 359295969 56189046 573205301 845429279 879552473 251931005 187554888 1001156079 716228191 41643448 419272110 399136550 580585211 867059387 590717646 35037379 160908478 866480764 861915702 863168992 678624695 1048729962 447858649 143343713 662302221 518744265 789520055 169505898 942241070 84847017 307648724 726052578 233853870 696966002 642336834 137461824 378987095 1005199897 42976388 88077083 739375842 10490761 883379171 503915884 663689441 848386448 684115972 506121286 277002427 535928077 517640851 439512224 920542164 698644202 480042726 401470470 258062545 502268104 409241835 333957042 916912523 773886528 103435012 303738886 805815396 232432714 798672528 610915801 809950527 269881963 855678922 795978200 1043054607 429822651 1039902166 584896488 343245015 684281831 403015940 685830016 370400108 562705671 704450415 911553604 429375843 815368331 267588117 735355604 552006545 976017360 571001347 452961708 777291631 301906728 645672137 881476889 287520387 1056840881 789338703 402755710 285150358 147112102 444490341 988254354 270859725 884126939 816404725 491022062 1001945599 972687132 701764691 1016917503 986743434 417318920 358586923 2382326 941988596 178607466 804525573 863699131 38155370 630879897 722463402 1065148366 183602062 261550134 274943050 310410778 1014026424 977039300 953305325 805163414 621071761 1065925136 805643695 130358979 323899804 288894860 253007897 562463710 846545131 549033412 268046160 599435278 682180246 653931496 495086720 208806120 865085780 508542575 845427425 957169477 859098580 468703278 548258486 888879905 754226350 466676123 101683788 476800803 826017094 919806426 37468683 1052822245 709733127 335102518 948225588 632523919 832976920 597055070 663288225 736990124 948352438 92505627 860765883 709023541 820354761 859071733 704095960 878584402 161707772 445534854 825504285 20445318 206967438 155625929 962208417 539519036 805349658 187011924 379223758 106748579 226713155 103368628 591997492 451443142 690257773 882095029 1055442018 432596121 1033552688 998313409 224335954 184674963 278203042 97104758 38578218 510988592 492639465 760746981 554515197 249376128 397038312 742569765 642440735 119292821 318542351 904145023 731856512 959839301 136321003 583141745 1007438071 578522145 525559066 557746526 1063212973 614047831 741825924 786680774 362061397 604506034 982614489 328995603 431298914 549855068 25727358 783142958 617473046 469686736 97293269 164342942 246547575 763277856 739111985 207894313 980921558 1067644073 628394671 867159882 955010587 1027513396 893310021 313909624 343984635 307497485 821343740 614035237 172405974 696800722 485431208 865509417 692421523 621370304 638127829 516450699 236098671 404558932 366940350 992677840 353009024 151724558 190164772 446168437 214860861 601699602 168389467 299635830 469458360 970776282 354528030 672830030 857600915 419345084 802613789 265098379 492536944 625858286 321774531 323728246 607051215 22633947 346241970 606926485 136062315 701627026 216219663 975731656 368909709 97024523 58902492 796059440 125364756 1027267808 945863415 987470196 489520762 690372124 478965029 331164738 650039611 295809669 373657555 592958770 274635887 850626276 389339096 711263281 1028901741 290879456 827773657 801912491 698108168 820719344 1007080064 255431463 372339418 476032242 546965150 927383240 964119279 531958498 275973180 657735799 358677359 517076764 545749643 211854373 372472311 25259847 250853146 848687543 205975561 494665495 532854322 986825502 420131483 760935474 889730011 73413951 180619404 635398033 542791565 319761280 869474694 480822472 808276308 491125331 212095193 546237812 777142073 330121339 398416807 500056981 987074132 765300817 1058834225 423973601 960437078 138134346 849026577 509161145 235438907 804742091 648046068 446572815 375300584 44780955 247522775 966419587 659641955 29265170 414394263 569522296 904674939 790468674 1010687648 316631569 179076687 269391380 568081028 614397671 560708732 832828277 195543846 901633907 818343215 796655173 689585416 679381293 215329287 989897074 504298325 269314330 539983651 139199361 789032550 208780546 103157242 890999411 691392371 599099492 677548634 795722713 874941894 209029040 860102786 380656095 337710132 111706907 987442558 657477802 286121300 431016633 367587718 218367877 809467421 209400646 984949761 128201170 534100085 985230151 679404582 470154998 415305151 658775126 40967338 244651721 511467993 631755984 856490888 537349438 384364629 212341120 163650377 642925561 498566514 677454897 460315223 786038377 889102908 695592593 84975238 308140441 21812626 446077818 220831062 248431814 294288211 678988520 270332639 302524363 423809458 206450356 272879869 665760925 918340124 612183424 488809826 650293205 8427982 1067149629 298131929 447467225 860000537 616573289 85181557 730419116 1057107281 836858458 168866064 494073708 51635069 168044228 777364267 937280022 831438068 124758582 1070053109 960851530 154421640 145546592 624142763 510300519 656264718 359135230 580565014 638076928 674215501 930790882 609375835 56617733 347502793 545826509 97824413 830650887 1044790822 1006881183 178504178 85381863 775757974 576691038 382749409 790305677 954583842 376928997 25618134 14772489 437307689 946474176 1053805386 140834365 432813621 294742506 889137903 741343227 936317035 882989740 638499312 538072335 581398744 503587504 125103841 1069177415 1068757007 507889692 267520301 796047569 458766734 387322014 580759031 529948520 626608875 148756690 220516712 399594273 710006602 477308276 204502317 14105198 806742026 99246529 572311728 651653579 1021413700 446667134 339172865 403765010 798440087 450557860 330285556 608156990 1024606759 667945284 350925085 878041240 672977104 590942740 216435040 254724489 29060167 613698287 321491548 28592235 858308268 942352262 402293772 764492162 816402478 298865093 1041654145 266171865 832575759 463498171 1041815293 199694457 577094811 773135753 780436349 317764872 979219937 800231339 703759809 760204694 962095558 133355563 539523386 423490333 76946176 237579191 62274935 1056303900 688454496 43783527 684775165 560858852 1054693235 565391683 677441933 539957093 515319434 152365805 148039030 563931675 35156219 600775844 536902364 795589207 314578359 749325937 133662157 633799639 282439622 242761375 532450015 293548866 646346660 653302008 558755624 696943955 227775649 1068339117 523270202 661077881 878354406 44787941 413226951 371197721 700696741 914701503 300368085 851109271 538009518 824427215 464652768 378675662 469822384 405350674 170842803 892852718 373473076 200756443 117635909 1026754548 486564056 914732991 834156261 1020152497 265001580 766172082 888400441 112169163 111369589 352715117 165009424 451879939 895389841 162938548 563211228 771315065 1004158351 674485925 393756336 406653517 96429918 328744909 918647055 83525597 972184747 863434220 807858386 128198783 1051455349 252179575 64068225 1008755008 297856278 832632848 389472879 394300305 1051862304 335575691 439037916 794630641 3543245 689721607 1043673592 388464060 280812362 677616069 315296623 351737949 843013127 38473202 994363110 669336135 708031765 363439502 223959981 466475185 753326300 733669793 933318652 540749745 83593258 649428810 274257946 727077255 616523773 16008459 585518709 955651559 82350818 997747239 484824759 271586516 621424115 856019674 552691023 57148624 98770490 255614054 687237100 264600614 316453276 589540757 410499275 525173550 183928071 600044858 434037217 7807065 628110186 508747080 788481877 725676866 29397617 362760695 86778112 521143286 601277954 1006485941 973432081 404844490 123524711 65451446 974342519 851946837 404844817 711898352 871673807 247576296 339087067 613852111 24626400 151438402 187592517 657101319 430545487 386117110 1066263683 916205229 212969783 99268125 661823984 856975486 378195434 886643857 293542247 635319327 1024397507 165239334 304400440 259278673 912223916 442472309 419104814 195436624 807034318 840235277 152289032 5897602 1003124855 699975539 702804936 811824864 1033822710 758924939 796575254 731127865 235443462 104474161 343775684 453751032 361290312 657143616 347278 979817064 1005712148 260587725 781416798 811659066 107699279 407022921 152941605 18759683 991243458 563183087 288620090 972787562 263973241 956445744 217802791 327625529 905573504 257910482 471034532 119066931 563296306 256140295 916184911 833219122 596306158 533315832 919654145 498164351 283699527 535395266 135272231 63067977 517229545 776384244 153192234 971461403 854923672 1053184758 558791677 50953026 137154463 928942336 283415694 129445342 828032967 1062295317 426451495 920210132 206871545 711442224 615852902 272333447 34799407 263666821 514904957 123193413 245217320 1063735135 1026305157 261035675 1014333190 789229957 748819937 974578925 316671391 223950980 90288673 56271467 883177069 142517537 165694507 627849056 1019224770 193803992 316693898 992728216 490030987 194936574 282935094 460434220 1026284326 1092282 311197389 1020330350 127760730 89808400 1011548110 632498815 880028073 344011782 375798804 870185569 181230258 268710674 683583386 160633974 619715513 877968145 510327053 603034474 863213306 797374708 277525363 310344368 241747317 318886789 841254347 384204577 817359611 124756318 418562879 760552388 731376763 958153097 998348040 634387462 869029552 724970254 206597485 515342504 437982533 501079985 505019508 782036119 44836436 776543154 876929823 365890737 537103803 133558916 506709487 726481018 828259180 188366673 893355934 378948697 972661460 445974549 905799092 468962586 500777216 129722726 587592478 583214248 136577509 1012361965 963894827 514446151 339506943 874403923 963351753 759233612 674752017 62903108 700555597 59039111 391659550 454228461 807420001 740914883 951363531 755555949 357832530 810466052 74823248 641952356 709127559 844899173 559848054 782051454 713059622 474172795 170964692 759663640 1071072127 50105920 1065328410 933543260 448861349 918477739 111814403 1056702470 80348600 586404144 204340555 886867880 852663712 293233788 1040366585 975334347 20498310 1013717115 400049790 534163194 163707063 249715337 874694118 578443031 55928120 254702560 81083055 356158759 826641996 1009720963 681833138 936895692 103750059 455903589 359908638 929838338 13817918 96506824 523805758 44178908 675556646 819384071 56211382 387996164 718631125 859598524 276887093 849121645 735238429 1008562548 31124732 681233094 187165362 157184680 825819633 1064679674 57806773 377960477 434654098 691277042 648937661 198422262 344196506 871582965 652833133 530432334 641618780 821206222 7501360 229066368 233794233 7410756 602104282 227598102 356127051 671190083 136470914 218298036 403660303 257062316 237727238 971579233 593571228 934595025 608214693 832794431 482202385 915600706 958082148 553316692 913333917 915487356 170425885 882502833 255805533 475783216 811590804 719669124 108856813 910639467 1069518702 316497502 257090146 963020246 935215071 824844982 181573397 1051013609 840743504 274385422 620224601 240311532 100331337 553063273 233333272 56487903 583144157 671015663 684409620 733774252 772578169 190551521 948091368 43007182 807126787 1053827328 198681613 445362431 707663150 361199079 271327681 773377262 593079302 669661987 262293881 473174768 807050669 34183654 897502700 909655802 1015760001 229756811 500743781 980127713 492542514 261738735 638062380 715435399 736748891 948357211 254507242 83879664 193406166 981651137 593875601 381418931 334976506 199184715 457374947 95045674 454105342 515912985 27565114 176353658 924054198 45372569 309192248 950945844 814441933 977773316 618806623 298937666 451870226 350365369 559316560 956432322 330367750 192725269 402639899 481345153 253823624 1065580143 797665452 213070657 261983070 211262913 1035964978 901484536 716938459 522493512 604399032 104306724 184808194 1031409005 45003321 326589972 198657301 14288597 701310368 867249955 197969525 911658117 188081099 763213061 110255139 502917765 867170768 596725504 400318904 714778683 537434060 554535679 40014065 972228889 73016321 153546113 987925137 547383663 11421130 581772631 647416657 149726082 29817233 912553401 37760729 52043407 102977575 750948721 798570223 902366923 380799232 427457891 395159265 646050152 151495278 45331153 33992122 574562414 503200330 1053846056 1020170238 480928608 940646598 278765761 903118759 190438073 797395250 72116387 103736613 519084141 226017535 428594814 156471272 550448976 459374788 573736158 202984878 726325741 3728710 8420709 258324815 970165662 1067557501 737784079 370287555 151553389 90579914 707146885 931103727 1015982445 767574804 526074169 241960552 108153296 451010959 145541469 243639677 52310033 107754203 367733895 654702342 924766696 197713532 804016898 681751207 591030168 1028900040 575846614 117537908 94536932 761500268 919721675 376326120 190853019 273148100 898933765 68741863 830520229 319137403 734081157 423524703 902809962 739062779 458229096 919843182 668976261 900565263 569722827 960438599 366553818 769182814 179722512 389865416 949055820 903635103 265530325 454445288 957845017 482850753 886458521 410574246 14477016 59036614 329668102 761180408 258902974 536309038 352823609 57681668 632457247 521989910 234267923 505855884 309020250 507431468 252748833 980868331 832903300 1023883972 462661844 84425531 376091478 891702698 107892497 150123385 342050992 279997782 863260588 432741174 103436252 128282437 952554062 843135410 695410427 709778410 160604813 812022290 309876678 760421483 371091707 574402033 73418565 476584564 778772755 280814719 339133140 56134193 210616589 322090569 524510785 825093742 409784692 500879938 514419206 455675056 1062323496 670864469 798593884 886614166 608248261 129195948 290334354 817894689 469764132 693639503 560162514 814700550 282515761 290133304 114257978 403557833 979981781 305099233 405098036 627568130 934778494 373428616 907737544 979608431 392137347 203252655 617777378 463978353 350078288 443103809 516319075 732547216 243882617 278767885 116006461 1051637288 876996245 26306783 15661934 259663311 199623577 592722499 614725694 882355832 565198501 1056173436 983399595 233077997 626058483 103169337 981308797 272081016 177206171 733609388 368141126 1031287088 909851997 986767881 431651068 143334453 984462773 155741096 740754230 561658293 919014011 910976455 270672553 731222045 584981671 355085988 482965602 691733603 699525656 59131229 116516860 381665222 775661396 271625121 782859275 90028785 311221508 222910614 754365313 755344757 195285006 543316148 135161798 924304362 525582996 117176013 198259717 211345835 662796968 814086590 296571953 839384628 1025134532 950725837 632599562 929469238 372161845 434182023 427153867 995471129 909367539 47362564 278803528 657845576 9162215 204769519 412123615 332702222 986217322 701347674 461975633 365772221 528097398 253240037 658945474 713209584 626484134 258585674 843690482 469031060 308350842 630610195 9913331 875228967 107234340 104344756 808170188 1036256925 902186832 520179120 996793726 305642422 149603877 927003158 996400690 424005256 51851772 568303653 278597071 343048823 1024883466 1038004108 140044489 324024995 719646353 1035923393 728830279 850728651 424424931 1007939833 835861777 782911110 519999466 768877193 450224862 182565111 895075164 58548984 969247819 827720583 1054066404 97567782 672682424 432024554 124633995 299740693 1009646103 683564213 318566837 536307747 654183353 321001903 762238597 615298307 1035035764 112170383 220925409 608014790 112569151 327053295 187187946 797507665 6227034 197131777 256702759 847066856 798405634 15991349 789546328 322493273 576625363 939556071 272142091 951505328 272021175 134182429 1007970013 69656349 629198312 608428103 691379986 318733595 41428439 481940291 677465846 467832600 962958924 507458075 1025143877 1068351959 132285415 433842536 420446240 889516226 152886547 488770622 738351027 772229107 249194632 557647065 1009407758 959427100 24003862 720727121 439382017 715743470 835575636 901117502 713435154 317673311 426339632 504030298 824903732 379854860 954311979 614643046 615628919 568341525 15991920 803353642 729596368 19781994 841586055 400476029 728795290 601962380 392725801 207416193 559125940 816724379 773149671 394856624 777343342 764415844 631374808 865374879 1010505929 183381092 659102471 3582426 1048740348 618514821 752948361 185103146 757463716 238449515 677622783 364239968 348256487 138848022 442907919 845691009 987852820 944465690 842628135 995470195 88186303 974251045 882041815 666561861 637120814 786949838 34881380 679326158 998240296 839495338 414973450 684693985 646092400 602809894 1038775124 420432488 116402055 300240970 409135276 1029208812 899502487 860470686 861581685 832679802 406874336 733722065 199249765 416764858 720260852 908961897 58263513 835187919 1042468762 55566321 883960577 275698285 366495301 530261470 297307273 627251893 521715659 185988728 1019502735 927067099 178603562 89461951 513184322 716249965 1057840678 605468904 143780140 455970229 324441324 170022552 945095713 963027141 604028875 1006109872 1048325499 619305502 691632648 895258933 632915961 862935091 2314573 291329611 914785452 43844610 656690735 783011790 618871525 431311404 539103968 751571126 635784465 996685689 556320351 705017891 1035850051 299801436 269823850 1043414244 574607066 89361590 596604558 194904418 106620092 528625813 580000827 964089612 567710181 783782763 91769807 206676637 897002140 685898011 90777117 742858767 366684604 201258570 703202383 399483448 703446963 532656344 234258397 526477522 749386937 436463267 446143634 71633352 1017901425 848909885 142586908 1003310943 186109977 201051465 535975918 686789566 978698362 258132911 660358451 275895157 34192742 949757806 240320141 305507316 231143345 224178434 615986086 586136190 723510179 194450404 1010963366 965617274 680421579 531458929 784510530 193964225 136183799 632816177 517150862 535064840 432609772 139542610 910790177 1058897942 424810784 411261270 130878442 287649986 1051588592 833817753 767229275 419141886 809747321 227379370 53228534 885622664 239858583 605084638 584973349 787274547 957273963 603114052 276982495 92943345 909773021 426301073 1053952725 976102394 65087434 154487039 118438878 1016337066 1039065715 432643599 621080560 767514779 333736505 199340974 95980689 342813361 833227253 818415498 237966315 775315890 504655502 963722509 919115914 140425753 550943485 636882668 493836565 247529688 503839174 215285926 434069852 730126141 370386209 487819436 939909146 496591073 325250459 21216219 321202070 731214291 1022456102 962031163 699920484 865626103 41103117 552285808 769022237 199507283 1053237130 952357084 69227511 1071444623 823902126 618106144 14539185 759047330 611618150 844327710 1049475003 362068298 914488938 995909215 57106722 451951275 154393622 368003583 214576312 185434445 445923846 617316456 617386867 228600886 567293924 856679445 168096009 716467965 778701571 466785159 118375223 998822781 996598380 917470142 164660708 85350128 93295806 294789005 11568010 220516321 261729149 453419023 50246483 696515788 396487239 701124647 946183724 344707017 312695784 243777438 114057134 189149825 664720395 96314175 512659260 55308623 212195206 482649847 433354759 321335460 356075885 592498544 85115622 1021473726 551834660 946555541 648948694 890003972 541354201 27625210 758731479 196354342 795927715 603138585 442696435 568924831 286121102 984247062 201024283 65342409 486845004 121884861 185678360 236439026 403632272 975388558 543711898 685750620 690988812 320192086 145209775 687398499 994774191 112575359 35862310 106611771 768131024 901914660 1045009284 610400838 131566659 204666109 181634138 727969610 545717078 947568150 15561384 76441646 574308343 244437811 18721733 737250968 61458756 934696822 38681652 930027988 88738479 212262210 921035097 906732533 223035144 267956125 153533428 600372429 544690498 630956539 316078812 1061910470 499515675 248994405 687980787 579087712 684457778 348640600 915924098 944941420 751546928 981399868 418134554 89731195 698770010 480723458 529384225 311999797 1039590144 643052194 831660296 283124038 978551389 597773890 340824464 846102898 86464145 701324499 962711684 467959521 554032322 603253208 560925626 158632426 1036850256 713259025 352278115 134500989 481601690 109514968 340790022 83336558 1066668300 146107648 777216997 713879204 165513222 381224092 867965577 959396440 693995972 932050078 178077904 122243379 20668316 875976126 297822279 297704110 9361965 652474177 552870251 805078242 454410242 306892492 92005700 59772642 607363080 498340094 1031869291 868877323 544635541 546668645 501492554 390984059 188172631 427118862 672294359 422108826 459088451 605281049 5528337 316083403 1012552347 380172307 250163844 651668639 102410639 7412566 399133796 920165347 825412103 855112207 148513144 956447245 208663920 594737791 150408048 398327837 705150677 639937499 442189569 494749247 667792100 620814045 248172618 372575123 115861265 276049979 122905855 583580324 1001031638 1041803505 721312097 593748189 148193718 344090320 70750629 462504126 723998325 680646628 949263797 187037654 473077560 1061541112 698885172 1019624624 240915617 759093921 784130631 240903146 117952646 917827351 976721791 361544677 236146875 352052502 1043632417 255945590 228983494 285690370 752722289 781648948 135338978 990616987 130096219 1009028178 12603010 899538772 886036243 416022124 1043847386 163319702 338250637 139452878 897167094 620001507 526664022 346436924 281066106 927417471 511833969 59556176 497934986 603483195 112764231 119049054 902376766 983723969 834100365 205971918 201696848 745876919 863112138 696690194 1046692267 866415125 8157163 832683539 240823905 717567967 1044772128 264347384 955080731 1009389048 746853412 106846708 287940079 322585216 623768913 926535298 77141963 308411088 271925809 210253921 657819987 880413531 642802916 530810224 258964675 480280707 505175814 389710765 615451116 770670245 870645403 451227618 1048625378 526565876 114383506 556939882 279454485 184649013 1046728252 788933194 32525694 1043742291 383175937 188459813 617743173 508818492 833175857 552113405 38706666 1009444480 818168030 767655663 808893561 256523153 1060002807 603985743 918508967 736315304 444348446 430574948 1012677841 453624551 827482139 692397663 15015929 640570142 992932296 73927285 406845134 360318367 757756064 438983173 283072003 1017271665 442394914 488395039 483270763 295806612 380166714 117216886 570474707 779315180 515680233 610380352 723897270 755425554 566302350 860414528 465629437 569353005 1014750757 823060817 148780850 973320095 362321974 212307405 92357692 606284596 278439915 334198289 906175263 455771291 343337825 509164316 103080333 849398351 235403242 56700607 971200364 145638072 969662988 282175051 915283161 654527986 554451339 215979335 1067737798 891979068 489359750 341276589 1011568326 950567497 410194506 373787324 1004959249 502930643 344523875 595073892 396900709 555249911 552257064 228082815 1009663351 534764488 42357860 643491307 793318980 1023213879 11943134 1034755867 917044782 124883600 355491344 169708954 308278831 635573621 765878653 390001885 206139331 546148890 1031724667 546010322 20369890 141410977 285510656 566633289 593333810 81910899 819329325 700540439 158123401 524339156 47955893 396339403 841255141 162969090 191938126 683523949 960150793 215769185 406983110 1071766830 870344661 1011626931 97368011 111237517 574434590 545865998 333674654 224508597 261765113 850932981 717848483 432070602 773131864 571491307 862072297 834198724 84054547 951818949 38044573 590112506 731726036 120626658 892251939 865828279 167645960 754748 374386905 385601212 685342399 516958708 950456886 743610569 158724184 948848991 580893211 750279323 1022955883 361777731 8295667 25226021 262323415 68789764 833021517 899455172 329752510 746093139 226644990 9901582 88823173 201952587 28849661 485670303 580781047 761165102 980647690 222155441 556470533 173814022 689278184 853806432 368817338 311267779 736656343 558024557 197618116 450643877 598900992 208647696 163866195 752757982 484138623 417883789 154893960 25182743 764591517 933571483 77416286 329362679 337117212 1007303556 118973877 460531894 817638661 1051169251 675752753 965233228 247048860 745737629 846732107 751308639 745126208 1046206323 597847858 476599269 693003889 522128542 32444064 638334405 321869297 419331383 175507255 894164891 814815647 53527611 45497002 725399743 950194469 389439713 1037502743 507837432 678200793 422358221 742310599 426700880 465976844 1030339098 327308143 408312284 566717885 454648050 672087755 321925838 774054561 8679541 396142793 369660772 195414544 923361154 91432816 761638418 731382514 457150143 368196542 963213525 909895050 630267317 386218966 912615508 120458684 197622958 674502238 293140732 224036828 826807771 934683501 1016033284 597641568 1058216827 74998887 136098587 888787581 636156728 265343082 571341016 3188000 584298823 122364399 146385802 853886631 486425273 1003111260 857044240 861761315 675483349 267241459 998769348 344537947 638287276 673801326 772431919 497238877 507241674 993552122 822438742 842293719 403188756 1022619571 116087292 698750930 208309558 994472881 323122484 442645058 349031527 550302918 203977247 240288145 177055348 518661136 848473080 46323810 904505478 243175281 186929160 538506362 178631777 292374393 755107897 590137678 1049889500 487895783 847330960 65331486 261752023 629947284 210597606 994886351 223528218 5992817 1032136404 217926528 847816159 370565627 387167245 265432523 746495815 378374514 137318188 379587911 239037849 758953386 808222765 1057433850 979828150 733214547 564423532 408730690 663705232 832774337 116387757 42237317 411279958 112208615 452708268 484611988 535641559 973746726 48070383 810720153 575156123 666126540 1033903172 298721874 553030318 89049233 1035761816 464944367 601875254 32051708 110514669 920807993 756065705 497769000 505009075 411724106 202534025 331212994 1000783230 662431678 970718782 706145638 64314346 741862985 95015210 215050716 59640578 770863823 978614244 332683137 773858042 907052906 526099127 175653806 976699206 363306640 925565044 448328466 931574069 68265921 350081713 125050127 938483785 87617678 455869796 607062182 929738465 1061940478 1055323557 1017305836 431232057 597528038 629336314 801465255 625086005 615876370 773230492 922052518 693847632 265942326 599681977 183595110 593196933 770422777 871245677 343007034 195440788 79105148 361345918 15700812 828105964 688389458 313994079 317683321 451679729 413255142 674180719 121536359 674217033 718334512 573050066 925463544 161169603 33837214 148268421 692053433 952954233 502865708 695361164 63932219 971192190 177853943 971859256 271708519 787779094 906603342 991433337 912433291 1036102649 412072365 850519796 227139281 936947919 921136234 588241393 995174932 390108788 952333311 948441439 595566249 419693376 401766328 226909314 504899732 744906466 14746216 845793658 428818581 126669142 55235180 1006385321 499093494 848199552 1033427897 582185179 87532483 837274620 200382588 28402509 793672850 985002273 1007770569 673568152 216437228 560951746 491267863 533221362 778725497 483463784 796099355 400646945 19398641 545697621 740167493 270673083 223101045 857814648 215096151 160178244 60024061 640103476 60243926 97686815 710654549 706768152 797784034 97301837 1036315757 58910162 691589955 33208136 463129590 520399979 468507429 565687573 200119324 772333206 717217240 477952404 323372974 850409465 99659042 509719961 485714371 203896047 304043757 60976563 505837146 324621096 980167446 792045404 288847111 693477105 521550634 402117025 94741880 439506024 882045895 131559723 753204880 633627972 791380028 280155764 167495798 1025433252 381742805 789666240 253843245 878430712 120578487 879501607 314280412 289465965 616407651 267573453 450319450 146505911 642425581 43401683 84557452 74825494 718211284 680756740 944883390 632039792 833303244 545466794 593171869 22964537 44042056 788407455 774092675 377581208 822696979 501419137 797307835 73489768 213271002 625181614 427093039 604462924 1023323851 176623118 451451474 646344057 613440806 342149201 819191148 1052635901 723514204 510030587 437476668 408359427 495272019 411168085 651152464 366934913 431021156 801735594 910363223 978436437 200302238 939956910 604142396 355682187 570816229 523170883 629605884 981168857 581936569 823006555 864938998 129337954 1042640142 881684907 1042782610 823076147 220552504 13441873 560102572 494394599 427565316 692702171 375064596 654787056 167550537 574005286 455582066 530018586 1008533027 141347816 453090116 964392148 200693116 952557801 10700588 1071646638 505175618 689693170 595379607 701899396 1012525098 345093144 859839065 618448220 339371395 125975015 788130427 588282329 1035266339 740637922 621564802 593383138 70919265 927274278 755960740 112165206 660830209 291050366 942850934 34705675 47956863 997400614 1044838864 234535345 116223896 183526436 67803212 806146242 105093867 496955763 432649700 411932543 664773532 127772669 727555902 467599703 794050307 277263392 13975582 766467018 866762799 71931774 809174024 829062964 5508163 95255051 822853118 263473426 378340630 328170712 830858176 901867870 140598879 388876446 534723629 1035702501 764931211 42363055 784271966 543780768 830334717 743914971 335014654 1063315112 697325612 597308997 768324920 867423030 660472972 922678354 312372483 1041875522 14330603 744212559 1016160638 289396240 360006110 586939341 794789327 273035826 897661202 989076165 613124391 190367882 76556972 113204192 121961015 1057633083 980535237 193850199 292497212 480412243 906526763 220262713 169472346 209454777 1012706604 872824652 720731767 85126545 160303914 219570930 1020154267 651768051 463756020 220983661 855373771 113209984 1045321900 589863819 221177335 921953787 722893216 207707519 553883167 638014112 209975944 488224203 504509452 880370626 527901689 106699027 129777707 73030873 890996322 1049614375 492026324 522200222 274533702 1029973590 748389191 33350338 35875150 598893124 300585166 102908513 577406468 203905281 994309899 118273469 842156395 632737390 502559767 945647443 950644785 760840621 322425747 574706967 589659859 858805640 814423336 665758551 937752767 362343733 201236707 515058984 77799966 650730553 501856079 177240276 19512236 304226833 706977358 587939781 58502690 575751788 776603349 824961210 305368012 466391555 326586886 500252078 648494279 826882674 752796697 266773367 290801940 47945930 393862139 857514439 1033137294 470230889 445540354 15851490 883341743 165521978 749998790 217753456 926821691 343460715 16218895 686777865 867938330 1052946141 267480052 306673786 663874853 384222385 911468489 857189761 913013626 662845267 172672660 521675859 607621557 820615780 794189224 938359288 190715057 675719351 736990975 188116319 67735252 332334974 174428688 236100809 240662585 925502497 482664410 269359039 736019757 84406886 828307911 525731159 746979492 881624323 343890669 1070041728 440863212 73421891 486446569 667673911 164290853 255811544 399962836 318723744 219653786 752941595 138630920 812246718 622213403 723827009 674739561 45939043 235135953 465502094 601444368 399995999 679987287 711321944 214618384 315986907 805944341 406250455 681751023 550326395 885668918 1019452828 89391639 238662912 950237878 761899012 696048912 528891985 174000784 423767868 802102632 603145483 826040955 650768795 187576954 404627304 114077532 345778628 378147636 937740671 807505922 1035759875 153535343 277856346 31260361 35969124 706260204 267705678 875115580 643218995 643417227 93694393 852435815 622132067 16166852 337672266 120800035 963337329 162490688 118227187 195400241 68476925 989332434 432620475 864522750 203576288 44046248 1021746844 302969716 261057701 371163238 90334032 577372100 328117778 126562119 167111431 740703489 193663806 63715546 533371466 170649147 681906228 208350909 770230648 427462563 292851700 363373789 118119088 955025209 1045497617 939708272 994393244 829501042 33173648 634162927 251890897 1036991544 20058039 407373461 555900266 266350290 793656966 140131459 372465654 583879910 843165438 42266017 635765601 864109349 162522966 26746188 263036953 811482155 479434903 601596730 115301260 547032634 100709082 596403699 742938610 442514668 723406943 116818037 9002394 240380727 801320624 801484674 874362066 897650330 770354888 396338005 860914349 142805686 171260524 664806970 911410654 990622784 728954026 928408304 851718440 431493571 169089951 619709028 631322307 654043627 670737270 896210982 469285760 849243309 748829148 281046990 947715722 1072275510 538182742 437576368 868053952 309631145 19186785 694044270 1067882209 768696952 693555966 857882165 796369383 895041884 407475284 62719654 913670487 106703353 221604801 691212607 466568984 5037047 402754280 543271462 841270434 894482709 85599163 985288090 891100200 171058320 875272293 856680329 779937315 959466368 975927612 650524884 935389627 447222570 299001739 969449560 127560700 361737638 804454855 794366896 500908720 100799513 774744783 32438607 814089530 1009820953 947628427 531869229 100698524 143591131 66074956 36587014 771367987 505055092 1068187308 387299174 301819404 43936784 862715590 813144869 107929662 348321875 690697269 659014149 605533399 505968090 108397335 791505404 404752520 914139904 597279454 696835510 515916674 528628417 998887973 25733816 591834374 346760371 796152735 361267919 686358539 834836553 80787505 959977902 754476028 586523555 634179459 817043829 3592581 942407668 781290730 818672391 346448700 1026781562 490492814 41785453 725961860 379206647 487480556 180181148 226344278 788901337 843051422 42743106 427452663 873123870 394753679 581099731 731579793 84321210 170346923 259167293 991456505 373216243 292287632 930331226 599219065 1026431285 579294121 203204335 798200628 554955330 609901447 147636681 963100307 1000499220 930632138 670614869 495399456 951989139 760875407 722469914 807527889 369184214 74962393 430148516 803244285 576158682 936868473 110492084 388699969 624054891 639258650 718409259 1044011426 595714410 55250689 829420826 31917430 497225614 4282932 865723929 929970526 488763151 643529832 961313613 1013685823 481305404 732689437 447419023 642276497 318347018 1061818119 1040534025 982866593 800665779 396117285 460078554 330308943 279156681 519177949 801879756 677339980 905356 590010660 463287269 16907024 270286808 668013597 164555682 899668778 817200764 916493038 270823310 325027156 65042158 621168993 455326905 611885442 238077956 662984865 289569996 603774639 769534987 581277212 72456471 1201106 382837564 838097644 504097720 899278865 696241417 970651491 409674925 754209715 883314348 104534069 954036672 631163547 292408270 629700344 853217567 727913832 731915314 576071479 680329150 868121707 738525993 768779629 673738384 841504972 832869942 509022528 229994747 747749214 247055849 283499328 154160720 565593375 791535533 114738122 57272571 378957045 468471182 324592379 257215979 770240297 742759916 519440240 424388186 742995781 1039708760 78883789 921318346 53458424 200708863 758469785 88608099 546334146 676747363 386989367 1063537020 752831709 908787520 391221490 432429869 348987301 579390260 1065023360 749633966 1008517545 572367090 499076926 819019456 119031284 271950914 268862355 671047262 839637556 471606544 1006710704 125722208 732058323 1072274949 355109229 860171403 975869494 681989444 760061846 611366510 168974786 513208265 877361164 743236560 1017516770 5036767 227877328 440841787 110030295 708707037 577699360 397593068 581189464 106783292 554538388 512874480 89041415 573572736 324939043 32750832 85198800 82859466 957852664 785612665 403205678 488773364 1024630276 546426915 921220413 570202805 419447785 180902327 828210744 98918397 828433872 420422960 877805399 466249946 435343169 410354776 301707177 372220722 195777648 975132783 262955829 560887111 596986505 326183273 751999994 195875701 820012777 1040641401 942057168 963430196 136136873 799622722 826685301 581203329 218149670 196005547 39709839 238321537 336455745 97060259 795676192 602144599 394903218 172626752 920414892 646115978 948296939 270688986 368984782 1010669597 982343060 190321277 1068647542 1029909880 886963308 138711036 744615059 158777796 866782276 839284051 807954246 96956633 1036300052 426139913 424194632 755780949 456643886 900883737 398419568 178116327 938568867 368340636 1022022386 242968884 125940532 214812311 193868888 15180598 672301078 336424670 568614978 623682225 356057425 422357525 753140285 114487952 96150564 679800902 721375369 952475433 717079366 232596218 152009785 468031999 507117863 104361755 607583873 266868449 254283644 713933443 874718111 596451456 154061558 430015908 725334151 450586698 539169248 200575286 834578567 379955979 166824331 719303271 70420048 157485318 323752631 495883065 562895129 640456608 581487098 531053983 1049358883 234166840 118395362 989050376 458558920 287873821 50502612 314129262 736668714 898738726 354588281 740128529 484744563 285195979 568620113 444417817 515997385 831198918 423266896 604159381 989937208 885368313 1007086203 484622738 1029485406 170786018 350547624 659215943 14585438 167308878 254901580 306630547 740057597 794342947 109465826 861458103 616683623 653944690 803194781 410355945 118059104 576654051 551959568 200557556 426496393 672095829 33154767 1064325190 616806109 3511540 661480568 774533876 481990342 623572792 372902399 13967701 163866637 938196013 1059636512 998831848 244344065 862043033 989864939 923979557 230283412 245676803 450575729 623223274 844838278 635279399 258751041 451885307 395089865 876879509 376428935 34914707 1041179533 1071459596 64825873 63565338 464075354 112007979 338136714 767448107 323567943 757953059 260458080 1048961297 820789093 350520584 629545862 495626009 680721867 802784689 908353462 996817464 528102473 159099939 339070278 32835826 1005088561 322296756 190517621 520490063 927740120 469784676 645750194 1067231895 277176516 578507501 1053079729 550391967 756152207 354646590 681959822 521538709 985285919 672208429 588401231 473584746 776657237 323553590 663458353 224722369 935939926 1038221315 411164032 563319524 290939265 755902034 526995678 983120879 446199505 816282631 947369946 275379042 513006896 33793204 635482737 402846287 965622207 430428739 977993196 853630092 265885441 588395053 414460957 1067132523 544124592 263231045 91631734 314992000 1060097547 383691403 681922649 864452660 329001640 633118374 955783465 993693654 362195062 760949818 615105184 93211047 499410267 1022091518 662435290 93099684 418883384 341965820 842963622 30008067 100630402 229412634 537978657 1018665051 955592070 79842655 13712647 1006088255 674439099 850298302 798288378 613024268 958174601 51813459 711101686 28024389 282399606 584728030 1067436486 1009229215 900252729 596149665 783539938 771327590 30981541 988971673 161141753 641965317 566356091 61061893 69187286 956966629 9821135 121717637 904815406 489573446 1018927633 862842781 101950746 580112224 433720946 176465749 309012840 299892460 176647989 740740658 310466340 30149676 9753822 702484253 394440572 115927793 413954045 1061884686 944604258 304519907 1061817979 283402257 865540900 419145639 42758240 576974154 608027991 794536273 209189296 558299810 689448718 792962165 751178230 679447828 782756942 77840987 104125481 460359498 424214077 1029857036 586337019 760951196 287056783 1016755339 875610056 175504845 503404391 1021834933 890301339 23703325 773022742 651081790 421948466 405829315 996817637 954397785 898356933 734832503 520859257 5253162 109602202 65724211 465912714 514636519 725401342 695033110 847183497 864011850 332654417 739933785 883074195 644340310 88578099 1009932196 641731489 979099699 567285857 571347610 428271301 628052752 574929598 392674859 289243745 614419018 910545025 910048563 80772599 606690613 484661294 407774106 632689966 1035856240 974908987 54832082 75263628 1037176078 682868467 376565755 704750837 713883438 309726483 676785582 1042999237 254559369 240215785 439735123 680023222 735808711 358553046 625597449 534760537 808990033 372948727 177109908 586943244 117497425 40472107 94157261 986364335 663688895 343144678 831287802 574469010 305824052 497329395 702534576 731869848 934870037 1061757834 578258275 462273790 809406236 321543229 80183256 759047477 635915070 80545573 464356043 410931546 282134901 222652466 133338545 646642121 93989346 957608374 882448205 897832870 1051230164 392600069 919611553 144612887 167896686 376444074 709719511 7720671 942293967 922278700 7763828 952379198 935469491 971367901 258145957 442736335 427406488 189795524 645333848 167845250 1038017003 322254514 717334971 997499889 241457544 202764058 827403245 795875902 516652888 141147569 852860488 591804770 96443464 30642297 160687315 1025035832 541294598 180838542 190889189 429170084 658226592 346513233 24311126 291195394 802344537 571345532 441784256 1070578352 918442805 92175849 1028502606 783655294 614340962 553289559 322362399 63263536 540350544 793029531 23300782 476060113 256957181 1052070697 119685733 616695116 979338360 772505580 290119091 307359810 139691566 622878422 246469985 340568042 864093891 380232773 747246985 244187848 548049491 829352653 640263548 530882718 447808966 926615341 132137988 309085898 590727912 678976265 348851851 498901615 530751847 90258539 387393442 261329719 883318668 892873041 128710125 518815738 122289339 503206869 416413556 648957300 218933908 435383799 40972588 871159005 554679971 97228773 738678517 378172768 347900732 355142456 412843676 199947668 306210621 113899035 166635131 578542825 788815088 380474381 522213111 658347158 419678439 528698764 524507922 690065526 761366060 621525108 426292402 839252523 683441184 826705254 596534559 173495013 107224450 561291836 1012615609 490479254 130348948 246190969 1022916562 1055016555 278140557 230410911 332287572 660119760 341986808 267652736 302218153 97845153 603158483 443848016 939598903 387097677 1045276345 115320854 828456723 456239424 483914033 579557921 326871649 671397017 696957791 656701142 461702929 265992420 515641470 235538944 737911859 948509401 1048122709 480737761 1055683741 931294317 221582132 935078090 214088100 846257707 759247290 507303586 909132715 897755005 703166264 736244012 199712292 454666111 586786280 1050065370 462031887 638449165 1044916979 378265269 695843365 1028747147 643812377 684531488 167340303 180887365 551696210 1004302014 475151723 796199383 1024686427 954903031 308676613 464040511 704032793 747347653 1007219164 637240844 1034599402 687784861 990489342 959091816 48373348 686798517 328309709 742149628 138213159 736973279 999713469 918137219 610256526 129036840 766009626 885378946 684760167 319433412 793515839 921045666 23945366 1055390002 236578944 691805347 739026680 209121436 823844856 939885733 791958674 139223055 89487123 968524575 480119371 1018607889 637285285 491551664 1063183855 81750971 570923536 1058574193 131654605 213634491 592056185 248159282 484246940 912201320 492658458 787938518 158178104 1071233568 26007449 528309360 404229866 655133994 749244572 523129980 15852868 230467248 588726857 1040257091 71596001 46977903 859387978 385165468 834843639 633226485 311425131 990683254 473438731 865972693 374666225 245452098 609259414 731753803 129613312 1037851692 269114827 782442833 679120949 834419473 392919867 55838061 462228500 1015401892 629579332 799894208 473837978 678509686 350824235 880655686 1041891503 881723750 830981142 697358190 818356191 962519646 562296722 458731749 854617616 89507837 32485104 774551002 985701280 108020928 97722525 726330007 140697014 586428217 321620651 84807885 359394867 491183468 394333247 615236102 11667995 146847371 945758944 820208479 150522303 412396982 278271535 453695105 95737898 286708595 999732439 602069534 102400326 690595569 708508721 698592390 960474725 765610333 794481445 137928831 1001205266 52568806 58529727 175626824 754745444 527525975 624789006 182301587 392233417 886561809 475972151 1054213014 806084943 750243929 439940399 29681396 727050445 695795194 504962303 871760050 645119690 251596844 136700678 168444494 252216373 1060825182 58500641 115267235 130034176 1052840153 1005674974 136696367 960320642 628002137 677907220 916959385 273908318 300271019 727281214 643397742 935878224 334932726 1069702133 953181554 472693748 799277424 1016355880 142309674 839192470 405818339 592756926 83437141 666303116 844161979 419410905 845459085 224249757 718398263 64021046 866286514 276609484 126403198 434646209 432943832 838484867 737423703 575611580 333977221 970973464 510782125 309691793 919381834 13004718 284929353 725310155 371287766 1072905082 850510352 8960054 927439595 967932891 619873790 634189021 850124044 539566951 551870829 522663345 124616261 523116300 491252332 1026180621 881596354 308373545 1049014775 438323069 718292118 134156416 967634236 941907765 920760652 233719459 453781305 116354673 948085269 40715338 1014375065 28726920 187064319 248707308 282124116 222037483 895151559 793457183 122087337 616931639 32627352 656493365 247455364 178807065 560406772 806970240 345880464 271549611 180054385 70541907 590882778 629167364 858637468 812416086 406916660 689816038 766657974 792681721 827245884 1033869112 876356214 9079966 1042894215 444348624 676108621 951427472 679855308 601064620 295582938 324093754 204909780 950432740 1021275997 207143629 215298142 370789740 655961874 1047753924 941986498 408964582 798364108 610434162 284778745 251885661 361964884 520663965 367429521 160636924 231536414 1067465261 375994028 131919439 184143846 617411320 405943933 305412553 285870351 678280138 849605547 822522637 981141743 779173765 658994888 943044071 369253006 191688366 7266165 196634587 412762699 389165126 851140238 371715868 598104565 826216932 691945411 168099307 848798466 637991282 674206461 852428265 831925074 693256554 213895506 602394338 304944848 418822801 449193189 615256501 162125240 306798109 418244507 438885486 494492808 91815213 361886877 490628746 779743159 159722102 271078122 1067412752 1060762265 593350875 1056617880 437047571 758478378 156735521 605796103 263239111 979974794 98856531 991036891 216787680 460880206 676084987 903747281 990908448 625495405 474145639 729912718 340746634 307590981 892709417 6545839 107052743 763246088 452522086 1017015065 851045207 292415655 1054228106 203715127 49029371 551111383 574070755 739415270 78375618 337280858 364818336 316296831 871603947 225361430 870981071 863468280 475019529 351360228 97390325 305410927 137678899 747506845 670162977 413545029 673167541 218890623 510604439 1070380627 687429180 134399232 312134977 358514576 370600159 208411455 172954325 843306646 993629666 170443911 685406431 581182173 32917709 873693567 971352410 9179628 838351579 935982414 307022907 854405656 385671764 7906081 671156229 881097185 206363811 293178144 1053534409 610972352 371290716 793316452 662377321 687585141 969567690 271410482 534937332 388791414 907203041 972841948 622729371 869370594 862395295 129404522 782914989 28814759 250356952 612665891 80085577 582683772 854525071 704269499 620297638 135075011 281661320 126420301 825092935 1046654564 448590353 277004560 28887674 619076397 894384029 201900782 765069732 951965544 280341357 341094220 82669449 738682820 565963560 277892518 624786716 1064938143 573793021 644964102 617081237 344307716 729271827 331718905 490109003 72413099 979347914 709797258 9382821 398499806 185005715 758363923 588836922 853678412 138799051 329284389 887281788 1061871320 270699666 329751236 819202398 585306318 101783072 586942452 271414854 481575775 940611300 699363972 746617647 129228999 1070300606 506251314 692447702 548785036 523257889 212582559 44288058 715351047 721183426 1029974176 1017391913 289315644 998858904 74897823 43806897 809191986 305877376 137051348 462736803 549477677 1049763997 665578167 837510325 323391700 218997080 21710860 896424908 136988374 33334187 942254789 1021652151 881635208 549436555 36180262 381289085 1030520258 813196207 1033873205 114346393 120168176 904555520 975415882 384087928 957207626 317406814 599914898 229530499 265083526 550153260 1059154807 73377908 182033007 302774057 303146443 847552538 901516282 829849464 732999095 388768660 499691503 528316180 728270457 633106157 18031365 723149676 510637869 990119932 91888222 323698119 186109302 514689301 606669578 909087788 973904163 1001660680 745319314 417062000 1028209256 276084046 1041924557 554265778 1057271349 995713485 666239596 359253985 521784304 604467760 527956591 542869150 257918361 744491546 1007477973 997107912 276147040 436583831 19788609 295252510 1034835054 562452514 33718646 342386218 629427196 884663029 455073023 563717275 593753288 994215373 346440236 357994964 914027946 198815265 888663797 153624636 1058211973 164188069 774151563 160319345 654595642 943532719 730388454 232997870 796350634 468153780 501128401 643453029 25136330 482842222 407018313 470572110 314124718 86086252 969190304 590677237 452940268 1000197249 285477245 646125332 968626029 346222653 1064177294 88752520 881379706 334513474 1250955 972296663 19669549 776010749 670446348 698732114 464428476 348811509 406323714 451514690 925413596 905571226 394783814 842506516 17317187 105782551 217371762 657355815 873383458 984115053 161023049 25843263 590729307 1050897881 934022542 1055295380 213694985 294845425 516789680 278260066 226377626 964509307 710030042 765343558 1037138670 732264689 299457422 278767970 1068157888 773378664 976200931 670325759 208569771 49364468 829501019 394754053 303931334 873670397 516657473 103234911 433482426 1073270638 1015510877 898657192 1001504542 787538000 361586298 200485301 105276253 440889645 393833060 870841604 576308850 979364864 970963163 626084554 1070962805 673496896 293103416 751617152 841852269 1004933462 126906305 563316946 786870513 813111713 154119054 781842794 67218006 412048763 622138853 323552768 197778147 32734551 719168487 170834256 273761164 544999171 994511572 81128417 943359702 250673673 498074866 1037501555 517441601 966909703 376114990 179893996 222210763 767691820 190419933 512928906 221369755 511431631 1009632500 949085785 407603420 392116708 281636555 371101002 862116637 129531731 614151548 898298312 685908961 91760305 128283311 712889939 963545302 712221433 537908693 939935232 122325632 207759158 684804164 890174705 648288292 1016700440 800902177 12100793 399790363 9149470 628775544 462826103 918426451 605866481 411275764 327337878 421804659 824904977 216190467 539569225 731546664 747216587 410032366 783046260 108738422 708818130 188456941 99591524 90760374 261496399 962785015 671696456 590335645 821052972 869868765 819754610 315529727 92057682 768694221 57539944 340854011 740153922 202011122 846429064 932453143 151020069 473883239 805197511 744440187 21801346 386064846 10971080 198672292 146088286 729326823 820174239 216979300 345601039 919450982 42943365 57707330 312163270 458644657 448823998 326286856 912888395 804793967 900635303 609337368 459927253 938905354 649332609 319480167 809325764 651831766 724783069 100716194 1048691433 647087882 946530756 229353111 849591253 670161757 767855761 797000492 168444738 435150004 325919957 169596809 517721417 1042098024 228037761 187556572 864794479 513497999 902903566 241994357 703572799 977227829 592717816 710868597 1015525216 164997225 945717062 19805704 555983561 155371857 808694148 824967649 1061648233 429787171 219564095 839652513 216944597 75128214 912552648 754213705 1032831000 992297477 870953518 730274463 960697259 813445968 654697546 328367269 206350621 559056440 704983795 605347012 995557167 251598344 342038680 728395265 556523016 170566343 899822177 661953314 408590708 929333757 46024577 670749293 1038573067 965260412 663091703 221775621 398791771 354701440 790078279 203959059 781316887 168170985 176045837 684222747 591026134 427417786 292831063 512299890 494780302 658521749 486640054 274400991 554241862 253919807 24667602 807756386 49075650 313965513 842686043 68513268 1009700889 870685651 337635449 383640441 584316555 295395778 370470093 550920122 961303963 591718842 887720909 155294248 473000303 198087061 707184044 909408834 228463160 193925581 644492501 650412112 352056107 937281920 216988605 953070626 516895595 505238278 190342655 761197306 268053619 346855227 800146906 640397318 299517328 800403439 394804602 138399693 885841553 788980631 957165113 152088284 592242285 135357691 520740703 677218636 718147744 333243406 818356564 470502829 869840587 987847880 977749881 718764002 928742388 131596761 288784023 870068806 586080227 708312606 856221013 935284727 808333631 259580657 96920956 977602707 1021193716 811188314 218919031 466904073 263815243 725635535 241602264 448068960 531056626 411729672 741702218 582267295 220241180 956476736 100385176 1008425813 516694230 527421875 555118222 744386083 591515280 613760379 794607575 261455521 165541213 202360148 567577240 781431375 40349529 131214665 894504738 480623922 685202069 55796 98810287 961969634 565276881 148983423 905661042 35848026 1063883322 63767458 468124709 627711108 114498611 294893284 1042674333 991194023 127505997 499659025 782906931 45541695 740749537 737472603 206735877 238248201 108261223 903178927 904270831 193061984 202784452 1034031242 483973486 1025174596 996948011 5668213 537576116 511521830 559718093 302778309 872037974 676478104 685796635 404972331 1025279834 884241254 1061171080 1040291767 255676034 692662171 680465113 694092098 436869437 529322458 604911878 566715770 295088180 714664443 843675180 861115616 388900973 622699036 849018668 369755803 293147487 229667735 812884139 55329390 219582398 640913190 374739197 935886343 854224428 409673461 1062007860 258193831 146174561 1017598223 66501042 827067972 556488615 873758901 651541059 207356145 24305692 893724922 352284834 1034142917 419793581 914265138 693824449 703016532 475160229 975035828 543885085 171394012 518765174 669782159 485601718 453497191 288831872 660342503 310032827 51215694 240314074 601639339 285171232 111126727 1072869528 245730639 518694282 141532984 317179558 514857700 610204528 247972364 350189096 311309910 116045994 1046673137 847132443 281378910 719871708 329182836 677090427 813966411 224375658 357521866 699457752 256869342 55807421 674515380 364340569 739051237 630405503 260281442 277269669 364687145 540136020 975346913 728870795 32196996 996088854 375506913 986226478 220555361 784816690 532690058 598184205 303262589 485142554 213590230 803524121 440012897 119364735 413986549 781391704 671949320 269605987 804252103 705394400 457135882 235559119 1004285915 770410880 937403448 381965579 1014428553 882236635 410565207 1011024765 686307068 449179290 565197320 305305205 537599893 435981399 503941710 40675399 520570651 152489990 100354242 802113876 670995722 875252767 729424600 603483515 54428350 153186511 281849723 527935759 232429339 753780914 451786944 66201395 341495842 1978717 504968259 514212919 655169538 721350034 615357314 296704547 194382293 79195145 840022966 307779759 392330486 537956305 866636708 294779724 544807959 1048948681 121393248 701781272 219822491 375693473 728863432 843900205 564367218 608324860 487822513 396583844 877530901 16452475 807306342 479620813 615811339 216800987 367090858 483555261 158218807 565835181 1032712652 614522388 389619766 670026443 83923320 362865640 25387091 110313759 800789592 976511295 143364668 389924377 244451808 558592775 994100625 239754846 724161110 242087428 746014624 116269996 570836480 970525087 577712574 513190662 544496016 967681124 398276468 374797262 237738171 569740521 90380404 1023556847 77789788 980493447 137108177 822069699 1020498337 830837942 176448039 825910721 431872599 807245971 704843611 457252649 581407980 847076786 92701153 996361931 335759554 781396368 661110309 774510667 324731199 875142566 971040873 838652266 47146612 878358836 243651296 742285304 693005919 367726222 825553270 828912768 362718467 106774903 573253044 297120477 625246618 447939267 665139624 182289965 349179231 1029589812 418205322 224198439 826289410 26129598 136088841 258839793 747941523 232049975 388968429 519379079 822189884 504823292 38601897 158521096 728121883 146777881 789790790 459627472 646676829 87147755 225741030 612246808 937758578 382509240 31042560 966795846 129966918 182671706 1004040631 739834277 55345678 614299812 341268190 1037773277 388664375 188120607 592685149 568630652 37496159 407823770 681516447 18914720 518226028 961817770 564264753 834366775 697487902 489187746 1005768482 930941589 281376118 446546539 980496830 28668002 305583783 568546801 100844983 167368409 428741954 618883567 159014773 744249648 1046590331 1029096794 230835151 527786577 732769593 340855817 232870045 92958832 91920423 913354916 680431587 911868301 756427584 566120904 663738272 296022954 1031240481 51020939 564257544 826047789 770614001 842546083 268586620 491753412 738438250 805326799 84018018 804451576 607308481 459093681 268199762 835587747 949891275 40803421 779425684 626077431 959654326 710428102 789831323 847105554 981761064 861792116 93143139 830850874 950600779 572205522 763865006 852017877 226350145 733014008 503545752 947820225 334917464 1057510560 332975818 331613278 609556122 452900680 984376757 698080406 743839954 628992855 242510003 805823147 921151273 757201275 324349107 46454055 605132127 570869600 943953111 985183433 161658184 408586144 651188329 297139589 230062260 541000577 924949539 674629022 930339883 129561359 564755727 685027258 1027395870 155325122 198485165 555820844 782408970 189767566 826978088 966638348 844558579 721194981 802651103 570285700 258406727 865452071 823041955 901134244 438830658 426808075 201923171 539353332 682976804 360684596 631229985 840212449 527662655 259720727 439482132 946001912 1014879681 821522945 829156704 101757059 1058557456 509668119 114749051 402177841 183901029 99543378 775392984 152077309 578658781 760734372 148204000 15691576 774294976 642967254 757420954 786593957 937770071 883513613 524922515 436260185 34077287 498456415 885358973 788469651 745658777 113555455 290758516 719525926 247763716 558084825 785768656 1016428813 578133770 400321136 593849876 1016359595 886181233 776678627 430113343 996769029 195346231 800044483 22453056 897642442 897177238 451130605 661991382 1033704469 495786200 565734858 270980338 840701684 835493968 133689775 746322660 6330260 729862628 305425371 876081761 759914375 266584920 1046510090 30192727 977298994 994789836 1056827946 1038810210 413425323 298677427 52259314 231399608 1060164438 798855044 953173919 360216035 323858492 996789923 278587817 892183689 720646246 135789450 661694939 225844828 958423031 172139800 244092159 442666901 124860268 606772826 1029507423 721714722 56896762 272352569 901407895 312533859 881779251 196611700 1071390239 825528780 468854369 385465464 890419435 791585025 409974945 189321418 803713730 792295058 640760683 1068286439 1049815525 62773243 9182077 290311247 947392209 904954776 939258414 668645551 588150884 757590111 821032022 136590144 379633393 679273516 182233799 243183852 357933697 553050802 904609239 860164365 86333193 614909952 67504284 1038054555 1030679583 181449808 502668860 316110728 514266303 501554712 788826919 800687480 967850122 689429842 1017433039 93839106 1069471764 928583889 902004607 958222144 991853785 1010502804 1062066762 436513531 1026428974 982203578 362905416 298067338 522301433 208003603 695488495 971515492 604844046 37640886 774472786 319730098 49346272 732062545 690763488 944747935 881774165 718315303 932771476 57083215 728549460 568829331 744793150 142878415 88523715 959249319 709452865 261542209 990394661 160800501 471475873 1052054255 284591819 26967945 93724187 291341099 297029942 762382757 205261791 1030442254 723724763 88294531 825538750 787511068 428134496 101883615 689971581 820063789 1017023274 786844416 373505191 840660887 244335790 58292869 406667999 579947811 316513866 174561571 830021113 320204302 1064703373 444871762 975994145 854939406 84470564 125187355 926922381 692665366 706147216 991196361 893383142 774158907 906546005 355332763 482713287 731206562 1006353347 531196757 612183068 837945195 342034153 359971198 686758704 251935707 1026942482 867737952 917067585 468434286 538009599 634604258 405675987 484969540 363326998 599900934 893020147 715622275 383688541 501966719 611236785 970719864 345757293 462325990 62224624 895547749 317889757 171417382 613172364 407012445 491416689 126679932 1016647393 332297639 528564198 126279113 400126819 96659258 698378828 581313928 349657806 194087405 921702386 271578903 493428977 48290715 935913940 38154413 154554884 483875358 487981918 117001096 499352996 585304688 899609133 868397410 695078868 652961541 14299413 346293104 604358094 255604958 483856353 543420518 21330642 722761402 601970449 100140348 625594920 507373588 1052329940 262296594 685921042 289375960 298135960 285883679 159399688 27147859 88680032 136703905 105387497 250018923 347782488 780729276 459474088 946851113 664747901 952583028 881151451 138863411 424339368 617476709 70587950 623523166 89285959 1066942333 872756246 1024751285 956934623 707381397 1056317102 543742991 396442094 157787674 377457945 950189713 959863103 429606224 698624906 326602331 1045216639 1027015443 1594880 530117867 88884009 518576974 528338817 68360454 1066839087 84906718 327552461 919349605 802137799 858700597 437967228 749439520 487176661 524806113 394204082 360635009 874647637 148188524 562347882 205683619 956400455 913850466 489655701 423312494 633011964 632990329 537648390 383726508 911310672 718013558 718102464 758272672 1041041892 386990437 48563380 284220948 34779407 1031304417 1045903313 66799061 977496992 601604902 771913366 41870789 622094739 557716231 947771752 761126626 4617995 888065647 1023183933 568448647 230434210 384128749 196996038 45929255 1021992706 550733039 134855650 53132402 620476017 509283813 892022069 157932544 742075473 677534949 829277271 258112731 878125072 269340949 920802770 34331856 891645168 486937571 588723240 220879056 660605742 1040813565 115289519 543763444 305399356 688248253 640567691 774340909 969616263 2976635 54639778 418345342 808727395 557153275 614657877 426571412 446556318 984158039 937552583 287811873 341431169 213991554 247868184 514235296 1033158776 482743223 224897786 521178241 643673576 834117080 883176399 946563965 591121709 478820177 390883168 217139552 812358817 652844307 292484370 731487011 189355371 95243905 512894374 912481498 417133895 856194029 374665033 668347762 1025096308 45727390 964456503 942792109 165054192 787973495 213063677 854389229 1067655100 101435637 136991731 758889172 78794128 321155370 99209949 282567197 834701291 1067956627 789240760 588716083 847602760 902411786 168754015 961007436 895589659 880459806 288435302 735054671 575399345 1067600000 489214219 1008301801 925744580 1030960114 1008574856 248740710 915401299 791052096 748358128 831793146 454181839 139883819 903460089 722687594 862956780 846219961 747850735 864708206 138997251 975229369 9784280 704061337 365589821 704312996 552920705 159666431 430160991 453119732 622708931 487109650 156087849 570467044 962956116 839487111 647183279 304214817 78923498 593260350 759553777 124486048 76135168 150096230 384590864 911349518 930490343 746626390 637757905 927178310 146088432 17772603 930581526 351704898 976906506 333141515 334916135 164029700 855270784 698252445 441894323 367136279 817119357 224790263 1073121258 978235351 302510755 898695066 708817560 667251713 38580325 252645794 247310788 183249483 563980343 1019327757 946621629 946458653 284594360 709691981 226896860 34195641 522852125 764281796 604943510 252101173 854037934 142149858 795147204 271331710 161168699 1054705562 228015969 790342112 492471951 120210045 327768552 585773472 693295921 153789069 237046524 549784571 456232555 770000549 352292626 182727011 853135463 120273065 495017856 765755438 287113388 617951876 126017670 712986770 938716411 63702918 486234323 147202452 226206148 302612653 886639761 238592758 126016763 851299808 376306130 65960042 827340140 533935164 548400981 473622204 143374427 1053723931 194340354 514525037 976992915 762123978 681662308 234640827 715215137 479207162 510631868 274891723 600920733 952232428 930769590 121817464 66174574 298357327 578277524 403390713 149305982 651796453 82667304 105836915 33343219 932213065 820927758 777440184 321307126 94260413 501943521 517498565 410445174 124041400 824638080 6857433 721927637 936614204 246699066 518526124 108312643 255166444 869338255 1054700203 318085796 134634169 544182219 153443131 878055004 282302208 691279140 471506983 712798039 272296986 389400260 221213297 587292814 92070538 50414042 576358579 918585528 853071715 772260615 672852264 596574773 1009513610 682557540 955099481 613894210 802421492 675038827 120871860 894201483 858647413 879667694 890760277 175149353 630172348 821161735 487006274 946625259 47021189 95599046 49451466 576533732 594892117 682476173 81788054 740799310 1010004377 1025830275 915989219 955759764 139850887 53251387 24865000 785005829 13662926 985306395 203513463 698615650 701192397 1005847905 235108264 87099853 308041468 804138538 588492080 452788311 230249932 758356924 429318712 730567506 365701969 40960354 500556587 268066182 1013064862 273621180 477041104 28403129 153295391 166319366 93888570 464103188 272850242 999585210 575294035 47654133 182560255 26389690 348042297 1072972238 105361406 879796607 775491797 1062644753 1015226513 971642891 102280806 973276227 606001321 857479314 157566368 824863041 498155813 119763212 112108726 524436474 21877616 985763411 873899044 179034609 869543783 355811318 77740906 638719129 893027496 138924450 597390193 750785573 97877436 538654701 699666383 234694182 680405562 267734296 1052718409 556993340 583539029 652200563 607533104 937035120 1039592554 51620043 696661972 786529555 187176681 261824387 1006655881 338569477 593343765 216369838 672329242 347149754 108601280 1068962949 218660365 815110589 852725645 442631967 321368708 34087257 557841762 364352014 938366265 883426203 939838441 344620138 880378334 768710236 285723584 195121634 869273928 303340349 985899152 249423249 325180641 109060281 36712502 665017 1036969007 645024567 126124680 679140342 424944066 489970166 178007212 873914050 663168410 623120107 921330212 462740060 346690794 549859674 596589802 382177833 20153776 377397391 763257697 520113048 16075483 380119105 502743859 711001884 523875432 734538825 548718797 197940808 7710100 34886298 96081408 919398332 487668470 567314311 979624488 678153946 490676722 856641608 199696670 255781346 1017058912 669976123 151394834 921047735 791390384 238817010 240266294 81799326 499393093 287831492 920633335 795290279 356887784 914914851 226683203 171364931 403116185 910969496 271623519 782239644 771689373 232883646 721366818 744087650 364362966 922484825 408342338 1011609481 310833759 985653149 981797985 303761719 150641604 668417555 792227458 665784568 892412655 462626226 989510869 106501360 392206084 556048055 210257033 986511619 135814534 832131825 91509963 922160340 115232992 68420848 325582509 299200250 282180207 116315141 496687898 554464401 796972723 710035882 157284463 853527068 329708714 63386416 627955450 691036440 170382841 83422855 965181209 1007530206 946072953 421748359 873623635 343789674 831983406 103870960 266434803 587828056 277362149 339381866 667553172 81706854 1020666177 6636805 349462296 319824276 984247145 22543282 719547189 207151341 855903205 1007641457 848114435 907965912 240977342 208512496 79244507 188224749 1065449070 479618088 487911146 490309895 356867888 144693064 1030064389 474518496 1023201530 137715029 129966521 924954925 997925996 113602234 1012773615 214763123 2785350 239972624 791956415 967816257 1071951921 854845960 1019139905 235892852 25200075 372706470 86284441 705062033 742767344 843417551 235352474 1043310739 393850260 1034519843 177473379 55981623 101949336 427264223 446827143 416850776 191867501 846806177 269481985 605642956 1027794029 850842694 111293127 590133508 1017925715 12048223 989489162 345564327 277414771 685060626 669653880 422256696 781532664 961579341 595980241 756708442 75603266 794452985 429482379 947996958 652211987 428105339 474643194 439874319 504484398 244411961 737765790 305728949 855864150 372608191 503542782 530601665 532704445 869351740 702391449 539591087 736234934 758099990 980502543 719909954 106311689 241807558 100875907 61416422 750961011 1028056231 402495993 526035481 398301217 459482602 908930375 437706033 548490871 191430258 41603760 160362022 266651135 399404317 455520435 534327845 171292265 112489401 588402617 995717548 1043543893 930194860 1040162886 551571883 697427369 336107841 833972243 995864415 39162970 649873803 792923624 586296643 661194373 368011526 698912484 217148989 787048748 365895862 215603189 484817934 1016864783 40638457 297416799 325493125 470665947 542433467 655394998 414063910 498285913 499937422 869363509 975103728 298570965 779668547 85480343 333437108 340140902 918423774 252909534 992557113 506651559 820494073 111904546 360600971 57274509 617457354 764177525 881158739 935148424 831563588 25739553 395538109 844271167 537525024 284060766 834685555 790199933 605055395 476997568 965262215 207490254 591390272 10841385 865034784 48467837 75945732 185576406 735894692 76244039 42658948 171260567 827189578 1047197075 752112459 337849150 391758349 606956973 1066684956 914477461 757460268 35150405 292754749 868490865 889005605 602682010 1063944510 481765592 104846837 235400137 610299312 8196593 220709914 467746743 600151016 977004631 617890093 680730072 603742841 383933480 192738324 803438111 54155134 751330894 1040355100 317764929 76220326 785157803 1011365910 780198295 936651351 1015291331 804360271 819907919 1006022084 554636939 217865204 880239239 662642270 990185969 303221419 94573132 867879863 863874431 206277762 1069272510 388854550 786038864 942534582 457075435 952656643 969747906 212226847 419381128 741455866 100140953 667318502 882496882 272868111 689336672 768789837 587194030 909051174 210292182 726593958 649239495 179072330 290009904 41613424 241609933 404517777 728214570 289418088 564617789 1006633618 796755619 750097579 411663256 509101783 88132824 199019140 168247243 168539222 500528695 80652312 213808345 332845416 935153665 1024456902 985622562 110796435 111360368 627163207 312823563 165080127 895837417 665859805 872930015 679726657 689993323 334184327 248585769 71131542 244711513 329875344 675609371 1060930766 93036755 303357557 808697882 424696793 846665363 878697964 334369496 1060775404 1040940692 785225735 708886149 632405914 916167954 129964146 895789014 436027790 70920978 223184995 1045378939 251447044 972236461 458294647 206439594 544873627 885743859 843554023 953999937 186005950 567025826 716391639 204555684 280374707 760890514 879503573 685566241 831430003 651083689 900530349 700688358 1032273546 485267117 451152007 799598438 931013489 990890615 161856290 865588858 732077427 647117142 662985584 186812614 790289734 869756001 12523274 1041338131 835377572 398230304 660375265 134282991 1060223890 990336464 838236697 78500536 819324567 236159245 371042758 328467358 431982409 511626744 989874462 535825280 551645116 410334161 1064807722 306832285 457254511 357854619 232375431 354979842 790224604 95942413 180714397 84927658 516212085 96064877 958032271 513173641 311597321 700199721 867608182 571971748 326991095 107853635 185602065 214485875 766469671 935267226 93699812 862211250 515649306 679818019 422503226 797058930 956477498 955753294 684468008 871772616 502081219 370816107 417827973 1004974336 52217848 323679836 759054143 173623761 239659524 939720994 706052868 245845372 357768927 259294411 960041208 800299860 275737102 965305072 489859678 139194411 805167673 954530026 126801617 85367724 956742436 496757168 962563865 495329514 926872705 27377048 744432918 567674112 699750700 108737982 268502227 1044916207 343479512 274418386 385214890 770995608 59441317 862568903 883382882 1054799461 206424306 677550817 776936108 635995085 824378333 59255852 1011327072 629775105 235578181 841857820 965271456 114993822 483576322 356334544 288832290 704466604 67630198 71217300 235803635 1068236183 329826611 897824426 70031418 90742794 400803187 197650200 38223922 188462972 742703385 215138683 363974814 790333297 579533961 404633528 791671247 390029383 936495430 869789834 501357222 381651015 838130819 562885081 264325102 286689283 324431854 496457598 445499961 686652872 349446860 161751002 507465315 235501844 244831162 315206458 903977002 116110075 605160001 264999259 109291501 286351211 802015572 1056768321 891920925 1040065486 557348112 6687906 82278186 157049658 286395147 457731759 491550011 908044481 372667012 137340184 468395794 614605371 415605985 1058425562 230355860 1033174128 490019183 878494905 529956089 973268526 840528416 153848599 547863760 386011526 526534084 469684727 739333411 619588344 1012350924 42205913 231179311 926354657 64091381 869042308 525516168 841545139 933747389 761269580 330326346 1035245834 916065724 879559049 203267725 576971171 811756494 878929561 462170652 175298664 361247774 396931893 43323900 962584035 756914957 435234139 208181389 229450551 639742454 708544555 107627230 835346680 183090812 487720478 593553416 343530230 494671729 487676917 402063635 11265715 549812536 166126131 185333099 658120434 524474514 917172202 185184605 819398483 73141162 697872271 2108670 579305148 562472347 67182862 688455203 730633685 790734237 846746214 295855863 113643533 55702889 806876652 855918452 730050535 69534284 500465112 291453281 1036597642 495948230 689453449 564595650 457220474 120664355 853098420 833103030 83213185 886876719 701837170 123195522 147800921 1022487725 1030771922 563633685 131328871 870356725 735827101 619002719 592692236 31671574 119186956 894567043 260447712 865660975 408228105 181527644 1037248763 247332132 124784456 900320687 852267563 911013031 2639798 321000858 791546631 771282168 69914916 693858998 501025754 442913408 93042864 992888502 987534224 966680199 6418043 647371098 156701945 412370010 359475249 661266337 223130270 649103278 805231533 315533882 1061675168 548363696 807630051 927625436 219853505 503270145 437122319 876265883 968666577 795663620 15078209 813783539 573493620 686593857 88690953 226589754 321037408 728209728 167473594 401364357 985747825 895045641 790554792 854901691 931090004 347992030 865308040 129431843 455411144 786986288 805757762 299795214 198624410 941138033 745482618 104012433 91525672 189423314 79961776 522833047 794870163 243537849 271248359 341516735 332664225 688939815 854388269 812290434 616765782 493287984 106071471 181473807 179137949 602600338 270636336 939492953 439198779 1024880802 324965601 177067981 50359140 396873794 150146711 81000640 1068650895 718220773 13603085 1039117 364711438 751660970 1021898007 557826970 23810288 807038731 45280132 654307892 541656217 942793748 686474016 260232646 435296464 480288101 642951428 213842021 550313846 353973717 749447839 403240057 1069855030 482461211 690760467 278929239 1069638876 994848771 690609902 230942847 491493439 852538499 149804822 435139867 680287113 735701887 590130439 742597260 468282205 724694589 229888709 181947488 848716367 637316133 722732027 249895490 430968010 203105800 98619782 1008369062 429286019 125530841 708451014 158507459 207509646 765398334 372084566 430227408 1005314537 534629126 101900094 679184831 1004866649 552975093 239426598 286820470 734175358 555642718 115985600 849786767 937510755 969057043 730240562 478185637 836846298 898794924 740680840 770565682 336497041 877966028 900465881 58541768 739119733 386554217 484528091 512314410 142340792 588341587 1001360373 77395633 49276622 930003503 779842881 178726022 564132239 914909878 593699766 981991926 951167222 442741286 653511795 618641526 613769714 1059743685 583161836 714128149 244189153 706383805 271380098 512589469 150481768 618532589 678803723 236154670 1065613607 266326644 52247298 640995000 19292016 451872975 474423733 667935531 495947780 739672627 667728793 29966495 375580824 1017297741 234290226 140651341 186340398 259503141 473962290 876234624 100261938 61647273 1022990143 899144480 725206019 172735118 878540548 366594771 169051836 559273291 223321213 384361439 461370108 952679743 45363960 539613791 564790504 40713946 37368133 27111043 246518985 628301448 1019424913 703956981 1060525292 890999845 145557942 601234276 876430811 1048932117 59839273 10484235 961737847 959997266 220948402 121170371 537110147 879272476 510039908 488776614 133580616 310438062 841122536 931484697 84052406 249719922 611322785 53067256 1022500372 162196218 57857829 718231106 832895193 405425762 753419443 685930742 221395811 613326040 462875253 825228218 587166170 87580102 197004069 888286367 140581331 401126814 219889202 878777502 844894150 57699011 686661466 261408490 684908193 498424014 339545652 387682793 1068239434 796372108 15900520 342585665 142574073 965343990 727577637 426444898 1052001150 179889657 38881929 767609625 864438965 626952943 355372930 639291000 333037710 720625857 518828711 249227538 402387626 798935541 422258388 525438273 333398974 71065717 1067112824 500087850 236508606 722235228 1063280135 174931722 92609059 143440096 735876213 534965980 149736199 989666111 21658566 21076419 572580314 636779620 350167224 245853606 620179505 790767951 850520911 789657191 636526234 690666917 592853542 691928142 804769412 666568711 870517762 448381934 472235494 82416376 1040746770 809510086 849314517 312071987 385242343 560923556 457669660 695822995 498330719 714175569 996607059 643668371 943987914 475695049 598950913 493499093 553363785 680933601 519349478 850684197 198841968 116413585 634953265 769421741 840821612 856786280 10279343 964968 192778776 937713231 641427493 329112897 37442440 88033901 701074600 179321358 644278845 611314746 831268230 199169726 582110217 641295938 961283160 682451016 217734101 310971483 647622455 619617458 340956759 168683005 683422140 771397545 1026360776 785206821 75543637 765189513 691003886 231840558 18692858 428103850 588947483 204911502 110841349 807625012 924410200 7191639 351060787 368748850 124967776 339310258 694656231 49051979 1006437363 884235407 666376830 1042404084 180432185 163253262 954668191 134820553 120148662 539430123 716722889 873624892 741544448 330899877 103608090 326118705 838775588 337893227 31902136 602044763 776892074 923886182 806089308 812153806 498329212 966883129 892407375 400132231 967265641 1057295827 603022910 785527376 96779805 177124385 47833436 320726082 75786347 624940711 936233777 891725321 249949635 672166340 731004416 843984579 186100890 696793807 694152165 241828175 1060847195 245511490 793187444 999656990 331707823 1060983462 680561204 491672950 850046643 40263299 227138542 201799428 134352206 782760344 546337216 109172064 497365402 261455877 874697971 623489477 525174685 926141784 393228765 275637125 172136318 485047614 724714636 1052205709 126284413 212097074 1041756849 27190705 486254443 648319514 326265426 1039837297 1071468818 998470625 774721475 136951302 1072418046 832379643 844444307 745053705 472790928 948865116 1046888928 144477002 834569852 236614380 680582948 625929276 32725386 265545223 282427686 311531399 987909084 916118707 218986713 979616926 1011990758 592324039 348890967 223520753 636062096 693527476 43744699 660333888 740216251 881761111 101112446 527555451 656465126 439351402 569450777 812110912 613258126 717946921 444749738 405667151 24516782 282395512 718297866 377129808 758160301 903596355 106948189 32774567 1037096769 683223613 719483728 883184648 588100571 186019038 257364514 722654546 759482811 248234350 283441768 659578879 423685696 701077529 283748097 713663877 874320320 605522658 1015983773 975784136 1059163519 98087873 116540446 218999198 876809551 1000640015 1066010853 367797909 753338418 292275752 483858966 678280675 986979457 621359339 199503371 408104747 312872530 153577371 231541590 273202093 224533544 333296897 731652911 415389173 77977436 261055120 408856033 234158616 134240718 320272100 511560415 244542340 906275813 32437093 36203930 837953524 313196922 705347379 505467929 492358801 391535093 936250753 926346888 926392454 826501384 209633807 992279889 598561216 342025212 963543805 7804879 140517839 75733084 310796163 722058236 887373964 322197614 753548407 580266187 705233467 561515555 1005020963 641824484 763712507 945130074 767305144 403068038 415762938 631794721 653681291 511890022 806702604 492946422 5601471 980964865 224372313 988717900 879242536 961119269 182568253 98361485 102870230 21892356 478456230 546336372 607226949 162962532 88530710 944460489 963718016 25380481 3815336 807715187 107092250 513941754 330046435 696703107 833967881 915182145 630524919 341227365 60367447 787778789 1022498732 243588511 1048673913 968925459 580647991 1061336976 603381509 690106480 498316470 109289898 699475444 962504866 414967382 958852083 753514455 100694714 908886361 1058996628 910318446 633386854 998920423 810351378 927148451 866550538 483124213 576386839 630413141 61830616 681270405 910985581 607157092 659410888 759849867 17208826 433840409 194526863 830151566 566668413 907797222 844224322 862502859 111752694 316392840 23627994 821626826 83953615 960228587 24355818 833539004 717645939 699425747 898505104 243182786 1038652290 749561688 218793849 764203945 922933337 838250411 498227006 65066518 918252441 982866595 537701198 950635425 311433710 389905096 782291619 933008229 422756520 167677447 397869894 642634226 234526988 772451305 132870831 79228616 358424323 960427461 356608209 156693579 34495430 339927563 337360275 512399659 278257554 29140177 471579039 139190728 981940891 91833902 923779000 747687242 650056876 807206477 488693831 67201200 721344139 1049820576 239010389 799563086 462823308 933333598 782672870 154569310 540002699 957132980 407527258 173942538 781779212 647991264 589879079 139466828 386493479 464114009 94532370 755125983 728996745 577435141 635828575 83839059 707155643 996140255 117869968 518614541 780226718 799258836 849640774 194622663 21260201 261508897 1017087917 822208742 602769798 48189010 602756216 907563838 175335365 1035776190 610173245 235505790 344427906 233831640 215571964 160654733 1062154043 788775895 100396866 920334864 822816589 68775508 635057799 85390152 160246880 351706550 516933400 242306898 858271849 535035909 117436858 305258082 372441349 1036103197 55126469 587103561 689428387 728045753 663340049 195320483 7129269 102351177 383847943 750835281 852132876 256273733 612517812 471121912 68596322 977616090 476747837 375682172 528288576 154661264 250474591 729339225 320981614 539749903 770157151 391566607 14084439 126159297 776131058 706357341 995796061 60042306 747744715 326173322 174834754 821423708 130103705 886737330 13994687 482889964 513757745 485494345 125444187 950628475 387880831 785960462 347071718 323174137 31591385 762813877 1070337865 475279633 240074239 896714426 113916696 390709345 98096799 396750254 922302412 50254831 128440981 146353362 997321948 942950447 958562952 1038105958 100879854 794541682 70707157 57787566 126761528 622483129 926008669 113782291 121496032 848205847 546897009 523703548 1069382664 1017489452 1064293610 907423620 141882667 852578525 766157218 197889467 385209054 856437851 535866157 286087948 702445236 877330729 576900206 353811062 999828948 929305936 666786858 324140658 515929692 939171748 110385437 301815669 624744772 94298719 460211189 527732954 177497458 707940532 642749465 307000359 849116175 184605137 93816600 188389606 383392293 906870910 522134270 514942081 893328883 368141292 144204931 913583464 891792869 288602355 137095902 562029225 681762831 257688183 782045816 997379085 1000001221 252803962 1062053530 390191352 320228099 414744177 715505436 92273506 482689964 855514032 469823583 476024662 285666363 628961277 870500241 218402445 1042212229 541113958 950405699 645540176 43949292 920215858 553140629 203988621 543716915 354870700 20670612 465301121 767605250 862639641 979077438 92405469 432755305 451818349 1006867415 320471472 283044303 418246590 721726074 911839854 310540162 569701619 212306193 617328695 137023302 456074637 626080107 222420565 203884775 61505667 311187276 983797196 184277633 420414830 860973721 927393032 479304875 601319781 68896421 817371060 90562467 396814797 292911733 788363822 558752736 234995755 73342981 760694607 535174797 977373143 1041218765 148315691 508359880 809960517 376119020 171650264 587040389 332150480 882673578 815396303 67363551 914965755 286701134 812184238 90475258 241344330 543146010 727061705 463355238 479907413 858114082 396283663 542676094 921447382 983868350 110179256 427365170 603205919 472731256 526137712 191322659 616394816 348031642 353938176 164733618 334143457 723582555 251965455 854676007 526333917 7227086 222842789 80890576 854074276 938463631 1039301573 25986251 270321991 1062305701 472682659 268937301 1000857999 371965004 777369211 760968605 20641301 555788344 2466245 884174994 920944846 228877223 819153157 542452142 815562282 827139787 655218182 796508910 612455416 155042047 83701688 772032369 722502042 350992433 148652347 369229156 1029801089 264467882 773390202 522785059 46754063 1012942062 154381587 275965566 1012874566 617339396 862581421 899336423 934117219 722513616 1003991955 234526915 92110842 982071494 255494560 541140489 763125769 146820690 115215599 298981526 1036052567 235475191 378636836 456713930 345697787 529553135 147908584 629282807 84544692 375739536 108450896 216996531 16418664 662312393 224225345 94387632 859807423 639836507 288102584 25032872 23138015 867571866 967191981 1046971071 1048454639 35590296 1071827307 534095247 110136756 116346940 825661704 1065454557 417005945 631296682 684413737 122305459 615543157 708898127 350510287 668271930 587369275 904557265 328299198 913818080 391761494 750746829 228281868 708882132 318280889 572064847 171269021 920970723 735279050 561946878 1010552174 998727930 149403668 1067043359 352322114 393187078 850263194 1023815358 52058126 163893106 858576574 92905325 976967449 425709997 1030853120 277086908 532619082 883181893 328052241 1006757055 354807521 21969333 844605468 899979880 899134556 1003319544 820996110 906023574 825703112 877765820 988462325 434462863 997131551 109844518 313663918 87271195 934665404 599429994 254012527 440302557 1037239060 636257292 14044139 941987523 279578864 519207164 933004991 647275217 978103988 622687442 1024198396 763738815 178779618 150644025 252676000 682756883 1019008372 756523690 532100745 1032591716 933519573 872119637 165149315 724296336 724437280 718025971 559807879 659080679 750158375 114841298 141640836 93068959 644037158 74684112 243838065 675595886 214634161 1018479 957075052 596543522 636222785 836145800 807453106 114945600 450927991 536711717 529833849 180287180 547409677 944605522 646307812 265665135 897102598 406591106 44621398 758283893 974794640 686044398 178866832 973327239 1046443460 678680983 677653640 1073160476 773664014 452025219 196634868 775110215 724557967 622187323 1038321636 155629101 210394437 458299010 187859688 16891182 975070237 921406675 717538958 1014318238 548334881 6683986 605334272 511867079 766756162 1042894290 777187919 862103867 19332009 712614408 1027142206 371082686 66180149 707950576 577242588 828337828 644145323 984460801 825803142 560393413 699768603 344758666 972012696 341916406 1068352844 85420227 339520585 990867843 83689932 26180960 70080912 660764905 199799227 134215237 1065448851 431197763 415562010 10093099 1035116368 200203758 35602313 55795392 766316709 34729617 678244294 261016499 757315969 944125657 507840616 543956818 167140816 186414234 950916811 24277335 609857696 260306507 594390184 67002052 680882592 556128522 379132248 995639640 584277573 267288614 946185520 608061234 571473718 266391952 377990967 836145126 958405843 536170773 336711694 578295315 1045042484 507234815 14070764 845356395 653024396 761757243 585280700 19070153 799158318 796957853 192619532 797197540 446792857 755692206 851316783 289204239 849934490 967568886 43143838 764524435 526152579 302054625 494290693 305612116 299252910 295253113 66751670 726485166 488485927 214116313 175419883 567949622 1042322784 926614942 812029852 28253750 1002715439 197176724 971196720 3888008 757073199 597307596 81827052 64791253 519688444 122656504 827534922 738617780 299428327 632926684 120462503 525775143 641882898 159857499 786441154 693202660 32648256 976390371 72567052 979633253 1056740922 907176715 363701239 222964447 147746236 284864920 319288918 139197845 899738825 1021061922 466791569 867692218 723784840 666481134 337669421 877729978 907984687 338611611 383104503 690144813 495580013 685614648 455720391 1048418269 365496262 318018570 634433395 663477171 979289137 951621414 678236053 343000056 197083107 248097903 722822012 627084989 290118546 735712310 681467711 331957304 371738643 205304498 556006012 593592930 646764344 280552577 633547334 375459276 700734888 72539865 833665634 873416696 558250524 107501511 655223834 299042208 540645814 64943980 140581375 693413632 992591066 389975464 778986663 1073286248 1002261936 964687679 970680821 1038295800 961905222 804644159 251609958 141254554 541735340 712832326 400160578 1005617392 801364284 881743613 137495577 443399548 547557755 291770472 1041513791 780973903 712448668 282934852 812109746 688622751 667583319 710342391 830468615 519495383 831005391 779839500 300840066 153169703 100583292 326185489 719318270 974376264 307230095 265896441 688292628 666943802 222586902 389281986 204085279 276872102 1014296673 819034552 220103537 24480591 328761991 53327548 799385861 637246007 155822517 24381835 117049968 213902101 853744141 83677708 93483331 809795583 1054663702 225677537 896977274 67469430 848586764 440161804 264090408 380764622 365758807 637148347 476294465 448013548 39830495 57051064 746555005 279135868 112600354 597140019 1009109396 582539384 93395178 298327246 995769362 213907741 762081235 764288168 431115737 588535273 23201463 607005484 184792057 750499315 950815991 950292724 979038408 808436947 374611190 227979145 972203656 918938445 745726012 965988 289264709 15468708 271495668 333330098 465598206 633600484 867300090 724730177 576256741 961156199 594235945 890817953 714145934 572190566 1059507299 1057697885 689034135 673492426 281401169 1023880536 140428885 890470109 779017162 206278086 433617409 829598739 176615986 546029295 14435742 365937331 1067126474 82050354 86514375 467430508 582001039 532908690 287883308 1042367127 891743853 836791984 776775185 231628552 681162621 1039355211 386558001 26374602 981695516 421842084 94291706 622087302 537771804 473312511 46575718 710297730 991901153 270094122 466749188 715642669 118637326 615482007 105359405 431813518 813662072 990078707 585955313 315257178 320820331 828793728 446441076 644927132 655084289 277523503 266392085 191110969 69445431 1049735437 132418910 216037081 756025602 54729229 783270016 2854629 879159723 271405211 155346945 145358645 783632044 1068139142 663881519 730677117 1053125886 796658150 930338412 1064852210 322627645 189619224 43303519 234695494 446182689 810152966 857019311 6018309 725326924 46648182 949449911 191837716 352798689 800232841 61702414 766906350 864301553 956476105 396867064 226276528 454907567 269332506 192178922 877612338 838892187 753920449 330136991 916566378 967882917 563459943 474908902 190968884 813800231 965592822 946721436 858865157 979293048 1014913519 1028372445 930268985 1008185089 494396157 286685923 218545722 1036589424 783545924 341253218 978084349 657870811 696610967 624061940 304299829 219833072 988491249 368514482 491982981 95612423 808801208 885001101 798336630 63901176 552075381 54237870 749843921 124636801 57220941 813954586 675710153 599269956 144498299 377488234 324399930 653142094 798660103 840636846 291012420 174107489 762651180 12993863 929797233 879156830 848855995 462624161 185522985 644628565 206394804 224353406 400458524 644982087 54669797 564050037 368238040 425794327 340217670 464500974 324378364 351571893 944993667 1010230426 601567369 941195781 635536822 15362110 820845662 210744325 728201432 534023299 844787164 557366548 867978783 303018227 114808603 647509836 466020879 157911432 687656535 426213446 773678881 651005948 611007561 55614505 26605790 163956943 592595967 1023812523 861973051 802511390 233669240 981007535 395259339 933576599 354644731 220603710 380301207 477016032 102431983 937556886 129844079 67578133 134285535 406006910 181883832 375571694 32237681 1064628765 822325812 14405177 835191227 260857425 60503526 1055262140 452132146 627964933 22884947 762737135 946705776 606998648 705660010 472440947 790778556 104092714 147938214 636629525 116895966 963090038 761936150 212424675 1010322372 408496543 444345425 946521473 280432930 774024646 493885156 347209816 514634425 1011452052 318917146 91255062 572876405 777296243 908514867 85013100 41018061 534427639 878333590 430884399 535657911 284484216 247173151 397163906 157131127 729963395 883289104 233816765 313125731 653228620 379686417 398093070 832642347 711004501 1027237556 468915911 745184458 828500437 782568545 437701089 566603331 73387842 1066401199 916733152 892425544 501056119 435964193 87850502 989876050 811602405 975515511 332050427 165838609 482654532 907424833 1067982657 238414862 783015267 333714928 1067559426 923707814 62377305 111716528 650806648 53843543 164899993 785693133 889328886 468328133 876144989 114780431 623611110 654070502 31824832 927859711 345385302 545751302 841120529 948329432 894948745 30628889 561800393 698089432 658273195 701003542 317061742 486446646 300561676 219837836 730402425 91495511 244211051 419721116 81419186 430880530 488556568 871280339 1035923527 68016001 27773619 871411965 948630273 632964056 361983091 268360177 194983513 376459006 1068137338 401509897 826450883 223192091 202559260 479649130 968507756 637722634 913444419 624688698 1008581783 411949531 746274577 998161016 654161380 831210440 419545723 267209288 991778234 802443004 101198129 236986256 787878117 790680178 355606891 457051913 882015324 62030474 35568187 1032072527 674344088 815469398 523284473 405464020 913829479 758092317 77536063 249638864 168687106 555799080 668931741 874743423 672671393 449487124 379342969 83507606 323752470 158282762 417564351 167615929 642412601 305120038 231191973 603908640 621040358 908509704 392982794 544413282 987281224 693545760 626875604 549808064 33493917 679240927 290073467 357392808 916488758 255371127 563493846 878285566 141763292 182996063 79549722 188272745 575066013 1039018300 869028813 104644168 224028698 1049261222 470561066 973100838 1050005286 945370833 987225636 620576042 921770688 972158049 954524815 1006120118 518852639 70091928 553929090 899046000 92507153 385870617 279639365 808780684 620127146 231998919 1010678457 710007186 187221267 588472044 593055075 181322346 25217119 160823833 1067670027 34023015 64970757 443801984 604431317 521289001 309333484 572883953 590886673 815832124 757223481 625619085 5089406 154817763 25395821 689675422 192738040 1060346431 379422693 525556813 853181035 350779538 534649933 822031585 26873014 1052389982 444485684 1030732866 77562482 926591564 807518786 1048359830 172241784 620633695 551084929 247721995 195517769 1069788716 126692093 818796943 382336550 232288230 368083301 245894243 218865987 445722634 658783350 1069621832 817749601 916943810 225241409 1053491467 1015155893 267006585 11283110 180922102 31934762 944594301 557286340 734000292 927926499 355726833 623703065 543580387 651898671 230103173 358311805 297120612 290126786 99343703 80676040 371149337 450474093 159746187 764758422 979403493 525757027 746917126 54331731 697563056 28768747 559134117 379938386 663461949 33508292 303621258 1063110684 1053982549 864294158 215441184 897401031 425593932 220520316 460371291 834045393 789807361 971561367 824254080 573580874 731894760 666517930 341787345 645583342 972376974 894698865 157277664 19852993 790565894 147584180 848475392 336709450 573854122 782156384 241103309 228564274 525905931 324488188 156120113 225898648 385297892 614063561 612826232 380354110 1052192169 582625908 1028570533 1047045604 362168382 470837725 978286042 648855505 649149511 331690967 766504076 496020102 566087439 421961825 77685035 563045081 635608238 953495169 703612543 117159235 851692840 185043225 135011789 701665479 359792819 265776880 30106165 940274707 198975536 485276343 905015454 1043891950 1033659404 497355277 261107291 1031894182 48452498 528244989 853868353 422253525 313158968 735334608 539571720 778379358 931810023 957729199 968873862 44040609 975283039 903609889 413425028 2332886 835549978 673994407 244544567 851466027 941133957 324269476 142675756 1064162468 714877795 792002488 752731244 83525851 888202641 575875673 625636972 912889330 509501323 409975808 418551018 121165670 752828470 1004820260 971420271 1041643824 851130538 252705301 1008142128 671328536 179001077 245993593 30240337 133553110 367588217 59693083 191471576 246802172 66070879 49778627 608449581 89496486 468575797 168553354 443554486 923170752 309736680 683837539 127217093 506443349 155885525 569784033 998143311 372046108 726432107 214218152 582792412 708001465 285650939 59894550 601697121 688254787 330073932 747993726 857083775 811816415 745330536 631565533 647846404 945598786 400072337 345789664 1065699236 112923123 632154770 784347313 431725396 712170372 374290471 447397418 67572919 255951648 152130991 733748490 173342509 500027982 229103936 400385736 142796980 1026802361 396202590 246134715 388700306 394610655 917240197 680047352 571994825 23383880 613182078 832662254 49362905 304372649 215456077 426261693 770762025 196506513 643805899 367975573 392743895 185700442 881190040 466989898 32127490 533164872 636917792 459235619 153345623 431208099 134581141 450220951 189708329 94969044 531417762 175249314 968296718 326693800 367923470 200361379 584345170 1777403 268475275 324727029 780303155 1071324268 230136918 29872557 411875001 246445407 509573871 537716550 153345366 617402724 171256885 781995980 299017299 247349299 670905956 362705980 148231370 77502712 443409617 255695434 1005252909 458953358 870355789 156346147 798026466 864333429 995816344 297602547 115088649 63483751 208442439 988723713 63446658 585569378 815373377 996404082 719511536 543501089 391769778 466941670 1014606051 331488466 650489090 768891704 373720059 11426155 702272591 14455753 694690258 269692181 531229544 1036169022 1004371937 823437882 823272219 555585501 4011700 457257240 178825163 387904672 759727593 584775220 820380063 739579450 22757736 478562006 513769623 551678220 1036979390 235561317 868825533 759756747 161409338 302706167 40727837 269106767 808374170 955082541 1045375845 498873576 643069577 1005153423 920939852 452740886 447564036 40485768 481924466 672286258 132162361 813571066 439111049 68060 357540270 202391795 627908426 760207097 26405428 215657565 393764792 224915910 635083227 662509318 32734680 354955387 18348995 111099995 307046506 215968539 254214357 392816653 786722210 915694621 910415526 381311491 839602880 302108877 240290434 298182376 746003886 369953551 951643308 473041051 91235451 463971764 559917357 106855332 643243202 743570152 441680061 114987603 211687490 534469968 906670923 662069046 113259618 321325875 591262665 182564790 402074762 713102146 612055491 791654050 1068389542 85787501 203016797 360582608 864696934 330890593 475682042 898622846 740551794 857831268 359813526 536138981 752788266 245525764 201654469 520240395 33655002 749903930 335190512 398668196 429512286 646824912 75919868 42952947 798287263 110508187 643402444 835348140 59666566 112409704 371550622 554901933 1013476903 266848254 1020181372 387008573 996766185 691843803 393151046 30923030 357558483 719970643 445392547 1045525492 29914191 375228696 412186429 16696924 98881944 686659551 1060626316 78808109 154373273 247082204 334971702 937649866 772391419 792589124 766602873 778034960 855211001 383289660 346358108 574629676 653959749 906367704 726679310 701006766 277507148 296273178 871540296 85666056 919558497 251352245 781684014 842285711 878943243 788474860 597753353 868147279 622298665 772499424 105187577 81493612 727292841 512576395 453202796 866882079 287111357 680942739 374560934 186197306 546788856 77924943 384632232 1047382683 186463592 606872795 205335501 984041070 489959273 65362260 146973065 319199959 355268623 289224598 834543057 143911338 359253149 1071891954 303551982 1063421529 793126867 518597285 446744734 1015157822 787898383 29325895 582390204 144648194 953847506 269950331 704696976 659331995 812987787 677701321 229290809 275193340 971794193 1060385623 944969352 461430407 55001873 890889651 615182519 430016444 696933714 191237123 956215854 617950444 810582326 12600602 873200978 104565155 326309537 170557649 699530168 223017372 360131203 201851019 1045615081 472631547 651804059 396164348 213482815 97294495 28575847 49537226 641441549 542024881 703065885 352818894 526368090 797552774 325343088 707513263 964832280 678076226 521215953 630303337 615276307 92290798 242731154 747134864 82079100 1029065585 1011529185 357671426 64820292 150920768 974540891 84564024 748402404 77770049 502525058 697924639 481917535 922614389 638831701 870570978 890537087 252672822 949957739 68331696 424764427 145845234 418349294 201170344 22485823 525437488 726446484 63667114 753729569 841348119 219342229 347007299 612854016 930897446 1012772542 725252297 1052190939 363140350 512096572 500450978 773705883 581353021 696818935 259218151 932243067 186635135 992030317 636016986 517565779 224757429 1034563833 118240259 534089599 794641068 1215984 375558362 1004789281 744809877 886643616 35077886 455399728 100580955 307805917 962585074 619589290 272615527 760913835 550001905 379119686 329838542 419311504 380224994 206996903 73013009 709854393 709959538 704646848 729334330 828233849 969942368 605225415 407822105 12645684 774688227 857240892 715364133 85167543 87363970 18921790 158798411 911030463 982873900 229948372 933270156 627777330 663918825 320121561 1053352877 808725878 582524619 951466890 919615736 171070147 935107730 319963213 730565292 325463690 549943134 686377047 942990649 841505834 513635532 619585144 178411247 976539541 829831832 637662578 968347140 240597360 757709843 246579200 381030067 108026954 337666504 333263650 843096102 20108305 712212909 35503517 1009490916 102305659 419151754 631627513 220064023 310197991 1038400725 685786724 733936371 290042171 165468786 641691909 593450762 808384050 1030291340 555346818 987812635 782571248 132696990 600717496 275298187 218680346 863626323 495454278 977463611 584722333 923381114 203096594 252752718 108977171 653364556 141207099 749200965 374782576 575576906 1004751249 512853054 738002665 509617215 836847163 622525391 532212430 322587108 1049237164 850781586 607708268 117977142 603503555 412278348 868579428 636828591 241844846 835936774 547537541 901693376 982362655 955705248 920365904 437025113 747275699 980342506 338087628 274901744 260484026 775111117 581717807 902794717 844552462 73588366 364477032 378194854 863437032 556208093 815151678 518146734 1005922632 837347037 872643266 390779309 9253550 424015940 2189334 506996656 945652605 74424387 461510290 939427915 817391806 778476120 521348264 270186844 697112393 605906778 535358216 664318307 338294007 841777513 541721954 194174138 337099018 310747967 501462559 970130941 20007930 333658922 197848778 541743116 539612593 796102570 328446344 46824354 321590588 378648416 639267045 407137356 721236481 213671346 34412750 18447927 173734319 658465568 965511678 42443868 666465342 225769892 1067427415 418024028 744284330 300741748 172424483 58216608 192389508 453472731 607308316 204233135 822163051 574180836 554511929 424077528 478698061 545262205 1044996743 870895604 988091168 862889636 228542225 281840514 467694101 476594399 475764738 211744160 563046675 386962820 764294110 493960722 790164843 59852447 575769151 895666206 682797842 579797020 555853972 116178203 926549945 510353522 1031725053 803819414 661674860 756619245 927841969 571758459 315463630 758020060 966345187 98561978 989056567 978924374 416239929 794225079 3381893 138986064 954448957 315109999 522741847 471665868 809498573 493665650 1030971566 10217970 414690786 331906951 713660586 1045724842 541336204 998271136 1020599590 177659775 840599744 375777421 609316243 163871252 335799751 455281269 427470836 594935347 203085064 3277292 287710803 373282997 737162015 229976573 339292926 932138225 198986594 986981910 876675886 800772992 51669709 637952666 55232636 1036337947 520353587 570283288 714948027 138239108 1069091864 949480405 85850228 128139874 590429785 787823128 1045010929 915224157 634627525 1026700419 27358752 85884874 590802387 519800182 877515939 977066139 1022489419 410285105 643860413 948482043 852409823 641303118 664639280 550516082 304349894 76069472 600897737 733982022 220641943 746633660 883385240 602571818 964531785 911241442 392956331 239653121 981107629 830040773 441300158 374803029 71097838 50861207 814154694 88065985 643431794 335490443 87193904 514734020 312856795 772861738 575199413 1068485937 442220572 32523492 356633582 102765991 170363247 413569441 198320131 477286423 26813860 762640316 349135412 534840092 509289775 728171079 480136253 522855038 1065584890 250198947 1048748180 413012455 539069365 288137474 815068776 560951215 368699963 1050763585 985351553 905388524 201455295 450884671 713169298 732351192 294766806 694770739 778398404 634399478 187122123 955207520 500791444 767238802 867377749 62715172 831997912 113557705 122715011 690458904 92257313 263806485 380626892 737452801 873155574 1047516305 712917842 440101053 378473535 760050787 586940941 808679919 823319012 875084261 28633578 844398581 289743285 460106824 558478452 376869458 366175034 764243899 924503669 1018448602 489670587 135354686 243917321 540900683 683370936 162877451 757763857 770200456 605305714 436549901 507360282 231328200 960618259 473140040 618488479 536567258 119522441 777302372 469236647 34902820 26516808 87548836 138630627 547633352 332584929 219112139 508551657 305405833 189979289 275511199 967536668 971439355 879920645 531298694 564052037 527060983 820081341 163056366 854102625 291286877 463596762 471513960 768991944 523983314 724080412 798390585 516319584 395949020 765920495 748633683 272418169 773681302 396719430 531138332 892108531 1022635852 626259740 101002069 869097762 712394996 560356311 121388275 946760960 878108303 417064310 676272319 291061167 840250940 21129034 643222038 102019884 772916823 92463513 51416178 189240637 432581397 861961845 477496425 311333057 116175413 723252996 662296745 907165171 553997042 140225433 372094379 457691805 21168833 95370003 559994991 898805690 860448989 531770156 983579951 937386456 1034488173 753538115 780804389 69022379 67728168 715811186 897501361 579453806 173430824 497159551 848365334 432326638 232456986 230070467 1004124965 788470823 487702405 553190700 602556918 156825738 938399910 429283776 376642059 464459841 991344878 178459651 1059521535 836008181 784578667 888884309 963460138 80696345 585830209 735011732 476383845 773994856 794402044 754019667 54321486 34085757 1015061856 320005695 66938619 246098712 447712330 414225629 94313217 441958275 132962765 751120224 584468967 835833301 723622965 757501350 467391606 578413567 784604873 362707040 326558884 87326596 130316140 54931483 554340850 11290539 443970090 60411191 542124125 75991659 2627246 704796826 572659845 138421202 869211156 435779340 899991702 283906698 317360695 57860610 208851442 323098449 213264794 524233091 755635792 645725710 714452647 234524628 763311354 874016026 916070565 670613601 190781190 869424658 103319597 4562546 407846237 855784335 354605116 1004529679 19032966 357899554 1059385063 879745385 308040681 254543279 348599898 875242850 611389640 951577930 408383797 845823399 146701463 764434496 189767120 113927504 228589910 714859221 615697696 660058036 988951374 978184162 844692708 773660001 728021969 1006139072 310279289 23932056 138301067 533629523 858520941 68925137 240329870 312020538 975293112 708369895 710527542 480165710 601584498 38566476 659488676 782524142 706079830 962034884 270445542 48741420 860166352 758893685 1070903844 816200094 37068143 216673144 1009971870 240314134 135142126 489223633 495921597 959549659 171246504 459276564 1015662090 886495594 29802274 747275408 719891369 281274248 907273965 493094828 360058046 594523639 62958396 149421618 282131478 629472363 573745425 908678134 740969969 734628935 244171105 1027888065 486692074 590210631 507971188 749260773 258870241 798731101 213626170 282829472 245339799 780410207 634118821 966153513 989537253 81318611 17978423 337459846 477633247 696705146 73271822 857319741 867411601 1030306985 855927600 1056547076 926964636 676432821 506094616 634500188 67007257 583283934 567859839 1018573696 429688026 1055547887 538068798 953785632 214933472 648426540 527847826 394769105 1071317353 69900914 357871061 179062793 203604976 100161116 1014425546 667212309 488604753 616016344 77648279 285483865 502516547 168695403 363190972 770158081 522427629 759870086 280149637 795128352 168046636 553900108 565084994 928819111 124025588 902775346 797671838 414504351 664951621 992311056 885397493 808793363 127431596 411088981 962343958 772709472 812308195 622184221 268396554 269069599 651932253 245327622 1047330449 552236023 13350654 798195156 477939059 768266306 525164545 769801687 491647516 1070822890 940480622 758307421 1005560431 961393068 700444323 173899621 291566912 843347275 577434653 246760788 980052386 1046233084 408073868 27000295 304551284 333440626 29127970 603539351 728347717 775038821 347148383 840750444 332363527 40032926 473924674 247528731 376645093 992267323 421728898 725851269 327158742 959124240 635768765 436344659 128179875 1061381802 854223815 820301394 117130747 830875231 264550423 913705444 504623088 264346105 579066782 878579744 981875723 71862401 571933877 132216648 519095218 485645178 703688638 577266075 777906500 319010413 872051326 950074552 130797803 133154561 564045841 129568341 253714934 86028335 743765199 204717907 736061124 811086441 507518286 454881264 403959814 241561357 870520943 205374357 819761663 694106038 313744503 913246130 783509535 319252541 332706451 841037165 73698614 892217662 526172541 875298313 963462322 826642509 917675600 782028822 719368039 1045188081 795137332 778032559 1023072691 934796858 535980578 142946350 972628363 980545425 630051012 796135597 118952600 108370342 219517242 704458957 418943710 238424864 101171575 859067710 1043560190 977500432 578175682 710221232 997733166 785329987 504303629 892614816 629111203 522469921 190942221 671825788 692750202 181416909 464473443 123679589 655607107 832689913 917267633 642252128 67811183 969933636 695693484 143350826 849182444 380191492 757560536 443154888 388043288 378599626 943891215 134046583 1071163862 807245969 176970516 748165514 188457750 811683587 229748695 111620785 333368946 1020529602 216536495 12804232 1014300405 432062756 414387630 849684237 184345739 250314892 819872555 722200278 166418253 951728074 54380531 492818258 527790827 756269434 131628902 798419659 852589973 663962513 552593830 596729832 303757606 773635505 965099689 595456118 886915999 352113343 836354771 289435303 649447459 372225703 875770475 388525793 222815323 975803382 597122338 559727500 241518072 391261938 832386363 873937126 292542874 974191089 573669807 50092467 95641605 924793537 628530298 845955503 170935050 854742789 63004492 45370027 893618593 335116261 223892893 813993093 727105256 317233665 188139991 187447685 332638065 977208608 55067124 465983586 71891393 689068498 60725103 627931276 244666040 874671708 296643180 1012443102 586655386 492754475 87829820 206818253 660098085 390190133 133391262 1070525371 607990338 748387382 327277141 971191210 678599465 15356499 240087603 785973986 223306796 641458145 500114346 1048966602 691682280 1019205076 327740446 948510961 940529816 132901746 1015359301 519026010 42107904 439099512 33371184 915510160 136865376 1055957500 587814608 132183992 396255670 330374008 155952251 47039465 630331082 840517929 526371691 579046348 833017874 490365076 382226610 569829975 786451099 189431061 704036973 21198873 569655417 277091639 63294329 17372742 588320939 617469353 561784681 13835402 341055083 975724500 490623426 66483284 971697957 495467451 847545988 886214226 658265 757230138 122485904 379888224 71029197 960263299 94930401 683715739 821589881 808723839 950873304 870348023 501340070 903666735 317378820 32068627 786432365 368310975 537489783 254733302 153867332 522134636 844564342 637284210 642191996 1042936771 138814163 912603014 36079478 39178836 704468246 400626557 710161211 770044279 771598778 604092370 406903614 763400639 12643770 9635421 275510940 586398168 144114372 381234332 918262881 401626201 720501348 435798437 260153847 494510368 1039222754 93139726 621655759 495089124 285703406 342243116 849478957 808966685 1057671354 672072584 690629914 565000676 64716616 590340776 558580872 222618923 478479222 30144381 552312515 54147155 326531399 188687429 338334832 40572857 258730745 385482872 1029399228 548243464 42351683 229497824 316661867 490890541 754236080 1031621006 354382547 425262729 936597343 642426383 817766424 1018605523 431979418 153428709 408007566 953997161 859305297 1066248480 1057951920 26933060 274373549 281322923 15860251 155634238 718023306 934415055 814711406 962895133 431644426 66503039 560864460 439922337 73578994 354543579 712318282 461505221 438409730 556548156 782854619 913261115 369002777 946202043 343232896 635898517 837320402 752506648 121368451 604552300 454431446 107729528 456801115 975146041 54617230 1011684079 712216053 788332963 766329455 318485943 243956188 171621355 936448367 484665787 867254112 662683276 566858790 512326189 812941659 620571718 278512862 674076462 1071100044 159868057 1072274238 558653680 309960327 594554505 210509705 665811906 325119018 317652246 1033463441 752386075 696748476 676484662 852471091 985703719 61329448 665676538 777755191 224048156 551901872 71136797 43909342 1004523320 18815652 118652456 923814738 678694459 1035445065 61216625 335430491 753988525 397639543 612992988 460955512 943962137 805311326 322204144 300394657 212426026 320739544 61948346 158831308 152924747 1003638063 640089836 529605249 1024501244 269955546 730108426 221912120 606257093 789041412 559090114 275855414 732883403 682251458 803421155 97776548 925609514 1024033931 230903225 996561726 136938228 1034633420 926600586 816740136 356809617 455896195 1023248237 639464832 1071682596 314412406 604898290 982525195 966284061 91830799 506367921 586884994 654256247 698475104 836508335 216873983 81376903 196094360 45199889 575094963 316213485 651387476 294564037 210988717 452903886 843484526 864604932 287791490 468790166 446303327 826575916 623399215 780392706 537526753 227718238 687683191 887441671 711222334 298695363 140240794 793022231 770601883 1041807364 1016714866 1056167035 202285318 542198573 907816012 749123440 393649816 27502159 499297377 539245950 22017280 571810849 452631186 695186880 209847914 733153068 525168421 195103038 370867177 352254394 109867728 741584658 417851598 742729462 392150068 981253560 253478231 672856627 954493011 842044276 409549043 529199162 643645779 229128915 30803631 6288651 248043215 41491458 370130134 324169825 986561384 14557566 933354540 82797047 1068499828 858270227 229268688 208148038 1044642405 270280645 210425869 1035036072 453699868 250999514 624774927 265015785 61369251 1033201970 732364415 1012914702 976944424 687728600 902482813 116051461 613597098 1072353160 907948319 992936927 1058708752 374981913 138720485 968829215 343059022 638062591 930329496 863176949 249097087 1062536353 999865389 454408897 296329689 511989769 1025737055 279047376 95063755 503982353 638547226 248188201 681600716 360814120 690716312 805479549 1072978999 162331724 183558475 365411585 818269947 774722746 302652722 716392534 711552967 258217252 381104210 934751555 185294489 263511606 1057668778 292425686 727442672 471613616 517657625 141569729 978906123 598618627 582667934 264624503 649563820 931487578 514814958 225891801 205522811 965345317 791284865 726796307 281779579 292229257 290597727 504878523 847918394 779681760 945200093 895635176 1003117579 277815199 196860928 367555220 698929952 180790781 313970856 133617848 809026302 156279579 271237171 201722085 583453535 529664786 709965550 766346498 1052335855 1014908242 438474691 991050518 964763236 784835832 254840619 251929264 408108245 538158987 720174285 496125186 868842193 674825258 453214605 553567392 487094241 273930930 819700992 925360554 890970678 129599303 514750007 1043574642 417641153 1044448294 778530143 443480365 576913900 833525079 414196330 347640618 985087296 376071641 552281545 41536639 118042092 622230914 543404823 872914981 891381433 983949971 458551353 580816578 509042443 723057263 623303871 741706987 396826215 767310516 311141266 145748601 1045173256 877532065 501631595 661859564 732484654 323401394 866065313 919967092 475928188 512781307 132873705 198744663 1006660704 775851404 853503656 329329177 90917874 608722309 201621997 47859563 1040031053 165057443 1004622044 631514780 678370717 153546935 500927633 574821956 92221450 267940946 764415892 922445763 478224883 469854637 620295249 879496481 143513137 1050328426 859210682 544582097 834809551 634618889 590354575 1061615230 346083452 911433168 604791839 479300737 40891607 1057812374 498257248 27098427 538150563 943202083 115278470 245111244 884834965 677914895 126850181 208035822 637884235 348610420 465233982 768547609 128552974 573301136 670718927 825373405 787460980 333115263 697998751 179527681 918595433 196260431 87038120 671325708 661691681 486323066 990806421 672568410 451614202 331574212 365011538 753587158 582882263 220714202 482271300 293905785 646647556 140126159 561586615 247608309 750209153 530502941 607906580 965963061 778855772 76118091 818515030 799408950 373434232 436953756 928394793 592858620 727676745 844827878 802565600 427928527 323892733 649068146 693593626 372199090 804538797 865240996 320398050 654287670 529592911 850194868 1040953984 134902070 902192173 878669860 282760974 486303099 463703044 521283359 387521105 855322807 81726371 969654917 290837124 543431516 377962359 219165985 976277313 283630630 718899315 461673082 1038942528 635276587 447348721 104531345 28347833 170383497 554638455 663160420 933697259 691240531 692936684 202170149 774891926 637661339 383835836 706471983 235614069 313781984 983223776 440562332 829341908 209866870 906972067 371746621 380642140 61897313 441214241 833526878 930421419 1014433589 591834947 342363302 842638268 265631035 435666701 458832002 543051209 1026915568 1023286462 841415150 833451953 964529918 683052552 239859664 294008858 274254107 270215393 446197134 1041961258 335553447 854584273 187739713 325061573 867941355 533827138 499172188 494547975 252477399 579840959 568265808 112959816 345499298 671196093 227315600 440911335 360523359 275110024 596239567 838980549 1009798696 742034553 890725368 832558266 378463994 755226132 438096372 505415497 172126396 381725109 566089378 185652599 86343127 330717866 8176953 266266834 43569626 704314578 419440655 942240023 845522559 39453653 608223648 68889510 167671252 831592779 615409782 744270932 468435419 612056709 939774687 72620424 263083531 690196805 965695494 512372928 295462254 861375039 825452836 892547338 516519909 333670681 755484940 847016458 610079017 884887507 578150916 557714148 394929180 796536364 922476751 216513267 148829440 243047376 515185859 201730486 480275952 1062665330 203342975 364343801 424584567 667614709 149064863 556985258 650773286 98230713 309471046 33198779 242628846 117568399 1034533634 267542228 583081408 275493883 1017230031 943974817 1003582674 210786278 202587743 262099319 870648868 970077718 662337097 523724493 461112964 453991707 938579047 279505755 502163583 638405926 866133507 935016669 870504247 359421479 185921746 94543762 74050553 803426778 58611682 619796337 1053455401 347919370 872137948 197053168 416917844 57704956 282596932 22424583 222904593 864787062 579251064 1023327003 1022737497 257549909 816105429 881848015 452451608 826913603 503393245 805914643 640025382 201978926 977956841 703943215 129817678 1022296659 736586341 244045479 222583112 1066458816 816761162 226127515 362823933 963103934 803932607 758342410 731187549 171155507 237545699 505120989 314848695 148004453 612184934 377329380 833664411 888444349 900317320 368349346 847744804 115786399 1016645289 269317554 401137850 322723319 491146008 302100405 281199420 122011526 595587281 171731794 195055947 253506307 937614713 883705640 616775325 474859335 54337015 968293899 839061888 253615474 735129985 943805938 349723256 143833083 162679615 1015562510 992606850 1041363562 41864680 1021329835 567945963 992427972 148588199 603693337 479426962 670375695 1014509194 834809354 766273775 888265317 1068534384 754548742 467128126 211366576 37200310 943565536 586391403 133640488 699038462 244255662 503078429 95332318 292798988 204819795 771054016 358576574 787087252 1027929143 731136630 930164257 93351502 87167129 896779785 45119000 7729361 536331496 689068427 1068388354 876344416 419306889 777564593 709961570 251417087 445719246 640459187 740792455 321593016 408585346 809353216 489061451 931966923 353911408 567995305 54624622 416390713 19865960 194805929 792062327 694019366 180845723 585514237 802609927 921493976 501695621 461679547 227537106 69320161 269229323 960745787 25845998 190431370 330437741 294471176 637762606 372549718 821113702 364558078 771013401 926980446 811302937 465379570 55832985 208313558 491778085 778266912 28720899 164174632 445068584 768499132 933508571 90149221 229758449 479464646 642289615 748392984 832715427 799987198 402312359 822672384 3904522 122948219 218325839 30793370 484640006 394493021 484409009 910140215 533472374 707411943 24576810 446151193 64969899 500341475 779627300 47004521 346999258 901815997 920244438 935516471 309005766 77098020 187543459 986859771 498718549 874357497 529895695 210481761 5205664 111008661 350179593 414017365 614955531 923521255 116477683 828230499 697745794 961859724 17475741 548454042 464039223 626936699 810526380 259869971 639423465 706429425 424999755 875525104 163695948 73889338 1022983467 745745569 7090134 448627231 119048970 772313638 56383111 803955326 956642577 54848950 798609642 162428592 261928540 771517476 277388434 9828687 111491375 1032276207 486775738 424233177 784391365 923473953 387192801 882522842 431083865 128653379 1069430130 521820835 22029462 470161504 853723137 968363279 118929937 781276693 211282723 968284886 839069064 196527431 60768191 889175630 176609648 1059208493 329036021 632242905 490379597 1057793885 419082997 733858507 128227421 883845213 528845891 752623843 538825490 930110051 757596860 622024983 389032428 396116722 1029819130 704334119 746283776 710750694 1039609907 80866571 422186345 400556447 1054305148 439214509 754545811 351937192 808568135 676008870 662416435 69698949 268584602 675096445 892797385 40232003 634850668 668367315 680511513 783394781 55861353 829514076 48654854 437012847 709339916 579120372 387981923 963360587 128146180 604887164 552064714 62649263 456975668 529513516 933479348 330085052 155513184 540797938 529003091 600920045 123813092 120572125 1007056405 266584638 533653622 941935249 628566875 936034959 289785229 256930691 986145047 139298299 350205786 547381169 813908084 367088881 43124113 359052096 311896052 567223023 424482861 424414565 991010131 407994868 835870016 104177464 416283658 915564450 756688034 198357505 1065659057 147448129 219548162 218595247 593067036 849060730 998812862 364152559 332416949 590602971 920235472 674408470 432858793 55619118 712959772 138705895 820856524 446794060 1000305658 315181918 551805182 494739770 1004308323 223618547 23821972 512564168 305833488 781230055 831752291 901416978 66533554 666256689 975910636 913635828 361002540 605066155 662459836 215233648 885516291 148588405 990306658 56286016 1041633615 622716650 832831059 804290191 157798665 482728747 973989679 510886932 233360778 742356772 1039284663 485531580 299436763 280422978 147158899 198645981 1052976672 702459652 870418157 303006534 430611724 286647077 322267713 543039725 574114647 827867001 470449641 676847736 206049008 678414296 620507491 372122604 919763511 485089937 608301962 738517486 135927956 841926912 910519979 128809970 491217294 318147133 1055790029 869999385 133059886 958114731 420180090 313210370 219205952 467539832 1036066421 144883654 436151194 277318911 920812480 969240452 413644516 76882178 351304861 328019159 670371924 321428467 265204257 176081899 556344343 16398342 672704282 763400724 375784148 996869155 404682022 547149905 169049634 45021516 550405373 700334369 58636663 353063327 723067629 961828 1024582734 587576027 982844016 680486280 1028359960 1052490820 508618180 52508569 846583918 284377339 762259843 1071027942 755144897 447124028 357521822 776475680 676235868 283369015 24867989 615889145 1033573351 587846378 1034483794 526158079 955357483 320412246 588634203 293629396 437613668 55159696 169497406 1065688973 147034310 375095139 525793833 505566576 1000996998 530864762 317994268 773933701 651553214 899430391 939804849 591899960 961631862 922940371 980871314 901180364 804585250 495562879 676200849 618320666 896780627 188356975 69246873 370355264 164241356 151131783 147255310 1322839 809519716 267487633 74540705 488855766 451940233 395035677 842766655 947756672 383659573 12242764 640488158 218932431 887714650 978976547 136057012 518443809 256393038 85089443 404503697 579508058 510762035 933367853 121118264 530904691 709939061 62804775 302859122 542930609 794723245 296163566 59078291 119207236 829533883 158700402 121630168 884609202 278720595 524629845 785487606 255862172 671773999 263417029 1514121 1033766700 611246672 591845702 666258154 768111767 150739993 487867684 234117040 130129097 438315879 243260442 185724178 777211830 164282009 446163110 623103753 604298257 383406978 968505827 173475486 265738714 20397802 506062171 527422917 721731227 868811743 147006387 55735729 332900129 255539720 564673945 310459287 730670499 917725589 697608056 144894737 818580356 42702750 284644984 422363174 166130808 186072683 187907553 23663412 77976582 858490724 1006536251 205138528 746336524 18662285 165212279 728630074 568421413 689016577 900395957 271500322 293290525 942927420 17047822 243819421 77484202 1066268542 978119507 190371758 945327799 259768812 275452757 893210201 1070881909 398177368 538312684 511947015 197928486 850631172 274881057 49562889 643638590 238600976 241915540 861289961 767936504 1044660806 339128292 861567143 48971936 960672188 376456728 1059213054 246747986 280175361 582577053 496311068 916346193 486076293 164315650 324359432 216958496 633204920 599591241 568908050 154292840 75098244 810409410 926446395 990456487 322069299 70096680 982833728 1055719619 441352339 157090881 59556586 201150412 427947384 809996587 532376035 614636716 87027837 29311631 482103884 969733688 44502228 815753316 901359579 399189626 370943831 347276700 1024255370 757167312 320959216 166497145 954074607 1011181016 370608199 400073514 203637530 162245143 1061557911 832786636 728370069 48719568 789158388 152103485 842403730 489658916 927641283 595827653 226428249 673063855 91175003 706795697 1017138776 58620987 434437550 781475562 454730053 664297245 65861610 155554063 494505089 208334165 911325048 399170700 1024097923 1027457910 1008002600 436676694 354656586 40362558 932427652 199827172 756630567 453828805 367361305 607737305 648831226 334266214 973628946 982164764 282628421 211829877 157319257 196286261 134433084 101625548 25463950 669207860 807588885 390402086 873780412 1025065401 425420179 490363102 645207846 59314990 745772390 122781059 929066408 369654452 672324179 133606792 1064722547 942882369 48104910 79083062 191346404 497280914 544019567 146698037 465674815 557149980 1031149100 421664186 427961541 409797399 667168022 70287395 507657690 622283678 919887518 227288114 183971038 945704106 358952942 457082260 557444237 1050847044 122654896 689640339 465339789 692151099 824040889 786630501 93286890 397805162 1051366283 945225808 224854429 595640668 445366932 735763281 6199817 429158564 100406766 508680741 56604568 227024537 913662954 318319781 470103066 8247075 330119763 465641817 595126484 361330825 122216432 770877169 561404540 582895780 555206809 1001481530 597667073 239956711 576835707 311116041 791853883 845052531 159930335 1026672765 640796782 1036581706 725144086 575270186 833697814 22255652 720362107 638446246 583122433 887196819 649485907 774411097 131770118 917604845 516209773 461421160 499626067 887270794 330456285 197155376 744783282 177079194 477032692 649696807 24860219 390199732 620941981 814457363 350161519 228153491 996691288 941641512 243321046 769952600 751803408 718120176 614863291 139595815 754849562 810658719 947973491 37541629 967757026 71198226 932843498 630894853 520707088 605724152 763395186 986903328 312033368 823353878 215925170 786204124 136967017 376531052 462148206 580574462 342424262 551428383 293981329 665580704 192268154 911397588 833915160 78174455 460281892 536945203 374616095 597698971 924415335 185567023 8284745 970931187 114423577 894049486 811989804 380086611 58151149 519368048 123438958 221775485 425761687 613677497 569740898 317945995 325494230 716490895 421423270 604439763 1043996565 108601179 774438326 532241886 54934814 833393623 464019714 959186412 730523436 34290899 523232937 362497163 442721719 724178468 1061644620 418148188 732271824 203979867 1038872300 719444127 682837240 1000599291 102001428 173951302 527821788 801722960 792082753 949598353 1067056437 456478800 270160937 677440902 488914700 983147626 996394980 761571600 703516980 424054077 191511755 397922905 1050554717 184512526 67821640 1035368969 267088047 382269158 897905770 702512766 736917269 300865776 132759354 484855787 1069903709 158303379 76165561 521451814 670894141 965679451 196364399 522399645 726129386 404205737 74392647 491222753 444185084 134061706 915326466 448403118 451278774 865480905 794996272 243461061 898580738 241839491 602551823 338594680 660799780 762694622 167706959 631904475 10805718 952479636 921746418 422858960 805136682 868778900 454700463 600175560 376354862 1072919325 721464836 127299730 507833503 1072268860 181270804 86188280 803215878 555780771 699898846 777413760 55925652 460450573 207621683 368808235 381103064 524519093 68448212 646410602 547495192 1005824816 1041394747 651490445 443840330 703242096 618484754 1028936458 19320906 287209808 681256655 52948253 531200272 498827528 411074936 255330969 630590403 1051942497 757703262 545851754 127977882 287043377 303297062 337070285 120170879 328167933 296391573 315859637 499293988 875899829 464960449 426042122 582928712 1063009976 320538450 747092784 2388254 267046863 446126255 494192536 361798267 916882865 334845062 1032918468 705273450 737699457 601651180 1041946511 685571808 949923171 52713827 312625879 253370588 1056273328 1051462303 367710758 181372107 1043476342 30482511 436866426 556790222 873103144 917251727 452370917 156722566 59394600 535485109 580240567 859311449 514933548 727773547 269536234 84034694 265458323 982833208 993227851 963094747 265238783 515684183 862458202 82260192 958038929 913427576 589926776 674198588 599610778 344677502 239656884 642874596 934596597 220083038 670900597 523857110 368515840 631788251 750868691 927077853 815736021 767285165 162515150 600819746 257289182 610517386 165007500 437007706 322626103 391025983 83440629 411633767 1039758864 364033586 629343881 590915089 731171507 402200902 1032183348 770541703 117650673 293146713 333412472 796108837 238207509 754225397 420507105 269658205 913665285 1039410595 16162451 212017493 89392611 597887075 355984144 512032217 284924160 164852299 759046488 601658529 264519094 313298456 273871110 687286364 899684733 1058198162 1000505583 464742142 722018909 798130673 1012841442 724635671 241134921 77295861 832527514 483247414 1024463982 1019387153 949600864 290322468 804397038 635296848 279395450 460290928 696183545 680421039 827047393 963658844 136327546 86519784 215264053 727712817 200354448 727646867 404146251 909355319 478495964 12056178 524478932 445494054 859001747 793729567 60087076 349637165 109292148 909934769 673087506 1065341052 615046663 986604989 530373109 700098412 337586736 168467215 706510857 842599818 468771529 601082913 425706083 420941569 703888753 1069497833 201214095 252855639 615718178 825467325 558959322 572740507 722867331 251491359 670472772 655492804 989182717 497869825 828465783 1033382532 980999249 994944475 619348139 551354786 94583697 535837098 930720275 705618961 815105324 606592415 397945092 931407258 1014361000 529986966 235553819 172909013 166655858 209604633 362816367 510977683 963308640 204945879 274011313 616248088 111066860 944617342 732410607 411665635 536335254 864371374 331206593 178659697 435803082 1028749211 425968168 665766324 711702737 769420848 610266357 852647091 211966902 532210973 383050813 410552490 810827100 1064665849 384265045 1032398691 482268295 779031201 514411049 748411543 349570976 54730855 974615685 250782211 685169076 684646103 904389661 42500249 567551453 1030742788 728779634 749533555 908823373 706022698 857190925 531883007 884481617 995870694 354254424 28488040 460203096 332894423 757796110 475194241 648412767 816247639 74376362 898438987 737591948 1040254652 136824950 47230058 881090160 891337843 289022991 114271776 213024764 615592726 364813681 628963373 571045652 614515787 63146647 499542053 125029368 810141646 657324477 533762056 446219028 332149594 1070309278 14356420 662560809 900333346 898052032 599508293 615779861 750636225 707779601 762933035 800161853 297141901 993654752 217824139 513846039 190868599 67458969 966913768 1018770126 38092474 236321196 687052780 373178119 320597826 687541587 194509098 555764772 780238865 423752904 834011266 247579706 479051389 862257534 1016764969 296120971 856827580 658779217 730294016 200930790 476361673 193739688 922455507 869612798 724583606 615962887 542978254 282293779 1070395248 688304233 173757168 244087187 964537577 787129652 723304462 985834336 413626362 953951956 187453388 36239222 1054506093 994200116 1038819041 207252326 155255490 179692056 164832035 733140696 558201207 150782031 459954249 655262409 1004256173 478471897 546653783 67089648 831968407 110942352 977994256 967835086 995101695 201524677 777374085 578794886 591305851 79087278 1553917 1032135758 57231868 2814883 90614107 1012073240 1059656370 608059531 155183306 444076050 938307715 137170957 167668335 390850865 909647460 563794107 729418790 900502240 300019639 472079119 537169750 561439928 498684646 729108552 627955065 479598330 806862942 930752401 481636883 978995245 30204727 492705281 460860085 851611786 974400529 425265641 555342910 587529354 274713092 42819790 347937989 665629316 425697770 856074197 526780251 1019338876 235521212 744237315 815278435 741747330 939807207 327821511 239108383 285967431 696285139 161847222 220617583 419510085 843752819 427759571 170217415 424733139 49141599 599249592 180081845 43518974 1023215738 417624826 192875610 705981145 433806703 327635270 160211135 650849005 897563116 1003008956 311338421 462038941 114747078 314743064 137259836 1003709641 655049717 616936802 774018654 814853960 138432187 144372101 618406267 944354712 708982803 330614592 455566439 360304231 41589263 994663963 914568572 21492564 207295753 355767837 1017013216 352903589 147470942 1000353962 398357175 845846726 730222482 956769191 879855213 834704284 369733799 947254675 843292019 723544128 206646414 315005138 975891811 165764882 899551793 896318546 354283022 303108983 538318628 543005266 648870986 474486901 543192020 167275054 752185940 336200649 217703684 790732210 106620743 399567090 469651856 522770329 455046768 314642872 516238573 446681177 986679168 342610047 373406150 2002141 300873331 116015948 647983614 516547218 565406079 354996828 73933730 636087583 918547066 893450144 672973689 857499197 707347457 378963688 579542342 272050342 715091406 518842670 310992030 597727227 194908649 1034994497 790354936 137522553 534164975 927210158 50935450 128117733 204315239 768811882 494128837 282869218 456496738 515494294 955007073 607979805 389156195 318715039 342972189 927582811 831062474 387001782 800912889 192758004 324932365 119516569 127371738 260451805 442965696 333122287 236712165 936117386 951541487 91144741 506563886 243278833 265082737 958204717 578565044 245670036 423273320 4528235 706099052 1054198144 326484773 523633611 901641497 79854919 1030028056 678636378 719973530 493955727 703674830 358013015 128376874 629281687 318561952 802659353 348850768 333683371 286780180 252556383 877019131 891825939 178985074 354086008 874344493 382865936 1018274762 206406159 410973782 1071238760 597995003 845710006 906777359 413448182 834677909 919174574 868149057 872013019 358029027 743006902 889586051 324931161 624859591 770575538 257196061 452403940 711266742 234822894 757734748 795282014 202620774 961032547 601809818 859704494 887059447 909118755 1004612204 265962346 799898289 767279363 1011800967 1038871869 836778451 522398564 38040350 437478949 313871954 99233473 497171889 901469128 569612662 534406592 41727913 735693470 690756855 864507207 939743485 1034028172 221592720 131313287 499468772 102088991 133711683 495865922 130866338 436917892 872932120 921736973 284352902 469996737 794111302 547397821 239783904 621898996 892125609 205573093 568590838 188846596 315975508 358271794 1008536469 162769953 828310439 754515028 346797194 629221554 979836474 793286061 1004569904 1020214293 144318326 795086969 817361365 511370542 266532379 910370238 853260866 176597367 845346637 537532385 701165839 724083136 102303009 596722910 315107531 89585644 366671933 978803964 755911894 532610800 514486385 698679708 825011695 401984989 1018881156 971509140 382468067 676619793 159004169 250093805 33754837 581472988 712127376 650378076 202250841 434521887 933162634 834013339 319087931 663497953 124192798 168024933 625590158 617182403 314385261 777430606 555926322 362875512 629055800 579304292 336624958 985595889 73488895 846937305 966801527 754661223 1071290453 659590243 754953492 366306266 602569015 634737361 158258355 116934802 101848755 90963228 533361855 691314791 814849734 591003670 769032715 957218141 506081576 566053589 107768851 106182407 494374915 175839583 201629554 413548778 668417290 396948002 1024347708 596640288 336411580 1070760251 735580264 829555993 102380908 623891488 923200225 83300816 826379931 1027655907 203400806 933986021 162968972 494919100 193066218 485583119 441506798 830751553 311777818 356562805 377556870 939490389 586945042 651398320 990899050 107886753 231370556 485583885 958902308 628532092 695363069 974552305 889820604 318057735 362483298 909121047 135113094 369581248 784917843 127925029 546609388 580937858 1018607039 513843287 761077690 584658970 258890695 459512648 772992861 154658447 788084095 724821720 997696683 316272093 956200178 395347597 929987474 50988607 346951397 344014430 347011160 285691625 982363759 429457791 690751460 330174454 149802435 834567530 459291316 824512346 117292432 572636666 269265674 851468225 224438246 116713842 269023202 992101385 238859747 949136721 815457549 1005846580 296450252 340572254 30310542 1035653886 295231288 265676171 208063910 75115180 702948636 606980619 655407431 1071299963 555569824 1011043139 259775232 172490318 99444524 200444882 638065087 112734572 406740368 764630508 611097302 923179018 101986165 996687193 407097407 593843539 205019897 440846626 565132502 91680298 473166034 547998064 128130250 90620856 304513843 368744851 958814860 132526612 565250079 343939630 423915708 156886578 862028834 1001025603 614928368 231679531 975856398 3441935 148575924 714979856 793321445 751348077 893750317 895625898 638213323 955430627 481136444 885538439 1011518525 558353438 146679409 964721693 665980882 539733100 414069605 288791150 113714159 695408433 15207923 920210968 170923594 997767414 869013129 143365477 39783233 649632296 874119986 860328007 169681029 83351212 986441295 190114025 737279853 562400466 798759631 29738511 570137903 221245833 455628350 500959626 433888897 1069378670 410474327 281290814 308561989 127436308 666896864 79474623 844703389 608260758 82107813 953618039 558833464 306130941 645063954 387519367 997528813 1010144004 834919811 424727407 975440727 876408770 887109772 876832988 324465504 2337580 600111704 779767224 1008256348 104049963 768315885 877395778 305273843 871610796 114849845 325944383 513983122 72042417 648036344 984767824 658082060 1059522902 103012395 525114322 715921888 38076373 632624035 236241539 122502840 37346978 345830590 200933590 106437271 606952413 887500612 478181677 299559383 479214067 499664634 175779727 1047146504 394856513 931787081 243036809 1070279650 436472630 1016060948 255211404 795787869 883761906 911248547 631623444 577280601 393294048 529442825 707934075 95256598 332982182 500246113 820238677 443694433 81006313 10964299 304456944 930773962 974441707 330162768 902649168 6296974 734812605 1040074734 242431623 879513037 527078197 310468326 473881524 990856404 77475046 940059820 635564461 962640547 922314368 585611702 801124452 818863378 542428485 644794856 19323347 267686301 80059736 360446291 29902755 751535690 420279971 456468576 430393113 760951640 702532389 261991248 23390220 522937968 381798848 974511280 430501343 1056270007 712781108 656691308 51084701 778825957 774185275 609411375 760565232 641771491 10724470 378439527 748550095 825031736 434056785 821687561 555495900 80305606 450671719 950137745 416399725 889851862 752084522 862247420 1019748085 519307996 666184124 206601126 827640489 629321150 146827481 889996051 327717685 33505869 990230579 214607372 998989930 356833798 444140217 593307378 983313906 207691695 953498676 67108381 589372187 648852339 388773764 574252092 227154374 216414550 541252478 832690654 1070826617 40098051 594705126 893523556 213477923 490260217 45435052 354944600 90775452 2612098 920606411 968609753 932656088 46976817 849576048 6739074 574563467 444495841 565497910 1070845633 669637827 1018269112 510263679 787549161 920210886 289809800 466913521 405910568 864245848 154266775 241434829 84862111 529606001 761587160 643036573 587515694 248697270 439526299 485320185 1043085127 392116790 1047946607 549998613 943264317 152701350 117588848 924013402 465506574 669518398 718119340 286384859 312233903 458913563 853773975 509692143 1071987608 138527762 816357010 548193421 505519920 603771730 1031165039 610426733 630491431 11215733 139652045 614452922 986775302 636786443 798944074 56134990 1024129242 260563978 1057967489 135834122 261443044 262014397 736869915 663791607 198568128 882212117 926655701 326405327 72272363 531547231 1064904819 56732759 569388580 430051588 496769585 949376998 1006968975 571288081 646119335 693597106 771040873 50162889 355040255 304502628 654872161 528321040 75360891 29965492 798434311 4305191 219266164 18481019 496211300 593033203 1028411159 500940994 818970985 746335126 954505878 986410442 199115728 34902453 233385008 758683180 863767752 206488956 1072844328 37684946 714817465 486888935 3565497 447769300 69236728 189689793 262546086 1061428975 103306974 407613760 898943927 238373268 77159838 40070470 64435181 305583758 393159246 912915186 32911140 87110528 491375945 809153279 593590937 90563206 163433477 531286894 593624908 806007532 822284926 384331315 745694236 1001745324 1002841945 378366432 156122742 764052434 571804806 693826196 104807162 363584951 239283869 650622003 167952400 382290488 423703985 180322695 634934133 224322373 146417097 407231560 886528905 420005318 1027721913 749868794 632103998 605520805 299044679 751254728 4931402 109326777 718216767 78193847 79289297 739479686 334174302 898262077 591704820 194808189 848355693 436638354 253158407 609536046 606158839 548122639 719065491 232845650 582937525 211219369 123017692 261629932 37420442 388950223 1027353595 494157487 564263525 201187236 263743727 159896906 1004686811 467261930 475219825 864949137 608972838 681720762 625541928 9001664 775223150 199350908 897824021 879175956 309526496 325891969 124475721 1019193125 469600734 69854618 989836366 640464533 902309248 753961 383674816 901894270 566343938 847180199 858580141 227900725 639261413 548741943 1006705016 717479985 81013045 888151342 846153707 925619605 158899748 1070333580 193937634 586355989 399336408 687499125 1025382438 315478251 443712808 683417368 567469816 813899324 573073811 193620996 950523130 54269160 622046879 401676238 940294578 297293867 756825662 918691621 986055972 708655876 864259445 523324883 970697888 87684929 681490539 366804359 967043275 539646204 76895863 57848650 180584310 12736013 892607343 467638646 486253828 366418783 745642772 980600560 1015624219 781050751 1044827315 632698887 130334387 106964906 717586321 924630823 933049983 600546716 985017307 650579048 962085731 938296441 456393793 464365832 424768809 431302587 735714690 392413168 720479868 1061059742 356021150 333014654 616406838 726696708 150724628 792895856 491477569 537170876 225597025 818687735 588246457 1004375954 608428332 906202486 248263659 828767074 414656063 306455114 813947176 827718711 515343256 1037388713 877318754 310229307 347115504 507074411 485758719 677554028 390355244 1039885786 465843731 916708507 780926732 550901678 523503358 750728540 785980333 409817321 784169594 1004372552 546982554 844073603 269831233 472936210 956681019 397923131 406088383 663109858 945280986 380762614 400250853 667640256 996658505 422039136 198628329 830551806 351132794 275930279 956135998 617997265 741066518 646041777 909681859 193178474 706699390 914534747 429744575 740958720 715880100 634275771 347582851 317916580 638185618 405942479 381914451 450479204 252171205 608951560 781361301 268154435 197797665 185162858 886434173 229702478 159678571 365437006 9728123 664794944 1306762 957915257 286388190 451397638 576423176 961757213 106155941 819181 995959609 999715725 853909285 760188976 690355257 886161684 988252946 276022292 104900812 83380594 509569115 202196110 509204976 449859550 533698239 59186635 419394827 955705153 366162613 138646965 372645690 703842498 581269736 456469836 658811933 313845786 147843041 901022919 977637013 968767387 757899950 603839285 946142954 630253420 40078215 922717101 152381705 350740276 46750828 315454573 18157624 657695900 321462904 29158727 946943178 334956717 956483754 128249059 1022663654 106990785 824579815 206214453 188734776 80011065 582893347 985848683 668952514 816789984 928161405 666100496 759747412 729783447 837824641 903380390 949740006 892062949 341006959 991475082 392196355 764669651 285584228 43596673 184890091 13679247 472716261 855084401 781704905 108112464 580952257 453962167 794302902 184075455 932237591 971911020 67894306 421889395 698783621 323472105 426983143 135264788 799657297 485615616 340725915 342945695 462300280 687626441 357734871 169698501 82314014 467593185 296472328 64081256 338782541 577181125 436980455 710349681 697279351 53873260 974659468 671071544 899430903 679564709 99611418 435880373 1027297340 628076565 276504473 269520816 885960226 361409038 899493685 1061832142 1063725953 700678129 191986829 372808556 599499364 959257751 115695166 1035524829 478701914 679365038 439295000 717574865 1044738695 664909072 662699475 879724937 706707173 628701670 307368087 916612524 252052872 636680539 842155339 621400874 889459630 666424827 221883107 551762761 1013314981 422848308 219086275 535580042 681361162 969322489 5092016 1023856405 201265078 11310552 453383015 437676411 717221612 314057161 222141751 597494628 996575222 118646443 433467258 856182360 449107795 1009831051 590544661 1010673360 426463871 230828711 16668676 248195745 110102424 866133120 115126728 547995221 689435185 985109668 376156853 1070821305 1066622545 194824694 411029782 1007543811 443011119 287633804 919941035 266352092 339339873 24054169 997087907 290690902 809799619 18614557 420497405 3970202 404514894 271384688 228638702 830092423 47277792 603168481 882287323 928149049 763388239 451192929 600921289 837504775 329691114 692983454 1049912064 193178311 681325711 630668155 633016734 416912325 940972612 1044384602 978503382 955569981 54895790 47382952 704107866 223735755 570099934 692934036 421099060 98462834 54147687 752349218 53575286 742177063 825729635 66042429 1027894115 1000432345 564669134 857019821 314831905 321239131 1055181090 296501890 331649766 31684748 150108014 73427112 924826353 525979814 941284516 362946628 722473893 995568939 898594483 10634651 112245431 757818222 984465262 998775269 623166812 456818233 98070419 628153501 1002350054 152023102 152125185 234289094 461911744 719459532 1049375722 606835400 452250564 11846293 278593967 478121234 720084435 573838861 581134140 958244497 137775517 1022223200 321953652 668489395 1026017534 295584711 59033296 7240913 247051079 726881185 398469553 255557061 169403007 335861822 434552859 547854021 97493645 313207337 76085738 306883969 588775362 823099756 790772127 536925622 355507347 428536331 373078699 244203725 732519395 1012558900 332630399 176074172 5406137 941193034 765429910 67881310 996049793 439083328 340116595 1072800414 1002464116 696438092 792360760 1018419102 1071243550 220053762 845161228 609301489 1046116411 488799998 318457624 651973850 89047367 958065338 880997566 958067018 542175987 473733264 75497335 856694494 208182435 526263024 772139409 1030546836 837437422 517067223 784108967 196543495 1039689475 491808292 653657267 438867102 31528716 1024853077 284094436 1040340326 968782718 656067876 489155785 719979944 582213236 763673977 1039403799 753337160 245994370 612889127 586685096 371054385 824848960 961161025 271432208 194766069 78267908 600707394 927505406 1072269035 210669381 627078759 738621662 867547243 120805218 57538255 215929260 573712876 751538324 576983770 773415762 1042830525 315795833 348431528 359632997 148573076 851275897 694673977 808193960 563662548 966805129 1008707285 133111201 304814073 1589665 25208022 874800508 594400657 745676893 924530349 850715132 629063263 429416194 882279299 204683461 295685186 607572270 1040027639 1006034404 1072417737 871190576 159785048 1072729799 667738308 943005079 72419307 1031918994 1061587217 234362552 234831661 400281931 1058861316 681528814 590531242 1005075555 500465892 349695379 520971996 16916986 925465371 835100096 493211375 1062025189 178818962 578006729 252110549 1017197758 556728466 876376476 959301082 670245542 1025694487 780268417 550349608 12482008 387964342 1056007600 157652582 664570063 456639446 1043124363 478948155 279891794 313543934 492787445 164518431 261278029 683476704 634560615 212025264 956772092 840963184 38382812 698236048 895213933 675962769 476518585 60786315 357397708 472972580 586579030 440055687 324780102 734620750 198050974 435115454 792843234 124226768 11907595 491466871 528371606 763158988 1052993896 459759460 982675462 93995735 111683317 161090161 647594992 143529636 182270870 812620928 475159723 79345965 553997903 989559643 365091591 252405858 808846011 1032017415 607315270 975644282 652517970 632730896 602517418 1036672324 653049638 182076863 900290387 518791035 478261385 854636615 710389287 357430836 294425304 236563743 948890583 276489042 365378426 532856343 373438683 1035689517 211633086 674580738 1044192701 10392511 622299484 52236147 656889599 696151578 496507606 408981788 185486136 869815189 82675907 209280369 505787154 545771120 730606846 533201571 428054597 845664492 1023437450 367996820 330505339 513923624 370326497 278094207 832870347 870213355 699525708 58605221 42405268 628698349 104796736 332557304 684480467 401021875 490448453 315924757 21940374 50003605 703267976 67281656 282193539 374064526 686855342 297219733 375299757 612834753 110059239 517382773 442344438 680037187 499933233 1024520425 20341019 597544550 411417004 78882435 215343204 337076504 241521155 815206851 852167313 1072944504 1044912789 926356626 819966851 608843751 295665063 135957038 189058726 378422750 171016126 106378819 555626914 567774397 15075177 792075942 464813383 167821507 57089438 792136255 595402473 329568973 749819220 527439578 595452032 74051129 979728080 693568816 727845936 669530072 187997286 953105423 599687548 646937174 575115709 492329252 969572235 435475779 870133940 687199600 154537246 2250577 670514697 246852735 174573806 502811024 444041407 820025292 438954849 1019854623 254761071 44732952 897377664 570461001 520427482 712835281 440391028 199831376 784992200 460482813 971600874 872799622 424019757 923369461 909453734 530085694 386188068 788797869 394769774 865518670 985120731 266987967 469078092 812505045 500447684 995991147 992000737 958312045 56199892 612992544 416210416 237438858 572793239 601690264 668392538 186092577 877690976 804868108 1032210256 906580989 697305075 1070094934 598119992 609645668 122250624 242465306 3055680 909330560 772512822 479993870 974389222 132322514 68578054 126363313 158748805 531966896 272836130 78365338 671121236 865241653 197988264 248950639 105825019 843197740 31099272 396601862 52938396 135008988 926413645 460590231 669115748 615775322 184081523 161617128 53726985 938838660 65851029 54052047 261123472 1068135927 977926320 1014341059 615263513 987417117 591288526 10842089 149213640 950185143 624756729 870422495 241091962 1019750740 712601276 482919454 945906125 534068099 33312287 570977703 734111810 477164679 552725917 42767565 508168525 171300595 609319779 636743491 1052097333 299654401 156455102 466486110 987903769 518330073 90873125 1041540151 268792919 744855131 430634513 951436812 774070460 23066273 416623884 414677352 42618892 394246060 92102391 284571981 38971031 698409003 579924884 574424099 352215264 807177808 373287205 968190626 475531047 912732692 312314933 811471798 718170705 182965423 820958640 730202301 818502658 581218727 293662012 948728763 779037218 296298542 746403077 367052240 205673036 143088899 660316797 217986492 833436716 402409828 87337617 85312533 12403664 90243313 853673249 95926154 14096582 53844476 261804165 672657548 966959159 703478212 1018930527 381320846 9478275 879939874 1034443136 180427771 528996549 811169034 519151884 265514013 731656396 894621162 811111933 525604716 869643265 301891936 681908379 1065136558 237369603 41901881 816919168 583697655 446667716 595385076 422577448 380222551 432044185 617740475 753800840 245775040 1061574695 844025094 847117361 583430757 495449975 132786053 903076042 586922496 856698450 487137218 412801428 915048146 366200711 115046035 228146977 534182336 1003723350 177597982 929910872 121988153 541903726 578956269 535106293 116281094 540795720 853050209 361128297 199886999 385819126 658456921 608151650 179493473 804031725 859714185 76637176 797872967 858891207 867469105 127465017 153074799 100609560 994856542 639328302 981106366 415796203 1026132163 862955472 594479323 663880675 61939718 562068352 534408122 83058693 90273216 292914659 487299090 791997019 244107445 764084172 866465396 796260223 634450889 246774218 984233240 881258949 489997890 104910764 18758841 541459724 929996202 679307722 863152333 157481632 524460503 829289909 933095864 864858704 741798826 625381107 999434599 964577208 718629672 1002554568 98890748 101224465 308589484 25120123 61150557 56000785 365877987 492646822 200342359 103883333 59477953 296523541 71508373 959273739 60001461 645957961 191296469 520845584 147067471 352390071 320771468 169282046 363442018 644156514 542300395 340337589 735225596 307416553 881955341 300515815 752607530 202383285 844343 768833649 1031369665 588335685 868469736 923201472 40268806 242550182 331817334 1059560579 889991729 398576859 248240493 993076750 224011998 204886953 207169941 724991610 386680676 937716346 465953204 879023785 8628069 301057457 172955799 526235999 1029932626 1025115470 622604517 711212284 976687824 18474813 438300492 400264237 53219738 628718214 481987798 289508395 996247749 337774337 676797807 366290620 229811981 675713182 287075183 50377537 478772538 626861207 609989254 216894337 249771933 628886098 788758986 357929392 66755980 483529863 372731769 971451241 392795947 140777601 968208481 142756467 892933358 184459636 72660750 603863282 434705206 324703488 1016001574 861774232 226779271 174449853 951217706 421135996 46091979 919635549 145258348 860628229 657445755 198529621 77164557 562991479 897924181 354356528 671598818 508366367 102082039 563358101 757490247 162443103 958114455 105185597 186964503 87163411 35934386 981506500 153467453 855367685 733407470 158965515 159589414 908998042 573091256 93643620 1028365370 154789331 564040552 962942226 217789795 461075979 502249713 708034730 1022549665 793233070 507122616 950193494 789099958 183197343 672124252 561690508 769221985 327694296 984973778 632370250 701288822 33319772 805104656 709679030 301559843 522746944 67109350 321753658 839327795 67981745 656707063 438054741 574552228 275290087 337454345 436118367 83771383 952156211 679461915 169896459 902887258 840165825 1058463227 908436000 627598413 119238232 1062610082 389540650 478112577 648303088 371005967 938309817 762775990 640080139 363566018 437393130 989444817 334718570 211632972 744497441 535131597 407938992 690705391 991149387 507235354 716387919 954538366 170879127 633330979 85923541 406990930 149363098 1027420384 222678673 370900849 511004024 67303373 97542161 225936439 918421319 665374197 963618289 848965349 612887096 938937461 417846352 1035509639 167830543 292845456 514754756 764602913 946138233 826478382 173967573 108024326 870638467 443559152 672139755 584601774 309278598 477856845 90628114 752822484 349829581 41709219 994849586 558016464 1061299682 35205122 99129196 768879591 131545360 877194671 57153455 104132815 691025908 845112516 67710974 567595816 120595774 994657437 390356855 273968104 1042120596 97596645 180111679 468355159 470014493 109435171 813404592 537826490 894473008 365317331 784743883 317811919 501108207 1065405861 535555481 636700543 105572422 990229723 931555977 238859704 411540367 308888274 1026763012 636152136 441119732 87835323 625700327 328937975 798173150 924018118 1023661999 915280179 689600283 959762621 1053533425 643986989 1055287057 212761847 678273044 396060557 457473209 799149640 126882506 564040500 992785102 193554341 649570187 43646217 126804427 610677834 5159471 719646327 1036607129 753496069 191795531 634575471 723057765 938167398 44549180 268823385 368354178 140886541 289552285 549450084 478024939 417302450 124424347 799676947 1022283168 428602096 895244517 265575796 361097371 842277542 910190064 362828679 191474591 710934124 440939345 157370375 176193914 935873183 963778934 266632157 609887706 132857456 309143888 333599937 691605970 1064006352 193434639 267870019 539963281 691342331 824675179 394825799 341567674 216020994 411680547 959760296 1065567863 68180791 46371713 101481456 386943731 189602693 545751016 698995377 580475672 246521131 490201199 313798712 1047719458 339708629 142229972 365844044 291218708 605918335 760041424 206267184 948877929 1072073865 495807012 471637930 747709629 1031934832 68535112 859777232 923311959 620961446 274243733 670360597 660541009 349293625 331136750 358433276 113937305 507502495 151637518 686507690 515462368 984167196 530230437 830404883 188425300 845061241 83780394 145756652 6230830 304811797 352276955 361073117 666899876 22780141 3509050 829747107 956150139 532195294 341674711 326754981 818642736 608684000 1022251812 993035067 122305742 459161659 907951162 825185062 369216897 647910728 933440928 241820506 902594185 859470192 397655187 1072978831 836884831 288483092 683474737 1034132333 210420473 441550969 735512767 804984603 299041030 604307476 800836716 435609467 93080321 753174299 637602895 412685461 728176602 904869565 763537404 181557518 532427805 240388317 108501357 344988791 598577768 373908969 167871732 273635878 257010564 747482797 135604383 737927671 500537062 203054857 478083447 379307883 300355811 995232959 363137771 829769948 349309923 896994854 649011287 162701766 152627055 60907972 804186244 489909982 1015432339 861652951 332096638 942107535 158547300 1019078615 739372262 909978262 360987047 271971454 838187602 550815057 29847283 920734033 716565882 503206175 178367567 709877522 61497723 1057836221 475268750 1006940453 260012437 864780035 596956527 841267170 808599487 1052368231 311138142 1056725216 202295815 691591135 514345211 796605800 490496828 675675915 1036762325 549679524 555490922 778463803 195308653 64190393 826710149 846352227 1045525037 162964484 679150864 551340290 288587632 272503112 563052885 895841128 519183725 189254183 800310035 21644022 645433554 944669170 473533803 964399403 18953828 819991085 915091371 347651249 1034915567 593522851 34425197 671533230 201878912 275001260 252477990 677204107 1033112572 661792568 473054669 683902449 229851116 39909990 1005392009 331166790 330916133 734030905 454184007 278985085 470823034 813982599 158801595 836010262 884132733 568780676 630208462 946255478 712914985 402685989 715442793 322537089 26865764 932720326 687085942 148203339 477731559 456563399 836156041 260501358 728928330 590767276 1000296814 980225173 321568911 699826716 849504309 579080108 1033875520 184986983 535662799 1041275201 802633174 283208840 413531602 745552923 718727049 431712647 1064124417 228334930 720755885 182753245 845559482 1063908248 636813152 326250879 648653464 303939556 258691051 147999295 411776065 1006567904 135814412 255652547 298798784 553086030 173213321 917268010 598690602 577542386 282638899 980729350 74421409 69825103 6015193 1027226437 1030219330 861044786 239833712 893666347 32316741 9598455 556562419 366206879 329559959 932188982 369295056 526178860 929148588 680335581 433049878 284521931 1017798258 682951332 428450515 647703803 9705906 285942368 153679034 151331895 600022779 9693047 1009959870 924907931 223982346 751544687 868759089 314939743 542976202 579922152 552087436 186571277 776339400 603371566 935980813 483027688 356129857 260297010 1070132038 707977547 677397951 396750434 107041911 637576062 747743317 33499372 353907939 715703232 110965456 236232635 563146948 725434016 789543997 265300432 666552502 115592809 134952591 60886796 349670101 574597390 687732612 984987120 431701147 716452397 57541276 987697997 977458204 717153573 372585068 142578791 1039225506 863641397 806212443 502516238 366228669 999446688 786005085 224915702 718199139 1028776394 532164120 82597030 919831695 392831946 339127303 379604910 718878999 602737288 383479809 877447526 386933602 918091344 1044915709 404315902 691738318 292114558 1015462567 226803012 272836485 5508740 870251245 830309227 344488662 246438770 224463654 493560213 293316430 984538842 477260475 773509451 687833891 753504034 660569456 165476824 821694659 899561699 868907767 1028949599 92633355 221967161 591146221 12334097 6119507 921150389 470639420 825360465 728871992 431906015 129909287 883855561 356875923 379246053 144541800 516541058 801338297 29576253 1015762139 910670691 935713195 150432522 414462878 305863285 88002009 299444333 218745482 60454087 1070494004 49175495 224267679 437140467 471233269 522840492 309832270 861614774 271952104 25589059 1049320993 167384979 1033847363 762141114 236488048 365262171 583415972 166591193 908245549 134568290 138211918 445818634 661775043 418725793 822762738 382455816 791786974 157810248 745421019 560225417 119369341 22517301 599599345 499725806 762407691 474503159 207415378 1026340513 995173029 978767836 995921486 152531898 761235040 414842532 307807147 374698040 611255898 441172596 58904830 646731294 365176545 31400457 466562715 398698585 606253421 500272846 913605682 489384554 930836593 906394768 1054795506 1041883626 632229734 714843547 609875581 939843434 184058553 91746467 724959812 148692370 645494931 120849266 180033719 740997974 410003471 913946847 1065439435 275882529 745549442 369744078 506089788 349885238 1029803975 446598333 697210893 339344090 1055706755 62815639 90753633 13395510 859245231 214454871 977243766 898598003 998539904 706369186 251345312 307792189 508350674 236284941 773169434 452165175 236827117 925842743 891587801 752094104 14060582 376676313 77659940 506715559 630083171 243556301 24222573 332393876 354579491 130120374 355044512 892173200 174887666 653296641 431208408 420071025 329958835 837004455 240809905 448807053 532852725 91545947 14995115 591886274 460394927 544927924 396020438 264555067 235985031 984407955 470112322 592037198 631013193 65939889 626598423 361910332 328834614 853845416 291830142 301011677 297024939 598103731 415738388 1055814703 13428998 716665062 37863595 697167695 3516702 492270329 538408760 279695568 76562665 468862326 89888164 573955453 771159019 282664998 732368243 1050053139 665480382 903932643 295791474 438545226 910002888 1062318851 587988395 553761073 325521079 410831304 999623079 917829215 624968714 345434277 484370624 573615213 78248683 444225960 455909135 423183243 701714496 260898946 885793902 288465751 26830476 1001094012 328084646 209046925 1022377614 844448875 1062919536 685046716 159121982 275770770 197577544 1061158156 762354951 537041134 205326113 836147165 855828833 316092052 700127440 1069637083 321270113 32605382 967768874 241734809 999347398 63889630 917531822 820675483 132240970 1020691038 386455257 465882428 888759157 709267199 231816187 57646340 246636782 8554023 756680234 940496288 168380085 459446847 105193397 14984435 521156251 461882868 1009149729 23888172 836559331 600499432 172724285 449199084 82599037 757767311 551598075 249167859 525146831 317384007 187654416 233738014 660286273 181039933 840030156 645392914 878186300 672512241 300179482 892931070 450981357 1023394831 625491508 867210269 771926511 939618799 615564464 492533691 722198420 295313943 973138279 690973238 420720475 619360090 1002544961 532344819 499641150 997475205 374105105 24330496 426251178 168033428 474740027 979994889 332161783 296559170 122325466 512037819 613649871 198593133 190071678 927209056 436771802 571910350 698644976 773843670 465979307 730352376 805722367 154117442 146059317 118643759 303777536 550028124 571011781 5636621 252766392 1046773202 1055893619 526210489 228435583 81181784 228602591 913298797 936835698 360789418 356064721 306622633 699315145 796915013 80422310 872697843 946182731 725089566 376177421 26702715 465589647 160365152 822642122 433209225 519751860 716161041 255912056 942214851 447259144 441899551 649242806 106015402 673732923 155717580 209180041 928401272 514243837 369854350 667826897 289476375 486211440 366197548 589409720 1007688237 626466476 10669222 395950856 738903323 269943172 527247979 259281006 866150943 914411945 864893289 287999831 129577494 72076230 968020681 710163189 196209722 219954201 590270265 639029742 540627890 593788636 457392268 538517446 821111613 403842528 1071233544 188316090 552171301 319861640 195104187 22829645 975710308 1012142181 220823659 818026103 557297755 866597509 339616373 198893766 725325077 718654835 871583188 176138038 322683074 673967435 144917520 445615052 815493377 830031147 419669375 382640845 478066417 1072011126 680081437 746693417 630630903 751123237 862668383 412535099 841897028 786306250 87479049 976853936 356116458 572567506 722703055 1012316481 646399 874946455 611968858 26214142 1060439686 803935331 700672881 316623505 176950960 750506982 122777748 22096825 618270848 518706092 900787530 567162073 977141109 701928941 289137320 1023428116 576834693 800014014 856012123 991657544 357828170 1047340512 696535190 1023017710 1002367341 500743871 142092846 40863307 309905793 823033542 210698854 897165031 828506779 174449167 1051231766 612835497 309568478 223180794 625874919 4022781 361409815 186984543 484195063 519767660 654216141 884819095 273214793 926210204 14940615 738128303 174797603 796827208 385618010 50388636 367987958 1066046215 412873616 902118508 511041944 294200748 579874355 66008325 595401489 545229324 1018266655 1032493994 539014216 907222887 423063077 27210172 652056537 918157368 79769751 704424380 92404864 864967068 61791208 222711730 895718071 32213386 1072776280 241332024 899181298 492152815 601670662 439135210 423561587 417909084 398654525 428870492 512046964 250198961 879246953 767750722 326684699 288445816 734098831 774531622 858798906 943453822 766099499 636107553 706126878 310432327 934569851 15454032 897207829 319961943 405304822 848793581 274217981 296056179 545027704 117239237 929461170 730583224 126397029 296964660 758008801 578172689 68601335 1045785750 922953571 92945777 567133563 562100304 843341151 345824349 887251201 565904925 80111008 258856714 896060201 658551096 28420955 299969046 555519851 514943821 788270807 418391842 347618669 403610385 77969414 640594367 467411514 718201650 909305809 363114846 721905597 253078719 111398191 464263862 379043704 11680273 1073027923 798401366 617090595 597729985 571283320 730144024 485265321 970494524 139935500 24783653 484190083 1046122215 512289825 421541876 757377657 21118158 176955931 789734525 592345211 476633167 160907375 769705541 471602926 867255546 634135817 730110414 1045738935 793713912 445925648 125203202 231255751 932849919 645248106 907269909 441294647 105214905 959643061 911662862 42467026 398172118 466870183 589733462 257527340 1004642259 721125343 861450819 51619067 975805294 989620865 522874774 65421388 775132944 806591267 801362022 362211130 444874536 202004413 1015457082 57028262 578930610 613309731 366000619 402917185 66018889 526021528 169097156 627477441 296425254 598303204 1067597902 1071084629 9134940 1026908938 31961994 273283582 795553630 712956931 322595260 962823548 656624540 298519510 193183859 206548643 390397526 274577473 114266719 496653574 425375206 1028597675 934738725 365860138 636752244 95859169 174386360 509476217 743061610 498098684 640252937 524898737 606694595 795412794 661879572 356843521 1066713650 243025153 945231133 605899435 668479077 311673884 618214028 1073137768 242743687 861027026 10238728 327637123 118324653 729444853 814337639 862784776 728260425 466540169 801887051 536338463 675690213 969489220 19101029 93962205 211143396 919200637 1062591225 282860177 815659419 602525457 1017693523 450379764 433469088 889023576 657100279 704044050 532792473 209897754 887785430 65383987 856657671 554803179 1046355679 1051121755 393458983 276063723 57080808 385486177 15904710 87661676 923151082 1072297638 502313304 318607794 522308764 1004579910 850491118 644071598 455737080 655404855 649974544 989952480 825643170 1072911086 939367568 1609719 584771150 672172706 1015165456 392811041 466663001 841526153 873514968 917399367 944111410 309623276 839805070 697027987 176576664 444765046 583499557 904586088 86060524 702801705 14159629 160407507 678142947 327266011 903973039 535070472 336329529 371172022 37002890 166813904 143084223 89775224 342700240 26007599 870892896 136167668 733913386 1019694375 407743888 543808154 913119988 85330488 920227811 894576070 439335442 627999072 457939014 30291564 54077394 1028595896 290917468 932668838 412780658 196446591 173906919 490105361 922524752 452853633 670249798 208519418 561295924 509486830 170528110 756931771 461873294 330892865 133496660 624392803 728877244 168602920 656137390 504267556 176467829 50529765 796809731 898529012 427998810 17432547 956064795 253772483 988131023 981460925 548570151 331204205 468711998 867755834 813079696 661475301 975985535 883378744 84923061 698625078 606331480 588183149 1066018851 887114295 1033834166 610983911 933985806 1070219921 497278016 221802665 1018995559 495203527 139284440 177178363 963489500 422168840 573721540 1072094480 1067714365 389091704 943560561 145001249 795197251 48380369 679033466 634199458 993554701 353080395 535707232 32134408 704759010 932914717 129563988 338562081 1067886123 109713296 832381146 285594952 757298298 484255318 509479890 80603447 592681740 445206013 219262144 997602813 840614236 162870876 693156472 697040155 262242194 311053385 344248051 236085811 694138604 804781654 843761580 823866541 1005665519 254233709 923703339 914160571 908547567 408368847 297380522 704000297 21618865 996701840 778191300 74089453 87614513 421420166 944542513 1050915982 312835334 1065454041 935058756 652794665 200076891 482516639 63828183 462920476 23692853 350789696 33758489 330129098 672178906 598081128 636919100 813118234 411378268 850421886 269931693 368125960 863844973 989603428 934453201 535860288 84432963 98903674 1067366379 85131502 444660822 479922801 534225091 794711627 605441541 558263734 685191607 37290157 351259760 787643116 929454142 889484075 294833654 90878172 83229022 300318858 181551286 936397417 982698472 418437915 18633838 263140207 383944032 687943151 610370907 614167946 927796790 1016100408 406302395 536573305 177930117 737713295 628833100 4393287 832724434 80801207 669193968 492685522 848617040 626103289 419500165 246764640 291654460 392539120 356554906 837451229 770182719 326792851 840078569 185926514 840028449 596813881 165221598 736031701 205000050 959164675 566232250 737374875 661476968 227582344 515238048 863195367 917473807 556989615 34526990 568306868 730016698 204083803 987715971 409903732 273038417 455245349 489477335 567832470 773697856 979240280 194305935 975447630 801850011 965921186 130406016 9718535 964288737 764604009 898576312 86557042 824055694 283217856 12815990 176728077 374351542 1040144571 202391310 726475658 563355923 859316574 920966789 521900381 508805854 458446326 151694650 613950315 1002942549 598070699 392730797 862012289 895442081 151173729 1001854053 567389951 549335701 227103095 529158676 867614437 1011335112 427405060 798160782 933447115 33162 362418531 709866648 982336791 595716227 583240670 748249051 17659927 243127728 588673231 572114785 75654967 470645921 984731933 286610035 972101656 509811200 196805549 918007015 226876874 747282539 707183254 528935227 1045315794 464189350 971723628 914206756 766776792 19332728 291434212 17484339 1033321981 774363144 993079545 762583695 569436229 260859193 459542230 876579508 217107410 833677303 279939922 615751329 886181156 444648683 189757947 1016140914 941395871 1021892766 625670715 292403673 436207532 89156670 796365672 1015824189 998931426 155753164 39114977 880987718 358783371 910912041 715700229 1057136432 1048420145 735250254 396384111 399089277 816932181 178568931 328879262 8426380 830899927 311262119 492316885 616492200 354721162 645364749 188800449 402522412 336636817 62580975 501189685 146638739 1014662778 975943199 242185335 783871407 335607861 531141886 494983128 707415104 300954123 177001401 287924152 345202349 148632675 610295418 189650108 310459570 1029757183 865961354 233654466 1024487279 346718992 765872031 382635870 664310002 993310573 969461466 493646374 287294255 714091973 127058700 141071214 687429761 43876543 53946240 390548550 25735404 287978190 560979865 342930668 551074359 289567607 765205313 334436538 305610360 908037957 1011014808 688689730 499567127 953598338 586504732 893868662 1027128154 132255392 595718079 205861009 137631362 496178484 757831333 239846446 666627259 104267192 113178091 78540472 476173 781042086 59162498 6963506 760620192 959724938 259357277 44813119 979724445 507058081 475196036 727612191 414442403 392408388 996847757 291416450 14001474 67009450 153023803 260021264 112529798 759065951 710445656 813312967 194012529 476490662 764325697 973289134 616747701 138099921 137111025 36689696 8373419 928100861 625967313 482426577 964884724 750503888 987708408 431547156 50070032 208774298 1060217130 441617314 822899971 166753573 78389667 1063852866 933617877 221285224 824599521 295769023 656074074 146040365 764774709 86963407 694602598 116988698 619237135 271866183 978899272 425811958 483594079 691792619 732852244 1059050089 702329514 501228816 950666138 1043026736 1073144744 69754841 113412380 806935564 650019615 1039616968 980459237 804559309 853663722 146032056 856826465 665257176 761802700 630052784 58172852 16829450 551891541 429358932 124696289 269596067 958034071 1069718358 352208734 26425774 55055686 1001685589 1016375606 611022732 433392227 627589796 71359111 499053200 309611482 14017959 749529287 515632709 158277906 730613217 39734070 49598290 735770218 955660905 355844030 624294442 206871131 950736171 891783596 457994765 315624698 214269514 1064802121 602369633 748935714 736697396 268366914 300942056 345575429 382974635 539400010 289650701 21680147 546696012 854761868 679979893 387940844 1015598768 27532547 349735975 870383435 414000587 799926254 56595424 1053347445 776843110 105099791 780490915 318344107 528124817 67664063 827985373 842201569 948461735 1072316093 899428972 316745318 1034276142 397765197 220898772 475103273 682422565 704258014 885490020 241679826 595343994 492189804 761855712 380833637 747185317 576512116 350630405 794656181 453138292 431973243 790517930 489255623 645439792 720185465 867235386 252031562 74931489 48737358 888663166 684006520 86642874 987642271 201912519 395852526 967586615 400200355 862379916 550998914 171230913 178288120 198720694 658934398 11429994 826270022 659437427 781817969 765496822 268777077 302541050 1028229738 929836282 115337047 447532137 1041387479 531450828 23017778 1051775368 103794416 983658198 661422719 127684302 860820737 1045234582 787187426 996160082 505319756 123868012 982433576 543018992 269245418 428015026 397980588 942010327 1019633194 272047311 760349857 1010573861 188727468 755012248 413704910 1020595209 72166870 584055715 670121192 649670952 572009766 1015119857 279896063 947300981 850583701 476569168 695429131 839830785 653175824 4307983 8826301 1047356969 735986932 325348295 305923350 902157807 151781639 275367586 351018863 307020485 523772783 643131197 34395017 476006342 968969783 616700404 965504516 352407891 710631880 784959914 733018537 11074670 860468479 440075895 994742240 803865475 331398861 692632829 1029084043 518549878 1072602596 413851282 677259861 230155879 951528206 1046068877 538447482 405202193 713474489 765598834 1052222080 102688038 758680054 441170336 314220648 815276376 81170830 656457654 557907432 956599843 675300928 977039651 992831161 385804148 789852492 304716158 906856775 969117878 296119470 828828825 50462788 316347115 535683730 137362018 222784489 321724044 24826676 412548215 928065335 321530472 597654194 243014203 552497094 591727396 107525433 396547521 152095369 877243720 223693042 1031842079 1031927802 1045915714 939081073 868499492 41196621 456676947 336533673 620318850 269120460 915584993 651918664 356585748 740292659 887494713 866904218 654350064 849439407 1048652381 798440866 252349914 1051971837 761097322 38104395 845571005 52838451 686296413 251334415 760021899 432255940 182660273 861389983 28559152 295033485 570963540 460574323 469069013 342069801 234912839 1072479900 907508912 891805983 753175455 723371687 1015148448 386049491 932855695 376008872 786397039 41215358 725842809 575665186 566517576 410164487 825917032 535720846 903449471 111255413 252190184 283292709 95747712 864591481 23271426 767834467 289004475 208267815 276671510 723168779 687265332 154201245 73341737 408967589 1003822988 168832713 953891940 404856363 1064845533 363914800 481952185 858082824 377223576 127425746 825206832 307170320 832873747 714839031 569779435 758000925 1004032961 744382269 1048705485 845156314 945197807 153521740 431741629 81529973 911430779 1001146686 860245291 160917890 461153416 559592906 471820548 169720161 103108791 627869619 193379900 569736484 191311396 472609182 678671233 545182763 570900300 998959228 280449177 636067666 96625375 424201549 341607876 527005707 227420102 999103715 1033517691 9390507 167104897 114114363 216758964 1059012385 797675244 655595243 289737493 781608909 462919920 59099734 907621493 76038052 1057809244 526261770 35919572 569578055 823235613 662144420 80864306 600673343 1066122142 845188801 815778709 908879795 529352155 682989852 645064505 808816550 835230624 862065665 574552207 839069087 966879553 163415017 202547619 273556840 866591640 276620618 295356301 105790105 102100516 752046861 93981162 819565922 580572632 803958591 214015079 780592918 1058353837 776115621 904118485 105697138 8792193 617095910 122813225 644715840 133399308 714376785 242282418 56589814 488544350 544189197 1072775489 71630464 555347219 784947690 478737055 300688938 408807890 439782559 74627934 219950346 752331610 685198084 707192330 730727670 238679580 315143409 80309744 500753113 364250250 973483917 396241686 554605576 640527824 493933077 639144553 481718750 997573147 792612365 691047289 935551171 914983712 806248035 108186643 871151405 138494857 506198815 1030661202 849066084 37703430 772663581 308378394 149538638 966308762 725291654 124944024 710154530 412161915 322848288 936438680 438812997 973579915 1060879635 206969322 927302877 279970660 424553460 107501589 794050018 675005523 762072015 738045292 1037517284 405722296 409135191 586766894 749807461 944634525 439257492 341289082 1007341046 716316757 734493856 528076601 296088981 119295197 700516052 740193244 170830599 983421507 842583010 232978800 1039867379 911855922 990309014 393949298 907480963 659221081 568144031 848634853 740052021 961149224 355255169 133645879 109838200 502717413 976001492 682803680 97443967 371352720 615759756 375129301 734504497 763632641 639666987 709071601 812011187 687055526 221115062 952830148 382241298 121128419 882386081 801205367 177933424 336982440 747108583 151043548 702986234 1064491021 848678752 759282895 420601921 636886289 662697570 146589498 512275350 1052191631 691302371 491303734 398480856 956754051 191694755 912279010 1005010770 318305987 504637814 633237499 220877146 860583068 611768225 266674080 603201667 632139436 977824373 297298173 106536654 248215418 421908552 1038028636 501921197 875749026 1009308753 639676487 119760571 730300242 727722430 680831027 850053686 1042680665 416052951 556274826 775337648 220908260 627934967 443798309 664329895 664173639 143780994 279325982 1022068786 453921033 861855110 706664635 189839416 145255216 300623844 1055623041 836584042 893750869 917825573 98366667 1038976524 625347236 527197979 898359087 330130824 682973265 683009497 128885162 570936630 322508981 314706191 371475472 605902273 140628121 463755320 1020144554 947367633 765320759 337919399 341270554 545590763 617895117 795776388 275001790 26993680 499228129 880337195 175212571 56638777 392953852 935192979 751718945 468492440 95132580 1034988894 367521786 533782239 18145149 754683188 114795438 943131453 546926367 835020222 266215853 687703505 767284953 269015425 877457828 297807201 1055929477 922777336 491038293 67995423 1011536230 567642181 967766487 347515351 470759730 993444182 354160034 410861401 939861334 8160598 233832329 118821861 235010097 428313788 524330376 840801967 386077258 366345422 1033650397 328624392 802412484 948739682 500301597 825951448 762111435 915797954 359367328 772368674 879388503 776701661 66067569 36153592 828478246 352287344 842993359 186841990 785820709 744151844 882779474 835132082 546401448 377715627 680581369 854268115 98791007 675412119 767000287 381155934 784085566 661424971 872509577 789988439 313002879 720913665 433740637 627750059 377243188 881758530 700543289 688583161 428768481 805215653 363582899 81074368 354281843 979848941 700525625 59094347 594378642 1032355010 787992027 401011210 550634752 752053641 465138919 584698900 48961185 583420934 192544375 51136612 756878360 1064995874 248735278 710445175 134957615 993546867 349696439 768011201 475095071 1067507724 1039642024 1012187491 558834204 924696127 548958318 141373845 474098540 616298774 527435290 158365626 801494257 948853427 691980107 814556309 650344319 683951850 1072432153 389567980 298154591 445828534 963341374 338483468 735373864 1024372249 54504790 883453502 337991705 982268578 179354451 511379219 259244452 388850072 548830191 1062554727 329116912 556376962 413873739 716384810 832626486 632400695 561892720 295872465 1048058181 933710938 889463352 976766173 582016249 550219471 858177288 1033785706 70814710 666461606 688365461 981415151 252981624 344704189 636125889 849535313 163344302 153361587 148843517 641578391 896821120 1022640270 1004992308 118898320 567710266 624707249 58337385 107567774 182155912 569898179 87282740 25908869 582713077 917143535 570160478 938966109 545382878 243126910 149952701 477013429 984550563 807891503 918887057 483735813 53544955 921960973 1054715914 958341996 634551475 963222958 566325993 163318426 928095137 361492968 718465639 855714062 140503650 400204831 718052323 349937680 327313145 1055183696 968965530 696424607 100466750 399687687 132290606 35788611 918478704 918389064 101535712 448172836 199728404 564965269 59766595 851886585 769433560 817933377 103607238 81600298 784965383 921759019 699560596 647882559 736779559 52764148 314097144 460713808 610824695 683240899 688085024 312519119 716181642 423395189 645984322 542248540 67622066 500727007 880401157 91927384 77272646 347957866 837128216 392618304 890081320 1051010630 969677959 1053194901 997114642 803427203 261007956 584189300 447867070 612971241 715157902 950754597 410942110 496200407 681179469 502705490 11106628 549135149 246664580 495807656 639027271 957777218 695084320 290685090 301971811 411800465 760099833 366355198 850879803 515384065 751537419 462809550 693408891 1069089746 725924190 634764973 710678884 140475957 492642629 174227023 312262284 949444589 1052351180 454482408 603377643 824165715 48065370 941427227 217702356 140474326 665397532 811030921 515623963 190791158 381312900 1032320839 889771906 517675226 250605103 395633515 946364284 573244004 359387232 408766927 362160578 405128546 57753275 68385634 203423909 1028343307 551136576 974671139 709612950 412020995 378191175 106174651 985313032 387854171 397292274 27393387 302897136 93271274 440080680 48377518 464984406 978328595 901885575 10029501 757265267 953461457 295079308 961028508 768320209 897757855 178336983 624322186 149769623 138961082 794592191 785679476 467502413 122713886 921503474 791467749 531455252 282101675 513698216 439800838 575096439 111870079 701303860 1060154619 484020139 403636337 385113743 530513358 612460682 906641579 849942112 617638596 283433524 400969889 355731021 372659593 270277582 731752096 576343631 573221341 838098887 765148592 1069151818 430952333 909497435 660554705 718690883 208388240 947127141 987396245 147199588 813817668 332553550 937532041 307694388 1044245694 56547142 546529076 54261785 1034626919 1017590416 552961660 460810660 210091121 754531963 539273544 1068208014 592881470 62459671 580363121 773179579 415250705 846616949 608792047 1067215642 924270344 348310307 275573879 252320274 179305282 605543498 253321804 1002418104 480086088 876317598 61903381 238048705 860236465 16660899 269607533 510697166 734735844 740149236 716314108 748088249 448969320 957101616 533078986 31069453 466038442 987175607 35369209 351639053 834437402 905854926 61259805 670975230 846765139 237029247 615274809 71011679 865019123 144148392 75532198 968851178 804897412 434879486 357277213 1006349579 1012708640 739520703 155961375 695329506 450994337 424121495 739873298 531916636 870691796 60594338 1040809959 456099956 775337587 159111076 970161238 334087277 834106020 406686261 894571196 378059131 835962656 1024720218 386159036 718118707 423738910 924507462 82694333 915549655 799689440 375292206 657301872 98274681 160673605 582754410 217159415 626786855 40442967 867585720 487673300 655828320 815572736 56946801 760119221 912943274 851944192 495387306 702413731 1070713669 827654403 203176816 449378552 240461829 30977560 896833036 29669759 737258644 908260708 396542731 134745109 946210506 793466375 544001169 259124604 717949536 529601151 457051840 419142345 737727628 1010547603 502849967 346827766 737885502 537407161 10971009 501728390 390789678 68180092 203859438 206128012 318970495 180590234 295238088 616916257 836128669 149621786 736832693 567691135 604729962 291396340 1048847142 217440330 455684450 1046903376 916682800 16719974 2431273 72661136 102434618 364916667 808503045 722302601 773976153 681442233 433979470 764713424 925794591 932295960 648531950 502094531 245348388 640560036 291286126 577839424 901039152 10741724 861554516 735806298 410035898 361907613 222328411 1030429646 1002423558 430985172 318034713 636960844 20133104 611507844 390338229 42636725 135137359 304531862 170347054 118733187 17929582 717774885 108385729 74576095 95395932 89506630 903347128 983925638 148365913 224542213 1000117932 695938675 330602454 150608823 688646254 218105968 12445358 607312754 169345324 315431546 297471720 562182171 810438042 25471939 39690508 1029428828 9600055 613980203 528596874 549682324 808005669 741149719 269054349 102458965 874936199 285616041 101583591 80081678 621668567 603169978 456623003 567508149 272831315 686907687 704470029 378736121 530258116 448380546 484968149 687826815 445029315 264565943 225869113 653570544 735136384 99759702 684086041 873246376 39238694 878913128 340855066 535968279 744026445 58774787 29160948 616831665 611561961 271189452 82140191 877985782 509200537 692406402 345182729 822340098 754623096 51355624 644885401 16567093 664468616 208801923 1044929663 516031819 535313588 865011903 272540499 919563107 290961828 925158472 343901214 346232932 807815684 994885971 341834737 218351020 463386868 699515798 469558109 221493708 637316302 482691064 895911261 622262169 271414790 710326636 454234975 180107708 233637537 196185954 114898083 108687613 1031138143 1022229547 720423951 819493247 856809248 162071351 287872244 128948580 908228641 853348060 130156120 21966882 1068030301 257055537 521589448 821730153 363240259 492546301 276800546 954548907 1015125743 339578910 87489717 799646568 418340904 298281463 45066973 968043482 236824634 346368769 831316553 924619899 564635008 223218898 14957600 575821817 529881748 703207769 277629450 748860432 251819311 546237721 464171100 785726408 977617925 303718512 824506106 530775432 894820757 588440304 712272313 784138290 908215497 953245135 645917335 107916684 368336000 421227163 815327987 233482984 569340832 104902470 932722680 340085791 628416148 69878820 42223040 402714961 758647442 872088208 33434778 179201820 571117141 844740897 385445330 746259019 1019096404 72757156 1014493242 412497938 255534425 61758481 515369666 958823755 8592462 231352370 884067181 362124005 912738914 738992533 985976600 832200447 65176710 471423741 731648069 375020407 38351969 1019415707 1014968182 213459000 257016461 572350070 165667840 398900218 19945387 466587444 824153000 227798067 41141761 707906819 1001377312 996814478 334634047 599193522 439115730 776087284 579141073 890332930 1058981682 1050928310 186859247 954934648 691922981 598078772 91172271 470887398 140546085 791279425 944794645 922453301 36456359 836292853 911533362 315353544 391594936 331432385 708473633 831199413 743228394 348998739 717442472 522725772 553900592 564056351 754269810 214801501 998857348 748968600 584257125 332183535 108511213 375590959 476710873 137490383 629805270 487214378 500064306 141772763 439604643 139133748 729844899 21833633 652550547 996664628 643555959 660209300 960605024 268916678 200502544 343048935 329607243 527970680 24133967 159273483 447902098 265762300 260226004 699164931 221117101 770461188 912509752 545808418 938561646 570073650 700366415 61025265 161050754 779300317 740285235 925262333 769041582 950672630 588862783 527476698 578614910 8441498 219449810 637564533 959253492 90444649 467790964 906505137 472165774 819834699 157696303 845596798 1017979511 572574561 631577689 852097568 280769089 805927590 837144511 314449265 229102958 200655812 655516359 577839634 1059178720 1018306884 994299379 348682759 533653213 143528273 1004331120 985279839 529113517 489587349 872089483 593665417 1041937825 221800588 14441409 262666323 891827891 820854386 85828454 710260793 1003770309 493316010 28753773 361257517 218474038 125516156 1021035889 501117000 918968374 560171006 674525615 257831482 254850410 985662718 889928325 651367680 703676921 1054711304 131880486 25662837 297189789 414127743 869876663 230440793 605353854 118133564 159298505 584775253 821244259 969773403 406515146 14891738 600614815 113224274 812085757 596943905 397446342 224658836 128313726 667097463 308471888 923156793 252830870 928907754 361004103 159626953 774930672 736265097 914147334 914887532 943591016 171808270 1030576708 125880735 1008105234 404015275 57525437 324766043 1070680278 766234116 427315420 741869137 703749869 204063230 245605886 14097585 1050011563 280002190 491236016 299091286 705526658 663704120 816793555 682725593 150809371 162820379 863268873 455785109 893067361 464522420 900504531 813127756 438089876 747651781 566509701 881963284 342178961 612323510 72714318 288838369 679624752 438326545 239786279 401420905 322879988 521478049 265879840 331334763 1059710152 527525798 701361473 843370237 380517943 383367918 724051455 25088656 651368886 345641489 388706378 678618805 336005813 835733143 951480948 451976579 415317509 749729402 83353479 941175476 595992341 730392883 292906584 485677063 214547304 603774988 538673884 562795976 257846037 982138000 921301159 613278360 183733355 1067524395 348675906 948074601 861928551 174370744 198095691 1049743282 758813377 254423740 1028123499 655578540 101016156 653517997 70563915 598172516 971184402 79092935 947016000 222071559 847227898 883047239 543872865 990745430 197095842 559143205 643334807 863835808 115607871 408696488 791676803 208121619 147706497 711689688 989194618 786978698 108210722 116885215 513570534 393056997 862935938 625104426 1020967358 416533354 168242878 230682228 1014872294 961771706 578592587 1046515524 371190752 418330425 308972967 598692179 1073396683 922603747 821573627 496037682 332834991 1047110506 857960700 728501280 881962896 318784757 968561454 114760507 732114414 660332785 932378390 281155866 220352615 997213144 218225132 176116198 823585421 4579289 191606197 257748553 394995211 411793415 737886204 389151367 72012755 675843538 581494305 647947046 890024049 581485502 415725815 931603875 598479189 781658789 463440408 721757879 1050887790 651774359 575364240 425495641 44758252 562900211 554317369 178917691 103190284 719854890 545274810 698976283 903991468 315112792 693969753 155563727 1017566598 631283901 633588183 614741819 272930474 189369926 272188121 543295012 466386213 128487641 384713250 664073848 539877093 727015294 653585835 562572921 499492950 390627771 68325444 84548348 37576537 300232255 263376088 424196496 1049254103 259676652 924938684 963141811 187675986 105608169 1000610306 640263509 780081040 749206296 724866275 599454362 473683112 929480773 773903861 20968339 369712963 16104887 407276085 983399656 285069764 14092136 96302879 933590944 505427740 371865787 938477072 663964983 516138215 541254908 620113009 336512560 301326596 83674654 223826382 575265359 275093682 167558256 814794513 789054335 42032805 437552931 257592849 920369342 812950154 241637853 805930888 447897463 834065703 998642059 1049145397 908497387 638727253 23206607 1073197768 383680329 148877144 949519490 879644814 5009024 297900244 719665279 951726598 426248453 906570160 414885670 29900628 888450916 152685895 69010957 858406484 746484625 170215414 784721103 832736041 473517954 86708565 1005477606 988967162 789335508 87198936 637395614 608562995 576699224 884995917 633580566 733771796 299836633 719243289 340982165 93215609 597648737 170318842 346936794 736193947 706771985 331188168 731271314 417081607 887928056 97441843 978088646 334866343 588954849 818723502 434425241 302775397 894307232 137473051 866966046 416575853 571702606 1046243965 372820333 825511647 95887787 761515743 517734387 939372497 557040373 1018484133 585545621 489524118 93064569 374311137 801650402 355265468 483653725 543059995 533743 484095942 323612281 88473741 11565824 967012801 864954978 764287722 448303622 422805089 641916397 417678659 1064319647 622137809 329841196 641030165 686960723 679813428 247515682 53206215 728175904 604166629 1072432493 34636724 543190111 390002076 68185004 324337134 26542454 78425752 503531833 731838778 945595424 29149854 309219277 500274336 838178402 1015797166 737545671 7111488 325551467 650894891 761349116 147519880 132983992 270984172 420915129 982378477 122265032 393736225 380457499 34505696 263259518 1023668002 156070789 898843450 1001176117 445824947 833453439 331256652 417485851 911421479 838200293 796955428 495019568 677928118 52242690 517903818 550187310 390429327 652614061 358114817 739759946 339391171 582118072 599278618 756346683 104453843 529704483 974034542 710745349 201696779 506554825 836027895 325034414 208748526 786404302 861762620 664796260 300550703 314192027 484150293 472598800 513742670 684203074 939780149 961257538 351942004 73666608 876608787 431299422 904256786 427326127 70597208 280082630 192052068 24551472 741040270 14183779 1051094344 3627079 595248471 910496301 1055436301 1057617069 893635856 395665706 939158867 475138295 904857403 929740658 749201557 426370238 550526436 203623930 888663927 120696132 381669854 752808884 531164653 632856999 887593637 1016619152 589491313 726878031 181934042 958668160 457990492 76473791 636710812 793001339 687550260 955274563 988836623 962488636 892889929 906452310 590813674 697448942 348039908 31772347 675597462 18910734 639347431 218277663 124511972 948985782 490283249 438815282 503073368 925802757 516850822 802956512 943295634 662305790 82773530 796700908 179990182 801042545 1055930965 623505841 478795691 715541483 162551822 428562387 933566600 778856787 521608670 145085798 236019091 811345683 920985568 577101642 408182960 748623667 1004848239 102603382 858428760 192603780 871975302 890613907 787606162 839383709 157243120 794634778 237228153 926569527 133973342 346124657 535693908 483029402 735704250 1007673197 327184533 346875256 726587766 740127105 613475813 385531856 668345754 660858938 739958537 607327022 845152251 972053072 591013749 183107464 602004059 864367672 317673113 942277779 909717648 946364504 296154435 228829500 433355178 653899315 26660436 855055821 699022265 647389639 612530649 820760884 767449821 655555130 362915288 100221709 828427050 649708334 51359108 78865848 101752198 467857838 920868146 1052340632 495924491 764895121 824888361 681003360 99583211 11734865 777489225 961365599 688404253 782310383 812349751 1071334097 498590157 152624215 57545134 772895914 250472857 767523099 716702937 645437076 667769437 503230023 363188642 34865725 1029050979 959818388 652338323 128909582 920239352 725155622 400553963 668840432 992073647 802435067 735083304 937086194 207958375 332597086 518715732 534200040 171652737 552210599 770868728 537111861 77296248 969902904 266886341 24178676 316701632 935004934 38062808 862863769 627508850 869680866 1059397705 718476532 749526809 17052087 548159184 948938904 308000539 217899986 772502331 364353220 150571007 57668132 292353753 576976831 875865244 801319869 924929722 573915555 982359399 468991592 62659071 854988278 422275836 624299268 327051628 207026461 215869117 441421772 251335148 612140370 939980194 653979698 806398005 451557001 283004122 485384583 828336671 746462262 244378005 796326345 558920459 1052694779 399792082 963775383 398903850 591749782 488122 551839810 184100510 83433260 753268704 567828856 312645659 1032120309 279603889 744803465 382695706 322543332 638284587 848887184 606253354 786346637 588698021 243708614 263050154 312196171 914319205 2786770 704500294 244128435 190485298 664250931 729652807 448643729 855163059 463369038 402224287 268324817 71908021 43627189 716466342 1051740110 808373775 67784115 858706268 279536019 680051085 1006861398 319127940 85607210 454765633 767446213 990525414 850420547 374275311 724233403 464148213 491636352 955429651 943604592 637690443 474482193 670016049 749561413 62163348 802259019 828592740 294171333 983628444 329357837 249284217 863229578 998060900 808768300 226478625 267859586 248635514 753692292 76157695 872964107 760192208 581517470 99983659 692557926 438284922 403352997 109092580 290463896 639043021 690771968 937543662 44751116 973282641 1042804443 32788540 402523114 883007749 179847186 396353408 161628812 554708867 377570126 615206357 353335958 748258351 255566054 908779942 417884916 340587883 330106901 644588380 812255243 315645859 621407528 369068916 198194384 262056107 323686733 583067101 703083549 436744322 929358469 775956792 87967211 280793696 1059169071 1001733625 95905243 613483111 934300598 556979134 768776042 407259067 557867735 948791372 232781792 838457293 407370761 597325435 176391953 728718764 523440402 54647890 276322136 764062947 827974283 98672177 346582741 305580813 777663683 822104593 6487931 528369199 636382143 490949337 775714725 839569913 841912890 1037240593 784174530 203595704 173934091 849348148 837981758 756445413 125061748 498510387 4991619 909538334 809807758 251304307 613897349 1006496121 260117257 392544857 665961949 988990905 536340317 399365632 176065693 594270713 253247008 1040072997 209463775 357810044 38919461 394588765 938204613 314032188 135026498 735936247 326736122 930849445 194956076 953238913 1059428778 246230448 562531625 579944427 42715217 432658856 744366393 399696139 651061242 702540398 285003300 967996221 297033606 183348038 407345582 220885746 591958898 222623336 169235574 972954192 4522130 308933890 658882846 943063009 388204043 369050137 586805980 753698475 876822334 683509819 125197928 578070658 583883748 1013011988 736853777 33423917 452237008 377720993 962754947 91758520 292071712 227078880 69445687 398235810 839560213 167565013 114898503 724014748 403713166 1072497395 874165773 974197529 961330313 597961824 801556228 14653905 85421698 314301028 135132968 73450082 478494779 672104076 498578427 485949890 1012641024 224463444 1020514207 834101554 986515272 354520232 145344105 661563534 215592173 453412462 590459200 478382812 991816709 762774967 857378281 601463420 618251251 1018680237 674212253 682347835 95704812 1029303441 494026673 161075614 778509074 238933273 747413236 840337155 576049925 150731510 456242475 159280903 371636690 229495055 659812600 217651628 678442077 815657966 864402112 503838596 424577265 253217742 219460737 118811601 981946023 710845486 994507970 1071804534 794424039 146399661 1042981116 479783614 611287426 658456931 758061638 569228794 780239566 592536013 338065552 106139979 836483748 829416913 1033180642 819829297 602259725 5007431 279180601 915770136 446311971 574004675 620344711 857292952 637535326 589028484 252185423 894951934 164053933 439100388 719699178 333968031 936857227 872490426 376507869 699691919 87017317 624196814 911033219 737339270 1001483838 116003072 544521119 591436487 120315153 1072657920 823164920 914927820 801845001 988628753 518124664 467683405 759273498 1056510005 791022354 633681765 192332599 529053737 674433414 511960752 39165116 126991218 534824042 385180868 520993498 434778812 67801750 342529493 127340763 750720674 829899477 842944772 591648124 214559619 388706199 527415884 1024683863 2199639 555640383 550544131 937231131 748529385 305202754 642903436 74402220 757684220 748008461 1016049976 436707480 153907974 859501604 201893935 271093241 588475880 79776441 675019222 41306096 107357997 870680972 977026068 166171409 1023655507 493256747 159027732 797589745 416154434 89143048 935925851 595098352 990923430 932255115 767435878 1053769969 11209824 315913637 826018617 382713572 563963840 92462304 360640232 667759267 500904909 308406191 642508395 643177339 173613648 916919806 598415790 989466701 150863548 493526082 911967437 678587548 565709703 661351462 802968921 412721896 577485080 946952640 594155860 271314479 129496077 881025333 1051361043 442048417 637644632 502328435 1056494681 1059828425 942567624 90918032 740816228 214963533 226491212 563045387 437900915 679699669 1031395783 845211034 235076302 714056675 95355825 150245253 1014046464 23027581 523802130 472481282 396392598 134289267 797838452 489075123 866781144 222616124 679956198 471232888 264275390 172647839 70282737 867827461 899635582 582672328 313839108 801725056 347636476 650485129 761085762 10173161 420113098 677887818 262781670 684132064 57441242 521036234 452774814 97603002 227668234 635673690 716315106 403210248 428267464 918377067 26781127 330451200 1063708521 534794809 655172090 287121644 382038145 698547080 551879123 507868003 509155527 987871847 822664190 221789683 185836009 1050117125 602518988 131819813 576762985 925306483 150541975 922381732 741232980 634634568 369030046 264607682 543695710 76499881 274016106 719148268 69288082 330543032 399789231 294969053 977962654 247345233 60154987 13935895 849055801 28149959 942144870 812318686 82170638 155774814 555272129 469530839 719339402 428233103 692606664 891823266 148789463 217799536 44240755 622522079 544984059 259757338 1011297251 489140721 547175204 997969463 416381879 515651616 698729850 975516789 837862591 185806707 59792300 170416866 133057046 794345987 675458999 544835204 250533696 154454039 484121205 1071678128 429074180 106190628 608903744 50916257 187087043 93874879 89144171 257016099 51393875 221916643 299742262 312560723 276195657 759047270 733423064 149869567 312823208 699739167 705228832 236507344 759641939 579749794 333406764 752723558 1032071220 518618052 652066670 891971070 88608630 979054952 249431403 455109484 11830527 312009276 231362615 964111515 731834756 327887881 746902632 73135909 39961126 600499104 869290561 937777887 771341331 996728946 2397977 1007744700 752756194 446740938 621747588 545916386 522354388 180835103 459775120 689127542 75832779 554352099 1067195166 118210507 218216611 378908551 359434876 794933715 199495821 505835458 795640572 733399112 488142021 72922254 546617667 873869150 549794837 956263109 42413782 168703504 47097838 424085431 716601323 589592364 438925281 939772898 952667401 597349608 379385702 838188530 431211085 707398568 876333639 675842735 280592085 906331291 784204880 880100659 358693450 849170745 757428506 309571488 633332090 1064661120 414243538 348744748 213561959 518108099 100931267 1065334914 413221183 256795815 816612732 205257330 658123677 802525225 965243239 835120813 385238536 235414445 230852019 697443548 1034506085 202838140 161049736 873944931 50936868 688132286 14851218 404948898 362845431 557353715 1028496554 781661257 478840195 630887736 639239779 301069809 5705440 228058698 514556925 350605993 301410782 208542138 534291310 474787434 680373817 363978964 437247007 144536532 153569959 223925620 947001207 593819753 716345451 914139929 105256330 135947902 303596871 161198053 559278415 4949498 166498027 772992290 158746571 338493769 834791062 1022697451 910936974 714777715 947248382 51124515 922290951 68195856 691066515 687417996 365324722 958138335 638426198 1031453500 632958577 403243379 540530344 1062384260 147158474 746317191 634946651 656534290 207100995 14486592 567941597 469862910 385993834 435500589 576780713 732263496 658724543 707493209 1025022261 527429427 804427286 766789357 922489030 19228904 990910323 971988173 837206130 578070051 41267226 812279466 742029451 438736452 735096654 913181928 1038041221 482929256 460517413 898146583 631600002 944346036 102691189 343180007 919001787 1072726457 558749186 94815502 292418799 62375034 554538650 230788520 380216362 723484280 463391208 771471654 370081161 442087737 608549323 976485763 624968279 368848192 119009037 58729830 1067073051 263580014 139842626 60798028 698069100 297507989 616716760 453669815 258473929 1021921616 738124530 534426643 24354382 465263033 126374677 690592652 367589688 96258023 248057827 866470508 705971735 1031217520 614188850 1062902809 537838648 757377871 546301187 1059082101 321439991 601618246 463915671 488908055 686342679 374785357 364168722 280507406 344325917 427953658 125622776 730214897 582370771 226521603 401342012 846815930 535469671 510398001 94361442 960026952 639529238 283196415 68297011 1038700197 370744107 582025829 421468515 243672468 774467769 25377594 308949401 805202370 1027978941 309132180 783543880 402061122 1003611412 317773694 835455209 126656369 274215712 379213964 748475339 492623740 346520680 212599381 947749351 656676041 597826247 852699988 197953362 1070455652 395262123 763534849 1050352986 78812970 200156700 795830682 508777261 1004690669 775304491 362833804 866320916 441061940 250653473 78287071 682448127 178912592 687049617 726251883 977281612 572396814 77680498 218618304 1054488017 1025935283 348226349 874940116 162004512 119342057 498800307 678892699 873358660 437328627 967735534 808884409 336578647 175479271 878275376 909275550 517197320 54004570 693527463 233781213 443905026 19357457 839554562 909007154 23547316 726488505 787203523 28278637 69765272 910456276 316659983 662597853 718551936 395208337 103119311 492754143 235646045 614328084 388334390 1050351168 1065387457 338378449 1021584516 17423513 955708676 367911364 674028079 82116141 162640389 780515127 41495012 213817516 533739921 734786711 114468735 114214692 644577406 907140330 677183462 739213402 62475733 418395332 19010021 227135117 553514528 574827175 759086152 338939714 653308248 367468776 866945628 998629185 600271514 1017655874 354154423 598897802 663447231 92885468 19012480 377029210 527594606 149157420 996189914 714275068 260502689 942587004 105982028 354638904 743343013 945694552 281672401 445386472 159132555 872920612 786371408 57669470 767895378 722728268 579944431 386025830 589757595 1058154437 1069662784 105989994 663816131 769325699 466054211 777502368 952542865 908986630 372979925 164655694 922523232 304248674 345767697 576389634 59672910 484020749 124703633 505803304 515243513 574377569 380878780 883489463 353616098 229003213 456965935 680871455 955411932 107750677 733940567 232946207 247471922 766988400 483388147 724565848 846452679 445909346 757131871 185329859 810167973 741953179 467598167 122279662 56651200 539282440 405718338 67567641 340346928 4393081 949865606 14279830 834016588 141969602 18596054 259407311 1013295283 1066323712 770167220 472683672 316573696 763513525 517016353 102523014 232003455 780587950 550150310 671906258 40704399 204734724 621523159 547060766 728900524 218599492 587106869 287706555 308782407 340775999 331253459 33206702 613968526 403903983 72201286 746418827 317188744 440862521 1047644405 849396137 773653414 859156076 643299916 613964318 855545281 1069442822 736014384 298774679 1028400677 319707181 421933910 182517236 744943140 197875226 411448988 559268378 42547983 711751886 511510341 879259759 957703038 976657462 85856929 26374713 271716400 1066676372 823642743 535174475 1056809683 256234718 366396397 372008282 517330090 709650372 1035839007 156324202 382157232 355125619 1055245370 463897755 327537330 107093894 31925086 622896747 797389789 513685827 52705301 722269420 295237696 321282880 610467844 825201323 116600454 762368319 1055466751 924383204 76107165 772636763 166303542 462642970 1050639277 258255679 169255924 999421637 269992525 977096066 134552318 80342494 43174098 582870791 393741767 428659176 879652609 271514468 309770966 711561648 461406004 112070453 144310256 730255369 411063787 696222287 528525645 344653908 844115728 116958144 924519893 121741230 190037340 375817185 271358862 182687355 413368473 480256622 421787129 112182934 39493132 285102236 490123334 587343942 888910464 644154963 1027814083 295294887 874276436 879962355 575934462 891797304 1059948918 678173595 258493396 340579834 905124512 354828738 811829335 647815927 989202274 503774798 183245954 897198973 591926326 873131375 666565580 396531379 408742008 886587594 419360600 356983211 654623819 919417728 332872165 823382576 513463475 128836292 745160318 1029222141 285037702 556649973 275806776 73555583 836071307 560586350 883546489 693415412 48406330 128186075 1026815566 70997127 109296539 708614229 818276223 129604130 1050084497 799642926 928757671 102886109 744171144 603318371 71457101 329986050 457889662 1026307345 472198909 629027507 488468131 491526039 741434044 204998726 297171890 42011633 25262703 254747562 964558998 371202252 845706600 436474260 188124470 50421765 672048687 280647334 140789364 821209640 573438215 685414359 455405476 946991210 181499925 220571310 62972371 374506841 368258552 268438916 146386805 962642867 807823122 932928559 640652150 713374527 417641248 743013563 887666779 912081629 14860791 184148389 981042519 87743293 773716611 788215067 20336805 620417713 987399877 448332095 83783319 479017938 207699601 804849274 674713637 75478525 848015795 689284953 749743090 891343900 275548888 835599403 572399758 1067689816 292487357 116992664 1010751841 967118269 329424431 530167745 769979941 549824924 473864360 1123395 135654538 453280382 207258349 402032632 885013366 638500687 525755914 683042983 493765095 988912154 612761733 56016366 162906353 1038134373 115661549 278009963 163290958 347983101 142934375 634554073 498760937 291654708 378023510 962333389 268353047 295775908 790398794 136427923 700290290 71657761 116970607 828649499 361997740 970610693 628514513 1016196875 742666470 526953973 1051777778 662941031 121305841 1053784244 627129416 418648606 697047081 753310085 949301893 739154428 625676687 434649217 940923314 524724779 1046633500 30804117 17245185 183967219 498929722 11444078 14394205 596909488 15411881 399912512 1057562682 292494916 287789884 251110477 817167412 963699330 448388844 697189818 113181315 611674349 66030315 188727658 531769122 123503455 678983203 968019298 386597954 494976048 222743825 243603650 36489469 25236389 382411889 521794965 18677516 936845096 368110550 851395542 117669653 595879302 53369312 149377012 760812977 394263848 451428466 225391076 1037081586 333644948 819707379 798201060 69726884 362829581 892270933 883705537 364659320 211794763 916549732 604301001 504646343 573438576 1024661453 127302366 174483176 1067923433 394887815 906088382 116436648 641631284 773626886 102237951 505392147 861015554 632941368 258837022 513678639 292061451 1052072708 548685217 1039428116 415713437 756272175 737669254 552214304 388920616 677766739 762133150 342409344 887833517 587435055 734126244 1033626731 108076044 998777358 712931333 288233586 375057639 291400898 853911329 94212525 623312097 901905457 82400760 294773693 29878568 978355638 291216036 358125178 910515321 1040590888 203857049 648603598 840438294 173838905 249604623 347884042 501455826 143650100 577105279 771429159 260894859 346768566 231141441 670389265 382041383 845544237 455098380 1062888781 365883344 1038286127 710651854 192664160 954193597 337734257 901000791 349696633 955978656 3780980 1004504850 200647951 868068898 793682845 226968264 286878252 119295455 459603360 1070752457 462059770 727016186 1022888341 619735515 182774214 151520687 1049317852 737038859 710122097 654563249 848470971 878752407 261328283 818993215 999514218 380105673 960799851 797089502 793423833 542971614 1014931546 294115385 1039526088 223309067 296399931 808798856 274504082 475063130 781061291 805434871 235482515 132998206 850360909 467336864 963892280 412941318 745852170 25879010 197106002 137328544 714806390 1039007115 1056183152 443486473 865437289 379157208 1014692548 416468940 242818235 900547520 460191579 572764091 592141364 681015271 807509085 316099342 859599431 1055304850 883810600 732202295 33008101 9280703 780169388 194720873 776188957 18673415 64100182 887347953 1052927693 885049911 1050698647 117040593 892644033 610584167 752356071 314293816 1005682611 648660930 673185190 644052572 818392375 539336099 501308737 547325882 311748483 608304452 686372098 766608043 681039422 973391863 92768600 36976763 148400288 931794576 841647285 800730955 292061078 981731567 1065057462 559291139 755392963 497728888 89589741 98744461 729835040 453615720 1027377202 78425664 75699389 566188390 1066215491 753843186 232261449 422699515 326140991 424216781 996671640 1056254722 651862891 224991251 124157547 554879504 1019264977 932912451 1016832768 302046240 773815862 3877204 87002488 147454927 992262859 583464704 463240798 955076834 752064792 507822914 155337670 611657636 302061295 736687096 347014831 744637363 863954080 723217993 943124792 120335251 541949474 1025293599 359092002 412023695 935957985 178261191 927731459 9626719 836224550 921346688 463375016 867438530 197674475 368265885 928534996 604140611 334394796 274197260 360547795 738743874 320158497 517969481 176392600 365884665 448624316 644230769 536054026 1013877560 927719973 835450864 396647772 1027869787 649047738 471376115 1035698626 672189394 376939832 579322748 41351388 202897495 113757155 1012703739 160899645 536291697 358171426 1042882867 603374620 872451067 575560765 283533521 83785450 399120701 123744720 191788428 836351967 38373313 271726211 5131524 285207928 542983362 1762224 725981783 510648242 843396203 690715930 557591558 169668153 165920889 569974551 578661162 212993397 736489736 398067092 500081865 361931695 264119878 222369647 317928214 204331998 1054936336 846330065 641464853 673713045 787297860 276293594 878473545 30320048 932632912 868215845 634392516 953663462 570277525 338080589 679911659 652465373 139524758 70373396 1039894898 991187386 870501651 700441347 161556227 756653183 266661785 485124767 185277335 717801797 640955220 831299074 729450955 665246074 850761812 583684881 693322799 69314263 916385574 93931319 783840581 874038248 890377182 982970249 1056349843 309734017 942725602 223653627 498573253 556423265 192160801 224446012 76011623 630372061 648842361 172753805 319591336 928187592 72134065 452667330 672245833 74803923 132514398 1008508781 229032901 595620468 83487991 383215253 129359063 359611139 919194530 729386637 639171010 416999168 176971260 702734655 46256001 83792324 763437130 502706631 523967298 28477026 720030879 841894043 1010299385 178056871 748077593 448842323 469169603 957414326 556919087 546072706 1014932089 773372310 1011547408 473796782 766397995 973014766 400899271 360376333 136553866 789036958 920268888 1025732113 604378450 437350343 33303497 190351783 379677262 437275667 540775279 839923976 552888597 282638466 185422163 315546493 779200454 56896352 159249309 323682833 729255223 9587615 911203763 978982524 490403343 1054055058 556326685 117373481 779497597 629587531 200353613 671327524 6916216 905488642 699352168 517640857 435849165 159765956 735567378 525070041 712763093 95738136 931657782 861201874 506494419 545230570 484586226 1027111566 945330189 40415914 907137560 678699520 545940149 614098854 41596914 1030163678 641163351 228951342 720773457 461317754 174511575 148491835 854609155 23539316 610105274 284677512 155872760 856493869 983380597 1048507178 571528837 536971038 473631860 953227673 713228727 853706422 418537598 508064934 622052512 150609090 758376173 26326824 314995470 525152752 272935083 838193956 665442382 722440611 828879107 61548552 148052739 371057369 177852802 596926900 221855918 9348862 43314311 665692597 751036548 717687941 915333196 509445501 939476615 254322269 258722902 252797422 2540531 707430550 435473628 710089001 647406023 681265851 1011095180 867541273 14249331 621464247 741432070 876674391 593436507 899859092 498507526 1017526354 586025161 1035600328 264428841 1012774891 702480829 171901810 191984289 501276207 837855944 585891604 211849579 163358469 906912352 236722916 1060428117 298087012 877749645 210858607 528224408 688183996 731375609 854999551 307647713 749241262 1042312656 372683544 145107647 541346804 848601956 338993767 792306085 947308915 825554821 339098011 577772228 297762004 677846401 761465749 850717065 453468526 590221076 886367726 445521147 761402918 1062096575 965743595 749852540 807199681 566328504 1000583089 925182274 532840650 763245251 619853729 187904458 73258075 289365115 363828611 756433232 202989768 783921728 851924553 916214440 842926170 232530470 877595241 1055727092 511882161 73141757 827269882 241774759 635440378 548984399 679383306 1036700173 699989968 154376061 901413378 556035086 128730091 254038999 809688646 196796527 84296242 726954403 921098294 618304658 793785038 1001141671 350776187 1026540041 911115625 492575974 17997800 218847807 146120362 24785155 486069252 935117101 42450670 841019262 979935389 834968182 819764493 689825639 591701418 1045894894 1062969237 740280405 309293980 482457596 366624954 115440407 155028105 78812556 1010916700 931396857 1059697057 137577373 815526589 523543616 561858456 389615845 91596696 402918269 401499580 456408547 797082715 112803485 582619355 259370046 607772200 151251017 117588092 901045364 872141137 998127210 558928333 952094698 743289145 745631511 580468788 947493106 226411491 745189388 130890477 951605259 170770246 937160319 1070134096 406536242 497441617 249103726 1042055941 568966495 380010512 925690168 243275385 642504915 116788586 39695504 548030168 866261009 973878121 824477987 674407440 865077786 117607775 1014676652 834396250 666298946 461456771 899351725 551569864 700525454 206307427 780921119 172506010 96218364 621894789 819204908 910626253 107711854 1033711477 497565280 228594663 29551380 250606215 712482280 230616977 526197848 374488671 80661400 363651159 11793526 232790789 155755696 482985966 728398967 639434914 443732385 719135169 1006605739 998291391 30819733 891585317 1026178870 495960797 854406189 56161897 921747700 671161628 630675287 465615682 59383505 408536235 626931527 571543551 260424254 514356584 571073244 1029172889 980192327 415991377 328205165 370263914 956012862 904836966 844203318 95998699 258554810 580116357 111122530 22608192 982800177 99473236 145552642 41569307 76050294 496182903 286196930 886529717 239647684 94972117 1013832727 681282398 736278626 1008206998 515688695 1050262990 142054845 529739104 112470780 839065477 768601533 1046494345 227835451 274878383 964517085 977809254 964440144 427857877 160854271 1001980916 830627435 160558831 18832211 1048688583 526886178 816749763 111899729 889675427 373799276 19022316 452121848 735849970 256878223 749009119 265666112 285628305 463469507 474776516 1034071944 336279767 248671864 53254762 980411168 71515661 243285773 646013623 1015253133 553112820 105958029 399517850 848613169 948923699 110165250 933788746 615163383 232392349 1055864191 873924142 341829096 338833006 940661823 171639732 388412085 580763587 633500099 742382450 654249667 443534705 130761323 268128425 357929660 170856294 505893083 201372332 160547815 454421297 1004343703 1022145495 745330658 866915324 727021577 1009566101 1016071211 145099012 175547345 157159463 97789052 695721122 434756069 218937338 655228124 484309057 445355923 977871442 506058055 442137414 610535987 1061297132 946657883 351392430 434847037 736594951 191752782 197734564 567727107 518829951 646454616 836281422 831300018 1036203871 162666409 827718278 143110028 728477451 850045512 44339771 63192745 580657607 785532273 984027442 478083207 726299729 951479530 183583585 838074016 226323871 680801 22445438 430207246 1052930157 821010321 497197016 344515702 891697116 1003175056 832647763 76467440 933468112 323533639 558654910 414873805 864475680 251507104 595730558 934320638 892481189 782506524 840280899 116634467 142599878 327741641 869881136 523248390 137883180 744228827 1018653160 457245382 103406066 186592509 130437538 636504347 1038356947 11713297 514305507 187049395 422924814 895650448 293298171 781507307 89233257 837066452 753994474 626977236 909129442 118188303 132491867 845576912 445221399 210959917 826720875 996886958 69767835 241181873 499750643 181580833 136387692 36516242 751366940 51573621 19498321 762505844 840453168 250880323 75014720 849431471 7131907 486677752 553593434 856863050 534882932 805926498 466328460 330361198 767368520 784875558 927234708 387521386 745691461 343021055 551119150 122514967 1049980708 806807644 945937547 356954820 418081815 954327502 547782887 760699238 887378350 535892229 286205097 119761854 66341872 326843611 944310907 128898504 316179769 288372916 855755203 21282360 956799182 362429399 970316003 774167817 117127096 784903691 892583839 588513570 786847455 665795371 729728632 306445719 964400738 806446373 954458349 892841299 393815567 163271203 684594933 807609762 130126590 879814388 943120687 716421779 932457252 99601890 616434287 107347118 1011263082 976109886 86941488 644527526 457658685 693761518 597537336 1011171298 451974627 186415976 493676744 1042556327 558506323 950593742 1070105162 737991386 920576041 338624299 1045392888 669048659 708038759 427998165 771610576 646968148 732885835 643328366 401475501 233625975 654544476 331932540 910652646 910751092 553098866 954504727 515247952 642789848 797007786 941370175 1059976633 611312974 887330688 549979847 313675413 394100402 163252709 778347353 851996157 867856186 49414110 54160153 1046395563 235660402 516667014 922117621 974825536 121485601 924239981 983678199 553806181 475024577 370320892 968733468 380051457 945366554 758028604 838951141 671640367 358002356 243577983 1023116468 461896258 1013712001 430748123 319464543 811247701 788256742 836706276 375140066 910167690 481828935 1048205487 561236242 952871751 990025390 454224963 832407130 1042337646 765095805 837108975 256913397 944174147 94902911 649875252 51942551 92607175 966556231 67272190 249522126 862954507 768406699 727048158 533438191 966376912 723139221 260651229 1059092224 652824917 700603614 575961127 857842972 262615090 959616892 610171278 276162419 256525374 960008044 464813826 281731830 1014717881 168193378 1036515628 922840998 34597181 418325548 870853776 17993427 397133614 815384365 897767754 676091451 61141888 294521588 213597166 989147855 225865434 273248208 987266315 706774190 991886683 909970727 1005007384 713053630 511995364 658657866 404867029 38530328 749387824 916218615 773767111 984943397 1005373968 215957217 1050619430 59115141 787023233 412756948 109942299 551404350 1020105327 574981264 72752961 880760516 982431229 198073771 73584075 376783700 256796427 849428590 56494828 637253055 466770507 868348038 282406809 353232889 858354238 714436777 105009898 1055366434 173701235 693187490 408269288 650683766 56680888 816325493 386994435 293261 168508088 869541202 601316585 306969950 743622865 407459167 436718220 370828934 1023127676 976044789 21312767 924629554 748202612 800960461 311788749 491172654 930895117 818577238 1045212947 609100599 774818163 629344622 881012728 637759226 598295579 777675294 363172952 842735185 70350223 686686111 891387471 256834440 635886310 718058871 1047360225 70070130 303804352 155303958 206499221 844113900 484037921 894700110 900851574 897999391 497715256 848658954 774392875 63833447 76943103 945757640 949984130 443964659 368170504 336879823 946295042 857773455 157290774 138930419 563658918 1046857270 384393330 158198171 464594616 57789587 1020933437 571387870 813068090 195613540 1057147140 952160436 319610122 346755808 134587156 717053050 475227805 424178638 262769501 561465167 213813465 442029277 648526512 52814056 55257725 93684662 826486379 904157938 327729057 639003780 821293085 161737896 488265945 11223247 1031894578 1067231399 265359575 702449732 979725955 679194593 36833864 12840464 680897721 117176630 587038739 328177487 663852432 711995302 728838661 101112794 32946453 192707965 498368378 892688232 883787455 23970459 188190456 1018687746 894252954 394001565 946365970 53563184 871053438 376606410 518743231 1054652820 50956340 258739413 911287396 280671365 103800269 529398042 950722753 729526247 26953356 864936432 510318049 89184453 165129716 433424987 225655355 358706679 941270807 122189800 681125634 371918464 1061108771 167996403 266982812 749704286 573359298 978266114 826335750 363306250 318226761 353869377 265103846 259785581 746552571 635070608 389457664 191959914 635684428 978944014 558837079 929750702 673838818 359051833 949988439 986590093 1036351725 306896195 294436333 652786981 722456848 523886062 251409797 576507388 154466090 517974493 313537665 935143928 436585191 594052121 956871767 421597687 710326146 568263108 532179525 781842197 766711221 881111089 935125359 690024905 445275812 250437142 747700665 691110398 1017377825 581711998 367853510 121032660 163072624 141917214 1018435846 793214387 336983609 1065585144 901293491 543381176 410375806 244451819 1037118004 713223924 137833199 872751542 724280055 446640186 1000505405 701123373 981015358 645846549 847841816 616190429 379502384 728311557 834293959 468866208 643051219 640600697 180797096 793301643 385858204 151115811 534403690 865492290 145063091 1005072835 847970242 377527866 217166884 127163005 541742698 193220588 318778582 786780704 11802980 709582094 40542978 252529334 604944358 718026279 736780764 963000531 58665085 851885672 462052038 73490904 920042058 542097622 1023712598 129150937 952923995 908551342 1065555700 80357988 497792402 977463823 713428626 286761478 113966432 542125300 99922865 147343620 254748903 888180967 762526759 133318296 83805189 905910545 144834200 835752547 323156632 357219517 868815493 942263358 773965947 261461528 103528518 720842360 662426220 1010197957 919583735 672791616 223675750 524363362 922304604 266589046 895491436 639777651 159287072 664438233 662064418 68565128 699446755 808571382 782037332 576001020 523946076 725051491 482293078 206528601 43368826 1064256848 150953718 699331171 513873689 876168068 4869382 403305930 736665636 798903241 322117000 650526925 235223108 438055688 112589667 119885178 518069170 835886323 900633474 164436278 20588459 793910188 520276186 502326002 997952192 391517148 612383267 65120626 294379933 754964049 517518777 267121944 41512996 174028185 173969187 74390445 195224813 1041057460 173729794 291362047 546033372 551474257 607227300 97563494 554242234 843537681 390611812 90952877 518246046 378527210 815628753 7119140 273776506 58787241 964526998 959213533 98152483 601158906 773664720 445479711 332887574 905426647 918788143 423170637 254584829 804033562 490890907 472531371 200273105 1041683835 296256773 393194746 623609805 182913042 534676407 1071386855 1006059878 1044564540 886154953 732281133 185540648 314298233 189005786 424492615 726727740 988415445 476980444 104102843 415040063 320462788 127750040 22812520 277526938 143603678 305232615 736433046 504978241 736426266 586831268 736762601 1060636470 590916687 202351536 309544409 592624022 632094556 670580752 414055523 40912244 921394011 642433792 743155226 771125437 451625788 626253818 816329672 958281810 997749179 364998419 865839791 510086455 708361956 576061319 834850987 73349494 161429625 20684842 891871086 930425532 64762717 140598303 934157630 706872583 399076485 912572910 484385673 447011927 55216853 29016886 530334743 88551662 557506504 711382895 900061800 371158636 326744831 202363578 1047240508 87609478 499408731 880934337 354435954 216792538 1011621472 202303507 1022918306 1020343766 13692916 62003051 1028516253 883454104 729556975 989159527 898633337 468415941 343590225 567118359 384517580 200018045 380823708 446606720 262144785 745939770 591966921 703214285 878438149 1061164655 814828100 139154516 160028120 94992763 1014261059 704725039 878051399 140682852 7827755 464211081 1052624515 878457659 649348416 1029934579 948419439 931465391 1053582372 522448044 323926866 123105826 826624558 242437520 469832386 222956444 608125951 152602845 422710925 93085421 706906421 940232645 259838103 929150026 799831584 95099667 79210404 327856657 329401709 385930541 169580731 827746224 119265848 998587062 747814462 411405464 279134650 514343092 676652142 288454905 957518491 131622084 385331487 931192748 389200881 939600273 97221129 82431446 1048377391 189037979 247877227 648659834 7001599 979087623 199746731 566973358 958536628 442604381 451548093 796335429 352421984 884269970 506435846 170075774 296555470 117983467 573488840 492491317 308842935 543049339 542793554 1042289290 90450434 216027752 1073722330 266231856 316725790 429047271 40318273 917735437 902316454 786839083 453915890 816079428 874345679 493948762 387225056 183224039 839512621 935080315 330469820 575738676 498140714 417068921 618253849 777526719 17125208 449059205 495975530 18841161 38828693 559914136 783701128 15500423 268142110 643910151 319626384 493975565 787683599 926524722 48746916 928888099 41809797 18637238 262383319 856971272 760790213 742882326 827789917 802342873 901921598 592252216 210800873 90724334 555294004 99613636 37271758 694117607 1021482092 294350869 201567391 872970416 784881005 157090407 648715392 483649260 921291402 104599526 1030030731 39954379 145412759 426539493 114206415 576167183 334115879 822551066 66571962 240430611 1016532485 163029205 625012168 550494750 687846829 108792318 860406611 513144189 1029790717 407210754 652187463 1025441867 851227072 806981373 432813907 922684615 672666228 193581710 331343526 860809407 86302417 464567868 831071632 531599574 850506861 378917428 923054235 554694933 345484911 100487929 669032993 783968527 391325571 541459425 795057182 480183311 914472941 520207778 65244486 599396535 608822239 719387086 533239249 529078143 1036087702 505139875 45991865 599301237 544779229 668699280 596199635 921448930 427459707 613591049 771910507 211499148 25494817 673023576 316096844 367455147 390662460 448242448 975112331 889190561 918911689 892477381 727533985 579353854 45825518 488478462 325591379 556199650 778886740 714898687 261715465 839498283 384623586 636688069 13397643 986249625 456243411 203405915 916940145 99486795 594565547 710696392 995635780 1008319594 519069453 465436508 341571769 847263740 646652996 172248814 798085448 538344510 408500787 548801834 967345265 44166029 731242376 813931763 144151117 444924511 587065083 288466018 444112364 706365677 883556507 749277847 1009758059 769922976 401739697 709990949 909578918 578255562 271242692 377831785 137057629 486882266 893145749 970025261 175169432 1055680931 531815519 933919181 896771094 540949334 967723688 471870279 319410232 844187072 894495547 6989411 383571302 455856382 448717646 332995084 971973065 708677096 423600512 699439785 583841052 648088504 22917232 1006199049 958207321 878712225 538738868 821355265 842514079 541663377 569024768 975522281 246658568 99813320 1030056683 403009292 642436425 972905014 83277966 163185036 235918823 985163365 699399798 1002067151 549658097 196398142 52841788 279625225 673390846 396933773 832824287 91061438 567444930 1039664630 81941035 1056280585 395184138 372326352 452323720 661602733 441835406 1043674765 633960226 504180836 879134689 315530432 633751804 908412002 567566261 777372677 447724811 551173011 833333566 223684767 656341715 661345909 296933641 555310490 239012495 1002846057 819618165 307855332 484960215 1009348303 572401350 900535632 762181420 937159135 550619278 939260848 211424283 221678057 526721185 44127243 682717630 222929335 866594922 418094079 557030009 289405312 318053990 991165825 603637018 949386107 511314206 840608994 389894117 27995918 106109800 206875992 899258225 444192612 669958982 23271607 269960127 471092420 97355567 571013775 905877478 971066212 167642009 958947731 555226826 965171906 706861187 939531294 917000153 163198197 141746077 253198997 871284964 772953234 774455250 428012076 213885878 657820686 826108315 639801331 409374639 258442302 761807621 875080894 359314830 638273713 465118642 296186631 198750769 92008788 98596987 159022174 565756775 93979840 928849005 507178397 514105934 589975979 481385209 878879147 226068156 1047175553 1048607130 254526897 194838767 38831366 408670516 707880118 572500650 615188934 159893438 8925867 690338125 776672105 570208916 468288341 10945982 444276063 839916346 1050777537 684071639 954099432 803101632 2749007 881842494 1015544689 310532223 262628248 143702254 359882932 626107648 430100547 57831675 935521234 984784807 175506294 164636802 813155223 1020985965 639010929 19334540 820590965 488861051 956120565 646302382 894465522 842258403 1025593373 204493887 455308636 281628204 845845174 31802236 624449282 267431172 589204095 249749715 746969109 35142427 480809382 368052309 674274349 85527401 770749654 683840185 920234183 420642442 142216225 207435418 213455321 154805659 783764418 1063483738 501460231 278182741 969018696 819070813 556349024 607410164 233187154 906766887 750035321 682083179 851192085 439500668 958977215 312635255 273040331 425938598 573784148 624150416 139927449 498536157 419985452 802432899 846291478 841066581 94172346 277132863 251143851 415679005 663901070 621914971 816641346 67588088 48637577 260722871 559949713 509303399 45092582 585854734 914029365 530452925 248337123 965848370 754604929 200263874 998041333 781020030 29752943 1037383088 768708944 433636109 825519228 394114497 119390075 66265450 99014502 823258018 996983822 791877271 207985853 281291020 506356355 933317344 1054559284 64855190 678751314 714930229 648591797 942799057 669415730 998848304 1068167197 1016623374 883582756 992189743 481912529 893694576 776156392 249794975 478489132 476826233 743802790 560782689 749367315 308430388 147101436 683128306 411326106 748572830 789800558 733147971 1062099380 687412281 976915829 1040269081 732270187 451472139 861460252 226552872 439698364 22569881 587864483 360167220 392593547 862352374 252949421 1058105761 106549584 214577899 656651584 998940624 820496271 1032980017 949968081 1032071226 1052338482 889459326 419112388 565370596 771317984 482345338 396754131 569566388 181306310 455358624 389783594 632559097 538407654 617863603 231544951 572894331 161682126 726746776 905595420 308570546 65582386 869294057 212926945 116248244 199412126 564270410 1060400769 737365736 284665622 62362888 868955057 786713264 990333327 1031394135 9537061 179164724 406027640 814999070 343619846 149930095 426835274 909171064 965497242 353800517 244407993 495201877 919251556 621872004 956711998 1044323211 945382696 659759618 754450899 326829404 495817130 913437686 35162342 452291846 672916741 835038018 406885144 708789641 742408508 800230435 214125201 557485150 16026061 513946250 81354172 331231259 455611546 409173014 769593016 632275660 616922672 156856842 988754086 926854607 767966671 1008715488 57662138 821796335 1009775051 429198194 876987993 540518682 381567032 637815419 114768370 45897822 432882130 912450782 534855223 853164250 164417205 459233197 1034803643 582163602 872653897 858461097 19013526 103647139 328194654 868802130 973339148 388301377 905781525 841892333 158656267 78160041 176691912 548664241 504808104 1040845007 313062054 70340897 695940534 249076229 570219284 1067780476 1012303408 492167039 395685919 283240554 181671668 243050517 267994492 545271776 397912763 224186378 751336564 163169134 23584782 609976783 1033192483 37561533 973053147 722648202 333288935 624994577 122404653 639454797 123976329 959073415 1019920568 215985152 581047942 267576154 1042439403 118575673 942681686 587570013 382622037 278292945 771864137 832170616 872516882 47476592 927350136 687067515 802428058 528099437 497415053 64578053 451474339 948648387 708185675 99574799 503249997 763267371 110057277 915245849 667675447 348953797 443436992 491512259 100256351 509945405 1047654337 1020999929 751790377 964054773 36911402 234837468 326753214 476168672 258818337 554480265 680845066 399034817 667099252 261752045 441364738 724265528 1055113222 320447075 869063992 1013377443 885849244 370979082 862542750 702048665 263661672 494628964 341551408 12409079 444967118 648904830 9801572 836482867 585103811 969073787 553525817 1010903340 365645652 750438319 642169949 508056830 1035148505 274797052 168521346 895142594 740724526 883020420 475912384 1025099681 627772199 684200946 564436756 108733141 657289600 340435401 115354411 209576936 245613631 428117905 215939889 583509780 1010366690 300067376 501907988 962937359 707627643 57477066 789738049 80684051 285333210 855257276 256461470 924657915 383779820 691610018 910403064 878322893 482595000 1013420276 294819163 990979287 964012956 308166252 1051626956 230399818 667137909 392948744 1025773306 266018440 860766163 542844958 122620039 836622269 690198752 126842841 1015150474 485390428 359281440 612087155 119966382 323817341 802894440 70776010 380798317 259991313 1016983493 717786641 817793364 346227971 1022890560 814560398 723450863 783295605 625315045 213701113 351579078 1057808792 196291490 409762213 442517949 81716993 1033178937 976421259 751083994 483683532 955251988 985824889 519125420 694658381 996355037 27590029 894881191 12120518 224135549 760502946 649282236 872947417 1048503440 30019457 217323647 59333956 1028563743 749400846 175708034 164651441 143369331 954461728 383143810 1052443565 601581293 854620952 952838901 1035712796 571260394 657301502 266700286 158135653 439097374 447493526 850887531 1027344951 783725185 132832462 167051249 146772658 427618590 976503788 928345556 128320712 194803648 784630553 265127878 368515930 695378593 23943730 10285373 977846268 329342884 591748853 223490652 813414605 697364255 140897724 474906591 535597814 545900623 381211866 1011564323 407742122 50850631 411020509 162584293 931428101 823128899 793591428 622170420 580266033 296248086 38161326 257066791 7786213 672480251 356489867 245974262 594709128 450846372 85620286 693453934 347967884 757526808 400233851 339319277 23144413 563454292 955447125 922875076 637755404 750066099 175046662 851989344 1031142287 429946165 1065292981 14166699 1065137526 126810138 200063815 990999534 84659818 749210982 489332691 610212245 962586111 152115944 233134177 11081484 622805962 793779025 807402843 419793819 204307198 373117229 392700379 743313102 985437290 312186795 683702809 929228001 1052892296 925063279 1049230878 172790943 272286458 972174142 881298089 120603974 590952461 986175351 775861455 1055753157 971561044 16095255 104377791 63891129 78401249 701179660 20858838 828181487 157524805 556940244 370999571 687774630 945537906 518302203 404308436 874890742 114423534 668396498 841733571 514461527 225799059 292557916 754930902 818362920 258243510 498992988 825456584 847365486 521403248 296324100 97999185 839566366 821119061 453360031 942339502 244856883 375343708 390169648 514267410 648296697 701460205 148471878 638292466 408706741 905194633 195300799 918923514 320917994 822022526 502960220 157934061 912678533 493722766 529752594 563960628 863639291 131520088 776795666 193462651 247643751 166751665 527999153 66997352 292938962 922620000 185839345 511724429 128634443 466811062 278996195 745901611 233651507 938655755 319921642 610640734 1043643930 526866856 161485260 160044498 424316008 700261357 290772773 25671664 717761767 236101131 298897163 6558707 249193516 415892519 300867031 679933617 1025848816 341580341 808144267 358669251 881559066 428112950 726066363 544652190 672612324 171015541 479573101 300839296 488805315 326482246 1069891098 1020045285 457390543 917412257 331210129 897894739 529156780 1007508472 76973234 856982585 593860527 88689562 310852916 243560399 878904301 212100026 344492364 738764548 219675776 348003840 473850374 526429868 137895857 263587276 186403793 308435450 246279345 207343784 1042489290 388054250 572815319 883743108 102336063 1071644063 996573873 257521092 240638692 232108815 695833718 228138967 505049699 659448451 155280132 1025147571 115503355 197892996 532554819 165878183 425783480 614530023 1071298044 801718581 828837024 381779370 646133550 611811720 826329843 57601286 280019765 755975373 878616539 358929964 264371334 789290593 616766961 816040906 932221794 594954685 80492118 425525993 38943129 277242603 408198624 593798390 371187733 9224235 940917356 391508797 218822296 435608574 376940932 885678749 237613077 874296883 135914478 248109195 1041298127 681235848 530157000 1025548619 813640749 734100357 1056984317 934924672 448676874 467040695 1066857658 1055530497 946206026 1043081252 388182939 781579269 764307656 116728573 105708586 933117919 761034928 554422964 1025608320 1054813058 835004264 439658222 656775194 264423900 237597433 895565452 440443862 418121333 49794455 605360751 52029635 580291705 517005518 203544005 328023612 827566205 110327400 269608618 571452451 910245063 951392257 207706665 1056250611 652584313 930802472 777036961 344298824 712837590 712537561 522624986 597936519 133944090 280594695 147136374 23653714 1047881502 114089764 246103227 186239577 740286453 114033837 1035779583 806078599 579675580 390011041 153745584 409513998 65630339 918260950 990526803 105047790 143194084 81600444 1008634598 213264056 689489496 80792108 288884858 853733879 511389732 815439398 779753012 832000845 532551090 165977703 388186344 369372292 954598579 1037954351 538732443 199327684 407578279 65043487 456397443 761042432 332720634 905934173 430529226 1056187530 678911333 634133650 529105603 634332244 721335780 1047009640 203014652 449853927 373442638 654167411 305236968 818609010 567504058 419240125 435278358 697836706 157132812 89330148 838122353 794965202 444368797 474904823 300541977 31157204 131570008 127464054 731609774 94227453 770625810 461878129 469326831 334359198 991098015 658446825 610221485 375245673 39245331 913418246 944393916 896045987 202470916 396328124 740180292 714788834 396829959 893627883 350601782 1037147382 109589939 237277771 929201968 560463218 797768477 380342460 775824081 581428258 364936754 814443609 998052887 26827387 572747850 865995046 143166564 58313806 1003761600 346343206 886613642 141903107 929983748 2970861 790361317 945010859 362378337 750593674 352504604 353449365 680025269 774362750 803973720 151501672 738668513 641665334 555506051 1056388078 482322101 287135765 766716934 562034899 624955690 42573338 46553393 530798275 490485817 1007964842 1073036218 615123015 920927390 610938722 18441792 950476495 32872365 23246977 1019653560 293944242 745691307 654486481 534558157 817496744 112341592 856728721 918238112 4196142 954407503 596109907 394840156 106841149 894911536 761851619 1014972825 152284793 632202517 753111486 154653652 493449206 155727115 118603540 178863512 705896160 479278668 260786824 1001193398 567681910 273996821 807340661 29619547 1040094338 581819119 881732304 513365757 667634180 970954808 747694242 717750929 227181411 1050915209 613155555 162866030 454177693 495601834 232988857 1007160784 328546772 881919519 299175094 265551172 147037136 491287122 595938867 419077911 428912238 67203653 632495039 746045514 702205475 96337662 716701280 183283775 20846389 107300196 485629902 794004404 935851370 691097713 384436 1024262629 875260699 139563739 315513715 726883555 619336584 78532760 86500125 562338880 815935573 329826653 903381240 733641143 534087909 454231024 987391928 813496180 802421498 716707432 1044335817 350386687 185558508 80364142 540904089 976456952 864191680 356082721 374463068 258383759 992300579 124004145 933255961 451740598 534085950 873089875 613472443 67699054 928801303 168315602 389267881 14258858 787008477 84904336 1072062124 330793259 30118047 247151744 121489233 623792026 120844491 358844788 494556997 665729370 560144148 783273638 822012143 153322150 528729535 134640553 937176270 910858347 533231278 723273848 1036935415 928628395 1064348979 498933007 182300104 756151448 375426347 929194233 326446601 801832373 908424779 786524031 1022805024 784562453 55827389 898145844 254888899 218235254 215100412 279869835 26669948 1033802741 716713940 385442973 328340687 439588020 968501145 43665080 82283295 756295656 259948495 874481286 411405262 901417912 465080504 503525685 521525908 47134839 47036944 576886856 1002920009 81700107 864376578 148639828 1007159151 738245250 356007431 926503840 880071558 301693801 972299733 958880346 71798223 228581455 627325621 7750958 622729600 159744067 978141326 28062864 366555915 158200949 234328477 160386491 1072797114 649160325 270022167 252409282 182813871 981688429 348046782 978743677 294806082 797479493 670951015 321664061 859156576 220041571 777163780 55865680 481180376 460916046 61220657 725771583 324806660 353561102 290418855 296101041 197210360 938614228 200362359 199982053 94289477 649942294 283575431 696667693 103123846 301528205 562528385 315336636 772652788 747873317 839793176 370253863 125150947 371801660 373716225 797792887 591351942 84533689 766985956 274392602 914264053 1014458509 571192113 33152310 346818391 245435870 287814228 466596020 1003555395 736376344 403274922 597419853 1034677002 584944107 402496234 755814090 1071709780 1022107799 624274928 211404110 610768896 985761618 507800998 921841430 40335713 352369271 395127488 623277932 264136079 164584322 490070328 85322722 435399202 376732407 975878922 266492402 790196703 361007023 98491009 385286999 696352209 188617654 105735744 918171221 870243694 180141783 46821889 254775088 130312244 110264218 396650983 443087916 1050725900 1053260090 346915946 861643973 379608853 267146184 645250204 177929898 46881250 118729041 134888939 482635657 776331491 156934516 171713256 185210752 78877578 255935501 882335022 432895503 358009180 248122568 900286410 1007886222 386932561 759306908 883755795 37106088 713901154 252807450 588921738 446001993 875955473 399375138 525384212 305770001 216516644 440597087 679201540 1025118045 265286299 1030450712 125297610 848639076 875103445 321693269 835619629 647704156 654032519 734554041 340031450 507338742 862720399 104103268 541853650 607304340 169677640 319405049 895850458 750931537 1020433216 325781075 673272871 556900662 972578378 31245367 465284317 421645378 877387886 481643127 215084907 797491887 1067657845 781803394 772906701 647213115 925461663 255320382 351315543 447961091 485716564 256881180 176939469 381836843 969519471 408053713 696293009 503016063 36886889 582479573 946216899 880640458 222142590 333294107 644325780 589190269 756155960 749728844 1049076977 182719110 357725353 250756259 118409047 205281276 426250232 713722872 366752118 795220669 1012946060 624111685 383117883 970225136 817021345 79987233 1031919317 1049636657 64805045 863645170 940702351 955748938 71866585 1038442211 835917843 990405676 353848775 156629018 113228219 141191704 628887200 77904493 924631887 885864112 432086906 660538690 69519563 279564594 64288290 979168700 635294680 975090228 582985259 611386611 794778249 996141426 442115560 577806575 254588084 19451590 273275022 176970327 763283308 938491572 202887054 352062549 680527287 412572318 598619761 831423184 257029746 229846040 182449190 375109414 654640938 850323323 251393202 887030768 211185623 165085586 800692358 807983926 587105006 225981545 861804164 627170936 970342844 198781002 110177807 1037516029 247982899 260303620 1005717037 1011810472 292424136 572861099 724252318 1020376713 1003070926 360879662 754789044 478800079 253254916 999959758 946596475 774896714 392519192 981256365 230774714 836124031 991321775 320112638 370288316 618032429 70066287 435288004 388125604 1053732767 1013618480 190429050 902084861 58754227 853787232 743329193 585748375 115166482 1040429511 829603802 603668759 89903854 803057909 166587293 724190345 803188226 841927072 1060845323 617480031 982199328 811509204 716460145 288171455 713490143 607340819 352187843 844642183 929414964 725029235 971848545 780618171 366140161 1018505278 762113179 875590484 1002829340 738894027 557620637 360611958 443229671 209951017 243648071 143802555 958096212 404749762 630350542 141881546 3717482 910032290 37701202 464314962 744434353 739876481 582291295 264076747 23518679 870931568 12840865 1047657893 111879402 388837228 70599194 234459162 90026352 122062496 827853617 956160067 454461893 268085400 568861962 1055491790 625534977 165004370 514975131 158633682 794901064 948083496 851659308 1069214660 765043700 207761290 759089538 947788373 365204965 80664204 473755784 363220589 575554844 20639705 145990184 308336563 635275026 739417386 251519702 642012095 916913074 109976067 789919405 894794001 753782466 314889098 140554018 304544550 562389498 483913165 971581491 387679190 582071789 28617310 253911754 239623837 398875293 792669516 656798564 243327796 564714537 849244727 944755217 207514032 732279250 70703320 25291106 358339123 870635063 198516972 104125229 721704022 717240597 420401045 271991185 77370543 1019467024 340342758 959662348 888063285 835223489 545607520 765724600 900238494 660400197 847254175 827450349 179074407 661035431 161041332 1005844810 354721394 434346671 662501508 510157677 826879151 896496610 102483019 977621718 736731582 611119005 73518586 594824798 666920604 556845407 933518508 890110290 136515751 882488634 849072107 835707543 1062256835 420331998 108268389 88237478 1073059107 23506534 242529889 595825748 300672297 144764964 560279871 598610785 883917177 980114904 442881753 17203442 38338868 647809766 868764316 224580714 998850279 823229827 360244674 626953538 856849214 831918534 754773982 326335304 499798184 130312899 537121177 621175613 535346133 726554159 34092794 838459587 655581360 704979527 84211011 664298591 757104618 222868462 1006940984 1020932543 684248332 340576195 937851383 587268121 753813516 366939578 452052294 212105107 307014880 374530767 871745418 816567604 800765250 891357965 895438959 330291961 954086421 101950017 362513576 458068992 914731443 382607592 46786184 1072606747 467800625 613243479 689225898 1049673125 1034690287 288903108 32690726 511051525 126983699 409305091 206872894 589724795 513754271 575109877 7868902 62800199 415374648 903260264 691311627 1060390731 355986159 476338836 489045948 497881214 915335587 66421957 915467321 135864407 38391467 641561190 130521219 486218859 776604890 369841069 327937867 372831879 890248993 460682983 145043442 332312049 66857113 277407175 730063302 620604719 295200729 855729376 1014141316 499743339 530180425 741368465 136665064 401712736 177984822 705044941 582941495 980653136 280222799 422993613 642655144 803980843 186997979 1051591998 945698659 341854948 605440314 659266166 17418526 99378840 671558014 269599354 859631646 893768708 417648073 255359356 864930589 367420868 960220573 1025517666 737183203 796194895 1003661461 1020568509 297061872 343934427 789056321 638249730 930646308 637500152 312872226 695487850 165274884 705538351 167140767 732565057 578441769 850220439 557600833 1032338305 444910019 432567382 194894129 398705121 30070047 1058616216 939926110 45253490 283910528 338138624 559060463 263791745 106093830 886675143 858479659 881303920 975125087 42695027 745131476 849539389 332681389 986413463 331535286 590256107 340000181 821815998 931668146 504434957 567260471 560184349 661346465 89237510 391833951 387814216 618958592 965428917 126937530 314811067 682124942 940985075 591009431 384228347 317043564 295603220 300839701 1021365287 858070305 892423015 211146635 341425670 828801451 909887538 98724465 854606853 340452157 741026543 439073935 743337901 275350622 461315335 276681707 806187131 897311588 1014780473 744345230 793596019 784170466 728838208 1045994915 375251787 670991763 1018354423 194825075 86715591 983516226 100619107 201898230 630328171 732224473 565979984 1040633625 558868476 1040775281 905635375 941608956 184409350 1041234397 783700539 131230062 370536075 519275033 339761479 258821005 606647717 949637923 865927515 240540478 569047049 616742261 482376186 553830887 343811887 593672713 255201590 862966328 266237580 80909225 488708788 1072699450 68810118 101796888 198812822 49231425 954834114 423685291 414142585 699389552 417003436 273327906 149756145 64775841 955455657 621133049 827782801 984278199 765344492 667284474 4100114 354992395 57299105 726645121 989026187 208578538 170023465 431402244 455252578 497960321 395654650 664279978 208891133 169508688 41704680 578855580 631730318 824518847 262482638 883781765 93523300 177853659 716920313 399026273 548390806 1032554393 589228210 1064520685 34570179 554543719 148845397 798217309 288102479 493559811 347980736 114625781 222569832 386697095 716583694 947003673 999974298 837136516 992692834 610510978 665679330 94090288 710510318 900733531 999174504 12469308 712285658 615429184 245808079 876911414 383334271 413242247 131129217 695958013 872353513 289450944 305352447 396917420 128364934 106858938 751170141 25482654 1038717417 339846795 314267207 390434403 456753620 773920730 541812202 491696268 170405631 1005102409 164645115 279784533 393424572 996342397 128399638 298721271 725642449 498086929 514535698 776721641 834765982 44122744 720492675 473324447 1069984213 36285327 1051313626 1000705069 272588906 642715944 359306015 110204830 585771268 786854154 367812554 311418317 793902206 113713744 725253148 1027973249 1026721817 671388367 617698924 348579932 74717648 760035529 668812520 800717820 168854414 572104538 133302396 273853574 157435042 639162537 583595541 993073574 882470902 756400605 1007681956 281180104 998588935 326186560 865894766 424111206 61839405 355866919 194679570 216562268 481119155 458886599 1027457793 726642779 829977646 948164640 64524121 604639020 1018187365 854009502 862670685 391009673 1024764786 90383302 401539115 336317395 541940224 1008010034 350730133 194158429 128201209 192731874 370605717 772510832 967273073 205016444 428749045 634123483 945397085 648248740 662546115 61330695 569186679 908685061 181964731 448937921 723279357 683956537 515426419 605085453 365267472 893621391 269064694 287768244 922638159 1031628268 117549077 272339990 804012581 791321422 219231628 233254665 343716955 880518920 444591685 137721299 115202124 989253065 108313444 692334401 503060286 880296374 729421594 470621225 439403226 282057022 471765507 1033941259 391506769 426710397 282805773 651500678 342584456 1061022678 822678861 52350829 536521487 289697255 1015328185 478767203 226346461 331281992 530922620 121329852 4890405 158299297 726556050 34901890 567933952 1065584565 118083305 864431503 72086935 306084104 993393838 998647890 1014669033 971642146 669727859 932151733 98029685 425276870 781747601 60006564 296218147 416924421 131733352 646590124 354073815 755438083 201804437 1003337718 129400279 1015148365 496281450 134979270 767893157 1011822010 447063470 816735237 632513007 360160658 845830233 669132030 41232293 369630594 518963993 847723901 110028156 19690269 228292827 906806010 576464158 211567489 505866823 678850106 900510594 1002691808 768699707 71776360 830178276 355535562 1058620399 763651104 132304052 1034853192 191704261 171895347 839491337 341994416 250029625 417407784 400629117 315260903 755846873 504269837 957310478 957942710 153238928 248645935 301069471 328378560 838191111 70003544 1013105312 429289161 445192677 214979193 80820093 951396280 61423927 829204458 753943331 365351389 342276148 137415680 370651659 696031394 1046790336 896753463 686800362 559048603 307850152 105283627 161208380 322338864 32676204 597829796 29988667 278028045 74513727 425228566 131377269 234566280 837349863 415305918 924179701 762703853 950822647 567905116 322612307 2815896 296956894 764186641 339923123 836309706 833442391 882663069 66861805 3284495 579772020 429889323 123469800 1069517962 547626471 453408227 858508419 345544954 617164030 506832344 1027633543 1046780553 795949854 770384911 83388286 759101792 58544820 778341187 946824238 106583703 992804019 1069614555 50727610 72228780 68821621 603241983 937499822 579734958 263571558 148450273 81450966 1040158606 963513791 372407772 436493725 141903961 675720073 1043848717 536571973 1056123423 971636742 1033344557 1049571755 309042255 1072571718 307598760 526372015 156649860 686639067 549482946 20580255 826157561 765413798 343757950 1062787428 280362094 214590809 595295163 396493640 235264567 217102535 565660762 898818218 835178720 913452371 975975456 895090288 613019981 962927091 345160826 533822994 967983782 591596650 149727063 579275519 341992090 315662571 898473171 265656717 300628353 659951337 983661934 481303256 426964982 156701688 675766097 78340317 251641913 222727704 371035468 1058581992 311312490 441415882 150979050 444655075 643883391 313644457 85542911 926549050 53291752 561631897 630730781 985162869 786133870 679798621 1007040847 922580791 103187933 295688396 1005163489 596860832 603977472 505061245 696428142 88938606 280484350 208445514 293004633 36339414 742618871 271555076 625900769 1054496255 331084250 430377045 535418112 747846044 292714759 329899272 968983707 740947759 664666093 426924972 1037693791 494465386 735960835 673849934 103507611 328702863 525474325 899725114 46030980 888797462 965006734 791170280 659792363 257706706 266351373 243318010 498982441 848587713 467164789 153572746 1051585493 949236465 92946061 288563889 345845664 362751920 110434787 716514969 29291063 816185219 833881995 3267269 127950538 468272050 313312954 641167237 526130545 540526074 431504913 413678837 556936344 738327645 58715837 930853636 715106733 804853108 1013012230 861674035 806856644 1039649082 368758388 217139050 637472976 162265779 1030262329 309513193 697548276 789476593 95166480 621224185 1001811399 847415201 548180078 318503014 735957733 347205619 748447585 998440370 735885696 360206673 651164572 721285977 316393917 436555539 724593747 16563641 514167262 797927959 34085060 171683822 366284347 477290706 65128740 352233720 856973337 376144959 379786812 125322079 34803778 994804679 443067821 236055039 323250578 538493840 611013233 221663055 976289661 501919499 538659045 742127899 792408529 227511249 82186906 893325642 408510213 444102616 559670939 27129291 1068889476 937607395 52221529 461507280 286413196 218594453 598152831 346306065 409484476 88538998 917135834 1065222499 65620729 480051850 370940166 23055853 748929456 1021773135 525209040 285781814 366496889 527633852 881111188 158425715 378212171 288410013 134188823 365639858 1007122017 774914612 713663988 538466371 273693919 778717917 287763579 493435682 974906251 606220025 336933934 113970845 536330535 84228806 965192168 924040213 393372417 662630764 97122774 688540843 656426888 240987777 698602228 392053021 523127029 1006745152 323925120 811964676 972204593 408050608 1069479788 258133121 238353743 339729859 583411873 848421786 913065219 68530922 937279614 620799964 484138559 459751005 45871936 175099649 52606104 1073130054 741868939 253696730 933208598 349817027 57337174 436118612 1010794519 194539360 878992870 627136300 274315317 140253223 819547316 478201137 839261571 1028856478 741418731 243987606 306813694 515919396 802710256 260392995 925603555 549697793 6918340 716404751 358701923 716367714 708006683 328485729 1020322468 339642462 847581269 217170833 516896077 100671179 651503230 564455197 808461131 198426706 675044641 631129889 256623934 349225496 40093243 423406825 679813600 821989982 622583235 1006945872 1011508096 484158291 743729525 636741403 703200128 1053196043 1056882775 484462254 77469849 163538050 585595485 536447299 399060339 879310797 1068397114 532742705 719824707 994278328 103982575 642158687 453831000 877005545 197233408 574754950 149822402 854781185 152965220 724116376 1007332932 445440052 478153726 356428633 709191441 204042129 596911022 403729861 266497316 776001008 1018950094 734337890 239116049 396560648 385743275 479123374 536864787 428026915 766150004 852818794 324905870 785359822 789462609 807970371 157706771 430895736 244518170 218224535 87055772 887534661 96328730 162578275 547844191 533969769 203054999 926731762 342397110 496682571 662708167 580217562 249399057 763763077 544807776 705220360 463046879 845319998 81641972 782868896 917814063 1044085074 61333707 800258313 599196608 1037849438 538148885 1031286270 549038234 559728387 769925839 339908393 1015942077 948534484 934368496 694803153 987998735 125753766 874853881 19934430 534890487 973705855 31199793 493009700 479371802 126718586 535566431 917871063 1018959619 1016659331 760913533 825946692 33308160 1055724911 604798044 80057625 416452325 949584710 856382602 510109677 276891908 130790141 299911112 178931566 559190957 326285864 839265482 923936296 454190095 1022933519 122721569 616900482 795189084 1054482173 1017304561 881456969 715108803 480974276 901060540 917280566 169181065 890324557 24973903 453418084 209812238 166710224 695691297 265417258 812185163 631667715 644622135 248323221 912442048 1065627953 656960300 834509622 601672309 615879729 1066782776 911775532 616762016 1065514776 423830772 29234861 49093630 555928425 553774889 82278076 225440175 268558893 268267448 83513952 98824854 96534276 489114692 970273080 372817193 49765278 33007009 119625317 818360580 117144879 114734367 125672888 1007019265 860285924 922087675 961939811 124254476 998116398 362943737 648628545 738760171 281583987 794492708 976682903 341269340 676533559 758007820 717829873 605045909 795190148 548744425 211307739 1031964894 287064315 139249541 564415531 230102698 594618432 443179141 850934630 350461946 362443567 596167972 560234835 19858139 719262516 812146658 675928391 860517844 825216257 77992406 230332798 968649947 1036631782 897852144 638176383 708934818 333796514 42036030 311214219 840201909 123933099 313907155 271666142 442195596 63060765 122026192 1033364132 144739036 547586506 329907802 333638099 32429185 11780847 849695561 380467742 243782220 453843403 706208820 907670007 576197442 714818070 520696197 938934378 243446784 663441189 294917983 429361392 831509292 262177567 49344186 884908973 720976167 706708089 198828597 1059403956 627463886 656900583 247533482 826232597 680705479 245241134 554492022 728088877 800659410 546921301 38635241 517155402 485902687 727472532 1009561187 994858286 339267707 1024122115 107908364 248443443 1027726688 707094524 119434679 748525417 445312220 351977660 83136482 116065994 333540781 845320570 733250988 914745944 242864311 823765691 369123468 739418183 255041804 699507091 314945271 732731516 677730851 757361641 830371299 663500551 461267822 1019132908 477845665 427159369 942626848 487551567 786165245 18907334 1002350072 507330453 23006991 270007321 14590860 542023904 965837707 71039439 42633584 56811041 226192079 143092280 390921160 756604022 198280015 956596577 878463785 342249245 430279371 166161660 647585004 953285330 1029097341 470686957 254155385 853157146 1071365813 1031364755 383706239 820491131 423928990 1041734177 520815306 306406495 296830633 350806519 388517814 44128042 613797349 439394353 196993148 838001720 439772690 642565194 148695727 611511597 454495523 1011826837 670425249 658707758 756671989 107731646 548397547 120128337 459636904 539803588 784414435 198508259 272843637 1043452669 932214583 693660245 11963897 256286484 814522620 992821593 332604618 788686350 849661334 1016276210 828995239 1035404787 653973971 745793722 147535311 1029076874 303354512 1023872648 763668266 1012002833 366998641 226687976 251699257 392471539 568962731 947832141 16943048 515785510 1056956326 519757636 1582927 639543674 507688288 1047488359 122532799 744017393 914139579 353956951 895590116 484321950 178182590 377094473 595697365 692869544 205104425 455545395 513870793 613031364 783173119 864694228 371635297 717015010 625914776 770806736 320758138 342007785 281154490 150811774 706722965 900309413 368420941 647109954 740494158 780029505 396306887 964901096 469513563 305631377 480830942 517622330 451445118 56580165 278417936 163494301 448664974 975145254 774978403 207886127 74724184 905112424 455405813 131619319 339058786 901630392 954896058 25681571 541020278 444228607 36488392 838522012 744826299 185656603 275991054 416155447 427572924 725213055 457652477 724973143 429782497 59272610 786048978 411597947 1048362901 649815608 731794012 403104994 950467667 817257621 541723260 327214702 162870136 916961293 213843632 793135358 988742299 603844840 840073463 947756782 163404439 247470171 251066241 612501499 425198426 925621344 960996464 249444879 372741337 922540806 72036791 440548938 99075637 1036103320 608218736 3019103 774362438 426670230 574870915 231497600 876188882 275524058 558211921 57446656 123121021 804629705 73990451 87695837 364770629 322589896 126497038 1071012950 262799154 384810697 953993830 546962145 258703694 189746840 76403732 338716293 719549707 844223918 752248071 923713034 974163345 469817590 619272002 347856316 640307978 923395463 121793060 413719188 658522500 681864678 401222718 875518482 914831363 653299794 862271850 204987756 216777406 220967485 318999 43361544 372634172 646069181 119485964 843957024 326823567 752716311 311420129 739358129 379104861 786606121 936229857 3288589 206045286 726826015 74941979 937686505 118664275 970838554 1057800702 287640563 273585452 268632014 768245762 754855420 49355471 863547183 626621286 986029585 267878250 759103730 421771306 1000030864 1027056328 1011240380 577376960 771175116 947325553 484540095 720647381 1068619129 1037471082 585616676 209059782 87633127 455034892 339341461 766651202 931554972 96646122 965288213 216734263 52190931 555458484 39136526 919626981 102204628 157163832 148737124 1069603674 379126860 758414856 826266823 855604767 508135747 725887690 119700807 292487316 402188841 841247434 716343260 758401113 1006935414 977527719 1016356257 724321442 1023331534 599091450 879659408 939096021 84810228 308340228 981075741 369563553 44874196 252114873 208556466 28628564 845153384 1001053615 698776990 286579449 899320948 142154465 525993148 849285532 702032656 998876276 538579424 799974608 922956643 521189673 678308718 673690485 1001812182 63005428 894658623 187530548 187450952 814245994 616223794 785872955 416568785 751060538 403744010 343007569 593414029 241556059 763453777 31791636 616576578 829832554 347722464 679992799 966326386 500525332 988378640 884603534 757591450 549320134 454479874 65071714 39812945 233741550 455203786 47025218 487000125 838370195 833579267 68576691 833601275 788345623 373990469 365272506 390216398 532550995 920798961 447240381 880084795 362132117 375730133 841640155 392856674 236819662 142135000 932140699 279266058 369987097 941222989 176623820 985188848 171767405 855823621 984478810 902507918 483985882 596817790 992097361 808627491 539265063 191999439 110808421 83790166 704319397 1030116324 817786596 314954027 477618445 747994141 533131184 448312459 426872127 25335 535542729 895311957 343561571 1072748079 609290271 754415522 740366631 16076568 1044383524 537651601 734476131 361592262 1065313628 971004123 599952638 712478656 53153631 1054017192 951227716 218370132 836892781 590819094 232455567 503666885 168310620 270026711 389656112 1064532153 506970911 1013590190 777734590 874470671 934137081 24928557 952739760 182387449 995119912 823894570 145430878 76801418 676945769 712058586 485224787 712083649 633102917 1058392156 616140327 509562113 84966899 213926244 21868858 999727028 203632734 589118384 326792503 607458613 924561448 960343735 1031818969 348564905 966545593 807913476 703178260 993817896 317053147 462985783 1025393173 627059566 645704263 803649384 169931858 537384793 1023495617 593430846 697160053 764603610 514893935 1051002494 938963581 586150771 373865377 793539380 686551719 193561690 207622623 18701289 57280139 180814274 981492381 21358999 1012994114 890842468 127987798 315137103 71076729 445858876 874420866 206923877 622517494 538635968 247103776 566670920 111944171 826692722 647550127 930289564 396678408 871566781 382925275 763286785 903453306 126852793 512805576 184804247 615089551 860588867 101464698 822684172 1037473823 915582192 471290847 134520972 313086260 522552481 1053443497 326184120 430978667 969513116 503446154 173438176 581932723 743406129 891507873 465154706 804675527 449020712 555347067 145119750 298890660 784315658 1017204341 740874979 187409420 536469004 627779789 325651869 38470415 51964642 123836879 971863807 709853510 107052324 1044265092 548266620 185073314 19700627 555582706 1073263847 664122454 976978012 121626115 24228580 806732358 901318891 784356044 588414037 905944166 434950509 232862826 819560002 54887244 452036806 958044782 458422007 972963116 977166971 525831733 1009990398 418271531 550995683 948718002 483290792 256189808 761102839 688865155 935802284 606541512 760782657 963508540 450205875 35209510 73621865 23472224 692202244 612851368 816449831 591251788 186316897 916451366 640375512 187117804 362940694 99946955 718977676 725752687 122587437 725388977 418916738 905298645 759204449 258386507 136946977 926508492 728981257 815750173 151468864 555909708 931556371 368839444 775571161 563339884 433978862 821163848 977739087 27289248 795610921 11690412 525644175 545790172 326712321 519409408 881117120 624227771 439045423 485646223 191505209 163724046 195303697 1052639986 450351151 817868586 1034061114 904879956 19768403 225503089 288820979 360732471 23307056 177422878 39741265 165922247 138223834 947918176 171427556 707443244 327289946 548681948 448568698 386993622 970890604 590756629 197999172 198662782 708417073 893033765 1006147240 477324568 853010810 489180880 418738228 760144216 88546786 1055093689 441632830 223025030 472103539 530993593 441162900 964368347 878052525 775313952 393745829 581258766 232941960 818813160 306727437 713764993 556697127 288618912 254264356 296770660 389550185 656794119 911143162 12619602 221106048 429323728 450957088 3087169 614252666 166641175 1066658723 26836785 896576129 779112287 794791574 416192447 539441364 266682474 58444431 573220210 373859410 373448746 1057410997 36094633 647489974 1014166523 266014552 569391227 848682995 685144181 968737409 1021178853 318084955 217087779 200361794 687258646 796178310 474145614 342943156 605315192 311690883 12062921 542160143 34894287 148011053 601994836 213821700 874118306 939186876 1034997126 947377246 10960364 501649129 537863031 32420837 207943195 679627762 942068223 600070819 245590858 620143268 721958719 935549588 428383400 70882600 152964246 731885582 498436914 508473864 330356662 739387360 169423205 161021019 654869167 662205204 876247571 825780023 326932800 987783039 39599089 1024224434 219171529 5899568 597797081 967090267 161642701 476278693 858256742 215613971 837368746 1034855203 908284143 594616190 885109511 331193358 992485321 950413476 880717513 863849941 829868507 994625664 849006006 245933890 290408023 1014554297 459685463 913744330 378758946 622625544 58899514 81627286 169404202 481858896 1013938056 511051686 567782227 347913024 465606270 943842732 734175226 1067058481 918455682 1038721776 702374697 1038941862 197045561 167054217 829073416 31440309 519893320 580007359 116485759 668955607 634745400 913766128 510856602 121675527 972095343 409995065 800052448 345881023 860605610 67048214 1025462960 480595105 515795392 590356157 299172414 780933041 10190218 411684554 639428732 35952846 871977346 574401527 471190679 1048502446 36976793 454640774 155980109 862465954 201845042 650274142 846751705 774979057 28029649 590139704 127483152 294282202 610007271 740093611 452859049 160580260 524550078 1069512878 658101542 17564852 792618085 51516244 852121659 880351417 108086119 989785174 844936719 546894247 276609835 341679674 324198961 84001052 796938651 139693917 538123325 551084853 717262125 422502083 765609955 930054454 321745877 459077842 949801705 927370821 728991302 479214938 1043137834 833882715 581340811 774318559 714082987 773596781 750712383 140640659 308347717 965350078 129547206 1024871579 1061219391 442562607 1013522359 178591851 788236355 809453721 429597600 871469706 774152077 193426788 389054919 406672644 764528974 228787339 817791176 843672587 1008885375 908883451 81852696 760610705 615724835 696997283 686340834 901638627 756201167 693098521 66597826 23318677 513240158 981561037 287610770 90113049 87970569 1049520767 1019071821 957499543 624682946 830408167 460044302 504244716 849424498 505703259 862624820 1048665241 347824373 814884851 1043132134 393066960 21336717 117513116 260677423 272948088 631320230 561811179 988117458 39214116 503854315 409400011 550680200 196850612 987377930 273647749 586427034 1019108156 1002509122 561900692 401658666 914952358 103002517 671632164 869977049 912827497 981457237 140576454 255057779 834545365 287295366 661720651 108589610 442540279 66798552 1015588271 921274675 709357088 378580248 401532610 657050700 756818196 608959870 343633015 721530658 595083371 651406113 470986948 647303915 927603203 841050462 287679035 636403719 857157416 537527630 104791695 439867092 369652088 235566873 109980429 687404140 40008232 628261789 883964429 71643889 20529436 652633044 194473692 452856581 653869577 620929431 583336783 938316056 726992112 1064400132 890560037 334745539 280015888 982313019 426337722 556766982 508771903 488614242 734511403 776054226 143806198 386167395 994770297 47973937 182438745 966310470 530865738 136818412 843238896 211182226 671291647 637258933 458350678 731085152 43264640 803972035 248305841 987076914 172921620 692388241 798416269 289660434 525200219 766777138 507636740 504340659 750364399 916655994 858502665 976582060 463602497 995496499 975164814 45086741 247077688 331742381 707426696 39752058 1045470857 746551574 182315473 404890665 764241724 640117958 662174307 926379584 39477978 985889523 98263353 993515308 786044911 779337352 649818050 833209682 457633217 1065633636 732071551 844588709 291073521 117001669 73587027 528612170 548156101 177134430 900344438 606757604 262136785 1067205421 783539479 184270141 686162909 770629336 965204367 461787666 271287672 804617544 928923624 524089776 751973329 732940486 848261668 337074504 73248533 1046202870 366543889 218179817 836675159 743093441 698396860 349511070 472058919 932478678 927051586 898096004 765940601 712193035 629082220 483862402 28981342 392966823 112971183 629854683 529958266 227621697 698175356 1064579931 249408774 421462538 505089635 402678511 386156857 108128934 934764721 1020589784 187021176 39750211 911860109 1034972569 464084167 939003916 758356028 517473956 447740328 968184137 590490018 232044416 889753873 71061322 26323595 500657794 319327677 685965859 80446137 1035233869 218411911 394836622 107080539 968008901 207180260 709211672 1006256489 149093957 459936319 628515821 742684970 765447956 1068402617 350891 993032077 837986576 253033354 725645624 47665416 57877324 1042114049 330408511 584890125 4790611 87418362 306070020 539630802 1040749499 932797258 549787245 41250830 701827841 633848310 39051730 950161285 353923584 153669575 852513734 916362788 235131982 805668153 181244043 629041961 991316643 15384031 618967893 836300330 97497769 537059411 190417326 640576130 347727637 92277935 745776365 805486908 408851573 485800330 166493725 179528160 760714258 515884911 538002664 413739165 991431385 556699568 117659168 870150878 219150547 352606116 827075579 1032179659 718070412 1018644828 861490182 922473825 269825518 393459491 1029862812 711745079 814716523 580399682 638397609 267335106 637053355 845525670 599193914 287428594 249470179 1064818671 360910301 947695513 73457254 1019517597 502278803 357350552 569765613 446017120 491522674 106621308 774474543 174031656 84195664 820375815 191335839 44663388 827311178 487062837 503601016 2150580 400619009 95916981 342653028 275540171 357059764 1027016303 964620632 130925475 522075575 976328391 65337449 810055786 555835970 749968058 754591024 820625524 457847572 434629465 315265453 854171935 522780660 160153260 764411970 148818725 862191836 725123874 16614502 856594594 721542051 425745961 744481370 933298129 306482837 1030214979 495233726 405401037 44265813 845953330 79638815 44846016 221407251 139470213 88887574 890984075 909732209 424097755 976753944 558331473 164121066 522849655 753228197 356649450 43965187 13316721 705363708 113348362 74883228 242165127 32177794 155246563 956601743 922565456 597834021 1026715011 768309335 1003488651 275502116 356380102 289418167 1046212427 734244139 239430806 568755703 506378848 470820670 774603001 872828787 322051262 541139426 896045977 86180444 691511755 496179451 166353425 494630069 881208720 643231959 91378166 276289932 195350069 348289962 449645956 571064694 1062537366 359205485 300665663 801277924 451655573 397394845 551506613 255167592 784972249 1051328316 843280130 389847346 379570272 837358761 326086052 747092200 1063800256 690669271 131854358 214356154 94215844 101750254 810822711 16569274 207911809 534379372 538667267 111135394 823798665 484064086 754339302 807711346 785933304 444959909 596028965 745499602 27208660 281790375 380614078 666298747 800445123 133032162 166023943 908726642 86568373 210875811 661250970 225127280 1054020761 847767474 935507252 178017425 996497304 258847316 647236516 797043212 652890197 956153642 142876027 465138875 868218826 910406477 982631461 601657608 751304177 998798750 984320521 977949848 583948528 394780109 71837687 591476813 432701501 943870404 164724946 290833511 566667321 818066966 498962622 19104715 693818797 90859407 1050349974 724282611 538573827 933806608 936471691 1047672392 782604023 179134517 342823837 17805851 184000313 448093791 461149103 1808134 94943477 116660223 288924104 446146238 419945754 275770981 729576990 562630574 895102492 64103491 182884826 722162380 652049053 810567888 2836995 477501312 824768173 843683312 663727974 1002208117 42303158 975553461 306076344 771479690 843493745 470696247 505210472 575043049 1052656082 998675724 529669687 902626898 82060171 253080667 618321091 381354798 1008454492 459702784 229522204 1001184613 630360732 395129721 424353028 538202035 582694280 575582528 341913464 835388303 288153491 921573456 13633759 512649837 802070829 105502953 784952228 892399033 393391895 414425434 945052936 627962726 209394418 1036507883 742400113 232743350 127384804 652264043 414980592 625449362 381388390 849169197 672070114 666222355 716164073 114329612 651570945 374005867 10635364 702652950 891210183 1046112857 408560834 431463845 617987483 433802142 915183752 213773947 115155991 794101765 262006117 1019542352 958623350 191385382 542751310 1030014039 950094201 517524905 1010794208 823045852 1037038803 328176747 793627040 469822571 430914063 1030397847 566328132 865118671 792997786 512247687 771815622 615121443 560412668 714282760 462455106 613513457 598886480 411478741 394020466 796958287 23968636 1005667653 770965776 367760107 856352138 203605001 312147574 300868418 668584784 61857719 98841700 173730340 560668852 324827559 659903919 578668141 545724612 506208254 55048125 855064494 844589866 72122142 48616929 999561829 17942775 786555200 939833537 633082173 92505362 357472040 370919424 277487508 935196264 772684522 312985290 694613198 134703645 980100649 314867155 296910067 227499407 822034460 896618657 715091967 184461862 904714951 914737044 367495077 981748780 374804840 884060436 735444696 598033662 858112932 161865134 705026134 738374079 298431530 416713378 477907579 879670402 546174938 892222669 580804246 178775556 451885990 316692071 998783150 54570822 763041459 180721461 311261227 558239200 157482892 470154964 818412787 886650049 198856403 1042674778 42831541 951481930 68632516 1003982172 889137286 206497411 115446690 974689204 742044905 53063857 327284147 791524580 685395879 596237677 853792228 405212504 7630743 283963182 320788991 286802959 360325190 1001886062 505693514 584302403 436491502 1051198609 472653638 728962884 389760000 185615959 16868498 119092908 299489730 511684251 710202338 1004773711 64470804 939560821 15962023 165227025 787835277 585438049 572517443 123240998 1022013686 836629699 639469102 659353846 778424819 727320202 254275472 850394288 830259566 351494646 60201063 758986676 760886859 49112645 182434325 137368410 770798827 35523150 1029778597 1041448606 936532488 346002834 905517940 586007311 829037452 216326194 1046744552 873810028 853928283 92143204 116091264 473995383 409724645 262674545 1058973393 228799563 582794014 334704461 749385372 879193879 874389668 43689744 423490041 568423606 811360753 680969395 652667139 128734479 803115156 339400216 819807642 692532922 1027152634 597308281 757715875 129351350 709792499 502394982 877241302 460861348 246990184 861145740 154700516 599031399 607482443 700064731 256833097 414607927 1037631628 279511343 567363700 791034720 417067227 557618335 403296332 428766806 16468052 943023350 501505391 145552768 878831796 504588030 550475451 753753515 175370342 123862088 1002231368 689261913 221690386 996646954 514330700 384280261 686272003 1032944641 949821721 789990451 632830698 615731726 470533729 547856323 680540185 469944744 490346553 286933751 74791960 267741326 324934622 861694504 453503650 639817211 292390334 655063124 356609696 554439959 1017309400 348578168 823146278 14226118 785363536 824496518 830425419 1011610797 968016214 696826217 192939152 793106045 518471855 787896135 113376150 878685381 238029968 154062017 252781712 774493271 435949310 643925886 546898990 687138114 952325265 919021572 321935481 313075836 888295498 217913308 88268083 971448080 324783926 4440250 715786883 1046957081 633945162 831553861 372599602 1036154038 1031153500 754486219 22600570 348699223 503601602 334526764 325177017 915734645 29684923 756573350 680283060 210815024 685920 181676790 440235259 764744843 1029689791 912595164 959960817 187546167 1007160770 402980303 191258034 17949805 700391234 680785868 231422316 157695146 916446435 186000904 981120151 344769218 191882343 546132139 689790240 139330739 8951889 864700455 940801410 411178065 280135708 227896535 725292532 618789764 856100802 1069348559 520642986 690396538 4901738 245219314 362923101 555539575 260002530 97058470 375212684 921864247 423076797 425350029 249227742 293323610 479846936 128836446 81252778 921170728 679362870 581269351 932035152 804607994 1041447014 234599127 117162755 315288803 1001167893 1071071444 885756427 1020883297 823028381 32876651 682792100 232120917 31099664 981563949 679200016 606171914 1063686651 209742914 351040392 646636748 493547716 52940751 840684818 309878184 989430817 802261113 916640402 203008194 381803583 28528382 78760224 1027175759 45417841 124593940 826354113 182918110 824309429 439351534 1051518375 301084716 333626424 1056638454 93233571 333684195 539372049 426918292 962322944 201778402 599300697 466172922 152091245 873050013 949792123 22308013 51869952 189750822 854406582 709532896 346342396 285174490 971253139 160298878 357670838 589841523 765892248 565358631 22535659 164057986 334739396 218020038 877503013 254890731 102940139 286093483 447076902 468448894 548482406 1017706796 358387240 473448211 494467623 194681541 806926339 297330629 621724177 899857530 552132088 83884673 523688422 727049968 758020191 839133941 474313212 582135490 371811496 1009956868 818917571 155162882 512641181 473429617 456776076 17630482 421495875 1061411425 275404758 360990920 1071781758 847834168 738467016 747604815 989803962 26365397 594891793 271434770 326443046 131622543 1003510652 746543567 640883870 596087895 10333479 997606070 1062941343 1022047838 719639057 444969874 1015158445 184197733 202090843 133780094 247717382 824909121 613976993 996045516 309500891 364103078 721293041 182797992 223646668 582747124 143468579 177876141 904332566 764851740 1019900446 540634351 374652491 834703330 727117690 171717669 482896678 782401899 197126721 179612630 545547060 410610576 126005530 508554450 681260689 12098649 551142409 737314736 926875655 776260942 966905337 607394296 142385135 736621281 55249891 589275207 212524087 124403462 770080610 463564049 680759583 18392067 180389982 1063544275 721662758 804866440 605969633 166391280 487756930 982066011 739322640 274118277 422798016 836333445 841791675 1052987562 503913449 529513766 788047190 853918465 449651525 397981391 687561452 297009484 163005703 215858998 685699483 699852606 587884870 821265107 654022120 1012377697 28753410 817725038 219436149 188141940 69704766 376187663 569139930 444395490 556927115 386616567 674260024 793615620 447794010 421320265 984394335 762047641 975013852 226954271 975697306 90355875 961510666 181087942 283962229 647757523 757933376 634010488 962605022 729140140 160167945 802191445 850648973 398191588 319299602 243980124 473281111 1004293795 1033596888 313100996 686440195 913313772 430435581 501986226 528291876 525768230 976588325 651195312 3517153 417515227 954472124 787242368 451177354 1052653636 878550849 690110742 630645783 279196170 294090076 469394234 1044115188 877609129 234663162 169744903 129943005 1052634807 583869027 976801629 233101922 187716230 836436922 628921402 71309693 998413848 706717291 427977280 1058545494 1033302627 620513742 66652743 754953105 832372402 816562386 380891467 696930440 748934594 298518424 113441768 597921031 229947361 113326693 438485892 813347833 801550017 997849469 1069380724 967560632 476008955 217907194 884591370 29344837 986741173 1048359502 1623335 269658040 853416591 685955557 315182643 581967354 33252191 799093184 898891734 1058461203 44226557 745717710 725546051 1041903711 751175572 223744383 1019845339 152616330 1036375114 802933668 810389838 230974754 417506478 378139023 555420426 502831066 181534793 619452193 711198603 17668676 604980716 213766651 3045202 62779508 302709333 51425704 496178735 880556163 556571812 848621012 407680075 1021066207 259541220 121559213 741081019 676229448 232682349 408742543 501517969 554113714 417819027 302200690 406377158 73413308 199127059 307460849 644843854 49581641 571325601 770254252 795580370 886646698 826741442 563929457 744133748 343291933 677429264 271682627 86180730 95161634 942125990 419366225 33930288 710343342 590382381 910123793 608437717 668102493 109679843 187322616 386187935 444252877 657407013 149800046 684327043 53598026 354503553 726264466 419024469 883424680 1063872522 85108815 706642524 366731817 604278544 696086709 377438299 623085228 795718772 1023267973 994051427 246505265 710750489 947380490 66223364 497942195 672175545 39085617 510425734 40748276 394963689 639229397 565525654 235609777 436204355 698198711 527956972 1042156292 632103041 202455079 615012717 1042865982 592602359 669886658 489022159 394530619 886801630 487369844 385690317 670955702 239532326 825469980 830941705 857270907 119028243 369193467 150499275 512613023 31879423 202910571 119476936 422640868 964460083 763866924 706812851 750345466 846624004 508105199 1048486915 337321394 956867977 892477784 995396320 460406593 623669349 857272540 158850899 441381527 203837171 177775737 949997649 110982864 181463391 603139340 132150673 195362811 995345022 754596117 577967027 459042068 568995573 96944904 816868214 635491920 311172828 255539485 671125052 436859575 499561686 697209605 342137208 741479670 626984817 886154596 956240128 46959471 941645056 782471758 457504223 453494965 338170000 257466511 366144018 627670799 7977889 228577379 613968183 313387718 324544963 679519615 710068472 341792159 966786697 583674715 262165422 856029482 537785313 587194632 943434254 154886298 544685502 329543216 354626769 856100239 888876682 778982100 663838505 303672050 1021204952 467703751 493394589 123305867 802158660 630204330 547985154 792133221 283351215 36706708 58659564 569438552 323368621 390983529 279022142 106090993 143275113 1013669582 172271721 688443094 655179527 398411180 421185861 891880022 256402868 608570922 524840993 750790806 170108657 260678280 274399561 1023926286 946014680 68739504 888071144 285775067 852274910 595317537 514542585 326472492 969977234 940928366 329750052 715208032 364204327 1005665783 211549462 301312620 221027517 580353665 262854456 270135028 394250247 925563753 128364844 545146695 886449064 778488195 184372014 861848186 788962023 563438498 931274171 892718007 670785858 122719617 796145043 644281711 397477286 157210944 153816669 348708791 990530987 340160086 776631112 940118171 110069944 953695881 224255461 1064415367 380235063 1062068452 205104953 722860384 1028729450 655837125 488617844 764377845 293292202 367694255 665447694 340029569 344651479 421039334 1038429129 622616506 1016139614 590084311 11069023 463379813 418563704 194193136 1047801298 749573738 827932538 893584888 658967015 912250226 377401976 1014599415 78145628 1032983734 678181527 340229822 107882522 234065034 943800230 740007729 12852786 596801922 98202657 813654473 693091897 28156761 614951218 906420529 245268187 71449675 261215195 648847378 568191142 18469110 11180019 515058031 867202899 105064697 913317975 806858288 11043936 18595959 566908746 772149798 937519056 173715986 1016490986 1003816880 321681865 131954894 873214921 986641858 137031754 761881588 532917499 515919617 506007759 438413911 99061879 1058941608 46641248 710184883 48238629 61738083 559220677 778430029 448098112 1073060765 461780218 489667193 209552380 218589396 635068605 11589483 609058830 232970274 671898622 22543894 571302922 1072874647 838410908 331376130 1036342065 509465357 1025279175 284560706 632824385 760281658 500346519 1018180622 573579306 907020231 830508585 1056989714 923295041 694906138 14524041 767833160 431382894 935917294 755374056 541261860 573679826 707101568 725144981 668793424 691436014 355460581 807820412 627769337 491937930 288044290 822549936 502851347 306768182 284468117 680372821 634699701 225917506 303360901 975552092 594648980 331718421 423657050 799690637 348585167 287343149 546488953 319377576 95362824 645884709 225351045 939414826 442924763 671371421 828380336 132609302 224907115 644761106 981769739 711396130 676909167 509033875 931419849 721276470 639222113 1003157030 757724989 675057432 121475063 272679383 864668177 201197129 832742541 719222813 718826345 637263694 377853968 930356681 328955173 853974199 768088838 716424316 171716988 816159825 750511124 174446584 181152756 644682587 166811227 736497 74419433 512280461 786930853 275466131 199615789 512610515 290730649 93522508 651343183 852436818 661322015 231524868 1071709298 654943289 665196691 449169135 217450728 409823531 985152735 414656140 329648216 429494123 901550459 771998373 532929785 485867460 457705904 409781734 103233396 294335211 216363940 604507169 743584012 1063193773 229079533 256544039 413355930 445968755 281657040 502246451 39747551 688028083 160303776 258325349 170315330 488121237 612283794 604310574 318851456 417010248 701228405 378654857 174557374 768841124 483303937 674766582 583412596 34074143 140991037 466743960 745505128 311968717 912011959 681071936 941760676 642194063 1043921850 787810097 48877873 1044239730 195760673 807996206 243240233 950092076 1008650610 140685705 911699211 771992845 548691031 108443825 516325748 29378895 530786520 404869558 322291727 546652746 1014037279 265719104 457325250 347857804 802269396 257050523 613599313 175214508 664862092 636678836 788141583 195370369 713969632 858142269 122914148 37048587 325379713 528297192 913827539 475899353 343844667 598875519 787835980 604939626 355395783 334282375 342139555 699726418 325305425 558232700 253487105 632873893 765829587 691248944 1034230842 362636270 762334787 74308415 1072156558 944697502 156396383 285935221 275978195 410016687 593589417 460004649 706730443 636318754 103115848 585639807 367066910 223208368 873831198 113967113 85865010 645321611 155902345 1064767365 923006782 665547241 333644059 65070165 500248479 864336598 299067638 650453255 441373661 373469089 653626166 962991289 1066408618 534734730 1051611846 899689334 917406274 710441763 587177997 478422884 295137709 538117039 819146513 962438386 814670554 296229489 897712050 700561533 340661129 517584151 685156589 224588474 907866240 265723253 627364816 699011957 461535913 1057703104 314523699 2663358 1030078929 24038005 873746373 588708609 477930256 465383782 609332816 604417424 916468377 971369125 472838637 302362489 821375507 114147537 479915709 333479783 521229449 54741254 329058271 32575967 789476559 367203558 747334484 638792159 790864399 332908694 809694945 445818291 256073767 751717949 537085932 50494760 785820977 206273205 968058777 602526781 245942836 384179168 973627464 410830524 883126210 99112824 391436361 752721965 70517356 1034241238 364324216 416511381 480583905 785506068 198573573 615798883 511419557 631918160 692164707 257280972 827093589 908293055 728297736 778773994 8269330 423286115 233374068 248772699 484424830 905821822 361645467 792657296 1023956751 859416455 1002296975 104809078 270879571 704293177 281948105 66518116 146550353 692304231 371910465 1020942861 494797428 9710921 512505291 703943421 533129601 238869000 62980644 592921799 26357357 489562374 647901208 921971454 1016105202 828708970 286563270 250884694 687269866 354102864 13098338 38183182 252364329 954864006 1057000358 380552827 962363404 948443914 1064740368 1050664351 254697025 720964150 808586634 69007130 229018046 387210721 1046558954 1065824229 262072110 943483409 375826255 388298160 63682478 447253558 767260965 849110957 96133289 1053435151 875105016 496345485 669366233 798411957 339361478 990605961 354598750 82587507 375272645 921237492 632623651 129439504 888894162 1015240210 728506777 434505617 573043487 28770704 212412279 1039089691 1053573336 12967137 598502002 140885600 195952906 406566624 368718238 132230841 467681797 243542685 160471108 604788237 826098159 878818008 81017992 549579778 984894388 208788238 245932043 427884841 510267733 42095590 500500230 1040904983 905320208 861321834 229898408 45303374 865664025 291179774 73860775 918275204 456131529 56144162 548964179 605306900 607239245 391504384 63301352 1055435188 657983138 933400986 404365352 682035483 239812165 270230181 715482147 728497925 898875678 720660985 112116055 329816324 396543997 778007516 325701496 567301562 831697080 758478532 29473736 950200182 673521121 954677713 78714481 266069509 266619599 687757121 462155302 98527310 1034884991 428847539 295155380 690053071 24345066 687171001 971717410 587062247 165413038 803141027 17238789 82771548 680199497 651151739 329956868 910428633 55314951 487056730 439561270 338581969 627703803 533557829 1070079444 219946663 684578115 367940999 118626921 1036927388 159984023 591826032 140849901 792741430 492068369 631299765 384985798 259596087 83785871 512471713 1062035259 176563636 609786211 759822440 608230723 597818401 922511642 500059905 716819702 564853118 997127010 500558267 980405302 1034908206 162459421 213567714 1067601462 891505122 1050432650 204372251 365439461 355252967 1059736465 856634265 783264866 460512519 42022395 605556595 32352719 891880714 122393143 98137934 133189037 119557970 942740644 176512037 116134527 579510581 980443573 69737528 694637051 142544558 944203539 603938248 1045975706 760730346 748611581 427668481 911361571 494483482 655227663 952279657 820251828 184967907 850060201 135786687 186487054 787979416 802629423 604817047 839841948 607679469 217620782 574479051 881745221 661011760 191258032 1059116919 381818617 843843275 528809380 861544254 372798083 873134078 309949056 970588637 339069914 1006252726 151994326 115955802 417216533 622618643 530447090 855389428 465438662 898066722 287001287 603742519 411945780 811568485 345232128 572712779 107435595 285811826 69814984 998243444 37153758 98290991 824151353 713537458 824132018 114667975 969794288 873238522 151302642 975432601 83760930 820637155 680127327 1071163445 286752134 1039754084 279998188 1042844431 38951359 917030953 1399015 521132536 193761199 977989280 1000813135 1009812673 263198278 530996494 410881073 835847355 831147289 981525367 480507149 75972314 942349805 27543184 79259795 693600991 1038747564 659901377 853811569 337365518 157482931 935234474 330483924 379139785 323712951 764593772 1069890729 485533020 453928787 492370828 61131724 939869455 1044424680 29126331 823302684 396522475 557425305 409453706 180496524 493824473 589203986 391643253 619464353 1025302751 376273654 330002795 521036471 446967121 918113906 357768349 671978120 601989523 492547351 668481470 1046758261 108812166 787227406 933904717 474058763 68906695 575364489 766396944 216862480 1028782218 202243472 793420313 230788311 638173920 549243411 705316127 808787630 888480324 899093498 1009038636 230193305 653684085 357916575 794997194 178642190 996690861 337332219 433441918 302429729 541485430 658248494 679096704 1068944265 1060804561 732314646 536442260 552297216 480906459 1021037591 265993832 806963594 230752618 343931980 41090738 438811104 914967465 601999244 274928077 185718253 55450154 149869689 453031750 257521001 1012294793 113436595 995572942 73290226 3834378 793139629 649869211 852158948 725642485 397358221 718621160 158089736 711378532 866920350 729178207 859730970 590332881 772073481 539930746 304830358 170127947 1003963473 1049325414 133587414 344909411 862219813 58611338 150628323 1052261121 368714958 1051198388 1015992354 191844297 253389913 377677935 1010176377 645926609 343790455 729572291 473474743 729574951 176871935 856475638 364005762 358026385 48716980 347259759 782268372 313814124 309611030 912327662 750440244 1014607733 19996965 943493574 855035976 578395126 995761054 237621202 614940651 684619434 45837655 653302051 483185009 420364573 393149991 18967279 1000662163 694396524 63908480 1023911166 510614445 571263664 351227057 849129201 594253122 426899315 778629785 576515019 675381915 608532138 388225109 722476428 717809323 226781609 641228259 342280642 569227041 1069820490 351414199 229084 213752327 803414110 397037315 898981376 104382813 445141081 396042484 947271251 733268946 887082904 391463123 148763010 53045909 906874873 722248008 138585764 849371568 700401131 292696616 132057224 279355224 181161845 372874522 48086668 16325062 224514315 415647007 443452868 183659339 521489968 394538363 824584063 172698200 887670380 753036116 144297022 248930889 32524292 881345927 33069304 175009075 467245637 709917770 636853375 251846887 645198869 458504841 217106047 820849730 579491594 571531053 965613662 267043578 440408570 1010258420 765053218 392431348 778208385 492040304 302080055 116696073 15323057 683839309 477550652 738839112 180798907 73393880 66585137 643657478 407631995 497301917 14238209 36260852 162701164 1008696445 152328538 782479506 630353877 173718232 98754941 1048871373 126245788 621907565 105780966 669527978 48957834 477294255 348657762 867414658 119052457 1002576166 496255462 55580928 79277942 173425342 8614869 333282783 59976033 804156000 236424175 965994610 1019974794 354525634 938647874 801968624 29185730 467291998 67468475 672725698 846479665 696959831 309294647 184342894 482298798 556389307 911036216 52686231 479653922 273160068 895383289 6880573 612891233 150672312 50438938 864057747 387875785 101581121 851837667 715208065 969518897 552532247 891997821 378737772 489843599 91671572 445821758 818076323 728583017 322633304 274602617 183546353 689186669 796041134 476935382 599312183 602663377 60756613 384889234 782043218 1018645071 894437419 820474703 911870652 236991437 354979579 470093356 912093187 834497882 956447748 1044457803 178965117 671761733 430508930 1020187596 275202541 881741093 581162979 960265675 882227102 1045024884 540641306 326760773 131840829 1017294620 498630937 703040588 578457428 968165728 202999095 554288196 849499324 63746818 751725682 224139932 263270464 309658548 1053000075 290957229 566773541 919221716 647868509 252810960 456857417 5277115 1066528527 758619841 755843377 650149048 945991867 541575674 807931788 958682246 533860106 877496357 1024778024 949235478 648638716 141549831 297162775 150938992 1037613271 649987552 321412618 1033451281 325973355 537406779 455693792 245594564 1000740893 421470486 323651881 106335193 107316534 54481867 579196317 301791944 422678384 361537450 455922268 1043099104 524208851 709547705 561471918 215396706 307560648 498596882 180570875 145221739 583133438 119096808 733652031 867944275 183927042 655058922 1033466861 786822020 986903540 778171622 326694304 687365312 18196468 577077219 263717219 551600130 42127800 301669291 583472593 173482897 49916747 1005132992 91316341 642017004 831788656 111965869 1039901920 918620067 355287558 1009347843 981715775 636096106 812155306 978619167 620505925 726420443 911253744 934011237 696486158 782817657 218656666 278758845 835774271 522847873 142340388 396050709 927683016 136838704 928308847 475347247 1036062541 29792575 603330787 406743157 277638517 606694938 392749680 804832703 931074824 984241937 438495648 243165550 361085870 832638405 572274378 761717923 641878494 655053169 763596469 816379419 75673205 741415555 780118419 529658885 536192094 515973481 585556032 433440162 95494346 296159982 296633069 393990313 580874540 442086662 582652940 803987422 131822034 891695107 980971145 526674700 274995607 398339805 271491812 579740935 847002831 722695851 830190650 125425461 233466253 790376893 598147078 60804622 125440352 495150179 158384371 944176086 228751006 1060099971 453022727 23669704 949700676 119966740 566015991 573920671 760838253 958028586 599167002 868479955 624009586 598421674 432582400 16019962 451836234 760795675 710242930 1027464731 372806818 592923505 216174119 554095268 407437324 607457280 485245663 70019197 400646016 549119862 58179543 876897282 553032047 649454034 343696445 589336597 767421565 610325049 425745464 173518895 907191402 246697168 553329524 703651983 66765070 167585126 693943678 415302323 654471735 903796440 578893195 334391673 356901716 298641190 833130248 694462091 692731589 84542847 335177985 678438746 142994666 383740064 286757764 758619878 918449468 761965509 1058147377 585702110 163876314 444811071 984188289 949538047 1025121120 216456590 692790789 917464307 152805581 312097900 351052855 221530131 655515373 811479068 647780512 111297741 434697954 102771059 987283481 789941492 416876958 283915995 325124898 561782339 857757442 203545048 402761248 238406309 357965817 813545973 927709907 218227898 106044778 498472573 870594730 584022921 832170021 496322343 636473683 662197386 574516241 472180601 365594437 935450883 215360945 917907780 763644259 904108556 477675819 106019607 792211908 156352935 138952076 681156826 637893669 168547162 785983223 575059941 821450139 970836510 33504526 860937947 430348131 942224860 357154679 778155781 138871248 310523751 565496495 894889731 551807368 144910882 982570016 141135924 733940372 394350980 582551408 625965511 99624858 860946532 814061646 1051409694 534145074 495669646 347202261 655330587 892753245 200584274 115291830 294787513 994963400 393229050 641728488 145996106 110103731 693148495 393409696 881924761 262437124 93505179 719905975 16088034 881472276 172434898 716554740 53395871 381952030 744002665 1050804761 358573198 533120659 397615420 865186696 45364700 673004640 537816033 588609169 120676601 660312531 947366358 841818740 335621218 871771633 857816626 296210097 392459786 787428088 664983865 1037332856 982946372 330056494 880292003 1004789007 875575783 1021363157 303902084 831584134 124642769 575508238 92348436 236964533 671035273 231838353 751930861 41591942 931010855 618807866 557666036 785263157 341090094 480169955 882596498 765264786 859080907 241642045 708627273 442374496 84939994 607543466 174753732 978992882 669713831 556111156 902649625 712542944 67023736 343998935 884961253 268512942 519160893 285698577 29712359 72077598 937817811 238474054 717661068 768615701 211502224 712619205 779757783 845670910 823478998 193777091 591265224 732185860 682849390 480415796 689562626 833947870 37385490 958523876 245334572 601197739 623749386 956394536 755401395 750832607 170381629 480677769 659229055 374258836 999921047 264025535 510894327 60979372 520901798 1029948279 115048250 360572269 334008399 598312715 34817130 911659595 518725319 596576771 1052832004 957753154 446300225 800927394 706269396 306147353 60852644 98254273 876296004 658789641 316691217 39203053 581965135 170557373 583803386 235245163 811251402 699665633 238387546 74134639 629661881 118402638 543723207 236946743 198168505 395216545 539773369 216787705 1036038836 877968442 214686974 354034857 390964478 669071628 603541150 731707719 87021319 166314760 278572613 813263880 699206438 34697459 713342983 392213260 1048857560 764307680 445846118 749935586 333879143 135042497 632334848 757927295 840552560 125818008 227370295 65854504 824263136 756715003 895047379 42508820 777901867 54054020 121464654 68896396 654342292 722788728 947259971 458357350 738932639 867004658 103424289 478864026 157543955 236328630 287004215 104156457 699899672 575181062 691597240 910344367 152700109 1002337492 1069880492 516067942 356145439 320939335 894580362 573961680 433155324 517724009 418107396 116232898 423997204 310256001 260632809 132359418 351621901 357396570 999275353 1030674742 669657049 222810422 315275299 611046150 648234877 1002165731 179246830 817350535 309771880 59328924 212667780 957561573 407583993 528144104 805059018 35906299 813032138 641192533 817361739 236349518 451081118 853093514 533130104 1008489501 148424265 1012680368 164812241 891829876 684691546 213990665 740037355 1007443471 444708677 1032051562 311803331 749752290 881734088 677790727 241959736 716576937 593700165 974565465 27170552 463860447 555736874 78687198 302752188 222030044 706202137 786331555 111542382 244233312 747107264 691643613 603393526 717782679 285431992 868826038 25096376 763911873 583058179 878489452 207258437 1052464235 474657875 703287037 525142845 1017928323 746528765 237593649 858987263 811424917 371125409 274719802 857508793 917248172 940447990 254205338 515779610 254024709 266762311 771886979 201141254 488810653 378317996 336169780 67466864 84575163 823532624 1063573850 766448965 878061490 682463019 554464773 337186199 472387290 196324873 121913918 308940922 21640834 825324654 223240225 884030403 594766741 308645789 1024204064 186780427 1050052459 328297954 587496125 532095890 719882800 666152861 55127322 582170895 188122816 949096201 986123748 396943395 541152707 411159462 1043548032 1047655822 81620871 2679979 674063959 491624548 262278940 896652204 771450476 917164999 216465853 760797353 880486579 817152526 345789271 438229460 614177217 265968105 441711899 370917999 619735757 901428052 769861743 546865139 456189088 270259158 176946119 519125120 500091350 623985142 499974725 892192521 838044243 536971173 266884495 303897002 538879212 601950183 313317819 389762227 518099738 14382370 848259319 639445127 1014189389 587902200 684006184 860720243 258853625 558023023 1020169538 940125365 785762046 902122025 162433327 597416489 1004546556 952668672 316561327 140871336 396133293 529696755 146202080 124634365 597975067 148149759 434404553 380166466 649442241 1062748351 608925174 447422810 414642829 10135213 674988762 551067876 463657289 483279878 290628506 985520154 427866336 43818 1029431985 622094595 488315853 739033303 289700363 808408449 19907221 797889100 762191961 717244912 234038451 390015338 94568978 34294610 934005461 259256671 510624880 378001724 793280624 592160389 116279899 262719564 588300290 149897414 323808941 606810938 267242309 889122801 49529431 282767886 918339560 876157736 932850405 1061642738 706736242 944959623 229004626 943117788 143140607 449534346 649188605 683845100 290828264 901414700 774556682 1027061789 1009112236 886909705 572474172 451673233 705319357 496383057 217352405 798050579 136903251 900453015 942854348 657278497 897127589 679471602 981997839 627247708 746112158 507201159 116142412 702003854 12387268 709242676 283484462 172169835 685567610 866299876 982073603 433356650 254084137 1047805618 884117829 1003236632 903354394 274206082 320934197 426927544 1010987994 14957611 463972325 961251555 992589468 220321841 874874475 544626751 219863549 297477418 634736919 847958882 409129320 46893382 1036072971 90880453 235991877 374757775 836360221 368534725 432099529 99762355 739984578 566592423 673254955 972390419 584479912 1002986074 398462402 662522721 358912483 17529666 688479663 519769257 375424788 429952016 703102328 341305394 612652623 711257217 560755162 681495433 896225963 1007867017 955702919 361679386 961388890 401055424 348877734 849366194 1035331306 565044246 45421223 488861068 1008527252 409114648 611437605 557224257 724871188 950997479 537486229 408470537 717577326 1018402928 998371396 857423940 791225482 658726871 731712112 445303892 558365842 505957284 723900759 456448966 522298510 1056150622 199745034 650826374 763405973 95933279 206930852 1018526441 615274485 804299330 1013724383 822739483 728928837 969920562 31743926 98087748 250427869 1004341682 211750371 1002953777 576684562 317759371 137173132 628810813 979415767 871016800 1063908962 926929603 927904387 740840346 764817833 52821275 6453556 713676591 44859273 680186436 451366287 337571278 893953964 164219447 126833202 87515596 818730043 180940925 660226792 941634084 386851515 109631663 551925736 385717444 623721938 908410861 797762714 791731742 668300733 2741406 939685001 670657705 791562356 1032735688 1064320858 499065666 824916299 806372221 217766976 103477300 511703507 437602377 639081664 225254044 852416238 724209181 446749104 101773374 458344658 616293154 371232737 333263932 64806955 648799358 568049802 103108647 870317241 572313819 918464849 50575837 167443842 173933196 250430550 993811716 644780356 771235365 149585514 1067807793 133715182 685969655 756498175 544817402 877253643 483483654 706048463 237728208 197132439 429503039 436495396 737562138 276732212 913143509 364303549 180335693 308296130 285977740 882018467 149843010 975232697 709775557 458215667 856026897 459273157 1061294877 338133190 1000450402 537653669 671627193 52479424 179590271 754150895 201508239 523627717 168507471 56854601 777074875 481609841 856950993 741704340 178828769 467535640 822393624 1023275619 333930361 440252632 888774580 732399760 550538056 572454913 1010128449 957655481 273583308 138616630 438828033 655738020 469990611 817652953 494327880 606820952 475823773 286803951 214908091 842216587 288964550 798908338 363674035 958216279 496407854 812132149 108713585 168076326 688829197 145458668 640256805 850177296 386977570 1014912658 537119995 112056477 249386819 135877203 221792972 79430320 809597454 434479675 384222555 808313309 929179882 302919490 419919493 643555593 943214618 336430167 649695895 67497119 1062293619 794307078 323879478 116210861 43216442 331765639 838460593 256930328 921235137 658673027 797498780 289298886 655262739 28673537 790926150 993560508 932887987 447258111 215991590 1040376966 224797305 396647881 587789353 315636195 460725843 953646943 188543207 498255045 179383057 1014405189 832386600 996989736 812080127 87964365 509777594 586927309 916507924 821764952 956096086 128662412 747189298 1025714831 510332576 950685214 67859962 316631798 255999178 812444983 663492745 753994395 86702074 81666895 986948628 441068855 352480284 619118361 100499496 800405603 453978698 213958302 71230572 206591166 169550345 310363246 724457269 959839083 1012790217 272367380 47884068 625807238 532080298 899139428 183161087 19934317 274807070 964287456 530657010 405686698 108266923 161457333 113646553 147788244 734922241 333447034 523205367 167037658 1001684097 187587302 449199682 882002904 881480111 368286907 95328477 875535391 568289335 911938647 604988561 502652380 325006196 643492659 39909061 1048082247 485286575 998135905 483880506 945678578 959422455 238380843 702738233 315948041 401583004 782134751 628569791 751516504 346852587 156785597 235931080 329838084 538218454 1001750397 220300114 531173798 870510166 581859005 880392258 1005852916 195063245 548540865 665896806 965340699 739577557 267690674 414441186 486633740 445254162 271514749 943426807 1045639982 335807300 756501541 1059018537 674082111 541802050 644361660 239323120 842802991 622327349 359799364 664457750 519121929 174920414 203497195 254803159 400923228 1034204407 787293288 291878542 823955188 362717766 812556068 837746143 1052413803 557051683 841181535 601902872 610605688 246365509 392971457 1030596088 660490108 296164435 7426547 1052338806 33798440 486592211 627781465 929893302 344801427 1006589 149021554 630530530 967496745 417476824 778070572 654205495 799825499 827061787 878546443 410866193 301758943 97533574 912278389 691888717 715812330 899856198 548834892 579008124 771697 547236840 671952393 924636605 421104730 438842374 239490084 423510049 188661744 870445744 35493415 358023927 328028572 147175781 155332963 136183102 139643736 177816959 505556230 390683371 384879974 688187814 97771003 361612712 1037276708 788577501 912469289 91241663 804057279 416589610 413973072 703728560 8445451 587990572 196897086 922701684 346950019 743375933 14925484 739646229 1044278144 204059187 608013773 556737508 146987733 914083629 923573425 957901633 643085176 19954837 87757050 379032508 1061656709 212129791 181384920 44733977 711607729 364357457 402063637 459479767 294102451 282163815 647497171 865786393 122087253 587087386 282383400 355164645 324433094 335154709 514450135 969433806 129827046 120959155 922020150 262900957 869717128 1043497747 610269553 731139725 51420648 432662299 492994744 897396696 63800994 286152724 399934652 903408091 369347400 432344698 70385959 561256517 925192541 819849885 263381380 825501192 623564885 671416715 880342536 105807517 987546337 422199512 73160014 841580425 272585763 11812991 500465284 185457231 471698590 441147867 314066275 70871790 574575466 502602799 969696738 30472697 317244874 496509019 599255827 921813883 596691058 870727250 381000969 443583386 546497296 1065415645 760227568 585119803 26754900 451731760 264840115 911917043 316334190 839899358 960141737 618464505 995368397 363311452 735390260 417878855 905667337 1012263585 244931446 125471765 236269966 230136502 459971769 177417178 511932917 236407479 298071613 387004170 244807950 59701933 928455248 1007135244 717720950 543266392 1029691777 938290236 891984289 364433249 284839758 41197593 930717018 722797734 62498370 330130286 228624204 1069239573 880506635 913903375 684961512 51224939 674413149 495899840 344120885 584491214 331719434 399366954 848465933 53686225 356016007 613481156 624780722 433195465 832675271 71199735 900280367 113547783 963058006 433177521 806392528 574246614 693870613 13404584 164150798 650305980 36456563 365451691 678935092 231712254 669887980 286382319 229417605 588375477 419543762 75427068 572888222 935695683 190503793 471043043 49069721 149752603 809218144 128702932 534598051 13733187 529246163 289016370 491201071 209440062 541786571 886968157 108549671 229472719 830308066 192935763 830172100 32076500 313713593 744702945 772764958 965923923 163484018 673271819 551890184 365197349 194511830 1017007559 950615890 363173046 1006279800 972312792 270272220 898983023 939313166 396950744 777922653 240262878 854921285 567342342 520647833 252463101 942248338 577022767 201342092 569756369 812755090 1022709547 594187055 397720735 515766712 414399972 76171703 761906003 956780996 245833269 90581063 558850860 775813742 545153118 407889600 147344318 219641672 52299093 847649358 312761703 127029114 110930369 833704600 435281818 378857231 1008071732 582734148 229549908 693936201 659341712 208209055 423245966 352336327 336172797 894936703 678835330 708298608 559944091 509898131 339468315 150657603 101632480 512607190 1001414284 802200111 1045149167 357880729 345757252 906780742 180235366 173627624 974704888 49791249 926089488 583913184 975226459 17571318 129463135 388858748 572718008 929563751 968860123 345734556 1048651673 970860266 725370377 252178232 871102864 362918678 440785515 277130078 107830442 1072815544 22539371 76699177 956673759 16150770 164478342 26296351 473086035 451802889 411288628 576801401 276937537 365562097 418114428 200084938 926415278 623860708 652838934 479156586 499747671 384966708 814013605 1015337216 808350654 360415345 812823733 815526714 670648423 260848290 343698054 614129984 638327608 365255465 223087313 795021469 936987182 681519961 34499317 978413724 513198363 887055105 130500795 877426727 416900833 301030239 315992454 1058177575 761385521 1031379636 206188867 549118168 116116218 942377015 740415386 884782533 266109774 296172422 778405220 507887177 736689119 826139926 100107695 930068510 912825643 94814216 927395168 379165166 827257206 346563450 184348221 651050609 167928616 374307237 1005904067 974329006 626722180 465127964 571426621 101624600 752226345 342436943 282946620 828985019 181892094 325705490 816605376 688760781 639053719 457673229 301865860 1006942373 12120470 946802471 231476588 665153642 38521102 336410236 916982487 936756535 566580580 44155102 497083458 925821734 119493393 884213277 694915012 916513521 295238866 699357833 595389323 837014214 459002823 832549315 497666559 321749688 1013015664 804502172 934706589 741702820 146760564 737189801 127896427 348090609 1029495012 25437997 639412940 961291716 29405843 847375514 982889685 192198267 146159343 641665921 129707270 185661694 95264168 1020212041 641479812 4274278 912415280 255479374 514939808 581231523 55400689 563976383 1051060476 628504862 515565887 918357612 523178559 308038213 345319720 744837587 606938986 606657592 557167696 540127613 307273850 339380558 390155715 12676490 203552553 916037735 584695385 793828424 783371356 185352764 777641213 2681203 144009384 182843364 42366091 1000545426 33032249 125125817 152953300 606536503 733342563 930817753 770016079 352788497 337235927 478760483 891311972 58386429 131025169 104181850 293005667 590578347 337415696 360206554 401253855 587904006 8054651 914592749 283493597 119601219 55328241 186042957 245321543 645253464 793974845 341488479 328315900 521586095 386017635 54159233 840389671 303807552 714132822 304194996 1010829482 1001583716 991042637 456141960 972551922 49259926 944288446 200278147 940342542 916586161 522925469 816568780 762993590 212389662 1037388830 1014512470 470481985 579558281 978140136 474386259 554959526 547297929 557804811 359110534 1069118706 338988759 683128829 200552599 1053900483 1070758587 243661706 410924723 558562834 226606502 270668172 122715129 959609891 415208144 99788678 889608014 826509097 836347640 515202279 635141387 385013903 549048753 668488801 964592710 67534431 950924093 994054034 355011430 374569396 287551463 1023606662 662973605 654313289 502021049 686426842 220529216 829261078 694112815 507946180 32063884 66075875 463678769 314436710 193846450 575743415 454025911 730464474 620255439 16072298 223409166 717436253 859928519 485317531 694608441 879540965 425693890 480636515 139178190 283616067 754541800 393643301 606752434 180022597 512235494 741263253 738154161 330429501 734139727 600346202 1046311435 106238961 87508420 894060314 31030482 969120845 84311769 49880466 65219403 609380742 807262874 312239166 712845166 815795092 160479143 93787365 127819379 863573502 946258617 427544760 563116349 137287801 238549262 595430366 857515017 9549632 675545204 377395208 732076366 711439034 871397184 543677139 846405320 565308562 105348408 343394151 868972897 14386572 102840737 1008202991 125234894 129466189 829348085 863312297 72378387 579605956 1045212087 84419023 273280437 686116199 371102154 926950645 860682544 574163836 828599570 308673741 890359529 773716759 129287718 692890760 684371563 1009830354 678316400 493268876 98871487 1052234423 487488126 824346517 338818541 839488699 320151823 609987902 740784128 1061004504 1072368890 536774518 596833704 393586195 614750850 137960709 101713063 577365474 19614592 206580486 274922134 250144662 773113029 915353279 427919420 497933712 255152760 128140146 1048818382 888374064 358579885 712908542 346356806 247160169 1053144135 233870642 806484996 705580957 635115104 785229387 656250330 307762136 649587276 419049504 667303600 346128183 650897129 653573378 492764568 730133591 1017101592 702721469 622946860 1066786540 532737441 52065890 610056125 303416755 1005959676 371141377 354739714 1067819023 176231052 434622616 7171239 778938120 442156814 1034867898 790256766 810101441 413418285 1032185062 646182463 324868339 307404366 418606779 34802104 15802138 658415714 372490992 923204663 547584825 79885397 796762265 1018957834 901883109 806750386 718346907 236358650 996093155 417580253 220596667 427982997 782558414 1018272192 309865256 314019619 608960140 48589893 288581671 673642055 158328938 54064636 1031542171 696254651 597533422 597118982 699813139 54355901 941106653 166542078 783702863 310787476 23611991 402187382 373538068 643277321 668240064 642227318 311704784 458651440 704607217 335435187 442295375 741552902 51159473 466949465 68312339 353668777 615817496 600269775 575586028 707612730 561829352 110534748 646375877 545623667 883210366 499013376 719236628 857453104 324347704 661869029 585870747 726847202 780484992 1057485872 168349676 792409940 843143171 664908888 695173299 1057830492 269484002 474100884 320235423 725120817 730515140 717114882 690010504 633840521 895519113 447296476 1057875083 263238663 403794970 1043293972 364149791 906426845 231375428 645595439 532544243 315182234 259356578 776984150 576977888 807754399 849072750 266936400 978544217 832827971 628831236 463696213 92212549 70176922 605769297 985927854 540498945 270726501 677265599 283882341 751973447 811961513 518609433 790941966 566674303 448817124 383384515 329375285 6111031 314884017 619299219 529685410 818743064 361505494 822263557 617051834 519608153 190789931 486499174 351628910 733526373 1057713800 89319702 557413476 491014385 683639249 388477195 316415783 209242455 714696418 127318475 450049490 1029898407 1065075740 102040179 451011631 552699229 301146432 168614619 271848699 169296344 289767234 257263146 574700188 711414937 20023905 211897452 875204466 517794043 796347789 270966637 583808929 885982831 539846898 551365890 374012334 696771057 525820390 989234596 906555245 237618731 881087821 1012758825 355679289 1062648619 489247321 784774078 379094745 655891399 1034578931 793650495 346163792 606838321 244659112 691337501 371647251 542562645 125107729 219098964 667629940 542108952 282847505 1026451243 1026717349 937916608 905623610 643151119 888598711 808083771 549446900 777773547 283681960 152287594 935680092 1057836395 958896562 35636548 795442670 662088847 290958438 806857826 644270693 365501895 1020381798 757623362 515451261 1000005364 752233229 5841332 635513317 124689325 598012781 532869904 556450912 150863040 668473758 966272651 153843272 567226073 940013043 631533118 6973305 44580792 926284330 299748369 678256565 362281152 249027264 918146232 468642268 77168479 489425344 839382255 513374031 150361689 979487940 167236811 775288414 492197855 587277393 319556279 885646040 459558974 429557104 23701031 572117375 808724768 233815147 202582328 493287446 354990855 647399918 380219882 525756885 503495333 743322410 1017035108 684350723 433465469 206579012 791398235 202261246 913949368 245486295 1049098667 85887019 148719767 52980678 988133317 1022542896 1024443028 284871594 997606438 972237677 95975772 334572566 533295114 184447766 265076304 33984844 116594150 342677329 29403216 122649024 57670988 742341346 1046653066 695195853 423648993 522055329 579631040 607624519 976176854 407611931 133350974 33891270 588968971 983404483 884300955 352311308 595693964 850521808 420373423 168267265 187806665 676315504 508574706 375129036 346766839 757455996 59211546 441676364 167739383 802596082 562517725 654392771 1041208712 257803737 323716782 616272974 863678830 689757807 660756596 317395176 400419917 824608914 871624351 465862021 834695411 709980728 79406339 210112964 642414447 791101183 1054171566 78072666 123746351 846804055 331268924 139687995 739096729 887575918 580011148 687614197 475408858 174675440 338753150 853737246 966879455 377474808 423870439 145980065 76686534 738213572 956025632 658534566 488285964 180781631 219031358 53680646 985573305 428445968 108559716 238376412 306536240 158992008 39876022 684857594 651761060 177792600 242369790 466534202 739869729 50125148 61733121 797916253 853334517 369558082 294174635 711186354 948238001 722227298 645975398 169959149 1045277849 391403046 1004555736 2068034 445909181 1063275558 360462758 758472595 696617465 1000671723 41975487 910923559 803519310 832872643 7710114 794185678 827144926 512388598 909574393 932812155 111588618 946073441 321532340 517063428 476841315 974491787 1043179075 336063837 929734095 95304085 58085999 299530249 59367936 27721430 888910394 740164276 739871340 9896270 1053062885 1011919778 326301990 612911087 929081507 1005696864 825577289 988048435 1056147062 253749339 694825483 368365066 967167938 227239693 836838770 752304011 319583848 987470541 189290115 321898538 597836962 1010972176 871120494 762324549 463405769 821062067 462096562 578316801 713492009 101900076 128948707 769275459 620013209 46469934 954693231 38584588 69170834 731955520 508598357 363991670 799891456 218503672 942626628 481701383 819166772 489533154 49948362 993647892 693451167 797708310 523620072 1007859737 356427179 390117891 894654618 839231231 676021631 230876420 225882497 1041688865 1040849998 539136555 703250677 900110402 559348686 612245300 869807271 753392691 257011920 381105645 683752777 265493236 323730507 750440963 222431316 862439834 693968411 782646893 890598731 345321559 491798008 193221797 565871344 712082811 6221889 663850733 853285916 771799085 735629375 862316820 924363527 94311330 502449270 928292748 854206214 218091372 919678648 662693955 482240867 313712138 772266891 788297202 84632636 335813989 300210514 397943258 96438162 103436206 559135216 884221313 514255117 111376646 813985155 564453245 589515344 162488579 642977851 852097320 501339916 81190214 488601267 389476011 358445575 819570879 375282708 286268080 562045514 960349617 572513910 555041753 866594235 385659421 444136066 490686541 934787210 97317428 707814318 727051972 740548504 1064934092 658679691 806574028 535897740 155371202 733044911 765259903 441305684 476205978 955254253 1023059766 500048968 1067037857 525848078 70577288 1001405917 127027834 235324961 642483772 293969351 375323966 246893742 209648260 786303874 925412195 654692419 213305714 930878246 88313633 247898118 739358961 708274231 680182316 343309846 560917130 991225894 574009230 147262899 234428063 652155834 527588051 587978127 544254669 549810555 303133395 755072721 653100586 932980251 38986933 468896985 550508866 561126114 982392199 478248367 937494781 375443192 469066833 513024440 951389488 323738589 960439240 858845748 90247477 787385947 104299181 860118769 94904027 67776907 18835847 519180762 23852559 113757879 837191477 643834017 108661785 243249274 568334509 511508609 799440994 117686107 773360769 864163359 325274674 1018885800 346076748 195026558 832649395 397751229 442490581 848298172 529514255 240832233 393882679 754728373 1044930000 384577053 1039730494 988468256 839523632 358909346 981223564 15982632 906716541 475576170 59037536 913809270 311561761 944735309 59360230 62299050 87270602 868159191 925606195 907959943 571165214 1007460877 786697694 941059141 167019826 493727726 501889273 819274940 982414200 623347875 1012485792 961135458 435256310 837857700 87945482 599501546 286220174 688906372 663136854 322633326 121055663 608342581 411189608 813985408 1058037464 339117751 958662775 306862148 901189011 907023058 169189529 716297843 581368317 1003089488 61544169 778398825 988710181 936095113 326273388 899166699 1033551988 253620217 945465666 1065212949 1042816793 584598087 667533553 212095735 440058063 778837934 713754025 328031048 472176069 274607927 19502875 62443876 181782161 855126827 1047386016 498336182 818463321 10385914 456795829 578542952 666432956 64200175 359415107 389611375 811947550 986545728 683082203 169804571 289828638 538372978 21396026 1052383858 318356138 238018685 949083774 341383968 542085027 212265536 1062206465 842877284 952429420 99907782 265687136 442356906 317032368 394716709 506613373 498209878 536710672 210513203 625943844 589014242 480116972 977736828 695899033 1003728948 262151291 483280675 29222631 780674958 942006608 673041926 321256502 36045237 284719129 272690238 802944350 456191031 458087270 535925893 578712486 359292215 417200472 67718253 1030010981 14058980 193176948 651163233 951387155 839690129 780495235 1040248603 388448687 1006613830 510418041 714293674 906345286 915068473 265873355 136619238 231957116 811766627 555692160 648946116 923617035 355320736 646298142 168691437 819584878 931307768 237786765 90166332 31764294 907970041 255718609 589999138 628885333 975538743 864277563 358580489 607704434 470135434 901203941 813373466 283019541 553242885 281971854 202912553 197842567 576907219 750500707 26162534 767266158 895228353 585455979 664438672 867903700 341953146 54955435 721495998 169327136 462412120 777506898 176706930 54123798 1027333609 449820227 528277281 1025230335 194891653 702841175 370934750 554933250 239412275 62773487 160925519 647366198 405308198 598743356 138605014 994309549 368936365 335013827 202759861 526291225 297542035 502553749 407686598 587690168 408012585 114044369 300850965 18562157 314374249 199797082 121127589 674070748 882652201 1044055330 29732453 771155653 415422076 304423556 840153625 423548234 676318540 610466662 575774029 536187860 895091910 798140973 637080718 601626134 143043307 679143360 393170224 847731080 567263266 892943804 1003420322 709017518 254709320 656251370 1003052640 705947686 930099224 494577703 626330265 547295253 18827956 127972869 238412364 353704434 447675382 645882276 49565278 27643647 1068066772 51350412 755818591 792951218 801806067 603628913 915512972 460740074 648014919 1072413165 69218248 95942384 90792448 101936673 228500170 42423659 632563497 89887345 955219977 326641993 91758989 755840155 1009440765 840529747 160686651 1023667651 297272063 765772956 1011225751 186025059 1013319328 732557292 32313513 478116387 933680673 418302047 46980879 229981212 893654915 547521998 99695373 328252467 784095986 41766780 937552033 948256658 661721479 342804040 115911142 896327153 262539688 996871959 510319284 366863310 616860811 163035077 752877687 460488600 1055654182 533555051 212946515 749303588 522917967 624919212 700534132 56566404 1003772878 510010390 55968794 679609852 878635931 686154993 644371673 234884458 318372215 450863945 514233770 632564498 859554868 287120060 258252971 713673545 564543562 982748153 914554412 855436654 286997942 951210200 1048814475 271395504 390487734 983548210 537209197 903670058 333146019 748369576 196176264 782829208 427125242 28805878 284912404 897641683 480776953 137352102 680406208 565597229 967203928 289001446 734125983 1005906204 367513421 561446654 742768379 963192451 291369226 411756886 929616080 901981368 557484186 588180922 639753675 1067586557 665644696 754115369 1053612848 897957277 181562220 173169604 49794011 364732038 117037891 1030465247 1069069315 847874137 603647724 721133111 655843440 958536044 752871513 1033122668 87677397 769522403 450708310 165058371 941431909 619784501 206215801 197662830 61095627 315746704 164229030 875055795 254653619 546887465 274738119 951131336 795480502 783119862 893091753 453972559 106817269 1027470700 760953396 871770277 45794854 27300342 127873853 225057655 549916642 292257153 986510351 140271342 483117836 195780247 964653824 765940802 351401407 844987083 765040904 560727623 1017510270 642274374 153500109 956685011 190620346 953226105 546342025 592937169 739669221 205319959 91004531 965157979 427787716 798391384 67406438 437326009 756014497 595108255 195049810 105067467 210999989 105693919 390128578 747787022 723781368 884142931 964486238 684551274 857052859 665950364 784591287 536840447 303725246 894009360 1012716603 6181485 652452262 781954742 1034594329 827474143 567453675 990534404 1019051590 461697507 125212993 237082738 491770660 647755438 721712121 279677811 823174402 515192492 337420585 984462456 281908344 171264728 604768984 121023393 216509603 704884592 42001757 947954978 402671926 507253328 478942393 659522118 20013250 460966507 665385312 320937010 348093222 799986516 279141513 850248639 763281522 487403061 238962509 941248616 225315158 423612195 468259274 12424790 648664966 603327262 725955406 928062315 189817288 1003370152 322971907 909265528 164669410 414963227 557318392 367207905 150672027 679000389 865812776 687885640 990110332 1056459585 384070723 96260787 700309557 263144730 768019456 352823619 217782642 898343760 717866306 636216251 640447944 750585361 731758346 413920886 276395803 597252589 246977435 735339650 372737667 1040030162 611945458 632535226 240212704 653899231 682645970 71990022 177769747 381949512 518344080 975693469 1009622904 2921104 382441200 936207301 667254138 886562572 594618996 102349727 323601397 940525123 873300645 325514213 140364797 942894794 280792721 103533836 363322318 746195358 162903042 142640794 100027498 771812620 1012862038 832512971 832342649 279208632 204638234 290827837 152464409 784027547 797843871 789275038 311679395 644881182 932457281 928847991 486338171 832513549 737329393 41032380 126343003 200568479 303831020 674317475 750670862 875632805 1018081798 380333395 318011062 413982071 909991936 882581427 307682076 129969144 369160592 103622250 479559464 430052657 153983530 1051560257 158681250 978874666 170548977 776217145 1008418129 899212850 186893094 780366205 307473547 214324990 1023789420 897681433 191070736 404161865 275206358 321703235 672202625 1050147414 379335486 897225953 969272512 395994379 577993154 97893470 225073263 877965038 722479572 882642155 541413943 433252293 957320565 412364666 648721808 198462085 718051786 117838851 584472417 785786186 100622837 345569818 619298812 278273345 1064854230 61121201 381217774 223622278 843338851 895336147 467135944 279484284 28802921 886987148 353283403 866330163 743547729 392878244 1019240430 969001448 884384717 909944140 466026973 377635722 366053724 292492815 597846162 201213537 26601770 682865984 993910987 280907383 150964861 393166776 733700409 623569836 723972045 463472139 729998328 427374887 612006569 703334179 962533095 381494485 358101864 400403337 92976136 924849483 166872500 484790976 176827288 735818668 423220700 812985133 50944216 955679713 313930994 5012736 563994062 1006090380 266998029 756036192 41583195 354320220 417478875 276048680 221782925 886769144 648890271 870180807 770482133 720707478 920119523 130975701 1069947790 111328430 686104273 146486256 330781816 107914354 1047524087 85167084 281289936 20166919 765813336 181209940 46673712 456748825 754307289 1009148187 5322007 1008204792 565804051 290110258 366360661 245936550 184219403 523975553 783599103 463150197 47310833 323388166 41348311 99944193 850093331 758696745 368909451 882754651 497597130 505117661 296089075 795175556 447753458 667387826 293331254 429020221 238703222 45824437 157706181 677991958 6080212 216488285 557651077 192982948 920718279 888665158 819021871 770790266 128388012 983523135 27276547 43605582 27977395 948277207 212512792 815952227 205914350 741692559 420978377 383690861 232091713 1029575265 171991657 557697850 135865689 820783847 145166464 328031265 282175494 208799292 595253549 321373963 3490562 182102552 147063061 259376180 120062731 546978376 148211050 739931257 953441383 405167468 109490187 911422473 1001033421 279090502 196288345 439843458 311426471 875636655 586539669 825735460 742743971 251006997 11232300 922873678 586198727 443278653 313781995 479654411 179348908 743982920 1001409006 517455490 361187311 232217795 482886743 368846637 1023586458 557353282 1020094554 915671690 1000794894 225911459 434265023 730955065 758046696 38075792 806378188 940784605 356125920 70731804 139119664 58807227 976692045 714886517 936977013 203835992 214219480 526083386 343232089 343852987 828620134 15723974 594139464 503570224 597031951 295583056 410202450 957419907 620082869 317298428 888199698 164147742 986496716 489433207 1054986685 805737644 594159720 872558486 475196594 214472287 212334607 182002627 976485960 569442171 729694346 617932732 583819141 171440926 287340404 428915460 29543806 1072411378 212342364 648866273 586613441 104234293 284745064 308950332 215120186 391306262 266394653 814818752 543054919 907023648 312650018 915081036 87221140 244723747 75024814 552336341 556497121 346523217 1037589043 931791128 792829531 146336315 656472156 126096711 190380016 494483766 926734823 352727994 277706212 1030432450 401277043 156325038 980845259 316240958 477141152 88507377 19769335 325360062 133794730 216069194 18686072 37099164 43377203 575024836 926209975 1000477689 1035674239 285019084 1057279659 93019941 454826719 751382318 269769148 421547527 498975693 271278924 464208510 822387181 12098975 886161337 36642984 936755543 723679580 720707297 1034255885 706980466 10316515 624621129 483183436 545172809 888795908 928004316 200063755 844518878 301484781 782894661 377973489 277468942 573606207 206255272 901658881 840457571 201245329 455992521 1073020904 487082179 355434386 78690709 717278100 26439649 168682432 25839399 170076230 768309863 786160770 354748832 740661057 566877158 407867200 410524342 447576057 1068320105 866278953 592801221 603442127 340950672 890980699 322584836 279502616 1055680307 186959636 928567108 810028214 283247717 525182796 421296256 59326663 833294552 864544036 1065611337 303356807 693267187 311097721 646569373 139624784 965020637 629538749 199150617 828009575 300112724 768316479 868070016 67672220 475295917 63565712 174095483 253434977 91668696 555930849 852051010 273007611 377291748 883742433 1032371548 990156527 937400589 256915354 465018603 622915003 727482349 496699462 518589471 1013994477 967467878 1063769334 145976881 102764018 959629945 908383256 40158337 347734893 612260390 569912080 716425911 909337930 799085633 974758792 482341421 600371467 768671013 1071051402 272724483 724370205 296960922 580851512 19260351 799848218 126475050 1008859360 399266064 263148442 822035410 676207157 380910763 496389176 191115123 678279483 413284269 404217686 1063857056 75413096 135754006 672190351 102057449 971053704 207751192 50700581 800308145 990783278 115891897 857643755 687716777 537939495 823308374 368462303 500028973 727672471 615331519 283613368 412482124 41276108 160438151 556040743 579775618 113548167 549717685 850858690 882183329 613503588 699206811 843424795 654448796 240950124 963787751 437552584 978960083 994349750 595429336 918388122 617223674 675863115 21917859 564311463 408441447 1061032339 35889126 444408458 665100125 322685316 885711575 383580172 831191457 962820820 370517101 1055451036 815311177 853890791 482776028 262116410 132260286 756645812 526810900 418509745 924827725 169091145 711302173 253016402 599338783 341310742 618514640 473579590 75871863 893217260 619167342 32452513 755224741 448325435 176429482 518367415 251289084 1035512446 915192979 728721586 919278266 826795663 567451317 240566274 572064916 3256415 86068312 283750980 621702251 1070000962 12435893 478204815 352328325 130894770 970692385 484225355 576294051 675809102 939970842 96996672 669609216 232266434 539307413 939780495 376800147 792491039 858973183 853015840 550317782 818159008 891697537 212275570 503063261 308379889 183403295 349734397 830579353 618018991 1055680422 411712273 891637528 728013772 146894171 1016933349 1000011616 73658837 943906794 164209038 634501193 403531800 224354584 39850832 599503297 773424680 800468867 285707625 922036158 1004096205 309740183 355716215 139509540 22914600 986657529 968547257 980319802 634220403 308101354 356727057 862322264 965063127 130643907 978825053 157401664 797175552 396509974 478721294 435138818 463301721 1059869498 104311994 887440188 841669293 1066737794 1056964650 756287649 93157087 866293003 816974217 151710759 435601981 236608451 164470553 587594794 44198142 374667456 298226783 170492635 1049850650 822457911 723435598 217543319 504961280 607723390 454582520 204883624 4915012 122363498 714721776 480278157 576628838 1062470868 210724729 877833957 658926181 648036030 606857030 7244186 262031117 135655561 284957183 424389032 215507179 521374872 135549081 17171159 942913278 381876617 94794219 585269971 736939447 438884422 516486608 444331825 1030191833 602308696 403529938 919398893 853838552 506012449 299446236 190392333 751859249 1066093848 301423460 376982264 795431953 473088361 161562074 557607813 724234959 185442972 948435884 688377958 262871581 891487719 792440578 112930296 645117884 842106649 494673048 204133765 754167429 1063874184 730714909 184208961 943822746 62235279 123279587 956458971 168970259 593672392 621885384 252380604 1015007082 178837393 31407838 594270086 279730152 781537233 885688516 547236064 799939199 179664494 543797889 461371446 602642218 329967344 762279015 194959767 914864132 678244328 740946838 703872059 1015240372 949596170 55736740 593212578 915786548 160598151 676620816 833936104 909118775 251970117 721303676 809977336 501365678 77036405 321513771 823598128 52296123 767301897 509089684 353771615 131763386 1011170717 890601610 32132814 783887728 600716892 781412671 118551403 730195158 968687221 248722457 483998209 298501326 826331937 1060285848 965348803 1069609873 599208041 625389734 719478376 846445874 384808709 505653110 267852124 832686627 605195961 326160499 759600385 556807394 545085045 487761789 326162252 395915967 1051415204 836975631 161324948 364916594 184770839 335602819 1064777887 1066585189 676931567 132075535 156874131 782835214 883524370 895142467 910635468 594118879 888672459 802354830 215829483 401452010 389389300 672291925 33645637 362260888 650288725 775453970 767482521 363898838 730752305 898803393 673037609 430058969 443459521 360452049 612524086 130072765 545545549 711028297 909539456 50361709 839668830 840749835 357989077 337242201 421233180 1064245737 352271103 866847188 37642027 729147746 244792494 543284562 238213285 887336623 29812608 1016990746 474880384 45066969 986534030 519407990 425167242 256607199 750499174 780611684 306442808 821094916 914500184 258513549 482798026 699760654 673311614 849594139 231560829 431712715 289793453 997707677 156621876 522886469 923856635 1058408883 896566335 514990643 786627326 326736762 787249055 733598186 148836704 518532061 1047321057 133547577 21607354 699491264 460783079 169340827 910405689 666112533 405630069 1054692944 836535005 228976855 859946062 656000004 502747615 405375510 287450381 347023797 768529097 708434122 316392236 418807439 186082211 504830245 331776071 29778236 948254887 733659171 588846466 405080744 1089741 107572481 77984500 322808297 330902415 893912388 697067885 821994669 328030672 573043506 210212530 618503560 110060794 641858974 818838888 694972977 838017453 694468092 260488100 356263562 928036675 345322867 406860681 422837683 594446170 509201930 69715562 590990786 822415432 52842340 573255223 395686349 1010871683 118447290 394698618 672063853 30517657 121807787 848488149 55689354 258789399 186983734 611076103 634180458 324977798 711566981 773419839 975779558 611179037 54123272 1070405219 977433234 225682640 130724142 50178311 651028506 458473029 473080423 324627750 669395639 644866457 38213930 819563278 733545500 218674651 995666901 1040775126 1049844690 648029830 861301745 869730642 803555751 33652539 43916616 8551238 342035127 684022250 862683777 662236428 150903294 230979980 626956623 269983289 3712247 439541805 816426889 140510228 477738726 126057148 987477354 958624801 426937883 1027859340 770203210 808135932 966329120 568343674 661390233 247207422 91749361 22976452 960896345 835121026 51555714 130848331 252993375 713976074 213278979 940428730 632114532 99844443 191370884 975537650 594791661 861145328 837334464 402817536 356801916 801794438 778965482 40961586 979513500 700575930 127050419 786462473 715896539 334178100 346425384 410585203 897153271 1038777613 522032260 319912199 207611435 859244823 317936725 217136077 606198564 870358682 487697458 775037811 103334818 255891526 875551560 625425467 176374137 463572752 541921989 1011184004 730627680 429651174 330882144 154029496 553478448 741171360 223083964 618878399 871652786 538779984 792830562 108093837 413103158 787181991 1024110453 762439684 1070150844 35159582 1040078791 173575375 1067923841 184266817 270361044 549807274 69531429 248301412 458783096 157430349 542197115 435257348 33753096 424487585 1048887113 86166637 335657 29449383 197132686 594430356 71380053 745825009 656878067 582332299 118011470 91233697 676824550 927365531 567062391 646123950 220863809 160289859 590444342 351238023 227823491 907647931 614124988 1028393272 426828332 176960645 695031316 900132392 242061958 761062045 198234539 49334583 657006380 250807043 976030006 19001627 781453264 812496636 757373229 760412849 375983598 521828059 702157201 610787319 136110246 620183598 751358357 329311664 746495762 670524922 1055020095 578454420 643076958 336778237 566445606 697521545 955612302 866074659 305918326 461492898 204290030 279375668 1060799867 14195798 77797974 123059932 504159522 830905645 761448181 273970804 863466562 912252641 261120659 982301092 779361987 539815449 980416010 283871902 736863686 1040387559 98566651 764136671 50124982 701307909 493581500 9925382 821069962 640973318 355988016 658347717 462613542 531334405 259685410 657224719 472777335 637324009 45596498 1034666382 729630376 877047724 210369540 1062257372 803672449 669629384 697546384 721468667 626740849 352725481 49524856 231014304 1062792858 1064532367 173460528 973316553 317898729 534774799 951931575 592991148 126315307 258058891 920622383 149106592 590325486 1035424114 820018867 789168289 489443858 561880884 500767091 834300671 872204237 981594632 204083657 979875576 842089064 911826412 311303827 736061116 826347336 711199573 646388557 665925523 1065763728 1039999899 166803276 93393667 1054689963 819703118 894617906 84065191 203556727 241272407 532351927 67817090 733275582 549726529 936902782 782928992 517545950 576026301 218885040 697431449 832385376 801460842 17568390 759561666 593774197 719747638 409515874 333789899 693715254 561913240 636178002 658399774 673584389 879350865 74888214 613987724 225395922 661052559 906922601 996395082 709366956 35765129 817152766 334703389 230557632 938463473 896908729 1038821177 550007090 738558601 642700487 296486278 402760718 795451188 759143708 321454160 264299099 260242420 709545637 365164373 638836808 592759368 756113516 187616301 570337941 695783711 196154075 63294797 75077771 527104594 157706219 806508112 197416018 721434333 103166865 3404324 71107789 767609494 276139959 35806583 162753559 517384654 179903135 1034212103 170945979 424986626 102593289 414551585 596016303 361446543 826104014 342193967 549798605 1071007026 249989177 682107188 89474379 823200646 764598171 665901014 892086042 384224311 830756460 288060641 39332545 2878328 998919775 580737348 849335303 292941862 96633065 945085851 618289625 888357082 417869412 704126176 318770987 1010401300 610480861 772154065 51749303 177026496 507122234 742039585 105961589 1042152617 328929310 719808857 44932494 65601063 628913139 123224680 949937201 157167979 579280886 453520047 177033892 307173351 594660638 636525519 15047765 881714715 270183678 169858133 61175504 885667327 514688113 414340719 91251659 1063578250 906393105 726063002 829387985 300759599 103383997 810610060 843045628 652657158 299898554 803443591 508435434 970995648 581392970 570004603 51517261 295121683 122358983 732868010 170937023 710640178 455291083 436694500 964147840 410676614 92122411 1039894996 268024174 255994626 680940946 186539045 31491768 522265176 267662674 829280982 325515265 1047192794 413520506 937510068 320058729 514886557 239787532 912306038 466997011 308632844 910269434 463510813 843878547 299994574 641762723 265816613 947759944 565091142 983255363 599351200 164310757 566936739 394991620 784502541 992275396 139021628 94426069 443787765 660320452 1033509780 421366802 442928763 545585556 324427387 188270525 433328819 853321234 495047684 980356959 52582179 539681832 896156677 999694970 967669536 562228798 478489546 1016394438 101335880 680350725 610787299 993837018 336462736 224622208 365679954 2219987 748801134 182061851 616722915 784784798 924597148 308695935 976350478 34554071 303924475 922273650 409983595 595423251 506096634 193050746 589424728 260705649 735154793 1066562129 729309404 1047581174 851240112 676266552 1024852258 975855330 439810625 101406468 275626123 100658085 1059675115 69636634 188724071 258091093 94026700 900559286 499680183 347062231 56153602 257091866 631121806 946463066 86159973 678724285 798551800 375482019 45249518 145573970 197179795 80706717 254641541 957842191 324048421 331672430 962995453 713398829 255373559 904305527 571433131 738779563 501950915 290054865 25540920 844317884 1062926052 71757857 683072877 961407061 727254443 203065757 800956820 225272910 28163100 429015302 242730819 326547503 933473956 191771731 150712809 1053226621 500996168 577237387 99091592 751669387 81824663 85937370 617258429 456610457 675506552 527333411 641315919 1014418033 1064545996 871305639 993293484 332070361 189346439 452022435 593363436 301054345 958243755 747280491 763467762 794489695 168643508 200517017 488006981 562589726 580852385 332281656 1024273892 234058334 226813692 317024721 1053868023 76152053 629329564 392006392 127666066 54855390 409452411 511052568 696864645 738990902 61843416 175510805 970609993 218111182 838756590 590373827 35895083 826902205 25006678 760665302 264920306 391576160 436319878 977760282 567410511 314023769 501069773 370556141 718164358 437277887 1001245982 723254952 881690524 373787127 642414740 1006848947 889934881 614202277 575353089 510523552 177608057 327708533 782883919 866647268 321145998 259836356 475227720 681910137 859352340 287267395 665930167 329821793 5713441 500938745 401458368 408088374 621905693 231089861 185646758 773741140 1022806319 1001749207 326589646 774545895 42812878 641067317 208290313 607097506 723380464 583361903 344212370 685697542 558586233 947776807 742901337 322002857 675558953 740906557 485207217 841616396 271030196 706971113 448400882 567263656 579673453 980643200 475945662 373619625 639785706 350746663 150704831 523493938 1069235183 207502927 573412267 346396382 651789373 7416294 133396507 65522170 471493879 269804803 178590207 851775673 429956635 762465130 944967482 1016352056 351855562 589623701 1059502539 1054800326 317332042 715326973 577034298 868464539 658857787 198961877 410263691 790259342 274185616 444409276 209518548 435412863 734234286 419934984 402303179 835799035 783524897 69758931 739546323 238078585 398899403 467652474 872413198 98777555 645400968 698192284 514163528 17562308 577671941 840613893 753527428 673721004 562815110 337127488 829169645 474637101 106741568 605116925 644258700 467366527 249789018 289122586 554035218 473234261 1071308983 388844263 941951300 300417412 395788552 619457153 244593363 425607426 715204548 460920886 179544122 719145173 416570651 1720919 654052185 759559429 393415697 248833811 482314551 553039983 197540899 939127590 849537346 811655699 505197040 689441591 776175722 744321468 400241899 816126011 987956989 69816197 1046907334 64557964 425864800 709497102 676123355 923675870 128473524 899774074 323575632 838282441 468948623 808279444 523590676 202814962 993349744 474300092 397794278 703766299 732310584 588461305 380883943 367755222 416229924 511775060 1051918981 831193969 515442084 924969321 661451425 92952227 518869268 426537430 285751749 886098317 338254776 762370966 37012237 961379531 548556261 1049971490 461637859 310351222 690022118 354630689 378497706 808433857 442091566 634429846 780934871 805141209 314107820 620956847 824129406 493624720 355312890 84750511 318686668 594511948 224165049 336128355 924716745 781088436 136964334 153764662 243136118 266375015 367962524 1070037399 914865342 425836447 726800891 504352387 932558072 154749038 731257640 1040165802 1067944599 916389438 342672117 976909012 134626860 146836079 671684337 355519865 577901881 1015119589 301976563 1032181631 529388637 505946219 474305563 449871180 379843267 851771279 697877864 510362940 752177980 196722708 830180102 259360506 824031966 106426727 236337829 452334314 688305847 230092023 878122210 88528725 975789037 619784562 919554795 125385223 311679168 1057994419 820588561 953813245 109309964 276459866 515562960 617913884 667272818 171426123 572831876 716954904 63646618 170237411 335894383 847139695 390959594 708107032 792368307 632946731 422789939 61519052 222396675 505216021 246134952 45530696 133184726 442493948 252435449 911978140 514334124 1011098432 708274471 680739027 812744799 686133136 589721315 935213249 444407174 315592152 902156579 860511517 156811407 629947167 831988355 625092248 249625112 776935324 868838069 665069140 704294427 239096865 737011646 561496489 653317189 761976853 659348315 893024245 465057259 1048702986 356262402 450642172 351276157 688599445 646608670 779888202 1004093893 613136492 73786649 472523958 716592209 867099746 341676424 141035907 328098910 606592300 967440715 825683513 361739343 907481952 948220705 186140723 768481503 677613868 977431089 856846737 374480734 878154179 265162690 54139150 586010728 396361716 1046262784 253722107 842117667 877304973 171926222 526554219 226605810 548702898 964693202 797724217 147053474 836953024 81045867 1032352501 905682943 1047792984 804823278 744279073 478595113 452667200 411301942 1031474170 390220745 222522342 716932636 95316219 1011576689 1033971546 828350807 113442317 44851868 491077261 267177609 157703339 552594894 50723231 966497431 802563386 562103880 978738819 777102549 464591185 93538514 709970030 652772409 16710332 248946264 704759708 812385034 966246137 171707143 1984574 625286629 411834410 929100919 706119474 481568927 826149768 82341462 941437331 124542348 592473469 223454100 543169790 456425506 773187386 857298622 1065479402 67818897 802170530 1030121246 1017812864 1021236803 786387977 125437887 892349282 1016011982 927502602 261505425 756139095 646595454 710108464 1066977753 235948690 55581403 237094208 381585208 581448345 427108678 649347059 723408613 338828276 148717084 1037627037 140976557 633841143 180780461 371220420 2487686 195812414 861851239 353603838 573651531 444244995 13731997 882285185 564089172 894016625 6631507 182036962 578958423 556268582 171477686 977754210 646798194 486497528 105894620 756535871 947657071 972652394 299401102 546968512 642910833 490462741 761661306 831494711 50614882 810683238 114419373 38523932 1056985565 76877981 248584937 830628056 422601764 714744478 678420464 278682502 237393386 456528000 284676961 285772421 107891501 2070733 935469835 389118875 52711774 538058983 471874752 905821750 885727422 1021982643 99298695 277194464 33569228 635820047 8473231 686388601 193279237 96625421 353931557 605096004 231202234 355063086 664142526 6727719 766889403 569325050 935285005 208519544 824432662 1041012356 158931314 92452619 619840528 660703133 726050710 557401205 660541223 727084247 945047393 626324899 781315696 1013313971 260565074 617187217 499605691 825084726 219482706 695093026 131146855 908683090 912933638 730017869 718501508 615582454 416024566 452385137 488109916 691527826 161331738 694015481 687164590 79428829 723148211 1050354868 980838091 521434158 886204638 1033196836 588667995 345576932 506535782 645203507 922328288 590061851 496864818 437755003 129055083 298690055 434108032 133115730 770483619 552867291 397666111 733099805 286574797 217358657 828016390 985830623 282484424 745292565 540078014 485713309 1007563444 90657543 1005176814 808193577 35734466 998122506 798911526 1052313209 233742827 567718636 497710039 581442307 51148756 392458624 827534365 311881226 239592122 691928051 127751557 345004025 400786476 1052488689 405594317 692256258 498450404 912763300 60829672 356565080 709382403 483878015 801173309 13331532 615240345 1019459490 939471422 666406292 971746004 226353079 409522610 67027435 217235889 746251362 393531548 1028737063 896840029 560801508 621898760 611696532 50886640 67939747 918717248 123255509 702473712 39500762 873515087 327116857 853008250 834922599 351937644 1049164308 1040736179 596905795 172760978 1064332946 811934928 530439592 104229216 1064678131 620307557 524775409 28348822 259023665 261302266 425244460 268262136 469275838 536205845 531450371 564280570 354050431 116387254 965047356 41109043 1006851503 392069921 726893880 488631694 1063275521 1040298948 1059317632 98355908 74832651 389898780 260331727 798534666 208764513 437547647 843527649 264554484 850007370 314770974 340300315 734968592 466838460 553003083 84822198 960005316 65154885 1046155799 657208460 27428422 364927770 244619250 1064329514 494384397 147825681 284130184 873338443 1027290921 395749417 830807540 118137031 57537124 830999724 829023558 641123934 438215368 745358370 316209509 611199817 134483596 642097811 631253541 699170763 840221106 682249667 264401741 848197261 481518885 374183062 913971403 248107564 1063429354 92888816 351330417 582744103 279748563 443213686 380786054 711863372 203773202 921114224 326390027 973009041 68695496 644823965 5953949 957951732 892366053 316886956 865160953 1021594997 623753334 1003949333 236102460 601874028 521810288 13068574 569377124 498565748 972826333 911582851 721849729 929245051 656744801 217732785 326765482 1045405265 454050801 685321577 949498226 838217441 601726937 673769007 1065610560 616814666 453637112 371432053 944519919 568921950 492869304 737196209 266232511 493391128 648299461 494587576 159862474 740967709 934037751 183697936 669124919 746710665 545030887 655785840 432540862 933959721 254614648 484902817 630984109 671644426 740697934 460108378 683107845 997663497 888641112 920945809 135189243 485641460 1067674073 945165660 918835296 547045611 471865938 113929087 155555004 993763569 882125212 1023490935 454714601 96416378 114213573 539358148 6526183 420063824 408097668 169036980 173931407 919649216 648831040 501163866 819059046 332672726 1041403235 271846339 1071815474 452031392 733800930 311310966 442223658 344414924 1041846629 129998932 1007142320 574651632 948592050 292560143 627395776 794061971 927116754 991850122 767408736 409659818 550958554 644562178 484743928 254586409 665514965 603793677 234966736 239597054 952823675 1010965115 477514418 406648507 975709535 710702490 543078262 567462790 222237443 379315350 540331947 735048779 313438896 39553322 988990043 381986090 597919788 182575454 971317635 1022894715 427539400 987376591 273160827 183658131 206119515 850836860 508185677 888229252 699033257 803704662 869486073 205213575 809173768 868756303 1056515866 778145 412556520 951602384 377717005 226837271 646899201 392164111 654688380 370752556 893158581 650582678 471908289 1050254589 37360880 903382096 668284725 855956226 960611907 366002503 541227395 782125083 897956923 765971194 814796796 480173347 710412212 194859773 133318262 943716434 601377015 884412587 792958134 714375325 97140894 672899078 79495234 96933381 19852927 1015549230 211693650 599391681 510656125 569143356 754237209 90095335 530431484 656110088 265915698 989724619 703909094 432190658 941057304 328105664 853681702 679445482 958114359 154658932 207999066 968220534 1027165127 207318763 418830488 511598835 151622395 692694553 1021605601 1061597868 590444288 886386023 940731833 606590253 321684731 41232282 820586999 338235091 658646879 136262483 380217935 999844050 183603754 950626084 320641740 743124244 415731701 602911890 536665177 7348708 308438494 538210533 688250495 427890266 85954980 178224448 719359023 283836903 467310354 896274284 765871994 661831216 30539890 300527447 448701009 386666453 561741086 291937092 934045567 10877031 671689147 184166564 817858644 560432968 1062900721 798917531 181301288 1006477842 201631695 678401565 340069886 437793550 444608665 771730841 1043116480 333484784 1063834162 606939637 441186219 878693247 982638870 350801987 249297403 371778705 263654639 230954872 288281881 337443841 1053267033 608045263 426527584 536507505 798437017 45107832 919820515 446094450 823299125 272644917 288175421 894246884 944609837 957592465 524474608 628153523 795732357 760780595 911944785 770291142 698630872 617983097 187427964 17789857 1056294689 991160006 890121300 936853074 371124341 420462781 93923945 129062225 94004444 867290107 980176922 644312328 533644959 654737823 208387853 547264130 806618947 63965945 652148570 656741498 375602760 112728302 356128317 845124117 104218552 5334241 287846671 583971118 147189244 369950192 498309135 750023109 347277357 102460062 581336452 910865818 1034233400 911862726 204017206 535333069 193606702 97226802 179330629 1028914749 230027914 325379632 194012705 400565296 319127951 977697417 437205513 137192266 1016845374 489524012 709057874 26559497 22267072 1022048218 207779608 342851455 249543578 652035667 19908962 743858436 343880052 616955671 992551001 195328226 895391626 148292241 718480497 470262269 16351595 696484613 36213922 510975802 299185938 325469496 313203189 491796225 85566395 272127115 436342225 1007106507 824582110 1011790226 986922676 20319777 93662973 650427171 875691185 842600934 435678098 313329499 35211244 291486943 633341825 883055094 78746787 256646638 177972247 350111267 264553711 521989723 395053833 946078375 815692915 925205422 548871403 528048343 208737925 928354991 392790473 437263569 573654364 155717183 300240761 741571911 1070355088 626972611 241443346 394535268 658979163 828560949 121247823 1020635635 9181000 659910921 298203606 563353896 100068142 198135265 352409809 395216893 856726833 610097982 607978916 173204555 385328316 488085701 1068007257 676106069 945982251 900347047 62069579 844689847 1046552938 309716445 167165905 918892496 804115208 865173181 36307973 1070507283 868991693 247292634 858289280 173539451 328351672 204365490 25566844 189177277 933614484 616184903 268964127 308127136 636552417 518309181 265042800 656458469 957653289 149482103 689881533 990563547 713939517 37913443 1034041343 771550316 274542272 863194231 163096664 115034954 235365614 288062690 1044239171 626883716 184929248 496099233 578906702 416830523 1044979579 314715023 513108836 174584106 971443383 626300588 1038117914 1007548351 679475103 88226753 228515181 652483633 839390317 613317127 56186277 727037211 831250930 813090244 27765740 650353062 799036756 917893023 606560868 169724556 520796801 416817499 160533154 758307954 1019935422 827230207 374451359 934890537 154064782 414143661 973179555 730782559 636456021 201972660 159603249 233387978 1029229687 962576219 593436564 1024270751 519122566 951619319 392804255 404551832 758223264 95180308 183378442 630882264 231619465 291363231 207011200 827404905 237120721 284074382 183467059 243957753 447046073 446318149 88588259 817500623 315448430 220211500 118880825 530455304 1061319283 216309745 886382666 68364649 664228252 1023453038 450435699 936072468 386192420 513652633 358313701 592354691 712130562 983363289 527967049 686924450 85851827 890903816 1029423786 509310004 73554310 860082278 794524174 366381313 124927009 566394464 49588906 156220966 52625478 216026583 297771454 1036108556 617457505 233910841 125899053 211375686 285722651 1057732374 472148186 589774620 158879674 427763320 683550130 165120610 120184592 132033097 811374814 729789267 7674138 892615418 154370814 694892638 1006644582 111234248 446196872 361284489 414032520 806940796 81242587 749524790 87154480 1017740910 1018668489 454682353 715386359 523373518 511622481 564062582 18509074 868154627 464948690 876552979 233618211 718904223 139845393 978824596 633408400 457830510 68383681 207370616 622053486 242015924 580516384 127401394 849743368 355740526 290294478 216496815 1021957776 576901452 992406771 588570094 400283798 593798408 792512782 963576022 393813202 220640614 1007778868 384594303 73539836 270999177 785577729 826645881 658276459 581320135 415211167 500267386 969002734 81218810 266185780 693427536 776515261 666070515 779945277 494982759 572995179 178980748 324809244 488464359 389098227 490966431 85559113 525497590 385140886 329696031 647156843 429146050 542363706 925043796 753222332 74959372 122982937 312804617 14169697 341033987 408563968 375998950 75445841 831456543 87794634 594782958 919488918 625930395 1073567668 926672288 43498766 783197715 294608281 32117933 124055289 325881180 765604719 780001080 490988472 361538322 85301513 605475302 314626958 954448486 270503503 444632863 579695071 432460751 968564599 793237590 103881474 838534466 941838106 980826558 1070477280 925216522 796974039 881878771 566842163 499092997 983506892 832452928 614715597 438847143 323301107 49876287 1012015003 846284170 48742294 198821762 447103977 619755441 107024404 570530938 792704893 1032422520 484037985 886726554 941912121 825980223 1046399909 765547818 627648065 631488670 206937314 848820633 47330358 1057903469 839292859 430242677 19715996 522359983 57102646 150521228 8988931 1005768004 642779167 306282929 226775823 750071220 836980570 345096909 115191466 224831457 426784882 967456356 540675151 75957956 286919033 304283832 497729075 771374623 849142766 337092637 562143160 65808328 617348205 125768651 708622781 647132985 668384384 44644232 835718550 504776429 420888772 36986831 170394582 390754726 495043232 1043999381 1025763155 801313464 970145994 976260682 403519716 1000014774 308159085 342613286 932045895 791072057 986638987 199833873 38936115 655067685 1031110780 1061085012 764437557 896596787 258407554 1025670940 860522397 203708116 646345737 325157477 973368632 1065250515 843370863 695907449 934018482 726514511 953815107 837580842 730483359 917176850 693359932 1005777577 757719819 826617904 101165478 946718726 222688735 224314850 785792352 1035882873 184682032 915044787 756414242 522369363 156488153 826080319 710943246 28786736 381735091 849438457 109188217 814773716 700529749 294864469 1041613909 905251833 861160671 317149514 463572831 253759015 301878112 474477608 791861479 437331423 408253173 508450807 623961915 142970688 588252910 398681313 229539939 154500572 890963607 285610570 834599724 555150881 71677887 236452676 262030387 701517385 825798065 235154336 929076573 681843959 566172980 1041159960 941160069 532247339 525685969 447407806 550084855 709017536 408717614 608053298 368304953 884698598 992658748 314318224 104679189 881750211 818990390 801868623 374137195 745714203 963516099 266454205 1036162238 306161526 682639954 920548400 266925260 423987069 926912612 548467806 399468857 421539419 1035406163 373559863 828006683 63894418 655661157 101756030 89469710 376211015 759055271 509458855 41139534 242852560 138571999 198605071 873978209 1002665400 722138420 1045201383 5428168 851223646 102336376 192723004 479990702 762140603 705434034 47606145 1015022135 515135630 574616540 707041792 439783135 239692236 521078708 179501694 565067131 274609431 563591903 893889836 983697328 313068229 121402092 180354212 721605878 370510733 368967134 1041387308 217051585 796867392 997684006 829038857 142689435 526359065 112762481 1073601181 709883677 768891450 168634987 146493373 838220114 418477572 697203312 32249124 637187333 160512207 190427503 376731127 811088630 1017817326 888471088 345320653 164190312 1043112009 361165956 397794959 140137509 859349762 567254769 147933443 425134865 880117802 108395727 455727748 975212453 793899371 841350950 999190476 55547183 693780886 49929489 470260358 987551625 657327190 3199677 692323344 675942260 423979647 340530827 186765972 1032549032 34726130 714543859 726424685 974840753 125394242 146052018 693719893 826993008 447795915 819127578 636227460 781199253 165232383 467854492 559636578 828608467 945821104 411592917 909479341 764866696 573676659 852019273 662445605 911248780 625183405 175618656 456452202 498974520 641944452 250769394 975354067 863719012 333249752 632623033 471829597 519221579 756112337 637148729 735730600 210109207 166675064 680985093 708511899 1072436163 12356195 70480481 960347329 155367961 4405573 756376912 609299229 905903068 1039522952 782078577 930102753 798960010 940494217 316679346 861558847 897175191 253779903 299876194 1013575697 93403549 849418265 498774607 876836696 362347054 82309532 236705076 478546251 944610327 448398806 245729722 506188921 10265580 663962784 55872120 123499532 748897860 747763410 315014850 986292982 545686045 559090023 1040014174 522443492 533766006 3552623 540443203 932626243 665841623 153398686 726734715 53971847 936520692 538776940 412290139 977738002 1049157793 49245075 364060981 285793450 750080308 61999334 26088014 345552993 743133637 224829203 525024222 88438413 825189494 748740910 468790645 906104398 348269428 680290218 259089267 667816817 570077014 834270438 256823516 502779579 466977744 1002689894 735820996 813497591 264353459 40278302 786401421 152849030 743402180 364148282 274460854 22413637 296093429 465841667 283313147 10446385 310067280 121977038 316172089 901675118 813239440 303309310 1052052177 865167896 173223695 869073531 859729928 656022566 96023554 513293225 377112040 14325239 460868333 536767339 967475116 874602725 829718357 794112534 752120139 823718597 104845559 883433716 749870122 846859301 468627206 316965907 212671092 533369400 490297726 582484780 472427525 80454348 253081581 118579204 1027179880 34877058 15241971 877468856 352428258 314065292 780925410 462610184 746763118 445027538 622646135 926437788 742930419 802421442 440110448 710055887 665571850 991714687 1035429301 628296610 296802838 443721306 962313628 618002584 829001447 366885627 806338946 536862145 454656399 133674316 422511820 599004270 397285535 613169593 902793424 28163009 845730113 539660146 928743746 694990122 526959043 302436626 865282045 697306865 504151083 242265625 955531063 455870575 92129760 429496013 645026987 834964832 550982143 710764172 245808845 446087067 1026867805 363340933 271197509 761167956 737427124 652646629 92720968 327882487 627824220 301495576 897807131 530857913 698648240 624960779 426972628 233174498 72870892 1053134983 108507912 791941559 335020063 831567962 484128682 1064452076 238897917 156945163 590057271 862647884 614675256 958294955 357564998 110886498 278486095 695374021 271207085 973926196 163064062 995088887 411669736 1011027665 81473654 533751124 971298284 99136688 403103395 35984330 605307578 179859082 603281897 650873949 1071602826 712654198 832169116 966852485 792599430 1023144603 502127396 636061787 52429436 906499150 532005201 1028179654 1020896372 576365243 23194215 355045166 948943273 1062214604 621761764 274288928 846093018 637584930 498929623 123732348 474888768 225831654 422182997 394524348 730297715 532337761 947991881 460998890 62497600 1022139739 819199904 192042931 118572670 347274759 923378190 782453030 892465617 767689464 664305066 256372470 613326598 446007784 273688743 188739197 626500664 268867657 547182284 1014849139 585324351 449477973 224927488 524228699 799255774 1061542537 225380451 228048509 822351564 615438791 964248698 90459288 538044817 143549101 411576038 967171292 1062974314 837030126 178735912 322320551 981576373 902679279 979303291 341411794 3034183 204362374 1009777124 129212829 1030199571 486936653 811565530 288582504 534842138 812876759 155587882 575984702 110670068 324753965 56655905 61311788 1014730126 883715143 1044999227 357304568 820284195 113117599 341309876 531335035 514660703 339304396 979795544 412636683 66417937 411318029 306732653 630969930 1042689922 289068298 427531532 497176279 559569372 575351949 400323091 650233875 287754732 106310137 409994237 558666372 490076821 189830306 1011011401 880566982 880147119 42247379 126572246 824958297 44074168 80685375 418897415 643164716 535800409 352705751 445109334 773923145 376516974 605888643 748835705 272421520 468508366 629859197 486589414 238301149 1015811650 855524802 355265462 368723836 851589516 642353811 1063531565 733127957 561796516 775929063 323879818 798320992 923502418 648402931 909200397 583931373 602078835 809313477 447682380 556585595 76655061 1004968713 503431246 287708782 829816921 855096239 535623102 586843856 805909831 126385596 399271664 369586388 200656881 591842319 367513164 283488502 1004943500 504512556 127035645 774057013 114256545 318318408 321117003 938058685 1058728457 156714695 683503157 706864275 168634133 618551776 237318674 225233282 850668992 445669592 1005990048 104508612 412983805 319700009 713076127 729767248 707130329 97370455 1062760571 434562850 328280913 73101542 825463989 1022136902 451985984 943324812 90025628 890551635 7543544 97265938 15914953 450750121 31953139 1047845262 803628987 806221506 475805362 145182531 744882237 231066871 853006525 1045543796 558345551 601805578 466834091 606203042 501594630 151291702 523988606 540272863 129402417 742714022 294153899 1052361800 629409249 741845194 533738856 501038585 595113654 678276775 262338025 975671216 930209248 134664032 33877967 749663706 984135103 118006654 272590423 168718902 443128907 557464925 117132573 638703657 141524065 696153477 120686876 815396334 309757061 731909291 866869332 331175878 325775518 962226336 574966641 87321904 793350357 650328859 659673923 287243013 841592798 311808342 420299250 718736434 105822981 939778555 1042808855 634300106 728686305 498256462 738256145 341038394 169041877 453474708 653073171 883844895 775932965 462686172 721017774 270300070 299436544 69039749 495727813 882778971 236590471 407331792 1050967109 624512874 247117625 59401974 1002608449 647835671 347802759 424722554 247099513 1035259998 389766774 882866102 172956969 41801484 261378409 229549111 20897629 630856177 285299665 921983104 912814078 149154293 293127171 325800597 925033389 1029507448 911418017 882840987 683462991 722565424 33868513 402345107 55927290 452155873 623734562 937243069 700846782 257493081 688766304 701800737 845104396 474303691 873655953 18983815 989956859 26052075 816632096 119916676 1038079806 1010415207 998026328 218127605 143326725 675919581 297475157 639312740 21046308 999606523 335245748 782277026 535519073 672889972 175973280 615932812 538213261 145261356 358148382 5814266 1030399924 356224844 731625250 384268574 278976605 986290596 884521360 541342465 578650781 606478646 433129840 694057022 747158080 412391483 269579214 692299273 429541337 646338240 879464722 190244229 1045151787 315970791 146440212 868414921 640817501 820498234 1057111540 667464851 82507285 947505134 399679461 871356321 311420065 383712062 502437342 464192533 577870020 675866783 960344099 817833898 866096613 82193206 724080762 683809967 753541181 296293163 183233932 697488949 503208349 553727941 875022814 386121964 451518560 270911612 235686594 135635036 563915681 294674576 887856628 883342236 1056588970 552950082 700275971 305862688 782397081 285389626 479470283 722839395 749458118 134872327 519274551 512953080 426528045 179694107 906046502 586422538 182992912 338418494 100252723 920464102 740963106 992635798 631321410 656129099 720903317 1039709182 447286400 329550666 529662978 403275298 142927634 866203799 619253168 624464178 517165520 449886456 102799275 905749289 143728014 1053042162 359055347 476776648 313891009 32650747 312094760 550715626 134857883 676873285 729506892 284979255 778881545 430621769 88327457 856525596 1067004070 856211912 692667856 454182524 1025539660 698251022 222120637 840756354 276403398 812089005 420120339 55395557 561691441 545323761 285140296 249515662 254143857 470335369 197153391 618462571 460607590 820548855 282097308 813693247 619576469 287337751 893083750 942988773 582832475 205765710 173253494 423339897 679956554 537851266 1035250911 945964139 767633018 746222723 969999049 26241297 1002216509 167046775 1046944412 415065382 454419363 1050470808 128841230 926363199 864116780 635256936 135856413 195796756 116775056 301267249 158540341 386333862 775144127 200717202 282370489 144812765 527281219 469579834 859550651 743313538 455131275 628510435 922200111 332440803 216903574 358685972 328195867 572593924 1068345938 987323683 316015105 761501067 1019936716 286421277 306034105 704962042 856338620 908467941 826596889 96057212 697023614 193756717 761725334 429230143 1034846924 1021468744 432337968 357839013 747650473 715017220 544455304 881977876 99979734 79865426 234793936 954489838 1049011063 501419254 377156271 481359097 51830231 614185454 1058464634 644773373 815671740 158182649 420015926 238658883 919720517 912431882 808588891 841246792 704933440 2184773 724447777 65306868 622088125 1061673922 266358021 528373042 104897037 112775088 596968043 533737684 788715708 83962016 749019561 974771025 544720560 169549574 333183406 95246028 110159002 238724630 746574551 913639727 308663084 311512367 288413583 496696102 611574387 358473439 127977330 128520269 3144168 299378051 335180185 555570525 636977123 353723825 883799474 1038968706 151711875 117754911 844324246 817659739 787514319 607467038 896833884 837011118 977030299 270749325 90683312 454809279 987075312 784831259 561442034 632431635 742421600 799824818 715105084 317323511 772433195 30521359 278918198 298820015 200141190 664859436 187193092 694124048 15657390 951119727 531693001 1027407262 510101247 194035025 90192362 914014061 843195110 916064105 975968208 902076000 295430682 683076766 683964965 904865660 641007906 630494043 303366734 682454549 722587545 850337889 556653209 550851937 885327531 1072507131 147932690 301508376 955917735 174821558 720565376 988291578 233934798 997436845 105368214 75289664 615093437 442644915 30403853 1004605131 155595774 909487794 400023151 730426358 354828368 956820942 550247723 39104901 951545719 556713790 812050571 92148831 615206544 891442 85797102 773985407 512249453 47433719 270792363 1026184291 846512928 358186126 303491750 125171894 475966420 374127623 676646801 314336347 439706441 15676780 893759495 8460523 426863107 25005821 69820600 777402547 1044583439 502630255 519534309 154980329 1048711904 1009153286 314028507 66793478 293992067 1046897978 797997236 753470011 1027058709 787547974 856378381 756241538 801063234 481094496 798547582 726431831 367034422 763647673 891391478 621438947 433552740 543364776 733119377 321276333 357297734 368278581 40702010 926800163 471776012 982325235 251086920 971953884 817486345 588111645 903644214 1005449499 274116091 584673493 283705384 610898260 586305169 464219824 524948418 768855412 1034968470 1053938276 212655721 684078038 447246971 292147383 873418839 388727738 403690171 804805679 96437085 973846546 902136142 1060338640 99947837 654751639 503712549 495452340 906118249 434828310 491644879 474751525 225316654 156136895 116133756 767257692 667421162 1068704997 383850200 146743651 544959099 876758250 20600575 819378318 827590583 495766600 442523572 187531618 744021678 358132426 139988703 122659008 1028442445 833335481 231153807 617933100 385124426 409617614 662878319 932034671 712872207 994554343 194941307 143454129 617558051 758867319 943149101 718850361 643067953 609629485 319448638 32828462 111086967 837226040 891152847 510434631 86903099 466104818 273327892 384147280 573183981 76494805 134678830 648350319 746108372 495085743 719048936 110993973 760285791 568092079 894948443 927292411 862635589 650093284 866278562 862875737 373214083 107831299 416209835 1006113751 843830233 490378209 383043197 477639357 136854661 416923882 361888771 672243227 525989374 609988217 471303905 735796030 15589979 133189578 534969149 137851709 65472601 656835169 108728170 236806228 208061996 426158055 981382830 613690360 16636162 614865145 436142500 186827570 494788732 192001602 192161593 505707386 769326819 370916454 123004486 234687931 90283860 240424936 544840283 303847226 587239093 169270516 343776540 114827807 282078226 183221339 319348175 986784881 1072058475 181803366 850672456 556508728 105992045 479023847 416094130 24542986 886485111 933576792 144548177 770945030 129956986 412200813 512208866 397577533 696279379 175525099 39709276 155714957 744881590 118015766 402131985 1062935562 789258568 793241384 765885339 702639165 474329331 709004146 1031146289 688461382 620621561 905093802 222265141 457993238 104802310 779701204 441382809 1024158999 185776319 880695781 23262019 303640503 797002463 788544601 11498485 106865139 526965472 341702643 371444496 1065176655 149040676 345821897 497617713 488789050 596421943 626552184 731860904 576607560 249281374 958993592 1046139941 509011859 688209162 201376640 1037733370 70545418 272232426 940502336 523248182 953093412 81443616 300138155 874578251 824139785 1045679624 191053853 402524530 688496652 726390047 709969200 748860535 183643922 376122458 932838648 1046952850 65112791 307204961 615522792 703124552 539563719 295412259 991956578 58072370 893168840 970660133 138923537 265895492 153265191 961221326 89395756 87239851 46815101 996459519 935586657 664480914 294354019 807709442 615158697 197646748 850456923 403793430 505129624 423696525 208906682 886854557 126959917 1039565198 60345053 472996888 338650929 515997689 309037059 146434560 958649378 142314770 979200370 648846997 410735655 24648426 509117246 48331018 368593699 683582672 231014840 341940966 262121164 71870636 221075793 401102162 725885814 107093197 17598701 458136163 794507082 599047143 64794275 66777218 795124666 231446231 413623089 313399979 747261128 86953490 109638264 235735739 26844308 154767669 864147392 964543716 728038262 310396225 3520286 182496168 466656266 298337380 13095195 311381654 206209478 3164746 316888639 461205581 719517048 866558392 491852021 5563826 228262173 292041097 358344387 1061265957 1047435178 863556178 350474422 870054163 649103352 219234964 725282538 214654904 13262581 681986266 850634226 731807217 328167269 977716461 469034263 809278909 870941448 253331382 999407742 358769267 261208805 237509513 453693607 783747066 483357612 851382072 241912400 213566175 801664231 310547166 930255729 1064602118 226073141 808953655 429622408 240434583 141009601 654761442 798674578 138012540 292641613 621507943 110176846 811971070 672083735 349717538 529142832 113722121 139482021 891198231 661180211 164378260 548855541 851443020 729012919 986839827 437265786 75233098 934137467 106518076 719803359 1057258812 340183199 807587897 308163293 330021276 568196372 57783376 541698238 366258300 751531017 171444395 843253643 594335256 360037981 790484903 460540823 87222016 771575878 336679659 998160775 639162679 593521636 229196198 692839015 408270758 529571068 484607648 804433101 170991627 178568315 178693316 187283804 6548233 992745727 215333878 770021046 413109111 44070358 920297927 843421182 863227629 400280671 110400657 736877997 244193955 1053479649 33900249 488028598 891616812 161943701 934201237 658059148 59077599 706978299 753486776 57548070 303172889 392180068 818572547 1007254510 94630248 716878555 628937396 631688500 1049685512 600198511 216446529 136470461 758053555 431051670 185922787 313398340 420635740 821333197 910118577 826717075 409076787 821623890 595386321 902878372 670123711 243712168 280752699 161871009 477112510 909271737 1064262454 668730373 270248076 470087246 674519794 24626438 374597649 74253780 1021411579 6535451 777986844 447302462 889567115 713728768 255491374 349008741 166652817 492821081 1064050357 304850219 779388272 945737979 858232210 606501574 153803615 631182883 1051392116 185543148 109796447 842302584 248241661 605683118 159691301 247387382 984280414 574155297 851817702 279138262 626654750 414555448 360026277 85142678 788796260 627019649 174597134 735620239 155040194 912320696 680202273 908088136 603886577 207125288 1064049324 277897888 362181302 748947131 474302127 112416712 686689710 544242804 680713555 1073176374 232038220 81343546 563306957 101035088 1073620938 473158157 67793335 219418651 39898639 197389570 1014416666 287037639 761409580 765532840 426777591 587784724 168798886 177082821 830898269 870077934 398104355 586799257 773555473 412467984 941726260 937314753 423304809 65263246 599842286 967975880 777261357 310865594 573219429 140662130 972178960 65884789 791193516 451406243 107009728 924429857 506624414 627736232 825426042 22067965 1070277311 806003656 893808776 270230069 970092270 923884595 318777714 835063083 867190640 803264915 1018163536 103245356 688650450 292569053 75206983 931784415 62426445 65794899 131172744 105347409 772342303 321078433 97944388 1026012809 402944438 970897718 901816415 116513512 857357800 419750484 999291344 667829681 705053028 803116536 841046879 202485162 5078800 204785856 707788186 1021736221 41494948 779596672 30286464 335792763 447023799 484289308 42864216 695663789 46568052 586686750 57421928 253556611 485345784 694266707 839897840 1003761164 436316139 194633752 373289314 139004692 896139756 762980217 170481977 663157197 225013948 256543924 151565283 241083557 656045000 194906984 258151554 186585629 887335644 1054210915 762846184 235173370 335610240 819927540 759340808 938142252 583970127 462808462 61582111 303885706 487501159 23859714 136840584 250617454 1047120811 787752673 903948364 146812853 970877180 272182162 452647798 310589599 787757818 978202500 983017689 914521785 525718454 770763585 1063067758 653986628 527340142 557350444 243217075 814322130 434025829 798161413 1066314904 312045754 247084900 988261486 317172160 283847587 737283612 223575723 656677779 784023686 614541810 474751549 487555006 876723293 208486237 183347725 781802814 788286745 511059670 825943327 105706503 56561258 29275619 299735272 11150399 232156490 8321952 876884616 573331962 349948646 361051453 832997449 1056109417 706370450 1038851847 64648811 1066317729 860156781 272890946 505601663 607885251 409441831 240585270 161503611 1023308640 942271209 218320550 946821580 207249865 721644118 898111045 192527014 382551035 57311620 1059309647 680245473 727330717 637128702 181422415 948013187 867796603 429582468 675362349 960637856 473284088 608845195 168059299 370912734 235010842 524789011 32962777 838656618 271911006 927984791 30512858 584177658 584133162 957817218 103915676 773365397 578364658 487414993 532199545 413759718 925710077 451180951 608141554 673140800 354208938 33520801 812655071 313877611 699319380 257621237 1006193393 318368086 832004505 535101144 528789692 39838729 129930937 252466864 822122929 288996733 1045028229 79708540 505612700 1016776958 1050435824 789304690 222113478 535102428 1046630484 25050091 807782393 197370468 280888305 303223378 542073325 38580469 826169887 631603412 343602346 18898075 15549073 259108491 36168439 600027515 861660160 435618428 591449840 372762623 902255775 234797461 831787151 159320788 668509299 760184616 434315006 914382632 381336905 322934935 1031586094 939778148 638717837 297494841 321597966 815366031 818291715 441742241 311902074 943814366 657824808 388276635 914201714 375085269 571576738 1027769159 995115369 330841989 487512729 369322576 890353829 936145723 995245443 420490699 509711464 116260896 432606039 905434314 818581193 41480376 471396159 532767936 986749990 143105310 435014183 1012245590 588701064 188646153 530689309 200809805 1033411476 718267314 739819320 705499330 951929735 444319761 183527565 935085362 728267941 818877975 921710391 625503416 253767741 54308673 1059672689 664942459 367160438 902241497 18910420 253578922 186059243 1018081648 1004188331 436541848 56666055 132090093 902803306 72786747 40089537 270614039 929762180 647290486 677931874 827975961 507394279 472081569 360602507 513618171 937828333 729942563 243822270 129360609 244433271 177082922 247452693 13601295 853987392 1006417318 325476916 649162382 475244346 402994827 235754761 968336227 111655916 264035873 706152888 785794095 1019528600 824858910 60937326 67459566 118454282 751428509 914005759 875348679 610705101 225770845 992309345 223385051 184485972 848973854 310571925 84990985 897770997 646943242 842780050 322484462 521223460 193278632 858004434 2281844 938785738 831830113 806969321 547459903 16084747 646903146 715827454 438475417 287093798 513598838 463432910 229450225 90728025 762732479 212177217 790946098 998489826 550203356 172135934 9877325 808288489 390420467 809053408 167583244 313225081 577920920 942421013 884563141 749097750 1020247286 922792294 157923371 245141123 561664243 224802407 71049940 613296182 259528059 599481813 1041429558 553502602 619252075 62841312 319046666 665603391 835995284 159661321 619341976 596189270 893561212 128524638 1014854439 992798582 747477870 126429505 692494638 710357783 415664388 294557756 796128817 111579024 666508592 958564978 606092455 677779546 341072689 620609683 17253605 955870950 207924333 1002332241 236967121 751923639 414168421 729960554 914039893 882726840 279842492 41120828 784981722 795781007 636380135 72737586 675301742 887394058 594481990 806115272 240457174 661872153 325326760 837140653 349998751 651792261 404071036 112587897 887751120 563487302 785053989 455224510 754653649 344002826 116014366 351657991 62583056 392627273 624757870 217280654 404906204 161951753 193124515 951474133 379124735 335179484 50607799 225180575 620875440 156128079 232023913 311288789 178383905 134713546 135884055 480636544 618872279 93041528 440722228 21791167 160155998 177801579 1034060802 31860477 900231160 297638567 85458865 757643164 593717886 902309993 866347871 692772929 504154057 1051710227 199374089 737951542 833008894 96175941 889365449 657376869 769560711 423829719 702542030 1052665111 1045293219 18654583 312883076 10700490 56369900 65506980 858714999 762922896 537394640 311218887 524713472 945692922 595831349 1014238386 438116080 993345721 1048478973 655111085 792653417 1040427726 545832908 176810709 821012836 361465062 1045471227 207626694 816319598 752675735 63993715 366133618 111953761 904885722 607424026 186068739 597448551 952257006 735802836 436617243 183334374 807170924 974382313 121563035 974768373 27621556 999376032 184570556 487979458 550911578 866435207 878203371 159341098 764508949 937506340 285336823 839719862 443993772 22616648 843842374 955383349 877678119 165368948 755533165 912940813 108574193 196795736 127594365 919419027 850561136 480108040 279107705 92870077 566839943 743156072 775395303 258040454 877893819 927974023 748582608 174718645 647593186 967631152 507434591 629588911 754392268 148529638 212730428 118125845 878680768 320805174 291195577 915004461 265818141 180783289 433135703 806247844 382790682 828602021 164750906 563839245 688746614 534485832 983270675 643211849 791934102 669890135 806889186 201488437 440391053 731199163 520612463 1067206399 117931459 542885473 578093817 872676371 643946449 522336294 682907005 180909966 1040085416 324145247 546634462 195088572 263744049 661670088 117600321 186802157 916092321 192915501 456554054 620606234 830135448 931792156 712436098 765522908 994828175 957433317 222118763 893013828 610403995 65131597 432509339 17384993 2221608 361243434 148732799 480595216 373652080 588721064 547050704 415382750 443968339 908446855 860507636 623187449 462729736 446809955 232616845 912678756 915192454 731847706 277963430 647436535 254880470 824166134 388492927 551205359 376860449 760499550 47714970 179872702 437926116 759845590 511290331 765472374 453858765 123527526 406543648 666371379 343882141 73448889 1051725555 219891986 1066775306 873119174 914224398 583874509 941259868 323308840 954764142 634479605 304635931 266470815 763631334 212680425 1018844404 841190224 128159296 1027708567 864180869 985547579 914847489 1022398460 856861623 476802372 556651122 593213900 220341692 124032331 472225342 23933175 524389271 756546888 442798429 247724482 528340404 395112193 809490204 42939498 814928271 1008411858 913285421 919570654 834865071 295856730 257534142 107878085 345043088 180892406 501214690 620455725 77415768 673961790 570147132 202562216 605640617 1041722867 1068159787 840464279 449342548 608123368 430636742 96844812 880071490 638296969 1014373051 790164088 833891735 498468633 589749545 984928483 278945027 122635237 913127658 872780089 502575664 500668527 4965676 672839739 904734988 286653709 467704226 232477886 708462512 746632537 3814648 475520938 419368053 452314029 263048723 1051633235 217882351 331769320 675972721 404220661 379984677 610612497 624944194 568084662 938230150 784069207 78711099 455950548 816709842 778187919 943190222 541042600 422403193 486743851 670779667 197388901 813819925 294966549 548744670 273513139 82140096 841721016 720932028 836917924 929647367 715349419 865122234 403892015 158625401 684896022 402213405 50846633 999746092 258716156 545403362 734958371 103889539 423912170 494987068 916366851 1029751389 491857273 8597193 450685965 329813760 952422560 378681506 246481048 263860271 286662478 175624862 98686122 343059215 598541916 192093796 775166644 928670735 859632244 813466586 679480548 1056276921 159079333 433897982 975705819 941063188 554202602 298369093 290470279 623483680 347331327 682032540 472876946 455641322 914483823 619282933 267118120 643703982 514552316 766838433 576332802 312455214 229000773 759496786 255241727 158094830 507351241 396190214 867596815 745678490 17854217 707996714 48138402 875244750 759941 637789022 224704729 230009908 217300420 616324627 951031745 1007161859 80470526 712030543 208380049 378107851 555370952 514723092 141535709 137679648 402382818 956585976 268987177 636063430 970870053 1064916767 1059258088 574652066 371597855 784580714 740629558 859426316 1030365572 164628438 763924042 788635925 85605801 943279252 947803932 893986835 294980349 976877998 999821103 578324289 896711169 443102983 386501857 76914321 908787539 77175350 863127540 635864624 201982413 1014789768 66928981 934566637 719432865 920506572 596053883 474044730 252651852 889929035 547186738 408199402 205604643 928659991 314019411 251865363 642053181 974625710 255633020 365482397 1025862161 922606215 391991675 920976487 156774519 623003768 205878096 396859604 71567788 313023472 482388942 1018748984 476064718 683382751 574045690 602534933 685028013 304608036 608288840 169424730 498870232 39549149 170231676 489630314 614197929 411451533 987943012 1035426365 682721286 726321049 274983611 809058757 55672123 435282516 514054876 1067735583 803556752 691420257 112727132 177754439 1054464712 720329783 6593599 1019101818 733847267 272255103 83833082 593398709 261203510 738717791 435641066 448674332 468057391 964475128 245415295 745690282 992485291 661433705 144798501 299292521 446881402 413798342 732476640 417849379 781937610 486088207 213469914 345506602 390531297 962000254 1003761787 814715015 296328872 842799100 704829153 160622353 476190821 985584331 978773594 75216794 378066098 792619226 224441357 13161626 698140572 585716232 445168591 970342277 491921280 558074568 567652669 1008853693 236682410 1054632772 886865196 10046271 699923260 969758440 19512623 185526022 317555160 219503952 913745570 228411530 260287556 253381284 662100429 735799011 189247016 854574843 347308724 125992800 863223502 719882370 603579747 92020295 250954484 183800486 57391274 846167642 920884956 988486357 125516150 226681857 638550827 863738824 396960579 90999990 169083647 1319160 808079453 883867867 932382760 578454511 489247757 873709753 702696640 573399353 561947572 926545636 624809539 657545117 444623653 437120579 9661809 479554727 177233205 397604026 1064379352 802824972 1062554113 430669578 163596764 331780831 961785058 101512063 12437642 904656274 170942062 752008661 325442935 743109431 182514943 137966754 867725805 251130030 264430558 947688416 983083962 155574621 689870429 167299713 180238485 335150060 832563417 210583641 72904214 532480114 706893311 732925066 341571523 414514801 590181794 1053290345 668738161 595333017 179063358 859187508 640046253 547637947 742644666 537135514 397732627 588850102 703764791 555516510 850620957 1065611968 280931672 414961218 170451109 458429062 131218011 665458061 723988546 674092509 597290731 1059036669 925620595 23862084 348628667 284991323 205018800 846789969 422220340 216333231 518952986 102134859 777642100 584598699 726918 332211588 1055176229 92304201 908473890 732672284 87079030 1046069429 770786337 711901437 668563900 1059540935 1067537017 209674587 939003446 926290567 289891176 828534798 191100404 279365647 694298163 1033087770 154758626 886529919 457394452 278510773 1048437218 1039593031 1037520477 640085842 1027822167 622420035 451945666 806805036 262181363 485092765 710549370 100927482 210040970 149557329 118656496 690579640 384799024 785394097 702894357 99603426 715619540 1044445883 185008559 603325497 812278098 836054768 643387625 453035577 549506017 814475185 801009712 767092652 1072802139 73264347 646897233 116503036 542740304 1011168629 618865823 919403416 221615876 300520327 886183119 180315887 1019425399 711596076 142051281 492928831 671596454 958818040 154922778 790754716 181188745 467181435 827158049 605346957 71693436 926220421 859992488 668206136 705848057 484776340 509951460 448959547 895487168 777263967 490898477 437400843 498410715 923213232 551226864 1029964766 522258201 347889723 842649492 858518953 268253019 825058223 633002273 877286638 1070606679 559369482 547522627 407774744 148859151 303408715 847840913 243497032 812149800 697702252 217418180 622550471 460870041 806646219 826780441 525607228 345481323 712104739 414328100 861210289 153496328 311284757 278554277 789154524 543618542 436774557 86169624 755224495 631763593 809736513 506772970 136508295 562636845 250496946 526111679 628065116 356000726 944286757 338815194 806035260 84158218 393568421 1018087733 105663985 888325561 96063521 298843106 254473210 79103615 663039118 131544097 1011829845 94251515 648190438 174007993 513886645 666798230 235939560 552112406 636797360 433298732 276430551 738612018 37768441 637835115 753393982 243344868 654400390 1060230586 1045586678 653156759 271516190 792185485 799977892 360994482 426537875 992969344 389044271 945190453 924643965 742036005 147251914 215142194 131812714 375719691 132445173 880076785 69020526 334489405 210503081 541363547 57402233 479412676 93496638 877412879 643563344 611233223 294906985 641995385 964989780 869589196 712519960 843653325 351701837 501376664 123132279 535926115 234599400 1052418471 122676771 522841434 119330676 735019485 1054460861 534858243 374117477 868723709 613573984 296071108 556738264 275862966 904060145 156512793 906442383 400860905 908097607 135321081 636163053 568947843 607240204 1073385647 306210472 308080177 445335916 72613444 762850723 866455087 382120248 666106559 272279517 243972172 314564403 840796876 14129025 815786751 59610960 299366310 110763687 819557144 426375458 152136524 225263859 916681817 404814637 461118112 1121619 421970346 671313619 431942609 453805425 416056327 1061059268 412634017 970917158 153428921 975293806 872489495 6141179 794903864 163378359 153157489 552452415 366325152 816462999 542507269 711112246 402182513 455073036 61159129 742879134 508291504 196945622 655869293 815216413 293256766 804194333 677403764 251088805 940412251 644623469 803879856 121855081 654379344 267643741 638059990 918978724 304149145 275288875 253862760 294012993 29037463 337226845 981606466 269231626 907613475 391484998 558609661 1024020845 860480354 920281969 310253449 202317373 586119496 576108695 456241143 907586305 452112940 954321513 293064892 1028983420 675787269 43251216 1066586835 294318371 940448249 83771582 397049913 692778 103296652 846635320 1044055464 1040432053 627077702 518126426 763446310 951777977 834577804 228873060 770223900 7151708 819749702 401063296 246428951 868138903 1054566174 1043273310 831920297 919660312 702513550 949018181 302286838 724749107 972106943 991594324 73351588 491074441 254209234 706753482 115556154 219636038 284561950 949459760 425302520 923916388 154750207 307722730 622173354 331501626 765016443 89730774 734171253 357297555 691271369 620253067 797509335 916213499 1032792954 916841825 269216049 571866121 248187942 595999674 193526929 1072492626 186765704 1041178417 8183253 1026976531 894012240 68883114 66619619 1060266849 45287668 351818646 846966867 1072971097 63097199 214050749 218190121 148486850 886363706 489713963 666580925 866005576 1000017758 197160386 1022213071 647151047 883702571 489007681 676623113 414401821 19051944 362473517 449155707 190315215 62193449 88527781 387948000 653224784 691636323 754135566 964052418 682610962 850164617 360854021 440107137 40752655 90234561 834492138 223840685 474251899 509596786 92592362 932229645 583546943 822067997 228346927 11437186 370207400 197607018 1024955638 910230310 406602358 858617115 730275848 827788868 260634010 88961393 773710159 344937662 245008702 945863655 557421401 328907921 25181412 702787137 51084974 159954312 335619511 438565170 424948055 633841196 210269477 876526091 23155440 790386136 537850973 790126837 3327368 916590386 638354741 1016088457 364997387 456697441 484648236 553457910 837388651 46824397 666748246 917097631 945129187 594730394 368114519 843288824 22890747 891315148 551055221 170635851 509479284 103413231 160716325 407505899 636251520 726547286 959992779 697999928 673946188 835371899 290754551 648030976 882156991 962326590 181558620 679475645 72953673 510426124 61169786 609450277 1070503927 684957420 714099545 681862344 576794026 1005909821 931334900 183817695 706485534 7612830 751871716 582467821 158312363 509549723 781937289 307154600 174793851 71782000 817675726 19979383 937964474 609110395 428600139 1032642728 769042259 746241877 271639962 137858420 863564824 1042429323 230629270 996628921 619408680 835588126 523728166 225339048 511894174 174564355 123161135 852911995 25530254 355902627 221602845 552706667 989312012 545225033 253159809 22172495 732820222 98021225 914109830 138855033 829042440 307473229 685962945 767320114 476938422 648897577 705313330 604885837 351299884 800205726 96779389 222687209 299684453 954981008 289509606 222111890 714922500 562140194 285857836 71789337 849645064 405538790 1004193161 351802454 165474056 847452049 235493205 903370928 381339633 599233484 968827192 851288375 880051855 367823357 471722722 458812694 804894425 521793710 762714656 813859405 256107848 481174699 939696306 87404086 361585924 801291250 419593700 130389853 549511993 519056079 81763297 1029334802 752984804 231039991 22796407 973505116 826225168 1031802665 556579539 321086511 563017245 40800281 276153731 159961893 428655173 250047553 598211861 182758981 125862524 830407001 575617433 927158988 325069382 554298677 859900984 771528769 773954097 382153045 418850219 806939481 1003641657 560252991 167009988 301953141 258811087 321631213 384450361 244040653 532043646 567534385 74695384 820654511 480071410 407801112 792365188 787913909 984003559 518855202 481659873 121373344 935218578 407150196 487085913 514288135 690924080 903953339 6924252 834328648 591127336 1000593997 718787898 937607523 744635242 404900647 954985405 523091035 677360850 602081320 805251730 584923960 135012074 617860886 313797383 228777964 542425920 64241444 852396437 8276926 136757173 817127131 355337717 253551287 843391194 176724024 83536094 242416701 195340283 44380998 1005524403 336332880 427408773 1002073459 755103330 675175369 717881550 82291527 342037721 253881865 69349789 408151168 835825263 601416779 617568105 43863595 543731565 56422560 652736961 442270641 210247093 820773764 775677471 127704468 127092517 154306832 804508790 1005969329 726493218 969048418 808764051 202158250 521900725 711922284 783049404 851432117 968983122 1026419072 363153265 617471868 701908936 501670528 116586945 557564751 457469384 624701765 755437596 200225236 345917879 1052855613 328476571 847050588 3989254 518597744 664649754 1053749839 390297459 1068898342 928916319 320577875 50201586 416935323 79233745 958039929 184884588 887118508 1063883111 766344421 791990887 230994130 826339924 802988136 897705965 237850665 562339641 820235302 1022011578 291489367 295011721 211347887 650882069 318986188 508030414 128634701 880501845 430208857 375897905 665890118 25419617 545204083 1056793692 17629499 422110699 814921647 849103497 311420872 679666394 807770334 1071192261 920245796 1053191582 812853842 663863019 238867996 978289528 195000789 453887505 271026856 910391744 247881281 691368861 66836294 837322149 1949429 157979633 584465109 487126321 640022170 633693206 954510031 522097617 465924173 713371697 949112736 710995114 569590113 603527548 397316557 862546984 590115015 145501618 736408921 613579322 1043507346 346861551 586751106 661306156 607693773 573496912 695726782 1060701253 668149418 432740787 345228762 744237203 536116220 270705358 186605704 519542453 1009958569 372132427 1046583655 288162368 1035627679 776296785 615793692 795760552 112064172 380459089 960245189 938720510 1006182563 636668488 268982656 226096750 667786243 964350429 638680428 895638419 475885957 1022609628 942816152 780855475 995653078 19508331 776680788 732504657 310204178 105670483 491046174 76909803 962877986 794261079 28091252 641737017 1032373503 201850371 590764 178590904 371240768 431638236 244016011 735895752 215738123 51594252 595973755 573360858 706625908 502463185 86055096 521777889 931299345 366228788 477706215 917234595 867658777 33184053 888965717 101960783 833427418 950908788 84307461 869657307 124661052 347670213 1022510135 1068220132 308775572 582531790 468043113 574860611 514050751 935221915 1045495073 841215440 214234426 157898580 149742478 360306100 713667624 498774779 228237445 74808290 616411364 828803105 210010896 1012710285 638574076 1042561658 342782522 26594834 14188433 976346312 21548022 1049360462 292602944 732572830 610732984 100884 257056170 889993088 724573822 890875971 532956769 156899186 837941054 640522831 1009360001 11836780 205590632 841702766 52893312 1071972038 400444845 655392748 98294217 882199701 919974646 802240887 702460504 678291969 18204049 384123527 463201364 1023512424 313420051 437633231 621844159 1010686403 603381907 714547781 281972777 235215582 344949778 617113008 192412827 799854387 201658248 375135134 1052165705 289290811 1004185661 67489182 610755663 84453755 481754384 525394344 302059609 225815572 536699385 3688516 228452233 664795817 307730314 464365472 534509298 797236177 71213672 658022690 173719149 331774027 62798553 561081800 820520071 346699792 271279465 594163670 723590779 649302604 584933203 308130209 394647173 825178644 181046788 507127208 259141647 442466693 596538424 1045264013 205829182 217880889 417084173 90777436 672846452 644257702 130179157 275591002 1065860817 515757271 365260915 441135718 47408383 302617834 47035493 748738340 573578610
